Skip to main content
Use outbound when an existing Contact should receive an approved WhatsApp template and continue with an AI Agent. Use create a conversation for the general conversation workflow.

Choose the operation

Both use the REST API host https://api-connect-us.bridge.new and a server-side x-api-key. They have separate request schemas. Read the Agents outbound reference or LeadScout outbound reference for the operation you use.

Before you send

  1. Look up the Contact, or create it if missing. Outbound requires a Contact that already exists in the workspace; you do not need to create a separate Conversation or Message first.
  2. List Agents. Choose an available Agent and read its lines[].providerChannelId. An AI Agent ID differs from a human Bridge User ID.
  3. Choose an approved template. Discover its variables, supply caller-required values, and check that it is approved for the destination line. Use only the discovery step as this prerequisite; the separate Conversation-creation step in that recipe is not needed for outbound.
  4. Confirm that your business has the required opt-in. If you send consent.status: "GRANTED", include capturedAt; this records your assertion of consent.
For Agents outbound, contact.providerChannelId must belong to the chosen Agent when supplied. It is a preference: another eligible Agent line can be selected. For LeadScout outbound, an explicit line is respected. Identifiers and their sources explains which values to use.

Send a minimal Agent request

Replace every placeholder. This example assumes the chosen template has no unresolved caller-required variables. Set forceSend deliberately; the example keeps the default behavior explicit.
A successful request returns 201. Store conversation.id and interpret these response fields: New creation has neither reuse nor recovery set to true. Recovery can happen with forceSend: false. Additional messages are persisted in request order; do not rely on a promise that they wait for the Contact to reply. The shared outbound flow persists text follow-ups and does not attach their mediaIds. Use the documented template.media option for media on the opening template, or the Message attachment workflow for a separate message.

What forceSend does

Availability is evaluated for this Contact’s conversation on each line. An occupied line here does not mean the corporate WhatsApp line is globally reserved for one Contact. The following rules remain subject to Agent availability, template validation, consent validation and session checks. On a narrow screen, scroll horizontally to compare all four choices. Keyboard users can focus this comparison and use the arrow keys.
In this table, …0007 is BRIDGE_AI_LEADSCOUT_0007 and …0008 is BRIDGE_AI_LEADSCOUT_0008. A released conversation is recoverable only when its stored recovery flag permits it; forceSend does not make it recoverable. For both routes, a LeadScout session that is still open and unexpired blocks a new outbound request with 409 BRIDGE_AI_LEADSCOUT_0017. Failure to finalize an expired session returns 409 BRIDGE_AI_LEADSCOUT_0018. A Service Agent can continue its open, unexpired service session; an expired session is closed before a new one opens.
forceSend is not an idempotency key. Repeating a successful request can add another template and more messages. It does not bypass blocked conversations, session checks, approval rules or validation. A timeout leaves the outcome uncertain: inspect the conversation before deciding whether to submit again.

Handle conflicts and partial work

Release conversation is a separate operation with business effects. A 204 has no response body. Release only when ending that conversation is your intended action.

Request a LeadScout handoff to a human

For a LeadScout conversation, resolve the human’s Bridge User ID or email, then call the manual handoff endpoint. This operation is specific to LeadScout; do not assume it applies to a Service Agent.
A 202 acknowledges the request. Save its trackingId and conversationId; acceptance does not prove that assignment has completed or that a human has read or answered the conversation. The reference does not publish a handoff tracking endpoint, so do not construct one from trackingId. Continue with error handling and webhook receiving to connect this workflow to your system.