Rate Limits

The Salesforce Commerce API has rate limits in place for the number of requests allowed per unit of time. When the number of requests received reaches the rate limit, the API returns an HTTP 429 response.

Each API family has defined settings for different endpoints to ensure a consistent quality of service and improve platform stability. Customers can rely on a defined service availability and a consistent quality across APIs.

Rate limits apply to most B2C Commerce implementations. However, the limits can be adjusted based on specific customer scenarios or use cases. In addition, there can be additional factors that can contribute to the expected performance of API responses. Therefore, the rates listed here are not guarantees. For further details, please refer to Governance and Quotas in our Commerce Cloud B2C documentation.

Contact your Customer Success Manager or Account Executive for questions around rate limits, use cases, and potential adjustments required for these rates.

In the tables below you can see the rate limits for different API families. The limit column shows the maximum number of requests per minute (RPM) allowed for specific endpoints.

Orders

https://{shortCode}.api.commercecloud.salesforce.com + /checkout/orders/v1/organizations/{organizationId} +

MethodEndpointLimit
All/orders/*1,000 RPM

Shopper Baskets

https://{shortCode}.api.commercecloud.salesforce.com + /checkout/shopper-baskets/v1/organizations/{organizationId} +

MethodEndpointLimit
POST/baskets/*10,000 RPM
AllAll other /checkout/shopper-baskets/ endpoints60,000 RPM

Shopper Orders

https://{shortCode}.api.commercecloud.salesforce.com + /checkout/shopper-orders/v1/organizations/{organizationId} +

MethodEndpointLimit
AllAll /checkout/shopper-orders/ endpoints1,000 RPM

Products

https://{shortCode}.api.commercecloud.salesforce.com + /product/products/v1/organizations/{organizationId} +

MethodEndpointLimit
GET/products/{productId}2,400 RPM
PUT/products/{productId}200 RPM
DELETE/products/{productId}200 RPM
PATCH/products/{productId}600 RPM
POST/products/{productId}/variant-search2,200 RPM
GET/products/{mainProductId}/variation-groups800 RPM
GET/products/{productId}/variation-attributes400 RPM
POST/product-search1,000 RPM
AllAll other /product/products endpoints100 RPM

Shopper Products

https://{shortCode}.api.commercecloud.salesforce.com + /product/shopper-products/v1/organizations/{organizationId} +

MethodEndpointLimit
All/products121,200 RPM
All/categories10,700 RPM

Catalogs

https://{shortCode}.api.commercecloud.salesforce.com + /product/catalogs/v1/organizations/{organizationId} +

MethodEndpointLimit
GET/catalogs/{catalogId}/categories1,200 RPM
POST/catalogs/{catalogId}/categories/{categoryId}/category-product-assignment-search2,200 RPM
POST/catalog-search100 RPM
POST/category-search100 RPM
AllAll other /product/catalogs/ endpoints100 RPM

Customers

https://{shortCode}.api.commercecloud.salesforce.com + /customer/customers/v1/organizations/{organizationId} +

MethodEndpointLimit
POST/customer-lists/*/customers100 RPM
POST/customer-lists/*/customer-search3,800 RPM
GET/customer-lists/*/customers/*6,500 RPM
DELETE/customer-lists/*/customers/*300 RPM
PATCH/customer-lists/*/customers/*1100 RPM
GET/customer-lists/*/customers/*/addresses6,300 RPM
PATCH/customer-lists/*/customers/*/addresses/*600 RPM
AllAll other /customer/customers/ endpoints100 RPM

Shopper Customers

https://{shortCode}.api.commercecloud.salesforce.com + /customer/shopper-customers/v1/organizations/{organizationId} +

MethodEndpointLimit
POST/customers/actions/login66,100 RPM
POST/customers/trusted-system/actions/login66,100 RPM
GET/customers/*7,200 RPM
PATCH/customers/*500 RPM
POST/customers/*400 RPM
POST/customers/*/addresses/*200 RPM
GET/customers/*/baskets17,200 RPM
GET/customers/*/orders2,900 RPM
GET/customers/*/product-lists420 RPM
GET/customers/*/product-lists/*1,400 RPM
POST/customers/*/product-lists/*/items900 RPM
DELETE/customers/*/product-lists/*/items/*8,700 RPM
GET/product-lists200 RPM
GET/product-lists/* 600 RPM
AllAll other /customer/shopper-customers/ endpoints100 RPM

Promotions

https://{shortCode}.api.commercecloud.salesforce.com + /pricing/promotions/v1/organizations/{organizationId} +

MethodEndpointLimit
POST/promotions9,600 RPM
DELETE/promotions/{id}240 RPM
GET/promotions/{id}9,600 RPM
PATCH/promotions/{id}240 RPM
PUT/promotions/{id}240 RPM

Shopper Promotions

https://{shortCode}.api.commercecloud.salesforce.com + /pricing/shopper-promotions/v1/organizations/{organizationId} +

MethodEndpointLimit
All/promotions9,600 RPM
All/promotions/campaigns/{campaignId}9,600 RPM

Inventory Availability

https://{shortCode}.api.commercecloud.salesforce.com + /inventory/availability/v1/organizations/{organizationId} +

MethodEndpointLimit
All/availability-records/actions/get-availability60,000 RPM
All/availability-records/actions/get-deltas3,000 RPM
All/availability-records/actions/batch-update600 RPM
All/locations/{locationId}/availability-records/skus/{sku}/{requestId}600 RPM

Inventory Impex

https://{shortCode}.api.commercecloud.salesforce.com + /inventory/impex/v1/organizations/{organizationId} +

MethodEndpointLimit
All/availability-records/exports2 RPM
All/availability-records/exports/{exportId}/status120 RPM
All/availability-records/exports/{exportId}/file-content2 RPM
All/availability-records/exports/{exportId}2 RPM
All/availability-records/imports/uploadlink/{uploadLinkId}2 RPM
All/availability-records/imports2 RPM
All/availability-records/imports/{importId}/status120 RPM
All/availability-records/imports/{importId}2 RPM
All/availability-records/exports2 RPM
All/availability-records/exports/{exportId}/status120 RPM
All/availability-records/exports/{exportId}/file-content2 RPM
All/availability-records/exports/{exportId}2 RPM

Inventory Reservation

https://{shortCode}.api.commercecloud.salesforce.com + /inventory/reservation/v1/organizations/{organizationId} +

MethodEndpointLimit
All/reservation-documents/{reservationId}60,000 RPM
All/transfers60,000 RPM
All/releases60,000 RPM
All/fulfillments60,000 RPM

Shopper Login (SLAS)

https://{shortCode}.api.commercecloud.salesforce.com + /shopper/auth/v1/organizations/{organizationId} +

MethodEndpointLimit
All/oauth2/token?grant_type=client_credentials180,000 RPM
All/oauth2/token?grant_type=authorization_code60,000 RPM
All/oauth2/token?grant_type=authorization_code_pkce60,000 RPM
All/oauth2/token?grant_type=refresh_token240,000 RPM
All/oauth2/login60,000 RPM
All/oauth2/authorize60,000 RPM