GET
/
threads
/
{thread_id}
/
runs
/
{run_id}
/
steps
curl --request GET \
  --url https://api.openai.com/v1/threads/{thread_id}/runs/{run_id}/steps \
  --header 'Authorization: Bearer <token>'
{
  "object": "list",
  "data": [
    {
      "id": "<string>",
      "object": "thread.run.step",
      "created_at": 123,
      "assistant_id": "<string>",
      "thread_id": "<string>",
      "run_id": "<string>",
      "type": "message_creation",
      "status": "in_progress",
      "step_details": {
        "type": "message_creation",
        "message_creation": {
          "message_id": "<string>"
        }
      },
      "last_error": {
        "code": "server_error",
        "message": "<string>"
      },
      "expired_at": 123,
      "cancelled_at": 123,
      "failed_at": 123,
      "completed_at": 123,
      "metadata": {},
      "usage": {
        "completion_tokens": 123,
        "prompt_tokens": 123,
        "total_tokens": 123
      }
    }
  ],
  "first_id": "step_abc123",
  "last_id": "step_abc456",
  "has_more": false
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Path Parameters

thread_id
string
required

The ID of the thread the run and run steps belong to.

run_id
string
required

The ID of the run the run steps belong to.

Query Parameters

limit
integer
default:20

A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 20.

order
enum<string>
default:desc

Sort order by the created_at timestamp of the objects. asc for ascending order and desc for descending order.

Available options:
asc,
desc
after
string

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.

before
string

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, starting with obj_foo, your subsequent call can include before=obj_foo in order to fetch the previous page of the list.

include[]
enum<string>[]

A list of additional fields to include in the response. Currently the only supported value is step_details.tool_calls[*].file_search.results[*].content to fetch the file search result content.

See the file search tool documentation for more information.

Response

200 - application/json

OK

The response is of type object.