Skip to main content

Trace a request

Every response carries a trace ID in the X-Trace-ID header, and as trace_id in JSON bodies. Send your own X-Request-ID header too, and Blujay echoes it as client_request_id in error responses and most success responses (not on send responses; see Making requests). Log both.
Webhook events for a message you sent through the API carry the trace_id of the request that sent it, so you can match a send to its delivery updates. When you contact support@blujay.io, include the trace ID, your request ID, the endpoint and the time. See Support.

Follow one message

  1. Read it: GET /v1/messages/{message_id}. Check status and service. A failed message has a failure_code only for a few causes you can act on; the full reason is in the message.failed webhook as failure.code. See Track a message.
  2. Find its events. Each webhook event you received for the message carries its message_id and event_id. With an event_id, list every delivery attempt: GET /v1/webhook-subscriptions/{subscription_id}/deliveries?event_id=evt_abc123. There is no lookup from a message to its events, so if you received nothing, list the subscription’s recent deliveries and look for the message_id. See Delivery and retries.
  3. If your endpoint missed an event, fix it and replay the event.

Common problems

Next steps

Errors

Every error code and how to fix it.

FAQ

Quick answers to common questions.