Twilio TwilioExecution

Twilio TwilioExecution

Certified

Send execution summary via Twilio

Uses the bundled template to send execution status, flow metadata, and a UI link through Twilio Notify. Intended for Flow-triggered alerts; for errors handlers, use TwilioAlert instead.

yaml
type: io.kestra.plugin.twilio.notify.TwilioExecution

Send a Twilio notification on a failed flow execution.

yaml
id: failure_alert
namespace: company.team

tasks:
  - id: send_alert
    type: io.kestra.plugin.twilio.notify.TwilioExecution
    url: "{{ secret('TWILIO_NOTIFICATION_URL') }}" # format: https://notify.twilio.com/v1/Services/ISXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/Notifications
    accountSID: "{{ secret('TWILIO_ACCOUNT_SID') }}"
    authToken: "{{ secret('TWILIO_AUTH_TOKEN') }}"
    identity: 0000001
    executionId: "{{trigger.executionId}}"

triggers:
  - id: failed_prod_workflows
    type: io.kestra.plugin.core.trigger.Flow
    conditions:
      - type: io.kestra.plugin.core.condition.ExecutionStatus
        in:
          - FAILED
          - WARNING
      - type: io.kestra.plugin.core.condition.ExecutionNamespace
        namespace: prod
        prefix: true
Properties
Min length1

Twilio Account SID

Used with authToken for HTTP basic authentication

Min length1

Twilio Auth Token

Secret token paired with the Account SID; store as a secret

Notification body override

Optional string merged into the payload as Body; rendered with flow variables

Custom fields

Additional key-value pairs merged into the rendered template context

Custom message

Optional message rendered into the template alongside execution details

Default{{ execution.id }}

Execution ID

Defaults to the current execution ID using an expression

Recipient identity

Notify identity used to target specific devices when provided

Options

Optional HTTP client overrides for timeouts, charset, headers, and max content length

Definitions
connectTimeoutstring

Connect timeout

Time allowed to establish the HTTP connection before failing

connectionPoolIdleTimeoutstring
DefaultPT0S

Connection pool idle timeout

Time an idle pooled connection stays open before closing; defaults to 0s (no TTL)

defaultCharsetstring
DefaultUTF-8

Default request charset

Charset applied to requests when not specified; defaults to UTF-8

headersobject

HTTP headers

HTTP headers to include in the request

maxContentLengthintegerstring
Default10485760

Max response size

Maximum response content length in bytes; defaults to 10MB

readIdleTimeoutstring
DefaultPT5M

Read idle timeout

How long a read connection may stay idle before closing; defaults to 5m

readTimeoutstring
DefaultPT10S

Read timeout

Maximum time to read data before failing; defaults to 10s

Notify payload body

Raw JSON payload sent to Twilio; overrides templated fields when provided

Reference (ref) of the pluginDefaults to apply to this task.

Recipient tag

Notify tag used to target user groups

Template variables

Key-value map rendered before applying the message template