Create one or more staged items in a CMS Collection.
Send an `items` array with `fieldData` for each item. By default, new items are created in the primary locale. To choose other locales or add variants to an existing item, expand the options below.
- **Publishing:** Set `isDraft: false` to queue an item for the next site publish. Items are created as drafts (`isDraft: true`) by default. To publish individual items, use [Publish Collection Item(s)](/data/reference/cms/collection-items/staged-items/publish-item).
- **Request limit:** Up to 100 items, counting every locale variant across all entries. One item in three locales counts as three; an item in the primary locale only counts as one.
Required scope | `cms:write`
<div className="create-items-options">
<Accordion title="Create items in multiple locales">
Each new item gets one ID. Its locale variants share that ID and the same `fieldData`.
- **Selected locales:** Set `cmsLocaleIds` to the locale IDs you want to create the item in.
- **All site locales:** Set `allCmsLocales: true` to include every current site locale, including the primary locale, without listing IDs.
- **Primary locale only:** Omit both `cmsLocaleIds` and `allCmsLocales`.
Use only one locale selector per entry. `allCmsLocales` is available only for new items and accepts only `true`; omit it instead of sending `false`.
</Accordion>
<Accordion title="Add locale variants to an existing item">
Set `id` to an existing item's ID and provide the new locales in `cmsLocaleIds`. The variants reuse that ID. The item must exist and must not already have a variant in any requested locale.
Send the source content in `fieldData` as a starting point for translators. To provide different content per locale, send multiple entries with the same `id`, each with one locale in `cmsLocaleIds` and its own `fieldData`.
</Accordion>
<Accordion title="Validation and errors">
These requests return a `400`:
- Combining `allCmsLocales` with `cmsLocaleIds` (even an empty array) or `id`.
- Setting `allCmsLocales` to `false`, a string, or `null`.
- Sending unrecognized properties, including singular `cmsLocaleId`. Use `cmsLocaleIds` (plural).
- Repeating a locale within one entry, or the same `id`/locale pair across entries.
Check the response's `message` and `details` for validation errors. Some errors identify an entry, such as `items[2].cmsLocaleIds`. Invalid locale selector combinations return a message with an empty `details` array.
</Accordion>
</div>
Moving from `POST /items` or `POST /items/bulk`? See [Creating collection items](/data/docs/working-with-the-cms/create-items) for request mappings.
Rich Text fields can include Webflow components. See [Components in Rich Text](/data/docs/working-with-the-cms/components-in-rich-text) for markup and constraints.
Request
The items to create, and the locales to create them in
itemslist of objectsRequired
The items to create. A request can create up to 100 items, counted as the sum of the locales across every entry. An allCmsLocales: true entry counts once per current site locale; a new-item entry with neither locale selector counts as one.