chainId only tells the service which EAS chain to format the delegated attestation for, so the result could be submitted onchain later. Nothing here touches a blockchain unless you choose to submit the result yourself — the call above just returns a signed result.
What a matching signature proves. Checking the attester address proves the result was signed by a key Astral controls. It does not, on its own, prove the result was produced inside an independently attested TEE enclave: Astral has run the service on real TEE hardware in test deployments but does not currently fund continuous attested operation. Treat the staging signer as “Astral’s staging key,” not as a hardware-attestation guarantee. To evaluate against real TEEs, reach out at contact@astral.global.
All attestations from the staging service are signed by the attester address above. To verify a result came from Astral’s staging environment:
require(attestation.attester == 0x590fdb53ed3f0B52694876d42367192a5336700F, "Not from Astral staging");
const ASTRAL_STAGING_SIGNER = '0x590fdb53ed3f0B52694876d42367192a5336700F';// Verify the EAS attestation's attester field matches
Attestations are signed with the staging key — a different key will be used for production
{"docsConfig":{"$schema":"https://mintlify.com/docs.json","theme":"mint","name":"Astral","colors":{"primary":"#D4A63A","light":"#FEE9B3","dark":"#B8860B"},"favicon":"https://mintcdn.com/astral-6ef288be/AMs8Em6Xa_-M1o4c/favicon.svg?fit=max\u0026auto=format\u0026n=AMs8Em6Xa_-M1o4c\u0026q=85\u0026s=ca99ac026ae4c5583efa32bfafe1e011","logo":{"light":"https://mintcdn.com/astral-6ef288be/AMs8Em6Xa_-M1o4c/logo/light.svg?fit=max\u0026auto=format\u0026n=AMs8Em6Xa_-M1o4c\u0026q=85\u0026s=af922dd848630bf186d72a1188982343","dark":"https://mintcdn.com/astral-6ef288be/AMs8Em6Xa_-M1o4c/logo/dark.svg?fit=max\u0026auto=format\u0026n=AMs8Em6Xa_-M1o4c\u0026q=85\u0026s=f50fd9c665f80ee786dfd8bb96fb267b"},"navbar":{"links":[{"label":"Playground","href":"https://playground.astral.global"},{"label":"GitHub","href":"https://github.com/AstralProtocol"}],"primary":{"type":"button","label":"Get Started","href":"/quickstart"}},"footer":{"socials":{"twitter":"https://twitter.com/AstralProtocol","github":"https://github.com/AstralProtocol","telegram":"https://t.me/+UkTOSXnDcDM5ZTBk"}},"styling":{"latex":true},"navigation":{"global":{"anchors":[{"anchor":"GitHub","href":"https://github.com/AstralProtocol","icon":"github"},{"anchor":"Community","href":"https://t.me/+UkTOSXnDcDM5ZTBk","icon":"telegram"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"astral-6ef288be","hasAudioNarration":false,"actualSubdomain":"astral-6ef288be","customDomains":["docs.astral.global"],"gitSource":{"type":"github","owner":"astralprotocol","repo":"mintlify-docs","deployBranch":"main","contentDirectory":"","isPrivate":false,"mountPath":"","label":""},"entitlements":{},"buildId":"6ae94687b63426c73f1333ac:success","clientVersion":"0.0.4094","searchFilterCounts":[{"language":"default","tag":"Documentation","count":43},{"language":"default","tag":"Core Concepts","count":15},{"language":"default","tag":"API","count":11},{"language":"default","tag":"API Reference","count":11},{"language":"default","tag":"Plugins","count":10},{"language":"default","tag":"SDK","count":10},{"language":"default","tag":"SDK Reference","count":10},{"language":"default","tag":"Resources","count":7},{"language":"default","tag":"Compute API","count":6},{"language":"default","tag":"Location Proofs","count":6}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"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":"comment-mode","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"resources/staging","slug":"/resources/staging","pageMetadata":{"title":"Staging","description":"Test against the staging API on Base Sepolia","href":"/resources/staging"},"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: \"Test against the staging API on Base Sepolia\"\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`,code:`code`,em:`em`,li:`li`,p:`p`,pre:`pre`,span:`span`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,..._provideComponents(),...props.components},{CodeBlock,Heading,Note,Table,Warning}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);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(Heading,{level:`2`,id:`base-url`,children:`Base URL`}),`\n`,_jsx(CodeBlock,{numberOfLines:`2`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`https://staging-api.astral.global`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),`\n`,_jsx(Heading,{level:`2`,id:`endpoints`,children:`Endpoints`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`5`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`5`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Health check`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`curl`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` https://staging-api.astral.global/health`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# API info`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`curl`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` https://staging-api.astral.global/`})]}),`\n`]})})}),`\n`,_jsx(Heading,{level:`2`,id:`configuration`,children:`Configuration`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Setting`}),_jsx(_components.th,{children:`Value`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Chain`}),_jsx(_components.td,{children:`Base Sepolia (84532)`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`EAS Contract`}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`0x4200000000000000000000000000000000000021`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Attester Address`}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`0x590fdb53ed3f0B52694876d42367192a5336700F`})})]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`example-request`,children:`Example Request`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`7`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`7`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`curl`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -X`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` POST`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` https://staging-api.astral.global/compute/v0/distance`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -H`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"Content-Type: application/json\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -d`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` '{`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"chainId\": 84532,`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"from\": {\"type\": \"Point\", \"coordinates\": [-122.4194, 37.7749]},`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"to\": {\"type\": \"Point\", \"coordinates\": [-73.9352, 40.7128]}`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` }'`})}),`\n`]})})}),`\n`,_jsx(Note,{children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`chainId`}),` only tells the service which EAS chain to format the delegated attestation for, so the result `,_jsx(_components.em,{children:`could`}),` be submitted onchain later. Nothing here touches a blockchain unless you choose to submit the result yourself — the call above just returns a signed result.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`verifying-signatures`,children:`Verifying signatures`}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`What a matching signature proves.`}),` Checking the attester address proves the result was signed by a key Astral controls. It does `,_jsx(_components.strong,{children:`not`}),`, on its own, prove the result was produced inside an independently attested TEE enclave: Astral has run the service on real TEE hardware in test deployments but does not currently fund continuous attested operation. Treat the staging signer as “Astral’s staging key,” not as a hardware-attestation guarantee. To evaluate against real TEEs, reach out at `,_jsx(_components.a,{href:`mailto:contact@astral.global`,children:`contact@astral.global`}),`.`]})}),`\n`,_jsx(_components.p,{children:`All attestations from the staging service are signed by the attester address above. To verify a result came from Astral’s staging environment:`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`1`,language:`solidity`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`solidity`,children:_jsxs(_components.code,{language:`solidity`,numberOfLines:`1`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`require`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(attestation.attester `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`==`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:` 0x590fdb53ed3f0B52694876d42367192a5336700F`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Not from Astral staging\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`);`})]}),`\n`]})})}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`2`,language:`typescript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`typescript`,children:_jsxs(_components.code,{language:`typescript`,numberOfLines:`2`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` ASTRAL_STAGING_SIGNER`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` '0x590fdb53ed3f0B52694876d42367192a5336700F'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`// Verify the EAS attestation's attester field matches`})}),`\n`]})})}),`\n`,_jsx(Heading,{level:`2`,id:`notes`,children:`Notes`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`No authentication required`}),`\n`,_jsx(_components.li,{children:`Rate limited to 100 requests/hour per IP`}),`\n`,_jsx(_components.li,{children:`Attestations are signed with the staging key — a different key will be used for production`}),`\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":"Staging","description":"Test against the staging API on Base Sepolia","href":"/resources/staging"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Base URL","slug":"base-url","depth":2,"children":[]},{"title":"Endpoints","slug":"endpoints","depth":2,"children":[]},{"title":"Configuration","slug":"configuration","depth":2,"children":[]},{"title":"Example Request","slug":"example-request","depth":2,"children":[]},{"title":"Verifying signatures","slug":"verifying-signatures","depth":2,"children":[]},{"title":"Notes","slug":"notes","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"astral-6ef288be","siteName":"Astral","title":"Staging - Astral","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-06-05T16:30:02.564Z","originalFileLocation":"resources/staging.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=\"Test against the staging API on Base Sepolia\">\u003cmeta data-mint-head name=\"application-name\" content=\"Astral\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/astral-6ef288be/ORcou-PekiQu0oVO/_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/astral-6ef288be/ORcou-PekiQu0oVO/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/astral-6ef288be/ORcou-PekiQu0oVO/_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/astral-6ef288be/ORcou-PekiQu0oVO/_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/astral-6ef288be/ORcou-PekiQu0oVO/_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/astral-6ef288be/ORcou-PekiQu0oVO/_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/astral-6ef288be/ORcou-PekiQu0oVO/_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/astral-6ef288be/ORcou-PekiQu0oVO/_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/astral-6ef288be/ORcou-PekiQu0oVO/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Staging - Astral\">\u003cmeta data-mint-head property=\"og:description\" content=\"Test against the staging API on Base Sepolia\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Astral\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.astral.global/resources/staging\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://astral-6ef288be.mintlify.site/_mintlify/api/og/v2?division=Resources\u0026amp;title=Staging\u0026amp;description=Test+against+the+staging+API+on+Base+Sepolia\u0026amp;theme=80dba8a50a97936bcf273707\u0026amp;signature=afc2dcacff8c00ec1d20444d12a52baddb0dc5b6f9488f0cba1f4a7aed871b15\">\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=\"Staging - Astral\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Test against the staging API on Base Sepolia\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://astral-6ef288be.mintlify.site/_mintlify/api/og/v2?division=Resources\u0026amp;title=Staging\u0026amp;description=Test+against+the+staging+API+on+Base+Sepolia\u0026amp;theme=80dba8a50a97936bcf273707\u0026amp;signature=afc2dcacff8c00ec1d20444d12a52baddb0dc5b6f9488f0cba1f4a7aed871b15\">\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/astral-6ef288be/ORcou-PekiQu0oVO/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Astral\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#D4A63A\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.astral.global/resources/staging\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/resources/staging.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.astral.global/#organization\",\"name\":\"Astral\",\"url\":\"https://docs.astral.global\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/astral-6ef288be/AMs8Em6Xa_-M1o4c/logo/light.svg?fit=max\u0026auto=format\u0026n=AMs8Em6Xa_-M1o4c\u0026q=85\u0026s=af922dd848630bf186d72a1188982343\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.astral.global#website\",\"name\":\"Astral\",\"url\":\"https://docs.astral.global\",\"publisher\":{\"@id\":\"https://docs.astral.global/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.astral.global/resources/staging#webpage\",\"url\":\"https://docs.astral.global/resources/staging\",\"name\":\"Staging\",\"description\":\"Test against the staging API on Base Sepolia\",\"dateModified\":\"2026-06-05T16:30:02.564Z\",\"isPartOf\":{\"@id\":\"https://docs.astral.global#website\"},\"breadcrumb\":{\"@id\":\"https://docs.astral.global/resources/staging#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.astral.global/resources/staging#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Resources\",\"item\":\"https://docs.astral.global/resources/playground\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Staging\",\"item\":\"https://docs.astral.global/resources/staging\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.astral.global/resources/staging#article\",\"headline\":\"Staging\",\"name\":\"Staging\",\"description\":\"Test against the staging API on Base Sepolia\",\"url\":\"https://docs.astral.global/resources/staging\",\"mainEntityOfPage\":{\"@id\":\"https://docs.astral.global/resources/staging#webpage\"},\"dateModified\":\"2026-06-05T16:30:02.564Z\",\"publisher\":{\"@id\":\"https://docs.astral.global/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.astral.global#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Astral\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Astral","nav":{"global":{"anchors":[{"anchor":"GitHub","href":"https://github.com/AstralProtocol","icon":"github"},{"anchor":"Community","href":"https://t.me/+UkTOSXnDcDM5ZTBk","icon":"telegram"}]},"tabs":[{"tab":"Documentation","groups":[{"group":"Getting Started","pages":[{"title":"Introduction","href":"/introduction"},{"title":"Quickstart","href":"/quickstart"},{"title":"Develop Locally","href":"/agent-quickstart"},{"title":"How It Works","href":"/how-it-works"}]},{"group":"Core Concepts","pages":[{"group":"Location Data","pages":[{"title":"Overview","href":"/concepts/location-data"},{"title":"GeoJSON","href":"/concepts/geojson"},{"title":"Location Records","href":"/concepts/location-records"}]},{"group":"Location Proofs","pages":[{"title":"Overview","href":"/concepts/location-proofs"},{"title":"Proof-of-Location Systems","href":"/concepts/pol-systems"},{"title":"Location Stamps","href":"/concepts/location-stamps"},{"title":"Location Claims","href":"/concepts/location-claims"},{"title":"Composing Location Proofs","href":"/concepts/location-proof-structure"},{"title":"Location Proof Evaluation","href":"/concepts/location-proof-evaluation"}]},{"group":"Geocomputation","pages":[{"title":"Overview","href":"/concepts/geocomputation"},{"title":"Astral Location Services","href":"/concepts/astral-location-services"},{"title":"Verify","href":"/concepts/verify"},{"title":"Compute","href":"/concepts/compute"}]},{"title":"Signed Results","href":"/concepts/signed-results"},{"title":"Privacy","href":"/concepts/privacy"}]},{"group":"Guides","pages":[{"title":"Local Development","href":"/guides/local-development"},{"title":"Calling the API","href":"/guides/calling-the-api"},{"title":"Verifying Location Proofs","href":"/guides/verifying-location-proofs"},{"title":"Agent Integration","href":"/guides/agent-integration"},{"title":"Blockchain Integration","href":"/guides/blockchain-integration"},{"title":"Building Verification Plugins","href":"/guides/building-plugins"}]},{"group":"Use Cases","pages":[{"title":"Delivery Verification","href":"/use-cases/delivery-verification"},{"title":"Parametric Insurance","href":"/use-cases/parametric-insurance"},{"title":"Geofence Compliance","href":"/use-cases/geofence-compliance"},{"title":"Onchain Attestation","href":"/use-cases/onchain-attestation"},{"title":"Local Currency","href":"/guides/geofenced-token"},{"title":"Location-Gated NFT","href":"/guides/location-gated-nft"}]},{"group":"Integrations","pages":[{"title":"ERC-8004 + Astral","href":"/integrations/erc-8004"},{"title":"Openclaw","href":"/integrations/openclaw"}]},{"group":"Trust Model","pages":[{"title":"Architecture","href":"/trust-model/architecture"},{"title":"What Is Verified","href":"/trust-model/what-is-verified"},{"title":"What You Are Trusting","href":"/trust-model/what-you-are-trusting"},{"title":"Security Considerations","href":"/trust-model/security"}]},{"group":"Resources","pages":[{"title":"Playground","description":"Interactive tool for exploring geospatial operations","href":"/resources/playground"},{"title":"Staging","href":"/resources/staging"},{"title":"Schemas","description":"EAS schema definitions for Astral attestations","href":"/resources/schemas"},{"title":"Research","href":"/resources/research"},{"title":"Roadmap","href":"/resources/roadmap"},{"title":"FAQ","href":"/resources/faq"},{"title":"Changelog","href":"/resources/changelog"}]}]},{"tab":"Plugins","pages":[{"title":"Plugins","href":"/plugins/overview"}]},{"tab":"SDK","pages":[{"title":"SDK","href":"/sdk/overview"}]},{"tab":"API","pages":[{"title":"API","href":"/api-reference/overview"}]}]},"basePath":"","title":"Staging - Astral","buildId":"dpl_42LwxxU1kGN114H4XzwGYXa9ZDah","deploymentId":"dpl_42LwxxU1kGN114H4XzwGYXa9ZDah","dynamics":[],"chunks":[]}