{"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
redemption-link-not-found
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
landing-legal-urls-required
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
redemption-link-entity-limit-reached
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.
redemption-link-exhausted
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.)
redemption-link-expired
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.
redemption-link-revoked
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
landing-legal-urls-missing
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
link-mode-conflict
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.
link-render-failed
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 ofmore.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.
content-unsafe-link
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).