---
title: "Bulk manage email-only users"
method: POST
path: "/v1/users/email-only/bulk"
tags: ["Schedule recipients"]
---

# Bulk manage email-only users

`POST /v1/users/email-only/bulk`

Create or update up to 20 [email-only users](/share/deliveries/email). An email-only user is a recipient of a delivery that isn't associated with an Omni account.

If Omni matches a provided email to an existing email-only user, the user will be updated according to the `userAttributes` in the request body.

## Request body

- object
  - `users` object[], required — An array of user objects, which includes `email` and `userAttributes` properties. Up to 20 users can be included in each request.
    - `email` string, email, required — The user's email address.
    - `userAttributes` object — An object defining the user's [user attributes](/administration/users/attributes). Attributes are represented as key/value pairs, where the keys map to the IDs of user attributes (the **Reference** column in the **User attributes** page) defined in Omni. When providing user attributes, note that: - `omni_user_timezone` is the only supported system attribute - **Values must match the user attribute's specified type**. For example, `number` attribute values must be numbers such as `1`, `10`, etc. - **Multi-value attributes should be provided using arrays**. For example: `["US","EU"]` or `[1, 10]` To unset attributes: - `null` values - `""` - Empty strings for string attributes - `[]` - Empty arrays for multi-value attributes

## Response `200`

Email-only users created or updated successfully.

- object
  - `results` object[] — An array of created or updated email-only users.
    - `email` string, email — The email address of the created or updated user.
    - `userId` string, uuid — The unique identifier of the email-only user.

## Other responses

- `400` — Bad Request. Possible error messages include: - `Invalid JSON` - `users: Maximum of 20 users can be processed in a single request` - `users: users is required` - `email: email is required` - `email: Invalid email address` - `The provided user attributes: "<attribute>" do not match the names of existing user attributes.` - `User Attribute <attribute> is type number, but passed-in value <value> is not a number.` - `The timezone <invalidTimezone> is not supported. Please see the connection page or [user profile page](/administration/users/your-account) for the list of valid timezones. Use e.g. "America/New_York" instead of "EST"` - `User Attribute <attribute> has multiple values enabled, but the passed-in value is not an array. If passing a single value for a user attribute with multiple values enabled, please wrap the value in an array [x].`
- `405` — Method Not Allowed - Invalid HTTP method for this endpoint
- `429` — Too Many Requests - Rate limit exceeded (60 requests/minute)

---

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