Concepts

OpenAI vs Anthropic Interfaces

Both interfaces can reach LingCoreX through one platform, but they do not expose the same request shape, error semantics, or caching controls. This page focuses on what changes operationally.

Practical Interface Differences

These are the differences that most often affect tooling, observability, and production behavior.

TopicOpenAI-compatibleAnthropic-native
Primary endpoint/v1/chat/completions or /v1/responses/v1/messages
AuthenticationAuthorization: Bearerx-api-key header
Messages shapeOpenAI-style role/content JSONAnthropic-native messages payload
Tool behaviorDepends on what the tool exposes through OpenAI formatCloser to Anthropic-native semantics
Explicit cache controlsNot exposed in the request shapeCan preserve Anthropic-native cache behavior when supported
Error interpretationOften OpenAI-style semanticsCloser to Anthropic-native semantics

Message Shape and Request Semantics

A request can succeed through both interfaces while still behaving differently at the edges.

OpenAI-compatible access is usually the easiest path for broad tooling support. It is the better default when your editor, CLI agent, or SDK already expects OpenAI-style chat completions or responses calls.

Anthropic-native access becomes more important when you want request behavior that depends on the native shape itself, especially explicit cache-related behavior and Anthropic-native client expectations.

This is why 'the request works' is not the same as 'the request preserves every native behavior.' The format still shapes what the client can express.

When to Choose Each Interface

Pick the interface based on the caller, not on marketing labels around the model family.

Choose OpenAI-compatible when

Your SDK, editor, or CLI agent already works best with OpenAI-style routes.

You want the shortest migration from an existing OpenAI client.
Your tool's third-party provider path is clearly OpenAI-compatible.
You value minimal client changes over access to native Anthropic request fields.

Choose Anthropic-native when

You need the request semantics that belong to the Anthropic-native path itself.

You are using Claude Code or another Anthropic-native client.
You want the caller to preserve native Anthropic request behavior.
Caching controls and Anthropic-native semantics matter to your workflow.

Common Questions

Need current pricing or the product overview?

Use pricing for the public commercial view, or return to the landing page for the high-level product story.