Chat completions
POST /v1/chat/completions. Same request body as OpenAI's Chat Completions API, text input only for now. Image and audio parts return a 400 error. Unknown parameters are accepted and ignored.
Parameters
| Parameter | Support | Notes |
|---|---|---|
messages | Supported | |
max_tokens | Supported | |
max_completion_tokens | Supported | |
temperature | Supported | |
top_p | Supported | |
stop | Supported | |
seed | Supported | |
stream | Supported | |
stream_options | Supported | |
tools | Supported | On models that list tools (see /v1/models) |
tool_choice | Supported | On models that list tools |
parallel_tool_calls | Supported | On models that list tools |
response_format | Supported | On models that list JSON mode |
reasoning_effort | Supported | On reasoning models; ignored elsewhere |
presence_penalty | Accepted at its default value; other values return 400 | |
frequency_penalty | Accepted at its default value; other values return 400 | |
n | Accepted at its default value; other values return 400 | Only 1 |
user | Accepted and ignored | |
metadata | Accepted and ignored | |
store | Accepted and ignored | |
service_tier | Accepted and ignored | |
prompt_cache_key | Accepted and ignored | |
safety_identifier | Accepted and ignored | |
verbosity | Accepted and ignored | |
logit_bias | Accepted at its default value; other values return 400 | |
modalities | Accepted at its default value; other values return 400 | Only ["text"] |
logprobs | Accepted at its default value; other values return 400 | Only false |
top_logprobs | Accepted at its default value; other values return 400 | Not supported |
Usage and cost
Non-streaming responses include usage with token counts and usage.cost, the charge in euros, and the header x-powerspring-cost-eur with the same value. Streaming responses include usage (with cost) in the last chunk when you set stream_options.include_usage. Every charge also appears in your usage page.