Creates a new key with the same scopes and lets the old key expire after gracePeriodMinutes (default 1,440). Both keys work during the grace period, and the new key shares the old key’s idempotency scope, so retries replay. The new secret is shown once.
Dashboard users need a sign-in within the last 15 minutes (reauthentication-required); API keys are exempt. The response carries a show-once value; an idempotent replay returns it as null with Idempotent-Replay-Redacted: true.
Required permissions:manage-api-keys · API keys: not allowed
Optional on every POST: 1-255 printable ASCII characters without spaces (a UUID is recommended). The same key with the same request replays the stored response for 24 hours. See Idempotency.
Numeric id (apiKeyId). A non-numeric id is a 400 data-failed-validation; an unknown id or one of another partner is a 404.
Unsigned 64-bit integer. May exceed 2^53; parse with a BigInt-safe JSON parser in JavaScript.
An API key with its secret, returned only by create and :roll.
Show child attributes
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"AllRide Vouchers — Provider API","colors":{"primary":"#0A0A0A","light":"#FAFAFA","dark":"#737373"},"logo":{"light":"https://mintcdn.com/allride-voucher-provider/3hOWTJiJ7yX6MVLT/logo/light.svg?fit=max\u0026auto=format\u0026n=3hOWTJiJ7yX6MVLT\u0026q=85\u0026s=fee04017e330f3bd2c3f66153ed1d33c","dark":"https://mintcdn.com/allride-voucher-provider/3hOWTJiJ7yX6MVLT/logo/dark.svg?fit=max\u0026auto=format\u0026n=3hOWTJiJ7yX6MVLT\u0026q=85\u0026s=56d80e04acf65f4dff750263552497ea","href":"https://docs-provider.voucher.allride.io"},"favicon":"https://mintcdn.com/allride-voucher-provider/3hOWTJiJ7yX6MVLT/favicon.svg?fit=max\u0026auto=format\u0026n=3hOWTJiJ7yX6MVLT\u0026q=85\u0026s=0d38356556d86792dafcb99efb28281d","api":{"playground":{"display":"interactive","proxy":true},"examples":{"defaults":"required","languages":["curl","javascript","python","java","go","php"]}},"navbar":{"links":[{"href":"https://provider-developers.voucher-staging.allride.io/go/overview","label":"Sandbox dashboard"},{"href":"https://allride.io","label":"Support"}],"primary":{"type":"button","label":"Developer dashboard","href":"https://provider-developers.voucher.allride.io/go/api-keys"}},"footer":{"links":[{"header":"AllRide","items":[{"label":"Imprint","href":"https://www.allride.io/impressum"},{"label":"Privacy","href":"https://www.allride.io/datenschutz"}]}]},"seo":{"indexing":"navigable"},"contextual":{"options":["copy","view","chatgpt","claude"],"display":"header"},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"allride-voucher-provider","hasAudioNarration":false,"actualSubdomain":"allride-voucher-provider","customDomains":["docs-provider.voucher.allride.io"],"gitSource":{"type":"github","owner":"allride-mobility","repo":"allridevoucherpartnerproviderapidocs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":"","_id":"6aec0fbe9d0fdcca7371e80b"},"chroma":{"latestBuiltDeploymentHistoryId":"6aec10769d0fdcca7371f307","collectionId":"0eb74221-0da2-49af-a6c1-020c6b94c09e","liveDeploymentHistoryId":"6aec10769d0fdcca7371f307","schemaVersion":"v3"},"entitlements":{},"buildId":"6aec1b2744ba726d960bbbe9","clientVersion":"0.0.4067","searchFilterCounts":[{"language":"default","tag":"API reference","count":131},{"language":"default","tag":"Provider API","count":67},{"language":"default","tag":"Workspace API","count":64},{"language":"default","tag":"Guides","count":32},{"language":"default","tag":"Change requests","count":19},{"language":"default","tag":"Voucher sets","count":14},{"language":"default","tag":"Webhook events","count":12},{"language":"default","tag":"Webhook endpoints","count":11},{"language":"default","tag":"Provider guides","count":9},{"language":"default","tag":"Partner","count":8}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":"html:not(.dark) .method-nav-pill .text-green-700{color:#14532d}html:not(.dark) .method-nav-pill .text-blue-700{color:#1e3a8a}html:not(.dark) .method-nav-pill .text-red-700{color:#7f1d1d}html:not(.dark) .method-nav-pill .text-orange-700{color:#7c2d12}html:not(.dark) .method-nav-pill .text-yellow-700{color:#713f12}html:not(.dark) .method-nav-pill .text-purple-700{color:#581c87}html:not(.dark) [data-component-part=\"field-required-pill\"]{color:#991b1b}"}],"page":{"pagePath":"api-reference/partner-api-keys-roll","slug":"/api-reference/partner-api-keys-roll","pageMetadata":{"title":"Roll an API key","description":"Creates a new key with the same scopes and lets the old key expire after `gracePeriodMinutes` (default 1,440). Both keys work during the grace period, and the new key shares the old key's idempotency scope, so retries replay. The new `secret` is shown once.\n\nDashboard users need a sign-in within the last 15 minutes (`reauthentication-required`); API keys are exempt. The response carries a show-once value; an idempotent replay returns it as `null` with `Idempotent-Replay-Redacted: true`.\n\n**Required permissions:** `manage-api-keys` · **API keys:** not allowed","deprecated":null,"version":null,"sidebarTitle":"Partner api keys roll","openapi":"/openapi/provider.v1.json post /partner/v1/api-keys/{apiKeyId}:roll","href":"/api-reference/partner-api-keys-roll","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {Fragment: _Fragment, jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n p: \"p\",\n strong: \"strong\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_Fragment, {\n children: [_jsxs(_components.p, {\n children: [\"Creates a new key with the same scopes and lets the old key expire after \", _jsx(_components.code, {\n children: \"gracePeriodMinutes\"\n }), \" (default 1,440). Both keys work during the grace period, and the new key shares the old key’s idempotency scope, so retries replay. The new \", _jsx(_components.code, {\n children: \"secret\"\n }), \" is shown once.\"]\n }), \"\\n\", _jsxs(_components.p, {\n children: [\"Dashboard users need a sign-in within the last 15 minutes (\", _jsx(_components.code, {\n children: \"reauthentication-required\"\n }), \"); API keys are exempt. The response carries a show-once value; an idempotent replay returns it as \", _jsx(_components.code, {\n children: \"null\"\n }), \" with \", _jsx(_components.code, {\n children: \"Idempotent-Replay-Redacted: true\"\n }), \".\"]\n }), \"\\n\", _jsxs(_components.p, {\n children: [_jsx(_components.strong, {\n children: \"Required permissions:\"\n }), \" \", _jsx(_components.code, {\n children: \"manage-api-keys\"\n }), \" · \", _jsx(_components.strong, {\n children: \"API keys:\"\n }), \" not allowed\"]\n })]\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const{Note}={..._provideComponents(),...props.components};if(!Note)_missingMdxReference(`Note`,true);return _jsx(Note,{children:`Dashboard session only. API keys cannot call this operation.`})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Roll an API key","description":"Creates a new key with the same scopes and lets the old key expire after `gracePeriodMinutes` (default 1,440). Both keys work during the grace period, and the new key shares the old key's idempotency scope, so retries replay. The new `secret` is shown once.\n\nDashboard users need a sign-in within the last 15 minutes (`reauthentication-required`); API keys are exempt. The response carries a show-once value; an idempotent replay returns it as `null` with `Idempotent-Replay-Redacted: true`.\n\n**Required permissions:** `manage-api-keys` · **API keys:** not allowed","deprecated":null,"version":null,"sidebarTitle":"Partner api keys roll","openapi":"/openapi/provider.v1.json post /partner/v1/api-keys/{apiKeyId}:roll","href":"/api-reference/partner-api-keys-roll","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"operationId":"partner.api-keys.roll","summary":"Roll an API key","description":"Creates a new key with the same scopes and lets the old key expire after `gracePeriodMinutes` (default 1,440). Both keys work during the grace period, and the new key shares the old key's idempotency scope, so retries replay. The new `secret` is shown once.\n\nDashboard users need a sign-in within the last 15 minutes (`reauthentication-required`); API keys are exempt. The response carries a show-once value; an idempotent replay returns it as `null` with `Idempotent-Replay-Redacted: true`.\n\n**Required permissions:** `manage-api-keys` · **API keys:** not allowed","tags":["API keys"],"x-permissions":["manage-api-keys"],"x-audience":"partner","x-api-key-callable":false,"x-mint":{"href":"/api-reference/partner-api-keys-roll","content":"\u003cNote>Dashboard session only. API keys cannot call this operation.\u003c/Note>"},"x-recent-auth":true,"security":["461b1c5c-8789-4998-ba0a-23f31c82c1ef"],"parameters":["50dc8f50-917e-43f6-af80-1f38d114e4d3","86c84c0b-61d0-4261-89d2-59b6b92ef4e4"],"requestBody":"280210a9-08c1-4749-9065-25d0239037bb","responses":{"201":"73be6ce9-214c-4011-ab16-b45177c12f63","400":"eea71d39-60ff-4c51-b977-027d1a3e534b","401":"929c9c8d-e403-4cd5-a681-29a63717b5be","403":"cacecc18-13f3-4521-91fd-f58ee024f887","404":"e0815ad6-a08e-44b4-b64c-fe3c68a8057c","409":"ca42edd4-8c2c-428d-ab9f-ef3f823688b0","422":"de753023-47da-438f-8077-7ecd5b84a283","500":"e18058ad-95b9-43ac-8880-16171bc564b0","503":"20e940d7-756e-46f4-acba-6548a5ca1e1d"},"method":"post","type":"path","servers":["03446110-bf54-41cc-bb02-14c23a55f5d2"],"path":"/partner/v1/api-keys/{apiKeyId}:roll","baseUrlOptions":["https://api.voucher-staging.allride.io"],"title":"Roll an API key","codeSamples":[],"requestExampleLanguages":["bash","javascript","python","java","go","php"],"requiredOnlyExamples":true,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"50dc8f50-917e-43f6-af80-1f38d114e4d3":{"name":"apiKeyId","in":"path","required":true,"description":"Numeric id (apiKeyId). A non-numeric id is a 400 data-failed-validation; an unknown id or one of another partner is a 404.","schema":{"type":"integer","format":"uint64","minimum":0,"maximum":18446744073709552000,"x-bigint":true,"description":"Numeric id (apiKeyId). A non-numeric id is a 400 data-failed-validation; an unknown id or one of another partner is a 404.\nUnsigned 64-bit integer. May exceed 2^53; parse with a BigInt-safe JSON parser in JavaScript.","isRequired":true,"uniqueKey":"","typeLabel":"integer\u003cuint64>"},"example":12017},"86c84c0b-61d0-4261-89d2-59b6b92ef4e4":{"name":"Idempotency-Key","in":"header","required":false,"description":"Optional on every POST: 1-255 printable ASCII characters without spaces (a UUID is recommended). The same key with the same request replays the stored response for 24 hours. See [Idempotency](/guides/idempotency).","schema":{"type":"string","minLength":1,"maxLength":255,"pattern":"^[\\x21-\\x7E]{1,255}$","isRequired":false,"description":"Optional on every POST: 1-255 printable ASCII characters without spaces (a UUID is recommended). The same key with the same request replays the stored response for 24 hours. See [Idempotency](/guides/idempotency).","uniqueKey":"","typeLabel":"string"},"example":"4e1c7f6a-2b0d-4c1e-9a7b-3f5e8d2c1b0a"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"gracePeriodMinutes":{"type":"integer","description":"1-10,080; default 1,440.","minimum":1,"maximum":10080,"default":1440,"uniqueKey":"gracePeriodMinutes","typeLabel":"integer"}},"required":[],"description":"Roll an API key.","additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"example":{"title":"example","value":{"gracePeriodMinutes":1440}}},"exampleType":"examples"}},"exampleType":"examples"},"responses":{"73be6ce9-214c-4011-ab16-b45177c12f63":{"description":"Success.","headers":{"X-Request-Id":{"description":"Request id: your X-Request-Id (1-100 characters of [A-Za-z0-9._:-]) or a generated UUID.","schema":{"type":"string"}},"Location":{"description":"URL of the created resource or of the job to poll.","schema":{"type":"string","format":"uri"}},"Idempotent-Replayed":{"description":"true when this response is a replay of a stored response for the same Idempotency-Key.","schema":{"type":"boolean"}},"Idempotent-Replay-Redacted":{"description":"true on a replay whose show-once value was removed (set to null).","schema":{"type":"boolean"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","description":"An API key with its secret, returned only by create and :roll.","required":["secret","id","resource","partnerId","name","environment","keyHint","last4","scopes","status","expiresAt","lastUsedAt","lastUsedIp","rolledFromId","createdBy","revokedBy","revokedAt","createdAt","updatedAt","_links"],"properties":{"id":{"type":"integer","format":"uint64","minimum":0,"maximum":18446744073709552000,"x-bigint":true,"description":"API key id.","isRequired":true,"uniqueKey":"data.id","typeLabel":"integer\u003cuint64>"},"resource":{"type":"string","enum":["api-key"],"description":"Always api-key.","isRequired":true,"uniqueKey":"data.resource","typeLabel":"enum\u003cstring>"},"partnerId":{"type":"integer","format":"uint64","minimum":0,"maximum":18446744073709552000,"x-bigint":true,"description":"Your partner id.","isRequired":true,"uniqueKey":"data.partnerId","typeLabel":"integer\u003cuint64>"},"name":{"type":"string","description":"Name.","isRequired":true,"uniqueKey":"data.name","typeLabel":"string"},"environment":{"type":"string","enum":["live","test"],"description":"Environment. Treat as an open set: new values may be added.","isRequired":true,"uniqueKey":"data.environment","typeLabel":"enum\u003cstring>"},"keyHint":{"type":"string","description":"Key id and last four characters.","isRequired":true,"uniqueKey":"data.keyHint","typeLabel":"string"},"last4":{"type":"string","description":"Last four characters.","isRequired":true,"uniqueKey":"data.last4","typeLabel":"string"},"scopes":{"type":"array","items":{"type":"string","description":"Permission.","uniqueKey":"data.scopes.items.[INDEX]","typeLabel":"string"},"description":"Delegated permissions.","isRequired":true,"uniqueKey":"data.scopes","typeLabel":"string[]"},"status":{"type":"string","enum":["active","revoked","expired"],"description":"Key status. Treat as an open set: new values may be added.","isRequired":true,"uniqueKey":"data.status","typeLabel":"enum\u003cstring>"},"expiresAt":{"oneOf":[{"type":"string","description":"Expiry.","format":"date-time","example":"2026-11-01T00:00:00Z","isRequired":true,"uniqueKey":"data.expiresAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","description":"Expiry.","isRequired":true,"uniqueKey":"data.expiresAt.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.expiresAt","typeLabel":"string\u003cdate-time> | null"},"lastUsedAt":{"oneOf":[{"type":"string","description":"Last use.","format":"date-time","example":"2026-11-01T00:00:00Z","isRequired":true,"uniqueKey":"data.lastUsedAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","description":"Last use.","isRequired":true,"uniqueKey":"data.lastUsedAt.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.lastUsedAt","typeLabel":"string\u003cdate-time> | null"},"lastUsedIp":{"oneOf":[{"type":"string","description":"Last client IP.","isRequired":true,"uniqueKey":"data.lastUsedIp.oneOf.0","typeLabel":"string"},{"type":"null","description":"Last client IP.","isRequired":true,"uniqueKey":"data.lastUsedIp.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.lastUsedIp","typeLabel":"string | null"},"rolledFromId":{"oneOf":[{"type":"integer","description":"Key this one replaced via :roll.","format":"uint64","maximum":18446744073709552000,"minimum":0,"x-bigint":true,"isRequired":true,"uniqueKey":"data.rolledFromId.oneOf.0","typeLabel":"integer\u003cuint64>"},{"type":"null","description":"Key this one replaced via :roll.","isRequired":true,"uniqueKey":"data.rolledFromId.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.rolledFromId","typeLabel":"integer\u003cuint64> | null"},"createdBy":{"type":"object","properties":{"type":{"type":"string","enum":["admin-user","partner-user","api-key","redemption-session","system"],"description":"Kind of actor. Treat as an open set: new values may be added.","isRequired":true,"uniqueKey":"data.createdBy.type","typeLabel":"enum\u003cstring>"},"id":{"oneOf":[{"type":"integer","description":"Id of the user or API key; null for AllRide staff.","format":"uint64","maximum":18446744073709552000,"minimum":0,"x-bigint":true,"isRequired":true,"uniqueKey":"data.createdBy.id.oneOf.0","typeLabel":"integer\u003cuint64>"},{"type":"null","description":"Id of the user or API key; null for AllRide staff.","isRequired":true,"uniqueKey":"data.createdBy.id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.createdBy.id","typeLabel":"integer\u003cuint64> | null"},"label":{"type":"string","description":"Display snapshot: email or key name; AllRide staff appear as \"AllRide\".","isRequired":true,"uniqueKey":"data.createdBy.label","typeLabel":"string"}},"required":["type","id","label"],"description":"Who did something.","additionalProperties":false,"isRequired":true,"uniqueKey":"data.createdBy","typeLabel":"object"},"revokedBy":{"oneOf":[{"type":"object","description":"Who revoked it.","required":["type","id","label"],"properties":{"type":{"type":"string","enum":["admin-user","partner-user","api-key","redemption-session","system"],"description":"Kind of actor. Treat as an open set: new values may be added.","isRequired":true,"uniqueKey":"data.revokedBy.oneOf.0.type","typeLabel":"enum\u003cstring>"},"id":{"oneOf":[{"type":"integer","description":"Id of the user or API key; null for AllRide staff.","format":"uint64","maximum":18446744073709552000,"minimum":0,"x-bigint":true,"isRequired":true,"uniqueKey":"data.revokedBy.oneOf.0.id.oneOf.0","typeLabel":"integer\u003cuint64>"},{"type":"null","description":"Id of the user or API key; null for AllRide staff.","isRequired":true,"uniqueKey":"data.revokedBy.oneOf.0.id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.revokedBy.oneOf.0.id","typeLabel":"integer\u003cuint64> | null"},"label":{"type":"string","description":"Display snapshot: email or key name; AllRide staff appear as \"AllRide\".","isRequired":true,"uniqueKey":"data.revokedBy.oneOf.0.label","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"data.revokedBy.oneOf.0","typeLabel":"object"},{"type":"null","description":"Who revoked it.","isRequired":true,"uniqueKey":"data.revokedBy.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.revokedBy","typeLabel":"object | null"},"revokedAt":{"oneOf":[{"type":"string","description":"Revocation.","format":"date-time","example":"2026-11-01T00:00:00Z","isRequired":true,"uniqueKey":"data.revokedAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","description":"Revocation.","isRequired":true,"uniqueKey":"data.revokedAt.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.revokedAt","typeLabel":"string\u003cdate-time> | null"},"createdAt":{"type":"string","format":"date-time","description":"Creation time.","example":"2026-11-01T00:00:00Z","isRequired":true,"uniqueKey":"data.createdAt","typeLabel":"string\u003cdate-time>"},"updatedAt":{"type":"string","format":"date-time","description":"Last change.","example":"2026-11-01T00:00:00Z","isRequired":true,"uniqueKey":"data.updatedAt","typeLabel":"string\u003cdate-time>"},"_links":{"type":"object","description":"Links to related resources (self).","additionalProperties":{"type":"object","properties":{"href":{"type":"string","description":"Absolute URL.","format":"uri","isRequired":true,"uniqueKey":"data._links.additionalProperties.href","typeLabel":"string\u003curi>"},"type":{"type":"string","description":"Media type of the target.","isRequired":true,"uniqueKey":"data._links.additionalProperties.type","typeLabel":"string"}},"required":["href","type"],"description":"A link to a related resource.","additionalProperties":false,"uniqueKey":"data._links.additionalProperties","typeLabel":"object"},"isRequired":true,"uniqueKey":"data._links","typeLabel":"object"},"secret":{"oneOf":[{"type":"string","description":"Shown once. null on idempotent replays, which carry Idempotent-Replay-Redacted: true.","readOnly":true,"isRequired":true,"uniqueKey":"data.secret.oneOf.0","typeLabel":"string"},{"type":"null","description":"Shown once. null on idempotent replays, which carry Idempotent-Replay-Redacted: true.","readOnly":true,"isRequired":true,"uniqueKey":"data.secret.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.secret","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"data","typeLabel":"object"}},"required":["data"],"description":"Single-object envelope around ApiKeyWithSecret.","additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"example":{"title":"example","value":{"data":{"id":12017,"resource":"api-key","partnerId":42,"name":"Inventory sync","environment":"test","keyHint":"vk_test_\u003ckeyId>_…Qa7Z","last4":"Qa7Z","scopes":["view-profile","view-provider-voucher-sets","upload-provider-vouchers"],"status":"active","expiresAt":"2027-10-22T10:00:00Z","lastUsedAt":null,"lastUsedIp":null,"rolledFromId":null,"createdBy":{"type":"partner-user","id":4043,"label":"ops@example.com"},"revokedBy":null,"revokedAt":null,"createdAt":"2026-10-22T10:00:00Z","updatedAt":"2026-10-22T10:00:00Z","_links":{"self":{"href":"https://api.voucher-staging.allride.io/partner/v1/api-keys/12017","type":"application/json"}},"secret":"vk_test_\u003ckeyId>_\u003c43 characters, shown once>"}}}},"exampleType":"examples"}},"exampleType":"examples"},"eea71d39-60ff-4c51-b977-027d1a3e534b":{"description":"Bad request: `data-failed-validation`, `malformed-json`, `invalid-header`, `invalid-idempotency-key`.","x-error-codes":["data-failed-validation","malformed-json","invalid-header","invalid-idempotency-key"],"headers":{"X-Request-Id":{"description":"Request id: your X-Request-Id (1-100 characters of [A-Za-z0-9._:-]) or a generated UUID.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"errors":{"type":"array","items":{"type":"object","properties":{"message":{"type":"string","description":"Human-readable message. Do not parse it; it can change. For 5xx errors it is always the generic `Something went wrong on our side`.","isRequired":true,"uniqueKey":"errors.items.[INDEX].message","typeLabel":"string"},"statusCode":{"type":"integer","description":"The HTTP status.","isRequired":true,"uniqueKey":"errors.items.[INDEX].statusCode","typeLabel":"integer"},"errorCode":{"type":"string","description":"Stable kebab-case error code, listed in the error catalog. Branch on this field.","isRequired":true,"uniqueKey":"errors.items.[INDEX].errorCode","typeLabel":"string"},"requestId":{"type":"string","description":"5xx only: the request id (also in the `X-Request-Id` header). Quote it when you contact support.","uniqueKey":"errors.items.[INDEX].requestId","typeLabel":"string"},"more":{"type":"object","additionalProperties":true,"description":"Additional details for some codes, for example `validationErrors` (array of `ValidationError`) or `requiredPermissions`. The members per code are listed in the error catalog.","properties":{"validationErrors":{"type":"array","items":{"type":"object","properties":{"property":{"type":"string","description":"Path of the offending property in your request body (`vouchers[17].value`), or the name of the query parameter, path parameter or header.","isRequired":true,"uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].property","typeLabel":"string"},"constraint":{"type":"string","description":"The violated rule as a kebab-case item code, for example `required`, `too-long`, `invalid-id`, `unknown-field`. See the validation item codes in the error catalog.","isRequired":true,"uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].constraint","typeLabel":"string"},"message":{"type":"object","description":"Explanation per locale.","properties":{"en":{"type":"string","description":"English message.","isRequired":true,"uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].message.en","typeLabel":"string"},"de":{"type":"string","description":"German message.","uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].message.de","typeLabel":"string"}},"required":["en"],"additionalProperties":false,"isRequired":true,"uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].message","typeLabel":"object"},"params":{"type":"object","additionalProperties":true,"description":"Parameters of the violated constraint, for example `{\"max\": 120}` for `too-long`; absent when the constraint has none.","uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].params","typeLabel":"object"},"value":{"oneOf":[{"type":"number","description":"The rejected value, only when it is a number or boolean. Strings are never echoed, so secrets, voucher values and personal data never come back in an error.","uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].value.oneOf.0","typeLabel":"number"},{"type":"boolean","description":"The rejected value, only when it is a number or boolean. Strings are never echoed, so secrets, voucher values and personal data never come back in an error.","uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].value.oneOf.1","typeLabel":"boolean"}],"uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].value","typeLabel":"number | boolean"}},"required":["property","constraint","message"],"description":"One invalid property or parameter of a `data-failed-validation` error (also used for item failures of batch operations and content checks).","uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX]","typeLabel":"object"},"description":"Invalid properties or parameters.","uniqueKey":"errors.items.[INDEX].more.validationErrors","typeLabel":"object[]"}},"uniqueKey":"errors.items.[INDEX].more","typeLabel":"object"}},"required":["message","statusCode","errorCode"],"description":"One error. Branch on `errorCode`; ignore members you do not know.","uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"description":"The errors; in v1 always exactly one.","minItems":1,"isRequired":true,"uniqueKey":"errors","typeLabel":"object[]"}},"required":["errors"],"description":"Error body of every 4xx and 5xx response (Content-Type: application/json).","additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"data-failed-validation":{"title":"data-failed-validation","value":{"errors":[{"message":"Data failed validation","statusCode":400,"errorCode":"data-failed-validation","more":{"validationErrors":[{"property":"internalName","constraint":"too-long","params":{"max":120},"message":{"en":"Must be at most 120 characters.","de":"Darf höchstens 120 Zeichen lang sein."}},{"property":"content.linkTemplate","constraint":"invalid-link-template","message":{"en":"Placeholders are allowed only in the path, query or fragment.","de":"Platzhalter sind nur im Pfad, in der Query oder im Fragment erlaubt."}}]}}]}},"malformed-json":{"title":"malformed-json","value":{"errors":[{"message":"The body is not valid UTF-8 JSON.","statusCode":400,"errorCode":"malformed-json"}]}},"invalid-header":{"title":"invalid-header","value":{"errors":[{"message":"A standard or platform header is malformed; more.validationErrors[].property names the header.","statusCode":400,"errorCode":"invalid-header"}]}},"invalid-idempotency-key":{"title":"invalid-idempotency-key","value":{"errors":[{"message":"The Idempotency-Key header is not 1-255 printable ASCII characters without spaces.","statusCode":400,"errorCode":"invalid-idempotency-key"}]}}},"exampleType":"examples"}},"exampleType":"examples"},"929c9c8d-e403-4cd5-a681-29a63717b5be":{"description":"Unauthorized: `unauthenticated`, `token-invalid`, `api-key-invalid`, `token-expired`, `session-revoked`.","x-error-codes":["unauthenticated","token-invalid","api-key-invalid","token-expired","session-revoked"],"headers":{"X-Request-Id":{"description":"Request id: your X-Request-Id (1-100 characters of [A-Za-z0-9._:-]) or a generated UUID.","schema":{"type":"string"}},"WWW-Authenticate":{"description":"Bearer realm=\"voucher\" (plus error=\"invalid_token\" when a credential was sent).","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"errors":{"type":"array","items":{"type":"object","properties":{"message":{"type":"string","description":"Human-readable message. Do not parse it; it can change. For 5xx errors it is always the generic `Something went wrong on our side`.","isRequired":true,"uniqueKey":"errors.items.[INDEX].message","typeLabel":"string"},"statusCode":{"type":"integer","description":"The HTTP status.","isRequired":true,"uniqueKey":"errors.items.[INDEX].statusCode","typeLabel":"integer"},"errorCode":{"type":"string","description":"Stable kebab-case error code, listed in the error catalog. Branch on this field.","isRequired":true,"uniqueKey":"errors.items.[INDEX].errorCode","typeLabel":"string"},"requestId":{"type":"string","description":"5xx only: the request id (also in the `X-Request-Id` header). Quote it when you contact support.","uniqueKey":"errors.items.[INDEX].requestId","typeLabel":"string"},"more":{"type":"object","additionalProperties":true,"description":"Additional details for some codes, for example `validationErrors` (array of `ValidationError`) or `requiredPermissions`. The members per code are listed in the error catalog.","properties":{"validationErrors":{"type":"array","items":{"type":"object","properties":{"property":{"type":"string","description":"Path of the offending property in your request body (`vouchers[17].value`), or the name of the query parameter, path parameter or header.","isRequired":true,"uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].property","typeLabel":"string"},"constraint":{"type":"string","description":"The violated rule as a kebab-case item code, for example `required`, `too-long`, `invalid-id`, `unknown-field`. See the validation item codes in the error catalog.","isRequired":true,"uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].constraint","typeLabel":"string"},"message":{"type":"object","description":"Explanation per locale.","properties":{"en":{"type":"string","description":"English message.","isRequired":true,"uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].message.en","typeLabel":"string"},"de":{"type":"string","description":"German message.","uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].message.de","typeLabel":"string"}},"required":["en"],"additionalProperties":false,"isRequired":true,"uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].message","typeLabel":"object"},"params":{"type":"object","additionalProperties":true,"description":"Parameters of the violated constraint, for example `{\"max\": 120}` for `too-long`; absent when the constraint has none.","uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].params","typeLabel":"object"},"value":{"oneOf":[{"type":"number","description":"The rejected value, only when it is a number or boolean. Strings are never echoed, so secrets, voucher values and personal data never come back in an error.","uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].value.oneOf.0","typeLabel":"number"},{"type":"boolean","description":"The rejected value, only when it is a number or boolean. Strings are never echoed, so secrets, voucher values and personal data never come back in an error.","uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].value.oneOf.1","typeLabel":"boolean"}],"uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].value","typeLabel":"number | boolean"}},"required":["property","constraint","message"],"description":"One invalid property or parameter of a `data-failed-validation` error (also used for item failures of batch operations and content checks).","uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX]","typeLabel":"object"},"description":"Invalid properties or parameters.","uniqueKey":"errors.items.[INDEX].more.validationErrors","typeLabel":"object[]"}},"uniqueKey":"errors.items.[INDEX].more","typeLabel":"object"}},"required":["message","statusCode","errorCode"],"description":"One error. Branch on `errorCode`; ignore members you do not know.","uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"description":"The errors; in v1 always exactly one.","minItems":1,"isRequired":true,"uniqueKey":"errors","typeLabel":"object[]"}},"required":["errors"],"description":"Error body of every 4xx and 5xx response (Content-Type: application/json).","additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"unauthenticated":{"title":"unauthenticated","value":{"errors":[{"message":"No credential was sent with the request.","statusCode":401,"errorCode":"unauthenticated"}]}},"token-invalid":{"title":"token-invalid","value":{"errors":[{"message":"The credential cannot be verified for this surface, has an unknown scheme, or two Authorization headers were sent.","statusCode":401,"errorCode":"token-invalid"}]}},"api-key-invalid":{"title":"api-key-invalid","value":{"errors":[{"message":"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).","statusCode":401,"errorCode":"api-key-invalid"}]}},"token-expired":{"title":"token-expired","value":{"errors":[{"message":"The dashboard user's ID token has expired.","statusCode":401,"errorCode":"token-expired"}]}},"session-revoked":{"title":"session-revoked","value":{"errors":[{"message":"The dashboard user's session was revoked.","statusCode":401,"errorCode":"session-revoked"}]}}},"exampleType":"examples"}},"exampleType":"examples"},"cacecc18-13f3-4521-91fd-f58ee024f887":{"description":"Forbidden: `missing-permission`, `partner-role-missing`, `partner-suspended`, `partner-offboarded`, `api-access-inactive`, `ip-not-allowed`, `mfa-required`, `sso-required`, `reauthentication-required`.","x-error-codes":["missing-permission","partner-role-missing","partner-suspended","partner-offboarded","api-access-inactive","ip-not-allowed","mfa-required","sso-required","reauthentication-required"],"headers":{"X-Request-Id":{"description":"Request id: your X-Request-Id (1-100 characters of [A-Za-z0-9._:-]) or a generated UUID.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"errors":{"type":"array","items":{"type":"object","properties":{"message":{"type":"string","description":"Human-readable message. Do not parse it; it can change. For 5xx errors it is always the generic `Something went wrong on our side`.","isRequired":true,"uniqueKey":"errors.items.[INDEX].message","typeLabel":"string"},"statusCode":{"type":"integer","description":"The HTTP status.","isRequired":true,"uniqueKey":"errors.items.[INDEX].statusCode","typeLabel":"integer"},"errorCode":{"type":"string","description":"Stable kebab-case error code, listed in the error catalog. Branch on this field.","isRequired":true,"uniqueKey":"errors.items.[INDEX].errorCode","typeLabel":"string"},"requestId":{"type":"string","description":"5xx only: the request id (also in the `X-Request-Id` header). Quote it when you contact support.","uniqueKey":"errors.items.[INDEX].requestId","typeLabel":"string"},"more":{"type":"object","additionalProperties":true,"description":"Additional details for some codes, for example `validationErrors` (array of `ValidationError`) or `requiredPermissions`. The members per code are listed in the error catalog.","properties":{"validationErrors":{"type":"array","items":{"type":"object","properties":{"property":{"type":"string","description":"Path of the offending property in your request body (`vouchers[17].value`), or the name of the query parameter, path parameter or header.","isRequired":true,"uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].property","typeLabel":"string"},"constraint":{"type":"string","description":"The violated rule as a kebab-case item code, for example `required`, `too-long`, `invalid-id`, `unknown-field`. See the validation item codes in the error catalog.","isRequired":true,"uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].constraint","typeLabel":"string"},"message":{"type":"object","description":"Explanation per locale.","properties":{"en":{"type":"string","description":"English message.","isRequired":true,"uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].message.en","typeLabel":"string"},"de":{"type":"string","description":"German message.","uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].message.de","typeLabel":"string"}},"required":["en"],"additionalProperties":false,"isRequired":true,"uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].message","typeLabel":"object"},"params":{"type":"object","additionalProperties":true,"description":"Parameters of the violated constraint, for example `{\"max\": 120}` for `too-long`; absent when the constraint has none.","uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].params","typeLabel":"object"},"value":{"oneOf":[{"type":"number","description":"The rejected value, only when it is a number or boolean. Strings are never echoed, so secrets, voucher values and personal data never come back in an error.","uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].value.oneOf.0","typeLabel":"number"},{"type":"boolean","description":"The rejected value, only when it is a number or boolean. Strings are never echoed, so secrets, voucher values and personal data never come back in an error.","uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].value.oneOf.1","typeLabel":"boolean"}],"uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].value","typeLabel":"number | boolean"}},"required":["property","constraint","message"],"description":"One invalid property or parameter of a `data-failed-validation` error (also used for item failures of batch operations and content checks).","uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX]","typeLabel":"object"},"description":"Invalid properties or parameters.","uniqueKey":"errors.items.[INDEX].more.validationErrors","typeLabel":"object[]"}},"uniqueKey":"errors.items.[INDEX].more","typeLabel":"object"}},"required":["message","statusCode","errorCode"],"description":"One error. Branch on `errorCode`; ignore members you do not know.","uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"description":"The errors; in v1 always exactly one.","minItems":1,"isRequired":true,"uniqueKey":"errors","typeLabel":"object[]"}},"required":["errors"],"description":"Error body of every 4xx and 5xx response (Content-Type: application/json).","additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"reauthentication-required":{"title":"reauthentication-required","value":{"errors":[{"message":"The operation needs a sign-in within the last 15 minutes. API keys are exempt.","statusCode":403,"errorCode":"reauthentication-required","more":{"stepUpUrl":"https://auth.voucher-staging.allride.io/reauthenticate"}}]}}},"exampleType":"examples"}},"exampleType":"examples"},"e0815ad6-a08e-44b4-b64c-fe3c68a8057c":{"description":"Not found: `api-key-not-found`, `route-not-found`.","x-error-codes":["api-key-not-found","route-not-found"],"headers":{"X-Request-Id":{"description":"Request id: your X-Request-Id (1-100 characters of [A-Za-z0-9._:-]) or a generated UUID.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"errors":{"type":"array","items":{"type":"object","properties":{"message":{"type":"string","description":"Human-readable message. Do not parse it; it can change. For 5xx errors it is always the generic `Something went wrong on our side`.","isRequired":true,"uniqueKey":"errors.items.[INDEX].message","typeLabel":"string"},"statusCode":{"type":"integer","description":"The HTTP status.","isRequired":true,"uniqueKey":"errors.items.[INDEX].statusCode","typeLabel":"integer"},"errorCode":{"type":"string","description":"Stable kebab-case error code, listed in the error catalog. Branch on this field.","isRequired":true,"uniqueKey":"errors.items.[INDEX].errorCode","typeLabel":"string"},"requestId":{"type":"string","description":"5xx only: the request id (also in the `X-Request-Id` header). Quote it when you contact support.","uniqueKey":"errors.items.[INDEX].requestId","typeLabel":"string"},"more":{"type":"object","additionalProperties":true,"description":"Additional details for some codes, for example `validationErrors` (array of `ValidationError`) or `requiredPermissions`. The members per code are listed in the error catalog.","properties":{"validationErrors":{"type":"array","items":{"type":"object","properties":{"property":{"type":"string","description":"Path of the offending property in your request body (`vouchers[17].value`), or the name of the query parameter, path parameter or header.","isRequired":true,"uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].property","typeLabel":"string"},"constraint":{"type":"string","description":"The violated rule as a kebab-case item code, for example `required`, `too-long`, `invalid-id`, `unknown-field`. See the validation item codes in the error catalog.","isRequired":true,"uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].constraint","typeLabel":"string"},"message":{"type":"object","description":"Explanation per locale.","properties":{"en":{"type":"string","description":"English message.","isRequired":true,"uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].message.en","typeLabel":"string"},"de":{"type":"string","description":"German message.","uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].message.de","typeLabel":"string"}},"required":["en"],"additionalProperties":false,"isRequired":true,"uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].message","typeLabel":"object"},"params":{"type":"object","additionalProperties":true,"description":"Parameters of the violated constraint, for example `{\"max\": 120}` for `too-long`; absent when the constraint has none.","uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].params","typeLabel":"object"},"value":{"oneOf":[{"type":"number","description":"The rejected value, only when it is a number or boolean. Strings are never echoed, so secrets, voucher values and personal data never come back in an error.","uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].value.oneOf.0","typeLabel":"number"},{"type":"boolean","description":"The rejected value, only when it is a number or boolean. Strings are never echoed, so secrets, voucher values and personal data never come back in an error.","uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].value.oneOf.1","typeLabel":"boolean"}],"uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].value","typeLabel":"number | boolean"}},"required":["property","constraint","message"],"description":"One invalid property or parameter of a `data-failed-validation` error (also used for item failures of batch operations and content checks).","uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX]","typeLabel":"object"},"description":"Invalid properties or parameters.","uniqueKey":"errors.items.[INDEX].more.validationErrors","typeLabel":"object[]"}},"uniqueKey":"errors.items.[INDEX].more","typeLabel":"object"}},"required":["message","statusCode","errorCode"],"description":"One error. Branch on `errorCode`; ignore members you do not know.","uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"description":"The errors; in v1 always exactly one.","minItems":1,"isRequired":true,"uniqueKey":"errors","typeLabel":"object[]"}},"required":["errors"],"description":"Error body of every 4xx and 5xx response (Content-Type: application/json).","additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"api-key-not-found":{"title":"api-key-not-found","value":{"errors":[{"message":"No API key with this id exists in your partner.","statusCode":404,"errorCode":"api-key-not-found"}]}}},"exampleType":"examples"}},"exampleType":"examples"},"ca42edd4-8c2c-428d-ab9f-ef3f823688b0":{"description":"Conflict: `invalid-state-transition`, `idempotency-key-in-use`.","x-error-codes":["invalid-state-transition","idempotency-key-in-use"],"headers":{"X-Request-Id":{"description":"Request id: your X-Request-Id (1-100 characters of [A-Za-z0-9._:-]) or a generated UUID.","schema":{"type":"string"}},"Retry-After":{"description":"Seconds to wait before the next request or poll.","schema":{"type":"integer","example":2}}},"content":{"application/json":{"schema":{"type":"object","properties":{"errors":{"type":"array","items":{"type":"object","properties":{"message":{"type":"string","description":"Human-readable message. Do not parse it; it can change. For 5xx errors it is always the generic `Something went wrong on our side`.","isRequired":true,"uniqueKey":"errors.items.[INDEX].message","typeLabel":"string"},"statusCode":{"type":"integer","description":"The HTTP status.","isRequired":true,"uniqueKey":"errors.items.[INDEX].statusCode","typeLabel":"integer"},"errorCode":{"type":"string","description":"Stable kebab-case error code, listed in the error catalog. Branch on this field.","isRequired":true,"uniqueKey":"errors.items.[INDEX].errorCode","typeLabel":"string"},"requestId":{"type":"string","description":"5xx only: the request id (also in the `X-Request-Id` header). Quote it when you contact support.","uniqueKey":"errors.items.[INDEX].requestId","typeLabel":"string"},"more":{"type":"object","additionalProperties":true,"description":"Additional details for some codes, for example `validationErrors` (array of `ValidationError`) or `requiredPermissions`. The members per code are listed in the error catalog.","properties":{"validationErrors":{"type":"array","items":{"type":"object","properties":{"property":{"type":"string","description":"Path of the offending property in your request body (`vouchers[17].value`), or the name of the query parameter, path parameter or header.","isRequired":true,"uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].property","typeLabel":"string"},"constraint":{"type":"string","description":"The violated rule as a kebab-case item code, for example `required`, `too-long`, `invalid-id`, `unknown-field`. See the validation item codes in the error catalog.","isRequired":true,"uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].constraint","typeLabel":"string"},"message":{"type":"object","description":"Explanation per locale.","properties":{"en":{"type":"string","description":"English message.","isRequired":true,"uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].message.en","typeLabel":"string"},"de":{"type":"string","description":"German message.","uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].message.de","typeLabel":"string"}},"required":["en"],"additionalProperties":false,"isRequired":true,"uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].message","typeLabel":"object"},"params":{"type":"object","additionalProperties":true,"description":"Parameters of the violated constraint, for example `{\"max\": 120}` for `too-long`; absent when the constraint has none.","uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].params","typeLabel":"object"},"value":{"oneOf":[{"type":"number","description":"The rejected value, only when it is a number or boolean. Strings are never echoed, so secrets, voucher values and personal data never come back in an error.","uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].value.oneOf.0","typeLabel":"number"},{"type":"boolean","description":"The rejected value, only when it is a number or boolean. Strings are never echoed, so secrets, voucher values and personal data never come back in an error.","uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].value.oneOf.1","typeLabel":"boolean"}],"uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].value","typeLabel":"number | boolean"}},"required":["property","constraint","message"],"description":"One invalid property or parameter of a `data-failed-validation` error (also used for item failures of batch operations and content checks).","uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX]","typeLabel":"object"},"description":"Invalid properties or parameters.","uniqueKey":"errors.items.[INDEX].more.validationErrors","typeLabel":"object[]"}},"uniqueKey":"errors.items.[INDEX].more","typeLabel":"object"}},"required":["message","statusCode","errorCode"],"description":"One error. Branch on `errorCode`; ignore members you do not know.","uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"description":"The errors; in v1 always exactly one.","minItems":1,"isRequired":true,"uniqueKey":"errors","typeLabel":"object[]"}},"required":["errors"],"description":"Error body of every 4xx and 5xx response (Content-Type: application/json).","additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"invalid-state-transition":{"title":"invalid-state-transition","value":{"errors":[{"message":"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.","statusCode":409,"errorCode":"invalid-state-transition"}]}}},"exampleType":"examples"}},"exampleType":"examples"},"de753023-47da-438f-8077-7ecd5b84a283":{"description":"Unprocessable content: `idempotency-key-reused`.","x-error-codes":["idempotency-key-reused"],"headers":{"X-Request-Id":{"description":"Request id: your X-Request-Id (1-100 characters of [A-Za-z0-9._:-]) or a generated UUID.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"errors":{"type":"array","items":{"type":"object","properties":{"message":{"type":"string","description":"Human-readable message. Do not parse it; it can change. For 5xx errors it is always the generic `Something went wrong on our side`.","isRequired":true,"uniqueKey":"errors.items.[INDEX].message","typeLabel":"string"},"statusCode":{"type":"integer","description":"The HTTP status.","isRequired":true,"uniqueKey":"errors.items.[INDEX].statusCode","typeLabel":"integer"},"errorCode":{"type":"string","description":"Stable kebab-case error code, listed in the error catalog. Branch on this field.","isRequired":true,"uniqueKey":"errors.items.[INDEX].errorCode","typeLabel":"string"},"requestId":{"type":"string","description":"5xx only: the request id (also in the `X-Request-Id` header). Quote it when you contact support.","uniqueKey":"errors.items.[INDEX].requestId","typeLabel":"string"},"more":{"type":"object","additionalProperties":true,"description":"Additional details for some codes, for example `validationErrors` (array of `ValidationError`) or `requiredPermissions`. The members per code are listed in the error catalog.","properties":{"validationErrors":{"type":"array","items":{"type":"object","properties":{"property":{"type":"string","description":"Path of the offending property in your request body (`vouchers[17].value`), or the name of the query parameter, path parameter or header.","isRequired":true,"uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].property","typeLabel":"string"},"constraint":{"type":"string","description":"The violated rule as a kebab-case item code, for example `required`, `too-long`, `invalid-id`, `unknown-field`. See the validation item codes in the error catalog.","isRequired":true,"uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].constraint","typeLabel":"string"},"message":{"type":"object","description":"Explanation per locale.","properties":{"en":{"type":"string","description":"English message.","isRequired":true,"uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].message.en","typeLabel":"string"},"de":{"type":"string","description":"German message.","uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].message.de","typeLabel":"string"}},"required":["en"],"additionalProperties":false,"isRequired":true,"uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].message","typeLabel":"object"},"params":{"type":"object","additionalProperties":true,"description":"Parameters of the violated constraint, for example `{\"max\": 120}` for `too-long`; absent when the constraint has none.","uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].params","typeLabel":"object"},"value":{"oneOf":[{"type":"number","description":"The rejected value, only when it is a number or boolean. Strings are never echoed, so secrets, voucher values and personal data never come back in an error.","uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].value.oneOf.0","typeLabel":"number"},{"type":"boolean","description":"The rejected value, only when it is a number or boolean. Strings are never echoed, so secrets, voucher values and personal data never come back in an error.","uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].value.oneOf.1","typeLabel":"boolean"}],"uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].value","typeLabel":"number | boolean"}},"required":["property","constraint","message"],"description":"One invalid property or parameter of a `data-failed-validation` error (also used for item failures of batch operations and content checks).","uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX]","typeLabel":"object"},"description":"Invalid properties or parameters.","uniqueKey":"errors.items.[INDEX].more.validationErrors","typeLabel":"object[]"}},"uniqueKey":"errors.items.[INDEX].more","typeLabel":"object"}},"required":["message","statusCode","errorCode"],"description":"One error. Branch on `errorCode`; ignore members you do not know.","uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"description":"The errors; in v1 always exactly one.","minItems":1,"isRequired":true,"uniqueKey":"errors","typeLabel":"object[]"}},"required":["errors"],"description":"Error body of every 4xx and 5xx response (Content-Type: application/json).","additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"idempotency-key-reused":{"title":"idempotency-key-reused","value":{"errors":[{"message":"The Idempotency-Key was already used for a different request.","statusCode":422,"errorCode":"idempotency-key-reused"}]}}},"exampleType":"examples"}},"exampleType":"examples"},"e18058ad-95b9-43ac-8880-16171bc564b0":{"description":"Internal error: `internal-error`.","x-error-codes":["internal-error"],"headers":{"X-Request-Id":{"description":"Request id: your X-Request-Id (1-100 characters of [A-Za-z0-9._:-]) or a generated UUID.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"errors":{"type":"array","items":{"type":"object","properties":{"message":{"type":"string","description":"Human-readable message. Do not parse it; it can change. For 5xx errors it is always the generic `Something went wrong on our side`.","isRequired":true,"uniqueKey":"errors.items.[INDEX].message","typeLabel":"string"},"statusCode":{"type":"integer","description":"The HTTP status.","isRequired":true,"uniqueKey":"errors.items.[INDEX].statusCode","typeLabel":"integer"},"errorCode":{"type":"string","description":"Stable kebab-case error code, listed in the error catalog. Branch on this field.","isRequired":true,"uniqueKey":"errors.items.[INDEX].errorCode","typeLabel":"string"},"requestId":{"type":"string","description":"5xx only: the request id (also in the `X-Request-Id` header). Quote it when you contact support.","uniqueKey":"errors.items.[INDEX].requestId","typeLabel":"string"},"more":{"type":"object","additionalProperties":true,"description":"Additional details for some codes, for example `validationErrors` (array of `ValidationError`) or `requiredPermissions`. The members per code are listed in the error catalog.","properties":{"validationErrors":{"type":"array","items":{"type":"object","properties":{"property":{"type":"string","description":"Path of the offending property in your request body (`vouchers[17].value`), or the name of the query parameter, path parameter or header.","isRequired":true,"uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].property","typeLabel":"string"},"constraint":{"type":"string","description":"The violated rule as a kebab-case item code, for example `required`, `too-long`, `invalid-id`, `unknown-field`. See the validation item codes in the error catalog.","isRequired":true,"uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].constraint","typeLabel":"string"},"message":{"type":"object","description":"Explanation per locale.","properties":{"en":{"type":"string","description":"English message.","isRequired":true,"uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].message.en","typeLabel":"string"},"de":{"type":"string","description":"German message.","uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].message.de","typeLabel":"string"}},"required":["en"],"additionalProperties":false,"isRequired":true,"uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].message","typeLabel":"object"},"params":{"type":"object","additionalProperties":true,"description":"Parameters of the violated constraint, for example `{\"max\": 120}` for `too-long`; absent when the constraint has none.","uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].params","typeLabel":"object"},"value":{"oneOf":[{"type":"number","description":"The rejected value, only when it is a number or boolean. Strings are never echoed, so secrets, voucher values and personal data never come back in an error.","uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].value.oneOf.0","typeLabel":"number"},{"type":"boolean","description":"The rejected value, only when it is a number or boolean. Strings are never echoed, so secrets, voucher values and personal data never come back in an error.","uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].value.oneOf.1","typeLabel":"boolean"}],"uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].value","typeLabel":"number | boolean"}},"required":["property","constraint","message"],"description":"One invalid property or parameter of a `data-failed-validation` error (also used for item failures of batch operations and content checks).","uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX]","typeLabel":"object"},"description":"Invalid properties or parameters.","uniqueKey":"errors.items.[INDEX].more.validationErrors","typeLabel":"object[]"}},"uniqueKey":"errors.items.[INDEX].more","typeLabel":"object"}},"required":["message","statusCode","errorCode"],"description":"One error. Branch on `errorCode`; ignore members you do not know.","uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"description":"The errors; in v1 always exactly one.","minItems":1,"isRequired":true,"uniqueKey":"errors","typeLabel":"object[]"}},"required":["errors"],"description":"Error body of every 4xx and 5xx response (Content-Type: application/json).","additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"internal-error":{"title":"internal-error","value":{"errors":[{"message":"Something went wrong on our side","statusCode":500,"errorCode":"internal-error","requestId":"0b6f3c1e-9d5a-4c43-a2a8-1f3d2b7c9e10"}]}}},"exampleType":"examples"}},"exampleType":"examples"},"20e940d7-756e-46f4-acba-6548a5ca1e1d":{"description":"Service unavailable: `service-unavailable`, `db-unavailable`, `query-timeout`.","x-error-codes":["service-unavailable","db-unavailable","query-timeout"],"headers":{"X-Request-Id":{"description":"Request id: your X-Request-Id (1-100 characters of [A-Za-z0-9._:-]) or a generated UUID.","schema":{"type":"string"}},"Retry-After":{"description":"Seconds to wait before the next request or poll.","schema":{"type":"integer","example":2}}},"content":{"application/json":{"schema":{"type":"object","properties":{"errors":{"type":"array","items":{"type":"object","properties":{"message":{"type":"string","description":"Human-readable message. Do not parse it; it can change. For 5xx errors it is always the generic `Something went wrong on our side`.","isRequired":true,"uniqueKey":"errors.items.[INDEX].message","typeLabel":"string"},"statusCode":{"type":"integer","description":"The HTTP status.","isRequired":true,"uniqueKey":"errors.items.[INDEX].statusCode","typeLabel":"integer"},"errorCode":{"type":"string","description":"Stable kebab-case error code, listed in the error catalog. Branch on this field.","isRequired":true,"uniqueKey":"errors.items.[INDEX].errorCode","typeLabel":"string"},"requestId":{"type":"string","description":"5xx only: the request id (also in the `X-Request-Id` header). Quote it when you contact support.","uniqueKey":"errors.items.[INDEX].requestId","typeLabel":"string"},"more":{"type":"object","additionalProperties":true,"description":"Additional details for some codes, for example `validationErrors` (array of `ValidationError`) or `requiredPermissions`. The members per code are listed in the error catalog.","properties":{"validationErrors":{"type":"array","items":{"type":"object","properties":{"property":{"type":"string","description":"Path of the offending property in your request body (`vouchers[17].value`), or the name of the query parameter, path parameter or header.","isRequired":true,"uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].property","typeLabel":"string"},"constraint":{"type":"string","description":"The violated rule as a kebab-case item code, for example `required`, `too-long`, `invalid-id`, `unknown-field`. See the validation item codes in the error catalog.","isRequired":true,"uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].constraint","typeLabel":"string"},"message":{"type":"object","description":"Explanation per locale.","properties":{"en":{"type":"string","description":"English message.","isRequired":true,"uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].message.en","typeLabel":"string"},"de":{"type":"string","description":"German message.","uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].message.de","typeLabel":"string"}},"required":["en"],"additionalProperties":false,"isRequired":true,"uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].message","typeLabel":"object"},"params":{"type":"object","additionalProperties":true,"description":"Parameters of the violated constraint, for example `{\"max\": 120}` for `too-long`; absent when the constraint has none.","uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].params","typeLabel":"object"},"value":{"oneOf":[{"type":"number","description":"The rejected value, only when it is a number or boolean. Strings are never echoed, so secrets, voucher values and personal data never come back in an error.","uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].value.oneOf.0","typeLabel":"number"},{"type":"boolean","description":"The rejected value, only when it is a number or boolean. Strings are never echoed, so secrets, voucher values and personal data never come back in an error.","uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].value.oneOf.1","typeLabel":"boolean"}],"uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX].value","typeLabel":"number | boolean"}},"required":["property","constraint","message"],"description":"One invalid property or parameter of a `data-failed-validation` error (also used for item failures of batch operations and content checks).","uniqueKey":"errors.items.[INDEX].more.validationErrors.items.[INDEX]","typeLabel":"object"},"description":"Invalid properties or parameters.","uniqueKey":"errors.items.[INDEX].more.validationErrors","typeLabel":"object[]"}},"uniqueKey":"errors.items.[INDEX].more","typeLabel":"object"}},"required":["message","statusCode","errorCode"],"description":"One error. Branch on `errorCode`; ignore members you do not know.","uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"description":"The errors; in v1 always exactly one.","minItems":1,"isRequired":true,"uniqueKey":"errors","typeLabel":"object[]"}},"required":["errors"],"description":"Error body of every 4xx and 5xx response (Content-Type: application/json).","additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"service-unavailable":{"title":"service-unavailable","value":{"errors":[{"message":"Something went wrong on our side","statusCode":503,"errorCode":"service-unavailable","requestId":"0b6f3c1e-9d5a-4c43-a2a8-1f3d2b7c9e10"}]}},"db-unavailable":{"title":"db-unavailable","value":{"errors":[{"message":"Something went wrong on our side","statusCode":503,"errorCode":"db-unavailable","requestId":"0b6f3c1e-9d5a-4c43-a2a8-1f3d2b7c9e10"}]}},"query-timeout":{"title":"query-timeout","value":{"errors":[{"message":"Something went wrong on our side","statusCode":503,"errorCode":"query-timeout","requestId":"0b6f3c1e-9d5a-4c43-a2a8-1f3d2b7c9e10"}]}}},"exampleType":"examples"}},"exampleType":"examples"}},"security":{"461b1c5c-8789-4998-ba0a-23f31c82c1ef":{"firebaseIdToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"ID token of a signed-in dashboard user. Operations that API keys cannot call use it.","scopes":[],"schemeName":"firebaseIdToken"}}},"servers":{"03446110-bf54-41cc-bb02-14c23a55f5d2":{"url":"https://api.voucher-staging.allride.io","description":"Sandbox"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"ID token of a signed-in dashboard user. Operations that API keys cannot call use it.","scopes":[],"schemeName":"firebaseIdToken"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"ID token of a signed-in dashboard user. Operations that API keys cannot call use it.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"firebaseIdToken","name":"Authorization"}],"title":"firebaseIdToken"}]},"originalFileLocation":"openapi/provider.v1.json"},"subdomain":"allride-voucher-provider","siteName":"AllRide Vouchers — Provider API","title":"Roll an API key - AllRide Vouchers — Provider API","navMaps":{"firstHrefInVersion":{"v1":{"href":"/api-reference/partner-api-keys-roll","matchLevel":0}},"firstHrefInLanguage":{}},"lastModified":"2026-11-05T05:13:35.932Z","originalFileLocation":"api-reference/partner-api-keys-roll.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Creates a new key with the same scopes and lets the old key expire after gracePeriodMinutes (default 1,440). Both keys work during the grace period, and the new key shares the old key\u0026#x27;s idempotency scope, so retries replay. The new secret is shown once. Dashboard users need a sign-in within the last 15 minutes (reauthentication-required); API keys are exempt. The response carries a show-once value; an idempotent replay returns it as null with Idempotent-Replay-Redacted: true. Required permissions: manage-api-keys · API keys: not allowed\">\u003cmeta data-mint-head name=\"application-name\" content=\"AllRide Vouchers — Provider API\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/allride-voucher-provider/lCQg3jT6av1yWlS9/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/allride-voucher-provider/lCQg3jT6av1yWlS9/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/allride-voucher-provider/lCQg3jT6av1yWlS9/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/allride-voucher-provider/lCQg3jT6av1yWlS9/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/allride-voucher-provider/lCQg3jT6av1yWlS9/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/allride-voucher-provider/lCQg3jT6av1yWlS9/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/allride-voucher-provider/lCQg3jT6av1yWlS9/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/allride-voucher-provider/lCQg3jT6av1yWlS9/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/allride-voucher-provider/lCQg3jT6av1yWlS9/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Roll an API key - AllRide Vouchers — Provider API\">\u003cmeta data-mint-head property=\"og:description\" content=\"Creates a new key with the same scopes and lets the old key expire after gracePeriodMinutes (default 1,440). Both keys work during the grace period, and the new key shares the old key\u0026#x27;s idempotency scope, so retries replay. The new secret is shown once. Dashboard users need a sign-in within the last 15 minutes (reauthentication-required); API keys are exempt. The response carries a show-once value; an idempotent replay returns it as null with Idempotent-Replay-Redacted: true. Required permissions: manage-api-keys · API keys: not allowed\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"AllRide Vouchers — Provider API\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs-provider.voucher.allride.io/api-reference/partner-api-keys-roll\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://allride-voucher-provider.mintlify.app/_mintlify/api/og/v2?division=API+keys\u0026amp;title=Roll+an+API+key\u0026amp;description=Creates+a+new+key+with+the+same+scopes+and+lets+the+old+key+expire+after+%60gracePeriodMinutes%60+%28default+1%2C440%29.+Both+keys+work+during+the+grace+period%2C+and+the+n\u0026amp;theme=2f3c23c00be4d7f4fa848a48\u0026amp;signature=b08547f2a1158bcfbbf091b19ddf9d63aac56bba3ba3bc5e4a6a816c45314702\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Roll an API key - AllRide Vouchers — Provider API\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Creates a new key with the same scopes and lets the old key expire after gracePeriodMinutes (default 1,440). Both keys work during the grace period, and the new key shares the old key\u0026#x27;s idempotency scope, so retries replay. The new secret is shown once. Dashboard users need a sign-in within the last 15 minutes (reauthentication-required); API keys are exempt. The response carries a show-once value; an idempotent replay returns it as null with Idempotent-Replay-Redacted: true. Required permissions: manage-api-keys · API keys: not allowed\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://allride-voucher-provider.mintlify.app/_mintlify/api/og/v2?division=API+keys\u0026amp;title=Roll+an+API+key\u0026amp;description=Creates+a+new+key+with+the+same+scopes+and+lets+the+old+key+expire+after+%60gracePeriodMinutes%60+%28default+1%2C440%29.+Both+keys+work+during+the+grace+period%2C+and+the+n\u0026amp;theme=2f3c23c00be4d7f4fa848a48\u0026amp;signature=b08547f2a1158bcfbbf091b19ddf9d63aac56bba3ba3bc5e4a6a816c45314702\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/allride-voucher-provider/lCQg3jT6av1yWlS9/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"AllRide Vouchers — Provider API\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#0A0A0A\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs-provider.voucher.allride.io/api-reference/partner-api-keys-roll\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/partner-api-keys-roll.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs-provider.voucher.allride.io/#organization\",\"name\":\"AllRide Vouchers — Provider API\",\"url\":\"https://docs-provider.voucher.allride.io\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/allride-voucher-provider/3hOWTJiJ7yX6MVLT/logo/light.svg?fit=max\u0026auto=format\u0026n=3hOWTJiJ7yX6MVLT\u0026q=85\u0026s=fee04017e330f3bd2c3f66153ed1d33c\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs-provider.voucher.allride.io#website\",\"name\":\"AllRide Vouchers — Provider API\",\"url\":\"https://docs-provider.voucher.allride.io\",\"publisher\":{\"@id\":\"https://docs-provider.voucher.allride.io/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs-provider.voucher.allride.io/api-reference/partner-api-keys-roll#webpage\",\"url\":\"https://docs-provider.voucher.allride.io/api-reference/partner-api-keys-roll\",\"name\":\"Roll an API key\",\"description\":\"Creates a new key with the same scopes and lets the old key expire after gracePeriodMinutes (default 1,440). Both keys work during the grace period, and the new key shares the old key's idempotency scope, so retries replay. The new secret is shown once. Dashboard users need a sign-in within the last 15 minutes (reauthentication-required); API keys are exempt. The response carries a show-once value; an idempotent replay returns it as null with Idempotent-Replay-Redacted: true. Required permissions: manage-api-keys · API keys: not allowed\",\"dateModified\":\"2026-11-05T05:13:35.932Z\",\"isPartOf\":{\"@id\":\"https://docs-provider.voucher.allride.io#website\"},\"breadcrumb\":{\"@id\":\"https://docs-provider.voucher.allride.io/api-reference/partner-api-keys-roll#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs-provider.voucher.allride.io/api-reference/partner-api-keys-roll#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Workspace API\",\"item\":\"https://docs-provider.voucher.allride.io/api-reference/partner-partner-get\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"API keys\",\"item\":\"https://docs-provider.voucher.allride.io/api-reference/partner-api-keys-list\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Roll an API key\",\"item\":\"https://docs-provider.voucher.allride.io/api-reference/partner-api-keys-roll\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs-provider.voucher.allride.io/api-reference/partner-api-keys-roll#apireference\",\"headline\":\"Roll an API key\",\"name\":\"Roll an API key\",\"description\":\"Creates a new key with the same scopes and lets the old key expire after gracePeriodMinutes (default 1,440). Both keys work during the grace period, and the new key shares the old key's idempotency scope, so retries replay. The new secret is shown once. Dashboard users need a sign-in within the last 15 minutes (reauthentication-required); API keys are exempt. The response carries a show-once value; an idempotent replay returns it as null with Idempotent-Replay-Redacted: true. Required permissions: manage-api-keys · API keys: not allowed\",\"url\":\"https://docs-provider.voucher.allride.io/api-reference/partner-api-keys-roll\",\"mainEntityOfPage\":{\"@id\":\"https://docs-provider.voucher.allride.io/api-reference/partner-api-keys-roll#webpage\"},\"dateModified\":\"2026-11-05T05:13:35.932Z\",\"publisher\":{\"@id\":\"https://docs-provider.voucher.allride.io/#organization\"},\"isPartOf\":{\"@id\":\"https://docs-provider.voucher.allride.io#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"AllRide Vouchers — Provider API\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"AllRide Vouchers — Provider API","nav":{"global":null,"versions":[{"version":"v1","default":true,"tabs":[{"tab":"Guides","pages":[{"title":"Guides","href":""}]},{"tab":"API reference","groups":[{"group":"Provider API","pages":[{"group":"Provider profile","pages":[{"title":"Get the provider profile","deprecated":null,"version":null,"sidebarTitle":"Provider provider profile get","openapi":"/openapi/provider.v1.json get /provider/v1/provider-profile","href":"/api-reference/provider-provider-profile-get"},{"title":"List the provider profile changelog","deprecated":null,"version":null,"sidebarTitle":"Provider provider profile changelog","openapi":"/openapi/provider.v1.json get /provider/v1/provider-profile/changelog","href":"/api-reference/provider-provider-profile-changelog"}]},{"group":"Listing branding","pages":[{"title":"Get the listing branding","deprecated":null,"version":null,"sidebarTitle":"Provider listing branding get","openapi":"/openapi/provider.v1.json get /provider/v1/listing-branding","href":"/api-reference/provider-listing-branding-get"},{"title":"List the listing branding changelog","deprecated":null,"version":null,"sidebarTitle":"Provider listing branding changelog","openapi":"/openapi/provider.v1.json get /provider/v1/listing-branding/changelog","href":"/api-reference/provider-listing-branding-changelog"},{"title":"List brand assets","deprecated":null,"version":null,"sidebarTitle":"Provider brand assets list","openapi":"/openapi/provider.v1.json get /provider/v1/brand-assets","href":"/api-reference/provider-brand-assets-list"},{"title":"Create a brand asset","deprecated":null,"version":null,"sidebarTitle":"Provider brand assets create","openapi":"/openapi/provider.v1.json post /provider/v1/brand-assets","href":"/api-reference/provider-brand-assets-create"},{"title":"Get a brand asset","deprecated":null,"version":null,"sidebarTitle":"Provider brand assets get","openapi":"/openapi/provider.v1.json get /provider/v1/brand-assets/{brandAssetId}","href":"/api-reference/provider-brand-assets-get"},{"title":"Complete a brand asset upload","deprecated":null,"version":null,"sidebarTitle":"Provider brand assets complete","openapi":"/openapi/provider.v1.json post /provider/v1/brand-assets/{brandAssetId}:complete","href":"/api-reference/provider-brand-assets-complete"},{"title":"Delete a brand asset","deprecated":null,"version":null,"sidebarTitle":"Provider brand assets delete","openapi":"/openapi/provider.v1.json delete /provider/v1/brand-assets/{brandAssetId}","href":"/api-reference/provider-brand-assets-delete"}]},{"group":"Categories","pages":[{"title":"List categories","deprecated":null,"version":null,"sidebarTitle":"Provider categories list","openapi":"/openapi/provider.v1.json get /provider/v1/categories","href":"/api-reference/provider-categories-list"},{"title":"Get a category","deprecated":null,"version":null,"sidebarTitle":"Provider categories get","openapi":"/openapi/provider.v1.json get /provider/v1/categories/{categoryId}","href":"/api-reference/provider-categories-get"}]},{"group":"Voucher sets","pages":[{"title":"List voucher sets","deprecated":null,"version":null,"sidebarTitle":"Provider voucher sets list","openapi":"/openapi/provider.v1.json get /provider/v1/voucher-sets","href":"/api-reference/provider-voucher-sets-list"},{"title":"Create a voucher set","deprecated":null,"version":null,"sidebarTitle":"Provider voucher sets create","openapi":"/openapi/provider.v1.json post /provider/v1/voucher-sets","href":"/api-reference/provider-voucher-sets-create"},{"title":"Get a voucher set","deprecated":null,"version":null,"sidebarTitle":"Provider voucher sets get","openapi":"/openapi/provider.v1.json get /provider/v1/voucher-sets/{voucherSetId}","href":"/api-reference/provider-voucher-sets-get"},{"title":"Update a voucher set","deprecated":null,"version":null,"sidebarTitle":"Provider voucher sets update","openapi":"/openapi/provider.v1.json patch /provider/v1/voucher-sets/{voucherSetId}","href":"/api-reference/provider-voucher-sets-update"},{"title":"Activate a voucher set now","deprecated":null,"version":null,"sidebarTitle":"Provider voucher sets activate","openapi":"/openapi/provider.v1.json post /provider/v1/voucher-sets/{voucherSetId}:activate","href":"/api-reference/provider-voucher-sets-activate"},{"title":"Archive a voucher set","deprecated":null,"version":null,"sidebarTitle":"Provider voucher sets archive","openapi":"/openapi/provider.v1.json post /provider/v1/voucher-sets/{voucherSetId}:archive","href":"/api-reference/provider-voucher-sets-archive"},{"title":"Cancel a schedule","deprecated":null,"version":null,"sidebarTitle":"Provider voucher sets cancel schedule","openapi":"/openapi/provider.v1.json post /provider/v1/voucher-sets/{voucherSetId}:cancel-schedule","href":"/api-reference/provider-voucher-sets-cancel-schedule"},{"title":"Deactivate a voucher set now","deprecated":null,"version":null,"sidebarTitle":"Provider voucher sets deactivate","openapi":"/openapi/provider.v1.json post /provider/v1/voucher-sets/{voucherSetId}:deactivate","href":"/api-reference/provider-voucher-sets-deactivate"},{"title":"Schedule activation","deprecated":null,"version":null,"sidebarTitle":"Provider voucher sets schedule activation","openapi":"/openapi/provider.v1.json post /provider/v1/voucher-sets/{voucherSetId}:schedule-activation","href":"/api-reference/provider-voucher-sets-schedule-activation"},{"title":"Schedule deactivation","deprecated":null,"version":null,"sidebarTitle":"Provider voucher sets schedule deactivation","openapi":"/openapi/provider.v1.json post /provider/v1/voucher-sets/{voucherSetId}:schedule-deactivation","href":"/api-reference/provider-voucher-sets-schedule-deactivation"},{"title":"List the voucher set changelog","deprecated":null,"version":null,"sidebarTitle":"Provider voucher sets changelog","openapi":"/openapi/provider.v1.json get /provider/v1/voucher-sets/{voucherSetId}/changelog","href":"/api-reference/provider-voucher-sets-changelog"},{"title":"List revisions","deprecated":null,"version":null,"sidebarTitle":"Provider voucher set revisions list","openapi":"/openapi/provider.v1.json get /provider/v1/voucher-sets/{voucherSetId}/revisions","href":"/api-reference/provider-voucher-set-revisions-list"},{"title":"Get a revision","deprecated":null,"version":null,"sidebarTitle":"Provider voucher set revisions get","openapi":"/openapi/provider.v1.json get /provider/v1/voucher-sets/{voucherSetId}/revisions/{voucherSetRevisionId}","href":"/api-reference/provider-voucher-set-revisions-get"},{"title":"Preview a link template","deprecated":null,"version":null,"sidebarTitle":"Provider link templates preview","openapi":"/openapi/provider.v1.json post /provider/v1/link-templates:preview","href":"/api-reference/provider-link-templates-preview"}]},{"group":"Change requests","pages":[{"title":"List change requests","deprecated":null,"version":null,"sidebarTitle":"Provider change requests list","openapi":"/openapi/provider.v1.json get /provider/v1/change-requests","href":"/api-reference/provider-change-requests-list"},{"title":"List voucher set change requests","deprecated":null,"version":null,"sidebarTitle":"Provider voucher set change requests list","openapi":"/openapi/provider.v1.json get /provider/v1/voucher-sets/{voucherSetId}/change-requests","href":"/api-reference/provider-voucher-set-change-requests-list"},{"title":"Create a voucher set change request","deprecated":null,"version":null,"sidebarTitle":"Provider voucher set change requests create","openapi":"/openapi/provider.v1.json post /provider/v1/voucher-sets/{voucherSetId}/change-requests","href":"/api-reference/provider-voucher-set-change-requests-create"},{"title":"Get a voucher set change request","deprecated":null,"version":null,"sidebarTitle":"Provider voucher set change requests get","openapi":"/openapi/provider.v1.json get /provider/v1/voucher-sets/{voucherSetId}/change-requests/{changeRequestId}","href":"/api-reference/provider-voucher-set-change-requests-get"},{"title":"Edit a voucher set change request","deprecated":null,"version":null,"sidebarTitle":"Provider voucher set change requests update","openapi":"/openapi/provider.v1.json patch /provider/v1/voucher-sets/{voucherSetId}/change-requests/{changeRequestId}","href":"/api-reference/provider-voucher-set-change-requests-update"},{"title":"Submit a voucher set change request","deprecated":null,"version":null,"sidebarTitle":"Provider voucher set change requests submit","openapi":"/openapi/provider.v1.json post /provider/v1/voucher-sets/{voucherSetId}/change-requests/{changeRequestId}:submit","href":"/api-reference/provider-voucher-set-change-requests-submit"},{"title":"Withdraw a voucher set change request","deprecated":null,"version":null,"sidebarTitle":"Provider voucher set change requests withdraw","openapi":"/openapi/provider.v1.json post /provider/v1/voucher-sets/{voucherSetId}/change-requests/{changeRequestId}:withdraw","href":"/api-reference/provider-voucher-set-change-requests-withdraw"},{"title":"List provider profile change requests","deprecated":null,"version":null,"sidebarTitle":"Provider provider profile change requests list","openapi":"/openapi/provider.v1.json get /provider/v1/provider-profile/change-requests","href":"/api-reference/provider-provider-profile-change-requests-list"},{"title":"Create a provider profile change request","deprecated":null,"version":null,"sidebarTitle":"Provider provider profile change requests create","openapi":"/openapi/provider.v1.json post /provider/v1/provider-profile/change-requests","href":"/api-reference/provider-provider-profile-change-requests-create"},{"title":"Get a provider profile change request","deprecated":null,"version":null,"sidebarTitle":"Provider provider profile change requests get","openapi":"/openapi/provider.v1.json get /provider/v1/provider-profile/change-requests/{changeRequestId}","href":"/api-reference/provider-provider-profile-change-requests-get"},{"title":"Edit a provider profile change request","deprecated":null,"version":null,"sidebarTitle":"Provider provider profile change requests update","openapi":"/openapi/provider.v1.json patch /provider/v1/provider-profile/change-requests/{changeRequestId}","href":"/api-reference/provider-provider-profile-change-requests-update"},{"title":"Submit a provider profile change request","deprecated":null,"version":null,"sidebarTitle":"Provider provider profile change requests submit","openapi":"/openapi/provider.v1.json post /provider/v1/provider-profile/change-requests/{changeRequestId}:submit","href":"/api-reference/provider-provider-profile-change-requests-submit"},{"title":"Withdraw a provider profile change request","deprecated":null,"version":null,"sidebarTitle":"Provider provider profile change requests withdraw","openapi":"/openapi/provider.v1.json post /provider/v1/provider-profile/change-requests/{changeRequestId}:withdraw","href":"/api-reference/provider-provider-profile-change-requests-withdraw"},{"title":"List listing branding change requests","deprecated":null,"version":null,"sidebarTitle":"Provider listing branding change requests list","openapi":"/openapi/provider.v1.json get /provider/v1/listing-branding/change-requests","href":"/api-reference/provider-listing-branding-change-requests-list"},{"title":"Create a listing branding change request","deprecated":null,"version":null,"sidebarTitle":"Provider listing branding change requests create","openapi":"/openapi/provider.v1.json post /provider/v1/listing-branding/change-requests","href":"/api-reference/provider-listing-branding-change-requests-create"},{"title":"Get a listing branding change request","deprecated":null,"version":null,"sidebarTitle":"Provider listing branding change requests get","openapi":"/openapi/provider.v1.json get /provider/v1/listing-branding/change-requests/{changeRequestId}","href":"/api-reference/provider-listing-branding-change-requests-get"},{"title":"Edit a listing branding change request","deprecated":null,"version":null,"sidebarTitle":"Provider listing branding change requests update","openapi":"/openapi/provider.v1.json patch /provider/v1/listing-branding/change-requests/{changeRequestId}","href":"/api-reference/provider-listing-branding-change-requests-update"},{"title":"Submit a listing branding change request","deprecated":null,"version":null,"sidebarTitle":"Provider listing branding change requests submit","openapi":"/openapi/provider.v1.json post /provider/v1/listing-branding/change-requests/{changeRequestId}:submit","href":"/api-reference/provider-listing-branding-change-requests-submit"},{"title":"Withdraw a listing branding change request","deprecated":null,"version":null,"sidebarTitle":"Provider listing branding change requests withdraw","openapi":"/openapi/provider.v1.json post /provider/v1/listing-branding/change-requests/{changeRequestId}:withdraw","href":"/api-reference/provider-listing-branding-change-requests-withdraw"}]},{"group":"Vouchers","pages":[{"title":"List vouchers","deprecated":null,"version":null,"sidebarTitle":"Provider vouchers list","openapi":"/openapi/provider.v1.json get /provider/v1/voucher-sets/{voucherSetId}/vouchers","href":"/api-reference/provider-vouchers-list"},{"title":"Create vouchers in a batch","deprecated":null,"version":null,"sidebarTitle":"Provider vouchers batch","openapi":"/openapi/provider.v1.json post /provider/v1/voucher-sets/{voucherSetId}/vouchers:batch","href":"/api-reference/provider-vouchers-batch"},{"title":"Revoke several vouchers","deprecated":null,"version":null,"sidebarTitle":"Provider vouchers revoke many","openapi":"/openapi/provider.v1.json post /provider/v1/voucher-sets/{voucherSetId}/vouchers:revoke","href":"/api-reference/provider-vouchers-revoke-many"},{"title":"Get a voucher","deprecated":null,"version":null,"sidebarTitle":"Provider vouchers get","openapi":"/openapi/provider.v1.json get /provider/v1/vouchers/{voucherId}","href":"/api-reference/provider-vouchers-get"},{"title":"Reveal a voucher value","deprecated":null,"version":null,"sidebarTitle":"Provider vouchers reveal","openapi":"/openapi/provider.v1.json post /provider/v1/vouchers/{voucherId}:reveal","href":"/api-reference/provider-vouchers-reveal"},{"title":"Revoke a voucher","deprecated":null,"version":null,"sidebarTitle":"Provider vouchers revoke","openapi":"/openapi/provider.v1.json post /provider/v1/vouchers/{voucherId}:revoke","href":"/api-reference/provider-vouchers-revoke"}]},{"group":"Voucher uploads","pages":[{"title":"List uploads of all voucher sets","deprecated":null,"version":null,"sidebarTitle":"Provider voucher uploads list all","openapi":"/openapi/provider.v1.json get /provider/v1/voucher-uploads","href":"/api-reference/provider-voucher-uploads-list-all"},{"title":"List uploads of a voucher set","deprecated":null,"version":null,"sidebarTitle":"Provider voucher uploads list","openapi":"/openapi/provider.v1.json get /provider/v1/voucher-sets/{voucherSetId}/uploads","href":"/api-reference/provider-voucher-uploads-list"},{"title":"Create a voucher upload","deprecated":null,"version":null,"sidebarTitle":"Provider voucher uploads create","openapi":"/openapi/provider.v1.json post /provider/v1/voucher-sets/{voucherSetId}/uploads","href":"/api-reference/provider-voucher-uploads-create"},{"title":"Get a voucher upload","deprecated":null,"version":null,"sidebarTitle":"Provider voucher uploads get","openapi":"/openapi/provider.v1.json get /provider/v1/voucher-sets/{voucherSetId}/uploads/{voucherUploadId}","href":"/api-reference/provider-voucher-uploads-get"},{"title":"Cancel a voucher upload","deprecated":null,"version":null,"sidebarTitle":"Provider voucher uploads cancel","openapi":"/openapi/provider.v1.json post /provider/v1/voucher-sets/{voucherSetId}/uploads/{voucherUploadId}:cancel","href":"/api-reference/provider-voucher-uploads-cancel"},{"title":"Import the valid rows","deprecated":null,"version":null,"sidebarTitle":"Provider voucher uploads import","openapi":"/openapi/provider.v1.json post /provider/v1/voucher-sets/{voucherSetId}/uploads/{voucherUploadId}:import","href":"/api-reference/provider-voucher-uploads-import"},{"title":"Start processing a voucher upload","deprecated":null,"version":null,"sidebarTitle":"Provider voucher uploads start","openapi":"/openapi/provider.v1.json post /provider/v1/voucher-sets/{voucherSetId}/uploads/{voucherUploadId}:start","href":"/api-reference/provider-voucher-uploads-start"},{"title":"List upload row errors","deprecated":null,"version":null,"sidebarTitle":"Provider voucher uploads errors","openapi":"/openapi/provider.v1.json get /provider/v1/voucher-sets/{voucherSetId}/uploads/{voucherUploadId}/errors","href":"/api-reference/provider-voucher-uploads-errors"}]},{"group":"Stock alerts","pages":[{"title":"Get the stock alert rule","deprecated":null,"version":null,"sidebarTitle":"Provider stock alert rules get","openapi":"/openapi/provider.v1.json get /provider/v1/voucher-sets/{voucherSetId}/stock-alert-rule","href":"/api-reference/provider-stock-alert-rules-get"},{"title":"Replace the stock alert rule","deprecated":null,"version":null,"sidebarTitle":"Provider stock alert rules replace","openapi":"/openapi/provider.v1.json put /provider/v1/voucher-sets/{voucherSetId}/stock-alert-rule","href":"/api-reference/provider-stock-alert-rules-replace"},{"title":"List stock alert firings","deprecated":null,"version":null,"sidebarTitle":"Provider stock alert firings list","openapi":"/openapi/provider.v1.json get /provider/v1/voucher-sets/{voucherSetId}/stock-alert-firings","href":"/api-reference/provider-stock-alert-firings-list"}]},{"group":"Redemptions","pages":[{"title":"List redemptions","deprecated":null,"version":null,"sidebarTitle":"Provider redemptions list","openapi":"/openapi/provider.v1.json get /provider/v1/redemptions","href":"/api-reference/provider-redemptions-list"},{"title":"Get a redemption","deprecated":null,"version":null,"sidebarTitle":"Provider redemptions get","openapi":"/openapi/provider.v1.json get /provider/v1/redemptions/{redemptionId}","href":"/api-reference/provider-redemptions-get"}]},{"group":"Analytics","pages":[{"title":"Get the analytics summary","deprecated":null,"version":null,"sidebarTitle":"Provider analytics summary","openapi":"/openapi/provider.v1.json get /provider/v1/analytics/summary","href":"/api-reference/provider-analytics-summary"},{"title":"Get redemptions over time","deprecated":null,"version":null,"sidebarTitle":"Provider analytics redemptions","openapi":"/openapi/provider.v1.json get /provider/v1/analytics/redemptions","href":"/api-reference/provider-analytics-redemptions"},{"title":"Get inventory flow over time","deprecated":null,"version":null,"sidebarTitle":"Provider analytics inventory","openapi":"/openapi/provider.v1.json get /provider/v1/analytics/inventory","href":"/api-reference/provider-analytics-inventory"},{"title":"List stock per voucher set","deprecated":null,"version":null,"sidebarTitle":"Provider analytics stock","openapi":"/openapi/provider.v1.json get /provider/v1/analytics/stock","href":"/api-reference/provider-analytics-stock"}]}]},{"group":"Workspace API","pages":[{"group":"Partner","pages":[{"title":"Get your partner","deprecated":null,"version":null,"sidebarTitle":"Partner partner get","openapi":"/openapi/provider.v1.json get /partner/v1/partner","href":"/api-reference/partner-partner-get"},{"title":"Update general information","deprecated":null,"version":null,"sidebarTitle":"Partner partner update","openapi":"/openapi/provider.v1.json patch /partner/v1/partner","href":"/api-reference/partner-partner-update"},{"title":"Update security settings","deprecated":null,"version":null,"sidebarTitle":"Partner partner update settings","openapi":"/openapi/provider.v1.json patch /partner/v1/partner/settings","href":"/api-reference/partner-partner-update-settings"},{"title":"Get the API access status","deprecated":null,"version":null,"sidebarTitle":"Partner api access get","openapi":"/openapi/provider.v1.json get /partner/v1/api-access","href":"/api-reference/partner-api-access-get"},{"title":"Request API access","deprecated":null,"version":null,"sidebarTitle":"Partner api access request","openapi":"/openapi/provider.v1.json post /partner/v1/api-access:request","href":"/api-reference/partner-api-access-request"},{"title":"Get developer reference information","deprecated":null,"version":null,"sidebarTitle":"Partner developer reference get","openapi":"/openapi/provider.v1.json get /partner/v1/developer-reference","href":"/api-reference/partner-developer-reference-get"},{"title":"Get the calling principal","deprecated":null,"version":null,"sidebarTitle":"Partner principal get","openapi":"/openapi/provider.v1.json get /partner/v1/principal","href":"/api-reference/partner-principal-get"},{"title":"List selectable time zones","deprecated":null,"version":null,"sidebarTitle":"Partner timezones list","openapi":"/openapi/provider.v1.json get /partner/v1/timezones","href":"/api-reference/partner-timezones-list"}]},{"group":"Members","pages":[{"title":"List members","deprecated":null,"version":null,"sidebarTitle":"Partner members list","openapi":"/openapi/provider.v1.json get /partner/v1/members","href":"/api-reference/partner-members-list"},{"title":"Invite a member","deprecated":null,"version":null,"sidebarTitle":"Partner members create","openapi":"/openapi/provider.v1.json post /partner/v1/members","href":"/api-reference/partner-members-create"},{"title":"Get a member","deprecated":null,"version":null,"sidebarTitle":"Partner members get","openapi":"/openapi/provider.v1.json get /partner/v1/members/{partnerMembershipId}","href":"/api-reference/partner-members-get"},{"title":"Change a member's direct permissions","deprecated":null,"version":null,"sidebarTitle":"Partner members update","openapi":"/openapi/provider.v1.json patch /partner/v1/members/{partnerMembershipId}","href":"/api-reference/partner-members-update"},{"title":"Remove a member","deprecated":null,"version":null,"sidebarTitle":"Partner members remove","openapi":"/openapi/provider.v1.json post /partner/v1/members/{partnerMembershipId}:remove","href":"/api-reference/partner-members-remove"},{"title":"Resend an invitation","deprecated":null,"version":null,"sidebarTitle":"Partner members resend invitation","openapi":"/openapi/provider.v1.json post /partner/v1/members/{partnerMembershipId}:resend-invitation","href":"/api-reference/partner-members-resend-invitation"},{"title":"Suspend a member","deprecated":null,"version":null,"sidebarTitle":"Partner members suspend","openapi":"/openapi/provider.v1.json post /partner/v1/members/{partnerMembershipId}:suspend","href":"/api-reference/partner-members-suspend"},{"title":"Unsuspend a member","deprecated":null,"version":null,"sidebarTitle":"Partner members unsuspend","openapi":"/openapi/provider.v1.json post /partner/v1/members/{partnerMembershipId}:unsuspend","href":"/api-reference/partner-members-unsuspend"}]},{"group":"Groups","pages":[{"title":"List groups","deprecated":null,"version":null,"sidebarTitle":"Partner groups list","openapi":"/openapi/provider.v1.json get /partner/v1/groups","href":"/api-reference/partner-groups-list"},{"title":"Create a group","deprecated":null,"version":null,"sidebarTitle":"Partner groups create","openapi":"/openapi/provider.v1.json post /partner/v1/groups","href":"/api-reference/partner-groups-create"},{"title":"Get a group","deprecated":null,"version":null,"sidebarTitle":"Partner groups get","openapi":"/openapi/provider.v1.json get /partner/v1/groups/{groupId}","href":"/api-reference/partner-groups-get"},{"title":"Update a group","deprecated":null,"version":null,"sidebarTitle":"Partner groups update","openapi":"/openapi/provider.v1.json patch /partner/v1/groups/{groupId}","href":"/api-reference/partner-groups-update"},{"title":"Delete a group","deprecated":null,"version":null,"sidebarTitle":"Partner groups delete","openapi":"/openapi/provider.v1.json delete /partner/v1/groups/{groupId}","href":"/api-reference/partner-groups-delete"},{"title":"List the members of a group","deprecated":null,"version":null,"sidebarTitle":"Partner groups members","openapi":"/openapi/provider.v1.json get /partner/v1/groups/{groupId}/members","href":"/api-reference/partner-groups-members"},{"title":"List permissions","deprecated":null,"version":null,"sidebarTitle":"Partner permissions list","openapi":"/openapi/provider.v1.json get /partner/v1/permissions","href":"/api-reference/partner-permissions-list"}]},{"group":"API keys","pages":[{"title":"List API keys","deprecated":null,"version":null,"sidebarTitle":"Partner api keys list","openapi":"/openapi/provider.v1.json get /partner/v1/api-keys","href":"/api-reference/partner-api-keys-list"},{"title":"Create an API key","deprecated":null,"version":null,"sidebarTitle":"Partner api keys create","openapi":"/openapi/provider.v1.json post /partner/v1/api-keys","href":"/api-reference/partner-api-keys-create"},{"title":"Get an API key","deprecated":null,"version":null,"sidebarTitle":"Partner api keys get","openapi":"/openapi/provider.v1.json get /partner/v1/api-keys/{apiKeyId}","href":"/api-reference/partner-api-keys-get"},{"title":"Rename an API key","deprecated":null,"version":null,"sidebarTitle":"Partner api keys update","openapi":"/openapi/provider.v1.json patch /partner/v1/api-keys/{apiKeyId}","href":"/api-reference/partner-api-keys-update"},{"title":"Revoke an API key","description":"Revokes an active key; it stops working within 60 seconds.\n\nDashboard users need a sign-in within the last 15 minutes (`reauthentication-required`); API keys are exempt.\n\n**Required permissions:** `manage-api-keys` · **API keys:** not allowed","deprecated":null,"version":null,"sidebarTitle":"Partner api keys revoke","openapi":"/openapi/provider.v1.json post /partner/v1/api-keys/{apiKeyId}:revoke","href":"/api-reference/partner-api-keys-revoke"},{"title":"Roll an API key","deprecated":null,"version":null,"sidebarTitle":"Partner api keys roll","openapi":"/openapi/provider.v1.json post /partner/v1/api-keys/{apiKeyId}:roll","href":"/api-reference/partner-api-keys-roll"}]},{"group":"Webhook endpoints","pages":[{"title":"List webhook endpoints","description":"Lists endpoints; deleted ones only with a `status` filter.\n\n**Required permissions:** `view-webhooks` · **API keys:** allowed","deprecated":null,"version":null,"sidebarTitle":"Partner webhook endpoints list","openapi":"/openapi/provider.v1.json get /partner/v1/webhook-endpoints","href":"/api-reference/partner-webhook-endpoints-list"},{"title":"Create a webhook endpoint","deprecated":null,"version":null,"sidebarTitle":"Partner webhook endpoints create","openapi":"/openapi/provider.v1.json post /partner/v1/webhook-endpoints","href":"/api-reference/partner-webhook-endpoints-create"},{"title":"Get a webhook endpoint","deprecated":null,"version":null,"sidebarTitle":"Partner webhook endpoints get","openapi":"/openapi/provider.v1.json get /partner/v1/webhook-endpoints/{webhookEndpointId}","href":"/api-reference/partner-webhook-endpoints-get"},{"title":"Update a webhook endpoint","deprecated":null,"version":null,"sidebarTitle":"Partner webhook endpoints update","openapi":"/openapi/provider.v1.json patch /partner/v1/webhook-endpoints/{webhookEndpointId}","href":"/api-reference/partner-webhook-endpoints-update"},{"title":"Pause a webhook endpoint","deprecated":null,"version":null,"sidebarTitle":"Partner webhook endpoints pause","openapi":"/openapi/provider.v1.json post /partner/v1/webhook-endpoints/{webhookEndpointId}:pause","href":"/api-reference/partner-webhook-endpoints-pause"},{"title":"Resume a webhook endpoint","deprecated":null,"version":null,"sidebarTitle":"Partner webhook endpoints resume","openapi":"/openapi/provider.v1.json post /partner/v1/webhook-endpoints/{webhookEndpointId}:resume","href":"/api-reference/partner-webhook-endpoints-resume"},{"title":"Rotate the first signing secret","deprecated":null,"version":null,"sidebarTitle":"Partner webhook endpoints rotate first secret","openapi":"/openapi/provider.v1.json post /partner/v1/webhook-endpoints/{webhookEndpointId}:rotate-first-secret","href":"/api-reference/partner-webhook-endpoints-rotate-first-secret"},{"title":"Rotate the second signing secret","deprecated":null,"version":null,"sidebarTitle":"Partner webhook endpoints rotate second secret","openapi":"/openapi/provider.v1.json post /partner/v1/webhook-endpoints/{webhookEndpointId}:rotate-second-secret","href":"/api-reference/partner-webhook-endpoints-rotate-second-secret"},{"title":"Send a test event","deprecated":null,"version":null,"sidebarTitle":"Partner webhook endpoints send test event","openapi":"/openapi/provider.v1.json post /partner/v1/webhook-endpoints/{webhookEndpointId}:send-test-event","href":"/api-reference/partner-webhook-endpoints-send-test-event"},{"title":"Delete a webhook endpoint","deprecated":null,"version":null,"sidebarTitle":"Partner webhook endpoints delete","openapi":"/openapi/provider.v1.json delete /partner/v1/webhook-endpoints/{webhookEndpointId}","href":"/api-reference/partner-webhook-endpoints-delete"},{"title":"List webhook event types","deprecated":null,"version":null,"sidebarTitle":"Partner webhook event types list","openapi":"/openapi/provider.v1.json get /partner/v1/webhook-event-types","href":"/api-reference/partner-webhook-event-types-list"}]},{"group":"Webhook deliveries","pages":[{"title":"Replay failed deliveries","deprecated":null,"version":null,"sidebarTitle":"Partner webhook endpoints replay failed","openapi":"/openapi/provider.v1.json post /partner/v1/webhook-endpoints/{webhookEndpointId}:replay-failed","href":"/api-reference/partner-webhook-endpoints-replay-failed"},{"title":"List webhook deliveries","deprecated":null,"version":null,"sidebarTitle":"Partner webhook deliveries list","openapi":"/openapi/provider.v1.json get /partner/v1/webhook-deliveries","href":"/api-reference/partner-webhook-deliveries-list"},{"title":"Get a webhook delivery","deprecated":null,"version":null,"sidebarTitle":"Partner webhook deliveries get","openapi":"/openapi/provider.v1.json get /partner/v1/webhook-deliveries/{webhookDeliveryId}","href":"/api-reference/partner-webhook-deliveries-get"},{"title":"Replay a webhook delivery","deprecated":null,"version":null,"sidebarTitle":"Partner webhook deliveries replay","openapi":"/openapi/provider.v1.json post /partner/v1/webhook-deliveries/{webhookDeliveryId}:replay","href":"/api-reference/partner-webhook-deliveries-replay"}]},{"group":"IP allowlist","pages":[{"title":"List IP allowlist entries","deprecated":null,"version":null,"sidebarTitle":"Partner ip allowlist list","openapi":"/openapi/provider.v1.json get /partner/v1/ip-allowlist","href":"/api-reference/partner-ip-allowlist-list"},{"title":"Add an IP allowlist entry","deprecated":null,"version":null,"sidebarTitle":"Partner ip allowlist create","openapi":"/openapi/provider.v1.json post /partner/v1/ip-allowlist","href":"/api-reference/partner-ip-allowlist-create"},{"title":"Relabel an IP allowlist entry","deprecated":null,"version":null,"sidebarTitle":"Partner ip allowlist update","openapi":"/openapi/provider.v1.json patch /partner/v1/ip-allowlist/{ipAllowlistEntryId}","href":"/api-reference/partner-ip-allowlist-update"},{"title":"Remove an IP allowlist entry","deprecated":null,"version":null,"sidebarTitle":"Partner ip allowlist delete","openapi":"/openapi/provider.v1.json delete /partner/v1/ip-allowlist/{ipAllowlistEntryId}","href":"/api-reference/partner-ip-allowlist-delete"}]},{"group":"Workspace branding","pages":[{"title":"Get the workspace branding","deprecated":null,"version":null,"sidebarTitle":"Partner workspace branding get","openapi":"/openapi/provider.v1.json get /partner/v1/branding/workspace","href":"/api-reference/partner-workspace-branding-get"},{"title":"Replace the workspace branding","deprecated":null,"version":null,"sidebarTitle":"Partner workspace branding replace","openapi":"/openapi/provider.v1.json put /partner/v1/branding/workspace","href":"/api-reference/partner-workspace-branding-replace"},{"title":"List brand assets","deprecated":null,"version":null,"sidebarTitle":"Partner brand assets list","openapi":"/openapi/provider.v1.json get /partner/v1/brand-assets","href":"/api-reference/partner-brand-assets-list"},{"title":"Create a brand asset","deprecated":null,"version":null,"sidebarTitle":"Partner brand assets create","openapi":"/openapi/provider.v1.json post /partner/v1/brand-assets","href":"/api-reference/partner-brand-assets-create"},{"title":"Get a brand asset","deprecated":null,"version":null,"sidebarTitle":"Partner brand assets get","openapi":"/openapi/provider.v1.json get /partner/v1/brand-assets/{brandAssetId}","href":"/api-reference/partner-brand-assets-get"},{"title":"Complete a brand asset upload","deprecated":null,"version":null,"sidebarTitle":"Partner brand assets complete","openapi":"/openapi/provider.v1.json post /partner/v1/brand-assets/{brandAssetId}:complete","href":"/api-reference/partner-brand-assets-complete"},{"title":"Delete a brand asset","deprecated":null,"version":null,"sidebarTitle":"Partner brand assets delete","openapi":"/openapi/provider.v1.json delete /partner/v1/brand-assets/{brandAssetId}","href":"/api-reference/partner-brand-assets-delete"}]},{"group":"Single sign-on","pages":[{"title":"List SSO connections","deprecated":null,"version":null,"sidebarTitle":"Partner sso connections list","openapi":"/openapi/provider.v1.json get /partner/v1/sso-connections","href":"/api-reference/partner-sso-connections-list"},{"title":"Create an SSO connection","deprecated":null,"version":null,"sidebarTitle":"Partner sso connections create","openapi":"/openapi/provider.v1.json post /partner/v1/sso-connections","href":"/api-reference/partner-sso-connections-create"},{"title":"Get an SSO connection","deprecated":null,"version":null,"sidebarTitle":"Partner sso connections get","openapi":"/openapi/provider.v1.json get /partner/v1/sso-connections/{ssoConnectionId}","href":"/api-reference/partner-sso-connections-get"},{"title":"Update an SSO connection","deprecated":null,"version":null,"sidebarTitle":"Partner sso connections update","openapi":"/openapi/provider.v1.json patch /partner/v1/sso-connections/{ssoConnectionId}","href":"/api-reference/partner-sso-connections-update"},{"title":"Activate an SSO connection","deprecated":null,"version":null,"sidebarTitle":"Partner sso connections activate","openapi":"/openapi/provider.v1.json post /partner/v1/sso-connections/{ssoConnectionId}:activate","href":"/api-reference/partner-sso-connections-activate"},{"title":"Deactivate an SSO connection","deprecated":null,"version":null,"sidebarTitle":"Partner sso connections deactivate","openapi":"/openapi/provider.v1.json post /partner/v1/sso-connections/{ssoConnectionId}:deactivate","href":"/api-reference/partner-sso-connections-deactivate"},{"title":"Verify SSO email domains","deprecated":null,"version":null,"sidebarTitle":"Partner sso connections verify","openapi":"/openapi/provider.v1.json post /partner/v1/sso-connections/{ssoConnectionId}:verify","href":"/api-reference/partner-sso-connections-verify"}]},{"group":"Audit log","pages":[{"title":"List audit events","deprecated":null,"version":null,"sidebarTitle":"Partner audit events list","openapi":"/openapi/provider.v1.json get /partner/v1/audit-events","href":"/api-reference/partner-audit-events-list"},{"title":"Get an audit event","deprecated":null,"version":null,"sidebarTitle":"Partner audit events get","openapi":"/openapi/provider.v1.json get /partner/v1/audit-events/{auditEventId}","href":"/api-reference/partner-audit-events-get"}]}]}]},{"tab":"Webhook events","pages":[{"title":"Webhook events","href":"/webhooks/events/change-request-approved"}]}]}]},"basePath":"","title":"Roll an API key - AllRide Vouchers — Provider API","buildId":"dpl_9VVk5y1P8k1ATeJguVngy9Q3cmbD","deploymentId":"dpl_9VVk5y1P8k1ATeJguVngy9Q3cmbD","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-DX1Meug0.js","utils-B_OMIQVC.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-ChxhRPMa.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-CuKvD8Iv.js","snippetPresets-C5d7p2hp.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-CfHcE8m4.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-C1zZV314.js","shallow-CmQhqCJn.js","getApiPlaygroundDisplay-YRo9s1O7.js","CodeSnippet-RN1MTdfk.js","CodeSnippets-DKLPHxJA.js","Page-BAvA99GL.js","getPastedJson-bz0M41mU.js","icon-CsmhpPrv.js","MethodPill-CNGsVE77.js","DuplicateIcon-DilfU_Z2.js","createIcon-BdsYzQck.js","DynamicMarkdown-CbqEDjbV.js","SectionHeading-O6hXpFCN.js","axios-vUo_bRtp.js","Markdown-nKm-uidQ.js","clsx-ClVdStUn.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-CIQkMg3R.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-ImrFS4Fy.js"]}