chore: import upstream snapshot with attribution
This commit is contained in:
@@ -0,0 +1,100 @@
|
||||
import { IntegrationDefinition, z } from '@botpress/sdk'
|
||||
import { sendEmailOutputSchema, sendMailInputSchema } from './definitions/actions'
|
||||
import {
|
||||
bouncedEmailEventSchema,
|
||||
clickedEmailLinkEventSchema,
|
||||
delayedDeliveryEmailEventSchema,
|
||||
deliveredEmailEventSchema,
|
||||
failedToSendEmailEventSchema,
|
||||
markedAsSpamEmailEventSchema,
|
||||
openedEmailEventSchema,
|
||||
sentEmailEventSchema,
|
||||
} from './definitions/events'
|
||||
|
||||
export default new IntegrationDefinition({
|
||||
name: 'resend',
|
||||
title: 'Resend',
|
||||
version: '0.1.10',
|
||||
readme: 'hub.md',
|
||||
icon: 'icon.svg',
|
||||
description: 'Send markdown rich-text emails using the Resend email service.',
|
||||
configuration: {
|
||||
schema: z.object({
|
||||
apiKey: z.string().secret().min(1).describe('Your Resend API Key').title('Resend API Key'),
|
||||
signingSecret: z
|
||||
.string()
|
||||
.secret()
|
||||
.optional()
|
||||
.describe(
|
||||
'The secret key used to verify the authenticity of the webhook requests (Found in the webhook details page)'
|
||||
)
|
||||
.title('Webhook Signing Secret'),
|
||||
}),
|
||||
},
|
||||
actions: {
|
||||
sendMail: {
|
||||
title: 'Send Email',
|
||||
description: 'Sends an email to the specified email address',
|
||||
input: {
|
||||
schema: sendMailInputSchema,
|
||||
},
|
||||
output: {
|
||||
schema: sendEmailOutputSchema,
|
||||
},
|
||||
},
|
||||
},
|
||||
events: {
|
||||
delivered: {
|
||||
title: 'Email delivered',
|
||||
description:
|
||||
"An event that triggers when the Resend API delivers an email to the recipient's email server. (This can also trigger alongside email bounces among other events)",
|
||||
schema: deliveredEmailEventSchema,
|
||||
},
|
||||
bounced: {
|
||||
title: 'Email bounced',
|
||||
description: 'An event that triggers when a sent email bounces. (e.g. Invalid Address, blocked, etc)',
|
||||
schema: bouncedEmailEventSchema,
|
||||
},
|
||||
delayedDelivery: {
|
||||
title: 'Email delivery delayed',
|
||||
description:
|
||||
"An event that triggers when the Resend API fails a delivery attempt to the recipient's email server. (This will usually re-attempt a few times before stopping)",
|
||||
schema: delayedDeliveryEmailEventSchema,
|
||||
},
|
||||
sent: {
|
||||
title: 'Email sent',
|
||||
description: 'An event that triggers when the Resend API has processed and sent the email.',
|
||||
schema: sentEmailEventSchema,
|
||||
},
|
||||
opened: {
|
||||
title: 'Email opened',
|
||||
description:
|
||||
"An event that triggers when the email has been opened by the recipient. (Must have 'Open Tracking' enabled)\n\nNote: This may be subject to privacy regulations of the email recipient's country",
|
||||
schema: openedEmailEventSchema,
|
||||
},
|
||||
clicked: {
|
||||
title: 'Email link clicked',
|
||||
description:
|
||||
"An event that triggers when a link in the email has been clicked on by the recipient. (Must have 'Click Tracking' enabled)\n\nNote: This may be subject to privacy regulations of the email recipient's country",
|
||||
schema: clickedEmailLinkEventSchema,
|
||||
},
|
||||
markedAsSpam: {
|
||||
title: 'Email marked as spam',
|
||||
description: 'An event that triggers when the sent email is marked as spam by the recipient.',
|
||||
schema: markedAsSpamEmailEventSchema,
|
||||
},
|
||||
// I was never able to trigger this event
|
||||
failed: {
|
||||
title: 'Email failed to send',
|
||||
description: 'An event that triggers when the email could not be sent at all.',
|
||||
schema: failedToSendEmailEventSchema,
|
||||
},
|
||||
},
|
||||
__advanced: {
|
||||
useLegacyZuiTransformer: true,
|
||||
},
|
||||
attributes: {
|
||||
category: 'Marketing & Email',
|
||||
repo: 'botpress',
|
||||
},
|
||||
})
|
||||
Reference in New Issue
Block a user