Routing request
Preparing the next surface

Keys, routing, and access handled for you.

Login with Roblox, mint an API key, and send OpenAI-compatible chat requests through provider fallbacks, quotas, moderation hooks, and entitlement-aware access control.

OpenAI-compatible Provider fallback Roblox entitlements
Roblox Luau request
Drop-in gateway endpoint
local HttpService = game:GetService("HttpService")

local response = HttpService:PostAsync(
  "https://ai.cat-bot.de/v1/chat/completions",
  HttpService:JSONEncode({
    model = "llama-3.1-8b-instant",
    messages = {
      { role = "user", content = "Give my NPC a quest." }
    }
  }),
  Enum.HttpContentType.ApplicationJson,
  false,
  { Authorization = "Bearer rk-******" }
)

Compatible API

Use standard chat completion clients against `/v1/chat/completions` and `/v1/models`.

Fallback routing

Order providers per model, mark fallback-only hops, and keep traffic moving when one upstream fails.

Fair quotas

Per-key RPM and daily limits protect the gateway while still letting free users build.

Policy hooks

Moderation, key revocation, maintenance mode, and admin controls live in one place.

Gateway flow

  1. 1Roblox OAuth creates a gateway user and a free API key.
  2. 2Keys inherit plan limits and entitlement upgrades automatically.
  3. 3Requests hit the moderation hook, quota checks, and model routing chain.
  4. 4Admins can rotate keys, edit providers, and watch usage activity.

Quickstart snippets

Switch language and copy the request shape.

from openai import OpenAI

client = OpenAI(
    api_key="rk-******",
    base_url="https://ai.cat-bot.de/v1",
)

result = client.chat.completions.create(
    model="llama-3.1-8b-instant",
    messages=[{"role": "user", "content": "Write NPC dialogue."}],
)

print(result.choices[0].message.content)

Ready to route a request?

Start with the playground, then move the same request body into your Roblox experience or server-side code.