A browser origin allowed by the Ornn API’s CORS configuration, or a server-side proxy you control.
Public access means the free-tier /index-history data needs no key for server-to-server requests. It does not allow every website to call the API directly: browser CORS checks reject unlisted origins. Use your own backend for a third-party site, and never embed an API key in browser code.
The direct browser request below works only from an origin configured by Ornn. The dates are computed at runtime to remain inside the trailing 3-month public window:
const BASE = "https://api.ornnai.com";function isoDate(daysAgo) { const value = new Date(); value.setUTCDate(value.getUTCDate() - daysAgo); return value.toISOString().slice(0, 10);}async function getSeries(gpu, startDate, endDate) { const url = new URL(`${BASE}/api/gpu/${encodeURIComponent(gpu)}/index-history`); url.searchParams.set("startDate", startDate); url.searchParams.set("endDate", endDate); const res = await fetch(url); if (!res.ok) throw new Error(`Request failed: ${res.status}`); const { data } = await res.json(); // Sort ascending and shape for a charting library return data .map((p) => ({ x: new Date(p.timestamp), y: p.index_value })) .sort((a, b) => a.x - b.x);}const startDate = isoDate(30);const endDate = isoDate(0);const series = await getSeries("H100 SXM", startDate, endDate);console.log(series[0]); // { x: Date, y: index_value }
The rendered Chart.js line chart: H100 SXM daily price index over a trailing 30-day window.
For authenticated endpoints (analytics, full history), put the Authorization: Bearer request on your server and forward only the data to the browser.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Ornn Data","description":"Ornn Data: GPU, memory, token, and AI-infrastructure market data.\nIndex is free. Premium is $500/month at daily grain. Full is hourly, exports, and the neocloud map.","colors":{"primary":"#000000","light":"#F3F3F3","dark":"#0B0B0C"},"logo":{"light":"https://mintcdn.com/ornn-data/gz5Kba8oSvZullTw/logo-light.png?fit=max\u0026auto=format\u0026n=gz5Kba8oSvZullTw\u0026q=85\u0026s=477a5783c5b43c2ca547bf139a0215a5","dark":"https://mintcdn.com/ornn-data/gz5Kba8oSvZullTw/logo-dark.png?fit=max\u0026auto=format\u0026n=gz5Kba8oSvZullTw\u0026q=85\u0026s=354bb752cd9fc65ee75ad76eab9fdfab","href":"https://ornn.com"},"favicon":"https://mintcdn.com/ornn-data/pALepd9Ryp4e2VgN/favicon.png?fit=max\u0026auto=format\u0026n=pALepd9Ryp4e2VgN\u0026q=85\u0026s=d8c22cdef1c697574d45b9aa47a31685","api":{"examples":{"languages":["curl","python","javascript","php","go","java","ruby"]}},"appearance":{"default":"dark","strict":true},"background":{"color":{"light":"#FFFFFF","dark":"#0B0B0C"}},"navbar":{"links":[{"href":"https://data.ornn.com/publications","label":"Publications"},{"href":"https://trust.ornn.com","label":"Trust Center"}],"primary":{"type":"button","label":"Talk to our team","href":"mailto:data@ornn.com?subject=Talk%20to%20the%20Ornn%20team"}},"footer":{"socials":{"x":"https://x.com/OrnnExchange","linkedin":"https://www.linkedin.com/company/ornn"}},"fonts":{"family":"PP Neue Montreal Regular","weight":400,"source":"assets/fonts/PPNeueMontreal-Regular.woff2","format":"woff2"},"icons":{"library":"lucide"},"styling":{"eyebrows":"breadcrumbs","latex":true},"contextual":{"options":["copy","view","assistant","chatgpt","claude","perplexity","grok","aistudio","devin","windsurf","mcp","add-mcp","cursor","vscode","devin-mcp","download-spec"],"display":"header"},"thumbnails":{"appearance":"dark"},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"ornn-data","hasAudioNarration":false,"actualSubdomain":"ornn-data","customDomains":["data.ornn.com"],"gitSource":{"type":"github","owner":"ornn-ai","repo":"ornn-data","deployBranch":"main","contentDirectory":"docs-site","isPrivate":true,"mountPath":"","label":""},"chroma":{"collectionId":"e9fb72c9-49de-4006-ad56-0082bbe5d2e2","liveDeploymentHistoryId":"6aec9afe58e46bfb54f5eb74","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6aec9afe58e46bfb54f5eb74"},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6aec9afe58e46bfb54f5eb74","clientVersion":"0.0.4067","searchFilterCounts":[{"language":"default","tag":"API Reference","count":34},{"language":"default","tag":"Concepts","count":10},{"language":"default","tag":"Reference","count":6},{"language":"default","tag":"Get Started","count":5},{"language":"default","tag":"Current Prices","count":5},{"language":"default","tag":"Historical Prices","count":5},{"language":"default","tag":"Token Prices","count":5},{"language":"default","tag":"Guides","count":4},{"language":"default","tag":"Analytics","count":3},{"language":"default","tag":"LLM Coding","count":3}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"/docs","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"style.css","href":"/docs/_mintlify/custom/ornn-data/8e2fd509d7f30281/style.css"}],"page":{"pagePath":"chart-javascript","slug":"/chart-javascript","pageMetadata":{"title":"Chart prices in JavaScript","description":"Fetch a GPU price series and render it in the browser.","href":"/chart-javascript"},"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: \"Fetch a GPU price series and render it in the browser.\"\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`,li:`li`,p:`p`,pre:`pre`,span:`span`,ul:`ul`,..._provideComponents(),...props.components},{CodeBlock,Frame,Heading,OptimizedImage,Tip,Warning}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Frame)_missingMdxReference(`Frame`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!OptimizedImage)_missingMdxReference(`OptimizedImage`,true);if(!Tip)_missingMdxReference(`Tip`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsx(_components.p,{children:`This guide fetches an H100 SXM price series and prepares it for a chart in the browser.`}),`\n`,_jsx(Heading,{level:`2`,id:`prerequisites`,children:`Prerequisites`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`A browser origin allowed by the Ornn API’s CORS configuration, or a server-side proxy you control.`}),`\n`]}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[`Public access means the free-tier `,_jsx(_components.a,{href:`/api-reference/historical-prices/get-a-public-daily-series`,children:_jsx(_components.code,{children:`/index-history`})}),` data needs no key for server-to-server requests. It does not allow every website to call the API directly: browser CORS checks reject unlisted origins. Use your own backend for a third-party site, and never embed an API key in browser code.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`fetch-the-series`,children:`Fetch the series`}),`\n`,_jsx(_components.p,{children:`The direct browser request below works only from an origin configured by Ornn. The dates are computed at runtime to remain inside the trailing 3-month public window:`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`27`,language:`javascript`,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:`javascript`,children:_jsxs(_components.code,{language:`javascript`,numberOfLines:`27`,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:` BASE`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"https://api.ornnai.com\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`function`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` isoDate`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:`daysAgo`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`) {`})]}),`\n`,_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:` value`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` new`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` Date`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`();`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` value`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`setUTCDate`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`value`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`getUTCDate`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`() `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`-`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` daysAgo`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`);`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` return`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` value`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`toISOString`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`().`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`slice`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`0`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`10`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`);`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`async`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` function`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` getSeries`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:`gpu`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:`startDate`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:`endDate`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`) {`})]}),`\n`,_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:` url`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` new`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` URL`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:\"`\"}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#569CD6`},children:\"${\"}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:`BASE`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#569CD6`},children:`}`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`/api/gpu/`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#569CD6`},children:\"${\"}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`encodeURIComponent`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`gpu`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#D4D4D4`},children:`)`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#569CD6`},children:`}`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:\"/index-history`\"}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`);`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` url`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`searchParams`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`set`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"startDate\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`startDate`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`);`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` url`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`searchParams`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`set`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"endDate\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`endDate`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`);`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_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:` res`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` await`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` fetch`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`url`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`);`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` if`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` (`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`!`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`res`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`ok`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`) `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`throw`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` new`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` Error`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:\"`Request failed: \"}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#569CD6`},children:\"${\"}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`res`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`status`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#569CD6`},children:`}`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:\"`\"}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`);`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` const`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:`data`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` } `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` await`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` res`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`json`}),_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:` // Sort ascending and shape for a charting library`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` return`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` data`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` .`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`map`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`((`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:`p`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`) `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`=>`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ({ `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`x:`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` new`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` Date`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`p`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`timestamp`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`), `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`y:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` p`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`index_value`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }))`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` .`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`sort`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`((`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:`a`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:`b`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`) `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`=>`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` a`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`x`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` -`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` b`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`x`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`);`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_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:` startDate`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` isoDate`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`30`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`);`})]}),`\n`,_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:` endDate`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` isoDate`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`0`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`);`})]}),`\n`,_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:` series`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` await`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` getSeries`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"H100 SXM\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`startDate`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`endDate`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`);`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`console`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`log`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`series`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`[`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`0`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`]); `}),_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`// { x: Date, y: index_value }`})]}),`\n`]})})}),`\n`,_jsx(Heading,{level:`2`,id:`render-with-chart-js`,children:`Render with Chart.js`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`13`,language:`javascript`,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:`javascript`,children:_jsxs(_components.code,{language:`javascript`,numberOfLines:`13`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` Chart`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` from`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"chart.js/auto\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_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:` points`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` await`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` getSeries`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"H100 SXM\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`startDate`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`endDate`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`);`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`new`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` Chart`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`document`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`getElementById`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"price-chart\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`), {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` type:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"line\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` data:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` datasets:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` [{ `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`label:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"H100 SXM (USD/hr)\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`data:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` points`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }],`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` options:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` scales:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`x:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`type:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"time\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }, `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`y:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`title:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`display:`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` true`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`text:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"USD per hour\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` } } },`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`});`})}),`\n`]})})}),`\n`,_jsxs(Frame,{caption:`The rendered Chart.js line chart: H100 SXM daily price index over a trailing 30-day window.`,children:[_jsx(OptimizedImage,{className:`mint-block dark:mint-hidden`,src:`https://mintcdn.com/ornn-data/XYIc8NRHBiyV90g7/images/h100-price-chart-light.png?fit=max\u0026auto=format\u0026n=XYIc8NRHBiyV90g7\u0026q=85\u0026s=cb32bafe8e026ec84a6956d3709a7a9e`,alt:`H100 SXM price index line chart over a trailing 30-day window`,\"data-og-width\":`1600`,width:`1600`,\"data-og-height\":`720`,height:`720`,\"data-path\":`images/h100-price-chart-light.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/ornn-data/XYIc8NRHBiyV90g7/images/h100-price-chart-light.png?w=280\u0026fit=max\u0026auto=format\u0026n=XYIc8NRHBiyV90g7\u0026q=85\u0026s=eec5984d88c938af0ae8f3eb9848c69c 280w, https://mintcdn.com/ornn-data/XYIc8NRHBiyV90g7/images/h100-price-chart-light.png?w=560\u0026fit=max\u0026auto=format\u0026n=XYIc8NRHBiyV90g7\u0026q=85\u0026s=ef99377682ffe897d075618c735d9de7 560w, https://mintcdn.com/ornn-data/XYIc8NRHBiyV90g7/images/h100-price-chart-light.png?w=840\u0026fit=max\u0026auto=format\u0026n=XYIc8NRHBiyV90g7\u0026q=85\u0026s=d4194adc450df27411cb04cd652710e6 840w, https://mintcdn.com/ornn-data/XYIc8NRHBiyV90g7/images/h100-price-chart-light.png?w=1100\u0026fit=max\u0026auto=format\u0026n=XYIc8NRHBiyV90g7\u0026q=85\u0026s=68d0ce765fe63e63d75e24d6eb05dbab 1100w, https://mintcdn.com/ornn-data/XYIc8NRHBiyV90g7/images/h100-price-chart-light.png?w=1650\u0026fit=max\u0026auto=format\u0026n=XYIc8NRHBiyV90g7\u0026q=85\u0026s=c9ed44ac281742e54af63b47b601f809 1650w, https://mintcdn.com/ornn-data/XYIc8NRHBiyV90g7/images/h100-price-chart-light.png?w=2500\u0026fit=max\u0026auto=format\u0026n=XYIc8NRHBiyV90g7\u0026q=85\u0026s=b2f9d9fe19dc679055ebf5cbb0f6e537 2500w`}),_jsx(OptimizedImage,{className:`mint-hidden dark:mint-block`,src:`https://mintcdn.com/ornn-data/XYIc8NRHBiyV90g7/images/h100-price-chart-dark.png?fit=max\u0026auto=format\u0026n=XYIc8NRHBiyV90g7\u0026q=85\u0026s=8d0ab82f617fe1dbe163fefb29d244c2`,alt:`H100 SXM price index line chart over a trailing 30-day window`,\"data-og-width\":`1600`,width:`1600`,\"data-og-height\":`720`,height:`720`,\"data-path\":`images/h100-price-chart-dark.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/ornn-data/XYIc8NRHBiyV90g7/images/h100-price-chart-dark.png?w=280\u0026fit=max\u0026auto=format\u0026n=XYIc8NRHBiyV90g7\u0026q=85\u0026s=56970eb14ad87c7939235f9705848bc4 280w, https://mintcdn.com/ornn-data/XYIc8NRHBiyV90g7/images/h100-price-chart-dark.png?w=560\u0026fit=max\u0026auto=format\u0026n=XYIc8NRHBiyV90g7\u0026q=85\u0026s=bb1d8134adf6510e3511326582ba9443 560w, https://mintcdn.com/ornn-data/XYIc8NRHBiyV90g7/images/h100-price-chart-dark.png?w=840\u0026fit=max\u0026auto=format\u0026n=XYIc8NRHBiyV90g7\u0026q=85\u0026s=f202e9bfc3737022938de55bdc3a3cc1 840w, https://mintcdn.com/ornn-data/XYIc8NRHBiyV90g7/images/h100-price-chart-dark.png?w=1100\u0026fit=max\u0026auto=format\u0026n=XYIc8NRHBiyV90g7\u0026q=85\u0026s=3776a10fdcf85d4e73e225af52b0ed00 1100w, https://mintcdn.com/ornn-data/XYIc8NRHBiyV90g7/images/h100-price-chart-dark.png?w=1650\u0026fit=max\u0026auto=format\u0026n=XYIc8NRHBiyV90g7\u0026q=85\u0026s=93c2e9f2b95fb156fca59aab12531a6d 1650w, https://mintcdn.com/ornn-data/XYIc8NRHBiyV90g7/images/h100-price-chart-dark.png?w=2500\u0026fit=max\u0026auto=format\u0026n=XYIc8NRHBiyV90g7\u0026q=85\u0026s=ebbdbc8f361d79110569b923e117aa57 2500w`})]}),`\n`,_jsx(Tip,{children:_jsxs(_components.p,{children:[`For authenticated endpoints (analytics, full history), put the `,_jsx(_components.code,{children:`Authorization: Bearer`}),` request on your server and forward only the data to the browser.`]})})]})}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":"Chart prices in JavaScript","description":"Fetch a GPU price series and render it in the browser.","href":"/chart-javascript"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Prerequisites","slug":"prerequisites","depth":2,"children":[]},{"title":"Fetch the series","slug":"fetch-the-series","depth":2,"children":[]},{"title":"Render with Chart.js","slug":"render-with-chart-js","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":["/docs/_mintlify/custom/ornn-data/38a1cac05e624580/copy-page-label.js","/docs/_mintlify/custom/ornn-data/0f843ad695dae46a/toc-hatch.js"],"dynamicCss":".mint-block {\n display: block\n}\n.mint-hidden {\n display: none\n}\n.dark\\:mint-block:is(.dark *) {\n display: block\n}\n.dark\\:mint-hidden:is(.dark *) {\n display: none\n}","subdomain":"ornn-data","siteName":"Ornn Data","title":"Chart prices in JavaScript - Ornn Data","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-08-12T01:10:05.619Z","originalFileLocation":"chart-javascript.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=\"dark\";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=\"dark\"}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=\"Fetch a GPU price series and render it in the browser.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Ornn Data\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/docs/mintlify-assets/_mintlify/favicons/ornn-data/H5TCAFNJqqe5wEDq/_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=\"/docs/mintlify-assets/_mintlify/favicons/ornn-data/H5TCAFNJqqe5wEDq/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/docs/mintlify-assets/_mintlify/favicons/ornn-data/H5TCAFNJqqe5wEDq/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/docs/mintlify-assets/_mintlify/favicons/ornn-data/H5TCAFNJqqe5wEDq/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/docs/mintlify-assets/_mintlify/favicons/ornn-data/H5TCAFNJqqe5wEDq/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/docs/mintlify-assets/_mintlify/favicons/ornn-data/H5TCAFNJqqe5wEDq/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/docs/mintlify-assets/_mintlify/favicons/ornn-data/H5TCAFNJqqe5wEDq/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/docs/mintlify-assets/_mintlify/favicons/ornn-data/H5TCAFNJqqe5wEDq/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/docs/mintlify-assets/_mintlify/favicons/ornn-data/H5TCAFNJqqe5wEDq/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Chart prices in JavaScript - Ornn Data\">\u003cmeta data-mint-head property=\"og:description\" content=\"Fetch a GPU price series and render it in the browser.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Ornn Data\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://data.ornn.com/docs/chart-javascript\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://ornn-data.mintlify.app/_mintlify/api/og/v2?division=Guides\u0026amp;title=Chart+prices+in+JavaScript\u0026amp;description=Fetch+a+GPU+price+series+and+render+it+in+the+browser.\u0026amp;theme=576a915b17b0ae61b60247d7\u0026amp;signature=e8835ca3e714f080f8828a93e83e97dff5b088d3eefb7e3a916536fbb002c52e\">\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=\"Chart prices in JavaScript - Ornn Data\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Fetch a GPU price series and render it in the browser.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://ornn-data.mintlify.app/_mintlify/api/og/v2?division=Guides\u0026amp;title=Chart+prices+in+JavaScript\u0026amp;description=Fetch+a+GPU+price+series+and+render+it+in+the+browser.\u0026amp;theme=576a915b17b0ae61b60247d7\u0026amp;signature=e8835ca3e714f080f8828a93e83e97dff5b088d3eefb7e3a916536fbb002c52e\">\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=\"/docs/mintlify-assets/_mintlify/favicons/ornn-data/H5TCAFNJqqe5wEDq/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Ornn Data\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#000000\">\u003clink data-mint-head rel=\"canonical\" href=\"https://data.ornn.com/docs/chart-javascript\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/docs/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/docs/chart-javascript.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://data.ornn.com/#organization\",\"name\":\"Ornn Data\",\"url\":\"https://data.ornn.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/ornn-data/gz5Kba8oSvZullTw/logo-light.png?fit=max\u0026auto=format\u0026n=gz5Kba8oSvZullTw\u0026q=85\u0026s=477a5783c5b43c2ca547bf139a0215a5\"}},{\"@type\":\"WebSite\",\"@id\":\"https://data.ornn.com/docs#website\",\"name\":\"Ornn Data\",\"url\":\"https://data.ornn.com/docs\",\"publisher\":{\"@id\":\"https://data.ornn.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://data.ornn.com/docs/chart-javascript#webpage\",\"url\":\"https://data.ornn.com/docs/chart-javascript\",\"name\":\"Chart prices in JavaScript\",\"description\":\"Fetch a GPU price series and render it in the browser.\",\"dateModified\":\"2026-08-12T01:10:05.619Z\",\"isPartOf\":{\"@id\":\"https://data.ornn.com/docs#website\"},\"breadcrumb\":{\"@id\":\"https://data.ornn.com/docs/chart-javascript#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://data.ornn.com/docs/chart-javascript#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Guides\",\"item\":\"https://data.ornn.com/docs/pandas-dataframe\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Chart prices in JavaScript\",\"item\":\"https://data.ornn.com/docs/chart-javascript\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://data.ornn.com/docs/chart-javascript#article\",\"headline\":\"Chart prices in JavaScript\",\"name\":\"Chart prices in JavaScript\",\"description\":\"Fetch a GPU price series and render it in the browser.\",\"url\":\"https://data.ornn.com/docs/chart-javascript\",\"mainEntityOfPage\":{\"@id\":\"https://data.ornn.com/docs/chart-javascript#webpage\"},\"dateModified\":\"2026-08-12T01:10:05.619Z\",\"publisher\":{\"@id\":\"https://data.ornn.com/#organization\"},\"isPartOf\":{\"@id\":\"https://data.ornn.com/docs#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Ornn Data\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Ornn Data","nav":{"global":null,"groups":[{"group":"Get Started","pages":[{"title":"Introduction","href":"/introduction"},{"title":"Quickstart","href":"/quickstart"},{"title":"Authentication","href":"/authentication"},{"title":"Access tiers","href":"/access-tiers"},{"title":"Data dictionary","href":"/data-dictionary"}]},{"group":"Concepts","pages":[{"title":"The Price Index","href":"/price-index"},{"title":"Forward Curves","href":"/forward-curves"},{"title":"Memory Price Index","href":"/memory-index"},{"title":"The Token Price Index","href":"/token-price-index"},{"title":"The Token Volume Index","href":"/token-volume-index"},{"title":"The Workload Cost Index","href":"/workload-cost-index"},{"title":"LLM Coding Analytics","href":"/llm-coding-index"},{"title":"Datacenter Sites","href":"/datacenter-map"},{"title":"Power Markets","href":"/power-markets"},{"title":"Analytics","href":"/analytics"}]},{"group":"API Reference","pages":[{"group":"Current Prices","pages":[{"title":"Get current price for one GPU","openapi":"openapi.yaml GET /api/gpu/{gpuName}","href":"/api-reference/current-prices/get-current-price-for-one-gpu"},{"title":"Get latest daily index for all GPUs","openapi":"openapi.yaml GET /api/daily-index/all","href":"/api-reference/current-prices/get-latest-daily-index-for-all-gpus"},{"title":"Get latest daily index for one GPU","openapi":"openapi.yaml GET /api/daily-index","href":"/api-reference/current-prices/get-latest-daily-index-for-one-gpu"},{"title":"Get previous day's daily index","openapi":"openapi.yaml GET /api/daily-index/{gpuName}/previous","href":"/api-reference/current-prices/get-previous-days-daily-index"},{"title":"Get today's daily index","openapi":"openapi.yaml GET /api/day-index","href":"/api-reference/current-prices/get-todays-daily-index"}]},{"group":"Historical Prices","pages":[{"title":"Get index value nearest a timestamp","openapi":"openapi.yaml GET /api/gpu/{gpuName}/history","href":"/api-reference/historical-prices/get-index-value-nearest-a-timestamp"},{"title":"Get a clean daily/hourly series","openapi":"openapi.yaml GET /api/gpu/{gpuName}/history-simple","href":"/api-reference/historical-prices/get-a-clean-dailyhourly-series"},{"title":"Get history rows with metadata","openapi":"openapi.yaml GET /api/gpu/{gpuName}/history-range","href":"/api-reference/historical-prices/get-history-rows-with-metadata"},{"title":"Get a public daily series","openapi":"openapi.yaml GET /api/gpu/{gpuName}/index-history","href":"/api-reference/historical-prices/get-a-public-daily-series"},{"title":"Get the full H100 daily series","openapi":"openapi.yaml GET /api/h100-history","href":"/api-reference/historical-prices/get-the-full-h100-daily-series"}]},{"group":"Analytics","pages":[{"title":"Get annualized price volatility","openapi":"openapi.yaml GET /api/gpu/{gpuName}/volatility","href":"/api-reference/analytics/get-annualized-price-volatility"},{"title":"Get market utilization","openapi":"openapi.yaml GET /api/gpu/{gpuName}/volume-metrics","href":"/api-reference/analytics/get-market-utilization"},{"title":"Get current utilization for all GPUs","openapi":"openapi.yaml GET /api/gpu-utilization","href":"/api-reference/analytics/get-current-utilization-for-all-gpus"}]},{"group":"Memory","pages":[{"title":"Get current memory spot prices","openapi":"openapi.yaml GET /api/memory-index","href":"/api-reference/memory/get-current-memory-spot-prices"},{"title":"List tracked memory types","openapi":"openapi.yaml GET /api/memory-types","href":"/api-reference/memory/list-tracked-memory-types"},{"title":"Get memory price history","openapi":"openapi.yaml GET /api/memory/{memoryType}/history","href":"/api-reference/memory/get-memory-price-history"}]},{"group":"Reference","pages":[{"title":"List supported GPU models","openapi":"openapi.yaml GET /api/gpu-types","href":"/api-reference/reference/list-supported-gpu-models"},{"title":"List free-tier GPU models","openapi":"openapi.yaml GET /api/gpu-types-free","href":"/api-reference/reference/list-free-tier-gpu-models"},{"title":"Health check","openapi":"openapi.yaml GET /health","href":"/api-reference/reference/health-check"}]},{"group":"Token Prices","pages":[{"title":"List tracked OTPI labs","openapi":"openapi.yaml GET /api/token-types","href":"/api-reference/token-prices/list-tracked-otpi-labs"},{"title":"List free-tier OTPI labs","openapi":"openapi.yaml GET /api/token-types-free","href":"/api-reference/token-prices/list-free-tier-otpi-labs"},{"title":"Get the latest token price index by lab","openapi":"openapi.yaml GET /api/otpi","href":"/api-reference/token-prices/get-the-latest-token-price-index-by-lab"},{"title":"Get the hourly token price sample by lab","openapi":"openapi.yaml GET /api/otpi/hourly","href":"/api-reference/token-prices/get-the-hourly-token-price-sample-by-lab"},{"title":"Get the closed and open-source token price indexes","openapi":"openapi.yaml GET /api/otpi/weight-class","href":"/api-reference/token-prices/get-the-closed-and-open-source-token-price-indexes"}]},{"group":"Workload Cost","pages":[{"title":"Get the Workload Cost Index by provider","openapi":"openapi.yaml GET /api/workload","href":"/api-reference/workload-cost/get-the-workload-cost-index-by-provider"}]},{"group":"LLM Coding","pages":[{"title":"List available LLM coding products","openapi":"openapi.yaml GET /api/llm-coding/products","href":"/api-reference/llm-coding/list-available-llm-coding-products"},{"title":"Get the latest value for an LLM coding product","openapi":"openapi.yaml GET /api/llm-coding/index","href":"/api-reference/llm-coding/get-the-latest-value-for-an-llm-coding-product"},{"title":"Get the daily history for an LLM coding product","openapi":"openapi.yaml GET /api/llm-coding/history","href":"/api-reference/llm-coding/get-the-daily-history-for-an-llm-coding-product"}]},{"group":"Forward Curves","pages":[{"title":"Get the published forward curve","openapi":"openapi.yaml GET /api/forward","href":"/api-reference/forward/get-the-forward-curve"}]},{"group":"Token Volume","pages":[{"title":"Get the Token Volume Index by day","openapi":"openapi.yaml GET /api/token-volume","href":"/api-reference/token-volume/get-the-token-volume-index-by-day"}]},{"group":"Model Frontier","pages":[{"title":"Get the Model Frontier dataset","openapi":"openapi.yaml GET /api/model-frontier","href":"/api-reference/model-frontier/get-the-model-frontier-dataset"}]},{"group":"Compute Buyers","pages":[{"title":"List tracked compute buyers","openapi":"openapi.yaml GET /api/compute-buyers","href":"/api-reference/compute-buyers/list-tracked-compute-buyers"}]},{"group":"Neo-Cloud Sites","pages":[{"title":"Query neo-cloud sites by region","openapi":"openapi.yaml GET /api/neocloud/sites","href":"/api-reference/neo-cloud-sites/query-neo-cloud-sites-by-region"},{"title":"Aggregate sites by country or GPU type","openapi":"openapi.yaml GET /api/neocloud/sites/aggregate","href":"/api-reference/neo-cloud-sites/aggregate-sites-by-country-or-gpu-type"}]}]},{"group":"Guides","pages":[{"title":"Pull price history into pandas","description":"Load a GPU price series into a pandas DataFrame and plot it.","href":"/pandas-dataframe"},{"title":"Chart prices in JavaScript","href":"/chart-javascript"},{"title":"Manage API keys","description":"Create, view, and delete your Ornn Data API keys from the dashboard.","href":"/manage-api-keys"},{"title":"Ornn MCP","href":"/mcp-server"}]},{"group":"Reference","pages":[{"title":"Errors \u0026 status codes","href":"/errors"},{"title":"Rate limits","href":"/rate-limits"},{"title":"Supported GPUs \u0026 memory types","href":"/supported-types"}]}]},"basePath":"","title":"Chart prices in JavaScript - Ornn Data","buildId":"dpl_9yaRmq8qi7yyMZn9oEWmKEdYMvGZ","deploymentId":"dpl_9yaRmq8qi7yyMZn9oEWmKEdYMvGZ","dynamics":["07c022d89b","a74be98ba7"],"chunks":["Frame-DcbodgP9.js","DynamicMarkdown-BBrVIqs3.js","zoom-image-lightbox-BB8grMv9.js","lightbox-handle-r17bVUz3.js"]}