{
  "info": {
    "name": "Anvat Gateway",
    "description": "Anvat — OpenAI- and Anthropic-compatible AI gateway. Drop-in replacement for api.anthropic.com and api.openai.com. Set the {{api_key}} collection variable to your Anvat key (https://anvat.app/app/keys) and run any request.",
    "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json",
    "version": "2026-06-06",
    "_postman_id": "a0e5b9c4-6b41-4ee0-9a8a-anvatgateway"
  },
  "variable": [
    {
      "key": "base_url",
      "value": "https://api.anvat.app",
      "type": "string"
    },
    {
      "key": "api_key",
      "value": "sk-anvat-REPLACE_ME",
      "type": "string"
    }
  ],
  "auth": {
    "type": "bearer",
    "bearer": [
      { "key": "token", "value": "{{api_key}}", "type": "string" }
    ]
  },
  "item": [
    {
      "name": "Anthropic — Messages",
      "description": "Drop-in replacement for api.anthropic.com/v1/messages. Works with Claude Code, the Anthropic SDK, and any client that targets Anthropic.",
      "item": [
        {
          "name": "Opus 4.8 — refactor",
          "request": {
            "method": "POST",
            "url": {
              "raw": "{{base_url}}/v1/messages",
              "host": ["{{base_url}}"],
              "path": ["v1", "messages"]
            },
            "header": [
              { "key": "content-type", "value": "application/json" },
              { "key": "x-api-key", "value": "{{api_key}}" },
              { "key": "anthropic-version", "value": "2023-06-01" }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"model\": \"claude-opus-4-8\",\n  \"max_tokens\": 4096,\n  \"messages\": [\n    { \"role\": \"user\", \"content\": \"Refactor this bubble-sort to merge-sort in TypeScript:\\n\\nfunction sort(a) { for (let i=0;i<a.length;i++) for (let j=0;j<a.length-i-1;j++) if (a[j]>a[j+1]) [a[j],a[j+1]]=[a[j+1],a[j]]; return a; }\" }\n  ]\n}"
            }
          }
        },
        {
          "name": "Sonnet 4.6 — streaming",
          "request": {
            "method": "POST",
            "url": {
              "raw": "{{base_url}}/v1/messages",
              "host": ["{{base_url}}"],
              "path": ["v1", "messages"]
            },
            "header": [
              { "key": "content-type", "value": "application/json" },
              { "key": "x-api-key", "value": "{{api_key}}" },
              { "key": "anthropic-version", "value": "2023-06-01" }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"model\": \"claude-sonnet-4-6\",\n  \"max_tokens\": 1024,\n  \"stream\": true,\n  \"messages\": [\n    { \"role\": \"user\", \"content\": \"Explain prompt caching in two paragraphs.\" }\n  ]\n}"
            }
          }
        },
        {
          "name": "Haiku 4.5 — short classification",
          "request": {
            "method": "POST",
            "url": {
              "raw": "{{base_url}}/v1/messages",
              "host": ["{{base_url}}"],
              "path": ["v1", "messages"]
            },
            "header": [
              { "key": "content-type", "value": "application/json" },
              { "key": "x-api-key", "value": "{{api_key}}" },
              { "key": "anthropic-version", "value": "2023-06-01" }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"model\": \"claude-haiku-4-5\",\n  \"max_tokens\": 64,\n  \"messages\": [\n    { \"role\": \"user\", \"content\": \"Classify as POSITIVE / NEGATIVE / NEUTRAL: 'This API saved my budget.'\" }\n  ]\n}"
            }
          }
        },
        {
          "name": "Opus 4.8 — with tool use",
          "request": {
            "method": "POST",
            "url": {
              "raw": "{{base_url}}/v1/messages",
              "host": ["{{base_url}}"],
              "path": ["v1", "messages"]
            },
            "header": [
              { "key": "content-type", "value": "application/json" },
              { "key": "x-api-key", "value": "{{api_key}}" },
              { "key": "anthropic-version", "value": "2023-06-01" }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"model\": \"claude-opus-4-8\",\n  \"max_tokens\": 1024,\n  \"messages\": [\n    { \"role\": \"user\", \"content\": \"What's the weather in San Francisco?\" }\n  ],\n  \"tools\": [\n    {\n      \"name\": \"get_weather\",\n      \"description\": \"Get the current weather for a city.\",\n      \"input_schema\": {\n        \"type\": \"object\",\n        \"properties\": { \"city\": { \"type\": \"string\" } },\n        \"required\": [\"city\"]\n      }\n    }\n  ]\n}"
            }
          }
        },
        {
          "name": "Count tokens (no charge)",
          "request": {
            "method": "POST",
            "url": {
              "raw": "{{base_url}}/v1/messages/count_tokens",
              "host": ["{{base_url}}"],
              "path": ["v1", "messages", "count_tokens"]
            },
            "header": [
              { "key": "content-type", "value": "application/json" },
              { "key": "x-api-key", "value": "{{api_key}}" },
              { "key": "anthropic-version", "value": "2023-06-01" }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"model\": \"claude-sonnet-4-6\",\n  \"max_tokens\": 1024,\n  \"messages\": [\n    { \"role\": \"user\", \"content\": \"Hello world from Anvat.\" }\n  ]\n}"
            }
          }
        }
      ]
    },
    {
      "name": "OpenAI — Chat Completions",
      "description": "Drop-in replacement for api.openai.com/v1/chat/completions. Works with Cursor, the OpenAI SDK, LangChain, LiteLLM.",
      "item": [
        {
          "name": "GPT-5.5 — JSON mode",
          "request": {
            "method": "POST",
            "url": {
              "raw": "{{base_url}}/v1/chat/completions",
              "host": ["{{base_url}}"],
              "path": ["v1", "chat", "completions"]
            },
            "header": [
              { "key": "content-type", "value": "application/json" },
              { "key": "authorization", "value": "Bearer {{api_key}}" }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"model\": \"gpt-5\",\n  \"messages\": [\n    { \"role\": \"system\", \"content\": \"Return only a JSON object.\" },\n    { \"role\": \"user\", \"content\": \"Name + city for a fictional engineer.\" }\n  ],\n  \"response_format\": { \"type\": \"json_object\" }\n}"
            }
          }
        },
        {
          "name": "Claude via OpenAI shape",
          "request": {
            "method": "POST",
            "url": {
              "raw": "{{base_url}}/v1/chat/completions",
              "host": ["{{base_url}}"],
              "path": ["v1", "chat", "completions"]
            },
            "header": [
              { "key": "content-type", "value": "application/json" },
              { "key": "authorization", "value": "Bearer {{api_key}}" }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"model\": \"claude-sonnet-4-6\",\n  \"messages\": [\n    { \"role\": \"user\", \"content\": \"What is prompt caching?\" }\n  ]\n}"
            }
          }
        },
        {
          "name": "Gemini 3.5 Flash — fast turn",
          "request": {
            "method": "POST",
            "url": {
              "raw": "{{base_url}}/v1/chat/completions",
              "host": ["{{base_url}}"],
              "path": ["v1", "chat", "completions"]
            },
            "header": [
              { "key": "content-type", "value": "application/json" },
              { "key": "authorization", "value": "Bearer {{api_key}}" }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"model\": \"gemini-3-5-flash\",\n  \"messages\": [\n    { \"role\": \"user\", \"content\": \"One-paragraph TL;DR of MCP.\" }\n  ]\n}"
            }
          }
        },
        {
          "name": "DeepSeek V4 — cheap coding",
          "request": {
            "method": "POST",
            "url": {
              "raw": "{{base_url}}/v1/chat/completions",
              "host": ["{{base_url}}"],
              "path": ["v1", "chat", "completions"]
            },
            "header": [
              { "key": "content-type", "value": "application/json" },
              { "key": "authorization", "value": "Bearer {{api_key}}" }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"model\": \"deepseek-v4-pro\",\n  \"messages\": [\n    { \"role\": \"user\", \"content\": \"Write a Python LRU cache class.\" }\n  ]\n}"
            }
          }
        }
      ]
    },
    {
      "name": "OpenAI — Responses",
      "item": [
        {
          "name": "GPT-5.5 — reasoning",
          "request": {
            "method": "POST",
            "url": {
              "raw": "{{base_url}}/v1/responses",
              "host": ["{{base_url}}"],
              "path": ["v1", "responses"]
            },
            "header": [
              { "key": "content-type", "value": "application/json" },
              { "key": "authorization", "value": "Bearer {{api_key}}" }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"model\": \"gpt-5\",\n  \"input\": \"Plan a 3-step refactor of a TypeScript module that currently does both auth and rate-limiting.\"\n}"
            }
          }
        }
      ]
    },
    {
      "name": "Discovery",
      "item": [
        {
          "name": "List models — OpenAI shape",
          "request": {
            "method": "GET",
            "url": {
              "raw": "{{base_url}}/v1/models",
              "host": ["{{base_url}}"],
              "path": ["v1", "models"]
            },
            "header": [
              { "key": "authorization", "value": "Bearer {{api_key}}" }
            ]
          }
        },
        {
          "name": "List models — Anthropic shape",
          "request": {
            "method": "GET",
            "url": {
              "raw": "{{base_url}}/v1/models",
              "host": ["{{base_url}}"],
              "path": ["v1", "models"]
            },
            "header": [
              { "key": "x-api-key", "value": "{{api_key}}" },
              { "key": "anthropic-version", "value": "2023-06-01" }
            ]
          }
        }
      ]
    },
    {
      "name": "Billing",
      "item": [
        {
          "name": "Caller balance (USD)",
          "request": {
            "method": "GET",
            "url": {
              "raw": "{{base_url}}/v1/balance",
              "host": ["{{base_url}}"],
              "path": ["v1", "balance"]
            },
            "header": [
              { "key": "authorization", "value": "Bearer {{api_key}}" }
            ]
          }
        }
      ]
    },
    {
      "name": "Ops",
      "item": [
        {
          "name": "Liveness",
          "request": {
            "method": "GET",
            "url": {
              "raw": "{{base_url}}/healthz",
              "host": ["{{base_url}}"],
              "path": ["healthz"]
            }
          }
        },
        {
          "name": "Readiness",
          "request": {
            "method": "GET",
            "url": {
              "raw": "{{base_url}}/readyz",
              "host": ["{{base_url}}"],
              "path": ["readyz"]
            }
          }
        }
      ]
    }
  ]
}
