Skip to content
Start here

Delete a share recipient

resource_sharing.recipients.delete(strrecipient_id, RecipientDeleteParams**kwargs) -> RecipientDeleteResponse
DELETE/accounts/{account_id}/shares/{share_id}/recipients/{recipient_id}

Performs a soft delete: sets the recipient’s desired_association_status to disassociated, which signals the background reconciliation workflow (Temporal) to remove the shared resources from the recipient account. The recipient record remains in the database for audit purposes and is still returned by GET /accounts/{account_id}/shares/{share_id}/recipients with its updated status.

Resource access is not fully removed until the workflow completes and current_association_status transitions to disassociated. The recipient record itself is never physically deleted.

Security

API Email + API Key

The previous authorization scheme for interacting with the Cloudflare API, used in conjunction with a Global API key.

Example:X-Auth-Email: user@example.com

The previous authorization scheme for interacting with the Cloudflare API. When possible, use API tokens instead of Global API keys.

Example:X-Auth-Key: 144c9defac04969c7bfad8efaa8ea194
ParametersExpand Collapse
account_id: str

Account identifier.

maxLength32
share_id: str

Share identifier tag.

maxLength32
recipient_id: str

Share Recipient identifier tag.

maxLength32
ReturnsExpand Collapse
class RecipientDeleteResponse:

A recipient of a share. The association_status field tracks the lifecycle of the shared resources in the recipient account. All recipients are returned by the list endpoint regardless of status; filter client-side if only active recipients are needed.

id: str

Share Recipient identifier tag.

maxLength32
account_id: str

Account identifier.

maxLength32
association_status: Literal["associating", "associated", "disassociating", "disassociated"]

The current state of the recipient relative to the share. The desired_association_status (not exposed in the response) tracks the target state set by the API; the background reconciliation workflow drives current_association_status toward it.

  • associating — The recipient was recently added; the workflow is pushing shared resources into the recipient account.
  • associated — Shared resources have been successfully applied to the recipient account.
  • disassociating — The recipient was removed (via DELETE or PUT replacement); the workflow is removing shared resources from the recipient account.
  • disassociated — Shared resources have been removed from the recipient account. The recipient record remains in the database.
One of the following:
"associating"
"associated"
"disassociating"
"disassociated"
created: datetime

When the share was created.

formatdate-time
modified: datetime

When the share was modified.

formatdate-time
resources: Optional[List[Resource]]
error: str

Share Recipient error message.

resource_id: str

Share Resource identifier.

maxLength32
resource_version: int

Resource Version.

terminal: bool

Whether the error is terminal or will be continually retried.

Delete a share recipient

import os
from cloudflare import Cloudflare

client = Cloudflare(
    api_email=os.environ.get("CLOUDFLARE_EMAIL"),  # This is the default and can be omitted
    api_key=os.environ.get("CLOUDFLARE_API_KEY"),  # This is the default and can be omitted
)
recipient = client.resource_sharing.recipients.delete(
    recipient_id="3fd85f74b32742f1bff64a85009dda07",
    account_id="023e105f4ecef8ad9ca31a8372d0c353",
    share_id="3fd85f74b32742f1bff64a85009dda07",
)
print(recipient.id)
{
  "errors": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "success": true,
  "result": {
    "id": "3fd85f74b32742f1bff64a85009dda07",
    "account_id": "023e105f4ecef8ad9ca31a8372d0c353",
    "association_status": "associating",
    "created": "2023-09-21T18:56:32.624632Z",
    "modified": "2023-09-21T18:56:32.624632Z",
    "resources": [
      {
        "error": "Recipient is missing necessary entitlement",
        "resource_id": "023e105f4ecef8ad9ca31a8372d0c353",
        "resource_version": 0,
        "terminal": true
      }
    ]
  }
}
Returns Examples
{
  "errors": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "success": true,
  "result": {
    "id": "3fd85f74b32742f1bff64a85009dda07",
    "account_id": "023e105f4ecef8ad9ca31a8372d0c353",
    "association_status": "associating",
    "created": "2023-09-21T18:56:32.624632Z",
    "modified": "2023-09-21T18:56:32.624632Z",
    "resources": [
      {
        "error": "Recipient is missing necessary entitlement",
        "resource_id": "023e105f4ecef8ad9ca31a8372d0c353",
        "resource_version": 0,
        "terminal": true
      }
    ]
  }
}