---
title: "Delete Package Config"
description: "Deletes a package config for an organization. Deletion is only allowed if no customers are currently assigned to that package. The package is resolved directly from the path parameter, so values like test1 work as long as they match the stored packageType."
---

`DELETE /api/package-configs/:packageType`

## Example (cURL)

```bash
BASE_URL="https://uptimeify.io"
TOKEN="<your-api-token>"

curl -X DELETE "$BASE_URL/api/package-configs/pro" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Accept: application/json"
```

Notes:

- The organization is derived automatically from your authenticated session or API token.
- The legacy route `DELETE /api/organizations/:organizationPublicId/package-configs/:packageType` remains supported for compatibility.
- The plural org-less alias `DELETE /api/organizations/package-configs/:packageType` is also supported.
- Global admins need an active organization context in the authenticated session for the org-less route.
- The in-use check evaluates each customer's package assignment, not the package name. Customers that merely carry the same `packageType` string without being assigned to this config do not block deletion.

## Response

```json
{ "success": true }
```

## Common errors

- `404 Package not found` when the config does not exist
- `409 Package is still in use by customers` when customers are assigned to this package
- `400 Package type is required` when `:packageType` is missing
- `400 Organization ID is required in the authenticated session` when no organization can be derived from the current session/token
- `401 Unauthorized` when you are not logged in
- `403 Forbidden` when you cannot access the organization

Authorization note:

- Write access is required (organization admin or global admin).

