Endpoints de características
Todas as URLs da API 1.0 para características do produto: listar, criar, consultar, atualizar, excluir e as características de um produto.
Os endpoints de Características do Produto gerenciam as características e especificações dos produtos. A referência escreve as URLs relativas ao endereço da API; por extenso, toda URL começa com $BASE_URL/api. Todas as requisições usam HTTP Basic com -u "$EMAIL:$API_KEY".
Use /api/features para listar as características ou criar uma, /api/features/{id} para trabalhar com uma característica e /api/products/{id}/features para ler as características de um produto.
Todas as características
| Método | Descrição | Uso |
|---|---|---|
| GET | Consulta todas as características | Retorna a lista de todas as características disponíveis. |
| POST | Cria uma nova característica | Exige um corpo JSON com os dados da característica. |
Listar características
/api/featuresAdminListar características
Retorna a lista de todas as características do produto disponíveis. A lista é paginada: veja Paginação.
Parâmetros de consulta
pageintegeritems_per_pageintegerpadrão: 10Exemplo de requisição
curl "$BASE_URL/api/features?page=1&items_per_page=10" \
-u "$EMAIL:$API_KEY"Resposta
{
"features": [
{
"feature_id": 21,
"feature_name": "Storage Capacity",
"description": "Available storage space on the device",
"feature_type": "S",
"position": 10,
"suffix": "GB",
"status": "A"
},
{
"feature_id": 22,
"feature_name": "Color",
"description": "Product color options",
"feature_type": "M",
"position": 20,
"status": "A"
},
{
"feature_id": 23,
"feature_name": "Waterproof",
"description": "Water resistance capability",
"feature_type": "C",
"position": 30,
"status": "A"
}
],
"params": {
"page": 1,
"items_per_page": 10,
"total_items": 3
}
}Criar uma característica
/api/featuresAdminCriar uma característica
Cria uma nova característica do produto. Envie um corpo JSON com os dados da característica. Os campos estão descritos em Campos.
Exemplo de requisição
curl -X POST "$BASE_URL/api/features" \
-u "$EMAIL:$API_KEY" \
-H "Content-Type: application/json" \
-d '{
"feature_name": "Storage Capacity",
"description": "Available storage space on the device",
"feature_type": "S",
"categories_ids": [16, 18],
"display_on_product": true,
"display_on_catalog": true,
"display_on_header": false,
"position": 10,
"prefix": "",
"suffix": "GB",
"variants": [
"64",
"128",
"256",
"512",
"1024"
],
"status": "A"
}'Uma característica específica
| Método | Descrição | Uso |
|---|---|---|
| GET | Consulta uma característica específica | Retorna as informações detalhadas da característica indicada. |
| PUT | Atualiza uma característica | Exige um corpo JSON com os campos a atualizar. |
| DELETE | Exclui uma característica | Remove a característica do sistema de forma definitiva. |
Consultar uma característica
/api/features/{id}AdminConsultar uma característica
Retorna as informações detalhadas da característica indicada.
Parâmetros de caminho
idintegerobrigatórioExemplo de requisição
curl "$BASE_URL/api/features/21" \
-u "$EMAIL:$API_KEY"Resposta
{
"feature_id": 21,
"feature_name": "Storage Capacity",
"description": "Available storage space on the device",
"feature_type": "S",
"categories_ids": [16, 18],
"display_on_product": true,
"display_on_catalog": true,
"display_on_header": false,
"position": 10,
"prefix": "",
"suffix": "GB",
"variants": [
"64",
"128",
"256",
"512",
"1024"
],
"status": "A",
"timestamp": "2025-04-15T10:15:30Z"
}Atualizar uma característica
/api/features/{id}AdminAtualizar uma característica
Atualiza uma característica. Envie um corpo JSON com os campos a atualizar.
Parâmetros de caminho
idintegerobrigatórioExemplo de requisição
curl -X PUT "$BASE_URL/api/features/21" \
-u "$EMAIL:$API_KEY" \
-H "Content-Type: application/json" \
-d '{
"variants": [
"64",
"128",
"256",
"512",
"1024",
"2048"
],
"display_on_header": true,
"position": 5
}'Excluir uma característica
/api/features/{id}AdminExcluir uma característica
Remove a característica do sistema de forma definitiva.
Parâmetros de caminho
idintegerobrigatórioExemplo de requisição
curl -X DELETE "$BASE_URL/api/features/21" \
-u "$EMAIL:$API_KEY"Características de um produto
/api/products/{id}/featuresAdminListar as características de um produto
Retorna todas as características associadas a um produto específico.
Parâmetros de caminho
idintegerobrigatórioParâmetros de consulta
typestring/products/143/features?type=S retorna só as características selecionáveis.Exemplo de requisição
curl "$BASE_URL/api/products/143/features" \
-u "$EMAIL:$API_KEY"Resposta
{
"product_id": 143,
"product": "Premium Wireless Headphones",
"features": [
{
"feature_id": 22,
"feature_name": "Color",
"value": "Black",
"variant_id": 0
},
{
"feature_id": 24,
"feature_name": "Battery Life",
"value": "24",
"variant_id": 0,
"suffix": "hours"
},
{
"feature_id": 23,
"feature_name": "Waterproof",
"value": "Y",
"variant_id": 0
}
]
}Tipos de característica
| Código do tipo | Descrição |
|---|---|
S | Selecionável: característica com variantes predefinidas entre as quais o usuário escolhe (por exemplo, capacidade de armazenamento). |
M | Seleção múltipla: característica que permite escolher vários valores (por exemplo, dispositivos compatíveis). |
C | Caixa de seleção: característica com valor sim ou não (verdadeiro ou falso), por exemplo à prova d'água, sem fio. |
T | Texto: característica com valor de texto livre (por exemplo, descrição, número do modelo). |
N | Número: característica com valor numérico que pode ter prefixo ou sufixo (por exemplo, peso, dimensões). |
D | Data: característica com valor de data (por exemplo, data de lançamento, fim da garantia). |
Opções de exibição
As características do produto têm várias opções de exibição, que controlam onde e como elas aparecem na sua loja:
| Opção de exibição | Descrição |
|---|---|
display_on_product | A característica é exibida na página de detalhes do produto. |
display_on_catalog | A característica é exibida nas listagens de produtos e nas visões de catálogo. |
display_on_header | A característica é destacada na seção de cabeçalho do produto. |
filter_in_search | A característica pode ser usada como filtro nos resultados de busca de produtos. |