Revoked keys are immediately invalidated and cannot be restored.
Create separate API keys for different environments (development, staging, production) and integrations. This makes it easy to rotate keys without affecting other systems.
Use the minimum required role — Don’t use Admin keys when Viewer access is sufficient
Set expiration dates — For temporary integrations, set keys to expire automatically
Rotate keys regularly — Periodically create new keys and revoke old ones
Never commit keys to version control — Use environment variables or secret managers
Monitor usage — Check last_used_at to identify unused keys that should be revoked
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Staminads Documentation","colors":{"primary":"#7763F1","light":"#8B63F1"},"logo":{"light":"https://mintcdn.com/staminads/xmodduBRIzsdtnFQ/logo/logo.svg?fit=max\u0026auto=format\u0026n=xmodduBRIzsdtnFQ\u0026q=85\u0026s=1be6fc9aece1f420d7d7106841235ca0","dark":"https://mintcdn.com/staminads/xmodduBRIzsdtnFQ/logo/logo.svg?fit=max\u0026auto=format\u0026n=xmodduBRIzsdtnFQ\u0026q=85\u0026s=1be6fc9aece1f420d7d7106841235ca0"},"favicon":"/favicon.svg","appearance":{"default":"light","strict":true},"navbar":{"links":[{"label":"Home","href":"https://www.staminads.com/"},{"label":"Support","href":"mailto:hello@staminads.com"},{"label":"Report issue","href":"https://github.com/staminads/staminads/issues"},{"label":"GitHub","href":"https://github.com/staminads/staminads"}]},"footer":{"socials":{}},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"staminads","hasAudioNarration":false,"actualSubdomain":"staminads","customDomains":["docs.staminads.com"],"gitSource":{"type":"github","owner":"pierre-b","repo":"staminads_docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6a20c5e0b7c442096901c48c","collectionId":"14b00cb4-04c0-47d2-9a7c-535f8000b256","schemaVersion":"v2"},"entitlements":{},"buildId":"6a20c5e0b7c442096901c48c:success","clientVersion":"0.0.3971","searchFilterCounts":[{"language":"default","tag":"API Reference","count":23},{"language":"default","tag":"Filters","count":12},{"language":"default","tag":"Documentation","count":10},{"language":"default","tag":"Get Started","count":10},{"language":"default","tag":"Analytics","count":5},{"language":"default","tag":"Workspaces","count":5},{"language":"default","tag":"Export","count":1}]},"assistantConfig":{},"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":"editor-v7-file-tree","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":"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":"pause-universal-search-reconcile","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":"per-site-search-delta","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":"editor-private-page-search","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":"editor-nav-generations","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":"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":"byok-sep-25","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":"editor-agent-model-picker","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","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":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"isAtlas":false,"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"users-api-keys","slug":"/users-api-keys","pageMetadata":{"title":"Users \u0026 API Keys","description":"Manage team access and API credentials for your workspace","sidebarTitle":"Users \u0026 API Keys","icon":"user-lock","iconType":"duotone","href":"/users-api-keys","hidden":false},"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: \"Manage team access and API credentials for your workspace\"\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={code:`code`,li:`li`,ol:`ol`,p:`p`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,..._provideComponents(),...props.components},{Frame,Heading,OptimizedImage,Table,Tip,Warning}=_components;if(!Frame)_missingMdxReference(`Frame`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!OptimizedImage)_missingMdxReference(`OptimizedImage`,true);if(!Table)_missingMdxReference(`Table`,true);if(!Tip)_missingMdxReference(`Tip`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsx(_components.p,{children:`Control who has access to your workspace and manage API keys for programmatic access to your data.`}),`\n`,_jsx(Heading,{level:`2`,id:`team-members`,children:`Team Members`}),`\n`,_jsx(_components.p,{children:`Invite team members to collaborate on your workspace. Each member is assigned a role that determines their permissions.`}),`\n`,_jsx(Frame,{children:_jsx(OptimizedImage,{style:{borderRadius:`0.5rem`},src:`https://mintcdn.com/staminads/E6ClmUvRjKDS4bnY/images/team.png?fit=max\u0026auto=format\u0026n=E6ClmUvRjKDS4bnY\u0026q=85\u0026s=8dafb8688720b1e21797c408bbd53326`,alt:`Team members list`,\"data-og-width\":`1796`,width:`1796`,\"data-og-height\":`1122`,height:`1122`,\"data-path\":`images/team.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/staminads/E6ClmUvRjKDS4bnY/images/team.png?w=280\u0026fit=max\u0026auto=format\u0026n=E6ClmUvRjKDS4bnY\u0026q=85\u0026s=cef2348f45da9b5487b7bd1dd7fc90ea 280w, https://mintcdn.com/staminads/E6ClmUvRjKDS4bnY/images/team.png?w=560\u0026fit=max\u0026auto=format\u0026n=E6ClmUvRjKDS4bnY\u0026q=85\u0026s=37a2e90eda348463ea8a9bbd10f8de65 560w, https://mintcdn.com/staminads/E6ClmUvRjKDS4bnY/images/team.png?w=840\u0026fit=max\u0026auto=format\u0026n=E6ClmUvRjKDS4bnY\u0026q=85\u0026s=c4e6207b9dc2dfe91f4f13bc6fc9b232 840w, https://mintcdn.com/staminads/E6ClmUvRjKDS4bnY/images/team.png?w=1100\u0026fit=max\u0026auto=format\u0026n=E6ClmUvRjKDS4bnY\u0026q=85\u0026s=45b0d4111f985fa6d26dc92cae5d89eb 1100w, https://mintcdn.com/staminads/E6ClmUvRjKDS4bnY/images/team.png?w=1650\u0026fit=max\u0026auto=format\u0026n=E6ClmUvRjKDS4bnY\u0026q=85\u0026s=ec70662f632b0edd865a1224e3859e47 1650w, https://mintcdn.com/staminads/E6ClmUvRjKDS4bnY/images/team.png?w=2500\u0026fit=max\u0026auto=format\u0026n=E6ClmUvRjKDS4bnY\u0026q=85\u0026s=d87c77cd94a71e7732213b00d885e668 2500w`})}),`\n`,_jsx(Heading,{level:`3`,id:`roles`,children:`Roles`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Role`}),_jsx(_components.th,{children:`Description`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Owner`})}),_jsx(_components.td,{children:`Full control including billing and workspace deletion. Cannot be assigned via invitation.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Admin`})}),_jsx(_components.td,{children:`Manage members, settings, filters, and view all analytics`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Editor`})}),_jsx(_components.td,{children:`Create and edit filters, annotations, and view analytics`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Viewer`})}),_jsx(_components.td,{children:`Read-only access to reports and analytics`})]})]})]}),`\n`,_jsx(Heading,{level:`3`,id:`inviting-members`,children:`Inviting Members`}),`\n`,_jsxs(_components.ol,{children:[`\n`,_jsxs(_components.li,{children:[`Navigate to `,_jsx(_components.strong,{children:`Settings > Team`})]}),`\n`,_jsxs(_components.li,{children:[`Click `,_jsx(_components.strong,{children:`Invite Member`})]}),`\n`,_jsx(_components.li,{children:`Enter the email address and select a role`}),`\n`,_jsx(_components.li,{children:`The invitee receives an email with a link to join`}),`\n`]}),`\n`,_jsx(Frame,{children:_jsx(OptimizedImage,{style:{borderRadius:`0.5rem`},src:`https://mintcdn.com/staminads/E6ClmUvRjKDS4bnY/images/invite_user.png?fit=max\u0026auto=format\u0026n=E6ClmUvRjKDS4bnY\u0026q=85\u0026s=f2275e6a799e5a3380b5f85a888dfa4e`,alt:`Invite member form`,\"data-og-width\":`1294`,width:`1294`,\"data-og-height\":`812`,height:`812`,\"data-path\":`images/invite_user.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/staminads/E6ClmUvRjKDS4bnY/images/invite_user.png?w=280\u0026fit=max\u0026auto=format\u0026n=E6ClmUvRjKDS4bnY\u0026q=85\u0026s=6c43ff80d088331d71cd311c8d6f0b10 280w, https://mintcdn.com/staminads/E6ClmUvRjKDS4bnY/images/invite_user.png?w=560\u0026fit=max\u0026auto=format\u0026n=E6ClmUvRjKDS4bnY\u0026q=85\u0026s=7060c61e7d65f08d287e2aecd1f2aa74 560w, https://mintcdn.com/staminads/E6ClmUvRjKDS4bnY/images/invite_user.png?w=840\u0026fit=max\u0026auto=format\u0026n=E6ClmUvRjKDS4bnY\u0026q=85\u0026s=2938a8636caae8d592572820f1d3a117 840w, https://mintcdn.com/staminads/E6ClmUvRjKDS4bnY/images/invite_user.png?w=1100\u0026fit=max\u0026auto=format\u0026n=E6ClmUvRjKDS4bnY\u0026q=85\u0026s=48e9848989ceb6df1ac54bd8ecfe54c1 1100w, https://mintcdn.com/staminads/E6ClmUvRjKDS4bnY/images/invite_user.png?w=1650\u0026fit=max\u0026auto=format\u0026n=E6ClmUvRjKDS4bnY\u0026q=85\u0026s=84a3ad6071b325b408636ff83d101027 1650w, https://mintcdn.com/staminads/E6ClmUvRjKDS4bnY/images/invite_user.png?w=2500\u0026fit=max\u0026auto=format\u0026n=E6ClmUvRjKDS4bnY\u0026q=85\u0026s=3a9a123785b4d4e3f29505b1299d8354 2500w`})}),`\n`,_jsx(_components.p,{children:`Invitations expire after 7 days. You can resend or revoke pending invitations from the Team settings page.`}),`\n`,_jsx(Heading,{level:`2`,id:`api-keys`,children:`API Keys`}),`\n`,_jsx(_components.p,{children:`API keys allow programmatic access to Staminads for sending events, querying analytics, and managing workspace configuration.`}),`\n`,_jsx(Frame,{children:_jsx(OptimizedImage,{style:{borderRadius:`0.5rem`},src:`https://mintcdn.com/staminads/E6ClmUvRjKDS4bnY/images/api_key_form.png?fit=max\u0026auto=format\u0026n=E6ClmUvRjKDS4bnY\u0026q=85\u0026s=518ba8d39051512692c5616c49e0b1ee`,alt:`API keys management`,\"data-og-width\":`1528`,width:`1528`,\"data-og-height\":`1218`,height:`1218`,\"data-path\":`images/api_key_form.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/staminads/E6ClmUvRjKDS4bnY/images/api_key_form.png?w=280\u0026fit=max\u0026auto=format\u0026n=E6ClmUvRjKDS4bnY\u0026q=85\u0026s=8955c3beb2dbc706475ed66da74a950b 280w, https://mintcdn.com/staminads/E6ClmUvRjKDS4bnY/images/api_key_form.png?w=560\u0026fit=max\u0026auto=format\u0026n=E6ClmUvRjKDS4bnY\u0026q=85\u0026s=e6f9664d2497d3d66101ee96169e013c 560w, https://mintcdn.com/staminads/E6ClmUvRjKDS4bnY/images/api_key_form.png?w=840\u0026fit=max\u0026auto=format\u0026n=E6ClmUvRjKDS4bnY\u0026q=85\u0026s=579e173aae20743a2520a4631e3a61d6 840w, https://mintcdn.com/staminads/E6ClmUvRjKDS4bnY/images/api_key_form.png?w=1100\u0026fit=max\u0026auto=format\u0026n=E6ClmUvRjKDS4bnY\u0026q=85\u0026s=1b6809e250d430536c947bb158324190 1100w, https://mintcdn.com/staminads/E6ClmUvRjKDS4bnY/images/api_key_form.png?w=1650\u0026fit=max\u0026auto=format\u0026n=E6ClmUvRjKDS4bnY\u0026q=85\u0026s=4dba8fbded4e312a5e0b9b3b8dcae7f3 1650w, https://mintcdn.com/staminads/E6ClmUvRjKDS4bnY/images/api_key_form.png?w=2500\u0026fit=max\u0026auto=format\u0026n=E6ClmUvRjKDS4bnY\u0026q=85\u0026s=274086839da00227ec06db35f6cfe63a 2500w`})}),`\n`,_jsx(Heading,{level:`3`,id:`creating-an-api-key`,children:`Creating an API Key`}),`\n`,_jsxs(_components.ol,{children:[`\n`,_jsxs(_components.li,{children:[`Navigate to `,_jsx(_components.strong,{children:`Settings > API Keys`})]}),`\n`,_jsxs(_components.li,{children:[`Click `,_jsx(_components.strong,{children:`Create API Key`})]}),`\n`,_jsx(_components.li,{children:`Enter a name and optional description`}),`\n`,_jsx(_components.li,{children:`Select the appropriate role (determines scopes)`}),`\n`,_jsx(_components.li,{children:`Optionally set an expiration date`}),`\n`,_jsx(_components.li,{children:`Copy the key immediately — it won’t be shown again`}),`\n`]}),`\n`,_jsx(Warning,{children:_jsx(_components.p,{children:`API keys are only displayed once at creation. Store them securely. If you lose a key, you’ll need to create a new one.`})}),`\n`,_jsx(Heading,{level:`3`,id:`api-key-roles`,children:`API Key Roles`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Role`}),_jsx(_components.th,{children:`Description`}),_jsx(_components.th,{children:`Use Case`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Admin`})}),_jsx(_components.td,{children:`Full API access`}),_jsx(_components.td,{children:`Backend integrations, automation`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Editor`})}),_jsx(_components.td,{children:`Track events and manage analytics`}),_jsx(_components.td,{children:`SDK integration, data pipelines`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Viewer`})}),_jsx(_components.td,{children:`Read-only analytics access`}),_jsx(_components.td,{children:`Dashboards, reporting tools`})]})]})]}),`\n`,_jsx(Heading,{level:`3`,id:`scopes`,children:`Scopes`}),`\n`,_jsx(_components.p,{children:`Each role grants a specific set of scopes:`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Scope`}),_jsx(_components.th,{children:`Description`}),_jsx(_components.th,{style:{textAlign:`center`},children:`Admin`}),_jsx(_components.th,{style:{textAlign:`center`},children:`Editor`}),_jsx(_components.th,{style:{textAlign:`center`},children:`Viewer`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`events.track`})}),_jsx(_components.td,{children:`Send session and event data via SDK`}),_jsx(_components.td,{style:{textAlign:`center`},children:`✓`}),_jsx(_components.td,{style:{textAlign:`center`},children:`✓`}),_jsx(_components.td,{style:{textAlign:`center`}})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`analytics.view`})}),_jsx(_components.td,{children:`Query analytics data`}),_jsx(_components.td,{style:{textAlign:`center`},children:`✓`}),_jsx(_components.td,{style:{textAlign:`center`},children:`✓`}),_jsx(_components.td,{style:{textAlign:`center`},children:`✓`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`analytics.export`})}),_jsx(_components.td,{children:`Export analytics data`}),_jsx(_components.td,{style:{textAlign:`center`},children:`✓`}),_jsx(_components.td,{style:{textAlign:`center`},children:`✓`}),_jsx(_components.td,{style:{textAlign:`center`}})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`workspace.read`})}),_jsx(_components.td,{children:`Read workspace configuration`}),_jsx(_components.td,{style:{textAlign:`center`},children:`✓`}),_jsx(_components.td,{style:{textAlign:`center`}}),_jsx(_components.td,{style:{textAlign:`center`},children:`✓`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`filters.manage`})}),_jsx(_components.td,{children:`Create and manage filters`}),_jsx(_components.td,{style:{textAlign:`center`},children:`✓`}),_jsx(_components.td,{style:{textAlign:`center`},children:`✓`}),_jsx(_components.td,{style:{textAlign:`center`}})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`annotations.manage`})}),_jsx(_components.td,{children:`Create and manage annotations`}),_jsx(_components.td,{style:{textAlign:`center`},children:`✓`}),_jsx(_components.td,{style:{textAlign:`center`},children:`✓`}),_jsx(_components.td,{style:{textAlign:`center`}})]})]})]}),`\n`,_jsx(Heading,{level:`3`,id:`key-status`,children:`Key Status`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Status`}),_jsx(_components.th,{children:`Description`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Active`})}),_jsx(_components.td,{children:`Key is valid and can be used`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Expired`})}),_jsx(_components.td,{children:`Key has passed its expiration date`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Revoked`})}),_jsx(_components.td,{children:`Key was manually disabled`})]})]})]}),`\n`,_jsx(Heading,{level:`3`,id:`revoking-keys`,children:`Revoking Keys`}),`\n`,_jsx(_components.p,{children:`To revoke an API key:`}),`\n`,_jsxs(_components.ol,{children:[`\n`,_jsxs(_components.li,{children:[`Navigate to `,_jsx(_components.strong,{children:`Settings > API Keys`})]}),`\n`,_jsxs(_components.li,{children:[`Find the key and click `,_jsx(_components.strong,{children:`Revoke`})]}),`\n`,_jsx(_components.li,{children:`Confirm the action`}),`\n`]}),`\n`,_jsx(_components.p,{children:`Revoked keys are immediately invalidated and cannot be restored.`}),`\n`,_jsx(Tip,{children:_jsx(_components.p,{children:`Create separate API keys for different environments (development, staging, production) and integrations. This makes it easy to rotate keys without affecting other systems.`})}),`\n`,_jsx(Heading,{level:`2`,id:`security-best-practices`,children:`Security Best Practices`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Use the minimum required role`}),` — Don’t use Admin keys when Viewer access is sufficient`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Set expiration dates`}),` — For temporary integrations, set keys to expire automatically`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Rotate keys regularly`}),` — Periodically create new keys and revoke old ones`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Never commit keys to version control`}),` — Use environment variables or secret managers`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Monitor usage`}),` — Check `,_jsx(_components.code,{children:`last_used_at`}),` to identify unused keys that should be revoked`]}),`\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":"Users \u0026 API Keys","description":"Manage team access and API credentials for your workspace","sidebarTitle":"Users \u0026 API Keys","icon":"user-lock","iconType":"duotone","href":"/users-api-keys","hidden":false}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Team Members","slug":"team-members","depth":2,"children":[{"title":"Roles","slug":"roles","depth":3,"children":[]},{"title":"Inviting Members","slug":"inviting-members","depth":3,"children":[]}]},{"title":"API Keys","slug":"api-keys","depth":2,"children":[{"title":"Creating an API Key","slug":"creating-an-api-key","depth":3,"children":[]},{"title":"API Key Roles","slug":"api-key-roles","depth":3,"children":[]},{"title":"Scopes","slug":"scopes","depth":3,"children":[]},{"title":"Key Status","slug":"key-status","depth":3,"children":[]},{"title":"Revoking Keys","slug":"revoking-keys","depth":3,"children":[]}]},{"title":"Security Best Practices","slug":"security-best-practices","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"staminads","siteName":"Staminads Documentation","title":"Users \u0026 API Keys - Staminads Documentation","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-01-25T18:56:25.668Z","originalFileLocation":"users-api-keys.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=\"light\";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=\"light\"}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=\"Manage team access and API credentials for your workspace\">\u003cmeta data-mint-head name=\"application-name\" content=\"Staminads Documentation\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/staminads/-FNXJklUnV34uqRV/_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/staminads/-FNXJklUnV34uqRV/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/staminads/-FNXJklUnV34uqRV/_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/staminads/-FNXJklUnV34uqRV/_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/staminads/-FNXJklUnV34uqRV/_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/staminads/-FNXJklUnV34uqRV/_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/staminads/-FNXJklUnV34uqRV/_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/staminads/-FNXJklUnV34uqRV/_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/staminads/-FNXJklUnV34uqRV/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Users \u0026amp; API Keys - Staminads Documentation\">\u003cmeta data-mint-head property=\"og:description\" content=\"Manage team access and API credentials for your workspace\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Staminads Documentation\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.staminads.com/users-api-keys\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://staminads.mintlify.app/_mintlify/api/og/v2?division=Get+Started\u0026amp;title=Users+%26+API+Keys\u0026amp;description=Manage+team+access+and+API+credentials+for+your+workspace\u0026amp;theme=18e24c352bfd0d59ebadc206\u0026amp;signature=7ae4c3b7c9d86c2da6c40f97cbd399f3b86e08028612822fd77b672f30c02569\">\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=\"Users \u0026amp; API Keys - Staminads Documentation\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Manage team access and API credentials for your workspace\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://staminads.mintlify.app/_mintlify/api/og/v2?division=Get+Started\u0026amp;title=Users+%26+API+Keys\u0026amp;description=Manage+team+access+and+API+credentials+for+your+workspace\u0026amp;theme=18e24c352bfd0d59ebadc206\u0026amp;signature=7ae4c3b7c9d86c2da6c40f97cbd399f3b86e08028612822fd77b672f30c02569\">\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/staminads/-FNXJklUnV34uqRV/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Staminads Documentation\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#7763F1\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.staminads.com/users-api-keys\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/users-api-keys.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.staminads.com/#organization\",\"name\":\"Staminads Documentation\",\"url\":\"https://docs.staminads.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/staminads/xmodduBRIzsdtnFQ/logo/logo.svg?fit=max\u0026auto=format\u0026n=xmodduBRIzsdtnFQ\u0026q=85\u0026s=1be6fc9aece1f420d7d7106841235ca0\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.staminads.com#website\",\"name\":\"Staminads Documentation\",\"url\":\"https://docs.staminads.com\",\"publisher\":{\"@id\":\"https://docs.staminads.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.staminads.com/users-api-keys#webpage\",\"url\":\"https://docs.staminads.com/users-api-keys\",\"name\":\"Users \u0026 API Keys\",\"description\":\"Manage team access and API credentials for your workspace\",\"dateModified\":\"2026-01-25T18:56:25.668Z\",\"isPartOf\":{\"@id\":\"https://docs.staminads.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.staminads.com/users-api-keys#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.staminads.com/users-api-keys#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Get Started\",\"item\":\"https://docs.staminads.com/introduction\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Users \u0026 API Keys\",\"item\":\"https://docs.staminads.com/users-api-keys\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.staminads.com/users-api-keys#article\",\"headline\":\"Users \u0026 API Keys\",\"name\":\"Users \u0026 API Keys\",\"description\":\"Manage team access and API credentials for your workspace\",\"url\":\"https://docs.staminads.com/users-api-keys\",\"mainEntityOfPage\":{\"@id\":\"https://docs.staminads.com/users-api-keys#webpage\"},\"dateModified\":\"2026-01-25T18:56:25.668Z\",\"publisher\":{\"@id\":\"https://docs.staminads.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.staminads.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Staminads Documentation\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Staminads Documentation","nav":{"global":null,"tabs":[{"tab":"Documentation","groups":[{"group":"Get Started","pages":[{"title":"Introduction","sidebarTitle":"Introduction","icon":"house","iconType":"duotone","href":"/introduction"},{"title":"Installation","sidebarTitle":"Installation","icon":"server","iconType":"duotone","href":"/installation"},{"title":"Web SDK","sidebarTitle":"Web SDK","icon":"code","iconType":"duotone","href":"/web-sdk"},{"title":"Traffic Categorization","sidebarTitle":"Traffic Categorization","icon":"filter","iconType":"duotone","href":"/traffic-categorization"},{"title":"Metrics \u0026 Dimensions","sidebarTitle":"Metrics \u0026 Dimensions","icon":"cube","iconType":"duotone","href":"/metrics-dimensions"},{"title":"Dashboard","sidebarTitle":"Dashboard","icon":"chart-line","iconType":"duotone","href":"/dashboard"},{"title":"Goals","sidebarTitle":"Goals","icon":"bullseye","iconType":"duotone","href":"/goals"},{"title":"Explore Report","sidebarTitle":"Explore Report","icon":"magnifying-glass-chart","iconType":"duotone","href":"/explore-report"},{"title":"Annotations","description":"Mark significant events on your charts for better context","sidebarTitle":"Annotations","icon":"bookmark","iconType":"duotone","href":"/annotations"},{"title":"Users \u0026 API Keys","sidebarTitle":"Users \u0026 API Keys","icon":"user-lock","iconType":"duotone","href":"/users-api-keys"}]}]},{"tab":"API Reference","pages":[{"title":"API Reference","href":"/api-reference/workspaces/list-workspaces-for-current-user"}]}]},"title":"Users \u0026 API Keys - Staminads Documentation","buildId":"dpl_DFJrtvUi8HS5F9nkooKuDJsuD5BM","deploymentId":"dpl_DFJrtvUi8HS5F9nkooKuDJsuD5BM","dynamics":["07c022d89b","a74be98ba7"],"chunks":["Frame-COGkNuA6.js","DynamicMarkdown-85clUA0i.js","zoom-image-lightbox-BZxD9MAj.js","lightbox-handle-r17bVUz3.js"]}