> ## Documentation Index
> Fetch the complete documentation index at: https://docs.sterndesk.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Overview

> How the endpoint pages are generated and what they cover.

Every page under **Endpoints** is generated from the OpenAPI document the backend serves at
`/api/openapi.yaml`. Nothing in this repository describes an endpoint by hand, so the reference
cannot describe an operation the running API does not have.

The document itself is derived from the ConnectRPC service definitions: an operation appears here
when it is declared to have no side effects, or when it is explicitly annotated as writable by an
API key. Adding, changing, or removing an operation in the backend changes this reference.

## Calling an operation

Each operation is a Connect RPC, so every page shows `POST` against a path under `/rpc/`. Send a
JSON body and the `Connect-Protocol-Version: 1` header, and authenticate with
`Authorization: Bearer <key>`. The playground on each page fills these in for you.

## Uploading documents

Uploading candidate documents is the one write operation, and it takes two calls:
`CreateManualUpload` returns a signed, time-limited instruction, and the files are then sent to
Transloadit. That second call is documented as **Upload the files of a manual upload**; it is served
by Transloadit rather than by Sterndesk, so it does not take a Sterndesk API key.

Send the `params` and `signature` values exactly as `CreateManualUpload` returned them. The
signature covers those exact bytes, so re-serialising the JSON invalidates it
