The full key is shown only once, right after creation. Copy it and store it somewhere safe, like a password manager or your secrets vault. Afterwards the portal only shows the last few characters.
The list shows each key’s status, expiry, creation date, and Last Used, which is handy for spotting keys that are no longer in use. From a key’s menu you can:
Rotate: replace the key’s secret immediately. The old secret stops working at once, and the new one is shown a single time. Update your applications right away.
Delete: revoke the key permanently. Applications using it lose access immediately, and this can’t be undone.
Expired and deleted keys move to the Inactive API Keys section, where they no longer authenticate requests.
One key per integration: when something needs to be revoked, you only break that one system.
Prefer an expiry over Never for keys you can rotate easily.
Never paste an API key into email, chat, or a support ticket.
Was this page helpful?
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Stell","description":"Guides and API reference for Stell: design, issue and update Apple Wallet and Google Wallet passes for loyalty, memberships, tickets and access.","colors":{"primary":"#16A34A","light":"#07C983","dark":"#15803D"},"logo":{"light":"https://mintcdn.com/stell/C_zhUrQoTUQsZ2Th/logo/light.svg?fit=max\u0026auto=format\u0026n=C_zhUrQoTUQsZ2Th\u0026q=85\u0026s=0331e63db80863763f108a9e957b9b1d","dark":"https://mintcdn.com/stell/C_zhUrQoTUQsZ2Th/logo/dark.svg?fit=max\u0026auto=format\u0026n=C_zhUrQoTUQsZ2Th\u0026q=85\u0026s=887c7ef4687b8beb0bfc6263349c508b"},"favicon":"https://mintcdn.com/stell/k_mnJ8Kr2DM3UI1t/favicon.svg?fit=max\u0026auto=format\u0026n=k_mnJ8Kr2DM3UI1t\u0026q=85\u0026s=c10d1de1b75b3b3a459cd9b2634f566f","api":{"playground":{"display":"simple"},"examples":{"languages":["typescript","bash","python"],"prefill":true},"url":"full"},"navbar":{"links":[{"href":"https://getstell.com/contact?context=docs:navbar","label":"Talk to Stell"},{"href":"mailto:hello@getstell.com","label":"Support"}],"primary":{"type":"button","label":"Open portal","href":"https://platform.getstell.com/portal"}},"footer":{"socials":{"linkedin":"https://www.linkedin.com/company/stell-tech-as","youtube":"https://www.youtube.com/@getstell","github":"https://github.com/Stell-Tech"},"links":[{"items":[{"label":"getstell.com","href":"https://getstell.com"},{"label":"Book a demo","href":"https://getstell.com/contact?context=docs:footer"},{"label":"Partners and integrations","href":"https://getstell.com/partners"},{"label":"Support","href":"mailto:hello@getstell.com"}]}]},"seo":{"metatags":{"canonical":"https://docs.getstell.com","og:site_name":"Stell Docs","twitter:card":"summary_large_image"},"organization":{"id":"https://getstell.com/#organization","name":"Stell","legalName":"Stell Tech AS","url":"https://getstell.com","logo":"https://getstell.com/brand/stell-wordmark-navy.svg","sameAs":["https://www.linkedin.com/company/stell-tech-as/","https://www.youtube.com/@getstell","https://github.com/Stell-Tech"]}},"contextual":{"options":["copy","view","claude","chatgpt","download-spec"],"display":"header"},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"stell","hasAudioNarration":false,"actualSubdomain":"stell","customDomains":["docs.getstell.com"],"gitSource":{"type":"github","owner":"stell-tech","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"feedback":{"thumbs":true},"entitlements":{"AI_CHAT":{"status":"DISABLED"}},"buildId":"6aea58a7dfbaebaa6b1d3912","clientVersion":"0.0.4117","searchFilterCounts":[{"language":"default","tag":"API reference","count":64},{"language":"default","tag":"Merchant portal","count":20},{"language":"default","tag":"Passes","count":15},{"language":"default","tag":"Launch \u0026 grow","count":13},{"language":"default","tag":"Programs","count":8},{"language":"default","tag":"Pass Templates","count":7},{"language":"default","tag":"Engage","count":6},{"language":"default","tag":"Pass templates","count":6},{"language":"default","tag":"Engagement","count":6},{"language":"default","tag":"Integration guide","count":5}]},"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":"custom-rbac-roles","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":"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":"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":"editor-metadata","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},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":".frame{margin-top:1.75rem;margin-bottom:1.75rem}.task-list-item::before{content:none}.task-list-item{position:relative;margin-left:10px}.task-list-item>input[type=\"checkbox\"]{position:absolute;left:-2px;top:7px;margin:0}"}],"page":{"pagePath":"api-reference/api-keys","slug":"/api-reference/api-keys","pageMetadata":{"title":"Create and rotate Stell API keys","sidebarTitle":"API keys","description":"Create, rotate and revoke API keys in the Stell merchant portal, and keep one key per integration.","href":"/api-reference/api-keys"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Create, rotate and revoke API keys in the Stell merchant portal, and keep one key per integration.\"\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{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,li:`li`,ol:`ol`,p:`p`,strong:`strong`,ul:`ul`,..._provideComponents(),...props.components},{Heading,OptimizedImage,Warning}=_components;if(!Heading)_missingMdxReference(`Heading`,true);if(!OptimizedImage)_missingMdxReference(`OptimizedImage`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`API keys`}),` let your own systems (your CRM, POS, or e-commerce platform) talk to `,_jsx(_components.a,{href:`/api-reference/introduction`,children:`Stell’s API`}),` on your company’s behalf.`]}),`\n`,_jsx(OptimizedImage,{src:`https://mintcdn.com/stell/C_zhUrQoTUQsZ2Th/images/portal/account/api-keys.png?fit=max\u0026auto=format\u0026n=C_zhUrQoTUQsZ2Th\u0026q=85\u0026s=7375b51f48e853822d10330072743a23`,alt:`API keys`,\"data-og-width\":`2880`,width:`2880`,\"data-og-height\":`1800`,height:`1800`,\"data-path\":`images/portal/account/api-keys.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/stell/C_zhUrQoTUQsZ2Th/images/portal/account/api-keys.png?w=280\u0026fit=max\u0026auto=format\u0026n=C_zhUrQoTUQsZ2Th\u0026q=85\u0026s=e6adf8efbfd23c13d189e63537bee993 280w, https://mintcdn.com/stell/C_zhUrQoTUQsZ2Th/images/portal/account/api-keys.png?w=560\u0026fit=max\u0026auto=format\u0026n=C_zhUrQoTUQsZ2Th\u0026q=85\u0026s=9b8b0b6d15cdb48c60e83eec22e8a651 560w, https://mintcdn.com/stell/C_zhUrQoTUQsZ2Th/images/portal/account/api-keys.png?w=840\u0026fit=max\u0026auto=format\u0026n=C_zhUrQoTUQsZ2Th\u0026q=85\u0026s=859177ea8f64f55cee48f0658ca8e0f9 840w, https://mintcdn.com/stell/C_zhUrQoTUQsZ2Th/images/portal/account/api-keys.png?w=1100\u0026fit=max\u0026auto=format\u0026n=C_zhUrQoTUQsZ2Th\u0026q=85\u0026s=0f1618305a6953ed9963fc445b46a9be 1100w, https://mintcdn.com/stell/C_zhUrQoTUQsZ2Th/images/portal/account/api-keys.png?w=1650\u0026fit=max\u0026auto=format\u0026n=C_zhUrQoTUQsZ2Th\u0026q=85\u0026s=7912a6c713b41c535d139fdbb5368193 1650w, https://mintcdn.com/stell/C_zhUrQoTUQsZ2Th/images/portal/account/api-keys.png?w=2500\u0026fit=max\u0026auto=format\u0026n=C_zhUrQoTUQsZ2Th\u0026q=85\u0026s=9b144d92abb3a5462d37afb7dfbf8d94 2500w`}),`\n`,_jsx(Heading,{level:`2`,id:`create-a-key`,children:`Create a key`}),`\n`,_jsxs(_components.ol,{children:[`\n`,_jsxs(_components.li,{children:[`Open `,_jsx(_components.strong,{children:`API Keys`}),` in the sidebar and click `,_jsx(_components.strong,{children:`Create API Key`}),`.`]}),`\n`,_jsxs(_components.li,{children:[`Give it a `,_jsx(_components.strong,{children:`Name`}),` that says what uses it, for example “Production integration”.`]}),`\n`,_jsxs(_components.li,{children:[`Choose `,_jsx(_components.strong,{children:`Expires In`}),`: 30 days, 90 days, 1 year, or Never.`]}),`\n`,_jsxs(_components.li,{children:[`Click `,_jsx(_components.strong,{children:`Create`}),`.`]}),`\n`]}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[`The full key is shown `,_jsx(_components.strong,{children:`only once`}),`, right after creation. Copy it and store it somewhere safe, like a password manager or your secrets vault. Afterwards the portal only shows the last few characters.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`manage-keys`,children:`Manage keys`}),`\n`,_jsxs(_components.p,{children:[`The list shows each key’s status, expiry, creation date, and `,_jsx(_components.strong,{children:`Last Used`}),`, which is handy for spotting keys that are no longer in use. From a key’s menu you can:`]}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Rotate`}),`: replace the key’s secret immediately. The old secret stops working at once, and the new one is shown a single time. Update your applications right away.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Delete`}),`: revoke the key permanently. Applications using it lose access immediately, and this can’t be undone.`]}),`\n`]}),`\n`,_jsxs(_components.p,{children:[`Expired and deleted keys move to the `,_jsx(_components.strong,{children:`Inactive API Keys`}),` section, where they no longer authenticate requests.`]}),`\n`,_jsx(Heading,{level:`2`,id:`good-practice`,children:`Good practice`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`One key per integration: when something needs to be revoked, you only break that one system.`}),`\n`,_jsxs(_components.li,{children:[`Prefer an expiry over `,_jsx(_components.strong,{children:`Never`}),` for keys you can rotate easily.`]}),`\n`,_jsx(_components.li,{children:`Never paste an API key into email, chat, or a support ticket.`}),`\n`]})]})}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":"Create and rotate Stell API keys","sidebarTitle":"API keys","description":"Create, rotate and revoke API keys in the Stell merchant portal, and keep one key per integration.","href":"/api-reference/api-keys"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Create a key","slug":"create-a-key","depth":2,"children":[]},{"title":"Manage keys","slug":"manage-keys","depth":2,"children":[]},{"title":"Good practice","slug":"good-practice","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"stell","siteName":"Stell","title":"Create and rotate Stell API keys - Stell","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-12T16:38:09.263Z","originalFileLocation":"api-reference/api-keys.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=\"Create, rotate and revoke API keys in the Stell merchant portal, and keep one key per integration.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Stell\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/stell/J93C2Sxezv9CfvWS/_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/stell/J93C2Sxezv9CfvWS/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/stell/J93C2Sxezv9CfvWS/_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/stell/J93C2Sxezv9CfvWS/_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/stell/J93C2Sxezv9CfvWS/_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/stell/J93C2Sxezv9CfvWS/_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/stell/J93C2Sxezv9CfvWS/_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/stell/J93C2Sxezv9CfvWS/_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/stell/J93C2Sxezv9CfvWS/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Create and rotate Stell API keys - Stell\">\u003cmeta data-mint-head property=\"og:description\" content=\"Create, rotate and revoke API keys in the Stell merchant portal, and keep one key per integration.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Stell Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.getstell.com/api-reference/api-keys\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://stell.mintlify.site/_mintlify/api/og/v2?division=Essentials\u0026amp;title=Create+and+rotate+Stell+API+keys\u0026amp;description=Create%2C+rotate+and+revoke+API+keys+in+the+Stell+merchant+portal%2C+and+keep+one+key+per+integration.\u0026amp;theme=d920f5eee51ec1647d160b3e\u0026amp;signature=56a569a48efb1b791f4f1a5d15744d05f28f6fd9e60b247444c6d8e98b9fca1e\">\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=\"Create and rotate Stell API keys - Stell\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Create, rotate and revoke API keys in the Stell merchant portal, and keep one key per integration.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://stell.mintlify.site/_mintlify/api/og/v2?division=Essentials\u0026amp;title=Create+and+rotate+Stell+API+keys\u0026amp;description=Create%2C+rotate+and+revoke+API+keys+in+the+Stell+merchant+portal%2C+and+keep+one+key+per+integration.\u0026amp;theme=d920f5eee51ec1647d160b3e\u0026amp;signature=56a569a48efb1b791f4f1a5d15744d05f28f6fd9e60b247444c6d8e98b9fca1e\">\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/stell/J93C2Sxezv9CfvWS/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Stell\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#16A34A\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.getstell.com/api-reference/api-keys\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/api-keys.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://getstell.com/#organization\",\"name\":\"Stell\",\"legalName\":\"Stell Tech AS\",\"url\":\"https://getstell.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://getstell.com/brand/stell-wordmark-navy.svg\"},\"sameAs\":[\"https://www.linkedin.com/company/stell-tech-as/\",\"https://www.youtube.com/@getstell\",\"https://github.com/Stell-Tech\"]},{\"@type\":\"WebSite\",\"@id\":\"https://docs.getstell.com#website\",\"name\":\"Stell\",\"url\":\"https://docs.getstell.com\",\"publisher\":{\"@id\":\"https://getstell.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.getstell.com/api-reference/api-keys#webpage\",\"url\":\"https://docs.getstell.com/api-reference/api-keys\",\"name\":\"Create and rotate Stell API keys\",\"description\":\"Create, rotate and revoke API keys in the Stell merchant portal, and keep one key per integration.\",\"dateModified\":\"2026-10-12T16:38:09.263Z\",\"isPartOf\":{\"@id\":\"https://docs.getstell.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.getstell.com/api-reference/api-keys#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.getstell.com/api-reference/api-keys#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Essentials\",\"item\":\"https://docs.getstell.com/api-reference/introduction\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Create and rotate Stell API keys\",\"item\":\"https://docs.getstell.com/api-reference/api-keys\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.getstell.com/api-reference/api-keys#article\",\"headline\":\"Create and rotate Stell API keys\",\"name\":\"Create and rotate Stell API keys\",\"description\":\"Create, rotate and revoke API keys in the Stell merchant portal, and keep one key per integration.\",\"url\":\"https://docs.getstell.com/api-reference/api-keys\",\"mainEntityOfPage\":{\"@id\":\"https://docs.getstell.com/api-reference/api-keys#webpage\"},\"dateModified\":\"2026-10-12T16:38:09.263Z\",\"publisher\":{\"@id\":\"https://getstell.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.getstell.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Stell\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"Stell\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/api-reference/api-keys.md","siteName":"Stell","nav":{"global":null,"tabs":[{"tab":"Getting started","pages":[{"title":"Getting started","href":""}]},{"tab":"Merchant portal","pages":[{"title":"Merchant portal","href":"/programs/overview"}]},{"tab":"Launch \u0026 grow","pages":[{"title":"Launch \u0026 grow","href":"/launch-and-grow/overview"}]},{"tab":"API reference","groups":[{"group":"Essentials","pages":[{"title":"Stell API: issue Apple Wallet and Google Wallet passes","sidebarTitle":"Introduction","description":"One REST API to issue, update and void Apple Wallet and Google Wallet passes from your CRM, POS or backend. Base URL, resources and typical integrations.","href":"/api-reference/introduction"},{"title":"Create and rotate Stell API keys","sidebarTitle":"API keys","href":"/api-reference/api-keys"},{"title":"Authenticate with the Stell API","sidebarTitle":"Authentication","description":"Send your Stell API key as a Bearer token: the key format, what a missing or invalid key returns, and why keys stay server-side.","href":"/api-reference/authentication"},{"title":"Stell API errors and status codes","sidebarTitle":"Errors","href":"/api-reference/errors"}]},{"group":"Integration guide","pages":[{"title":"Wallet pass API integration guide","sidebarTitle":"Integration overview","href":"/api-reference/integration/overview"},{"title":"Add to Apple Wallet and Google Wallet from your own site or app","sidebarTitle":"Add to Wallet","href":"/api-reference/integration/add-to-wallet"},{"title":"Update a wallet pass from your backend","sidebarTitle":"Updating a pass","href":"/api-reference/integration/updating-passes"},{"title":"Identify wallet pass holders at the POS: scan or NFC tap","sidebarTitle":"In-store: scan or tap","href":"/api-reference/integration/in-store"},{"title":"Wallet pass webhooks, lifecycle and go-live checklist","sidebarTitle":"Webhooks and go-live","href":"/api-reference/integration/go-live"}]},{"group":"Webhooks","pages":[{"title":"Event webhooks for wallet pass events","sidebarTitle":"Event webhooks","href":"/api-reference/webhooks/overview"},{"title":"Webhook deliveries: payloads, retries and signature verification","sidebarTitle":"Webhook deliveries","href":"/api-reference/webhooks/deliveries"}]},{"group":"Passes","pages":[{"title":"Get pass transactions","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/passes/{passId}/transactions","href":"/api-reference/passes/get-pass-transactions"},{"title":"Get pass details","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/passes/{passId}","href":"/api-reference/passes/get-pass-details"},{"title":"Void pass","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json delete /v1/passes/{passId}","href":"/api-reference/passes/void-pass"},{"title":"Update pass","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json patch /v1/passes/{passId}","href":"/api-reference/passes/update-pass"},{"title":"Generate Google Wallet save link","deprecated":true,"version":null,"openapi":"/api-reference/openapi.json get /v1/passes/{passId}/links/google","href":"/api-reference/passes/generate-google-wallet-save-link"},{"title":"Create pass image upload","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/passes/image-uploads","href":"/api-reference/passes/create-pass-image-upload"},{"title":"List passes","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/passes","href":"/api-reference/passes/list-passes"},{"title":"Create new pass","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/passes","href":"/api-reference/passes/create-new-pass"},{"title":"Generate Apple Wallet installation link","deprecated":true,"version":null,"openapi":"/api-reference/openapi.json get /v1/passes/{passId}/links/apple","href":"/api-reference/passes/generate-apple-wallet-installation-link"},{"title":"Create secure Apple Wallet pass","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/apple/passes/secure","href":"/api-reference/passes/create-secure-apple-wallet-pass"},{"title":"Get pass registrations","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/passes/{passId}/registrations","href":"/api-reference/passes/get-pass-registrations"},{"title":"Batch create passes","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/passes/batch","href":"/api-reference/passes/batch-create-passes"}]},{"group":"Pass Templates","pages":[{"title":"List all pass templates","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/templates","href":"/api-reference/pass-templates/list-all-pass-templates"},{"title":"Get program pass template","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/programs/{programId}/templates/{templateId}","href":"/api-reference/pass-templates/get-program-pass-template"},{"title":"Delete program pass template","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json delete /v1/programs/{programId}/templates/{templateId}","href":"/api-reference/pass-templates/delete-program-pass-template"},{"title":"Update program pass template","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json patch /v1/programs/{programId}/templates/{templateId}","href":"/api-reference/pass-templates/update-program-pass-template"},{"title":"Get pass template details","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/templates/{templateId}","href":"/api-reference/pass-templates/get-pass-template-details"},{"title":"List program pass templates","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/programs/{programId}/templates","href":"/api-reference/pass-templates/list-program-pass-templates"},{"title":"Create program pass template","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/programs/{programId}/templates","href":"/api-reference/pass-templates/create-program-pass-template"}]},{"group":"Engagement","pages":[{"title":"Get pass geofences","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/passes/{passId}/geofences","href":"/api-reference/engagement/get-pass-geofences"},{"title":"Replace all pass geofences","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json put /v1/passes/{passId}/geofences","href":"/api-reference/engagement/replace-all-pass-geofences"},{"title":"Add pass geofence","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/passes/{passId}/geofences","href":"/api-reference/engagement/add-pass-geofence"},{"title":"Delete all pass geofences","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json delete /v1/passes/{passId}/geofences","href":"/api-reference/engagement/delete-all-pass-geofences"},{"title":"Delete pass geofence by ID","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json delete /v1/passes/{passId}/geofences/{geofenceId}","href":"/api-reference/engagement/delete-pass-geofence-by-id"},{"title":"Update pass geofence by ID","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json patch /v1/passes/{passId}/geofences/{geofenceId}","href":"/api-reference/engagement/update-pass-geofence-by-id"}]},{"group":"Programs","pages":[{"title":"Get encryption key","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/programs/{programId}/encryption-key","href":"/api-reference/programs/get-encryption-key"},{"title":"List programs","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/programs","href":"/api-reference/programs/list-programs"},{"title":"Create new program","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/programs","href":"/api-reference/programs/create-new-program"},{"title":"Get program details","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/programs/{programId}","href":"/api-reference/programs/get-program-details"},{"title":"Delete program","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json delete /v1/programs/{programId}","href":"/api-reference/programs/delete-program"},{"title":"Update program","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json patch /v1/programs/{programId}","href":"/api-reference/programs/update-program"}]},{"group":"Companies","pages":[{"title":"List companies","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/companies","href":"/api-reference/companies/list-companies"},{"title":"Get company details","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/companies/{companyId}","href":"/api-reference/companies/get-company-details"}]},{"group":"Stores","pages":[{"title":"List stores","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/stores","href":"/api-reference/stores/list-stores"},{"title":"Create store","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/stores","href":"/api-reference/stores/create-store"},{"title":"Get store details","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/stores/{storeId}","href":"/api-reference/stores/get-store-details"},{"title":"Delete store","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json delete /v1/stores/{storeId}","href":"/api-reference/stores/delete-store"},{"title":"Update store","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json patch /v1/stores/{storeId}","href":"/api-reference/stores/update-store"}]},{"group":"Merchants","pages":[{"title":"List merchants","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/merchants","href":"/api-reference/merchants/list-merchants"},{"title":"Create merchant","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/merchants","href":"/api-reference/merchants/create-merchant"},{"title":"Get merchant details","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/merchants/{merchantId}","href":"/api-reference/merchants/get-merchant-details"},{"title":"Delete merchant","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json delete /v1/merchants/{merchantId}","href":"/api-reference/merchants/delete-merchant"},{"title":"Update merchant","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json patch /v1/merchants/{merchantId}","href":"/api-reference/merchants/update-merchant"}]},{"group":"Terminals","pages":[{"title":"Get terminal details","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/terminals/{terminalId}","href":"/api-reference/terminals/get-terminal-details"},{"title":"Delete terminal","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json delete /v1/terminals/{terminalId}","href":"/api-reference/terminals/delete-terminal"},{"title":"Update terminal","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json patch /v1/terminals/{terminalId}","href":"/api-reference/terminals/update-terminal"},{"title":"List terminals","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/terminals","href":"/api-reference/terminals/list-terminals"},{"title":"Create terminal","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/terminals","href":"/api-reference/terminals/create-terminal"}]},{"group":"System","pages":[{"title":"JSON Web Key Set","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /.well-known/jwks.json","href":"/api-reference/system/json-web-key-set"},{"title":"Health check","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/health","href":"/api-reference/system/health-check"}]},{"group":"Transactions","pages":[{"title":"Get transaction details","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/transactions/{transactionId}","href":"/api-reference/transactions/get-transaction-details"},{"title":"List transactions","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/transactions","href":"/api-reference/transactions/list-transactions"},{"title":"Create transaction","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/transactions","href":"/api-reference/transactions/create-transaction"}]}]}]},"basePath":"","title":"Create and rotate Stell API keys - Stell","buildId":"dpl_41S5Z2jG9QnfDRwN1KZrLdBwj7DM","deploymentId":"dpl_41S5Z2jG9QnfDRwN1KZrLdBwj7DM","dynamics":["a74be98ba7"],"chunks":["zoom-image-lightbox-CMHgNu49.js","lightbox-handle-r17bVUz3.js"]}