Skip to content
For the complete documentation index, see llms.txt. Markdown versions of documentation pages are available by appending .md to the page URL.
Primary navigation

Retrieve an item

client.conversations.items.retrieve(stringitemID, ItemRetrieveParams { conversation_id, include } params, RequestOptionsoptions?): ConversationItem
GET/conversations/{conversation_id}/items/{item_id}

Get a single item from a conversation with the given IDs.

ParametersExpand Collapse
itemID: string
params: ItemRetrieveParams { conversation_id, include }
ReturnsExpand Collapse
ConversationItem = Message { id, content, role, 3 more } | ResponseFunctionToolCallItem { id, status, created_by } | ResponseFunctionToolCallOutputItem { id, call_id, output, 6 more } | 25 more

A single item within a conversation. The set of possible types are the same as the output type of a Response object.

One of the following:
Message { id, content, role, 3 more }

A message to or from the model.

ResponseFunctionToolCallItem extends ResponseFunctionToolCall { arguments, call_id, name, 5 more } { id, status, created_by }

A tool call to run a function. See the function calling guide for more information.

ResponseFunctionToolCallOutputItem { id, call_id, output, 6 more }
ResponseFileSearchToolCall { id, queries, status, 2 more }

The results of a file search tool call. See the file search guide for more information.

ImageGenerationCall { id, result, status, type }

An image generation request made by the model.

ResponseComputerToolCall { id, call_id, pending_safety_checks, 4 more }

A tool call to a computer use tool. See the computer use guide for more information.

ResponseComputerToolCallOutputItem { id, call_id, output, 4 more }
ResponseToolSearchCall { id, arguments, call_id, 4 more }
ResponseToolSearchOutputItem { id, call_id, execution, 4 more }
AdditionalTools { id, role, tools, type }
ResponseReasoningItem { id, summary, type, 3 more }

A description of the chain of thought used by a reasoning model while generating a response. Be sure to include these items in your input to the Responses API for subsequent turns of a conversation if you are manually managing context.

Program { id, call_id, code, 2 more }
ProgramOutput { id, call_id, result, 2 more }
ResponseCompactionItem { id, encrypted_content, type, created_by }

A compaction item generated by the v1/responses/compact API.

ResponseCodeInterpreterToolCall { id, code, container_id, 3 more }

A tool call to run code.

LocalShellCall { id, action, call_id, 2 more }

A tool call to run a command on the local shell.

LocalShellCallOutput { id, output, type, status }

The output of a local shell tool call.

ResponseFunctionShellToolCall { id, action, call_id, 5 more }

A tool call that executes one or more shell commands in a managed environment.

ResponseFunctionShellToolCallOutput { id, call_id, max_output_length, 5 more }

The output of a shell tool call that was emitted.

ResponseApplyPatchToolCall { id, call_id, operation, 4 more }

A tool call that applies file diffs by creating, deleting, or updating files.

ResponseApplyPatchToolCallOutput { id, call_id, status, 4 more }

The output emitted by an apply patch tool call.

McpListTools { id, server_label, tools, 2 more }

A list of tools available on an MCP server.

McpApprovalRequest { id, arguments, name, 2 more }

A request for human approval of a tool invocation.

McpApprovalResponse { id, approval_request_id, approve, 2 more }

A response to an MCP approval request.

McpCall { id, arguments, name, 6 more }

An invocation of a tool on an MCP server.

ResponseCustomToolCall { call_id, input, name, 4 more }

A call to a custom tool created by the model.

ResponseCustomToolCallOutput { call_id, output, type, 2 more }

The output of a custom tool call from your code, being sent back to the model.

Retrieve an item

import OpenAI from "openai";
const client = new OpenAI();

const item = await client.conversations.items.retrieve(
  "conv_123",
  "msg_abc"
);
console.log(item);
{
  "type": "message",
  "id": "msg_abc",
  "status": "completed",
  "role": "user",
  "content": [
    {"type": "input_text", "text": "Hello!"}
  ]
}
Returns Examples
{
  "type": "message",
  "id": "msg_abc",
  "status": "completed",
  "role": "user",
  "content": [
    {"type": "input_text", "text": "Hello!"}
  ]
}