Two formats, one pipeline

Point whichever client you already have at the gateway. Neither format is a translation layer bolted onto the other.

OpenAI formathttps://189.24.66.33/v1
Anthropic formathttps://189.24.66.33

Base URLs

FormatBase URLHeader
OpenAIhttps://189.24.66.33/v1authorization: Bearer sk-relay-...
Anthropichttps://189.24.66.33x-api-key: sk-relay-... (or the same bearer header, which Claude Code sends)

The Anthropic base takes no /v1 because the SDK appends it. The OpenAI base does, because the SDK appends only /chat/completions.

One pipeline underneath

Both routes share a single metering pipeline with a dialect per format. Reserve, settle, receipts and logging behave identically whichever one you call, and a new format is a dialect rather than a second implementation.