Skip to content
Fresh 2026

API details

Base URL, authentication, and key endpoint shapes for Models, Vendors, and Responses APIs.

Base API URL

All API endpoints in the reference documentation are relative to the following base URL:

https://api-gateway.merge.dev/v1

Authentication

For any request you make when communicating with Merge Gateway, you will need an API key to authenticate yourself as an authorized user.

Add your API Key with a "Bearer " prefix as a header called Authorization to authorize your Merge API requests. This header must be included in every request in this format:

Authorization: Bearer

Key endpoints

Gateway's public API surface is centered around three endpoint groups:

  • GET /models
    • list models
    • filter by provider or vendor
    • fetch a single model by query string with ?model=
  • GET /vendors
    • list execution vendors and the models they currently serve
    • fetch a single vendor with GET /vendors/{vendor_id}
  • POST /responses
    • create an LLM response
    • the response includes the vendor that ultimately served the request

Models API shape

GET /models returns canonical model identity at the top level and vendor-specific execution metadata under vendors.

Example:

json
{
  "model": "anthropic/claude-opus-4-6",
  "provider": "anthropic",
  "display_name": "Claude Opus 4.6",
  "vendors": {
    "anthropic": {
      "launch_date": "2025-05-14",
      "context_window": 1000000,
      "max_output_tokens": 32768,
      "availability_status": "available",
      "capabilities": {
        "input": ["text", "image"],
        "output": ["text", "tool_use"],
        "supports_tool_calling": true,
        "supports_tool_choice": true,
        "supports_structured_outputs": true,
        "streaming": true
      },
      "pricing": {
        "input_per_million": 2.5,
        "output_per_million": 10,
        "currency": "USD"
      }
    }
  },
  "availability_status": "available",
  "created_at": "2025-05-14T00:00:00Z",
  "updated_at": "2026-03-01T00:00:00Z"
}

Use GET /models?model= when you want one specific model object but prefer a query parameter over a path parameter. The slash is fine there because it is part of the query parameter value.

Vendors API shape

GET /vendors returns execution hosts, not canonical model owners.

Example:

json
{
  "vendor": "bedrock",
  "name": "AWS Bedrock",
  "models": [
    "anthropic/claude-opus-4-6",
    "google/gemma-3-27b-it"
  ],
  "supports_zdr": true,
  "supports_byok": true,
  "availability_status": "active"
}

Responses

POST /responses returns the canonical model that served the request and a top-level vendor field for the execution host that actually handled it.

Unofficial documentation reference. Built for internal use.