---
title: "Delete a permission scope"
method: DELETE
path: "/teams/{key}/members/{memberId}/permission-scopes/{id}"
tags: ["Permission Scopes"]
---

# Delete a permission scope

`DELETE /teams/{key}/members/{memberId}/permission-scopes/{id}`

Remove a permission scope. Team member will revert to lower-tier permissions for the affected resource.

## Path parameters

- `key` string, required
- `memberId` string, required
- `id` string, required — Unique identifier for the permission scope

## Response `200`

OK

- union — Permission scope for a team member. Can be PROMOTER-specific (applies to all events by that promoter) or VENUE-specific (applies to all events at that venue). Replaces lower-tier permissions using REPLACE semantics.
  - object — PROMOTER-specific permission scope. Applies to all events by the specified promoter.
    - `id` string, required — Unique identifier for the permission scope
    - `createdAt` string, date-time, required — Timestamp in ISO 8601 format when the scope was created
    - `updatedAt` string, date-time, required — Timestamp in ISO 8601 format when the scope was last updated
    - `teamMemberId` string, required — Team member this scope applies to
    - `teamId` string, required — Team the member belongs to
    - `userId` string, required — ID of the user this permission scope applies to
    - `permissions` string[], required — Scoped permissions. Can be empty array to remove all access. Replaces lower-tier permissions based on kind (VENUE overrides PROMOTER overrides BASE).
    - `roleIds` string[] — Optional role IDs applied at this scope. Role-derived permissions are merged with explicit scoped nodes.
    - `tenantId` string, required — Tenant identifier
    - `kind` 'PROMOTER', required — Scope type: PROMOTER-specific permissions
    - `promoterId` string, required — Promoter this scope applies to. Replaces base permissions for all events by this promoter.
  - object — VENUE-specific permission scope. Applies to all events at the specified venue.
    - `id` string, required — Unique identifier for the permission scope
    - `createdAt` string, date-time, required — Timestamp in ISO 8601 format when the scope was created
    - `updatedAt` string, date-time, required — Timestamp in ISO 8601 format when the scope was last updated
    - `teamMemberId` string, required — Team member this scope applies to
    - `teamId` string, required — Team the member belongs to
    - `userId` string, required — ID of the user this permission scope applies to
    - `permissions` string[], required — Scoped permissions. Can be empty array to remove all access. Replaces lower-tier permissions based on kind (VENUE overrides PROMOTER overrides BASE).
    - `roleIds` string[] — Optional role IDs applied at this scope. Role-derived permissions are merged with explicit scoped nodes.
    - `tenantId` string, required — Tenant identifier
    - `kind` 'VENUE', required — Scope type: VENUE-specific permissions
    - `venueId` string, required — Venue this scope applies to. Replaces base/promoter permissions for all events at this venue.

## Other responses

- `400` — 400
- `401` — 401
- `403` — 403
- `404` — 404
- `409` — 409
- `412` — 412
- `422` — 422
- `429` — 429
- `500` — 500
- `501` — 501
- `503` — 503

---

[API](https://skmtc.net/session/apis/session-services-api.md) · [All operations](https://skmtc.net/session/apis/session-services-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/session/session-services-api/versions/b7e11f398fe0/schema)
