API Management for
Backend Teams
Rate limiting, API controls, usage visibility, and observability — without the operational complexity of a traditional API gateway. Update policies live, with no redeploys or delays.
works with
the problem
The old way has too many
moving parts.
Most teams bolt on observability after the fact — and end up maintaining more infrastructure than their actual product.
- Spin up and manage monitoring infrastructure
- Redeploy your server just to change a rate limit
- API goes down — you restart and hope for the best
- No visibility into which instance is stale or out of sync
- No infra, no setup, no maintenance
- Policy updates propagate in 10s, zero redeploys
- Emergency Profile auto-activates — your API keeps running
- Fleet view shows every instance, sync status, live
features
Everything your API needs.
Nothing you have to manage.
All enforcement happens locally inside your app — no live network call at request time.
Fleet visibility
Every instance, sync status, and policy state — live.
Live policy updates
Change limits from the dashboard. Propagates in under 10s. No redeploy.
Emergency Profile
Auto-fallback when your policy server goes unreachable.
IP allow / deny lists
Block or allowlist exact IPs or CIDR ranges, per route or globally.
Circuit breaker
Auto-trip on error spikes, auto-recover after cooldown.
Request size limits
Reject oversized payloads before they hit your app.
Geo-blocking
Block regions per route. Enforced locally, no live network call.
Per-route timeouts
Set timeout thresholds per endpoint. Terminate before cascade.
Analytics & logs
Latency percentiles, error rates, and logs — per instance or fleet-wide.
CORS control
Manage allowed origins from the dashboard, no app changes needed.
how it works
Up and running
in under 5 minutes.
No infrastructure changes. No new services to manage. Just install, configure, and go.
Install the SDK
One install command. No config files, no infrastructure to set up. Works with your existing app out of the box.
pip install ratelane-sdkAdd the middleware
Three lines of code. The SDK handles telemetry, policy sync, and enforcement — all non-blocking, all local.
from ratelane import RatelaneMiddleware, RatelaneConfig
app.add_middleware(
RatelaneMiddleware,
config=RatelaneConfig(
api_key="sk_live_...",
collector_url="https://api.ratelane.dev",
fastapi_app=app,
# instance_version="1.0.0", // optional
)
)Control everything from the dashboard
Change rate limits, disable routes, block regions, and watch your fleet in real time — no redeploy ever again.
Get started freetry it live
This is what Ratelane
actually does.
Drag the rate limit, disable a route, block a region, trip a circuit breaker — watch it apply instantly, across your whole fleet.
Requests exceeding this are rejected with 413 before reaching your app.
Built so nothing depends on us.
Every part of Ratelane's design starts from the same premise: your API's reliability and data should never be in anyone's hands but yours.
Zero live dependency
Ratelane enforces policy from a locally cached copy on your own infra, refreshed continuously in the background. There's no live network call in your request path — ever. Your API's uptime is never tied to a round-trip to us.
Nothing but the shape of your traffic
Ratelane never touches your request or response data. The only thing that ever reaches us is route-level telemetry — which endpoint, how long it took, what status came back — never bodies, never headers, never payloads. And it never adds latency to a live request, however it's delivered.
Isolated by account, always
Every policy, instance, and log is scoped strictly to your account at the data layer. There's no cross-account visibility, by architecture, not just by permission check.
pricing
Simple pricing.
Scales with your fleet.
Free
For side projects and testing
- 2 instances
- 5 saved policies
- 24h logs & analytics retention
- 1 team member
- Community support
Pro
For production APIs
- Everything in Free, plus:
- 5 instances
- 15 saved policies
- 7 day logs & analytics retention
- 3 team members
- 48h email support
Enterprise
For teams at scale
- Everything in Pro, plus:
- 20 instances
- 50 saved policies
- 30 day logs & analytics retention
- 20 team members
- Extra members: $1/user/month add-on
- Priority support + uptime SLA
Custom
For large-scale deployments
- Everything in Enterprise, plus:
- Unlimited instances
- Unlimited saved policies
- 90 day log retention
- SSO / SAML
- Audit logs
- Dedicated Slack support
- Custom SLA & billing
roadmap
Shipped, shipping,
and next in line.
No dates, no promises we can't keep. Just what's done and what we're building.
Push new limits from the dashboard. Propagates to all instances in under 10s, no redeploy.
Auto-activates a cached fallback policy if the policy server goes unreachable. API keeps running.
Every instance, sync status, and policy state — live. See who's stale or on Emergency Profile.
Exact IPs or CIDR ranges, per route or globally. Reject oversized payloads before they hit your app.
Auto-trip on error spikes, auto-recover after cooldown. Per-route, sliding window.
Latency percentiles, error rates, and filterable logs — per instance or fleet-wide.
Email alerts for Emergency Profile triggers, stale instances, rate spikes, and error spikes.
Invite teammates by email. Managers get everything except billing, and can be limited to specific instances.
Group routes that should behave the same. One set of limits, IP rules and circuit breaker for all of them, and a route can still override its group.
@ratelane/astro adds middleware and a per-route wrapper for Astro apps.
Bring Ratelane to Flask and other WSGI frameworks beyond FastAPI/Starlette.
Block or allow regions per route. Enforced locally, no live network call at request time.
Visual drag-and-drop UI for building and previewing policies without touching config.
$ more coming — we ship weekly.