OpenModelOpenModel
API Reference

Responses Protocol

Access OpenAI and DashScope models through the OpenAI Responses API format.

Migration Notice: The Chat Completions API (/v1/chat/completions) has been removed. OpenModel supports the Responses protocol at POST /v1/responses; it does not provide a generic endpoint that accepts arbitrary OpenAI API formats. Migrate clients to the Responses request format rather than only changing the URL.

The Responses protocol exposes the OpenAI Responses API format at POST /v1/responses. It serves two providers: OpenAI and DashScope (Alibaba Cloud Qwen models).

Because both providers share the same endpoint and request shape, you use the OpenAI SDK for both — switching providers means changing only the model parameter. See the OpenAI SDK guide for installation and full examples.

Endpoint

POST https://api.openmodel.ai/v1/responses

The same base URL also serves the authenticated GET /v1/models model-list endpoint used by the OpenAI SDK (see Models).

Authentication

Pass your OpenModel API key as a bearer token:

Authorization: Bearer om-your-api-key

Switching providers

To target a different provider, change only the model parameter:

# OpenAI
client.responses.create(model="gpt-5.4", input="...")
# DashScope (Qwen)
client.responses.create(model="qwen3-max", input="...")

DashScope also supports the Messages protocol — use whichever matches your existing code.

Provider differences & playground

Select a provider below to see its example models, error-response format, and an interactive playground pre-filled with that provider's model.

Example models
gpt-4ogpt-4.1-mini
Error response format
Standard OpenAI format — errors carry error.code + error.type. This is the baseline all Responses providers are compared against.
Official documentation
OpenAI Responses API

These are example models; the available list may change. View all available models in the Console

POST
/v1/responses

Authorization

BearerAuth
AuthorizationBearer <token>

Include your API key: Authorization: Bearer om-your-api-key

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/v1/responses" \  -H "Content-Type: application/json" \  -d '{    "model": "gpt-5.5",    "input": "Explain how API gateways work in 3 sentences."  }'
{
  "id": "resp_67ccf18ef5fc8190b16dbee19bc54e5f",
  "object": "response",
  "created_at": 1741484430,
  "model": "gpt-5.5",
  "output": [
    {
      "type": "message",
      "id": "msg_67ccf18ef5fc8190b16dbee19bc54e60",
      "role": "assistant",
      "content": [
        {
          "type": "output_text",
          "text": "An API gateway acts as a single entry point for client requests, routing them to the appropriate backend services."
        }
      ]
    }
  ],
  "usage": {
    "input_tokens": 18,
    "output_tokens": 52,
    "total_tokens": 70
  }
}
{
  "error": {
    "message": "string",
    "type": "string",
    "code": "string"
  }
}
{
  "error": {
    "message": "string",
    "type": "string",
    "code": "string"
  }
}
{
  "error": {
    "message": "string",
    "type": "string",
    "code": "string"
  }
}
Example models
qwen3.7-maxqwen3.6-plusqwen3.6-max-previewqwen3.6-flashqwen3-max
Error response format
The Messages endpoint returns DashScope's native error format — a root-level code/type with no error wrapper. The Responses endpoint uses the standard error.code + error.type shape.
Official documentation
DashScope Anthropic API

These are example models; the available list may change. View all available models in the Console

POST
/v1/responses

Authorization

BearerAuth
AuthorizationBearer <token>

Include your API key: Authorization: Bearer om-your-api-key

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/v1/responses" \  -H "Content-Type: application/json" \  -d '{    "model": "qwen3-max",    "input": "Explain how API gateways work in 3 sentences."  }'
{
  "id": "resp_67ccf18ef5fc8190b16dbee19bc54e5f",
  "object": "response",
  "created_at": 1741484430,
  "model": "qwen3-max",
  "output": [
    {
      "type": "message",
      "id": "msg_67ccf18ef5fc8190b16dbee19bc54e60",
      "role": "assistant",
      "content": [
        {
          "type": "output_text",
          "text": "An API gateway acts as a single entry point for client requests, routing them to the appropriate backend services."
        }
      ]
    }
  ],
  "usage": {
    "input_tokens": 18,
    "output_tokens": 52,
    "total_tokens": 70
  }
}
{
  "error": {
    "message": "string",
    "type": "string",
    "code": "string"
  }
}
{
  "error": {
    "message": "string",
    "type": "string",
    "code": "string"
  }
}
{
  "error": {
    "message": "string",
    "type": "string",
    "code": "string"
  }
}

On this page