{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"OpenRouter | Documentation","colors":{"primary":"#7624F4","light":"#7624F4","dark":"#C8FF00"},"logo":{"light":"https://mintcdn.com/openrouter-d02e98a0/ksNSeB_K7gD-BUDh/assets/logo-v2-light.svg?fit=max\u0026auto=format\u0026n=ksNSeB_K7gD-BUDh\u0026q=85\u0026s=690e45873843519efe02bcbe45795dac","dark":"https://mintcdn.com/openrouter-d02e98a0/ksNSeB_K7gD-BUDh/assets/logo-v2-dark.svg?fit=max\u0026auto=format\u0026n=ksNSeB_K7gD-BUDh\u0026q=85\u0026s=8ba2f49b11cd9839c37dd03c62537ebd","href":"https://openrouter.ai"},"favicon":"https://mintcdn.com/openrouter-d02e98a0/n3IgkjAMQY8SgOLX/assets/favicon-v2.svg?fit=max\u0026auto=format\u0026n=n3IgkjAMQY8SgOLX\u0026q=85\u0026s=f49800815fcadee8a07dcc093051c2de","appearance":{"default":"dark"},"background":{"color":{"light":"#FCFCFE","dark":"#03080A"}},"navbar":{"links":[{"href":"https://openrouter.ai/models","label":"Models"},{"href":"https://openrouter.ai/benchmarks","label":"Benchmarks"},{"href":"https://openrouter.ai/chat","label":"Chat"},{"href":"https://openrouter.ai/rankings","label":"Rankings"},{"href":"https://openrouter.ai/apps","label":"Apps"},{"href":"https://openrouter.ai/ori","label":"Ori"},{"href":"https://openrouter.ai/pricing","label":"Pricing"}],"primary":{"type":"button","label":"Sign In","href":"https://openrouter.ai/sign-in"}},"seo":{"metatags":{"canonical":"https://openrouter.ai/docs"}},"fonts":{"family":"Plus Jakarta Sans","weight":400},"integrations":{"ga4":{"measurementId":"G-R8YZRJS2XN"},"posthog":{"apiKey":"phc_7ToS2jDeWBlMu4n2JoNzoA1FnArdKwFMFoHVnAqQ6O1","apiHost":"https://us.i.posthog.com"}},"contextual":{"options":["copy","view","chatgpt","claude","perplexity"],"display":"header"},"styling":{"latex":true},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"openrouter-d02e98a0","hasAudioNarration":false,"actualSubdomain":"openrouter-d02e98a0","customDomains":["openrouter.ai"],"gitSource":{"_id":"6ad7fa92692c7c940ff17a31","type":"github","owner":"openrouterteam","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":false,"mountPath":"","label":""},"chroma":{"collectionId":"857b68c3-cde9-4c7a-b45f-8477fff63b5c","liveDeploymentHistoryId":"6aecd163852e46238472000d","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6aecd163852e46238472000d"},"feedback":{"contextualFeedback":{"allowEmail":true},"agentFeedback":true,"issues":false,"thumbs":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"REMOVE_BRANDING":{"status":"ENABLED"},"CONTEXTUAL_FEEDBACK":{"status":"ENABLED"},"CODE_SNIPPET_FEEDBACK":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6aed06a81189461718d0f947","clientVersion":"0.0.4071","searchFilterCounts":[{"language":"default","tag":"API Reference","count":303},{"language":"default","tag":"Client SDKs","count":244},{"language":"default","tag":"Docs","count":155},{"language":"default","tag":"Cookbook","count":64},{"language":"default","tag":"Agent SDK","count":42},{"language":"default","tag":"TypeScript SDK","count":40},{"language":"default","tag":"Go SDK","count":39},{"language":"default","tag":"Python SDK","count":39},{"language":"default","tag":"Observability","count":29},{"language":"default","tag":"Features","count":23}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":true,"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}],"starterQuestions":[{"_id":"6ad8ee98f69c2f90c2a8cc12","deploymentId":"6a349898c5627d470e2c2ff7","questionText":"How do I get started using decision models like Jev?","status":"active","generatedBy":"manual","createdAt":"2026-10-21T16:55:52.120Z","updatedAt":"2026-10-21T16:55:52.120Z","__v":0}],"googleFontsInlined":true},"customCss":[{"filePath":"style.css","content":"/* cyrillic-ext */\n@font-face {\n font-family: 'Geist Mono';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/docs/_mintlify/assets/fonts/google/s/geistmono/v6/or3nQ6H-1_WfwkMZI_qYFrodmgPn.woff2) format('woff2');\n unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;\n}\n/* cyrillic */\n@font-face {\n font-family: 'Geist Mono';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/docs/_mintlify/assets/fonts/google/s/geistmono/v6/or3nQ6H-1_WfwkMZI_qYFrMdmgPn.woff2) format('woff2');\n unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;\n}\n/* symbols2 */\n@font-face {\n font-family: 'Geist Mono';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/docs/_mintlify/assets/fonts/google/s/geistmono/v6/or3nQ6H-1_WfwkMZI_qYFg08vz7ehw.woff2) format('woff2');\n unicode-range: U+2000-2001, U+2004-2008, U+200A, U+23B8-23BD, U+2500-259F;\n}\n/* vietnamese */\n@font-face {\n font-family: 'Geist Mono';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/docs/_mintlify/assets/fonts/google/s/geistmono/v6/or3nQ6H-1_WfwkMZI_qYFrgdmgPn.woff2) format('woff2');\n unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;\n}\n/* latin-ext */\n@font-face {\n font-family: 'Geist Mono';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/docs/_mintlify/assets/fonts/google/s/geistmono/v6/or3nQ6H-1_WfwkMZI_qYFrkdmgPn.woff2) format('woff2');\n unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n font-family: 'Geist Mono';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/docs/_mintlify/assets/fonts/google/s/geistmono/v6/or3nQ6H-1_WfwkMZI_qYFrcdmg.woff2) format('woff2');\n unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n/* cyrillic-ext */\n@font-face {\n font-family: 'Geist Mono';\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(/docs/_mintlify/assets/fonts/google/s/geistmono/v6/or3nQ6H-1_WfwkMZI_qYFrodmgPn.woff2) format('woff2');\n unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;\n}\n/* cyrillic */\n@font-face {\n font-family: 'Geist Mono';\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(/docs/_mintlify/assets/fonts/google/s/geistmono/v6/or3nQ6H-1_WfwkMZI_qYFrMdmgPn.woff2) format('woff2');\n unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;\n}\n/* symbols2 */\n@font-face {\n font-family: 'Geist Mono';\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(/docs/_mintlify/assets/fonts/google/s/geistmono/v6/or3nQ6H-1_WfwkMZI_qYFg08vz7ehw.woff2) format('woff2');\n unicode-range: U+2000-2001, U+2004-2008, U+200A, U+23B8-23BD, U+2500-259F;\n}\n/* vietnamese */\n@font-face {\n font-family: 'Geist Mono';\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(/docs/_mintlify/assets/fonts/google/s/geistmono/v6/or3nQ6H-1_WfwkMZI_qYFrgdmgPn.woff2) format('woff2');\n unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;\n}\n/* latin-ext */\n@font-face {\n font-family: 'Geist Mono';\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(/docs/_mintlify/assets/fonts/google/s/geistmono/v6/or3nQ6H-1_WfwkMZI_qYFrkdmgPn.woff2) format('woff2');\n unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n font-family: 'Geist Mono';\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(/docs/_mintlify/assets/fonts/google/s/geistmono/v6/or3nQ6H-1_WfwkMZI_qYFrcdmg.woff2) format('woff2');\n unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n/* cyrillic-ext */\n@font-face {\n font-family: 'Geist Mono';\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(/docs/_mintlify/assets/fonts/google/s/geistmono/v6/or3nQ6H-1_WfwkMZI_qYFrodmgPn.woff2) format('woff2');\n unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;\n}\n/* cyrillic */\n@font-face {\n font-family: 'Geist Mono';\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(/docs/_mintlify/assets/fonts/google/s/geistmono/v6/or3nQ6H-1_WfwkMZI_qYFrMdmgPn.woff2) format('woff2');\n unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;\n}\n/* symbols2 */\n@font-face {\n font-family: 'Geist Mono';\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(/docs/_mintlify/assets/fonts/google/s/geistmono/v6/or3nQ6H-1_WfwkMZI_qYFg08vz7ehw.woff2) format('woff2');\n unicode-range: U+2000-2001, U+2004-2008, U+200A, U+23B8-23BD, U+2500-259F;\n}\n/* vietnamese */\n@font-face {\n font-family: 'Geist Mono';\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(/docs/_mintlify/assets/fonts/google/s/geistmono/v6/or3nQ6H-1_WfwkMZI_qYFrgdmgPn.woff2) format('woff2');\n unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;\n}\n/* latin-ext */\n@font-face {\n font-family: 'Geist Mono';\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(/docs/_mintlify/assets/fonts/google/s/geistmono/v6/or3nQ6H-1_WfwkMZI_qYFrkdmgPn.woff2) format('woff2');\n unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n font-family: 'Geist Mono';\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(/docs/_mintlify/assets/fonts/google/s/geistmono/v6/or3nQ6H-1_WfwkMZI_qYFrcdmg.woff2) format('woff2');\n unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n:root{--inverse: 3 8 10;--inverse-foreground: 252 252 254;--tooltip-background: var(--inverse);--tooltip-foreground: var(--inverse-foreground)}code,pre,pre code,.code-block code,[class*=\"code\"] code{font-family:'Geist Mono', ui-monospace, SFMono-Regular, 'SF Mono', Menlo, Consolas, monospace}::selection{background:rgb(118 36 244 / 0.25)}.dark ::selection,html.dark ::selection{background:rgb(200 255 0 / 0.25);color:inherit}.dark,[data-theme=\"dark\"],html.dark{--primary: 200 255 0;--primary-light: 200 255 0;--primary-dark: 200 255 0;--light-primary: 200 255 0;--primary-foreground: 3 8 10;--inverse: 252 252 254;--inverse-foreground: 3 8 10;--default-border-color: rgb(252 252 254 / 0.14)}#navbar{border-radius:0}#sidebar a[aria-current=\"page\"],nav[aria-label=\"Pages\"] a[aria-current=\"page\"]{border-radius:8px}[data-component-part=\"code-block-root\"]{border-radius:8px}a:not([class]){text-decoration-thickness:1px;text-underline-offset:2px;text-decoration-color:rgb(0 0 0 / 0.4)}a:not([class]):hover{text-decoration-color:currentColor}.dark a:not([class]),html.dark a:not([class]){text-decoration-color:rgb(255 255 255 / 0.4)}.dark a:not([class]):hover,html.dark a:not([class]):hover{text-decoration-color:currentColor}.nav-tag-pill-text{background:transparent!important;color:rgb(0 0 0 / 0.5)!important;border:1px solid rgb(0 0 0 / 0.2)!important}.dark .nav-tag-pill-text,html.dark .nav-tag-pill-text{background:transparent!important;color:rgb(252 252 254 / 0.5)!important;border:1px solid rgb(252 252 254 / 0.2)!important}.nav-logo{height:1.5rem}.dark nav[aria-label=\"Pages\"] button[aria-expanded] svg.transition-transform,html.dark nav[aria-label=\"Pages\"] button[aria-expanded] svg.transition-transform{color:rgb(252 252 254 / 0.627)}.dark nav[aria-label=\"Pages\"] button[aria-expanded]:hover svg.transition-transform,html.dark nav[aria-label=\"Pages\"] button[aria-expanded]:hover svg.transition-transform{color:rgb(252 252 254)}nav[aria-label=\"Pages\"] button[aria-expanded] svg.transition-transform{width:0.625rem;height:0.625rem}[role=\"tooltip\"][data-side],[data-radix-popper-content-wrapper]>div[data-state=\"delayed-open\"],[data-radix-popper-content-wrapper]>div[data-state=\"instant-open\"]{background-color:rgb(var(--tooltip-background))!important;color:rgb(var(--tooltip-foreground))!important}.callout [data-component-part=\"callout-content\"]>.code-block:first-child{margin-top:0}.callout [data-component-part=\"callout-content\"]>.code-block:last-child{margin-bottom:0}[data-floating-buttons] button{background-color:rgb(241 239 245)}.dark [data-floating-buttons] button,html.dark [data-floating-buttons] button{background-color:rgb(40 38 44)}[data-component-part=\"update-tag\"]{border:1px solid rgb(0 0 0 / 0.2);border-radius:9999px;padding:0.125rem 0.625rem;font-size:0.75rem;line-height:1.25rem;color:rgb(0 0 0 / 0.6)}.dark [data-component-part=\"update-tag\"],html.dark [data-component-part=\"update-tag\"]{border-color:rgb(252 252 254 / 0.2);color:rgb(252 252 254 / 0.6)}#topbar-cta-button svg{display:none}#topbar-cta-button a{padding-right:0.75rem}#topbar-cta-button .bg-primary-dark{background-color:rgb(var(--primary))}.dark #topbar-cta-button .text-white,html.dark #topbar-cta-button .text-white{color:rgb(3 8 10)}.dark #changelog-filters-content button.bg-primary,html.dark #changelog-filters-content button.bg-primary{color:rgb(3 8 10 / 0.9)!important}.changelog-status-badge{margin-left:0.5rem}.changelog-status-badge[data-color=\"gray\"]{border:1px solid rgb(3 8 10 / 0.3)!important}.dark .changelog-status-badge[data-color=\"gray\"],html.dark .changelog-status-badge[data-color=\"gray\"]{border-color:rgb(252 252 254 / 0.4)!important}.mermaid>svg{margin-inline:auto}.support-matrix table{font-size:0.8125rem}.support-matrix td,.support-matrix th{min-width:0;padding-right:0.5rem;white-space:nowrap}.support-matrix th code{padding-left:0.25rem;padding-right:0.25rem;font-size:0.6875rem}.pr-fig,.pr-mini{--pr-ink: #03080a;--pr-muted: rgb(3 8 10 / 0.69);--pr-rule: rgb(3 8 10 / 0.12);--pr-surface: #ffffff;--pr-positive-text: #007544;--pr-negative-text: #bf0024}.dark .pr-fig,.dark .pr-mini{--pr-ink: #fcfcfe;--pr-muted: rgb(252 252 254 / 0.627);--pr-rule: rgb(252 252 254 / 0.14);--pr-surface: #080d0f;--pr-positive-text: #34dfaa;--pr-negative-text: #ff2d55}.pr-fig{margin:1.5rem 0;padding:1rem;overflow-x:auto;container-type:inline-size;border:1px solid var(--pr-rule);border-radius:8px;background:var(--pr-surface)}.pr-fig svg{display:block;width:100%;height:auto}.pr-mini{margin:1rem 0 1.25rem}.pr-mini svg{display:block;max-width:100%;height:auto;margin-inline:auto}.pr-fig svg text,.pr-mini svg text{font-family:inherit;font-size:12px;fill:var(--pr-muted)}.pr-sw{display:inline-block;flex:none;width:12px;height:12px;border-radius:2px}.pr-bg-price{background:#0088fe}.pr-bg-ttft{background:#ffbb28}.pr-bg-speed{background:#7b68ee}.pr-bg-rel{background:#ff2d55}.pr-bg-429{background:#ff8042}.pr-bg-received{background:var(--pr-ink)}.pr-bg-capacity{background:rgb(var(--gray-400))}.pr-fill-ttft{fill:#ffbb28}.pr-fill-speed{fill:#7b68ee}.pr-fill-rel{fill:#ff2d55}.pr-fill-429{fill:#ff8042}.pr-fig .lbl{font-size:13px;fill:var(--pr-ink)}.pr-fig .num{fill:var(--pr-muted);font-variant-numeric:tabular-nums}.pr-fig .strong{fill:var(--pr-ink);font-weight:600}.pr-fig .halo{paint-order:stroke;stroke:var(--pr-surface);stroke-width:4px;stroke-linejoin:round}.pr-fig .axis{stroke:var(--pr-rule);stroke-width:1}.pr-fig .zone{fill:rgb(0 191 111 / 0.12)}.pr-fig .zone-lbl{font-weight:600;fill:var(--pr-positive-text)}.pr-fig .zone-lbl.muted{fill:var(--pr-muted)}.pr-fig .edge{stroke:#00bf6f;stroke-width:1.5;stroke-dasharray:4 3}.pr-fig .edge-curve{fill:none;stroke:#00bf6f;stroke-width:2;stroke-dasharray:5 3}.pr-fig .curve{fill:none;stroke:var(--pr-ink);stroke-width:2.5}.pr-fig .curve-fill{fill:var(--pr-ink);opacity:0.04}.pr-fig .dot{fill:var(--pr-muted);fill-opacity:0.8;stroke:var(--pr-surface);stroke-width:1.5}.pr-fig .dot-in{fill:#00bf6f;stroke:var(--pr-surface);stroke-width:1.5}.pr-fig .got{fill:none;stroke:var(--pr-ink);stroke-width:2}.pr-fig .got-fill{fill:var(--pr-ink);opacity:0.06}.pr-fig .cap{fill:none;stroke:#da70d6;stroke-width:2.5}.pr-fig .real{fill:none;stroke:var(--pr-muted);stroke-width:1.5;stroke-dasharray:5 4}.pr-fig .rate{fill:#ff8042}.pr-legend{display:flex;flex-wrap:wrap;justify-content:center;gap:0.375rem 1rem;margin-top:0.75rem;font-size:12px;color:var(--pr-muted)}.pr-legend span{display:inline-flex;align-items:center;gap:0.375rem}.pr-ln{display:inline-block;width:18px;height:0}.pr-ln-cap{border-top:2.5px solid #da70d6}.pr-ln-real{border-top:1.5px dashed var(--pr-muted)}.pr-table{margin-top:0.875rem;border-top:1px solid var(--pr-rule);font-size:12px}.pr-row{display:grid;grid-template-columns:76px minmax(0, 1fr) 84px;gap:0.5rem;align-items:center;padding:0.375rem 0;border-bottom:1px solid var(--pr-rule)}.pr-head{color:var(--pr-muted);white-space:nowrap}.pr-sub::before{content:\", \"}.pr-name{font-weight:600;color:var(--pr-ink)}.pr-bar{display:flex;height:10px}.pr-bar i{display:block;height:100%}.pr-share{display:flex;align-items:center;gap:0.375rem}.pr-share i{display:block;height:10px;max-width:54px;border-radius:2px;background:var(--pr-muted);opacity:0.5}.pr-share b{font-weight:600;font-variant-numeric:tabular-nums;color:var(--pr-muted)}@media (max-width: 560px){.pr-row{grid-template-columns:76px minmax(0, 1fr) 32px}.pr-share i{display:none}.pr-head{white-space:normal}.pr-sub{display:block}.pr-sub::before{content:none}}@container (max-width: 480px){.pr-fig svg text{font-size:15px}.pr-fig svg .lbl{font-size:16px}}@container (max-width: 400px){.pr-fig svg text{font-size:17px}.pr-fig svg .lbl{font-size:18px}}.pr-mini-row{display:flex;justify-content:center;align-items:center;gap:0.75rem 1.5rem}.pr-mini-row svg{flex:0 1 auto;min-width:0;margin-inline:0}@media (max-width: 640px){.pr-mini-row{flex-wrap:wrap}}.pr-mini .strong-lbl{fill:var(--pr-ink);font-weight:600}.pr-mini .amt{text-anchor:end;font-variant-numeric:tabular-nums}.pr-mini .op{font-size:20px}.pr-mini .paper{fill:var(--pr-surface);stroke:var(--pr-rule);stroke-width:1}.pr-mini .usual{stroke:var(--pr-muted);stroke-width:1;stroke-dasharray:3 3}.pr-mini .sum-line{stroke:var(--pr-ink);stroke-width:1}.pr-mini .price-pill{fill:#0088fe;opacity:0.12}.pr-mini .pill-text{fill:var(--pr-ink);font-weight:600;font-variant-numeric:tabular-nums}.pr-mini .neg-pill{fill:#ff2d55;opacity:0.12}.pr-mini .neg-text{font-size:13px;fill:var(--pr-negative-text);font-weight:600;font-variant-numeric:tabular-nums}.pr-mini .span-stream{fill:var(--pr-muted);opacity:0.3}.pr-mini .span-total{fill:var(--pr-rule)}.pr-mini .extra{opacity:0.45}.pr-mini .bad{fill:none;stroke:#ff2d55;stroke-width:1.5}.pr-mini .tree{fill:none;stroke:var(--pr-muted);stroke-width:1}.pr-mini .brace{fill:none;stroke:var(--pr-muted);stroke-width:1.25}.pr-mini .big-arrow{fill:none;stroke:var(--pr-ink);stroke-width:3}.pr-mini .big-arrow-head,.pr-mini .user-dot{fill:var(--pr-ink)}.pr-factors ul{list-style:none;padding-left:0}.pr-factors li{padding-left:0!important}.pr-factors li::before{display:none}.pr-factors .pr-sw,h3 .pr-sw{margin-right:0.625rem;transform:translateY(1px)}h3 .pr-sw{width:13px;height:13px;transform:translateY(-2px)}.pr-cols{display:grid;grid-template-columns:repeat(auto-fit, minmax(240px, 1fr));gap:0 1.75rem}"}],"page":{"pagePath":"api/api-reference/endpoints/list-all-endpoints-for-a-model","slug":"/api/api-reference/endpoints/list-all-endpoints-for-a-model","pageMetadata":{"title":"List all endpoints for a model","description":null,"deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /models/{author}/{slug}/endpoints","href":"/api/api-reference/endpoints/list-all-endpoints-for-a-model","autogeneratedByOpenApi":true},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"List all endpoints for a model","description":null,"deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /models/{author}/{slug}/endpoints","href":"/api/api-reference/endpoints/list-all-endpoints-for-a-model","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":["/docs/_mintlify/custom/openrouter-d02e98a0/c1fa764d8c861cbd/anchor-scroll-fix.js","/docs/_mintlify/custom/openrouter-d02e98a0/c43dc2bfe5fa3c92/auth-cta.js"],"openApiReferenceData":{"operation":{"operationId":"listEndpoints","parameters":["b78ae719-790e-47a2-81c6-95a8552a55f4","fa8a1f1d-dc66-45a4-b97f-5008ba2d7023"],"responses":{"200":"42129b91-5cad-4cc1-9ae0-653719b2d457","403":"70aa47bb-0135-4011-a370-e15bb8bd8606","404":"48f84e24-62cf-4c29-8fd3-33e06f5e0c74","500":"279bd826-907e-4584-b2eb-1b27c8f94446","503":"3a1a3a21-8fac-4787-8d1f-a6a843d471d3"},"summary":"List all endpoints for a model","tags":["Endpoints"],"x-speakeasy-name-override":"list","method":"get","type":"path","servers":["7075e944-05e2-4e86-8b6c-ac9eb4ffd9f1"],"security":["34a63711-52b2-4cb6-af7d-25a8d5fc76df"],"path":"/models/{author}/{slug}/endpoints","baseUrlOptions":["https://openrouter.ai/api/v1"],"title":"List all endpoints for a model","description":"","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"b78ae719-790e-47a2-81c6-95a8552a55f4":{"description":"The author/organization of the model","in":"path","name":"author","required":true,"schema":{"description":"The author/organization of the model","example":"openai","type":"string","isRequired":true,"uniqueKey":"","typeLabel":"string"}},"fa8a1f1d-dc66-45a4-b97f-5008ba2d7023":{"description":"The model slug","in":"path","name":"slug","required":true,"schema":{"description":"The model slug","example":"gpt-4","type":"string","isRequired":true,"uniqueKey":"","typeLabel":"string"}}},"responses":{"42129b91-5cad-4cc1-9ae0-653719b2d457":{"content":{"application/json":{"example":{"data":{"architecture":{"input_modalities":["text"],"instruct_type":"chatml","modality":"text->text","output_modalities":["text"],"tokenizer":"GPT"},"created":1692901234,"description":"GPT-4 is a large multimodal model.","endpoints":[],"id":"openai/gpt-4","name":"GPT-4"}},"schema":{"example":{"data":{"architecture":{"input_modalities":["text"],"instruct_type":"chatml","modality":"text->text","output_modalities":["text"],"tokenizer":"GPT"},"created":1692901234,"description":"GPT-4 is a large multimodal model that can solve difficult problems with greater accuracy.","endpoints":[{"context_length":8192,"latency_last_30m":{"p50":0.25,"p75":0.35,"p90":0.48,"p99":0.85},"max_completion_tokens":4096,"max_prompt_tokens":8192,"model_id":"openai/gpt-4","model_name":"GPT-4","name":"OpenAI: GPT-4","native_tools":{},"pricing":{"completion":"0.00006","image":"0","prompt":"0.00003","request":"0"},"provider_name":"OpenAI","quantization":"fp16","status":0,"supported_parameters":["temperature","top_p","max_tokens"],"supports_diarization":false,"supports_implicit_caching":true,"tag":"openai","throughput_last_30m":{"p50":45.2,"p75":38.5,"p90":28.3,"p99":15.1},"uptime_last_1d":99.8,"uptime_last_30m":99.5,"uptime_last_5m":100}],"id":"openai/gpt-4","name":"GPT-4"}},"properties":{"data":{"description":"List of available endpoints for a model","example":{"architecture":{"input_modalities":["text"],"instruct_type":"chatml","modality":"text->text","output_modalities":["text"],"tokenizer":"GPT"},"created":1692901234,"description":"GPT-4 is a large multimodal model that can solve difficult problems with greater accuracy.","endpoints":[{"context_length":8192,"latency_last_30m":{"p50":0.25,"p75":0.35,"p90":0.48,"p99":0.85},"max_completion_tokens":4096,"max_prompt_tokens":8192,"model_id":"openai/gpt-4","model_name":"GPT-4","name":"OpenAI: GPT-4","pricing":{"completion":"0.00006","image":"0","prompt":"0.00003","request":"0"},"provider_name":"OpenAI","quantization":"fp16","status":0,"supported_parameters":["temperature","top_p","max_tokens","frequency_penalty","presence_penalty"],"supports_diarization":false,"supports_implicit_caching":true,"tag":"openai","throughput_last_30m":{"p50":45.2,"p75":38.5,"p90":28.3,"p99":15.1},"uptime_last_1d":99.8,"uptime_last_30m":99.5,"uptime_last_5m":100}],"id":"openai/gpt-4","name":"GPT-4"},"properties":{"architecture":{"type":"object","description":"Model architecture information","required":["tokenizer","instruct_type","modality","input_modalities","output_modalities"],"example":{"input_modalities":["text"],"instruct_type":"chatml","modality":"text->text","output_modalities":["text"],"tokenizer":"GPT"},"properties":{"input_modalities":{"type":"array","items":{"type":"string","enum":["text","image","file","audio","video"],"example":"text","uniqueKey":"data.architecture.input_modalities.items.[INDEX]","typeLabel":"enum\u003cstring>"},"description":"Supported input modalities","isRequired":true,"uniqueKey":"data.architecture.input_modalities","typeLabel":"enum\u003cstring>[]"},"instruct_type":{"oneOf":[{"type":"string","description":"Instruction format type","enum":["none","airoboros","alpaca","alpaca-modif","chatml","claude","code-llama","gemma","llama2","llama3","mistral","nemotron","neural","openchat","phi3","rwkv","vicuna","zephyr","deepseek-r1","deepseek-v3.1","qwq","qwen3",null],"example":"chatml","isRequired":true,"uniqueKey":"data.architecture.instruct_type.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","description":"Instruction format type","enum":["none","airoboros","alpaca","alpaca-modif","chatml","claude","code-llama","gemma","llama2","llama3","mistral","nemotron","neural","openchat","phi3","rwkv","vicuna","zephyr","deepseek-r1","deepseek-v3.1","qwq","qwen3",null],"example":"chatml","isRequired":true,"uniqueKey":"data.architecture.instruct_type.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.architecture.instruct_type","typeLabel":"enum\u003cstring> | null"},"modality":{"oneOf":[{"type":"string","description":"Primary modality of the model","example":"text","isRequired":true,"uniqueKey":"data.architecture.modality.oneOf.0","typeLabel":"string"},{"type":"null","description":"Primary modality of the model","example":"text","isRequired":true,"uniqueKey":"data.architecture.modality.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.architecture.modality","typeLabel":"string | null"},"output_modalities":{"type":"array","items":{"type":"string","enum":["text","image","embeddings","audio","video","rerank","decisions","speech","transcription"],"example":"text","uniqueKey":"data.architecture.output_modalities.items.[INDEX]","typeLabel":"enum\u003cstring>"},"description":"Supported output modalities","isRequired":true,"uniqueKey":"data.architecture.output_modalities","typeLabel":"enum\u003cstring>[]"},"tokenizer":{"type":"string","description":"Tokenizer type used by the model","enum":["Router","Media","Other","GPT","Claude","Gemini","Gemma","Grok","Cohere","Nova","Qwen","Yi","DeepSeek","Mistral","Llama2","Llama3","Llama4","PaLM","RWKV","Qwen3"],"example":"GPT","isRequired":true,"uniqueKey":"data.architecture.tokenizer","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"data.architecture","typeLabel":"object"},"created":{"description":"Unix timestamp of when the model was created","example":1692901234,"type":"integer","isRequired":true,"uniqueKey":"data.created","typeLabel":"integer"},"description":{"description":"Description of the model","example":"GPT-4 is a large multimodal model that can solve difficult problems with greater accuracy.","type":"string","isRequired":true,"uniqueKey":"data.description","typeLabel":"string"},"endpoints":{"description":"List of available endpoints for this model","items":{"description":"Information about a specific model endpoint","example":{"context_length":8192,"latency_last_30m":{"p50":0.25,"p75":0.35,"p90":0.48,"p99":0.85},"max_completion_tokens":4096,"max_prompt_tokens":8192,"model_id":"openai/gpt-4","model_name":"GPT-4","name":"OpenAI: GPT-4","native_tools":{"openrouter:web_search":{"type":"web_search_20260209"}},"perf_last_30m_by_workload":{"text_generation":{"latency":{"p50":250,"p75":350,"p90":480,"p99":850},"request_count":1000,"throughput":{"p50":45.2,"p75":38.5,"p90":28.3,"p99":15.1}}},"pricing":{"completion":"0.00006","image":"0","prompt":"0.00003","request":"0"},"provider_name":"OpenAI","quantization":"fp16","service_tier":null,"status":0,"supported_parameters":["temperature","top_p","max_tokens"],"supports_diarization":false,"supports_image_reference":false,"supports_implicit_caching":true,"supports_multiple_audio_references":false,"supports_tool_choice":{"auto":true,"function":true,"none":true,"required":true},"supports_voice_cloning":false,"tag":"openai","throughput_last_30m":{"p50":45.2,"p75":38.5,"p90":28.3,"p99":15.1},"uptime_last_1d":99.8,"uptime_last_30m":99.5,"uptime_last_5m":100},"properties":{"context_length":{"type":"integer","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].context_length","typeLabel":"integer"},"latency_last_30m":{"oneOf":[{"description":"Latency percentiles in milliseconds over the last 30 minutes. Latency measures time to first token. Only visible when authenticated with an API key or cookie; returns null for unauthenticated requests.","example":{"p50":25.5,"p75":35.2,"p90":48.7,"p99":85.3},"properties":{"p50":{"description":"Median (50th percentile)","example":25.5,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].latency_last_30m.oneOf.0.p50","typeLabel":"number\u003cdouble>"},"p75":{"description":"75th percentile","example":35.2,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].latency_last_30m.oneOf.0.p75","typeLabel":"number\u003cdouble>"},"p90":{"description":"90th percentile","example":48.7,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].latency_last_30m.oneOf.0.p90","typeLabel":"number\u003cdouble>"},"p99":{"description":"99th percentile","example":85.3,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].latency_last_30m.oneOf.0.p99","typeLabel":"number\u003cdouble>"}},"required":["p50","p75","p90","p99"],"type":"object","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].latency_last_30m.oneOf.0","typeLabel":"object"},{"description":"Latency percentiles in milliseconds over the last 30 minutes. Latency measures time to first token. Only visible when authenticated with an API key or cookie; returns null for unauthenticated requests.","example":{"p50":25.5,"p75":35.2,"p90":48.7,"p99":85.3},"properties":{"p50":{"description":"Median (50th percentile)","example":25.5,"format":"double","type":"number"},"p75":{"description":"75th percentile","example":35.2,"format":"double","type":"number"},"p90":{"description":"90th percentile","example":48.7,"format":"double","type":"number"},"p99":{"description":"99th percentile","example":85.3,"format":"double","type":"number"}},"required":["p50","p75","p90","p99"],"type":"null","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].latency_last_30m.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].latency_last_30m","typeLabel":"object | null"},"max_completion_tokens":{"oneOf":[{"description":"Maximum completion tokens for this endpoint. Input and output tokens share the context window, so the effective maximum output for a request is further limited by the context remaining after input tokens.","type":"integer","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].max_completion_tokens.oneOf.0","typeLabel":"integer"},{"description":"Maximum completion tokens for this endpoint. Input and output tokens share the context window, so the effective maximum output for a request is further limited by the context remaining after input tokens.","type":"null","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].max_completion_tokens.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].max_completion_tokens","typeLabel":"integer | null"},"max_prompt_tokens":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].max_prompt_tokens.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].max_prompt_tokens.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].max_prompt_tokens","typeLabel":"integer | null"},"model_id":{"description":"The unique identifier for the model (permaslug)","example":"openai/gpt-4","type":"string","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].model_id","typeLabel":"string"},"model_name":{"type":"string","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].model_name","typeLabel":"string"},"name":{"type":"string","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].name","typeLabel":"string"},"native_tools":{"additionalProperties":{"properties":{"type":{"description":"The provider tool type the request is translated to when this tool runs natively, e.g. `web_search_20260209` on Anthropic or `google_search` on Gemini.","type":"string","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].native_tools.additionalProperties.type","typeLabel":"string"}},"required":["type"],"type":"object","uniqueKey":"data.endpoints.items.[INDEX].native_tools.additionalProperties","typeLabel":"object"},"description":"The server tools this endpoint accepts as the provider's own built-in tool (`engine: \"native\"`) instead of an OpenRouter engine, keyed by canonical `openrouter:*` name. Each value names the provider tool type the request is translated to. Where that tool runs (provider-side, or returned to the client as with Anthropic bash) is documented per tool. Empty when the provider has none.","example":{"openrouter:web_search":{"type":"web_search_20260209"}},"type":"object","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].native_tools","typeLabel":"object"},"pricing":{"properties":{"completion":{"description":"Price in USD per token for completion (output) generation","type":"string","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].pricing.completion","typeLabel":"string"},"prompt":{"description":"Price in USD per token for prompt (input) processing","type":"string","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].pricing.prompt","typeLabel":"string"},"audio":{"description":"Price in USD per audio input token","type":"string","uniqueKey":"data.endpoints.items.[INDEX].pricing.audio","typeLabel":"string"},"audio_output":{"description":"Price in USD per audio output token","type":"string","uniqueKey":"data.endpoints.items.[INDEX].pricing.audio_output","typeLabel":"string"},"discount":{"description":"Fractional discount applied to this endpoint's pricing; the price is multiplied by (1 - discount) (0 = no discount, 1 = free)","format":"double","type":"number","uniqueKey":"data.endpoints.items.[INDEX].pricing.discount","typeLabel":"number\u003cdouble>"},"image":{"description":"Price in USD per input image","type":"string","uniqueKey":"data.endpoints.items.[INDEX].pricing.image","typeLabel":"string"},"image_output":{"description":"Price in USD per output image","type":"string","uniqueKey":"data.endpoints.items.[INDEX].pricing.image_output","typeLabel":"string"},"image_token":{"description":"Price in USD per image token","type":"string","uniqueKey":"data.endpoints.items.[INDEX].pricing.image_token","typeLabel":"string"},"input_audio_cache":{"description":"Price in USD per cached audio input token","type":"string","uniqueKey":"data.endpoints.items.[INDEX].pricing.input_audio_cache","typeLabel":"string"},"input_cache_read":{"description":"Price in USD per cached input token (read)","type":"string","uniqueKey":"data.endpoints.items.[INDEX].pricing.input_cache_read","typeLabel":"string"},"input_cache_write":{"description":"Price per cache-write token, in USD per token. For providers with multiple cache TTLs (e.g. Anthropic), this is the default (5-minute) cache-write rate.","type":"string","uniqueKey":"data.endpoints.items.[INDEX].pricing.input_cache_write","typeLabel":"string"},"input_cache_write_1h":{"description":"Price per 1-hour cache-write token, in USD per token. Only present for providers that price an extended (1-hour) cache TTL separately, such as Anthropic.","type":"string","uniqueKey":"data.endpoints.items.[INDEX].pricing.input_cache_write_1h","typeLabel":"string"},"internal_reasoning":{"description":"Price in USD per internal reasoning token","type":"string","uniqueKey":"data.endpoints.items.[INDEX].pricing.internal_reasoning","typeLabel":"string"},"overrides":{"description":"Conditional overrides of the base pricing (e.g. long-context or time-based pricing). An entry applies when all of its condition fields (e.g. min_prompt_tokens, or the utc_start/utc_end time window) match the request; among applicable entries, later entries win per key; price keys absent from an entry inherit the base price. The top-level pricing keys always reflect the price that applies under default conditions.","items":{"description":"A conditional override of the base pricing. An entry applies only when all of its condition fields (e.g. min_prompt_tokens, or the utc_start/utc_end time window) match the request; among applicable entries, later entries win per price key; price keys absent from an entry inherit the base price.","example":{"completion":"0.00002","min_prompt_tokens":200000,"prompt":"0.000005"},"properties":{"audio":{"description":"Overridden price in USD per audio input token","type":"string","uniqueKey":"data.endpoints.items.[INDEX].pricing.overrides.items.[INDEX].audio","typeLabel":"string"},"completion":{"description":"Overridden price in USD per token for completion (output) generation","type":"string","uniqueKey":"data.endpoints.items.[INDEX].pricing.overrides.items.[INDEX].completion","typeLabel":"string"},"input_audio_cache":{"description":"Overridden price in USD per cached audio input token","type":"string","uniqueKey":"data.endpoints.items.[INDEX].pricing.overrides.items.[INDEX].input_audio_cache","typeLabel":"string"},"input_cache_read":{"description":"Overridden price in USD per cached input token (read)","type":"string","uniqueKey":"data.endpoints.items.[INDEX].pricing.overrides.items.[INDEX].input_cache_read","typeLabel":"string"},"input_cache_write":{"description":"Overridden price in USD per cache-write token","type":"string","uniqueKey":"data.endpoints.items.[INDEX].pricing.overrides.items.[INDEX].input_cache_write","typeLabel":"string"},"input_cache_write_1h":{"description":"Overridden price in USD per 1-hour cache-write token","type":"string","uniqueKey":"data.endpoints.items.[INDEX].pricing.overrides.items.[INDEX].input_cache_write_1h","typeLabel":"string"},"min_prompt_tokens":{"description":"Condition: the entry applies when the total prompt tokens of a request are strictly greater than this threshold","format":"double","type":"number","uniqueKey":"data.endpoints.items.[INDEX].pricing.overrides.items.[INDEX].min_prompt_tokens","typeLabel":"number\u003cdouble>"},"prompt":{"description":"Overridden price in USD per token for prompt (input) processing","type":"string","uniqueKey":"data.endpoints.items.[INDEX].pricing.overrides.items.[INDEX].prompt","typeLabel":"string"},"utc_days":{"description":"Condition: UTC weekdays the entry applies on, evaluated at the request instant. Scopes the utc_start/utc_end window (or, without a window, the whole UTC day) to the listed days. Absent means every day.","items":{"enum":["monday","tuesday","wednesday","thursday","friday","saturday","sunday"],"type":"string","uniqueKey":"data.endpoints.items.[INDEX].pricing.overrides.items.[INDEX].utc_days.items.[INDEX]","typeLabel":"enum\u003cstring>"},"minItems":1,"type":"array","uniqueKey":"data.endpoints.items.[INDEX].pricing.overrides.items.[INDEX].utc_days","typeLabel":"enum\u003cstring>[]"},"utc_end":{"description":"Condition: exclusive end of a daily UTC time window as an HHMM clock number (e.g. 400 = 04:00)","format":"double","type":"number","uniqueKey":"data.endpoints.items.[INDEX].pricing.overrides.items.[INDEX].utc_end","typeLabel":"number\u003cdouble>"},"utc_start":{"description":"Condition: inclusive start of a daily UTC time window as an HHMM clock number (e.g. 100 = 01:00, 1030 = 10:30). The entry applies while the current UTC time is inside the half-open window [utc_start, utc_end), which may wrap past midnight (utc_start > utc_end).","format":"double","type":"number","uniqueKey":"data.endpoints.items.[INDEX].pricing.overrides.items.[INDEX].utc_start","typeLabel":"number\u003cdouble>"}},"type":"object","uniqueKey":"data.endpoints.items.[INDEX].pricing.overrides.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"data.endpoints.items.[INDEX].pricing.overrides","typeLabel":"object[]"},"request":{"description":"Price in USD per request","type":"string","uniqueKey":"data.endpoints.items.[INDEX].pricing.request","typeLabel":"string"},"web_search":{"description":"Price in USD per web search","type":"string","uniqueKey":"data.endpoints.items.[INDEX].pricing.web_search","typeLabel":"string"}},"required":["prompt","completion"],"type":"object","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].pricing","typeLabel":"object"},"provider_name":{"enum":["Modal","AkashML","AI21","AionLabs","Alibaba","Ambient","Ant Digital","Baidu","Amazon Bedrock","Amazon Nova","Anthropic","Arcee AI","AssemblyAI","AtlasCloud","Avian","Azure","BaseTen","BytePlus","Black Forest Labs","Cerebras","Chutes","Cirrascale","Claude Platform on AWS","Clarifai","Cloudflare","Cohere","CoreWeave","Cosine","Crucible","Crusoe","Darkbloom","Databricks","Decart","Deepgram","DeepInfra","DeepSeek","DekaLLM","DigitalOcean","ElevenLabs","Featherless","Fireworks","Fish Audio","Friendli","GMICloud","Google","Google AI Studio","Groq","HeyGen","Inception","Inceptron","InferenceNet","Ionstream","Infermatic","Io Net","Inferact vLLM","Inflection","KT","Liquid","Makora","Mara","Mancer 2","Meta","Minimax","ModelRun","Mistral","Modular","Moonshot AI","Morph","VoyageAI by MongoDB","TypeSafe","Near AI","Nebius","Nex AGI","NextBit","Novita","Nvidia","Ollama","OpenAI","OpenInference","Parallel","Parasail","ParetoAlpha","Particle AI","Pearl Research","Poolside","PrimaLabs","PrimeIntellect","Perceptron","Perplexity","Phala","Recraft","Recursive","Reka","Relace","Respan","River","Sail Research","Sakana AI","SambaNova","ScaleDown","Seed","SiliconFlow","Sourceful","StepFun","Stealth","StreamLake","Switchpoint","Tencent","Tenstorrent","Thinking Machines","Together","Unbiased","Upstage","Venice","Wafer","WandB","Quiver","Krea","Runway","Xiaomi","xAI","Z.AI","FakeProvider"],"example":"OpenAI","type":"string","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].provider_name","typeLabel":"enum\u003cstring>"},"quantization":{"oneOf":[{"type":"string","enum":["int4","int8","fp4","mxfp4","nvfp4","fp6","fp8","mxfp8","fp16","bf16","fp32","unknown"],"example":"fp16","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].quantization.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].quantization.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].quantization","typeLabel":"enum\u003cstring> | null"},"service_tier":{"oneOf":[{"description":"The service tier this endpoint sells, or null for a standard endpoint. The same value whether the provider selects the tier with a request parameter or with a dedicated model id. Always the canonical tier: priority covers the fast request alias and the turbo, highspeed, and prime provider model-id spellings, none of which this field reports.","enum":["flex","priority","ultrafast",null],"example":"priority","type":"string","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].service_tier.oneOf.0","typeLabel":"enum\u003cstring>"},{"description":"The service tier this endpoint sells, or null for a standard endpoint. The same value whether the provider selects the tier with a request parameter or with a dedicated model id. Always the canonical tier: priority covers the fast request alias and the turbo, highspeed, and prime provider model-id spellings, none of which this field reports.","enum":["flex","priority","ultrafast",null],"example":"priority","type":"null","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].service_tier.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].service_tier","typeLabel":"enum\u003cstring> | null"},"supported_parameters":{"items":{"enum":["temperature","top_p","top_k","min_p","top_a","frequency_penalty","presence_penalty","repetition_penalty","max_tokens","max_completion_tokens","logit_bias","logprobs","top_logprobs","prediction","seed","response_format","structured_outputs","stop","tools","tool_choice","parallel_tool_calls","include_reasoning","reasoning","reasoning_effort","web_search_options","verbosity"],"example":"temperature","type":"string","uniqueKey":"data.endpoints.items.[INDEX].supported_parameters.items.[INDEX]","typeLabel":"enum\u003cstring>"},"type":"array","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].supported_parameters","typeLabel":"enum\u003cstring>[]"},"supports_diarization":{"description":"Whether this STT endpoint can label each transcript segment with a speaker (speaker diarization). False when the endpoint has not declared support.","type":"boolean","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].supports_diarization","typeLabel":"boolean"},"supports_implicit_caching":{"type":"boolean","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].supports_implicit_caching","typeLabel":"boolean"},"supports_tool_choice":{"description":"Per-variant `tool_choice` support. `tool_choice` in `supported_parameters` only says the parameter is accepted; these flags say which of its values passed testing.","example":{"auto":true,"function":true,"none":true,"required":true},"properties":{"auto":{"description":"Whether the endpoint supports `\"tool_choice\": \"auto\"`.","type":"boolean","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].supports_tool_choice.auto","typeLabel":"boolean"},"function":{"description":"Whether the endpoint supports naming a function, `\"tool_choice\": {\"type\": \"function\", ...}`.","type":"boolean","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].supports_tool_choice.function","typeLabel":"boolean"},"none":{"description":"Whether the endpoint supports `\"tool_choice\": \"none\"`.","type":"boolean","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].supports_tool_choice.none","typeLabel":"boolean"},"required":{"description":"Whether the endpoint supports `\"tool_choice\": \"required\"`.","type":"boolean","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].supports_tool_choice.required","typeLabel":"boolean"}},"required":["none","auto","required","function"],"type":"object","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].supports_tool_choice","typeLabel":"object"},"tag":{"type":"string","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].tag","typeLabel":"string"},"throughput_last_30m":{"oneOf":[{"type":"object","description":"Throughput percentiles in tokens per second over the last 30 minutes. Throughput measures output token generation speed; pN is the speed that N% of requests reached or exceeded, so p90 is lower than p50. Only visible when authenticated with an API key or cookie; returns null for unauthenticated requests.","required":["p50","p75","p90","p99"],"example":{"p50":25.5,"p75":35.2,"p90":48.7,"p99":85.3},"properties":{"p50":{"description":"Median (50th percentile)","example":25.5,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].throughput_last_30m.oneOf.0.p50","typeLabel":"number\u003cdouble>"},"p75":{"description":"75th percentile","example":35.2,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].throughput_last_30m.oneOf.0.p75","typeLabel":"number\u003cdouble>"},"p90":{"description":"90th percentile","example":48.7,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].throughput_last_30m.oneOf.0.p90","typeLabel":"number\u003cdouble>"},"p99":{"description":"99th percentile","example":85.3,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].throughput_last_30m.oneOf.0.p99","typeLabel":"number\u003cdouble>"}},"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].throughput_last_30m.oneOf.0","typeLabel":"object"},{"type":"null","description":"Throughput percentiles in tokens per second over the last 30 minutes. Throughput measures output token generation speed; pN is the speed that N% of requests reached or exceeded, so p90 is lower than p50. Only visible when authenticated with an API key or cookie; returns null for unauthenticated requests.","required":["p50","p75","p90","p99"],"example":{"p50":25.5,"p75":35.2,"p90":48.7,"p99":85.3},"properties":{"p50":{"description":"Median (50th percentile)","example":25.5,"format":"double","type":"number"},"p75":{"description":"75th percentile","example":35.2,"format":"double","type":"number"},"p90":{"description":"90th percentile","example":48.7,"format":"double","type":"number"},"p99":{"description":"99th percentile","example":85.3,"format":"double","type":"number"}},"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].throughput_last_30m.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].throughput_last_30m","typeLabel":"object | null"},"uptime_last_1d":{"oneOf":[{"description":"Uptime percentage over the last day: the share of minutes in which at least 80% of provider attempts succeeded, counting only minutes with 10 or more attempts. Rate-limited and caller-caused failures are excluded. Null when no minute had enough traffic.","format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].uptime_last_1d.oneOf.0","typeLabel":"number\u003cdouble>"},{"description":"Uptime percentage over the last day: the share of minutes in which at least 80% of provider attempts succeeded, counting only minutes with 10 or more attempts. Rate-limited and caller-caused failures are excluded. Null when no minute had enough traffic.","format":"double","type":"null","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].uptime_last_1d.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].uptime_last_1d","typeLabel":"number\u003cdouble> | null"},"uptime_last_30m":{"oneOf":[{"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].uptime_last_30m.oneOf.0","typeLabel":"number\u003cdouble>"},{"format":"double","type":"null","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].uptime_last_30m.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].uptime_last_30m","typeLabel":"number\u003cdouble> | null"},"uptime_last_5m":{"oneOf":[{"description":"Uptime percentage over the last 5 minutes: the share of minutes in which at least 80% of provider attempts succeeded, counting only minutes with 10 or more attempts. Rate-limited and caller-caused failures are excluded. Null when no minute had enough traffic.","format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].uptime_last_5m.oneOf.0","typeLabel":"number\u003cdouble>"},{"description":"Uptime percentage over the last 5 minutes: the share of minutes in which at least 80% of provider attempts succeeded, counting only minutes with 10 or more attempts. Rate-limited and caller-caused failures are excluded. Null when no minute had enough traffic.","format":"double","type":"null","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].uptime_last_5m.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].uptime_last_5m","typeLabel":"number\u003cdouble> | null"},"perf_last_30m_by_workload":{"additionalProperties":false,"description":"Endpoint performance over the last 30 minutes, keyed by the kind of request served (e.g. `text_generation`, `image_generation`). Additive to the legacy singular latency and throughput fields; image and video generation report end-to-end latency. Only visible when authenticated with an API key or cookie.","properties":{"decisions":{"properties":{"latency":{"oneOf":[{"type":"object","description":"Latency percentiles in milliseconds for this workload. Image and video generation report full end-to-end generation time, because their raw latency only measures request acknowledgement; every other workload reports time to first token or result.","required":["p50","p75","p90","p99"],"example":{"p50":25.5,"p75":35.2,"p90":48.7,"p99":85.3},"properties":{"p50":{"description":"Median (50th percentile)","example":25.5,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.decisions.latency.oneOf.0.p50","typeLabel":"number\u003cdouble>"},"p75":{"description":"75th percentile","example":35.2,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.decisions.latency.oneOf.0.p75","typeLabel":"number\u003cdouble>"},"p90":{"description":"90th percentile","example":48.7,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.decisions.latency.oneOf.0.p90","typeLabel":"number\u003cdouble>"},"p99":{"description":"99th percentile","example":85.3,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.decisions.latency.oneOf.0.p99","typeLabel":"number\u003cdouble>"}},"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.decisions.latency.oneOf.0","typeLabel":"object"},{"type":"null","description":"Latency percentiles in milliseconds for this workload. Image and video generation report full end-to-end generation time, because their raw latency only measures request acknowledgement; every other workload reports time to first token or result.","required":["p50","p75","p90","p99"],"example":{"p50":25.5,"p75":35.2,"p90":48.7,"p99":85.3},"properties":{"p50":{"description":"Median (50th percentile)","example":25.5,"format":"double","type":"number"},"p75":{"description":"75th percentile","example":35.2,"format":"double","type":"number"},"p90":{"description":"90th percentile","example":48.7,"format":"double","type":"number"},"p99":{"description":"99th percentile","example":85.3,"format":"double","type":"number"}},"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.decisions.latency.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.decisions.latency","typeLabel":"object | null"},"request_count":{"oneOf":[{"description":"Total requests admitted for this workload in the window.","type":"integer","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.decisions.request_count.oneOf.0","typeLabel":"integer"},{"description":"Total requests admitted for this workload in the window.","type":"null","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.decisions.request_count.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.decisions.request_count","typeLabel":"integer | null"},"throughput":{"oneOf":[{"type":"object","description":"Throughput percentiles in tokens per second; pN is the speed that N% of requests reached or exceeded, so p90 is lower than p50. Only meaningful for text generation; null for workloads without token throughput.","required":["p50","p75","p90","p99"],"example":{"p50":25.5,"p75":35.2,"p90":48.7,"p99":85.3},"properties":{"p50":{"description":"Median (50th percentile)","example":25.5,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.decisions.throughput.oneOf.0.p50","typeLabel":"number\u003cdouble>"},"p75":{"description":"75th percentile","example":35.2,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.decisions.throughput.oneOf.0.p75","typeLabel":"number\u003cdouble>"},"p90":{"description":"90th percentile","example":48.7,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.decisions.throughput.oneOf.0.p90","typeLabel":"number\u003cdouble>"},"p99":{"description":"99th percentile","example":85.3,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.decisions.throughput.oneOf.0.p99","typeLabel":"number\u003cdouble>"}},"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.decisions.throughput.oneOf.0","typeLabel":"object"},{"type":"null","description":"Throughput percentiles in tokens per second; pN is the speed that N% of requests reached or exceeded, so p90 is lower than p50. Only meaningful for text generation; null for workloads without token throughput.","required":["p50","p75","p90","p99"],"example":{"p50":25.5,"p75":35.2,"p90":48.7,"p99":85.3},"properties":{"p50":{"description":"Median (50th percentile)","example":25.5,"format":"double","type":"number"},"p75":{"description":"75th percentile","example":35.2,"format":"double","type":"number"},"p90":{"description":"90th percentile","example":48.7,"format":"double","type":"number"},"p99":{"description":"99th percentile","example":85.3,"format":"double","type":"number"}},"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.decisions.throughput.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.decisions.throughput","typeLabel":"object | null"}},"required":["latency","throughput","request_count"],"type":"object","uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.decisions","typeLabel":"object"},"embeddings":{"properties":{"latency":{"oneOf":[{"type":"object","description":"Latency percentiles in milliseconds for this workload. Image and video generation report full end-to-end generation time, because their raw latency only measures request acknowledgement; every other workload reports time to first token or result.","required":["p50","p75","p90","p99"],"example":{"p50":25.5,"p75":35.2,"p90":48.7,"p99":85.3},"properties":{"p50":{"description":"Median (50th percentile)","example":25.5,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.embeddings.latency.oneOf.0.p50","typeLabel":"number\u003cdouble>"},"p75":{"description":"75th percentile","example":35.2,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.embeddings.latency.oneOf.0.p75","typeLabel":"number\u003cdouble>"},"p90":{"description":"90th percentile","example":48.7,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.embeddings.latency.oneOf.0.p90","typeLabel":"number\u003cdouble>"},"p99":{"description":"99th percentile","example":85.3,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.embeddings.latency.oneOf.0.p99","typeLabel":"number\u003cdouble>"}},"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.embeddings.latency.oneOf.0","typeLabel":"object"},{"type":"null","description":"Latency percentiles in milliseconds for this workload. Image and video generation report full end-to-end generation time, because their raw latency only measures request acknowledgement; every other workload reports time to first token or result.","required":["p50","p75","p90","p99"],"example":{"p50":25.5,"p75":35.2,"p90":48.7,"p99":85.3},"properties":{"p50":{"description":"Median (50th percentile)","example":25.5,"format":"double","type":"number"},"p75":{"description":"75th percentile","example":35.2,"format":"double","type":"number"},"p90":{"description":"90th percentile","example":48.7,"format":"double","type":"number"},"p99":{"description":"99th percentile","example":85.3,"format":"double","type":"number"}},"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.embeddings.latency.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.embeddings.latency","typeLabel":"object | null"},"request_count":{"oneOf":[{"description":"Total requests admitted for this workload in the window.","type":"integer","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.embeddings.request_count.oneOf.0","typeLabel":"integer"},{"description":"Total requests admitted for this workload in the window.","type":"null","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.embeddings.request_count.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.embeddings.request_count","typeLabel":"integer | null"},"throughput":{"oneOf":[{"type":"object","description":"Throughput percentiles in tokens per second; pN is the speed that N% of requests reached or exceeded, so p90 is lower than p50. Only meaningful for text generation; null for workloads without token throughput.","required":["p50","p75","p90","p99"],"example":{"p50":25.5,"p75":35.2,"p90":48.7,"p99":85.3},"properties":{"p50":{"description":"Median (50th percentile)","example":25.5,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.embeddings.throughput.oneOf.0.p50","typeLabel":"number\u003cdouble>"},"p75":{"description":"75th percentile","example":35.2,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.embeddings.throughput.oneOf.0.p75","typeLabel":"number\u003cdouble>"},"p90":{"description":"90th percentile","example":48.7,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.embeddings.throughput.oneOf.0.p90","typeLabel":"number\u003cdouble>"},"p99":{"description":"99th percentile","example":85.3,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.embeddings.throughput.oneOf.0.p99","typeLabel":"number\u003cdouble>"}},"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.embeddings.throughput.oneOf.0","typeLabel":"object"},{"type":"null","description":"Throughput percentiles in tokens per second; pN is the speed that N% of requests reached or exceeded, so p90 is lower than p50. Only meaningful for text generation; null for workloads without token throughput.","required":["p50","p75","p90","p99"],"example":{"p50":25.5,"p75":35.2,"p90":48.7,"p99":85.3},"properties":{"p50":{"description":"Median (50th percentile)","example":25.5,"format":"double","type":"number"},"p75":{"description":"75th percentile","example":35.2,"format":"double","type":"number"},"p90":{"description":"90th percentile","example":48.7,"format":"double","type":"number"},"p99":{"description":"99th percentile","example":85.3,"format":"double","type":"number"}},"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.embeddings.throughput.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.embeddings.throughput","typeLabel":"object | null"}},"required":["latency","throughput","request_count"],"type":"object","uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.embeddings","typeLabel":"object"},"extractions":{"properties":{"latency":{"oneOf":[{"type":"object","description":"Latency percentiles in milliseconds for this workload. Image and video generation report full end-to-end generation time, because their raw latency only measures request acknowledgement; every other workload reports time to first token or result.","required":["p50","p75","p90","p99"],"example":{"p50":25.5,"p75":35.2,"p90":48.7,"p99":85.3},"properties":{"p50":{"description":"Median (50th percentile)","example":25.5,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.extractions.latency.oneOf.0.p50","typeLabel":"number\u003cdouble>"},"p75":{"description":"75th percentile","example":35.2,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.extractions.latency.oneOf.0.p75","typeLabel":"number\u003cdouble>"},"p90":{"description":"90th percentile","example":48.7,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.extractions.latency.oneOf.0.p90","typeLabel":"number\u003cdouble>"},"p99":{"description":"99th percentile","example":85.3,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.extractions.latency.oneOf.0.p99","typeLabel":"number\u003cdouble>"}},"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.extractions.latency.oneOf.0","typeLabel":"object"},{"type":"null","description":"Latency percentiles in milliseconds for this workload. Image and video generation report full end-to-end generation time, because their raw latency only measures request acknowledgement; every other workload reports time to first token or result.","required":["p50","p75","p90","p99"],"example":{"p50":25.5,"p75":35.2,"p90":48.7,"p99":85.3},"properties":{"p50":{"description":"Median (50th percentile)","example":25.5,"format":"double","type":"number"},"p75":{"description":"75th percentile","example":35.2,"format":"double","type":"number"},"p90":{"description":"90th percentile","example":48.7,"format":"double","type":"number"},"p99":{"description":"99th percentile","example":85.3,"format":"double","type":"number"}},"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.extractions.latency.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.extractions.latency","typeLabel":"object | null"},"request_count":{"oneOf":[{"description":"Total requests admitted for this workload in the window.","type":"integer","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.extractions.request_count.oneOf.0","typeLabel":"integer"},{"description":"Total requests admitted for this workload in the window.","type":"null","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.extractions.request_count.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.extractions.request_count","typeLabel":"integer | null"},"throughput":{"oneOf":[{"type":"object","description":"Throughput percentiles in tokens per second; pN is the speed that N% of requests reached or exceeded, so p90 is lower than p50. Only meaningful for text generation; null for workloads without token throughput.","required":["p50","p75","p90","p99"],"example":{"p50":25.5,"p75":35.2,"p90":48.7,"p99":85.3},"properties":{"p50":{"description":"Median (50th percentile)","example":25.5,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.extractions.throughput.oneOf.0.p50","typeLabel":"number\u003cdouble>"},"p75":{"description":"75th percentile","example":35.2,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.extractions.throughput.oneOf.0.p75","typeLabel":"number\u003cdouble>"},"p90":{"description":"90th percentile","example":48.7,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.extractions.throughput.oneOf.0.p90","typeLabel":"number\u003cdouble>"},"p99":{"description":"99th percentile","example":85.3,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.extractions.throughput.oneOf.0.p99","typeLabel":"number\u003cdouble>"}},"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.extractions.throughput.oneOf.0","typeLabel":"object"},{"type":"null","description":"Throughput percentiles in tokens per second; pN is the speed that N% of requests reached or exceeded, so p90 is lower than p50. Only meaningful for text generation; null for workloads without token throughput.","required":["p50","p75","p90","p99"],"example":{"p50":25.5,"p75":35.2,"p90":48.7,"p99":85.3},"properties":{"p50":{"description":"Median (50th percentile)","example":25.5,"format":"double","type":"number"},"p75":{"description":"75th percentile","example":35.2,"format":"double","type":"number"},"p90":{"description":"90th percentile","example":48.7,"format":"double","type":"number"},"p99":{"description":"99th percentile","example":85.3,"format":"double","type":"number"}},"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.extractions.throughput.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.extractions.throughput","typeLabel":"object | null"}},"required":["latency","throughput","request_count"],"type":"object","uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.extractions","typeLabel":"object"},"image_generation":{"properties":{"latency":{"oneOf":[{"type":"object","description":"Latency percentiles in milliseconds for this workload. Image and video generation report full end-to-end generation time, because their raw latency only measures request acknowledgement; every other workload reports time to first token or result.","required":["p50","p75","p90","p99"],"example":{"p50":25.5,"p75":35.2,"p90":48.7,"p99":85.3},"properties":{"p50":{"description":"Median (50th percentile)","example":25.5,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.image_generation.latency.oneOf.0.p50","typeLabel":"number\u003cdouble>"},"p75":{"description":"75th percentile","example":35.2,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.image_generation.latency.oneOf.0.p75","typeLabel":"number\u003cdouble>"},"p90":{"description":"90th percentile","example":48.7,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.image_generation.latency.oneOf.0.p90","typeLabel":"number\u003cdouble>"},"p99":{"description":"99th percentile","example":85.3,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.image_generation.latency.oneOf.0.p99","typeLabel":"number\u003cdouble>"}},"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.image_generation.latency.oneOf.0","typeLabel":"object"},{"type":"null","description":"Latency percentiles in milliseconds for this workload. Image and video generation report full end-to-end generation time, because their raw latency only measures request acknowledgement; every other workload reports time to first token or result.","required":["p50","p75","p90","p99"],"example":{"p50":25.5,"p75":35.2,"p90":48.7,"p99":85.3},"properties":{"p50":{"description":"Median (50th percentile)","example":25.5,"format":"double","type":"number"},"p75":{"description":"75th percentile","example":35.2,"format":"double","type":"number"},"p90":{"description":"90th percentile","example":48.7,"format":"double","type":"number"},"p99":{"description":"99th percentile","example":85.3,"format":"double","type":"number"}},"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.image_generation.latency.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.image_generation.latency","typeLabel":"object | null"},"request_count":{"oneOf":[{"description":"Total requests admitted for this workload in the window.","type":"integer","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.image_generation.request_count.oneOf.0","typeLabel":"integer"},{"description":"Total requests admitted for this workload in the window.","type":"null","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.image_generation.request_count.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.image_generation.request_count","typeLabel":"integer | null"},"throughput":{"oneOf":[{"type":"object","description":"Throughput percentiles in tokens per second; pN is the speed that N% of requests reached or exceeded, so p90 is lower than p50. Only meaningful for text generation; null for workloads without token throughput.","required":["p50","p75","p90","p99"],"example":{"p50":25.5,"p75":35.2,"p90":48.7,"p99":85.3},"properties":{"p50":{"description":"Median (50th percentile)","example":25.5,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.image_generation.throughput.oneOf.0.p50","typeLabel":"number\u003cdouble>"},"p75":{"description":"75th percentile","example":35.2,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.image_generation.throughput.oneOf.0.p75","typeLabel":"number\u003cdouble>"},"p90":{"description":"90th percentile","example":48.7,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.image_generation.throughput.oneOf.0.p90","typeLabel":"number\u003cdouble>"},"p99":{"description":"99th percentile","example":85.3,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.image_generation.throughput.oneOf.0.p99","typeLabel":"number\u003cdouble>"}},"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.image_generation.throughput.oneOf.0","typeLabel":"object"},{"type":"null","description":"Throughput percentiles in tokens per second; pN is the speed that N% of requests reached or exceeded, so p90 is lower than p50. Only meaningful for text generation; null for workloads without token throughput.","required":["p50","p75","p90","p99"],"example":{"p50":25.5,"p75":35.2,"p90":48.7,"p99":85.3},"properties":{"p50":{"description":"Median (50th percentile)","example":25.5,"format":"double","type":"number"},"p75":{"description":"75th percentile","example":35.2,"format":"double","type":"number"},"p90":{"description":"90th percentile","example":48.7,"format":"double","type":"number"},"p99":{"description":"99th percentile","example":85.3,"format":"double","type":"number"}},"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.image_generation.throughput.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.image_generation.throughput","typeLabel":"object | null"}},"required":["latency","throughput","request_count"],"type":"object","uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.image_generation","typeLabel":"object"},"rerank":{"properties":{"latency":{"oneOf":[{"type":"object","description":"Latency percentiles in milliseconds for this workload. Image and video generation report full end-to-end generation time, because their raw latency only measures request acknowledgement; every other workload reports time to first token or result.","required":["p50","p75","p90","p99"],"example":{"p50":25.5,"p75":35.2,"p90":48.7,"p99":85.3},"properties":{"p50":{"description":"Median (50th percentile)","example":25.5,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.rerank.latency.oneOf.0.p50","typeLabel":"number\u003cdouble>"},"p75":{"description":"75th percentile","example":35.2,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.rerank.latency.oneOf.0.p75","typeLabel":"number\u003cdouble>"},"p90":{"description":"90th percentile","example":48.7,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.rerank.latency.oneOf.0.p90","typeLabel":"number\u003cdouble>"},"p99":{"description":"99th percentile","example":85.3,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.rerank.latency.oneOf.0.p99","typeLabel":"number\u003cdouble>"}},"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.rerank.latency.oneOf.0","typeLabel":"object"},{"type":"null","description":"Latency percentiles in milliseconds for this workload. Image and video generation report full end-to-end generation time, because their raw latency only measures request acknowledgement; every other workload reports time to first token or result.","required":["p50","p75","p90","p99"],"example":{"p50":25.5,"p75":35.2,"p90":48.7,"p99":85.3},"properties":{"p50":{"description":"Median (50th percentile)","example":25.5,"format":"double","type":"number"},"p75":{"description":"75th percentile","example":35.2,"format":"double","type":"number"},"p90":{"description":"90th percentile","example":48.7,"format":"double","type":"number"},"p99":{"description":"99th percentile","example":85.3,"format":"double","type":"number"}},"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.rerank.latency.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.rerank.latency","typeLabel":"object | null"},"request_count":{"oneOf":[{"description":"Total requests admitted for this workload in the window.","type":"integer","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.rerank.request_count.oneOf.0","typeLabel":"integer"},{"description":"Total requests admitted for this workload in the window.","type":"null","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.rerank.request_count.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.rerank.request_count","typeLabel":"integer | null"},"throughput":{"oneOf":[{"type":"object","description":"Throughput percentiles in tokens per second; pN is the speed that N% of requests reached or exceeded, so p90 is lower than p50. Only meaningful for text generation; null for workloads without token throughput.","required":["p50","p75","p90","p99"],"example":{"p50":25.5,"p75":35.2,"p90":48.7,"p99":85.3},"properties":{"p50":{"description":"Median (50th percentile)","example":25.5,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.rerank.throughput.oneOf.0.p50","typeLabel":"number\u003cdouble>"},"p75":{"description":"75th percentile","example":35.2,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.rerank.throughput.oneOf.0.p75","typeLabel":"number\u003cdouble>"},"p90":{"description":"90th percentile","example":48.7,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.rerank.throughput.oneOf.0.p90","typeLabel":"number\u003cdouble>"},"p99":{"description":"99th percentile","example":85.3,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.rerank.throughput.oneOf.0.p99","typeLabel":"number\u003cdouble>"}},"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.rerank.throughput.oneOf.0","typeLabel":"object"},{"type":"null","description":"Throughput percentiles in tokens per second; pN is the speed that N% of requests reached or exceeded, so p90 is lower than p50. Only meaningful for text generation; null for workloads without token throughput.","required":["p50","p75","p90","p99"],"example":{"p50":25.5,"p75":35.2,"p90":48.7,"p99":85.3},"properties":{"p50":{"description":"Median (50th percentile)","example":25.5,"format":"double","type":"number"},"p75":{"description":"75th percentile","example":35.2,"format":"double","type":"number"},"p90":{"description":"90th percentile","example":48.7,"format":"double","type":"number"},"p99":{"description":"99th percentile","example":85.3,"format":"double","type":"number"}},"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.rerank.throughput.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.rerank.throughput","typeLabel":"object | null"}},"required":["latency","throughput","request_count"],"type":"object","uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.rerank","typeLabel":"object"},"stt":{"properties":{"latency":{"oneOf":[{"type":"object","description":"Latency percentiles in milliseconds for this workload. Image and video generation report full end-to-end generation time, because their raw latency only measures request acknowledgement; every other workload reports time to first token or result.","required":["p50","p75","p90","p99"],"example":{"p50":25.5,"p75":35.2,"p90":48.7,"p99":85.3},"properties":{"p50":{"description":"Median (50th percentile)","example":25.5,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.stt.latency.oneOf.0.p50","typeLabel":"number\u003cdouble>"},"p75":{"description":"75th percentile","example":35.2,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.stt.latency.oneOf.0.p75","typeLabel":"number\u003cdouble>"},"p90":{"description":"90th percentile","example":48.7,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.stt.latency.oneOf.0.p90","typeLabel":"number\u003cdouble>"},"p99":{"description":"99th percentile","example":85.3,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.stt.latency.oneOf.0.p99","typeLabel":"number\u003cdouble>"}},"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.stt.latency.oneOf.0","typeLabel":"object"},{"type":"null","description":"Latency percentiles in milliseconds for this workload. Image and video generation report full end-to-end generation time, because their raw latency only measures request acknowledgement; every other workload reports time to first token or result.","required":["p50","p75","p90","p99"],"example":{"p50":25.5,"p75":35.2,"p90":48.7,"p99":85.3},"properties":{"p50":{"description":"Median (50th percentile)","example":25.5,"format":"double","type":"number"},"p75":{"description":"75th percentile","example":35.2,"format":"double","type":"number"},"p90":{"description":"90th percentile","example":48.7,"format":"double","type":"number"},"p99":{"description":"99th percentile","example":85.3,"format":"double","type":"number"}},"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.stt.latency.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.stt.latency","typeLabel":"object | null"},"request_count":{"oneOf":[{"description":"Total requests admitted for this workload in the window.","type":"integer","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.stt.request_count.oneOf.0","typeLabel":"integer"},{"description":"Total requests admitted for this workload in the window.","type":"null","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.stt.request_count.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.stt.request_count","typeLabel":"integer | null"},"throughput":{"oneOf":[{"type":"object","description":"Throughput percentiles in tokens per second; pN is the speed that N% of requests reached or exceeded, so p90 is lower than p50. Only meaningful for text generation; null for workloads without token throughput.","required":["p50","p75","p90","p99"],"example":{"p50":25.5,"p75":35.2,"p90":48.7,"p99":85.3},"properties":{"p50":{"description":"Median (50th percentile)","example":25.5,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.stt.throughput.oneOf.0.p50","typeLabel":"number\u003cdouble>"},"p75":{"description":"75th percentile","example":35.2,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.stt.throughput.oneOf.0.p75","typeLabel":"number\u003cdouble>"},"p90":{"description":"90th percentile","example":48.7,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.stt.throughput.oneOf.0.p90","typeLabel":"number\u003cdouble>"},"p99":{"description":"99th percentile","example":85.3,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.stt.throughput.oneOf.0.p99","typeLabel":"number\u003cdouble>"}},"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.stt.throughput.oneOf.0","typeLabel":"object"},{"type":"null","description":"Throughput percentiles in tokens per second; pN is the speed that N% of requests reached or exceeded, so p90 is lower than p50. Only meaningful for text generation; null for workloads without token throughput.","required":["p50","p75","p90","p99"],"example":{"p50":25.5,"p75":35.2,"p90":48.7,"p99":85.3},"properties":{"p50":{"description":"Median (50th percentile)","example":25.5,"format":"double","type":"number"},"p75":{"description":"75th percentile","example":35.2,"format":"double","type":"number"},"p90":{"description":"90th percentile","example":48.7,"format":"double","type":"number"},"p99":{"description":"99th percentile","example":85.3,"format":"double","type":"number"}},"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.stt.throughput.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.stt.throughput","typeLabel":"object | null"}},"required":["latency","throughput","request_count"],"type":"object","uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.stt","typeLabel":"object"},"text_generation":{"properties":{"latency":{"oneOf":[{"type":"object","description":"Latency percentiles in milliseconds for this workload. Image and video generation report full end-to-end generation time, because their raw latency only measures request acknowledgement; every other workload reports time to first token or result.","required":["p50","p75","p90","p99"],"example":{"p50":25.5,"p75":35.2,"p90":48.7,"p99":85.3},"properties":{"p50":{"description":"Median (50th percentile)","example":25.5,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.text_generation.latency.oneOf.0.p50","typeLabel":"number\u003cdouble>"},"p75":{"description":"75th percentile","example":35.2,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.text_generation.latency.oneOf.0.p75","typeLabel":"number\u003cdouble>"},"p90":{"description":"90th percentile","example":48.7,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.text_generation.latency.oneOf.0.p90","typeLabel":"number\u003cdouble>"},"p99":{"description":"99th percentile","example":85.3,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.text_generation.latency.oneOf.0.p99","typeLabel":"number\u003cdouble>"}},"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.text_generation.latency.oneOf.0","typeLabel":"object"},{"type":"null","description":"Latency percentiles in milliseconds for this workload. Image and video generation report full end-to-end generation time, because their raw latency only measures request acknowledgement; every other workload reports time to first token or result.","required":["p50","p75","p90","p99"],"example":{"p50":25.5,"p75":35.2,"p90":48.7,"p99":85.3},"properties":{"p50":{"description":"Median (50th percentile)","example":25.5,"format":"double","type":"number"},"p75":{"description":"75th percentile","example":35.2,"format":"double","type":"number"},"p90":{"description":"90th percentile","example":48.7,"format":"double","type":"number"},"p99":{"description":"99th percentile","example":85.3,"format":"double","type":"number"}},"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.text_generation.latency.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.text_generation.latency","typeLabel":"object | null"},"request_count":{"oneOf":[{"description":"Total requests admitted for this workload in the window.","type":"integer","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.text_generation.request_count.oneOf.0","typeLabel":"integer"},{"description":"Total requests admitted for this workload in the window.","type":"null","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.text_generation.request_count.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.text_generation.request_count","typeLabel":"integer | null"},"throughput":{"oneOf":[{"type":"object","description":"Throughput percentiles in tokens per second; pN is the speed that N% of requests reached or exceeded, so p90 is lower than p50. Only meaningful for text generation; null for workloads without token throughput.","required":["p50","p75","p90","p99"],"example":{"p50":25.5,"p75":35.2,"p90":48.7,"p99":85.3},"properties":{"p50":{"description":"Median (50th percentile)","example":25.5,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.text_generation.throughput.oneOf.0.p50","typeLabel":"number\u003cdouble>"},"p75":{"description":"75th percentile","example":35.2,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.text_generation.throughput.oneOf.0.p75","typeLabel":"number\u003cdouble>"},"p90":{"description":"90th percentile","example":48.7,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.text_generation.throughput.oneOf.0.p90","typeLabel":"number\u003cdouble>"},"p99":{"description":"99th percentile","example":85.3,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.text_generation.throughput.oneOf.0.p99","typeLabel":"number\u003cdouble>"}},"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.text_generation.throughput.oneOf.0","typeLabel":"object"},{"type":"null","description":"Throughput percentiles in tokens per second; pN is the speed that N% of requests reached or exceeded, so p90 is lower than p50. Only meaningful for text generation; null for workloads without token throughput.","required":["p50","p75","p90","p99"],"example":{"p50":25.5,"p75":35.2,"p90":48.7,"p99":85.3},"properties":{"p50":{"description":"Median (50th percentile)","example":25.5,"format":"double","type":"number"},"p75":{"description":"75th percentile","example":35.2,"format":"double","type":"number"},"p90":{"description":"90th percentile","example":48.7,"format":"double","type":"number"},"p99":{"description":"99th percentile","example":85.3,"format":"double","type":"number"}},"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.text_generation.throughput.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.text_generation.throughput","typeLabel":"object | null"}},"required":["latency","throughput","request_count"],"type":"object","uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.text_generation","typeLabel":"object"},"tts":{"properties":{"latency":{"oneOf":[{"type":"object","description":"Latency percentiles in milliseconds for this workload. Image and video generation report full end-to-end generation time, because their raw latency only measures request acknowledgement; every other workload reports time to first token or result.","required":["p50","p75","p90","p99"],"example":{"p50":25.5,"p75":35.2,"p90":48.7,"p99":85.3},"properties":{"p50":{"description":"Median (50th percentile)","example":25.5,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.tts.latency.oneOf.0.p50","typeLabel":"number\u003cdouble>"},"p75":{"description":"75th percentile","example":35.2,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.tts.latency.oneOf.0.p75","typeLabel":"number\u003cdouble>"},"p90":{"description":"90th percentile","example":48.7,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.tts.latency.oneOf.0.p90","typeLabel":"number\u003cdouble>"},"p99":{"description":"99th percentile","example":85.3,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.tts.latency.oneOf.0.p99","typeLabel":"number\u003cdouble>"}},"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.tts.latency.oneOf.0","typeLabel":"object"},{"type":"null","description":"Latency percentiles in milliseconds for this workload. Image and video generation report full end-to-end generation time, because their raw latency only measures request acknowledgement; every other workload reports time to first token or result.","required":["p50","p75","p90","p99"],"example":{"p50":25.5,"p75":35.2,"p90":48.7,"p99":85.3},"properties":{"p50":{"description":"Median (50th percentile)","example":25.5,"format":"double","type":"number"},"p75":{"description":"75th percentile","example":35.2,"format":"double","type":"number"},"p90":{"description":"90th percentile","example":48.7,"format":"double","type":"number"},"p99":{"description":"99th percentile","example":85.3,"format":"double","type":"number"}},"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.tts.latency.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.tts.latency","typeLabel":"object | null"},"request_count":{"oneOf":[{"description":"Total requests admitted for this workload in the window.","type":"integer","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.tts.request_count.oneOf.0","typeLabel":"integer"},{"description":"Total requests admitted for this workload in the window.","type":"null","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.tts.request_count.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.tts.request_count","typeLabel":"integer | null"},"throughput":{"oneOf":[{"type":"object","description":"Throughput percentiles in tokens per second; pN is the speed that N% of requests reached or exceeded, so p90 is lower than p50. Only meaningful for text generation; null for workloads without token throughput.","required":["p50","p75","p90","p99"],"example":{"p50":25.5,"p75":35.2,"p90":48.7,"p99":85.3},"properties":{"p50":{"description":"Median (50th percentile)","example":25.5,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.tts.throughput.oneOf.0.p50","typeLabel":"number\u003cdouble>"},"p75":{"description":"75th percentile","example":35.2,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.tts.throughput.oneOf.0.p75","typeLabel":"number\u003cdouble>"},"p90":{"description":"90th percentile","example":48.7,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.tts.throughput.oneOf.0.p90","typeLabel":"number\u003cdouble>"},"p99":{"description":"99th percentile","example":85.3,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.tts.throughput.oneOf.0.p99","typeLabel":"number\u003cdouble>"}},"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.tts.throughput.oneOf.0","typeLabel":"object"},{"type":"null","description":"Throughput percentiles in tokens per second; pN is the speed that N% of requests reached or exceeded, so p90 is lower than p50. Only meaningful for text generation; null for workloads without token throughput.","required":["p50","p75","p90","p99"],"example":{"p50":25.5,"p75":35.2,"p90":48.7,"p99":85.3},"properties":{"p50":{"description":"Median (50th percentile)","example":25.5,"format":"double","type":"number"},"p75":{"description":"75th percentile","example":35.2,"format":"double","type":"number"},"p90":{"description":"90th percentile","example":48.7,"format":"double","type":"number"},"p99":{"description":"99th percentile","example":85.3,"format":"double","type":"number"}},"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.tts.throughput.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.tts.throughput","typeLabel":"object | null"}},"required":["latency","throughput","request_count"],"type":"object","uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.tts","typeLabel":"object"},"unknown":{"properties":{"latency":{"oneOf":[{"type":"object","description":"Latency percentiles in milliseconds for this workload. Image and video generation report full end-to-end generation time, because their raw latency only measures request acknowledgement; every other workload reports time to first token or result.","required":["p50","p75","p90","p99"],"example":{"p50":25.5,"p75":35.2,"p90":48.7,"p99":85.3},"properties":{"p50":{"description":"Median (50th percentile)","example":25.5,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.unknown.latency.oneOf.0.p50","typeLabel":"number\u003cdouble>"},"p75":{"description":"75th percentile","example":35.2,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.unknown.latency.oneOf.0.p75","typeLabel":"number\u003cdouble>"},"p90":{"description":"90th percentile","example":48.7,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.unknown.latency.oneOf.0.p90","typeLabel":"number\u003cdouble>"},"p99":{"description":"99th percentile","example":85.3,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.unknown.latency.oneOf.0.p99","typeLabel":"number\u003cdouble>"}},"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.unknown.latency.oneOf.0","typeLabel":"object"},{"type":"null","description":"Latency percentiles in milliseconds for this workload. Image and video generation report full end-to-end generation time, because their raw latency only measures request acknowledgement; every other workload reports time to first token or result.","required":["p50","p75","p90","p99"],"example":{"p50":25.5,"p75":35.2,"p90":48.7,"p99":85.3},"properties":{"p50":{"description":"Median (50th percentile)","example":25.5,"format":"double","type":"number"},"p75":{"description":"75th percentile","example":35.2,"format":"double","type":"number"},"p90":{"description":"90th percentile","example":48.7,"format":"double","type":"number"},"p99":{"description":"99th percentile","example":85.3,"format":"double","type":"number"}},"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.unknown.latency.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.unknown.latency","typeLabel":"object | null"},"request_count":{"oneOf":[{"description":"Total requests admitted for this workload in the window.","type":"integer","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.unknown.request_count.oneOf.0","typeLabel":"integer"},{"description":"Total requests admitted for this workload in the window.","type":"null","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.unknown.request_count.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.unknown.request_count","typeLabel":"integer | null"},"throughput":{"oneOf":[{"type":"object","description":"Throughput percentiles in tokens per second; pN is the speed that N% of requests reached or exceeded, so p90 is lower than p50. Only meaningful for text generation; null for workloads without token throughput.","required":["p50","p75","p90","p99"],"example":{"p50":25.5,"p75":35.2,"p90":48.7,"p99":85.3},"properties":{"p50":{"description":"Median (50th percentile)","example":25.5,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.unknown.throughput.oneOf.0.p50","typeLabel":"number\u003cdouble>"},"p75":{"description":"75th percentile","example":35.2,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.unknown.throughput.oneOf.0.p75","typeLabel":"number\u003cdouble>"},"p90":{"description":"90th percentile","example":48.7,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.unknown.throughput.oneOf.0.p90","typeLabel":"number\u003cdouble>"},"p99":{"description":"99th percentile","example":85.3,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.unknown.throughput.oneOf.0.p99","typeLabel":"number\u003cdouble>"}},"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.unknown.throughput.oneOf.0","typeLabel":"object"},{"type":"null","description":"Throughput percentiles in tokens per second; pN is the speed that N% of requests reached or exceeded, so p90 is lower than p50. Only meaningful for text generation; null for workloads without token throughput.","required":["p50","p75","p90","p99"],"example":{"p50":25.5,"p75":35.2,"p90":48.7,"p99":85.3},"properties":{"p50":{"description":"Median (50th percentile)","example":25.5,"format":"double","type":"number"},"p75":{"description":"75th percentile","example":35.2,"format":"double","type":"number"},"p90":{"description":"90th percentile","example":48.7,"format":"double","type":"number"},"p99":{"description":"99th percentile","example":85.3,"format":"double","type":"number"}},"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.unknown.throughput.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.unknown.throughput","typeLabel":"object | null"}},"required":["latency","throughput","request_count"],"type":"object","uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.unknown","typeLabel":"object"},"video_generation":{"properties":{"latency":{"oneOf":[{"type":"object","description":"Latency percentiles in milliseconds for this workload. Image and video generation report full end-to-end generation time, because their raw latency only measures request acknowledgement; every other workload reports time to first token or result.","required":["p50","p75","p90","p99"],"example":{"p50":25.5,"p75":35.2,"p90":48.7,"p99":85.3},"properties":{"p50":{"description":"Median (50th percentile)","example":25.5,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.video_generation.latency.oneOf.0.p50","typeLabel":"number\u003cdouble>"},"p75":{"description":"75th percentile","example":35.2,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.video_generation.latency.oneOf.0.p75","typeLabel":"number\u003cdouble>"},"p90":{"description":"90th percentile","example":48.7,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.video_generation.latency.oneOf.0.p90","typeLabel":"number\u003cdouble>"},"p99":{"description":"99th percentile","example":85.3,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.video_generation.latency.oneOf.0.p99","typeLabel":"number\u003cdouble>"}},"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.video_generation.latency.oneOf.0","typeLabel":"object"},{"type":"null","description":"Latency percentiles in milliseconds for this workload. Image and video generation report full end-to-end generation time, because their raw latency only measures request acknowledgement; every other workload reports time to first token or result.","required":["p50","p75","p90","p99"],"example":{"p50":25.5,"p75":35.2,"p90":48.7,"p99":85.3},"properties":{"p50":{"description":"Median (50th percentile)","example":25.5,"format":"double","type":"number"},"p75":{"description":"75th percentile","example":35.2,"format":"double","type":"number"},"p90":{"description":"90th percentile","example":48.7,"format":"double","type":"number"},"p99":{"description":"99th percentile","example":85.3,"format":"double","type":"number"}},"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.video_generation.latency.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.video_generation.latency","typeLabel":"object | null"},"request_count":{"oneOf":[{"description":"Total requests admitted for this workload in the window.","type":"integer","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.video_generation.request_count.oneOf.0","typeLabel":"integer"},{"description":"Total requests admitted for this workload in the window.","type":"null","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.video_generation.request_count.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.video_generation.request_count","typeLabel":"integer | null"},"throughput":{"oneOf":[{"type":"object","description":"Throughput percentiles in tokens per second; pN is the speed that N% of requests reached or exceeded, so p90 is lower than p50. Only meaningful for text generation; null for workloads without token throughput.","required":["p50","p75","p90","p99"],"example":{"p50":25.5,"p75":35.2,"p90":48.7,"p99":85.3},"properties":{"p50":{"description":"Median (50th percentile)","example":25.5,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.video_generation.throughput.oneOf.0.p50","typeLabel":"number\u003cdouble>"},"p75":{"description":"75th percentile","example":35.2,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.video_generation.throughput.oneOf.0.p75","typeLabel":"number\u003cdouble>"},"p90":{"description":"90th percentile","example":48.7,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.video_generation.throughput.oneOf.0.p90","typeLabel":"number\u003cdouble>"},"p99":{"description":"99th percentile","example":85.3,"format":"double","type":"number","isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.video_generation.throughput.oneOf.0.p99","typeLabel":"number\u003cdouble>"}},"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.video_generation.throughput.oneOf.0","typeLabel":"object"},{"type":"null","description":"Throughput percentiles in tokens per second; pN is the speed that N% of requests reached or exceeded, so p90 is lower than p50. Only meaningful for text generation; null for workloads without token throughput.","required":["p50","p75","p90","p99"],"example":{"p50":25.5,"p75":35.2,"p90":48.7,"p99":85.3},"properties":{"p50":{"description":"Median (50th percentile)","example":25.5,"format":"double","type":"number"},"p75":{"description":"75th percentile","example":35.2,"format":"double","type":"number"},"p90":{"description":"90th percentile","example":48.7,"format":"double","type":"number"},"p99":{"description":"99th percentile","example":85.3,"format":"double","type":"number"}},"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.video_generation.throughput.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.video_generation.throughput","typeLabel":"object | null"}},"required":["latency","throughput","request_count"],"type":"object","uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload.video_generation","typeLabel":"object"}},"type":"object","uniqueKey":"data.endpoints.items.[INDEX].perf_last_30m_by_workload","typeLabel":"object"},"status":{"enum":[0,-1,-2,-3,-5,-10],"example":0,"type":"integer","uniqueKey":"data.endpoints.items.[INDEX].status","typeLabel":"enum\u003cinteger>"},"supports_image_reference":{"default":false,"description":"Whether this TTS endpoint accepts an `image_url` reference describing the desired voice. Requests carrying an image reference are only routed to endpoints where this is true.","type":"boolean","uniqueKey":"data.endpoints.items.[INDEX].supports_image_reference","typeLabel":"boolean"},"supports_multiple_audio_references":{"default":false,"description":"Whether this TTS endpoint accepts more than one `input_audio` reference clip per request. Requests carrying several clips are only routed to endpoints where this is true.","type":"boolean","uniqueKey":"data.endpoints.items.[INDEX].supports_multiple_audio_references","typeLabel":"boolean"},"supports_voice_cloning":{"default":false,"description":"Whether this TTS endpoint accepts inline reference audio (`input_references`) for stateless voice cloning. Requests carrying reference audio are only routed to endpoints where this is true.","type":"boolean","uniqueKey":"data.endpoints.items.[INDEX].supports_voice_cloning","typeLabel":"boolean"}},"required":["name","model_id","model_name","context_length","pricing","provider_name","tag","service_tier","quantization","max_completion_tokens","max_prompt_tokens","supported_parameters","supports_tool_choice","uptime_last_30m","uptime_last_5m","uptime_last_1d","supports_implicit_caching","native_tools","supports_diarization","latency_last_30m","throughput_last_30m"],"type":"object","uniqueKey":"data.endpoints.items.[INDEX]","typeLabel":"object"},"type":"array","isRequired":true,"uniqueKey":"data.endpoints","typeLabel":"object[]"},"id":{"description":"Unique identifier for the model","example":"openai/gpt-4","type":"string","isRequired":true,"uniqueKey":"data.id","typeLabel":"string"},"name":{"description":"Display name of the model","example":"GPT-4","type":"string","isRequired":true,"uniqueKey":"data.name","typeLabel":"string"}},"required":["id","name","created","description","architecture","endpoints"],"type":"object","isRequired":true,"uniqueKey":"data","typeLabel":"object"}},"required":["data"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"data":{"architecture":{"input_modalities":["text"],"instruct_type":"chatml","modality":"text->text","output_modalities":["text"],"tokenizer":"GPT"},"created":1692901234,"description":"GPT-4 is a large multimodal model.","endpoints":[],"id":"openai/gpt-4","name":"GPT-4"}}}},"exampleType":"examples"}},"description":"Returns a list of endpoints","exampleType":"examples"},"70aa47bb-0135-4011-a370-e15bb8bd8606":{"content":{"application/json":{"example":{"error":{"code":403,"message":"Only management keys can perform this operation"}},"schema":{"description":"Forbidden - Authentication successful but insufficient permissions","example":{"error":{"code":403,"message":"Only management keys can perform this operation"}},"properties":{"error":{"description":"Error data for ForbiddenResponse","example":{"code":403,"message":"Only management keys can perform this operation"},"properties":{"code":{"type":"integer","isRequired":true,"uniqueKey":"error.code","typeLabel":"integer"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"metadata":{"oneOf":[{"additionalProperties":{"oneOf":[{}],"uniqueKey":"error.metadata.oneOf.0.additionalProperties","typeLabel":"any"},"type":"object","uniqueKey":"error.metadata.oneOf.0","typeLabel":"object"},{"additionalProperties":{"oneOf":[{}],"uniqueKey":"error.metadata.oneOf.1.additionalProperties","typeLabel":"any"},"type":"null","uniqueKey":"error.metadata.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.metadata","typeLabel":"object | null"}},"required":["code","message"],"type":"object","isRequired":true,"uniqueKey":"error","typeLabel":"object"},"openrouter_metadata":{"oneOf":[{"additionalProperties":{"oneOf":[{}],"uniqueKey":"openrouter_metadata.oneOf.0.additionalProperties","typeLabel":"any"},"type":"object","uniqueKey":"openrouter_metadata.oneOf.0","typeLabel":"object"},{"additionalProperties":{"oneOf":[{}],"uniqueKey":"openrouter_metadata.oneOf.1.additionalProperties","typeLabel":"any"},"type":"null","uniqueKey":"openrouter_metadata.oneOf.1","typeLabel":"null"}],"uniqueKey":"openrouter_metadata","typeLabel":"object | null"},"user_id":{"oneOf":[{"type":"string","uniqueKey":"user_id.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"user_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"user_id","typeLabel":"string | null"}},"required":["error"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":403,"message":"Only management keys can perform this operation"}}}},"exampleType":"examples"}},"description":"Forbidden - Authentication successful but insufficient permissions","exampleType":"examples"},"48f84e24-62cf-4c29-8fd3-33e06f5e0c74":{"content":{"application/json":{"example":{"error":{"code":404,"message":"Resource not found"}},"schema":{"description":"Not Found - Resource does not exist","example":{"error":{"code":404,"message":"Resource not found"}},"properties":{"error":{"description":"Error data for NotFoundResponse","example":{"code":404,"message":"Resource not found"},"properties":{"code":{"type":"integer","isRequired":true,"uniqueKey":"error.code","typeLabel":"integer"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"metadata":{"oneOf":[{"additionalProperties":{"oneOf":[{}],"uniqueKey":"error.metadata.oneOf.0.additionalProperties","typeLabel":"any"},"type":"object","uniqueKey":"error.metadata.oneOf.0","typeLabel":"object"},{"additionalProperties":{"oneOf":[{}],"uniqueKey":"error.metadata.oneOf.1.additionalProperties","typeLabel":"any"},"type":"null","uniqueKey":"error.metadata.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.metadata","typeLabel":"object | null"}},"required":["code","message"],"type":"object","isRequired":true,"uniqueKey":"error","typeLabel":"object"},"openrouter_metadata":{"oneOf":[{"additionalProperties":{"oneOf":[{}],"uniqueKey":"openrouter_metadata.oneOf.0.additionalProperties","typeLabel":"any"},"type":"object","uniqueKey":"openrouter_metadata.oneOf.0","typeLabel":"object"},{"additionalProperties":{"oneOf":[{}],"uniqueKey":"openrouter_metadata.oneOf.1.additionalProperties","typeLabel":"any"},"type":"null","uniqueKey":"openrouter_metadata.oneOf.1","typeLabel":"null"}],"uniqueKey":"openrouter_metadata","typeLabel":"object | null"},"user_id":{"oneOf":[{"type":"string","uniqueKey":"user_id.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"user_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"user_id","typeLabel":"string | null"}},"required":["error"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":404,"message":"Resource not found"}}}},"exampleType":"examples"}},"description":"Not Found - Resource does not exist","exampleType":"examples"},"279bd826-907e-4584-b2eb-1b27c8f94446":{"content":{"application/json":{"example":{"error":{"code":500,"message":"Internal Server Error"}},"schema":{"description":"Internal Server Error - Unexpected server error","example":{"error":{"code":500,"message":"Internal Server Error"}},"properties":{"error":{"description":"Error data for InternalServerResponse","example":{"code":500,"message":"Internal Server Error"},"properties":{"code":{"type":"integer","isRequired":true,"uniqueKey":"error.code","typeLabel":"integer"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"metadata":{"oneOf":[{"additionalProperties":{"oneOf":[{}],"uniqueKey":"error.metadata.oneOf.0.additionalProperties","typeLabel":"any"},"type":"object","uniqueKey":"error.metadata.oneOf.0","typeLabel":"object"},{"additionalProperties":{"oneOf":[{}],"uniqueKey":"error.metadata.oneOf.1.additionalProperties","typeLabel":"any"},"type":"null","uniqueKey":"error.metadata.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.metadata","typeLabel":"object | null"}},"required":["code","message"],"type":"object","isRequired":true,"uniqueKey":"error","typeLabel":"object"},"openrouter_metadata":{"oneOf":[{"additionalProperties":{"oneOf":[{}],"uniqueKey":"openrouter_metadata.oneOf.0.additionalProperties","typeLabel":"any"},"type":"object","uniqueKey":"openrouter_metadata.oneOf.0","typeLabel":"object"},{"additionalProperties":{"oneOf":[{}],"uniqueKey":"openrouter_metadata.oneOf.1.additionalProperties","typeLabel":"any"},"type":"null","uniqueKey":"openrouter_metadata.oneOf.1","typeLabel":"null"}],"uniqueKey":"openrouter_metadata","typeLabel":"object | null"},"user_id":{"oneOf":[{"type":"string","uniqueKey":"user_id.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"user_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"user_id","typeLabel":"string | null"}},"required":["error"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":500,"message":"Internal Server Error"}}}},"exampleType":"examples"}},"description":"Internal Server Error - Unexpected server error","exampleType":"examples"},"3a1a3a21-8fac-4787-8d1f-a6a843d471d3":{"content":{"application/json":{"example":{"error":{"code":503,"message":"Service temporarily unavailable"}},"schema":{"description":"Service Unavailable - Service temporarily unavailable","example":{"error":{"code":503,"message":"Service temporarily unavailable"}},"properties":{"error":{"description":"Error data for ServiceUnavailableResponse","example":{"code":503,"message":"Service temporarily unavailable"},"properties":{"code":{"type":"integer","isRequired":true,"uniqueKey":"error.code","typeLabel":"integer"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"metadata":{"oneOf":[{"additionalProperties":{"oneOf":[{}],"uniqueKey":"error.metadata.oneOf.0.additionalProperties","typeLabel":"any"},"type":"object","uniqueKey":"error.metadata.oneOf.0","typeLabel":"object"},{"additionalProperties":{"oneOf":[{}],"uniqueKey":"error.metadata.oneOf.1.additionalProperties","typeLabel":"any"},"type":"null","uniqueKey":"error.metadata.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.metadata","typeLabel":"object | null"}},"required":["code","message"],"type":"object","isRequired":true,"uniqueKey":"error","typeLabel":"object"},"openrouter_metadata":{"oneOf":[{"additionalProperties":{"oneOf":[{}],"uniqueKey":"openrouter_metadata.oneOf.0.additionalProperties","typeLabel":"any"},"type":"object","uniqueKey":"openrouter_metadata.oneOf.0","typeLabel":"object"},{"additionalProperties":{"oneOf":[{}],"uniqueKey":"openrouter_metadata.oneOf.1.additionalProperties","typeLabel":"any"},"type":"null","uniqueKey":"openrouter_metadata.oneOf.1","typeLabel":"null"}],"uniqueKey":"openrouter_metadata","typeLabel":"object | null"},"user_id":{"oneOf":[{"type":"string","uniqueKey":"user_id.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"user_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"user_id","typeLabel":"string | null"}},"required":["error"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":503,"message":"Service temporarily unavailable"}}}},"exampleType":"examples"}},"description":"Service Unavailable - Service temporarily unavailable","exampleType":"examples"}},"security":{"34a63711-52b2-4cb6-af7d-25a8d5fc76df":{"apiKey":{"description":"API key as bearer token in Authorization header","scheme":"bearer","type":"http","scopes":[],"schemeName":"apiKey"}}},"servers":{"7075e944-05e2-4e86-8b6c-ac9eb4ffd9f1":{"description":"Production server","url":"https://openrouter.ai/api/v1","x-speakeasy-server-id":"production"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"description":"API key as bearer token in Authorization header","scheme":"bearer","type":"http","scopes":[],"schemeName":"apiKey"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"API key as bearer token in Authorization header","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"apiKey","name":"Authorization"}],"title":"apiKey"}]},"originalFileLocation":"openapi/openapi.yaml"},"subdomain":"openrouter-d02e98a0","siteName":"OpenRouter | Documentation","title":"List all endpoints for a model - OpenRouter | Documentation","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-11-05T22:44:30.642Z","originalFileLocation":"/api/api-reference/endpoints/list-all-endpoints-for-a-model.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=\"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=\"application-name\" content=\"OpenRouter | Documentation\">\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/openrouter-d02e98a0/EmhfYwFO2tvnkuV-/_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/openrouter-d02e98a0/EmhfYwFO2tvnkuV-/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/docs/mintlify-assets/_mintlify/favicons/openrouter-d02e98a0/EmhfYwFO2tvnkuV-/_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/openrouter-d02e98a0/EmhfYwFO2tvnkuV-/_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/openrouter-d02e98a0/EmhfYwFO2tvnkuV-/_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/openrouter-d02e98a0/EmhfYwFO2tvnkuV-/_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/openrouter-d02e98a0/EmhfYwFO2tvnkuV-/_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/openrouter-d02e98a0/EmhfYwFO2tvnkuV-/_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/openrouter-d02e98a0/EmhfYwFO2tvnkuV-/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"List all endpoints for a model - OpenRouter | Documentation\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"OpenRouter | Documentation\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://openrouter.ai/docs/api/api-reference/endpoints/list-all-endpoints-for-a-model\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://openrouter-d02e98a0.mintlify.app/_mintlify/api/og/v2?division=Endpoints\u0026amp;title=List+all+endpoints+for+a+model\u0026amp;theme=dbe1bfd215f87f8a607a08b0\u0026amp;signature=a2a7732e8e185574adebf5391ba08350805049a21efb8dc4a6b40e2a4614ac22\">\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=\"List all endpoints for a model - OpenRouter | Documentation\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://openrouter-d02e98a0.mintlify.app/_mintlify/api/og/v2?division=Endpoints\u0026amp;title=List+all+endpoints+for+a+model\u0026amp;theme=dbe1bfd215f87f8a607a08b0\u0026amp;signature=a2a7732e8e185574adebf5391ba08350805049a21efb8dc4a6b40e2a4614ac22\">\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/openrouter-d02e98a0/EmhfYwFO2tvnkuV-/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"OpenRouter | Documentation\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#7624F4\">\u003clink data-mint-head rel=\"canonical\" href=\"https://openrouter.ai/docs/api/api-reference/endpoints/list-all-endpoints-for-a-model\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/docs/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/docs/api/api-reference/endpoints/list-all-endpoints-for-a-model.md\">","siteName":"OpenRouter | Documentation","nav":{"global":null,"tabs":[{"tab":"Docs","icon":"book","pages":[{"title":"Docs","href":"/quickstart"}]},{"tab":"API Reference","icon":"code","groups":[{"group":"API Guides","icon":"code","pages":[{"title":"API Reference","icon":"book-open","sidebarTitle":"Overview","href":"/api_reference/overview"},{"title":"Streaming","icon":"bars-staggered","href":"/api_reference/streaming"},{"title":"Embeddings","icon":"draw-square","href":"/api_reference/embeddings"},{"title":"Limits","icon":"gauge-high","href":"/api_reference/limits"},{"title":"Authentication","icon":"lock","href":"/api_reference/authentication"},{"title":"Parameters","icon":"gear","href":"/api_reference/parameters"},{"title":"Errors and Debugging","icon":"triangle-exclamation","href":"/api_reference/errors-and-debugging"},{"group":"Responses API","icon":"reply","pages":[{"title":"Responses API","sidebarTitle":"Overview","icon":"compass","href":"/api_reference/responses/overview"},{"title":"Basic Usage","icon":"play","href":"/api_reference/responses/basic-usage"},{"title":"Reasoning","icon":"lightbulb","href":"/api_reference/responses/reasoning"},{"title":"Tool Calling","icon":"toolbox","href":"/api_reference/responses/tool-calling"},{"title":"Web Search","icon":"globe-pointer","href":"/api_reference/responses/web-search"},{"title":"Error Handling","icon":"triangle-exclamation","href":"/api_reference/responses/error-handling"}]}]},{"group":"Versioning","icon":"code-branch","pages":[{"title":"API Versioning","icon":"code-branch","href":"/api_reference/versioning"},{"title":"API Changelog","icon":"clock-rotate-left","href":"/changelog"}]},{"group":"API Reference","icon":"code","pages":[{"group":"Analytics","pages":[{"title":"Get user activity grouped by endpoint","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /activity","href":"/api/api-reference/analytics/get-user-activity-grouped-by-endpoint"},{"title":"Get available analytics metrics and dimensions","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /analytics/meta","href":"/api/api-reference/analytics/get-available-analytics-metrics-and-dimensions"},{"title":"Query analytics data","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml post /analytics/query","href":"/api/api-reference/analytics/query-analytics-data"}]},{"group":"alpha.decisions","pages":[{"title":"Submit a Decisions request","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml post /api/alpha/decisions","href":"/api/api-reference/alphadecisions/submit-a-decisions-request"}]},{"group":"alpha.extractions","pages":[{"title":"Submit an Extractions request","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml post /api/alpha/extractions","href":"/api/api-reference/alphaextractions/submit-an-extractions-request"}]},{"group":"TTS","pages":[{"title":"Create speech","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml post /audio/speech","href":"/api/api-reference/tts/create-speech"}]},{"group":"STT","pages":[{"title":"Create transcription","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml post /audio/transcriptions","href":"/api/api-reference/stt/create-transcription"}]},{"group":"OAuth","pages":[{"title":"Exchange authorization code for API key","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml post /auth/keys","href":"/api/api-reference/oauth/exchange-authorization-code-for-api-key"},{"title":"Create authorization code","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml post /auth/keys/code","href":"/api/api-reference/oauth/create-authorization-code"},{"title":"OpenRouter access token signing keys","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /oauth/jwks","href":"/api/api-reference/oauth/openrouter-access-token-signing-keys"},{"title":"Exchange a workload identity token","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml post /oauth/token","href":"/api/api-reference/oauth/exchange-a-workload-identity-token"}]},{"group":"Batch","pages":[{"title":"List batches","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /batches","href":"/api/api-reference/batch/list-batches"},{"title":"Create a batch","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml post /batches","href":"/api/api-reference/batch/create-a-batch"},{"title":"Get a batch","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /batches/{id}","href":"/api/api-reference/batch/get-a-batch"},{"title":"Delete a batch","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml delete /batches/{id}","href":"/api/api-reference/batch/delete-a-batch"}]},{"group":"Benchmarks","pages":[{"title":"List Benchmarks","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /benchmarks","href":"/api/api-reference/benchmarks/list-benchmarks"}]},{"group":"BYOK","pages":[{"title":"List BYOK provider credentials","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /byok","href":"/api/api-reference/byok/list-byok-provider-credentials"},{"title":"Create a BYOK provider credential","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml post /byok","href":"/api/api-reference/byok/create-a-byok-provider-credential"},{"title":"Get a BYOK provider credential","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /byok/{id}","href":"/api/api-reference/byok/get-a-byok-provider-credential"},{"title":"Delete a BYOK provider credential","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml delete /byok/{id}","href":"/api/api-reference/byok/delete-a-byok-provider-credential"},{"title":"Update a BYOK provider credential","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml patch /byok/{id}","href":"/api/api-reference/byok/update-a-byok-provider-credential"}]},{"group":"Chat","pages":[{"title":"Create a chat completion","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml post /chat/completions","href":"/api/api-reference/chat/create-a-chat-completion"}]},{"group":"Classifications","pages":[{"title":"Task classification market share","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /classifications/task","href":"/api/api-reference/classifications/task-classification-market-share"}]},{"group":"Containers","pages":[{"title":"List container files","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /containers/{container_id}/files","href":"/api/api-reference/containers/list-container-files"},{"title":"Retrieve a container file","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /containers/{container_id}/files/{file_id}","href":"/api/api-reference/containers/retrieve-a-container-file"},{"title":"Download container file content","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /containers/{container_id}/files/{file_id}/content","href":"/api/api-reference/containers/download-container-file-content"},{"title":"Promote a container file into workspace documents","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml post /containers/{container_id}/files/{file_id}/promote","href":"/api/api-reference/containers/promote-a-container-file-into-workspace-documents"}]},{"group":"Credits","pages":[{"title":"Get remaining credits","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /credits","href":"/api/api-reference/credits/get-remaining-credits"},{"title":"Deprecated Coinbase Commerce charge endpoint","deprecated":true,"version":null,"openapi":"/openapi/openapi.yaml post /credits/coinbase","href":"/api/api-reference/credits/deprecated-coinbase-commerce-charge-endpoint"}]},{"group":"Datasets","pages":[{"title":"Top apps by token usage","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /datasets/app-rankings","href":"/api/api-reference/datasets/top-apps-by-token-usage"},{"title":"Daily token totals for top 50 models","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /datasets/rankings-daily","href":"/api/api-reference/datasets/daily-token-totals-for-top-50-models"},{"title":"Cost per session by harness and model","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /datasets/session-cost","href":"/api/api-reference/datasets/cost-per-session-by-harness-and-model"}]},{"group":"Embeddings","pages":[{"title":"Submit an embedding request","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml post /embeddings","href":"/api/api-reference/embeddings/submit-an-embedding-request"},{"title":"List all embeddings models","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /embeddings/models","href":"/api/api-reference/embeddings/list-all-embeddings-models"}]},{"group":"Endpoints","pages":[{"title":"Preview the impact of ZDR on the available endpoints","description":null,"deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /endpoints/zdr","href":"/api/api-reference/endpoints/preview-the-impact-of-zdr-on-the-available-endpoints"},{"title":"List all endpoints for a model","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /models/{author}/{slug}/endpoints","href":"/api/api-reference/endpoints/list-all-endpoints-for-a-model"}]},{"group":"External Users","pages":[{"title":"List registered external users","description":"List registrations belonging to the authenticated organization. Inactive registrations are excluded by default. [Management key](/docs/guides/overview/auth/management-api-keys) required.","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /external-users","href":"/api/api-reference/external-users/list-registered-external-users"},{"title":"Register an external user","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml post /external-users","href":"/api/api-reference/external-users/register-an-external-user"},{"title":"Get a registered external user","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /external-users/{user}","href":"/api/api-reference/external-users/get-a-registered-external-user"},{"title":"Deactivate a registered external user","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml delete /external-users/{user}","href":"/api/api-reference/external-users/deactivate-a-registered-external-user"},{"title":"Update a registered external user","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml patch /external-users/{user}","href":"/api/api-reference/external-users/update-a-registered-external-user"}]},{"group":"Files","pages":[{"title":"List files","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /files","href":"/api/api-reference/files/list-files"},{"title":"Upload a file","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml post /files","href":"/api/api-reference/files/upload-a-file"},{"title":"Get file metadata","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /files/{file_id}","href":"/api/api-reference/files/get-file-metadata"},{"title":"Delete a file","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml delete /files/{file_id}","href":"/api/api-reference/files/delete-a-file"},{"title":"Download file content","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /files/{file_id}/content","href":"/api/api-reference/files/download-file-content"}]},{"group":"Generations","pages":[{"title":"Get request \u0026 usage metadata for a generation","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /generation","href":"/api/api-reference/generations/get-request-\u0026-usage-metadata-for-a-generation"},{"title":"Get stored prompt, completion, and error content for a generation","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /generation/content","href":"/api/api-reference/generations/get-stored-prompt-completion-and-error-content-for-a-generation"},{"title":"Submit feedback for a generation","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml post /generation/feedback","href":"/api/api-reference/generations/submit-feedback-for-a-generation"}]},{"group":"Guardrails","pages":[{"title":"List guardrails","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /guardrails","href":"/api/api-reference/guardrails/list-guardrails"},{"title":"Create a guardrail","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml post /guardrails","href":"/api/api-reference/guardrails/create-a-guardrail"},{"title":"Get a guardrail","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /guardrails/{id}","href":"/api/api-reference/guardrails/get-a-guardrail"},{"title":"Delete a guardrail","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml delete /guardrails/{id}","href":"/api/api-reference/guardrails/delete-a-guardrail"},{"title":"Update a guardrail","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml patch /guardrails/{id}","href":"/api/api-reference/guardrails/update-a-guardrail"},{"title":"List key assignments for a guardrail","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /guardrails/{id}/assignments/keys","href":"/api/api-reference/guardrails/list-key-assignments-for-a-guardrail"},{"title":"Bulk assign keys to a guardrail","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml post /guardrails/{id}/assignments/keys","href":"/api/api-reference/guardrails/bulk-assign-keys-to-a-guardrail"},{"title":"Bulk unassign keys from a guardrail","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml post /guardrails/{id}/assignments/keys/remove","href":"/api/api-reference/guardrails/bulk-unassign-keys-from-a-guardrail"},{"title":"List member assignments for a guardrail","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /guardrails/{id}/assignments/members","href":"/api/api-reference/guardrails/list-member-assignments-for-a-guardrail"},{"title":"Bulk assign members to a guardrail","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml post /guardrails/{id}/assignments/members","href":"/api/api-reference/guardrails/bulk-assign-members-to-a-guardrail"},{"title":"Bulk unassign members from a guardrail","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml post /guardrails/{id}/assignments/members/remove","href":"/api/api-reference/guardrails/bulk-unassign-members-from-a-guardrail"},{"title":"List all key assignments","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /guardrails/assignments/keys","href":"/api/api-reference/guardrails/list-all-key-assignments"},{"title":"List all member assignments","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /guardrails/assignments/members","href":"/api/api-reference/guardrails/list-all-member-assignments"}]},{"group":"Images","pages":[{"title":"Generate an image","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml post /images","href":"/api/api-reference/images/generate-an-image"},{"title":"List image generation models","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /images/models","href":"/api/api-reference/images/list-image-generation-models"},{"title":"List endpoints for an image model","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /images/models/{author}/{slug}/endpoints","href":"/api/api-reference/images/list-endpoints-for-an-image-model"}]},{"group":"API Keys","pages":[{"title":"Get current API key","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /key","href":"/api/api-reference/api-keys/get-current-api-key"},{"title":"List API keys","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /keys","href":"/api/api-reference/api-keys/list-api-keys"},{"title":"Create a new API key","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml post /keys","href":"/api/api-reference/api-keys/create-a-new-api-key"},{"title":"Get a single API key","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /keys/{hash}","href":"/api/api-reference/api-keys/get-a-single-api-key"},{"title":"Delete an API key","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml delete /keys/{hash}","href":"/api/api-reference/api-keys/delete-an-api-key"},{"title":"Update an API key","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml patch /keys/{hash}","href":"/api/api-reference/api-keys/update-an-api-key"}]},{"group":"Anthropic Messages","pages":[{"title":"Create a message","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml post /messages","href":"/api/api-reference/anthropic-messages/create-a-message"}]},{"group":"Models","pages":[{"title":"Get a model by its slug","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /model/{author}/{slug}","href":"/api/api-reference/models/get-a-model-by-its-slug"},{"title":"List all models and their properties","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /models","href":"/api/api-reference/models/list-all-models-and-their-properties"},{"title":"Get total count of available models","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /models/count","href":"/api/api-reference/models/get-total-count-of-available-models"},{"title":"List models filtered by user provider preferences, privacy settings, and guardrails","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /models/user","href":"/api/api-reference/models/list-models-filtered-by-user-provider-preferences-privacy-settings-and-guardrails"}]},{"group":"Observability","pages":[{"title":"List observability destinations","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /observability/destinations","href":"/api/api-reference/observability/list-observability-destinations"},{"title":"Create an observability destination","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml post /observability/destinations","href":"/api/api-reference/observability/create-an-observability-destination"},{"title":"Get an observability destination","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /observability/destinations/{id}","href":"/api/api-reference/observability/get-an-observability-destination"},{"title":"Delete an observability destination","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml delete /observability/destinations/{id}","href":"/api/api-reference/observability/delete-an-observability-destination"},{"title":"Update an observability destination","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml patch /observability/destinations/{id}","href":"/api/api-reference/observability/update-an-observability-destination"}]},{"group":"Organization","pages":[{"title":"List organization members","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /organization/members","href":"/api/api-reference/organization/list-organization-members"},{"title":"Get organization settings","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /organization/settings","href":"/api/api-reference/organization/get-organization-settings"},{"title":"Update organization settings","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml patch /organization/settings","href":"/api/api-reference/organization/update-organization-settings"}]},{"group":"Presets","pages":[{"title":"List presets","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /presets","href":"/api/api-reference/presets/list-presets"},{"title":"Get a preset","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /presets/{slug}","href":"/api/api-reference/presets/get-a-preset"},{"title":"Create a preset from a chat-completions request body","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml post /presets/{slug}/chat/completions","href":"/api/api-reference/presets/create-a-preset-from-a-chat-completions-request-body"},{"title":"Create a preset from a messages request body","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml post /presets/{slug}/messages","href":"/api/api-reference/presets/create-a-preset-from-a-messages-request-body"},{"title":"Create a preset from a responses request body","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml post /presets/{slug}/responses","href":"/api/api-reference/presets/create-a-preset-from-a-responses-request-body"},{"title":"List versions of a preset","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /presets/{slug}/versions","href":"/api/api-reference/presets/list-versions-of-a-preset"},{"title":"Get a specific version of a preset","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /presets/{slug}/versions/{version}","href":"/api/api-reference/presets/get-a-specific-version-of-a-preset"}]},{"group":"Private Endpoints","pages":[{"title":"List private endpoints","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /private-endpoints","href":"/api/api-reference/private-endpoints/list-private-endpoints"},{"title":"Create a private endpoint","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml post /private-endpoints","href":"/api/api-reference/private-endpoints/create-a-private-endpoint"},{"title":"Get a private endpoint","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /private-endpoints/{id}","href":"/api/api-reference/private-endpoints/get-a-private-endpoint"},{"title":"Delete a private endpoint","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml delete /private-endpoints/{id}","href":"/api/api-reference/private-endpoints/delete-a-private-endpoint"},{"title":"Update a private endpoint","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml patch /private-endpoints/{id}","href":"/api/api-reference/private-endpoints/update-a-private-endpoint"},{"title":"Activate a validated private endpoint","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml post /private-endpoints/{id}/activate","href":"/api/api-reference/private-endpoints/activate-a-validated-private-endpoint"},{"title":"Disable a private endpoint","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml post /private-endpoints/{id}/disable","href":"/api/api-reference/private-endpoints/disable-a-private-endpoint"},{"title":"Enable a private endpoint","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml post /private-endpoints/{id}/enable","href":"/api/api-reference/private-endpoints/enable-a-private-endpoint"},{"title":"Validate a draft private endpoint","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml post /private-endpoints/{id}/validate","href":"/api/api-reference/private-endpoints/validate-a-draft-private-endpoint"}]},{"group":"Private Providers","pages":[{"title":"List private providers","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /private-providers","href":"/api/api-reference/private-providers/list-private-providers"},{"title":"Create a private provider","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml post /private-providers","href":"/api/api-reference/private-providers/create-a-private-provider"},{"title":"Get a private provider","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /private-providers/{slug}","href":"/api/api-reference/private-providers/get-a-private-provider"},{"title":"Delete a private provider","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml delete /private-providers/{slug}","href":"/api/api-reference/private-providers/delete-a-private-provider"},{"title":"Update a private provider","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml patch /private-providers/{slug}","href":"/api/api-reference/private-providers/update-a-private-provider"}]},{"group":"Providers","pages":[{"title":"List all providers","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /providers","href":"/api/api-reference/providers/list-all-providers"}]},{"group":"Rerank","pages":[{"title":"Submit a rerank request","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml post /rerank","href":"/api/api-reference/rerank/submit-a-rerank-request"}]},{"group":"Responses","pages":[{"title":"Create a response","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml post /responses","href":"/api/api-reference/responses/create-a-response"}]},{"group":"SCIM","pages":[{"title":"List SCIM group mappings","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /scim/group-mappings","href":"/api/api-reference/scim/list-scim-group-mappings"},{"title":"Create a SCIM group mapping","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml post /scim/group-mappings","href":"/api/api-reference/scim/create-a-scim-group-mapping"},{"title":"Get a SCIM group mapping","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /scim/group-mappings/{id}","href":"/api/api-reference/scim/get-a-scim-group-mapping"},{"title":"Delete a SCIM group mapping","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml delete /scim/group-mappings/{id}","href":"/api/api-reference/scim/delete-a-scim-group-mapping"},{"title":"Update a SCIM group mapping","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml patch /scim/group-mappings/{id}","href":"/api/api-reference/scim/update-a-scim-group-mapping"},{"title":"List SCIM groups","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /scim/groups","href":"/api/api-reference/scim/list-scim-groups"},{"title":"Start a SCIM directory sync","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml post /scim/sync-jobs","href":"/api/api-reference/scim/start-a-scim-directory-sync"},{"title":"Get SCIM directory sync status","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /scim/sync-jobs/{id}","href":"/api/api-reference/scim/get-scim-directory-sync-status"}]},{"group":"SystemOne","pages":[{"title":"Submit a System One request","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml post /systemone","href":"/api/api-reference/systemone/submit-a-system-one-request"}]},{"group":"Tools","pages":[{"title":"List server tools","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /tools","href":"/api/api-reference/tools/list-server-tools"},{"title":"Get a server tool","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /tools/{name}","href":"/api/api-reference/tools/get-a-server-tool"}]},{"group":"Vault","pages":[{"title":"List the connections an intern can use","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /vault/interns/{internId}/connections","href":"/api/api-reference/vault/list-the-connections-an-intern-can-use"},{"title":"List the secrets an intern receives","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /vault/interns/{internId}/effective-secrets","href":"/api/api-reference/vault/list-the-secrets-an-intern-receives"},{"title":"List intern secrets","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /vault/interns/{internId}/secrets","href":"/api/api-reference/vault/list-intern-secrets"},{"title":"Store an intern secret","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml put /vault/interns/{internId}/secrets/{name}","href":"/api/api-reference/vault/store-an-intern-secret"},{"title":"Delete an intern secret","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml delete /vault/interns/{internId}/secrets/{name}","href":"/api/api-reference/vault/delete-an-intern-secret"},{"title":"Copy workspace secrets to an intern","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml post /vault/interns/{internId}/secrets/copy","href":"/api/api-reference/vault/copy-workspace-secrets-to-an-intern"},{"title":"List workspace secrets","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /vault/secrets","href":"/api/api-reference/vault/list-workspace-secrets"},{"title":"Store a workspace secret","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml put /vault/secrets/{name}","href":"/api/api-reference/vault/store-a-workspace-secret"},{"title":"Delete a workspace secret","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml delete /vault/secrets/{name}","href":"/api/api-reference/vault/delete-a-workspace-secret"}]},{"group":"Video Generation","pages":[{"title":"Submit a video generation request","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml post /videos","href":"/api/api-reference/video-generation/submit-a-video-generation-request"},{"title":"Poll video generation status","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /videos/{jobId}","href":"/api/api-reference/video-generation/poll-video-generation-status"},{"title":"Download generated video content","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /videos/{jobId}/content","href":"/api/api-reference/video-generation/download-generated-video-content"},{"title":"List all video generation models","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /videos/models","href":"/api/api-reference/video-generation/list-all-video-generation-models"}]},{"group":"Workspaces","pages":[{"title":"List workspaces","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /workspaces","href":"/api/api-reference/workspaces/list-workspaces"},{"title":"Create a workspace","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml post /workspaces","href":"/api/api-reference/workspaces/create-a-workspace"},{"title":"Get a workspace","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /workspaces/{id}","href":"/api/api-reference/workspaces/get-a-workspace"},{"title":"Delete a workspace","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml delete /workspaces/{id}","href":"/api/api-reference/workspaces/delete-a-workspace"},{"title":"Update a workspace","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml patch /workspaces/{id}","href":"/api/api-reference/workspaces/update-a-workspace"},{"title":"List workspace members","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /workspaces/{id}/members","href":"/api/api-reference/workspaces/list-workspace-members"},{"title":"Bulk add members to a workspace","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml post /workspaces/{id}/members/add","href":"/api/api-reference/workspaces/bulk-add-members-to-a-workspace"},{"title":"Bulk remove members from a workspace","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml post /workspaces/{id}/members/remove","href":"/api/api-reference/workspaces/bulk-remove-members-from-a-workspace"},{"title":"List workspace budgets","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /workspaces/{workspace_ref}/budgets","href":"/api/api-reference/workspaces/list-workspace-budgets"},{"title":"Get a workspace budget","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml get /workspaces/{workspace_ref}/budgets/{interval}","href":"/api/api-reference/workspaces/get-a-workspace-budget"},{"title":"Create or update a workspace budget","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml put /workspaces/{workspace_ref}/budgets/{interval}","href":"/api/api-reference/workspaces/create-or-update-a-workspace-budget"},{"title":"Delete a workspace budget","deprecated":null,"version":null,"openapi":"/openapi/openapi.yaml delete /workspaces/{workspace_ref}/budgets/{interval}","href":"/api/api-reference/workspaces/delete-a-workspace-budget"}]}]}]},{"tab":"Client SDKs","icon":"cube","pages":[{"title":"Client SDKs","href":"/client-sdks/overview"}]},{"tab":"Agent SDK","icon":"cube","pages":[{"title":"Agent SDK","href":"/agent-sdk/overview"}]},{"tab":"Cookbook","icon":"book-open","pages":[{"title":"Cookbook","href":"/cookbook/get-started/quickstart"}]}]},"basePath":"","title":"List all endpoints for a model - OpenRouter | Documentation","buildId":"dpl_DQCMP4mismmBj3AFK7YZqNhrtLNq","deploymentId":"dpl_DQCMP4mismmBj3AFK7YZqNhrtLNq","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-Dub5uFbX.js","utils-BAOmmv1r.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-Cfvfuq3w.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-Chp3aFWD.js","snippetPresets-mdHEOVGp.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-BRlO2pcM.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-CrgNI3V9.js","shallow-Dl286uHn.js","getApiPlaygroundDisplay-YPKheyKd.js","CodeSnippet-BdD-lURy.js","CodeSnippets-BSggiSf7.js","Page-DZmn3mFl.js","getPastedJson-bQHv51S7.js","icon-SCSCTtsH.js","MethodPill-GnU2wo5s.js","DuplicateIcon-BM7jzGa_.js","createIcon-atdRs-Wh.js","DynamicMarkdown-B95U9rYS.js","SectionHeading-CvCxtB39.js","axios-vUo_bRtp.js","Markdown-CBJtw_nx.js","clsx-C_advUgl.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-Dpla8_R7.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-BoWSGi0C.js"]}