You need to sign in or sign up before continuing.
... | ... | @@ -285,6 +285,192 @@ Esta seção fornece exemplos de estruturas JSON para as requisições (requests |
] | ||
``` | ||
### 1. Obter Endereço do Usuário | ||
* **Endpoint (real):** `GET /api/auth/userAddress/{id}` | ||
* **Descrição:** Retorna os dados de endereço associados ao ID do usuário. | ||
* **Exemplo de Resposta:** | ||
```json | ||
{ | ||
"cep": "90000000", | ||
"street": "Rua das Palmeiras", | ||
"number": 123, | ||
"unit": "Apto 202", | ||
"city": "Porto Alegre", | ||
"state": "RS" | ||
} | ||
``` | ||
--- | ||
### 2. Gerar Link para Redefinição de Senha | ||
* **Endpoint (real):** `POST /api/auth/linkPasswordChange` | ||
* **Descrição:** Gera e envia um link por e-mail para redefinição de senha. | ||
* **Request Body:** | ||
```json | ||
{ | ||
"email": "[email protected]" | ||
} | ||
``` | ||
--- | ||
### 3. Listar Lojas por Categoria | ||
* **Endpoint (real):** `GET /api/store/by-category/{categoryId}` | ||
* **Descrição:** Retorna lojas que pertencem à categoria informada. | ||
* **Exemplo de Resposta:** | ||
```json | ||
[ | ||
{ | ||
"storeName": "Artesanato RS", | ||
"category": "Artesanato", | ||
"profileImgUrl": "https://exemplo.com/logo_loja.png", | ||
"description": "Produtos feitos à mão com amor." | ||
} | ||
] | ||
``` | ||
--- | ||
### 4. Retornar Galeria de Fotos da Loja | ||
* **Endpoint (real):** `GET /api/store/store_photos/{id}` | ||
* **Descrição:** Retorna URLs das imagens da galeria vinculadas à loja. | ||
* **Exemplo de Resposta:** | ||
```json | ||
[ | ||
"https://exemplo.com/foto1.jpg", | ||
"https://exemplo.com/foto2.jpg", | ||
"https://exemplo.com/foto3.jpg" | ||
] | ||
``` | ||
--- | ||
### 5. Obter Endereço Completo de uma Loja | ||
* **Endpoint (real):** `GET /api/store/get-address/{id}` | ||
* **Descrição:** Retorna o endereço completo de uma loja pelo seu ID. | ||
* **Exemplo de Resposta:** | ||
```json | ||
{ | ||
"cep": "90400000", | ||
"street": "Av. Independência", | ||
"number": 456, | ||
"unit": "Sala 10", | ||
"city": "Porto Alegre", | ||
"state": "RS" | ||
} | ||
``` | ||
--- | ||
### 6. Buscar Produtos ou Lojas por Termo | ||
* **Endpoint (real):** `GET /api/search/products?q=termo` | ||
* **Endpoint (real):** `GET /api/search/stores?q=termo` | ||
* **Descrição:** Retorna lista de produtos ou lojas que contenham o termo informado. | ||
* **Exemplo de Resposta (produtos):** | ||
```json | ||
[ | ||
{ | ||
"name": "Tênis de Corrida", | ||
"description": "Tênis leve e confortável para treino", | ||
"price": 199.9, | ||
"photo": "https://exemplo.com/tenis.jpg" | ||
} | ||
] | ||
``` | ||
--- | ||
### 7. Criar Produto (Loja Autenticada) | ||
* **Endpoint (real):** `POST /api/product/create` | ||
* **Descrição:** Cria um novo produto para a loja autenticada. | ||
* **Request Body:** | ||
```json | ||
{ | ||
"name": "Bolsa Artesanal", | ||
"description": "Feita à mão com material sustentável", | ||
"photo": "https://exemplo.com/bolsa.jpg", | ||
"category": "Acessórios", | ||
"characteristics": [ | ||
{ "name": "Cor", "options": ["Bege", "Marrom"] } | ||
], | ||
"variations": [ | ||
{ "options": { "Cor": "Bege" }, "price": 79.9, "stock": 3 } | ||
] | ||
} | ||
``` | ||
* **Exemplo de Resposta (201 Created):** | ||
```json | ||
{ | ||
"id": 88, | ||
"name": "Bolsa Artesanal", | ||
"category": "Acessórios", | ||
"photo": "https://exemplo.com/bolsa.jpg", | ||
"views": 0, | ||
"date": "2025-06-19" | ||
} | ||
``` | ||
--- | ||
## Funcionalidades Internas (Serviços não expostos diretamente via API) | ||
Embora alguns serviços ainda não possuam endpoints públicos mapeados, eles fazem parte da lógica do backend do Coopera RS e oferecem funcionalidades internas importantes: | ||
### 1. EmailService | ||
* Responsável pelo envio de e-mails de confirmação de cadastro, recuperação de senha e outras comunicações. | ||
* Integração com serviços de e-mail configurados via `.env`. | ||
* Pode utilizar templates personalizados para mensagens automáticas. | ||
--- | ||
### 2. AddressService | ||
* Gerencia dados de endereço vinculados a usuários e lojas. | ||
* Realiza buscas e formatações de endereço. | ||
* Suporta consultas por ID e vinculação via CEP. | ||
--- | ||
### 3. UserService | ||
* Gerencia dados de usuários, como ativação, desativação, verificação e atualização de perfil. | ||
* Funciona como camada intermediária entre autenticação, loja e dados pessoais. | ||
--- | ||
### 4. CategoryService | ||
* Prevê suporte para criação, listagem e categorização de produtos e lojas. | ||
* Embora o `CategoryController` ainda não tenha endpoints, esta camada de serviço já está preparada. | ||
--- | ||
### 5. SponsorService | ||
* Prevê suporte para funcionalidades relacionadas a patrocínio ou destaque de lojas e produtos na plataforma. | ||
* O controller correspondente está definido, porém ainda sem rotas mapeadas. | ||
--- | ||
Esses serviços fazem parte da estrutura modular do backend e poderão ser ativados e documentados com mais profundidade à medida que as features forem implementadas. | ||
--- | ||
*Estes são apenas exemplos baseados no código frontend. É crucial validar e complementar esta informação com a documentação oficial da API (Swagger) do backend.* |