llama-stack-mirror/docs/static/llama-stack-spec.yaml

9341 lines
286 KiB
YAML

openapi: 3.1.0
info:
title: Llama Stack Specification
version: v1
description: >-
This is the specification of the Llama Stack that provides
a set of endpoints and their corresponding interfaces that are
tailored to
best leverage Llama Models.
**✅ STABLE**: Production-ready APIs with backward compatibility guarantees.
servers:
- url: http://any-hosted-llama-stack.com
paths:
/v1/chat/completions:
get:
responses:
'200':
description: A ListOpenAIChatCompletionResponse.
content:
application/json:
schema:
$ref: '#/components/schemas/ListOpenAIChatCompletionResponse'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- Inference
summary: List all chat completions.
description: List all chat completions.
parameters:
- name: after
in: query
description: >-
The ID of the last chat completion to return.
required: false
schema:
type: string
- name: limit
in: query
description: >-
The maximum number of chat completions to return.
required: false
schema:
type: integer
- name: model
in: query
description: The model to filter by.
required: false
schema:
type: string
- name: order
in: query
description: >-
The order to sort the chat completions by: "asc" or "desc". Defaults to
"desc".
required: false
schema:
$ref: '#/components/schemas/Order'
deprecated: false
post:
responses:
'200':
description: An OpenAIChatCompletion.
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/OpenAIChatCompletion'
- $ref: '#/components/schemas/OpenAIChatCompletionChunk'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- Inference
summary: >-
Generate an OpenAI-compatible chat completion for the given messages using
the specified model.
description: >-
Generate an OpenAI-compatible chat completion for the given messages using
the specified model.
parameters: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/OpenaiChatCompletionRequest'
required: true
deprecated: false
/v1/chat/completions/{completion_id}:
get:
responses:
'200':
description: A OpenAICompletionWithInputMessages.
content:
application/json:
schema:
$ref: '#/components/schemas/OpenAICompletionWithInputMessages'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- Inference
summary: Describe a chat completion by its ID.
description: Describe a chat completion by its ID.
parameters:
- name: completion_id
in: path
description: ID of the chat completion.
required: true
schema:
type: string
deprecated: false
/v1/completions:
post:
responses:
'200':
description: An OpenAICompletion.
content:
application/json:
schema:
$ref: '#/components/schemas/OpenAICompletion'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- Inference
summary: >-
Generate an OpenAI-compatible completion for the given prompt using the specified
model.
description: >-
Generate an OpenAI-compatible completion for the given prompt using the specified
model.
parameters: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/OpenaiCompletionRequest'
required: true
deprecated: false
/v1/embeddings:
post:
responses:
'200':
description: >-
An OpenAIEmbeddingsResponse containing the embeddings.
content:
application/json:
schema:
$ref: '#/components/schemas/OpenAIEmbeddingsResponse'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- Inference
summary: >-
Generate OpenAI-compatible embeddings for the given input using the specified
model.
description: >-
Generate OpenAI-compatible embeddings for the given input using the specified
model.
parameters: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/OpenaiEmbeddingsRequest'
required: true
deprecated: false
/v1/files:
get:
responses:
'200':
description: >-
An ListOpenAIFileResponse containing the list of files.
content:
application/json:
schema:
$ref: '#/components/schemas/ListOpenAIFileResponse'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- Files
summary: >-
Returns a list of files that belong to the user's organization.
description: >-
Returns a list of files that belong to the user's organization.
parameters:
- name: after
in: query
description: >-
A cursor for use in pagination. `after` is an object ID that defines your
place in the list. For instance, if you make a list request and receive
100 objects, ending with obj_foo, your subsequent call can include after=obj_foo
in order to fetch the next page of the list.
required: false
schema:
type: string
- name: limit
in: query
description: >-
A limit on the number of objects to be returned. Limit can range between
1 and 10,000, and the default is 10,000.
required: false
schema:
type: integer
- name: order
in: query
description: >-
Sort order by the `created_at` timestamp of the objects. `asc` for ascending
order and `desc` for descending order.
required: false
schema:
$ref: '#/components/schemas/Order'
- name: purpose
in: query
description: >-
Only return files with the given purpose.
required: false
schema:
$ref: '#/components/schemas/OpenAIFilePurpose'
deprecated: false
post:
responses:
'200':
description: >-
An OpenAIFileObject representing the uploaded file.
content:
application/json:
schema:
$ref: '#/components/schemas/OpenAIFileObject'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- Files
summary: >-
Upload a file that can be used across various endpoints.
description: >-
Upload a file that can be used across various endpoints.
The file upload should be a multipart form request with:
- file: The File object (not file name) to be uploaded.
- purpose: The intended purpose of the uploaded file.
- expires_after: Optional form values describing expiration for the file.
parameters: []
requestBody:
content:
multipart/form-data:
schema:
type: object
properties:
file:
type: string
format: binary
purpose:
$ref: '#/components/schemas/OpenAIFilePurpose'
expires_after:
$ref: '#/components/schemas/ExpiresAfter'
required:
- file
- purpose
required: true
deprecated: false
/v1/files/{file_id}:
get:
responses:
'200':
description: >-
An OpenAIFileObject containing file information.
content:
application/json:
schema:
$ref: '#/components/schemas/OpenAIFileObject'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- Files
summary: >-
Returns information about a specific file.
description: >-
Returns information about a specific file.
parameters:
- name: file_id
in: path
description: >-
The ID of the file to use for this request.
required: true
schema:
type: string
deprecated: false
delete:
responses:
'200':
description: >-
An OpenAIFileDeleteResponse indicating successful deletion.
content:
application/json:
schema:
$ref: '#/components/schemas/OpenAIFileDeleteResponse'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- Files
summary: Delete a file.
description: Delete a file.
parameters:
- name: file_id
in: path
description: >-
The ID of the file to use for this request.
required: true
schema:
type: string
deprecated: false
/v1/files/{file_id}/content:
get:
responses:
'200':
description: >-
The raw file content as a binary response.
content:
application/json:
schema:
$ref: '#/components/schemas/Response'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- Files
summary: >-
Returns the contents of the specified file.
description: >-
Returns the contents of the specified file.
parameters:
- name: file_id
in: path
description: >-
The ID of the file to use for this request.
required: true
schema:
type: string
deprecated: false
/v1/health:
get:
responses:
'200':
description: >-
Health information indicating if the service is operational.
content:
application/json:
schema:
$ref: '#/components/schemas/HealthInfo'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- Inspect
summary: >-
Get the current health status of the service.
description: >-
Get the current health status of the service.
parameters: []
deprecated: false
/v1/inspect/routes:
get:
responses:
'200':
description: >-
Response containing information about all available routes.
content:
application/json:
schema:
$ref: '#/components/schemas/ListRoutesResponse'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- Inspect
summary: >-
List all available API routes with their methods and implementing providers.
description: >-
List all available API routes with their methods and implementing providers.
parameters: []
deprecated: false
/v1/models:
get:
responses:
'200':
description: A ListModelsResponse.
content:
application/json:
schema:
$ref: '#/components/schemas/ListModelsResponse'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- Models
summary: List all models.
description: List all models.
parameters: []
deprecated: false
post:
responses:
'200':
description: A Model.
content:
application/json:
schema:
$ref: '#/components/schemas/Model'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- Models
summary: Register a model.
description: Register a model.
parameters: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/RegisterModelRequest'
required: true
deprecated: false
/v1/models/{model_id}:
get:
responses:
'200':
description: A Model.
content:
application/json:
schema:
$ref: '#/components/schemas/Model'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- Models
summary: Get a model by its identifier.
description: Get a model by its identifier.
parameters:
- name: model_id
in: path
description: The identifier of the model to get.
required: true
schema:
type: string
deprecated: false
delete:
responses:
'200':
description: OK
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- Models
summary: Unregister a model.
description: Unregister a model.
parameters:
- name: model_id
in: path
description: >-
The identifier of the model to unregister.
required: true
schema:
type: string
deprecated: false
/v1/moderations:
post:
responses:
'200':
description: A moderation object.
content:
application/json:
schema:
$ref: '#/components/schemas/ModerationObject'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- Safety
summary: >-
Classifies if text and/or image inputs are potentially harmful.
description: >-
Classifies if text and/or image inputs are potentially harmful.
parameters: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/RunModerationRequest'
required: true
deprecated: false
/v1/prompts:
get:
responses:
'200':
description: >-
A ListPromptsResponse containing all prompts.
content:
application/json:
schema:
$ref: '#/components/schemas/ListPromptsResponse'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- Prompts
summary: List all prompts.
description: List all prompts.
parameters: []
deprecated: false
post:
responses:
'200':
description: The created Prompt resource.
content:
application/json:
schema:
$ref: '#/components/schemas/Prompt'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- Prompts
summary: Create a new prompt.
description: Create a new prompt.
parameters: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/CreatePromptRequest'
required: true
deprecated: false
/v1/prompts/{prompt_id}:
get:
responses:
'200':
description: A Prompt resource.
content:
application/json:
schema:
$ref: '#/components/schemas/Prompt'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- Prompts
summary: >-
Get a prompt by its identifier and optional version.
description: >-
Get a prompt by its identifier and optional version.
parameters:
- name: prompt_id
in: path
description: The identifier of the prompt to get.
required: true
schema:
type: string
- name: version
in: query
description: >-
The version of the prompt to get (defaults to latest).
required: false
schema:
type: integer
deprecated: false
post:
responses:
'200':
description: >-
The updated Prompt resource with incremented version.
content:
application/json:
schema:
$ref: '#/components/schemas/Prompt'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- Prompts
summary: >-
Update an existing prompt (increments version).
description: >-
Update an existing prompt (increments version).
parameters:
- name: prompt_id
in: path
description: The identifier of the prompt to update.
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/UpdatePromptRequest'
required: true
deprecated: false
delete:
responses:
'200':
description: OK
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- Prompts
summary: Delete a prompt.
description: Delete a prompt.
parameters:
- name: prompt_id
in: path
description: The identifier of the prompt to delete.
required: true
schema:
type: string
deprecated: false
/v1/prompts/{prompt_id}/set-default-version:
post:
responses:
'200':
description: >-
The prompt with the specified version now set as default.
content:
application/json:
schema:
$ref: '#/components/schemas/Prompt'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- Prompts
summary: >-
Set which version of a prompt should be the default in get_prompt (latest).
description: >-
Set which version of a prompt should be the default in get_prompt (latest).
parameters:
- name: prompt_id
in: path
description: The identifier of the prompt.
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/SetDefaultVersionRequest'
required: true
deprecated: false
/v1/prompts/{prompt_id}/versions:
get:
responses:
'200':
description: >-
A ListPromptsResponse containing all versions of the prompt.
content:
application/json:
schema:
$ref: '#/components/schemas/ListPromptsResponse'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- Prompts
summary: List all versions of a specific prompt.
description: List all versions of a specific prompt.
parameters:
- name: prompt_id
in: path
description: >-
The identifier of the prompt to list versions for.
required: true
schema:
type: string
deprecated: false
/v1/providers:
get:
responses:
'200':
description: >-
A ListProvidersResponse containing information about all providers.
content:
application/json:
schema:
$ref: '#/components/schemas/ListProvidersResponse'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- Providers
summary: List all available providers.
description: List all available providers.
parameters: []
deprecated: false
/v1/providers/{provider_id}:
get:
responses:
'200':
description: >-
A ProviderInfo object containing the provider's details.
content:
application/json:
schema:
$ref: '#/components/schemas/ProviderInfo'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- Providers
summary: >-
Get detailed information about a specific provider.
description: >-
Get detailed information about a specific provider.
parameters:
- name: provider_id
in: path
description: The ID of the provider to inspect.
required: true
schema:
type: string
deprecated: false
/v1/responses:
get:
responses:
'200':
description: A ListOpenAIResponseObject.
content:
application/json:
schema:
$ref: '#/components/schemas/ListOpenAIResponseObject'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- Agents
summary: List all OpenAI responses.
description: List all OpenAI responses.
parameters:
- name: after
in: query
description: The ID of the last response to return.
required: false
schema:
type: string
- name: limit
in: query
description: The number of responses to return.
required: false
schema:
type: integer
- name: model
in: query
description: The model to filter responses by.
required: false
schema:
type: string
- name: order
in: query
description: >-
The order to sort responses by when sorted by created_at ('asc' or 'desc').
required: false
schema:
$ref: '#/components/schemas/Order'
deprecated: false
post:
responses:
'200':
description: An OpenAIResponseObject.
content:
application/json:
schema:
$ref: '#/components/schemas/OpenAIResponseObject'
text/event-stream:
schema:
$ref: '#/components/schemas/OpenAIResponseObjectStream'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- Agents
summary: Create a new OpenAI response.
description: Create a new OpenAI response.
parameters: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/CreateOpenaiResponseRequest'
required: true
deprecated: false
/v1/responses/{response_id}:
get:
responses:
'200':
description: An OpenAIResponseObject.
content:
application/json:
schema:
$ref: '#/components/schemas/OpenAIResponseObject'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- Agents
summary: Retrieve an OpenAI response by its ID.
description: Retrieve an OpenAI response by its ID.
parameters:
- name: response_id
in: path
description: >-
The ID of the OpenAI response to retrieve.
required: true
schema:
type: string
deprecated: false
delete:
responses:
'200':
description: An OpenAIDeleteResponseObject
content:
application/json:
schema:
$ref: '#/components/schemas/OpenAIDeleteResponseObject'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- Agents
summary: Delete an OpenAI response by its ID.
description: Delete an OpenAI response by its ID.
parameters:
- name: response_id
in: path
description: The ID of the OpenAI response to delete.
required: true
schema:
type: string
deprecated: false
/v1/responses/{response_id}/input_items:
get:
responses:
'200':
description: An ListOpenAIResponseInputItem.
content:
application/json:
schema:
$ref: '#/components/schemas/ListOpenAIResponseInputItem'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- Agents
summary: >-
List input items for a given OpenAI response.
description: >-
List input items for a given OpenAI response.
parameters:
- name: response_id
in: path
description: >-
The ID of the response to retrieve input items for.
required: true
schema:
type: string
- name: after
in: query
description: >-
An item ID to list items after, used for pagination.
required: false
schema:
type: string
- name: before
in: query
description: >-
An item ID to list items before, used for pagination.
required: false
schema:
type: string
- name: include
in: query
description: >-
Additional fields to include in the response.
required: false
schema:
type: array
items:
type: string
- name: limit
in: query
description: >-
A limit on the number of objects to be returned. Limit can range between
1 and 100, and the default is 20.
required: false
schema:
type: integer
- name: order
in: query
description: >-
The order to return the input items in. Default is desc.
required: false
schema:
$ref: '#/components/schemas/Order'
deprecated: false
/v1/safety/run-shield:
post:
responses:
'200':
description: A RunShieldResponse.
content:
application/json:
schema:
$ref: '#/components/schemas/RunShieldResponse'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- Safety
summary: Run a shield.
description: Run a shield.
parameters: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/RunShieldRequest'
required: true
deprecated: false
/v1/scoring-functions:
get:
responses:
'200':
description: A ListScoringFunctionsResponse.
content:
application/json:
schema:
$ref: '#/components/schemas/ListScoringFunctionsResponse'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- ScoringFunctions
summary: List all scoring functions.
description: List all scoring functions.
parameters: []
deprecated: false
post:
responses:
'200':
description: OK
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- ScoringFunctions
summary: Register a scoring function.
description: Register a scoring function.
parameters: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/RegisterScoringFunctionRequest'
required: true
deprecated: false
/v1/scoring-functions/{scoring_fn_id}:
get:
responses:
'200':
description: A ScoringFn.
content:
application/json:
schema:
$ref: '#/components/schemas/ScoringFn'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- ScoringFunctions
summary: Get a scoring function by its ID.
description: Get a scoring function by its ID.
parameters:
- name: scoring_fn_id
in: path
description: The ID of the scoring function to get.
required: true
schema:
type: string
deprecated: false
delete:
responses:
'200':
description: OK
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- ScoringFunctions
summary: Unregister a scoring function.
description: Unregister a scoring function.
parameters:
- name: scoring_fn_id
in: path
description: >-
The ID of the scoring function to unregister.
required: true
schema:
type: string
deprecated: false
/v1/scoring/score:
post:
responses:
'200':
description: >-
A ScoreResponse object containing rows and aggregated results.
content:
application/json:
schema:
$ref: '#/components/schemas/ScoreResponse'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- Scoring
summary: Score a list of rows.
description: Score a list of rows.
parameters: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ScoreRequest'
required: true
deprecated: false
/v1/scoring/score-batch:
post:
responses:
'200':
description: A ScoreBatchResponse.
content:
application/json:
schema:
$ref: '#/components/schemas/ScoreBatchResponse'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- Scoring
summary: Score a batch of rows.
description: Score a batch of rows.
parameters: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ScoreBatchRequest'
required: true
deprecated: false
/v1/shields:
get:
responses:
'200':
description: A ListShieldsResponse.
content:
application/json:
schema:
$ref: '#/components/schemas/ListShieldsResponse'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- Shields
summary: List all shields.
description: List all shields.
parameters: []
deprecated: false
post:
responses:
'200':
description: A Shield.
content:
application/json:
schema:
$ref: '#/components/schemas/Shield'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- Shields
summary: Register a shield.
description: Register a shield.
parameters: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/RegisterShieldRequest'
required: true
deprecated: false
/v1/shields/{identifier}:
get:
responses:
'200':
description: A Shield.
content:
application/json:
schema:
$ref: '#/components/schemas/Shield'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- Shields
summary: Get a shield by its identifier.
description: Get a shield by its identifier.
parameters:
- name: identifier
in: path
description: The identifier of the shield to get.
required: true
schema:
type: string
deprecated: false
delete:
responses:
'200':
description: OK
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- Shields
summary: Unregister a shield.
description: Unregister a shield.
parameters:
- name: identifier
in: path
description: >-
The identifier of the shield to unregister.
required: true
schema:
type: string
deprecated: false
/v1/synthetic-data-generation/generate:
post:
responses:
'200':
description: >-
Response containing filtered synthetic data samples and optional statistics
content:
application/json:
schema:
$ref: '#/components/schemas/SyntheticDataGenerationResponse'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- SyntheticDataGeneration (Coming Soon)
summary: >-
Generate synthetic data based on input dialogs and apply filtering.
description: >-
Generate synthetic data based on input dialogs and apply filtering.
parameters: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/SyntheticDataGenerateRequest'
required: true
deprecated: false
/v1/telemetry/events:
post:
responses:
'200':
description: OK
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- Telemetry
summary: Log an event.
description: Log an event.
parameters: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/LogEventRequest'
required: true
deprecated: false
/v1/tool-runtime/invoke:
post:
responses:
'200':
description: A ToolInvocationResult.
content:
application/json:
schema:
$ref: '#/components/schemas/ToolInvocationResult'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- ToolRuntime
summary: Run a tool with the given arguments.
description: Run a tool with the given arguments.
parameters: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/InvokeToolRequest'
required: true
deprecated: false
/v1/tool-runtime/list-tools:
get:
responses:
'200':
description: A ListToolDefsResponse.
content:
application/json:
schema:
$ref: '#/components/schemas/ListToolDefsResponse'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- ToolRuntime
summary: List all tools in the runtime.
description: List all tools in the runtime.
parameters:
- name: tool_group_id
in: query
description: >-
The ID of the tool group to list tools for.
required: false
schema:
type: string
- name: mcp_endpoint
in: query
description: >-
The MCP endpoint to use for the tool group.
required: false
schema:
$ref: '#/components/schemas/URL'
deprecated: false
/v1/tool-runtime/rag-tool/insert:
post:
responses:
'200':
description: OK
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- ToolRuntime
summary: >-
Index documents so they can be used by the RAG system.
description: >-
Index documents so they can be used by the RAG system.
parameters: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/InsertRequest'
required: true
deprecated: false
/v1/tool-runtime/rag-tool/query:
post:
responses:
'200':
description: >-
RAGQueryResult containing the retrieved content and metadata
content:
application/json:
schema:
$ref: '#/components/schemas/RAGQueryResult'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- ToolRuntime
summary: >-
Query the RAG system for context; typically invoked by the agent.
description: >-
Query the RAG system for context; typically invoked by the agent.
parameters: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/QueryRequest'
required: true
deprecated: false
/v1/toolgroups:
get:
responses:
'200':
description: A ListToolGroupsResponse.
content:
application/json:
schema:
$ref: '#/components/schemas/ListToolGroupsResponse'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- ToolGroups
summary: List tool groups with optional provider.
description: List tool groups with optional provider.
parameters: []
deprecated: false
post:
responses:
'200':
description: OK
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- ToolGroups
summary: Register a tool group.
description: Register a tool group.
parameters: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/RegisterToolGroupRequest'
required: true
deprecated: false
/v1/toolgroups/{toolgroup_id}:
get:
responses:
'200':
description: A ToolGroup.
content:
application/json:
schema:
$ref: '#/components/schemas/ToolGroup'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- ToolGroups
summary: Get a tool group by its ID.
description: Get a tool group by its ID.
parameters:
- name: toolgroup_id
in: path
description: The ID of the tool group to get.
required: true
schema:
type: string
deprecated: false
delete:
responses:
'200':
description: OK
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- ToolGroups
summary: Unregister a tool group.
description: Unregister a tool group.
parameters:
- name: toolgroup_id
in: path
description: The ID of the tool group to unregister.
required: true
schema:
type: string
deprecated: false
/v1/tools:
get:
responses:
'200':
description: A ListToolsResponse.
content:
application/json:
schema:
$ref: '#/components/schemas/ListToolsResponse'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- ToolGroups
summary: List tools with optional tool group.
description: List tools with optional tool group.
parameters:
- name: toolgroup_id
in: query
description: >-
The ID of the tool group to list tools for.
required: false
schema:
type: string
deprecated: false
/v1/tools/{tool_name}:
get:
responses:
'200':
description: A Tool.
content:
application/json:
schema:
$ref: '#/components/schemas/Tool'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- ToolGroups
summary: Get a tool by its name.
description: Get a tool by its name.
parameters:
- name: tool_name
in: path
description: The name of the tool to get.
required: true
schema:
type: string
deprecated: false
/v1/vector-dbs:
get:
responses:
'200':
description: A ListVectorDBsResponse.
content:
application/json:
schema:
$ref: '#/components/schemas/ListVectorDBsResponse'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- VectorDBs
summary: List all vector databases.
description: List all vector databases.
parameters: []
deprecated: false
post:
responses:
'200':
description: A VectorDB.
content:
application/json:
schema:
$ref: '#/components/schemas/VectorDB'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- VectorDBs
summary: Register a vector database.
description: Register a vector database.
parameters: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/RegisterVectorDbRequest'
required: true
deprecated: false
/v1/vector-dbs/{vector_db_id}:
get:
responses:
'200':
description: A VectorDB.
content:
application/json:
schema:
$ref: '#/components/schemas/VectorDB'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- VectorDBs
summary: Get a vector database by its identifier.
description: Get a vector database by its identifier.
parameters:
- name: vector_db_id
in: path
description: >-
The identifier of the vector database to get.
required: true
schema:
type: string
deprecated: false
delete:
responses:
'200':
description: OK
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- VectorDBs
summary: Unregister a vector database.
description: Unregister a vector database.
parameters:
- name: vector_db_id
in: path
description: >-
The identifier of the vector database to unregister.
required: true
schema:
type: string
deprecated: false
/v1/vector-io/insert:
post:
responses:
'200':
description: OK
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- VectorIO
summary: Insert chunks into a vector database.
description: Insert chunks into a vector database.
parameters: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/InsertChunksRequest'
required: true
deprecated: false
/v1/vector-io/query:
post:
responses:
'200':
description: A QueryChunksResponse.
content:
application/json:
schema:
$ref: '#/components/schemas/QueryChunksResponse'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- VectorIO
summary: Query chunks from a vector database.
description: Query chunks from a vector database.
parameters: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/QueryChunksRequest'
required: true
deprecated: false
/v1/vector_stores:
get:
responses:
'200':
description: >-
A VectorStoreListResponse containing the list of vector stores.
content:
application/json:
schema:
$ref: '#/components/schemas/VectorStoreListResponse'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- VectorIO
summary: Returns a list of vector stores.
description: Returns a list of vector stores.
parameters:
- name: limit
in: query
description: >-
A limit on the number of objects to be returned. Limit can range between
1 and 100, and the default is 20.
required: false
schema:
type: integer
- name: order
in: query
description: >-
Sort order by the `created_at` timestamp of the objects. `asc` for ascending
order and `desc` for descending order.
required: false
schema:
type: string
- name: after
in: query
description: >-
A cursor for use in pagination. `after` is an object ID that defines your
place in the list.
required: false
schema:
type: string
- name: before
in: query
description: >-
A cursor for use in pagination. `before` is an object ID that defines
your place in the list.
required: false
schema:
type: string
deprecated: false
post:
responses:
'200':
description: >-
A VectorStoreObject representing the created vector store.
content:
application/json:
schema:
$ref: '#/components/schemas/VectorStoreObject'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- VectorIO
summary: Creates a vector store.
description: Creates a vector store.
parameters: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/OpenaiCreateVectorStoreRequest'
required: true
deprecated: false
/v1/vector_stores/{vector_store_id}:
get:
responses:
'200':
description: >-
A VectorStoreObject representing the vector store.
content:
application/json:
schema:
$ref: '#/components/schemas/VectorStoreObject'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- VectorIO
summary: Retrieves a vector store.
description: Retrieves a vector store.
parameters:
- name: vector_store_id
in: path
description: The ID of the vector store to retrieve.
required: true
schema:
type: string
deprecated: false
post:
responses:
'200':
description: >-
A VectorStoreObject representing the updated vector store.
content:
application/json:
schema:
$ref: '#/components/schemas/VectorStoreObject'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- VectorIO
summary: Updates a vector store.
description: Updates a vector store.
parameters:
- name: vector_store_id
in: path
description: The ID of the vector store to update.
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/OpenaiUpdateVectorStoreRequest'
required: true
deprecated: false
delete:
responses:
'200':
description: >-
A VectorStoreDeleteResponse indicating the deletion status.
content:
application/json:
schema:
$ref: '#/components/schemas/VectorStoreDeleteResponse'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- VectorIO
summary: Delete a vector store.
description: Delete a vector store.
parameters:
- name: vector_store_id
in: path
description: The ID of the vector store to delete.
required: true
schema:
type: string
deprecated: false
/v1/vector_stores/{vector_store_id}/file_batches:
post:
responses:
'200':
description: >-
A VectorStoreFileBatchObject representing the created file batch.
content:
application/json:
schema:
$ref: '#/components/schemas/VectorStoreFileBatchObject'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- VectorIO
summary: Create a vector store file batch.
description: Create a vector store file batch.
parameters:
- name: vector_store_id
in: path
description: >-
The ID of the vector store to create the file batch for.
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/OpenaiCreateVectorStoreFileBatchRequest'
required: true
deprecated: false
/v1/vector_stores/{vector_store_id}/file_batches/{batch_id}:
get:
responses:
'200':
description: >-
A VectorStoreFileBatchObject representing the file batch.
content:
application/json:
schema:
$ref: '#/components/schemas/VectorStoreFileBatchObject'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- VectorIO
summary: Retrieve a vector store file batch.
description: Retrieve a vector store file batch.
parameters:
- name: batch_id
in: path
description: The ID of the file batch to retrieve.
required: true
schema:
type: string
- name: vector_store_id
in: path
description: >-
The ID of the vector store containing the file batch.
required: true
schema:
type: string
deprecated: false
/v1/vector_stores/{vector_store_id}/file_batches/{batch_id}/cancel:
post:
responses:
'200':
description: >-
A VectorStoreFileBatchObject representing the cancelled file batch.
content:
application/json:
schema:
$ref: '#/components/schemas/VectorStoreFileBatchObject'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- VectorIO
summary: Cancels a vector store file batch.
description: Cancels a vector store file batch.
parameters:
- name: batch_id
in: path
description: The ID of the file batch to cancel.
required: true
schema:
type: string
- name: vector_store_id
in: path
description: >-
The ID of the vector store containing the file batch.
required: true
schema:
type: string
deprecated: false
/v1/vector_stores/{vector_store_id}/file_batches/{batch_id}/files:
get:
responses:
'200':
description: >-
A VectorStoreFilesListInBatchResponse containing the list of files in
the batch.
content:
application/json:
schema:
$ref: '#/components/schemas/VectorStoreFilesListInBatchResponse'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- VectorIO
summary: >-
Returns a list of vector store files in a batch.
description: >-
Returns a list of vector store files in a batch.
parameters:
- name: batch_id
in: path
description: >-
The ID of the file batch to list files from.
required: true
schema:
type: string
- name: vector_store_id
in: path
description: >-
The ID of the vector store containing the file batch.
required: true
schema:
type: string
- name: after
in: query
description: >-
A cursor for use in pagination. `after` is an object ID that defines your
place in the list.
required: false
schema:
type: string
- name: before
in: query
description: >-
A cursor for use in pagination. `before` is an object ID that defines
your place in the list.
required: false
schema:
type: string
- name: filter
in: query
description: >-
Filter by file status. One of in_progress, completed, failed, cancelled.
required: false
schema:
type: string
- name: limit
in: query
description: >-
A limit on the number of objects to be returned. Limit can range between
1 and 100, and the default is 20.
required: false
schema:
type: integer
- name: order
in: query
description: >-
Sort order by the `created_at` timestamp of the objects. `asc` for ascending
order and `desc` for descending order.
required: false
schema:
type: string
deprecated: false
/v1/vector_stores/{vector_store_id}/files:
get:
responses:
'200':
description: >-
A VectorStoreListFilesResponse containing the list of files.
content:
application/json:
schema:
$ref: '#/components/schemas/VectorStoreListFilesResponse'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- VectorIO
summary: List files in a vector store.
description: List files in a vector store.
parameters:
- name: vector_store_id
in: path
description: >-
The ID of the vector store to list files from.
required: true
schema:
type: string
- name: limit
in: query
description: >-
(Optional) A limit on the number of objects to be returned. Limit can
range between 1 and 100, and the default is 20.
required: false
schema:
type: integer
- name: order
in: query
description: >-
(Optional) Sort order by the `created_at` timestamp of the objects. `asc`
for ascending order and `desc` for descending order.
required: false
schema:
type: string
- name: after
in: query
description: >-
(Optional) A cursor for use in pagination. `after` is an object ID that
defines your place in the list.
required: false
schema:
type: string
- name: before
in: query
description: >-
(Optional) A cursor for use in pagination. `before` is an object ID that
defines your place in the list.
required: false
schema:
type: string
- name: filter
in: query
description: >-
(Optional) Filter by file status to only return files with the specified
status.
required: false
schema:
$ref: '#/components/schemas/VectorStoreFileStatus'
deprecated: false
post:
responses:
'200':
description: >-
A VectorStoreFileObject representing the attached file.
content:
application/json:
schema:
$ref: '#/components/schemas/VectorStoreFileObject'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- VectorIO
summary: Attach a file to a vector store.
description: Attach a file to a vector store.
parameters:
- name: vector_store_id
in: path
description: >-
The ID of the vector store to attach the file to.
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/OpenaiAttachFileToVectorStoreRequest'
required: true
deprecated: false
/v1/vector_stores/{vector_store_id}/files/{file_id}:
get:
responses:
'200':
description: >-
A VectorStoreFileObject representing the file.
content:
application/json:
schema:
$ref: '#/components/schemas/VectorStoreFileObject'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- VectorIO
summary: Retrieves a vector store file.
description: Retrieves a vector store file.
parameters:
- name: vector_store_id
in: path
description: >-
The ID of the vector store containing the file to retrieve.
required: true
schema:
type: string
- name: file_id
in: path
description: The ID of the file to retrieve.
required: true
schema:
type: string
deprecated: false
post:
responses:
'200':
description: >-
A VectorStoreFileObject representing the updated file.
content:
application/json:
schema:
$ref: '#/components/schemas/VectorStoreFileObject'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- VectorIO
summary: Updates a vector store file.
description: Updates a vector store file.
parameters:
- name: vector_store_id
in: path
description: >-
The ID of the vector store containing the file to update.
required: true
schema:
type: string
- name: file_id
in: path
description: The ID of the file to update.
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/OpenaiUpdateVectorStoreFileRequest'
required: true
deprecated: false
delete:
responses:
'200':
description: >-
A VectorStoreFileDeleteResponse indicating the deletion status.
content:
application/json:
schema:
$ref: '#/components/schemas/VectorStoreFileDeleteResponse'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- VectorIO
summary: Delete a vector store file.
description: Delete a vector store file.
parameters:
- name: vector_store_id
in: path
description: >-
The ID of the vector store containing the file to delete.
required: true
schema:
type: string
- name: file_id
in: path
description: The ID of the file to delete.
required: true
schema:
type: string
deprecated: false
/v1/vector_stores/{vector_store_id}/files/{file_id}/content:
get:
responses:
'200':
description: >-
A list of InterleavedContent representing the file contents.
content:
application/json:
schema:
$ref: '#/components/schemas/VectorStoreFileContentsResponse'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- VectorIO
summary: >-
Retrieves the contents of a vector store file.
description: >-
Retrieves the contents of a vector store file.
parameters:
- name: vector_store_id
in: path
description: >-
The ID of the vector store containing the file to retrieve.
required: true
schema:
type: string
- name: file_id
in: path
description: The ID of the file to retrieve.
required: true
schema:
type: string
deprecated: false
/v1/vector_stores/{vector_store_id}/search:
post:
responses:
'200':
description: >-
A VectorStoreSearchResponse containing the search results.
content:
application/json:
schema:
$ref: '#/components/schemas/VectorStoreSearchResponsePage'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- VectorIO
summary: Search for chunks in a vector store.
description: >-
Search for chunks in a vector store.
Searches a vector store for relevant chunks based on a query and optional
file attribute filters.
parameters:
- name: vector_store_id
in: path
description: The ID of the vector store to search.
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/OpenaiSearchVectorStoreRequest'
required: true
deprecated: false
/v1/version:
get:
responses:
'200':
description: >-
Version information containing the service version number.
content:
application/json:
schema:
$ref: '#/components/schemas/VersionInfo'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- Inspect
summary: Get the version of the service.
description: Get the version of the service.
parameters: []
deprecated: false
jsonSchemaDialect: >-
https://json-schema.org/draft/2020-12/schema
components:
schemas:
Error:
type: object
properties:
status:
type: integer
description: HTTP status code
title:
type: string
description: >-
Error title, a short summary of the error which is invariant for an error
type
detail:
type: string
description: >-
Error detail, a longer human-readable description of the error
instance:
type: string
description: >-
(Optional) A URL which can be used to retrieve more information about
the specific occurrence of the error
additionalProperties: false
required:
- status
- title
- detail
title: Error
description: >-
Error response from the API. Roughly follows RFC 7807.
Order:
type: string
enum:
- asc
- desc
title: Order
description: Sort order for paginated responses.
ListOpenAIChatCompletionResponse:
type: object
properties:
data:
type: array
items:
type: object
properties:
id:
type: string
description: The ID of the chat completion
choices:
type: array
items:
$ref: '#/components/schemas/OpenAIChoice'
description: List of choices
object:
type: string
const: chat.completion
default: chat.completion
description: >-
The object type, which will be "chat.completion"
created:
type: integer
description: >-
The Unix timestamp in seconds when the chat completion was created
model:
type: string
description: >-
The model that was used to generate the chat completion
input_messages:
type: array
items:
$ref: '#/components/schemas/OpenAIMessageParam'
additionalProperties: false
required:
- id
- choices
- object
- created
- model
- input_messages
title: OpenAICompletionWithInputMessages
description: >-
List of chat completion objects with their input messages
has_more:
type: boolean
description: >-
Whether there are more completions available beyond this list
first_id:
type: string
description: ID of the first completion in this list
last_id:
type: string
description: ID of the last completion in this list
object:
type: string
const: list
default: list
description: >-
Must be "list" to identify this as a list response
additionalProperties: false
required:
- data
- has_more
- first_id
- last_id
- object
title: ListOpenAIChatCompletionResponse
description: >-
Response from listing OpenAI-compatible chat completions.
OpenAIAssistantMessageParam:
type: object
properties:
role:
type: string
const: assistant
default: assistant
description: >-
Must be "assistant" to identify this as the model's response
content:
oneOf:
- type: string
- type: array
items:
$ref: '#/components/schemas/OpenAIChatCompletionContentPartTextParam'
description: The content of the model's response
name:
type: string
description: >-
(Optional) The name of the assistant message participant.
tool_calls:
type: array
items:
$ref: '#/components/schemas/OpenAIChatCompletionToolCall'
description: >-
List of tool calls. Each tool call is an OpenAIChatCompletionToolCall
object.
additionalProperties: false
required:
- role
title: OpenAIAssistantMessageParam
description: >-
A message containing the model's (assistant) response in an OpenAI-compatible
chat completion request.
"OpenAIChatCompletionContentPartImageParam":
type: object
properties:
type:
type: string
const: image_url
default: image_url
description: >-
Must be "image_url" to identify this as image content
image_url:
$ref: '#/components/schemas/OpenAIImageURL'
description: >-
Image URL specification and processing details
additionalProperties: false
required:
- type
- image_url
title: >-
OpenAIChatCompletionContentPartImageParam
description: >-
Image content part for OpenAI-compatible chat completion messages.
OpenAIChatCompletionContentPartParam:
oneOf:
- $ref: '#/components/schemas/OpenAIChatCompletionContentPartTextParam'
- $ref: '#/components/schemas/OpenAIChatCompletionContentPartImageParam'
- $ref: '#/components/schemas/OpenAIFile'
discriminator:
propertyName: type
mapping:
text: '#/components/schemas/OpenAIChatCompletionContentPartTextParam'
image_url: '#/components/schemas/OpenAIChatCompletionContentPartImageParam'
file: '#/components/schemas/OpenAIFile'
OpenAIChatCompletionContentPartTextParam:
type: object
properties:
type:
type: string
const: text
default: text
description: >-
Must be "text" to identify this as text content
text:
type: string
description: The text content of the message
additionalProperties: false
required:
- type
- text
title: OpenAIChatCompletionContentPartTextParam
description: >-
Text content part for OpenAI-compatible chat completion messages.
OpenAIChatCompletionToolCall:
type: object
properties:
index:
type: integer
description: >-
(Optional) Index of the tool call in the list
id:
type: string
description: >-
(Optional) Unique identifier for the tool call
type:
type: string
const: function
default: function
description: >-
Must be "function" to identify this as a function call
function:
$ref: '#/components/schemas/OpenAIChatCompletionToolCallFunction'
description: (Optional) Function call details
additionalProperties: false
required:
- type
title: OpenAIChatCompletionToolCall
description: >-
Tool call specification for OpenAI-compatible chat completion responses.
OpenAIChatCompletionToolCallFunction:
type: object
properties:
name:
type: string
description: (Optional) Name of the function to call
arguments:
type: string
description: >-
(Optional) Arguments to pass to the function as a JSON string
additionalProperties: false
title: OpenAIChatCompletionToolCallFunction
description: >-
Function call details for OpenAI-compatible tool calls.
OpenAIChoice:
type: object
properties:
message:
oneOf:
- $ref: '#/components/schemas/OpenAIUserMessageParam'
- $ref: '#/components/schemas/OpenAISystemMessageParam'
- $ref: '#/components/schemas/OpenAIAssistantMessageParam'
- $ref: '#/components/schemas/OpenAIToolMessageParam'
- $ref: '#/components/schemas/OpenAIDeveloperMessageParam'
discriminator:
propertyName: role
mapping:
user: '#/components/schemas/OpenAIUserMessageParam'
system: '#/components/schemas/OpenAISystemMessageParam'
assistant: '#/components/schemas/OpenAIAssistantMessageParam'
tool: '#/components/schemas/OpenAIToolMessageParam'
developer: '#/components/schemas/OpenAIDeveloperMessageParam'
description: The message from the model
finish_reason:
type: string
description: The reason the model stopped generating
index:
type: integer
description: The index of the choice
logprobs:
$ref: '#/components/schemas/OpenAIChoiceLogprobs'
description: >-
(Optional) The log probabilities for the tokens in the message
additionalProperties: false
required:
- message
- finish_reason
- index
title: OpenAIChoice
description: >-
A choice from an OpenAI-compatible chat completion response.
OpenAIChoiceLogprobs:
type: object
properties:
content:
type: array
items:
$ref: '#/components/schemas/OpenAITokenLogProb'
description: >-
(Optional) The log probabilities for the tokens in the message
refusal:
type: array
items:
$ref: '#/components/schemas/OpenAITokenLogProb'
description: >-
(Optional) The log probabilities for the tokens in the message
additionalProperties: false
title: OpenAIChoiceLogprobs
description: >-
The log probabilities for the tokens in the message from an OpenAI-compatible
chat completion response.
OpenAIDeveloperMessageParam:
type: object
properties:
role:
type: string
const: developer
default: developer
description: >-
Must be "developer" to identify this as a developer message
content:
oneOf:
- type: string
- type: array
items:
$ref: '#/components/schemas/OpenAIChatCompletionContentPartTextParam'
description: The content of the developer message
name:
type: string
description: >-
(Optional) The name of the developer message participant.
additionalProperties: false
required:
- role
- content
title: OpenAIDeveloperMessageParam
description: >-
A message from the developer in an OpenAI-compatible chat completion request.
OpenAIFile:
type: object
properties:
type:
type: string
const: file
default: file
file:
$ref: '#/components/schemas/OpenAIFileFile'
additionalProperties: false
required:
- type
- file
title: OpenAIFile
OpenAIFileFile:
type: object
properties:
file_data:
type: string
file_id:
type: string
filename:
type: string
additionalProperties: false
title: OpenAIFileFile
OpenAIImageURL:
type: object
properties:
url:
type: string
description: >-
URL of the image to include in the message
detail:
type: string
description: >-
(Optional) Level of detail for image processing. Can be "low", "high",
or "auto"
additionalProperties: false
required:
- url
title: OpenAIImageURL
description: >-
Image URL specification for OpenAI-compatible chat completion messages.
OpenAIMessageParam:
oneOf:
- $ref: '#/components/schemas/OpenAIUserMessageParam'
- $ref: '#/components/schemas/OpenAISystemMessageParam'
- $ref: '#/components/schemas/OpenAIAssistantMessageParam'
- $ref: '#/components/schemas/OpenAIToolMessageParam'
- $ref: '#/components/schemas/OpenAIDeveloperMessageParam'
discriminator:
propertyName: role
mapping:
user: '#/components/schemas/OpenAIUserMessageParam'
system: '#/components/schemas/OpenAISystemMessageParam'
assistant: '#/components/schemas/OpenAIAssistantMessageParam'
tool: '#/components/schemas/OpenAIToolMessageParam'
developer: '#/components/schemas/OpenAIDeveloperMessageParam'
OpenAISystemMessageParam:
type: object
properties:
role:
type: string
const: system
default: system
description: >-
Must be "system" to identify this as a system message
content:
oneOf:
- type: string
- type: array
items:
$ref: '#/components/schemas/OpenAIChatCompletionContentPartTextParam'
description: >-
The content of the "system prompt". If multiple system messages are provided,
they are concatenated. The underlying Llama Stack code may also add other
system messages (for example, for formatting tool definitions).
name:
type: string
description: >-
(Optional) The name of the system message participant.
additionalProperties: false
required:
- role
- content
title: OpenAISystemMessageParam
description: >-
A system message providing instructions or context to the model.
OpenAITokenLogProb:
type: object
properties:
token:
type: string
bytes:
type: array
items:
type: integer
logprob:
type: number
top_logprobs:
type: array
items:
$ref: '#/components/schemas/OpenAITopLogProb'
additionalProperties: false
required:
- token
- logprob
- top_logprobs
title: OpenAITokenLogProb
description: >-
The log probability for a token from an OpenAI-compatible chat completion
response.
OpenAIToolMessageParam:
type: object
properties:
role:
type: string
const: tool
default: tool
description: >-
Must be "tool" to identify this as a tool response
tool_call_id:
type: string
description: >-
Unique identifier for the tool call this response is for
content:
oneOf:
- type: string
- type: array
items:
$ref: '#/components/schemas/OpenAIChatCompletionContentPartTextParam'
description: The response content from the tool
additionalProperties: false
required:
- role
- tool_call_id
- content
title: OpenAIToolMessageParam
description: >-
A message representing the result of a tool invocation in an OpenAI-compatible
chat completion request.
OpenAITopLogProb:
type: object
properties:
token:
type: string
bytes:
type: array
items:
type: integer
logprob:
type: number
additionalProperties: false
required:
- token
- logprob
title: OpenAITopLogProb
description: >-
The top log probability for a token from an OpenAI-compatible chat completion
response.
OpenAIUserMessageParam:
type: object
properties:
role:
type: string
const: user
default: user
description: >-
Must be "user" to identify this as a user message
content:
oneOf:
- type: string
- type: array
items:
$ref: '#/components/schemas/OpenAIChatCompletionContentPartParam'
description: >-
The content of the message, which can include text and other media
name:
type: string
description: >-
(Optional) The name of the user message participant.
additionalProperties: false
required:
- role
- content
title: OpenAIUserMessageParam
description: >-
A message from the user in an OpenAI-compatible chat completion request.
OpenAIJSONSchema:
type: object
properties:
name:
type: string
description: Name of the schema
description:
type: string
description: (Optional) Description of the schema
strict:
type: boolean
description: >-
(Optional) Whether to enforce strict adherence to the schema
schema:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: (Optional) The JSON schema definition
additionalProperties: false
required:
- name
title: OpenAIJSONSchema
description: >-
JSON schema specification for OpenAI-compatible structured response format.
OpenAIResponseFormatJSONObject:
type: object
properties:
type:
type: string
const: json_object
default: json_object
description: >-
Must be "json_object" to indicate generic JSON object response format
additionalProperties: false
required:
- type
title: OpenAIResponseFormatJSONObject
description: >-
JSON object response format for OpenAI-compatible chat completion requests.
OpenAIResponseFormatJSONSchema:
type: object
properties:
type:
type: string
const: json_schema
default: json_schema
description: >-
Must be "json_schema" to indicate structured JSON response format
json_schema:
$ref: '#/components/schemas/OpenAIJSONSchema'
description: >-
The JSON schema specification for the response
additionalProperties: false
required:
- type
- json_schema
title: OpenAIResponseFormatJSONSchema
description: >-
JSON schema response format for OpenAI-compatible chat completion requests.
OpenAIResponseFormatParam:
oneOf:
- $ref: '#/components/schemas/OpenAIResponseFormatText'
- $ref: '#/components/schemas/OpenAIResponseFormatJSONSchema'
- $ref: '#/components/schemas/OpenAIResponseFormatJSONObject'
discriminator:
propertyName: type
mapping:
text: '#/components/schemas/OpenAIResponseFormatText'
json_schema: '#/components/schemas/OpenAIResponseFormatJSONSchema'
json_object: '#/components/schemas/OpenAIResponseFormatJSONObject'
OpenAIResponseFormatText:
type: object
properties:
type:
type: string
const: text
default: text
description: >-
Must be "text" to indicate plain text response format
additionalProperties: false
required:
- type
title: OpenAIResponseFormatText
description: >-
Text response format for OpenAI-compatible chat completion requests.
OpenaiChatCompletionRequest:
type: object
properties:
model:
type: string
description: >-
The identifier of the model to use. The model must be registered with
Llama Stack and available via the /models endpoint.
messages:
type: array
items:
$ref: '#/components/schemas/OpenAIMessageParam'
description: List of messages in the conversation.
frequency_penalty:
type: number
description: >-
(Optional) The penalty for repeated tokens.
function_call:
oneOf:
- type: string
- type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: (Optional) The function call to use.
functions:
type: array
items:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: (Optional) List of functions to use.
logit_bias:
type: object
additionalProperties:
type: number
description: (Optional) The logit bias to use.
logprobs:
type: boolean
description: (Optional) The log probabilities to use.
max_completion_tokens:
type: integer
description: >-
(Optional) The maximum number of tokens to generate.
max_tokens:
type: integer
description: >-
(Optional) The maximum number of tokens to generate.
n:
type: integer
description: >-
(Optional) The number of completions to generate.
parallel_tool_calls:
type: boolean
description: >-
(Optional) Whether to parallelize tool calls.
presence_penalty:
type: number
description: >-
(Optional) The penalty for repeated tokens.
response_format:
$ref: '#/components/schemas/OpenAIResponseFormatParam'
description: (Optional) The response format to use.
seed:
type: integer
description: (Optional) The seed to use.
stop:
oneOf:
- type: string
- type: array
items:
type: string
description: (Optional) The stop tokens to use.
stream:
type: boolean
description: >-
(Optional) Whether to stream the response.
stream_options:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: (Optional) The stream options to use.
temperature:
type: number
description: (Optional) The temperature to use.
tool_choice:
oneOf:
- type: string
- type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: (Optional) The tool choice to use.
tools:
type: array
items:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: (Optional) The tools to use.
top_logprobs:
type: integer
description: >-
(Optional) The top log probabilities to use.
top_p:
type: number
description: (Optional) The top p to use.
user:
type: string
description: (Optional) The user to use.
additionalProperties: false
required:
- model
- messages
title: OpenaiChatCompletionRequest
OpenAIChatCompletion:
type: object
properties:
id:
type: string
description: The ID of the chat completion
choices:
type: array
items:
$ref: '#/components/schemas/OpenAIChoice'
description: List of choices
object:
type: string
const: chat.completion
default: chat.completion
description: >-
The object type, which will be "chat.completion"
created:
type: integer
description: >-
The Unix timestamp in seconds when the chat completion was created
model:
type: string
description: >-
The model that was used to generate the chat completion
additionalProperties: false
required:
- id
- choices
- object
- created
- model
title: OpenAIChatCompletion
description: >-
Response from an OpenAI-compatible chat completion request.
OpenAIChatCompletionChunk:
type: object
properties:
id:
type: string
description: The ID of the chat completion
choices:
type: array
items:
$ref: '#/components/schemas/OpenAIChunkChoice'
description: List of choices
object:
type: string
const: chat.completion.chunk
default: chat.completion.chunk
description: >-
The object type, which will be "chat.completion.chunk"
created:
type: integer
description: >-
The Unix timestamp in seconds when the chat completion was created
model:
type: string
description: >-
The model that was used to generate the chat completion
additionalProperties: false
required:
- id
- choices
- object
- created
- model
title: OpenAIChatCompletionChunk
description: >-
Chunk from a streaming response to an OpenAI-compatible chat completion request.
OpenAIChoiceDelta:
type: object
properties:
content:
type: string
description: (Optional) The content of the delta
refusal:
type: string
description: (Optional) The refusal of the delta
role:
type: string
description: (Optional) The role of the delta
tool_calls:
type: array
items:
$ref: '#/components/schemas/OpenAIChatCompletionToolCall'
description: (Optional) The tool calls of the delta
additionalProperties: false
title: OpenAIChoiceDelta
description: >-
A delta from an OpenAI-compatible chat completion streaming response.
OpenAIChunkChoice:
type: object
properties:
delta:
$ref: '#/components/schemas/OpenAIChoiceDelta'
description: The delta from the chunk
finish_reason:
type: string
description: The reason the model stopped generating
index:
type: integer
description: The index of the choice
logprobs:
$ref: '#/components/schemas/OpenAIChoiceLogprobs'
description: >-
(Optional) The log probabilities for the tokens in the message
additionalProperties: false
required:
- delta
- finish_reason
- index
title: OpenAIChunkChoice
description: >-
A chunk choice from an OpenAI-compatible chat completion streaming response.
OpenAICompletionWithInputMessages:
type: object
properties:
id:
type: string
description: The ID of the chat completion
choices:
type: array
items:
$ref: '#/components/schemas/OpenAIChoice'
description: List of choices
object:
type: string
const: chat.completion
default: chat.completion
description: >-
The object type, which will be "chat.completion"
created:
type: integer
description: >-
The Unix timestamp in seconds when the chat completion was created
model:
type: string
description: >-
The model that was used to generate the chat completion
input_messages:
type: array
items:
$ref: '#/components/schemas/OpenAIMessageParam'
additionalProperties: false
required:
- id
- choices
- object
- created
- model
- input_messages
title: OpenAICompletionWithInputMessages
OpenaiCompletionRequest:
type: object
properties:
model:
type: string
description: >-
The identifier of the model to use. The model must be registered with
Llama Stack and available via the /models endpoint.
prompt:
oneOf:
- type: string
- type: array
items:
type: string
- type: array
items:
type: integer
- type: array
items:
type: array
items:
type: integer
description: The prompt to generate a completion for.
best_of:
type: integer
description: >-
(Optional) The number of completions to generate.
echo:
type: boolean
description: (Optional) Whether to echo the prompt.
frequency_penalty:
type: number
description: >-
(Optional) The penalty for repeated tokens.
logit_bias:
type: object
additionalProperties:
type: number
description: (Optional) The logit bias to use.
logprobs:
type: boolean
description: (Optional) The log probabilities to use.
max_tokens:
type: integer
description: >-
(Optional) The maximum number of tokens to generate.
n:
type: integer
description: >-
(Optional) The number of completions to generate.
presence_penalty:
type: number
description: >-
(Optional) The penalty for repeated tokens.
seed:
type: integer
description: (Optional) The seed to use.
stop:
oneOf:
- type: string
- type: array
items:
type: string
description: (Optional) The stop tokens to use.
stream:
type: boolean
description: >-
(Optional) Whether to stream the response.
stream_options:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: (Optional) The stream options to use.
temperature:
type: number
description: (Optional) The temperature to use.
top_p:
type: number
description: (Optional) The top p to use.
user:
type: string
description: (Optional) The user to use.
guided_choice:
type: array
items:
type: string
prompt_logprobs:
type: integer
suffix:
type: string
description: >-
(Optional) The suffix that should be appended to the completion.
additionalProperties: false
required:
- model
- prompt
title: OpenaiCompletionRequest
OpenAICompletion:
type: object
properties:
id:
type: string
choices:
type: array
items:
$ref: '#/components/schemas/OpenAICompletionChoice'
created:
type: integer
model:
type: string
object:
type: string
const: text_completion
default: text_completion
additionalProperties: false
required:
- id
- choices
- created
- model
- object
title: OpenAICompletion
description: >-
Response from an OpenAI-compatible completion request.
OpenAICompletionChoice:
type: object
properties:
finish_reason:
type: string
text:
type: string
index:
type: integer
logprobs:
$ref: '#/components/schemas/OpenAIChoiceLogprobs'
additionalProperties: false
required:
- finish_reason
- text
- index
title: OpenAICompletionChoice
description: >-
A choice from an OpenAI-compatible completion response.
OpenaiEmbeddingsRequest:
type: object
properties:
model:
type: string
description: >-
The identifier of the model to use. The model must be an embedding model
registered with Llama Stack and available via the /models endpoint.
input:
oneOf:
- type: string
- type: array
items:
type: string
description: >-
Input text to embed, encoded as a string or array of strings. To embed
multiple inputs in a single request, pass an array of strings.
encoding_format:
type: string
description: >-
(Optional) The format to return the embeddings in. Can be either "float"
or "base64". Defaults to "float".
dimensions:
type: integer
description: >-
(Optional) The number of dimensions the resulting output embeddings should
have. Only supported in text-embedding-3 and later models.
user:
type: string
description: >-
(Optional) A unique identifier representing your end-user, which can help
OpenAI to monitor and detect abuse.
additionalProperties: false
required:
- model
- input
title: OpenaiEmbeddingsRequest
OpenAIEmbeddingData:
type: object
properties:
object:
type: string
const: embedding
default: embedding
description: >-
The object type, which will be "embedding"
embedding:
oneOf:
- type: array
items:
type: number
- type: string
description: >-
The embedding vector as a list of floats (when encoding_format="float")
or as a base64-encoded string (when encoding_format="base64")
index:
type: integer
description: >-
The index of the embedding in the input list
additionalProperties: false
required:
- object
- embedding
- index
title: OpenAIEmbeddingData
description: >-
A single embedding data object from an OpenAI-compatible embeddings response.
OpenAIEmbeddingUsage:
type: object
properties:
prompt_tokens:
type: integer
description: The number of tokens in the input
total_tokens:
type: integer
description: The total number of tokens used
additionalProperties: false
required:
- prompt_tokens
- total_tokens
title: OpenAIEmbeddingUsage
description: >-
Usage information for an OpenAI-compatible embeddings response.
OpenAIEmbeddingsResponse:
type: object
properties:
object:
type: string
const: list
default: list
description: The object type, which will be "list"
data:
type: array
items:
$ref: '#/components/schemas/OpenAIEmbeddingData'
description: List of embedding data objects
model:
type: string
description: >-
The model that was used to generate the embeddings
usage:
$ref: '#/components/schemas/OpenAIEmbeddingUsage'
description: Usage information
additionalProperties: false
required:
- object
- data
- model
- usage
title: OpenAIEmbeddingsResponse
description: >-
Response from an OpenAI-compatible embeddings request.
OpenAIFilePurpose:
type: string
enum:
- assistants
- batch
title: OpenAIFilePurpose
description: >-
Valid purpose values for OpenAI Files API.
ListOpenAIFileResponse:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/OpenAIFileObject'
description: List of file objects
has_more:
type: boolean
description: >-
Whether there are more files available beyond this page
first_id:
type: string
description: >-
ID of the first file in the list for pagination
last_id:
type: string
description: >-
ID of the last file in the list for pagination
object:
type: string
const: list
default: list
description: The object type, which is always "list"
additionalProperties: false
required:
- data
- has_more
- first_id
- last_id
- object
title: ListOpenAIFileResponse
description: >-
Response for listing files in OpenAI Files API.
OpenAIFileObject:
type: object
properties:
object:
type: string
const: file
default: file
description: The object type, which is always "file"
id:
type: string
description: >-
The file identifier, which can be referenced in the API endpoints
bytes:
type: integer
description: The size of the file, in bytes
created_at:
type: integer
description: >-
The Unix timestamp (in seconds) for when the file was created
expires_at:
type: integer
description: >-
The Unix timestamp (in seconds) for when the file expires
filename:
type: string
description: The name of the file
purpose:
type: string
enum:
- assistants
- batch
description: The intended purpose of the file
additionalProperties: false
required:
- object
- id
- bytes
- created_at
- expires_at
- filename
- purpose
title: OpenAIFileObject
description: >-
OpenAI File object as defined in the OpenAI Files API.
ExpiresAfter:
type: object
properties:
anchor:
type: string
const: created_at
seconds:
type: integer
additionalProperties: false
required:
- anchor
- seconds
title: ExpiresAfter
description: >-
Control expiration of uploaded files.
Params:
- anchor, must be "created_at"
- seconds, must be int between 3600 and 2592000 (1 hour to 30 days)
OpenAIFileDeleteResponse:
type: object
properties:
id:
type: string
description: The file identifier that was deleted
object:
type: string
const: file
default: file
description: The object type, which is always "file"
deleted:
type: boolean
description: >-
Whether the file was successfully deleted
additionalProperties: false
required:
- id
- object
- deleted
title: OpenAIFileDeleteResponse
description: >-
Response for deleting a file in OpenAI Files API.
Response:
type: object
title: Response
HealthInfo:
type: object
properties:
status:
type: string
enum:
- OK
- Error
- Not Implemented
description: Current health status of the service
additionalProperties: false
required:
- status
title: HealthInfo
description: >-
Health status information for the service.
RouteInfo:
type: object
properties:
route:
type: string
description: The API endpoint path
method:
type: string
description: HTTP method for the route
provider_types:
type: array
items:
type: string
description: >-
List of provider types that implement this route
additionalProperties: false
required:
- route
- method
- provider_types
title: RouteInfo
description: >-
Information about an API route including its path, method, and implementing
providers.
ListRoutesResponse:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/RouteInfo'
description: >-
List of available route information objects
additionalProperties: false
required:
- data
title: ListRoutesResponse
description: >-
Response containing a list of all available API routes.
Model:
type: object
properties:
identifier:
type: string
description: >-
Unique identifier for this resource in llama stack
provider_resource_id:
type: string
description: >-
Unique identifier for this resource in the provider
provider_id:
type: string
description: >-
ID of the provider that owns this resource
type:
type: string
enum:
- model
- shield
- vector_db
- dataset
- scoring_function
- benchmark
- tool
- tool_group
- prompt
const: model
default: model
description: >-
The resource type, always 'model' for model resources
metadata:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: Any additional metadata for this model
model_type:
$ref: '#/components/schemas/ModelType'
default: llm
description: >-
The type of model (LLM or embedding model)
additionalProperties: false
required:
- identifier
- provider_id
- type
- metadata
- model_type
title: Model
description: >-
A model resource representing an AI model registered in Llama Stack.
ModelType:
type: string
enum:
- llm
- embedding
title: ModelType
description: >-
Enumeration of supported model types in Llama Stack.
ListModelsResponse:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/Model'
additionalProperties: false
required:
- data
title: ListModelsResponse
RegisterModelRequest:
type: object
properties:
model_id:
type: string
description: The identifier of the model to register.
provider_model_id:
type: string
description: >-
The identifier of the model in the provider.
provider_id:
type: string
description: The identifier of the provider.
metadata:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: Any additional metadata for this model.
model_type:
$ref: '#/components/schemas/ModelType'
description: The type of model to register.
additionalProperties: false
required:
- model_id
title: RegisterModelRequest
RunModerationRequest:
type: object
properties:
input:
oneOf:
- type: string
- type: array
items:
type: string
description: >-
Input (or inputs) to classify. Can be a single string, an array of strings,
or an array of multi-modal input objects similar to other models.
model:
type: string
description: >-
The content moderation model you would like to use.
additionalProperties: false
required:
- input
- model
title: RunModerationRequest
ModerationObject:
type: object
properties:
id:
type: string
description: >-
The unique identifier for the moderation request.
model:
type: string
description: >-
The model used to generate the moderation results.
results:
type: array
items:
$ref: '#/components/schemas/ModerationObjectResults'
description: A list of moderation objects
additionalProperties: false
required:
- id
- model
- results
title: ModerationObject
description: A moderation object.
ModerationObjectResults:
type: object
properties:
flagged:
type: boolean
description: >-
Whether any of the below categories are flagged.
categories:
type: object
additionalProperties:
type: boolean
description: >-
A list of the categories, and whether they are flagged or not.
category_applied_input_types:
type: object
additionalProperties:
type: array
items:
type: string
description: >-
A list of the categories along with the input type(s) that the score applies
to.
category_scores:
type: object
additionalProperties:
type: number
description: >-
A list of the categories along with their scores as predicted by model.
user_message:
type: string
metadata:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
additionalProperties: false
required:
- flagged
- metadata
title: ModerationObjectResults
description: A moderation object.
Prompt:
type: object
properties:
prompt:
type: string
description: >-
The system prompt text with variable placeholders. Variables are only
supported when using the Responses API.
version:
type: integer
description: >-
Version (integer starting at 1, incremented on save)
prompt_id:
type: string
description: >-
Unique identifier formatted as 'pmpt_<48-digit-hash>'
variables:
type: array
items:
type: string
description: >-
List of prompt variable names that can be used in the prompt template
is_default:
type: boolean
default: false
description: >-
Boolean indicating whether this version is the default version for this
prompt
additionalProperties: false
required:
- version
- prompt_id
- variables
- is_default
title: Prompt
description: >-
A prompt resource representing a stored OpenAI Compatible prompt template
in Llama Stack.
ListPromptsResponse:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/Prompt'
additionalProperties: false
required:
- data
title: ListPromptsResponse
description: Response model to list prompts.
CreatePromptRequest:
type: object
properties:
prompt:
type: string
description: >-
The prompt text content with variable placeholders.
variables:
type: array
items:
type: string
description: >-
List of variable names that can be used in the prompt template.
additionalProperties: false
required:
- prompt
title: CreatePromptRequest
UpdatePromptRequest:
type: object
properties:
prompt:
type: string
description: The updated prompt text content.
version:
type: integer
description: >-
The current version of the prompt being updated.
variables:
type: array
items:
type: string
description: >-
Updated list of variable names that can be used in the prompt template.
set_as_default:
type: boolean
description: >-
Set the new version as the default (default=True).
additionalProperties: false
required:
- prompt
- version
- set_as_default
title: UpdatePromptRequest
SetDefaultVersionRequest:
type: object
properties:
version:
type: integer
description: The version to set as default.
additionalProperties: false
required:
- version
title: SetDefaultVersionRequest
ProviderInfo:
type: object
properties:
api:
type: string
description: The API name this provider implements
provider_id:
type: string
description: Unique identifier for the provider
provider_type:
type: string
description: The type of provider implementation
config:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: >-
Configuration parameters for the provider
health:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: Current health status of the provider
additionalProperties: false
required:
- api
- provider_id
- provider_type
- config
- health
title: ProviderInfo
description: >-
Information about a registered provider including its configuration and health
status.
ListProvidersResponse:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/ProviderInfo'
description: List of provider information objects
additionalProperties: false
required:
- data
title: ListProvidersResponse
description: >-
Response containing a list of all available providers.
ListOpenAIResponseObject:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/OpenAIResponseObjectWithInput'
description: >-
List of response objects with their input context
has_more:
type: boolean
description: >-
Whether there are more results available beyond this page
first_id:
type: string
description: >-
Identifier of the first item in this page
last_id:
type: string
description: Identifier of the last item in this page
object:
type: string
const: list
default: list
description: Object type identifier, always "list"
additionalProperties: false
required:
- data
- has_more
- first_id
- last_id
- object
title: ListOpenAIResponseObject
description: >-
Paginated list of OpenAI response objects with navigation metadata.
OpenAIResponseAnnotationCitation:
type: object
properties:
type:
type: string
const: url_citation
default: url_citation
description: >-
Annotation type identifier, always "url_citation"
end_index:
type: integer
description: >-
End position of the citation span in the content
start_index:
type: integer
description: >-
Start position of the citation span in the content
title:
type: string
description: Title of the referenced web resource
url:
type: string
description: URL of the referenced web resource
additionalProperties: false
required:
- type
- end_index
- start_index
- title
- url
title: OpenAIResponseAnnotationCitation
description: >-
URL citation annotation for referencing external web resources.
"OpenAIResponseAnnotationContainerFileCitation":
type: object
properties:
type:
type: string
const: container_file_citation
default: container_file_citation
container_id:
type: string
end_index:
type: integer
file_id:
type: string
filename:
type: string
start_index:
type: integer
additionalProperties: false
required:
- type
- container_id
- end_index
- file_id
- filename
- start_index
title: >-
OpenAIResponseAnnotationContainerFileCitation
OpenAIResponseAnnotationFileCitation:
type: object
properties:
type:
type: string
const: file_citation
default: file_citation
description: >-
Annotation type identifier, always "file_citation"
file_id:
type: string
description: Unique identifier of the referenced file
filename:
type: string
description: Name of the referenced file
index:
type: integer
description: >-
Position index of the citation within the content
additionalProperties: false
required:
- type
- file_id
- filename
- index
title: OpenAIResponseAnnotationFileCitation
description: >-
File citation annotation for referencing specific files in response content.
OpenAIResponseAnnotationFilePath:
type: object
properties:
type:
type: string
const: file_path
default: file_path
file_id:
type: string
index:
type: integer
additionalProperties: false
required:
- type
- file_id
- index
title: OpenAIResponseAnnotationFilePath
OpenAIResponseAnnotations:
oneOf:
- $ref: '#/components/schemas/OpenAIResponseAnnotationFileCitation'
- $ref: '#/components/schemas/OpenAIResponseAnnotationCitation'
- $ref: '#/components/schemas/OpenAIResponseAnnotationContainerFileCitation'
- $ref: '#/components/schemas/OpenAIResponseAnnotationFilePath'
discriminator:
propertyName: type
mapping:
file_citation: '#/components/schemas/OpenAIResponseAnnotationFileCitation'
url_citation: '#/components/schemas/OpenAIResponseAnnotationCitation'
container_file_citation: '#/components/schemas/OpenAIResponseAnnotationContainerFileCitation'
file_path: '#/components/schemas/OpenAIResponseAnnotationFilePath'
OpenAIResponseError:
type: object
properties:
code:
type: string
description: >-
Error code identifying the type of failure
message:
type: string
description: >-
Human-readable error message describing the failure
additionalProperties: false
required:
- code
- message
title: OpenAIResponseError
description: >-
Error details for failed OpenAI response requests.
OpenAIResponseInput:
oneOf:
- $ref: '#/components/schemas/OpenAIResponseOutputMessageWebSearchToolCall'
- $ref: '#/components/schemas/OpenAIResponseOutputMessageFileSearchToolCall'
- $ref: '#/components/schemas/OpenAIResponseOutputMessageFunctionToolCall'
- $ref: '#/components/schemas/OpenAIResponseInputFunctionToolCallOutput'
- $ref: '#/components/schemas/OpenAIResponseMCPApprovalRequest'
- $ref: '#/components/schemas/OpenAIResponseMCPApprovalResponse'
- $ref: '#/components/schemas/OpenAIResponseMessage'
"OpenAIResponseInputFunctionToolCallOutput":
type: object
properties:
call_id:
type: string
output:
type: string
type:
type: string
const: function_call_output
default: function_call_output
id:
type: string
status:
type: string
additionalProperties: false
required:
- call_id
- output
- type
title: >-
OpenAIResponseInputFunctionToolCallOutput
description: >-
This represents the output of a function call that gets passed back to the
model.
OpenAIResponseInputMessageContent:
oneOf:
- $ref: '#/components/schemas/OpenAIResponseInputMessageContentText'
- $ref: '#/components/schemas/OpenAIResponseInputMessageContentImage'
discriminator:
propertyName: type
mapping:
input_text: '#/components/schemas/OpenAIResponseInputMessageContentText'
input_image: '#/components/schemas/OpenAIResponseInputMessageContentImage'
OpenAIResponseInputMessageContentImage:
type: object
properties:
detail:
oneOf:
- type: string
const: low
- type: string
const: high
- type: string
const: auto
default: auto
description: >-
Level of detail for image processing, can be "low", "high", or "auto"
type:
type: string
const: input_image
default: input_image
description: >-
Content type identifier, always "input_image"
image_url:
type: string
description: (Optional) URL of the image content
additionalProperties: false
required:
- detail
- type
title: OpenAIResponseInputMessageContentImage
description: >-
Image content for input messages in OpenAI response format.
OpenAIResponseInputMessageContentText:
type: object
properties:
text:
type: string
description: The text content of the input message
type:
type: string
const: input_text
default: input_text
description: >-
Content type identifier, always "input_text"
additionalProperties: false
required:
- text
- type
title: OpenAIResponseInputMessageContentText
description: >-
Text content for input messages in OpenAI response format.
OpenAIResponseMCPApprovalRequest:
type: object
properties:
arguments:
type: string
id:
type: string
name:
type: string
server_label:
type: string
type:
type: string
const: mcp_approval_request
default: mcp_approval_request
additionalProperties: false
required:
- arguments
- id
- name
- server_label
- type
title: OpenAIResponseMCPApprovalRequest
description: >-
A request for human approval of a tool invocation.
OpenAIResponseMCPApprovalResponse:
type: object
properties:
approval_request_id:
type: string
approve:
type: boolean
type:
type: string
const: mcp_approval_response
default: mcp_approval_response
id:
type: string
reason:
type: string
additionalProperties: false
required:
- approval_request_id
- approve
- type
title: OpenAIResponseMCPApprovalResponse
description: A response to an MCP approval request.
OpenAIResponseMessage:
type: object
properties:
content:
oneOf:
- type: string
- type: array
items:
$ref: '#/components/schemas/OpenAIResponseInputMessageContent'
- type: array
items:
$ref: '#/components/schemas/OpenAIResponseOutputMessageContent'
role:
oneOf:
- type: string
const: system
- type: string
const: developer
- type: string
const: user
- type: string
const: assistant
type:
type: string
const: message
default: message
id:
type: string
status:
type: string
additionalProperties: false
required:
- content
- role
- type
title: OpenAIResponseMessage
description: >-
Corresponds to the various Message types in the Responses API. They are all
under one type because the Responses API gives them all the same "type" value,
and there is no way to tell them apart in certain scenarios.
OpenAIResponseObjectWithInput:
type: object
properties:
created_at:
type: integer
description: >-
Unix timestamp when the response was created
error:
$ref: '#/components/schemas/OpenAIResponseError'
description: >-
(Optional) Error details if the response generation failed
id:
type: string
description: Unique identifier for this response
model:
type: string
description: Model identifier used for generation
object:
type: string
const: response
default: response
description: >-
Object type identifier, always "response"
output:
type: array
items:
$ref: '#/components/schemas/OpenAIResponseOutput'
description: >-
List of generated output items (messages, tool calls, etc.)
parallel_tool_calls:
type: boolean
default: false
description: >-
Whether tool calls can be executed in parallel
previous_response_id:
type: string
description: >-
(Optional) ID of the previous response in a conversation
status:
type: string
description: >-
Current status of the response generation
temperature:
type: number
description: >-
(Optional) Sampling temperature used for generation
text:
$ref: '#/components/schemas/OpenAIResponseText'
description: >-
Text formatting configuration for the response
top_p:
type: number
description: >-
(Optional) Nucleus sampling parameter used for generation
truncation:
type: string
description: >-
(Optional) Truncation strategy applied to the response
input:
type: array
items:
$ref: '#/components/schemas/OpenAIResponseInput'
description: >-
List of input items that led to this response
additionalProperties: false
required:
- created_at
- id
- model
- object
- output
- parallel_tool_calls
- status
- text
- input
title: OpenAIResponseObjectWithInput
description: >-
OpenAI response object extended with input context information.
OpenAIResponseOutput:
oneOf:
- $ref: '#/components/schemas/OpenAIResponseMessage'
- $ref: '#/components/schemas/OpenAIResponseOutputMessageWebSearchToolCall'
- $ref: '#/components/schemas/OpenAIResponseOutputMessageFileSearchToolCall'
- $ref: '#/components/schemas/OpenAIResponseOutputMessageFunctionToolCall'
- $ref: '#/components/schemas/OpenAIResponseOutputMessageMCPCall'
- $ref: '#/components/schemas/OpenAIResponseOutputMessageMCPListTools'
- $ref: '#/components/schemas/OpenAIResponseMCPApprovalRequest'
discriminator:
propertyName: type
mapping:
message: '#/components/schemas/OpenAIResponseMessage'
web_search_call: '#/components/schemas/OpenAIResponseOutputMessageWebSearchToolCall'
file_search_call: '#/components/schemas/OpenAIResponseOutputMessageFileSearchToolCall'
function_call: '#/components/schemas/OpenAIResponseOutputMessageFunctionToolCall'
mcp_call: '#/components/schemas/OpenAIResponseOutputMessageMCPCall'
mcp_list_tools: '#/components/schemas/OpenAIResponseOutputMessageMCPListTools'
mcp_approval_request: '#/components/schemas/OpenAIResponseMCPApprovalRequest'
OpenAIResponseOutputMessageContent:
type: object
properties:
text:
type: string
type:
type: string
const: output_text
default: output_text
annotations:
type: array
items:
$ref: '#/components/schemas/OpenAIResponseAnnotations'
additionalProperties: false
required:
- text
- type
- annotations
title: >-
OpenAIResponseOutputMessageContentOutputText
"OpenAIResponseOutputMessageFileSearchToolCall":
type: object
properties:
id:
type: string
description: Unique identifier for this tool call
queries:
type: array
items:
type: string
description: List of search queries executed
status:
type: string
description: >-
Current status of the file search operation
type:
type: string
const: file_search_call
default: file_search_call
description: >-
Tool call type identifier, always "file_search_call"
results:
type: array
items:
type: object
properties:
attributes:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: >-
(Optional) Key-value attributes associated with the file
file_id:
type: string
description: >-
Unique identifier of the file containing the result
filename:
type: string
description: Name of the file containing the result
score:
type: number
description: >-
Relevance score for this search result (between 0 and 1)
text:
type: string
description: Text content of the search result
additionalProperties: false
required:
- attributes
- file_id
- filename
- score
- text
title: >-
OpenAIResponseOutputMessageFileSearchToolCallResults
description: >-
Search results returned by the file search operation.
description: >-
(Optional) Search results returned by the file search operation
additionalProperties: false
required:
- id
- queries
- status
- type
title: >-
OpenAIResponseOutputMessageFileSearchToolCall
description: >-
File search tool call output message for OpenAI responses.
"OpenAIResponseOutputMessageFunctionToolCall":
type: object
properties:
call_id:
type: string
description: Unique identifier for the function call
name:
type: string
description: Name of the function being called
arguments:
type: string
description: >-
JSON string containing the function arguments
type:
type: string
const: function_call
default: function_call
description: >-
Tool call type identifier, always "function_call"
id:
type: string
description: >-
(Optional) Additional identifier for the tool call
status:
type: string
description: >-
(Optional) Current status of the function call execution
additionalProperties: false
required:
- call_id
- name
- arguments
- type
title: >-
OpenAIResponseOutputMessageFunctionToolCall
description: >-
Function tool call output message for OpenAI responses.
OpenAIResponseOutputMessageMCPCall:
type: object
properties:
id:
type: string
description: Unique identifier for this MCP call
type:
type: string
const: mcp_call
default: mcp_call
description: >-
Tool call type identifier, always "mcp_call"
arguments:
type: string
description: >-
JSON string containing the MCP call arguments
name:
type: string
description: Name of the MCP method being called
server_label:
type: string
description: >-
Label identifying the MCP server handling the call
error:
type: string
description: >-
(Optional) Error message if the MCP call failed
output:
type: string
description: >-
(Optional) Output result from the successful MCP call
additionalProperties: false
required:
- id
- type
- arguments
- name
- server_label
title: OpenAIResponseOutputMessageMCPCall
description: >-
Model Context Protocol (MCP) call output message for OpenAI responses.
OpenAIResponseOutputMessageMCPListTools:
type: object
properties:
id:
type: string
description: >-
Unique identifier for this MCP list tools operation
type:
type: string
const: mcp_list_tools
default: mcp_list_tools
description: >-
Tool call type identifier, always "mcp_list_tools"
server_label:
type: string
description: >-
Label identifying the MCP server providing the tools
tools:
type: array
items:
type: object
properties:
input_schema:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: >-
JSON schema defining the tool's input parameters
name:
type: string
description: Name of the tool
description:
type: string
description: >-
(Optional) Description of what the tool does
additionalProperties: false
required:
- input_schema
- name
title: MCPListToolsTool
description: >-
Tool definition returned by MCP list tools operation.
description: >-
List of available tools provided by the MCP server
additionalProperties: false
required:
- id
- type
- server_label
- tools
title: OpenAIResponseOutputMessageMCPListTools
description: >-
MCP list tools output message containing available tools from an MCP server.
"OpenAIResponseOutputMessageWebSearchToolCall":
type: object
properties:
id:
type: string
description: Unique identifier for this tool call
status:
type: string
description: >-
Current status of the web search operation
type:
type: string
const: web_search_call
default: web_search_call
description: >-
Tool call type identifier, always "web_search_call"
additionalProperties: false
required:
- id
- status
- type
title: >-
OpenAIResponseOutputMessageWebSearchToolCall
description: >-
Web search tool call output message for OpenAI responses.
OpenAIResponseText:
type: object
properties:
format:
type: object
properties:
type:
oneOf:
- type: string
const: text
- type: string
const: json_schema
- type: string
const: json_object
description: >-
Must be "text", "json_schema", or "json_object" to identify the format
type
name:
type: string
description: >-
The name of the response format. Only used for json_schema.
schema:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: >-
The JSON schema the response should conform to. In a Python SDK, this
is often a `pydantic` model. Only used for json_schema.
description:
type: string
description: >-
(Optional) A description of the response format. Only used for json_schema.
strict:
type: boolean
description: >-
(Optional) Whether to strictly enforce the JSON schema. If true, the
response must match the schema exactly. Only used for json_schema.
additionalProperties: false
required:
- type
description: >-
(Optional) Text format configuration specifying output format requirements
additionalProperties: false
title: OpenAIResponseText
description: >-
Text response configuration for OpenAI responses.
OpenAIResponseInputTool:
oneOf:
- $ref: '#/components/schemas/OpenAIResponseInputToolWebSearch'
- $ref: '#/components/schemas/OpenAIResponseInputToolFileSearch'
- $ref: '#/components/schemas/OpenAIResponseInputToolFunction'
- $ref: '#/components/schemas/OpenAIResponseInputToolMCP'
discriminator:
propertyName: type
mapping:
web_search: '#/components/schemas/OpenAIResponseInputToolWebSearch'
file_search: '#/components/schemas/OpenAIResponseInputToolFileSearch'
function: '#/components/schemas/OpenAIResponseInputToolFunction'
mcp: '#/components/schemas/OpenAIResponseInputToolMCP'
OpenAIResponseInputToolFileSearch:
type: object
properties:
type:
type: string
const: file_search
default: file_search
description: >-
Tool type identifier, always "file_search"
vector_store_ids:
type: array
items:
type: string
description: >-
List of vector store identifiers to search within
filters:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: >-
(Optional) Additional filters to apply to the search
max_num_results:
type: integer
default: 10
description: >-
(Optional) Maximum number of search results to return (1-50)
ranking_options:
type: object
properties:
ranker:
type: string
description: >-
(Optional) Name of the ranking algorithm to use
score_threshold:
type: number
default: 0.0
description: >-
(Optional) Minimum relevance score threshold for results
additionalProperties: false
description: >-
(Optional) Options for ranking and scoring search results
additionalProperties: false
required:
- type
- vector_store_ids
title: OpenAIResponseInputToolFileSearch
description: >-
File search tool configuration for OpenAI response inputs.
OpenAIResponseInputToolFunction:
type: object
properties:
type:
type: string
const: function
default: function
description: Tool type identifier, always "function"
name:
type: string
description: Name of the function that can be called
description:
type: string
description: >-
(Optional) Description of what the function does
parameters:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: >-
(Optional) JSON schema defining the function's parameters
strict:
type: boolean
description: >-
(Optional) Whether to enforce strict parameter validation
additionalProperties: false
required:
- type
- name
title: OpenAIResponseInputToolFunction
description: >-
Function tool configuration for OpenAI response inputs.
OpenAIResponseInputToolMCP:
type: object
properties:
type:
type: string
const: mcp
default: mcp
description: Tool type identifier, always "mcp"
server_label:
type: string
description: Label to identify this MCP server
server_url:
type: string
description: URL endpoint of the MCP server
headers:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: >-
(Optional) HTTP headers to include when connecting to the server
require_approval:
oneOf:
- type: string
const: always
- type: string
const: never
- type: object
properties:
always:
type: array
items:
type: string
description: >-
(Optional) List of tool names that always require approval
never:
type: array
items:
type: string
description: >-
(Optional) List of tool names that never require approval
additionalProperties: false
title: ApprovalFilter
description: >-
Filter configuration for MCP tool approval requirements.
default: never
description: >-
Approval requirement for tool calls ("always", "never", or filter)
allowed_tools:
oneOf:
- type: array
items:
type: string
- type: object
properties:
tool_names:
type: array
items:
type: string
description: >-
(Optional) List of specific tool names that are allowed
additionalProperties: false
title: AllowedToolsFilter
description: >-
Filter configuration for restricting which MCP tools can be used.
description: >-
(Optional) Restriction on which tools can be used from this server
additionalProperties: false
required:
- type
- server_label
- server_url
- require_approval
title: OpenAIResponseInputToolMCP
description: >-
Model Context Protocol (MCP) tool configuration for OpenAI response inputs.
OpenAIResponseInputToolWebSearch:
type: object
properties:
type:
oneOf:
- type: string
const: web_search
- type: string
const: web_search_preview
- type: string
const: web_search_preview_2025_03_11
default: web_search
description: Web search tool type variant to use
search_context_size:
type: string
default: medium
description: >-
(Optional) Size of search context, must be "low", "medium", or "high"
additionalProperties: false
required:
- type
title: OpenAIResponseInputToolWebSearch
description: >-
Web search tool configuration for OpenAI response inputs.
CreateOpenaiResponseRequest:
type: object
properties:
input:
oneOf:
- type: string
- type: array
items:
$ref: '#/components/schemas/OpenAIResponseInput'
description: Input message(s) to create the response.
model:
type: string
description: The underlying LLM used for completions.
instructions:
type: string
previous_response_id:
type: string
description: >-
(Optional) if specified, the new response will be a continuation of the
previous response. This can be used to easily fork-off new responses from
existing responses.
store:
type: boolean
stream:
type: boolean
temperature:
type: number
text:
$ref: '#/components/schemas/OpenAIResponseText'
tools:
type: array
items:
$ref: '#/components/schemas/OpenAIResponseInputTool'
include:
type: array
items:
type: string
description: >-
(Optional) Additional fields to include in the response.
max_infer_iters:
type: integer
additionalProperties: false
required:
- input
- model
title: CreateOpenaiResponseRequest
OpenAIResponseObject:
type: object
properties:
created_at:
type: integer
description: >-
Unix timestamp when the response was created
error:
$ref: '#/components/schemas/OpenAIResponseError'
description: >-
(Optional) Error details if the response generation failed
id:
type: string
description: Unique identifier for this response
model:
type: string
description: Model identifier used for generation
object:
type: string
const: response
default: response
description: >-
Object type identifier, always "response"
output:
type: array
items:
$ref: '#/components/schemas/OpenAIResponseOutput'
description: >-
List of generated output items (messages, tool calls, etc.)
parallel_tool_calls:
type: boolean
default: false
description: >-
Whether tool calls can be executed in parallel
previous_response_id:
type: string
description: >-
(Optional) ID of the previous response in a conversation
status:
type: string
description: >-
Current status of the response generation
temperature:
type: number
description: >-
(Optional) Sampling temperature used for generation
text:
$ref: '#/components/schemas/OpenAIResponseText'
description: >-
Text formatting configuration for the response
top_p:
type: number
description: >-
(Optional) Nucleus sampling parameter used for generation
truncation:
type: string
description: >-
(Optional) Truncation strategy applied to the response
additionalProperties: false
required:
- created_at
- id
- model
- object
- output
- parallel_tool_calls
- status
- text
title: OpenAIResponseObject
description: >-
Complete OpenAI response object containing generation results and metadata.
OpenAIResponseContentPartOutputText:
type: object
properties:
type:
type: string
const: output_text
default: output_text
text:
type: string
additionalProperties: false
required:
- type
- text
title: OpenAIResponseContentPartOutputText
OpenAIResponseContentPartRefusal:
type: object
properties:
type:
type: string
const: refusal
default: refusal
refusal:
type: string
additionalProperties: false
required:
- type
- refusal
title: OpenAIResponseContentPartRefusal
OpenAIResponseObjectStream:
oneOf:
- $ref: '#/components/schemas/OpenAIResponseObjectStreamResponseCreated'
- $ref: '#/components/schemas/OpenAIResponseObjectStreamResponseOutputItemAdded'
- $ref: '#/components/schemas/OpenAIResponseObjectStreamResponseOutputItemDone'
- $ref: '#/components/schemas/OpenAIResponseObjectStreamResponseOutputTextDelta'
- $ref: '#/components/schemas/OpenAIResponseObjectStreamResponseOutputTextDone'
- $ref: '#/components/schemas/OpenAIResponseObjectStreamResponseFunctionCallArgumentsDelta'
- $ref: '#/components/schemas/OpenAIResponseObjectStreamResponseFunctionCallArgumentsDone'
- $ref: '#/components/schemas/OpenAIResponseObjectStreamResponseWebSearchCallInProgress'
- $ref: '#/components/schemas/OpenAIResponseObjectStreamResponseWebSearchCallSearching'
- $ref: '#/components/schemas/OpenAIResponseObjectStreamResponseWebSearchCallCompleted'
- $ref: '#/components/schemas/OpenAIResponseObjectStreamResponseMcpListToolsInProgress'
- $ref: '#/components/schemas/OpenAIResponseObjectStreamResponseMcpListToolsFailed'
- $ref: '#/components/schemas/OpenAIResponseObjectStreamResponseMcpListToolsCompleted'
- $ref: '#/components/schemas/OpenAIResponseObjectStreamResponseMcpCallArgumentsDelta'
- $ref: '#/components/schemas/OpenAIResponseObjectStreamResponseMcpCallArgumentsDone'
- $ref: '#/components/schemas/OpenAIResponseObjectStreamResponseMcpCallInProgress'
- $ref: '#/components/schemas/OpenAIResponseObjectStreamResponseMcpCallFailed'
- $ref: '#/components/schemas/OpenAIResponseObjectStreamResponseMcpCallCompleted'
- $ref: '#/components/schemas/OpenAIResponseObjectStreamResponseContentPartAdded'
- $ref: '#/components/schemas/OpenAIResponseObjectStreamResponseContentPartDone'
- $ref: '#/components/schemas/OpenAIResponseObjectStreamResponseCompleted'
discriminator:
propertyName: type
mapping:
response.created: '#/components/schemas/OpenAIResponseObjectStreamResponseCreated'
response.output_item.added: '#/components/schemas/OpenAIResponseObjectStreamResponseOutputItemAdded'
response.output_item.done: '#/components/schemas/OpenAIResponseObjectStreamResponseOutputItemDone'
response.output_text.delta: '#/components/schemas/OpenAIResponseObjectStreamResponseOutputTextDelta'
response.output_text.done: '#/components/schemas/OpenAIResponseObjectStreamResponseOutputTextDone'
response.function_call_arguments.delta: '#/components/schemas/OpenAIResponseObjectStreamResponseFunctionCallArgumentsDelta'
response.function_call_arguments.done: '#/components/schemas/OpenAIResponseObjectStreamResponseFunctionCallArgumentsDone'
response.web_search_call.in_progress: '#/components/schemas/OpenAIResponseObjectStreamResponseWebSearchCallInProgress'
response.web_search_call.searching: '#/components/schemas/OpenAIResponseObjectStreamResponseWebSearchCallSearching'
response.web_search_call.completed: '#/components/schemas/OpenAIResponseObjectStreamResponseWebSearchCallCompleted'
response.mcp_list_tools.in_progress: '#/components/schemas/OpenAIResponseObjectStreamResponseMcpListToolsInProgress'
response.mcp_list_tools.failed: '#/components/schemas/OpenAIResponseObjectStreamResponseMcpListToolsFailed'
response.mcp_list_tools.completed: '#/components/schemas/OpenAIResponseObjectStreamResponseMcpListToolsCompleted'
response.mcp_call.arguments.delta: '#/components/schemas/OpenAIResponseObjectStreamResponseMcpCallArgumentsDelta'
response.mcp_call.arguments.done: '#/components/schemas/OpenAIResponseObjectStreamResponseMcpCallArgumentsDone'
response.mcp_call.in_progress: '#/components/schemas/OpenAIResponseObjectStreamResponseMcpCallInProgress'
response.mcp_call.failed: '#/components/schemas/OpenAIResponseObjectStreamResponseMcpCallFailed'
response.mcp_call.completed: '#/components/schemas/OpenAIResponseObjectStreamResponseMcpCallCompleted'
response.content_part.added: '#/components/schemas/OpenAIResponseObjectStreamResponseContentPartAdded'
response.content_part.done: '#/components/schemas/OpenAIResponseObjectStreamResponseContentPartDone'
response.completed: '#/components/schemas/OpenAIResponseObjectStreamResponseCompleted'
"OpenAIResponseObjectStreamResponseCompleted":
type: object
properties:
response:
$ref: '#/components/schemas/OpenAIResponseObject'
description: The completed response object
type:
type: string
const: response.completed
default: response.completed
description: >-
Event type identifier, always "response.completed"
additionalProperties: false
required:
- response
- type
title: >-
OpenAIResponseObjectStreamResponseCompleted
description: >-
Streaming event indicating a response has been completed.
"OpenAIResponseObjectStreamResponseContentPartAdded":
type: object
properties:
response_id:
type: string
description: >-
Unique identifier of the response containing this content
item_id:
type: string
description: >-
Unique identifier of the output item containing this content part
part:
oneOf:
- $ref: '#/components/schemas/OpenAIResponseContentPartOutputText'
- $ref: '#/components/schemas/OpenAIResponseContentPartRefusal'
discriminator:
propertyName: type
mapping:
output_text: '#/components/schemas/OpenAIResponseContentPartOutputText'
refusal: '#/components/schemas/OpenAIResponseContentPartRefusal'
description: The content part that was added
sequence_number:
type: integer
description: >-
Sequential number for ordering streaming events
type:
type: string
const: response.content_part.added
default: response.content_part.added
description: >-
Event type identifier, always "response.content_part.added"
additionalProperties: false
required:
- response_id
- item_id
- part
- sequence_number
- type
title: >-
OpenAIResponseObjectStreamResponseContentPartAdded
description: >-
Streaming event for when a new content part is added to a response item.
"OpenAIResponseObjectStreamResponseContentPartDone":
type: object
properties:
response_id:
type: string
description: >-
Unique identifier of the response containing this content
item_id:
type: string
description: >-
Unique identifier of the output item containing this content part
part:
oneOf:
- $ref: '#/components/schemas/OpenAIResponseContentPartOutputText'
- $ref: '#/components/schemas/OpenAIResponseContentPartRefusal'
discriminator:
propertyName: type
mapping:
output_text: '#/components/schemas/OpenAIResponseContentPartOutputText'
refusal: '#/components/schemas/OpenAIResponseContentPartRefusal'
description: The completed content part
sequence_number:
type: integer
description: >-
Sequential number for ordering streaming events
type:
type: string
const: response.content_part.done
default: response.content_part.done
description: >-
Event type identifier, always "response.content_part.done"
additionalProperties: false
required:
- response_id
- item_id
- part
- sequence_number
- type
title: >-
OpenAIResponseObjectStreamResponseContentPartDone
description: >-
Streaming event for when a content part is completed.
"OpenAIResponseObjectStreamResponseCreated":
type: object
properties:
response:
$ref: '#/components/schemas/OpenAIResponseObject'
description: The newly created response object
type:
type: string
const: response.created
default: response.created
description: >-
Event type identifier, always "response.created"
additionalProperties: false
required:
- response
- type
title: >-
OpenAIResponseObjectStreamResponseCreated
description: >-
Streaming event indicating a new response has been created.
"OpenAIResponseObjectStreamResponseFunctionCallArgumentsDelta":
type: object
properties:
delta:
type: string
description: >-
Incremental function call arguments being added
item_id:
type: string
description: >-
Unique identifier of the function call being updated
output_index:
type: integer
description: >-
Index position of the item in the output list
sequence_number:
type: integer
description: >-
Sequential number for ordering streaming events
type:
type: string
const: response.function_call_arguments.delta
default: response.function_call_arguments.delta
description: >-
Event type identifier, always "response.function_call_arguments.delta"
additionalProperties: false
required:
- delta
- item_id
- output_index
- sequence_number
- type
title: >-
OpenAIResponseObjectStreamResponseFunctionCallArgumentsDelta
description: >-
Streaming event for incremental function call argument updates.
"OpenAIResponseObjectStreamResponseFunctionCallArgumentsDone":
type: object
properties:
arguments:
type: string
description: >-
Final complete arguments JSON string for the function call
item_id:
type: string
description: >-
Unique identifier of the completed function call
output_index:
type: integer
description: >-
Index position of the item in the output list
sequence_number:
type: integer
description: >-
Sequential number for ordering streaming events
type:
type: string
const: response.function_call_arguments.done
default: response.function_call_arguments.done
description: >-
Event type identifier, always "response.function_call_arguments.done"
additionalProperties: false
required:
- arguments
- item_id
- output_index
- sequence_number
- type
title: >-
OpenAIResponseObjectStreamResponseFunctionCallArgumentsDone
description: >-
Streaming event for when function call arguments are completed.
"OpenAIResponseObjectStreamResponseMcpCallArgumentsDelta":
type: object
properties:
delta:
type: string
item_id:
type: string
output_index:
type: integer
sequence_number:
type: integer
type:
type: string
const: response.mcp_call.arguments.delta
default: response.mcp_call.arguments.delta
additionalProperties: false
required:
- delta
- item_id
- output_index
- sequence_number
- type
title: >-
OpenAIResponseObjectStreamResponseMcpCallArgumentsDelta
"OpenAIResponseObjectStreamResponseMcpCallArgumentsDone":
type: object
properties:
arguments:
type: string
item_id:
type: string
output_index:
type: integer
sequence_number:
type: integer
type:
type: string
const: response.mcp_call.arguments.done
default: response.mcp_call.arguments.done
additionalProperties: false
required:
- arguments
- item_id
- output_index
- sequence_number
- type
title: >-
OpenAIResponseObjectStreamResponseMcpCallArgumentsDone
"OpenAIResponseObjectStreamResponseMcpCallCompleted":
type: object
properties:
sequence_number:
type: integer
description: >-
Sequential number for ordering streaming events
type:
type: string
const: response.mcp_call.completed
default: response.mcp_call.completed
description: >-
Event type identifier, always "response.mcp_call.completed"
additionalProperties: false
required:
- sequence_number
- type
title: >-
OpenAIResponseObjectStreamResponseMcpCallCompleted
description: Streaming event for completed MCP calls.
"OpenAIResponseObjectStreamResponseMcpCallFailed":
type: object
properties:
sequence_number:
type: integer
description: >-
Sequential number for ordering streaming events
type:
type: string
const: response.mcp_call.failed
default: response.mcp_call.failed
description: >-
Event type identifier, always "response.mcp_call.failed"
additionalProperties: false
required:
- sequence_number
- type
title: >-
OpenAIResponseObjectStreamResponseMcpCallFailed
description: Streaming event for failed MCP calls.
"OpenAIResponseObjectStreamResponseMcpCallInProgress":
type: object
properties:
item_id:
type: string
description: Unique identifier of the MCP call
output_index:
type: integer
description: >-
Index position of the item in the output list
sequence_number:
type: integer
description: >-
Sequential number for ordering streaming events
type:
type: string
const: response.mcp_call.in_progress
default: response.mcp_call.in_progress
description: >-
Event type identifier, always "response.mcp_call.in_progress"
additionalProperties: false
required:
- item_id
- output_index
- sequence_number
- type
title: >-
OpenAIResponseObjectStreamResponseMcpCallInProgress
description: >-
Streaming event for MCP calls in progress.
"OpenAIResponseObjectStreamResponseMcpListToolsCompleted":
type: object
properties:
sequence_number:
type: integer
type:
type: string
const: response.mcp_list_tools.completed
default: response.mcp_list_tools.completed
additionalProperties: false
required:
- sequence_number
- type
title: >-
OpenAIResponseObjectStreamResponseMcpListToolsCompleted
"OpenAIResponseObjectStreamResponseMcpListToolsFailed":
type: object
properties:
sequence_number:
type: integer
type:
type: string
const: response.mcp_list_tools.failed
default: response.mcp_list_tools.failed
additionalProperties: false
required:
- sequence_number
- type
title: >-
OpenAIResponseObjectStreamResponseMcpListToolsFailed
"OpenAIResponseObjectStreamResponseMcpListToolsInProgress":
type: object
properties:
sequence_number:
type: integer
type:
type: string
const: response.mcp_list_tools.in_progress
default: response.mcp_list_tools.in_progress
additionalProperties: false
required:
- sequence_number
- type
title: >-
OpenAIResponseObjectStreamResponseMcpListToolsInProgress
"OpenAIResponseObjectStreamResponseOutputItemAdded":
type: object
properties:
response_id:
type: string
description: >-
Unique identifier of the response containing this output
item:
oneOf:
- $ref: '#/components/schemas/OpenAIResponseMessage'
- $ref: '#/components/schemas/OpenAIResponseOutputMessageWebSearchToolCall'
- $ref: '#/components/schemas/OpenAIResponseOutputMessageFileSearchToolCall'
- $ref: '#/components/schemas/OpenAIResponseOutputMessageFunctionToolCall'
- $ref: '#/components/schemas/OpenAIResponseOutputMessageMCPCall'
- $ref: '#/components/schemas/OpenAIResponseOutputMessageMCPListTools'
- $ref: '#/components/schemas/OpenAIResponseMCPApprovalRequest'
discriminator:
propertyName: type
mapping:
message: '#/components/schemas/OpenAIResponseMessage'
web_search_call: '#/components/schemas/OpenAIResponseOutputMessageWebSearchToolCall'
file_search_call: '#/components/schemas/OpenAIResponseOutputMessageFileSearchToolCall'
function_call: '#/components/schemas/OpenAIResponseOutputMessageFunctionToolCall'
mcp_call: '#/components/schemas/OpenAIResponseOutputMessageMCPCall'
mcp_list_tools: '#/components/schemas/OpenAIResponseOutputMessageMCPListTools'
mcp_approval_request: '#/components/schemas/OpenAIResponseMCPApprovalRequest'
description: >-
The output item that was added (message, tool call, etc.)
output_index:
type: integer
description: >-
Index position of this item in the output list
sequence_number:
type: integer
description: >-
Sequential number for ordering streaming events
type:
type: string
const: response.output_item.added
default: response.output_item.added
description: >-
Event type identifier, always "response.output_item.added"
additionalProperties: false
required:
- response_id
- item
- output_index
- sequence_number
- type
title: >-
OpenAIResponseObjectStreamResponseOutputItemAdded
description: >-
Streaming event for when a new output item is added to the response.
"OpenAIResponseObjectStreamResponseOutputItemDone":
type: object
properties:
response_id:
type: string
description: >-
Unique identifier of the response containing this output
item:
oneOf:
- $ref: '#/components/schemas/OpenAIResponseMessage'
- $ref: '#/components/schemas/OpenAIResponseOutputMessageWebSearchToolCall'
- $ref: '#/components/schemas/OpenAIResponseOutputMessageFileSearchToolCall'
- $ref: '#/components/schemas/OpenAIResponseOutputMessageFunctionToolCall'
- $ref: '#/components/schemas/OpenAIResponseOutputMessageMCPCall'
- $ref: '#/components/schemas/OpenAIResponseOutputMessageMCPListTools'
- $ref: '#/components/schemas/OpenAIResponseMCPApprovalRequest'
discriminator:
propertyName: type
mapping:
message: '#/components/schemas/OpenAIResponseMessage'
web_search_call: '#/components/schemas/OpenAIResponseOutputMessageWebSearchToolCall'
file_search_call: '#/components/schemas/OpenAIResponseOutputMessageFileSearchToolCall'
function_call: '#/components/schemas/OpenAIResponseOutputMessageFunctionToolCall'
mcp_call: '#/components/schemas/OpenAIResponseOutputMessageMCPCall'
mcp_list_tools: '#/components/schemas/OpenAIResponseOutputMessageMCPListTools'
mcp_approval_request: '#/components/schemas/OpenAIResponseMCPApprovalRequest'
description: >-
The completed output item (message, tool call, etc.)
output_index:
type: integer
description: >-
Index position of this item in the output list
sequence_number:
type: integer
description: >-
Sequential number for ordering streaming events
type:
type: string
const: response.output_item.done
default: response.output_item.done
description: >-
Event type identifier, always "response.output_item.done"
additionalProperties: false
required:
- response_id
- item
- output_index
- sequence_number
- type
title: >-
OpenAIResponseObjectStreamResponseOutputItemDone
description: >-
Streaming event for when an output item is completed.
"OpenAIResponseObjectStreamResponseOutputTextDelta":
type: object
properties:
content_index:
type: integer
description: Index position within the text content
delta:
type: string
description: Incremental text content being added
item_id:
type: string
description: >-
Unique identifier of the output item being updated
output_index:
type: integer
description: >-
Index position of the item in the output list
sequence_number:
type: integer
description: >-
Sequential number for ordering streaming events
type:
type: string
const: response.output_text.delta
default: response.output_text.delta
description: >-
Event type identifier, always "response.output_text.delta"
additionalProperties: false
required:
- content_index
- delta
- item_id
- output_index
- sequence_number
- type
title: >-
OpenAIResponseObjectStreamResponseOutputTextDelta
description: >-
Streaming event for incremental text content updates.
"OpenAIResponseObjectStreamResponseOutputTextDone":
type: object
properties:
content_index:
type: integer
description: Index position within the text content
text:
type: string
description: >-
Final complete text content of the output item
item_id:
type: string
description: >-
Unique identifier of the completed output item
output_index:
type: integer
description: >-
Index position of the item in the output list
sequence_number:
type: integer
description: >-
Sequential number for ordering streaming events
type:
type: string
const: response.output_text.done
default: response.output_text.done
description: >-
Event type identifier, always "response.output_text.done"
additionalProperties: false
required:
- content_index
- text
- item_id
- output_index
- sequence_number
- type
title: >-
OpenAIResponseObjectStreamResponseOutputTextDone
description: >-
Streaming event for when text output is completed.
"OpenAIResponseObjectStreamResponseWebSearchCallCompleted":
type: object
properties:
item_id:
type: string
description: >-
Unique identifier of the completed web search call
output_index:
type: integer
description: >-
Index position of the item in the output list
sequence_number:
type: integer
description: >-
Sequential number for ordering streaming events
type:
type: string
const: response.web_search_call.completed
default: response.web_search_call.completed
description: >-
Event type identifier, always "response.web_search_call.completed"
additionalProperties: false
required:
- item_id
- output_index
- sequence_number
- type
title: >-
OpenAIResponseObjectStreamResponseWebSearchCallCompleted
description: >-
Streaming event for completed web search calls.
"OpenAIResponseObjectStreamResponseWebSearchCallInProgress":
type: object
properties:
item_id:
type: string
description: Unique identifier of the web search call
output_index:
type: integer
description: >-
Index position of the item in the output list
sequence_number:
type: integer
description: >-
Sequential number for ordering streaming events
type:
type: string
const: response.web_search_call.in_progress
default: response.web_search_call.in_progress
description: >-
Event type identifier, always "response.web_search_call.in_progress"
additionalProperties: false
required:
- item_id
- output_index
- sequence_number
- type
title: >-
OpenAIResponseObjectStreamResponseWebSearchCallInProgress
description: >-
Streaming event for web search calls in progress.
"OpenAIResponseObjectStreamResponseWebSearchCallSearching":
type: object
properties:
item_id:
type: string
output_index:
type: integer
sequence_number:
type: integer
type:
type: string
const: response.web_search_call.searching
default: response.web_search_call.searching
additionalProperties: false
required:
- item_id
- output_index
- sequence_number
- type
title: >-
OpenAIResponseObjectStreamResponseWebSearchCallSearching
OpenAIDeleteResponseObject:
type: object
properties:
id:
type: string
description: >-
Unique identifier of the deleted response
object:
type: string
const: response
default: response
description: >-
Object type identifier, always "response"
deleted:
type: boolean
default: true
description: Deletion confirmation flag, always True
additionalProperties: false
required:
- id
- object
- deleted
title: OpenAIDeleteResponseObject
description: >-
Response object confirming deletion of an OpenAI response.
ListOpenAIResponseInputItem:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/OpenAIResponseInput'
description: List of input items
object:
type: string
const: list
default: list
description: Object type identifier, always "list"
additionalProperties: false
required:
- data
- object
title: ListOpenAIResponseInputItem
description: >-
List container for OpenAI response input items.
CompletionMessage:
type: object
properties:
role:
type: string
const: assistant
default: assistant
description: >-
Must be "assistant" to identify this as the model's response
content:
$ref: '#/components/schemas/InterleavedContent'
description: The content of the model's response
stop_reason:
type: string
enum:
- end_of_turn
- end_of_message
- out_of_tokens
description: >-
Reason why the model stopped generating. Options are: - `StopReason.end_of_turn`:
The model finished generating the entire response. - `StopReason.end_of_message`:
The model finished generating but generated a partial response -- usually,
a tool call. The user may call the tool and continue the conversation
with the tool's response. - `StopReason.out_of_tokens`: The model ran
out of token budget.
tool_calls:
type: array
items:
$ref: '#/components/schemas/ToolCall'
description: >-
List of tool calls. Each tool call is a ToolCall object.
additionalProperties: false
required:
- role
- content
- stop_reason
title: CompletionMessage
description: >-
A message containing the model's (assistant) response in a chat conversation.
ImageContentItem:
type: object
properties:
type:
type: string
const: image
default: image
description: >-
Discriminator type of the content item. Always "image"
image:
type: object
properties:
url:
$ref: '#/components/schemas/URL'
description: >-
A URL of the image or data URL in the format of data:image/{type};base64,{data}.
Note that URL could have length limits.
data:
type: string
contentEncoding: base64
description: base64 encoded image data as string
additionalProperties: false
description: >-
Image as a base64 encoded string or an URL
additionalProperties: false
required:
- type
- image
title: ImageContentItem
description: A image content item
InterleavedContent:
oneOf:
- type: string
- $ref: '#/components/schemas/InterleavedContentItem'
- type: array
items:
$ref: '#/components/schemas/InterleavedContentItem'
InterleavedContentItem:
oneOf:
- $ref: '#/components/schemas/ImageContentItem'
- $ref: '#/components/schemas/TextContentItem'
discriminator:
propertyName: type
mapping:
image: '#/components/schemas/ImageContentItem'
text: '#/components/schemas/TextContentItem'
Message:
oneOf:
- $ref: '#/components/schemas/UserMessage'
- $ref: '#/components/schemas/SystemMessage'
- $ref: '#/components/schemas/ToolResponseMessage'
- $ref: '#/components/schemas/CompletionMessage'
discriminator:
propertyName: role
mapping:
user: '#/components/schemas/UserMessage'
system: '#/components/schemas/SystemMessage'
tool: '#/components/schemas/ToolResponseMessage'
assistant: '#/components/schemas/CompletionMessage'
SystemMessage:
type: object
properties:
role:
type: string
const: system
default: system
description: >-
Must be "system" to identify this as a system message
content:
$ref: '#/components/schemas/InterleavedContent'
description: >-
The content of the "system prompt". If multiple system messages are provided,
they are concatenated. The underlying Llama Stack code may also add other
system messages (for example, for formatting tool definitions).
additionalProperties: false
required:
- role
- content
title: SystemMessage
description: >-
A system message providing instructions or context to the model.
TextContentItem:
type: object
properties:
type:
type: string
const: text
default: text
description: >-
Discriminator type of the content item. Always "text"
text:
type: string
description: Text content
additionalProperties: false
required:
- type
- text
title: TextContentItem
description: A text content item
ToolCall:
type: object
properties:
call_id:
type: string
tool_name:
oneOf:
- type: string
enum:
- brave_search
- wolfram_alpha
- photogen
- code_interpreter
title: BuiltinTool
- type: string
arguments:
oneOf:
- type: string
- type: object
additionalProperties:
oneOf:
- type: string
- type: integer
- type: number
- type: boolean
- type: 'null'
- type: array
items:
oneOf:
- type: string
- type: integer
- type: number
- type: boolean
- type: 'null'
- type: object
additionalProperties:
oneOf:
- type: string
- type: integer
- type: number
- type: boolean
- type: 'null'
arguments_json:
type: string
additionalProperties: false
required:
- call_id
- tool_name
- arguments
title: ToolCall
ToolResponseMessage:
type: object
properties:
role:
type: string
const: tool
default: tool
description: >-
Must be "tool" to identify this as a tool response
call_id:
type: string
description: >-
Unique identifier for the tool call this response is for
content:
$ref: '#/components/schemas/InterleavedContent'
description: The response content from the tool
additionalProperties: false
required:
- role
- call_id
- content
title: ToolResponseMessage
description: >-
A message representing the result of a tool invocation.
URL:
type: object
properties:
uri:
type: string
description: The URL string pointing to the resource
additionalProperties: false
required:
- uri
title: URL
description: A URL reference to external content.
UserMessage:
type: object
properties:
role:
type: string
const: user
default: user
description: >-
Must be "user" to identify this as a user message
content:
$ref: '#/components/schemas/InterleavedContent'
description: >-
The content of the message, which can include text and other media
context:
$ref: '#/components/schemas/InterleavedContent'
description: >-
(Optional) This field is used internally by Llama Stack to pass RAG context.
This field may be removed in the API in the future.
additionalProperties: false
required:
- role
- content
title: UserMessage
description: >-
A message from the user in a chat conversation.
RunShieldRequest:
type: object
properties:
shield_id:
type: string
description: The identifier of the shield to run.
messages:
type: array
items:
$ref: '#/components/schemas/Message'
description: The messages to run the shield on.
params:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: The parameters of the shield.
additionalProperties: false
required:
- shield_id
- messages
- params
title: RunShieldRequest
RunShieldResponse:
type: object
properties:
violation:
$ref: '#/components/schemas/SafetyViolation'
description: >-
(Optional) Safety violation detected by the shield, if any
additionalProperties: false
title: RunShieldResponse
description: Response from running a safety shield.
SafetyViolation:
type: object
properties:
violation_level:
$ref: '#/components/schemas/ViolationLevel'
description: Severity level of the violation
user_message:
type: string
description: >-
(Optional) Message to convey to the user about the violation
metadata:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: >-
Additional metadata including specific violation codes for debugging and
telemetry
additionalProperties: false
required:
- violation_level
- metadata
title: SafetyViolation
description: >-
Details of a safety violation detected by content moderation.
ViolationLevel:
type: string
enum:
- info
- warn
- error
title: ViolationLevel
description: Severity level of a safety violation.
AgentTurnInputType:
type: object
properties:
type:
type: string
const: agent_turn_input
default: agent_turn_input
description: >-
Discriminator type. Always "agent_turn_input"
additionalProperties: false
required:
- type
title: AgentTurnInputType
description: Parameter type for agent turn input.
AggregationFunctionType:
type: string
enum:
- average
- weighted_average
- median
- categorical_count
- accuracy
title: AggregationFunctionType
description: >-
Types of aggregation functions for scoring results.
ArrayType:
type: object
properties:
type:
type: string
const: array
default: array
description: Discriminator type. Always "array"
additionalProperties: false
required:
- type
title: ArrayType
description: Parameter type for array values.
BasicScoringFnParams:
type: object
properties:
type:
$ref: '#/components/schemas/ScoringFnParamsType'
const: basic
default: basic
description: >-
The type of scoring function parameters, always basic
aggregation_functions:
type: array
items:
$ref: '#/components/schemas/AggregationFunctionType'
description: >-
Aggregation functions to apply to the scores of each row
additionalProperties: false
required:
- type
- aggregation_functions
title: BasicScoringFnParams
description: >-
Parameters for basic scoring function configuration.
BooleanType:
type: object
properties:
type:
type: string
const: boolean
default: boolean
description: Discriminator type. Always "boolean"
additionalProperties: false
required:
- type
title: BooleanType
description: Parameter type for boolean values.
ChatCompletionInputType:
type: object
properties:
type:
type: string
const: chat_completion_input
default: chat_completion_input
description: >-
Discriminator type. Always "chat_completion_input"
additionalProperties: false
required:
- type
title: ChatCompletionInputType
description: >-
Parameter type for chat completion input.
CompletionInputType:
type: object
properties:
type:
type: string
const: completion_input
default: completion_input
description: >-
Discriminator type. Always "completion_input"
additionalProperties: false
required:
- type
title: CompletionInputType
description: Parameter type for completion input.
JsonType:
type: object
properties:
type:
type: string
const: json
default: json
description: Discriminator type. Always "json"
additionalProperties: false
required:
- type
title: JsonType
description: Parameter type for JSON values.
LLMAsJudgeScoringFnParams:
type: object
properties:
type:
$ref: '#/components/schemas/ScoringFnParamsType'
const: llm_as_judge
default: llm_as_judge
description: >-
The type of scoring function parameters, always llm_as_judge
judge_model:
type: string
description: >-
Identifier of the LLM model to use as a judge for scoring
prompt_template:
type: string
description: >-
(Optional) Custom prompt template for the judge model
judge_score_regexes:
type: array
items:
type: string
description: >-
Regexes to extract the answer from generated response
aggregation_functions:
type: array
items:
$ref: '#/components/schemas/AggregationFunctionType'
description: >-
Aggregation functions to apply to the scores of each row
additionalProperties: false
required:
- type
- judge_model
- judge_score_regexes
- aggregation_functions
title: LLMAsJudgeScoringFnParams
description: >-
Parameters for LLM-as-judge scoring function configuration.
NumberType:
type: object
properties:
type:
type: string
const: number
default: number
description: Discriminator type. Always "number"
additionalProperties: false
required:
- type
title: NumberType
description: Parameter type for numeric values.
ObjectType:
type: object
properties:
type:
type: string
const: object
default: object
description: Discriminator type. Always "object"
additionalProperties: false
required:
- type
title: ObjectType
description: Parameter type for object values.
RegexParserScoringFnParams:
type: object
properties:
type:
$ref: '#/components/schemas/ScoringFnParamsType'
const: regex_parser
default: regex_parser
description: >-
The type of scoring function parameters, always regex_parser
parsing_regexes:
type: array
items:
type: string
description: >-
Regex to extract the answer from generated response
aggregation_functions:
type: array
items:
$ref: '#/components/schemas/AggregationFunctionType'
description: >-
Aggregation functions to apply to the scores of each row
additionalProperties: false
required:
- type
- parsing_regexes
- aggregation_functions
title: RegexParserScoringFnParams
description: >-
Parameters for regex parser scoring function configuration.
ScoringFn:
type: object
properties:
identifier:
type: string
provider_resource_id:
type: string
provider_id:
type: string
type:
type: string
enum:
- model
- shield
- vector_db
- dataset
- scoring_function
- benchmark
- tool
- tool_group
- prompt
const: scoring_function
default: scoring_function
description: >-
The resource type, always scoring_function
description:
type: string
metadata:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
return_type:
oneOf:
- $ref: '#/components/schemas/StringType'
- $ref: '#/components/schemas/NumberType'
- $ref: '#/components/schemas/BooleanType'
- $ref: '#/components/schemas/ArrayType'
- $ref: '#/components/schemas/ObjectType'
- $ref: '#/components/schemas/JsonType'
- $ref: '#/components/schemas/UnionType'
- $ref: '#/components/schemas/ChatCompletionInputType'
- $ref: '#/components/schemas/CompletionInputType'
- $ref: '#/components/schemas/AgentTurnInputType'
discriminator:
propertyName: type
mapping:
string: '#/components/schemas/StringType'
number: '#/components/schemas/NumberType'
boolean: '#/components/schemas/BooleanType'
array: '#/components/schemas/ArrayType'
object: '#/components/schemas/ObjectType'
json: '#/components/schemas/JsonType'
union: '#/components/schemas/UnionType'
chat_completion_input: '#/components/schemas/ChatCompletionInputType'
completion_input: '#/components/schemas/CompletionInputType'
agent_turn_input: '#/components/schemas/AgentTurnInputType'
params:
$ref: '#/components/schemas/ScoringFnParams'
additionalProperties: false
required:
- identifier
- provider_id
- type
- metadata
- return_type
title: ScoringFn
description: >-
A scoring function resource for evaluating model outputs.
ScoringFnParams:
oneOf:
- $ref: '#/components/schemas/LLMAsJudgeScoringFnParams'
- $ref: '#/components/schemas/RegexParserScoringFnParams'
- $ref: '#/components/schemas/BasicScoringFnParams'
discriminator:
propertyName: type
mapping:
llm_as_judge: '#/components/schemas/LLMAsJudgeScoringFnParams'
regex_parser: '#/components/schemas/RegexParserScoringFnParams'
basic: '#/components/schemas/BasicScoringFnParams'
ScoringFnParamsType:
type: string
enum:
- llm_as_judge
- regex_parser
- basic
title: ScoringFnParamsType
description: >-
Types of scoring function parameter configurations.
StringType:
type: object
properties:
type:
type: string
const: string
default: string
description: Discriminator type. Always "string"
additionalProperties: false
required:
- type
title: StringType
description: Parameter type for string values.
UnionType:
type: object
properties:
type:
type: string
const: union
default: union
description: Discriminator type. Always "union"
additionalProperties: false
required:
- type
title: UnionType
description: Parameter type for union values.
ListScoringFunctionsResponse:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/ScoringFn'
additionalProperties: false
required:
- data
title: ListScoringFunctionsResponse
ParamType:
oneOf:
- $ref: '#/components/schemas/StringType'
- $ref: '#/components/schemas/NumberType'
- $ref: '#/components/schemas/BooleanType'
- $ref: '#/components/schemas/ArrayType'
- $ref: '#/components/schemas/ObjectType'
- $ref: '#/components/schemas/JsonType'
- $ref: '#/components/schemas/UnionType'
- $ref: '#/components/schemas/ChatCompletionInputType'
- $ref: '#/components/schemas/CompletionInputType'
- $ref: '#/components/schemas/AgentTurnInputType'
discriminator:
propertyName: type
mapping:
string: '#/components/schemas/StringType'
number: '#/components/schemas/NumberType'
boolean: '#/components/schemas/BooleanType'
array: '#/components/schemas/ArrayType'
object: '#/components/schemas/ObjectType'
json: '#/components/schemas/JsonType'
union: '#/components/schemas/UnionType'
chat_completion_input: '#/components/schemas/ChatCompletionInputType'
completion_input: '#/components/schemas/CompletionInputType'
agent_turn_input: '#/components/schemas/AgentTurnInputType'
RegisterScoringFunctionRequest:
type: object
properties:
scoring_fn_id:
type: string
description: >-
The ID of the scoring function to register.
description:
type: string
description: The description of the scoring function.
return_type:
$ref: '#/components/schemas/ParamType'
description: The return type of the scoring function.
provider_scoring_fn_id:
type: string
description: >-
The ID of the provider scoring function to use for the scoring function.
provider_id:
type: string
description: >-
The ID of the provider to use for the scoring function.
params:
$ref: '#/components/schemas/ScoringFnParams'
description: >-
The parameters for the scoring function for benchmark eval, these can
be overridden for app eval.
additionalProperties: false
required:
- scoring_fn_id
- description
- return_type
title: RegisterScoringFunctionRequest
ScoreRequest:
type: object
properties:
input_rows:
type: array
items:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: The rows to score.
scoring_functions:
type: object
additionalProperties:
oneOf:
- $ref: '#/components/schemas/ScoringFnParams'
- type: 'null'
description: >-
The scoring functions to use for the scoring.
additionalProperties: false
required:
- input_rows
- scoring_functions
title: ScoreRequest
ScoreResponse:
type: object
properties:
results:
type: object
additionalProperties:
$ref: '#/components/schemas/ScoringResult'
description: >-
A map of scoring function name to ScoringResult.
additionalProperties: false
required:
- results
title: ScoreResponse
description: The response from scoring.
ScoringResult:
type: object
properties:
score_rows:
type: array
items:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: >-
The scoring result for each row. Each row is a map of column name to value.
aggregated_results:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: Map of metric name to aggregated value
additionalProperties: false
required:
- score_rows
- aggregated_results
title: ScoringResult
description: A scoring result for a single row.
ScoreBatchRequest:
type: object
properties:
dataset_id:
type: string
description: The ID of the dataset to score.
scoring_functions:
type: object
additionalProperties:
oneOf:
- $ref: '#/components/schemas/ScoringFnParams'
- type: 'null'
description: >-
The scoring functions to use for the scoring.
save_results_dataset:
type: boolean
description: >-
Whether to save the results to a dataset.
additionalProperties: false
required:
- dataset_id
- scoring_functions
- save_results_dataset
title: ScoreBatchRequest
ScoreBatchResponse:
type: object
properties:
dataset_id:
type: string
description: >-
(Optional) The identifier of the dataset that was scored
results:
type: object
additionalProperties:
$ref: '#/components/schemas/ScoringResult'
description: >-
A map of scoring function name to ScoringResult
additionalProperties: false
required:
- results
title: ScoreBatchResponse
description: >-
Response from batch scoring operations on datasets.
Shield:
type: object
properties:
identifier:
type: string
provider_resource_id:
type: string
provider_id:
type: string
type:
type: string
enum:
- model
- shield
- vector_db
- dataset
- scoring_function
- benchmark
- tool
- tool_group
- prompt
const: shield
default: shield
description: The resource type, always shield
params:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: >-
(Optional) Configuration parameters for the shield
additionalProperties: false
required:
- identifier
- provider_id
- type
title: Shield
description: >-
A safety shield resource that can be used to check content.
ListShieldsResponse:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/Shield'
additionalProperties: false
required:
- data
title: ListShieldsResponse
RegisterShieldRequest:
type: object
properties:
shield_id:
type: string
description: >-
The identifier of the shield to register.
provider_shield_id:
type: string
description: >-
The identifier of the shield in the provider.
provider_id:
type: string
description: The identifier of the provider.
params:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: The parameters of the shield.
additionalProperties: false
required:
- shield_id
title: RegisterShieldRequest
SyntheticDataGenerateRequest:
type: object
properties:
dialogs:
type: array
items:
$ref: '#/components/schemas/Message'
description: >-
List of conversation messages to use as input for synthetic data generation
filtering_function:
type: string
enum:
- none
- random
- top_k
- top_p
- top_k_top_p
- sigmoid
description: >-
Type of filtering to apply to generated synthetic data samples
model:
type: string
description: >-
(Optional) The identifier of the model to use. The model must be registered
with Llama Stack and available via the /models endpoint
additionalProperties: false
required:
- dialogs
- filtering_function
title: SyntheticDataGenerateRequest
SyntheticDataGenerationResponse:
type: object
properties:
synthetic_data:
type: array
items:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: >-
List of generated synthetic data samples that passed the filtering criteria
statistics:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: >-
(Optional) Statistical information about the generation process and filtering
results
additionalProperties: false
required:
- synthetic_data
title: SyntheticDataGenerationResponse
description: >-
Response from the synthetic data generation. Batch of (prompt, response, score)
tuples that pass the threshold.
Event:
oneOf:
- $ref: '#/components/schemas/UnstructuredLogEvent'
- $ref: '#/components/schemas/MetricEvent'
- $ref: '#/components/schemas/StructuredLogEvent'
discriminator:
propertyName: type
mapping:
unstructured_log: '#/components/schemas/UnstructuredLogEvent'
metric: '#/components/schemas/MetricEvent'
structured_log: '#/components/schemas/StructuredLogEvent'
EventType:
type: string
enum:
- unstructured_log
- structured_log
- metric
title: EventType
description: >-
The type of telemetry event being logged.
LogSeverity:
type: string
enum:
- verbose
- debug
- info
- warn
- error
- critical
title: LogSeverity
description: The severity level of a log message.
MetricEvent:
type: object
properties:
trace_id:
type: string
description: >-
Unique identifier for the trace this event belongs to
span_id:
type: string
description: >-
Unique identifier for the span this event belongs to
timestamp:
type: string
format: date-time
description: Timestamp when the event occurred
attributes:
type: object
additionalProperties:
oneOf:
- type: string
- type: integer
- type: number
- type: boolean
- type: 'null'
description: >-
(Optional) Key-value pairs containing additional metadata about the event
type:
$ref: '#/components/schemas/EventType'
const: metric
default: metric
description: Event type identifier set to METRIC
metric:
type: string
description: The name of the metric being measured
value:
oneOf:
- type: integer
- type: number
description: >-
The numeric value of the metric measurement
unit:
type: string
description: >-
The unit of measurement for the metric value
additionalProperties: false
required:
- trace_id
- span_id
- timestamp
- type
- metric
- value
- unit
title: MetricEvent
description: >-
A metric event containing a measured value.
SpanEndPayload:
type: object
properties:
type:
$ref: '#/components/schemas/StructuredLogType'
const: span_end
default: span_end
description: Payload type identifier set to SPAN_END
status:
$ref: '#/components/schemas/SpanStatus'
description: >-
The final status of the span indicating success or failure
additionalProperties: false
required:
- type
- status
title: SpanEndPayload
description: Payload for a span end event.
SpanStartPayload:
type: object
properties:
type:
$ref: '#/components/schemas/StructuredLogType'
const: span_start
default: span_start
description: >-
Payload type identifier set to SPAN_START
name:
type: string
description: >-
Human-readable name describing the operation this span represents
parent_span_id:
type: string
description: >-
(Optional) Unique identifier for the parent span, if this is a child span
additionalProperties: false
required:
- type
- name
title: SpanStartPayload
description: Payload for a span start event.
SpanStatus:
type: string
enum:
- ok
- error
title: SpanStatus
description: >-
The status of a span indicating whether it completed successfully or with
an error.
StructuredLogEvent:
type: object
properties:
trace_id:
type: string
description: >-
Unique identifier for the trace this event belongs to
span_id:
type: string
description: >-
Unique identifier for the span this event belongs to
timestamp:
type: string
format: date-time
description: Timestamp when the event occurred
attributes:
type: object
additionalProperties:
oneOf:
- type: string
- type: integer
- type: number
- type: boolean
- type: 'null'
description: >-
(Optional) Key-value pairs containing additional metadata about the event
type:
$ref: '#/components/schemas/EventType'
const: structured_log
default: structured_log
description: >-
Event type identifier set to STRUCTURED_LOG
payload:
oneOf:
- $ref: '#/components/schemas/SpanStartPayload'
- $ref: '#/components/schemas/SpanEndPayload'
discriminator:
propertyName: type
mapping:
span_start: '#/components/schemas/SpanStartPayload'
span_end: '#/components/schemas/SpanEndPayload'
description: >-
The structured payload data for the log event
additionalProperties: false
required:
- trace_id
- span_id
- timestamp
- type
- payload
title: StructuredLogEvent
description: >-
A structured log event containing typed payload data.
StructuredLogType:
type: string
enum:
- span_start
- span_end
title: StructuredLogType
description: >-
The type of structured log event payload.
UnstructuredLogEvent:
type: object
properties:
trace_id:
type: string
description: >-
Unique identifier for the trace this event belongs to
span_id:
type: string
description: >-
Unique identifier for the span this event belongs to
timestamp:
type: string
format: date-time
description: Timestamp when the event occurred
attributes:
type: object
additionalProperties:
oneOf:
- type: string
- type: integer
- type: number
- type: boolean
- type: 'null'
description: >-
(Optional) Key-value pairs containing additional metadata about the event
type:
$ref: '#/components/schemas/EventType'
const: unstructured_log
default: unstructured_log
description: >-
Event type identifier set to UNSTRUCTURED_LOG
message:
type: string
description: The log message text
severity:
$ref: '#/components/schemas/LogSeverity'
description: The severity level of the log message
additionalProperties: false
required:
- trace_id
- span_id
- timestamp
- type
- message
- severity
title: UnstructuredLogEvent
description: >-
An unstructured log event containing a simple text message.
LogEventRequest:
type: object
properties:
event:
$ref: '#/components/schemas/Event'
description: The event to log.
ttl_seconds:
type: integer
description: The time to live of the event.
additionalProperties: false
required:
- event
- ttl_seconds
title: LogEventRequest
InvokeToolRequest:
type: object
properties:
tool_name:
type: string
description: The name of the tool to invoke.
kwargs:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: >-
A dictionary of arguments to pass to the tool.
additionalProperties: false
required:
- tool_name
- kwargs
title: InvokeToolRequest
ToolInvocationResult:
type: object
properties:
content:
$ref: '#/components/schemas/InterleavedContent'
description: >-
(Optional) The output content from the tool execution
error_message:
type: string
description: >-
(Optional) Error message if the tool execution failed
error_code:
type: integer
description: >-
(Optional) Numeric error code if the tool execution failed
metadata:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: >-
(Optional) Additional metadata about the tool execution
additionalProperties: false
title: ToolInvocationResult
description: Result of a tool invocation.
ToolDef:
type: object
properties:
name:
type: string
description: Name of the tool
description:
type: string
description: >-
(Optional) Human-readable description of what the tool does
parameters:
type: array
items:
$ref: '#/components/schemas/ToolParameter'
description: >-
(Optional) List of parameters this tool accepts
metadata:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: >-
(Optional) Additional metadata about the tool
additionalProperties: false
required:
- name
title: ToolDef
description: >-
Tool definition used in runtime contexts.
ToolParameter:
type: object
properties:
name:
type: string
description: Name of the parameter
parameter_type:
type: string
description: >-
Type of the parameter (e.g., string, integer)
description:
type: string
description: >-
Human-readable description of what the parameter does
required:
type: boolean
default: true
description: >-
Whether this parameter is required for tool invocation
items:
type: object
description: >-
Type of the elements when parameter_type is array
title:
type: string
description: (Optional) Title of the parameter
default:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: >-
(Optional) Default value for the parameter if not provided
additionalProperties: false
required:
- name
- parameter_type
- description
- required
title: ToolParameter
description: Parameter definition for a tool.
ListToolDefsResponse:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/ToolDef'
description: List of tool definitions
additionalProperties: false
required:
- data
title: ListToolDefsResponse
description: >-
Response containing a list of tool definitions.
RAGDocument:
type: object
properties:
document_id:
type: string
description: The unique identifier for the document.
content:
oneOf:
- type: string
- $ref: '#/components/schemas/InterleavedContentItem'
- type: array
items:
$ref: '#/components/schemas/InterleavedContentItem'
- $ref: '#/components/schemas/URL'
description: The content of the document.
mime_type:
type: string
description: The MIME type of the document.
metadata:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: Additional metadata for the document.
additionalProperties: false
required:
- document_id
- content
- metadata
title: RAGDocument
description: >-
A document to be used for document ingestion in the RAG Tool.
InsertRequest:
type: object
properties:
documents:
type: array
items:
$ref: '#/components/schemas/RAGDocument'
description: >-
List of documents to index in the RAG system
vector_db_id:
type: string
description: >-
ID of the vector database to store the document embeddings
chunk_size_in_tokens:
type: integer
description: >-
(Optional) Size in tokens for document chunking during indexing
additionalProperties: false
required:
- documents
- vector_db_id
- chunk_size_in_tokens
title: InsertRequest
DefaultRAGQueryGeneratorConfig:
type: object
properties:
type:
type: string
const: default
default: default
description: >-
Type of query generator, always 'default'
separator:
type: string
default: ' '
description: >-
String separator used to join query terms
additionalProperties: false
required:
- type
- separator
title: DefaultRAGQueryGeneratorConfig
description: >-
Configuration for the default RAG query generator.
LLMRAGQueryGeneratorConfig:
type: object
properties:
type:
type: string
const: llm
default: llm
description: Type of query generator, always 'llm'
model:
type: string
description: >-
Name of the language model to use for query generation
template:
type: string
description: >-
Template string for formatting the query generation prompt
additionalProperties: false
required:
- type
- model
- template
title: LLMRAGQueryGeneratorConfig
description: >-
Configuration for the LLM-based RAG query generator.
RAGQueryConfig:
type: object
properties:
query_generator_config:
oneOf:
- $ref: '#/components/schemas/DefaultRAGQueryGeneratorConfig'
- $ref: '#/components/schemas/LLMRAGQueryGeneratorConfig'
discriminator:
propertyName: type
mapping:
default: '#/components/schemas/DefaultRAGQueryGeneratorConfig'
llm: '#/components/schemas/LLMRAGQueryGeneratorConfig'
description: Configuration for the query generator.
max_tokens_in_context:
type: integer
default: 4096
description: Maximum number of tokens in the context.
max_chunks:
type: integer
default: 5
description: Maximum number of chunks to retrieve.
chunk_template:
type: string
default: >
Result {index}
Content: {chunk.content}
Metadata: {metadata}
description: >-
Template for formatting each retrieved chunk in the context. Available
placeholders: {index} (1-based chunk ordinal), {chunk.content} (chunk
content string), {metadata} (chunk metadata dict). Default: "Result {index}\nContent:
{chunk.content}\nMetadata: {metadata}\n"
mode:
$ref: '#/components/schemas/RAGSearchMode'
default: vector
description: >-
Search mode for retrieval—either "vector", "keyword", or "hybrid". Default
"vector".
ranker:
$ref: '#/components/schemas/Ranker'
description: >-
Configuration for the ranker to use in hybrid search. Defaults to RRF
ranker.
additionalProperties: false
required:
- query_generator_config
- max_tokens_in_context
- max_chunks
- chunk_template
title: RAGQueryConfig
description: >-
Configuration for the RAG query generation.
RAGSearchMode:
type: string
enum:
- vector
- keyword
- hybrid
title: RAGSearchMode
description: >-
Search modes for RAG query retrieval: - VECTOR: Uses vector similarity search
for semantic matching - KEYWORD: Uses keyword-based search for exact matching
- HYBRID: Combines both vector and keyword search for better results
RRFRanker:
type: object
properties:
type:
type: string
const: rrf
default: rrf
description: The type of ranker, always "rrf"
impact_factor:
type: number
default: 60.0
description: >-
The impact factor for RRF scoring. Higher values give more weight to higher-ranked
results. Must be greater than 0
additionalProperties: false
required:
- type
- impact_factor
title: RRFRanker
description: >-
Reciprocal Rank Fusion (RRF) ranker configuration.
Ranker:
oneOf:
- $ref: '#/components/schemas/RRFRanker'
- $ref: '#/components/schemas/WeightedRanker'
discriminator:
propertyName: type
mapping:
rrf: '#/components/schemas/RRFRanker'
weighted: '#/components/schemas/WeightedRanker'
WeightedRanker:
type: object
properties:
type:
type: string
const: weighted
default: weighted
description: The type of ranker, always "weighted"
alpha:
type: number
default: 0.5
description: >-
Weight factor between 0 and 1. 0 means only use keyword scores, 1 means
only use vector scores, values in between blend both scores.
additionalProperties: false
required:
- type
- alpha
title: WeightedRanker
description: >-
Weighted ranker configuration that combines vector and keyword scores.
QueryRequest:
type: object
properties:
content:
$ref: '#/components/schemas/InterleavedContent'
description: >-
The query content to search for in the indexed documents
vector_db_ids:
type: array
items:
type: string
description: >-
List of vector database IDs to search within
query_config:
$ref: '#/components/schemas/RAGQueryConfig'
description: >-
(Optional) Configuration parameters for the query operation
additionalProperties: false
required:
- content
- vector_db_ids
title: QueryRequest
RAGQueryResult:
type: object
properties:
content:
$ref: '#/components/schemas/InterleavedContent'
description: >-
(Optional) The retrieved content from the query
metadata:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: >-
Additional metadata about the query result
additionalProperties: false
required:
- metadata
title: RAGQueryResult
description: >-
Result of a RAG query containing retrieved content and metadata.
ToolGroup:
type: object
properties:
identifier:
type: string
provider_resource_id:
type: string
provider_id:
type: string
type:
type: string
enum:
- model
- shield
- vector_db
- dataset
- scoring_function
- benchmark
- tool
- tool_group
- prompt
const: tool_group
default: tool_group
description: Type of resource, always 'tool_group'
mcp_endpoint:
$ref: '#/components/schemas/URL'
description: >-
(Optional) Model Context Protocol endpoint for remote tools
args:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: >-
(Optional) Additional arguments for the tool group
additionalProperties: false
required:
- identifier
- provider_id
- type
title: ToolGroup
description: >-
A group of related tools managed together.
ListToolGroupsResponse:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/ToolGroup'
description: List of tool groups
additionalProperties: false
required:
- data
title: ListToolGroupsResponse
description: >-
Response containing a list of tool groups.
RegisterToolGroupRequest:
type: object
properties:
toolgroup_id:
type: string
description: The ID of the tool group to register.
provider_id:
type: string
description: >-
The ID of the provider to use for the tool group.
mcp_endpoint:
$ref: '#/components/schemas/URL'
description: >-
The MCP endpoint to use for the tool group.
args:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: >-
A dictionary of arguments to pass to the tool group.
additionalProperties: false
required:
- toolgroup_id
- provider_id
title: RegisterToolGroupRequest
Tool:
type: object
properties:
identifier:
type: string
provider_resource_id:
type: string
provider_id:
type: string
type:
type: string
enum:
- model
- shield
- vector_db
- dataset
- scoring_function
- benchmark
- tool
- tool_group
- prompt
const: tool
default: tool
description: Type of resource, always 'tool'
toolgroup_id:
type: string
description: >-
ID of the tool group this tool belongs to
description:
type: string
description: >-
Human-readable description of what the tool does
parameters:
type: array
items:
$ref: '#/components/schemas/ToolParameter'
description: List of parameters this tool accepts
metadata:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: >-
(Optional) Additional metadata about the tool
additionalProperties: false
required:
- identifier
- provider_id
- type
- toolgroup_id
- description
- parameters
title: Tool
description: A tool that can be invoked by agents.
ListToolsResponse:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/Tool'
description: List of tools
additionalProperties: false
required:
- data
title: ListToolsResponse
description: Response containing a list of tools.
VectorDB:
type: object
properties:
identifier:
type: string
provider_resource_id:
type: string
provider_id:
type: string
type:
type: string
enum:
- model
- shield
- vector_db
- dataset
- scoring_function
- benchmark
- tool
- tool_group
- prompt
const: vector_db
default: vector_db
description: >-
Type of resource, always 'vector_db' for vector databases
embedding_model:
type: string
description: >-
Name of the embedding model to use for vector generation
embedding_dimension:
type: integer
description: Dimension of the embedding vectors
vector_db_name:
type: string
additionalProperties: false
required:
- identifier
- provider_id
- type
- embedding_model
- embedding_dimension
title: VectorDB
description: >-
Vector database resource for storing and querying vector embeddings.
ListVectorDBsResponse:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/VectorDB'
description: List of vector databases
additionalProperties: false
required:
- data
title: ListVectorDBsResponse
description: Response from listing vector databases.
RegisterVectorDbRequest:
type: object
properties:
vector_db_id:
type: string
description: >-
The identifier of the vector database to register.
embedding_model:
type: string
description: The embedding model to use.
embedding_dimension:
type: integer
description: The dimension of the embedding model.
provider_id:
type: string
description: The identifier of the provider.
vector_db_name:
type: string
description: The name of the vector database.
provider_vector_db_id:
type: string
description: >-
The identifier of the vector database in the provider.
additionalProperties: false
required:
- vector_db_id
- embedding_model
title: RegisterVectorDbRequest
Chunk:
type: object
properties:
content:
$ref: '#/components/schemas/InterleavedContent'
description: >-
The content of the chunk, which can be interleaved text, images, or other
types.
metadata:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: >-
Metadata associated with the chunk that will be used in the model context
during inference.
embedding:
type: array
items:
type: number
description: >-
Optional embedding for the chunk. If not provided, it will be computed
later.
stored_chunk_id:
type: string
description: >-
The chunk ID that is stored in the vector database. Used for backend functionality.
chunk_metadata:
$ref: '#/components/schemas/ChunkMetadata'
description: >-
Metadata for the chunk that will NOT be used in the context during inference.
The `chunk_metadata` is required backend functionality.
additionalProperties: false
required:
- content
- metadata
title: Chunk
description: >-
A chunk of content that can be inserted into a vector database.
ChunkMetadata:
type: object
properties:
chunk_id:
type: string
description: >-
The ID of the chunk. If not set, it will be generated based on the document
ID and content.
document_id:
type: string
description: >-
The ID of the document this chunk belongs to.
source:
type: string
description: >-
The source of the content, such as a URL, file path, or other identifier.
created_timestamp:
type: integer
description: >-
An optional timestamp indicating when the chunk was created.
updated_timestamp:
type: integer
description: >-
An optional timestamp indicating when the chunk was last updated.
chunk_window:
type: string
description: >-
The window of the chunk, which can be used to group related chunks together.
chunk_tokenizer:
type: string
description: >-
The tokenizer used to create the chunk. Default is Tiktoken.
chunk_embedding_model:
type: string
description: >-
The embedding model used to create the chunk's embedding.
chunk_embedding_dimension:
type: integer
description: >-
The dimension of the embedding vector for the chunk.
content_token_count:
type: integer
description: >-
The number of tokens in the content of the chunk.
metadata_token_count:
type: integer
description: >-
The number of tokens in the metadata of the chunk.
additionalProperties: false
title: ChunkMetadata
description: >-
`ChunkMetadata` is backend metadata for a `Chunk` that is used to store additional
information about the chunk that will not be used in the context during
inference, but is required for backend functionality. The `ChunkMetadata` is
set during chunk creation in `MemoryToolRuntimeImpl().insert()`and is not
expected to change after. Use `Chunk.metadata` for metadata that will
be used in the context during inference.
InsertChunksRequest:
type: object
properties:
vector_db_id:
type: string
description: >-
The identifier of the vector database to insert the chunks into.
chunks:
type: array
items:
$ref: '#/components/schemas/Chunk'
description: >-
The chunks to insert. Each `Chunk` should contain content which can be
interleaved text, images, or other types. `metadata`: `dict[str, Any]`
and `embedding`: `List[float]` are optional. If `metadata` is provided,
you configure how Llama Stack formats the chunk during generation. If
`embedding` is not provided, it will be computed later.
ttl_seconds:
type: integer
description: The time to live of the chunks.
additionalProperties: false
required:
- vector_db_id
- chunks
title: InsertChunksRequest
QueryChunksRequest:
type: object
properties:
vector_db_id:
type: string
description: >-
The identifier of the vector database to query.
query:
$ref: '#/components/schemas/InterleavedContent'
description: The query to search for.
params:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: The parameters of the query.
additionalProperties: false
required:
- vector_db_id
- query
title: QueryChunksRequest
QueryChunksResponse:
type: object
properties:
chunks:
type: array
items:
$ref: '#/components/schemas/Chunk'
description: >-
List of content chunks returned from the query
scores:
type: array
items:
type: number
description: >-
Relevance scores corresponding to each returned chunk
additionalProperties: false
required:
- chunks
- scores
title: QueryChunksResponse
description: >-
Response from querying chunks in a vector database.
VectorStoreFileCounts:
type: object
properties:
completed:
type: integer
description: >-
Number of files that have been successfully processed
cancelled:
type: integer
description: >-
Number of files that had their processing cancelled
failed:
type: integer
description: Number of files that failed to process
in_progress:
type: integer
description: >-
Number of files currently being processed
total:
type: integer
description: >-
Total number of files in the vector store
additionalProperties: false
required:
- completed
- cancelled
- failed
- in_progress
- total
title: VectorStoreFileCounts
description: >-
File processing status counts for a vector store.
VectorStoreListResponse:
type: object
properties:
object:
type: string
default: list
description: Object type identifier, always "list"
data:
type: array
items:
$ref: '#/components/schemas/VectorStoreObject'
description: List of vector store objects
first_id:
type: string
description: >-
(Optional) ID of the first vector store in the list for pagination
last_id:
type: string
description: >-
(Optional) ID of the last vector store in the list for pagination
has_more:
type: boolean
default: false
description: >-
Whether there are more vector stores available beyond this page
additionalProperties: false
required:
- object
- data
- has_more
title: VectorStoreListResponse
description: Response from listing vector stores.
VectorStoreObject:
type: object
properties:
id:
type: string
description: Unique identifier for the vector store
object:
type: string
default: vector_store
description: >-
Object type identifier, always "vector_store"
created_at:
type: integer
description: >-
Timestamp when the vector store was created
name:
type: string
description: (Optional) Name of the vector store
usage_bytes:
type: integer
default: 0
description: >-
Storage space used by the vector store in bytes
file_counts:
$ref: '#/components/schemas/VectorStoreFileCounts'
description: >-
File processing status counts for the vector store
status:
type: string
default: completed
description: Current status of the vector store
expires_after:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: >-
(Optional) Expiration policy for the vector store
expires_at:
type: integer
description: >-
(Optional) Timestamp when the vector store will expire
last_active_at:
type: integer
description: >-
(Optional) Timestamp of last activity on the vector store
metadata:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: >-
Set of key-value pairs that can be attached to the vector store
additionalProperties: false
required:
- id
- object
- created_at
- usage_bytes
- file_counts
- status
- metadata
title: VectorStoreObject
description: OpenAI Vector Store object.
OpenaiCreateVectorStoreRequest:
type: object
properties:
name:
type: string
description: A name for the vector store.
file_ids:
type: array
items:
type: string
description: >-
A list of File IDs that the vector store should use. Useful for tools
like `file_search` that can access files.
expires_after:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: >-
The expiration policy for a vector store.
chunking_strategy:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: >-
The chunking strategy used to chunk the file(s). If not set, will use
the `auto` strategy.
metadata:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: >-
Set of 16 key-value pairs that can be attached to an object.
embedding_model:
type: string
description: >-
The embedding model to use for this vector store.
embedding_dimension:
type: integer
description: >-
The dimension of the embedding vectors (default: 384).
provider_id:
type: string
description: >-
The ID of the provider to use for this vector store.
additionalProperties: false
title: OpenaiCreateVectorStoreRequest
OpenaiUpdateVectorStoreRequest:
type: object
properties:
name:
type: string
description: The name of the vector store.
expires_after:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: >-
The expiration policy for a vector store.
metadata:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: >-
Set of 16 key-value pairs that can be attached to an object.
additionalProperties: false
title: OpenaiUpdateVectorStoreRequest
VectorStoreDeleteResponse:
type: object
properties:
id:
type: string
description: >-
Unique identifier of the deleted vector store
object:
type: string
default: vector_store.deleted
description: >-
Object type identifier for the deletion response
deleted:
type: boolean
default: true
description: >-
Whether the deletion operation was successful
additionalProperties: false
required:
- id
- object
- deleted
title: VectorStoreDeleteResponse
description: Response from deleting a vector store.
VectorStoreChunkingStrategy:
oneOf:
- $ref: '#/components/schemas/VectorStoreChunkingStrategyAuto'
- $ref: '#/components/schemas/VectorStoreChunkingStrategyStatic'
discriminator:
propertyName: type
mapping:
auto: '#/components/schemas/VectorStoreChunkingStrategyAuto'
static: '#/components/schemas/VectorStoreChunkingStrategyStatic'
VectorStoreChunkingStrategyAuto:
type: object
properties:
type:
type: string
const: auto
default: auto
description: >-
Strategy type, always "auto" for automatic chunking
additionalProperties: false
required:
- type
title: VectorStoreChunkingStrategyAuto
description: >-
Automatic chunking strategy for vector store files.
VectorStoreChunkingStrategyStatic:
type: object
properties:
type:
type: string
const: static
default: static
description: >-
Strategy type, always "static" for static chunking
static:
$ref: '#/components/schemas/VectorStoreChunkingStrategyStaticConfig'
description: >-
Configuration parameters for the static chunking strategy
additionalProperties: false
required:
- type
- static
title: VectorStoreChunkingStrategyStatic
description: >-
Static chunking strategy with configurable parameters.
VectorStoreChunkingStrategyStaticConfig:
type: object
properties:
chunk_overlap_tokens:
type: integer
default: 400
description: >-
Number of tokens to overlap between adjacent chunks
max_chunk_size_tokens:
type: integer
default: 800
description: >-
Maximum number of tokens per chunk, must be between 100 and 4096
additionalProperties: false
required:
- chunk_overlap_tokens
- max_chunk_size_tokens
title: VectorStoreChunkingStrategyStaticConfig
description: >-
Configuration for static chunking strategy.
OpenaiCreateVectorStoreFileBatchRequest:
type: object
properties:
file_ids:
type: array
items:
type: string
description: >-
A list of File IDs that the vector store should use.
attributes:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: >-
(Optional) Key-value attributes to store with the files.
chunking_strategy:
$ref: '#/components/schemas/VectorStoreChunkingStrategy'
description: >-
(Optional) The chunking strategy used to chunk the file(s). Defaults to
auto.
additionalProperties: false
required:
- file_ids
title: OpenaiCreateVectorStoreFileBatchRequest
VectorStoreFileBatchObject:
type: object
properties:
id:
type: string
description: Unique identifier for the file batch
object:
type: string
default: vector_store.file_batch
description: >-
Object type identifier, always "vector_store.file_batch"
created_at:
type: integer
description: >-
Timestamp when the file batch was created
vector_store_id:
type: string
description: >-
ID of the vector store containing the file batch
status:
$ref: '#/components/schemas/VectorStoreFileStatus'
description: >-
Current processing status of the file batch
file_counts:
$ref: '#/components/schemas/VectorStoreFileCounts'
description: >-
File processing status counts for the batch
additionalProperties: false
required:
- id
- object
- created_at
- vector_store_id
- status
- file_counts
title: VectorStoreFileBatchObject
description: OpenAI Vector Store File Batch object.
VectorStoreFileStatus:
oneOf:
- type: string
const: completed
- type: string
const: in_progress
- type: string
const: cancelled
- type: string
const: failed
VectorStoreFileLastError:
type: object
properties:
code:
oneOf:
- type: string
const: server_error
- type: string
const: rate_limit_exceeded
description: >-
Error code indicating the type of failure
message:
type: string
description: >-
Human-readable error message describing the failure
additionalProperties: false
required:
- code
- message
title: VectorStoreFileLastError
description: >-
Error information for failed vector store file processing.
VectorStoreFileObject:
type: object
properties:
id:
type: string
description: Unique identifier for the file
object:
type: string
default: vector_store.file
description: >-
Object type identifier, always "vector_store.file"
attributes:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: >-
Key-value attributes associated with the file
chunking_strategy:
oneOf:
- $ref: '#/components/schemas/VectorStoreChunkingStrategyAuto'
- $ref: '#/components/schemas/VectorStoreChunkingStrategyStatic'
discriminator:
propertyName: type
mapping:
auto: '#/components/schemas/VectorStoreChunkingStrategyAuto'
static: '#/components/schemas/VectorStoreChunkingStrategyStatic'
description: >-
Strategy used for splitting the file into chunks
created_at:
type: integer
description: >-
Timestamp when the file was added to the vector store
last_error:
$ref: '#/components/schemas/VectorStoreFileLastError'
description: >-
(Optional) Error information if file processing failed
status:
$ref: '#/components/schemas/VectorStoreFileStatus'
description: Current processing status of the file
usage_bytes:
type: integer
default: 0
description: Storage space used by this file in bytes
vector_store_id:
type: string
description: >-
ID of the vector store containing this file
additionalProperties: false
required:
- id
- object
- attributes
- chunking_strategy
- created_at
- status
- usage_bytes
- vector_store_id
title: VectorStoreFileObject
description: OpenAI Vector Store File object.
VectorStoreFilesListInBatchResponse:
type: object
properties:
object:
type: string
default: list
description: Object type identifier, always "list"
data:
type: array
items:
$ref: '#/components/schemas/VectorStoreFileObject'
description: >-
List of vector store file objects in the batch
first_id:
type: string
description: >-
(Optional) ID of the first file in the list for pagination
last_id:
type: string
description: >-
(Optional) ID of the last file in the list for pagination
has_more:
type: boolean
default: false
description: >-
Whether there are more files available beyond this page
additionalProperties: false
required:
- object
- data
- has_more
title: VectorStoreFilesListInBatchResponse
description: >-
Response from listing files in a vector store file batch.
VectorStoreListFilesResponse:
type: object
properties:
object:
type: string
default: list
description: Object type identifier, always "list"
data:
type: array
items:
$ref: '#/components/schemas/VectorStoreFileObject'
description: List of vector store file objects
first_id:
type: string
description: >-
(Optional) ID of the first file in the list for pagination
last_id:
type: string
description: >-
(Optional) ID of the last file in the list for pagination
has_more:
type: boolean
default: false
description: >-
Whether there are more files available beyond this page
additionalProperties: false
required:
- object
- data
- has_more
title: VectorStoreListFilesResponse
description: >-
Response from listing files in a vector store.
OpenaiAttachFileToVectorStoreRequest:
type: object
properties:
file_id:
type: string
description: >-
The ID of the file to attach to the vector store.
attributes:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: >-
The key-value attributes stored with the file, which can be used for filtering.
chunking_strategy:
$ref: '#/components/schemas/VectorStoreChunkingStrategy'
description: >-
The chunking strategy to use for the file.
additionalProperties: false
required:
- file_id
title: OpenaiAttachFileToVectorStoreRequest
OpenaiUpdateVectorStoreFileRequest:
type: object
properties:
attributes:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: >-
The updated key-value attributes to store with the file.
additionalProperties: false
required:
- attributes
title: OpenaiUpdateVectorStoreFileRequest
VectorStoreFileDeleteResponse:
type: object
properties:
id:
type: string
description: Unique identifier of the deleted file
object:
type: string
default: vector_store.file.deleted
description: >-
Object type identifier for the deletion response
deleted:
type: boolean
default: true
description: >-
Whether the deletion operation was successful
additionalProperties: false
required:
- id
- object
- deleted
title: VectorStoreFileDeleteResponse
description: >-
Response from deleting a vector store file.
VectorStoreContent:
type: object
properties:
type:
type: string
const: text
description: >-
Content type, currently only "text" is supported
text:
type: string
description: The actual text content
additionalProperties: false
required:
- type
- text
title: VectorStoreContent
description: >-
Content item from a vector store file or search result.
VectorStoreFileContentsResponse:
type: object
properties:
file_id:
type: string
description: Unique identifier for the file
filename:
type: string
description: Name of the file
attributes:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: >-
Key-value attributes associated with the file
content:
type: array
items:
$ref: '#/components/schemas/VectorStoreContent'
description: List of content items from the file
additionalProperties: false
required:
- file_id
- filename
- attributes
- content
title: VectorStoreFileContentsResponse
description: >-
Response from retrieving the contents of a vector store file.
OpenaiSearchVectorStoreRequest:
type: object
properties:
query:
oneOf:
- type: string
- type: array
items:
type: string
description: >-
The query string or array for performing the search.
filters:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: >-
Filters based on file attributes to narrow the search results.
max_num_results:
type: integer
description: >-
Maximum number of results to return (1 to 50 inclusive, default 10).
ranking_options:
type: object
properties:
ranker:
type: string
description: >-
(Optional) Name of the ranking algorithm to use
score_threshold:
type: number
default: 0.0
description: >-
(Optional) Minimum relevance score threshold for results
additionalProperties: false
description: >-
Ranking options for fine-tuning the search results.
rewrite_query:
type: boolean
description: >-
Whether to rewrite the natural language query for vector search (default
false)
search_mode:
type: string
description: >-
The search mode to use - "keyword", "vector", or "hybrid" (default "vector")
additionalProperties: false
required:
- query
title: OpenaiSearchVectorStoreRequest
VectorStoreSearchResponse:
type: object
properties:
file_id:
type: string
description: >-
Unique identifier of the file containing the result
filename:
type: string
description: Name of the file containing the result
score:
type: number
description: Relevance score for this search result
attributes:
type: object
additionalProperties:
oneOf:
- type: string
- type: number
- type: boolean
description: >-
(Optional) Key-value attributes associated with the file
content:
type: array
items:
$ref: '#/components/schemas/VectorStoreContent'
description: >-
List of content items matching the search query
additionalProperties: false
required:
- file_id
- filename
- score
- content
title: VectorStoreSearchResponse
description: Response from searching a vector store.
VectorStoreSearchResponsePage:
type: object
properties:
object:
type: string
default: vector_store.search_results.page
description: >-
Object type identifier for the search results page
search_query:
type: string
description: >-
The original search query that was executed
data:
type: array
items:
$ref: '#/components/schemas/VectorStoreSearchResponse'
description: List of search result objects
has_more:
type: boolean
default: false
description: >-
Whether there are more results available beyond this page
next_page:
type: string
description: >-
(Optional) Token for retrieving the next page of results
additionalProperties: false
required:
- object
- search_query
- data
- has_more
title: VectorStoreSearchResponsePage
description: >-
Paginated response from searching a vector store.
VersionInfo:
type: object
properties:
version:
type: string
description: Version number of the service
additionalProperties: false
required:
- version
title: VersionInfo
description: Version information for the service.
responses:
BadRequest400:
description: The request was invalid or malformed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
status: 400
title: Bad Request
detail: The request was invalid or malformed
TooManyRequests429:
description: >-
The client has sent too many requests in a given amount of time
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
status: 429
title: Too Many Requests
detail: >-
You have exceeded the rate limit. Please try again later.
InternalServerError500:
description: >-
The server encountered an unexpected error
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
status: 500
title: Internal Server Error
detail: >-
An unexpected error occurred. Our team has been notified.
DefaultError:
description: An unexpected error occurred
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
status: 0
title: Error
detail: An unexpected error occurred
security:
- Default: []
tags:
- name: Agents
description: >-
APIs for creating and interacting with agentic systems.
## Responses API
The Responses API provides OpenAI-compatible functionality with enhanced capabilities
for dynamic, stateful interactions.
> **✅ STABLE**: This API is production-ready with backward compatibility guarantees.
Recommended for production applications.
### ✅ Supported Tools
The Responses API supports the following tool types:
- **`web_search`**: Search the web for current information and real-time data
- **`file_search`**: Search through uploaded files and vector stores
- Supports dynamic `vector_store_ids` per call
- Compatible with OpenAI file search patterns
- **`function`**: Call custom functions with JSON schema validation
- **`mcp_tool`**: Model Context Protocol integration
### ✅ Supported Fields & Features
**Core Capabilities:**
- **Dynamic Configuration**: Switch models, vector stores, and tools per request
without pre-configuration
- **Conversation Branching**: Use `previous_response_id` to branch conversations
and explore different paths
- **Rich Annotations**: Automatic file citations, URL citations, and container
file citations
- **Status Tracking**: Monitor tool call execution status and handle failures
gracefully
### 🚧 Work in Progress
- Full real-time response streaming support
- `tool_choice` parameter
- `max_tool_calls` parameter
- Built-in tools (code interpreter, containers API)
- Safety & guardrails
- `reasoning` capabilities
- `service_tier`
- `logprobs`
- `max_output_tokens`
- `metadata` handling
- `instructions`
- `incomplete_details`
- `background`
x-displayName: Agents
- name: Files
description: ''
- name: Inference
description: >-
This API provides the raw interface to the underlying models. Two kinds of models
are supported:
- LLM models: these models generate "raw" and "chat" (conversational) completions.
- Embedding models: these models generate embeddings to be used for semantic
search.
x-displayName: >-
Llama Stack Inference API for generating completions, chat completions, and
embeddings.
- name: Inspect
description: ''
- name: Models
description: ''
- name: Prompts
description: ''
x-displayName: >-
Protocol for prompt management operations.
- name: Providers
description: ''
x-displayName: >-
Providers API for inspecting, listing, and modifying providers and their configurations.
- name: Safety
description: ''
- name: Scoring
description: ''
- name: ScoringFunctions
description: ''
- name: Shields
description: ''
- name: SyntheticDataGeneration (Coming Soon)
description: ''
- name: Telemetry
description: ''
- name: ToolGroups
description: ''
- name: ToolRuntime
description: ''
- name: VectorDBs
description: ''
- name: VectorIO
description: ''
x-tagGroups:
- name: Operations
tags:
- Agents
- Files
- Inference
- Inspect
- Models
- Prompts
- Providers
- Safety
- Scoring
- ScoringFunctions
- Shields
- SyntheticDataGeneration (Coming Soon)
- Telemetry
- ToolGroups
- ToolRuntime
- VectorDBs
- VectorIO