# API Quickstart

This quickstart uses the public AeThex API at `https://api.aethex.tech`.

| Field | Value |
|---|---|
| Product maturity | Live / evolving |
| Documentation status | Active |
| Base URL | `https://api.aethex.tech` |
| OpenAPI | [[OpenAPI Reference]] |
| Last verified | 2026-06-26 |

## 1. Check service health

```bash
curl https://api.aethex.tech/health
```

The response reports the API service version, uptime, loaded knowledge count, and enabled model classes. Treat model identifiers as runtime information; clients should not hard-code them.

## 2. List available KAEL models

```bash
curl https://api.aethex.tech/kael/models
```

The returned catalog contains stable client keys such as `standard` and their current access tier.

## 3. Send a streaming request

`POST /kael/stream` returns Server-Sent Events.

```bash
curl --no-buffer https://api.aethex.tech/kael/stream \
  -H 'Content-Type: application/json' \
  -d '{
    "message": "What is AeThex Passport?",
    "sessionId": "quickstart-example",
    "source": "docs",
    "model": "standard"
  }'
```

The stream begins with model metadata, emits JSON events containing response tokens, and ends with:

```text
data: [DONE]
```

## 4. Handle errors inside the stream

Because the response is an event stream, some errors arrive as SSE data rather than a non-2xx HTTP response:

```json
{"error":"rate_limit","clearance":1,"limit":20,"message":"..."}
```

Clients should:

- Parse each `data:` event.
- Stop when receiving `[DONE]`.
- Handle `error` objects separately from token events.
- Reconnect only when appropriate; do not automatically replay a completed prompt.

## 5. Choose an identity model

Public requests can operate without a Passport session but receive lower limits. Signed-in and approved identities can receive expanded capabilities. Tenant keys and operator tokens are separate credentials and must never be embedded in browser code.

## Next steps

- [[API Reference]]
- [[Authentication]]
- [[Rate Limits]]
- [[KAEL API]]
- [[Webhooks]]
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9