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/login
Respostas:
200: Login bem-sucedido
400: Credenciais inválidas
401: Usuário não registrado
Efetua o registro no sistema.
Endpoint:
POST /auth/register
Respostas:
200: Registro bem-sucedido
409: Usuário já registrado
Exclui o registro no sistema.
Endpoint:
DELETE /auth/{id}
Respostas:
200: Exclusão bem-sucedida
Retorna todos os Exchange Traded Funds disponíveis.
Endpoint:
GET /etf
Retorna 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/register
Atualiza 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 /assets
Cria um novo investimento com base nos dados fornecidos.
Endpoint:
POST /assets/register
Respostas:
200: Registro bem-sucedido
Exclui um investimento específico com base no ID fornecido.
Endpoint:
DELETE /assets/{id}
Respostas:
200: Exclusão bem-sucedida
Obtém todos os fundos imobiliários cadastrados.
Endpoint:
GET /ref
Obté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/register
Atualiza 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-sucedida
Retorna um array de objetos com todos os registros disponíveis.
Endpoint:
GET /stocks
Retorna 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 /stocks
Corpo 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 /treasury
Obté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/register
Atualiza os detalhes de um ativo específico com base no ID.
Endpoint:
PUT /treasury
Exclui 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/login
Respostas:
200: Login bem-sucedido
400: Usuário não registrado
401: Credenciais inválidas
Registra um novo usuário com base nas informações fornecidas.
Endpoint:
POST /user/register
Respostas:
200: Cadastro bem-sucedida
409: Username já está em uso
Atualiza 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 encontrado
Exclui 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 encontrado
A 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.