API reference
OpenAI compatibility
What Lyber supports from the OpenAI API, and what it rejects.
Lyber rejects what it doesn't support with 400 instead of ignoring it, so a request never silently runs differently from what you asked.
Features
| Feature | Support |
|---|---|
| Chat Completions | Yes |
| Streaming | Yes. Usage with stream_options.include_usage. |
| Tool calling | Yes. Function tools only. |
| Reasoning effort | Yes. Values differ per model. |
| Image inputs | Accepted (preview). Image understanding isn't qualified yet. |
| Responses API | Preview, stateless. |
Structured outputs and JSON mode (response_format) | No |
| Prompt caching | No. Every input token bills at the input rate. |
| Web search, web fetch and other hosted tools | No |
| Embeddings, audio, image generation | No |
Legacy Completions (/v1/completions) | No |
Anthropic Messages (/v1/messages) | No |
| Token counting | No endpoint. usage reports the counts after each request. |
Chat Completions parameters
| Accepted | Rejected with 400 |
|---|---|
model messages max_tokens max_completion_tokens temperature top_p stop stream stream_options tools tool_choice reasoning_effort thinking_token_budget (DeepSeek) max_cost_micro_usdc | n seed logprobs top_logprobs presence_penalty frequency_penalty logit_bias user response_format parallel_tool_calls prompt_cache_key and any other field |