POST /sites/{site_id}/products/{product_id}/skus
Create additional SKUs to manage every option and variant of your Product.
Creating SKUs through the API will set the product type to Advanced, which ensures all Product and SKU fields will be shown to users in the Designer.
Required scope | ecommerce:write
Servers
- https://api.webflow.com/v2
Path parameters
| Name | Type | Required | Description |
|---|---|---|---|
site_id |
String | Yes |
Unique identifier for a Site |
product_id |
String | Yes |
Unique identifier for a Product |
Request headers
| Name | Type | Required | Description |
|---|---|---|---|
Content-Type |
String | Yes |
The media type of the request body.
Default value: "application/json" |
Request body fields
| Name | Type | Required | Description |
|---|---|---|---|
publishStatus |
String | No |
Indicate whether your Product should be set as "staging" or "live" Valid values:
Default value: "staging" |
skus[] |
Array | Yes |
An array of the SKU data your are adding |
skus[].id |
String | No |
Unique identifier for the Product |
skus[].createdOn |
String | No |
The date the Product was created |
skus[].fieldData |
Object | No |
Standard and Custom fields for a SKU |
skus[].fieldData.price |
Object | Yes |
price of SKU |
skus[].fieldData.price.value |
Number | No |
Price of SKU |
skus[].fieldData.price.currency |
String | No |
Currency of Item (alternative representation) |
skus[].fieldData.price.unit |
String | No |
Currency of Item |
skus[].fieldData.ec-sku-billing-method |
String | No |
Billing methodfor the SKU Valid values:
|
skus[].fieldData.name |
String | Yes |
Name of the Product |
skus[].fieldData.sku |
String | No |
A unique identifier for the SKU |
skus[].fieldData.slug |
String | Yes |
URL structure of the Product in your site. |
skus[].fieldData.sku-values |
Object | No |
A mapping between SKU properties and their values, represented as key-value pairs. Each key represents a SKU Property ID (e.g. "color") and maps to its corresponding SKU Value ID (e.g. "blue"). This structure defines the specific variant combination for a SKU. |
skus[].fieldData.compare-at-price |
Object | No |
comparison price of SKU |
skus[].fieldData.compare-at-price.value |
Number | No |
Price of SKU |
skus[].fieldData.compare-at-price.unit |
String | No |
Currency of Item |
skus[].fieldData.main-image |
String | No |
The URL for the main image of the SKU |
skus[].fieldData.sku-properties[] |
Array | No |
The properties of the SKU |
skus[].fieldData.sku-properties[].id |
String | Yes |
Unique identifier for a collection of Product Variants |
skus[].fieldData.sku-properties[].name |
String | Yes |
Name of the collection of Product Variants |
skus[].fieldData.sku-properties[].enum[] |
Array | Yes |
The individual Product variants that are contained within the collection |
skus[].fieldData.sku-properties[].enum[].id |
String | Yes |
Unique identifier for a Product variant/Option |
skus[].fieldData.sku-properties[].enum[].name |
String | Yes |
Name of the Product variant/Option |
skus[].fieldData.sku-properties[].enum[].slug |
String | Yes |
Slug for the Product variant/Option in the Site URL structure |
skus[].fieldData.ec-sku-subscription-plan |
Object | No |
Subscription plan for the SKU |
skus[].fieldData.ec-sku-subscription-plan.frequency |
Number | No |
Frequncy of billing within interval |
skus[].fieldData.ec-sku-subscription-plan.trial |
Number | No |
Number of days of a trial |
skus[].fieldData.ec-sku-subscription-plan.plans[] |
Array | No | |
skus[].fieldData.ec-sku-subscription-plan.plans[].id |
String | No |
The unique identifier of the plan |
skus[].fieldData.ec-sku-subscription-plan.plans[].platform |
String | No |
The platform of the subscription plan Valid values:
|
skus[].fieldData.ec-sku-subscription-plan.plans[].status |
String | No |
The status of the plan Valid values:
|
skus[].fieldData.ec-sku-subscription-plan.interval |
String | No |
Interval of subscription renewal Valid values:
|
skus[].cmsLocaleId |
String | No |
Identifier for the locale of the CMS item |
skus[].lastPublished |
String | No |
The date the Product was last published |
skus[].lastUpdated |
String | No |
The date the Product was last updated |
How to start integrating
- Add HTTP Task to your workflow definition.
- Search for the API you want to integrate with and click on the name.
- This loads the API reference documentation and prepares the Http request settings.
- Click Test request to test run your request to the API and see the API's response.