OpenAI-compatible chat completion API. Point any SDK that speaks the OpenAI protocol at this host and it works without code changes.
| Method | Path | Auth | What |
|---|---|---|---|
| GET | /health | no | Liveness check |
| GET | /v1/models | yes | List available models |
| POST | /v1/chat/completions | yes | Chat completion (tool calls, streaming) |
| POST | /v1/completions | yes | Legacy text completion |
All /v1/* endpoints require an API key. Send via the
standard OpenAI header:
Authorization: Bearer <key>
Pass the model identifier in the model field of your
request. Authenticated clients can list the available identifiers via
/v1/models.
Chat completion (curl):
curl -X POST https://llm.sipgate.ai/v1/chat/completions \
-H "Authorization: Bearer $KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "<id from /v1/models>",
"messages": [
{"role": "system", "content": "Du bist ein hilfreicher Assistent."},
{"role": "user", "content": "Erklär mir SIP in einem Satz."}
]
}'
Streaming response (server-sent events, OpenAI flavour):
curl -N -X POST https://llm.sipgate.ai/v1/chat/completions \
-H "Authorization: Bearer $KEY" \
-H "Content-Type: application/json" \
-d '{"model": "...", "stream": true, "messages": [...]}'
OpenAI Python SDK:
from openai import OpenAI
client = OpenAI(
base_url="https://llm.sipgate.ai/v1",
api_key=KEY,
)
resp = client.chat.completions.create(
model="...",
messages=[{"role": "user", "content": "Hallo!"}],
)
print(resp.choices[0].message.content)
For an interactive chat front-end backed by this API, see chat.sipgate.ai.