Skip to main content

Documentation

Build against Ratelimitly

One wire protocol, one client per language. Read the specification to implement your own, or pick up a library and start limiting.

Specification

Normative documents, served here in full — they define what a client must do.

Client libraries

Each library lives in its own repository, with setup instructions and examples. Published packages are linked where available.

C C
rl-c-client

The reference client. Every other library is checked against it in CI.

ngx nginx module
rl-nginx

Rate limiting at the edge, configured in your nginx server blocks.

Rs Rust
rl-rust-client

Official Rust client for distributed admission control.

Py Python
rl-python-client

Python client library, published to PyPI as ratelimitly.

Jv Java
rl-java-client

Java 21+ client for resource admission and latency reporting. Build from source; Maven Central release is pending.

Spr Spring
rl-spring

Spring Boot starter for the Java client: method annotations and MVC interception. Build from source; Maven Central release is pending.

Js JavaScript
rl-js-client

Zero-dependency Node.js client, published to npm as ratelimitly-client.

Exp Express
rl-express

Express middleware, published to npm as ratelimitly-express.

Elsewhere