---
title: "Create category"
method: POST
path: "/api/catalog/pvt/category"
tags: ["Category"]
---

# Create category

`POST /api/catalog/pvt/category`

Creates a new category.

If there is a need to create a new category with a specific custom ID, specify the `Id` (integer) in the request. Otherwise, VTEX will generate the ID automatically.

## Permissions

Any user or [API key](https://developers.vtex.com/docs/guides/api-authentication-using-api-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:

| **Product** | **Category** | **Resource** |
| --------------- | ----------------- | ----------------- |
| Catalog | Content | **Categories Management** |

There are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).

>❗ To prevent integrations from having excessive permissions, consider the [best practices for managing API keys](https://help.vtex.com/en/tutorial/best-practices-api-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.

## Headers

- `Content-Type` string, required
- `Accept` string, required

## Request body

- CreateCategoryRequest — Object with the request.
  - `Id` integer — Category unique identifier. If not informed, it will be automatically generated by VTEX.
  - `Name` string, required — Category name.
  - `Keywords` string, required — Substitute words for the category.
  - `Title` string, required — Text used in title tag for category page.
  - `Description` string, required — Text used in meta description tag for category page.
  - `AdWordsRemarketingCode` string, nullable, required — This is a legacy field. Do not take this information into consideration.
  - `LomadeeCampaignCode` string, nullable, required — This is a legacy field. Do not take this information into consideration.
  - `FatherCategoryId` integer, nullable, required — ID of the parent category, apply in case of category and subcategory.
  - `GlobalCategoryId` integer, required — Google global category ID.
  - `ShowInStoreFront` boolean, required — If `true`, the category is shown in the top and side menu.
  - `IsActive` boolean, required — If `true`, the category page becomes available in store.
  - `ActiveStoreFrontLink` boolean, required — If `true`, the category link becomes active in store.
  - `ShowBrandFilter` boolean, required — If `true`, the category page displays a brand filter.
  - `Score` integer, nullable, required — Score for search sorting order.
  - `StockKeepingUnitSelectionMode` 'SPECIFICATION' | 'LIST', required — Defines how SKUs will be displayed in the storefront and selected by customers. The possible values are: - `SPECIFICATION`: choosing product variations (like size or color) through specification fields. - `LIST`: selecting and item from a list of SKUs.

## Response `200`

OK

- Category — Object with the category details.
  - `Id` integer, required — Category ID.
  - `Name` string, required — Category name.
  - `FatherCategoryId` integer, nullable, required — ID of the father category, apply in case of category and subcategory.
  - `Title` string, required — Category page title.
  - `Description` string, required — Describes details about the category.
  - `Keywords` string, required — Substitutes words for the category.
  - `IsActive` boolean, required — Shows if the category is active (`true`) or not (`false`).
  - `LomadeeCampaignCode` string, required — This is a legacy field. Do not take this information into consideration.
  - `AdWordsRemarketingCode` string, required — This is a legacy field. Do not take this information into consideration.
  - `ShowInStoreFront` boolean, required — Defines if the category is shown on side and upper menu (`true`) or not (`false`).
  - `ShowBrandFilter` boolean, required — Defines if the category has brand filter (`true`) or not (`false`).
  - `ActiveStoreFrontLink` boolean, required — Defines if the category has an active link on the website (`true`) or not (`false`).
  - `GlobalCategoryId` integer, required — Google global category ID.
  - `StockKeepingUnitSelectionMode` string, required — Defines how the SKU will be exhibited.
  - `Score` integer, nullable, required — Score for search ordination.
  - `LinkId` string, required — Category text link ID. This field value is automatically generated when you create or update a category, and it corresponds to the category `name`. Once the category `linkId` is generated, it cannot be modified directly, but you can change it by updating the category with a new `name`.
  - `HasChildren` boolean, required — Defines if the category has child categories (`true`) or not (`false`).
  - `TreePath` string[], nullable, required — Category tree path, which corresponds to the category name as it is. Unless your request includes the query param `includeTreePath` set as `true`, this field will return `null`.
  - `TreePathIds` integer[], nullable, required — All of the category tree path IDs. Every nested category would correspond to a path ID. Unless your request includes the query param `includeTreePath` set as `true`, this field will return `null`.
  - `TreePathLinkIds` string[], nullable, required — List of category tree path link IDs. A link ID is the identifier that forms the last part of the category URL, normalizing special characters. Unless your request includes the query param `includeTreePath` set as `true`, this field will return `null`.

---

[API](https://skmtc.dev/vtex/apis/catalog-api.md) · [All operations](https://skmtc.dev/vtex/apis/catalog-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/vtex/catalog-api/revisions/ba9fbd1b771f/schema)
