All use cases

AI gateway in front of OpenAI

You already have an OpenAI-powered app in production. It works. Then OpenAI has a 503, a runaway loop costs you $800 in a single night, and your biggest customer asks for a usage dashboard you don't have. You don't want to rewrite the app. Drop in a smarter base URL and have budgets, retries, fallback routing and per-customer margin reports appear without touching another line of application code.

Why Ringside

  • OpenAI wire-compat. Swap base_url to api.fightclub.pro/v1; chat, embeddings, Assistants and Threads behave identically to OpenAI's SDK.
  • Budgets, retries and provider fallback. Per-Customer budget_usd, automatic retry on upstream_quota_exceeded, optional failover to Anthropic or Mistral on upstream_unavailable.
  • Margin reporting out of the box. /v1/customers/:id/margin pairs your billable amount with Ringside cost per call, grouped by day / model / customer.

Architecture

Existing appOpenAI SDK, unchangedRingsidebase_url swapOpenAIprimaryAnthropicfallback

In code

# Before:
# client = OpenAI(api_key=OPENAI_KEY)

# After (3 lines):
from openai import OpenAI
client = OpenAI(
    api_key=RINGSIDE_BEARER_KEY,
    base_url="https://api.fightclub.pro/v1",
)

# Everything else is unchanged -- your existing app code:
resp = client.chat.completions.create(
    model="fc:openai/gpt-4o",     # or keep "gpt-4o", it resolves
    messages=messages,
    extra_headers={"FC-Customer": user.id},  # optional but recommended
)

# Now you get (without touching another line):
#   - Automatic retries on 429/5xx with exponential backoff
#   - Per-Customer budgets, rate limits, margin reports
#   - Failover from openai to anthropic on upstream_unavailable
#   - Webhooks on wallet.low, customer.budget_exceeded, run.failed

Cross-links

Used by

[TODO: real customers]

Get started in 5 minutes →