POST
/threadsCreate a thread
Creates a thread that can contain messages and resources for assistant tools. Provide messages to seed the thread, or tool_resources to make files or vector stores available to tools. You can also attach structured metadata to the thread.
- IdempotentThe SDK sends
Idempotency-Key, so a retried request is only applied once.
Optional thread configuration, including starting messages, tool resources, and metadata.
messagesarray<object>optional
A list of [messages](https://developers.openai.com/api/docs/assistants/migration) to start the thread with.
tool_resourcesobjectoptional
Resources made available to assistant tools, such as files for code interpreter or vector stores for file search.
metadataobjectoptional
String key-value pairs attached to the thread for structured information or querying.
200Returns the created thread with its identifier, object type, creation timestamp, tool resources, and metadata.
idstringrequired
The identifier, which can be referenced in API endpoints.
objectstringrequired
The object type, which is always `thread`.
created_atintegerrequired
The Unix timestamp (in seconds) for when the thread was created.
tool_resourcesobjectrequired
A set of resources that are made available to the assistant's tools in this thread. The resources are specific to the type of tool. For example, the `code_interpreter` tool requires a list of file IDs, while the `file_search` tool requires a list of vector store IDs.
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.
429Returned when the request was rejected because a rate limit was exceeded.
errorobjectrequired
Error handling
Each item in messages must include role and content, and role must be user or assistant. A 429 indicates that the request exceeded a rate limit; reduce the request rate before retrying.