curl quickstart — 5 lines to ship

VerticalAPI is just an HTTP API — you can call it from curl, httpie, Postman or any HTTP client. The endpoint is OpenAI-compatible. Two headers: Authorization for VerticalAPI, X-Provider-Key for the underlying provider.

From zero to first call

  1. Sign up at verticalapi.com/dashboard

    Free tier — no card required. Generates your vapi_ key automatically.

  2. Add a provider key

    Paste your OpenAI sk-..., Anthropic sk-ant-..., or Google AIza... into the dashboard. Encrypted at rest.

  3. Install the curl SDK

    # curl is preinstalled on macOS, Linux and Windows 10+

  4. Run the example below

    Drop-in OpenAI SDK pattern — base_url + api_key + provider key header. That's it.

  5. Inspect the trace

    Every call gets a unique request ID. Find it in the dashboard with full latency, tokens, and cost breakdown.

curl — first call

quickstart.curlcurl
curl https://api.verticalapi.com/v1/chat/completions \
  -H "Authorization: Bearer vapi_..." \
  -H "X-Provider-Key: sk-..." \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-4o",
    "messages": [{"role": "user", "content": "Hello, world"}]
  }'

Swap model for claude-sonnet-4-5, gemini-2.5-pro, or any of 25+ supported providers. Update X-Provider-Key to match.

Common errors and fixes

401 missing Authorization header
VerticalAPI uses Bearer auth on the Authorization header for the gateway key. The provider key goes in X-Provider-Key. Don't mix them up.
Streaming responses garbled in terminal
Add --no-buffer to curl: curl --no-buffer ... and parse data: lines. Each chunk is a server-sent-events line.
Special characters in JSON body
Use --data-binary @body.json with a real JSON file rather than inline -d for complex prompts. Avoids shell-escaping headaches.

Where to go from here

Pick a model: browse all 25+ providers. Compare two: read head-to-head comparisons. Or jump to a use case: chatbot, RAG, autonomous agents.