GenzoAI/platform

Build with every major model, through one key.

Anthropic, OpenAI, Google, Runway and HeyGen behind a single credential and a single bill. Change provider by changing one field — nothing else about your request moves.

6 providers 12 models 4 modalities Metered per token
curl https://api.genzoai.com/v1/generate/text \
  -H "Authorization: Bearer $GENZO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "prompt": "Explain vector databases in two sentences.",
    "provider": "anthropic",
    "model": "claude-sonnet-5"
  }'

# same request, different vendor — one field
#   "provider": "openai",  "model": "gpt-5"
#   "provider": "google",  "model": "gemini-3.6-flash"
import os, requests

r = requests.post(
    "https://api.genzoai.com/v1/generate/text",
    headers={"Authorization": f"Bearer {os.environ['GENZO_API_KEY']}"},
    json={
        "prompt": "Explain vector databases in two sentences.",
        "provider": "anthropic",
        "model": "claude-sonnet-5",
    },
    timeout=120,
)
print(r.json()["result"])
const res = await fetch("https://api.genzoai.com/v1/generate/text", {
  method: "POST",
  headers: {
    Authorization: `Bearer ${process.env.GENZO_API_KEY}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    prompt: "Explain vector databases in two sentences.",
    provider: "anthropic",
    model: "claude-sonnet-5",
  }),
});

const { result } = await res.json();
$res = Http::withToken(env('GENZO_API_KEY'))
    ->timeout(120)
    ->post('https://api.genzoai.com/v1/generate/text', [
        'prompt'   => 'Explain vector databases in two sentences.',
        'provider' => 'anthropic',
        'model'    => 'claude-sonnet-5',
    ]);

$text = $res->json('result');

Models

Current models, current prices.

Reference list rates per million tokens. Your credit cost derives from these — call /v1/credits/estimate for the exact figure before you commit.

ModelProviderIn / 1M Out / 1MContextStatus
claude-haiku-4-5Anthropic$1.00$5.00200KLive
claude-sonnet-5Anthropic$3.00$15.001MLive
claude-opus-5Anthropic$5.00$25.001MLive
gpt-5OpenAI———Live
gpt-5-miniOpenAI———Live
gemini-3.6-flashGoogle——1MNew
gemini-3.5-flashGoogle——1MNew
gen4.5Runwayper second—Live
tts-1VoiceNomper 1K chars—Live

Full catalogue and capabilities in the model reference, or fetch it live from GET /v1/providers.

Why route through us

Four vendors is four of everything.

Four invoices, four key rotations, four rate-limit regimes, and no single view of what you actually spent. One integration collapses all of it.

One credential

A single key reaches every provider. Rotate in one place, scope per project, and cap what each key may spend.

Priced up front

A fixed, published cost per modality and provider, deducted up front. You always know the price before the call runs, and failures are refunded in full.

Beyond chat

Image, video and speech run through the same key and the same balance. Most gateways stop at text.

Control

Bounded by design.

Per-key spend caps

Set a monthly credit ceiling and a request rate on every key. A leaked key is bounded to that number, not to your balance.

Failures cost nothing

The estimate is held, then released in full if the provider errors. You are billed only for work that completed.

No surprise invoices

A request that would exceed your balance is refused before it reaches the provider. You cannot go negative.

Start with one key.

One subscription covers the API and the Studio, on one credit balance. No separate developer plan, no free tier to compete with.