---
# System prepended metadata

title: Planejamento da API

---

[toc]

# Planejamento da API






## GET /produtos/populares
> Irá consultar os produtos populares baseado em XXXX.

###### Response 
```json=
[
    {
        "nome": "...",
        "preco": 0.00,
        "imagem": "http://.../capa.jpg",
        "avaliacao": 5,
        "id": 213
    }
]
```


## GET /produtos?nome=XX&pagina=XX
> Irá consultar os produtos filtrando pelo nome seguindo a paginação.


###### Response 
```json=
[
    {
        "nome": "...",
        "preco": 0.00,
        "imagem": "http://.../capa.jpg",
        "avaliacao": 5,
        "id": 213
    }
]
```


## GET /produto/:id
> Irá consultar todos os detalhes de um produto específico.

###### Response
```json=
{
    "nome": "GTA V",
    "preco": 0.00,
    "imagens": ["http://.../img1.jpg", "http://.../img2.jpg"],
    "avaliacao": 5,
    ...
}
```

## POST /produto
> Irá cadastrar um produto novo.

###### Request (body)
```json=
{
    "nome": "...",
    "codBarra": "...",
    "preco": 70.33,
    ...
}
```

###### Response
```json=
    {
        "id": 32423,
        "nome": "GTA V",
        ...
    }
```




## GET /pedido
> Irá listar todos os pedidos por ordem de XXX.


###### Response
```json=
{
    "id": 232,
    "cliente": "...",
    "total": 0.00,
    "situacao": "Aguardando Pagamento",
    ...
}
```


## PUT /pedido/:id/situacao
> Irá atualizar a situacao do pedido para um novo valor.

###### Request (body)
```json=
{
    "situacao": "A caminho"
}
```

###### Response (status: 200)





