Template featuring API Rate limiting at the edge with Redis using Upstash.
This example features API Rate limiting at the edge with Redis using Upstash.
The pattern for rate limiting is inspired by the GitHub API.
https://edge-functions-api-rate-limit.vercel.app
You can choose from one of the following two methods to use this repository:
Deploy the example using Vercel:
Execute create-next-app
with pnpm to bootstrap the example:
pnpm create next-app --example https://github.com/vercel/examples/tree/main/edge-functions/api-rate-limit api-rate-limit
You'll need to have an account with Upstash. Once that's done, copy the .env.example
file in this directory to .env.local
(which will be ignored by Git):
cp .env.example .env.local
Then open .env.local
and set the environment variables to match the REST API of your database. It should look like this:
UPSTASH_REST_API_DOMAIN = "us1-shiny-firefly-12345.upstash.io" UPSTASH_REST_API_TOKEN = "your-api-token"
Next, run Next.js in development mode:
pnpm dev
Deploy it to the cloud with Vercel (Documentation).
Template featuring API Rate limiting at the edge with Redis using Upstash.
This example features API Rate limiting at the edge with Redis using Upstash.
The pattern for rate limiting is inspired by the GitHub API.
https://edge-functions-api-rate-limit.vercel.app
You can choose from one of the following two methods to use this repository:
Deploy the example using Vercel:
Execute create-next-app
with pnpm to bootstrap the example:
pnpm create next-app --example https://github.com/vercel/examples/tree/main/edge-functions/api-rate-limit api-rate-limit
You'll need to have an account with Upstash. Once that's done, copy the .env.example
file in this directory to .env.local
(which will be ignored by Git):
cp .env.example .env.local
Then open .env.local
and set the environment variables to match the REST API of your database. It should look like this:
UPSTASH_REST_API_DOMAIN = "us1-shiny-firefly-12345.upstash.io" UPSTASH_REST_API_TOKEN = "your-api-token"
Next, run Next.js in development mode:
pnpm dev
Deploy it to the cloud with Vercel (Documentation).