Add a new Item to the Conversation's context, including messages, function calls, and function call responses. This event can be used both to populate a "history" of the conversation and to add new items mid-stream, but has the current limitation that it cannot populate assistant audio messages.

If successful, the server will respond with a conversation.item.created event, otherwise an error event will be sent.

interface ConversationItemCreateEvent {
    event_id?: string;
    item: ConversationItem;
    previous_item_id?: string;
    type: "conversation.item.create";
}

Properties

event_id?: string

Optional client-generated ID used to identify this event.

The item to add to the conversation.

previous_item_id?: string

The ID of the preceding item after which the new item will be inserted. If not set, the new item will be appended to the end of the conversation. If set to root, the new item will be added to the beginning of the conversation. If set to an existing ID, it allows an item to be inserted mid-conversation. If the ID cannot be found, an error will be returned and the item will not be added.

type: "conversation.item.create"

The event type, must be conversation.item.create.