The item to add to the conversation.

interface ConversationItem {
    arguments?: string;
    call_id?: string;
    content?: ConversationItemContent[];
    id?: string;
    name?: string;
    object?: "realtime.item";
    output?: string;
    role?: "system" | "assistant" | "user";
    status?: "completed" | "incomplete";
    type?: "message" | "function_call" | "function_call_output";
}

Properties

arguments?: string

The arguments of the function call (for function_call items).

call_id?: string

The ID of the function call (for function_call and function_call_output items). If passed on a function_call_output item, the server will check that a function_call item with the same ID exists in the conversation history.

The content of the message, applicable for message items.

  • Message items of role system support only input_text content
  • Message items of role user support input_text and input_audio content
  • Message items of role assistant support text content.
id?: string

The unique ID of the item, this can be generated by the client to help manage server-side context, but is not required because the server will generate one if not provided.

name?: string

The name of the function being called (for function_call items).

object?: "realtime.item"

Identifier for the API object being returned - always realtime.item.

output?: string

The output of the function call (for function_call_output items).

role?: "system" | "assistant" | "user"

The role of the message sender (user, assistant, system), only applicable for message items.

status?: "completed" | "incomplete"

The status of the item (completed, incomplete). These have no effect on the conversation, but are accepted for consistency with the conversation.item.created event.

type?: "message" | "function_call" | "function_call_output"

The type of the item (message, function_call, function_call_output).