---
title: "Revoke a pending organization invitation"
method: POST
path: "/organizations/{organization_id}/invitations/{invitation_id}/revoke"
tags: ["Organization Invitations"]
---

# Revoke a pending organization invitation

`POST /organizations/{organization_id}/invitations/{invitation_id}/revoke`

## Request

- Base URL: `https://api.clerk.com/v1`
- URL: `https://api.clerk.com/v1/organizations/{organization_id}/invitations/{invitation_id}/revoke`
- Auth: HTTP bearer

Use this request to revoke a previously issued organization invitation.
Revoking an organization invitation makes it invalid; the invited user will no longer be able to join the organization with the revoked invitation.
Only organization invitations with "pending" status can be revoked.
The request accepts the `requesting_user_id` parameter to specify the user which revokes the invitation.
Only users with "admin" role can revoke invitations.

## Path parameters

- `organization_id` string, required
- `invitation_id` string, required

## Request body

- object
  - `requesting_user_id` string, nullable: The ID of the user that revokes the invitation. Must be an administrator in the organization.

## Response `200`

An organization invitation

- OrganizationInvitation: An organization invitation
  - `object` 'organization_invitation', required: String representing the object's type. Objects of the same type share the same value.
  - `id` string, required
  - `email_address` string, required
  - `role` string, required
  - `role_name` string, required
  - `organization_id` string
  - `inviter_id` string, nullable, required
  - `public_inviter_data` OrganizationInvitationPublicUserData, nullable, required: An organization inviter's public user data
    - `user_id` string, required
    - `first_name` string, nullable, required
    - `last_name` string, nullable, required
    - `image_url` string, required
    - `has_image` boolean, required
    - `identifier` string, required
  - `status` string
  - `public_metadata` object, required
  - `private_metadata` object
  - `url` string, nullable, required
  - `expires_at` integer, nullable, required: Unix timestamp of expiration.
  - `created_at` integer, required: Unix timestamp of creation.
  - `updated_at` integer, required: Unix timestamp of last update.

## Other responses

- `400`: Request was not successful
- `403`: Authorization invalid
- `404`: Resource not found

## Changes

- **2025-12-03** (2025-11-10) `0ef92587cde0`: 1 info
  - added the required property `public_inviter_data` to the response with the `200` status
- **2025-11-11** (2025-11-10) `765c093d987e`: 1 info
  - added the required property `inviter_id` to the response with the `200` status

[Operation history](https://skmtc.dev/clerk/apis/clerk-backend-api/changes/organizations/:organization_id/invitations/:invitation_id/revoke/post.md)

---

[API](https://skmtc.dev/clerk/apis/clerk-backend-api.md) - [All operations](https://skmtc.dev/clerk/apis/clerk-backend-api/llms.txt) - [OpenAPI document](https://skmtc.dev/clerk/apis/clerk-backend-api/revisions/a490313abffa?raw)
