Disable an organization

POST /v1/organizations/{org_id}:disable · permission organizations:write

Disables an organization: members cannot sign in to it, while the record and memberships are kept. Disabling an already disabled organization changes nothing. An organization.disabled event is published.

Request

Field Type Required Description
org_id path yes Organization ID (org_…).
Idempotency-Key header no Optional. 16-64 characters [A-Za-z0-9_-]; repeating the same key with the same request returns the same response.

No request body.

Response

200 OK with the organization and its ETag.

{
  "id": "org_01j9xk3m7q8r2s4t6v8w0y2z4a",
  "name": "Acme Corp",
  "slug": "acme",
  "external_id": "crm-4821",
  "status": "disabled",
  "metadata": {
    "tier": "gold"
  },
  "brand_color": "#1F6FEB",
  "max_memberships": null,
  "default_zoneinfo": null,
  "created_via": "admin_api",
  "disabled_at": "2026-10-12T10:05:00.654321Z",
  "deletion_requested_at": null,
  "deletion_due_at": null,
  "created_at": "2026-10-12T09:30:00.123456Z",
  "updated_at": "2026-10-12T10:05:00.654321Z",
  "version": 2
}

Errors

HTTP code When
404 not_found No organization with this ID exists in this environment.
401 unauthenticated The credential is missing, invalid or revoked.
403 insufficient_permissions The credential lacks the required permission.
409 organization_pending_deletion The organization is waiting for self-service deletion; cancel the deletion first.
429 rate_limited The rate limit was exceeded; retry after the Retry-After period.
503 service_unavailable A dependency is temporarily unavailable; retry after the Retry-After period.

Example

curl -X POST "https://api.eu.keenauth.com/v1/organizations/org_01j9xk3m7q8r2s4t6v8w0y2z4a:disable" \
  -H "Authorization: Bearer $KEENAUTH_SECRET_KEY"