POST
/
threads
/
{thread_id}
/
messages

Authorizations

x-portkey-api-key
string
header
required
x-portkey-virtual-key
string
header
required

Path Parameters

thread_id
string
required

The ID of the thread to create a message for.

Body

application/json
content
required

The text contents of the message.

role
enum<string>
required

The role of the entity that is creating the message. Allowed values include:

  • user: Indicates the message is sent by an actual user and should be used in most cases to represent user-generated messages.
  • assistant: Indicates the message is generated by the assistant. Use this value to insert messages from the assistant into the conversation.
Available options:
user,
assistant
attachments
object[] | null

A list of files attached to the message, and the tools they should be added to.

metadata
object | null

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.

Response

200 - application/json

Represents a message within a thread.

assistant_id
string | null
required

If applicable, the ID of the assistant that authored this message.

attachments
object[] | null
required

A list of files attached to the message, and the tools they were added to.

completed_at
integer | null
required

The Unix timestamp (in seconds) for when the message was completed.

content
object[]
required

The content of the message in array of text and/or images.

created_at
integer
required

The Unix timestamp (in seconds) for when the message was created.

id
string
required

The identifier, which can be referenced in API endpoints.

incomplete_at
integer | null
required

The Unix timestamp (in seconds) for when the message was marked as incomplete.

incomplete_details
object | null
required

On an incomplete message, details about why the message is incomplete.

metadata
object | null
required

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.

object
enum<string>
required

The object type, which is always thread.message.

Available options:
thread.message
role
enum<string>
required

The entity that produced the message. One of user or assistant.

Available options:
user,
assistant
run_id
string | null
required

The ID of the run associated with the creation of this message. Value is null when messages are created manually using the create message or create thread endpoints.

status
enum<string>
required

The status of the message, which can be either in_progress, incomplete, or completed.

Available options:
in_progress,
incomplete,
completed
thread_id
string
required

The thread ID that this message belongs to.