prmptopoly

Protect your AI keys
from cost explosions and abuse

A secure gateway for all providers — with hard limits, margin billing and audit. OpenAI-compatible. Set up in minutes.

Integration

Just swap the base URL

// Vorher: Direkt zu OpenAI const openai = new OpenAI({ apiKey: 'sk-...' }); // Nachher: Über PROMPTOPOLY Proxy const openai = new OpenAI({ apiKey: 'pk_xxxxxxxxxxxxxxxxxxxx', baseURL: 'https://promptopoly.com/api/v1/proxy/v1' });

No code changes required. All OpenAI-compatible SDKs work immediately.

Security

Hard blocks BEFORE forwarding

1

Authentication

Every request is authenticated via X-Proxy-Key. Inactive or expired keys are rejected immediately.

2

Firewall

IP allowlist, model whitelist and blocklist regex check the request. Forbidden calls block before budget reservation.

3

Budget & Wallet

Race-safe budget limit and prepaid wallet debit. No call leaves the gateway without sufficient credit.

4

Provider Call

Encrypted credentials are decrypted, the provider call is executed and the response returned.

5

Audit & Billing

Every call is logged in a hash chain. Margin and costs are billed transparently.

Features

What's included

Hard Limits

Daily, weekly or monthly budgets. Race-safe reservation prevents cost explosions.

KeyVault

AES-256-GCM encryption. Plaintext only transiently in RAM. Key rotation included.

Margin & Billing

Percentage, fixed or per 1k tokens. Prepaid or postpaid. Transparent in cents.

Audit Trail

Tamper-proof hash chain. Export as CSV/JSON. GDPR-compliant.

Firewall

IP allowlist, model whitelist, capability check, blocklist regex.

Multi-Provider

OpenAI, Anthropic, OpenRouter. Unified API. Smart routing.

For agent systems

Your agent, our guardrails

OpenAI-compatible so every agent runs immediately — with streaming, tool calling and a native Anthropic endpoint.

Real streaming

Server-sent events relayed 1:1 from the provider, terminated with [DONE]. Tokens appear as they are produced — ideal for chat UIs and agent loops.

Tool calling

tools, tool_choice and role:"tool" pass through unchanged. The agent calls your functions, the gateway enforces budget and firewall.

Native Anthropic endpoint

POST /v1/messages in the Messages format — Claude Code and the Anthropic SDK run via ANTHROPIC_BASE_URL straight through the gateway.

Agent loop with a tool call

tools = [{"type": "function", "function": { "name": "get_stock", "description": "Aktueller Lagerbestand für eine SKU.", "parameters": {"type": "object", "properties": {"sku": {"type": "string"}}, "required": ["sku"]}, }}] messages = [{"role": "user", "content": "Ist SKU-4711 noch verfügbar?"}] first = client.chat.completions.create(model="gpt-4o-mini", messages=messages, tools=tools) call = first.choices[0].message.tool_calls[0] result = get_stock(call.function.name, **json.loads(call.function.arguments)) messages.append(first.choices[0].message) messages.append({"role": "tool", "tool_call_id": call.id, "content": json.dumps(result)}) final = client.chat.completions.create(model="gpt-4o-mini", messages=messages) print(final.choices[0].message.content)

Limits: n > 1 is not supported; the native Anthropic endpoint has no provider failover.

For agencies

Built for multi-client work

In production for 11 tenants

One gateway, many clients — each with its own key, budget and audit trail.

Hard cost caps

Race-safe budgets and a prepaid wallet stop runaway agents before it gets expensive.

pk_ auth & audit

Proxy keys instead of provider keys in code. Every call in a tamper-proof hash chain.

Secure your AI calls

Get started in minutes. No credit card required.

Start free View pricing