---
title: "Endpoints · intentic sandbox API"
description: "A model server you configured, and the free trial's allowance. Every route in the endpoints group of the intentic sandbox API, with its input, its answer and a playground."
url: "https://intentic.dev/api/endpoints/"
---

Models and accounts

# Endpoints

A model server you configured, and the free trial's allowance

Every built-in provider's catalogue is one fixed route, because there is one of each. Endpoints are user-created and unbounded, so the id rides in the address and the answer is whatever the configured server says about itself. The trial belongs here because the trial is an endpoint — the one the daemon provisions rather than you.

**GET`/endpoints/{id}/models` Models a connected server offers**

Asks one configured model server what it serves. There is no built-in list and no fallback: what a server offers is knowable only by asking it, so an empty answer is the honest report that we could not.

### What you send

| Field | Type | Where |
| --- | --- | --- |
| `id` required Which connection | string | 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/endpoints/a1b2c3d4/models" \
 -H "x-intentic-control: $INTENTIC_TOKEN"
```

TypeScript

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

const result = await sandbox.endpoints.models({
 "id": "a1b2c3d4"
});
```

**GET`/endpoints/trial/status` What is left of the free trial**

The allowance, what has been used, when it resets, and which model actually answered the last message. Not being available is the ordinary answer rather than a failure: most sandboxes run against a platform that offers no trial at all.

### What you send

Nothing. Call it as it is.

### What comes back

| Field | Type |
| --- | --- |
| `available` | boolean |
| `allowance` | integer |
| `used` | integer |
| `remaining` | integer |
| `health` | "unknown" | "healthy" | "degraded" | "unavailable" |
| `resetsAt` | string |
| `retryAt` | string |
| `servedModel` | string |

Try it answered in this tab

curl

```bash
curl "$SANDBOX/endpoints/trial/status" \
 -H "x-intentic-control: $INTENTIC_TOKEN"
```

TypeScript

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

const result = await sandbox.endpoints.trial();
```

More in Models and accounts

[Previous ← Routed providers](https://intentic.dev/api/translator/)[Next Providers →](https://intentic.dev/api/providers/)
