Endpoint: Produtos

Visão Geral

O endpoint de produtos permite listar e filtrar produtos do sistema. Suporta paginação, ordenação e diversos filtros.

Base URL: https://api.imobileai.com.br/products

Autenticação

Requer token JWT no header:

Authorization: Bearer seu_token_jwt

Parâmetros

Parâmetros de URL

Parâmetro Tipo Descrição Exemplo
page number Número da página (padrão: 1) ?page=2
limit number Itens por página (1-100, padrão: 100) ?limit=20
type string Tipo do produto (NOVO, SEMINOVO, DIVERSOS) ?type=NOVO
category string Categoria (CAPINHA, PELICULA, CARREGADOR, FONE, PECA, OUTROS) ?category=CAPINHA
brand string Marca do produto ?brand=Apple
model string Modelo do produto ?model=iPhone 14
color string Cor do produto ?color=branco
capacity string Capacidade do produto ?capacity=128GB
min_price number Preço mínimo ?min_price=1000
max_price number Preço máximo ?max_price=5000
min_battery number Saúde mínima da bateria (%) ?min_battery=90
in_stock boolean Produtos em estoque ?in_stock=true
search string Busca geral em todos os campos principais ?search=iphone branco
sort string Campo para ordenação (created_at, price, name, brand, model) ?sort=price
order string Direção da ordenação (ASC ou DESC, padrão: DESC) ?order=ASC

Resposta

A resposta é retornada no formato JSON:

{
    "success": true,
    "data": [
        {
            "id": 1,
            "store_id": 1,
            "type": "NOVO",
            "name": "iPhone 14",
            "category": "CELULAR",
            "brand": "Apple",
            "model": "iPhone 14",
            "capacity": "128GB",
            "color": "Branco",
            "battery_health": 100,
            "price": 4999.99,
            "price_formatted": "R$ 4.999,99",
            "quantity": 1,
            "description": "iPhone 14 novo, lacrado",
            "created_at": "2024-03-14 12:00:00",
            "updated_at": "2024-03-14 12:00:00",
            "media": [
                {
                    "url": "https://clientes.imobileai.com.br/uploads/products/foto1.jpg",
                    "type": "image"
                }
            ],
            "store": {
                "name": "Nome da Loja",
                "whatsapp": "11999999999"
            }
        }
    ],
    "total": 100,
    "page": 1,
    "limit": 20,
    "pages": 5
}

Exemplos de Uso

Listar produtos novos

GET /products?type=NOVO

Buscar iPhones brancos

GET /products?brand=apple&color=branco

Produtos por faixa de preço

GET /products?min_price=1000&max_price=5000

Produtos em estoque ordenados por preço

GET /products?in_stock=true&sort=price&order=ASC

Busca combinada

GET /products?type=SEMINOVO&min_battery=90&brand=apple&sort=price

Erros

Código Descrição
401 Token não fornecido ou inválido
403 Acesso não autorizado (token válido mas sem permissão)
500 Erro interno do servidor

Observações

  • Todos os filtros são opcionais
  • A busca é case-insensitive
  • URLs de mídia são retornadas completas
  • Preços são retornados em formato numérico e formatado
  • Usuários não SUPER_ADMIN só veem produtos de sua loja