{"errors": [{"message", "statusCode", "errorCode", …}]} and its errorCode is listed below; the errors guide explains the format.
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.
Details in more: validationErrors (The invalid properties and parameters: {property, constraint, params?, message{en,de}, value?}; params holds the constraint’s parameters (for example {"max": 120}); value is echoed only for numbers and booleans, never for strings.)
invalid-header
400 Bad request · Invalid header · Retry: after changing the request
A standard or platform header is malformed; more.validationErrors[].property names the header.
What to do: Correct the header named in more.validationErrors.
Details in more: validationErrors (The malformed header, as property.)
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 without spaces.
What to do: Send a valid key, for example a UUID.
malformed-json
400 Bad request · Malformed JSON · Retry: after changing the request
The body is not valid UTF-8 JSON.
What to do: Send a valid JSON document.
401 Unauthorized
api-key-invalid
401 Unauthorized · Invalid API key · Retry: never
The API key is unknown, revoked, expired, or belongs to the other environment (a vk_test_ key against production or a vk_live_ key against the sandbox).
What to do: Check the key and the base URL; create or roll a key in the developer dashboard.
session-revoked
401 Unauthorized · Session revoked · Retry: never
The dashboard user’s session was revoked.
What to do: Sign in again.
token-expired
401 Unauthorized · Credential expired · Retry: never
The dashboard user’s ID token has expired.
What to do: Sign in again; API-key integrations never see this code.
token-invalid
401 Unauthorized · Invalid credential · Retry: never
The credential cannot be verified for this surface, has an unknown scheme, or two Authorization headers were sent.
What to do: Send exactly one Authorization header with a credential for this surface.
unauthenticated
401 Unauthorized · Authentication required · Retry: never
No credential was sent with the request.
What to do: Send your API key in the Authorization header: Bearer vk_test_… or Bearer vk_live_….
403 Forbidden
api-access-inactive
403 Forbidden · API access inactive · Retry: never
API access of the partner is not active, or the partner is not active. API keys work only while both are active; the same code answers key and webhook operations that need active API access.
What to do: Request API access in the developer dashboard and wait for AllRide to activate it.
Returned by: Replay failed deliveries, Send a test event, Replay a webhook delivery
ip-not-allowed
403 Forbidden · IP address not allowed · Retry: never
The request came from an address outside the partner’s IP allowlist while enforcement is on.
What to do: Call from an allowlisted address, or add your egress range to the allowlist.
mfa-required
403 Forbidden · Multi-factor authentication required · Retry: never
The partner requires multi-factor authentication and the session has not satisfied it.
What to do: Complete the step-up at more.stepUpUrl or enrol at more.enrolUrl.
Details in more: enrolUrl (Where to enrol.), stepUpUrl (Where to step up.)
missing-permission
403 Forbidden · Missing permission · Retry: after changing the request
The membership or API key lacks a permission the operation requires; more.requiredPermissions lists them. API keys always get this code on dashboard-only operations.
What to do: Ask a partner administrator to grant the permissions, or use a key with that scope.
Details in more: requiredPermissions (The permissions the operation needs.)
owner-membership-required
403 Forbidden · Owner membership required · Retry: never
Only members of the owners group may change the owners and administrators groups or suspend or remove an owner.
What to do: Ask an owner to make the change.
Returned by: Invite a member, Remove a member, Suspend a member, Unsuspend a member, Update a group
partner-not-active
403 Forbidden · Partner not active · Retry: never
The partner is still in draft or onboarding and the operation needs an active partner.
What to do: Complete onboarding first.
partner-offboarded
403 Forbidden · Partner offboarded · Retry: never
The partner has been offboarded.
What to do: Contact AllRide support.
partner-role-missing
403 Forbidden · Partner role missing · Retry: never
The partner lacks the role this surface needs (more.requiredRole names it), for example a consumer-only partner on /provider/v1.
What to do: Use the surface of your partner’s role.
Details in more: requiredRole (The role the surface needs.)
partner-suspended
403 Forbidden · Partner suspended · Retry: never
The partner is suspended; only reads are allowed.
What to do: Contact AllRide support.
reauthentication-required
403 Forbidden · Recent sign-in required · Retry: after changing the request
The operation needs a sign-in within the last 15 minutes. API keys are exempt.
What to do: Sign in again at more.stepUpUrl and repeat the request.
Details in more: stepUpUrl (Where to sign in again.)
sso-required
403 Forbidden · Single sign-on required · Retry: never
The partner enforces single sign-on for the user’s email domain.
What to do: Sign in through the partner’s identity provider.
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: List your API keys.
Returned by: Get an API key, Rename an API key, Revoke an API key, Roll 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: List audit events with filters.
Returned by: Get an audit event
brand-asset-not-found
404 Not found · Brand asset not found · Retry: after changing the request
No brand asset with this id exists for your partner, including asset ids referenced inside content.
What to do: Upload the asset first or use one of your own asset ids.
Returned by: Get a brand asset, Complete a brand asset upload, Delete a brand asset, Create a voucher set change request, Edit a voucher set change request, Create a provider profile change request and others
category-not-found
404 Not found · Category not found · Retry: after changing the request
No active category with this id exists.
What to do: List categories and use an active one.
Returned by: Get a category
change-request-not-found
404 Not found · Change request not found · Retry: after changing the request
No change request with this id exists for this subject.
What to do: Check the subject path and the change request id.
Returned by: Get a voucher set change request, Edit a voucher set change request, Submit a voucher set change request, Withdraw a voucher set change request, Get a provider profile change request, Edit a provider profile change request and others
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: List the groups of your partner.
Returned by: Get a group, Update a group, Delete a group, List the members of a group
ip-allowlist-entry-not-found
404 Not found · IP allowlist entry not found · Retry: after changing the request
No allowlist entry with this id exists in your partner.
What to do: List your IP allowlist entries.
Returned by: Relabel an IP allowlist entry, Remove 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: List the members of your partner.
Returned by: Get a member, Change a member’s direct permissions, Remove a member, Resend an invitation, Suspend a member, Unsuspend a member
partner-not-found
404 Not found · Partner not found · Retry: never
The token 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.
redemption-not-found
404 Not found · Redemption not found · Retry: after changing the request
No redemption of your vouchers has this id.
What to do: Check the redemption id.
Returned by: Get 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.
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: List your SSO connections.
Returned by: Get an SSO connection, Update an SSO connection, Activate an SSO connection, Deactivate an SSO connection, Verify SSO email domains
stock-alert-rule-not-found
404 Not found · Stock alert rule not found · Retry: after changing the request
This voucher set has no provider stock alert rule (only sets created by AllRide for a shell partner).
What to do: Create the rule with PUT on the stock-alert-rule path.
Returned by: Get the stock alert rule
voucher-not-found
404 Not found · Voucher not found · Retry: after changing the request
No voucher with this id exists for your partner (or, inside a batch revocation, in this voucher set).
What to do: Check the voucher id.
Returned by: Get a voucher, Reveal a voucher value, Revoke a voucher
voucher-set-not-found
404 Not found · Voucher set not found · Retry: after changing the request
No voucher set with this id exists for your partner.
What to do: Check the id; ids of other partners are reported as not found.
Returned by: Get a voucher set, Update a voucher set, Activate a voucher set now, Archive a voucher set, Cancel a schedule, Deactivate a voucher set now and others
voucher-set-revision-not-found
404 Not found · Voucher set revision not found · Retry: after changing the request
No revision with this id exists for this voucher set.
What to do: List the revisions of the voucher set.
Returned by: Get a revision
voucher-upload-not-found
404 Not found · Voucher upload not found · Retry: after changing the request
No upload with this id exists for this voucher set.
What to do: Check both the voucher set id and the upload id.
Returned by: Get a voucher upload, Cancel a voucher upload, Import the valid rows, Start processing a voucher upload, List upload row errors
webhook-delivery-not-found
404 Not found · Webhook delivery not found · Retry: after changing the request
No webhook delivery with this id is visible to you.
What to do: List deliveries; they are kept for 30 days.
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: List your webhook endpoints.
Returned by: Get a webhook endpoint, Update a webhook endpoint, Pause a webhook endpoint, Replay failed deliveries, Resume a webhook endpoint, Rotate the first signing secret and others
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
brand-asset-in-use
409 Conflict · Brand asset in use · Retry: after changing the request
The asset is referenced by live or draft content or by an open change request; more.references lists where.
What to do: Remove the references first.
Details in more: references (Up to 20 places that use the asset: {type, id, pointer}.)
Returned by: Delete a brand asset, Delete a brand asset
change-request-open
409 Conflict · Change request open · Retry: after changing the request
The subject already has an open change request (more.openChangeRequestId names it), or the voucher set’s draft is held by that open change request.
What to do: Edit, submit or withdraw the open change request instead.
Details in more: openChangeRequestId (The open change request.)
Returned by: Update a voucher set, Archive a voucher set, Create a voucher set change request, Create a provider profile change request, Create a listing branding change request
concurrent-update
409 Conflict · Concurrent update · Retry: with backoff
A database conflict persisted after internal retries. Not stored for idempotency.
What to do: Retry with the same Idempotency-Key and backoff.
group-in-use
409 Conflict · Group in use · Retry: after changing the request
The group is the default group of an SSO connection’s automatic member provisioning.
What to do: Change the SSO connection 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.
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.
invalid-state-transition
409 Conflict · Invalid state transition · Retry: after changing the request
The command is not allowed in the resource’s current status; the message names the from and to states. This is also the answer when another change moved the resource first: the status is checked when the command runs.
What to do: Read the resource and send a command that its current status allows.
Returned by: Complete a brand asset upload, Activate a voucher set now, Archive a voucher set, Cancel a schedule, Deactivate a voucher set now, Schedule activation and others
ip-allowlist-entry-exists
409 Conflict · IP allowlist entry exists · Retry: never
This CIDR block is already in the allowlist.
What to do: Leave the existing entry as it is.
Returned by: Add an IP allowlist entry
ip-allowlist-required
409 Conflict · IP allowlist required · Retry: after changing the request
IP allowlist enforcement needs at least one entry; this change would enable it with none or delete the last entry.
What to do: Add entries before enabling enforcement, or turn enforcement off first.
Returned by: Update security settings, Remove an IP allowlist entry
landing-legal-urls-required
409 Conflict · Landing legal URLs required · Retry: after changing the request
Consumer partners only (the shared route serves both audiences): the change would clear landing.privacyUrl or landing.imprintUrl while the consumer has a Redemption Link that is not revoked; more.nonRevokedLinkCount says how many. Nothing was saved. Provider workspaces never get this error.
What to do: Revoke the links first, or keep both URLs set.
Returned by: Replace the workspace branding
last-owner
409 Conflict · Last owner · Retry: never
The operation would leave the partner without an active owner.
What to do: Add another owner first.
Returned by: Remove a member, Suspend a member, Update a group
membership-exists
409 Conflict · Membership exists · Retry: never
The email already has a membership in this partner.
What to do: Use the existing membership or resend its invitation.
Returned by: Invite a member
self-modification-not-allowed
409 Conflict · Self-modification not allowed · Retry: never
Nobody can change their own permissions, groups or status.
What to do: Ask another administrator.
Returned by: Change a member’s direct permissions, Remove a member, Suspend a member, Unsuspend a member, Create a group, Update a group
sso-connection-exists
409 Conflict · SSO connection exists · Retry: after changing the request
The partner already has an SSO connection that is not disabled.
What to do: Edit or deactivate the existing connection.
Returned by: Create an SSO connection
sso-domain-unverified
409 Conflict · SSO domain unverified · Retry: after changing the request
An SSO connection needs at least one verified email domain before it can be activated.
What to do: Publish the TXT record and call :verify.
Returned by: Activate an SSO connection
system-group-immutable
409 Conflict · System group immutable · Retry: never
System groups cannot be renamed or deleted, and the owners group’s permissions are fixed.
What to do: Create a custom group instead.
Returned by: Update a group, Delete a group
upload-file-missing
409 Conflict · Upload file missing · Retry: after changing the request
No file was found at the upload target.
What to do: PUT the file to uploadTarget.url with the exact headers, then call the command again.
Returned by: Complete a brand asset upload, Start processing a voucher upload, Complete a brand asset upload
voucher-kind-locked
409 Conflict · Voucher kind locked · Retry: never
voucherKind can change only while the set is a draft without vouchers.
What to do: Create a new voucher set with the other kind.
Returned by: Update a voucher set
voucher-not-revocable
409 Conflict · Voucher not revocable · Retry: never
Only available vouchers can be revoked; this one is exhausted, expired or already revoked.
What to do: Leave the voucher as it is.
Returned by: Revoke several vouchers, Revoke a voucher
voucher-set-archived
409 Conflict · Voucher set archived · Retry: never
The voucher set is archived, which is terminal.
What to do: Create a new voucher set.
Returned by: Update a voucher set, Activate a voucher set now, Cancel a schedule, Deactivate a voucher set now, Schedule activation, Schedule deactivation and others
voucher-set-suspended
409 Conflict · Voucher set suspended · Retry: never
AllRide has suspended the voucher set; providers cannot activate, schedule, archive, change or add vouchers to it.
What to do: Contact AllRide support.
Returned by: Activate a voucher set now, Archive a voucher set, Cancel a schedule, Deactivate a voucher set now, Schedule activation, Schedule deactivation and others
voucher-upload-in-progress
409 Conflict · Voucher upload in progress · Retry: after changing the request
The voucher set has an upload that is being validated or imported.
What to do: Wait for the upload to finish, then retry.
Returned by: Archive a voucher set
voucher-upload-limit-reached
409 Conflict · Voucher upload limit reached · Retry: after changing the request
The voucher set already has 10 uploads in a non-terminal status.
What to do: Finish or cancel uploads before creating another.
Returned by: Create a voucher upload
voucher-value-exists
409 Conflict · Voucher value exists · Retry: after changing the request
A value of the batch already exists in the voucher set; more.validationErrors names each item. Nothing was created.
What to do: Remove the existing values and send the batch with a new Idempotency-Key.
Details in more: validationErrors (One entry per existing value, property names the item.)
Returned by: Create vouchers in a batch
webhook-endpoint-not-active
409 Conflict · Webhook endpoint not active · Retry: after changing the request
Test events and replays need an active endpoint; this one is paused or deleted.
What to do: Resume the endpoint, then retry.
Returned by: Replay failed deliveries, Send a test event, Replay a webhook delivery
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 named in more.successorUrl.
Details in more: sunsetAt (Sunset date.), successorUrl (The successor.)
webhook-event-expired
410 Gone · Webhook event expired · Retry: never
The event of this delivery is older than the 30-day retention and cannot be replayed.
What to do: Fetch the current state through the API instead.
Returned by: Replay a webhook delivery
422 Unprocessable content
api-key-limit-reached
422 Unprocessable content · API key limit reached · Retry: after changing the request
The partner already has 20 active API keys.
What to do: Revoke unused keys.
Returned by: Create an API key
batch-too-large
422 Unprocessable content · Batch too large · Retry: after changing the request
The batch has more than 1,000 vouchers.
What to do: Split the batch, or use a voucher upload.
Returned by: Create vouchers in a batch
brand-asset-limit-reached
422 Unprocessable content · Brand asset limit reached · Retry: after changing the request
The partner already has 500 counted brand assets.
What to do: Delete unused assets.
Returned by: Create a brand asset, Create a brand asset
content-blocked
422 Unprocessable content · Content blocked · Retry: after changing the request
A saved text breaks the content rules; more.validationErrors lists one public reason per field.
What to do: Change the fields named in more.validationErrors; see the content rules guide.
Details in more: validationErrors (One public reason per field, as constraint.)
Returned by: Replace the workspace branding
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.
insufficient-contrast
422 Unprocessable content · Insufficient contrast · Retry: after changing the request
Text and background colours, or button text and button colours, are below a 4.5:1 contrast ratio.
What to do: Choose colours with more contrast.
Returned by: Replace the workspace branding
invalid-schedule
422 Unprocessable content · Invalid schedule · Retry: after changing the request
activeFrom must be before deactivateAt, deactivateAt must be in the future, and both at most 2 years ahead.
What to do: Correct the instant named in more.validationErrors.
Details in more: validationErrors (The instant that breaks the rule.)
Returned by: Schedule activation, Schedule deactivation
ip-allowlist-limit-reached
422 Unprocessable content · IP allowlist limit reached · Retry: after changing the request
The partner already has 100 allowlist entries.
What to do: Merge entries into wider CIDR blocks.
Returned by: Add an IP allowlist entry
ip-allowlist-would-lock-out
422 Unprocessable content · IP allowlist would lock out · Retry: after changing the request
The change would block the calling user’s current IP address.
What to do: Add your current address first.
Returned by: Update security settings, Remove an IP allowlist entry
link-host-in-use
422 Unprocessable content · Link host in use · Retry: after changing the request
The change removes an allowed link host or scheme that available vouchers or the link template still use; the message lists them.
What to do: Revoke those vouchers or keep the host.
Returned by: Create a voucher set change request, Edit a voucher set change request, Submit a voucher set change request
permission-not-applicable
422 Unprocessable content · Permission not applicable · Retry: after changing the request
A permission does not apply to your partner’s roles.
What to do: Use permissions of your partner’s roles.
Returned by: Create an API key
private-key-not-allowed
422 Unprocessable content · Private key not allowed · Retry: after changing the request
The request contains a private key. Only public certificates are accepted.
What to do: Send the public certificate only; the private key never leaves your systems.
Returned by: Create an SSO connection, Update an SSO connection
scope-not-delegable
422 Unprocessable content · Scope not delegable · Retry: after changing the request
An API key scope is a dashboard-only permission.
What to do: Remove non-delegable permissions from scopes.
Returned by: Create an API key
slug-immutable
422 Unprocessable content · Slug immutable · Retry: never
The partner slug cannot be changed.
What to do: Leave slug out of the request.
Returned by: Update general information
upload-size-mismatch
422 Unprocessable content · Upload size mismatch · Retry: after changing the request
The uploaded file’s size differs from the declared sizeBytes.
What to do: Create a new upload with the correct size.
Returned by: Complete a brand asset upload, Start processing a voucher upload, Complete a brand asset upload
webhook-endpoint-limit-reached
422 Unprocessable content · Webhook endpoint limit reached · Retry: after changing the request
The partner already has 10 webhook endpoints.
What to do: Delete unused endpoints.
Returned by: Create a webhook endpoint
webhook-url-not-allowed
422 Unprocessable content · Webhook URL not allowed · Retry: after changing the request
The endpoint URL is not https on port 443 or 8443, is not publicly resolvable, or resolves to a private address; more.reason names the check.
What to do: Use a public https URL.
Details in more: reason (Why the URL was refused.)
Returned by: Create a webhook endpoint, Update a webhook endpoint
500 Internal error
internal-error
500 Internal 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.
502 Bad gateway
upstream-error
502 Bad gateway · Upstream error · Retry: with backoff
An upstream service answered with an error.
What to do: Retry later.
Returned by: Create an SSO connection, Update an SSO connection
upstream-unavailable
502 Bad gateway · Upstream unavailable · Retry: with backoff
A service AllRide depends on could not be reached; nothing was changed.
What to do: Retry later with the same Idempotency-Key.
503 Service unavailable
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.
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.
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.
504 Gateway timeout
upstream-timeout
504 Gateway timeout · Upstream timeout · Retry: with backoff
An upstream service did not answer in time.
What to do: Retry later.
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, voucher-value-exists or batch) error. Codes that are also error codes above are described there.
brand-asset-not-usable
The asset must be ready and of a kind that fits this field.
category-not-active
The category must be active.
content-encoded-data
This text contains encoded data. Use plain text.
content-hidden-characters
This text contains invisible or direction-changing characters. Remove them and try again.
content-impersonation
This text or link uses a name or characters that imitate another brand.
content-markup-not-allowed
HTML, scripts or template code are not allowed here.
content-suspicious-text
This text was blocked by our safety checks.
content-too-large
This content is too large.
content-unsafe-link
This link is not allowed. Use an https link to a website that belongs to you.
domain-not-allowed
Hosts under the AllRide platform domain are not allowed.
duplicate-items
Must not contain duplicate items.
duplicate-value
The same voucher value appears more than once in the request.
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 the partner’s default locale, within the length limit.
invalid-id
Must be a positive integer id.
invalid-link-template
Placeholders are allowed only in the path, query or fragment; only known variables and allowed schemes.
invalid-markdown
Must be valid text in the allowed Markdown subset, including the 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 euro 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-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-threshold
Must be one of 50, 75, 90, 100.
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 with whole-hour offsets, such as Europe/Berlin.
invalid-type
Must be of type {expected}.
invalid-url
Must be an https URL on an allowed host.
link-host-not-allowed
The link host is not in allowedLinkHosts of the voucher set.
link-template-requires-code-kind
linkTemplate is allowed only on voucher sets of kind code.
max-redemptions-not-allowed-for-single
Single-use vouchers cannot set maxRedemptions other than 1.
max-redemptions-too-small
Multi-use vouchers need maxRedemptions of at least 2, or null for unlimited.
null-not-allowed
This property must not be null.
out-of-range
The value is outside the allowed range.
range-too-large
The range has more buckets or months than allowed ({max}).
recipient-not-eligible
Must be an active member who can view voucher sets.
required
This property, parameter or filter is required.
scheme-not-allowed
This link scheme is not in allowedLinkSchemes of the voucher set.
sso-domain-not-allowed
Public mailbox domains and the platform domain cannot be used.
terms-required
termsText (the voucher terms of the set) is required.
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.
unsupported-locale
Must be a supported locale (de, en).
validity-window-invalid
validUntil must be after validFrom and in the future.
webhook-event-type-not-allowed
This event type is not available for your partner’s roles.
Upload row codes
Codes of the rows listed by List upload row errors.duplicate-in-file and value-exists report skipped duplicates and do not make a row invalid.