Skip to main content
Every error response is {"errors": [{"message", "statusCode", "errorCode", …}]} and its errorCode is listed below; the errors guide explains the format and when to retry.

400 Bad Request

data-failed-validation

400 Bad Request · Data failed validation · Retry: after changing the request One or more properties or parameters are invalid; each is listed in more.validationErrors with its property path and violated constraint. Unknown properties and query parameters are refused as well. What to do: Correct every entry in more.validationErrors. Returned by: Get entity statistics, Get redemption link funnel statistics, Get the analytics overview, Get redemption statistics, Get the billing account, Update the billing account, Get the billing balance, Add a billing contact, Remove a billing contact, List billing contacts, Update a billing contact, Download an invoice document, Get an invoice, List invoice lines, List invoices, Resend an invoice, Get a payment method, List payment methods, Make a payment method the default, Remove a payment method, Start a SEPA Direct Debit mandate setup, List payments, Get the usage estimate of a month, List usage lines of a month, Get a category, List categories, Get a catalog provider, List catalog providers, Update provider toggle and settings, Get a catalog voucher set, List catalog voucher sets, Update voucher set toggle and settings, Get email OTP readiness, Get email OTP settings, Update email OTP settings, Accept Price Terms, List Price Acceptances, Get the pricing summary, Get the Price Terms of a voucher set, List Price Terms of visible voucher sets, Get a redemption batch, Block a redemption entity, Create a redemption entity, Erase a redemption entity (GDPR), Get a redemption entity, List redemption entities, Unblock a redemption entity, Update a redemption entity, Create redemption links in bulk, Preview a link’s catalog, Create a redemption link, Get a redemption link, List redemption links, Revoke a redemption link, Update a redemption link, Redeem several vouchers in one request, Redeem a voucher, Get a redemption, List redemptions, Void a redemption, Get the API access status, Request API access, Create an API key, Get an API key, List API keys, Revoke an API key, Roll an API key, Rename an API key, Get an audit event, List audit events, Complete a brand asset upload, Create a brand asset, Delete a brand asset, Get a brand asset, List brand assets, Add a custom domain, Delete a custom domain, Get a custom domain, List custom domains, Re-check a custom domain, Get developer reference information, Get a template variable contract, Activate an email template, Archive an email template, Create an email template, Get an email template, List email templates, Render a saved template preview, Render an unsaved template preview, Update a draft email template, Create a group, Delete a group, Get a group, List groups, List the members of a group, Update a group, Add an IP allowlist entry, Remove an IP allowlist entry, List IP allowlist entries, Relabel an IP allowlist entry, Invite a member, Get a member, List members, Remove a member or revoke an invitation, Resend an invitation, Suspend a member, Unsuspend a member, Change a member’s direct permissions, Get your partner, Update general information, Update security settings, List permissions, Get the calling principal, Get the SMTP configuration, Create or replace the SMTP configuration, Verify SMTP and send a test email, Activate an SSO connection, Create an SSO connection, Deactivate an SSO connection, Get an SSO connection, List SSO connections, Update an SSO connection, Verify SSO email domains, List selectable time zones, Get a webhook delivery, List webhook deliveries, Replay a webhook delivery, Create a webhook endpoint, Delete a webhook endpoint, Get a webhook endpoint, List webhook endpoints, Pause a webhook endpoint, Replay failed deliveries of an endpoint, Resume a webhook endpoint, Rotate the first signing secret, Rotate the second signing secret, Send a test event, Update a webhook endpoint, List webhook event types, Get workspace branding, Replace workspace branding

invalid-header

400 Bad Request · Invalid header · Retry: after changing the request A standard or platform header is malformed or missing; more.validationErrors[].property names it. What to do: Correct the header named in more.validationErrors. Returned by: Update the billing account, Add a billing contact, Update a billing contact, Resend an invoice, Make a payment method the default, Remove a payment method, Start a SEPA Direct Debit mandate setup, Update provider toggle and settings, Update voucher set toggle and settings, Update email OTP settings, Accept Price Terms, Block a redemption entity, Create a redemption entity, Erase a redemption entity (GDPR), Unblock a redemption entity, Update a redemption entity, Create redemption links in bulk, Create a redemption link, Revoke a redemption link, Update a redemption link, Redeem several vouchers in one request, Redeem a voucher, Void a redemption, Request API access, Create an API key, Revoke an API key, Roll an API key, Rename an API key, Complete a brand asset upload, Create a brand asset, Add a custom domain, Re-check a custom domain, Activate an email template, Archive an email template, Create an email template, Render an unsaved template preview, Update a draft email template, Create a group, Update a group, Add an IP allowlist entry, Relabel an IP allowlist entry, Invite a member, Remove a member or revoke an invitation, Resend an invitation, Suspend a member, Unsuspend a member, Change a member’s direct permissions, Update general information, Update security settings, Create or replace the SMTP configuration, Verify SMTP and send a test email, Activate an SSO connection, Create an SSO connection, Deactivate an SSO connection, Update an SSO connection, Verify SSO email domains, Replay a webhook delivery, Create a webhook endpoint, Pause a webhook endpoint, Replay failed deliveries of an endpoint, Resume a webhook endpoint, Rotate the first signing secret, Rotate the second signing secret, Send a test event, Update a webhook endpoint, Replace workspace branding

invalid-idempotency-key

400 Bad Request · Invalid Idempotency-Key · Retry: after changing the request The Idempotency-Key header is not 1-255 printable ASCII characters. What to do: Send a valid key, for example a UUID. Returned by: Add a billing contact, Resend an invoice, Make a payment method the default, Remove a payment method, Start a SEPA Direct Debit mandate setup, Accept Price Terms, Block a redemption entity, Create a redemption entity, Erase a redemption entity (GDPR), Unblock a redemption entity, Create redemption links in bulk, Create a redemption link, Revoke a redemption link, Redeem several vouchers in one request, Redeem a voucher, Void a redemption, Request API access, Create an API key, Revoke an API key, Roll an API key, Complete a brand asset upload, Create a brand asset, Add a custom domain, Re-check a custom domain, Activate an email template, Archive an email template, Create an email template, Render an unsaved template preview, Create a group, Add an IP allowlist entry, Invite a member, Remove a member or revoke an invitation, Resend an invitation, Suspend a member, Unsuspend a member, Verify SMTP and send a test email, Activate an SSO connection, Create an SSO connection, Deactivate an SSO connection, Verify SSO email domains, Replay a webhook delivery, Create a webhook endpoint, Pause a webhook endpoint, Replay failed deliveries of an endpoint, Resume a webhook endpoint, Rotate the first signing secret, Rotate the second signing secret, Send a test event

malformed-json

400 Bad Request · Malformed JSON · Retry: after changing the request The body is not valid UTF-8 JSON or nests deeper than 32 levels. What to do: Send a valid JSON document. Returned by: Update the billing account, Add a billing contact, Update a billing contact, Update provider toggle and settings, Update voucher set toggle and settings, Update email OTP settings, Accept Price Terms, Create a redemption entity, Update a redemption entity, Create redemption links in bulk, Create a redemption link, Update a redemption link, Redeem several vouchers in one request, Redeem a voucher, Void a redemption, Request API access, Create an API key, Revoke an API key, Roll an API key, Rename an API key, Create a brand asset, Add a custom domain, Create an email template, Render an unsaved template preview, Update a draft email template, Create a group, Update a group, Add an IP allowlist entry, Relabel an IP allowlist entry, Invite a member, Change a member’s direct permissions, Update general information, Update security settings, Create or replace the SMTP configuration, Verify SMTP and send a test email, Create an SSO connection, Update an SSO connection, Create a webhook endpoint, Replay failed deliveries of an endpoint, Send a test event, Update a webhook endpoint, Replace workspace branding

401 Unauthorized

api-key-invalid

401 Unauthorized · Invalid API key · Retry: never The API key is unknown, revoked, expired, past its roll grace period or belongs to the other environment (vk_test_ against production or vk_live_ against the sandbox). What to do: Check the key and the base URL; create or roll a key in the developer dashboard. Returned by: any operation.

token-expired

401 Unauthorized · Credential expired · Retry: never The dashboard ID token has expired. What to do: Sign in again; API-key integrations never see this code. Returned by: any operation.

token-invalid

401 Unauthorized · Invalid credential · Retry: never The credential cannot be verified for this surface (wrong scheme, signature or credential kind). What to do: Send a valid API key for this surface. Returned by: any operation.

unauthenticated

401 Unauthorized · Authentication required · Retry: never No credential was sent with the request. What to do: Send your API key as Authorization: Bearer <key>. Returned by: any operation.

403 Forbidden

api-access-inactive

403 Forbidden · API access inactive · Retry: never API access of your partner is not active (not yet granted, revoked, or the partner is suspended), so API keys are refused. What to do: Request API access in the developer dashboard and wait for AllRide to activate it. Returned by: any operation.

bot-check-failed

403 Forbidden · Bot check failed · Retry: after changing the request The Turnstile token of a landing-page request is missing or invalid (only when your landing botProtection is turnstile). What to do: The landing page retries the check; nothing to do on your side.

ip-not-allowed

403 Forbidden · IP address not allowed · Retry: never The request’s source address is not in your IP allowlist while enforcement is on. What to do: Send from an allowlisted address or add your egress range to the allowlist. Returned by: any operation.

mfa-required

403 Forbidden · Multi-factor authentication required · Retry: never Your partner requires multi-factor authentication for dashboard users. What to do: Enrol a second factor or complete the step-up (dashboard users only). Details in more: enrolUrl (Where to enrol.), stepUpUrl (Where to step up.) Returned by: any operation.

missing-permission

403 Forbidden · Missing permission · Retry: after changing the request The membership or API key lacks a permission the operation requires, including non-delegable permissions called with an API key. What to do: Ask a partner administrator to grant the permissions in requiredPermissions, or use a key with that scope. Details in more: requiredPermissions (The permissions the operation needs.) Returned by: any operation.

owner-membership-required

403 Forbidden · Owner membership required · Retry: never Only members of the owners group can change owners and administrators. What to do: Ask an owner to make the change. Returned by: Update a group, Invite a member, Remove a member or revoke an invitation, Suspend a member

partner-not-active

403 Forbidden · Partner not active · Retry: never Your partner is still in draft or onboarding and the operation needs an active partner. What to do: Complete onboarding first. Details in more: partnerStatus (Current partner status.)

partner-offboarded

403 Forbidden · Partner offboarded · Retry: never Your partner has been offboarded; every route is refused. What to do: Contact AllRide. Returned by: any operation.

partner-role-missing

403 Forbidden · Partner role missing · Retry: never Your partner lacks the role (provider or consumer) this surface needs. What to do: Use the surface of your partner’s role. Details in more: requiredRole (The role the surface needs.) Returned by: any operation.

partner-suspended

403 Forbidden · Partner suspended · Retry: never Your partner is suspended: writes are refused (billing writes from the dashboard excepted). What to do: Contact AllRide; for billing issues fix the payment method in the consumer dashboard. Returned by: any operation.

reauthentication-required

403 Forbidden · Recent sign-in required · Retry: after changing the request The operation needs a sign-in within the last 15 minutes (dashboard users only). What to do: Sign in again and retry. Details in more: stepUpUrl (Where to sign in again.) Returned by: any operation.

sso-required

403 Forbidden · Single sign-on required · Retry: never Your partner enforces single sign-on for this user’s email domain. What to do: Sign in through your identity provider (dashboard users only). Details in more: providerId (The SSO connection to use.) Returned by: any operation.

404 Not Found

api-key-not-found

404 Not Found · API key not found · Retry: after changing the request No API key with this id exists in your partner. What to do: Check the id. Returned by: Get an API key, Revoke an API key, Roll an API key, Rename an API key

audit-event-not-found

404 Not Found · Audit event not found · Retry: after changing the request No audit event with this id is visible to your partner. What to do: Check the id. Returned by: Get an audit event

billing-account-not-found

404 Not Found · Billing account not found · Retry: after changing the request Your partner has no billing account (yet). What to do: Contact AllRide; billing accounts are created automatically for consumer partners. Returned by: Get the billing account, Update the billing account, Get the billing balance, Add a billing contact, List billing contacts, List invoices, List payment methods, Start a SEPA Direct Debit mandate setup, List payments, Get the usage estimate of a month, List usage lines of a month

billing-contact-not-found

404 Not Found · Billing contact not found · Retry: after changing the request No billing contact with this id exists on your billing account. What to do: Check the id; list the contacts to find it. Returned by: Remove a billing contact, Update a billing contact

brand-asset-not-found

404 Not Found · Brand asset not found · Retry: after changing the request No brand asset with this id exists in your partner. What to do: Check the id; list assets with GET /partner/v1/brand-assets. Returned by: Complete a brand asset upload, Delete a brand asset, Get a brand asset, Replace workspace branding

category-not-found

404 Not Found · Category not found · Retry: after changing the request The category does not exist or is archived. What to do: Use an active category from GET /consumer/v1/catalog/categories. Returned by: Get a category, Update provider toggle and settings, Update voucher set toggle and settings

custom-domain-not-found

404 Not Found · Custom domain not found · Retry: after changing the request The custom domain does not exist or belongs to another partner. What to do: Use one of your custom domains (GET /partner/v1/custom-domains). Returned by: Create redemption links in bulk, Create a redemption link, Update a redemption link, Delete a custom domain, Get a custom domain, Re-check a custom domain, Update security settings

email-template-contract-not-found

404 Not Found · Email template contract not found · Retry: after changing the request There is no variable contract for this template purpose. What to do: Use the purpose redemption-link-otp. Returned by: Get a template variable contract

email-template-not-found

404 Not Found · Email template not found · Retry: after changing the request The email template does not exist or belongs to another partner. What to do: Check the id. Returned by: Activate an email template, Archive an email template, Get an email template, Render a saved template preview, Update a draft email template, Verify SMTP and send a test email

group-not-found

404 Not Found · Group not found · Retry: after changing the request No group with this id exists in your partner. What to do: Check the id; list groups with GET /partner/v1/groups. Returned by: Delete a group, Get a group, List the members of a group, Update a group

invoice-not-found

404 Not Found · Invoice not found · Retry: after changing the request No finalised invoice with this id exists on your billing account (drafts are not visible). What to do: Check the id; list the invoices to find it. Returned by: Download an invoice document, Get an invoice, List invoice lines, Resend an invoice

ip-allowlist-entry-not-found

404 Not Found · IP allowlist entry not found · Retry: after changing the request No IP allowlist entry with this id exists in your partner. What to do: Check the id. Returned by: Remove an IP allowlist entry, Relabel an IP allowlist entry

partner-membership-not-found

404 Not Found · Member not found · Retry: after changing the request No membership with this id exists in your partner. What to do: Check the id; list members with GET /partner/v1/members. Returned by: Get a member, Remove a member or revoke an invitation, Resend an invitation, Suspend a member, Unsuspend a member, Change a member’s direct permissions

partner-not-found

404 Not Found · Partner not found · Retry: after changing the request The credential names a partner that does not exist or in which the user has no active membership. What to do: Sign in to a partner you are a member of.

payment-method-not-found

404 Not Found · Payment method not found · Retry: after changing the request No payment method with this id exists on your billing account. What to do: Check the id; list the payment methods to find it. Returned by: Get a payment method, Make a payment method the default, Remove a payment method

payment-not-found

404 Not Found · Payment not found · Retry: after changing the request No payment with this id exists on your billing account. What to do: Check the id; list the payments to find it.

provider-not-found

404 Not Found · Provider not found · Retry: after changing the request The provider does not exist or has no voucher set visible to you. What to do: Pick a provider from your catalog (GET /consumer/v1/catalog/providers). Returned by: Get a catalog provider, Update provider toggle and settings, Redeem several vouchers in one request, Redeem a voucher

redemption-batch-not-found

404 Not Found · Redemption batch not found · Retry: after changing the request The redemption batch does not exist or belongs to another partner. What to do: Check the id. Returned by: Get a redemption batch

redemption-entity-not-found

404 Not Found · Redemption entity not found · Retry: after changing the request The redemption entity does not exist or belongs to another partner. What to do: Check the id, or redeem with an inline redemptionEntity (refId) instead. Returned by: Block a redemption entity, Erase a redemption entity (GDPR), Get a redemption entity, Unblock a redemption entity, Update a redemption entity, Create redemption links in bulk, Create a redemption link, Redeem several vouchers in one request, Redeem a voucher 404 Not Found · Redemption link not found · Retry: after changing the request The Redemption Link does not exist or belongs to another partner. What to do: Check the id. Returned by: Preview a link’s catalog, Get a redemption link, Revoke a redemption link, Update a redemption link

redemption-not-found

404 Not Found · Redemption not found · Retry: after changing the request The redemption does not exist or belongs to another partner. What to do: Check the id. Returned by: Get a redemption, Void a redemption

route-not-found

404 Not Found · Route not found · Retry: never No operation exists for this path. What to do: Check the path against the API reference. Returned by: any operation.

smtp-configuration-not-found

404 Not Found · SMTP configuration not found · Retry: after changing the request No SMTP configuration has been saved yet. What to do: Save one with PUT /partner/v1/smtp-configuration first. Returned by: Get the SMTP configuration, Verify SMTP and send a test email

sso-connection-not-found

404 Not Found · SSO connection not found · Retry: after changing the request No single sign-on connection with this id exists in your partner. What to do: Check the id. Returned by: Activate an SSO connection, Deactivate an SSO connection, Get an SSO connection, Update an SSO connection, Verify SSO email domains

voucher-set-not-found

404 Not Found · Voucher set not found · Retry: after changing the request The voucher set does not exist, was never approved, or is not visible to you. What to do: Pick a voucher set from your catalog (GET /consumer/v1/catalog/voucher-sets). Returned by: Get a catalog voucher set, Update voucher set toggle and settings, Accept Price Terms, Get the Price Terms of a voucher set, Redeem several vouchers in one request, Redeem a voucher

webhook-delivery-not-found

404 Not Found · Webhook delivery not found · Retry: after changing the request No delivery with this id is visible to you (billing and pricing deliveries need the matching read permission). What to do: Check the id and your permissions. Returned by: Get a webhook delivery, Replay a webhook delivery

webhook-endpoint-not-found

404 Not Found · Webhook endpoint not found · Retry: after changing the request No webhook endpoint with this id exists in your partner. What to do: Check the id. Returned by: Delete a webhook endpoint, Get a webhook endpoint, Pause a webhook endpoint, Replay failed deliveries of an endpoint, Resume a webhook endpoint, Rotate the first signing secret, Rotate the second signing secret, Send a test event, Update a webhook endpoint

405 Method Not Allowed

method-not-allowed

405 Method Not Allowed · Method not allowed · Retry: never The path exists but not with this method. What to do: Use a method listed in the Allow header.

409 Conflict

already-exists

409 Conflict · Already exists · Retry: after changing the request A unique value you sent is already used. What to do: Change the conflicting value.

billing-account-closed

409 Conflict · Billing account closed · Retry: never The billing account is closed; it accepts no further changes or payment methods. What to do: Contact AllRide. Returned by: Update the billing account, Add a billing contact, Remove a billing contact, Update a billing contact, Make a payment method the default, Start a SEPA Direct Debit mandate setup

billing-contact-exists

409 Conflict · Billing contact exists · Retry: after changing the request A billing contact with this email address already exists on the account. What to do: Update the existing contact instead, or use another email address. Returned by: Add a billing contact

brand-asset-in-use

409 Conflict · Brand asset in use · Retry: after changing the request The asset is still referenced by branding, content or an active or draft email template. What to do: Remove the references listed in references, then delete again. Details in more: references (Up to 20 places that use the asset: {type, id, pointer}.) Returned by: Delete a brand asset

concurrent-update

409 Conflict · Concurrent update · Retry: with backoff A database conflict persisted after the internal retries. Nothing was stored for your Idempotency-Key. What to do: Retry with the same Idempotency-Key after a short backoff.

domain-taken

409 Conflict · Domain taken · Retry: after changing the request The host name is already registered on the platform. What to do: Use another host name, or delete it where it is registered. Returned by: Add a custom domain

email-template-in-use

409 Conflict · Email template in use · Retry: after changing the request The active template cannot be archived while email OTP links are enabled. What to do: Activate another template, or disable email OTP links first. Returned by: Archive an email template

email-template-not-editable

409 Conflict · Email template not editable · Retry: after changing the request Only draft templates can be edited. What to do: Create a new draft, edit it and activate it. Returned by: Update a draft email template

entity-limit-reached

409 Conflict · Entity limit reached · Retry: after changing the request The redemption entity has reached the per-entity limit you configured for the voucher set (entityLimit). What to do: Do not retry for this entity in this period; raise the limit in the catalog settings if intended. Returned by: Redeem several vouchers in one request, Redeem a voucher

external-ref-taken

409 Conflict · External reference taken · Retry: after changing the request Another provider or voucher set setting of your partner already uses this externalRef. What to do: Choose a unique externalRef. Returned by: Update provider toggle and settings, Update voucher set toggle and settings

group-in-use

409 Conflict · Group in use · Retry: after changing the request The group is the default group of a single sign-on connection. What to do: Change the connection’s jitDefaultGroupId first. Returned by: Delete a group

group-name-taken

409 Conflict · Group name taken · Retry: after changing the request An active group with this name already exists (names are compared case-insensitively). What to do: Choose another name. Returned by: Create a group, Update a group

idempotency-key-in-use

409 Conflict · Idempotency-Key in use · Retry: after the Retry-After delay A request with the same Idempotency-Key is still being processed. What to do: Retry with the same key after the Retry-After interval. Returned by: Add a billing contact, Resend an invoice, Make a payment method the default, Remove a payment method, Start a SEPA Direct Debit mandate setup, Accept Price Terms, Block a redemption entity, Create a redemption entity, Erase a redemption entity (GDPR), Unblock a redemption entity, Create redemption links in bulk, Create a redemption link, Revoke a redemption link, Redeem several vouchers in one request, Redeem a voucher, Void a redemption, Request API access, Create an API key, Revoke an API key, Roll an API key, Complete a brand asset upload, Create a brand asset, Add a custom domain, Re-check a custom domain, Activate an email template, Archive an email template, Create an email template, Render an unsaved template preview, Create a group, Add an IP allowlist entry, Invite a member, Remove a member or revoke an invitation, Resend an invitation, Suspend a member, Unsuspend a member, Verify SMTP and send a test email, Activate an SSO connection, Create an SSO connection, Deactivate an SSO connection, Verify SSO email domains, Replay a webhook delivery, Create a webhook endpoint, Pause a webhook endpoint, Replay failed deliveries of an endpoint, Resume a webhook endpoint, Rotate the first signing secret, Rotate the second signing secret, Send a test event

invalid-state-transition

409 Conflict · Invalid state transition · Retry: after changing the request The resource’s current status does not allow this command. What to do: Re-read the resource and act on its current status. Returned by: Make a payment method the default, Block a redemption entity, Unblock a redemption entity, Revoke a redemption link, Update a redemption link, Request API access, Revoke an API key, Roll an API key, Rename an API key, Complete a brand asset upload, Re-check a custom domain, Activate an email template, Archive an email template, Update a group, Remove a member or revoke an invitation, Resend an invitation, Suspend a member, Unsuspend a member, Change a member’s direct permissions, Activate an SSO connection, Deactivate an SSO connection, Verify SSO email domains, Pause a webhook endpoint, Replay failed deliveries of an endpoint, Resume a webhook endpoint, Rotate the first signing secret, Rotate the second signing secret, Update a webhook endpoint

invoice-document-not-ready

409 Conflict · Invoice document not ready · Retry: after the Retry-After delay The PDF or XML document of this invoice is still being rendered. What to do: Retry after the Retry-After interval (30 seconds). Returned by: Download an invoice document, Resend an invoice

ip-allowlist-entry-exists

409 Conflict · IP allowlist entry exists · Retry: after changing the request This CIDR block is already in your allowlist. What to do: Use the existing entry. Returned by: Add an IP allowlist entry

ip-allowlist-required

409 Conflict · IP allowlist required · Retry: after changing the request Enforcement needs at least one allowlist entry: enforcement cannot be turned on with no entries, and the last entry cannot be deleted while enforcement is on. What to do: Add entries before enabling enforcement, or turn enforcement off before deleting the last entry. Returned by: Remove an IP allowlist entry, Update security settings 409 Conflict · Landing legal URLs required · Retry: after changing the request The change would clear landing.privacyUrl or landing.imprintUrl while you still have Redemption Links that are not revoked. What to do: Keep both URLs, or revoke the links first. Details in more: nonRevokedLinkCount (Number of Redemption Links that are not revoked.) Returned by: Replace workspace branding

last-owner

409 Conflict · Last owner · Retry: after changing the request The operation would leave your partner without an active owner. What to do: Make another member an owner first. Returned by: Update a group, Remove a member or revoke an invitation, Suspend a member

membership-exists

409 Conflict · Membership exists · Retry: after changing the request The email already has a membership in your partner that is not removed. What to do: Use the existing membership, or remove it before inviting again. Returned by: Invite a member

price-acceptance-required

409 Conflict · Price acceptance required · Retry: after changing the request You have not accepted the Price Terms in force at the redemption instant, or the voucher set has no price yet. What to do: Accept the Price Terms on the Prices page of the consumer dashboard, then retry with a new Idempotency-Key. Details in more: voucherSetId (The voucher set that needs a Price Acceptance.), priceAcceptanceStatus (Why the set is not redeemable.) Returned by: Redeem several vouchers in one request, Redeem a voucher

price-terms-changed

409 Conflict · Price terms changed · Retry: after changing the request The Price Terms of at least one item changed while you were deciding: its termsDigest or periodStartsAt no longer matches. Nothing was recorded; more.validationErrors names each failing item and more carries its currentTermsDigest. What to do: Re-read the Price Terms of the voucher set and accept the current terms. Returned by: Accept Price Terms

provider-depleted

409 Conflict · Provider depleted · Retry: after changing the request Every redeemable voucher set of the provider is depleted. What to do: Choose another provider or try again later with a new Idempotency-Key. Returned by: Redeem several vouchers in one request, Redeem a voucher

redemption-already-voided

409 Conflict · Redemption already voided · Retry: never The redemption has already been voided. What to do: Nothing to do; read the redemption for its void details. Returned by: Void a redemption

redemption-entity-blocked

409 Conflict · Redemption entity blocked · Retry: after changing the request The redemption entity is blocked. What to do: Unblock the entity (:unblock) or redeem for another entity. Returned by: Create redemption links in bulk, Create a redemption link, Redeem several vouchers in one request, Redeem a voucher

redemption-entity-erased

409 Conflict · Redemption entity erased · Retry: after changing the request The redemption entity has been erased; erasure is irreversible. What to do: Create a new entity if the person returns. Returned by: Block a redemption entity, Erase a redemption entity (GDPR), Unblock a redemption entity, Update a redemption entity, Create redemption links in bulk, Create a redemption link, Redeem several vouchers in one request, Redeem a voucher 409 Conflict · Redemption link entity limit reached · Retry: never The verified entity has reached the per-entity cap of an email OTP link. Returned to the landing page, not by the Consumer API. What to do: Raise maxRedemptions on the link if intended. 409 Conflict · Redemption link exhausted · Retry: never The Redemption Link has reached its redemption cap. Returned to the landing page, not by the Consumer API. What to do: Raise maxRedemptions (or maxTotalRedemptions) with PATCH /consumer/v1/redemption-links/{redemptionLinkId}, or create a new link.

ref-id-taken

409 Conflict · refId taken · Retry: after changing the request Another redemption entity of your partner already uses this refId. What to do: Use the existing entity (its id is in redemptionEntityId) or choose another refId. Details in more: redemptionEntityId (Id of the entity that already has this refId.) Returned by: Create a redemption entity, Update a redemption entity

reference-not-found

409 Conflict · Reference not found · Retry: after changing the request A resource the request refers to disappeared concurrently. What to do: Re-read the referenced resource and retry with a new Idempotency-Key.

self-modification-not-allowed

409 Conflict · Self-modification not allowed · Retry: after changing the request You cannot change your own permissions, groups or status. What to do: Ask another administrator to make the change. Returned by: Create a group, Update a group, Remove a member or revoke an invitation, Suspend a member, Unsuspend a member, Change a member’s direct permissions

sepa-not-enabled

409 Conflict · SEPA Direct Debit not enabled · Retry: never AllRide collects your invoices by bank transfer, so no SEPA Direct Debit mandate can be set up. AllRide decides the payment method (preferredPaymentMethodType of the billing account). What to do: Pay by bank transfer, or contact AllRide if you want to pay by SEPA Direct Debit. Returned by: Start a SEPA Direct Debit mandate setup

smtp-verification-in-progress

409 Conflict · SMTP verification in progress · Retry: with backoff Another SMTP verification of your partner is still running. What to do: Wait until verificationCompletedAt is set, then retry. Returned by: Verify SMTP and send a test email

sso-connection-exists

409 Conflict · SSO connection exists · Retry: after changing the request Your partner already has a single sign-on connection that is not disabled. What to do: Update or deactivate the existing connection. Returned by: Create an SSO connection

sso-domain-unverified

409 Conflict · SSO domain unverified · Retry: after changing the request The connection has no verified email domain. What to do: Publish the TXT record and call :verify first. Returned by: Activate an SSO connection

system-group-immutable

409 Conflict · System group immutable · Retry: after changing the request System groups cannot be renamed or deleted, and the owners permissions are computed. What to do: Create a custom group instead. Returned by: Delete a group, Update a group

upload-file-missing

409 Conflict · Upload file missing · Retry: after changing the request No file was uploaded to the upload target yet. What to do: PUT the file to uploadTarget.url first, then complete the upload. Returned by: Complete a brand asset upload

voucher-already-redeemed

409 Conflict · Voucher already redeemed · Retry: after changing the request A safety check found the voucher already redeemed. This is not expected in normal operation. What to do: Retry with a new Idempotency-Key; contact support with the X-Request-Id if it repeats. Returned by: Redeem several vouchers in one request, Redeem a voucher

voucher-set-depleted

409 Conflict · Voucher set depleted · Retry: after changing the request No voucher of the set can be issued: every voucher is redeemed, expired or revoked (in a batch: fewer distinct vouchers than requested). What to do: Choose another voucher set, or redeem by providerId to let the platform pick a set with stock. Use a new Idempotency-Key for the new attempt. Returned by: Redeem several vouchers in one request, Redeem a voucher

voucher-set-unavailable

409 Conflict · Voucher set unavailable · Retry: after changing the request The voucher set cannot be redeemed now: it is not active, its provider is not active, AllRide no longer grants you access, or your provider or voucher set toggle is off. What to do: Re-read the catalog entry; choose another voucher set or turn the toggles on. Returned by: Redeem several vouchers in one request, Redeem a voucher

webhook-endpoint-not-active

409 Conflict · Webhook endpoint not active · Retry: after changing the request The endpoint is paused or deleted. What to do: Resume the endpoint first. Returned by: Replay a webhook delivery, Replay failed deliveries of an endpoint, Send a test event

410 Gone

api-version-sunset

410 Gone · API version sunset · Retry: never The operation or API version is past its Sunset date. What to do: Move to the operation in successorUrl. Details in more: sunsetAt (Sunset date.), successorUrl (The successor.) 410 Gone · Redemption link expired · Retry: never The Redemption Link has passed its expiresAt. Returned to the landing page, not by the Consumer API. What to do: Move expiresAt into the future (or clear it) with a PATCH, or create a new link. 410 Gone · Redemption link revoked · Retry: never The Redemption Link was revoked (by you, or because its redemption entity was erased). Returned to the landing page, not by the Consumer API. What to do: Create a new link; revocation is final.

webhook-event-expired

410 Gone · Webhook event expired · Retry: never The delivery’s payload was removed because its Redemption Entity was erased (GDPR), so the event can no longer be sent. Deliveries older than 30 days are no longer in the log and answer 404 webhook-delivery-not-found. What to do: Re-read the resource through the API instead. Returned by: Replay a webhook delivery

422 Unprocessable Content

apex-domain-not-supported

422 Unprocessable Content · Apex domain not supported · Retry: after changing the request Only subdomains (at least three labels, such as vouchers.example-transit.example.com) can be added. What to do: Use a subdomain. Returned by: Add a custom domain

api-key-limit-reached

422 Unprocessable Content · API key limit reached · Retry: after changing the request Your partner already has 20 active API keys. What to do: Revoke keys you no longer use. Returned by: Create an API key

batch-too-large

422 Unprocessable Content · Batch too large · Retry: after changing the request The batch asks for more than 10 vouchers in total (the sum of quantity). What to do: Split the request into batches of at most 10 vouchers. Returned by: Redeem several vouchers in one request

brand-asset-limit-reached

422 Unprocessable Content · Brand asset limit reached · Retry: after changing the request Your partner already has 500 counted brand assets (ready assets plus uploads younger than one hour). What to do: Delete unused assets, then retry. Returned by: Create a brand asset

constraint-violated

422 Unprocessable Content · Constraint violated · Retry: after changing the request The request violates a data constraint. What to do: Correct the request.

content-blocked

422 Unprocessable Content · Content blocked · Retry: after changing the request A text you saved breaks a content rule. Each more.validationErrors entry names the field (property) and the public reason (constraint). What to do: Change the text named in more.validationErrors and save again. Returned by: Create or replace the SMTP configuration, Replace workspace branding

custom-domain-limit-reached

422 Unprocessable Content · Custom domain limit reached · Retry: after changing the request Your partner already has 10 custom domains that are not deleted. What to do: Delete a domain you no longer use. Returned by: Add a custom domain

domain-not-allowed

422 Unprocessable Content · Domain not allowed · Retry: after changing the request Host names under the platform domain cannot be added. What to do: Use a host name under a domain you own. Returned by: Add a custom domain

email-otp-not-configured

422 Unprocessable Content · Email OTP not configured · Retry: after changing the request The Email OTP Gate is not ready: it is turned off, the SMTP configuration is not verified, or no email template is active. missing lists what is missing. What to do: Fix every item in missing (see the email OTP links guide), then retry. Details in more: missing (What blocks the gate.) Returned by: Update email OTP settings, Create redemption links in bulk, Create a redemption link

idempotency-key-reused

422 Unprocessable Content · Idempotency-Key reused · Retry: after changing the request The Idempotency-Key was already used for a different request. What to do: Use a new key for a new request. Returned by: Add a billing contact, Resend an invoice, Make a payment method the default, Remove a payment method, Start a SEPA Direct Debit mandate setup, Accept Price Terms, Block a redemption entity, Create a redemption entity, Erase a redemption entity (GDPR), Unblock a redemption entity, Create redemption links in bulk, Create a redemption link, Revoke a redemption link, Redeem several vouchers in one request, Redeem a voucher, Void a redemption, Request API access, Create an API key, Revoke an API key, Roll an API key, Complete a brand asset upload, Create a brand asset, Add a custom domain, Re-check a custom domain, Activate an email template, Archive an email template, Create an email template, Render an unsaved template preview, Create a group, Add an IP allowlist entry, Invite a member, Remove a member or revoke an invitation, Resend an invitation, Suspend a member, Unsuspend a member, Verify SMTP and send a test email, Activate an SSO connection, Create an SSO connection, Deactivate an SSO connection, Verify SSO email domains, Replay a webhook delivery, Create a webhook endpoint, Pause a webhook endpoint, Replay failed deliveries of an endpoint, Resume a webhook endpoint, Rotate the first signing secret, Rotate the second signing secret, Send a test event

insufficient-contrast

422 Unprocessable Content · Insufficient contrast · Retry: after changing the request A text and background colour pair does not reach WCAG AA contrast (4.5:1). What to do: Choose colours with more contrast; more.validationErrors[].property names the foreground colour. Returned by: Replace workspace branding

ip-allowlist-limit-reached

422 Unprocessable Content · IP allowlist limit reached · Retry: after changing the request Your partner already has 100 IP allowlist entries. What to do: Merge ranges or remove entries you no longer use. Returned by: Add an IP allowlist entry

ip-allowlist-would-lock-out

422 Unprocessable Content · IP allowlist would lock you out · Retry: after changing the request The change would exclude your own current IP address under api-keys-and-users enforcement. What to do: Add your current egress range first. Returned by: Remove an IP allowlist entry, Update security settings 422 Unprocessable Content · Landing legal URLs missing · Retry: after changing the request Your Workspace Branding has no landing.privacyUrl or landing.imprintUrl, which landing pages must show. What to do: Set both URLs in the landing settings of your Workspace Branding, then retry. Returned by: Create redemption links in bulk, Create a redemption link, Update a redemption link 422 Unprocessable Content · Link mode conflict · Retry: after changing the request A Redemption Link cannot both be bound to a redemption entity and require the email OTP gate. What to do: Send either a redemption entity or requireEmailOtp: true, not both. Returned by: Create redemption links in bulk, Create a redemption link

max-below-count

422 Unprocessable Content · Maximum below count · Retry: after changing the request The new cap is lower than the number of redemptions already made through the link. What to do: Set the cap to at least the link’s redemptionCount. Returned by: Update a redemption link

private-key-not-allowed

422 Unprocessable Content · Private key not allowed · Retry: after changing the request The request contains a private key. Only public material (a public certificate) is accepted; the payload was discarded. What to do: Send only the public certificate and keep the private key on your side. Returned by: Create an SSO connection, Update an SSO connection

scope-not-delegable

422 Unprocessable Content · Scope not delegable · Retry: after changing the request A requested scope is a permission that API keys can never hold (for example manage-api-keys, manage-consumer-billing, accept-consumer-pricing). What to do: Remove the scope; that operation stays dashboard-only. Returned by: Create an API key

slug-immutable

422 Unprocessable Content · Slug immutable · Retry: after changing the request The partner slug cannot be changed. What to do: Remove slug from the request; contact AllRide if the slug must change. Returned by: Update general information

smtp-host-not-allowed

422 Unprocessable Content · SMTP host not allowed · Retry: after changing the request The SMTP host resolves to a private, loopback, link-local, CGNAT or metadata address, or does not resolve (item code unresolvable). What to do: Use a publicly reachable SMTP host. Returned by: Create or replace the SMTP configuration

smtp-test-recipient-missing

422 Unprocessable Content · SMTP test recipient missing · Retry: after changing the request An API key requested an SMTP test email, but your partner has no technical contact email to send it to. What to do: Set contacts.technicalEmail on your partner, or verify from the dashboard. Returned by: Verify SMTP and send a test email

template-invalid

422 Unprocessable Content · Template invalid · Retry: after changing the request The template uses a forbidden construct (triple braces, partials, decorators, dotted paths), exceeds 100 KB, or cannot be activated because it misses required variables, uses unknown ones or has a blocking finding. Each issue is listed in more.validationErrors. What to do: Fix every entry in more.validationErrors and retry. Returned by: Activate an email template, Create an email template, Render an unsaved template preview, Update a draft email template

upload-size-mismatch

422 Unprocessable Content · Upload size mismatch · Retry: after changing the request The uploaded file’s size differs from sizeBytes. What to do: Create a new asset with the correct size and upload again. Returned by: Complete a brand asset upload

void-window-expired

422 Unprocessable Content · Void window expired · Retry: never The redemption is older than 30 days and can no longer be voided by you. What to do: Contact AllRide support if the redemption must still be voided. Details in more: voidableUntil (When the void window closed.) Returned by: Void a redemption

webhook-endpoint-limit-reached

422 Unprocessable Content · Webhook endpoint limit reached · Retry: after changing the request Your partner already has 10 webhook endpoints that are not deleted. What to do: Delete an endpoint you no longer use, or add event types to an existing one. Returned by: Create a webhook endpoint

webhook-url-not-allowed

422 Unprocessable Content · Webhook URL not allowed · Retry: after changing the request The URL is not an https URL on port 443 or 8443 that resolves to a public address. What to do: Use a public https URL on port 443 or 8443. Details in more: reason (Why the URL was refused.) Returned by: Create a webhook endpoint, Update a webhook endpoint

500 Internal Server Error

internal-error

500 Internal Server Error · Internal error · Retry: with backoff An unexpected failure occurred. What to do: Retry later with the same Idempotency-Key; quote the requestId when contacting support. Returned by: any operation. 500 Internal Server Error · Link render failed · Retry: with backoff The voucher set’s link template could not be rendered for the allocated voucher. No voucher was consumed. What to do: Retry later with a new Idempotency-Key; AllRide is alerted automatically. Returned by: Redeem several vouchers in one request, Redeem a voucher

502 Bad Gateway

upstream-error

502 Bad Gateway · Upstream error · Retry: with backoff A service the platform depends on answered with an error. What to do: Retry with backoff and the same Idempotency-Key. Returned by: Create an SSO connection, Update an SSO connection

upstream-unavailable

502 Bad Gateway · Upstream unavailable · Retry: with backoff A service the platform depends on could not be reached. What to do: Retry with backoff and the same Idempotency-Key.

503 Service Unavailable

bot-check-unavailable

503 Service Unavailable · Bot check unavailable · Retry: after the Retry-After delay The bot check service could not be reached, so the landing request was refused (fail closed). What to do: Retry after the Retry-After interval.

db-unavailable

503 Service Unavailable · Database unavailable · Retry: after the Retry-After delay The database is overloaded or unreachable. What to do: Retry after the Retry-After interval. Returned by: any operation.

psp-unavailable

503 Service Unavailable · Payment provider unavailable · Retry: after the Retry-After delay The payment service provider could not be reached. What to do: Retry after the Retry-After interval. Returned by: Remove a payment method, Start a SEPA Direct Debit mandate setup

query-timeout

503 Service Unavailable · Query timeout · Retry: after the Retry-After delay A database statement took too long. What to do: Retry after the Retry-After interval; narrow list filters. Returned by: any operation.

service-unavailable

503 Service Unavailable · Service unavailable · Retry: after the Retry-After delay The service is overloaded. What to do: Retry after the Retry-After interval. Returned by: any operation.

upstream-circuit-open

503 Service Unavailable · Upstream circuit open · Retry: after the Retry-After delay A dependency is temporarily cut off after repeated failures. What to do: Retry after the Retry-After interval.

504 Gateway Timeout

upstream-timeout

504 Gateway Timeout · Upstream timeout · Retry: with backoff A service the platform depends on did not answer in time. What to do: Retry with backoff and the same Idempotency-Key. Returned by: Create an SSO connection, Update an SSO connection

Validation item codes

Values of more.validationErrors[].constraint in a data-failed-validation (and content-blocked, template-invalid or batch) error.

admin-only-field

Only AllRide can change this property.

billing-contact-role-required

A billing contact needs at least one role.

brand-asset-not-usable

The brand asset is not ready or has the wrong kind for this field.

category-not-active

This category is not active.

content-encoded-data

Contains encoded data (base64, hex or URL-encoded payloads).

content-hidden-characters

Contains invisible or direction-changing characters.

content-impersonation

Looks like another brand’s name or uses look-alike characters.

content-markup-not-allowed

Contains HTML, scripts or template code.

content-suspicious-text

Asks for passwords, PINs or payment details, or is otherwise suspicious.

content-too-large

The content is too large to check. Contains a link that is not allowed.

custom-domain-not-usable

This custom domain is not active for redemption landing pages.

duplicate-items

Must not contain duplicate items.

filter-required

One of these filters is required: {filters}.

invalid-cidr

Must be an allowed IPv4 or IPv6 CIDR block in canonical form.

invalid-color

Must be a colour in the form #rrggbb.

invalid-country

Must be an ISO 3166-1 alpha-2 country code.

invalid-date

Must be a date in the form YYYY-MM-DD.

invalid-email

Must be a valid email address.

invalid-enum-value

Must be one of: {allowed}.

invalid-filter

This filter field, operator or value is not supported by the operation, the filtered range is longer than the operation allows (params.maxMonths or params.maxDays), or more than 20 filters or 100 values in one in filter were sent (params.max).

invalid-format

Does not match the format {format}.

invalid-hostname

Must be a valid host name.

invalid-i18n-text

Must be a text per supported locale, including your partner’s default locale, within the length limit.

invalid-id

Must be a positive integer id.

invalid-markdown

Must be valid text in the allowed Markdown subset, including your partner’s default locale.

invalid-metadata

Must be a JSON object of at most 16 KiB, depth 5 and 100 keys per object.

invalid-money

Must be an amount in cent (a non-negative integer).

invalid-month

Must be a month in the form YYYY-MM.

invalid-page

Must be between {min} and {max} (page 1-100,000, perPage 1-100).

invalid-period

Must be lifetime or calendar-month.

invalid-ref-id

Must be 1-128 characters of letters, digits and ._:@/+=-

invalid-slug

Must be 2-40 lower-case letters, digits or hyphens and not a reserved name.

invalid-sort

Must be one of the sortable fields in {allowed}, optionally prefixed with - for descending; one field only.

invalid-timestamp

Must be an RFC 3339 timestamp with an offset, for example 2026-11-01T00:00:00Z.

invalid-timezone

Must be an IANA time zone such as Europe/Berlin.

invalid-type

Must be of type {expected}.

invalid-unit-price

Must be a unit price between 0 and 100000000 ten-thousandths with scale 4.

invalid-url

Must be an https URL on an allowed host.

invalid-vat-id

Must be a valid VAT id.

mutually-exclusive

Send only one of {fields}.

not-allowed-for-mode

This property is not allowed for the selected mode.

not-in-future

Must be in the future.

null-not-allowed

This property must not be null.

out-of-range

The value is outside the allowed range.

permission-not-applicable

This permission does not apply to your partner’s roles.

provider-not-in-catalog

This provider is not in your catalog.

range-too-large

The requested range is too large.

required

This property or parameter is required.

security-port-mismatch

The port does not match the selected TLS mode (465 implicit TLS, 587 or 2525 STARTTLS).

sso-domain-not-allowed

Public mailbox domains and the platform domain cannot be used for single sign-on.

too-few-items

Must contain at least {min} items.

too-large

Must be at most {max}.

too-long

Must be at most {max} characters.

too-many-items

Must contain at most {max} items.

too-short

Must be at least {min} characters.

too-small

Must be at least {min}.

unknown-field

This property is not allowed.

unknown-parameter

This query parameter is not supported by the operation.

unresolvable

The host name does not resolve.

unsupported-locale

Must be a supported locale (de, en).

vat-id-country-mismatch

The VAT id does not match the address country.

voucher-set-not-in-catalog

This voucher set is not in your catalog.

voucher-set-provider-not-allowed

This voucher set’s provider is not allowed for the link.

webhook-event-type-not-allowed

This event type is not available to your partner or needs a permission you lack.