rejmann / challenge-api-controle-financeiro-lumen

Desafio de Back-end da Alura: Crie uma API Rest funcional focada em controle financeiro.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Desafio de Back-end da Alura

Crie uma API Rest funcional focada em controle financeiro.

Autor

Tecnologias

Back-end: Lumen e MySql

Server: Nginx

Devops: Docker

Instalação

Clone o repositório:

  git clone https://github.com/rejmann/challenge-api-controle-financeiro-lumen.git

Acesse o diretório e suba os containers:

  cd challenge-api-controle-financeiro-lumen
  docker compose up --build --remove-orphans

Acesse o container da aplicação com:

  docker exec -it -u $(id -u):$(id -g) app bash

Criar as tabelas e populando o banco de dados:

  php artisan migrate --seed

Referências da API

Url base:

  localhost:8989/api/

Cadastrando Usuário:

  POST /cadastrar
{
    "name": "Usuário",
    "email": "email@exemplo.com",
    "password": "Senha"
}
Parameter Type Description
name string required
email email required,unique
password password required,max:500

Gerando Access Token:

  POST /login
Parameter Type Description
email email required
password password required,max:500

Cadastrar Receitas ou Despesas:

  POST /receitas | POST /despesas
{
    "description": "Descrição da movimentação",
    "date": "11/01/2023",
    "value": 100,
    "type": "despesas"
}
Parameter Type Description
description string required,max:255
date date required,date
value integer required,integer
type password required,string
category password required,string (não obrigatório para receita)

Buscar Receitas ou Despesas:

  GET /receitas | GET /despesas

Buscar por ID, Receita ou Despesa específica:

  GET /receitas/{$id} | GET /despesas/{$id} 

Buscar Receitas ou Despesas por descrição:

  GET /receitas?descricao="sua_descricao" | GET /despesas?descricao="sua_descricao" 

Buscar Receitas ou Despesas por período:

  GET /receitas/{$ano}/{$mes} | GET /despesas/{$ano}/{$mes} 

Atualizar Receitas ou Despesas:

  PUT /receitas/{$id} | PUT /despesas/{$id} 
{
    "description": "Descrição da movimentação ATUALIZADA",
    "date": "11/01/2023",
    "value": 100,
}
Parameter Type Description
description string required,max:255
date date required,date
value integer required,integer

Excluindo Receitas ou Despesas:

  DELETE /receitas/{$id} | DELETE /despesas/{$id} 

About

Desafio de Back-end da Alura: Crie uma API Rest funcional focada em controle financeiro.


Languages

Language:PHP 97.7%Language:Dockerfile 1.7%Language:Shell 0.6%