Este é o repositório da API de Contas Bancárias, uma aplicação que oferece funcionalidades para criar, listar, atualizar, excluir, depositar, sacar, transferir, verificar saldo e obter extratos de contas bancárias. A API foi desenvolvida em Node.js e utiliza o framework Express.
Antes de usar a API de Contas Bancárias, certifique-se de ter os seguintes requisitos instalados em sua máquina:
- Node.js
Siga as instruções abaixo para configurar e iniciar a API:
- Clone o repositório para a sua máquina:
git clone https://github.com/seu-usuario/seu-repositorio.git
- Acesse o diretório do projeto
cd seu-repositorio
- Instale as dependências necessárias:
npm install
Para utilizar a API de Contas Bancárias, siga os passos de instalação e execute o servidor com o comando npm start. A API estará disponível em http://localhost:3000
.
A API oferece as seguintes rotas e funcionalidades:
GET /contas
- Descrição: Retorna a lista de todas as contas bancárias cadastradas.
- Resposta de Exemplo:
[
{
"numero_conta": "12345",
"saldo": 1000.0,
"usuario": {
"nome": "João",
"cpf": "123.456.789-00",
"data_nascimento": "1990-01-01",
"telefone": "(12) 3456-7890",
"email": "joao@example.com",
"senha": "senha123"
}
},
// ...
]
POST /contas Descrição: Cria uma nova conta bancária. Corpo da Requisição (JSON):
{
"nome": "Maria",
"cpf": "987.654.321-00",
"data_nascimento": "1995-05-05",
"telefone": "(11) 9876-5432",
"email": "maria@example.com",
"senha": "senha456"
}
- Resposta de Sucesso (Status 204 - No Content)
PUT /contas/:numeroConta
- Descrição: Atualiza os dados de uma conta bancária existente.
- Parâmetros da URL:
numeroConta
(Número da Conta) - Corpo da Requisição (JSON):
{ "nome": "Maria Silva", "cpf": "987.654.321-00", "data_nascimento": "1995-05-05", "telefone": "(11) 9876-5432", "email": "maria@example.com", "senha": "novasenha123" }
- Resposta de Sucesso (Status 204 - No Content)
DELETE /contas/:numeroConta
- Descrição: Exclui uma conta bancária existente.
- Parâmetros da URL:
numeroConta
(Número da Conta) - Resposta de Sucesso (Status 204 - No Content)
POST /depositar
- Descrição: Realiza um depósito em uma conta bancária.
- Corpo da Requisição (JSON):
{
"numero_conta": "12345",
"valor": 500.0
}
- Resposta de Sucesso (Status 204 - No Content)
POST /sacar
- Descrição: Realiza um saque de uma conta bancária
- Corpo da Requisição (JSON):
{
"numero_conta": "12345",
"valor": 200.0,
"senha": "senha123"
}
- Resposta de Sucesso (Status 204 - No Content)
POST /transferir
- Descrição: Realiza uma transferência entre duas contas bancárias.
- Corpo da Requisição (JSON):
{
"numero_conta_origem": "12345",
"numero_conta_destino": "54321",
"valor": 300.0,
"senha": "senha123"
}
- Resposta de Sucesso (Status 204 - No Content)
GET /saldo
- Descrição: Retorna o saldo de uma conta bancária.
- Parâmetros da Consulta (Query):
numero_conta
(Número da Conta)senha
(Senha da Conta)
- Resposta de Sucesso:
{
"saldo": 800.0
}
GET /extrato
- Descrição: Retorna o extrato de uma conta bancária, incluindo saques, depósitos e transferências.
- Parâmetros da Consulta (Query):
numero_conta
(Número da Conta)senha
(Senha da Conta)
- Resposta de Sucesso:
{
"saques": [
{
"data": "2023-09-21 14:30:00",
"numero_conta": "12345",
"valor": 200.0
}
],
"depositos": [
{
"data": "2023-09-20 10:15:00",
"numero_conta": "12345",
"valor": 500.0
}
],
"transferencias": [
{
"data": "2023-09-19 16:45:00",
"numero_conta_origem": "12345",
"numero_conta_destino":
Contribuições são bem-vindas! Se você encontrar bugs, problemas de segurança ou melhorias que possam ser feitas nesta API, sinta-se à vontade para criar issues ou enviar pull requests.