Skip to main content
The Reflection API’s OpenAI-compatible endpoint, https://api.reflection.ai/openai/v1, implements the OpenAI Chat Completions and Models endpoints, and no others. Code that uses only those endpoints, through the OpenAI SDKs or a framework built on them, works after you change two settings:
Many tools also read the OPENAI_BASE_URL and OPENAI_API_KEY environment variables. A tool that uses Chat Completions can often switch without code changes; a tool that calls another endpoint, such as Responses, will not work:

Supported endpoints

Supported features

  • Text messages with system, developer, user, assistant, and tool roles
  • Streaming, including stream_options.include_usage
  • Tool calling, with tool_choice and parallel_tool_calls
  • Structured outputs with json_object and json_schema
  • temperature, top_p, frequency_penalty, presence_penalty, max_completion_tokens, max_tokens (deprecated), and seed
  • reasoning_effort

Differences

Parameters with fixed values

These parameters are accepted only at the value shown. Any other value returns a 400 error with code unsupported_value.

Stop sequences

stop is accepted, as a string or an array of up to four strings, but has no effect: generation doesn’t stop at these sequences. If you need to end output at a sequence, truncate the text in your code.

Reasoning effort

Each model accepts only the reasoning_effort values listed in its reasoning.supported_efforts, and any other value returns a 400 error with code unsupported_value. Beam-501B-A23B accepts low, medium, high, xhigh, and max, and applies medium when a request omits reasoning_effort. It always reasons, so there is no value such as none that turns reasoning off. See Reasoning.

Other parameters

Parameters that aren’t listed in the API reference, such as top_logprobs, audio, prediction, user, or metadata, aren’t supported and return a 400 error with code unsupported_parameter. If a framework sends one of these by default, turn it off in the framework’s settings.

Input

Message content is text only: a string, or an array of text parts. Image, audio, and file inputs are not supported.

Additions

The API returns some fields that OpenAI’s API does not:

Errors

Errors use the same {"error": {"message", "type", "param", "code"}} shape, so SDK exception handling works unchanged. Some code values are specific to Reflection; see Errors.