Limits & errors
Allowances by plan
Allowances depend on your RoutePath.to plan. API requests are counted per account, across all of its keys, so extra keys don't raise the limit. They reset on the 1st of each month (UTC).
| Allowance | Guest | Free | Pro | Business |
|---|---|---|---|---|
| New short links | 3/day | 50/month | 1,000/month | 5,000/month |
| Analytics history | None | 30 days | 12 months | 24 months |
| Custom domains | None | 1 | 3 | 10 |
| Active API keys | None | 1 | 3 | 10 |
| API requests per month | None | 1,000 | 25,000 | 150,000 |
| Webhook endpoints | None | None | 1 | 5 |
Guests can create links without an account but have no API access.
What happens at a limit
- Short links that already exist keep redirecting. Limits only stop new creations and new API requests.
- Only successful creations count toward link allowances. Edits and failed requests don't.
- Analytics history limits control how far back you can view. Older data is kept, not deleted.
Reading your allowance
Responses include your remaining monthly allowance when one applies:
Response headers
X-Api-Allowance-Limit: 1000
X-Api-Allowance-Remaining: 999Errors
Errors return JSON with an error message and, for plan-related ones, a code.
403 example
{ "error": "Country routing is available on the Pro plan. Upgrade to use it.", "code": "PLAN_FEATURE", "required_plan": "pro" }| Status | Code | Meaning |
|---|---|---|
400 | — | The request body or parameters are invalid. The message says which field. |
401 | — | Missing, invalid, expired or revoked API key. |
403 | — | The key lacks the scope this endpoint needs, or the action is dashboard-only (API keys, webhooks, domains). |
403 | PLAN_LIMIT | A plan quota is reached (links, API keys, webhooks, custom domains). Includes the plan that raises it. |
403 | PLAN_FEATURE | The feature isn't part of the account's plan, for example country routing or A/B testing. |
404 | — | The resource doesn't exist, or belongs to another account. |
409 | — | That custom ending or tag name is already taken. |
429 | API_ALLOWANCE_REACHED | The account's monthly API request allowance is used up. It resets on the 1st (UTC). |