curl "https://api.portkey.ai/v1/assistants" \ -H "Content-Type: application/json" \ -H "x-portkey-api-key: $PORTKEY_API_KEY" \ -H "x-portkey-virtual-key: $PORTKEY_PROVIDER_VIRTUAL_KEY" \ -H "OpenAI-Beta: assistants=v2" \ -d '{ "instructions": "You are a personal math tutor. When asked a question, write and run Python code to answer the question.", "name": "Math Tutor", "tools": [{"type": "code_interpreter"}], "model": "gpt-4-turbo" }'
from portkey_ai import Portkey
client = Portkey(
api_key = "PORTKEY_API_KEY",
virtual_key = "PROVIDER_VIRTUAL_KEY"
)
my_assistant = client.beta.assistants.create(
instructions="You are a personal math tutor. When asked a question, write and run Python code to answer the question.",
name="Math Tutor",
tools=[{"type": "code_interpreter"}],
model="gpt-4-turbo",
)
print(my_assistant)
import Portkey from 'portkey-ai';
const client = new Portkey({
apiKey: 'PORTKEY_API_KEY',
virtualKey: 'PROVIDER_VIRTUAL_KEY'
});
async function main() {
const myAssistant = await client.beta.assistants.create({
instructions:
"You are a personal math tutor. When asked a question, write and run Python code to answer the question.",
name: "Math Tutor",
tools: [{ type: "code_interpreter" }],
model: "gpt-4-turbo",
});
console.log(myAssistant);
}
main();
curl "https://api.portkey.ai/v1/assistants" \ -H "Content-Type: application/json" \ -H "x-portkey-api-key: $PORTKEY_API_KEY" \ -H "x-portkey-virtual-key: $PORTKEY_PROVIDER_VIRTUAL_KEY" \ -H "OpenAI-Beta: assistants=v2" \ -d '{ "instructions": "You are a personal math tutor. When asked a question, write and run Python code to answer the question.", "name": "Math Tutor", "tools": [{"type": "code_interpreter"}], "model": "gpt-4-turbo" }'
from portkey_ai import Portkey
client = Portkey(
api_key = "PORTKEY_API_KEY",
virtual_key = "PROVIDER_VIRTUAL_KEY"
)
my_assistant = client.beta.assistants.create(
instructions="You are a personal math tutor. When asked a question, write and run Python code to answer the question.",
name="Math Tutor",
tools=[{"type": "code_interpreter"}],
model="gpt-4-turbo",
)
print(my_assistant)
import Portkey from 'portkey-ai';
const client = new Portkey({
apiKey: 'PORTKEY_API_KEY',
virtualKey: 'PROVIDER_VIRTUAL_KEY'
});
async function main() {
const myAssistant = await client.beta.assistants.create({
instructions:
"You are a personal math tutor. When asked a question, write and run Python code to answer the question.",
name: "Math Tutor",
tools: [{ type: "code_interpreter" }],
model: "gpt-4-turbo",
});
console.log(myAssistant);
}
main();
A list of tool enabled on the assistant. There can be a maximum of 128 tools per assistant. Tools can be of types code_interpreter, file_search, or function.
A set of resources that are used by the assistant's tools. The resources are specific to the type of tool. For example, the code_interpreter tool requires a list of file IDs, while the file_search tool requires a list of vector store IDs.
Set of 16 key-value pairs that can be attached to an object. This can be useful for storing additional information about the object in a structured format. Keys can be a maximum of 64 characters long and values can be a maxium of 512 characters long.
What sampling temperature to use, between 0 and 2. Higher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic.
An alternative to sampling with temperature, called nucleus sampling, where the model considers the results of the tokens with top_p probability mass. So 0.1 means only the tokens comprising the top 10% probability mass are considered.
We generally recommend altering this or temperature but not both.
Specifies the format that the model must output. Compatible with GPT-4o, GPT-4 Turbo, and all GPT-3.5 Turbo models since gpt-3.5-turbo-1106.
Setting to { "type": "json_object" } enables JSON mode, which guarantees the message the model generates is valid JSON.
Important: when using JSON mode, you must also instruct the model to produce JSON yourself via a system or user message. Without this, the model may generate an unending stream of whitespace until the generation reaches the token limit, resulting in a long-running and seemingly "stuck" request. Also note that the message content may be partially cut off if finish_reason="length", which indicates the generation exceeded max_tokens or the conversation exceeded the max context length.
Available options:
none,
auto
Response
200 - application/json
OK
Represents an assistant that can call the model and use tools.
A list of tool enabled on the assistant. There can be a maximum of 128 tools per assistant. Tools can be of types code_interpreter, file_search, or function.
Set of 16 key-value pairs that can be attached to an object. This can be useful for storing additional information about the object in a structured format. Keys can be a maximum of 64 characters long and values can be a maxium of 512 characters long.
A set of resources that are used by the assistant's tools. The resources are specific to the type of tool. For example, the code_interpreter tool requires a list of file IDs, while the file_search tool requires a list of vector store IDs.
What sampling temperature to use, between 0 and 2. Higher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic.
An alternative to sampling with temperature, called nucleus sampling, where the model considers the results of the tokens with top_p probability mass. So 0.1 means only the tokens comprising the top 10% probability mass are considered.
We generally recommend altering this or temperature but not both.
Specifies the format that the model must output. Compatible with GPT-4o, GPT-4 Turbo, and all GPT-3.5 Turbo models since gpt-3.5-turbo-1106.
Setting to { "type": "json_object" } enables JSON mode, which guarantees the message the model generates is valid JSON.
Important: when using JSON mode, you must also instruct the model to produce JSON yourself via a system or user message. Without this, the model may generate an unending stream of whitespace until the generation reaches the token limit, resulting in a long-running and seemingly "stuck" request. Also note that the message content may be partially cut off if finish_reason="length", which indicates the generation exceeded max_tokens or the conversation exceeded the max context length.
{"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":"6ae8567a1795b614d9d5e41b","collectionId":"7b8e6b43-1ff8-48f7-ac03-f5914698f09f","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ae8567a1795b614d9d5e41b"},"feedback":{"thumbs":true,"edits":true,"issues":true,"agentFeedback":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6ae8567a1795b614d9d5e41b","clientVersion":"0.0.4044","searchFilterCounts":[{"language":"default","tag":"Integrations","count":699},{"language":"default","tag":"Product","count":383},{"language":"default","tag":"Docs","count":321},{"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}},"basePath":"/docs","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"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":"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":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"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":"api-reference/inference-api/assistants-api/assistants/create-assistant","slug":"/api-reference/inference-api/assistants-api/assistants/create-assistant","pageMetadata":{"title":"Create Assistant","openapi":"post /assistants","description":"","href":"/api-reference/inference-api/assistants-api/assistants/create-assistant"},"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={hr:`hr`,p:`p`,..._provideComponents(),...props.components},{Card}=_components;if(!Card)_missingMdxReference(`Card`,true);return _jsxs(_Fragment,{children:[_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":"Create Assistant","openapi":"post /assistants","description":"","href":"/api-reference/inference-api/assistants-api/assistants/create-assistant"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"operationId":"createAssistant","tags":["Assistants"],"summary":"Create an assistant with a model and instructions.","requestBody":"552d2ab2-5487-405a-8905-5363d6ba808d","responses":{"200":"de298dc7-a253-48e8-b012-5f45a11e8cc9"},"security":["ad26cdeb-a428-482d-994b-272f7a4a2f72","f29b702b-a537-4e85-8a8c-fbb2a117bd93","6ede8b39-9c1b-4dd4-b205-e4dd5032322c","8427638d-b942-41b1-82a0-ea2cc442ad65"],"x-code-samples":[{"lang":"curl","source":"curl \"https://api.portkey.ai/v1/assistants\" \\\n -H \"Content-Type: application/json\" \\\n -H \"x-portkey-api-key: $PORTKEY_API_KEY\" \\\n -H \"x-portkey-virtual-key: $PORTKEY_PROVIDER_VIRTUAL_KEY\" \\\n -H \"OpenAI-Beta: assistants=v2\" \\\n -d '{\n \"instructions\": \"You are a personal math tutor. When asked a question, write and run Python code to answer the question.\",\n \"name\": \"Math Tutor\",\n \"tools\": [{\"type\": \"code_interpreter\"}],\n \"model\": \"gpt-4-turbo\"\n }'\n"},{"lang":"python","source":"from portkey_ai import Portkey\n\nclient = Portkey(\n api_key = \"PORTKEY_API_KEY\",\n virtual_key = \"PROVIDER_VIRTUAL_KEY\"\n)\n\nmy_assistant = client.beta.assistants.create(\n instructions=\"You are a personal math tutor. When asked a question, write and run Python code to answer the question.\",\n name=\"Math Tutor\",\n tools=[{\"type\": \"code_interpreter\"}],\n model=\"gpt-4-turbo\",\n)\nprint(my_assistant)\n"},{"lang":"javascript","source":"import Portkey from 'portkey-ai';\n\nconst client = new Portkey({\n apiKey: 'PORTKEY_API_KEY',\n virtualKey: 'PROVIDER_VIRTUAL_KEY'\n});\n\nasync function main() {\n const myAssistant = await client.beta.assistants.create({\n instructions:\n \"You are a personal math tutor. When asked a question, write and run Python code to answer the question.\",\n name: \"Math Tutor\",\n tools: [{ type: \"code_interpreter\" }],\n model: \"gpt-4-turbo\",\n });\n\n console.log(myAssistant);\n}\n\nmain();\n","response":"{\n \"id\": \"asst_abc123\",\n \"object\": \"assistant\",\n \"created_at\": 1698984975,\n \"name\": \"Math Tutor\",\n \"description\": null,\n \"model\": \"gpt-4-turbo\",\n \"instructions\": \"You are a personal math tutor. When asked a question, write and run Python code to answer the question.\",\n \"tools\": [\n {\n \"type\": \"code_interpreter\"\n }\n ],\n \"metadata\": {},\n \"top_p\": 1.0,\n \"temperature\": 1.0,\n \"response_format\": \"auto\"\n}\n"}],"method":"post","type":"path","servers":["61827aa0-7550-46a2-bb95-6d9b6dc01fc7","a5b88f86-e4b5-41ee-ad58-6b9a47dfd7cc"],"path":"/assistants","baseUrlOptions":["https://api.portkey.ai/v1","SELF_HOSTED_GATEWAY_URL"],"title":"Create an assistant with a model and instructions.","description":"","codeSamples":[{"lang":"curl","source":"curl \"https://api.portkey.ai/v1/assistants\" \\\n -H \"Content-Type: application/json\" \\\n -H \"x-portkey-api-key: $PORTKEY_API_KEY\" \\\n -H \"x-portkey-virtual-key: $PORTKEY_PROVIDER_VIRTUAL_KEY\" \\\n -H \"OpenAI-Beta: assistants=v2\" \\\n -d '{\n \"instructions\": \"You are a personal math tutor. When asked a question, write and run Python code to answer the question.\",\n \"name\": \"Math Tutor\",\n \"tools\": [{\"type\": \"code_interpreter\"}],\n \"model\": \"gpt-4-turbo\"\n }'\n"},{"lang":"python","source":"from portkey_ai import Portkey\n\nclient = Portkey(\n api_key = \"PORTKEY_API_KEY\",\n virtual_key = \"PROVIDER_VIRTUAL_KEY\"\n)\n\nmy_assistant = client.beta.assistants.create(\n instructions=\"You are a personal math tutor. When asked a question, write and run Python code to answer the question.\",\n name=\"Math Tutor\",\n tools=[{\"type\": \"code_interpreter\"}],\n model=\"gpt-4-turbo\",\n)\nprint(my_assistant)\n"},{"lang":"javascript","source":"import Portkey from 'portkey-ai';\n\nconst client = new Portkey({\n apiKey: 'PORTKEY_API_KEY',\n virtualKey: 'PROVIDER_VIRTUAL_KEY'\n});\n\nasync function main() {\n const myAssistant = await client.beta.assistants.create({\n instructions:\n \"You are a personal math tutor. When asked a question, write and run Python code to answer the question.\",\n name: \"Math Tutor\",\n tools: [{ type: \"code_interpreter\" }],\n model: \"gpt-4-turbo\",\n });\n\n console.log(myAssistant);\n}\n\nmain();\n"}],"requiredOnlyExamples":false,"requestExampleType":"codeSamples","responseExampleType":"generated","prefillPlaygroundWithExample":true,"prefillPlaygroundExamples":[{"body.model.oneOf.0":"gpt-4-turbo","body.name.oneOf.0":"\u003cstring>","body.description.oneOf.0":"\u003cstring>","body.instructions.oneOf.0":"\u003cstring>","body.tool_resources.oneOf.0.file_search.oneOf.0.vector_store_ids.items.0":"\u003cstring>","body.tool_resources.oneOf.0.file_search.oneOf.0.vector_stores.items.0.file_ids.items.0":"\u003cstring>","body.tool_resources.oneOf.0.file_search.oneOf.0.vector_stores.items.0.chunking_strategy.oneOf.0.type":"auto","body.tool_resources.oneOf.0.file_search.oneOf.0.vector_stores.items.0.metadata":{},"body.metadata.oneOf.0":{},"body.temperature.oneOf.0":1,"body.top_p.oneOf.0":1}],"urlDisplay":"full"},"dependencies":{"parameters":{},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"model":{"oneOf":[{"type":"string","description":"ID of the model to use. You can use the [List models](https://platform.openai.com/docs/api-reference/models/list) API to see all of your available models, or see our [Model overview](https://platform.openai.com/docs/models/overview) for descriptions of them.\n","x-oaiTypeLabel":"string","example":"gpt-4-turbo","isRequired":true,"uniqueKey":"model.oneOf.0","typeLabel":"string"},{"type":"string","description":"ID of the model to use. You can use the [List models](https://platform.openai.com/docs/api-reference/models/list) API to see all of your available models, or see our [Model overview](https://platform.openai.com/docs/models/overview) for descriptions of them.\n","enum":["gpt-4o","gpt-4o-2024-05-13","gpt-4-turbo","gpt-4-turbo-2024-04-09","gpt-4-0125-preview","gpt-4-turbo-preview","gpt-4-1106-preview","gpt-4-vision-preview","gpt-4","gpt-4-0314","gpt-4-0613","gpt-4-32k","gpt-4-32k-0314","gpt-4-32k-0613","gpt-3.5-turbo","gpt-3.5-turbo-16k","gpt-3.5-turbo-0613","gpt-3.5-turbo-1106","gpt-3.5-turbo-0125","gpt-3.5-turbo-16k-0613"],"x-oaiTypeLabel":"string","example":"gpt-4-turbo","isRequired":true,"uniqueKey":"model.oneOf.1","typeLabel":"enum\u003cstring>"}],"isRequired":true,"uniqueKey":"model","typeLabel":"string | enum\u003cstring>"},"name":{"oneOf":[{"description":"The name of the assistant. The maximum length is 256 characters.\n","type":"string","maxLength":256,"uniqueKey":"name.oneOf.0","typeLabel":"string"},{"description":"The name of the assistant. The maximum length is 256 characters.\n","type":"null","maxLength":256,"uniqueKey":"name.oneOf.1","typeLabel":"null"}],"uniqueKey":"name","typeLabel":"string | null"},"description":{"oneOf":[{"description":"The description of the assistant. The maximum length is 512 characters.\n","type":"string","maxLength":512,"uniqueKey":"description.oneOf.0","typeLabel":"string"},{"description":"The description of the assistant. The maximum length is 512 characters.\n","type":"null","maxLength":512,"uniqueKey":"description.oneOf.1","typeLabel":"null"}],"uniqueKey":"description","typeLabel":"string | null"},"instructions":{"oneOf":[{"description":"The system instructions that the assistant uses. The maximum length is 256,000 characters.\n","type":"string","maxLength":256000,"uniqueKey":"instructions.oneOf.0","typeLabel":"string"},{"description":"The system instructions that the assistant uses. The maximum length is 256,000 characters.\n","type":"null","maxLength":256000,"uniqueKey":"instructions.oneOf.1","typeLabel":"null"}],"uniqueKey":"instructions","typeLabel":"string | null"},"tools":{"description":"A list of tool enabled on the assistant. There can be a maximum of 128 tools per assistant. Tools can be of types `code_interpreter`, `file_search`, or `function`.\n","default":[],"type":"array","maxItems":128,"items":{"oneOf":[{"type":"object","title":"Code interpreter tool","required":["type"],"x-oaiExpandable":true,"properties":{"type":{"type":"string","description":"The type of tool being defined: `code_interpreter`","enum":["code_interpreter"],"isRequired":true,"uniqueKey":"tools.items.[INDEX].oneOf.0.type","typeLabel":"enum\u003cstring>"}},"uniqueKey":"tools.items.[INDEX].oneOf.0","typeLabel":"Code interpreter tool · object"},{"type":"object","title":"FileSearch tool","required":["type"],"x-oaiExpandable":true,"properties":{"type":{"type":"string","description":"The type of tool being defined: `file_search`","enum":["file_search"],"isRequired":true,"uniqueKey":"tools.items.[INDEX].oneOf.1.type","typeLabel":"enum\u003cstring>"},"file_search":{"type":"object","description":"Overrides for the file search tool.","properties":{"max_num_results":{"type":"integer","minimum":1,"maximum":50,"description":"The maximum number of results the file search tool should output. The default is 20 for gpt-4* models and 5 for gpt-3.5-turbo. This number should be between 1 and 50 inclusive.\n\nNote that the file search tool may output fewer than `max_num_results` results. See the [file search tool documentation](https://platform.openai.com/docs/assistants/tools/file-search/number-of-chunks-returned) for more information.\n","uniqueKey":"tools.items.[INDEX].oneOf.1.file_search.max_num_results","typeLabel":"integer"}},"uniqueKey":"tools.items.[INDEX].oneOf.1.file_search","typeLabel":"object"}},"uniqueKey":"tools.items.[INDEX].oneOf.1","typeLabel":"FileSearch tool · object"},{"type":"object","title":"Function tool","required":["type","function"],"x-oaiExpandable":true,"properties":{"type":{"type":"string","description":"The type of tool being defined: `function`","enum":["function"],"isRequired":true,"uniqueKey":"tools.items.[INDEX].oneOf.2.type","typeLabel":"enum\u003cstring>"},"function":{"type":"object","properties":{"name":{"type":"string","description":"The name of the function to be called. Must be a-z, A-Z, 0-9, or contain underscores and dashes, with a maximum length of 64.","isRequired":true,"uniqueKey":"tools.items.[INDEX].oneOf.2.function.name","typeLabel":"string"},"description":{"type":"string","description":"A description of what the function does, used by the model to choose when and how to call the function.","uniqueKey":"tools.items.[INDEX].oneOf.2.function.description","typeLabel":"string"},"parameters":{"type":"object","description":"The parameters the functions accepts, described as a JSON Schema object. See the [guide](https://platform.openai.com/docs/guides/function-calling) for examples, and the [JSON Schema reference](https://json-schema.org/understanding-json-schema/) for documentation about the format. \n\nOmitting `parameters` defines a function with an empty parameter list.","additionalProperties":true,"uniqueKey":"tools.items.[INDEX].oneOf.2.function.parameters","typeLabel":"object"},"strict":{"oneOf":[{"type":"boolean","default":false,"description":"Whether to enable strict schema adherence when generating the function call. If set to true, the model will follow the exact schema defined in the `parameters` field. Only a subset of JSON Schema is supported when `strict` is `true`. Learn more about Structured Outputs in the [function calling guide](docs/guides/function-calling).","uniqueKey":"tools.items.[INDEX].oneOf.2.function.strict.oneOf.0","typeLabel":"boolean"},{"type":"null","default":false,"description":"Whether to enable strict schema adherence when generating the function call. If set to true, the model will follow the exact schema defined in the `parameters` field. Only a subset of JSON Schema is supported when `strict` is `true`. Learn more about Structured Outputs in the [function calling guide](docs/guides/function-calling).","uniqueKey":"tools.items.[INDEX].oneOf.2.function.strict.oneOf.1","typeLabel":"null"}],"uniqueKey":"tools.items.[INDEX].oneOf.2.function.strict","typeLabel":"boolean | null"}},"required":["name"],"isRequired":true,"uniqueKey":"tools.items.[INDEX].oneOf.2.function","typeLabel":"object"}},"uniqueKey":"tools.items.[INDEX].oneOf.2","typeLabel":"Function tool · object"}],"uniqueKey":"tools.items.[INDEX]","typeLabel":"Code interpreter tool · object | FileSearch tool · object | Function tool · object"},"uniqueKey":"tools","typeLabel":"(Code interpreter tool · object | FileSearch tool · object | Function tool · object)[]"},"tool_resources":{"oneOf":[{"type":"object","description":"A set of resources that are used by the assistant's tools. The resources are specific to the type of tool. For example, the `code_interpreter` tool requires a list of file IDs, while the `file_search` tool requires a list of vector store IDs.\n","properties":{"code_interpreter":{"type":"object","properties":{"file_ids":{"type":"array","description":"A list of [file](https://platform.openai.com/docs/api-reference/files) IDs made available to the `code_interpreter` tool. There can be a maximum of 20 files associated with the tool.\n","default":[],"maxItems":20,"items":{"type":"string","uniqueKey":"tool_resources.oneOf.0.code_interpreter.file_ids.items.[INDEX]","typeLabel":"string"},"uniqueKey":"tool_resources.oneOf.0.code_interpreter.file_ids","typeLabel":"string[]"}},"uniqueKey":"tool_resources.oneOf.0.code_interpreter","typeLabel":"object"},"file_search":{"oneOf":[{"type":"object","required":["vector_store_ids"],"properties":{"vector_store_ids":{"type":"array","description":"The [vector store](https://platform.openai.com/docs/api-reference/vector-stores/object) attached to this assistant. There can be a maximum of 1 vector store attached to the assistant.\n","maxItems":1,"items":{"type":"string","uniqueKey":"tool_resources.oneOf.0.file_search.oneOf.0.vector_store_ids.items.[INDEX]","typeLabel":"string"},"isRequired":true,"uniqueKey":"tool_resources.oneOf.0.file_search.oneOf.0.vector_store_ids","typeLabel":"string[]"},"vector_stores":{"type":"array","description":"A helper to create a [vector store](https://platform.openai.com/docs/api-reference/vector-stores/object) with file_ids and attach it to this assistant. There can be a maximum of 1 vector store attached to the assistant.\n","maxItems":1,"items":{"type":"object","properties":{"file_ids":{"type":"array","description":"A list of [file](https://platform.openai.com/docs/api-reference/files) IDs to add to the vector store. There can be a maximum of 10000 files in a vector store.\n","maxItems":10000,"items":{"type":"string","uniqueKey":"tool_resources.oneOf.0.file_search.oneOf.0.vector_stores.items.[INDEX].file_ids.items.[INDEX]","typeLabel":"string"},"uniqueKey":"tool_resources.oneOf.0.file_search.oneOf.0.vector_stores.items.[INDEX].file_ids","typeLabel":"string[]"},"chunking_strategy":{"oneOf":[{"type":"object","title":"Auto Chunking Strategy","description":"The default strategy. This strategy currently uses a `max_chunk_size_tokens` of `800` and `chunk_overlap_tokens` of `400`.","required":["type"],"x-oaiExpandable":true,"properties":{"type":{"type":"string","description":"Always `auto`.","enum":["auto"],"isRequired":true,"uniqueKey":"tool_resources.oneOf.0.file_search.oneOf.0.vector_stores.items.[INDEX].chunking_strategy.oneOf.0.type","typeLabel":"enum\u003cstring>"}},"additionalProperties":false,"uniqueKey":"tool_resources.oneOf.0.file_search.oneOf.0.vector_stores.items.[INDEX].chunking_strategy.oneOf.0","typeLabel":"Auto Chunking Strategy · object"},{"type":"object","title":"Static Chunking Strategy","description":"The chunking strategy used to chunk the file(s). If not set, will use the `auto` strategy.","required":["type","static"],"x-oaiExpandable":true,"properties":{"type":{"type":"string","description":"Always `static`.","enum":["static"],"isRequired":true,"uniqueKey":"tool_resources.oneOf.0.file_search.oneOf.0.vector_stores.items.[INDEX].chunking_strategy.oneOf.1.type","typeLabel":"enum\u003cstring>"},"static":{"type":"object","additionalProperties":false,"properties":{"max_chunk_size_tokens":{"type":"integer","minimum":100,"maximum":4096,"description":"The maximum number of tokens in each chunk. The default value is `800`. The minimum value is `100` and the maximum value is `4096`.","isRequired":true,"uniqueKey":"tool_resources.oneOf.0.file_search.oneOf.0.vector_stores.items.[INDEX].chunking_strategy.oneOf.1.static.max_chunk_size_tokens","typeLabel":"integer"},"chunk_overlap_tokens":{"type":"integer","description":"The number of tokens that overlap between chunks. The default value is `400`.\n\nNote that the overlap must not exceed half of `max_chunk_size_tokens`.\n","isRequired":true,"uniqueKey":"tool_resources.oneOf.0.file_search.oneOf.0.vector_stores.items.[INDEX].chunking_strategy.oneOf.1.static.chunk_overlap_tokens","typeLabel":"integer"}},"required":["max_chunk_size_tokens","chunk_overlap_tokens"],"isRequired":true,"uniqueKey":"tool_resources.oneOf.0.file_search.oneOf.0.vector_stores.items.[INDEX].chunking_strategy.oneOf.1.static","typeLabel":"object"}},"additionalProperties":false,"uniqueKey":"tool_resources.oneOf.0.file_search.oneOf.0.vector_stores.items.[INDEX].chunking_strategy.oneOf.1","typeLabel":"Static Chunking Strategy · object"}],"uniqueKey":"tool_resources.oneOf.0.file_search.oneOf.0.vector_stores.items.[INDEX].chunking_strategy","typeLabel":"Auto Chunking Strategy · object | Static Chunking Strategy · object"},"metadata":{"type":"object","description":"Set of 16 key-value pairs that can be attached to a vector store. This can be useful for storing additional information about the vector store in a structured format. Keys can be a maximum of 64 characters long and values can be a maxium of 512 characters long.\n","x-oaiTypeLabel":"map","uniqueKey":"tool_resources.oneOf.0.file_search.oneOf.0.vector_stores.items.[INDEX].metadata","typeLabel":"object"}},"uniqueKey":"tool_resources.oneOf.0.file_search.oneOf.0.vector_stores.items.[INDEX]","typeLabel":"object"},"uniqueKey":"tool_resources.oneOf.0.file_search.oneOf.0.vector_stores","typeLabel":"object[]"}},"uniqueKey":"tool_resources.oneOf.0.file_search.oneOf.0","typeLabel":"object"},{"type":"object","required":["vector_stores"],"properties":{"vector_stores":{"type":"array","description":"A helper to create a [vector store](https://platform.openai.com/docs/api-reference/vector-stores/object) with file_ids and attach it to this assistant. There can be a maximum of 1 vector store attached to the assistant.\n","maxItems":1,"items":{"type":"object","properties":{"file_ids":{"type":"array","description":"A list of [file](https://platform.openai.com/docs/api-reference/files) IDs to add to the vector store. There can be a maximum of 10000 files in a vector store.\n","maxItems":10000,"items":{"type":"string","uniqueKey":"tool_resources.oneOf.0.file_search.oneOf.1.vector_stores.items.[INDEX].file_ids.items.[INDEX]","typeLabel":"string"},"uniqueKey":"tool_resources.oneOf.0.file_search.oneOf.1.vector_stores.items.[INDEX].file_ids","typeLabel":"string[]"},"chunking_strategy":{"oneOf":[{"type":"object","title":"Auto Chunking Strategy","description":"The default strategy. This strategy currently uses a `max_chunk_size_tokens` of `800` and `chunk_overlap_tokens` of `400`.","required":["type"],"x-oaiExpandable":true,"properties":{"type":{"type":"string","description":"Always `auto`.","enum":["auto"],"isRequired":true,"uniqueKey":"tool_resources.oneOf.0.file_search.oneOf.1.vector_stores.items.[INDEX].chunking_strategy.oneOf.0.type","typeLabel":"enum\u003cstring>"}},"additionalProperties":false,"uniqueKey":"tool_resources.oneOf.0.file_search.oneOf.1.vector_stores.items.[INDEX].chunking_strategy.oneOf.0","typeLabel":"Auto Chunking Strategy · object"},{"type":"object","title":"Static Chunking Strategy","description":"The chunking strategy used to chunk the file(s). If not set, will use the `auto` strategy.","required":["type","static"],"x-oaiExpandable":true,"properties":{"type":{"type":"string","description":"Always `static`.","enum":["static"],"isRequired":true,"uniqueKey":"tool_resources.oneOf.0.file_search.oneOf.1.vector_stores.items.[INDEX].chunking_strategy.oneOf.1.type","typeLabel":"enum\u003cstring>"},"static":{"type":"object","additionalProperties":false,"properties":{"max_chunk_size_tokens":{"type":"integer","minimum":100,"maximum":4096,"description":"The maximum number of tokens in each chunk. The default value is `800`. The minimum value is `100` and the maximum value is `4096`.","isRequired":true,"uniqueKey":"tool_resources.oneOf.0.file_search.oneOf.1.vector_stores.items.[INDEX].chunking_strategy.oneOf.1.static.max_chunk_size_tokens","typeLabel":"integer"},"chunk_overlap_tokens":{"type":"integer","description":"The number of tokens that overlap between chunks. The default value is `400`.\n\nNote that the overlap must not exceed half of `max_chunk_size_tokens`.\n","isRequired":true,"uniqueKey":"tool_resources.oneOf.0.file_search.oneOf.1.vector_stores.items.[INDEX].chunking_strategy.oneOf.1.static.chunk_overlap_tokens","typeLabel":"integer"}},"required":["max_chunk_size_tokens","chunk_overlap_tokens"],"isRequired":true,"uniqueKey":"tool_resources.oneOf.0.file_search.oneOf.1.vector_stores.items.[INDEX].chunking_strategy.oneOf.1.static","typeLabel":"object"}},"additionalProperties":false,"uniqueKey":"tool_resources.oneOf.0.file_search.oneOf.1.vector_stores.items.[INDEX].chunking_strategy.oneOf.1","typeLabel":"Static Chunking Strategy · object"}],"uniqueKey":"tool_resources.oneOf.0.file_search.oneOf.1.vector_stores.items.[INDEX].chunking_strategy","typeLabel":"Auto Chunking Strategy · object | Static Chunking Strategy · object"},"metadata":{"type":"object","description":"Set of 16 key-value pairs that can be attached to a vector store. This can be useful for storing additional information about the vector store in a structured format. Keys can be a maximum of 64 characters long and values can be a maxium of 512 characters long.\n","x-oaiTypeLabel":"map","uniqueKey":"tool_resources.oneOf.0.file_search.oneOf.1.vector_stores.items.[INDEX].metadata","typeLabel":"object"}},"uniqueKey":"tool_resources.oneOf.0.file_search.oneOf.1.vector_stores.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"tool_resources.oneOf.0.file_search.oneOf.1.vector_stores","typeLabel":"object[]"},"vector_store_ids":{"type":"array","description":"The [vector store](https://platform.openai.com/docs/api-reference/vector-stores/object) attached to this assistant. There can be a maximum of 1 vector store attached to the assistant.\n","maxItems":1,"items":{"type":"string","uniqueKey":"tool_resources.oneOf.0.file_search.oneOf.1.vector_store_ids.items.[INDEX]","typeLabel":"string"},"uniqueKey":"tool_resources.oneOf.0.file_search.oneOf.1.vector_store_ids","typeLabel":"string[]"}},"uniqueKey":"tool_resources.oneOf.0.file_search.oneOf.1","typeLabel":"object"}],"uniqueKey":"tool_resources.oneOf.0.file_search","typeLabel":"object"}},"uniqueKey":"tool_resources.oneOf.0","typeLabel":"object"},{"type":"null","description":"A set of resources that are used by the assistant's tools. The resources are specific to the type of tool. For example, the `code_interpreter` tool requires a list of file IDs, while the `file_search` tool requires a list of vector store IDs.\n","properties":{"code_interpreter":{"type":"object","properties":{"file_ids":{"type":"array","description":"A list of [file](https://platform.openai.com/docs/api-reference/files) IDs made available to the `code_interpreter` tool. There can be a maximum of 20 files associated with the tool.\n","default":[],"maxItems":20,"items":{"type":"string"}}}},"file_search":{"oneOf":[{"type":"object","required":["vector_store_ids"],"properties":{"vector_store_ids":{"type":"array","description":"The [vector store](https://platform.openai.com/docs/api-reference/vector-stores/object) attached to this assistant. There can be a maximum of 1 vector store attached to the assistant.\n","maxItems":1,"items":{"type":"string"}},"vector_stores":{"type":"array","description":"A helper to create a [vector store](https://platform.openai.com/docs/api-reference/vector-stores/object) with file_ids and attach it to this assistant. There can be a maximum of 1 vector store attached to the assistant.\n","maxItems":1,"items":{"type":"object","properties":{"file_ids":{"type":"array","description":"A list of [file](https://platform.openai.com/docs/api-reference/files) IDs to add to the vector store. There can be a maximum of 10000 files in a vector store.\n","maxItems":10000,"items":{"type":"string"}},"chunking_strategy":{"oneOf":[{"type":"object","title":"Auto Chunking Strategy","description":"The default strategy. This strategy currently uses a `max_chunk_size_tokens` of `800` and `chunk_overlap_tokens` of `400`.","required":["type"],"x-oaiExpandable":true,"properties":{"type":{"type":"string","description":"Always `auto`.","enum":["auto"]}},"additionalProperties":false},{"type":"object","title":"Static Chunking Strategy","description":"The chunking strategy used to chunk the file(s). If not set, will use the `auto` strategy.","required":["type","static"],"x-oaiExpandable":true,"properties":{"type":{"type":"string","description":"Always `static`.","enum":["static"]},"static":{"type":"object","additionalProperties":false,"properties":{"max_chunk_size_tokens":{"type":"integer","minimum":100,"maximum":4096,"description":"The maximum number of tokens in each chunk. The default value is `800`. The minimum value is `100` and the maximum value is `4096`."},"chunk_overlap_tokens":{"type":"integer","description":"The number of tokens that overlap between chunks. The default value is `400`.\n\nNote that the overlap must not exceed half of `max_chunk_size_tokens`.\n"}},"required":["max_chunk_size_tokens","chunk_overlap_tokens"]}},"additionalProperties":false}]},"metadata":{"type":"object","description":"Set of 16 key-value pairs that can be attached to a vector store. This can be useful for storing additional information about the vector store in a structured format. Keys can be a maximum of 64 characters long and values can be a maxium of 512 characters long.\n","x-oaiTypeLabel":"map"}}}}}},{"type":"object","required":["vector_stores"],"properties":{"vector_store_ids":{"type":"array","description":"The [vector store](https://platform.openai.com/docs/api-reference/vector-stores/object) attached to this assistant. There can be a maximum of 1 vector store attached to the assistant.\n","maxItems":1,"items":{"type":"string"}},"vector_stores":{"type":"array","description":"A helper to create a [vector store](https://platform.openai.com/docs/api-reference/vector-stores/object) with file_ids and attach it to this assistant. There can be a maximum of 1 vector store attached to the assistant.\n","maxItems":1,"items":{"type":"object","properties":{"file_ids":{"type":"array","description":"A list of [file](https://platform.openai.com/docs/api-reference/files) IDs to add to the vector store. There can be a maximum of 10000 files in a vector store.\n","maxItems":10000,"items":{"type":"string"}},"chunking_strategy":{"oneOf":[{"type":"object","title":"Auto Chunking Strategy","description":"The default strategy. This strategy currently uses a `max_chunk_size_tokens` of `800` and `chunk_overlap_tokens` of `400`.","required":["type"],"x-oaiExpandable":true,"properties":{"type":{"type":"string","description":"Always `auto`.","enum":["auto"]}},"additionalProperties":false},{"type":"object","title":"Static Chunking Strategy","description":"The chunking strategy used to chunk the file(s). If not set, will use the `auto` strategy.","required":["type","static"],"x-oaiExpandable":true,"properties":{"type":{"type":"string","description":"Always `static`.","enum":["static"]},"static":{"type":"object","additionalProperties":false,"properties":{"max_chunk_size_tokens":{"type":"integer","minimum":100,"maximum":4096,"description":"The maximum number of tokens in each chunk. The default value is `800`. The minimum value is `100` and the maximum value is `4096`."},"chunk_overlap_tokens":{"type":"integer","description":"The number of tokens that overlap between chunks. The default value is `400`.\n\nNote that the overlap must not exceed half of `max_chunk_size_tokens`.\n"}},"required":["max_chunk_size_tokens","chunk_overlap_tokens"]}},"additionalProperties":false}]},"metadata":{"type":"object","description":"Set of 16 key-value pairs that can be attached to a vector store. This can be useful for storing additional information about the vector store in a structured format. Keys can be a maximum of 64 characters long and values can be a maxium of 512 characters long.\n","x-oaiTypeLabel":"map"}}}}}}]}},"uniqueKey":"tool_resources.oneOf.1","typeLabel":"null"}],"uniqueKey":"tool_resources","typeLabel":"object | null"},"metadata":{"oneOf":[{"description":"Set of 16 key-value pairs that can be attached to an object. This can be useful for storing additional information about the object in a structured format. Keys can be a maximum of 64 characters long and values can be a maxium of 512 characters long.\n","type":"object","x-oaiTypeLabel":"map","uniqueKey":"metadata.oneOf.0","typeLabel":"object"},{"description":"Set of 16 key-value pairs that can be attached to an object. This can be useful for storing additional information about the object in a structured format. Keys can be a maximum of 64 characters long and values can be a maxium of 512 characters long.\n","type":"null","x-oaiTypeLabel":"map","uniqueKey":"metadata.oneOf.1","typeLabel":"null"}],"uniqueKey":"metadata","typeLabel":"object | null"},"temperature":{"oneOf":[{"description":"What sampling temperature to use, between 0 and 2. Higher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic.\n","type":"number","minimum":0,"maximum":2,"default":1,"example":1,"uniqueKey":"temperature.oneOf.0","typeLabel":"number"},{"description":"What sampling temperature to use, between 0 and 2. Higher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic.\n","type":"null","minimum":0,"maximum":2,"default":1,"example":1,"uniqueKey":"temperature.oneOf.1","typeLabel":"null"}],"uniqueKey":"temperature","typeLabel":"number | null"},"top_p":{"oneOf":[{"type":"number","minimum":0,"maximum":1,"default":1,"example":1,"description":"An alternative to sampling with temperature, called nucleus sampling, where the model considers the results of the tokens with top_p probability mass. So 0.1 means only the tokens comprising the top 10% probability mass are considered.\n\nWe generally recommend altering this or temperature but not both.\n","uniqueKey":"top_p.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"maximum":1,"default":1,"example":1,"description":"An alternative to sampling with temperature, called nucleus sampling, where the model considers the results of the tokens with top_p probability mass. So 0.1 means only the tokens comprising the top 10% probability mass are considered.\n\nWe generally recommend altering this or temperature but not both.\n","uniqueKey":"top_p.oneOf.1","typeLabel":"null"}],"uniqueKey":"top_p","typeLabel":"number | null"},"response_format":{"oneOf":[{"type":"string","description":"Specifies the format that the model must output. Compatible with [GPT-4o](https://platform.openai.com/docs/models/gpt-4o), [GPT-4 Turbo](https://platform.openai.com/docs/models/gpt-4-turbo-and-gpt-4), and all GPT-3.5 Turbo models since `gpt-3.5-turbo-1106`.\n\nSetting to `{ \"type\": \"json_object\" }` enables JSON mode, which guarantees the message the model generates is valid JSON.\n\n**Important:** when using JSON mode, you **must** also instruct the model to produce JSON yourself via a system or user message. Without this, the model may generate an unending stream of whitespace until the generation reaches the token limit, resulting in a long-running and seemingly \"stuck\" request. Also note that the message content may be partially cut off if `finish_reason=\"length\"`, which indicates the generation exceeded `max_tokens` or the conversation exceeded the max context length.\n","enum":["none","auto"],"x-oaiExpandable":true,"uniqueKey":"response_format.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"object","description":"Specifies the format that the model must output. Compatible with [GPT-4o](https://platform.openai.com/docs/models/gpt-4o), [GPT-4 Turbo](https://platform.openai.com/docs/models/gpt-4-turbo-and-gpt-4), and all GPT-3.5 Turbo models since `gpt-3.5-turbo-1106`.\n\nSetting to `{ \"type\": \"json_object\" }` enables JSON mode, which guarantees the message the model generates is valid JSON.\n\n**Important:** when using JSON mode, you **must** also instruct the model to produce JSON yourself via a system or user message. Without this, the model may generate an unending stream of whitespace until the generation reaches the token limit, resulting in a long-running and seemingly \"stuck\" request. Also note that the message content may be partially cut off if `finish_reason=\"length\"`, which indicates the generation exceeded `max_tokens` or the conversation exceeded the max context length.\n","x-oaiExpandable":true,"properties":{"type":{"type":"string","enum":["text","json_object"],"example":"json_object","default":"text","description":"Must be one of `text` or `json_object`.","uniqueKey":"response_format.oneOf.1.type","typeLabel":"enum\u003cstring>"}},"uniqueKey":"response_format.oneOf.1","typeLabel":"object"},{"type":"null","uniqueKey":"response_format.oneOf.2","typeLabel":"null"}],"uniqueKey":"response_format","typeLabel":"enum\u003cstring> | object | null"}},"required":["model"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"model":"gpt-4-turbo","name":"\u003cstring>","description":"\u003cstring>","instructions":"\u003cstring>","tools":[],"tool_resources":{"code_interpreter":{"file_ids":[]},"file_search":{"vector_store_ids":["\u003cstring>"],"vector_stores":[{"file_ids":["\u003cstring>"],"chunking_strategy":{"type":"auto"},"metadata":{}}]}},"metadata":{},"temperature":1,"top_p":1}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"de298dc7-a253-48e8-b012-5f45a11e8cc9":{"description":"OK","content":{"application/json":{"schema":{"type":"object","title":"Assistant","description":"Represents an `assistant` that can call the model and use tools.","properties":{"id":{"description":"The identifier, which can be referenced in API endpoints.","type":"string","isRequired":true,"uniqueKey":"id","typeLabel":"string"},"object":{"description":"The object type, which is always `assistant`.","type":"string","enum":["assistant"],"isRequired":true,"uniqueKey":"object","typeLabel":"enum\u003cstring>"},"created_at":{"description":"The Unix timestamp (in seconds) for when the assistant was created.","type":"integer","isRequired":true,"uniqueKey":"created_at","typeLabel":"integer"},"name":{"oneOf":[{"description":"The name of the assistant. The maximum length is 256 characters.\n","type":"string","maxLength":256,"isRequired":true,"uniqueKey":"name.oneOf.0","typeLabel":"string"},{"description":"The name of the assistant. The maximum length is 256 characters.\n","type":"null","maxLength":256,"isRequired":true,"uniqueKey":"name.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"name","typeLabel":"string | null"},"description":{"oneOf":[{"description":"The description of the assistant. The maximum length is 512 characters.\n","type":"string","maxLength":512,"isRequired":true,"uniqueKey":"description.oneOf.0","typeLabel":"string"},{"description":"The description of the assistant. The maximum length is 512 characters.\n","type":"null","maxLength":512,"isRequired":true,"uniqueKey":"description.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"description","typeLabel":"string | null"},"model":{"description":"ID of the model to use. You can use the [List models](https://platform.openai.com/docs/api-reference/models/list) API to see all of your available models, or see our [Model overview](https://platform.openai.com/docs/models/overview) for descriptions of them.\n","type":"string","isRequired":true,"uniqueKey":"model","typeLabel":"string"},"instructions":{"oneOf":[{"description":"The system instructions that the assistant uses. The maximum length is 256,000 characters.\n","type":"string","maxLength":256000,"isRequired":true,"uniqueKey":"instructions.oneOf.0","typeLabel":"string"},{"description":"The system instructions that the assistant uses. The maximum length is 256,000 characters.\n","type":"null","maxLength":256000,"isRequired":true,"uniqueKey":"instructions.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"instructions","typeLabel":"string | null"},"tools":{"description":"A list of tool enabled on the assistant. There can be a maximum of 128 tools per assistant. Tools can be of types `code_interpreter`, `file_search`, or `function`.\n","default":[],"type":"array","maxItems":128,"items":{"oneOf":[{"type":"object","title":"Code interpreter tool","required":["type"],"x-oaiExpandable":true,"properties":{"type":{"type":"string","description":"The type of tool being defined: `code_interpreter`","enum":["code_interpreter"],"isRequired":true,"uniqueKey":"tools.items.[INDEX].oneOf.0.type","typeLabel":"enum\u003cstring>"}},"uniqueKey":"tools.items.[INDEX].oneOf.0","typeLabel":"Code interpreter tool · object"},{"type":"object","title":"FileSearch tool","required":["type"],"x-oaiExpandable":true,"properties":{"type":{"type":"string","description":"The type of tool being defined: `file_search`","enum":["file_search"],"isRequired":true,"uniqueKey":"tools.items.[INDEX].oneOf.1.type","typeLabel":"enum\u003cstring>"},"file_search":{"type":"object","description":"Overrides for the file search tool.","properties":{"max_num_results":{"type":"integer","minimum":1,"maximum":50,"description":"The maximum number of results the file search tool should output. The default is 20 for gpt-4* models and 5 for gpt-3.5-turbo. This number should be between 1 and 50 inclusive.\n\nNote that the file search tool may output fewer than `max_num_results` results. See the [file search tool documentation](https://platform.openai.com/docs/assistants/tools/file-search/number-of-chunks-returned) for more information.\n","uniqueKey":"tools.items.[INDEX].oneOf.1.file_search.max_num_results","typeLabel":"integer"}},"uniqueKey":"tools.items.[INDEX].oneOf.1.file_search","typeLabel":"object"}},"uniqueKey":"tools.items.[INDEX].oneOf.1","typeLabel":"FileSearch tool · object"},{"type":"object","title":"Function tool","required":["type","function"],"x-oaiExpandable":true,"properties":{"type":{"type":"string","description":"The type of tool being defined: `function`","enum":["function"],"isRequired":true,"uniqueKey":"tools.items.[INDEX].oneOf.2.type","typeLabel":"enum\u003cstring>"},"function":{"type":"object","properties":{"name":{"type":"string","description":"The name of the function to be called. Must be a-z, A-Z, 0-9, or contain underscores and dashes, with a maximum length of 64.","isRequired":true,"uniqueKey":"tools.items.[INDEX].oneOf.2.function.name","typeLabel":"string"},"description":{"type":"string","description":"A description of what the function does, used by the model to choose when and how to call the function.","uniqueKey":"tools.items.[INDEX].oneOf.2.function.description","typeLabel":"string"},"parameters":{"type":"object","description":"The parameters the functions accepts, described as a JSON Schema object. See the [guide](https://platform.openai.com/docs/guides/function-calling) for examples, and the [JSON Schema reference](https://json-schema.org/understanding-json-schema/) for documentation about the format. \n\nOmitting `parameters` defines a function with an empty parameter list.","additionalProperties":true,"uniqueKey":"tools.items.[INDEX].oneOf.2.function.parameters","typeLabel":"object"},"strict":{"oneOf":[{"type":"boolean","default":false,"description":"Whether to enable strict schema adherence when generating the function call. If set to true, the model will follow the exact schema defined in the `parameters` field. Only a subset of JSON Schema is supported when `strict` is `true`. Learn more about Structured Outputs in the [function calling guide](docs/guides/function-calling).","uniqueKey":"tools.items.[INDEX].oneOf.2.function.strict.oneOf.0","typeLabel":"boolean"},{"type":"null","default":false,"description":"Whether to enable strict schema adherence when generating the function call. If set to true, the model will follow the exact schema defined in the `parameters` field. Only a subset of JSON Schema is supported when `strict` is `true`. Learn more about Structured Outputs in the [function calling guide](docs/guides/function-calling).","uniqueKey":"tools.items.[INDEX].oneOf.2.function.strict.oneOf.1","typeLabel":"null"}],"uniqueKey":"tools.items.[INDEX].oneOf.2.function.strict","typeLabel":"boolean | null"}},"required":["name"],"isRequired":true,"uniqueKey":"tools.items.[INDEX].oneOf.2.function","typeLabel":"object"}},"uniqueKey":"tools.items.[INDEX].oneOf.2","typeLabel":"Function tool · object"}],"uniqueKey":"tools.items.[INDEX]","typeLabel":"Code interpreter tool · object | FileSearch tool · object | Function tool · object"},"isRequired":true,"uniqueKey":"tools","typeLabel":"(Code interpreter tool · object | FileSearch tool · object | Function tool · object)[]"},"metadata":{"oneOf":[{"description":"Set of 16 key-value pairs that can be attached to an object. This can be useful for storing additional information about the object in a structured format. Keys can be a maximum of 64 characters long and values can be a maxium of 512 characters long.\n","type":"object","x-oaiTypeLabel":"map","isRequired":true,"uniqueKey":"metadata.oneOf.0","typeLabel":"object"},{"description":"Set of 16 key-value pairs that can be attached to an object. This can be useful for storing additional information about the object in a structured format. Keys can be a maximum of 64 characters long and values can be a maxium of 512 characters long.\n","type":"null","x-oaiTypeLabel":"map","isRequired":true,"uniqueKey":"metadata.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"metadata","typeLabel":"object | null"},"tool_resources":{"oneOf":[{"type":"object","description":"A set of resources that are used by the assistant's tools. The resources are specific to the type of tool. For example, the `code_interpreter` tool requires a list of file IDs, while the `file_search` tool requires a list of vector store IDs.\n","properties":{"code_interpreter":{"type":"object","properties":{"file_ids":{"type":"array","description":"A list of [file](https://platform.openai.com/docs/api-reference/files) IDs made available to the `code_interpreter`` tool. There can be a maximum of 20 files associated with the tool.\n","default":[],"maxItems":20,"items":{"type":"string","uniqueKey":"tool_resources.oneOf.0.code_interpreter.file_ids.items.[INDEX]","typeLabel":"string"},"uniqueKey":"tool_resources.oneOf.0.code_interpreter.file_ids","typeLabel":"string[]"}},"uniqueKey":"tool_resources.oneOf.0.code_interpreter","typeLabel":"object"},"file_search":{"type":"object","properties":{"vector_store_ids":{"type":"array","description":"The ID of the [vector store](https://platform.openai.com/docs/api-reference/vector-stores/object) attached to this assistant. There can be a maximum of 1 vector store attached to the assistant.\n","maxItems":1,"items":{"type":"string","uniqueKey":"tool_resources.oneOf.0.file_search.vector_store_ids.items.[INDEX]","typeLabel":"string"},"uniqueKey":"tool_resources.oneOf.0.file_search.vector_store_ids","typeLabel":"string[]"}},"uniqueKey":"tool_resources.oneOf.0.file_search","typeLabel":"object"}},"uniqueKey":"tool_resources.oneOf.0","typeLabel":"object"},{"type":"null","description":"A set of resources that are used by the assistant's tools. The resources are specific to the type of tool. For example, the `code_interpreter` tool requires a list of file IDs, while the `file_search` tool requires a list of vector store IDs.\n","properties":{"code_interpreter":{"type":"object","properties":{"file_ids":{"type":"array","description":"A list of [file](https://platform.openai.com/docs/api-reference/files) IDs made available to the `code_interpreter`` tool. There can be a maximum of 20 files associated with the tool.\n","default":[],"maxItems":20,"items":{"type":"string"}}}},"file_search":{"type":"object","properties":{"vector_store_ids":{"type":"array","description":"The ID of the [vector store](https://platform.openai.com/docs/api-reference/vector-stores/object) attached to this assistant. There can be a maximum of 1 vector store attached to the assistant.\n","maxItems":1,"items":{"type":"string"}}}}},"uniqueKey":"tool_resources.oneOf.1","typeLabel":"null"}],"uniqueKey":"tool_resources","typeLabel":"object | null"},"temperature":{"oneOf":[{"description":"What sampling temperature to use, between 0 and 2. Higher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic.\n","type":"number","minimum":0,"maximum":2,"default":1,"example":1,"uniqueKey":"temperature.oneOf.0","typeLabel":"number"},{"description":"What sampling temperature to use, between 0 and 2. Higher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic.\n","type":"null","minimum":0,"maximum":2,"default":1,"example":1,"uniqueKey":"temperature.oneOf.1","typeLabel":"null"}],"uniqueKey":"temperature","typeLabel":"number | null"},"top_p":{"oneOf":[{"type":"number","minimum":0,"maximum":1,"default":1,"example":1,"description":"An alternative to sampling with temperature, called nucleus sampling, where the model considers the results of the tokens with top_p probability mass. So 0.1 means only the tokens comprising the top 10% probability mass are considered.\n\nWe generally recommend altering this or temperature but not both.\n","uniqueKey":"top_p.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"maximum":1,"default":1,"example":1,"description":"An alternative to sampling with temperature, called nucleus sampling, where the model considers the results of the tokens with top_p probability mass. So 0.1 means only the tokens comprising the top 10% probability mass are considered.\n\nWe generally recommend altering this or temperature but not both.\n","uniqueKey":"top_p.oneOf.1","typeLabel":"null"}],"uniqueKey":"top_p","typeLabel":"number | null"},"response_format":{"oneOf":[{"type":"string","description":"Specifies the format that the model must output. Compatible with [GPT-4o](https://platform.openai.com/docs/models/gpt-4o), [GPT-4 Turbo](https://platform.openai.com/docs/models/gpt-4-turbo-and-gpt-4), and all GPT-3.5 Turbo models since `gpt-3.5-turbo-1106`.\n\nSetting to `{ \"type\": \"json_object\" }` enables JSON mode, which guarantees the message the model generates is valid JSON.\n\n**Important:** when using JSON mode, you **must** also instruct the model to produce JSON yourself via a system or user message. Without this, the model may generate an unending stream of whitespace until the generation reaches the token limit, resulting in a long-running and seemingly \"stuck\" request. Also note that the message content may be partially cut off if `finish_reason=\"length\"`, which indicates the generation exceeded `max_tokens` or the conversation exceeded the max context length.\n","enum":["none","auto"],"x-oaiExpandable":true,"uniqueKey":"response_format.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"object","description":"Specifies the format that the model must output. Compatible with [GPT-4o](https://platform.openai.com/docs/models/gpt-4o), [GPT-4 Turbo](https://platform.openai.com/docs/models/gpt-4-turbo-and-gpt-4), and all GPT-3.5 Turbo models since `gpt-3.5-turbo-1106`.\n\nSetting to `{ \"type\": \"json_object\" }` enables JSON mode, which guarantees the message the model generates is valid JSON.\n\n**Important:** when using JSON mode, you **must** also instruct the model to produce JSON yourself via a system or user message. Without this, the model may generate an unending stream of whitespace until the generation reaches the token limit, resulting in a long-running and seemingly \"stuck\" request. Also note that the message content may be partially cut off if `finish_reason=\"length\"`, which indicates the generation exceeded `max_tokens` or the conversation exceeded the max context length.\n","x-oaiExpandable":true,"properties":{"type":{"type":"string","enum":["text","json_object"],"example":"json_object","default":"text","description":"Must be one of `text` or `json_object`.","uniqueKey":"response_format.oneOf.1.type","typeLabel":"enum\u003cstring>"}},"uniqueKey":"response_format.oneOf.1","typeLabel":"object"},{"type":"null","uniqueKey":"response_format.oneOf.2","typeLabel":"null"}],"uniqueKey":"response_format","typeLabel":"enum\u003cstring> | object | null"}},"required":["id","object","created_at","name","description","model","instructions","tools","metadata"],"x-code-samples":{"name":"The assistant object","beta":true,"example":"{\n \"id\": \"asst_abc123\",\n \"object\": \"assistant\",\n \"created_at\": 1698984975,\n \"name\": \"Math Tutor\",\n \"description\": null,\n \"model\": \"gpt-4-turbo\",\n \"instructions\": \"You are a personal math tutor. When asked a question, write and run Python code to answer the question.\",\n \"tools\": [\n {\n \"type\": \"code_interpreter\"\n }\n ],\n \"metadata\": {},\n \"top_p\": 1.0,\n \"temperature\": 1.0,\n \"response_format\": \"auto\"\n}\n"},"uniqueKey":"","typeLabel":"Assistant · object"},"examples":{"Example":{"title":"Example","value":{"id":"\u003cstring>","object":"assistant","created_at":123,"name":"\u003cstring>","description":"\u003cstring>","model":"\u003cstring>","instructions":"\u003cstring>","tools":[],"metadata":{},"tool_resources":{"code_interpreter":{"file_ids":[]},"file_search":{"vector_store_ids":["\u003cstring>"]}},"temperature":1,"top_p":1,"response_format":"none"}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"ad26cdeb-a428-482d-994b-272f7a4a2f72":{"Portkey-Key":{"type":"apiKey","in":"header","name":"x-portkey-api-key","scopes":[],"schemeName":"Portkey-Key"},"Virtual-Key":{"type":"apiKey","in":"header","name":"x-portkey-virtual-key","scopes":[],"schemeName":"Virtual-Key"}},"f29b702b-a537-4e85-8a8c-fbb2a117bd93":{"Portkey-Key":{"type":"apiKey","in":"header","name":"x-portkey-api-key","scopes":[],"schemeName":"Portkey-Key"},"Provider-Auth":{"type":"http","scheme":"bearer","scopes":[],"schemeName":"Provider-Auth"},"Provider-Name":{"type":"apiKey","in":"header","name":"x-portkey-provider","scopes":[],"schemeName":"Provider-Name"}},"6ede8b39-9c1b-4dd4-b205-e4dd5032322c":{"Portkey-Key":{"type":"apiKey","in":"header","name":"x-portkey-api-key","scopes":[],"schemeName":"Portkey-Key"},"Config":{"type":"apiKey","in":"header","name":"x-portkey-config","scopes":[],"schemeName":"Config"}},"8427638d-b942-41b1-82a0-ea2cc442ad65":{"Portkey-Key":{"type":"apiKey","in":"header","name":"x-portkey-api-key","scopes":[],"schemeName":"Portkey-Key"},"Provider-Auth":{"type":"http","scheme":"bearer","scopes":[],"schemeName":"Provider-Auth"},"Provider-Name":{"type":"apiKey","in":"header","name":"x-portkey-provider","scopes":[],"schemeName":"Provider-Name"},"Custom-Host":{"type":"apiKey","in":"header","name":"x-portkey-custom-host","scopes":[],"schemeName":"Custom-Host"}}},"servers":{"61827aa0-7550-46a2-bb95-6d9b6dc01fc7":{"url":"https://api.portkey.ai/v1","description":"Portkey API Public Endpoint"},"a5b88f86-e4b5-41ee-ad58-6b9a47dfd7cc":{"url":"SELF_HOSTED_GATEWAY_URL","description":"Self-Hosted Gateway URL"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"apiKey","in":"header","name":"x-portkey-api-key","scopes":[],"schemeName":"Portkey-Key"},"schema":{"title":"x-portkey-api-key","type":"string","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"Portkey-Key","name":"x-portkey-api-key"},{"scheme":{"type":"apiKey","in":"header","name":"x-portkey-virtual-key","scopes":[],"schemeName":"Virtual-Key"},"schema":{"title":"x-portkey-virtual-key","type":"string","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"Virtual-Key","name":"x-portkey-virtual-key"}],"title":"Portkey-Key \u0026 Virtual-Key"},{"schemes":[{"scheme":{"type":"apiKey","in":"header","name":"x-portkey-api-key","scopes":[],"schemeName":"Portkey-Key"},"schema":{"title":"x-portkey-api-key","type":"string","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"Portkey-Key","name":"x-portkey-api-key"},{"scheme":{"type":"http","scheme":"bearer","scopes":[],"schemeName":"Provider-Auth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Bearer authentication header of the form `Bearer \u003ctoken>`, where `\u003ctoken>` is your auth token.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"Provider-Auth","name":"Authorization"},{"scheme":{"type":"apiKey","in":"header","name":"x-portkey-provider","scopes":[],"schemeName":"Provider-Name"},"schema":{"title":"x-portkey-provider","type":"string","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"Provider-Name","name":"x-portkey-provider"}],"title":"Portkey-Key \u0026 Provider-Auth \u0026 Provider-Name"},{"schemes":[{"scheme":{"type":"apiKey","in":"header","name":"x-portkey-api-key","scopes":[],"schemeName":"Portkey-Key"},"schema":{"title":"x-portkey-api-key","type":"string","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"Portkey-Key","name":"x-portkey-api-key"},{"scheme":{"type":"apiKey","in":"header","name":"x-portkey-config","scopes":[],"schemeName":"Config"},"schema":{"title":"x-portkey-config","type":"string","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"Config","name":"x-portkey-config"}],"title":"Portkey-Key \u0026 Config"},{"schemes":[{"scheme":{"type":"apiKey","in":"header","name":"x-portkey-api-key","scopes":[],"schemeName":"Portkey-Key"},"schema":{"title":"x-portkey-api-key","type":"string","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"Portkey-Key","name":"x-portkey-api-key"},{"scheme":{"type":"http","scheme":"bearer","scopes":[],"schemeName":"Provider-Auth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Bearer authentication header of the form `Bearer \u003ctoken>`, where `\u003ctoken>` is your auth token.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"Provider-Auth","name":"Authorization"},{"scheme":{"type":"apiKey","in":"header","name":"x-portkey-provider","scopes":[],"schemeName":"Provider-Name"},"schema":{"title":"x-portkey-provider","type":"string","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"Provider-Name","name":"x-portkey-provider"},{"scheme":{"type":"apiKey","in":"header","name":"x-portkey-custom-host","scopes":[],"schemeName":"Custom-Host"},"schema":{"title":"x-portkey-custom-host","type":"string","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"Custom-Host","name":"x-portkey-custom-host"}],"title":"Portkey-Key \u0026 Provider-Auth \u0026 Provider-Name \u0026 Custom-Host"}]},"originalFileLocation":"https://raw.githubusercontent.com/Portkey-AI/openapi/refs/heads/master/openapi.yaml"},"subdomain":"portkey-docs","siteName":"Portkey (Prisma AIRS AI Gateway) Docs","title":"Create Assistant - Portkey (Prisma AIRS AI Gateway) Docs","relatedPagesConfig":{"enabled":true,"limit":5,"mode":"automatic"},"contextualStarterQuestions":[{"_id":"6aa971b10031bd0287c96434","deploymentId":"67086365a151447bf2fa5021","questionText":"Can I customize assistant behavior?","status":"active","generatedBy":"contextual","path":"api-reference/inference-api/assistants-api/assistants/create-assistant","createdAt":"2026-09-15T16:26:25.746Z","updatedAt":"2026-09-15T16:26:25.746Z","__v":0},{"_id":"6aa971b10031bd0287c96432","deploymentId":"67086365a151447bf2fa5021","questionText":"How do I create an assistant?","status":"active","generatedBy":"contextual","path":"api-reference/inference-api/assistants-api/assistants/create-assistant","createdAt":"2026-09-15T16:26:25.746Z","updatedAt":"2026-09-15T16:26:25.746Z","__v":0},{"_id":"6aa971b10031bd0287c96433","deploymentId":"67086365a151447bf2fa5021","questionText":"What parameters does the API need?","status":"active","generatedBy":"contextual","path":"api-reference/inference-api/assistants-api/assistants/create-assistant","createdAt":"2026-09-15T16:26:25.746Z","updatedAt":"2026-09-15T16:26:25.746Z","__v":0}],"navMaps":{"firstHrefInVersion":{"Latest":{"href":"/api-reference/inference-api/assistants-api/assistants/create-assistant","matchLevel":0},"Prisma AIRS":{"href":"/aigw/introduction/welcome","matchLevel":4},"Virtual Keys (Deprecated)":{"href":"/api-reference/inference-api/assistants-api/assistants/create-assistant","matchLevel":0}},"firstHrefInLanguage":{}},"lastModified":"2026-09-15T13:55:28.728Z","gitLastModified":"2026-08-06T05:55:04.000Z","originalFileLocation":"api-reference/inference-api/assistants-api/assistants/create-assistant.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=\"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=\"Create Assistant - Portkey (Prisma AIRS AI Gateway) Docs\">\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/api-reference/inference-api/assistants-api/assistants/create-assistant\">\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=Assistants\u0026amp;title=Create+Assistant\u0026amp;theme=262137c9f2583e48984715e7\u0026amp;signature=10e1bd24c4b8418cf6ce324ae614e6ef347f5400e98e09fab5f74f03d2a34e9b\">\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=\"Create Assistant - Portkey (Prisma AIRS AI Gateway) Docs\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://portkey-docs.mintlify.app/_mintlify/api/og/v2?division=Assistants\u0026amp;title=Create+Assistant\u0026amp;theme=262137c9f2583e48984715e7\u0026amp;signature=10e1bd24c4b8418cf6ce324ae614e6ef347f5400e98e09fab5f74f03d2a34e9b\">\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/api-reference/inference-api/assistants-api/assistants/create-assistant\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/docs/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/docs/api-reference/inference-api/assistants-api/assistants/create-assistant.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/api-reference/inference-api/assistants-api/assistants/create-assistant#webpage\",\"url\":\"https://docs.portkey.ai/docs/api-reference/inference-api/assistants-api/assistants/create-assistant\",\"name\":\"Create Assistant\",\"dateModified\":\"2026-08-06T05:55:04.000Z\",\"isPartOf\":{\"@id\":\"https://docs.portkey.ai/docs#website\"},\"breadcrumb\":{\"@id\":\"https://docs.portkey.ai/docs/api-reference/inference-api/assistants-api/assistants/create-assistant#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.portkey.ai/docs/api-reference/inference-api/assistants-api/assistants/create-assistant#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Portkey (Prisma AIRS AI Gateway) Docs\",\"item\":\"https://docs.portkey.ai/docs\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Create Assistant\",\"item\":\"https://docs.portkey.ai/docs/api-reference/inference-api/assistants-api/assistants/create-assistant\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.portkey.ai/docs/api-reference/inference-api/assistants-api/assistants/create-assistant#apireference\",\"headline\":\"Create Assistant\",\"name\":\"Create Assistant\",\"url\":\"https://docs.portkey.ai/docs/api-reference/inference-api/assistants-api/assistants/create-assistant\",\"mainEntityOfPage\":{\"@id\":\"https://docs.portkey.ai/docs/api-reference/inference-api/assistants-api/assistants/create-assistant#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","pages":[{"title":"Docs","href":"/introduction/what-is-portkey"}]},{"tab":"Integrations","pages":[{"title":"Integrations","href":"/integrations/ecosystem"}]},{"tab":"Gateway APIs","groups":[{"group":"API Reference","pages":[{"title":"Introduction","href":"/api-reference/inference-api/introduction"},{"title":"Agentic Usage","href":"/api-reference/inference-api/agentic-usage"},{"title":"Supported Providers","href":"/api-reference/inference-api/supported-providers"},{"title":"Authentication","href":"/api-reference/inference-api/authentication"},{"title":"Headers","href":"/api-reference/inference-api/headers"},{"title":"Errors","href":"/api-reference/inference-api/error-codes"},{"title":"Response Schema","href":"/api-reference/inference-api/response-schema"},{"group":"More","pages":[{"title":"Gateway Config Object","href":"/api-reference/inference-api/config-object"},{"title":"OpenAPI Specification","url":"https://github.com/Portkey-AI/openapi","href":"/api-reference/inference-api/open-api-specification"}]}]},{"group":"SDK","pages":[{"title":"Supported SDKs","href":"/api-reference/sdk/list"},{"title":"Python","href":"/api-reference/sdk/python"},{"title":"Node.js","href":"/api-reference/sdk/node"},{"title":"C# (.NET)","href":"/api-reference/sdk/c-sharp"}]},{"group":"Chat Completions","pages":[{"title":"Chat","openapi":"post /chat/completions","href":"/api-reference/inference-api/chat"}]},{"group":"Responses","pages":[{"title":"Create a Response","openapi":"post /responses","href":"/api-reference/inference-api/responses/responses"},{"title":"Get a Response","openapi":"get /responses/{response_id}","href":"/api-reference/inference-api/responses/retrieve-response"},{"title":"Delete a Response","openapi":"delete /responses/{response_id}","href":"/api-reference/inference-api/responses/delete-response"},{"title":"List Input Items","openapi":"get /responses/{response_id}/input_items","href":"/api-reference/inference-api/responses/retrieve-inputs"}]},{"group":"Portkey Endpoints","pages":[{"title":"Prompt Completions","openapi":"post /prompts/{promptId}/completions","href":"/api-reference/inference-api/prompts/prompt-completion"},{"title":"Prompt Render","openapi":"post /prompts/{promptId}/render","href":"/api-reference/inference-api/prompts/render"},{"title":"Insert a Log","openapi":"post /logs","href":"/api-reference/admin-api/data-plane/logs/insert-a-log"},{"title":"Create Feedback","openapi":"post /feedback","href":"/api-reference/admin-api/data-plane/feedback/create-feedback"},{"title":"Update Feedback","openapi":"put /feedback/{id}","href":"/api-reference/admin-api/data-plane/feedback/update-feedback"},{"group":"Log Exports","pages":[{"title":"Retrieve a Log Export","openapi":"get /logs/exports/{exportId}","href":"/api-reference/admin-api/data-plane/logs/log-exports-beta/retrieve-a-log-export"},{"title":"Update a Log Export","openapi":"put /logs/exports/{exportId}","href":"/api-reference/admin-api/data-plane/logs/log-exports-beta/update-a-log-export"},{"title":"List a Log Export","openapi":"get /logs/exports","href":"/api-reference/admin-api/data-plane/logs/log-exports-beta/list-log-exports"},{"title":"Create a Log Export","openapi":"post /logs/exports","href":"/api-reference/admin-api/data-plane/logs/log-exports-beta/create-a-log-export"},{"title":"Start a Log Export","openapi":"post /logs/exports/{exportId}/start","href":"/api-reference/admin-api/data-plane/logs/log-exports-beta/start-a-log-export"},{"title":"Cancel a Log Export","openapi":"post /logs/exports/{exportId}/cancel","href":"/api-reference/admin-api/data-plane/logs/log-exports-beta/cancel-a-log-export"},{"title":"Delete a Log Export","openapi":"delete /logs/exports/{exportId}","href":"/api-reference/admin-api/data-plane/logs/log-exports-beta/delete-a-log-export"},{"title":"Download a Log Export","openapi":"get /logs/exports/{exportId}/download","href":"/api-reference/admin-api/data-plane/logs/log-exports-beta/download-a-log-export"}]}]},{"group":"Embeddings","pages":[{"title":"Embeddings","openapi":"post /embeddings","href":"/api-reference/inference-api/embeddings"}]},{"group":"Rerank","pages":[{"title":"Rerank","openapi":"post /rerank","href":"/api-reference/inference-api/rerank"}]},{"group":"Decisions","pages":[{"title":"Decisions","openapi":"post /decisions","href":"/api-reference/inference-api/decisions"}]},{"group":"OCR","pages":[{"title":"OCR","openapi":"post /ocr","href":"/api-reference/inference-api/ocr"}]},{"group":"Images","pages":[{"title":"Create Image","openapi":"post /images/generations","href":"/api-reference/inference-api/images/create-image"},{"title":"Create Image Edit","openapi":"post /images/edits","href":"/api-reference/inference-api/images/create-image-edit"},{"title":"Create Image Variation","openapi":"post /images/variations","href":"/api-reference/inference-api/images/create-image-variation"}]},{"group":"Models","pages":[{"title":"Models","openapi":"get /models","href":"/api-reference/inference-api/models/models"}]},{"group":"Audio","pages":[{"title":"Create Speech","openapi":"post /audio/speech","href":"/api-reference/inference-api/audio/create-speech"},{"title":"Create Transcription","openapi":"post /audio/transcriptions","href":"/api-reference/inference-api/audio/create-transcription"},{"title":"Create Translation","openapi":"post /audio/translations","href":"/api-reference/inference-api/audio/create-translation"}]},{"group":"Other APIs","pages":[{"title":"Gateway to Other APIs","icon":"chart-network","href":"/api-reference/inference-api/gateway-for-other-apis"}]},{"group":"Completions","pages":[{"title":"Completions","openapi":"post /completions","href":"/api-reference/inference-api/completions"}]},{"group":"Moderations","pages":[{"title":"Moderations","openapi":"post /moderations","href":"/api-reference/inference-api/moderations"}]},{"group":"Fine-tuning","pages":[{"title":"Create Fine-tuning Job","openapi":"post /fine_tuning/jobs","href":"/api-reference/inference-api/fine-tuning/create-fine-tuning-job"},{"title":"List Fine-tuning Jobs","openapi":"get /fine_tuning/jobs","href":"/api-reference/inference-api/fine-tuning/list-fine-tuning-jobs"},{"title":"Retrieve Fine-tuning Job","openapi":"get /fine_tuning/jobs/{fine_tuning_job_id}","href":"/api-reference/inference-api/fine-tuning/retrieve-fine-tuning-job"},{"title":"List Fine-tuning Events","openapi":"get /fine_tuning/jobs/{fine_tuning_job_id}/events","href":"/api-reference/inference-api/fine-tuning/list-fine-tuning-events"},{"title":"List Fine-tuning Checkpoints","openapi":"get /fine_tuning/jobs/{fine_tuning_job_id}/checkpoints","href":"/api-reference/inference-api/fine-tuning/list-fine-tuning-checkpoints"},{"title":"Cancel Fine-tuning","openapi":"post /fine_tuning/jobs/{fine_tuning_job_id}/cancel","href":"/api-reference/inference-api/fine-tuning/cancel-fine-tuning"}]},{"group":"Batch","pages":[{"title":"Create Batch","openapi":"post /batches","href":"/api-reference/inference-api/batch/create-batch"},{"title":"List Batch","openapi":"get /batches","href":"/api-reference/inference-api/batch/list-batch"},{"title":"Retrieve Batch","openapi":"get /batches/{batch_id}","href":"/api-reference/inference-api/batch/retrieve-batch"},{"title":"Cancel Batch","openapi":"post /batches/{batch_id}/cancel","href":"/api-reference/inference-api/batch/cancel-batch"}]},{"group":"Files","pages":[{"title":"Upload File","openapi":"post /files","href":"/api-reference/inference-api/files/upload-file"},{"title":"List Files","openapi":"get /files","href":"/api-reference/inference-api/files/list-files"},{"title":"Retrieve File","openapi":"get /files/{file_id}","href":"/api-reference/inference-api/files/retrieve-file"},{"title":"Retrieve File Content","openapi":"get /files/{file_id}/content","href":"/api-reference/inference-api/files/retrieve-file-content"},{"title":"Delete File","openapi":"delete /files/{file_id}","description":"","href":"/api-reference/inference-api/files/delete-file"}]},{"group":"Assistants","pages":[{"group":"Assistants","pages":[{"title":"Create Assistant","openapi":"post /assistants","href":"/api-reference/inference-api/assistants-api/assistants/create-assistant"},{"title":"List Assistant","openapi":"get /assistants","description":"","href":"/api-reference/inference-api/assistants-api/assistants/list-assistants"},{"title":"Retrieve Assistant","openapi":"get /assistants/{assistant_id}","href":"/api-reference/inference-api/assistants-api/assistants/retrieve-assistant"},{"title":"Modify Assistant","openapi":"post /assistants/{assistant_id}","href":"/api-reference/inference-api/assistants-api/assistants/modify-assistant"},{"title":"Delete Assistant","openapi":"delete /assistants/{assistant_id}","href":"/api-reference/inference-api/assistants-api/assistants/delete-assistant"}]},{"group":"Threads","pages":[{"title":"Create Thread","openapi":"post /threads","href":"/api-reference/inference-api/assistants-api/threads/create-thread"},{"title":"Retrieve Thread","openapi":"get /threads/{thread_id}","href":"/api-reference/inference-api/assistants-api/threads/retrieve-thread"},{"title":"Modify Thread","openapi":"post /threads/{thread_id}","href":"/api-reference/inference-api/assistants-api/threads/modify-thread"},{"title":"Delete Thread","openapi":"delete /threads/{thread_id}","href":"/api-reference/inference-api/assistants-api/threads/delete-thread"}]},{"group":"Messages","pages":[{"title":"Create Message","openapi":"post /threads/{thread_id}/messages","href":"/api-reference/inference-api/assistants-api/messages/create-message"},{"title":"List Message","openapi":"get /threads/{thread_id}/messages","href":"/api-reference/inference-api/assistants-api/messages/list-messages"},{"title":"Retrieve Message","openapi":"get /threads/{thread_id}/messages/{message_id}","href":"/api-reference/inference-api/assistants-api/messages/retrieve-message"},{"title":"Modify Message","openapi":"post /threads/{thread_id}/messages/{message_id}","href":"/api-reference/inference-api/assistants-api/messages/modify-message"},{"title":"Delete Message","openapi":"delete /threads/{thread_id}/messages/{message_id}","href":"/api-reference/inference-api/assistants-api/messages/delete-message"}]},{"group":"Runs","pages":[{"title":"Create Run","openapi":"post /threads/{thread_id}/runs","href":"/api-reference/inference-api/assistants-api/runs/create-run"},{"title":"Create thread and Run","openapi":"post /threads/runs","href":"/api-reference/inference-api/assistants-api/runs/create-thread-and-run"},{"title":"list Run","openapi":"get /threads/{thread_id}/runs","href":"/api-reference/inference-api/assistants-api/runs/list-runs"},{"title":"Retrieve Run","openapi":"get /threads/{thread_id}/runs/{run_id}","href":"/api-reference/inference-api/assistants-api/runs/retrieve-run"},{"title":"Modify Run","openapi":"post /threads/{thread_id}/runs/{run_id}","href":"/api-reference/inference-api/assistants-api/runs/modify-run"},{"title":"Submit Tool Outputs to Run","openapi":"post /threads/{thread_id}/runs/{run_id}/submit_tool_outputs","href":"/api-reference/inference-api/assistants-api/runs/submit-tool-outputs-to-run"},{"title":"Cancel Run","openapi":"post /threads/{thread_id}/runs/{run_id}/cancel","href":"/api-reference/inference-api/assistants-api/runs/cancel-run"}]},{"group":"Run Steps","pages":[{"title":"List Run Steps","openapi":"get /threads/{thread_id}/runs/{run_id}/steps","href":"/api-reference/inference-api/assistants-api/run-steps/list-run-steps"},{"title":"Retrieve Run Steps","openapi":"get /threads/{thread_id}/runs/{run_id}/steps/{step_id}","href":"/api-reference/inference-api/assistants-api/run-steps/retrieve-run-steps"}]}]}]},{"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/introduction/welcome"}]},{"version":"Virtual Keys (Deprecated)","tabs":[{"tab":"Documentation","pages":[{"title":"Documentation","href":"/virtual_key_old/introduction/what-is-portkey"}]},{"tab":"Integrations","pages":[{"title":"Integrations","href":"/virtual_key_old/integrations/ecosystem"}]},{"tab":"Inference API","groups":[{"group":"API Reference","pages":[{"title":"Introduction","href":"/api-reference/inference-api/introduction"},{"title":"Agentic Usage","href":"/api-reference/inference-api/agentic-usage"},{"title":"Supported Providers","href":"/api-reference/inference-api/supported-providers"},{"title":"Authentication","href":"/api-reference/inference-api/authentication"},{"title":"Headers","href":"/api-reference/inference-api/headers"},{"title":"Errors","href":"/api-reference/inference-api/error-codes"},{"title":"Response Schema","href":"/api-reference/inference-api/response-schema"},{"group":"More","pages":[{"title":"Gateway Config Object","href":"/api-reference/inference-api/config-object"},{"title":"OpenAPI Specification","url":"https://github.com/Portkey-AI/openapi","href":"/api-reference/inference-api/open-api-specification"}]}]},{"group":"SDK","pages":[{"title":"Supported SDKs","href":"/api-reference/sdk/list"},{"title":"Python","href":"/api-reference/sdk/python"},{"title":"Node.js","href":"/api-reference/sdk/node"},{"title":"C# (.NET)","href":"/api-reference/sdk/c-sharp"}]},{"group":"Chat Completions","pages":[{"title":"Chat","openapi":"post /chat/completions","href":"/api-reference/inference-api/chat"}]},{"group":"Responses","pages":[{"title":"Create a Response","openapi":"post /responses","href":"/api-reference/inference-api/responses/responses"},{"title":"Get a Response","openapi":"get /responses/{response_id}","href":"/api-reference/inference-api/responses/retrieve-response"},{"title":"Delete a Response","openapi":"delete /responses/{response_id}","href":"/api-reference/inference-api/responses/delete-response"},{"title":"List Input Items","openapi":"get /responses/{response_id}/input_items","href":"/api-reference/inference-api/responses/retrieve-inputs"}]},{"group":"Portkey Endpoints","pages":[{"title":"Prompt Completions","openapi":"post /prompts/{promptId}/completions","href":"/api-reference/inference-api/prompts/prompt-completion"},{"title":"Prompt Render","openapi":"post /prompts/{promptId}/render","href":"/api-reference/inference-api/prompts/render"},{"title":"Insert a Log","openapi":"post /logs","href":"/api-reference/admin-api/data-plane/logs/insert-a-log"},{"title":"Create Feedback","openapi":"post /feedback","href":"/api-reference/admin-api/data-plane/feedback/create-feedback"},{"title":"Update Feedback","openapi":"put /feedback/{id}","href":"/api-reference/admin-api/data-plane/feedback/update-feedback"},{"group":"Log Exports","pages":[{"title":"Retrieve a Log Export","openapi":"get /logs/exports/{exportId}","href":"/api-reference/admin-api/data-plane/logs/log-exports-beta/retrieve-a-log-export"},{"title":"Update a Log Export","openapi":"put /logs/exports/{exportId}","href":"/api-reference/admin-api/data-plane/logs/log-exports-beta/update-a-log-export"},{"title":"List a Log Export","openapi":"get /logs/exports","href":"/api-reference/admin-api/data-plane/logs/log-exports-beta/list-log-exports"},{"title":"Create a Log Export","openapi":"post /logs/exports","href":"/api-reference/admin-api/data-plane/logs/log-exports-beta/create-a-log-export"},{"title":"Start a Log Export","openapi":"post /logs/exports/{exportId}/start","href":"/api-reference/admin-api/data-plane/logs/log-exports-beta/start-a-log-export"},{"title":"Cancel a Log Export","openapi":"post /logs/exports/{exportId}/cancel","href":"/api-reference/admin-api/data-plane/logs/log-exports-beta/cancel-a-log-export"},{"title":"Delete a Log Export","openapi":"delete /logs/exports/{exportId}","href":"/api-reference/admin-api/data-plane/logs/log-exports-beta/delete-a-log-export"},{"title":"Download a Log Export","openapi":"get /logs/exports/{exportId}/download","href":"/api-reference/admin-api/data-plane/logs/log-exports-beta/download-a-log-export"}]}]},{"group":"Embeddings","pages":[{"title":"Embeddings","openapi":"post /embeddings","href":"/api-reference/inference-api/embeddings"}]},{"group":"Rerank","pages":[{"title":"Rerank","openapi":"post /rerank","href":"/api-reference/inference-api/rerank"}]},{"group":"Decisions","pages":[{"title":"Decisions","openapi":"post /decisions","href":"/api-reference/inference-api/decisions"}]},{"group":"OCR","pages":[{"title":"OCR","openapi":"post /ocr","href":"/api-reference/inference-api/ocr"}]},{"group":"Images","pages":[{"title":"Create Image","openapi":"post /images/generations","href":"/api-reference/inference-api/images/create-image"},{"title":"Create Image Edit","openapi":"post /images/edits","href":"/api-reference/inference-api/images/create-image-edit"},{"title":"Create Image Variation","openapi":"post /images/variations","href":"/api-reference/inference-api/images/create-image-variation"}]},{"group":"Audio","pages":[{"title":"Create Speech","openapi":"post /audio/speech","href":"/api-reference/inference-api/audio/create-speech"},{"title":"Create Transcription","openapi":"post /audio/transcriptions","href":"/api-reference/inference-api/audio/create-transcription"},{"title":"Create Translation","openapi":"post /audio/translations","href":"/api-reference/inference-api/audio/create-translation"}]},{"group":"Other APIs","pages":[{"title":"Gateway to Other APIs","icon":"chart-network","href":"/api-reference/inference-api/gateway-for-other-apis"}]},{"group":"Completions","pages":[{"title":"Completions","openapi":"post /completions","href":"/api-reference/inference-api/completions"}]},{"group":"Moderations","pages":[{"title":"Moderations","openapi":"post /moderations","href":"/api-reference/inference-api/moderations"}]},{"group":"Fine-tuning","pages":[{"title":"Create Fine-tuning Job","openapi":"post /fine_tuning/jobs","href":"/api-reference/inference-api/fine-tuning/create-fine-tuning-job"},{"title":"List Fine-tuning Jobs","openapi":"get /fine_tuning/jobs","href":"/api-reference/inference-api/fine-tuning/list-fine-tuning-jobs"},{"title":"Retrieve Fine-tuning Job","openapi":"get /fine_tuning/jobs/{fine_tuning_job_id}","href":"/api-reference/inference-api/fine-tuning/retrieve-fine-tuning-job"},{"title":"List Fine-tuning Events","openapi":"get /fine_tuning/jobs/{fine_tuning_job_id}/events","href":"/api-reference/inference-api/fine-tuning/list-fine-tuning-events"},{"title":"List Fine-tuning Checkpoints","openapi":"get /fine_tuning/jobs/{fine_tuning_job_id}/checkpoints","href":"/api-reference/inference-api/fine-tuning/list-fine-tuning-checkpoints"},{"title":"Cancel Fine-tuning","openapi":"post /fine_tuning/jobs/{fine_tuning_job_id}/cancel","href":"/api-reference/inference-api/fine-tuning/cancel-fine-tuning"}]},{"group":"Batch","pages":[{"title":"Create Batch","openapi":"post /batches","href":"/api-reference/inference-api/batch/create-batch"},{"title":"List Batch","openapi":"get /batches","href":"/api-reference/inference-api/batch/list-batch"},{"title":"Retrieve Batch","openapi":"get /batches/{batch_id}","href":"/api-reference/inference-api/batch/retrieve-batch"},{"title":"Cancel Batch","openapi":"post /batches/{batch_id}/cancel","href":"/api-reference/inference-api/batch/cancel-batch"}]},{"group":"Files","pages":[{"title":"Upload File","openapi":"post /files","href":"/api-reference/inference-api/files/upload-file"},{"title":"List Files","openapi":"get /files","href":"/api-reference/inference-api/files/list-files"},{"title":"Retrieve File","openapi":"get /files/{file_id}","href":"/api-reference/inference-api/files/retrieve-file"},{"title":"Retrieve File Content","openapi":"get /files/{file_id}/content","href":"/api-reference/inference-api/files/retrieve-file-content"},{"title":"Delete File","openapi":"delete /files/{file_id}","description":"","href":"/api-reference/inference-api/files/delete-file"}]},{"group":"Assistants","pages":[{"group":"Assistants","pages":[{"title":"Create Assistant","openapi":"post /assistants","href":"/api-reference/inference-api/assistants-api/assistants/create-assistant"},{"title":"List Assistant","openapi":"get /assistants","description":"","href":"/api-reference/inference-api/assistants-api/assistants/list-assistants"},{"title":"Retrieve Assistant","openapi":"get /assistants/{assistant_id}","href":"/api-reference/inference-api/assistants-api/assistants/retrieve-assistant"},{"title":"Modify Assistant","openapi":"post /assistants/{assistant_id}","href":"/api-reference/inference-api/assistants-api/assistants/modify-assistant"},{"title":"Delete Assistant","openapi":"delete /assistants/{assistant_id}","href":"/api-reference/inference-api/assistants-api/assistants/delete-assistant"}]},{"group":"Threads","pages":[{"title":"Create Thread","openapi":"post /threads","href":"/api-reference/inference-api/assistants-api/threads/create-thread"},{"title":"Retrieve Thread","openapi":"get /threads/{thread_id}","href":"/api-reference/inference-api/assistants-api/threads/retrieve-thread"},{"title":"Modify Thread","openapi":"post /threads/{thread_id}","href":"/api-reference/inference-api/assistants-api/threads/modify-thread"},{"title":"Delete Thread","openapi":"delete /threads/{thread_id}","href":"/api-reference/inference-api/assistants-api/threads/delete-thread"}]},{"group":"Messages","pages":[{"title":"Create Message","openapi":"post /threads/{thread_id}/messages","href":"/api-reference/inference-api/assistants-api/messages/create-message"},{"title":"List Message","openapi":"get /threads/{thread_id}/messages","href":"/api-reference/inference-api/assistants-api/messages/list-messages"},{"title":"Retrieve Message","openapi":"get /threads/{thread_id}/messages/{message_id}","href":"/api-reference/inference-api/assistants-api/messages/retrieve-message"},{"title":"Modify Message","openapi":"post /threads/{thread_id}/messages/{message_id}","href":"/api-reference/inference-api/assistants-api/messages/modify-message"},{"title":"Delete Message","openapi":"delete /threads/{thread_id}/messages/{message_id}","href":"/api-reference/inference-api/assistants-api/messages/delete-message"}]},{"group":"Runs","pages":[{"title":"Create Run","openapi":"post /threads/{thread_id}/runs","href":"/api-reference/inference-api/assistants-api/runs/create-run"},{"title":"Create thread and Run","openapi":"post /threads/runs","href":"/api-reference/inference-api/assistants-api/runs/create-thread-and-run"},{"title":"list Run","openapi":"get /threads/{thread_id}/runs","href":"/api-reference/inference-api/assistants-api/runs/list-runs"},{"title":"Retrieve Run","openapi":"get /threads/{thread_id}/runs/{run_id}","href":"/api-reference/inference-api/assistants-api/runs/retrieve-run"},{"title":"Modify Run","openapi":"post /threads/{thread_id}/runs/{run_id}","href":"/api-reference/inference-api/assistants-api/runs/modify-run"},{"title":"Submit Tool Outputs to Run","openapi":"post /threads/{thread_id}/runs/{run_id}/submit_tool_outputs","href":"/api-reference/inference-api/assistants-api/runs/submit-tool-outputs-to-run"},{"title":"Cancel Run","openapi":"post /threads/{thread_id}/runs/{run_id}/cancel","href":"/api-reference/inference-api/assistants-api/runs/cancel-run"}]},{"group":"Run Steps","pages":[{"title":"List Run Steps","openapi":"get /threads/{thread_id}/runs/{run_id}/steps","href":"/api-reference/inference-api/assistants-api/run-steps/list-run-steps"},{"title":"Retrieve Run Steps","openapi":"get /threads/{thread_id}/runs/{run_id}/steps/{step_id}","href":"/api-reference/inference-api/assistants-api/run-steps/retrieve-run-steps"}]}]}]},{"tab":"Admin API","pages":[{"title":"Admin API","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/2025/may"}]},{"tab":"Help articles","pages":[{"title":"Help articles","href":"/help-center/you-do-not-have-enough-permissions"}]}]}]},"basePath":"","title":"Create Assistant - Portkey (Prisma AIRS AI Gateway) Docs","buildId":"dpl_6cCEiK8XNNvaLBBkWzcBhdE9QfLC","deploymentId":"dpl_6cCEiK8XNNvaLBBkWzcBhdE9QfLC","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-CLz2_Z5D.js","utils-7A5jZhOT.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-BVWmkKuv.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-4SOfrh0F.js","snippetPresets-CMc8KicP.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-Ba9tX7z3.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-Be8krXvv.js","shallow-CBC3K1uB.js","getApiPlaygroundDisplay-4tKcUAYo.js","CodeSnippet-C1Xa06ft.js","CodeSnippets-vqiz27A_.js","Page-DeQN5MDd.js","getPastedJson-NUwRfM32.js","icon-DkIVqWh9.js","MethodPill-qmhT7_wz.js","DuplicateIcon-_gWp1vhn.js","createIcon-NA1p_TVA.js","DynamicMarkdown-Bas9A7wq.js","SectionHeading-a1cS-24U.js","axios-vUo_bRtp.js","Markdown-D3ZTwq_a.js","clsx-BcghKhHb.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-B66mVNPp.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-DmooSyTN.js"]}