Skip to content
Docs
Operation

Resend Invitation

POST/users/invitations/{id}/resend
Send another copy of an invitation email. If someone didn't get the original email (spam folder, typo, etc.), this sends a fresh email with the same invitation code. The invitation expiry date stays the same-it doesn't reset when you resend.

When to use this

  • Helping someone who lost or deleted the original email
  • Following up with people who haven't responded
  • Checking if the email address is correct

Path parameters

idstringRequired

Headers

Idempotency-KeystringOptional
Makes the write safe to retry. The first request with a key does the work and its response is stored for 24 hours; a repeat with the same key and the same request (method, path, query, X-Ticketlayer-Channel, TL-Version and body) gets that stored status and body back, marked `Idempotent-Replay: true`, without running again. The key is scoped to your organisation and your credential. The same key with a different request is 422 IDEMPOTENCY_KEY_REUSED; a repeat while the first is still running waits for it, then answers 409 IDEMPOTENT_REQUEST_IN_PROGRESS if it has not finished. Only a 2xx is stored: after an error the key is free again. Omit the header and the request behaves as it always has.

Returns

Invitation resent successfully

Errors

400
Bad Request - Invalid input
401
Unauthorized - Authentication required
403
Forbidden - Insufficient permissions
404
Not Found - Resource not found
500
Internal Server Error

Every error names its code and links to it. All error codes

Notes

Note
The invitation code and expiry date stay the same. Only the email is resent.
Tip
If the invitation has expired, you'll need to cancel it and create a new one.

Related

import { BackstageClient } from '@ticketlayer/backstage';const client = new BackstageClient({  organisationSlug: 'your-org',});client.setAccessToken('YOUR_ACCESS_TOKEN');// Resend User Invitationconst result = await client.userinvitation.resendUserInvitation('{{ID}}');console.log('Operation completed:', result);
Response 200
{
  "invitation": {
    "id": "inv_abc123",
    "organisationId": "org_xyz789",
    "userId": "usr_pending123",
    "code": "inv_BvQ8mK...",
    "email": "newuser@example.com",
    "expiresAt": "2024-01-08T00:00:00.000Z",
    "redeemedAt": null,
    "createdAt": "2024-01-01T00:00:00.000Z"
  }
}

Try it in test mode

Path parameters