> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tryorbit.cloud/llms.txt
> Use this file to discover all available pages before exploring further.

# Anthropic compatibility

> Point the official Anthropic SDK at Orbit. Messages, tools, and streaming work as they do today.

Orbit implements Anthropic Messages. Set `base_url` to Orbit and `api_key` to your `sk-orbit-` key.

## Base URL

```txt theme={"theme":"github-dark"}
https://api.tryorbit.cloud/api
```

The official client appends `/v1/messages` itself.

| Method | Path           | Purpose                    |
| ------ | -------------- | -------------------------- |
| `POST` | `/v1/messages` | Messages, tools, streaming |

Auth headers:

* `x-api-key: $ORBIT_API_KEY`
* `anthropic-version: 2023-06-01`

`Authorization: Bearer $ORBIT_API_KEY` also works if you call the route directly.

## Examples

<Tabs>
  <Tab title="Python">
    ```python theme={"theme":"github-dark"}
    import os
    from anthropic import Anthropic

    client = Anthropic(
        api_key=os.environ["ORBIT_API_KEY"],
        base_url="https://api.tryorbit.cloud/api",
    )

    message = client.messages.create(
        model="claude-sonnet-5",
        max_tokens=1024,
        messages=[{"role": "user", "content": "Review this handler."}],
    )

    print(message.content[0].text)
    ```
  </Tab>

  <Tab title="Node.js">
    ```ts theme={"theme":"github-dark"}
    import Anthropic from "@anthropic-ai/sdk";

    const client = new Anthropic({
      apiKey: process.env.ORBIT_API_KEY,
      baseURL: "https://api.tryorbit.cloud/api",
    });

    const message = await client.messages.create({
      model: "claude-sonnet-5",
      max_tokens: 1024,
      messages: [{ role: "user", content: "Review this handler." }],
    });

    console.log(message.content[0].text);
    ```
  </Tab>

  <Tab title="cURL">
    ```bash theme={"theme":"github-dark"}
    curl https://api.tryorbit.cloud/api/v1/messages \
      -H "x-api-key: $ORBIT_API_KEY" \
      -H "anthropic-version: 2023-06-01" \
      -H "Content-Type: application/json" \
      -d '{
        "model": "claude-sonnet-5",
        "max_tokens": 1024,
        "messages": [{ "role": "user", "content": "Review this handler." }]
      }'
    ```
  </Tab>
</Tabs>

<Tip>
  Claude Code uses this same Anthropic-compatible surface. See [Claude Code](/agents/claude-code).
</Tip>
