Skip to the operations

Messaging

SendGrid in a decision flow.

4 SendGrid operations a decision flow can call directly, with the credentials your own contract issued. The response is data the rest of the flow reads, branches on, and keeps in the trace.

Category
Messaging
Type
Integration
Authentication
API key
Test environment
Production host only

Who they are

Transactional and bulk email at scale, part of Twilio.

SendGrid sends the email an application produces — notices, letters, one-off transactional messages — and handles the deliverability work behind it: sender authentication, reputation, and bounce handling. It has been part of Twilio since 2019 and is documented alongside Twilio's other APIs.

What a flow can call

4 operations, each one a step you can place on the canvas.

  1. POST/v3/mail/send

    Send an email

    Sends one message. The from address must belong to a verified Single Sender or an authenticated domain or the call fails 403 — that is the most common first failure.

  2. POST/v3/mail/send

    Send a templated email

    Same endpoint with the copy living in a SendGrid dynamic template (a d- prefixed id) instead of in the flow.

  3. POST/v3/mail/send

    Validate without sending (sandbox)

    The same send with mail_settings.sandbox_mode.enable set, which validates the request and delivers nothing.

  4. GET/v3/messages

    Look up delivery status

    Delivery outcomes per message — processed, delivered or not_delivered — plus open and click counts.

Where it sits in the decision

Messaging calls have a natural place in a flow.

Notifying a person is part of the decision rather than an afterthought to it: the message goes out from the flow, at the point the flow decided it was warranted, carrying the same version and trace as the outcome that triggered it.

Whatever SendGrid returns is part of the run, so it is part of the record. When someone asks months later why an applicant was declined, the answer cites what came back at the time rather than re-fetching from a service whose answer has since changed.

  • 01Add SendGrid as a connection authenticating with an API key.
  • 02SendGrid has one host for both environments, so guard test runs with your own credentials and limits.
  • 03Place a Connection node and pick an operation — “Send an email” is usually the first one a flow needs.
  • 04Map the response into the fields your rules read, then test the whole path before it carries live traffic.

Common questions

Using SendGrid in a flow.

How do I connect SendGrid to a decision flow?

Add SendGrid as a connection in your workspace authenticating with an API key, with the credentials your own contract issued — ArboRule calls the provider as you, and never holds a contract on your behalf. Once the connection exists, any flow in the workspace can place a Connection node and choose one of its operations. The credentials live on the connection, not in the flow, so a policy owner can use SendGrid in a decision without ever seeing the secret.

Can I test SendGrid without touching production?

SendGrid exposes one host for both environments, so there is no separate sandbox to point at. Test runs still execute in Sandbox and are recorded separately in decision history, but the call goes to the same place as production — so guard it with your own test credentials, rate limits, or data.

What can a flow call on SendGrid?

4 operations, including “Send an email”, “Send a templated email”, “Validate without sending (sandbox)”. Each one is a step you place on the canvas and map into the fields your rules read, and most flows start with “Send an email”. The list comes from the same manifest the engine uses to make the call, so this page cannot describe an operation the product does not have.

Where in a decision should SendGrid be called?

Notifying a person is part of the decision rather than an afterthought to it: the message goes out from the flow, at the point the flow decided it was warranted, carrying the same version and trace as the outcome that triggered it.

Ready when you are

Wire SendGrid into a real decision.

Build the flow in Sandbox, connect your account, and watch the decision pull what it needs before it answers.

Read the docs