Open WebUI Chat API

The Chat API from Open WebUI — 1 operation(s) for chat.

OpenAPI Specification

open-webui-chat-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Open WebUI Anthropic Chat API
  description: 'REST API exposed by a self-hosted Open WebUI instance. Endpoints include an

    OpenAI-compatible chat completions surface, an Anthropic-compatible messages

    endpoint, and a passthrough proxy for native Ollama endpoints. Authentication

    uses a Bearer token (Open WebUI session token or a per-user API key); each

    API key inherits the permissions of the user who created it.

    '
  version: 1.0.0
  contact:
    name: Open WebUI Documentation
    url: https://docs.openwebui.com/
servers:
- url: http://localhost:3000
  description: Default local Open WebUI deployment
- url: https://{host}
  description: User-deployed Open WebUI instance
  variables:
    host:
      default: openwebui.example.com
security:
- BearerAuth: []
tags:
- name: Chat
paths:
  /api/chat/completions:
    post:
      tags:
      - Chat
      summary: Chat completions (OpenAI-compatible)
      description: 'OpenAI-compatible chat completions endpoint that routes requests to the

        configured backend (Ollama, OpenAI-compatible, or local model).

        '
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ChatCompletionRequest'
      responses:
        '200':
          description: Chat completion response.
          content:
            application/json:
              schema:
                type: object
                additionalProperties: true
components:
  schemas:
    Message:
      type: object
      properties:
        role:
          type: string
          enum:
          - system
          - user
          - assistant
          - tool
        content:
          type: string
      required:
      - role
      - content
    ChatCompletionRequest:
      type: object
      additionalProperties: true
      properties:
        model:
          type: string
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        stream:
          type: boolean
        temperature:
          type: number
        max_tokens:
          type: integer
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: 'Bearer token: Open WebUI session token or per-user API key. Each API key

        inherits the permissions of the user who created it.

        '