Limits

To assure good performance for every project on the platform, the API imposes limits on certain parameters and objects.

Some limits can be increased per project on customer request. Most limits only apply to projects created after the introduction of the respective limit.

The current value of a project's limits can be accessed via the limits field on the GraphQL API. If the limit applies to the total amount of a resource type, the current usage can be accessed as well.

JSON document size

Every JSON document persisted through any API endpoint should not exceed 16 megabytes.
Any update action on existing resources that would make documents break that limit will not succeed.

Field content size

For performance reasons, the maximum size of a searchable field within an AttributeDefinition can not exceed 10 922 characters. Non searchable fields are only limited by the overall JSON document size.

Slugs

A Slug must match the pattern [a-zA-Z0-9_\-]{2,256}, hence they are limited to 256 characters.

Update actions per request

For performance reasons, the maximum number of update actions within a single request is limited to 500.

Queries

Within a query, up to 500 elements can be fetched.

When using pagination, the maximum offset is 10 000. The total field of PagedQueryResult is limited to the maximum offset when the results are filtered with a Query Predicate.

Search and facets

For performance reasons, the maximum size of a searchable field within an AttributeDefinition can not exceed 10 922 characters. The number of terms per facet is limited to 200.

Within a search request, up to 500 elements can be fetched. In pagination, the maximum offset is 10 000.

Search results are based on the first 256 characters of the full-text search query parameter only. Everything beyond 256 characters will be ignored You can continue to pass longer query parameters, the API call will still be successful.

This limit can be increased per project after we review the performance impact. Please contact Support via the Support Portal and provide the region, project key, and use case.

Categories

A maximum number of 10 000 Categories can be created.

You can increase this limit for your project if needed after we have reviewed the performance impact on your project. To request an increase, use the Support Portal.

Product Variants

A maximum number of 100 variants can be specified on a Product.

This limit can be increased per project after we review the performance impact. Please contact Support via the Support Portal and provide the region, project key, and use case.

Prices

A maximum number of 100 prices can be specified on a ProductVariant.

This limit can be increased per project after we review the performance impact. Please contact Support via the Support Portal and provide the region, project key, and use case.

Product Discounts

The maximum number of ProductDiscounts that can be active at the same time is 500.

Cart Discounts

The number of active CartDiscounts that do not require a discount code (isActive=true and requiresDiscountCode=false) is limited to 100.

This limit can be increased per project after we review the performance impact. Please contact Support via the Support Portal and provide the region, project key, and use case.

Carts

The maximum number of Carts that can be added to a project is 10 000 000. If your project contains more carts, the commercetools platform will automatically delete the ones that have been least recently modified.

This limit can be increased per project after we review the performance impact. Please contact Support via the Support Portal and provide the region, project key, and use case.

Shopping Lists

A ShoppingList can contain up to 100 line items and up to 100 text line items.

The maximum number of Shopping Lists that can be added to a project is 10 000 000. If your project contains more shopping lists, the commercetools platform will automatically delete the ones that have been least recently modified.

These limits can be increased per project after we review the performance impact. Please contact Support via the Support Portal and provide the region, project key, and use case.

Zones

The maximum number of Zones that can be added to a project is 100.

This limit can be increased per project after we review the performance impact. Please contact Support via the Support Portal and provide the region, the project key, and use case.

Tax Categories

The maximum number of Tax Categories that can be added to a project is 100.

This limit can be increased per project after we review the performance impact. Please contact Support via the Support Portal and provide the region, the project key, and use case.

Shipping Methods

The maximum number of Shipping Methods that can be added to a project is 100.

This limit can be increased per project after we review the performance impact. Please contact Support via the Support Portal and provide the region, the project key, and use case.

Customer Groups

The maximum number of Customer Groups that can be added to a project is 1 000.

This limit can be increased per project after we review the performance impact. Please contact Support via the Support Portal and provide the region, the project key, and use case.

Customers

The maximum number of Customers that can be added to a project is 10 000 000.

This limit can be increased per project after we review the performance impact. Please contact Support via the Support Portal and provide the region, the project key, and use case.

Order Edits

The maximum number of Order Edits that can be added to a project is 100 000.

This limit can be increased per project after we review the performance impact. Please contact Support via the Support Portal and provide the region, the project key, and use case.

Carts

The number of discount codes in a Cart is limited to 10.

Discount Codes

The number of cart discounts in a DiscountCode is limited to 10.

Stores

The number of Stores is limited to 50 000.

This limit can be increased per project after we review the performance impact. Please contact Support via the Support Portal and provide the region, project key, and use case.

Store's Inventory Supply Channels

The number of Inventory Supply Channels configured for a Store is limited to 100.

This limit can be increased per project after we review the performance impact. Please contact Support via the Support Portal and provide the region, project key, and use case.

Store's Product Distribution Channels

The number of Product Distribution Channels configured for a Store is limited to 100.

This limit can be increased per project after we review the performance impact. Please contact Support via the Support Portal and provide the region, project key, and use case.

Store's Product Selections BETA

During the public beta period the number of Product Selections configured for a Store is limited to 100.

Refresh tokens

The number of refresh tokens is limited to 10 million. If the limit is exceeded, the least recently used refresh tokens are deleted. Creating new refresh tokens continues to work.

This limit can be increased per project after we review the performance impact. Please contact Support via the Support Portal and provide the region, project key, and use case.

Custom Objects

A maximum of 20 000 000 Custom Objects can be created.

This limit can be increased per project after we review the performance impact. Please contact Support via the Support Portal and provide the region, project key, and use case.

Product Types

A maximum of 1 000 Product Types can be created.

This limit can be increased per project after we review the performance impact. Please contact Support via the Support Portal and provide the region, project key, and use case.

Extensions

A maximum of 25 Extensions can be created per project.

Subscriptions

A maximum of 50 Subscriptions can be created per project.

Audit Log Records

By default, a maximum of 100 000 Records are stored. By default, Records are stored for up to 1 year. Extension of these default limits is possible by contacting Support via the Support Portal. Such extension might be subject to a separate fee.

GraphQL

If a query has a complexity score greater than or equal to 20 000, it will not be executed, and a QueryComplexityLimitExceeded error code will be returned.

External OAuth 2.0 endpoint timeouts

If a project is using OAuth 2.0 access tokens issues by an external OAuth 2.0 introspection endpoint, the OAuth 2.0 service must respond to the commercetools platform in 500 ms, including network latency.

If the introspection endpoint does not respond within the time limit, or no connection could be established, a the commercetools platform returns a 504 Gateway Timeout HTTP status code and a ExternalOAuthFailed error code.

Import API Import Operations

An Import Operation is automatically deleted 48 hours after it is created.

Learn best practices with this limit.

Import API Import Requests

An Import Request may contain maximum of 20 resources to import.

Learn best practices with this limit.