> For the complete documentation index, see [llms.txt](https://docs.cortecs.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.cortecs.ai/api-overview/api-compatibility.md).

# API Compatibility

Cortecs exposes multiple compatible APIs at the same base URL:

```
https://api.cortecs.ai/v1
```

Send your Cortecs API key as a Bearer token. Use the exact model ID returned by the [Models API](/api-overview/models.md).

## Choose an API

| Workflow                                    | API                | Endpoint            | When to use it                                                                 |
| ------------------------------------------- | ------------------ | ------------------- | ------------------------------------------------------------------------------ |
| Agents, reasoning, and tool calling         | Responses \[BETA]  | `/responses`        | Preferred for new agent workflows when the client supports the Responses API   |
| General chat and broad client compatibility | Chat Completions   | `/chat/completions` | Fallback for clients that only implement the OpenAI Chat Completions format    |
| Anthropic-compatible clients                | Anthropic Messages | `/messages`         | Use for clients such as Claude Code that speak the Anthropic Messages protocol |
| Model and capability discovery              | Models             | `/models`           | Resolve current model IDs, modalities, context sizes and supported features    |

The three generation APIs do not use identical request or response shapes. For example, Responses accepts `input` and returns typed output items; the OpenAI SDK also provides `output_text`. Chat Completions accepts `messages` and returns `choices`.

{% hint style="warning" %}
OpenAI-compatible does not mean that every OpenAI-specific feature is available. Only use fields documented in the Cortecs API reference. In particular, the Cortecs Responses API does not currently document OpenAI-managed storage or conversation resources.
{% endhint %}

## Compatibility checklist

If a Responses integration does not work:

1. Confirm that the client sends requests to `/v1/responses`, not `/v1/chat/completions`.
2. Confirm that the selected model supports every requested capability in the Models API.
3. Remove OpenAI-specific fields that are not documented by Cortecs.
4. If the client only supports Chat Completions, switch to `/v1/chat/completions` and translate `input` to `messages`.
5. Use `/v1/messages` only when the client implements the Anthropic Messages format.

See the [Models API](/api-overview/models.md) for model discovery, [Advanced Usage](/routing/advanced-usage.md) for routing controls, [Model Fallback](/routing/model-fallback.md) for retry behavior, and [Security & Compliance](/security-and-compliance.md) for data-handling controls.
