---
title: "Providers · intentic sandbox API"
description: "A built-in provider's model catalogue. Every route in the providers group of the intentic sandbox API, with its input, its answer and a playground."
url: "https://intentic.dev/api/providers/"
---

Models and accounts

# Providers

A built-in provider's model catalogue

One read, for the providers the sandbox ships with. Never empty, and left in the provider's own preference order rather than rearranged.

**GET`/providers/{provider}/models` Models one provider offers**

Every model this provider serves and which one it defaults to. Never empty: it is discovered live with a stored list behind it. The order is the provider's own preference and is not rearranged here.

### What you send

| Field | Type | Where |
| --- | --- | --- |
| `provider` required | "claude" | "codex" | "grok" | "kimi" … (6) | address |

### What comes back

| Field | Type |
| --- | --- |
| `models` What this provider serves, in its… | object[] |
| `id` What to name when asking for… | string |
| `label` What to call it on screen | string |
| `efforts` The thinking levels it accepts, where… | string[] |
| `description` What it is good for, in… | string |
| `badges` What it is known for, where… | "reasoning" | "fast"[] |
| `contextWindow` How many tokens this model will… | number |
| `default` Which one a fresh conversation starts… | string |

Try it answered in this tab

curl

```bash
curl "$SANDBOX/providers/claude/models" \
 -H "x-intentic-control: $INTENTIC_TOKEN"
```

TypeScript

```typescript
import { sandbox } from "@intentic/sandbox-client";

const result = await sandbox.providers.models({
 "provider": "claude"
});
```

More in Models and accounts

[Previous ← Endpoints](https://intentic.dev/api/endpoints/)[Next Usage →](https://intentic.dev/api/usage/)
