Initiate carrier outreach

Initiate an outbound carrier outreach (call or email). Validates outreach limits and load data before initiating.

Authentication: Supports API key and bearer token authentication.

Authentication

AuthorizationBearer

Bearer authentication of the form Bearer <token>, where token is your auth token.

Headers

X-Organization-IDstring or nullOptional

Request

This endpoint expects an object.
carrier_idstringRequiredformat: "uuid"
Carrier UUID to contact
load_idstringRequiredformat: "uuid"
Load UUID for the outreach
modalityenumOptionalDefaults to call

Outreach channel: ‘call’ to initiate a voice call, ‘email’ to start an email negotiation

contact_idstring or nullOptionalformat: "uuid"
Specific contact UUID. If omitted, selects by priority.

Response

Successful Response
idstringformat: "^otr_[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$"
carrierobject

v1 carrier response - wraps domain CarrierModel with prefixed IDs.

load_idstringformat: "^load_[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$"
modalityenum

Communication channel: call or email

directionenum

Direction: inbound or outbound

created_atdatetime
load_numberstring or null
statusenumDefaults to completed

Async-execution lifecycle. Outbound outreaches initiated via the async path move pending → active → completed|failed; inbound and legacy sync paths are written as completed.

error_reasonstring or null

Terminal failure detail when status=‘failed’

carrier_engagedboolean or null
is_automatedbooleanDefaults to false

True if initiated by the automated outreach worker (Ellie), not a manual rep action.

call_idstringformat: "^call_[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$"
conversation_idstring or null

Errors

400
Bad Request Error
401
Unauthorized Error
403
Forbidden Error
404
Not Found Error
422
Unprocessable Entity Error
429
Too Many Requests Error
502
Bad Gateway Error