# (NEW!) Delete Security Role Permanently delete a security role the authenticated customer owns. There is no force-delete override. Delete Rules: - Role must exist for the authenticated customer. - Deletion is blocked when either at least one user is currently assigned the role, or at least one preset (upload or filter) still references it in its role_ids. Both conditions are checked and reported together — the response names every blocker at once, not just the first one found. - The role is not silently unassigned from users or stripped out of presets to allow the delete — the caller must resolve the blockers first. This action is permanent and cannot be undone. The user submitting the request must have the Role Management privilege. Endpoint: DELETE /security/roles/{id} Version: 1.5 Security: ApiKeyAuth, BasicAuth ## Header parameters: - `X-API-Key` (string, required) Customer-specific API key required to invoke API. - `Authorization` (string, required) Provided by Authentication Token creation operation. ## Path parameters: - `id` (string, required) The unique ID of the role to delete. Example: "6c15af83-d4a9-4772-875a-1c8a2bb1688f" ## Response 401 fields (application/json): - `status` (string) Example: "error" - `message` (string) ## Response 403 fields (application/json): - `status` (string) Example: "error" - `message` (string) ## Response 404 fields (application/json): - `status` (string) Example: "error" - `message` (string) ## Response 409 fields (application/json): - `status` (string) Example: "error" - `message` (string) - `code` (string) Enum: "ROLE_IN_USE" - `details` (object) - `details.userCount` (integer) Number of users currently assigned this role. - `details.presets` (array) Upload or filter presets still referencing this role. - `details.presets.id` (string) - `details.presets.name` (string) - `details.presets.type` (string) Enum: "upload", "filter" ## Response 204 fields