> For AI agents: the documentation index is at https://platform.detectif.ai/llms.txt. Every page is also available as Markdown by adding `.md` to its path.

# Noesis API

Noesis has its own base URL and takes the same API keys. Its live-call WebSocket, authentication and every Noesis REST endpoint, with the OpenAPI description.

[Noesis](https://platform.detectif.ai/docs/noesis/) tells who or what answered a phone call. It has one WebSocket for live calls and a few REST endpoints, on its own host. Every REST endpoint has its own page, generated from the OpenAPI description, with examples in cURL, Python and JavaScript.

## Base URL

Noesis does not run on `platform.detectif.ai` like Aletheia and Eidos. Its endpoints are on:

```
https://api.noesis.detectif.ai
wss://api.noesis.detectif.ai/v1/detect/stream
```

## Authentication

Noesis takes the same API keys as the other products. Send the key as a bearer token; it needs the Noesis permission (`noesis:detect` or `noesis:read`):

```bash
curl https://api.noesis.detectif.ai/v1/detect/usage \
  -H "Authorization: Bearer $DETECTIF_API_KEY"
```

See [Authentication for Noesis](https://platform.detectif.ai/docs/noesis/authentication/).

## Live calls

`WS /v1/detect/stream` is one WebSocket per call: stream the callee's audio, receive the answers. OpenAPI does not describe WebSockets, so it has its own page: [Stream protocol](https://platform.detectif.ai/docs/noesis/stream-protocol/). Clients that cannot set the `Authorization` header use a [stream token](https://platform.detectif.ai/docs/api/noesis/create-stream-token/).

## Endpoints

Base URL: `https://api.noesis.detectif.ai` (live stream: `wss://api.noesis.detectif.ai`). Same API keys as the other products; the key needs the Noesis permission.

| Method | Path | Page |
|---|---|---|
| `WS` | `/v1/detect/stream` | [Live call stream](https://platform.detectif.ai/docs/noesis/stream-protocol/) |
| `POST` | `/v1/detect/stream-tokens` | [Create a stream token](https://platform.detectif.ai/docs/api/noesis/create-stream-token/) |
| `POST` | `/v1/detect/file` | [Analyse a call recording](https://platform.detectif.ai/docs/api/noesis/analyze-recording/) |
| `GET` | `/v1/detect/sessions/{session_id}` | [Get a call session](https://platform.detectif.ai/docs/api/noesis/get-session/) |
| `GET` | `/v1/detect/sessions` | [List call sessions](https://platform.detectif.ai/docs/api/noesis/list-sessions/) |
| `GET` | `/v1/detect/usage` | [Get your Noesis usage](https://platform.detectif.ai/docs/api/noesis/get-usage/) |
| `GET` | `/v1/health` | [Check service health](https://platform.detectif.ai/docs/api/noesis/get-health/) |

Errors share one shape with a stable `error.code`; see [Noesis errors](https://platform.detectif.ai/docs/noesis/errors/).

## OpenAPI and Postman

- [noesis-openapi.json](https://platform.detectif.ai/noesis-openapi.json)
- [noesis-openapi.yaml](https://platform.detectif.ai/noesis-openapi.yaml)
- [Download Postman collection](https://platform.detectif.ai/postman/detectif.postman_collection.json): the Noesis endpoints are in the **Noesis** folder, with their own `noesisBaseUrl` variable.
