# Getting Started

Canonical HTML: https://anchorshell.com/docs/getting-started/

Add a provider, choose a model, and send your first request with hosted AnchorShell Relay.

Last updated: 2026-09-17

Relay sits between your application and its model providers. Start with one provider and model, then create a Group when you want a stable request name with ordered alternatives.

## Dashboard

1. [Sign in to AnchorShell](https://app.anchorshell.com/login).
2. Open **Model Relay → Setup**.
3. Enter your provider's name, base URL, API key, and model ID.
4. Click **Save and Continue**.
5. Add the model to a group if you want one name for several models.
6. Review limits and pricing. Send the test request.
7. Open **Playground** to edit the request and inspect the response.

The order is **provider → model → optional group → request**. Your provider supplies the model and charges for its use.

## API

Create an inference key in **Account → API keys**. Replace `<API_KEY>` below; see [API authentication](https://anchorshell.com/docs/api) for optional management scopes.

### Direct model

Use the call name from Providers. This example assumes you configured and enabled this model.

```bash
curl -X POST 'https://api.anchorshell.com/v1/chat/completions' \
  -H 'Authorization: Bearer <API_KEY>' \
  -H 'Content-Type: application/json' \
  -d '{
  "model": "openai/gpt-5-mini",
  "messages": [
    {
      "role": "user",
      "content": "Hello"
    }
  ]
}'
```

**Response — 200 OK**

Example non-streaming response (selected fields). Content, model, and usage depend on the selected provider.

```json
{
  "id": "<COMPLETION_ID>",
  "object": "chat.completion",
  "model": "gpt-5-mini",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "Relay waits for the preferred model before considering fallback."
      },
      "finish_reason": "stop"
    }
  ]
}
```

### Group

After creating `agentic`, select it in the same `model` field:

```bash
curl -X POST 'https://api.anchorshell.com/v1/chat/completions' \
  -H 'Authorization: Bearer <API_KEY>' \
  -H 'Content-Type: application/json' \
  -d '{
  "model": "agentic",
  "messages": [
    {
      "role": "user",
      "content": "Hello"
    }
  ]
}'
```

**Response — 200 OK**

Example non-streaming response (selected fields). Content, model, and usage depend on the selected provider.

```json
{
  "id": "<COMPLETION_ID>",
  "object": "chat.completion",
  "model": "gpt-5-mini",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "Relay waits for the preferred model before considering fallback."
      },
      "finish_reason": "stop"
    }
  ]
}
```

No routing header or query parameter is needed. Configure setup through [Providers](https://anchorshell.com/docs/providers) and [Groups](https://anchorshell.com/docs/groups).

## Next

[Self-hosted](https://anchorshell.com/docs/self-hosting).
