+IzziAPI

Documentation

Everything you need to integrate Izzi API into your stack.

Getting Started

Install Izzi API in seconds with our auto-configuration tool:

npx izziapi

This command auto-detects your installed tools (Claude Code, Cursor, Cline, Windsurf) and configures them to use the Izzi API endpoint.

Authentication

All API requests require an API key. Include it in the header:

Authorization: Bearer izzi-xxxxxxxxxxxx

Get your API key from the dashboard after signing up.

API Endpoints

POST/v1/chat/completions

OpenAI-compatible chat completions endpoint.

curl https://api.izziapi.com/v1/chat/completions \
  -H "Authorization: Bearer izzi-xxxxx" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "claude-sonnet-4-20250514",
    "messages": [
      {"role": "user", "content": "Hello!"}
    ]
  }'
POST/v1/messages

Anthropic-compatible messages endpoint.

POST/v1/responses

OpenAI Responses API (simplified). See details below.

POST/v1/messages/count_tokens

Pre-count input tokens before making a request.

GET/v1/models

List all available models with pricing info.

GET/v1/models/:id

Lookup a specific model by ID. Supports aliases.

Also available at: /openai/v1/* and /api/v1/*

Responses API

Simplified interface compatible with n8n, LangChain, and other tools using OpenAI's Responses API format.

curl https://api.izziapi.com/v1/responses \
  -H "Authorization: Bearer izzi-xxxxx" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "claude-sonnet-4-20250514",
    "input": "Explain quantum computing in simple terms",
    "instructions": "You are a helpful teacher"
  }'

input — string or array of messages

instructions — system prompt (optional)

stream — enable streaming (optional)

Count Tokens

Pre-count input tokens before making a request — useful for cost estimation.

curl https://api.izziapi.com/v1/messages/count_tokens \
  -H "Authorization: Bearer izzi-xxxxx" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "claude-sonnet-4-20250514",
    "messages": [{"role": "user", "content": "Hello!"}]
  }'

For Anthropic models, uses native token counting. Other models use local estimation (~4 chars/token).

Extended Thinking

Enable Claude's Extended Thinking for complex reasoning tasks:

curl https://api.izziapi.com/v1/messages \
  -H "x-api-key: izzi-xxxxx" \
  -H "Content-Type: application/json" \
  -H "anthropic-version: 2023-06-01" \
  -d '{
    "model": "claude-sonnet-4-20250514",
    "max_tokens": 16000,
    "thinking": {
      "type": "enabled",
      "budget_tokens": 10000
    },
    "messages": [{"role": "user", "content": "Solve this step by step..."}]
  }'

Supported models: Claude Opus 4, Claude Sonnet 4. The thinking parameter is transparently forwarded to Anthropic.

Rate Limits

Every response includes rate limit headers:

x-ratelimit-tier: pro
x-ratelimit-limit-requests: 60
x-ratelimit-remaining-requests: 47
x-ratelimit-reset-requests: 2026-03-30T00:20:00Z
x-concurrent-limit: 3
x-concurrent-remaining: 2
Retry-After: 60  (only on 429)
PlanRPMConcurrentDaily
Free101100
Starter3021,000
Pro6032,000
Max9065,000
Ultra120810,000

Claude Code Setup

Configure Claude Code to use Izzi API:

# Set environment variables
export ANTHROPIC_BASE_URL=https://api.izziapi.com
export ANTHROPIC_API_KEY=izzi-xxxxx

# Start Claude Code
claude

Cursor Setup

  1. Open Cursor → Settings → Models
  2. Add https://api.izziapi.com/v1 as the OpenAI Base URL
  3. Enter your Izzi API key
  4. Select your preferred model

Supported Models

claude-opus-4-20250514claude-sonnet-4-20250514claude-3-5-haiku-20241022gpt-5gpt-4.1gpt-4.1-minigemini-2.5-progemini-2.5-flashgrok-3step-3.5-flashglm-4.5-air

Error Codes

All errors follow a consistent format:

{
  "error": {
    "type": "rate_limit_error",
    "message": "Rate limit exceeded. Try again in 60 seconds."
  }
}
HTTPTypeDescription
400invalid_request_errorMalformed request or missing fields
401authentication_errorInvalid or missing API key
402insufficient_balanceNot enough credits
403ip_blockedIP blocked after too many failed auth attempts
429rate_limit_errorRPM or concurrent limit exceeded
429quota_exceededDaily request quota exceeded
402budget_exceededMonthly budget limit reached
404not_foundModel or resource not found
502upstream_errorUpstream AI provider returned an error
502connection_errorFailed to reach upstream provider
500server_errorInternal server error