Produtos do seller
Lista os produtos do seller com busca e filtro de status, e exclui produtos em lote.
Duas operações sobre o conjunto de produtos do seller. A lista (GET) devolve só os produtos do seller autenticado, em páginas, com busca por texto e filtro de status. A exclusão em lote (POST) recebe uma lista de ids e exclui os que pertencem ao seller.
Listar os produtos
/api/v1.0/vendor_productsSellerListar os produtos do seller
Parâmetros de consulta
pageintegerpadrão: 1items_per_pageintegerpadrão: 10qstringstatusstringADHRXA ativo, D desativado, H oculto, R aguardando moderação, X recusado.Cabeçalhos
AuthorizationstringobrigatórioBasic base64(e-mail:chave_de_api) ou Bearer $TOKEN do usuário de um seller ativo./api/vendor_productsSellerAlias de GET /api/v1.0/vendor_products
Mesmo corpo, mesma resposta e mesmo comportamento de GET /api/v1.0/vendor_products. Nesta URL (sem /v1.0), os ids de entidades usam o formato numérico legado.
/api/v1.0/vn_products_apiSellerAlias de GET /api/v1.0/vendor_products
Mesmo corpo, mesma resposta e mesmo comportamento de GET /api/v1.0/vendor_products.
/api/vn_products_apiSellerAlias de GET /api/v1.0/vendor_products
Mesmo corpo, mesma resposta e mesmo comportamento de GET /api/v1.0/vendor_products. Nesta URL (sem /v1.0), os ids de entidades usam o formato numérico legado.
Excluir produtos em lote
/api/v1.0/vendor_productsSellerExcluir produtos do seller em lote
Para cada id da lista, a plataforma confere se o produto é do seller e, só então, o exclui. Ids de outro seller ou que não existem são ignorados em silêncio. A resposta diz apenas se ao menos um foi excluído; não informa quantos nem quais.
Corpo da requisição
product_idsarrayobrigatóriov1.0, aceita também os ids numéricos devolvidos pela lista./api/vendor_productsSellerAlias de POST /api/v1.0/vendor_products
Mesmo corpo, mesma resposta e mesmo comportamento de POST /api/v1.0/vendor_products. Nesta URL (sem /v1.0), os ids de entidades usam o formato numérico legado.
/api/v1.0/vn_products_apiSellerAlias de POST /api/v1.0/vendor_products
Mesmo corpo, mesma resposta e mesmo comportamento de POST /api/v1.0/vendor_products.
/api/vn_products_apiSellerAlias de POST /api/v1.0/vendor_products
Mesmo corpo, mesma resposta e mesmo comportamento de POST /api/v1.0/vendor_products. Nesta URL (sem /v1.0), os ids de entidades usam o formato numérico legado.
Exemplo de requisição
# Listar
curl -u "$EMAIL:$API_KEY" "$BASE_URL/api/v1.0/vendor_products?items_per_page=5&q=camisa"
# Excluir em lote
curl -u "$EMAIL:$API_KEY" -X POST "$BASE_URL/api/v1.0/vendor_products" \
-H "Content-Type: application/json" \
-d '{"product_ids":["22fbd12a-1b6e-41ea-a84f-4d9cf06c8766"]}'Resposta
{
"status": 200,
"data": {
"success": true,
"message": "",
"products": [
{
"product_id": "22fbd12a-1b6e-41ea-a84f-4d9cf06c8766",
"product": "Camisa do Flamengo Masculina I 26 Adidas",
"price": "300.00",
"list_price": "449.90",
"status": "A",
"amount": 38,
"main_image": "/uploads/dfe2555e/product/22fbd12a/camisa.png"
}
],
"search": { "page": 1, "items_per_page": 5, "total_items": 1 }
}
}{ "status": 200, "data": { "success": true, "message": "Product(s) deleted successfully" } }Campos da resposta
data.products[].product_iduuiddata.products[].productstringdata.products[].pricestring"300.00").data.products[].list_pricestring"0.00" se não houver.data.products[].statusstringADHRXA ativo, D desativado, H oculto, R aguardando moderação, X recusado.data.products[].amountintegerdata.products[].main_imagestringdata.searchobjectpage, items_per_page e total_items (total de produtos que combinam com os filtros).Erros
| Status | Quando | Corpo |
|---|---|---|
| 200 | Conta que não é de seller ativo | {"status": 200, "data": {"success": false, "message": "User is not a vendor", "action": "logout"}} |
| 200 | Falha ao ler os produtos | {"status": 200, "data": {"success": false, "message": "Failed to load products"}} |
| 200 | Exclusão: corpo inválido | {"status": 200, "data": {"success": false, "message": "Invalid request body"}} |
| 200 | Exclusão: nenhum produto excluído (lista vazia, ids alheios ou inexistentes) | {"status": 200, "data": {"success": false, "message": "No products were deleted"}} |
| 401 | Sem credencial ou credencial inválida | {"message": "Authentication required. Use HTTP Basic with email:api_key or Bearer <jwt>.", "status": 401} |
| 403 | Usuário cliente (não seller nem administrador) | {"message": "Forbidden: vendor scope required", "status": 403} |