NAME

OpenAPI::Client::OpenAI::Path::threads-thread_id-runs - Documentation for the /threads/{thread_id}/runs path.

DESCRIPTION

This document describes the API endpoint at /threads/{thread_id}/runs.

PATHS

GET /threads/{thread_id}/runs

Returns a list of runs belonging to a thread.

Operation ID

listRuns

$client->listRuns( ... );

Parameters

  • thread_id (in path) (Required) - The ID of the thread the run belongs to.

    Type: string

  • limit (in query) (Optional) - A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 20.

    Type: integer

    Default: 20

  • order (in query) (Optional) - Sort order by the `created_at` timestamp of the objects. `asc` for ascending order and `desc` for descending order.

    Type: string

    Allowed values: asc, desc

    Default: desc

  • after (in query) (Optional) - 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.

    Type: string

  • before (in query) (Optional) - 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.

    Type: string

Responses

Status Code: 200

OK

Content Types:

  • application/json

    Example (See the OpenAI spec for more detail):

    {
       "data" : [
          "{\n  \"id\": \"run_abc123\",\n  \"object\": \"thread.run\",\n  \"created_at\": 1698107661,\n  \"assistant_id\": \"asst_abc123\",\n  \"thread_id\": \"thread_abc123\",\n  \"status\": \"completed\",\n  \"started_at\": 1699073476,\n  \"expires_at\": null,\n  \"cancelled_at\": null,\n  \"failed_at\": null,\n  \"completed_at\": 1699073498,\n  \"last_error\": null,\n  \"model\": \"gpt-4o\",\n  \"instructions\": null,\n  \"tools\": [{\"type\": \"file_search\"}, {\"type\": \"code_interpreter\"}],\n  \"metadata\": {},\n  \"incomplete_details\": null,\n  \"usage\": {\n    \"prompt_tokens\": 123,\n    \"completion_tokens\": 456,\n    \"total_tokens\": 579\n  },\n  \"temperature\": 1.0,\n  \"top_p\": 1.0,\n  \"max_prompt_tokens\": 1000,\n  \"max_completion_tokens\": 1000,\n  \"truncation_strategy\": {\n    \"type\": \"auto\",\n    \"last_messages\": null\n  },\n  \"response_format\": \"auto\",\n  \"tool_choice\": \"auto\",\n  \"parallel_tool_calls\": true\n}\n"
       ],
       "first_id" : "run_abc123",
       "has_more" : false,
       "last_id" : "run_abc456",
       "object" : "list"
    }

POST /threads/{thread_id}/runs

Create a run.

Operation ID

createRun

$client->createRun( ... );

Parameters

  • thread_id (in path) (Required) - The ID of the thread to run.

    Type: string

  • include[] (in query) (Optional) - 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](/docs/assistants/tools/file-search#customizing-file-search-settings) for more information.

    Type: array

Request Body

Content Type: application/json

Models

The ID of the Model to be used to execute this run. If a value is provided here, it will override the model associated with the assistant. If not, the model associated with the assistant will be used.

  • o3-mini

  • o3-mini-2025-01-31

  • o1

  • o1-2024-12-17

  • gpt-4o

  • gpt-4o-2024-11-20

  • gpt-4o-2024-08-06

  • gpt-4o-2024-05-13

  • gpt-4o-mini

  • gpt-4o-mini-2024-07-18

  • gpt-4.5-preview

  • gpt-4.5-preview-2025-02-27

  • gpt-4-turbo

  • gpt-4-turbo-2024-04-09

  • gpt-4-0125-preview

  • gpt-4-turbo-preview

  • gpt-4-1106-preview

  • gpt-4-vision-preview

  • gpt-4

  • gpt-4-0314

  • gpt-4-0613

  • gpt-4-32k

  • gpt-4-32k-0314

  • gpt-4-32k-0613

  • gpt-3.5-turbo

  • gpt-3.5-turbo-16k

  • gpt-3.5-turbo-0613

  • gpt-3.5-turbo-1106

  • gpt-3.5-turbo-0125

  • gpt-3.5-turbo-16k-0613

Example:

{
   "additional_messages" : [
      {
         "attachments" : [
            {
               "tools" : [
                  null
               ]
            }
         ]
      }
   ],
   "model" : "gpt-4o",
   "temperature" : 1,
   "tools" : [
      null
   ],
   "top_p" : 1
}


         

Responses

Status Code: 200

OK

Content Types:

  • application/json

    Example (See the OpenAI spec for more detail):

    {
      "id": "run_abc123",
      "object": "thread.run",
      "created_at": 1698107661,
      "assistant_id": "asst_abc123",
      "thread_id": "thread_abc123",
      "status": "completed",
      "started_at": 1699073476,
      "expires_at": null,
      "cancelled_at": null,
      "failed_at": null,
      "completed_at": 1699073498,
      "last_error": null,
      "model": "gpt-4o",
      "instructions": null,
      "tools": [{"type": "file_search"}, {"type": "code_interpreter"}],
      "metadata": {},
      "incomplete_details": null,
      "usage": {
        "prompt_tokens": 123,
        "completion_tokens": 456,
        "total_tokens": 579
      },
      "temperature": 1.0,
      "top_p": 1.0,
      "max_prompt_tokens": 1000,
      "max_completion_tokens": 1000,
      "truncation_strategy": {
        "type": "auto",
        "last_messages": null
      },
      "response_format": "auto",
      "tool_choice": "auto",
      "parallel_tool_calls": true
    }

SEE ALSO

OpenAPI::Client::OpenAI::Path

COPYRIGHT AND LICENSE

Copyright (C) 2023-2025 by Nelson Ferraz

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.14.0 or, at your option, any later version of Perl 5 you may have available.