Skip to main content

Responses API Overview

The Responses API is OpenAI’s next-generation API format, designed to simplify the development experience for multi-step tasks and tool calling. Crazyrouter fully supports the Responses API.

Responses API vs Chat Completions API

FeatureResponses APIChat Completions API
Endpoint/v1/responses/v1/chat/completions
Message formatinput (string or array)messages (array)
Tool callingBuilt-in support, automatic context managementRequires manual message history management
Streaming formatRich event typesSimple delta format
Thinking modereasoning parameterreasoning_effort parameter
Web searchBuilt-in web_search toolVia tools parameter
CompatibilityNewer, supported by some modelsBroadly supported by all models

When to Use Responses API

Suitable for the following scenarios:
  • Need built-in tools (web search, file search)
  • Multi-step tasks and complex tool calling
  • Need rich streaming events
  • Using advanced features of newer models like GPT-5

When to Use Chat Completions API

Suitable for the following scenarios:
  • Need the broadest model compatibility
  • Simple conversations and text generation
  • Existing code based on Chat Completions
  • Using non-OpenAI models (Claude, Gemini, etc.)

Quick Comparison Example

from openai import OpenAI

client = OpenAI(
    api_key="YOUR_API_KEY",
    base_url="https://crazyrouter.com/v1"
)

response = client.responses.create(
    model="gpt-4o",
    input="Explain what a REST API is"
)

print(response.output_text)
Both APIs can be used together in the same project. Crazyrouter provides full support for both formats, and you can choose the appropriate API based on your specific needs.