Skip to content

Get a deletion certificate

Platform module

GET/deletion-certificates/{id}deletionCertificates.get

The record of an org whose data was deleted (1351, Section 14.7), kept after the org is gone. Read only by the former Owner it was issued to. The PDF itself is downloaded from Atlas. Returns one deletion certificate with its `ETag`. A deletion certificate the caller may not see returns 404.

  • Requires the capability org.settings.read.
  • OAuth scopes: org.
  • Error statuses: 400, 401, 404, 429. Errors are RFC 9457 problem details.

Path and query parameters

deletionCertificates.get: Path and query parameters
FieldTypeRequiredDescription
idstring (uuid)YesIdentifier of the deletion certificate.
fieldsFieldsNoSparse fieldset: a comma-separated list of top-level fields to return. `id` is always returned.Constraints: pattern ^[a-z_][a-z0-9_]*(,[a-z_][a-z0-9_]*)*$

Response 200: DeletionCertificate

deletionCertificates.get: DeletionCertificate
FieldTypeRequiredDescription
idstring (uuid)YesIdentifier of the deletion certificate.
created_atstring (date-time)YesWhen the row was created.
updated_atstring (date-time)YesWhen the row was last updated.
deleted_org_idstring (uuid)YesId the deleted org had.
org_namestringYesName of the org when it was deleted.Constraints: length 1 to 300
org_slugstringYesWeb address of the org when it was deleted.Constraints: length 1 to 100
basis"cancellation" | "deletion_request"YesDay 90 of a cancellation, or the end of a deletion request's recovery window.
requested_atstring (date-time)YesWhen the Owner canceled or asked for deletion.
due_atstring (date-time)YesWhen the data became due for deletion.
purged_atstring (date-time) | nullYesWhen every row of the org was deleted.
tables_purgedinteger | nullYesTables rows were deleted from.Constraints: range 0 to any
rows_purgedinteger | nullYesRows deleted.Constraints: range 0 to any
storage_objects_deletedintegerYesStored files deleted.Constraints: range 0 to any
document_sha256string | nullYesSHA-256 of the certificate PDF.Constraints: length 1 to 64
issued_atstring (date-time) | nullYesWhen the certificate PDF was stored.
delivered_atstring (date-time) | nullYesWhen the certificate was emailed to the former Owner.
{
  "id": "0192f1e2-7c3a-7b4d-9e8f-1a2b3c4d5e6f",
  "created_at": "2026-10-08T14:30:00Z",
  "updated_at": "2026-10-08T14:30:00Z",
  "deleted_org_id": "0192f1e2-7c3a-7b4d-9e8f-1a2b3c4d5e6f",
  "org_name": "Harbor Lights Productions",
  "org_slug": "harbor-lights",
  "basis": "cancellation",
  "requested_at": "2026-10-08T14:30:00Z",
  "due_at": "2026-10-08T14:30:00Z",
  "purged_at": "2026-10-08T14:30:00Z",
  "tables_purged": 41,
  "rows_purged": 1820,
  "storage_objects_deleted": 12,
  "document_sha256": "9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08",
  "issued_at": "2026-10-08T14:30:00Z",
  "delivered_at": "2026-10-08T14:30:00Z"
}

Code samples

curl -X GET "$XOS_BASE_URL/deletion-certificates/0192f1e2-7c3a-7b4d-9e8f-1a2b3c4d5e6f" \
  -H "Authorization: Bearer $XOS_API_KEY"
const { data, etag } = await xos.deletionCertificates.get("0192f1e2-7c3a-7b4d-9e8f-1a2b3c4d5e6f");
response = xos.deletion_certificates.get("0192f1e2-7c3a-7b4d-9e8f-1a2b3c4d5e6f")
xos deletion-certificates get 0192f1e2-7c3a-7b4d-9e8f-1a2b3c4d5e6f