Skip to content

Commit bdd3d81

Browse files
Adicionar documentação ao README.md: Incluída descrição da API, tecnologias utilizadas e detalhes dos endpoints para criação, consulta e download de certificados.
1 parent ab0478a commit bdd3d81

File tree

1 file changed

+98
-0
lines changed

1 file changed

+98
-0
lines changed

README.md

Lines changed: 98 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,98 @@
1+
# Certified Builder API
2+
3+
## Descrição
4+
5+
Esta API é responsável por gerenciar a criação, consulta e download de certificados. Ela é construída como uma função Lambda da AWS, utilizando uma arquitetura serverless.
6+
7+
## Tecnologias Utilizadas
8+
9+
- **Python 3.12**
10+
- **AWS Lambda**
11+
- **API Gateway**
12+
- **Boto3**: AWS SDK para Python.
13+
- **Pydantic**: Para validação de dados.
14+
- **Docker**: Para containerização da aplicação.
15+
16+
## Endpoints
17+
18+
A seguir estão os endpoints disponíveis na API.
19+
20+
### Criar Certificado
21+
22+
Cria um novo certificado para um determinado produto.
23+
24+
- **Endpoint:** `POST /v1/certificate/create`
25+
- **Entrada (body):**
26+
```json
27+
{
28+
"product_id": "string"
29+
}
30+
```
31+
- **Saída (sucesso):**
32+
```json
33+
{
34+
"certificate_quantity": "integer",
35+
"existing_orders": ["integer"],
36+
"new_orders": ["integer"],
37+
"processing_date": "string"
38+
}
39+
```
40+
- **Saída (erro):**
41+
```json
42+
{
43+
"status": "integer",
44+
"message": "string",
45+
"details": "string"
46+
}
47+
```
48+
49+
### Consultar Certificado
50+
51+
Consulta certificados com base em diferentes critérios.
52+
53+
- **Endpoint:** `GET /v1/certificate/fetch`
54+
- **Entrada (query parameters):**
55+
- `order_id` (opcional): ID do pedido.
56+
- `email` (opcional): Email do participante.
57+
- `product_id` (opcional): ID do produto.
58+
- **Saída (sucesso):**
59+
```json
60+
[
61+
{
62+
"id": "string (uuid)",
63+
"order_id": "integer",
64+
"product_id": "integer",
65+
"participant_name": "string",
66+
"participant_email": "string",
67+
"participant_document": "string",
68+
"certificate_url": "string",
69+
"created_at": "string",
70+
"updated_at": "string",
71+
"success": "boolean",
72+
"email": "string",
73+
"product_name": "string",
74+
"generated_date": "string",
75+
"time_checkin": "string"
76+
}
77+
]
78+
```
79+
- **Saída (erro):**
80+
```json
81+
{
82+
"status": "integer",
83+
"message": "string",
84+
"details": "string"
85+
}
86+
```
87+
88+
### Download do Certificado
89+
90+
Gera uma página para download de um certificado.
91+
92+
- **Endpoint:** `GET /v1/certificate/download`
93+
- **Entrada (query parameters):**
94+
- `id` (obrigatório): UUID do certificado.
95+
- **Saída (sucesso):**
96+
- Retorna uma página HTML com o link para download do certificado.
97+
- **Saída (erro):**
98+
- Retorna uma página HTML indicando o erro (certificado não encontrado, UUID inválido, etc.).

0 commit comments

Comments
 (0)