Resend an invitation

Re-dispatches the email or SMS for an invitation that was previously sent. Use this when the recipient never received the original (filtered, deleted, or wrong inbox) and asks for a copy.

What resend does. Flips the invitation status from sent back to pending, clears sentAt, and enqueues a fresh delivery via the same job pipeline that handled the original send. Status will move pendingsent again as soon as the channel provider accepts the message. If the linked dossier already exists (recipient had partially started before), the link is preserved — only the delivery layer is re-fired.

Eligibility. Only invitations in sent status can be resent. Other statuses are rejected:

  • pending: original delivery is still in flight; wait for it to settle.
  • delivered, opened, started, completed, rejected: the recipient has already engaged; resending would create confusion.
  • failed: handled by the delivery job's automatic retry — see invitation lifecycle.

Expiration. Expired invitations cannot be resent. Create a new invitation instead.

Per-invitation limits.

  • Maximum 10 send attempts per invitation (initial send + each successful resend). Once deliveryAttempts reaches 10, this endpoint returns 422 max_attempts_reached. Create a new invitation to continue contacting the recipient.
  • 3-minute cooldown between sends. Resending within 3 minutes of sentAt returns 429 cooldown_active with a remaining_seconds hint in the error message.

Billing. Resends are billed at the same rate as the original send (send.email for email, send.sms for SMS). Test private keys (the test counterpart of a live key) are not billed.

Authentication. Both JwtAuth and PrivateKey are accepted. Per-IP throttle: 30 requests per minute. Per-organization throttle: 20 resends per minute (separate bucket from invitation creation).

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Path Params
string
required

Invitation token (adi_xxx).

Responses

Language
Credentials
Header
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json