> ## Documentation Index
> Fetch the complete documentation index at: https://docs.verlon.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Mistral-compatible chat completions (drop-in)

> **Use when:** caller has an existing @mistralai/mistralai SDK flow and wants to route through Verlon with zero code changes via a serverURL swap

Drop-in replacement for `POST https://api.mistral.ai/v1/chat/completions`. Point the Mistral SDK at `serverURL: "https://api.verlon.ai/mistral"`. Accepts the Mistral dialect (`random_seed`, `safe_prompt`, `tool_choice: "any"`) on top of the shared OpenAI-shape pipeline, and returns errors in the Mistral envelope (`{ object: "error", message, type, param, code }`) so the vendor SDK parses them. Streaming works unmodified — Mistral stream chunks are OpenAI-shaped.



## OpenAPI

````yaml /api-reference/openapi.json post /mistral/v1/chat/completions
openapi: 3.1.0
info:
  title: Verlon AI API
  version: 1.0.0
  description: >-
    Verlon AI is the managed AI infrastructure platform for developers building
    LLM-powered apps and agents. Beyond routing requests across providers,
    Verlon continuously evaluates response quality, runs experiments against
    live traffic, and automatically tunes gate configurations — so your platform
    doesn't just serve traffic, it learns from it.


    **Coding agents:** authentication, error semantics, gate concepts, and
    integration conventions are documented at https://verlon.ai/AGENTS.md — read
    that document first if you have not already. It is the canonical
    agent-facing contract; this specification is the canonical endpoint
    reference. Both are authoritative for their respective scopes.
  contact:
    name: Verlon AI
    url: https://verlon.ai
  license:
    name: Proprietary
servers:
  - url: https://api.verlon.ai
    description: Production
security:
  - bearerAuth: []
paths:
  /mistral/v1/chat/completions:
    post:
      tags:
        - Mistral Compat
      summary: Mistral-compatible chat completions (drop-in)
      description: >-
        **Use when:** caller has an existing @mistralai/mistralai SDK flow and
        wants to route through Verlon with zero code changes via a serverURL
        swap


        Drop-in replacement for `POST
        https://api.mistral.ai/v1/chat/completions`. Point the Mistral SDK at
        `serverURL: "https://api.verlon.ai/mistral"`. Accepts the Mistral
        dialect (`random_seed`, `safe_prompt`, `tool_choice: "any"`) on top of
        the shared OpenAI-shape pipeline, and returns errors in the Mistral
        envelope (`{ object: "error", message, type, param, code }`) so the
        vendor SDK parses them. Streaming works unmodified — Mistral stream
        chunks are OpenAI-shaped.
      responses:
        '200':
          description: >-
            Mistral-format chat completion (OpenAI-shaped). SSE chunks when
            `stream: true`.
        '400':
          description: Invalid request, in the Mistral error envelope
        '401':
          description: Missing or invalid credentials
        '404':
          description: Unknown gate or model, or surface disabled
      security:
        - bearerAuth: []
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: API Key
      description: >-
        Verlon API key (newly minted keys are prefixed `sk-vrln-`; legacy
        `verlon_*` and `layer_*` keys from prior prefix migrations continue to
        validate). Generated from the dashboard under Settings → API Keys, or
        via `verlon key create` in the CLI.

````