OpenAI Chat Format
fromChatMessages()
Convert OpenAI chat-style messages to OpenResponses input:toChatMessage()
Convert an OpenResponses response to chat message format:Supported Message Types
| Chat Role | Description |
|---|---|
system | System instructions |
user | User messages |
assistant | Assistant responses |
developer | Developer instructions |
tool | Tool response messages |
Tool Messages
Tool responses are converted to function call outputs:Anthropic Claude Format
fromClaudeMessages()
Convert Anthropic Claude-style messages to OpenResponses input:toClaudeMessage()
Convert an OpenResponses response to Claude message format:Content Blocks
Claude’s content block format is supported:Tool Use Blocks
Claude’s tool use format is converted:Base64 Images
Both URL and base64 images are supported:Limitations
Some Claude features are not preserved in conversion. e.g.is_error flag on tool_result blocks
These features are Claude-specific and not supported by OpenRouter.
Migration Examples
From OpenAI SDK
From Anthropic SDK
Building Conversations
Accumulate messages across multiple calls:Next Steps
- Text Generation - Input formats and parameters
- Tools - Add tool capabilities
- Streaming - Stream format-converted responses