Skip to main content

Choosing an Endpoint

The Turing Platform offers three conversational core endpoints. If you just want to see code, pick the first one. If you need to leverage vendor-specific capabilities to their fullest, you may need to use the native protocol.

Quick Decision Tree

Endpoint Comparison

Chat CompletionsMessages (Anthropic)Responses (OpenAI)
URL/v1/chat/completions/v1/messages/v1/responses
ProtocolOpenAI ChatAnthropic nativeOpenAI next-gen
Request fieldsmessagesmessages + max_tokens requiredinput (not messages)
Response structurechoices[].messagecontent[] block arrayoutput[] polymorphic array
Cross-vendor✅ Primary (OpenAI/Claude/Gemini/Qwen/DeepSeek...)⚠ Full Claude lineup + select domestic models (Qwen/DeepSeek/GLM/Kimi/MiniMax/Doubao Seed 2.1); refer to the endpoint column in the model list⚠ GPT-5 / o series + select domestic models (Doubao Seed, Qwen, DeepSeek, GLM 5.x, Kimi); refer to the endpoint column in the model list
Prompt caching (Claude fine-grained)⚠ Available but simplified✅ Native cache_control
Extended Thinking (Claude)⚠ Via extra_body✅ Native thinking field
Reasoning (GPT-5/o)⚠ Via extra_body reasoning_effort✅ Native reasoning field
Stateful reasoning (GPT-5.x)tags: ["stateful"]
MCP tool connector
Streaming event granularityCoarse (choices[0].delta)Fine (content_block_delta / text_delta / ...)Finest (response.output_text.delta, etc.)
Turing extensionsturing_optionsturing_optionsturing_options + tags
Recommended for99% of use casesDeep Claude customizationDeep GPT-5/o reasoning

Summary

  • Choose Chat Completions in the vast majority of cases: cross-vendor, largest ecosystem, switch models by changing a single string.
  • Use Messages only when you explicitly need Claude's native block structure or finer-grained caching.
  • Use Responses only when you explicitly need the GPT-5/o series' reasoning + stateful + MCP combination.

See also