Modules
thin facade for the most common operations.
POST /chat/completions — openai-compatible chat.
POST /embeddings — convert text (or multimodal content) to vectors.
POST /messages — anthropic-format messages api.
GET /models — live model catalog.
POST /audio/speech — text-to-speech.
POST /audio/transcriptions — speech-to-text.
optional supervisor.
build the headers that authenticate a request.
hard-coded snapshot of /api/v1/models.
hard-coded snapshot of /api/v1/providers — see
OpenrouterSdk.Catalog.Models for how the snapshot is managed.
finch wrapper. two paths
internal request representation.
immutable configuration for the sdk.
uniform error struct returned by every public api function.
thin shim around json encode/decode.
extension hook for upstream consumers.
oauth pkce primitives.
incremental server-sent-events parser.
a single completed sse event (post-dispatch)
shared sink semantics for *_stream apis.
thin wrapper around :telemetry.span/3.
Mix Tasks
fetches /api/v1/models and /api/v1/providers from openrouter and
writes them into priv/openrouter/. designed for ci to call on a
schedule and auto-open a pr when drift exists.