Skip to content
RelationsAI
Error codes

campaign_outcome_unknown

HTTP status
409
Retry
After Retry-After
Execution
Work may have started
Admin needed
No
Charges
May have been charged

Campaign start or resume not confirmed. A start or resume of this campaign was sent and its confirmation did not arrive, or it failed after it was sent. Dialling may have begun. The API never sends it again on a guess. If you sent an Idempotency-Key, this answer is stored under it and a retry with the same key returns it again; without a key, a retry is a new start or resume request, so check the campaign first.

What it means

The API returns HTTP 409 with error.code set to campaign_outcome_unknown. The default message is: "The request was sent but its outcome is not confirmed yet. Check the campaign before trying again."

Common causes

  • A start or resume timed out or failed after it was sent.

How to identify it

Check the response status (409) and error.code (campaign_outcome_unknown). Branch on error.code, not on the message text: messages can be reworded, codes do not change within v1. Log error.request_id (also sent as the X-Request-Id header) so support can find the request.

How to fix it

  • Wait Retry-After seconds, then retrieve the campaign: a running status means it started. Do not start or resume it again before you have checked.
  • If it is not running and you want to try again, send the action again (with a NEW Idempotency-Key if you use keys): the campaign refuses a second dial of the same run, so recipients are not dialled twice.
  • If details.needs_support is true, the outcome cannot be resolved automatically; contact support before acting.

Retry guidance

Wait for the number of seconds in the Retry-After header. For a write, read the resource first to find out whether the change was applied before you send anything again.

Did anything happen?

The work may have started before this error was returned. Do not assume nothing happened: read the resource (for a call, list calls filtered by to and created_after; for a campaign, retrieve it) before you send anything again. A charge may have been recorded for work that started; check the call or campaign before you act.

Idempotency

With a key: stored under it, so a retry with the same key returns this answer again and sends nothing. Without a key nothing is stored and a retry is a new attempt. Either way, read the campaign state first; a new attempt is refused by the campaign if the run already dialled.

Who can fix it

The developer who sends the request can fix it; no administrator action is normally needed.

When to contact support

When details.needs_support is true, write to support@relationsai.com with the request_id. See Support for what to include (the request_id, the time in UTC, the operation, and whether you used a test or live key) and what never to send (API keys, Authorization headers, webhook signing secrets, recording links, transcripts or customer data).

Example error response

JSONJSON
{ "error": { "code": "campaign_outcome_unknown", "message": "The request was sent but its outcome is not confirmed yet. Check the campaign before trying again.", "details": { "action": "start", "needs_support": false }, "request_id": "req_hsbfd6flzkbvvuhxjb7repju", "retry": "after", "doc_url": "https://docs.relationsai.com/errors/campaign_outcome_unknown" } }

Operations that can return this error

See all codes in the error-code reference.