Skip to main content
WEBHOOK
sequence.reply.received
{
  "type": "<unknown>",
  "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "timestamp": "2023-11-07T05:31:56Z",
  "data": {
    "sequence_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
    "newly_stopped": true,
    "outreach_target": {
      "table_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
      "row_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
      "column_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
      "email": "jsmith@example.com",
      "linkedin_urn": "<string>",
      "linkedin_slug": "<string>"
    },
    "sender": {
      "email": "jsmith@example.com",
      "linkedin_slug": "<string>",
      "display_name": "<string>"
    },
    "reply_message": {
      "subject": "<string>",
      "body": "<string>",
      "body_truncated": true,
      "received_at": "2023-11-07T05:31:56Z",
      "thread_id": "<string>",
      "provider_id": "<string>"
    },
    "additional_matched_sequence_ids": [
      "3c90c3cc-0d44-4b50-8888-8dd25736052a"
    ],
    "additional_newly_stopped_sequence_ids": [
      "3c90c3cc-0d44-4b50-8888-8dd25736052a"
    ]
  }
}

Body

application/json
type
any
required
id
string<uuid>
required

Equal to the webhook-id HTTP header. Stable across retries — use for receiver-side deduplication.

timestamp
string<date-time>
required

Event time (when the business action happened), set once at publish and replayed on retries. NOT the dispatch time — that lives in the webhook-timestamp HTTP header and is recomputed per send.

data
object
required

Common case mirrors the send events: one sequence_id plus a newly_stopped flag. The optional additional_* arrays only appear when a single inbound matched more than one outbound sequence (rare; parallel campaigns to the same recipient).

Response

200

Receiver acknowledged.