---
title: "DELETE /organization/invitations/{invitation_id}"
method: DELETE
path: "/organization/invitations/{invitation_id}"
tags: ["Organizations"]
---

# DELETE /organization/invitations/{invitation_id}

`DELETE /organization/invitations/{invitation_id}`

## Request

- Base URL: `https://api.primitive.dev/v1`
- URL: `https://api.primitive.dev/v1/organization/invitations/{invitation_id}`
- Auth: HTTP bearer

Requires a current human organization owner or administrator. Machine credentials are refused. Invitations grant Member access only after verified acceptance through the existing sign-in or sign-up flow. Other organization memberships and project access are unchanged. Delivery accepted means submitted, not inbox delivery. Reuse request_id after an uncertain response.

## Path parameters

- `invitation_id` string, uuid, required

## Response `200`

Success

- object
  - `success` true, required
  - `data` ProjectsInviteOrganizationMemberResult, required
    - `id` string, uuid, required
    - `email` string, email, required
    - `status` 'preparing' | 'pending' | 'accepted' | 'expired' | 'revoked' | 'unknown' | 'failed', required
    - `delivery` 'accepted' | 'unknown' | 'rejected', required
    - `expires_at` string, nullable, required
    - `revoked_reason` 'inviter_departed' | 'inviter_lost_permission' | 'accepted_after_inviter_departed', nullable
    - `failure_reason` 'member_limit' | 'already_member' | 'already_invited' | 'invalid_address' | 'not_allowed' | 'refused'

## Other responses

- `400`: Invalid request parameters
- `401`: Invalid or missing API key
- `403`: Authenticated caller lacks permission for the operation
- `404`: Resource not found
- `409`: The request conflicts with the current state of the resource
- `429`: Rate limit exceeded. The `ratelimit-*` headers describe the limiter that rejected this request, with its own limit and window, not the API budget that successful responses report. A limiter that reports only a wait sends `Retry-After` alone.
- `502`: invitation_unconfirmed: the identity provider did not confirm the invitation's state. Nothing was changed locally that could send a second invitation; retry the same request to refresh it.

## Changes

> 32 revisions in range; 1 not diffed.

- **2026-11-03** `bce409c97acb`: 217 warning
  - added the new `access_mode_unavailable` enum value to the `error/code` response property for the response status `400`
  - added the new `access_mode_unavailable` enum value to the `error/code` response property for the response status `401`
  - added the new `access_mode_unavailable` enum value to the `error/code` response property for the response status `403`
  - added the new `access_mode_unavailable` enum value to the `error/code` response property for the response status `404`
  - …213 more
  - …this revision’s changelog is incomplete
- **2026-10-22** `6d96fd01fcbd`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/primitive/apis/primitive-api/changes/organization/invitations/:invitation_id/delete.md)

---

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