📊 Agregador de Investimentos
Este projeto tem como objetivo permitir o gerenciamento de usuários, contas bancárias e ações (stocks), possibilitando associar ações às contas e controlar investimentos de maneira simples.
📌 Sumário
👤 Usuários
Criar usuário
🧾 Requisição:
{
"username": "emanuel",
"email": "emanuel@gmail.com",
"password": "1123"
}
✅ Resposta:
{
"userId": "e1b5d9a8-2c14-410c-bd1e-cbc980f47ed7",
"username": "emanuel",
"email": "emanuel@gmail.com",
"password": "1123",
"creationTimestamp": "2025-04-21T16:51:53.435780Z",
"updatedTimestamp": "2025-04-21T16:51:53.436318Z",
"accounts": []
}
Buscar usuário por ID
✅ Resposta:
{
"userId": "e1b5d9a8-2c14-410c-bd1e-cbc980f47ed7",
"username": "emanuel",
"email": "emanuel@gmail.com",
"password": "1123",
"creationTimestamp": "2025-04-21T16:51:53.435780Z",
"updatedTimestamp": "2025-04-21T16:51:53.436318Z",
"accounts": []
}
Listar todos os usuários
✅ Resposta:
[
{
"userId": "e1b5d9a8-2c14-410c-bd1e-cbc980f47ed7",
"username": "emanuel",
"email": "emanuel@gmail.com",
"password": "1123",
"creationTimestamp": "2025-04-21T16:51:53.435780Z",
"updatedTimestamp": "2025-04-21T16:51:53.436318Z",
"accounts": []
}
]
Atualizar usuário
🧾 Requisição:
{
"username": "novoUsername",
"email": "novoemail@gmail.com"
}
✅ Resposta:
Deletar usuário
- DELETE
/v1/users/{userId}
✅ Resposta:
🏦 Contas
Criar conta para usuário
- POST
/v1/users/{userId}/accounts
🧾 Requisição:
{
"description": "conta",
"street": "rua",
"number": 2
}
✅ Resposta:
Listar contas do usuário
- GET
/v1/users/{userId}/accounts
✅ Resposta:
[
{
"accountId": "033f955e-0846-4946-bac0-de73079344fb",
"description": "conta"
},
{
"accountId": "8e586d29-0f22-4733-bae9-cae8e097b34a",
"description": "conta"
}
]
📈 Ações (Stocks)
Criar ação
🧾 Requisição:
{
"stockId": "PETR4",
"description": "Conta de Investimento"
}
✅ Resposta:
🔗 Associações entre Conta e Ações
Associar ação a uma conta
- POST
/v1/accounts/{accountId}/stocks
🧾 Requisição:
{
"stockId": "PETR4",
"quantity": 4
}
✅ Resposta:
Listar ações de uma conta
- GET
/v1/accounts/{accountId}/stocks
✅ Resposta:
[
{
"stockId": "PETR4",
"quantity": 4,
"total": 123.4
}
]