Cancel a Document Collection request

Preview
posthttps://api.expiryedge.com/v2/collection-requests/{id}/cancel
editor or admin60/minIdempotency-Key
Request
curl -X POST 'https://api.expiryedge.com/v2/collection-requests/can_123/cancel' \
  -H "Authorization: Bearer $EXPIRYEDGE_API_KEY" \
  -H "Idempotency-Key: $(uuidgen)"
Response
{
  "id": "req_3Hs8",
  "organization_id": "org_northwind",
  "name": "W-9 for 2026",
  "template_id": "tpl_W9x2",
  "template_name": "W-9",
  "contact_id": "c_8Hk2pQ",
  "contact_name": "Priya Shah",
  "contact_email": "priya.shah@northwinddental.example",
  "expiry_id": "exp_4Tq9sLm2",
  "status": "pending",
  "has_password": false,
  "archived": false,
  "paused": false,
  "sent_at": "2026-09-27T14:30:00.000Z",
  "resend_count": 0,
  "created_at": "2026-09-27T14:30:00.000Z",
  "updated_at": "2026-09-27T14:30:00.000Z"
}

The link stops working and pending reminders stop. A completed request is 409 INVALID_STATE.

Path parameters

  • idstringrequired

Headers

  • Idempotency-Keystring
    Optional client-generated key (1-255 characters of letters, digits, - _ : .).
    pattern: ^[A-Za-z0-9_\-:.]{1,255}$

Returns

200
The cancelled request.
  • idstring
  • organization_idstring
  • namestring | null
  • template_idstring
  • template_namestring
  • contact_idstring
  • contact_namestring
  • contact_emailstring
  • expiry_idstring | null
  • group_idstring | null
  • statusstring
    Allowedpendingviewedcompletedcancelledexpired
  • has_passwordboolean
  • archivedboolean
  • pausedboolean
  • expires_atstring | null
  • due_datestring | null
  • sent_atstring
  • viewed_atstring | null
  • completed_atstring | null
  • cancelled_atstring | null
  • resend_countinteger
  • latest_review_statusstring | null
  • created_bystring
  • created_atstring
    UTC timestamp, ISO 8601. Every v1 response uses this form, never a raw Firestore Timestamp ({_seconds, _nanoseconds}).
    format: date-time
  • updated_atstring
    UTC timestamp, ISO 8601. Every v1 response uses this form, never a raw Firestore Timestamp ({_seconds, _nanoseconds}).
    format: date-time

Errors

401
Missing, invalid or expired token (UNAUTHORIZED).
403
Your role can't do this, or your account has no organization (FORBIDDEN).
404
No such record in your organization (records in other organizations are also 404).
405
Wrong HTTP method for this path; the Allow header lists the valid ones.
409
State or uniqueness conflict: EMAIL_EXISTS (contacts), GROUP_EXISTS (contact groups), CONFLICT (folder name taken), FOLDER_NOT_EMPTY, CLIENT_HAS_PROJECTS, TOO_MANY_ATTACHMENTS, INVALID_STATE (collection request cancel/resend), or IDEMPOTENCY_IN_PROGRESS (same Idempotency-Key still running; see Retry-After).
422
The Idempotency-Key was already used with a different body (IDEMPOTENCY_KEY_REUSED).
429
Too many requests for this endpoint from your IP. Wait Retry-After seconds.