RavenRelayDocs
Dashboard ↗

API reference

Errors and retries

Handle structured errors and distinguish a rejected request from uncertain provider acceptance.

Error format

Example error
{  "error": {    "code": "domain_not_verified",    "message": "The sending domain has not been verified."  }}
Error format
CodeWhat to do
invalid_api_keyCheck the key, project and revocation state.
production_not_enabledRequest operator review for live sending.
domain_not_verifiedCheck the exact sender domain, DKIM and MAIL FROM.
validation_errorCorrect request fields; do not retry unchanged.
message_too_largeReduce the message below the size limit.
idempotency_conflictUse the original body for this key.
quota_exceededCheck the workspace allowance.
rate_limit_exceededBack off before retrying the same operation.

Request retries

After an API timeout, retry the identical body with the original Idempotency-Key. For an explicit validation or authorization error, fix the cause first. Read the existing message before deliberately creating another send.

Uncertain SES acceptance

These messages show failed with delivery_unknown and are never automatically resent. Check the provider before submitting a new copy. Authenticated provider events can later reconcile the outcome without resending.

RavenRelay documentation. Examples describe the current implementation.