Platform API error
endpoint_limit
endpoint_limit is the 409 code returned when a plan already has as many webhook endpoints as it allows and you try to create another.
Updated November 6, 2026
- HTTP status
- 409
- Code
endpoint_limit
Returned when
- Creating a subscription when the plan's endpoint count is used: Starter 2, Growth 10, Scale 50.
What to do
- Delete an endpoint you no longer use, or upgrade in the console.
Example answer
HTTP/1.1 409
content-type: application/json
{
"error": {
"code": "endpoint_limit",
"message": "The <plan> plan allows <n> webhook endpoints."
}
}
Related errors
- key_limit The plan already has as many active keys as it allows.
- plan_required The call needs a paid plan.
What it means
endpoint_limit is a Platform API error code with HTTP status 409. It means the plan on the account already has as many webhook endpoints as it allows, so a new subscription cannot be created.
The error arrives in the standard error shape: an error object with code, message, and hint. The code is stable, so match on the string endpoint_limit. The message is not stable and may change wording, so never branch on it.
The message follows the pattern The <plan> plan allows <n> webhook endpoints, with the plan name and its limit filled in. Those values tell you which plan ceiling you hit and how many endpoints it permits.
Why you are seeing it
You get this code when you create a subscription and the plan's endpoint count is already used. The count is a per-plan allowance, not a per-request one, so the endpoint you are creating is one too many for the current plan.
The allowance is Starter 2, Growth 10, and Scale 50 webhook endpoints. A Starter plan with two existing endpoints returns endpoint_limit on the next creation attempt, and the same applies at 10 on Growth and 50 on Scale.
Because the conflict is about existing state rather than the request body, retrying the same request unchanged returns the same 409. Nothing about the payload is wrong; the account is simply at its ceiling.
How to fix it
Delete an endpoint you no longer use, then create the subscription again. Review which endpoints are still receiving events and remove the stale ones so the count drops below the plan allowance.
If you need to keep every existing endpoint, upgrade in the console to a plan with a higher endpoint count, then retry the creation.
After either change, resend the same subscription request. It should succeed once the count is under the limit. If it still returns endpoint_limit, check that the deletion or upgrade completed on the account you are authenticating with.
Handling it in code
Check for HTTP 409 and then inspect error.code for endpoint_limit before showing anything to a user. Treat it as a configuration problem, not a transient one: do not put it in the same retry loop as rate or network failures, because repeating the call cannot free a slot.
Surface the message, which names the plan and its allowance, alongside a path to fix it: remove an unused endpoint or upgrade in the console. Log the response body so the plan and limit values are captured with the failed request.
Two related codes help you tell causes apart. key_limit covers the same kind of ceiling for keys, and plan_required means the plan does not cover the operation at all. Matching on code, rather than message text, keeps these branches correct as wording changes.
Questions
What HTTP status does endpoint_limit return?
endpoint_limit returns HTTP 409. It signals a conflict with the account's current state: the plan's webhook endpoint allowance is already fully used.
How many webhook endpoints does each plan allow?
Starter allows 2, Growth allows 10, and Scale allows 50 webhook endpoints. Creating a subscription beyond the count for the current plan returns endpoint_limit.
Should I retry a request that returned endpoint_limit?
Not unchanged. Retrying cannot help until an endpoint is deleted or the plan is upgraded in the console, and the same request will return the same 409 until then.
Keys, plans and usage live in the console: rotate keys, add webhook endpoints, see the last 30 days.
Written from the OneLifeVibe tool registry and platform configuration, and checked automatically before publishing. Something wrong? Tell us.