Docs
Esc

Suggested

QuickstartGet started
Webhooks and signaturesMessaging
Create a messagemessages.create · POST /v1/accounts/{AC}/messages
RATE_LIMITED429 · Rate limit exceeded.
message.deliveredMessage resource
Contents

API reference

Privacy

API reference descriptions are provided in English to preserve the exact published contract.

List standing and released legal holds

GET/v1/accounts/{AC}/legal-holds

legalHolds.listSDK operation getV1AccountsByAcLegalHolds

Parameters

  • limitinteger (1–100)query
  • cursorstring (max 2048 chars)query

Place a legal hold

POST/v1/accounts/{AC}/legal-holds

legalHolds.createSDK operation postV1AccountsByAcLegalHolds

The account's own compliance role (legal_holds:manage: OWNER, ADMIN, COMPLIANCE_MANAGER) places a hold on the account, a contact, a conversation, a campaign or a date range. While it stands, retention skips the data in scope and erasure requests that touch it are parked. Toutye staff holds need an approvalSid.

Request body

  • caseRefstring (max 128 chars)Required
  • scopeobjectRequired
  • approvalSidstring (AP… SID)
  • customerVisibleboolean

Release a legal hold

POST/v1/accounts/{AC}/legal-holds/{holdId}/release

legalHolds.releaseSDK operation postV1AccountsByAcLegalHoldsByHoldidRelease

Releasing lets retention and parked erasures remove the data again. The account's compliance role releases only holds it placed, with a step-up token for LEGAL_HOLD_RELEASE; a hold Toutye placed is released only by Toutye compliance.

Parameters

  • holdIdstring (uuid)Required

Request body

  • caseRefstring (max 128 chars)Required
  • stepUpTokenstring (max 256 chars)

List privacy requests

GET/v1/accounts/{AC}/privacy/requests

privacy.requests.listSDK operation getV1AccountsByAcPrivacyRequests

Parameters

  • limitinteger (1–100)query
  • cursorstring (max 2048 chars)query

Create a data-subject privacy request

POST/v1/accounts/{AC}/privacy/requests

privacy.requests.createSDK operation postV1AccountsByAcPrivacyRequests

Request body

  • kindenumRequired

    ERASUREACCESSPORTABILITYRECTIFICATIONRESTRICTION

  • reasonstring (max 2000 chars)Required
  • stepUpTokenstring (max 256 chars)Required
  • subjectobjectRequired
  • changesobject
    Show 4 child attributes
    • attributesobject
    • displayNamenull | string (max 128 chars)
    • localenull | string (max 16 chars)
    • timezonenull | string (max 64 chars)

Get a privacy request

GET/v1/accounts/{AC}/privacy/requests/{DR}

privacy.requests.retrieveSDK operation getV1AccountsByAcPrivacyRequestsByDr

Parameters

  • DRstring (DR… SID)Required

Lift the processing restriction a RESTRICTION request placed

POST/v1/accounts/{AC}/privacy/requests/{DR}/lift-restriction

privacy.requests.liftRestrictionSDK operation postV1AccountsByAcPrivacyRequestsByDrLiftRestriction

Parameters

  • DRstring (DR… SID)Required

Request body

  • reasonstring (max 2000 chars)Required
  • stepUpTokenstring (max 256 chars)Required

Get the account retention policy

GET/v1/accounts/{AC}/privacy/retention-policy

privacy.retentionPolicy.listSDK operation getV1AccountsByAcPrivacyRetentionPolicy

A null window means the data is kept until the customer deletes it, which is the default for an account that never set a policy.

Set the account retention policy

PUT/v1/accounts/{AC}/privacy/retention-policy

privacy.retentionPolicy.updateSDK operation putV1AccountsByAcPrivacyRetentionPolicy

Content is kept 30 to 3650 days and message records 1 to 120 months; null keeps them until deleted. A change that shortens either window removes data and needs a step-up token for RETENTION_POLICY_CHANGE; the response says what the retention job will remove on its next run.

Request body

  • messageContentDaysinteger (30–3650) | nullRequired
  • messageMetadataMonthsinteger (1–120) | nullRequired
  • analyticsMonthsinteger (1–36)
  • stepUpTokenstring (max 256 chars)

Preview what a retention policy would remove now

GET/v1/accounts/{AC}/privacy/retention-policy/preview

privacy.retentionPolicy.preview.listSDK operation getV1AccountsByAcPrivacyRetentionPolicyPreview

A dry run with the retention job's own windows and legal-hold rules. Nothing is changed. Omit a window to preview keeping that data until deleted.

Parameters

  • messageContentDaysinteger (30–3650)query
  • messageMetadataMonthsinteger (1–120)query