Gerenciar Produtos
Este guia cobre todas as operações para consultar, criar, atualizar e excluir produtos e suas sub-entidades.Para ver todos os campos disponíveis, tipos e validações de cada endpoint, consulte o API Reference.
Regras Importantes
Antes de começar, tenha em mente estas regras que se aplicam a toda a gestão de produtos:- Status do produto: Atualmente o único valor suportado é
"published". O status é retornado igual nas respostas. option_valuesé imutável: Uma vez criada a variante, você não pode alterar seusoption_valuesvia PATCH. Se precisar corrigi-los, exclua a variante e crie-a novamente.- Moedas suportadas:
MXN,PEN,COP,CLP,ARS,BRL,VES,BOB,USD,PYG,UYU,CRC,EUR. - A moeda deve coincidir com a do catálogo: Todas as variantes de um produto devem usar a mesma moeda configurada no catálogo. Usar uma moeda diferente pode causar inconsistências internas.
- Respostas:
PATCHretorna200com o recurso atualizado.DELETEretorna204sem body. - Todo produto requer pelo menos uma variante: Mesmo produtos simples (sem tamanhos ou cores) precisam de no mínimo uma opção e uma variante. Use um nome genérico como “Apresentação” ou “Unidade”.
- Não existem endpoints batch: Cada entidade deve ser criada individualmente.
Consultar Produtos
Listar produtos
Retorna uma lista paginada de produtos com todas as suas sub-entidades.limit aceita um máximo de 100. Consulte Paginação para mais detalhes.Obter um produto
Retorna um produto com todas as suas opções, variantes (com media) e categorias.Criar um Produto Completo
1. Criar o produto
2. Adicionar opções
A resposta inclui os IDs dos valores criados. Guarde esses IDs para usá-los ao criar variantes.Precisa adicionar mais valores a uma opção? Use
POST /v1/products/{product_id}/options/{option_id}/values com o nome do novo valor (ex. {"name": "XL"}).3. Criar variantes
Cada variante deve incluiroption_values com pelo menos um ID de valor de opção.
4. Adicionar media à variante
Tipos de arquivo permitidos:
5. Atribuir categorias
Este endpoint é idempotente: se um tag já está atribuído, ele é ignorado e a resposta é200. Só retorna 201 quando novos tags são atribuídos.
Atualizar Entidades
Atualizar produto
Atualizar produto
Atualizar opção
Atualizar opção
Atualizar valor de opção
Atualizar valor de opção
Atualizar variante
Atualizar variante
Atualizar media
Atualizar media
Excluir Entidades
Remover categoria de um produto
Remover categoria de um produto
Isso desvincula a categoria do produto, mas não exclui a categoria global.
Excluir media
Excluir media
Excluir variante
Excluir variante
Excluir valor de opção
Excluir valor de opção
Excluir opção
Excluir opção
Excluir produto completo
Excluir produto completo
Produto Simples (sem variações)
Nem todos os produtos têm tamanhos ou cores. Mesmo assim, todo produto requer pelo menos uma opção e uma variante. Use um nome genérico para a opção.O nome da opção é livre:
"Apresentação", "Tipo", "Unidade", etc.Erros Comuns
Erros de validação (422) retornam um body com detalhes do campo que falhou:
422 — "option_values must have at least 1 item"
422 — "option_values must have at least 1 item"
Você está criando uma variante sem
option_values ou com uma lista vazia. Você deve criar opções primeiro com POST /v1/products/{product_id}/options e usar os IDs dos valores retornados.Criar variantes antes de opções
Criar variantes antes de opções
Se tentar criar uma variante antes de ter criado opções, não terá IDs de valores disponíveis para o campo
option_values. Sempre crie opções primeiro.Usar nome em vez de tag_id para categorias
Usar nome em vez de tag_id para categorias
O endpoint
POST /v1/products/{product_id}/categories requer tag_ids (lista de IDs numéricos), não nomes de categoria. Primeiro crie a categoria com POST /v1/categories e use o id retornado.Esquecer catalog_id ao criar produto
Esquecer catalog_id ao criar produto
O campo
catalog_id é obrigatório ao criar um produto. Obtenha seu catálogo com GET /v1/catalogs.IDs de option_value inválidos
IDs de option_value inválidos
Os IDs de
option_values devem corresponder a valores do mesmo produto. Usar IDs de outro produto ou IDs inexistentes resultará em erro.Tentar alterar option_values de uma variante existente
Tentar alterar option_values de uma variante existente
PATCH /v1/products/{product_id}/variants/{variant_id} não aceita option_values. Os valores de opção de uma variante são atribuídos apenas na criação. Se precisar corrigi-los, exclua a variante e crie-a novamente com os valores corretos.
