---
title: "Create an access revocation"
method: POST
path: "/api/v1/access_revocations"
tags: ["access_revocations"]
---

# Create an access revocation

`POST /api/v1/access_revocations`

Creates a revocation for the access identified by `access_state_id`. For a resource-scoped access state, produces one revocation against that resource.For an app-wide access state (no resource), produces the equivalent app-wide revocation.

## Headers

- `Idempotency-Key` string

## Request body

- CreateAccessRevocation — Request body for creating an access revocation from an access state
  - `access_state_id` string, uuid, required — Access state ID identifying the access to revoke
  - `reason` string, required — Reason for the revocation

## Response `201`

Access revocation created

- AccessRevocation — An access revocation
  - `application_id` string, uuid, required — Application ID
  - `grantee_user_id` string, uuid — User ID of the grantee
  - `id` string, uuid, required — Access revocation ID
  - `inserted_at` string, date-time — Creation timestamp
  - `permission_ids` string[], nullable — Permission IDs being revoked
  - `provisioning_type` 'application_admin' | 'automatic', nullable — Provisioning type
  - `reason` string, required — Revocation reason
  - `requestor_user_id` string, uuid — User ID of the requestor
  - `resource_id` string, uuid, nullable — Resource ID (null for app-wide revocations)
  - `status` 'processing_access' | 'rejected' | 'revoked', required — Current status of the revocation

## Other responses

- `400` — Bad request
- `401` — Unauthorized
- `403` — Forbidden
- `404` — Not found
- `422` — Validation error

---

[API](https://skmtc.dev/accessowl/apis/accessowl-api.md) · [All operations](https://skmtc.dev/accessowl/apis/accessowl-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/accessowl/accessowl-api/revisions/6f2cb0585bbe/schema)
