Dúvidas Frequentes: Como criar e associar especificações de produto e/ou SKU via API?

Especificações são propriedades adicionais que podem ser cadastradas nos produtos ou SKUs da sua loja. Na VTEX, essas especificações são cadastradas na seção Categorias e são chamadas de Campo.

O processo de criação dessas especificações dentro da VTEX envolve múltiplos passos obrigatórios e que em alguns casos devem ser feitos em uma ordem específica. Devido a isso, temos um passo a passo de como fazer isso via admin no nosso help:

Neste tutorial, compartilho um passo a passo de quais requisições devem ser utilizadas para a criação dessas especificações de produto via API, utilizando os endpoints disponibilizados pela VTEX em nossa documentação de APIs.

Se você tem dúvidas sobre o que é uma API e quais são suas funcionalidades, veja nosso tutorial: Dúvidas Frequentes: O que são APIs, quais seus métodos e como funcionam? Por outro lado, se você tem dúvidas sobre como começar a utilizar APIs como as descritas abaixo, veja nosso tutorial: Dúvidas Frequentes: Como utilizar APIs?

Além disso, caso seja do seu interesse, um passo a passo de como efetuar a criação de produtos via API veja nosso tutorial: Dúvidas Frequentes: Como criar produtos via API | Passo a passo de quais requests de Catálogo devem ser utilizados

Após seguir os passos lá listados, você pode utilizar os requests na seguinte ordem:

1. O primeiro passo é criar um grupo através da API Create Specification Group (caso você não queira usar um existente).

Grupo é o nome dado a um conjunto de especificações (campos) relacionados aos produtos ou SKUs de determinada categoria.

Na VTEX, uma especificação sempre faz parte de um grupo de especificações, que é associado a uma categoria. Por isso, para criar uma especificação de produto ou uma especificação de SKU, é necessário ter cadastrado previamente pelo menos uma categoria e um grupo de especificações.

2. Após isso, você poderá efetuar a criação do campo via API Create Specification.

Especificações são propriedades adicionais que podem ser associadas tanto aos seus produtos quanto aos SKUs da sua loja, contanto que obedeçam aos requisitos necessários para a associação a cada um. Abaixo, descrevo os campos disponíveis para essa requisição cenário:

  • FieldTypeId* - Define o tipo de campo por meio de um inteiro, podendo ser:
    1 - Texto: Deve ser utilizado para textos curtos;
    2 - Texto multi-linhas: Utilizado para textos longos;
    4 - Número: Esse tipo de campo deve ser obrigatoriamente preenchido apenas com números;

    5 - Combo: Conteúdo com dois ou mais valores pré-definidos, para seleção de uma opção em uma lista suspensa (dropdown), muito utilizado usado para especificação de cor;
    6 - Radio: Conteúdo com dois ou mais valores pré-definidos, para marcação de uma opção a partir de uma grade de valores, frequentemente usado para especificações de tamanho;

    7 - Checkbox;
    8 - Indexed Text e 9 - Indexed Multi-Line Text: seguem tecnicamente a mesma regra dos campos de Texto, com uma diferença: seus valores serão interpretados pelo indexador do Catálogo e influenciam nos resultados de busca dos clientes na loja. Veja mais detalhes em Como funciona a busca da VTEX?

Sendo assim, para os casos de especificações de produto são permitidos os valores: 1┃2┃4┃5┃6┃7┃8┃9, já para especificações de SKU são permitidos os valores 5 e 6, ou seja, especificações de SKU precisam ser obrigatoriamente do tipo Combo ou Radio.

  • CategoryId - ID da Categoria associada com essa especificação.
  • FieldGroupId* - ID do grupo de especificações que contém a nova especificação, caso tenha sido criado no passo anterior ele será parte da resposta da requisição enviada.
  • Name* - Nome da especificação, limitado a 100 caracteres.
  • Position - A posição utilizada para ordenar as especificações tanto no menu de navegação quanto na lista de especificações na página do produto (Válido apenas para lojas em CMS Legado).
  • IsFilter - Permite que a especificação seja usada como filtro na barra de navegação de pesquisa (Válido apenas para lojas em CMS Legado).
  • IsRequired - Define se a especificação é obrigatória (true) ou opcional (false), cabe ressaltar que quando essa especificação for definida como obrigatória, qualquer produto ou SKU que não tenha um valor para ela não será exibido na sua loja.
  • IsOnProductDetails - Se a especificação estará visível na página do produto (true) ou não (false), (Válido apenas para lojas em CMS Legado).
  • IsStockKeepingUnit - Se verdadeiro, true, ela será adicionada como uma especificação de SKU, caso contrário, false, será adicionada como uma especificação de produto.
  • IsActive - Ativa (true) ou desativa (false) a especificação.
  • IsTopMenuLinkActive e IsSideMenuLinkActive - Torna a especificação visível no menu superior da loja e torna o campo de especificação clicável na barra de navegação de pesquisa, respectivamente (Válido apenas para lojas em CMS Legado).

3. O próximo passo será associar a especificação ao produto via API Associate Product Specification.

Nesse passo será definido o valor da especificação para um determinado produto. Caso a especificação criada seja de SKU, a API Associate SKU specification deverá ser utilizada.

Caso ainda tenha alguma dúvida sobre o assunto, sinta-se à vontade para perguntar por aqui! :smiling_face:

Referências:

Karina Mota
Field Software Engineer | VTEX

2 Likes