An OpenAI-compatible LLM gateway with tier-gated routing, monthly token caps, and audit-chain integration. Capability of Elite Agentic Solutions. Self-serve plans start at $29/mo (Hobby) and $99/mo (Indie) — bundled tiers Starter/Pro are part of EAS Audit Pack.
base_url = https://gateway.eliteagenticsolutions.com/v1.
import openai
client = openai.OpenAI(
api_key="empire_xxx", # your gateway API key
base_url="https://gateway.eliteagenticsolutions.com/v1"
)
response = client.chat.completions.create(
model="gpt-4o-mini",
messages=[{"role": "user", "content": "Hello"}]
)
print(response.choices[0].message.content)
print(response.eas_gateway) # provider, latency_ms, cost_usd
import OpenAI from "openai";
const client = new OpenAI({
apiKey: "empire_xxx",
baseURL: "https://gateway.eliteagenticsolutions.com/v1",
});
const res = await client.chat.completions.create({
model: "gpt-4o-mini",
messages: [{ role: "user", content: "Hello" }],
});
console.log(res.choices[0].message.content);
console.log(res.eas_gateway); // provider, latency_ms, cost_usd
curl -s https://gateway.eliteagenticsolutions.com/v1/chat/completions \
-H "Authorization: Bearer $EAS_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-4o-mini",
"messages": [{"role": "user", "content": "Hello from EAS"}],
"max_tokens": 100
}'
Every request needs a Bearer token issued by the gateway on checkout:
Authorization: Bearer eas-live-...
Keys are bound to a tenant + tier. Keys are SHA-256 hashed at rest; the raw key is shown only once at issuance and via the welcome email.
OpenAI-compatible. Supports model, messages, max_tokens, temperature, top_p, stop.
The response includes an eas_gateway sidecar field with the upstream provider, request latency, and estimated cost (USD).
OpenAI-compatible. Supports text-embedding-3-small and text-embedding-3-large (routed to OpenAI).
Returns the models available to your tier:
curl https://gateway.eliteagenticsolutions.com/v1/models \
-H "Authorization: Bearer $EAS_API_KEY"
Current-month usage for your tenant — total tokens used + per-model breakdown.
Public — starts a Stripe Checkout Session for a self-serve tier. Body:
{"plan": "hobby_monthly"} // or hobby_yearly, indie_monthly, indie_yearly
Returns {"url": "https://checkout.stripe.com/..."} — 303 your user there.
Public liveness probe (no auth). Returns provider availability + DB/Redis status + Stripe webhook config status.
| Tier | Price | Models | Tokens/mo | Req/min |
|---|---|---|---|---|
| Free | $0 | gpt-4o-mini + Gemini Flash + Llama 3.1 | 10K | 3 |
| Hobby | $29/mo | + groq-mixtral, gemini-2.5-flash | 300K | 5 |
| Indie | $99/mo | + GPT-4o, claude-haiku-4-5 | 3M | 60 |
| Starter | $199/mo | (same as Indie + EAS audit chain) | 10M | 120 |
| Pro | $999/mo | + claude-sonnet-4-6 | 50M | 300 |
| Enterprise | Contact | All including claude-opus-4-7 | Uncapped | 1000 |
Annual billing saves 20% on every tier (where applicable).
The gateway routes each model name to the underlying provider transparently. You always get an OpenAI-shape response — the choices[].message.content field works the same whether the upstream is OpenAI, Anthropic, Groq, or Gemini.
System messages and Anthropic's distinct system + messages split are handled inside the gateway — you don't need provider-specific shapes.
If your preferred model is temporarily unavailable, EAS Gateway auto-routes to the closest equivalent. Your call returns a 200 with the same OpenAI shape; the eas_gateway response block tells you what actually served the request.
You're never billed for a failed call, and we bill at the rate of the provider that actually served you — not what you originally asked for.
Inspect the metadata on every response:
{
"choices": [...],
"model": "claude-sonnet-4-6", // what you requested
"eas_gateway": {
"original_model_requested": "claude-sonnet-4-6",
"actual_model_used": "groq-llama-3.3-70b", // what served you
"fallback_chain_step": 1, // 0 = primary, 1+ = fallback
"fallback_occurred": true,
"reason": "provider_unavailable",
"provider": "groq",
"cost_usd": 0.0008,
"latency_ms": 320
}
}
If fallback_occurred is false (or absent), your preferred provider served the request normally. The cascade only triggers when a primary returns 401 / 5xx three times within 60 seconds; recovery is automatic after a 5-minute cooldown.
If every provider in the chain is unhealthy at once (very rare), you'll get a 503 with full provider_status diagnostics — no silent failures.
| Code | Meaning |
|---|---|
| 401 | Invalid or missing Bearer token |
| 402 | Monthly token cap exceeded — upgrade tier or wait until next month |
| 403 | Model not allowed at your tier |
| 404 | Unknown model name (see /v1/models) |
| 429 | Per-minute rate limit — slow down or upgrade tier |
| 503 | Upstream provider error — usually transient, retry with backoff |
If you use Activepieces for automation: install the @empire/eas-llm piece. Configure once with your EAS API key, and it routes through this gateway with full tier guards + audit logging.
Email support@eliteagenticsolutions.com or visit contact.