GETListar opções do produto
Retorna todas as opções de um produto, com as respectivas variantes.
Este endpoint retorna todas as opções configuráveis de um produto específico, com as respectivas variantes. As opções do produto são atributos personalizáveis que os clientes podem escolher ao pedir o produto (por exemplo, tamanho, cor ou material).
Listar as opções de um produto
Detalhes do endpoint
/api/optionsAdminListar as opções de um produto
Retorna todas as opções e suas variantes para o produto indicado. A referência escreve a URL como /api/options/?product_id={id}.
Parâmetros de consulta
product_idintegerobrigatórioO identificador único do produto.
Exemplo de requisição
bash
curl "$BASE_URL/api/options/?product_id=12" \
-u "$EMAIL:$API_KEY"Formato da resposta
A resposta é um objeto JSON em que cada chave é o id de uma opção e o valor são os detalhes da opção, incluindo as variantes.
200Opções retornadas
json
{
"3": {
"option_id": "3",
"product_id": "12",
"company_id": "1",
"option_type": "S",
"inventory": "Y",
"regexp": "",
"required": "N",
"multiupload": "N",
"allowed_extensions": "",
"max_file_size": "0",
"missing_variants_handling": "M",
"status": "A",
"position": "20",
"value": "",
"option_name": "Size",
"option_text": "Size",
"description": "",
"inner_hint": "",
"incorrect_message": "",
"comment": "",
"variants": {
"12": {
"variant_id": "12",
"option_id": "3",
"position": "10",
"modifier": "0.000",
"modifier_type": "A",
"weight_modifier": "0.000",
"weight_modifier_type": "A",
"point_modifier": "0.000",
"point_modifier_type": "A",
"variant_name": "Small",
"image_pair": []
},
"13": {
"variant_id": "13",
"option_id": "3",
"position": "20",
"modifier": "0.000",
"modifier_type": "A",
"weight_modifier": "0.000",
"weight_modifier_type": "A",
"point_modifier": "0.000",
"point_modifier_type": "A",
"variant_name": "Medium",
"image_pair": []
}
}
},
"4": {
"option_id": "4",
"product_id": "12",
"company_id": "1",
"option_type": "S",
"inventory": "Y",
"required": "N",
"status": "A",
"position": "0",
"option_name": "Color",
"variants": {
"17": {
"variant_id": "17",
"option_id": "4",
"position": "0",
"modifier": "0.000",
"modifier_type": "A",
"weight_modifier": "0.000",
"weight_modifier_type": "A",
"point_modifier": "0.000",
"point_modifier_type": "A",
"variant_name": "Black/White/White",
"image_pair": {
"pair_id": "805",
"image_id": "861",
"detailed_id": "0",
"position": "0",
"icon": {
"image_path": "http://localhost/images/variant_image/0/173283_01.jpg",
"alt": ""
}
}
}
}
}
}Entendendo a resposta
Campos da opção
| Campo | Tipo | Descrição |
|---|---|---|
option_id | string | Identificador único da opção |
product_id | string | ID do produto ao qual a opção pertence |
company_id | string | ID da empresa (vendedor) dona do produto |
option_type | string | Tipo da opção: S caixa de seleção, R botão de opção, C caixa de marcação, I texto, T área de texto, F arquivo, D data |
inventory | string | Indica se a opção afeta o controle de estoque do produto: Y sim, N não |
required | string | Indica se a opção é obrigatória: Y sim, N não |
status | string | Status da opção: A ativa, D desativada, H oculta |
position | string | Ordem de exibição |
option_name | string | Nome da opção exibido aos clientes |
variants | object | Objeto com todas as variantes disponíveis desta opção |
Campos da variante
| Campo | Tipo | Descrição |
|---|---|---|
variant_id | string | Identificador único da variante |
option_id | string | ID da opção pai |
position | string | Ordem de exibição |
modifier | string | Valor do modificador de preço |
modifier_type | string | Tipo de modificação de preço: A valor fixo, P percentual |
weight_modifier | string | Valor do modificador de peso |
weight_modifier_type | string | Tipo de modificação de peso: A valor fixo, P percentual |
variant_name | string | Nome da variante exibido aos clientes |
image_pair | object/array | Imagem associada a esta variante (uma lista vazia se não houver imagem) |
Casos de uso comuns
- Montar configuradores de produto personalizados em aplicações web ou móveis.
- Criar seletores de variante de produto com imagens de pré-visualização.
- Calcular o preço em tempo real conforme o cliente escolhe as opções.
- Integrar com ferramentas externas de personalização de produto.