GET
/threads/{thread_id}/runs/{run_id}/steps/{step_id}Retrieve a run step
Retrieves a specific step from a run on a thread. Use include[] to request file search result content when the step contains file search tool calls.
thread_idstringrequired
The ID of the thread to which the run and step belong.
run_idstringrequired
The ID of the run to which the step belongs.
step_idstringrequired
The ID of the run step to retrieve.
include[]array<string>optional
Additional response fields to include. The supported value is `step_details.tool_calls[*].file_search.results[*].content`.
200Returns the run step object, including its type, status, details, timestamps, and any last error.
idstringrequired
The identifier of the run step, which can be referenced in API endpoints.
objectstringrequired
The object type, which is always `thread.run.step`.
created_atintegerrequired
The Unix timestamp (in seconds) for when the run step was created.
assistant_idstringrequired
The ID of the [assistant](https://developers.openai.com/api/docs/assistants/migration) associated with the run step.
thread_idstringrequired
The ID of the [thread](https://developers.openai.com/api/docs/assistants/migration) that was run.
run_idstringrequired
The ID of the [run](https://developers.openai.com/api/docs/assistants/migration) that this run step is a part of.
typestringrequired
The type of run step, which can be either `message_creation` or `tool_calls`.
statusstringrequired
The status of the run step, which can be either `in_progress`, `cancelled`, `failed`, `completed`, or `expired`.
step_detailsobjectrequired
The details of the run step.
last_errorobjectrequired
The last error associated with this run step. Will be `null` if there are no errors.
expired_atintegerrequired
The Unix timestamp (in seconds) for when the run step expired. A step is considered expired if the parent run is expired.
cancelled_atintegerrequired
The Unix timestamp (in seconds) for when the run step was cancelled.
failed_atintegerrequired
The Unix timestamp (in seconds) for when the run step failed.
completed_atintegerrequired
The Unix timestamp (in seconds) for when the run step completed.
metadataobjectrequired
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, and querying for objects via API or the dashboard.
Keys are strings with a maximum length of 64 characters. Values are strings
with a maximum length of 512 characters.
usageobjectrequired
Usage statistics related to the run step. This value will be `null` while the run step's status is `in_progress`.
429Returned when the request rate limit is exceeded.
errorobjectrequired
Error handling
A 429 is returned when the request rate limit is exceeded. The thread_id path parameter, run_id path parameter, and step_id path parameter must identify the thread, run, and step. include[] only supports step_details.tool_calls[*].file_search.results[*].content.