Skip to main content

Errors

Every Workflows failure returns the same envelope. You can write one handler.
Responses currently repeat some details entries at the top level as well. For example destinationId appears both in details and beside error. Those duplicates are a migration aid for clients written before the envelope existed and will be removed. Read from details.

Authentication is the one exception

Credential failures are answered by the platform gateway, before the request reaches Workflows, and use the platform-wide shape:
So error is an object on a 401 and a string on everything else. Check the status code first and you will never have to tell them apart.

Authentication and access

Authoring

Graph fault codes inside details.errors are listed in Definitions.

Running

Retry 502, 503 and 429 with backoff. Never retry a run without the original Idempotency-Key. See Runs.

Unknown codes

New codes are added over time. Treat a code you do not recognise as a failure of its status class (4xx is your bug, 5xx is ours) and show message to whoever is watching. An unrecognised code is never a success.

Subject resolution

resolve-subjects returns 200 with an unresolved array rather than an error, because a partial result is useful: some companies pin while others need a choice. When candidates are offered they are the fabric’s own matches, and tickerless candidates are never offered because pinning one gives a run nothing to work with.

Reporting a problem

Every response carries X-Request-ID. Include it when reporting an issue.