correlationId + meta + payload — see Error Handling). When something goes wrong, meta.errorCode is the machine-readable error key. This page lists every value the User and Public APIs can emit.
How to read this page
The Wire HTTP column is the HTTP status the response actually arrives with. Themeta.status column is the application-level status inside the body.
The meta.errorCode column is the value to branch on in your client code.
The meta.error column describes the shape of the per-failure detail.
Most error paths in this API return HTTP 200 with the logical status carried in meta.status (the soft-error convention). A small number of cases return real HTTP 400/401/403/409 because they arrive before the API’s own response envelope can be applied or because they represent genuine HTTP semantics.
Validation failures
Almost every write endpoint goes through FluentValidation. Anything caught there — missing required field, value out of range, invalid country code, batch over the limit, business-rule violations expressed asCustom(...) checks — collapses to one error code:
Sample body:
meta.error — the keys tell you which fields are wrong.
Business-rule and resource errors
These are thrown from business logic when a request is structurally valid but conflicts with the current state of the data, your account, or supporting infrastructure. Each carries a distincterrorCode so you can branch on it.
Auth and access-control failures
These are not soft errors. They arrive with real HTTP status codes because they’re produced before (or outside of) the normal request pipeline.Conflict and not-found
Less common, but reachable:Idempotency key failures
These apply to write endpoints when you send thex-returnhelper-idempotency-key header. They arrive with real HTTP status codes.
A key is scoped to one account plus one HTTP method and route, so the same key value can be reused on a different endpoint without colliding.
Recommended client-side handling
In pseudocode:correlationId is present on every response. Always log it — it’s how Return Helper support traces a specific request through internal systems.
Where each error code is defined
The error codes documented here come fromRrErrorCode constants in the ReturnRequestApiModel.RrException namespace. If you encounter an errorCode value not listed on this page, treat it as an undocumented internal error and report it via support with the correlationId.