Two formats, one pipeline
Point whichever client you already have at the gateway. Neither format is a translation layer bolted onto the other.
OpenAI format
https://189.24.66.33/v1Anthropic format
https://189.24.66.33Base URLs
| Format | Base URL | Header |
|---|---|---|
| OpenAI | https://189.24.66.33/v1 | authorization: Bearer sk-relay-... |
| Anthropic | https://189.24.66.33 | x-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.