Completions

Create a chat completion

Generates a chat completion based on the provided input. The completion can be streamed to the client as it is generated.

post/chat/completions

Query parameters

provider'ollama' | 'ollama_cloud' | 'groq' | 'llamacpp' | 'openai' | 'cloudflare' | 'cohere' | 'anthropic' | 'deepseek' | 'google' | 'mistral' | 'minimax' | 'moonshot' | 'nvidia' | 'zai'

Specific provider to use (default determined by model)

Request body

modelstring required

Model ID to use

max_tokensinteger

The maximum number of tokens that can be generated in the chat completion. This value can be used to control costs for text generated via API. This value is now deprecated in favor of max_completion_tokens, and is not compatible with o-series models.

max_completion_tokensinteger

An upper bound for the number of tokens that can be generated for a completion, including visible output tokens and reasoning tokens.

temperaturenumber

What sampling temperature to use, between 0 and 2. Higher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic.

top_pnumber

An alternative to sampling with temperature, called nucleus sampling, where the model considers the results of the tokens with top_p probability mass.

frequency_penaltynumber

Number between -2.0 and 2.0. Positive values penalize new tokens based on their existing frequency in the text so far, decreasing the model's likelihood to repeat the same line verbatim.

presence_penaltynumber

Number between -2.0 and 2.0. Positive values penalize new tokens based on whether they appear in the text so far, increasing the model's likelihood to talk about new topics.

ninteger

How many chat completion choices to generate for each input message.

seedinteger

If specified, our system will make a best effort to sample deterministically, such that repeated requests with the same seed and parameters should return the same result. Determinism is not guaranteed, and you should refer to the system_fingerprint response parameter to monitor changes in the backend.

logprobsboolean

Whether to return log probabilities of the output tokens or not. If true, returns the log probabilities of each output token returned in the content of message.

top_logprobsinteger

An integer between 0 and 20 specifying the number of most likely tokens to return at each token position, each with an associated log probability. logprobs must be set to true if this parameter is used.

logit_biasobject

Modify the likelihood of specified tokens appearing in the completion. Accepts a JSON object that maps tokens (specified by their token ID in the tokenizer) to an associated bias value from -100 to 100. The bias is added to the logits generated by the model prior to sampling.

userstring

A unique identifier representing your end-user, which can help to monitor and detect abuse.

streamboolean

If set to true, the model response data will be streamed to the client as it is generated using server-sent events.

parallel_tool_callsboolean

Whether to enable parallel function calling during tool use.

reasoning_formatstring

The format of the reasoning content. Can be raw or parsed. When specified as raw some reasoning models will output <think /> tags. When specified as parsed the model will output the reasoning under reasoning or reasoning_content attribute.

reasoning_effort'minimal' | 'low' | 'medium' | 'high'

Constrains effort on reasoning for reasoning models. Currently supported values are minimal, low, medium, and high. Reducing reasoning effort can result in faster responses and fewer tokens used on reasoning in a response.

Response

Successful response

idstring required

A unique identifier for the chat completion.

createdinteger required

The Unix timestamp (in seconds) of when the chat completion was created.

modelstring required

The model used for the chat completion.

objectstring required

The object type, which is always chat.completion.

Changes

Changed in 14 of the 55 revisions of this API.112239

    • added the optional property oneOf[CreateChatCompletionStreamResponse]/usage/completion_tokens_details to the response with the 200 status (media type: text/event-stream)

      response-optional-property-added

    • added the optional property oneOf[CreateChatCompletionStreamResponse]/usage/prompt_tokens_details to the response with the 200 status (media type: text/event-stream)

      response-optional-property-added

    • added the optional property usage/completion_tokens_details to the response with the 200 status (media type: application/json)

      response-optional-property-added

    • added the optional property usage/prompt_tokens_details to the response with the 200 status (media type: application/json)

      response-optional-property-added

    • added the new enum value llamacpp to the query request parameter provider

      request-parameter-enum-value-added

    • added the new enum value zai to the query request parameter provider

      request-parameter-enum-value-added

    • added the new enum value nvidia to the query request parameter provider

      request-parameter-enum-value-added

    • added the new optional request property frequency_penalty

      new-optional-request-property

    • added the new optional request property logit_bias

      new-optional-request-property

    • added the new optional request property logprobs

      new-optional-request-property

    • added the new optional request property max_completion_tokens

      new-optional-request-property

    • added the new optional request property n

      new-optional-request-property

    • added the new optional request property parallel_tool_calls

      new-optional-request-property

    • added the new optional request property presence_penalty

      new-optional-request-property

    • added the new optional request property reasoning_effort

      new-optional-request-property

    • added the new optional request property response_format

      new-optional-request-property

    • added the new optional request property seed

      new-optional-request-property

    • added the new optional request property stop

      new-optional-request-property

    • added the new optional request property temperature

      new-optional-request-property

    • added the new optional request property tool_choice

      new-optional-request-property

    • added the new optional request property top_logprobs

      new-optional-request-property

    • added the new optional request property top_p

      new-optional-request-property

    • added the new optional request property user

      new-optional-request-property

    • request property max_tokens deprecated

      request-property-deprecated

    • added the new enum value minimax to the query request parameter provider

      request-parameter-enum-value-added

  • f229066c04d7231See the full diff
    • added SSEvent CreateChatCompletionStreamResponse to the response body oneOf list for the response status 200 (media type: text/event-stream)

      response-body-one-of-added

    • the response's body type/format changed from object/ to / for status 200 (media type: text/event-stream)

      response-body-type-changed

    • removed the optional property data from the response with the 200 status (media type: text/event-stream)

      response-optional-property-removed

    • removed the optional property event from the response with the 200 status (media type: text/event-stream)

      response-optional-property-removed

    • removed the optional property retry from the response with the 200 status (media type: text/event-stream)

      response-optional-property-removed

    • added the optional property choices/items/logprobs to the response with the 200 status (media type: application/json)

      response-optional-property-added

    • added the new optional request property messages/items/tool_calls/items/extra_content

      new-optional-request-property

    • added the optional property choices/items/message/tool_calls/items/extra_content to the response with the 200 status

      response-optional-property-added

    • added the new enum value moonshot to the query request parameter provider

      request-parameter-enum-value-added

    • added the new enum value ollama_cloud to the query request parameter provider

      request-parameter-enum-value-added