v52

OpenAPI 3.1.0raw.githubusercontent.com2026-07-311,1941,9384.1 MB
OpenAI Chat

Create a chat completion (OpenAI-compatible)

Chat with a language model. This endpoint is consistent with the OpenAI Chat Completions API and may be used with the OpenAI JS or Python SDK by setting the base URL to https://api.telnyx.com/v2/ai/openai.

post/ai/openai/chat/completions

Request body

api_key_refstring

If you are using an external inference provider like xAI or OpenAI, this field allows you to pass along a reference to your API key. After creating an integration secret for you API key, pass the secret's identifier in this field.

best_ofinteger

This is used with use_beam_search to determine how many candidate beams to explore.

early_stoppingboolean

This is used with use_beam_search. If true, generation stops as soon as there are best_of complete candidates; if false, a heuristic is applied and the generation stops when is it very unlikely to find better candidates.

enable_thinkingboolean

Whether to enable the thinking/reasoning phase for models that support it (e.g., QwQ, Qwen3). When set to false, the model will skip the internal reasoning step and respond directly, which can reduce latency. Defaults to true.

frequency_penaltynumber

Higher values will penalize the model from repeating the same output tokens.

guided_choicestring[]

If specified, the output will be exactly one of the choices.

guided_jsonobject

Must be a valid JSON schema. If specified, the output will follow the JSON schema.

guided_regexstring

If specified, the output will follow the regex pattern.

length_penaltynumber

This is used with use_beam_search to prefer shorter or longer completions.

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.

max_tokensinteger

Maximum number of completion tokens the model should generate.

min_pnumber

This is an alternative to top_p that many prefer. Must be in [0, 1].

modelstring

The language model to chat with.

nnumber

This will return multiple choices for you instead of a single chat completion.

presence_penaltynumber

Higher values will penalize the model from repeating the same output tokens.

seedinteger

If specified, the system will make a best effort to sample deterministically, such that repeated requests with the same seed and parameters should return the same result.

service_tierstring

The service tier to use for this request. Supported values vary by model; use GET /v2/ai/openai/models and inspect the model's service_tiers field. If omitted, Telnyx-hosted models use default.

streamboolean

Whether or not to stream data-only server-sent events as they become available.

temperaturenumber

Adjusts the "creativity" of the model. Lower values make the model more deterministic and repetitive, while higher values make the model more random and creative.

tool_choice'none' | 'auto' | 'required'
top_logprobsinteger

This is used with logprobs. 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.

top_pnumber

An alternative or complement to temperature. This adjusts how many of the top possibilities to consider.

use_beam_searchboolean

Setting this to true will allow the model to explore more completion options. This is not supported by OpenAI.

Example request

{
  "messages": [
    {
      "content": "You are a friendly chatbot.",
      "role": "system"
    },
    {
      "content": "Hello, world!",
      "role": "user"
    }
  ]
}

Response

Successful Response

object required