cloudflare / cloudflare/developer-platform
Wrangler cannot clear Cron Triggers when account is above free-plan limit (10072)
- Dominant language
- No language data
- Stars
- 1
- Forks
- 0
- PR merge metrics
- No merged PRs in 30d
Description
### What happened?
An account has 8 existing Cron Triggers that predate/enforce beyond the current Free-plan limit of 5. I need to reduce the account to 2 triggers. Deploying a Worker with `crons = []` fails with error 10072 instead of removing that Worker's existing schedules. The direct API equivalent also fails:
```http
PUT /accounts//workers/scripts//schedules
Content-Type: application/json
[]
```
Response:
```text
10072: This account has reached the Workers Free limit of 5 cron triggers per account.
```
Because every schedule update is rejected while the account is above the limit, there is no non-destructive way to get back under the limit. Omitting `triggers` leaves schedules unchanged, and the API exposes no individual schedule-delete operation.
### Reproduction
1. Have an account with more than 5 existing triggers (for example, grandfathered schedules).
2. Configure one Worker with:
```toml
[triggers]
crons = []
```
3. Run `wrangler deploy`.
4. The Worker code uploads, but updating `/schedules` fails with 10072.
### Expected behavior
A schedule update that reduces the account-wide trigger count, especially `[]`, should be allowed even when the current count is above the plan limit. Capacity enforcement should reject only net additions.
### Wrangler versions
Observed with Wrangler 4.56.0 and 4.69.0 on Node 22 / macOS. The same failure occurs via the REST API, so this appears to be an API-side limit check rather than Wrangler-only behavior.
### Workaround impact
The only apparent workaround is deleting whole Worker scripts, which also destroys script-scoped secrets and creates avoidable downtime. The Cloudflare documentation says `crons = []` is the supported way to remove all triggers.
Contributor guide
Assessment
This issue has not been assessed yet.