Call this endpoint before sending a request to confirm that a model, provider, endpoint and parameter combination is available. For openai/gpt-6-astra:
These filters accept repeated parameters or a comma-separated list: provider, provider_status, provider_routing_status, model_routing_status, capability_status, provider_availability_status, provider_availability_reason, status, and supported_parameters (alias params). List models describes their values.This returns OpenAI routes that support reasoning_effort:
{"docsConfig":{"theme":"luma","$schema":"https://mintlify.com/docs.json","name":"Phaseo Docs","description":"Documentation for Phaseo Gateway, SDKs, routing, pricing, guardrails, async jobs, and model discovery across providers.","colors":{"primary":"#0069a8","light":"#38bdf8","dark":"#0069a8"},"logo":{"light":"https://mintcdn.com/aistats/bxzzjromPyjBlHKc/logo/light.svg?fit=max\u0026auto=format\u0026n=bxzzjromPyjBlHKc\u0026q=85\u0026s=f1e10d307a46469852edc2ae198e3c2a","dark":"https://mintcdn.com/aistats/bxzzjromPyjBlHKc/logo/dark.svg?fit=max\u0026auto=format\u0026n=bxzzjromPyjBlHKc\u0026q=85\u0026s=6719dd9bade9b7f4025561841736d72e","href":"https://phaseo.app"},"favicon":"https://mintcdn.com/aistats/UZfkYM9yX2Gru_Ij/favicon.svg?fit=max\u0026auto=format\u0026n=UZfkYM9yX2Gru_Ij\u0026q=85\u0026s=04efcd38cad9cdb599aa92c800724bd5","api":{"openapi":"openapi/v1/openapi.yaml","playground":{"display":"interactive"},"examples":{"defaults":"all","languages":["javascript","python","bash","go","java","php","ruby"],"prefill":true,"autogenerate":true}},"background":{"color":{"light":"#ffffff","dark":"#0a0a0a"}},"navbar":{"primary":{"type":"button","label":"Get API Key","href":"https://phaseo.app/settings/keys"}},"footer":{"socials":{"x":"https://x.com/phaseoteam","github":"https://github.com/phaseoteam/Phaseo","discord":"https://discord.gg/aQyywCvgZ5","linkedin":"https://www.linkedin.com/company/phaseoapp","reddit":"https://www.reddit.com/r/Phaseo"},"links":[{"items":[{"label":"Models","href":"https://phaseo.app/models"},{"label":"Status","href":"https://status.phaseo.app"},{"label":"Support","href":"https://phaseo.app/help"}]}]},"seo":{"metatags":{"canonical":"https://phaseo.app/docs"}},"fonts":{"family":"Montserrat"},"icons":{"library":"lucide"},"styling":{"eyebrows":"section","latex":true},"contextual":{"options":["copy","view","chatgpt","claude","cursor","vscode","devin","mcp","add-mcp"],"display":"header"},"interaction":{"drilldown":false},"metadata":{"timestamp":true},"markdown":{"instructions":["Phaseo Gateway base URL: https://api.phaseo.app/v1. Send `Authorization: Bearer $PHASEO_API_KEY` with every request.","Model IDs look like `provider/model`, for example `openai/gpt-6-astra`. Do not guess IDs: list them with `GET /v1/models` or check https://phaseo.app/models. `phaseo/free` routes to an available free model and needs no wallet balance.","For new text integrations prefer `POST /v1/responses`. `POST /v1/chat/completions` (OpenAI format) and `POST /v1/messages` (Anthropic format) suit existing code.","The full API contract is https://phaseo.app/docs/openapi/v1/openapi.yaml. Official SDKs: `@phaseo/sdk` (TypeScript) and `phaseo` (Python), plus Go, C#, PHP, Ruby and Rust.","Search these docs over MCP at https://phaseo.app/docs/mcp, and install Phaseo skills with `npx skills add https://phaseo.app/docs`. If a page is wrong or out of date, report it with the MCP `submit_feedback` tool.","Manage Phaseo accounts with the `phaseo` CLI (`npm install -g @phaseo/cli`, then `phaseo login` or `phaseo login --device-code`), the `/v1` Management API or the MCP server at `https://mcp.phaseo.app/mcp?access=manage`. Do not send users to the dashboard for account tasks. A person is still needed for sign-up, approving a sign-in, paying the first top-up on the checkout link that `phaseo credits add` returns when no card is saved, confirming each saved-card top-up from the emailed link, and account security (password, MFA, passkeys). Create API keys with `phaseo keys create --name \u003cname> --json`; never guess one. Credit top-ups need `phaseo login --scopes billing:write` first. Task map: https://phaseo.app/docs/v1/developers/manage-from-an-agent.md."]},"navigation":{"languages":[{"language":"en","href":"v1"},{"language":"es","footer":{"socials":{"x":"https://x.com/phaseoteam","github":"https://github.com/phaseoteam/Phaseo","discord":"https://discord.gg/aQyywCvgZ5","linkedin":"https://www.linkedin.com/company/phaseoapp","reddit":"https://www.reddit.com/r/Phaseo"},"links":[{"items":[{"label":"Modelos","href":"https://phaseo.app/es-ES/models"},{"label":"Estado","href":"https://status.phaseo.app"},{"label":"Soporte","href":"https://phaseo.app/es-ES/help"}]}]},"navbar":{"primary":{"type":"button","label":"Obtener clave de API","href":"https://phaseo.app/es-ES/settings/keys"}},"href":"es/v1"},{"language":"fr","footer":{"socials":{"x":"https://x.com/phaseoteam","github":"https://github.com/phaseoteam/Phaseo","discord":"https://discord.gg/aQyywCvgZ5","linkedin":"https://www.linkedin.com/company/phaseoapp","reddit":"https://www.reddit.com/r/Phaseo"},"links":[{"items":[{"label":"Modèles","href":"https://phaseo.app/fr-FR/models"},{"label":"État","href":"https://status.phaseo.app"},{"label":"Assistance","href":"https://phaseo.app/fr-FR/help"}]}]},"navbar":{"primary":{"type":"button","label":"Obtenir une clé API","href":"https://phaseo.app/fr-FR/settings/keys"}},"href":"fr/v1"},{"language":"de","footer":{"socials":{"x":"https://x.com/phaseoteam","github":"https://github.com/phaseoteam/Phaseo","discord":"https://discord.gg/aQyywCvgZ5","linkedin":"https://www.linkedin.com/company/phaseoapp","reddit":"https://www.reddit.com/r/Phaseo"},"links":[{"items":[{"label":"Modelle","href":"https://phaseo.app/de-DE/models"},{"label":"Status","href":"https://status.phaseo.app"},{"label":"Support","href":"https://phaseo.app/de-DE/help"}]}]},"navbar":{"primary":{"type":"button","label":"API-Schlüssel erstellen","href":"https://phaseo.app/de-DE/settings/keys"}},"href":"de/v1"},{"language":"pt-BR","footer":{"socials":{"x":"https://x.com/phaseoteam","github":"https://github.com/phaseoteam/Phaseo","discord":"https://discord.gg/aQyywCvgZ5","linkedin":"https://www.linkedin.com/company/phaseoapp","reddit":"https://www.reddit.com/r/Phaseo"},"links":[{"items":[{"label":"Modelos","href":"https://phaseo.app/pt-BR/models"},{"label":"Status","href":"https://status.phaseo.app"},{"label":"Suporte","href":"https://phaseo.app/pt-BR/help"}]}]},"navbar":{"primary":{"type":"button","label":"Obter chave de API","href":"https://phaseo.app/pt-BR/settings/keys"}},"href":"pt-BR/v1"},{"language":"ja","footer":{"socials":{"x":"https://x.com/phaseoteam","github":"https://github.com/phaseoteam/Phaseo","discord":"https://discord.gg/aQyywCvgZ5","linkedin":"https://www.linkedin.com/company/phaseoapp","reddit":"https://www.reddit.com/r/Phaseo"},"links":[{"items":[{"label":"モデル","href":"https://phaseo.app/ja/models"},{"label":"ステータス","href":"https://status.phaseo.app"},{"label":"サポート","href":"https://phaseo.app/ja/help"}]}]},"navbar":{"primary":{"type":"button","label":"API キーを取得","href":"https://phaseo.app/ja/settings/keys"}},"href":"ja/v1"},{"language":"zh-Hans","footer":{"socials":{"x":"https://x.com/phaseoteam","github":"https://github.com/phaseoteam/Phaseo","discord":"https://discord.gg/aQyywCvgZ5","linkedin":"https://www.linkedin.com/company/phaseoapp","reddit":"https://www.reddit.com/r/Phaseo"},"links":[{"items":[{"label":"模型","href":"https://phaseo.app/zh-Hans/models"},{"label":"状态","href":"https://status.phaseo.app"},{"label":"支持","href":"https://phaseo.app/zh-Hans/help"}]}]},"navbar":{"primary":{"type":"button","label":"获取 API 密钥","href":"https://phaseo.app/zh-Hans/settings/keys"}},"href":"zh-Hans/v1"},{"language":"hi","footer":{"socials":{"x":"https://x.com/phaseoteam","github":"https://github.com/phaseoteam/Phaseo","discord":"https://discord.gg/aQyywCvgZ5","linkedin":"https://www.linkedin.com/company/phaseoapp","reddit":"https://www.reddit.com/r/Phaseo"},"links":[{"items":[{"label":"मॉडल","href":"https://phaseo.app/hi/models"},{"label":"स्थिति","href":"https://status.phaseo.app"},{"label":"सहायता","href":"https://phaseo.app/hi/help"}]}]},"navbar":{"primary":{"type":"button","label":"API कुंजी प्राप्त करें","href":"https://phaseo.app/hi/settings/keys"}},"href":"hi/v1"},{"language":"ar","footer":{"socials":{"x":"https://x.com/phaseoteam","github":"https://github.com/phaseoteam/Phaseo","discord":"https://discord.gg/aQyywCvgZ5","linkedin":"https://www.linkedin.com/company/phaseoapp","reddit":"https://www.reddit.com/r/Phaseo"},"links":[{"items":[{"label":"النماذج","href":"https://phaseo.app/ar-SA/models"},{"label":"الحالة","href":"https://status.phaseo.app"},{"label":"الدعم","href":"https://phaseo.app/ar-SA/help"}]}]},"navbar":{"primary":{"type":"button","label":"احصل على مفتاح API","href":"https://phaseo.app/ar-SA/settings/keys"}},"href":"ar/v1"}]}},"deployment":{"deploymentMetadataValue":{"subdomain":"aistats","hasAudioNarration":false,"actualSubdomain":"aistats","customDomains":["phaseo.app"],"gitSource":{"type":"github","owner":"phaseoteam","repo":"phaseo","deployBranch":"main","contentDirectory":"apps/docs","isPrivate":false,"mountPath":"","label":""},"feedback":{"thumbs":true,"agentFeedback":true,"issues":true,"edits":true},"entitlements":{},"buildId":"6af340763cb52e19ebcd8055","clientVersion":"0.0.4102","searchFilterCounts":[{"language":"ar","tag":"مرجع API","count":243},{"language":"de","tag":"API-Referenz","count":243},{"language":"es","tag":"Referencia API","count":243},{"language":"fr","tag":"Référence API","count":243},{"language":"hi","tag":"API संदर्भ","count":243},{"language":"ja","tag":"APIリファレンス","count":243},{"language":"pt-BR","tag":"Referência API","count":243},{"language":"en","tag":"API Reference","count":243},{"language":"zh-Hans","tag":"API 参考","count":243},{"language":"hi","tag":"दस्तावेज़","count":141},{"language":"ja","tag":"ドキュメント","count":141},{"language":"zh-Hans","tag":"文档","count":141},{"language":"ar","tag":"الوثائق","count":139},{"language":"de","tag":"Docs","count":139},{"language":"es","tag":"Docs","count":139},{"language":"fr","tag":"Docs","count":139},{"language":"pt-BR","tag":"Docs","count":139},{"language":"en","tag":"Docs","count":139},{"language":"ar","tag":"إدارة مساحات العمل","count":103},{"language":"de","tag":"Arbeitsbereichsverwaltung","count":103},{"language":"es","tag":"Gestión de espacios de trabajo","count":103},{"language":"fr","tag":"Gestion des espaces de travail","count":103},{"language":"hi","tag":"वर्कस्पेस प्रबंधन","count":103},{"language":"ja","tag":"ワークスペース管理","count":103},{"language":"pt-BR","tag":"Gerenciamento de espaços de trabalho","count":103},{"language":"en","tag":"Workspace Management","count":103},{"language":"zh-Hans","tag":"工作区管理","count":103},{"language":"ar","tag":"التوجيه والسياسات","count":57},{"language":"de","tag":"Routing und Richtlinien","count":57},{"language":"es","tag":"Enrutamiento y políticas","count":57},{"language":"fr","tag":"Routage et politiques","count":57},{"language":"hi","tag":"रूटिंग और नीतियाँ","count":57},{"language":"ja","tag":"ルーティングとポリシー","count":57},{"language":"pt-BR","tag":"Roteamento e políticas","count":57},{"language":"zh-Hans","tag":"路由与策略","count":57},{"language":"en","tag":"Routing \u0026 Policies","count":52},{"language":"ar","tag":"التكاملات","count":39},{"language":"de","tag":"Integrationen","count":39},{"language":"es","tag":"Integraciones","count":39},{"language":"fr","tag":"Intégrations","count":39},{"language":"hi","tag":"एकीकरण","count":39},{"language":"ja","tag":"連携","count":39},{"language":"pt-BR","tag":"Integrações","count":39},{"language":"en","tag":"Integrations","count":39},{"language":"zh-Hans","tag":"集成","count":39},{"language":"ar","tag":"الميزات","count":36},{"language":"de","tag":"Funktionen","count":36},{"language":"es","tag":"Funciones","count":36},{"language":"fr","tag":"Fonctionnalités","count":36},{"language":"hi","tag":"सुविधाएँ","count":36},{"language":"ja","tag":"機能","count":36},{"language":"pt-BR","tag":"Recursos","count":36},{"language":"en","tag":"Features","count":36},{"language":"zh-Hans","tag":"功能","count":36},{"language":"ar","tag":"دليل الوصفات","count":29},{"language":"de","tag":"Rezeptbuch","count":29},{"language":"es","tag":"Recetario","count":29},{"language":"fr","tag":"Recettes","count":29},{"language":"hi","tag":"कुकबुक","count":29},{"language":"ja","tag":"クックブック","count":29},{"language":"pt-BR","tag":"Receitas","count":29},{"language":"en","tag":"Cookbook","count":29},{"language":"zh-Hans","tag":"实用指南","count":29},{"language":"ar","tag":"الاستخدام والمراقبة","count":28},{"language":"de","tag":"Nutzung und Überwachung","count":28},{"language":"es","tag":"Uso y supervisión","count":28},{"language":"fr","tag":"Utilisation et surveillance","count":28},{"language":"hi","tag":"उपयोग और निगरानी","count":28},{"language":"ja","tag":"使用状況と監視","count":28},{"language":"pt-BR","tag":"Uso e monitoramento","count":28},{"language":"en","tag":"Usage \u0026 Monitoring","count":28},{"language":"zh-Hans","tag":"用量与监控","count":28},{"language":"ar","tag":"SDK العميل","count":26},{"language":"de","tag":"SDKs","count":26},{"language":"es","tag":"SDKs","count":26},{"language":"fr","tag":"SDK client","count":26},{"language":"hi","tag":"क्लाइंट SDK","count":26},{"language":"ja","tag":"SDK","count":26},{"language":"pt-BR","tag":"SDKs","count":26},{"language":"en","tag":"Client SDKs","count":26},{"language":"zh-Hans","tag":"客户端 SDK","count":26},{"language":"ar","tag":"أدلة الترحيل","count":23},{"language":"de","tag":"Migrationsleitfäden","count":23},{"language":"es","tag":"Guías de migración","count":23},{"language":"fr","tag":"Guides de migration","count":23},{"language":"hi","tag":"माइग्रेशन गाइड","count":23},{"language":"ja","tag":"移行ガイド","count":23},{"language":"pt-BR","tag":"Guias de migração","count":23},{"language":"en","tag":"Migration Guides","count":23},{"language":"zh-Hans","tag":"迁移指南","count":23}],"searchSettings":{"maxResults":10,"showContentSnippets":true}},"assistantConfig":{},"basePath":"/docs","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-rbac-roles","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":true},"customCss":[{"filePath":"styles.css","content":":root{--sidebar-width: 17.5rem}#navbar div:has(>a>img.nav-logo){min-width:max-content}#navbar nav[class*=\"navbar:flex\"]{justify-content:safe center;overflow-x:auto;scrollbar-width:none}#navbar nav[class*=\"navbar:flex\"] li>:is(a,button){padding-inline:0.6875rem}@media (max-width: 1279px){#navbar nav[class*=\"navbar:flex\"] li>:is(a,button){padding-inline:0.5rem;font-size:0.8125rem}}#navbar :is([class*=\"rounded-full\"],#localization-select-trigger){border-radius:0.375rem}@media (max-width: 1399px){html:not([lang=\"en\"]) #navbar nav[class*=\"navbar:flex\"] li>:is(a,button)>svg[style*=\"mask-image\"]{display:none}}@media (max-width: 1279px){#navbar nav[class*=\"navbar:flex\"] li>:is(a,button)>svg[style*=\"mask-image\"]{display:none}}@media (min-width: 1280px){#content-area{--content-width: clamp(40.5rem, min(100vw - 41rem, 100vw - 2 * var(--sidebar-width) - 5rem), 56rem)}#content-container:has(>[data-api-example]) #content-area{--content-width: clamp(40.5rem, 100vw - var(--sidebar-width) - 35.5rem, 56rem);margin-inline:auto!important}}#footer{border-top-width:1px}#footer>div{max-width:none;padding-inline:2rem}@media (min-width: 1800px){:root{--sidebar-width: 24rem}#sidebar-content :is(a,button) .flex-wrap{flex-wrap:nowrap}#sidebar-content button>div:first-child{min-width:0}#sidebar-content :is(a,button) div>span:first-child:not(.method-nav-pill,.nav-tag-pill),#sidebar-content .sidebar-group-header{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}}#page-title{font-size:1.875rem;line-height:2.25rem}#header .prose{font-size:1rem;line-height:1.625rem}#content.mdx-content{font-size:0.9375rem;line-height:1.625rem}#content.mdx-content h2{font-size:1.25rem;line-height:1.75rem}#content.mdx-content h3{font-size:1.0625rem;line-height:1.5rem}#sidebar-content div[class~=\"lg:mt-8\"]{margin-top:1.25rem}:is(.sidebar-group-header,.eyebrow){text-transform:none}.ph-paths{border-top:1px solid rgb(0 0 0 / 0.08)}.ph-paths>*{display:block;margin:0}.ph-paths a{display:grid;grid-template-columns:16rem 1fr;gap:0.25rem 1.5rem;padding:0.875rem 0.125rem;border-bottom:1px solid rgb(0 0 0 / 0.08);color:rgb(107 114 128);font-size:0.9375rem;line-height:1.5;text-decoration:none}.ph-paths a strong{display:flex;align-items:center;gap:0.625rem;color:rgb(17 24 39);font-weight:600}.ph-paths a:hover strong{color:rgb(var(--primary))}.ph-sdks>*{display:flex;flex-wrap:wrap;gap:0.75rem 1.75rem;margin:0}.ph-sdks a{display:inline-flex;align-items:center;gap:0.5rem;color:rgb(17 24 39);font-weight:500;text-decoration:none}.ph-sdks a:hover{color:rgb(var(--primary))}:is(html.dark,html[data-theme=\"dark\"]) :is(.ph-paths,.ph-paths a){border-color:rgb(255 255 255 / 0.1)}:is(html.dark,html[data-theme=\"dark\"]) .ph-paths a{color:rgb(156 163 175)}:is(html.dark,html[data-theme=\"dark\"]) :is(.ph-paths a strong,.ph-sdks a){color:rgb(255 255 255)}:is(html.dark,html[data-theme=\"dark\"]) .ph-paths a:hover strong,:is(html.dark,html[data-theme=\"dark\"]) .ph-sdks a:hover{color:rgb(var(--primary-light))}@media (max-width: 640px){.ph-paths a{grid-template-columns:1fr}}:is(html.dark,html[data-theme=\"dark\"]) img[src$=\"/icons/brands/cline.svg\"]{content:url(\"/icons/brands/cline-dark.svg\")}:is(html.dark,html[data-theme=\"dark\"]) img[src$=\"/icons/brands/cursor.svg\"]{content:url(\"/icons/brands/cursor-dark.svg\")}:is(html.dark,html[data-theme=\"dark\"]) img[src$=\"/icons/brands/kilo.svg\"]{content:url(\"/icons/brands/kilo-dark.svg\")}:is(html.dark,html[data-theme=\"dark\"]) img[src$=\"/icons/brands/opencode.svg\"]{content:url(\"/icons/brands/opencode-dark.svg\")}:is(html.dark,html[data-theme=\"dark\"]) img[src$=\"/icons/brands/prime-agent.svg\"]{content:url(\"/icons/brands/prime-agent-dark.svg\")}:is(html.dark,html[data-theme=\"dark\"]) img[src$=\"/icons/brands/continue.svg\"]{content:url(\"/icons/brands/continue-dark.svg\")}:is(html.dark,html[data-theme=\"dark\"]) img[src$=\"/icons/brands/oh-my-pi.svg\"]{content:url(\"/icons/brands/oh-my-pi-dark.svg\")}:is(html.dark,html[data-theme=\"dark\"]) img[src$=\"/icons/brands/pi.svg\"]{content:url(\"/icons/brands/pi-dark.svg\")}:is(html.dark,html[data-theme=\"dark\"]) img[src$=\"/icons/brands/roo-code.svg\"],:is(html.dark,html[data-theme=\"dark\"]) img[src$=\"/icons/brands/zed.svg\"]{filter:invert(1)}html[lang=\"ar\"] :is(#content-area,#sidebar-content,#table-of-contents-content){direction:rtl}html[lang=\"ar\"] #content-area :is(pre,code){direction:ltr;unicode-bidi:isolate}html[lang=\"ar\"] #content-area .prose li:not(.not-prose li){padding-left:6px;padding-right:32px}html[lang=\"ar\"] #content-area .prose li:not(.not-prose li)::before{left:auto;right:8px}.changelog-filters{position:sticky;top:3rem;z-index:20;display:flex;align-items:center;gap:0.5rem;margin:0 0 1rem;padding:0.75rem 0;overflow-x:auto;scrollbar-width:none;background:#fff;border-bottom:1px solid rgb(0 0 0 / 0.08)}.dark .changelog-filters{background:#0a0a0a;border-bottom-color:rgb(255 255 255 / 0.08)}.changelog-filters button{flex:none;white-space:nowrap;border:1px solid rgb(0 0 0 / 0.12);border-radius:0.375rem;padding:0.25rem 0.75rem;font-size:0.875rem;line-height:1.25rem;color:inherit;background:transparent;cursor:pointer}.dark .changelog-filters button{border-color:rgb(255 255 255 / 0.15)}.changelog-filters button[aria-pressed=\"true\"]{border-color:#0069a8;background:#0069a8;color:#fff}.changelog-filters .changelog-filters-clear{border-color:transparent;padding-inline:0.5rem;opacity:0.7}.changelog-category{margin:1.25rem 0 0.25rem;font-size:0.8125rem;font-weight:600;opacity:0.65}[data-changelog-category]:first-child .changelog-category{margin-top:0}.update.changelog-update-hidden{display:none}.ph-rc{--rc-tokens: #0069a8;--rc-waiting: #eb6834;--rc-failures: #1baf7a;--rc-ink: #0b0b0b;--rc-ink-2: #52514e;--rc-muted: #898781;--rc-grid: #e1e0d9;--rc-base: #c3c2b7;--rc-band: rgba(0, 105, 168, 0.07);--rc-band-edge: rgba(0, 105, 168, 0.28);--rc-surface: #ffffff;--rc-raised: #f6f6f4;--rc-ring: rgba(11, 11, 11, 0.1);margin:1.25rem 0;font-size:0.8125rem;color:var(--rc-ink)}.dark .ph-rc{--rc-tokens: #2a9fd6;--rc-waiting: #d95926;--rc-failures: #199e70;--rc-ink: #f0efec;--rc-ink-2: #c3c2b7;--rc-muted: #898781;--rc-grid: #2c2c2a;--rc-base: #383835;--rc-band: rgba(42, 159, 214, 0.09);--rc-band-edge: rgba(42, 159, 214, 0.35);--rc-surface: #0a0a0a;--rc-raised: #161616;--rc-ring: rgba(255, 255, 255, 0.1)}.ph-rc-tabs{display:flex;flex-wrap:wrap;gap:0.25rem;margin-bottom:0.75rem}.ph-rc-tabs button{border:1px solid var(--rc-ring);border-radius:0.375rem;background:transparent;color:var(--rc-ink-2);padding:0.3rem 0.65rem;font:inherit;cursor:pointer}.ph-rc-tabs button:hover{color:var(--rc-ink);background:var(--rc-raised)}.ph-rc-tabs .ph-rc-tab-on{color:var(--rc-ink);border-color:var(--rc-tokens);background:var(--rc-raised);font-weight:600}.ph-rc-mix{color:var(--rc-ink-2);margin-bottom:0.5rem}.ph-rc-formula{display:flex;flex-wrap:wrap;align-items:center;gap:0.35rem 0.45rem;margin-bottom:0.6rem;padding:0.55rem 0.75rem;border:1px solid var(--rc-ring);border-radius:0.375rem;color:var(--rc-ink-2)}.ph-rc-formula strong{color:var(--rc-ink);font-weight:600}.ph-rc-term{display:inline-flex;align-items:center;gap:0.35rem;color:var(--rc-ink)}.ph-rc-legend{display:flex;flex-wrap:wrap;gap:0.35rem 1rem;color:var(--rc-ink-2);margin-bottom:0.75rem}.ph-rc-legend span{display:inline-flex;align-items:center;gap:0.4rem}.ph-rc-swatch{display:inline-block;width:0.7rem;height:0.7rem;border-radius:3px;flex:none}.ph-rc-tokens{background:var(--rc-tokens)}.ph-rc-waiting{background:var(--rc-waiting)}.ph-rc-failures{background:var(--rc-failures)}.ph-rc-band-swatch{background:var(--rc-band);box-shadow:inset 0 0 0 1px var(--rc-band-edge)}.ph-rc-head,.ph-rc-row{display:grid;grid-template-columns:minmax(8rem, 13rem) 1fr 6.5rem;gap:0.75rem;align-items:center}.ph-rc-head{color:var(--rc-muted);font-size:0.75rem;padding-bottom:0.35rem;border-bottom:1px solid var(--rc-grid)}.ph-rc-row{padding:0.55rem 0;border-bottom:1px solid var(--rc-grid)}.ph-rc-you{background:var(--rc-raised);box-shadow:-0.5rem 0 0 var(--rc-raised), 0.5rem 0 0 var(--rc-raised)}.ph-rc-name{display:flex;flex-direction:column;align-items:flex-start;min-width:0}.ph-rc-name strong{font-weight:600}.ph-rc-name span{color:var(--rc-muted);font-size:0.7rem;line-height:1.3}.ph-rc-name span{direction:ltr;unicode-bidi:isolate}.ph-rc-track{position:relative;height:1.5rem;width:calc(100% - 3.75rem)}.ph-rc-track,.ph-rc-sharebar,.ph-rc-curve,.ph-rc-controls input[type=\"range\"]{direction:ltr}.ph-rc-band{position:absolute;top:-0.55rem;bottom:-0.55rem;background:var(--rc-band);border-left:1px dashed var(--rc-band-edge);border-right:1px dashed var(--rc-band-edge)}.ph-rc-bar{position:absolute;inset:0.3rem 0;display:flex;align-items:center}.ph-rc-seg{height:0.9rem;margin-right:2px;flex:none;min-width:2px}.ph-rc-seg:first-child{border-radius:4px 0 0 4px}.ph-rc-seg:nth-last-child(2){border-radius:0 4px 4px 0;margin-right:0.4rem}.ph-rc-total{color:var(--rc-ink-2);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:0.75rem}.ph-rc-tip{position:absolute;top:1.7rem;transform:translateX(-50%);z-index:5;min-width:12rem;background:var(--rc-surface);color:var(--rc-ink);border:1px solid var(--rc-ring);border-radius:0.375rem;padding:0.5rem 0.65rem;box-shadow:0 6px 20px rgba(0, 0, 0, 0.12);pointer-events:none}.ph-rc-tip-left{transform:translateX(-100%)}.ph-rc-tip>div{display:flex;align-items:center;gap:0.4rem;color:var(--rc-ink-2);margin-top:0.2rem}.ph-rc-tip b{margin-left:auto;color:var(--rc-ink);font-variant-numeric:tabular-nums}.ph-rc-tip .ph-rc-tip-on{color:var(--rc-ink);font-weight:600}.ph-rc-tip-sum{border-top:1px solid var(--rc-grid);padding-top:0.3rem}.ph-rc-share{display:flex;flex-direction:column;gap:0.25rem}.ph-rc-num{text-align:right;font-variant-numeric:tabular-nums;direction:ltr;unicode-bidi:isolate}.ph-rc-share .ph-rc-num{font-weight:600;font-size:0.875rem}.ph-rc-sharebar{height:0.35rem;border-radius:2px;background:var(--rc-grid);overflow:hidden}.ph-rc-sharebar div{height:100%;background:var(--rc-tokens);border-radius:2px}.ph-rc-axis{color:var(--rc-muted);font-size:0.72rem;margin-top:0.5rem}.ph-rc-play{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.25rem}.ph-rc-controls{display:flex;flex-direction:column;gap:0.6rem}.ph-rc-controls label{display:flex;flex-direction:column;gap:0.2rem}.ph-rc-controls label span{display:flex;justify-content:space-between;color:var(--rc-ink-2)}.ph-rc-controls b{color:var(--rc-ink);font-variant-numeric:tabular-nums;font-weight:600}.ph-rc-controls input[type=\"range\"]{width:100%;accent-color:var(--rc-tokens)}.ph-rc-summary{display:flex;flex-direction:column;gap:0.5rem}.ph-rc-hero{display:flex;align-items:baseline;justify-content:space-between}.ph-rc-hero span{color:var(--rc-ink-2)}.ph-rc-hero strong{font-size:2rem;font-weight:600;line-height:1}.ph-rc-curve{width:100%;height:auto;overflow:visible}.ph-rc-band-fill{fill:var(--rc-band)}.ph-rc-baseline{stroke:var(--rc-base);stroke-width:1}.ph-rc-tick{fill:var(--rc-muted);font-size:10px}.ph-rc-line{fill:none;stroke:var(--rc-ink-2);stroke-width:2}.ph-rc-dot-other{fill:var(--rc-muted);stroke:var(--rc-surface);stroke-width:2}.ph-rc-dot-you{fill:var(--rc-tokens);stroke:var(--rc-surface);stroke-width:2}.ph-rc-dot-label{fill:var(--rc-ink);font-size:11px;font-weight:600}.ph-rc-caption{color:var(--rc-muted);font-size:0.72rem;margin-top:-0.25rem}.ph-rc-levers{border-top:1px solid var(--rc-grid);padding-top:0.5rem}.ph-rc-levers-title{color:var(--rc-muted);font-size:0.72rem;margin-bottom:0.25rem}.ph-rc-levers>div:not(.ph-rc-levers-title){display:flex;justify-content:space-between;padding:0.15rem 0;color:var(--rc-ink-2)}.ph-rc-levers b{color:var(--rc-ink);font-variant-numeric:tabular-nums}@media (max-width: 640px){.ph-rc-play{grid-template-columns:1fr}.ph-rc-head,.ph-rc-row{grid-template-columns:1fr 4.5rem}.ph-rc-head>span:nth-child(2){display:none}.ph-rc-track{grid-column:1 / -1;grid-row:2}}.ph-ps{--ps-ink: #0b0b0b;--ps-ink-2: #52514e;--ps-muted: #898781;--ps-grid: #e1e0d9;--ps-surface: #ffffff;--ps-raised: #f6f6f4;--ps-ring: rgba(11, 11, 11, 0.1);--ps-accent: #0069a8;margin:1.25rem 0;font-size:0.8125rem;color:var(--ps-ink)}.dark .ph-ps{--ps-ink: #f0efec;--ps-ink-2: #c3c2b7;--ps-muted: #898781;--ps-grid: #2c2c2a;--ps-surface: #0a0a0a;--ps-raised: #161616;--ps-ring: rgba(255, 255, 255, 0.1);--ps-accent: #2a9fd6}.ph-ps-caption{color:var(--ps-ink-2);margin:0 0 0.6rem}.ph-ps-layout{display:grid;grid-template-columns:minmax(0, 1.4fr) minmax(0, 1fr);gap:1rem;align-items:start}.ph-ps-table{border:1px solid var(--ps-ring);border-radius:0.375rem;overflow:hidden;background:var(--ps-surface)}.ph-ps-head,.ph-ps-row{display:grid;grid-template-columns:minmax(0, 1fr) 4.75rem 4.75rem;gap:0.4rem;align-items:center;padding:0 0.75rem}.ph-ps-head{color:var(--ps-muted);font-size:0.72rem;min-height:2rem;white-space:nowrap;border-bottom:1px solid var(--ps-grid)}.ph-ps-row{width:100%;height:2.25rem;border:0;border-bottom:1px solid var(--ps-grid);background:transparent;color:inherit;font:inherit;text-align:start;cursor:pointer}.ph-ps-row:hover{background:var(--ps-raised)}.ph-ps-row:focus-visible{outline:2px solid var(--ps-accent);outline-offset:-2px}.ph-ps-on{background:var(--ps-raised);box-shadow:inset 2px 0 0 var(--ps-accent)}.ph-ps-name{display:inline-flex;align-items:center;gap:0.45rem;min-width:0}.ph-ps-name strong{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ph-ps-logo{display:inline-flex;align-items:center;justify-content:center;flex:none;width:1.1rem;height:1.1rem;border-radius:0.25rem;font-style:normal;font-size:0.62rem;font-weight:700;color:#fff;background:#52514e}.ph-ps-logo-A{background:#7c3aed}.ph-ps-logo-B{background:#0f766e}.ph-ps-logo-C{background:#1d4ed8}.ph-ps-logo-D{background:#b45309}.ph-ps-logo-E{background:#be185d}.ph-ps-logo-F{background:#52514e}.ph-ps-icon{width:0.85rem;height:0.85rem;flex:none}.ph-ps-num{text-align:end;font-variant-numeric:tabular-nums;font-weight:600}.ph-ps-head .ph-ps-num{font-weight:400}.ph-ps-order{margin:0;padding:0.5rem 0.75rem;color:var(--ps-muted);font-size:0.72rem}.ph-ps-card{border:1px solid var(--ps-ring);border-radius:0.375rem;padding:0.75rem 0.9rem;background:var(--ps-raised)}.ph-ps-card-title{display:flex;align-items:center;gap:0.45rem;padding-bottom:0.55rem;margin-bottom:0.55rem;border-bottom:1px solid var(--ps-grid)}.ph-ps-card-title .ph-ps-icon{width:1rem;height:1rem}.ph-ps-card-title strong{font-weight:600}.ph-ps-card dl{margin:0}.ph-ps-card dt{color:var(--ps-muted);font-size:0.72rem;margin-top:0.55rem}.ph-ps-card dt:first-child{margin-top:0}.ph-ps-card dd{margin:0.1rem 0 0;color:var(--ps-ink);line-height:1.45}@media (max-width: 720px){.ph-ps-layout{grid-template-columns:1fr}.ph-ps-head,.ph-ps-row{grid-template-columns:minmax(0, 1fr) 4.75rem 4.75rem}}:is(.ph-se,.ph-pm,.ph-fc,.ph-sap){--x-ink: #0b0b0b;--x-ink-2: #52514e;--x-muted: #898781;--x-grid: #e1e0d9;--x-surface: #ffffff;--x-raised: #f6f6f4;--x-ring: rgba(11, 11, 11, 0.1);--x-accent: #0069a8;--x-accent-soft: rgba(0, 105, 168, 0.09);--x-ok: #15803d;--x-ok-soft: rgba(21, 128, 61, 0.09);--x-warn: #c2410c;--x-warn-soft: rgba(194, 65, 12, 0.09);--x-bad: #b91c1c;--x-bad-soft: rgba(185, 28, 28, 0.08);margin:1.25rem 0;font-size:0.8125rem;color:var(--x-ink)}.dark :is(.ph-se,.ph-pm,.ph-fc,.ph-sap){--x-ink: #f0efec;--x-ink-2: #c3c2b7;--x-muted: #898781;--x-grid: #2c2c2a;--x-surface: #0a0a0a;--x-raised: #161616;--x-ring: rgba(255, 255, 255, 0.1);--x-accent: #2a9fd6;--x-accent-soft: rgba(42, 159, 214, 0.12);--x-ok: #34c77b;--x-ok-soft: rgba(52, 199, 123, 0.1);--x-warn: #f08a4b;--x-warn-soft: rgba(240, 138, 75, 0.1);--x-bad: #f26b6b;--x-bad-soft: rgba(242, 107, 107, 0.1)}:is(.ph-se,.ph-pm,.ph-fc,.ph-sap) button,:is(.ph-se,.ph-pm,.ph-fc,.ph-sap) select{border:1px solid var(--x-ring);border-radius:0.375rem;background:transparent;color:var(--x-ink-2);padding:0.3rem 0.65rem;font:inherit;cursor:pointer}:is(.ph-se,.ph-pm,.ph-fc,.ph-sap) button:hover:not(:disabled){color:var(--x-ink);background:var(--x-raised)}:is(.ph-se,.ph-pm,.ph-fc,.ph-sap) button:disabled,.ph-fc select:disabled{opacity:0.45;cursor:default}:is(.ph-se,.ph-pm,.ph-fc,.ph-sap) code{font-size:0.75rem}.ph-se-bar{display:flex;flex-wrap:wrap;justify-content:space-between;gap:0.5rem;margin-bottom:0.75rem}.ph-se-tabs{display:flex;flex-wrap:wrap;gap:0.25rem}.ph-se .ph-se-on{color:var(--x-ink);border-color:var(--x-accent);background:var(--x-raised);font-weight:600}.ph-se-grid{display:grid;grid-template-columns:minmax(0, 1.25fr) minmax(0, 1fr);gap:0.75rem}.ph-se-panel{border:1px solid var(--x-ring);border-radius:0.375rem;background:var(--x-surface);overflow:hidden}.ph-se-head{display:flex;align-items:center;justify-content:space-between;min-height:2.4rem;padding:0.3rem 0.75rem;color:var(--x-muted);font-size:0.75rem;border-bottom:1px solid var(--x-grid)}.ph-se-actions{display:flex;gap:0.25rem}.ph-se .ph-se-primary{color:#fff;background:var(--x-accent);border-color:var(--x-accent)}.ph-se .ph-se-primary:hover:not(:disabled){color:#fff;background:var(--x-accent);opacity:0.9}.ph-se-events{list-style:none;margin:0;padding:0.4rem 0;height:15.5rem;overflow-y:auto}.ph-se-events li{display:flex;align-items:center;gap:0.5rem;padding:0.2rem 0.75rem;margin:0;animation:ph-se-in 0.18s ease-out}.ph-se-events li i{width:0.45rem;height:0.45rem;border-radius:999px;flex:none;background:var(--x-muted)}.ph-se-events .ph-se-open i{background:var(--x-accent)}.ph-se-events .ph-se-delta i{background:var(--x-grid);box-shadow:inset 0 0 0 1px var(--x-muted)}.ph-se-events .ph-se-close i{background:var(--x-ok)}.ph-se-events .ph-se-error i{background:var(--x-bad)}.ph-se-events .ph-se-close{background:var(--x-ok-soft)}.ph-se-events .ph-se-error{background:var(--x-bad-soft)}.ph-se-events code{direction:ltr;unicode-bidi:isolate;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ph-se-events .ph-se-delta{background:transparent}.ph-se-events li>span{margin-inline-start:auto;color:var(--x-muted);font-size:0.72rem;white-space:nowrap}.ph-se-events li>span.ph-se-delta{color:var(--x-ink-2);font-family:var(--font-mono, ui-monospace, monospace)}.ph-se-empty{color:var(--x-muted)}.ph-se-empty i{display:none}.ph-se-output{min-height:6rem;padding:0.75rem;font-size:0.9375rem;line-height:1.55}.ph-se-output-failed{color:var(--x-ink-2);text-decoration:underline wavy var(--x-bad);text-underline-offset:0.3rem;text-decoration-thickness:1px}.ph-se-caret{display:inline-block;width:0.5rem;height:1rem;margin-inline-start:2px;vertical-align:-2px;background:var(--x-accent);animation:ph-se-blink 1s steps(2) infinite}.ph-se-verdict{margin:0 0.75rem 0.75rem;padding:0.5rem 0.65rem;border-radius:0.375rem;line-height:1.45}.ph-se-verdict-streaming{background:var(--x-accent-soft)}.ph-se-verdict-ok{background:var(--x-ok-soft)}.ph-se-verdict-failed{background:var(--x-bad-soft)}@keyframes ph-se-in{from{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:none}}@keyframes ph-se-blink{to{visibility:hidden}}@media (prefers-reduced-motion: reduce){.ph-se-events li,.ph-se-caret{animation:none}}.ph-pm-toggles{display:flex;flex-wrap:wrap;gap:0.4rem 1.1rem;margin-bottom:0.75rem;color:var(--x-ink-2)}.ph-pm-toggles label{display:inline-flex;align-items:center;gap:0.4rem;cursor:pointer}.ph-pm-toggles input{accent-color:var(--x-accent)}.ph-pm-grid{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:0.6rem}.ph-pm-panel{border:1px solid var(--x-ring);border-radius:0.375rem;background:var(--x-surface);min-width:0}.ph-pm-title{padding:0.45rem 0.7rem;color:var(--x-muted);font-size:0.75rem;border-bottom:1px solid var(--x-grid)}.ph-pm .ph-pm-code{margin:0;padding:0.5rem 0;background:transparent;border:0;border-radius:0;color:var(--x-ink);font-size:0.72rem;line-height:1.6;white-space:pre-wrap;word-break:break-word;direction:ltr;text-align:left}.ph-pm-line{display:block;padding:0 0.7rem;border-inline-start:3px solid transparent}.ph-pm-settings .ph-pm-line{padding-block:0.15rem}.ph-pm-line.ph-pm-request{background:var(--x-accent-soft);border-inline-start-color:var(--x-accent)}.ph-pm-line.ph-pm-preset{background:var(--x-warn-soft);border-inline-start-color:var(--x-warn)}.ph-pm-line.ph-pm-both{background:linear-gradient(90deg, var(--x-warn-soft), var(--x-accent-soft));border-inline-start-color:var(--x-ink-2)}.ph-pm-legend{display:flex;flex-wrap:wrap;gap:0.35rem 1rem;margin-top:0.6rem;color:var(--x-ink-2)}.ph-pm-legend span{display:inline-flex;align-items:center;gap:0.4rem}.ph-pm-swatch{display:inline-block;width:0.7rem;height:0.7rem;border-radius:3px}.ph-pm-swatch.ph-pm-request{background:var(--x-accent)}.ph-pm-swatch.ph-pm-preset{background:var(--x-warn)}.ph-pm-swatch.ph-pm-both{background:linear-gradient(90deg, var(--x-warn), var(--x-accent))}@media (max-width: 900px){.ph-pm-grid,.ph-se-grid{grid-template-columns:1fr}}.ph-fc-chain{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:1.4rem}.ph-fc-step{position:relative;display:flex;flex-direction:column;gap:0.45rem;padding:0.7rem 0.8rem;border:1px solid var(--x-ring);border-radius:0.375rem;background:var(--x-surface);min-width:0}.ph-fc-step:not(:last-child)::after{content:\"\\2192\";position:absolute;top:50%;inset-inline-end:-1.15rem;transform:translateY(-50%);color:var(--x-muted)}[dir=\"rtl\"] .ph-fc-step:not(:last-child)::after{content:\"\\2190\"}.ph-fc-skipped{opacity:0.5;border-style:dashed}.ph-fc-served{border-color:var(--x-ok);box-shadow:inset 0 0 0 1px var(--x-ok)}.ph-fc-role{display:flex;justify-content:space-between;align-items:center;color:var(--x-muted);font-size:0.72rem}.ph-fc-served .ph-fc-role span{color:var(--x-ok);font-weight:600}.ph-fc-model{font-weight:600;direction:ltr;unicode-bidi:isolate;overflow-wrap:anywhere}.ph-fc-select{display:flex;flex-direction:column;gap:0.2rem;color:var(--x-muted);font-size:0.72rem}.ph-fc-select select{color:var(--x-ink);background:var(--x-raised)}.ph-fc-note{padding:0.3rem 0.5rem;border-radius:0.375rem;font-size:0.72rem}.ph-fc-next{background:var(--x-warn-soft);color:var(--x-warn)}.ph-fc-stop{background:var(--x-bad-soft);color:var(--x-bad)}.ph-fc-result{margin:0.75rem 0 0;padding:0.55rem 0.75rem;border-radius:0.375rem;background:var(--x-bad-soft);line-height:1.45}.ph-fc-result-ok{background:var(--x-ok-soft)}@media (max-width: 720px){.ph-fc-chain{grid-template-columns:1fr;gap:1.1rem}.ph-fc-step:not(:last-child)::after{content:\"\\2193\";top:auto;bottom:-1.05rem;inset-inline-end:50%;transform:none}}.ph-sap-inputs{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:0.6rem;margin-bottom:0.75rem}.ph-sap-inputs label{display:flex;flex-direction:column;gap:0.3rem;color:var(--x-ink-2);font-size:0.75rem}.ph-sap-inputs input{border:1px solid var(--x-ring);border-radius:0.375rem;background:var(--x-surface);color:var(--x-ink);padding:0.35rem 0.6rem;font:inherit;font-size:0.8125rem;direction:ltr;font-variant-numeric:tabular-nums}.ph-sap-inputs input:focus{outline:2px solid var(--x-accent);outline-offset:1px}.ph-sap-rows{margin:0;border:1px solid var(--x-ring);border-radius:0.375rem;background:var(--x-surface)}.ph-sap-rows>div{display:flex;justify-content:space-between;gap:1rem;padding:0.45rem 0.75rem;border-top:1px solid var(--x-grid)}.ph-sap-rows>div:first-child{border-top:0}.ph-sap-rows dt{color:var(--x-ink-2)}.ph-sap-rows dd{margin:0;direction:ltr;font-variant-numeric:tabular-nums;color:var(--x-ink)}.ph-sap-total{background:var(--x-accent-soft)}.ph-sap-total dt,.ph-sap-total dd{color:var(--x-ink);font-weight:600}.ph-sap-note{margin:0.5rem 0 0;color:var(--x-muted);font-size:0.75rem}@media (max-width: 720px){.ph-sap-inputs{grid-template-columns:1fr}}"}],"page":{"pagePath":"v1/api-reference/endpoint/model-endpoints","slug":"/v1/api-reference/endpoint/model-endpoints","pageMetadata":{"title":"List model endpoint capabilities","badge":"Beta","openapi":"openapi/v1/openapi.yaml GET /models/{author}/{slug}/endpoints","description":"Inspect the provider routes, modalities, parameters, availability, and pricing available for one model.","og:image":"https://phaseo.app/og/dynamic?title=List%20model%20endpoint%20capabilities\u0026description=Inspect%20the%20provider%20routes%2C%20modalities%2C%20parameters%2C%20availability%2C%20and%20pricing%20available%20for%20one%20model.\u0026pathname=/docs/v1/api-reference/endpoint/model-endpoints","href":"/v1/api-reference/endpoint/model-endpoints"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Inspect the provider routes, modalities, parameters, availability, and pricing available for one model.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,p:`p`,pre:`pre`,span:`span`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,..._provideComponents(),...props.components},{CodeBlock,Heading,Table}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Table)_missingMdxReference(`Table`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`Call this endpoint before sending a request to confirm that a model, provider, endpoint and parameter combination is available. For `,_jsx(_components.code,{children:`openai/gpt-6-astra`}),`:`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`2`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`2`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`curl`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"https://api.phaseo.app/v1/models/openai/gpt-6-astra/endpoints\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -H`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"Authorization: Bearer `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`$PHASEO_API_KEY`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"`})]}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`Each entry in `,_jsx(_components.code,{children:`endpoints`}),` is one provider route for one endpoint:`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Field`}),_jsx(_components.th,{children:`Contains`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsxs(_components.td,{children:[_jsx(_components.code,{children:`endpoint`}),`, `,_jsx(_components.code,{children:`capability_id`}),`, `,_jsx(_components.code,{children:`public_path`}),`, `,_jsx(_components.code,{children:`collection`})]}),_jsx(_components.td,{children:`The canonical endpoint and capability IDs and the public API path`})]}),_jsxs(_components.tr,{children:[_jsxs(_components.td,{children:[_jsx(_components.code,{children:`provider`}),`, `,_jsx(_components.code,{children:`model`})]}),_jsx(_components.td,{children:`The provider ID and name, and the provider’s model slug`})]}),_jsxs(_components.tr,{children:[_jsxs(_components.td,{children:[_jsx(_components.code,{children:`routable`}),`, `,_jsx(_components.code,{children:`status`}),`, `,_jsx(_components.code,{children:`status_reason`})]}),_jsx(_components.td,{children:`Whether the route takes traffic now, its availability, and why it is preview-only or inactive`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`modalities`})}),_jsx(_components.td,{children:`Input and output modalities`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`capabilities`})}),_jsx(_components.td,{children:`Supported parameter names and structured parameter detail`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`routing`})}),_jsx(_components.td,{children:`Provider, model and capability routing states`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`effective`})}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`from`}),` and `,_jsx(_components.code,{children:`to`}),` dates when the route is scheduled or time-bounded`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`pricing`})}),_jsx(_components.td,{children:`The endpoint pricing summary`})]})]})]}),`\n`,_jsxs(_components.p,{children:[`To compare models first, use `,_jsx(_components.a,{href:`/v1/api-reference/endpoint/models`,children:`List models`}),`; to see every endpoint the API exposes, use `,_jsx(_components.a,{href:`/v1/api-reference/endpoint/endpoints`,children:`List endpoints`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`include-planned-and-inactive-routes`,children:`Include planned and inactive routes`}),`\n`,_jsxs(_components.p,{children:[`The default `,_jsx(_components.code,{children:`availability=active`}),` only returns publicly routable rows. Use `,_jsx(_components.code,{children:`availability=all`}),` to inspect coming-soon and inactive routes:`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`2`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`2`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`curl`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"https://api.phaseo.app/v1/models/openai/gpt-6-astra/endpoints?availability=all\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -H`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"Authorization: Bearer `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`$PHASEO_API_KEY`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"`})]}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`Only route production traffic to a row whose `,_jsx(_components.code,{children:`routable`}),` is `,_jsx(_components.code,{children:`true`}),` and `,_jsx(_components.code,{children:`status`}),` is `,_jsx(_components.code,{children:`active`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`filter-routes`,children:`Filter routes`}),`\n`,_jsxs(_components.p,{children:[`These filters accept repeated parameters or a comma-separated list: `,_jsx(_components.code,{children:`provider`}),`, `,_jsx(_components.code,{children:`provider_status`}),`, `,_jsx(_components.code,{children:`provider_routing_status`}),`, `,_jsx(_components.code,{children:`model_routing_status`}),`, `,_jsx(_components.code,{children:`capability_status`}),`, `,_jsx(_components.code,{children:`provider_availability_status`}),`, `,_jsx(_components.code,{children:`provider_availability_reason`}),`, `,_jsx(_components.code,{children:`status`}),`, and `,_jsx(_components.code,{children:`supported_parameters`}),` (alias `,_jsx(_components.code,{children:`params`}),`). `,_jsx(_components.a,{href:`/v1/api-reference/endpoint/models#filter-the-list`,children:`List models`}),` describes their values.`]}),`\n`,_jsxs(_components.p,{children:[`This returns OpenAI routes that support `,_jsx(_components.code,{children:`reasoning_effort`}),`:`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`2`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`2`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`curl`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"https://api.phaseo.app/v1/models/openai/gpt-6-astra/endpoints?provider=openai\u0026supported_parameters=reasoning_effort\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -H`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"Authorization: Bearer `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`$PHASEO_API_KEY`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"`})]}),`\n`]})})})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"List model endpoint capabilities","badge":"Beta","openapi":"openapi/v1/openapi.yaml GET /models/{author}/{slug}/endpoints","description":"Inspect the provider routes, modalities, parameters, availability, and pricing available for one model.","og:image":"https://phaseo.app/og/dynamic?title=List%20model%20endpoint%20capabilities\u0026description=Inspect%20the%20provider%20routes%2C%20modalities%2C%20parameters%2C%20availability%2C%20and%20pricing%20available%20for%20one%20model.\u0026pathname=/docs/v1/api-reference/endpoint/model-endpoints","href":"/v1/api-reference/endpoint/model-endpoints"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Include planned and inactive routes","slug":"include-planned-and-inactive-routes","depth":2,"children":[]},{"title":"Filter routes","slug":"filter-routes","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"x-beta":true,"tags":["Gateway"],"operationId":"listModelEndpoints","summary":"List model endpoint capabilities","description":"Inspect the provider routes, modalities, parameters, availability, and pricing available for one model.","parameters":["8741f04e-ce88-492d-b117-58d6dbec5f7c","a20f1321-23fb-46ec-a3ae-5a98bae94b42","b066ee93-eab0-4988-a4f8-a447bbb3a173","f05e845a-91c2-49e1-ad44-281af9133f3b","0f620322-3c98-4382-80e5-e3bfd084c60e","216f2ca6-4be2-4900-b10c-392fbef8761a","a6fb89fb-1b35-45ff-9140-7188a324e4a5","43d76b25-5cac-4f4c-b2a2-c665139e0c30","54503ce3-a7ee-478a-87b5-c8d15e3eaa7d","33b67238-4aff-47fd-b982-57a4f34166a5","4e2f5348-cab2-4ebd-8952-dfd9841cacf9","aba6fe6b-838e-4e00-b90d-bb06738ebbb9"],"responses":{"200":"7eccb5e4-ec8a-4576-bbce-a25ca878f819","400":"1ac5b707-308c-4d27-865e-5894e5efbe6c","401":"b68a5b45-b270-4fe5-a693-2f26a711b3f9","404":"0acb49b1-c9a1-47b0-bc95-c2a74406e2ab","500":"37a158df-b36d-4d72-8c5c-aaadb5de20aa"},"method":"get","type":"path","servers":["14dc0b3d-24b9-47bb-8bb9-41b61a643394"],"security":["6e17e412-b51d-4fab-a160-6e4c4ca9dfed"],"path":"/models/{author}/{slug}/endpoints","baseUrlOptions":["https://api.phaseo.app/v1"],"title":"List model endpoint capabilities","codeSamples":[],"requestExampleLanguages":["javascript","python","bash","go","java","php","ruby"],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated","prefillPlaygroundWithExample":true,"prefillPlaygroundExamples":[]},"dependencies":{"parameters":{"8741f04e-ce88-492d-b117-58d6dbec5f7c":{"name":"author","in":"path","required":true,"description":"Model author or organisation segment.","schema":{"type":"string","isRequired":true,"description":"Model author or organisation segment.","uniqueKey":"","typeLabel":"string"}},"a20f1321-23fb-46ec-a3ae-5a98bae94b42":{"name":"slug","in":"path","required":true,"description":"Model slug segment.","schema":{"type":"string","isRequired":true,"description":"Model slug segment.","uniqueKey":"","typeLabel":"string"}},"b066ee93-eab0-4988-a4f8-a447bbb3a173":{"name":"provider","in":"query","description":"Filter by provider id.","schema":{"type":"array","items":{"type":"string","uniqueKey":"items.[INDEX]","typeLabel":"string"},"description":"Filter by provider id.","uniqueKey":"","typeLabel":"string[]"}},"f05e845a-91c2-49e1-ad44-281af9133f3b":{"name":"provider_status","in":"query","description":"Filter by provider rollout status.","schema":{"type":"array","items":{"type":"string","uniqueKey":"items.[INDEX]","typeLabel":"string"},"description":"Filter by provider rollout status.","uniqueKey":"","typeLabel":"string[]"}},"0f620322-3c98-4382-80e5-e3bfd084c60e":{"name":"provider_routing_status","in":"query","description":"Filter by provider routing status.","schema":{"type":"array","items":{"type":"string","uniqueKey":"items.[INDEX]","typeLabel":"string"},"description":"Filter by provider routing status.","uniqueKey":"","typeLabel":"string[]"}},"216f2ca6-4be2-4900-b10c-392fbef8761a":{"name":"model_routing_status","in":"query","description":"Filter by model routing status.","schema":{"type":"array","items":{"type":"string","uniqueKey":"items.[INDEX]","typeLabel":"string"},"description":"Filter by model routing status.","uniqueKey":"","typeLabel":"string[]"}},"a6fb89fb-1b35-45ff-9140-7188a324e4a5":{"name":"capability_status","in":"query","description":"Filter by provider capability status.","schema":{"type":"array","items":{"type":"string","uniqueKey":"items.[INDEX]","typeLabel":"string"},"description":"Filter by provider capability status.","uniqueKey":"","typeLabel":"string[]"}},"43d76b25-5cac-4f4c-b2a2-c665139e0c30":{"name":"provider_availability_status","in":"query","description":"Filter by provider availability status.","schema":{"type":"array","items":{"type":"string","uniqueKey":"items.[INDEX]","typeLabel":"string"},"description":"Filter by provider availability status.","uniqueKey":"","typeLabel":"string[]"}},"54503ce3-a7ee-478a-87b5-c8d15e3eaa7d":{"name":"provider_availability_reason","in":"query","description":"Filter by provider availability reason.","schema":{"type":"array","items":{"type":"string","uniqueKey":"items.[INDEX]","typeLabel":"string"},"description":"Filter by provider availability reason.","uniqueKey":"","typeLabel":"string[]"}},"33b67238-4aff-47fd-b982-57a4f34166a5":{"name":"status","in":"query","description":"Filter by canonical model lifecycle status.","schema":{"type":"array","items":{"type":"string","uniqueKey":"items.[INDEX]","typeLabel":"string"},"description":"Filter by canonical model lifecycle status.","uniqueKey":"","typeLabel":"string[]"}},"4e2f5348-cab2-4ebd-8952-dfd9841cacf9":{"name":"supported_parameters","in":"query","description":"Filter endpoint rows by supported parameter names or aliases.","schema":{"type":"array","items":{"type":"string","uniqueKey":"items.[INDEX]","typeLabel":"string"},"description":"Filter endpoint rows by supported parameter names or aliases.","uniqueKey":"","typeLabel":"string[]"}},"aba6fe6b-838e-4e00-b90d-bb06738ebbb9":{"name":"availability","in":"query","description":"active returns publicly routable endpoint rows; all also includes coming-soon and inactive rows.","schema":{"type":"string","enum":["active","all"],"default":"active","description":"active returns publicly routable endpoint rows; all also includes coming-soon and inactive rows.","uniqueKey":"","typeLabel":"enum\u003cstring>"}}},"responses":{"7eccb5e4-ec8a-4576-bbce-a25ca878f819":{"description":"Model endpoint capability rows","content":{"application/json":{"schema":{"type":"object","required":["ok","id","name","description","organization","modalities","availability_mode","endpoints"],"properties":{"ok":{"type":"boolean","enum":[true],"isRequired":true,"uniqueKey":"ok","typeLabel":"enum\u003cboolean>"},"id":{"type":"string","isRequired":true,"uniqueKey":"id","typeLabel":"string"},"name":{"type":"string","isRequired":true,"uniqueKey":"name","typeLabel":"string"},"description":{"type":"string","isRequired":true,"uniqueKey":"description","typeLabel":"string"},"organization":{"oneOf":[{"type":"object","required":["id","name","color"],"properties":{"id":{"type":"string","isRequired":true,"uniqueKey":"organization.oneOf.0.id","typeLabel":"string"},"name":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"organization.oneOf.0.name.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"organization.oneOf.0.name.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"organization.oneOf.0.name","typeLabel":"string | null"},"color":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"organization.oneOf.0.color.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"organization.oneOf.0.color.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"organization.oneOf.0.color","typeLabel":"string | null"}},"isRequired":true,"uniqueKey":"organization.oneOf.0","typeLabel":"object"},{"type":"null","required":["id","name","color"],"properties":{"id":{"type":"string"},"name":{"oneOf":[{"type":"string"},{"type":"null"}]},"color":{"oneOf":[{"type":"string"},{"type":"null"}]}},"isRequired":true,"uniqueKey":"organization.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"organization","typeLabel":"object | null"},"modalities":{"type":"object","required":["input","output"],"properties":{"input":{"type":"array","items":{"type":"string","uniqueKey":"modalities.input.items.[INDEX]","typeLabel":"string"},"isRequired":true,"uniqueKey":"modalities.input","typeLabel":"string[]"},"output":{"type":"array","items":{"type":"string","uniqueKey":"modalities.output.items.[INDEX]","typeLabel":"string"},"isRequired":true,"uniqueKey":"modalities.output","typeLabel":"string[]"}},"isRequired":true,"uniqueKey":"modalities","typeLabel":"object"},"availability_mode":{"type":"string","enum":["active","all"],"isRequired":true,"uniqueKey":"availability_mode","typeLabel":"enum\u003cstring>"},"endpoints":{"type":"array","items":{"type":"object","required":["id","endpoint","capability_id","public_path","collection","provider","model","routable","status","status_reason","modalities","capabilities","routing","effective","pricing"],"properties":{"id":{"type":"string","example":"openai:responses","isRequired":true,"uniqueKey":"endpoints.items.[INDEX].id","typeLabel":"string"},"endpoint":{"type":"string","example":"responses","isRequired":true,"uniqueKey":"endpoints.items.[INDEX].endpoint","typeLabel":"string"},"capability_id":{"type":"string","example":"responses","isRequired":true,"uniqueKey":"endpoints.items.[INDEX].capability_id","typeLabel":"string"},"public_path":{"type":"string","example":"/v1/responses","isRequired":true,"uniqueKey":"endpoints.items.[INDEX].public_path","typeLabel":"string"},"collection":{"type":"string","enum":["text","images","video","audio","embeddings","rerank","moderation","ocr","music","batch","files"],"isRequired":true,"uniqueKey":"endpoints.items.[INDEX].collection","typeLabel":"enum\u003cstring>"},"provider":{"type":"object","required":["id","name"],"properties":{"id":{"type":"string","example":"openai","isRequired":true,"uniqueKey":"endpoints.items.[INDEX].provider.id","typeLabel":"string"},"name":{"oneOf":[{"type":"string","example":"OpenAI","isRequired":true,"uniqueKey":"endpoints.items.[INDEX].provider.name.oneOf.0","typeLabel":"string"},{"type":"null","example":"OpenAI","isRequired":true,"uniqueKey":"endpoints.items.[INDEX].provider.name.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"endpoints.items.[INDEX].provider.name","typeLabel":"string | null"}},"isRequired":true,"uniqueKey":"endpoints.items.[INDEX].provider","typeLabel":"object"},"model":{"oneOf":[{"type":"string","example":"gpt-5.4-mini","isRequired":true,"uniqueKey":"endpoints.items.[INDEX].model.oneOf.0","typeLabel":"string"},{"type":"null","example":"gpt-5.4-mini","isRequired":true,"uniqueKey":"endpoints.items.[INDEX].model.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"endpoints.items.[INDEX].model","typeLabel":"string | null"},"routable":{"type":"boolean","isRequired":true,"uniqueKey":"endpoints.items.[INDEX].routable","typeLabel":"boolean"},"status":{"type":"string","enum":["active","coming_soon","inactive"],"isRequired":true,"uniqueKey":"endpoints.items.[INDEX].status","typeLabel":"enum\u003cstring>"},"status_reason":{"type":"string","description":"A deranked route is routable only as a last resort, after every other healthy provider. `deranked_lvl1`, `deranked_lvl2` and `deranked_lvl3` are no longer returned.","enum":["active","preview_only","gated","access_limited","region_limited","project_limited","paused","soft_blocked","deranked","deranked_lvl1","deranked_lvl2","deranked_lvl3","internal_testing","scheduled","coming_soon","provider_disabled","model_disabled","capability_disabled","provider_not_ready","provider_inactive","inactive","retired"],"isRequired":true,"uniqueKey":"endpoints.items.[INDEX].status_reason","typeLabel":"enum\u003cstring>"},"modalities":{"type":"object","required":["input","output"],"properties":{"input":{"type":"array","items":{"type":"string","uniqueKey":"endpoints.items.[INDEX].modalities.input.items.[INDEX]","typeLabel":"string"},"isRequired":true,"uniqueKey":"endpoints.items.[INDEX].modalities.input","typeLabel":"string[]"},"output":{"type":"array","items":{"type":"string","uniqueKey":"endpoints.items.[INDEX].modalities.output.items.[INDEX]","typeLabel":"string"},"isRequired":true,"uniqueKey":"endpoints.items.[INDEX].modalities.output","typeLabel":"string[]"}},"isRequired":true,"uniqueKey":"endpoints.items.[INDEX].modalities","typeLabel":"object"},"capabilities":{"type":"object","required":["parameters","parameter_details"],"properties":{"parameters":{"type":"array","items":{"type":"string","uniqueKey":"endpoints.items.[INDEX].capabilities.parameters.items.[INDEX]","typeLabel":"string"},"isRequired":true,"uniqueKey":"endpoints.items.[INDEX].capabilities.parameters","typeLabel":"string[]"},"parameter_details":{"type":"object","description":"Structured constraints and provider support for request parameters, keyed by parameter name.","additionalProperties":{"type":"object","additionalProperties":true,"uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_details.additionalProperties","typeLabel":"object"},"isRequired":true,"uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_details","typeLabel":"object"},"endpoints":{"type":"array","items":{"type":"string","uniqueKey":"endpoints.items.[INDEX].capabilities.endpoints.items.[INDEX]","typeLabel":"string"},"uniqueKey":"endpoints.items.[INDEX].capabilities.endpoints","typeLabel":"string[]"},"parameter_specs":{"type":"object","description":"Every request parameter the provider accepts on this endpoint, in one standard shape whatever way the catalogue stores it.","additionalProperties":{"type":"object","required":["supported"],"properties":{"supported":{"type":"boolean","isRequired":true,"uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.supported","typeLabel":"boolean"},"type":{"oneOf":[{"type":"string","enum":["string","integer","number","boolean","array","object","file"],"uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.type.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"array","items":{"type":"string","enum":["string","integer","number","boolean","array","object","file"],"uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.type.oneOf.1.items.[INDEX]","typeLabel":"enum\u003cstring>"},"uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.type.oneOf.1","typeLabel":"enum\u003cstring>[]"}],"uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.type","typeLabel":"enum\u003cstring> | enum\u003cstring>[]"},"media":{"type":"string","enum":["image","audio","video"],"uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.media","typeLabel":"enum\u003cstring>"},"values":{"type":"array","items":{"oneOf":[{"type":"string","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.values.items.[INDEX].oneOf.0","typeLabel":"string"},{"type":"number","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.values.items.[INDEX].oneOf.1","typeLabel":"number"},{"type":"boolean","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.values.items.[INDEX].oneOf.2","typeLabel":"boolean"}],"uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.values.items.[INDEX]","typeLabel":"string | number | boolean"},"uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.values","typeLabel":"(string | number | boolean)[]"},"open":{"type":"boolean","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.open","typeLabel":"boolean"},"options":{"type":"array","items":{"type":"object","required":["value"],"properties":{"value":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.options.items.[INDEX].value.oneOf.0","typeLabel":"string"},{"type":"number","isRequired":true,"uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.options.items.[INDEX].value.oneOf.1","typeLabel":"number"},{"type":"boolean","isRequired":true,"uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.options.items.[INDEX].value.oneOf.2","typeLabel":"boolean"}],"isRequired":true,"uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.options.items.[INDEX].value","typeLabel":"string | number | boolean"},"label":{"type":"string","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.options.items.[INDEX].label","typeLabel":"string"},"description":{"type":"string","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.options.items.[INDEX].description","typeLabel":"string"}},"additionalProperties":true,"uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.options.items.[INDEX]","typeLabel":"object"},"uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.options","typeLabel":"object[]"},"min":{"type":"number","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.min","typeLabel":"number"},"max":{"type":"number","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.max","typeLabel":"number"},"step":{"type":"number","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.step","typeLabel":"number"},"multiple_of":{"type":"number","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.multiple_of","typeLabel":"number"},"default":{"oneOf":[{"type":"string","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.default.oneOf.0","typeLabel":"string"},{"type":"number","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.default.oneOf.1","typeLabel":"number"},{"type":"boolean","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.default.oneOf.2","typeLabel":"boolean"}],"uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.default","typeLabel":"string | number | boolean"},"provider_default":{"oneOf":[{"type":"string","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.provider_default.oneOf.0","typeLabel":"string"},{"type":"number","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.provider_default.oneOf.1","typeLabel":"number"},{"type":"boolean","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.provider_default.oneOf.2","typeLabel":"boolean"}],"uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.provider_default","typeLabel":"string | number | boolean"},"required":{"type":"boolean","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.required","typeLabel":"boolean"},"always_on":{"type":"boolean","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.always_on","typeLabel":"boolean"},"aliases":{"type":"array","items":{"type":"string","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.aliases.items.[INDEX]","typeLabel":"string"},"uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.aliases","typeLabel":"string[]"},"alias_of":{"type":"string","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.alias_of","typeLabel":"string"},"upstream_name":{"type":"string","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.upstream_name","typeLabel":"string"},"upstream_values":{"type":"array","items":{"oneOf":[{"type":"string","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.upstream_values.items.[INDEX].oneOf.0","typeLabel":"string"},{"type":"number","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.upstream_values.items.[INDEX].oneOf.1","typeLabel":"number"},{"type":"boolean","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.upstream_values.items.[INDEX].oneOf.2","typeLabel":"boolean"}],"uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.upstream_values.items.[INDEX]","typeLabel":"string | number | boolean"},"uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.upstream_values","typeLabel":"(string | number | boolean)[]"},"requires":{"type":"array","items":{"type":"string","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.requires.items.[INDEX]","typeLabel":"string"},"uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.requires","typeLabel":"string[]"},"min_length":{"type":"number","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.min_length","typeLabel":"number"},"max_length":{"type":"number","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.max_length","typeLabel":"number"},"max_tokens":{"type":"number","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.max_tokens","typeLabel":"number"},"min_items":{"type":"number","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.min_items","typeLabel":"number"},"max_items":{"type":"number","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.max_items","typeLabel":"number"},"item_types":{"type":"array","items":{"type":"string","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.item_types.items.[INDEX]","typeLabel":"string"},"uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.item_types","typeLabel":"string[]"},"formats":{"type":"array","items":{"type":"string","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.formats.items.[INDEX]","typeLabel":"string"},"uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.formats","typeLabel":"string[]"},"max_file_size_bytes":{"type":"number","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.max_file_size_bytes","typeLabel":"number"},"format":{"type":"string","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.format","typeLabel":"string"},"dimensions":{"type":"object","properties":{"min":{"type":"number","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.dimensions.min","typeLabel":"number"},"max":{"type":"number","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.dimensions.max","typeLabel":"number"},"multiple_of":{"type":"number","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.dimensions.multiple_of","typeLabel":"number"},"max_width":{"type":"number","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.dimensions.max_width","typeLabel":"number"},"max_height":{"type":"number","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.dimensions.max_height","typeLabel":"number"},"min_pixels":{"type":"number","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.dimensions.min_pixels","typeLabel":"number"},"max_pixels":{"type":"number","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.dimensions.max_pixels","typeLabel":"number"},"max_aspect_ratio":{"type":"string","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.dimensions.max_aspect_ratio","typeLabel":"string"},"aspect_ratios":{"type":"array","items":{"type":"string","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.dimensions.aspect_ratios.items.[INDEX]","typeLabel":"string"},"uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.dimensions.aspect_ratios","typeLabel":"string[]"}},"uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.dimensions","typeLabel":"object"},"properties":{"type":"object","additionalProperties":{"type":"object","additionalProperties":true,"uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.properties.additionalProperties","typeLabel":"object"},"uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.properties","typeLabel":"object"},"when":{"type":"array","items":{"type":"object","description":"When every parameter in if has one of its listed values, the other fields replace the parameter's own.","required":["if"],"properties":{"if":{"type":"object","additionalProperties":{"type":"array","items":{"oneOf":[{"type":"string","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.when.items.[INDEX].if.additionalProperties.items.[INDEX].oneOf.0","typeLabel":"string"},{"type":"number","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.when.items.[INDEX].if.additionalProperties.items.[INDEX].oneOf.1","typeLabel":"number"},{"type":"boolean","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.when.items.[INDEX].if.additionalProperties.items.[INDEX].oneOf.2","typeLabel":"boolean"}],"uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.when.items.[INDEX].if.additionalProperties.items.[INDEX]","typeLabel":"string | number | boolean"},"uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.when.items.[INDEX].if.additionalProperties","typeLabel":"(string | number | boolean)[]"},"isRequired":true,"uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.when.items.[INDEX].if","typeLabel":"object"},"values":{"type":"array","items":{"oneOf":[{"type":"string","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.when.items.[INDEX].values.items.[INDEX].oneOf.0","typeLabel":"string"},{"type":"number","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.when.items.[INDEX].values.items.[INDEX].oneOf.1","typeLabel":"number"},{"type":"boolean","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.when.items.[INDEX].values.items.[INDEX].oneOf.2","typeLabel":"boolean"}],"uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.when.items.[INDEX].values.items.[INDEX]","typeLabel":"string | number | boolean"},"uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.when.items.[INDEX].values","typeLabel":"(string | number | boolean)[]"},"min":{"type":"number","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.when.items.[INDEX].min","typeLabel":"number"},"max":{"type":"number","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.when.items.[INDEX].max","typeLabel":"number"},"step":{"type":"number","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.when.items.[INDEX].step","typeLabel":"number"},"default":{"oneOf":[{"type":"string","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.when.items.[INDEX].default.oneOf.0","typeLabel":"string"},{"type":"number","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.when.items.[INDEX].default.oneOf.1","typeLabel":"number"},{"type":"boolean","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.when.items.[INDEX].default.oneOf.2","typeLabel":"boolean"}],"uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.when.items.[INDEX].default","typeLabel":"string | number | boolean"},"supported":{"type":"boolean","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.when.items.[INDEX].supported","typeLabel":"boolean"},"message":{"type":"string","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.when.items.[INDEX].message","typeLabel":"string"}},"uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.when.items.[INDEX]","typeLabel":"object"},"uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.when","typeLabel":"object[]"},"support_level":{"type":"string","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.support_level","typeLabel":"string"},"notes":{"type":"string","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.notes","typeLabel":"string"},"source":{"type":"object","properties":{"url":{"type":"string","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.source.url","typeLabel":"string"},"verified_at":{"type":"string","uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.source.verified_at","typeLabel":"string"}},"uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.source","typeLabel":"object"},"extra":{"type":"object","additionalProperties":true,"uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties.extra","typeLabel":"object"}},"uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs.additionalProperties","typeLabel":"object"},"uniqueKey":"endpoints.items.[INDEX].capabilities.parameter_specs","typeLabel":"object"}},"isRequired":true,"uniqueKey":"endpoints.items.[INDEX].capabilities","typeLabel":"object"},"routing":{"type":"object","required":["provider","model","capability"],"properties":{"provider":{"type":"string","description":"A deranked route is routable only as a last resort, after every other healthy provider. `deranked_lvl1`, `deranked_lvl2` and `deranked_lvl3` are no longer returned.","enum":["active","deranked","deranked_lvl1","deranked_lvl2","deranked_lvl3","disabled"],"isRequired":true,"uniqueKey":"endpoints.items.[INDEX].routing.provider","typeLabel":"enum\u003cstring>"},"model":{"type":"string","description":"A deranked route is routable only as a last resort, after every other healthy provider. `deranked_lvl1`, `deranked_lvl2` and `deranked_lvl3` are no longer returned.","enum":["active","deranked","deranked_lvl1","deranked_lvl2","deranked_lvl3","disabled"],"isRequired":true,"uniqueKey":"endpoints.items.[INDEX].routing.model","typeLabel":"enum\u003cstring>"},"capability":{"type":"string","description":"A deranked route is routable only as a last resort, after every other healthy provider. `deranked_lvl1`, `deranked_lvl2` and `deranked_lvl3` are no longer returned.","enum":["active","coming_soon","deranked","deranked_lvl1","deranked_lvl2","deranked_lvl3","disabled","internal_testing"],"isRequired":true,"uniqueKey":"endpoints.items.[INDEX].routing.capability","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"endpoints.items.[INDEX].routing","typeLabel":"object"},"effective":{"type":"object","required":["from","to"],"properties":{"from":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"endpoints.items.[INDEX].effective.from.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"endpoints.items.[INDEX].effective.from.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"endpoints.items.[INDEX].effective.from","typeLabel":"string | null"},"to":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"endpoints.items.[INDEX].effective.to.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"endpoints.items.[INDEX].effective.to.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"endpoints.items.[INDEX].effective.to","typeLabel":"string | null"}},"isRequired":true,"uniqueKey":"endpoints.items.[INDEX].effective","typeLabel":"object"},"pricing":{"type":"object","required":["pricing_plan","meters"],"properties":{"pricing_plan":{"type":"string","enum":["standard"],"isRequired":true,"uniqueKey":"endpoints.items.[INDEX].pricing.pricing_plan","typeLabel":"enum\u003cstring>"},"meters":{"type":"object","additionalProperties":{"oneOf":[{"type":"object","required":["provider_id","unit","unit_size","price_per_unit","currency"],"properties":{"provider_id":{"type":"string","isRequired":true,"uniqueKey":"endpoints.items.[INDEX].pricing.meters.additionalProperties.oneOf.0.provider_id","typeLabel":"string"},"unit":{"type":"string","isRequired":true,"uniqueKey":"endpoints.items.[INDEX].pricing.meters.additionalProperties.oneOf.0.unit","typeLabel":"string"},"unit_size":{"type":"number","minimum":0,"exclusiveMinimum":true,"isRequired":true,"uniqueKey":"endpoints.items.[INDEX].pricing.meters.additionalProperties.oneOf.0.unit_size","typeLabel":"number"},"price_per_unit":{"type":"string","isRequired":true,"uniqueKey":"endpoints.items.[INDEX].pricing.meters.additionalProperties.oneOf.0.price_per_unit","typeLabel":"string"},"currency":{"type":"string","enum":["USD"],"isRequired":true,"uniqueKey":"endpoints.items.[INDEX].pricing.meters.additionalProperties.oneOf.0.currency","typeLabel":"enum\u003cstring>"}},"uniqueKey":"endpoints.items.[INDEX].pricing.meters.additionalProperties.oneOf.0","typeLabel":"object"},{"type":"null","required":["provider_id","unit","unit_size","price_per_unit","currency"],"properties":{"provider_id":{"type":"string"},"unit":{"type":"string"},"unit_size":{"type":"number","minimum":0,"exclusiveMinimum":true},"price_per_unit":{"type":"string"},"currency":{"type":"string","enum":["USD"]}},"uniqueKey":"endpoints.items.[INDEX].pricing.meters.additionalProperties.oneOf.1","typeLabel":"null"}],"uniqueKey":"endpoints.items.[INDEX].pricing.meters.additionalProperties","typeLabel":"object | null"},"isRequired":true,"uniqueKey":"endpoints.items.[INDEX].pricing.meters","typeLabel":"object"}},"isRequired":true,"uniqueKey":"endpoints.items.[INDEX].pricing","typeLabel":"object"}},"uniqueKey":"endpoints.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"endpoints","typeLabel":"object[]"}},"additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"ok":true,"id":"\u003cstring>","name":"\u003cstring>","description":"\u003cstring>","organization":{"id":"\u003cstring>","name":"\u003cstring>","color":"\u003cstring>"},"modalities":{"input":["\u003cstring>"],"output":["\u003cstring>"]},"availability_mode":"active","endpoints":[{"id":"openai:responses","endpoint":"responses","capability_id":"responses","public_path":"/v1/responses","collection":"text","provider":{"id":"openai","name":"OpenAI"},"model":"gpt-5.4-mini","routable":true,"status":"active","status_reason":"active","modalities":{"input":["\u003cstring>"],"output":["\u003cstring>"]},"capabilities":{"parameters":["\u003cstring>"],"parameter_details":{},"endpoints":["\u003cstring>"],"parameter_specs":{}},"routing":{"provider":"active","model":"active","capability":"active"},"effective":{"from":"\u003cstring>","to":"\u003cstring>"},"pricing":{"pricing_plan":"standard","meters":{}}}]}}},"exampleType":"generated"}},"exampleType":"generated"},"1ac5b707-308c-4d27-865e-5894e5efbe6c":{"description":"Invalid request parameters","content":{"application/json":{"schema":{"type":"object","required":["ok","error","message"],"properties":{"ok":{"type":"boolean","enum":[false],"example":false,"isRequired":true,"uniqueKey":"ok","typeLabel":"enum\u003cboolean>"},"error":{"type":"string","example":"invalid_request","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"message":{"type":"string","example":"Invalid request parameters.","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"max_offset":{"type":"integer","minimum":0,"uniqueKey":"max_offset","typeLabel":"integer"}},"additionalProperties":true,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"ok":false,"error":"invalid_request","message":"Invalid request parameters.","max_offset":1}}},"exampleType":"generated"}},"exampleType":"generated"},"b68a5b45-b270-4fe5-a693-2f26a711b3f9":{"description":"Unauthorized","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"oneOf":[{"type":"string","description":"The error object (`code`, `message`, `type`, `param` and optional `metadata`) that OpenAI-compatible SDKs read. Earlier responses returned the code string here; it is now also returned as top-level `code`.","example":{"code":"validation_error","message":"Unknown parameter: foo","type":"invalid_request_error","param":"foo"},"isRequired":true,"uniqueKey":"error.oneOf.0","typeLabel":"string"},{"type":"object","description":"The error object (`code`, `message`, `type`, `param` and optional `metadata`) that OpenAI-compatible SDKs read. Earlier responses returned the code string here; it is now also returned as top-level `code`.","required":["code","message","type"],"example":{"code":"validation_error","message":"Unknown parameter: foo","type":"invalid_request_error","param":"foo"},"properties":{"code":{"type":"string","description":"Machine-readable error code.","example":"validation_error","isRequired":true,"uniqueKey":"error.oneOf.1.code","typeLabel":"string"},"message":{"type":"string","description":"Human-readable explanation of the failure.","example":"Unknown parameter: foo","isRequired":true,"uniqueKey":"error.oneOf.1.message","typeLabel":"string"},"type":{"type":"string","description":"The error type, following OpenAI's documented error types.","enum":["invalid_request_error","authentication_error","permission_error","not_found_error","rate_limit_error","insufficient_quota","server_error","service_unavailable","overloaded"],"example":"invalid_request_error","isRequired":true,"uniqueKey":"error.oneOf.1.type","typeLabel":"enum\u003cstring>"},"param":{"oneOf":[{"type":"string","description":"The request parameter that caused the error, when known.","example":"foo","uniqueKey":"error.oneOf.1.param.oneOf.0","typeLabel":"string"},{"type":"null","description":"The request parameter that caused the error, when known.","example":"foo","uniqueKey":"error.oneOf.1.param.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.oneOf.1.param","typeLabel":"string | null"},"metadata":{"type":"object","description":"Structured detail also returned at the top level, such as the failing provider, `reason`, `failed_statuses`, `retry_after_seconds` or `upstream_error`.","additionalProperties":true,"uniqueKey":"error.oneOf.1.metadata","typeLabel":"object"}},"additionalProperties":true,"isRequired":true,"uniqueKey":"error.oneOf.1","typeLabel":"object"}],"isRequired":true,"uniqueKey":"error","typeLabel":"string | object"},"ok":{"type":"boolean","example":false,"uniqueKey":"ok","typeLabel":"boolean"},"code":{"type":"string","description":"The error code, the same value as `error.code`.","example":"validation_error","uniqueKey":"code","typeLabel":"string"},"message":{"type":"string","example":"Human-readable error message","uniqueKey":"message","typeLabel":"string"},"description":{"type":"string","example":"Additional error details.","uniqueKey":"description","typeLabel":"string"},"generation_id":{"type":"string","example":"G-abc123","uniqueKey":"generation_id","typeLabel":"string"},"status_code":{"type":"integer","example":502,"uniqueKey":"status_code","typeLabel":"integer"},"error_type":{"type":"string","enum":["user","system"],"example":"system","uniqueKey":"error_type","typeLabel":"enum\u003cstring>"},"error_origin":{"type":"string","enum":["user","gateway","upstream"],"example":"upstream","uniqueKey":"error_origin","typeLabel":"enum\u003cstring>"},"reason":{"type":"string","example":"all_candidates_failed","uniqueKey":"reason","typeLabel":"string"},"attempt_count":{"type":"integer","example":2,"uniqueKey":"attempt_count","typeLabel":"integer"},"failed_providers":{"type":"array","items":{"type":"string","uniqueKey":"failed_providers.items.[INDEX]","typeLabel":"string"},"example":["google-ai-studio","openai"],"uniqueKey":"failed_providers","typeLabel":"string[]"},"failed_statuses":{"type":"array","items":{"type":"integer","uniqueKey":"failed_statuses.items.[INDEX]","typeLabel":"integer"},"example":[403,429],"uniqueKey":"failed_statuses","typeLabel":"integer[]"},"upstream_error":{"type":"object","properties":{"code":{"oneOf":[{"type":"string","example":"PERMISSION_DENIED","uniqueKey":"upstream_error.code.oneOf.0","typeLabel":"string"},{"type":"null","example":"PERMISSION_DENIED","uniqueKey":"upstream_error.code.oneOf.1","typeLabel":"null"}],"uniqueKey":"upstream_error.code","typeLabel":"string | null"},"message":{"oneOf":[{"type":"string","example":"The caller does not have permission.","uniqueKey":"upstream_error.message.oneOf.0","typeLabel":"string"},{"type":"null","example":"The caller does not have permission.","uniqueKey":"upstream_error.message.oneOf.1","typeLabel":"null"}],"uniqueKey":"upstream_error.message","typeLabel":"string | null"},"description":{"oneOf":[{"type":"string","uniqueKey":"upstream_error.description.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"upstream_error.description.oneOf.1","typeLabel":"null"}],"uniqueKey":"upstream_error.description","typeLabel":"string | null"},"param":{"oneOf":[{"type":"string","uniqueKey":"upstream_error.param.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"upstream_error.param.oneOf.1","typeLabel":"null"}],"uniqueKey":"upstream_error.param","typeLabel":"string | null"}},"uniqueKey":"upstream_error","typeLabel":"object"},"failure_sample":{"type":"array","items":{"type":"object","properties":{"provider":{"oneOf":[{"type":"string","uniqueKey":"failure_sample.items.[INDEX].provider.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"failure_sample.items.[INDEX].provider.oneOf.1","typeLabel":"null"}],"uniqueKey":"failure_sample.items.[INDEX].provider","typeLabel":"string | null"},"type":{"oneOf":[{"type":"string","uniqueKey":"failure_sample.items.[INDEX].type.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"failure_sample.items.[INDEX].type.oneOf.1","typeLabel":"null"}],"uniqueKey":"failure_sample.items.[INDEX].type","typeLabel":"string | null"},"status":{"oneOf":[{"type":"integer","uniqueKey":"failure_sample.items.[INDEX].status.oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"failure_sample.items.[INDEX].status.oneOf.1","typeLabel":"null"}],"uniqueKey":"failure_sample.items.[INDEX].status","typeLabel":"integer | null"},"upstream_error_code":{"oneOf":[{"type":"string","uniqueKey":"failure_sample.items.[INDEX].upstream_error_code.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"failure_sample.items.[INDEX].upstream_error_code.oneOf.1","typeLabel":"null"}],"uniqueKey":"failure_sample.items.[INDEX].upstream_error_code","typeLabel":"string | null"},"upstream_error_message":{"oneOf":[{"type":"string","uniqueKey":"failure_sample.items.[INDEX].upstream_error_message.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"failure_sample.items.[INDEX].upstream_error_message.oneOf.1","typeLabel":"null"}],"uniqueKey":"failure_sample.items.[INDEX].upstream_error_message","typeLabel":"string | null"},"upstream_error_description":{"oneOf":[{"type":"string","uniqueKey":"failure_sample.items.[INDEX].upstream_error_description.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"failure_sample.items.[INDEX].upstream_error_description.oneOf.1","typeLabel":"null"}],"uniqueKey":"failure_sample.items.[INDEX].upstream_error_description","typeLabel":"string | null"},"upstream_error_param":{"oneOf":[{"type":"string","uniqueKey":"failure_sample.items.[INDEX].upstream_error_param.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"failure_sample.items.[INDEX].upstream_error_param.oneOf.1","typeLabel":"null"}],"uniqueKey":"failure_sample.items.[INDEX].upstream_error_param","typeLabel":"string | null"},"upstream_payload_preview":{"oneOf":[{"type":"string","uniqueKey":"failure_sample.items.[INDEX].upstream_payload_preview.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"failure_sample.items.[INDEX].upstream_payload_preview.oneOf.1","typeLabel":"null"}],"uniqueKey":"failure_sample.items.[INDEX].upstream_payload_preview","typeLabel":"string | null"},"retryable":{"oneOf":[{"type":"boolean","uniqueKey":"failure_sample.items.[INDEX].retryable.oneOf.0","typeLabel":"boolean"},{"type":"null","uniqueKey":"failure_sample.items.[INDEX].retryable.oneOf.1","typeLabel":"null"}],"uniqueKey":"failure_sample.items.[INDEX].retryable","typeLabel":"boolean | null"}},"additionalProperties":true,"uniqueKey":"failure_sample.items.[INDEX]","typeLabel":"object"},"uniqueKey":"failure_sample","typeLabel":"object[]"},"provider_failure_diagnostics":{"type":"object","properties":{"category":{"type":"string","enum":["credentials_not_configured","credentials_invalid_or_forbidden","provider_access_missing","region_or_project_restriction","model_unavailable_for_endpoint","rate_limited","server_error"],"uniqueKey":"provider_failure_diagnostics.category","typeLabel":"enum\u003cstring>"},"hint":{"type":"string","uniqueKey":"provider_failure_diagnostics.hint","typeLabel":"string"},"provider":{"oneOf":[{"type":"string","uniqueKey":"provider_failure_diagnostics.provider.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"provider_failure_diagnostics.provider.oneOf.1","typeLabel":"null"}],"uniqueKey":"provider_failure_diagnostics.provider","typeLabel":"string | null"}},"uniqueKey":"provider_failure_diagnostics","typeLabel":"object"},"routing_diagnostics":{"type":"object","properties":{"filterStages":{"type":"array","items":{"type":"object","properties":{"stage":{"type":"string","uniqueKey":"routing_diagnostics.filterStages.items.[INDEX].stage","typeLabel":"string"},"beforeCount":{"type":"integer","uniqueKey":"routing_diagnostics.filterStages.items.[INDEX].beforeCount","typeLabel":"integer"},"afterCount":{"type":"integer","uniqueKey":"routing_diagnostics.filterStages.items.[INDEX].afterCount","typeLabel":"integer"},"droppedProviders":{"type":"array","items":{"type":"object","properties":{"providerId":{"oneOf":[{"type":"string","uniqueKey":"routing_diagnostics.filterStages.items.[INDEX].droppedProviders.items.[INDEX].providerId.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"routing_diagnostics.filterStages.items.[INDEX].droppedProviders.items.[INDEX].providerId.oneOf.1","typeLabel":"null"}],"uniqueKey":"routing_diagnostics.filterStages.items.[INDEX].droppedProviders.items.[INDEX].providerId","typeLabel":"string | null"},"reason":{"oneOf":[{"type":"string","uniqueKey":"routing_diagnostics.filterStages.items.[INDEX].droppedProviders.items.[INDEX].reason.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"routing_diagnostics.filterStages.items.[INDEX].droppedProviders.items.[INDEX].reason.oneOf.1","typeLabel":"null"}],"uniqueKey":"routing_diagnostics.filterStages.items.[INDEX].droppedProviders.items.[INDEX].reason","typeLabel":"string | null"}},"additionalProperties":true,"uniqueKey":"routing_diagnostics.filterStages.items.[INDEX].droppedProviders.items.[INDEX]","typeLabel":"object"},"uniqueKey":"routing_diagnostics.filterStages.items.[INDEX].droppedProviders","typeLabel":"object[]"}},"additionalProperties":true,"uniqueKey":"routing_diagnostics.filterStages.items.[INDEX]","typeLabel":"object"},"uniqueKey":"routing_diagnostics.filterStages","typeLabel":"object[]"}},"additionalProperties":true,"uniqueKey":"routing_diagnostics","typeLabel":"object"},"provider_candidate_diagnostics":{"type":"object","properties":{"totalProviders":{"type":"integer","uniqueKey":"provider_candidate_diagnostics.totalProviders","typeLabel":"integer"},"supportsEndpointCount":{"type":"integer","uniqueKey":"provider_candidate_diagnostics.supportsEndpointCount","typeLabel":"integer"},"candidateCount":{"type":"integer","uniqueKey":"provider_candidate_diagnostics.candidateCount","typeLabel":"integer"},"droppedUnsupportedEndpoint":{"type":"array","items":{"type":"string","uniqueKey":"provider_candidate_diagnostics.droppedUnsupportedEndpoint.items.[INDEX]","typeLabel":"string"},"uniqueKey":"provider_candidate_diagnostics.droppedUnsupportedEndpoint","typeLabel":"string[]"},"droppedMissingAdapter":{"type":"array","items":{"type":"object","properties":{"providerId":{"oneOf":[{"type":"string","uniqueKey":"provider_candidate_diagnostics.droppedMissingAdapter.items.[INDEX].providerId.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"provider_candidate_diagnostics.droppedMissingAdapter.items.[INDEX].providerId.oneOf.1","typeLabel":"null"}],"uniqueKey":"provider_candidate_diagnostics.droppedMissingAdapter.items.[INDEX].providerId","typeLabel":"string | null"},"endpoint":{"oneOf":[{"type":"string","uniqueKey":"provider_candidate_diagnostics.droppedMissingAdapter.items.[INDEX].endpoint.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"provider_candidate_diagnostics.droppedMissingAdapter.items.[INDEX].endpoint.oneOf.1","typeLabel":"null"}],"uniqueKey":"provider_candidate_diagnostics.droppedMissingAdapter.items.[INDEX].endpoint","typeLabel":"string | null"}},"additionalProperties":true,"uniqueKey":"provider_candidate_diagnostics.droppedMissingAdapter.items.[INDEX]","typeLabel":"object"},"uniqueKey":"provider_candidate_diagnostics.droppedMissingAdapter","typeLabel":"object[]"}},"additionalProperties":true,"uniqueKey":"provider_candidate_diagnostics","typeLabel":"object"},"provider_enablement":{"type":"object","properties":{"capability":{"type":"string","uniqueKey":"provider_enablement.capability","typeLabel":"string"},"providersBefore":{"type":"array","items":{"type":"string","uniqueKey":"provider_enablement.providersBefore.items.[INDEX]","typeLabel":"string"},"uniqueKey":"provider_enablement.providersBefore","typeLabel":"string[]"},"providersAfter":{"type":"array","items":{"type":"string","uniqueKey":"provider_enablement.providersAfter.items.[INDEX]","typeLabel":"string"},"uniqueKey":"provider_enablement.providersAfter","typeLabel":"string[]"},"dropped":{"type":"array","items":{"type":"object","properties":{"providerId":{"oneOf":[{"type":"string","uniqueKey":"provider_enablement.dropped.items.[INDEX].providerId.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"provider_enablement.dropped.items.[INDEX].providerId.oneOf.1","typeLabel":"null"}],"uniqueKey":"provider_enablement.dropped.items.[INDEX].providerId","typeLabel":"string | null"},"reason":{"oneOf":[{"type":"string","uniqueKey":"provider_enablement.dropped.items.[INDEX].reason.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"provider_enablement.dropped.items.[INDEX].reason.oneOf.1","typeLabel":"null"}],"uniqueKey":"provider_enablement.dropped.items.[INDEX].reason","typeLabel":"string | null"}},"additionalProperties":true,"uniqueKey":"provider_enablement.dropped.items.[INDEX]","typeLabel":"object"},"uniqueKey":"provider_enablement.dropped","typeLabel":"object[]"}},"additionalProperties":true,"uniqueKey":"provider_enablement","typeLabel":"object"},"missing_pricing_providers":{"type":"array","items":{"type":"string","uniqueKey":"missing_pricing_providers.items.[INDEX]","typeLabel":"string"},"uniqueKey":"missing_pricing_providers","typeLabel":"string[]"},"provider_payment_required_provider":{"type":"string","example":"openai","uniqueKey":"provider_payment_required_provider","typeLabel":"string"},"provider_payment_required_support_notice":{"type":"string","example":"Our upstream provider billing appears to be unavailable. If this persists, contact support.","uniqueKey":"provider_payment_required_support_notice","typeLabel":"string"},"details":{"type":"array","items":{"type":"object","additionalProperties":true,"uniqueKey":"details.items.[INDEX]","typeLabel":"object"},"uniqueKey":"details","typeLabel":"object[]"}},"additionalProperties":true,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"validation_error","message":"Unknown parameter: foo","type":"invalid_request_error","param":"foo"},"ok":false,"code":"validation_error","message":"Human-readable error message","description":"Additional error details.","generation_id":"G-abc123","status_code":502,"error_type":"system","error_origin":"upstream","reason":"all_candidates_failed","attempt_count":2,"failed_providers":["google-ai-studio","openai"],"failed_statuses":[403,429],"upstream_error":{"code":"PERMISSION_DENIED","message":"The caller does not have permission.","description":"\u003cstring>","param":"\u003cstring>"},"failure_sample":[{"provider":"\u003cstring>","type":"\u003cstring>","status":123,"upstream_error_code":"\u003cstring>","upstream_error_message":"\u003cstring>","upstream_error_description":"\u003cstring>","upstream_error_param":"\u003cstring>","upstream_payload_preview":"\u003cstring>","retryable":true}],"provider_failure_diagnostics":{"category":"credentials_not_configured","hint":"\u003cstring>","provider":"\u003cstring>"},"routing_diagnostics":{"filterStages":[{"stage":"\u003cstring>","beforeCount":123,"afterCount":123,"droppedProviders":[{"providerId":"\u003cstring>","reason":"\u003cstring>"}]}]},"provider_candidate_diagnostics":{"totalProviders":123,"supportsEndpointCount":123,"candidateCount":123,"droppedUnsupportedEndpoint":["\u003cstring>"],"droppedMissingAdapter":[{"providerId":"\u003cstring>","endpoint":"\u003cstring>"}]},"provider_enablement":{"capability":"\u003cstring>","providersBefore":["\u003cstring>"],"providersAfter":["\u003cstring>"],"dropped":[{"providerId":"\u003cstring>","reason":"\u003cstring>"}]},"missing_pricing_providers":["\u003cstring>"],"provider_payment_required_provider":"openai","provider_payment_required_support_notice":"Our upstream provider billing appears to be unavailable. If this persists, contact support.","details":[{}]}}},"exampleType":"generated"}},"exampleType":"generated"},"0acb49b1-c9a1-47b0-bc95-c2a74406e2ab":{"description":"Model not found for the requested availability and provider filters","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"oneOf":[{"type":"string","description":"The error object (`code`, `message`, `type`, `param` and optional `metadata`) that OpenAI-compatible SDKs read. Earlier responses returned the code string here; it is now also returned as top-level `code`.","example":{"code":"validation_error","message":"Unknown parameter: foo","type":"invalid_request_error","param":"foo"},"isRequired":true,"uniqueKey":"error.oneOf.0","typeLabel":"string"},{"type":"object","description":"The error object (`code`, `message`, `type`, `param` and optional `metadata`) that OpenAI-compatible SDKs read. Earlier responses returned the code string here; it is now also returned as top-level `code`.","required":["code","message","type"],"example":{"code":"validation_error","message":"Unknown parameter: foo","type":"invalid_request_error","param":"foo"},"properties":{"code":{"type":"string","description":"Machine-readable error code.","example":"validation_error","isRequired":true,"uniqueKey":"error.oneOf.1.code","typeLabel":"string"},"message":{"type":"string","description":"Human-readable explanation of the failure.","example":"Unknown parameter: foo","isRequired":true,"uniqueKey":"error.oneOf.1.message","typeLabel":"string"},"type":{"type":"string","description":"The error type, following OpenAI's documented error types.","enum":["invalid_request_error","authentication_error","permission_error","not_found_error","rate_limit_error","insufficient_quota","server_error","service_unavailable","overloaded"],"example":"invalid_request_error","isRequired":true,"uniqueKey":"error.oneOf.1.type","typeLabel":"enum\u003cstring>"},"param":{"oneOf":[{"type":"string","description":"The request parameter that caused the error, when known.","example":"foo","uniqueKey":"error.oneOf.1.param.oneOf.0","typeLabel":"string"},{"type":"null","description":"The request parameter that caused the error, when known.","example":"foo","uniqueKey":"error.oneOf.1.param.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.oneOf.1.param","typeLabel":"string | null"},"metadata":{"type":"object","description":"Structured detail also returned at the top level, such as the failing provider, `reason`, `failed_statuses`, `retry_after_seconds` or `upstream_error`.","additionalProperties":true,"uniqueKey":"error.oneOf.1.metadata","typeLabel":"object"}},"additionalProperties":true,"isRequired":true,"uniqueKey":"error.oneOf.1","typeLabel":"object"}],"isRequired":true,"uniqueKey":"error","typeLabel":"string | object"},"ok":{"type":"boolean","example":false,"uniqueKey":"ok","typeLabel":"boolean"},"code":{"type":"string","description":"The error code, the same value as `error.code`.","example":"validation_error","uniqueKey":"code","typeLabel":"string"},"message":{"type":"string","example":"Human-readable error message","uniqueKey":"message","typeLabel":"string"},"description":{"type":"string","example":"Additional error details.","uniqueKey":"description","typeLabel":"string"},"generation_id":{"type":"string","example":"G-abc123","uniqueKey":"generation_id","typeLabel":"string"},"status_code":{"type":"integer","example":502,"uniqueKey":"status_code","typeLabel":"integer"},"error_type":{"type":"string","enum":["user","system"],"example":"system","uniqueKey":"error_type","typeLabel":"enum\u003cstring>"},"error_origin":{"type":"string","enum":["user","gateway","upstream"],"example":"upstream","uniqueKey":"error_origin","typeLabel":"enum\u003cstring>"},"reason":{"type":"string","example":"all_candidates_failed","uniqueKey":"reason","typeLabel":"string"},"attempt_count":{"type":"integer","example":2,"uniqueKey":"attempt_count","typeLabel":"integer"},"failed_providers":{"type":"array","items":{"type":"string","uniqueKey":"failed_providers.items.[INDEX]","typeLabel":"string"},"example":["google-ai-studio","openai"],"uniqueKey":"failed_providers","typeLabel":"string[]"},"failed_statuses":{"type":"array","items":{"type":"integer","uniqueKey":"failed_statuses.items.[INDEX]","typeLabel":"integer"},"example":[403,429],"uniqueKey":"failed_statuses","typeLabel":"integer[]"},"upstream_error":{"type":"object","properties":{"code":{"oneOf":[{"type":"string","example":"PERMISSION_DENIED","uniqueKey":"upstream_error.code.oneOf.0","typeLabel":"string"},{"type":"null","example":"PERMISSION_DENIED","uniqueKey":"upstream_error.code.oneOf.1","typeLabel":"null"}],"uniqueKey":"upstream_error.code","typeLabel":"string | null"},"message":{"oneOf":[{"type":"string","example":"The caller does not have permission.","uniqueKey":"upstream_error.message.oneOf.0","typeLabel":"string"},{"type":"null","example":"The caller does not have permission.","uniqueKey":"upstream_error.message.oneOf.1","typeLabel":"null"}],"uniqueKey":"upstream_error.message","typeLabel":"string | null"},"description":{"oneOf":[{"type":"string","uniqueKey":"upstream_error.description.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"upstream_error.description.oneOf.1","typeLabel":"null"}],"uniqueKey":"upstream_error.description","typeLabel":"string | null"},"param":{"oneOf":[{"type":"string","uniqueKey":"upstream_error.param.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"upstream_error.param.oneOf.1","typeLabel":"null"}],"uniqueKey":"upstream_error.param","typeLabel":"string | null"}},"uniqueKey":"upstream_error","typeLabel":"object"},"failure_sample":{"type":"array","items":{"type":"object","properties":{"provider":{"oneOf":[{"type":"string","uniqueKey":"failure_sample.items.[INDEX].provider.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"failure_sample.items.[INDEX].provider.oneOf.1","typeLabel":"null"}],"uniqueKey":"failure_sample.items.[INDEX].provider","typeLabel":"string | null"},"type":{"oneOf":[{"type":"string","uniqueKey":"failure_sample.items.[INDEX].type.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"failure_sample.items.[INDEX].type.oneOf.1","typeLabel":"null"}],"uniqueKey":"failure_sample.items.[INDEX].type","typeLabel":"string | null"},"status":{"oneOf":[{"type":"integer","uniqueKey":"failure_sample.items.[INDEX].status.oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"failure_sample.items.[INDEX].status.oneOf.1","typeLabel":"null"}],"uniqueKey":"failure_sample.items.[INDEX].status","typeLabel":"integer | null"},"upstream_error_code":{"oneOf":[{"type":"string","uniqueKey":"failure_sample.items.[INDEX].upstream_error_code.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"failure_sample.items.[INDEX].upstream_error_code.oneOf.1","typeLabel":"null"}],"uniqueKey":"failure_sample.items.[INDEX].upstream_error_code","typeLabel":"string | null"},"upstream_error_message":{"oneOf":[{"type":"string","uniqueKey":"failure_sample.items.[INDEX].upstream_error_message.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"failure_sample.items.[INDEX].upstream_error_message.oneOf.1","typeLabel":"null"}],"uniqueKey":"failure_sample.items.[INDEX].upstream_error_message","typeLabel":"string | null"},"upstream_error_description":{"oneOf":[{"type":"string","uniqueKey":"failure_sample.items.[INDEX].upstream_error_description.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"failure_sample.items.[INDEX].upstream_error_description.oneOf.1","typeLabel":"null"}],"uniqueKey":"failure_sample.items.[INDEX].upstream_error_description","typeLabel":"string | null"},"upstream_error_param":{"oneOf":[{"type":"string","uniqueKey":"failure_sample.items.[INDEX].upstream_error_param.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"failure_sample.items.[INDEX].upstream_error_param.oneOf.1","typeLabel":"null"}],"uniqueKey":"failure_sample.items.[INDEX].upstream_error_param","typeLabel":"string | null"},"upstream_payload_preview":{"oneOf":[{"type":"string","uniqueKey":"failure_sample.items.[INDEX].upstream_payload_preview.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"failure_sample.items.[INDEX].upstream_payload_preview.oneOf.1","typeLabel":"null"}],"uniqueKey":"failure_sample.items.[INDEX].upstream_payload_preview","typeLabel":"string | null"},"retryable":{"oneOf":[{"type":"boolean","uniqueKey":"failure_sample.items.[INDEX].retryable.oneOf.0","typeLabel":"boolean"},{"type":"null","uniqueKey":"failure_sample.items.[INDEX].retryable.oneOf.1","typeLabel":"null"}],"uniqueKey":"failure_sample.items.[INDEX].retryable","typeLabel":"boolean | null"}},"additionalProperties":true,"uniqueKey":"failure_sample.items.[INDEX]","typeLabel":"object"},"uniqueKey":"failure_sample","typeLabel":"object[]"},"provider_failure_diagnostics":{"type":"object","properties":{"category":{"type":"string","enum":["credentials_not_configured","credentials_invalid_or_forbidden","provider_access_missing","region_or_project_restriction","model_unavailable_for_endpoint","rate_limited","server_error"],"uniqueKey":"provider_failure_diagnostics.category","typeLabel":"enum\u003cstring>"},"hint":{"type":"string","uniqueKey":"provider_failure_diagnostics.hint","typeLabel":"string"},"provider":{"oneOf":[{"type":"string","uniqueKey":"provider_failure_diagnostics.provider.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"provider_failure_diagnostics.provider.oneOf.1","typeLabel":"null"}],"uniqueKey":"provider_failure_diagnostics.provider","typeLabel":"string | null"}},"uniqueKey":"provider_failure_diagnostics","typeLabel":"object"},"routing_diagnostics":{"type":"object","properties":{"filterStages":{"type":"array","items":{"type":"object","properties":{"stage":{"type":"string","uniqueKey":"routing_diagnostics.filterStages.items.[INDEX].stage","typeLabel":"string"},"beforeCount":{"type":"integer","uniqueKey":"routing_diagnostics.filterStages.items.[INDEX].beforeCount","typeLabel":"integer"},"afterCount":{"type":"integer","uniqueKey":"routing_diagnostics.filterStages.items.[INDEX].afterCount","typeLabel":"integer"},"droppedProviders":{"type":"array","items":{"type":"object","properties":{"providerId":{"oneOf":[{"type":"string","uniqueKey":"routing_diagnostics.filterStages.items.[INDEX].droppedProviders.items.[INDEX].providerId.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"routing_diagnostics.filterStages.items.[INDEX].droppedProviders.items.[INDEX].providerId.oneOf.1","typeLabel":"null"}],"uniqueKey":"routing_diagnostics.filterStages.items.[INDEX].droppedProviders.items.[INDEX].providerId","typeLabel":"string | null"},"reason":{"oneOf":[{"type":"string","uniqueKey":"routing_diagnostics.filterStages.items.[INDEX].droppedProviders.items.[INDEX].reason.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"routing_diagnostics.filterStages.items.[INDEX].droppedProviders.items.[INDEX].reason.oneOf.1","typeLabel":"null"}],"uniqueKey":"routing_diagnostics.filterStages.items.[INDEX].droppedProviders.items.[INDEX].reason","typeLabel":"string | null"}},"additionalProperties":true,"uniqueKey":"routing_diagnostics.filterStages.items.[INDEX].droppedProviders.items.[INDEX]","typeLabel":"object"},"uniqueKey":"routing_diagnostics.filterStages.items.[INDEX].droppedProviders","typeLabel":"object[]"}},"additionalProperties":true,"uniqueKey":"routing_diagnostics.filterStages.items.[INDEX]","typeLabel":"object"},"uniqueKey":"routing_diagnostics.filterStages","typeLabel":"object[]"}},"additionalProperties":true,"uniqueKey":"routing_diagnostics","typeLabel":"object"},"provider_candidate_diagnostics":{"type":"object","properties":{"totalProviders":{"type":"integer","uniqueKey":"provider_candidate_diagnostics.totalProviders","typeLabel":"integer"},"supportsEndpointCount":{"type":"integer","uniqueKey":"provider_candidate_diagnostics.supportsEndpointCount","typeLabel":"integer"},"candidateCount":{"type":"integer","uniqueKey":"provider_candidate_diagnostics.candidateCount","typeLabel":"integer"},"droppedUnsupportedEndpoint":{"type":"array","items":{"type":"string","uniqueKey":"provider_candidate_diagnostics.droppedUnsupportedEndpoint.items.[INDEX]","typeLabel":"string"},"uniqueKey":"provider_candidate_diagnostics.droppedUnsupportedEndpoint","typeLabel":"string[]"},"droppedMissingAdapter":{"type":"array","items":{"type":"object","properties":{"providerId":{"oneOf":[{"type":"string","uniqueKey":"provider_candidate_diagnostics.droppedMissingAdapter.items.[INDEX].providerId.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"provider_candidate_diagnostics.droppedMissingAdapter.items.[INDEX].providerId.oneOf.1","typeLabel":"null"}],"uniqueKey":"provider_candidate_diagnostics.droppedMissingAdapter.items.[INDEX].providerId","typeLabel":"string | null"},"endpoint":{"oneOf":[{"type":"string","uniqueKey":"provider_candidate_diagnostics.droppedMissingAdapter.items.[INDEX].endpoint.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"provider_candidate_diagnostics.droppedMissingAdapter.items.[INDEX].endpoint.oneOf.1","typeLabel":"null"}],"uniqueKey":"provider_candidate_diagnostics.droppedMissingAdapter.items.[INDEX].endpoint","typeLabel":"string | null"}},"additionalProperties":true,"uniqueKey":"provider_candidate_diagnostics.droppedMissingAdapter.items.[INDEX]","typeLabel":"object"},"uniqueKey":"provider_candidate_diagnostics.droppedMissingAdapter","typeLabel":"object[]"}},"additionalProperties":true,"uniqueKey":"provider_candidate_diagnostics","typeLabel":"object"},"provider_enablement":{"type":"object","properties":{"capability":{"type":"string","uniqueKey":"provider_enablement.capability","typeLabel":"string"},"providersBefore":{"type":"array","items":{"type":"string","uniqueKey":"provider_enablement.providersBefore.items.[INDEX]","typeLabel":"string"},"uniqueKey":"provider_enablement.providersBefore","typeLabel":"string[]"},"providersAfter":{"type":"array","items":{"type":"string","uniqueKey":"provider_enablement.providersAfter.items.[INDEX]","typeLabel":"string"},"uniqueKey":"provider_enablement.providersAfter","typeLabel":"string[]"},"dropped":{"type":"array","items":{"type":"object","properties":{"providerId":{"oneOf":[{"type":"string","uniqueKey":"provider_enablement.dropped.items.[INDEX].providerId.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"provider_enablement.dropped.items.[INDEX].providerId.oneOf.1","typeLabel":"null"}],"uniqueKey":"provider_enablement.dropped.items.[INDEX].providerId","typeLabel":"string | null"},"reason":{"oneOf":[{"type":"string","uniqueKey":"provider_enablement.dropped.items.[INDEX].reason.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"provider_enablement.dropped.items.[INDEX].reason.oneOf.1","typeLabel":"null"}],"uniqueKey":"provider_enablement.dropped.items.[INDEX].reason","typeLabel":"string | null"}},"additionalProperties":true,"uniqueKey":"provider_enablement.dropped.items.[INDEX]","typeLabel":"object"},"uniqueKey":"provider_enablement.dropped","typeLabel":"object[]"}},"additionalProperties":true,"uniqueKey":"provider_enablement","typeLabel":"object"},"missing_pricing_providers":{"type":"array","items":{"type":"string","uniqueKey":"missing_pricing_providers.items.[INDEX]","typeLabel":"string"},"uniqueKey":"missing_pricing_providers","typeLabel":"string[]"},"provider_payment_required_provider":{"type":"string","example":"openai","uniqueKey":"provider_payment_required_provider","typeLabel":"string"},"provider_payment_required_support_notice":{"type":"string","example":"Our upstream provider billing appears to be unavailable. If this persists, contact support.","uniqueKey":"provider_payment_required_support_notice","typeLabel":"string"},"details":{"type":"array","items":{"type":"object","additionalProperties":true,"uniqueKey":"details.items.[INDEX]","typeLabel":"object"},"uniqueKey":"details","typeLabel":"object[]"}},"additionalProperties":true,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"validation_error","message":"Unknown parameter: foo","type":"invalid_request_error","param":"foo"},"ok":false,"code":"validation_error","message":"Human-readable error message","description":"Additional error details.","generation_id":"G-abc123","status_code":502,"error_type":"system","error_origin":"upstream","reason":"all_candidates_failed","attempt_count":2,"failed_providers":["google-ai-studio","openai"],"failed_statuses":[403,429],"upstream_error":{"code":"PERMISSION_DENIED","message":"The caller does not have permission.","description":"\u003cstring>","param":"\u003cstring>"},"failure_sample":[{"provider":"\u003cstring>","type":"\u003cstring>","status":123,"upstream_error_code":"\u003cstring>","upstream_error_message":"\u003cstring>","upstream_error_description":"\u003cstring>","upstream_error_param":"\u003cstring>","upstream_payload_preview":"\u003cstring>","retryable":true}],"provider_failure_diagnostics":{"category":"credentials_not_configured","hint":"\u003cstring>","provider":"\u003cstring>"},"routing_diagnostics":{"filterStages":[{"stage":"\u003cstring>","beforeCount":123,"afterCount":123,"droppedProviders":[{"providerId":"\u003cstring>","reason":"\u003cstring>"}]}]},"provider_candidate_diagnostics":{"totalProviders":123,"supportsEndpointCount":123,"candidateCount":123,"droppedUnsupportedEndpoint":["\u003cstring>"],"droppedMissingAdapter":[{"providerId":"\u003cstring>","endpoint":"\u003cstring>"}]},"provider_enablement":{"capability":"\u003cstring>","providersBefore":["\u003cstring>"],"providersAfter":["\u003cstring>"],"dropped":[{"providerId":"\u003cstring>","reason":"\u003cstring>"}]},"missing_pricing_providers":["\u003cstring>"],"provider_payment_required_provider":"openai","provider_payment_required_support_notice":"Our upstream provider billing appears to be unavailable. If this persists, contact support.","details":[{}]}}},"exampleType":"generated"}},"exampleType":"generated"},"37a158df-b36d-4d72-8c5c-aaadb5de20aa":{"description":"Error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"oneOf":[{"type":"string","description":"The error object (`code`, `message`, `type`, `param` and optional `metadata`) that OpenAI-compatible SDKs read. Earlier responses returned the code string here; it is now also returned as top-level `code`.","example":{"code":"validation_error","message":"Unknown parameter: foo","type":"invalid_request_error","param":"foo"},"isRequired":true,"uniqueKey":"error.oneOf.0","typeLabel":"string"},{"type":"object","description":"The error object (`code`, `message`, `type`, `param` and optional `metadata`) that OpenAI-compatible SDKs read. Earlier responses returned the code string here; it is now also returned as top-level `code`.","required":["code","message","type"],"example":{"code":"validation_error","message":"Unknown parameter: foo","type":"invalid_request_error","param":"foo"},"properties":{"code":{"type":"string","description":"Machine-readable error code.","example":"validation_error","isRequired":true,"uniqueKey":"error.oneOf.1.code","typeLabel":"string"},"message":{"type":"string","description":"Human-readable explanation of the failure.","example":"Unknown parameter: foo","isRequired":true,"uniqueKey":"error.oneOf.1.message","typeLabel":"string"},"type":{"type":"string","description":"The error type, following OpenAI's documented error types.","enum":["invalid_request_error","authentication_error","permission_error","not_found_error","rate_limit_error","insufficient_quota","server_error","service_unavailable","overloaded"],"example":"invalid_request_error","isRequired":true,"uniqueKey":"error.oneOf.1.type","typeLabel":"enum\u003cstring>"},"param":{"oneOf":[{"type":"string","description":"The request parameter that caused the error, when known.","example":"foo","uniqueKey":"error.oneOf.1.param.oneOf.0","typeLabel":"string"},{"type":"null","description":"The request parameter that caused the error, when known.","example":"foo","uniqueKey":"error.oneOf.1.param.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.oneOf.1.param","typeLabel":"string | null"},"metadata":{"type":"object","description":"Structured detail also returned at the top level, such as the failing provider, `reason`, `failed_statuses`, `retry_after_seconds` or `upstream_error`.","additionalProperties":true,"uniqueKey":"error.oneOf.1.metadata","typeLabel":"object"}},"additionalProperties":true,"isRequired":true,"uniqueKey":"error.oneOf.1","typeLabel":"object"}],"isRequired":true,"uniqueKey":"error","typeLabel":"string | object"},"ok":{"type":"boolean","example":false,"uniqueKey":"ok","typeLabel":"boolean"},"code":{"type":"string","description":"The error code, the same value as `error.code`.","example":"validation_error","uniqueKey":"code","typeLabel":"string"},"message":{"type":"string","example":"Human-readable error message","uniqueKey":"message","typeLabel":"string"},"description":{"type":"string","example":"Additional error details.","uniqueKey":"description","typeLabel":"string"},"generation_id":{"type":"string","example":"G-abc123","uniqueKey":"generation_id","typeLabel":"string"},"status_code":{"type":"integer","example":502,"uniqueKey":"status_code","typeLabel":"integer"},"error_type":{"type":"string","enum":["user","system"],"example":"system","uniqueKey":"error_type","typeLabel":"enum\u003cstring>"},"error_origin":{"type":"string","enum":["user","gateway","upstream"],"example":"upstream","uniqueKey":"error_origin","typeLabel":"enum\u003cstring>"},"reason":{"type":"string","example":"all_candidates_failed","uniqueKey":"reason","typeLabel":"string"},"attempt_count":{"type":"integer","example":2,"uniqueKey":"attempt_count","typeLabel":"integer"},"failed_providers":{"type":"array","items":{"type":"string","uniqueKey":"failed_providers.items.[INDEX]","typeLabel":"string"},"example":["google-ai-studio","openai"],"uniqueKey":"failed_providers","typeLabel":"string[]"},"failed_statuses":{"type":"array","items":{"type":"integer","uniqueKey":"failed_statuses.items.[INDEX]","typeLabel":"integer"},"example":[403,429],"uniqueKey":"failed_statuses","typeLabel":"integer[]"},"upstream_error":{"type":"object","properties":{"code":{"oneOf":[{"type":"string","example":"PERMISSION_DENIED","uniqueKey":"upstream_error.code.oneOf.0","typeLabel":"string"},{"type":"null","example":"PERMISSION_DENIED","uniqueKey":"upstream_error.code.oneOf.1","typeLabel":"null"}],"uniqueKey":"upstream_error.code","typeLabel":"string | null"},"message":{"oneOf":[{"type":"string","example":"The caller does not have permission.","uniqueKey":"upstream_error.message.oneOf.0","typeLabel":"string"},{"type":"null","example":"The caller does not have permission.","uniqueKey":"upstream_error.message.oneOf.1","typeLabel":"null"}],"uniqueKey":"upstream_error.message","typeLabel":"string | null"},"description":{"oneOf":[{"type":"string","uniqueKey":"upstream_error.description.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"upstream_error.description.oneOf.1","typeLabel":"null"}],"uniqueKey":"upstream_error.description","typeLabel":"string | null"},"param":{"oneOf":[{"type":"string","uniqueKey":"upstream_error.param.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"upstream_error.param.oneOf.1","typeLabel":"null"}],"uniqueKey":"upstream_error.param","typeLabel":"string | null"}},"uniqueKey":"upstream_error","typeLabel":"object"},"failure_sample":{"type":"array","items":{"type":"object","properties":{"provider":{"oneOf":[{"type":"string","uniqueKey":"failure_sample.items.[INDEX].provider.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"failure_sample.items.[INDEX].provider.oneOf.1","typeLabel":"null"}],"uniqueKey":"failure_sample.items.[INDEX].provider","typeLabel":"string | null"},"type":{"oneOf":[{"type":"string","uniqueKey":"failure_sample.items.[INDEX].type.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"failure_sample.items.[INDEX].type.oneOf.1","typeLabel":"null"}],"uniqueKey":"failure_sample.items.[INDEX].type","typeLabel":"string | null"},"status":{"oneOf":[{"type":"integer","uniqueKey":"failure_sample.items.[INDEX].status.oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"failure_sample.items.[INDEX].status.oneOf.1","typeLabel":"null"}],"uniqueKey":"failure_sample.items.[INDEX].status","typeLabel":"integer | null"},"upstream_error_code":{"oneOf":[{"type":"string","uniqueKey":"failure_sample.items.[INDEX].upstream_error_code.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"failure_sample.items.[INDEX].upstream_error_code.oneOf.1","typeLabel":"null"}],"uniqueKey":"failure_sample.items.[INDEX].upstream_error_code","typeLabel":"string | null"},"upstream_error_message":{"oneOf":[{"type":"string","uniqueKey":"failure_sample.items.[INDEX].upstream_error_message.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"failure_sample.items.[INDEX].upstream_error_message.oneOf.1","typeLabel":"null"}],"uniqueKey":"failure_sample.items.[INDEX].upstream_error_message","typeLabel":"string | null"},"upstream_error_description":{"oneOf":[{"type":"string","uniqueKey":"failure_sample.items.[INDEX].upstream_error_description.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"failure_sample.items.[INDEX].upstream_error_description.oneOf.1","typeLabel":"null"}],"uniqueKey":"failure_sample.items.[INDEX].upstream_error_description","typeLabel":"string | null"},"upstream_error_param":{"oneOf":[{"type":"string","uniqueKey":"failure_sample.items.[INDEX].upstream_error_param.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"failure_sample.items.[INDEX].upstream_error_param.oneOf.1","typeLabel":"null"}],"uniqueKey":"failure_sample.items.[INDEX].upstream_error_param","typeLabel":"string | null"},"upstream_payload_preview":{"oneOf":[{"type":"string","uniqueKey":"failure_sample.items.[INDEX].upstream_payload_preview.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"failure_sample.items.[INDEX].upstream_payload_preview.oneOf.1","typeLabel":"null"}],"uniqueKey":"failure_sample.items.[INDEX].upstream_payload_preview","typeLabel":"string | null"},"retryable":{"oneOf":[{"type":"boolean","uniqueKey":"failure_sample.items.[INDEX].retryable.oneOf.0","typeLabel":"boolean"},{"type":"null","uniqueKey":"failure_sample.items.[INDEX].retryable.oneOf.1","typeLabel":"null"}],"uniqueKey":"failure_sample.items.[INDEX].retryable","typeLabel":"boolean | null"}},"additionalProperties":true,"uniqueKey":"failure_sample.items.[INDEX]","typeLabel":"object"},"uniqueKey":"failure_sample","typeLabel":"object[]"},"provider_failure_diagnostics":{"type":"object","properties":{"category":{"type":"string","enum":["credentials_not_configured","credentials_invalid_or_forbidden","provider_access_missing","region_or_project_restriction","model_unavailable_for_endpoint","rate_limited","server_error"],"uniqueKey":"provider_failure_diagnostics.category","typeLabel":"enum\u003cstring>"},"hint":{"type":"string","uniqueKey":"provider_failure_diagnostics.hint","typeLabel":"string"},"provider":{"oneOf":[{"type":"string","uniqueKey":"provider_failure_diagnostics.provider.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"provider_failure_diagnostics.provider.oneOf.1","typeLabel":"null"}],"uniqueKey":"provider_failure_diagnostics.provider","typeLabel":"string | null"}},"uniqueKey":"provider_failure_diagnostics","typeLabel":"object"},"routing_diagnostics":{"type":"object","properties":{"filterStages":{"type":"array","items":{"type":"object","properties":{"stage":{"type":"string","uniqueKey":"routing_diagnostics.filterStages.items.[INDEX].stage","typeLabel":"string"},"beforeCount":{"type":"integer","uniqueKey":"routing_diagnostics.filterStages.items.[INDEX].beforeCount","typeLabel":"integer"},"afterCount":{"type":"integer","uniqueKey":"routing_diagnostics.filterStages.items.[INDEX].afterCount","typeLabel":"integer"},"droppedProviders":{"type":"array","items":{"type":"object","properties":{"providerId":{"oneOf":[{"type":"string","uniqueKey":"routing_diagnostics.filterStages.items.[INDEX].droppedProviders.items.[INDEX].providerId.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"routing_diagnostics.filterStages.items.[INDEX].droppedProviders.items.[INDEX].providerId.oneOf.1","typeLabel":"null"}],"uniqueKey":"routing_diagnostics.filterStages.items.[INDEX].droppedProviders.items.[INDEX].providerId","typeLabel":"string | null"},"reason":{"oneOf":[{"type":"string","uniqueKey":"routing_diagnostics.filterStages.items.[INDEX].droppedProviders.items.[INDEX].reason.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"routing_diagnostics.filterStages.items.[INDEX].droppedProviders.items.[INDEX].reason.oneOf.1","typeLabel":"null"}],"uniqueKey":"routing_diagnostics.filterStages.items.[INDEX].droppedProviders.items.[INDEX].reason","typeLabel":"string | null"}},"additionalProperties":true,"uniqueKey":"routing_diagnostics.filterStages.items.[INDEX].droppedProviders.items.[INDEX]","typeLabel":"object"},"uniqueKey":"routing_diagnostics.filterStages.items.[INDEX].droppedProviders","typeLabel":"object[]"}},"additionalProperties":true,"uniqueKey":"routing_diagnostics.filterStages.items.[INDEX]","typeLabel":"object"},"uniqueKey":"routing_diagnostics.filterStages","typeLabel":"object[]"}},"additionalProperties":true,"uniqueKey":"routing_diagnostics","typeLabel":"object"},"provider_candidate_diagnostics":{"type":"object","properties":{"totalProviders":{"type":"integer","uniqueKey":"provider_candidate_diagnostics.totalProviders","typeLabel":"integer"},"supportsEndpointCount":{"type":"integer","uniqueKey":"provider_candidate_diagnostics.supportsEndpointCount","typeLabel":"integer"},"candidateCount":{"type":"integer","uniqueKey":"provider_candidate_diagnostics.candidateCount","typeLabel":"integer"},"droppedUnsupportedEndpoint":{"type":"array","items":{"type":"string","uniqueKey":"provider_candidate_diagnostics.droppedUnsupportedEndpoint.items.[INDEX]","typeLabel":"string"},"uniqueKey":"provider_candidate_diagnostics.droppedUnsupportedEndpoint","typeLabel":"string[]"},"droppedMissingAdapter":{"type":"array","items":{"type":"object","properties":{"providerId":{"oneOf":[{"type":"string","uniqueKey":"provider_candidate_diagnostics.droppedMissingAdapter.items.[INDEX].providerId.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"provider_candidate_diagnostics.droppedMissingAdapter.items.[INDEX].providerId.oneOf.1","typeLabel":"null"}],"uniqueKey":"provider_candidate_diagnostics.droppedMissingAdapter.items.[INDEX].providerId","typeLabel":"string | null"},"endpoint":{"oneOf":[{"type":"string","uniqueKey":"provider_candidate_diagnostics.droppedMissingAdapter.items.[INDEX].endpoint.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"provider_candidate_diagnostics.droppedMissingAdapter.items.[INDEX].endpoint.oneOf.1","typeLabel":"null"}],"uniqueKey":"provider_candidate_diagnostics.droppedMissingAdapter.items.[INDEX].endpoint","typeLabel":"string | null"}},"additionalProperties":true,"uniqueKey":"provider_candidate_diagnostics.droppedMissingAdapter.items.[INDEX]","typeLabel":"object"},"uniqueKey":"provider_candidate_diagnostics.droppedMissingAdapter","typeLabel":"object[]"}},"additionalProperties":true,"uniqueKey":"provider_candidate_diagnostics","typeLabel":"object"},"provider_enablement":{"type":"object","properties":{"capability":{"type":"string","uniqueKey":"provider_enablement.capability","typeLabel":"string"},"providersBefore":{"type":"array","items":{"type":"string","uniqueKey":"provider_enablement.providersBefore.items.[INDEX]","typeLabel":"string"},"uniqueKey":"provider_enablement.providersBefore","typeLabel":"string[]"},"providersAfter":{"type":"array","items":{"type":"string","uniqueKey":"provider_enablement.providersAfter.items.[INDEX]","typeLabel":"string"},"uniqueKey":"provider_enablement.providersAfter","typeLabel":"string[]"},"dropped":{"type":"array","items":{"type":"object","properties":{"providerId":{"oneOf":[{"type":"string","uniqueKey":"provider_enablement.dropped.items.[INDEX].providerId.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"provider_enablement.dropped.items.[INDEX].providerId.oneOf.1","typeLabel":"null"}],"uniqueKey":"provider_enablement.dropped.items.[INDEX].providerId","typeLabel":"string | null"},"reason":{"oneOf":[{"type":"string","uniqueKey":"provider_enablement.dropped.items.[INDEX].reason.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"provider_enablement.dropped.items.[INDEX].reason.oneOf.1","typeLabel":"null"}],"uniqueKey":"provider_enablement.dropped.items.[INDEX].reason","typeLabel":"string | null"}},"additionalProperties":true,"uniqueKey":"provider_enablement.dropped.items.[INDEX]","typeLabel":"object"},"uniqueKey":"provider_enablement.dropped","typeLabel":"object[]"}},"additionalProperties":true,"uniqueKey":"provider_enablement","typeLabel":"object"},"missing_pricing_providers":{"type":"array","items":{"type":"string","uniqueKey":"missing_pricing_providers.items.[INDEX]","typeLabel":"string"},"uniqueKey":"missing_pricing_providers","typeLabel":"string[]"},"provider_payment_required_provider":{"type":"string","example":"openai","uniqueKey":"provider_payment_required_provider","typeLabel":"string"},"provider_payment_required_support_notice":{"type":"string","example":"Our upstream provider billing appears to be unavailable. If this persists, contact support.","uniqueKey":"provider_payment_required_support_notice","typeLabel":"string"},"details":{"type":"array","items":{"type":"object","additionalProperties":true,"uniqueKey":"details.items.[INDEX]","typeLabel":"object"},"uniqueKey":"details","typeLabel":"object[]"}},"additionalProperties":true,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"validation_error","message":"Unknown parameter: foo","type":"invalid_request_error","param":"foo"},"ok":false,"code":"validation_error","message":"Human-readable error message","description":"Additional error details.","generation_id":"G-abc123","status_code":502,"error_type":"system","error_origin":"upstream","reason":"all_candidates_failed","attempt_count":2,"failed_providers":["google-ai-studio","openai"],"failed_statuses":[403,429],"upstream_error":{"code":"PERMISSION_DENIED","message":"The caller does not have permission.","description":"\u003cstring>","param":"\u003cstring>"},"failure_sample":[{"provider":"\u003cstring>","type":"\u003cstring>","status":123,"upstream_error_code":"\u003cstring>","upstream_error_message":"\u003cstring>","upstream_error_description":"\u003cstring>","upstream_error_param":"\u003cstring>","upstream_payload_preview":"\u003cstring>","retryable":true}],"provider_failure_diagnostics":{"category":"credentials_not_configured","hint":"\u003cstring>","provider":"\u003cstring>"},"routing_diagnostics":{"filterStages":[{"stage":"\u003cstring>","beforeCount":123,"afterCount":123,"droppedProviders":[{"providerId":"\u003cstring>","reason":"\u003cstring>"}]}]},"provider_candidate_diagnostics":{"totalProviders":123,"supportsEndpointCount":123,"candidateCount":123,"droppedUnsupportedEndpoint":["\u003cstring>"],"droppedMissingAdapter":[{"providerId":"\u003cstring>","endpoint":"\u003cstring>"}]},"provider_enablement":{"capability":"\u003cstring>","providersBefore":["\u003cstring>"],"providersAfter":["\u003cstring>"],"dropped":[{"providerId":"\u003cstring>","reason":"\u003cstring>"}]},"missing_pricing_providers":["\u003cstring>"],"provider_payment_required_provider":"openai","provider_payment_required_support_notice":"Our upstream provider billing appears to be unavailable. If this persists, contact support.","details":[{}]}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"6e17e412-b51d-4fab-a160-6e4c4ca9dfed":{"BearerAuth":{"type":"http","scheme":"bearer","description":"Bearer token authentication","scopes":[],"schemeName":"BearerAuth"}}},"servers":{"14dc0b3d-24b9-47bb-8bb9-41b61a643394":{"url":"https://api.phaseo.app/v1","description":"Global routing"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","description":"Bearer token authentication","scopes":[],"schemeName":"BearerAuth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Bearer token authentication","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"BearerAuth","name":"Authorization"}],"title":"BearerAuth"}]},"originalFileLocation":"openapi/v1/openapi.yaml"},"subdomain":"aistats","siteName":"Phaseo Docs","title":"List model endpoint capabilities - Phaseo Docs","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{"en":{"href":"/v1/api-reference/endpoint/model-endpoints","matchLevel":0},"es":{"href":"/es/v1/api-reference/endpoint/model-endpoints","matchLevel":1},"fr":{"href":"/fr/v1/api-reference/endpoint/model-endpoints","matchLevel":1},"de":{"href":"/de/v1/api-reference/endpoint/model-endpoints","matchLevel":1},"pt-BR":{"href":"/pt-BR/v1/api-reference/endpoint/model-endpoints","matchLevel":1},"ja":{"href":"/ja/v1/api-reference/endpoint/model-endpoints","matchLevel":1},"zh-Hans":{"href":"/zh-Hans/v1/api-reference/endpoint/model-endpoints","matchLevel":1},"hi":{"href":"/hi/v1/api-reference/endpoint/model-endpoints","matchLevel":1},"ar":{"href":"/ar/v1/api-reference/endpoint/model-endpoints","matchLevel":1}}},"lastModified":"2026-11-05T13:39:50.084Z","gitLastModified":"2026-11-05T13:38:10.000Z","originalFileLocation":"v1/api-reference/endpoint/model-endpoints.mdx","locale":"en"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Inspect the provider routes, modalities, parameters, availability, and pricing available for one model.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Phaseo Docs\">\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/aistats/e9OKRuK0XVSasMAN/_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/aistats/e9OKRuK0XVSasMAN/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/docs/mintlify-assets/_mintlify/favicons/aistats/e9OKRuK0XVSasMAN/_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/aistats/e9OKRuK0XVSasMAN/_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/aistats/e9OKRuK0XVSasMAN/_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/aistats/e9OKRuK0XVSasMAN/_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/aistats/e9OKRuK0XVSasMAN/_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/aistats/e9OKRuK0XVSasMAN/_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/aistats/e9OKRuK0XVSasMAN/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"List model endpoint capabilities - Phaseo Docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"Inspect the provider routes, modalities, parameters, availability, and pricing available for one model.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Phaseo Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://phaseo.app/docs/v1/api-reference/endpoint/model-endpoints\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://phaseo.app/og/dynamic?title=List%20model%20endpoint%20capabilities\u0026amp;description=Inspect%20the%20provider%20routes%2C%20modalities%2C%20parameters%2C%20availability%2C%20and%20pricing%20available%20for%20one%20model.\u0026amp;pathname=/docs/v1/api-reference/endpoint/model-endpoints\">\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 model endpoint capabilities - Phaseo Docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Inspect the provider routes, modalities, parameters, availability, and pricing available for one model.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://phaseo.app/og/dynamic?title=List%20model%20endpoint%20capabilities\u0026amp;description=Inspect%20the%20provider%20routes%2C%20modalities%2C%20parameters%2C%20availability%2C%20and%20pricing%20available%20for%20one%20model.\u0026amp;pathname=/docs/v1/api-reference/endpoint/model-endpoints\">\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/aistats/e9OKRuK0XVSasMAN/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Phaseo Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#0069a8\">\u003clink data-mint-head rel=\"canonical\" href=\"https://phaseo.app/docs/v1/api-reference/endpoint/model-endpoints\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/docs/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/docs/v1/api-reference/endpoint/model-endpoints.md\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"en\" href=\"https://phaseo.app/docs/v1/api-reference/endpoint/model-endpoints\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"es\" href=\"https://phaseo.app/docs/es/v1/api-reference/endpoint/model-endpoints\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"fr\" href=\"https://phaseo.app/docs/fr/v1/api-reference/endpoint/model-endpoints\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"de\" href=\"https://phaseo.app/docs/de/v1/api-reference/endpoint/model-endpoints\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"pt-BR\" href=\"https://phaseo.app/docs/pt-BR/v1/api-reference/endpoint/model-endpoints\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ja\" href=\"https://phaseo.app/docs/ja/v1/api-reference/endpoint/model-endpoints\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"zh-Hans\" href=\"https://phaseo.app/docs/zh-Hans/v1/api-reference/endpoint/model-endpoints\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"hi\" href=\"https://phaseo.app/docs/hi/v1/api-reference/endpoint/model-endpoints\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ar\" href=\"https://phaseo.app/docs/ar/v1/api-reference/endpoint/model-endpoints\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"x-default\" href=\"https://phaseo.app/docs/v1/api-reference/endpoint/model-endpoints\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://phaseo.app/#organization\",\"name\":\"Phaseo Docs\",\"url\":\"https://phaseo.app\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/aistats/bxzzjromPyjBlHKc/logo/light.svg?fit=max\u0026auto=format\u0026n=bxzzjromPyjBlHKc\u0026q=85\u0026s=f1e10d307a46469852edc2ae198e3c2a\"}},{\"@type\":\"WebSite\",\"@id\":\"https://phaseo.app/docs#website\",\"name\":\"Phaseo Docs\",\"url\":\"https://phaseo.app/docs\",\"publisher\":{\"@id\":\"https://phaseo.app/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://phaseo.app/docs/v1/api-reference/endpoint/model-endpoints#webpage\",\"url\":\"https://phaseo.app/docs/v1/api-reference/endpoint/model-endpoints\",\"name\":\"List model endpoint capabilities\",\"description\":\"Inspect the provider routes, modalities, parameters, availability, and pricing available for one model.\",\"dateModified\":\"2026-11-05T13:38:10.000Z\",\"isPartOf\":{\"@id\":\"https://phaseo.app/docs#website\"},\"breadcrumb\":{\"@id\":\"https://phaseo.app/docs/v1/api-reference/endpoint/model-endpoints#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://phaseo.app/docs/v1/api-reference/endpoint/model-endpoints#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Models \u0026 Pricing\",\"item\":\"https://phaseo.app/docs/v1/api-reference/endpoint/models\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"List model endpoint capabilities\",\"item\":\"https://phaseo.app/docs/v1/api-reference/endpoint/model-endpoints\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://phaseo.app/docs/v1/api-reference/endpoint/model-endpoints#apireference\",\"headline\":\"List model endpoint capabilities\",\"name\":\"List model endpoint capabilities\",\"description\":\"Inspect the provider routes, modalities, parameters, availability, and pricing available for one model.\",\"url\":\"https://phaseo.app/docs/v1/api-reference/endpoint/model-endpoints\",\"mainEntityOfPage\":{\"@id\":\"https://phaseo.app/docs/v1/api-reference/endpoint/model-endpoints#webpage\"},\"image\":\"https://phaseo.app/og/dynamic?title=List%20model%20endpoint%20capabilities\u0026description=Inspect%20the%20provider%20routes%2C%20modalities%2C%20parameters%2C%20availability%2C%20and%20pricing%20available%20for%20one%20model.\u0026pathname=/docs/v1/api-reference/endpoint/model-endpoints\",\"dateModified\":\"2026-11-05T13:38:10.000Z\",\"publisher\":{\"@id\":\"https://phaseo.app/#organization\"},\"isPartOf\":{\"@id\":\"https://phaseo.app/docs#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Phaseo Docs\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"Phaseo Docs\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/docs/v1/api-reference/endpoint/model-endpoints.md","siteName":"Phaseo Docs","nav":{"global":null,"languages":[{"language":"en","tabs":[{"tab":"Docs","icon":"book","pages":[{"title":"Docs","href":"/v1"}]},{"tab":"API Reference","icon":"server","groups":[{"group":"API Guides","icon":"book-open","expanded":true,"pages":[{"title":"Gateway API Overview","sidebarTitle":"Overview","icon":"map","href":"/v1/api-reference/introduction"},{"title":"Authentication","icon":"key-round","href":"/v1/developers/authentication"},{"title":"Parameters","icon":"sliders-horizontal","href":"/v1/api-reference/parameters"},{"title":"Streaming","icon":"radio","href":"/v1/guides/streaming"},{"title":"Rate Limits","icon":"gauge","href":"/v1/api-reference/limits"},{"title":"Errors and Debugging","icon":"bug","href":"/v1/api-reference/errors"}]},{"group":"Text","icon":"message-square-text","pages":[{"title":"Create a response","sidebarTitle":"Create a response","openapi":"openapi/v1/openapi.yaml POST /responses","href":"/v1/api-reference/endpoint/responses"},{"title":"Create a chat completion","sidebarTitle":"Create a chat completion","openapi":"openapi/v1/openapi.yaml POST /chat/completions","href":"/v1/api-reference/endpoint/chat-completions"},{"title":"Create a message","sidebarTitle":"Create a message (Anthropic)","openapi":"openapi/v1/openapi.yaml POST /messages","href":"/v1/api-reference/endpoint/anthropic-messages"}]},{"group":"Image","icon":"image","pages":[{"title":"Generate an image","sidebarTitle":"Generate an image","openapi":"openapi/v1/openapi.yaml POST /images/generations","href":"/v1/api-reference/endpoint/images-generations"},{"title":"Edit an image","sidebarTitle":"Edit an image","openapi":"openapi/v1/openapi.yaml POST /images/edits","href":"/v1/api-reference/endpoint/images-edits"}]},{"group":"Video","icon":"video","tag":"Beta","pages":[{"title":"Create video","openapi":"openapi/v1/openapi.yaml POST /videos","href":"/v1/api-reference/endpoint/video-create"},{"title":"Get video status","openapi":"openapi/v1/openapi.yaml GET /videos/{video_id}","href":"/v1/api-reference/endpoint/video-status"},{"title":"Download video content","openapi":"openapi/v1/openapi.yaml GET /videos/{video_id}/content","href":"/v1/api-reference/endpoint/video-content"},{"title":"Create a signed download URL","openapi":"openapi/v1/openapi.yaml POST /videos/{video_id}/download_url","href":"/v1/api-reference/endpoint/video-download-url"},{"title":"Cancel video","openapi":"openapi/v1/openapi.yaml POST /videos/{video_id}/cancel","href":"/v1/api-reference/endpoint/video-cancel"},{"title":"Delete video","openapi":"openapi/v1/openapi.yaml DELETE /videos/{video_id}","href":"/v1/api-reference/endpoint/video-delete"},{"title":"List videos","openapi":"openapi/v1/openapi.yaml GET /videos","href":"/v1/api-reference/endpoint/video-list"},{"title":"List video models","openapi":"openapi/v1/openapi.yaml GET /videos/models","href":"/v1/api-reference/endpoint/video-models"}]},{"group":"Embeddings","icon":"braces","pages":[{"title":"Create embeddings","sidebarTitle":"Create embeddings","openapi":"openapi/v1/openapi.yaml POST /embeddings","href":"/v1/api-reference/endpoint/embeddings"}]},{"group":"Decisions","icon":"signpost","pages":[{"title":"Make a decision","tag":"Beta","openapi":"openapi/v1/openapi.yaml POST /decisions","href":"/v1/api-reference/endpoint/decisions"},{"title":"Extract values","tag":"Beta","icon":"list-filter","openapi":"openapi/v1/openapi.yaml POST /extractions","href":"/v1/api-reference/endpoint/extractions"}]},{"group":"Moderations","icon":"shield-check","pages":[{"title":"Create a moderation","sidebarTitle":"Create a moderation","openapi":"openapi/v1/openapi.yaml POST /moderations","href":"/v1/api-reference/endpoint/moderations"}]},{"group":"Rerank","icon":"arrow-down-wide-narrow","pages":[{"title":"Rerank documents","sidebarTitle":"Rerank documents","openapi":"openapi/v1/openapi.yaml POST /rerank","href":"/v1/api-reference/endpoint/rerank"}]},{"group":"Documents","icon":"file-text","pages":[{"title":"Extract text with OCR","sidebarTitle":"Extract text","tag":"Beta","openapi":"openapi/v1/openapi.yaml POST /ocr","href":"/v1/api-reference/endpoint/ocr"},{"title":"Parse a document image","sidebarTitle":"Parse a document","tag":"Beta","openapi":"openapi/v1/openapi.yaml POST /parse","href":"/v1/api-reference/endpoint/parse"}]},{"group":"Speech","icon":"audio-lines","pages":[{"title":"Create speech","sidebarTitle":"Create speech","openapi":"openapi/v1/openapi.yaml POST /audio/speech","href":"/v1/api-reference/endpoint/audio-speech"}]},{"group":"Transcription","icon":"captions","pages":[{"title":"Create a transcription","sidebarTitle":"Create a transcription","openapi":"openapi/v1/openapi.yaml POST /audio/transcriptions","href":"/v1/api-reference/endpoint/audio-transcriptions"}]},{"group":"Translation","icon":"languages","pages":[{"title":"Create a translation","sidebarTitle":"Create a translation","openapi":"openapi/v1/openapi.yaml POST /audio/translations","href":"/v1/api-reference/endpoint/audio-translations"}]},{"group":"Music","icon":"music","pages":[{"title":"Generate music","sidebarTitle":"Generate music","openapi":"openapi/v1/openapi.yaml POST /music/generate","href":"/v1/api-reference/endpoint/music-generate"},{"title":"Get music generation","sidebarTitle":"Get music generation","openapi":"openapi/v1/openapi.yaml GET /music/generate/{music_id}","href":"/v1/api-reference/endpoint/music-status"}]},{"group":"Jobs, Files \u0026 Webhooks","icon":"layers","pages":[{"group":"Batch","tag":"Beta","expanded":true,"pages":[{"title":"Create batch","openapi":"openapi/v1/openapi.yaml POST /batches","href":"/v1/api-reference/endpoint/batches-create"},{"title":"Get batch status","openapi":"openapi/v1/openapi.yaml GET /batches/{batch_id}","href":"/v1/api-reference/endpoint/batches-retrieve"},{"title":"Download batch results","openapi":"openapi/v1/openapi.yaml GET /batches/{batch_id}/results","href":"/v1/api-reference/endpoint/batches-results"},{"title":"List batch request rows","openapi":"openapi/v1/openapi.yaml GET /batches/{batch_id}/requests","href":"/v1/api-reference/endpoint/batches-requests"},{"title":"Cancel batch","openapi":"openapi/v1/openapi.yaml POST /batches/{batch_id}/cancel","href":"/v1/api-reference/endpoint/batches-cancel"},{"title":"List batches","openapi":"openapi/v1/openapi.yaml GET /batches","href":"/v1/api-reference/endpoint/batches-list"},{"title":"Upload batch file","openapi":"openapi/v1/openapi.yaml POST /batches/files","href":"/v1/api-reference/endpoint/batches-files-upload"},{"title":"Retrieve batch file","openapi":"openapi/v1/openapi.yaml GET /batches/files/{file_id}","href":"/v1/api-reference/endpoint/batches-files-retrieve"},{"title":"Download batch file content","openapi":"openapi/v1/openapi.yaml GET /batches/files/{file_id}/content","href":"/v1/api-reference/endpoint/batches-files-content"},{"title":"List batch files","openapi":"openapi/v1/openapi.yaml GET /batches/files","href":"/v1/api-reference/endpoint/batches-files-list"},{"title":"List batch models","openapi":"openapi/v1/openapi.yaml GET /batches/models","href":"/v1/api-reference/endpoint/batches-models"},{"title":"List batch provider capabilities","openapi":"openapi/v1/openapi.yaml GET /batches/capabilities","href":"/v1/api-reference/endpoint/batches-capabilities"}]},{"group":"Files","expanded":true,"pages":[{"title":"Upload a file","sidebarTitle":"Upload a file","openapi":"openapi/v1/openapi.yaml POST /files","href":"/v1/api-reference/endpoint/files"},{"title":"Retrieve a file","sidebarTitle":"Retrieve a file","openapi":"openapi/v1/openapi.yaml GET /files/{file_id}","href":"/v1/api-reference/endpoint/files-retrieve"},{"title":"Download file content","sidebarTitle":"Download file content","tag":"Beta","openapi":"openapi/v1/openapi.yaml GET /files/{file_id}/content","href":"/v1/api-reference/endpoint/files-content"},{"title":"List files","sidebarTitle":"List files","openapi":"openapi/v1/openapi.yaml GET /files","href":"/v1/api-reference/endpoint/files-list"}]},{"group":"Webhook Endpoints","tag":"Beta","expanded":true,"pages":[{"title":"Create webhook endpoint","openapi":"openapi/v1/openapi.yaml POST /webhook-endpoints","href":"/v1/api-reference/endpoint/webhook-endpoints-create"},{"title":"Get webhook endpoint","openapi":"openapi/v1/openapi.yaml GET /webhook-endpoints/{id}","href":"/v1/api-reference/endpoint/webhook-endpoints-get"},{"title":"Update webhook endpoint","openapi":"openapi/v1/openapi.yaml PATCH /webhook-endpoints/{id}","href":"/v1/api-reference/endpoint/webhook-endpoints-update"},{"title":"Rotate webhook secret","openapi":"openapi/v1/openapi.yaml POST /webhook-endpoints/{id}/rotate-secret","href":"/v1/api-reference/endpoint/webhook-endpoints-rotate-secret"},{"title":"Delete webhook endpoint","openapi":"openapi/v1/openapi.yaml DELETE /webhook-endpoints/{id}","href":"/v1/api-reference/endpoint/webhook-endpoints-delete"},{"title":"List webhook endpoints","openapi":"openapi/v1/openapi.yaml GET /webhook-endpoints","href":"/v1/api-reference/endpoint/webhook-endpoints-list"}]}]},{"group":"Models \u0026 Pricing","icon":"boxes","pages":[{"title":"List models","sidebarTitle":"List models","openapi":"openapi/v1/openapi.yaml GET /models","description":"Browse gateway-native models through Phaseo Gateway, including optional non-routable availability details.","href":"/v1/api-reference/endpoint/models"},{"title":"List model endpoint capabilities","openapi":"openapi/v1/openapi.yaml GET /models/{author}/{slug}/endpoints","href":"/v1/api-reference/endpoint/model-endpoints"},{"title":"List providers","sidebarTitle":"List providers","openapi":"openapi/v1/openapi.yaml GET /providers","description":"Browse the catalogue of API providers supported by the gateway.","href":"/v1/api-reference/endpoint/providers"},{"title":"List endpoints","sidebarTitle":"List endpoints","openapi":"openapi/v1/openapi.yaml GET /endpoints","href":"/v1/api-reference/endpoint/endpoints"},{"title":"List model pricing","sidebarTitle":"List model pricing","openapi":"openapi/v1/openapi.yaml GET /pricing/models","href":"/v1/api-reference/endpoint/pricing-models"},{"title":"Calculate pricing","sidebarTitle":"Calculate pricing","openapi":"openapi/v1/openapi.yaml POST /pricing/calculate","href":"/v1/api-reference/endpoint/pricing-calculate"},{"title":"List organisations","sidebarTitle":"List organisations","openapi":"openapi/v1/openapi.yaml GET /organisations","href":"/v1/api-reference/endpoint/organisations"}]},{"group":"Routing \u0026 Policies","icon":"route","pages":[{"group":"Routing","expanded":false,"pages":[{"title":"Get workspace settings","sidebarTitle":"Get settings","openapi":"openapi/v1/openapi.yaml GET /settings","href":"/v1/api-reference/endpoint/workspace-settings-get"},{"title":"Update workspace settings","sidebarTitle":"Update settings","openapi":"openapi/v1/openapi.yaml PATCH /settings","href":"/v1/api-reference/endpoint/workspace-settings-update"},{"title":"Create dynamic route","sidebarTitle":"Create route","openapi":"openapi/v1/openapi.yaml POST /routing/dynamic-routes","href":"/v1/api-reference/endpoint/dynamic-routes-create"},{"title":"Get dynamic route","sidebarTitle":"Get route","openapi":"openapi/v1/openapi.yaml GET /routing/dynamic-routes/{id}","href":"/v1/api-reference/endpoint/dynamic-routes-get"},{"title":"Update dynamic route","sidebarTitle":"Update route","openapi":"openapi/v1/openapi.yaml PATCH /routing/dynamic-routes/{id}","href":"/v1/api-reference/endpoint/dynamic-routes-update"},{"title":"Replace dynamic-route keys","sidebarTitle":"Attach keys","openapi":"openapi/v1/openapi.yaml PUT /routing/dynamic-routes/{id}/keys","href":"/v1/api-reference/endpoint/dynamic-routes-keys-update"},{"title":"Deploy dynamic-route version","sidebarTitle":"Deploy version","openapi":"openapi/v1/openapi.yaml POST /routing/dynamic-routes/{id}/versions/{version}/deploy","href":"/v1/api-reference/endpoint/dynamic-routes-deploy"},{"title":"Delete dynamic route","sidebarTitle":"Delete route","openapi":"openapi/v1/openapi.yaml DELETE /routing/dynamic-routes/{id}","href":"/v1/api-reference/endpoint/dynamic-routes-delete"},{"title":"List dynamic routes","sidebarTitle":"List routes","openapi":"openapi/v1/openapi.yaml GET /routing/dynamic-routes","href":"/v1/api-reference/endpoint/dynamic-routes-list"},{"title":"Get auto-routing settings","sidebarTitle":"Get auto-routing","openapi":"openapi/v1/openapi.yaml GET /routing/auto","href":"/v1/api-reference/endpoint/routing-auto-get"},{"title":"Update auto-routing settings","sidebarTitle":"Update auto-routing","openapi":"openapi/v1/openapi.yaml PATCH /routing/auto","href":"/v1/api-reference/endpoint/routing-auto-update"},{"title":"List successor replacements","sidebarTitle":"List successor replacements","openapi":"openapi/v1/openapi.yaml GET /routing/successor/replacements","href":"/v1/api-reference/endpoint/successor-replacements-list"},{"title":"Save a successor replacement","sidebarTitle":"Save successor replacement","openapi":"openapi/v1/openapi.yaml PUT /routing/successor/replacements","href":"/v1/api-reference/endpoint/successor-replacements-save"},{"title":"Remove a successor replacement","sidebarTitle":"Remove successor replacement","openapi":"openapi/v1/openapi.yaml DELETE /routing/successor/replacements","href":"/v1/api-reference/endpoint/successor-replacements-remove"}]},{"group":"Presets","expanded":false,"pages":[{"title":"Create preset","sidebarTitle":"Create preset","openapi":"openapi/v1/openapi.yaml POST /presets","href":"/v1/api-reference/endpoint/presets-create"},{"title":"Get preset","sidebarTitle":"Get preset","openapi":"openapi/v1/openapi.yaml GET /presets/{id}","href":"/v1/api-reference/endpoint/presets-get"},{"title":"Update preset draft","sidebarTitle":"Update preset","openapi":"openapi/v1/openapi.yaml PATCH /presets/{id}","href":"/v1/api-reference/endpoint/presets-update"},{"title":"Publish preset version","sidebarTitle":"Publish version","openapi":"openapi/v1/openapi.yaml POST /presets/{id}/versions","href":"/v1/api-reference/endpoint/presets-version-publish"},{"title":"List preset versions","sidebarTitle":"List versions","openapi":"openapi/v1/openapi.yaml GET /presets/{id}/versions","href":"/v1/api-reference/endpoint/presets-versions-list"},{"title":"List preset labels","sidebarTitle":"List labels","openapi":"openapi/v1/openapi.yaml GET /presets/{id}/labels","href":"/v1/api-reference/endpoint/presets-labels-list"},{"title":"Set preset label","sidebarTitle":"Set label","openapi":"openapi/v1/openapi.yaml PUT /presets/{id}/labels/{label}","href":"/v1/api-reference/endpoint/presets-label-set"},{"title":"Remove preset label","sidebarTitle":"Remove label","openapi":"openapi/v1/openapi.yaml DELETE /presets/{id}/labels/{label}","href":"/v1/api-reference/endpoint/presets-label-delete"},{"title":"Fork public preset","sidebarTitle":"Fork preset","openapi":"openapi/v1/openapi.yaml POST /presets/{id}/fork","href":"/v1/api-reference/endpoint/presets-fork"},{"title":"Apply upstream preset version","sidebarTitle":"Apply upstream","openapi":"openapi/v1/openapi.yaml POST /presets/{id}/upstream","href":"/v1/api-reference/endpoint/presets-upstream-apply"},{"title":"Archive preset","sidebarTitle":"Archive preset","openapi":"openapi/v1/openapi.yaml DELETE /presets/{id}","href":"/v1/api-reference/endpoint/presets-delete"},{"title":"List presets","sidebarTitle":"List presets","openapi":"openapi/v1/openapi.yaml GET /presets","href":"/v1/api-reference/endpoint/presets-list"},{"title":"Get preset publisher","sidebarTitle":"Get publisher","openapi":"openapi/v1/openapi.yaml GET /presets/publisher","href":"/v1/api-reference/endpoint/presets-publisher-get"},{"title":"Update preset publisher","sidebarTitle":"Update publisher","openapi":"openapi/v1/openapi.yaml PUT /presets/publisher","href":"/v1/api-reference/endpoint/presets-publisher-update"}]},{"group":"Private Models","expanded":false,"pages":[{"title":"Create a private model","sidebarTitle":"Create private model","openapi":"openapi/v1/openapi.yaml POST /private-models","href":"/v1/api-reference/endpoint/private-models-create"},{"title":"Get a private model","sidebarTitle":"Get private model","openapi":"openapi/v1/openapi.yaml GET /private-models/{id}","href":"/v1/api-reference/endpoint/private-models-get"},{"title":"Update a private model","sidebarTitle":"Update private model","openapi":"openapi/v1/openapi.yaml PATCH /private-models/{id}","href":"/v1/api-reference/endpoint/private-models-update"},{"title":"Delete a private model","sidebarTitle":"Delete private model","openapi":"openapi/v1/openapi.yaml DELETE /private-models/{id}","href":"/v1/api-reference/endpoint/private-models-delete"},{"title":"List private models","sidebarTitle":"List private models","openapi":"openapi/v1/openapi.yaml GET /private-models","href":"/v1/api-reference/endpoint/private-models-list"}]},{"group":"Provider credentials","expanded":false,"pages":[{"title":"Create provider credential","sidebarTitle":"Create credential","openapi":"openapi/v1/openapi.yaml POST /byok","href":"/v1/api-reference/endpoint/provider-credentials-create"},{"title":"Get provider credential","sidebarTitle":"Get credential","openapi":"openapi/v1/openapi.yaml GET /byok/{id}","href":"/v1/api-reference/endpoint/provider-credentials-get"},{"title":"Update provider credential","sidebarTitle":"Update credential","openapi":"openapi/v1/openapi.yaml PATCH /byok/{id}","href":"/v1/api-reference/endpoint/provider-credentials-update"},{"title":"Reorder provider credentials","sidebarTitle":"Reorder credentials","openapi":"openapi/v1/openapi.yaml POST /byok/reorder","href":"/v1/api-reference/endpoint/provider-credentials-reorder"},{"title":"Delete provider credential","sidebarTitle":"Delete credential","openapi":"openapi/v1/openapi.yaml DELETE /byok/{id}","href":"/v1/api-reference/endpoint/provider-credentials-delete"},{"title":"List provider credentials","sidebarTitle":"List credentials","openapi":"openapi/v1/openapi.yaml GET /byok","href":"/v1/api-reference/endpoint/provider-credentials-list"}]},{"group":"Guardrails","expanded":false,"pages":[{"icon":"shield-check","title":"Guardrails API","sidebarTitle":"Overview","href":"/v1/api-reference/endpoint/guardrails"},{"title":"Create guardrail","sidebarTitle":"Create guardrail","openapi":"openapi/v1/openapi.yaml POST /guardrails","href":"/v1/api-reference/endpoint/guardrails-create"},{"title":"Get guardrail","sidebarTitle":"Get guardrail","openapi":"openapi/v1/openapi.yaml GET /guardrails/{id}","href":"/v1/api-reference/endpoint/guardrails-get"},{"title":"Update guardrail","sidebarTitle":"Update guardrail","openapi":"openapi/v1/openapi.yaml PATCH /guardrails/{id}","href":"/v1/api-reference/endpoint/guardrails-update"},{"title":"Delete guardrail","sidebarTitle":"Delete guardrail","openapi":"openapi/v1/openapi.yaml DELETE /guardrails/{id}","href":"/v1/api-reference/endpoint/guardrails-delete"},{"title":"List guardrails","sidebarTitle":"List guardrails","openapi":"openapi/v1/openapi.yaml GET /guardrails","href":"/v1/api-reference/endpoint/guardrails-list"},{"title":"Add guardrail keys","sidebarTitle":"Add assigned keys","openapi":"openapi/v1/openapi.yaml POST /guardrails/{id}/keys/add","href":"/v1/api-reference/endpoint/guardrail-keys-add"},{"title":"Replace guardrail keys","sidebarTitle":"Replace assigned keys","openapi":"openapi/v1/openapi.yaml PUT /guardrails/{id}/keys","href":"/v1/api-reference/endpoint/guardrail-keys-replace"},{"title":"Remove guardrail keys","sidebarTitle":"Remove assigned keys","openapi":"openapi/v1/openapi.yaml POST /guardrails/{id}/keys/remove","href":"/v1/api-reference/endpoint/guardrail-keys-remove"},{"title":"List guardrail keys","sidebarTitle":"List assigned keys","openapi":"openapi/v1/openapi.yaml GET /guardrails/{id}/keys","href":"/v1/api-reference/endpoint/guardrail-keys-list"},{"title":"Add guardrail members","sidebarTitle":"Add assigned members","openapi":"openapi/v1/openapi.yaml POST /guardrails/{id}/members/add","href":"/v1/api-reference/endpoint/guardrail-members-add"},{"title":"Remove guardrail members","sidebarTitle":"Remove assigned members","openapi":"openapi/v1/openapi.yaml POST /guardrails/{id}/members/remove","href":"/v1/api-reference/endpoint/guardrail-members-remove"},{"title":"List guardrail members","sidebarTitle":"List assigned members","openapi":"openapi/v1/openapi.yaml GET /guardrails/{id}/members","href":"/v1/api-reference/endpoint/guardrail-members-list"}]}]},{"group":"Usage \u0026 Monitoring","icon":"chart-no-axes-combined","pages":[{"group":"Usage \u0026 Analytics","expanded":true,"pages":[{"title":"Get a generation","sidebarTitle":"Get a generation","openapi":"openapi/v1/openapi.yaml GET /generations","href":"/v1/api-reference/endpoint/generation"},{"title":"List activity","sidebarTitle":"List activity","openapi":"openapi/v1/openapi.yaml GET /activity","href":"/v1/api-reference/endpoint/activity"},{"title":"List workspace audit events","sidebarTitle":"Audit events","openapi":"openapi/v1/openapi.yaml GET /audit-events","href":"/v1/api-reference/endpoint/audit-events"},{"title":"Get workspace analytics","sidebarTitle":"Get analytics","openapi":"openapi/v1/openapi.yaml GET /analytics","href":"/v1/api-reference/endpoint/analytics-get"},{"title":"Export workspace analytics","sidebarTitle":"Export analytics","openapi":"openapi/v1/openapi.yaml GET /analytics/export","href":"/v1/api-reference/endpoint/analytics-export"},{"title":"Check Gateway health","sidebarTitle":"Health check","openapi":"openapi/v1/openapi.yaml GET /health","href":"/v1/api-reference/endpoint/health"}]},{"group":"Logs","expanded":true,"pages":[{"title":"List gateway request logs","tag":"Beta","openapi":"openapi/v1/openapi.yaml GET /logs","href":"/v1/api-reference/endpoint/logs-list"},{"title":"Get gateway request log","tag":"Beta","openapi":"openapi/v1/openapi.yaml GET /logs/{requestId}","href":"/v1/api-reference/endpoint/logs-get"}]},{"group":"Observability","expanded":true,"pages":[{"title":"Get observability logging policy","sidebarTitle":"Get logging policy","openapi":"openapi/v1/openapi.yaml GET /observability/logging-policy","href":"/v1/api-reference/endpoint/observability-logging-policy-get"},{"title":"Update observability logging policy","sidebarTitle":"Update logging policy","openapi":"openapi/v1/openapi.yaml PATCH /observability/logging-policy","href":"/v1/api-reference/endpoint/observability-logging-policy-update"},{"title":"Create observability destination","sidebarTitle":"Create destination","openapi":"openapi/v1/openapi.yaml POST /observability/destinations","href":"/v1/api-reference/endpoint/observability-destinations-create"},{"title":"Get observability destination","sidebarTitle":"Get destination","openapi":"openapi/v1/openapi.yaml GET /observability/destinations/{id}","href":"/v1/api-reference/endpoint/observability-destinations-get"},{"title":"Update observability destination","sidebarTitle":"Update destination","openapi":"openapi/v1/openapi.yaml PATCH /observability/destinations/{id}","href":"/v1/api-reference/endpoint/observability-destinations-update"},{"title":"Delete observability destination","sidebarTitle":"Delete destination","openapi":"openapi/v1/openapi.yaml DELETE /observability/destinations/{id}","href":"/v1/api-reference/endpoint/observability-destinations-delete"},{"title":"List observability destinations","sidebarTitle":"List destinations","openapi":"openapi/v1/openapi.yaml GET /observability/destinations","href":"/v1/api-reference/endpoint/observability-destinations-list"},{"title":"Test destination settings","sidebarTitle":"Test destination settings","openapi":"openapi/v1/openapi.yaml POST /observability/destinations/test","href":"/v1/api-reference/endpoint/observability-destinations-test-config"},{"title":"Check a destination's connection","sidebarTitle":"Check destination connection","openapi":"openapi/v1/openapi.yaml POST /observability/destinations/{id}/test","href":"/v1/api-reference/endpoint/observability-destinations-test"},{"title":"Send a sample trace","sidebarTitle":"Send sample trace","openapi":"openapi/v1/openapi.yaml POST /observability/destinations/{id}/sample","href":"/v1/api-reference/endpoint/observability-destinations-sample"},{"title":"Test a request classifier","sidebarTitle":"Test classifier","openapi":"openapi/v1/openapi.yaml POST /classifiers/test","href":"/v1/api-reference/endpoint/classifiers-test"}]},{"group":"Feedback \u0026 Evaluations","tag":"Beta","expanded":false,"pages":[{"title":"Create gateway feedback","openapi":"openapi/v1/openapi.yaml POST /feedback","href":"/v1/api-reference/endpoint/feedback-create"},{"title":"List gateway feedback","openapi":"openapi/v1/openapi.yaml GET /feedback","href":"/v1/api-reference/endpoint/feedback-list"},{"title":"Summarize gateway feedback","openapi":"openapi/v1/openapi.yaml GET /feedback/summary","href":"/v1/api-reference/endpoint/feedback-summary"},{"title":"Create observability event","openapi":"openapi/v1/openapi.yaml POST /events","href":"/v1/api-reference/endpoint/events-create"},{"title":"List observability events","openapi":"openapi/v1/openapi.yaml GET /events","href":"/v1/api-reference/endpoint/events-list"},{"title":"Create preset test run","openapi":"openapi/v1/openapi.yaml POST /preset-test-runs","href":"/v1/api-reference/endpoint/preset-test-run-create"},{"title":"Get preset test run","openapi":"openapi/v1/openapi.yaml GET /preset-test-runs/{id}","href":"/v1/api-reference/endpoint/preset-test-run-get"},{"title":"Update preset test run","openapi":"openapi/v1/openapi.yaml PATCH /preset-test-runs/{id}","href":"/v1/api-reference/endpoint/preset-test-run-update"},{"title":"List preset test runs","openapi":"openapi/v1/openapi.yaml GET /preset-test-runs","href":"/v1/api-reference/endpoint/preset-test-runs-list"}]}]},{"group":"Workspace Management","icon":"users","pages":[{"group":"Workspaces","expanded":false,"pages":[{"title":"Create a workspace","sidebarTitle":"Create a workspace","openapi":"openapi/v1/openapi.yaml POST /workspaces","href":"/v1/api-reference/endpoint/workspaces-create"},{"title":"Get a workspace","sidebarTitle":"Get a workspace","openapi":"openapi/v1/openapi.yaml GET /workspaces/{id}","href":"/v1/api-reference/endpoint/workspaces-get"},{"title":"Update a workspace","sidebarTitle":"Update a workspace","openapi":"openapi/v1/openapi.yaml PATCH /workspaces/{id}","href":"/v1/api-reference/endpoint/workspaces-update"},{"title":"Delete a workspace","sidebarTitle":"Delete a workspace","openapi":"openapi/v1/openapi.yaml DELETE /workspaces/{id}","href":"/v1/api-reference/endpoint/workspaces-delete"},{"title":"List workspaces","sidebarTitle":"List workspaces","openapi":"openapi/v1/openapi.yaml GET /workspaces","href":"/v1/api-reference/endpoint/workspaces-list"},{"title":"Add workspace members","sidebarTitle":"Add members","openapi":"openapi/v1/openapi.yaml POST /workspaces/{id}/members/add","href":"/v1/api-reference/endpoint/workspace-members-add"},{"title":"Update workspace member role","sidebarTitle":"Update member role","openapi":"openapi/v1/openapi.yaml PATCH /workspaces/{id}/members/{user_id}","href":"/v1/api-reference/endpoint/workspace-member-role-update"},{"title":"Remove workspace members","sidebarTitle":"Remove members","openapi":"openapi/v1/openapi.yaml POST /workspaces/{id}/members/remove","href":"/v1/api-reference/endpoint/workspace-members-remove"},{"title":"List workspace members","sidebarTitle":"List members","openapi":"openapi/v1/openapi.yaml GET /workspaces/{id}/members","href":"/v1/api-reference/endpoint/workspace-members-list"},{"title":"Create workspace invite","sidebarTitle":"Create invite","openapi":"openapi/v1/openapi.yaml POST /workspaces/{id}/invites","href":"/v1/api-reference/endpoint/workspace-invites-create"},{"title":"Delete workspace invite","sidebarTitle":"Delete invite","openapi":"openapi/v1/openapi.yaml DELETE /workspaces/{id}/invites/{invite_id}","href":"/v1/api-reference/endpoint/workspace-invites-delete"},{"title":"List workspace invites","sidebarTitle":"List invites","openapi":"openapi/v1/openapi.yaml GET /workspaces/{id}/invites","href":"/v1/api-reference/endpoint/workspace-invites-list"},{"title":"List workspace join requests","sidebarTitle":"List join requests","openapi":"openapi/v1/openapi.yaml GET /workspaces/{id}/join-requests","href":"/v1/api-reference/endpoint/workspace-join-requests-list"},{"title":"Approve workspace join request","sidebarTitle":"Approve join request","openapi":"openapi/v1/openapi.yaml POST /workspaces/{id}/join-requests/{request_id}/approve","href":"/v1/api-reference/endpoint/workspace-join-request-approve"},{"title":"Reject workspace join request","sidebarTitle":"Reject join request","openapi":"openapi/v1/openapi.yaml POST /workspaces/{id}/join-requests/{request_id}/reject","href":"/v1/api-reference/endpoint/workspace-join-request-reject"},{"title":"Accept a workspace invite","sidebarTitle":"Accept invite","openapi":"openapi/v1/openapi.yaml POST /invites/accept","href":"/v1/api-reference/endpoint/invites-accept"},{"title":"List your join requests","sidebarTitle":"List your join requests","openapi":"openapi/v1/openapi.yaml GET /invites/requests","href":"/v1/api-reference/endpoint/invites-requests-list"},{"title":"Get the rate limit tier","sidebarTitle":"Get rate limit tier","openapi":"openapi/v1/openapi.yaml GET /rate-limits/tier","href":"/v1/api-reference/endpoint/rate-limits-tier-get"},{"title":"Raise the rate limit tier","sidebarTitle":"Raise rate limit tier","openapi":"openapi/v1/openapi.yaml POST /rate-limits/tier/raise","href":"/v1/api-reference/endpoint/rate-limits-tier-raise"}]},{"group":"API Keys","expanded":false,"pages":[{"title":"Get current API key","sidebarTitle":"Get current API key","openapi":"openapi/v1/openapi.yaml GET /key","href":"/v1/api-reference/endpoint/key-current"},{"title":"Create API key","sidebarTitle":"Create API key","openapi":"openapi/v1/openapi.yaml POST /keys","href":"/v1/api-reference/endpoint/keys-create"},{"title":"Get API key","sidebarTitle":"Get API key","openapi":"openapi/v1/openapi.yaml GET /keys/{id}","href":"/v1/api-reference/endpoint/keys-get"},{"title":"Update API key","sidebarTitle":"Update API key","openapi":"openapi/v1/openapi.yaml PATCH /keys/{id}","href":"/v1/api-reference/endpoint/keys-update"},{"title":"Rotate API key","openapi":"openapi/v1/openapi.yaml POST /keys/{id}/rotate","href":"/v1/api-reference/endpoint/keys-rotate"},{"title":"Invalidate API key cache","openapi":"openapi/v1/openapi.yaml POST /keys/{id}/invalidate","href":"/v1/api-reference/endpoint/keys-invalidate"},{"title":"Delete API key","sidebarTitle":"Delete API key","openapi":"openapi/v1/openapi.yaml DELETE /keys/{id}","href":"/v1/api-reference/endpoint/keys-delete"},{"title":"List API keys","sidebarTitle":"List API keys","openapi":"openapi/v1/openapi.yaml GET /keys","href":"/v1/api-reference/endpoint/keys-list"},{"title":"Report a leaked API key","sidebarTitle":"Report leaked key","openapi":"openapi/v1/openapi.yaml POST /security/report-leaked-key","href":"/v1/api-reference/endpoint/security-report-leaked-key"},{"title":"List trusted workload policies","sidebarTitle":"List trusted workload policies","openapi":"openapi/v1/openapi.yaml GET /workload-identity/policies","href":"/v1/api-reference/endpoint/trusted-workloads-list"},{"title":"Create trusted workload policy","sidebarTitle":"Create trusted workload policy","openapi":"openapi/v1/openapi.yaml POST /workload-identity/policies","href":"/v1/api-reference/endpoint/trusted-workloads-create"},{"title":"Get trusted workload policy","sidebarTitle":"Get trusted workload policy","openapi":"openapi/v1/openapi.yaml GET /workload-identity/policies/{id}","href":"/v1/api-reference/endpoint/trusted-workloads-get"},{"title":"Update trusted workload policy","sidebarTitle":"Update trusted workload policy","openapi":"openapi/v1/openapi.yaml PATCH /workload-identity/policies/{id}","href":"/v1/api-reference/endpoint/trusted-workloads-update"},{"title":"Delete trusted workload policy","sidebarTitle":"Delete trusted workload policy","openapi":"openapi/v1/openapi.yaml DELETE /workload-identity/policies/{id}","href":"/v1/api-reference/endpoint/trusted-workloads-delete"}]},{"group":"Management Keys","expanded":false,"pages":[{"title":"Create management key","sidebarTitle":"Create management key","openapi":"openapi/v1/openapi.yaml POST /management-keys","href":"/v1/api-reference/endpoint/management-keys-create"},{"title":"Get management key","sidebarTitle":"Get management key","openapi":"openapi/v1/openapi.yaml GET /management-keys/{id}","href":"/v1/api-reference/endpoint/management-keys-get"},{"title":"Update management key","sidebarTitle":"Update management key","openapi":"openapi/v1/openapi.yaml PATCH /management-keys/{id}","href":"/v1/api-reference/endpoint/management-keys-update"},{"title":"Delete management key","sidebarTitle":"Delete management key","openapi":"openapi/v1/openapi.yaml DELETE /management-keys/{id}","href":"/v1/api-reference/endpoint/management-keys-delete"},{"title":"List management keys","sidebarTitle":"List management keys","openapi":"openapi/v1/openapi.yaml GET /management-keys","href":"/v1/api-reference/endpoint/management-keys-list"}]},{"group":"Credits \u0026 Budgets","expanded":false,"pages":[{"title":"Get credits","sidebarTitle":"Get credits","openapi":"openapi/v1/openapi.yaml GET /credits","href":"/v1/api-reference/endpoint/credits"},{"title":"Create a workspace budget","sidebarTitle":"Create budget","openapi":"openapi/v1/openapi.yaml POST /budgets","href":"/v1/api-reference/endpoint/budgets-create"},{"title":"Get a workspace budget","sidebarTitle":"Get budget","openapi":"openapi/v1/openapi.yaml GET /budgets/{id}","href":"/v1/api-reference/endpoint/budgets-get"},{"title":"Update a workspace budget","sidebarTitle":"Update budget","openapi":"openapi/v1/openapi.yaml PATCH /budgets/{id}","href":"/v1/api-reference/endpoint/budgets-update"},{"title":"Delete a workspace budget","sidebarTitle":"Delete budget","openapi":"openapi/v1/openapi.yaml DELETE /budgets/{id}","href":"/v1/api-reference/endpoint/budgets-delete"},{"title":"List workspace budgets","sidebarTitle":"List budgets","openapi":"openapi/v1/openapi.yaml GET /budgets","href":"/v1/api-reference/endpoint/budgets-list"}]},{"group":"Spend Rules","tag":"Beta","expanded":false,"pages":[{"title":"Create a spend rule","sidebarTitle":"Create rule","openapi":"openapi/v1/openapi.yaml POST /spend-rules","href":"/v1/api-reference/endpoint/spend-rules-create"},{"title":"Get a spend rule","sidebarTitle":"Get rule","openapi":"openapi/v1/openapi.yaml GET /spend-rules/{id}","href":"/v1/api-reference/endpoint/spend-rules-get"},{"title":"Update a spend rule","sidebarTitle":"Update rule","openapi":"openapi/v1/openapi.yaml PATCH /spend-rules/{id}","href":"/v1/api-reference/endpoint/spend-rules-update"},{"title":"Delete a spend rule","sidebarTitle":"Delete rule","openapi":"openapi/v1/openapi.yaml DELETE /spend-rules/{id}","href":"/v1/api-reference/endpoint/spend-rules-delete"},{"title":"List spend rules","sidebarTitle":"List rules","openapi":"openapi/v1/openapi.yaml GET /spend-rules","href":"/v1/api-reference/endpoint/spend-rules-list"},{"title":"Preview a spend rule","sidebarTitle":"Preview rule","openapi":"openapi/v1/openapi.yaml GET /spend-rules/{id}/preview","href":"/v1/api-reference/endpoint/spend-rules-preview"},{"title":"Send a test spend alert","sidebarTitle":"Send test","openapi":"openapi/v1/openapi.yaml POST /spend-rules/{id}/test","href":"/v1/api-reference/endpoint/spend-rules-test"},{"title":"List spend rule history","sidebarTitle":"Rule history","openapi":"openapi/v1/openapi.yaml GET /spend-rules/{id}/history","href":"/v1/api-reference/endpoint/spend-rules-history"},{"title":"List spend blocks","sidebarTitle":"List blocks","openapi":"openapi/v1/openapi.yaml GET /spend-blocks","href":"/v1/api-reference/endpoint/spend-blocks-list"},{"title":"Lift a spend block","sidebarTitle":"Lift block","openapi":"openapi/v1/openapi.yaml POST /spend-blocks/{id}/lift","href":"/v1/api-reference/endpoint/spend-blocks-lift"}]},{"group":"OAuth Applications","tag":"Beta","expanded":false,"pages":[{"title":"Create OAuth client","openapi":"openapi/v1/openapi.yaml POST /oauth-clients","href":"/v1/api-reference/endpoint/oauth-clients-create"},{"title":"Get OAuth client","openapi":"openapi/v1/openapi.yaml GET /oauth-clients/{client_id}","href":"/v1/api-reference/endpoint/oauth-clients-get"},{"title":"Update OAuth client","openapi":"openapi/v1/openapi.yaml PATCH /oauth-clients/{client_id}","href":"/v1/api-reference/endpoint/oauth-clients-update"},{"title":"Regenerate OAuth secret","openapi":"openapi/v1/openapi.yaml POST /oauth-clients/{client_id}/regenerate-secret","href":"/v1/api-reference/endpoint/oauth-clients-regenerate-secret"},{"title":"Delete OAuth client","openapi":"openapi/v1/openapi.yaml DELETE /oauth-clients/{client_id}","href":"/v1/api-reference/endpoint/oauth-clients-delete"},{"title":"List OAuth clients","openapi":"openapi/v1/openapi.yaml GET /oauth-clients","href":"/v1/api-reference/endpoint/oauth-clients-list"},{"title":"Get the signed-in user","sidebarTitle":"Get signed-in user","openapi":"openapi/v1/openapi.yaml GET /me","href":"/v1/api-reference/endpoint/me-get"},{"title":"Get your profile","sidebarTitle":"Get profile","openapi":"openapi/v1/openapi.yaml GET /me/profile","href":"/v1/api-reference/endpoint/profile-get"},{"title":"Update your profile","sidebarTitle":"Update profile","openapi":"openapi/v1/openapi.yaml PATCH /me/profile","href":"/v1/api-reference/endpoint/profile-update"},{"title":"List authorized apps","sidebarTitle":"List authorized apps","openapi":"openapi/v1/openapi.yaml GET /me/authorized-apps","href":"/v1/api-reference/endpoint/authorized-apps-list"},{"title":"Remove scopes from an authorized app","sidebarTitle":"Reduce app scopes","openapi":"openapi/v1/openapi.yaml PATCH /me/authorized-apps/{id}","href":"/v1/api-reference/endpoint/authorized-apps-update-scopes"},{"title":"Revoke an authorized app","sidebarTitle":"Revoke authorized app","openapi":"openapi/v1/openapi.yaml DELETE /me/authorized-apps/{id}","href":"/v1/api-reference/endpoint/authorized-apps-revoke"}]},{"group":"SSO \u0026 SCIM","tag":"Beta","expanded":false,"pages":[{"title":"Get workspace SSO","openapi":"openapi/v1/openapi.yaml GET /identity/sso","href":"/v1/api-reference/endpoint/identity-sso-get"},{"title":"Update workspace SSO","openapi":"openapi/v1/openapi.yaml PUT /identity/sso","href":"/v1/api-reference/endpoint/identity-sso-update"},{"title":"Get workspace SCIM","openapi":"openapi/v1/openapi.yaml GET /identity/scim","href":"/v1/api-reference/endpoint/identity-scim-get"},{"title":"Update workspace SCIM","openapi":"openapi/v1/openapi.yaml PUT /identity/scim","href":"/v1/api-reference/endpoint/identity-scim-update"},{"title":"Create SCIM token","openapi":"openapi/v1/openapi.yaml POST /identity/scim/tokens","href":"/v1/api-reference/endpoint/identity-scim-token-create"},{"title":"Revoke SCIM token","openapi":"openapi/v1/openapi.yaml DELETE /identity/scim/tokens/{id}","href":"/v1/api-reference/endpoint/identity-scim-token-revoke"},{"title":"List SCIM audit events","openapi":"openapi/v1/openapi.yaml GET /identity/scim/audit","href":"/v1/api-reference/endpoint/identity-scim-audit-list"}]},{"group":"Directory \u0026 Departments","tag":"Beta","expanded":false,"pages":[{"title":"Get workspace directory","openapi":"openapi/v1/openapi.yaml GET /identity/directory","href":"/v1/api-reference/endpoint/identity-directory-get"},{"title":"Update directory member","openapi":"openapi/v1/openapi.yaml PUT /identity/directory/members/{id}","href":"/v1/api-reference/endpoint/identity-directory-member-update"},{"title":"Create workspace department","openapi":"openapi/v1/openapi.yaml POST /identity/departments","href":"/v1/api-reference/endpoint/identity-department-create"},{"title":"Update workspace department","openapi":"openapi/v1/openapi.yaml PATCH /identity/departments/{id}","href":"/v1/api-reference/endpoint/identity-department-update"},{"title":"Delete workspace department","openapi":"openapi/v1/openapi.yaml DELETE /identity/departments/{id}","href":"/v1/api-reference/endpoint/identity-department-delete"},{"title":"List workspace departments","openapi":"openapi/v1/openapi.yaml GET /identity/departments","href":"/v1/api-reference/endpoint/identity-departments-list"},{"title":"Set department membership","openapi":"openapi/v1/openapi.yaml PUT /identity/departments/{departmentId}/members/{userId}","href":"/v1/api-reference/endpoint/identity-department-member-set"},{"title":"Delete department membership","openapi":"openapi/v1/openapi.yaml DELETE /identity/departments/{departmentId}/members/{userId}","href":"/v1/api-reference/endpoint/identity-department-member-delete"},{"title":"Create directory group mapping","openapi":"openapi/v1/openapi.yaml POST /identity/group-mappings","href":"/v1/api-reference/endpoint/identity-group-mapping-create"},{"title":"Update directory group mapping","openapi":"openapi/v1/openapi.yaml PATCH /identity/group-mappings/{id}","href":"/v1/api-reference/endpoint/identity-group-mapping-update"},{"title":"Delete directory group mapping","openapi":"openapi/v1/openapi.yaml DELETE /identity/group-mappings/{id}","href":"/v1/api-reference/endpoint/identity-group-mapping-delete"},{"title":"List directory group mappings","openapi":"openapi/v1/openapi.yaml GET /identity/group-mappings","href":"/v1/api-reference/endpoint/identity-group-mappings-list"}]},{"group":"Notifications","tag":"Beta","expanded":false,"pages":[{"title":"Get notification settings","openapi":"openapi/v1/openapi.yaml GET /notifications/settings","href":"/v1/api-reference/endpoint/notifications-settings-get"},{"title":"Update notification settings","openapi":"openapi/v1/openapi.yaml PATCH /notifications/settings","href":"/v1/api-reference/endpoint/notifications-settings-update"},{"title":"Create notification destination","openapi":"openapi/v1/openapi.yaml POST /notifications/destinations","href":"/v1/api-reference/endpoint/notifications-destination-create"},{"title":"Test destination configuration","openapi":"openapi/v1/openapi.yaml POST /notifications/destinations/test","href":"/v1/api-reference/endpoint/notifications-destination-config-test"},{"title":"Test notification destination","openapi":"openapi/v1/openapi.yaml POST /notifications/destinations/{id}/test","href":"/v1/api-reference/endpoint/notifications-destination-test"},{"title":"Rotate notification webhook secret","openapi":"openapi/v1/openapi.yaml POST /notifications/destinations/{id}/rotate-secret","href":"/v1/api-reference/endpoint/notifications-destination-rotate-secret"},{"title":"Delete notification destination","openapi":"openapi/v1/openapi.yaml DELETE /notifications/destinations/{id}","href":"/v1/api-reference/endpoint/notifications-destination-delete"},{"title":"List notification destinations","openapi":"openapi/v1/openapi.yaml GET /notifications/destinations","href":"/v1/api-reference/endpoint/notifications-destinations-list"},{"title":"List notification routes","openapi":"openapi/v1/openapi.yaml GET /notifications/routes","href":"/v1/api-reference/endpoint/notifications-routes-list"},{"title":"Update notification route","openapi":"openapi/v1/openapi.yaml PUT /notifications/routes/{eventKind}","href":"/v1/api-reference/endpoint/notifications-route-update"}]},{"group":"Applications","tag":"Beta","expanded":false,"pages":[{"title":"List workspace applications","openapi":"openapi/v1/openapi.yaml GET /apps","href":"/v1/api-reference/endpoint/apps-list"},{"title":"Update workspace application","openapi":"openapi/v1/openapi.yaml PATCH /apps/{id}","href":"/v1/api-reference/endpoint/app-update"},{"title":"Merge workspace applications","openapi":"openapi/v1/openapi.yaml POST /apps/{id}/merge","href":"/v1/api-reference/endpoint/app-merge"}]},{"group":"Data Contribution","tag":"Beta","expanded":false,"pages":[{"title":"Get data contribution settings","openapi":"openapi/v1/openapi.yaml GET /data-contribution","href":"/v1/api-reference/endpoint/data-contribution-get"},{"title":"Update data contribution consent","openapi":"openapi/v1/openapi.yaml PATCH /data-contribution/consent","href":"/v1/api-reference/endpoint/data-contribution-consent-update"},{"title":"Create data contribution classifier","openapi":"openapi/v1/openapi.yaml POST /data-contribution/classifiers","href":"/v1/api-reference/endpoint/data-contribution-classifier-create"},{"title":"Update data contribution classifier","openapi":"openapi/v1/openapi.yaml PATCH /data-contribution/classifiers/{id}","href":"/v1/api-reference/endpoint/data-contribution-classifier-update"},{"title":"Delete data contribution classifier","openapi":"openapi/v1/openapi.yaml DELETE /data-contribution/classifiers/{id}","href":"/v1/api-reference/endpoint/data-contribution-classifier-delete"}]}]}]},{"tab":"Client SDKs","icon":"package","menu":[{"item":"AI SDK (Vercel)","icon":"https://mintlify.s3.us-west-1.amazonaws.com/aistats/icons/brands/vercel.svg","pages":[{"title":"AI SDK (Vercel)","href":"/v1/sdk-reference/sdk/ai-sdk"}]},{"item":"Phaseo SDKs","icon":"code","pages":[{"title":"Phaseo SDKs","href":"/v1/sdk-reference/client/overview"}]}],"pages":[{"title":"Client SDKs","href":"/v1/sdk-reference/sdk/ai-sdk"}]},{"tab":"Agent SDK","icon":"bot","pages":[{"title":"Agent SDK","href":"/v1/sdk-reference/agent/overview"}]},{"tab":"Cookbook","icon":"chef-hat","pages":[{"title":"Cookbook","href":"/v1/cookbook"}]},{"tab":"Changelog","icon":"history","pages":[{"title":"Changelog","href":"/v1/changelog"}]}]},{"language":"es","footer":{"socials":{"x":"https://x.com/phaseoteam","github":"https://github.com/phaseoteam/Phaseo","discord":"https://discord.gg/aQyywCvgZ5","linkedin":"https://www.linkedin.com/company/phaseoapp","reddit":"https://www.reddit.com/r/Phaseo"},"links":[{"items":[{"label":"Modelos","href":"https://phaseo.app/es-ES/models"},{"label":"Estado","href":"https://status.phaseo.app"},{"label":"Soporte","href":"https://phaseo.app/es-ES/help"}]}]},"navbar":{"primary":{"type":"button","label":"Obtener clave de API","href":"https://phaseo.app/es-ES/settings/keys"}},"pages":[{"title":"es","href":"/es/v1/api-reference/endpoint/model-endpoints"}]},{"language":"fr","footer":{"socials":{"x":"https://x.com/phaseoteam","github":"https://github.com/phaseoteam/Phaseo","discord":"https://discord.gg/aQyywCvgZ5","linkedin":"https://www.linkedin.com/company/phaseoapp","reddit":"https://www.reddit.com/r/Phaseo"},"links":[{"items":[{"label":"Modèles","href":"https://phaseo.app/fr-FR/models"},{"label":"État","href":"https://status.phaseo.app"},{"label":"Assistance","href":"https://phaseo.app/fr-FR/help"}]}]},"navbar":{"primary":{"type":"button","label":"Obtenir une clé API","href":"https://phaseo.app/fr-FR/settings/keys"}},"pages":[{"title":"fr","href":"/fr/v1/api-reference/endpoint/model-endpoints"}]},{"language":"de","footer":{"socials":{"x":"https://x.com/phaseoteam","github":"https://github.com/phaseoteam/Phaseo","discord":"https://discord.gg/aQyywCvgZ5","linkedin":"https://www.linkedin.com/company/phaseoapp","reddit":"https://www.reddit.com/r/Phaseo"},"links":[{"items":[{"label":"Modelle","href":"https://phaseo.app/de-DE/models"},{"label":"Status","href":"https://status.phaseo.app"},{"label":"Support","href":"https://phaseo.app/de-DE/help"}]}]},"navbar":{"primary":{"type":"button","label":"API-Schlüssel erstellen","href":"https://phaseo.app/de-DE/settings/keys"}},"pages":[{"title":"de","href":"/de/v1/api-reference/endpoint/model-endpoints"}]},{"language":"pt-BR","footer":{"socials":{"x":"https://x.com/phaseoteam","github":"https://github.com/phaseoteam/Phaseo","discord":"https://discord.gg/aQyywCvgZ5","linkedin":"https://www.linkedin.com/company/phaseoapp","reddit":"https://www.reddit.com/r/Phaseo"},"links":[{"items":[{"label":"Modelos","href":"https://phaseo.app/pt-BR/models"},{"label":"Status","href":"https://status.phaseo.app"},{"label":"Suporte","href":"https://phaseo.app/pt-BR/help"}]}]},"navbar":{"primary":{"type":"button","label":"Obter chave de API","href":"https://phaseo.app/pt-BR/settings/keys"}},"pages":[{"title":"pt-BR","href":"/pt-BR/v1/api-reference/endpoint/model-endpoints"}]},{"language":"ja","footer":{"socials":{"x":"https://x.com/phaseoteam","github":"https://github.com/phaseoteam/Phaseo","discord":"https://discord.gg/aQyywCvgZ5","linkedin":"https://www.linkedin.com/company/phaseoapp","reddit":"https://www.reddit.com/r/Phaseo"},"links":[{"items":[{"label":"モデル","href":"https://phaseo.app/ja/models"},{"label":"ステータス","href":"https://status.phaseo.app"},{"label":"サポート","href":"https://phaseo.app/ja/help"}]}]},"navbar":{"primary":{"type":"button","label":"API キーを取得","href":"https://phaseo.app/ja/settings/keys"}},"pages":[{"title":"ja","href":"/ja/v1/api-reference/endpoint/model-endpoints"}]},{"language":"zh-Hans","footer":{"socials":{"x":"https://x.com/phaseoteam","github":"https://github.com/phaseoteam/Phaseo","discord":"https://discord.gg/aQyywCvgZ5","linkedin":"https://www.linkedin.com/company/phaseoapp","reddit":"https://www.reddit.com/r/Phaseo"},"links":[{"items":[{"label":"模型","href":"https://phaseo.app/zh-Hans/models"},{"label":"状态","href":"https://status.phaseo.app"},{"label":"支持","href":"https://phaseo.app/zh-Hans/help"}]}]},"navbar":{"primary":{"type":"button","label":"获取 API 密钥","href":"https://phaseo.app/zh-Hans/settings/keys"}},"pages":[{"title":"zh-Hans","href":"/zh-Hans/v1/api-reference/endpoint/model-endpoints"}]},{"language":"hi","footer":{"socials":{"x":"https://x.com/phaseoteam","github":"https://github.com/phaseoteam/Phaseo","discord":"https://discord.gg/aQyywCvgZ5","linkedin":"https://www.linkedin.com/company/phaseoapp","reddit":"https://www.reddit.com/r/Phaseo"},"links":[{"items":[{"label":"मॉडल","href":"https://phaseo.app/hi/models"},{"label":"स्थिति","href":"https://status.phaseo.app"},{"label":"सहायता","href":"https://phaseo.app/hi/help"}]}]},"navbar":{"primary":{"type":"button","label":"API कुंजी प्राप्त करें","href":"https://phaseo.app/hi/settings/keys"}},"pages":[{"title":"hi","href":"/hi/v1/api-reference/endpoint/model-endpoints"}]},{"language":"ar","footer":{"socials":{"x":"https://x.com/phaseoteam","github":"https://github.com/phaseoteam/Phaseo","discord":"https://discord.gg/aQyywCvgZ5","linkedin":"https://www.linkedin.com/company/phaseoapp","reddit":"https://www.reddit.com/r/Phaseo"},"links":[{"items":[{"label":"النماذج","href":"https://phaseo.app/ar-SA/models"},{"label":"الحالة","href":"https://status.phaseo.app"},{"label":"الدعم","href":"https://phaseo.app/ar-SA/help"}]}]},"navbar":{"primary":{"type":"button","label":"احصل على مفتاح API","href":"https://phaseo.app/ar-SA/settings/keys"}},"pages":[{"title":"ar","href":"/ar/v1/api-reference/endpoint/model-endpoints"}]}]},"basePath":"","title":"List model endpoint capabilities - Phaseo Docs","buildId":"dpl_2AK98Hxhwu4fUXpx9atbv41cC328","deploymentId":"dpl_2AK98Hxhwu4fUXpx9atbv41cC328","dynamics":["c2aa737661","b0f84f53ff","a9bb46feb3","2b790eda92"],"chunks":["OpenApiReferenceProvider-EBSrFTg1.js","utils-Y_7TcRh4.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-D1wvvkPH.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-aT0ty6oN.js","snippetPresets-DoNRuyJc.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","conditional-requirements-CFM0id0Q.js","Page-DCFaZE46.js","ApiExamples-CXRajFpn.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-BAyOsINj.js","shallow-CIcHqV1v.js","getApiPlaygroundDisplay-C5igZwEf.js","CodeSnippet-BFWnQLNh.js","CodeSnippets-Cx2mFgZW.js","getPastedJson-BOy09PZp.js","icon-BwmYtB6R.js","MethodPill-DAIhq-iu.js","DuplicateIcon-DFM8Q3ph.js","createIcon-0UdvzB4Z.js","DynamicMarkdown-DYYZTGpa.js","SectionHeading-BFCDRUuH.js","axios-vUo_bRtp.js","Markdown-C6TcKjiR.js","clsx-Y_UC780V.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-PCbBHBTv.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-D4q_oRML.js"]}