Don't speak portuguese? Click here to view this page in English
Transformando investidores estribados em mestres do mercado financeiro
- Mandacaru Broker API
- Sumário
- Descrição
- Desenvolvedores
- Recursos
- Login no sistema
- Registro no sistema
- Excluir registro no sistema
- Obter todos os Exchange Traded Funds
- Obter um Exchange Traded Fund específico
- Registrar um Exchange Traded Fund
- Atualizar um Exchange Traded Fund
- Excluir um Exchange Traded Fund
- Listar todos os investimentos
- Registrar um novo investimento
- Excluir um investimento
- Listar todos os fundos imobiliários
- Obter um fundo imobiliário específico
- Registrar um novo fundo imobiliário
- Atualizar um fundo imobiliário específico
- Excluir um fundo imobiliário específico
- Listar todas os registros
- Listar um Registro
- Criar um novo registro
- Atualizar um registro por ID
- Excluir um registro
- Listar todos os ativos
- Obter um ativo específico
- Registrar um ativo
- Atualizar um ativo
- Excluir um ativo
- Login do usuário no sistema
- Cadastro de usuário no sistema
- Atualizar usuário no sistema
- Exclusão de usuário no sistema
- Collection do Postman
- Swagger
- Testes
- Passo-a-passo de como configurar o ambiente
- Requisitos
- Tecnologias Utilizadas
- Contribuições
- Licença
A Mandacaru Broker API é uma aplicação Spring Boot que fornece operações CRUD (Create, Read, Update, Delete) para gerenciar informações sobre ações (stocks).
Um Home Broker é uma plataforma online que permite aos investidores comprar e vender ativos financeiros, como ações, opções, títulos públicos, entre outros, diretamente pela internet. Através dele, os investidores podem acessar informações de mercado em tempo real, analisar gráficos, executar ordens de compra e venda, monitorar suas carteiras de investimentos, entre outras funcionalidades, tudo de forma online.
Se deseja aprender mais sobre o Homebroker e como ele funciona, acesse o Hub de educação da B3 (bolsa de valores brasileira): Como operar com o Homebroker
O projeto foi elaborado em colaboração pelos seguintes desenvolvedores:
Ingrid Lima |
Wesley Maciel |
João Paulo |
Moisés Oliveira |
|---|
Efetua o login no sistema.
Endpoint:
POST /auth/loginRespostas:
200: Login bem-sucedido
400: Credenciais inválidas
401: Usuário não registradoEfetua o registro no sistema.
Endpoint:
POST /auth/registerRespostas:
200: Registro bem-sucedido
409: Usuário já registradoExclui o registro no sistema.
Endpoint:
DELETE /auth/{id}Respostas:
200: Exclusão bem-sucedidaRetorna todos os Exchange Traded Funds disponíveis.
Endpoint:
GET /etfRetorna os detalhes de um Exchange Traded Fund específico com base no ID fornecido.
Endpoint:
GET /etf/{id}Registra um novo Exchange Traded Fund com base nos dados fornecidos.
Endpoint:
POST /etf/registerAtualiza os detalhes de um Exchange Traded Fund específico com base no ID fornecido.
Endpoint:
PUT /etf/{id}Exclui um Exchange Traded Fund específico com base no ID fornecido.
Endpoint:
DELETE /etf/{id}Retorna uma lista de todos os tipos de investimentos disponíveis.
Endpoint:
GET /assetsCria um novo investimento com base nos dados fornecidos.
Endpoint:
POST /assets/registerRespostas:
200: Registro bem-sucedidoExclui um investimento específico com base no ID fornecido.
Endpoint:
DELETE /assets/{id}Respostas:
200: Exclusão bem-sucedidaObtém todos os fundos imobiliários cadastrados.
Endpoint:
GET /refObtém os detalhes de um fundo imobiliário específico com base no ID.
Endpoint:
GET /ref/{id}Registra um novo fundo imobiliário com base nos dados fornecidos.
Endpoint:
POST /ref/registerAtualiza os detalhes de um fundo imobiliário específico com base no ID.
Endpoint:
PUT /ref/{id}Exclui um fundo imobiliário específico com base no ID.
Endpoint:
DELETE /ref/{id}Respostas:
200: Exclusão bem-sucedidaRetorna um array de objetos com todos os registros disponíveis.
Endpoint:
GET /stocksRetorna os detalhes de um registro específico com base no ID.
Endpoint:
GET /stocks/{id}Cria um novo registro com base nos dados fornecidos.
Endpoint:
POST /stocksCorpo da Solicitação (Request Body):
{
"symbol": "BBAS3",
"companyName": "Banco do Brasil SA",
"price": 56.97
}
Atualiza os detalhes de um registro específico com base no ID.
Endpoint:
PUT /stocks/{id}Corpo da Solicitação (Request Body):
{
"symbol": "BBAS3",
"companyName": "Banco do Brasil SA",
"price": 56.97
}
Exclui um registro específico com base no ID.
Endpoint:
DELETE /stocks/{id}Obtém todos os ativos.
Endpoint:
GET /treasuryObtém detalhes de um ativo específico com base no ID.
Endpoint:
GET /treasury/{id}Registra um novo ativo com base no dados fornecidos
Endpoint:
POST /treasury/registerAtualiza os detalhes de um ativo específico com base no ID.
Endpoint:
PUT /treasuryExclui um ativo específico com base no ID.
Endpoint:
DELETE /treasury/{id}Realiza o login de um usuário com base nas informações fornecidas.
Endpoint:
POST /user/loginRespostas:
200: Login bem-sucedido
400: Usuário não registrado
401: Credenciais inválidasRegistra um novo usuário com base nas informações fornecidas.
Endpoint:
POST /user/registerRespostas:
200: Cadastro bem-sucedida
409: Username já está em usoAtualiza as informações de um usuário específico com base no ID fornecido.
Endpoint:
PUT /user/{id}Respostas:
200: Atualização bem-sucedida
404: Usuário não encontradoExclui um usuário específico com base no ID fornecido.
Endpoint:
DELETE /user/{id}Respostas:
200: Exclusão bem-sucedida
404: Usuário não encontradoA coleção a seguir compreende todas as rotas configuradas, juntamente com seus testes de API correspondentes já implementados.
O Swagger é uma ferramenta de código aberto que permite documentar APIs de forma clara e interativa. Esta interface facilita a compreensão e integração com a Mandacaru Broker API.
http://localhost:8080/swagger-ui/index.html#/
Este repositório foi submetido a uma análise estática utilizando as ferramentas Checkstyle, SonarQube e SonarLint. Além disso, possui casos de teste implementados em testes unitários, organizados por classes, bem como um teste de integração que verifica as operações CRUD da API.
-
Clone o repositório:
git clone https://github.com/I-Lima/Mandacaru-Broker-API.git -
Importe o projeto em sua IDE preferida.
-
Para executar o banco de dados no Docker, utilize o comando a seguir:
docker-compose up -d
-
Execute o aplicativo Spring Boot.
-
Acesse a API em
http://localhost:8080.
- Java 11 ou superior
- Maven
- Banco de dados
- Docker
- Spring Boot
- Spring Data JPA
- Maven
- JUnit
- Mockito
- JaCoCo
- Checkstyle
- SonarQube
- SonarLint
- PostgresSQL
- Docker
- Docker Compose
Contribuições são bem-vindas!
Este projeto está licenciado sob a Licença MIT.

