Specifications are additional properties that can be registered for the products or SKUs in your store. In VTEX, these specifications are registered under the Categories section and are referred to as Fields.
The process of creating these specifications within VTEX involves multiple required steps that, in some cases, must be completed in a specific order. For that reason, we have a step-by-step guide on how to do this via the admin in our help center:
In this tutorial, I share a step-by-step guide on which requests should be used to create these product specifications via API, using the endpoints provided by VTEX in our API documentation.
If you have questions about what an API is and what it can do, check out our tutorial: FAQ: What are APIs, what are their methods, and how do they work? On the other hand, if you have questions about how to get started using APIs like the ones described below, see our tutorial: FAQ: How do I use APIs?
Additionally, if you’re interested in a step-by-step guide on how to create products via API, check out our tutorial: FAQ: How to create products via API | Step-by-step guide on which Catalog requests to use
After following the steps listed there, you can use the requests in the following order:
1. The first step is to create a group using the Create Specification Group API (unless you want to use an existing one).
A group is the name given to a set of specifications (fields) related to the products or SKUs of a given category.
In VTEX, a specification always belongs to a specification group, which is associated with a category. Therefore, to create a product specification or an SKU specification, you must have already registered at least one category and one specification group.
2. After that, you can create the field using the Create Specification API.
Specifications are additional properties that can be associated with both your products and the SKUs in your store, as long as they meet the requirements for association with each one. Below, I describe the available fields for this request:
FieldTypeId* - Defines the field type using an integer, which can be:
1 - Text: Should be used for short text;
2 - Multi-line Text: Used for long text;
4 - Number: This field type must be filled in with numbers only;
5 - Combo: Content with two or more predefined values, for selecting an option from a dropdown list — commonly used for color specifications;
6 - Radio: Content with two or more predefined values, for selecting an option from a grid of values — frequently used for size specifications;
7 - Checkbox;
8 - Indexed Textand9 - Indexed Multi-Line Text: technically follow the same rules as Text fields, with one difference: their values will be interpreted by the Catalog indexer and influence customer search results in the store. See more details at How does VTEX search work?
For product specifications, the allowed values are: 1┃2┃4┃5┃6┃7┃8┃9, while for SKU specifications, only values 5 and 6 are allowed — meaning SKU specifications must be of type Combo or Radio.
CategoryId- ID of the category associated with this specification.FieldGroupId* - ID of the specification group that contains the new specification. If it was created in the previous step, it will be part of the response from the request sent.Name*- Name of the specification, limited to 100 characters.Position- The position used to sort specifications both in the navigation menu and in the specification list on the product page (valid only for stores using Legacy CMS).IsFilter- Allows the specification to be used as a filter in the search navigation bar (valid only for stores using Legacy CMS).IsRequired- Defines whether the specification is required (true) or optional (false). It’s worth noting that when this specification is set as required, any product or SKU that doesn’t have a value for it will not be displayed in your store.IsOnProductDetails- Whether the specification will be visible on the product page (true) or not (false) (valid only for stores using Legacy CMS).IsStockKeepingUnit- Iftrue, it will be added as an SKU specification; iffalse, it will be added as a product specification.IsActive- Activates (true) or deactivates (false) the specification.IsTopMenuLinkActiveandIsSideMenuLinkActive- Makes the specification visible in the store’s top menu and makes the specification field clickable in the search navigation bar, respectively (valid only for stores using Legacy CMS).
3. The next step is to associate the specification with the product using the Associate Product Specification API.
In this step, the value of the specification for a given product is defined. If the specification created is an SKU specification, the Associate SKU Specification API should be used instead.
If you still have any questions about this topic, feel free to ask right here! ![]()
References:
- Create a specification group in a category | VTEX Help Center
- Product and SKU specifications | VTEX Help Center
Karina Mota
Field Software Engineer | VTEX


