examples · errors · 14 / 19
14. 409 - addon already enabled
← Errors exampleswhat this error means
The request tried to enable an addon that is already enabled for this tenant. The endpoint is intentionally not idempotent - it returns 409 so the caller knows the state didn't change.
what triggers it
Re-enabling an addon that's already on.
POST /v1/tenants/:t/addons
curl -X POST "https://$OC_HOST/v1/tenants/$OC_TENANT/addons" \
-H "Authorization: Bearer $OC_TOKEN" \
-H "Content-Type: application/json" \
-d '{"addon": "ask"}' the canonical response body
{
"error": "addon_already_enabled",
"message": "addon 'ask' is already enabled for this tenant",
"retry": false
} how to recover
- Check the current state first:
GET /v1/tenants/:t/addonsreturns the list of enabled addons. - If your script is meant to be idempotent, treat this 409 as a no-op success.
- If you wanted a different addon, fix the body and retry with the right code.
retry: false- the state is already what you wanted.
common upstream causes
- Provisioning script run twice in CI.
- Dashboard click that re-fired through a stale tab.
- Migration that enabled the addon manually, then a Terraform run that tried to enable it again.
- Two team members enabling the same addon from different sessions.