# API overview

Source: https://nodedocs.mor.org/reference/api-overview

The proxy-router exposes an OpenAI-compatible HTTP API plus Morpheus-specific routes for blockchain operations and node management.

## Surface

This page documents the **proxy-router HTTP API** — the local API exposed by the proxy-router binary in this repo. It is **not** the hosted Morpheus Inference API; that is a separate product at [apidocs.mor.org](https://apidocs.mor.org), described in [Inference API overview](/inference-api/overview).

| Surface | URL (default) | Purpose |
|---------|---------------|---------|
| Local API | `http://localhost:8082` | All proxy-router HTTP endpoints (auth-protected) |
| Swagger UI | `http://localhost:8082/swagger/index.html` | Interactive request playground served by your own proxy-router |
| Public proxy | `tcp://<host>:3333` | TCP tunnel for consumer ↔ provider sessions |
| TEE attestation | `https://<host>:29343` | TDX attestation (`/cpu`, `/gpu`, `/docker-compose`) |

## Authentication

All endpoints require **HTTP Basic Auth**:

```
Authorization: Basic <base64(username:password)>
```

The `.cookie` file in your proxy-router directory has the default `admin:<random>`. Add scoped users via `proxy.conf` and the `/auth/users` endpoints. Full reference: [API auth](/reference/api-auth).

## Where the schema lives

The canonical OpenAPI schema for the proxy-router HTTP API is [`proxy-router/docs/swagger.yaml`](https://github.com/MorpheusAIs/Morpheus-Lumerin-Node/blob/main/proxy-router/docs/swagger.yaml), auto-generated by `swag init` as part of every release build. When you run the proxy-router locally, browse it at `http://localhost:8082/swagger/index.html`. For a curated subset of the most-used endpoints with prose context, see [API endpoints](/reference/api-endpoints).

## Endpoint families

<CardGroup cols={2}>
  <Card title="OpenAI compatibility" icon="comments" href="/reference/api-endpoints#chat-completions">
    `/v1/chat/completions`, `/v1/embeddings`, `/v1/audio/transcriptions`, `/v1/audio/speech`.
  </Card>
  <Card title="Marketplace (read)" icon="store" href="/reference/api-endpoints#get-providers">
    `GET /blockchain/providers`, `GET /blockchain/models`, `GET /blockchain/bids`.
  </Card>
  <Card title="Marketplace (write)" icon="pen" href="/providers/full/register-onchain">
    `POST /blockchain/providers`, `POST /blockchain/models`, `POST /blockchain/bids`.
  </Card>
  <Card title="Sessions" icon="clock" href="/reference/api-endpoints#open-session-by-model-id">
    `POST /blockchain/models/:id/session`, `POST /blockchain/sessions/:id/close`.
  </Card>
  <Card title="Wallet & balance" icon="wallet">
    `GET /wallet`, `GET /blockchain/balance`, `POST /blockchain/approve`.
  </Card>
  <Card title="Auth users" icon="key" href="/reference/api-auth">
    `POST /auth/users`, `DELETE /auth/users`.
  </Card>
</CardGroup>

## Direct vs UI

Most users go through MorpheusUI or the CLI; both call this API underneath. For headless scripts and agents, see [API direct](/reference/api-direct) for a curl-only walkthrough.
