Let’s take an example where we want to introduce llama2 in our systems (through Anyscale) but we’re not sure of the impact. We can create a config specifically for this use case to test llama2 in production.The config object would look like this
Here we are telling the gateway to send 5% of the traffic to anyscale’s hosted llama2-70b model. Portkey handles all the request transforms to make sure you don’t have to change your code.You can now use this config like this in your requests.Once data starts flowing in, we can use Portkey’s analytics dashboards to see the impact of the new model on cost, latency, errors and feedback.
Portkey is now PRISMA AIRS AI Gateway. See it in action.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Portkey (Prisma AIRS AI Gateway) Docs","description":"Comprehensive documentation for AI Gateway, Guardrails, Observability, and Governance features.","colors":{"primary":"#0891B2","light":"#0891B2","dark":"#0891B2"},"logo":{"light":"https://mintcdn.com/portkey-docs/tHk-hgNjLbEj4dhh/images/portkey-PANW-company-logo-positive.png?fit=max\u0026auto=format\u0026n=tHk-hgNjLbEj4dhh\u0026q=85\u0026s=c5fb09014ff79616583b1d3bffe27450","dark":"https://mintcdn.com/portkey-docs/tHk-hgNjLbEj4dhh/images/portkey-PANW-company-logo-negative.png?fit=max\u0026auto=format\u0026n=tHk-hgNjLbEj4dhh\u0026q=85\u0026s=6025ca49ef544522f58ff471b7f75f8f"},"favicon":"https://mintcdn.com/portkey-docs/Hf1XgyjG_b79ym4Q/favicon.png?fit=max\u0026auto=format\u0026n=Hf1XgyjG_b79ym4Q\u0026q=85\u0026s=cbaa1bfc49bb6e3fd6cf499a5da313a3","api":{"openapi":"https://raw.githubusercontent.com/Portkey-AI/openapi/refs/heads/master/openapi.yaml","examples":{"prefill":true},"url":"full"},"navbar":{"links":[{"href":"https://portkey.ai/models","label":"Models"},{"href":"https://support.portkey.ai/forms/customer-portal-ticket-form","label":"Support"},{"href":"https://www.paloaltonetworks.in/ai-security/ai-gateway?utm_source=portkey\u0026utm_medium=referral\u0026utm_campaign=prisma_airs\u0026utm_content=docs_nav#contact","label":"Contact Us"}],"primary":{"type":"button","label":"Sign in","href":"https://stratacloudmanager.paloaltonetworks.com/"}},"footer":{"socials":{"x":"https://twitter.com/PortkeyAI","linkedin":"https://www.linkedin.com/company/portkey-ai","github":"https://git.new/portkey"},"links":[{"header":"For LLMs","items":[{"label":"llms.txt","href":"https://portkey.ai/docs/llms.txt"},{"label":"llms-full.txt","href":"https://portkey.ai/docs/llms-full.txt"}]},{"header":"Products","items":[{"label":"Observability","href":"https://portkey.ai/features/observability"},{"label":"AI Gateway","href":"https://portkey.ai/features/ai-gateway"},{"label":"Guardrails","href":"https://portkey.ai/features/guardrails"},{"label":"Prompt Management","href":"https://portkey.ai/features/prompt-management"},{"label":"Agents","href":"https://portkey.ai/features/agents"},{"label":"MCP Gateway","href":"https://portkey.ai/docs/product/mcp-gateway"},{"label":"Security","href":"https://portkey.ai/features/security-and-compliance"},{"label":"Auto-Instrumentation","href":"https://portkey.ai/features/auto-instrumentation"}]},{"header":"Resources","items":[{"label":"API Status","href":"https://status.portkey.ai/"},{"label":"Helm Charts","href":"https://github.com/portkey-ai/helm"},{"label":"AI Grants Finder","href":"https://grantsfinder.portkey.ai/"},{"label":"Events Calendar","href":"https://lu.ma/portkey"},{"label":"Blog","href":"https://portkey.ai/blog"},{"label":"Error Library","href":"https://portkey.ai/error-library"},{"label":"Models \u0026 Pricing","href":"https://portkey.ai/models"}]},{"header":"Company","items":[{"label":"Pricing","href":"https://portkey.ai/pricing"},{"label":"Compliances","href":"https://trust.portkey.ai/"},{"label":"Privacy Policy","href":"https://portkey.ai/privacy-policy"},{"label":"Terms of Service","href":"https://portkey.ai/terms"},{"label":"DPA","href":"https://portkey.ai/dpa"},{"label":"Cookie Policy","href":"https://portkey.ai/cookie-policy"}]}]},"seo":{"metatags":{"og:type":"website","og:site_name":"Portkey AI Gateway Docs"},"indexing":"navigable"},"styling":{"eyebrows":"breadcrumbs","codeblocks":"system","latex":true},"integrations":{"ga4":{"measurementId":"G-JJMXYE4DRL"}},"contextual":{"options":["copy","view","chatgpt","claude"],"display":"toc"},"interaction":{"drilldown":true},"metadata":{"timestamp":true},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"portkey-docs","hasAudioNarration":false,"actualSubdomain":"portkey-docs","customDomains":["docs.portkey.ai","portkey.ai"],"gitSource":{"type":"github","owner":"portkey-ai","repo":"docs-core","deployBranch":"main","contentDirectory":"","isPrivate":false,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ada570f8a2555e6c46fb38b","collectionId":"da62057f-6bc1-4bcc-8cdf-81cc023c9f30","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ada570f8a2555e6c46fb38b"},"feedback":{"thumbs":true,"edits":true,"issues":true,"agentFeedback":true},"entitlements":{"AI_CHAT":{"status":"DISABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"DISABLED"}},"buildId":"6ada570f8a2555e6c46fb38b","clientVersion":"0.0.3939","searchFilterCounts":[{"language":"default","tag":"Integrations","count":697},{"language":"default","tag":"Product","count":381},{"language":"default","tag":"Docs","count":318},{"language":"default","tag":"LLM Integrations","count":307},{"language":"default","tag":"More","count":176},{"language":"default","tag":"Admin APIs","count":172},{"language":"default","tag":"Guardrails","count":101},{"language":"default","tag":"AI Gateway","count":99},{"language":"default","tag":"Admin API","count":95},{"language":"default","tag":"Documentation","count":91}],"searchSettings":{"isFiltersEnabled":true,"showContentSnippets":true}},"assistantConfig":{"enableAskAiButton":true,"enableStarterQuestions":true,"enableContextualStarterQuestions":true,"enableAskAiSearchBar":true,"deflection":{"enabled":true,"email":"support@portkey.ai","showHelpButton":true}},"hasChatPermissions":false,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-v7-file-tree","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":"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":"pause-universal-search-reconcile","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":"per-site-search-delta","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":"editor-private-page-search","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":"editor-nav-generations","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":"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":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-agent-model-picker","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","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}],"isAtlas":false,"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":"#banner{background:linear-gradient(90deg,#0d1b2e 0,#1a1040 40%,#2d0f22 100%);border-bottom:1px solid rgba(255,255,255,.08)}#banner a{color:#f0f0f0;text-decoration:none;font-weight:600;border-bottom:1px solid rgba(240,240,240,.5);padding-bottom:1px;transition:border-color .2s ease}#banner a:hover{border-bottom-color:#fff}"}],"page":{"pagePath":"product/ai-gateway/canary-testing","slug":"/product/ai-gateway/canary-testing","pageMetadata":{"title":"Canary Testing","description":"You can use Portkey's AI gateway to also canary test new models or prompts in different environments. ","href":"/product/ai-gateway/canary-testing"},"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: \"You can use Portkey’s AI gateway to also canary test new models or prompts in different environments.\"\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`,hr:`hr`,p:`p`,pre:`pre`,span:`span`,..._provideComponents(),...props.components},{Card,CodeBlock,Heading,Info}=_components;if(!Card)_missingMdxReference(`Card`,true);if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Info)_missingMdxReference(`Info`,true);return _jsxs(_Fragment,{children:[_jsx(Info,{children:_jsxs(_components.p,{children:[`This feature is available on all Portkey `,_jsx(_components.a,{href:`https://portkey.ai/pricing`,children:`plans`}),`.`]})}),`\n`,_jsxs(_components.p,{children:[`This uses the same techniques as `,_jsx(_components.a,{href:`/product/ai-gateway/load-balancing`,children:`load balancing`}),` but to achieve a different outcome.`]}),`\n`,_jsx(Heading,{level:`3`,id:`example-test-llama2-on-5%-of-the-traffic`,children:`Example: Test Llama2 on 5% of the traffic`}),`\n`,_jsx(_components.p,{children:`Let’s take an example where we want to introduce llama2 in our systems (through Anyscale) but we’re not sure of the impact. We can create a config specifically for this use case to test llama2 in production.`}),`\n`,_jsx(_components.p,{children:`The config object would look like this`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`17`,language:`json`,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:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`17`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"strategy\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"mode\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"loadbalance\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"targets\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: [`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"provider\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"@openai-prod\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"weight\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`0.95`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"provider\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"@anyscale-prod\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"weight\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`0.05`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"override_params\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"model\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"meta-llama/Llama-2-70b-chat-hf\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#82071E`,\"--shiki-light-font-style\":`italic`,\"--shiki-dark\":`#F44747`,\"--shiki-dark-font-style\":`inherit`},children:` ]`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})}),`\n`,_jsx(_components.p,{children:`Here we are telling the gateway to send 5% of the traffic to anyscale’s hosted llama2-70b model. Portkey handles all the request transforms to make sure you don’t have to change your code.`}),`\n`,_jsxs(_components.p,{children:[`You can now `,_jsx(_components.a,{href:`/product/ai-gateway/configs#using-configs`,children:`use this config like this`}),` in your requests.`]}),`\n`,_jsxs(_components.p,{children:[`Once data starts flowing in, we can use Portkey’s `,_jsx(_components.a,{href:`/product/observability/analytics`,children:`analytics dashboards`}),` to see the impact of the new model on cost, latency, errors and feedback.`]}),`\n`,_jsx(_components.hr,{}),`\n`,_jsx(Card,{title:`Portkey is now PRISMA AIRS AI Gateway. See it in action.`,href:`https://www.paloaltonetworks.in/ai-security/ai-gateway?utm_source=portkey\u0026utm_medium=referral\u0026utm_campaign=prisma_airs\u0026utm_content=docs_nav#contact`,icon:`arrow-up-right-from-square`,children:_jsx(_components.p,{children:`Contact Us`})})]})}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":{"codeStyling":"system","config":{},"pageMetadata":{"title":"Canary Testing","description":"You can use Portkey's AI gateway to also canary test new models or prompts in different environments. ","href":"/product/ai-gateway/canary-testing"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Example: Test Llama2 on 5% of the traffic","slug":"example-test-llama2-on-5%-of-the-traffic","depth":3,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"portkey-docs","siteName":"Portkey (Prisma AIRS AI Gateway) Docs","title":"Canary Testing - Portkey (Prisma AIRS AI Gateway) Docs","relatedPagesConfig":{"enabled":true,"limit":5,"mode":"automatic"},"contextualStarterQuestions":[{"_id":"6aa971ef0031bd0287c97316","deploymentId":"67086365a151447bf2fa5021","questionText":"What traffic split should I use?","status":"active","generatedBy":"contextual","path":"product/ai-gateway/canary-testing","createdAt":"2026-09-15T16:27:27.232Z","updatedAt":"2026-09-15T16:27:27.232Z","__v":0},{"_id":"6aa971ef0031bd0287c97315","deploymentId":"67086365a151447bf2fa5021","questionText":"How do I test a new model?","status":"active","generatedBy":"contextual","path":"product/ai-gateway/canary-testing","createdAt":"2026-09-15T16:27:27.232Z","updatedAt":"2026-09-15T16:27:27.232Z","__v":0},{"_id":"6aa971ef0031bd0287c97317","deploymentId":"67086365a151447bf2fa5021","questionText":"How do I set up canary testing?","status":"active","generatedBy":"contextual","path":"product/ai-gateway/canary-testing","createdAt":"2026-09-15T16:27:27.232Z","updatedAt":"2026-09-15T16:27:27.232Z","__v":0}],"navMaps":{"firstHrefInVersion":{"Latest":{"href":"/product/ai-gateway/canary-testing","matchLevel":0},"Prisma AIRS":{"href":"/aigw/product/ai-gateway/canary-testing","matchLevel":1},"Virtual Keys (Deprecated)":{"href":"/virtual_key_old/product/ai-gateway/canary-testing","matchLevel":1}},"firstHrefInLanguage":{}},"lastModified":"2026-08-10T11:57:33.052Z","gitLastModified":"2026-08-06T05:55:04.000Z","originalFileLocation":"product/ai-gateway/canary-testing.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"You can use Portkey\u0026#x27;s AI gateway to also canary test new models or prompts in different environments.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Portkey (Prisma AIRS AI Gateway) 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/portkey-docs/9Whrk-8bCE6hyGSn/_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/portkey-docs/9Whrk-8bCE6hyGSn/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/docs/mintlify-assets/_mintlify/favicons/portkey-docs/9Whrk-8bCE6hyGSn/_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/portkey-docs/9Whrk-8bCE6hyGSn/_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/portkey-docs/9Whrk-8bCE6hyGSn/_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/portkey-docs/9Whrk-8bCE6hyGSn/_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/portkey-docs/9Whrk-8bCE6hyGSn/_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/portkey-docs/9Whrk-8bCE6hyGSn/_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/portkey-docs/9Whrk-8bCE6hyGSn/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Canary Testing - Portkey (Prisma AIRS AI Gateway) Docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"You can use Portkey\u0026#x27;s AI gateway to also canary test new models or prompts in different environments.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Portkey AI Gateway Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.portkey.ai/docs/product/ai-gateway/canary-testing\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://portkey-docs.mintlify.app/_mintlify/api/og/v2?division=AI+Gateway\u0026amp;title=Canary+Testing\u0026amp;description=You+can+use+Portkey%27s+AI+gateway+to+also+canary+test+new+models+or+prompts+in+different+environments.+\u0026amp;theme=853bd9413362007d232d9ea2\u0026amp;signature=360095e9918f1a4b09ba68b7e3384d400a4889e2b317e27948b2a92e8570c93c\">\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=\"Canary Testing - Portkey (Prisma AIRS AI Gateway) Docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"You can use Portkey\u0026#x27;s AI gateway to also canary test new models or prompts in different environments.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://portkey-docs.mintlify.app/_mintlify/api/og/v2?division=AI+Gateway\u0026amp;title=Canary+Testing\u0026amp;description=You+can+use+Portkey%27s+AI+gateway+to+also+canary+test+new+models+or+prompts+in+different+environments.+\u0026amp;theme=853bd9413362007d232d9ea2\u0026amp;signature=360095e9918f1a4b09ba68b7e3384d400a4889e2b317e27948b2a92e8570c93c\">\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/portkey-docs/9Whrk-8bCE6hyGSn/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Portkey (Prisma AIRS AI Gateway) Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#0891B2\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.portkey.ai/docs/product/ai-gateway/canary-testing\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/docs/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/docs/product/ai-gateway/canary-testing.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.portkey.ai/#organization\",\"name\":\"Portkey (Prisma AIRS AI Gateway) Docs\",\"url\":\"https://docs.portkey.ai\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/portkey-docs/tHk-hgNjLbEj4dhh/images/portkey-PANW-company-logo-positive.png?fit=max\u0026auto=format\u0026n=tHk-hgNjLbEj4dhh\u0026q=85\u0026s=c5fb09014ff79616583b1d3bffe27450\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.portkey.ai/docs#website\",\"name\":\"Portkey (Prisma AIRS AI Gateway) Docs\",\"url\":\"https://docs.portkey.ai/docs\",\"publisher\":{\"@id\":\"https://docs.portkey.ai/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.portkey.ai/docs/product/ai-gateway/canary-testing#webpage\",\"url\":\"https://docs.portkey.ai/docs/product/ai-gateway/canary-testing\",\"name\":\"Canary Testing\",\"description\":\"You can use Portkey's AI gateway to also canary test new models or prompts in different environments.\",\"dateModified\":\"2026-08-06T05:55:04.000Z\",\"isPartOf\":{\"@id\":\"https://docs.portkey.ai/docs#website\"},\"breadcrumb\":{\"@id\":\"https://docs.portkey.ai/docs/product/ai-gateway/canary-testing#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.portkey.ai/docs/product/ai-gateway/canary-testing#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Product\",\"item\":\"https://docs.portkey.ai/docs/product/observability\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"AI Gateway\",\"item\":\"https://docs.portkey.ai/docs/product/ai-gateway\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Canary Testing\",\"item\":\"https://docs.portkey.ai/docs/product/ai-gateway/canary-testing\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.portkey.ai/docs/product/ai-gateway/canary-testing#article\",\"headline\":\"Canary Testing\",\"name\":\"Canary Testing\",\"description\":\"You can use Portkey's AI gateway to also canary test new models or prompts in different environments.\",\"url\":\"https://docs.portkey.ai/docs/product/ai-gateway/canary-testing\",\"mainEntityOfPage\":{\"@id\":\"https://docs.portkey.ai/docs/product/ai-gateway/canary-testing#webpage\"},\"dateModified\":\"2026-08-06T05:55:04.000Z\",\"publisher\":{\"@id\":\"https://docs.portkey.ai/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.portkey.ai/docs#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Portkey (Prisma AIRS AI Gateway) Docs\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Portkey (Prisma AIRS AI Gateway) Docs","nav":{"global":null,"versions":[{"version":"Latest","tabs":[{"tab":"Docs","groups":[{"group":"Introduction","icon":"rocket","pages":[{"title":"What is Portkey?","href":"/introduction/what-is-portkey"},{"title":"Make Your First Request","href":"/introduction/make-your-first-request"},{"title":"Portkey Features","href":"/introduction/feature-overview"}]},{"group":"Product","icon":"cube","pages":[{"group":"Observability","pages":[{"title":"Observability (OpenTelemetry)","href":"/product/observability"},{"group":"OpenTelemetry","pages":[{"title":"OpenTelemetry for LLM Observability","href":"/product/observability/opentelemetry"},{"title":"Supported OTel Libraries","href":"/product/observability/opentelemetry/list-of-supported-otel-instrumenters"}]},{"title":"Logs","href":"/product/observability/logs"},{"title":"Tracing","href":"/product/observability/traces"},{"title":"Analytics","href":"/product/observability/analytics"},{"title":"Feedback","href":"/product/observability/feedback"},{"title":"Metadata","href":"/product/observability/metadata"},{"title":"Filters","href":"/product/observability/filters"},{"title":"Logs Export","href":"/product/observability/logs-export"},{"title":"Model Pricing and Cost Management","href":"/product/observability/cost-management"},{"title":"Budget Limits","url":"/product/model-catalog/integrations#3-budget-%26-rate-limits","href":"/product/observability/budget-limits"},{"title":"Auto-Instrumentation [BETA]","href":"/product/observability/auto-instrumentation"}]},{"group":"AI Gateway","pages":[{"title":"AI Gateway","href":"/product/ai-gateway"},{"group":"Universal API","pages":[{"title":"Universal API","sidebarTitle":"Overview","href":"/product/ai-gateway/universal-api"},{"title":"Chat Completions","href":"/product/ai-gateway/chat-completions"},{"title":"Messages","href":"/product/ai-gateway/messages-api"},{"title":"Open Responses","href":"/product/ai-gateway/responses-api"},{"title":"Decisions","href":"/product/ai-gateway/decisions-api"}]},{"title":"Configs","href":"/product/ai-gateway/configs"},{"title":"Custom hosts","href":"/product/ai-gateway/custom-hosts"},{"title":"Remote MCP","href":"/product/ai-gateway/remote-mcp"},{"title":"Beta Features","href":"/product/ai-gateway/beta-features"},{"title":"Conditional Routing","href":"/product/ai-gateway/conditional-routing"},{"group":"Multimodal Capabilities","pages":[{"title":"Multimodal Capabilities","href":"/product/ai-gateway/multimodal-capabilities"},{"title":"Image Generation","href":"/product/ai-gateway/multimodal-capabilities/image-generation"},{"title":"Function Calling","href":"/product/ai-gateway/multimodal-capabilities/function-calling"},{"title":"Vision","href":"/product/ai-gateway/multimodal-capabilities/vision"},{"title":"Text-to-Speech","href":"/product/ai-gateway/multimodal-capabilities/text-to-speech"},{"title":"Speech-to-Text","href":"/product/ai-gateway/multimodal-capabilities/speech-to-text"},{"title":"Thinking Mode","href":"/product/ai-gateway/multimodal-capabilities/thinking-mode"}]},{"title":"Cache (Simple \u0026 Semantic)","href":"/product/ai-gateway/cache-simple-and-semantic"},{"title":"Fallbacks","href":"/product/ai-gateway/fallbacks"},{"title":"Automatic Retries","href":"/product/ai-gateway/automatic-retries"},{"title":"Circuit Breaker","href":"/product/ai-gateway/circuit-breaker"},{"title":"Realtime API","href":"/product/ai-gateway/realtime-api"},{"title":"gRPC (Beta)","href":"/product/ai-gateway/grpc"},{"title":"Load Balancing","description":"Distribute traffic across multiple LLMs for high availability and optimal performance.","href":"/product/ai-gateway/load-balancing"},{"title":"Canary Testing","href":"/product/ai-gateway/canary-testing"},{"title":"Strict OpenAI Compliance","description":null,"href":"/product/ai-gateway/strict-open-ai-compliance"},{"group":"Virtual Keys [Deprecated]","pages":[{"title":"Virtual Keys","href":"/product/ai-gateway/virtual-keys"},{"title":"Budget Limits","href":"/product/ai-gateway/virtual-keys/budget-limits"},{"title":"Rate Limits","href":"/product/ai-gateway/virtual-keys/rate-limits"},{"title":"Connect Bedrock with Amazon Assumed Role","href":"/product/ai-gateway/virtual-keys/bedrock-amazon-assumed-role"}]},{"title":"Request Timeouts","href":"/product/ai-gateway/request-timeouts"},{"title":"Files","href":"/product/ai-gateway/files"},{"title":"Unified Batch Inference","href":"/product/ai-gateway/batches"},{"title":"Fine-tuning","href":"/product/ai-gateway/fine-tuning"},{"title":"Nitro Mode (Beta)","href":"/product/ai-gateway/nitro-mode"}]},{"group":"Model Catalog","pages":[{"title":"Model Catalog","sidebarTitle":"Model Catalog","href":"/product/model-catalog"},{"title":"Portkey Models","api":"GET https://api.portkey.ai/model-configs/pricing/{provider}/{model}","href":"/product/model-catalog/portkey-models"},{"title":"Integrations","href":"/product/model-catalog/integrations"},{"title":"Budget Limits","url":"/product/model-catalog/integrations#3-budget-%26-rate-limits","href":"/product/model-catalog/budget-limits"},{"title":"Rate Limits","url":"/product/model-catalog/integrations#3-budget-%26-rate-limits","href":"/product/model-catalog/rate-limits"},{"title":"Workspace Provisioning","url":"/product/model-catalog/integrations#1-workspace-provisioning","href":"/product/model-catalog/workspace-provisioning"},{"title":"AI Model Provisioning","url":"/product/model-catalog/integrations#2-model-provisioning","href":"/product/model-catalog/model-provisioning"},{"title":"Adding Custom Models","href":"/product/model-catalog/custom-models"},{"title":"Adding Pricing Adjustments","href":"/product/model-catalog/pricing-adjustments"},{"title":"Overriding Model Details","href":"/product/model-catalog/model-overrides"},{"title":"Connect Bedrock with Amazon Assumed Role","href":"/product/model-catalog/connect-bedrock-with-amazon-assumed-role"},{"title":"Workload identity federation","href":"/product/model-catalog/workload-identity-federation"}]},{"group":"MCP Gateway","pages":[{"title":"MCP Gateway","href":"/product/mcp-gateway"},{"title":"Quickstart","href":"/product/mcp-gateway/quickstart"},{"group":"MCP Registry","pages":[{"title":"MCP Registry","href":"/product/mcp-gateway/mcp-registry"},{"title":"Add Internal MCP Servers","href":"/product/mcp-gateway/internal-mcp-servers"},{"title":"Add External MCP Servers","href":"/product/mcp-gateway/external-mcp-servers"},{"title":"Registry API (Beta)","tag":"Beta","href":"/product/mcp-gateway/registry-api"},{"title":"MCP Advanced Configuration","href":"/product/mcp-gateway/advanced-configuration"}]},{"title":"Using MCP Servers","href":"/product/mcp-gateway/using-mcp-servers"},{"title":"Team Provisioning","href":"/product/mcp-gateway/access-control"},{"title":"Tool Provisioning","href":"/product/mcp-gateway/tool-provisioning"},{"group":"Authentication","pages":[{"title":"Authentication","href":"/product/mcp-gateway/authentication"},{"title":"OAuth","href":"/product/mcp-gateway/authentication/oauth"},{"title":"Bring Your Own Auth","href":"/product/mcp-gateway/authentication/external-oauth"},{"title":"Identity Forwarding","href":"/product/mcp-gateway/authentication/identity-forwarding"},{"title":"JWT Validation","href":"/product/mcp-gateway/authentication/jwt"},{"title":"OAuth Client Metadata","href":"/product/mcp-gateway/authentication/oauth-client-metadata"},{"title":"Forwarding Headers","href":"/product/mcp-gateway/authentication/forwarding-headers"},{"title":"Custom Auth","href":"/product/mcp-gateway/authentication/custom-auth"}]},{"title":"Authorization","href":"/product/mcp-gateway/authorization"},{"title":"Observability","href":"/product/mcp-gateway/observability"},{"title":"Integrations","href":"/product/mcp-gateway/integrations"},{"title":"Guardrails","href":"/product/mcp-gateway/guardrails"},{"group":"Reliability","pages":[{"title":"Rate Limits","href":"/product/mcp-gateway/rate-limits"},{"title":"Circuit Breakers","href":"/product/mcp-gateway/circuit-breakers"}]}]},{"group":"Agent Gateway","pages":[{"title":"Agent Gateway","href":"/product/agent-gateway"},{"title":"Quickstart","href":"/product/agent-gateway/quickstart"},{"title":"Agent Registry","href":"/product/agent-gateway/registry"},{"title":"Agent Servers","href":"/product/agent-gateway/servers"},{"title":"Advanced code snippets and examples","href":"/product/agent-gateway/advanced-code-snippets-and-examples"}]},{"title":"Coding Agents","href":"/product/coding-agent"},{"group":"Prompt Studio","pages":[{"title":"Prompt Engineering Studio","href":"/product/prompt-engineering-studio"},{"title":"Prompt Playground","href":"/product/prompt-engineering-studio/prompt-playground"},{"title":"Prompt Library","href":"/product/prompt-engineering-studio/prompt-library"},{"title":"Prompt Versioning \u0026 Labels","href":"/product/prompt-engineering-studio/prompt-versioning"},{"title":"Prompt Observability","href":"/product/prompt-engineering-studio/prompt-observability"},{"title":"Prompt Partials","href":"/product/prompt-engineering-studio/prompt-partial"},{"title":"Sharing Prompts and Partials","href":"/product/prompt-engineering-studio/prompt-sharing"},{"title":"Prompt API","href":"/product/prompt-engineering-studio/prompt-api"},{"title":"Tool Library","href":"/product/prompt-engineering-studio/tool-library"},{"title":"Integrations","href":"/product/prompt-engineering-studio/prompt-integration"},{"title":"Guides","href":"/product/prompt-engineering-studio/prompt-guides"}]},{"group":"Guardrails","pages":[{"title":"Guardrails","href":"/product/guardrails"},{"title":"Supported Endpoints \u0026 Capabilities","href":"/product/guardrails/capabilities"},{"title":"List of Guardrail Checks","href":"/product/guardrails/list-of-guardrail-checks"},{"title":"Guardrails for Embedding Requests","href":"/product/guardrails/embedding-guardrails"},{"title":"Guardrails for Decisions Requests","href":"/product/guardrails/decisions-guardrails"},{"title":"Creating Raw Guardrails (in JSON)","href":"/product/guardrails/creating-raw-guardrails-in-json"},{"title":"Forwarding Headers","href":"/product/guardrails/forwarding-headers"},{"title":"PII Redaction","href":"/product/guardrails/pii-redaction"},{"title":"Guardrails for Batches","href":"/product/guardrails/guardrails-for-batches"},{"title":"Bring Your Own Guardrails","href":"/integrations/guardrails/bring-your-own-guardrails"}]},{"group":"Administration","pages":[{"title":"Enforcing Request Metadata","href":"/product/administration/enforcing-request-metadata"},{"title":"Enforcing Org Level Guardrails","href":"/product/administration/enforce-orgnization-level-guardrails"},{"title":"Enforcing Workspace Level Guardrails","href":"/product/administration/enforce-workspace-level-guardials"},{"title":"Configure Request Logging","href":"/product/administration/configuring-request-logging"},{"title":"Enforcing Default Configs on API Keys","href":"/product/administration/enforce-default-config"},{"title":"Enforcing Saved-Only Resources","sidebarTitle":"Enforcing Saved-Only Resources","href":"/product/administration/enforce-saved-only-config"},{"title":"Enforce Budget Limits and Rate Limits for Your API Keys","href":"/product/administration/enforce-budget-and-rate-limit"},{"title":"Enforce Workspace Budget and Rate Limits","href":"/product/administration/enforce-workspace-budget-limts-and-rate-limits"},{"title":"Configure Logs Access Permissions for Workspace","href":"/product/administration/configure-logs-access-permissions-in-workspace"},{"title":"Configure Analytics Access Permissions for Workspaces","href":"/product/administration/configure-analytics-access-permissions"},{"title":"Configure Data Visibility Settings for Workspaces","href":"/product/administration/configure-data-visibility-settings"},{"title":"Configure Provider Access Permissions","href":"/product/administration/configure-virtual-key-access-permissions"},{"title":"Configure API Key Access Permissions for Workspaces","href":"/product/administration/configure-api-key-access-permissions"},{"title":"Configure Prompt Access Permissions for Workspaces","href":"/product/administration/configure-prompt-access-permissions"},{"title":"Configure Guardrail Access Permissions for Workspaces","href":"/product/administration/configure-guardrail-access-permissions"},{"title":"Configure Integration Access Permissions for Workspaces","href":"/product/administration/configure-integration-access-permissions"},{"title":"Configure Workspace Provisioning for Your AI Integrations","url":"/product/model-catalog/integrations#1-workspace-provisioning","href":"/product/administration/configure-workspace-provisioning-for-your-ai-integrations"},{"title":"Configure Model Access Permissioning for AI Integrations","url":"/product/model-catalog/integrations#2-model-provisioning","href":"/product/administration/configure-model-access-permissioning-for-ai-integratinon"},{"title":"Enforce Rate Limits on Your AI Provider","url":"/product/model-catalog/integrations#3-budget-%26-rate-limits","href":"/product/administration/enforce-rate-limits-on-your-ai-provider"},{"title":"Enforce Budget Limits on Your AI Provider","url":"/product/model-catalog/integrations#3-budget-%26-rate-limits","href":"/product/administration/enforce-budget-limits-on-your-ai-provider"}]},{"group":"Enterprise Offering","pages":[{"title":"Enterprise Offering","href":"/product/enterprise-offering"},{"group":"Org Management","pages":[{"title":"Org Management","href":"/product/enterprise-offering/org-management"},{"title":"Organizations","href":"/product/enterprise-offering/org-management/organizations"},{"title":"Workspaces","href":"/product/enterprise-offering/org-management/workspaces"},{"title":"User Roles \u0026 Permissions","href":"/product/enterprise-offering/org-management/user-roles-and-permissions"},{"title":"API Keys (AuthN and AuthZ)","href":"/product/enterprise-offering/org-management/api-keys-authn-and-authz"},{"title":"API Key Rotation","href":"/product/enterprise-offering/org-management/api-key-rotation"},{"title":"Gateway URLs","href":"/product/enterprise-offering/org-management/gateway-urls"},{"title":"JWT Authentication","href":"/product/enterprise-offering/org-management/jwt"},{"group":"SCIM","pages":[{"title":"Overview","href":"/product/enterprise-offering/org-management/scim/scim"},{"title":"SCIM Group Management","href":"/product/enterprise-offering/org-management/scim/group-management"},{"title":"Azure Entra","href":"/product/enterprise-offering/org-management/scim/azure-ad"},{"title":"Okta","href":"/product/enterprise-offering/org-management/scim/okta"}]},{"group":"Directory Sync","pages":[{"title":"CIE Directory Sync","href":"/product/enterprise-offering/org-management/directory-sync/cie-directory-sync"}]},{"title":"SSO","href":"/product/enterprise-offering/org-management/sso"}]},{"title":"Access Control Management","href":"/product/enterprise-offering/access-control-management"},{"title":"Budget Limits","url":"/product/model-catalog/integrations#3-budget-%26-rate-limits","href":"/product/enterprise-offering/budget-limits"},{"title":"Security @ Portkey","href":"/product/enterprise-offering/security-portkey"},{"group":"OpenTelemetry(OTel)","pages":[{"title":"OpenTelemetry(OTel) Export","sidebarTitle":"OTel Export","href":"/product/enterprise-offering/otel/otel"},{"title":"Analytics Export","sidebarTitle":"Analytics","href":"/product/enterprise-offering/otel/analytics"},{"title":"Complete Logs Export","sidebarTitle":"Complete Logs","href":"/product/enterprise-offering/otel/complete-logs"}]},{"title":"Logs Export","url":"/product/observability/logs-export","href":"/product/enterprise-offering/logs-export"},{"title":"Audit Logs","href":"/product/enterprise-offering/audit-logs"},{"title":"Usage \u0026 Rate Limit Policies","href":"/product/enterprise-offering/budget-policies"},{"title":"Enterprise Components","href":"/product/enterprise-offering/components"},{"title":"KMS Integration","href":"/product/enterprise-offering/kms"},{"title":"Secret References","href":"/product/enterprise-offering/secret-references"}]},{"title":"Open Source","href":"/product/open-source"},{"title":"Feature Comparison","href":"/product/product-feature-comparison"}]},{"group":"Self-Hosting","icon":"server","pages":[{"group":"Hybrid Deployments","pages":[{"title":"Enterprise Architecture","sidebarTitle":"Architecture","href":"/self-hosting/hybrid-deployments/architecture"},{"title":"SCM Deployment Mode Architecture","sidebarTitle":"SCM Architecture","href":"/self-hosting/hybrid-deployments/scm-architecture"},{"title":"Gateway Registration","sidebarTitle":"Gateway Registration","href":"/self-hosting/hybrid-deployments/gateway-registration"},{"group":"AWS","pages":[{"title":"EKS","href":"/self-hosting/hybrid-deployments/aws/eks"},{"title":"ECS","href":"/self-hosting/hybrid-deployments/aws/ecs"},{"title":"AWS Marketplace","href":"/self-hosting/hybrid-deployments/aws/marketplace"}]},{"group":"Azure","pages":[{"title":"AKS","href":"/self-hosting/hybrid-deployments/azure/aks"},{"title":"ACA","href":"/self-hosting/hybrid-deployments/azure/aca"}]},{"title":"GCP","href":"/self-hosting/hybrid-deployments/gcp"}]},{"title":"Cache Behavior","sidebarTitle":"Cache Behavior","href":"/self-hosting/cache-behavior"},{"title":"Prometheus Metrics","href":"/self-hosting/prometheus-metrics"},{"title":"FIPS-Compliant Images","href":"/self-hosting/fips-compliant-images"},{"group":"Air-Gapped Deployments (Legacy)","pages":[{"title":"Model Pricing for Air-Gapped Deployments","sidebarTitle":"Model Pricing (Air-Gapped)","href":"/self-hosting/airgapped/model-pricing"}]}]},{"group":"Support","icon":"life-ring","pages":[{"title":"Upgrade to Model Catalog","tag":"New","href":"/support/upgrade-to-model-catalog"},{"title":"How to Contribute","href":"/README"},{"title":"Contact Us","href":"/support/contact-us"},{"title":"Developer Forum","href":"/support/developer-forum"},{"title":"Common Errors \u0026 Resolutions","href":"/support/common-errors-and-resolutions"},{"title":"December '23 Migration","href":"/support/portkeys-december-migration"}]}]},{"tab":"Integrations","pages":[{"title":"Integrations","href":"/integrations/ecosystem"}]},{"tab":"Gateway APIs","pages":[{"title":"Gateway APIs","href":"/api-reference/inference-api/introduction"}]},{"tab":"Admin APIs","pages":[{"title":"Admin APIs","href":"/api-reference/admin-api/introduction"}]},{"tab":"Cookbooks","pages":[{"title":"Cookbooks","href":"/guides/use-cases/run-batch-evals"}]},{"tab":"Changelog","pages":[{"title":"Changelog","href":"/changelog/2026/september"}]},{"tab":"Help Center","pages":[{"title":"Help Center","href":"/help-center/you-do-not-have-enough-permissions"}]}]},{"version":"Prisma AIRS","pages":[{"title":"Prisma AIRS","href":"/aigw/product/ai-gateway/canary-testing"}]},{"version":"Virtual Keys (Deprecated)","pages":[{"title":"Virtual Keys (Deprecated)","href":"/virtual_key_old/product/ai-gateway/canary-testing"}]}]},"title":"Canary Testing - Portkey (Prisma AIRS AI Gateway) Docs","buildId":"dpl_BZjP68ZaDe5vDy8GbUWzyTGSKsg7","deploymentId":"dpl_BZjP68ZaDe5vDy8GbUWzyTGSKsg7","dynamics":[],"chunks":[]}