---
title: "Create multiple invitations"
method: POST
path: "/invitations/bulk"
tags: ["Invitations"]
---

# Create multiple invitations

`POST /invitations/bulk`

Use this API operation to create multiple invitations for the provided email addresses. You can choose to send the
invitations as emails by setting the `notify` parameter to `true`. There cannot be an existing invitation for any
of the email addresses you provide unless you set `ignore_existing` to `true` for specific email addresses. Please
note that there must be no existing user for any of the email addresses you provide, and this rule cannot be bypassed.

This endpoint is limited to a maximum of 10 invitations per API call. If you need to send more invitations, please make multiple requests.

## Request body

- object[]
  - `email_address` string, required — The email address the invitation will be sent to
  - `public_metadata` object, nullable — Metadata that will be attached to the newly created invitation. The value of this property should be a well-formed JSON object. Once the user accepts the invitation and signs up, these metadata will end up in the user's public metadata.
  - `redirect_url` string, nullable — The URL where the user is redirected upon visiting the invitation link, where they can accept the invitation. Required if you have implemented a [custom flow for handling application invitations](/docs/custom-flows/invitations).
  - `notify` boolean, nullable — Optional flag which denotes whether an email invitation should be sent to the given email address. Defaults to true.
  - `ignore_existing` boolean, nullable — Whether an invitation should be created if there is already an existing invitation for this email address, or it's claimed by another user.
  - `expires_in_days` integer, nullable — The number of days the invitation will be valid for. By default, the invitation expires after 30 days.
  - `template_slug` 'invitation' | 'waitlist_invitation' — The slug of the email template to use for the invitation email.

## Response `200`

List of invitations

- Invitation[]
  - `object` 'invitation', required
  - `id` string, required
  - `email_address` string, email, required
  - `public_metadata` object, required
  - `revoked` boolean
  - `status` 'pending' | 'accepted' | 'revoked' | 'expired', required
  - `url` string
  - `expires_at` integer, nullable — Unix timestamp of expiration.
  - `created_at` integer, required — Unix timestamp of creation.
  - `updated_at` integer, required — Unix timestamp of last update.

## Other responses

- `400` — Request was not successful
- `422` — Invalid request parameters

---

[API](https://skmtc.net/clerk/apis/clerk-backend-api.md) · [All operations](https://skmtc.net/clerk/apis/clerk-backend-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/clerk/clerk-backend-api/revisions/75df3a43fcb2/schema)
