---
audience: developer
summary: API endpoints, WebSocket events, CLI, configuration, error codes, slash commands,
  plugin protocol.
title: Reference
path: reference
status: published
---

# Reference

Authoritative lookups. If a tutorial said *"see the API reference for
details"*, you're in the right place.

## API

One page per domain. Every endpoint is listed with method, path,
required permission, request body shape (where non-trivial), and a
sample response.

- [Auth](/docs/scaiwave/reference/api/auth) — sign in, register, refresh.
- [Rooms](/docs/scaiwave/reference/api/rooms) — create, list, archive, close, export, import, DM.
- [Messages and reactions](/docs/scaiwave/reference/api/messages-and-reactions) — send, edit, redact, react.
- [Members and directory](/docs/scaiwave/reference/api/members-and-directory) — invite, kick, ban, browse.
- [Workspaces](/docs/scaiwave/reference/api/workspaces) — workspaces and their members.
- [Notes](/docs/scaiwave/reference/api/notes) — full notes surface.
- [Comments](/docs/scaiwave/reference/api/comments) — comment threads on notes.
- [AI](/docs/scaiwave/reference/api/ai) — engagement, response mode, system prompts, plugins, agents, approvals, search.
- [Sidekicks and plans](/docs/scaiwave/reference/api/sidekicks-and-plans) — agentic execution.
- [Helpers and skills](/docs/scaiwave/reference/api/helpers-and-skills) — specialist AI tools.
- [Prompt Studio](/docs/scaiwave/reference/api/prompt-studio) — prompt inspection and tuning.
- [Artifacts](/docs/scaiwave/reference/api/artifacts) — canvas documents inside rooms.
- [Media and files](/docs/scaiwave/reference/api/media-and-files) — uploads, downloads, transcription, room-file index.
- [Calls](/docs/scaiwave/reference/api/calls) — audio/video/screenshare/recording.
- [Presence and state](/docs/scaiwave/reference/api/presence-and-state) — presence, typing, sync, state.
- [Inbox and notifications](/docs/scaiwave/reference/api/inbox-and-notifications) — priority inbox, snooze, catchup.
- [Sync](/docs/scaiwave/reference/api/sync) — long-poll for missed events.
- [Federation](/docs/scaiwave/reference/api/federation) — server-to-server protocol + admin.
- [Bridges](/docs/scaiwave/reference/api/bridges) — admin + inbound webhook.
- [Profiles and preferences](/docs/scaiwave/reference/api/profiles).
- [Queue and scheduled tasks](/docs/scaiwave/reference/api/queue-and-scheduled-tasks).
- [Admin](/docs/scaiwave/reference/api/admin) — tenants, partners, plugins, models, audit, statistics.
- [GDPR](/docs/scaiwave/reference/api/gdpr) — export, erase, consent.
- [Health and metrics](/docs/scaiwave/reference/api/health-and-metrics).

## Non-API

- [WebSocket events](/docs/scaiwave/reference/websocket-events) — every event type, with payload schemas.
- [CLI](/docs/scaiwave/reference/cli) — the `scaiwave` command-line tool.
- [Configuration](/docs/scaiwave/reference/configuration) — every `SCAIWAVE_*` environment variable.
- [Error codes](/docs/scaiwave/reference/error-codes) — `SW_*` codes with meanings.
- [Slash commands](/docs/scaiwave/reference/slash-commands) — machine-readable catalog.
- [Plugin protocol](/docs/scaiwave/reference/plugin-protocol) — `BasePlugin`, `ToolDefinition`, `PluginContext`.

## OpenAPI

The full OpenAPI 3.1 spec for the REST surface is served at
`/openapi.json`. ReDoc-rendered at `/redoc`; Swagger UI at `/docs`
(when `SCAIWAVE_DEBUG=true`).

## Envelope

Every authenticated response uses one of:

```json
{ "data": <result>, "meta": { ... } }
```

```json
{ "error": { "code": "SW_*", "message": "human-readable" } }
```

`meta` carries pagination, totals, request id; consult per-endpoint
docs for what's there. Error `code` is a stable identifier you can
match on; `message` may be localised.
