For Service Consumers, an API Key is necessary if programmatic access is required. For Node Operators, an API Key with Compute Node permissions is necessary in order to register and operate a Node on Dispersed.
If this is your first sign-in, you’ll see “Authorize Dispersed to use your account?” — click Authorize to proceed. Don’t have an OTOY account? Create one here.
For implementation details and code examples, see Authenticate API Requests. For complete API documentation including all fields and response schemas, see the API Reference.
{"docsConfig":{"theme":"aspen","$schema":"https://mintlify.com/docs.json","name":"Dispersed","colors":{"primary":"#00af80","light":"#00ffbf","dark":"#00af80"},"logo":{"light":"https://mintcdn.com/otoyinc/g5aNJaX2B9DjakwX/images/img/logo-light.svg?fit=max\u0026auto=format\u0026n=g5aNJaX2B9DjakwX\u0026q=85\u0026s=39a6abcaf6a9a982d350d0ecb9e74ce5","dark":"https://mintcdn.com/otoyinc/g5aNJaX2B9DjakwX/images/img/logo-dark.svg?fit=max\u0026auto=format\u0026n=g5aNJaX2B9DjakwX\u0026q=85\u0026s=52d6775955b31e5a7f8bc9d4900e96cb"},"favicon":"https://mintcdn.com/otoyinc/g5aNJaX2B9DjakwX/images/img/favicon-dark.svg?fit=max\u0026auto=format\u0026n=g5aNJaX2B9DjakwX\u0026q=85\u0026s=eb44c1e24acb1e3bf9bc836be7dfb3a0","api":{"openapi":"https://api.dispersed.com/openapi.json"},"navbar":{"primary":{"type":"button","label":"Console","href":"https://console.dispersed.com"}},"footer":{"links":[{"header":"Legal","items":[{"label":"Terms \u0026 Conditions","href":"https://home.otoy.com/terms-and-conditions"},{"label":"Privacy Policy","href":"https://home.otoy.com/privacy-policy"}]}]},"seo":{"indexing":"all"},"contextual":{"options":["copy","view","mcp","cursor","vscode","claude","assistant","chatgpt"],"display":"header"},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"otoyinc","hasAudioNarration":false,"actualSubdomain":"otoyinc","customDomains":[],"gitSource":{"type":"github","owner":"dispersednetwork","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6ae4db1b51c26dd69a8582ee","clientVersion":"0.0.4088","searchFilterCounts":[{"language":"default","tag":"API Reference","count":48},{"language":"default","tag":"Documentation","count":28},{"language":"default","tag":"Node Operators","count":12},{"language":"default","tag":"Job Recipes","count":8},{"language":"default","tag":"Getting started","count":7},{"language":"default","tag":"Service Consumers","count":7},{"language":"default","tag":"Jobs","count":7},{"language":"default","tag":"Rewards","count":5},{"language":"default","tag":"Compute Ledger","count":5},{"language":"default","tag":"Node Registration","count":4}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"api-key","slug":"/api-key","pageMetadata":{"title":"Create API Key","description":null,"href":"/api-key"},"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`,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},{Heading,Note,Table,Warning}=_components;if(!Heading)_missingMdxReference(`Heading`,true);if(!Note)_missingMdxReference(`Note`,true);if(!Table)_missingMdxReference(`Table`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsx(_components.p,{children:`For Service Consumers, an API Key is necessary if programmatic access is required. For Node Operators, an API Key with Compute Node permissions is necessary in order to register and operate a Node on\\xA0Dispersed.`}),`\n`,_jsx(Heading,{level:`2`,id:`create-api-key`,children:`Create API Key`}),`\n`,_jsx(_components.p,{children:`Follow these steps to create an API Key.`}),`\n`,_jsx(Heading,{level:`3`,id:`step-1-sign-in-to-the-console`,children:`Step 1: Sign In to the Console`}),`\n`,_jsxs(_components.ol,{children:[`\n`,_jsxs(_components.li,{children:[`Open your browser and navigate to the `,_jsx(_components.a,{href:`https://console.dispersed.com`,children:`Dispersed Console`})]}),`\n`,_jsxs(_components.li,{children:[`Click `,_jsx(_components.a,{href:`https://account.otoy.com`,children:_jsx(_components.strong,{children:`Sign in with OTOY`})}),`\n`,_jsx(Note,{children:_jsxs(_components.p,{children:[`If this is your first sign-in, you’ll see “Authorize Dispersed to use your account?” — click `,_jsx(_components.strong,{children:`Authorize`}),` to proceed. Don’t have an OTOY account? `,_jsx(_components.a,{href:`https://account.otoy.com/`,children:`Create one here`}),`.`]})}),`\n`]}),`\n`]}),`\n`,_jsx(Heading,{level:`3`,id:`step-2-create-the-api-key`,children:`Step 2: Create the API Key`}),`\n`,_jsxs(_components.ol,{children:[`\n`,_jsxs(_components.li,{children:[`Navigate to `,_jsx(_components.strong,{children:`API Keys`}),` in the sidebar`]}),`\n`,_jsxs(_components.li,{children:[`Click `,_jsx(_components.a,{href:`https://console.dispersed.com/api-keys/create`,children:_jsx(_components.strong,{children:`Create API Key`})})]}),`\n`,_jsx(_components.li,{children:`Configure your key`}),`\n`,_jsxs(_components.li,{children:[`Click `,_jsx(_components.strong,{children:`Create`})]}),`\n`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{style:{textAlign:`left`},children:`Field`}),_jsx(_components.th,{style:{textAlign:`left`},children:`Value`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:_jsx(_components.strong,{children:`Name`})}),_jsx(_components.td,{style:{textAlign:`left`},children:`Something identifiable (e.g., “My RTX5090 Rig”)`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:_jsx(_components.strong,{children:`Preset`})}),_jsxs(_components.td,{style:{textAlign:`left`},children:[`Node Operators: Select `,_jsx(_components.strong,{children:`Compute Node`}),_jsx(`br`,{}),`Service Consumers: Select `,_jsx(_components.strong,{children:`Compute Consumer`})]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:_jsx(_components.strong,{children:`Expiration`})}),_jsx(_components.td,{style:{textAlign:`left`},children:`Optional — leave blank for no expiration`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:_jsx(_components.strong,{children:`Allowed IPs`})}),_jsx(_components.td,{style:{textAlign:`left`},children:`Optional — restrict key usage to an originating IP`})]})]})]}),`\n`,_jsx(Heading,{level:`3`,id:`step-3-save-your-credentials`,children:`Step 3: Save Your Credentials`}),`\n`,_jsx(_components.p,{children:`After creation, you’ll see your API Key details:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`public_key`}),` — starts with `,_jsx(_components.code,{children:`pk_`})]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`secret_key`}),` — starts with `,_jsx(_components.code,{children:`sk_`})]}),`\n`]}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Copy both keys now and store them securely.`}),` The `,_jsx(_components.code,{children:`secret_key`}),` is only shown once and cannot be retrieved later.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`api-reference`,children:`API Reference`}),`\n`,_jsxs(_components.p,{children:[`For implementation details and code examples, see `,_jsx(_components.a,{href:`/service-consumers/service-consumers-authenticate-requests`,children:`Authenticate API Requests`}),`. For complete API documentation including all fields and response schemas, see the API Reference.`]})]})}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 API Key","description":null,"href":"/api-key"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Create API Key","slug":"create-api-key","depth":2,"children":[{"title":"Step 1: Sign In to the Console","slug":"step-1-sign-in-to-the-console","depth":3,"children":[]},{"title":"Step 2: Create the API Key","slug":"step-2-create-the-api-key","depth":3,"children":[]},{"title":"Step 3: Save Your Credentials","slug":"step-3-save-your-credentials","depth":3,"children":[]}]},{"title":"API Reference","slug":"api-reference","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"otoyinc","siteName":"Dispersed","title":"Create API Key - Dispersed","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-29T18:52:24.398Z","originalFileLocation":"api-key.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=\"application-name\" content=\"Dispersed\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/otoyinc/NzGCeRMuwVn67RAK/_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/otoyinc/NzGCeRMuwVn67RAK/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/otoyinc/NzGCeRMuwVn67RAK/_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/otoyinc/NzGCeRMuwVn67RAK/_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/otoyinc/NzGCeRMuwVn67RAK/_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/otoyinc/NzGCeRMuwVn67RAK/_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/otoyinc/NzGCeRMuwVn67RAK/_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/otoyinc/NzGCeRMuwVn67RAK/_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/otoyinc/NzGCeRMuwVn67RAK/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Create API Key - Dispersed\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Dispersed\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://otoyinc.mintlify.app/api-key\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://otoyinc.mintlify.site/_mintlify/api/og/v2?division=API+Key\u0026amp;title=Create+API+Key\u0026amp;theme=95187287236419cc01775639\u0026amp;signature=43ff74b66b58b68a50a4d3898e662f11dc9556bab201b63121cd1789cabee3a4\">\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 API Key - Dispersed\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://otoyinc.mintlify.site/_mintlify/api/og/v2?division=API+Key\u0026amp;title=Create+API+Key\u0026amp;theme=95187287236419cc01775639\u0026amp;signature=43ff74b66b58b68a50a4d3898e662f11dc9556bab201b63121cd1789cabee3a4\">\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/otoyinc/NzGCeRMuwVn67RAK/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Dispersed\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#00af80\">\u003clink data-mint-head rel=\"canonical\" href=\"https://otoyinc.mintlify.app/api-key\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-key.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://otoyinc.mintlify.app/#organization\",\"name\":\"Dispersed\",\"url\":\"https://otoyinc.mintlify.app\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/otoyinc/g5aNJaX2B9DjakwX/images/img/logo-light.svg?fit=max\u0026auto=format\u0026n=g5aNJaX2B9DjakwX\u0026q=85\u0026s=39a6abcaf6a9a982d350d0ecb9e74ce5\"}},{\"@type\":\"WebSite\",\"@id\":\"https://otoyinc.mintlify.app#website\",\"name\":\"Dispersed\",\"url\":\"https://otoyinc.mintlify.app\",\"publisher\":{\"@id\":\"https://otoyinc.mintlify.app/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://otoyinc.mintlify.app/api-key#webpage\",\"url\":\"https://otoyinc.mintlify.app/api-key\",\"name\":\"Create API Key\",\"dateModified\":\"2026-10-29T18:52:24.398Z\",\"isPartOf\":{\"@id\":\"https://otoyinc.mintlify.app#website\"},\"breadcrumb\":{\"@id\":\"https://otoyinc.mintlify.app/api-key#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://otoyinc.mintlify.app/api-key#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Getting started\",\"item\":\"https://otoyinc.mintlify.app/index\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Create API Key\",\"item\":\"https://otoyinc.mintlify.app/api-key\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://otoyinc.mintlify.app/api-key#article\",\"headline\":\"Create API Key\",\"name\":\"Create API Key\",\"url\":\"https://otoyinc.mintlify.app/api-key\",\"mainEntityOfPage\":{\"@id\":\"https://otoyinc.mintlify.app/api-key#webpage\"},\"dateModified\":\"2026-10-29T18:52:24.398Z\",\"publisher\":{\"@id\":\"https://otoyinc.mintlify.app/#organization\"},\"isPartOf\":{\"@id\":\"https://otoyinc.mintlify.app#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Dispersed\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Dispersed","nav":{"global":null,"tabs":[{"tab":"Documentation","groups":[{"group":"Getting started","icon":"rocket","pages":[{"title":"What is Dispersed?","href":""},{"title":"How It Works","href":"/how-it-works"},{"title":"Terminology","href":"/glossary"},{"title":"OTOY Account","description":null,"href":"/otoy-account"},{"group":"API Key","pages":[{"title":"Create API Key","href":"/api-key"},{"title":"Authenticate API Requests","description":"All requests to the Dispersed API require authentication using an API Key with HMAC signature verification. ","href":"/service-consumers/service-consumers-authenticate-requests"}]},{"title":"FAQ","href":"/faq"}]},{"group":"Service Consumers","icon":"diagram-project","pages":[{"title":null,"href":"/service-consumers"},{"title":"Quick Start For Service Consumers","href":"/service-consumers/service-consumers-quick-start-job-recipe"},{"group":"Jobs","pages":[{"title":"Job Types","href":"/service-consumers/job-types"},{"title":"Create a Job","href":"/service-consumers/service-consumers-create-job"},{"title":"Job Monitoring","href":"/service-consumers/job-monitoring"}]},{"title":"Launch Your Instance","href":"/service-consumers/launch-your-instance"},{"title":"Docker images","sidebarTitle":"Docker images","href":"/service-consumers/docker-images"}]},{"group":"Node Operators","icon":"circle-nodes","pages":[{"title":"Overview","href":"/node-operators/basic-requirements"},{"title":"Quickstart For Node Operators","href":"/node-operators/quickstart-for-node-operators"},{"group":"Node Registration","pages":[{"title":"Prequisites","href":"/node-operators/prequisites"},{"title":"Register Your Node","href":"/node-operators/node-operators-register-node"},{"title":"Configuration Options","href":"/node-operators/configuration-options"},{"title":"Docker Storage","href":"/node-operators/docker-storage"}]},{"title":"Node Monitoring","href":"/node-operators/node-monitoring"},{"group":"Rewards","pages":[{"title":"Understanding Rewards","href":"/node-operators/node-operators-understanding-rewards"},{"title":"Rewards Components","href":"/node-operators/rewards-components"},{"title":"Compute Epochs","href":"/node-operators/compute-epochs"},{"title":"The Compound Multiplier","href":"/node-operators/the-compound-multiplier"},{"title":"Monitoring Your Rewards","href":"/node-operators/monitoring-your-rewards"}]}]},{"group":"Reference","icon":"notebook","pages":[{"title":"Troubleshooting","href":"/troubleshooting"},{"title":"Isolated Networks and DMZ","href":"/isolated-networks-or-dmz"}]}]},{"tab":"API Reference","pages":[{"title":"API Reference","href":"/api-reference/account-agreements/list-account-agreements"}]}]},"basePath":"","title":"Create API Key - Dispersed","buildId":"dpl_DTau1J5HqS9UTgVSDwGksstFWtPa","deploymentId":"dpl_DTau1J5HqS9UTgVSDwGksstFWtPa","dynamics":[],"chunks":[]}