Skip to main content
Glama

mcp-google-sheets

sms-recipient-opt-out.ts1.86 kB
import { TriggerStrategy, createTrigger, } from '@activepieces/pieces-framework'; import { common, OnfleetWebhookTriggers } from '../common'; import { onfleetAuth } from '../..'; import { WebhookHandshakeStrategy } from '@activepieces/shared'; export const smsRecipientOptOut = createTrigger({ auth: onfleetAuth, name: 'sms_recipient_opt_out', displayName: 'SMS Recipient Opt Out', description: 'Triggers when a recipient opts out of SMS notifications', type: TriggerStrategy.WEBHOOK, props: {}, //Create the webhook and save the webhook ID in store for disable behavior async onEnable(context) { const webhookId = await common.subscribeWebhook( context.auth, context.webhookUrl, OnfleetWebhookTriggers.SMS_RECIPIENT_OPT_OUT ); await context.store?.put('_sms_recipient_opt_out_trigger', { webhookId: webhookId, }); }, //Delete the webhook async onDisable(context) { const response: any = await context.store?.get( '_sms_recipient_opt_out_trigger' ); if (response !== null && response !== undefined) { await common.unsubscribeWebhook(context.auth, response.webhookId); } }, //Return task async run(context) { return [context.payload.body]; }, handshakeConfiguration: { strategy: WebhookHandshakeStrategy.QUERY_PRESENT, paramName: 'check', }, async onHandshake(context) { return { status: 200, body: context.payload.queryParams['check'], }; }, sampleData: { recipient: { id: '7LecFRKJw7ExfyhBsi9h0NXW', name: 'Joe Smith', phone: '+17145555768', }, timestamp: 1632432776621, SMS: 'STOP', triggerId: 17, triggerName: 'SMSRecipientOptOut', taskId: null, workerId: null, adminId: null, data: {}, actionContext: null, time: 1632432776640, }, });

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/activepieces/activepieces'

If you have feedback or need assistance with the MCP directory API, please join our Discord server