curl https://api.portkey.ai/v1/threads/thread_abc123/runs \
-H "x-portkey-api-key: $PORTKEY_API_KEY" \
-H "x-portkey-virtual-key: $PORTKEY_PROVIDER_VIRTUAL_KEY" \
-H "Content-Type: application/json" \
-H "OpenAI-Beta: assistants=v2"
{
"object": "list",
"data": [
{
"id": "<string>",
"object": "thread.run",
"created_at": 123,
"thread_id": "<string>",
"assistant_id": "<string>",
"status": "queued",
"required_action": {
"type": "submit_tool_outputs",
"submit_tool_outputs": {
"tool_calls": [
{
"id": "<string>",
"type": "function",
"function": {
"name": "<string>",
"arguments": "<string>"
}
}
]
}
},
"last_error": {
"code": "server_error",
"message": "<string>"
},
"expires_at": 123,
"started_at": 123,
"cancelled_at": 123,
"failed_at": 123,
"completed_at": 123,
"incomplete_details": {
"reason": "max_completion_tokens"
},
"model": "<string>",
"instructions": "<string>",
"tools": [],
"metadata": {},
"usage": {
"completion_tokens": 123,
"prompt_tokens": 123,
"total_tokens": 123
},
"max_prompt_tokens": 257,
"max_completion_tokens": 257,
"truncation_strategy": {
"type": "auto",
"last_messages": 2
},
"tool_choice": "none",
"parallel_tool_calls": true,
"response_format": "none",
"temperature": 123,
"top_p": 123
}
],
"first_id": "run_abc123",
"last_id": "run_abc456",
"has_more": false
}curl https://api.portkey.ai/v1/threads/thread_abc123/runs \
-H "x-portkey-api-key: $PORTKEY_API_KEY" \
-H "x-portkey-virtual-key: $PORTKEY_PROVIDER_VIRTUAL_KEY" \
-H "Content-Type: application/json" \
-H "OpenAI-Beta: assistants=v2"
{
"object": "list",
"data": [
{
"id": "<string>",
"object": "thread.run",
"created_at": 123,
"thread_id": "<string>",
"assistant_id": "<string>",
"status": "queued",
"required_action": {
"type": "submit_tool_outputs",
"submit_tool_outputs": {
"tool_calls": [
{
"id": "<string>",
"type": "function",
"function": {
"name": "<string>",
"arguments": "<string>"
}
}
]
}
},
"last_error": {
"code": "server_error",
"message": "<string>"
},
"expires_at": 123,
"started_at": 123,
"cancelled_at": 123,
"failed_at": 123,
"completed_at": 123,
"incomplete_details": {
"reason": "max_completion_tokens"
},
"model": "<string>",
"instructions": "<string>",
"tools": [],
"metadata": {},
"usage": {
"completion_tokens": 123,
"prompt_tokens": 123,
"total_tokens": 123
},
"max_prompt_tokens": 257,
"max_completion_tokens": 257,
"truncation_strategy": {
"type": "auto",
"last_messages": 2
},
"tool_choice": "none",
"parallel_tool_calls": true,
"response_format": "none",
"temperature": 123,
"top_p": 123
}
],
"first_id": "run_abc123",
"last_id": "run_abc456",
"has_more": false
}The ID of the thread the run belongs to.
A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 20.
Sort order by the created_at timestamp of the objects. asc for ascending order and desc for descending order.
asc, desc 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.
A cursor for use in pagination. before 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 before=obj_foo in order to fetch the previous page of the list.
OK
"list"
Show child attributes
The identifier, which can be referenced in API endpoints.
The object type, which is always thread.run.
thread.run The Unix timestamp (in seconds) for when the run was created.
The status of the run, which can be either queued, in_progress, requires_action, cancelling, cancelled, failed, completed, incomplete, or expired.
queued, in_progress, requires_action, cancelling, cancelled, failed, completed, incomplete, expired Details on the action required to continue the run. Will be null if no action is required.
Show child attributes
For now, this is always submit_tool_outputs.
submit_tool_outputs Details on the tool outputs needed for this run to continue.
Show child attributes
A list of the relevant tool calls.
Show child attributes
The ID of the tool call. This ID must be referenced when you submit the tool outputs in using the Submit tool outputs to run endpoint.
The type of tool call the output is required for. For now, this is always function.
function The function definition.
The last error associated with this run. Will be null if there are no errors.
The Unix timestamp (in seconds) for when the run will expire.
The Unix timestamp (in seconds) for when the run was started.
The Unix timestamp (in seconds) for when the run was cancelled.
The Unix timestamp (in seconds) for when the run failed.
The Unix timestamp (in seconds) for when the run was completed.
Details on why the run is incomplete. Will be null if the run is not incomplete.
Show child attributes
The reason why the run is incomplete. This will point to which specific token limit was reached over the course of the run.
max_completion_tokens, max_prompt_tokens Set of 16 key-value pairs that can be attached to an object. This can be useful for storing additional information about the object in a structured format. Keys can be a maximum of 64 characters long and values can be a maxium of 512 characters long.
Usage statistics related to the run. This value will be null if the run is not in a terminal state (i.e. in_progress, queued, etc.).
Show child attributes
The maximum number of prompt tokens specified to have been used over the course of the run.
x >= 256The maximum number of completion tokens specified to have been used over the course of the run.
x >= 256Controls for how a thread will be truncated prior to the run. Use this to control the intial context window of the run.
Show child attributes
The truncation strategy to use for the thread. The default is auto. If set to last_messages, the thread will be truncated to the n most recent messages in the thread. When set to auto, messages in the middle of the thread will be dropped to fit the context length of the model, max_prompt_tokens.
auto, last_messages The number of most recent messages from the thread when constructing the context for the run.
x >= 1Controls which (if any) tool is called by the model.
none means the model will not call any tools and instead generates a message.
auto is the default value and means the model can pick between generating a message or calling one or more tools.
required means the model must call one or more tools before responding to the user.
Specifying a particular tool like {"type": "file_search"} or {"type": "function", "function": {"name": "my_function"}} forces the model to call that tool.
none, auto, required Whether to enable parallel function calling during tool use.
Specifies the format that the model must output. Compatible with GPT-4o, GPT-4 Turbo, and all GPT-3.5 Turbo models since gpt-3.5-turbo-1106.
Setting to { "type": "json_object" } enables JSON mode, which guarantees the message the model generates is valid JSON.
Important: when using JSON mode, you must also instruct the model to produce JSON yourself via a system or user message. Without this, the model may generate an unending stream of whitespace until the generation reaches the token limit, resulting in a long-running and seemingly "stuck" request. Also note that the message content may be partially cut off if finish_reason="length", which indicates the generation exceeded max_tokens or the conversation exceeded the max context length.
none, auto The sampling temperature used for this run. If not set, defaults to 1.
The nucleus sampling value used for this run. If not set, defaults to 1.
"run_abc123"
"run_abc456"
false
Was this page helpful?