Skip to content

Car registration API with built-in authentication system.

License

Notifications You must be signed in to change notification settings

amorimcode/CarAPI

Repository files navigation


Logo

CarAPI - Node.js

Docker, JavaScript, Morgan, Mongoose, Bcrypt, Yup, Jsonwebtoken

Descrição

API criada utilizando Node.js API para gerenciar (incluir, excluir, editar e consultar) um cadastro simplificado de carros.

Requisitos:

  • nodejs
  • docker
  • git

Instruções

Iniciar projeto

  1. Clone o repositório (certifique-se que tenha o Git instalado)
git clone https://github.com/amorimcode/CarAPI
  1. Entre no diretório da pasta clonada

  2. Instale as dependencias

npm install
  1. Inicie o docker-compose (certifique-se que tenha o Docker instalado)
docker-compose up -d
  1. Para iniciar a aplicação utilize
npm start

ou se preferir utilize o yarn

yarn start

Requisições

A porta está padronizada 8080

Para facilitar, configurei uma Collection com exemplos de requisições prontas para softwares API Client. Sugiro o Insomnia.

Logo

  • Add User: Rota para registrar um usuário. Apenas usuários registrados receberão token de autênticação para utilizar as features da API.

    http://localhost:8080/user

    Utilize um JSON no corpo da requisição. Exemplo:

    {
      "name": "Bruno Amorim",
      "email": "bruno.amorim@teste.com",
      "password": "123456"
    }
  • Login: Rota utilizada para fazer login de um usuário. http://localhost:8080/login Utilize um JSON no corpo da requisição. Exemplo:

    {
      "email": "bruno.amorim@teste.com",
      "password": "123456"
    }

    A API retornará um Bearer Token de autênticação, todas as próximas rotas precisarão dele.

  • Get Users: (insira o bearer token) Rota que retorna todos os usuários cadastrados no banco. http://localhost:8080/user

  • Add: (insira o bearer token) Rota utilizada para adicionar carros ao banco. http://localhost:8080/car

    Utilize um JSON no corpo da requisição. Exemplo com todos os atributos:

    {
      "name": "Onix",
      "brand": "Chevrolet",
      "model": "Onix Plus 1.0T AT",
      "year": "2021",
      "fuel": "Flex",
      "color": "Prata",
      "price": 68300
    }
  • Update Car: (insira o bearer token) Rota utilizada para modificar dados em um carro do banco através do ID. http://localhost:8080/car/id-do-carro

    Utilize um JSON no corpo da requisição com os dados que deseja alterar. Exemplo:

    {
      "brand": "Chevrolet",
      "fuel": "Flex",
      "color": "Branco",
      "price": 69000
    }
  • Delete Car: (insira o bearer token) Rota utilizada para remover carros do banco através do ID. http://localhost:8080/car/id-do-carro

  • Find Car: (insira o bearer token) Rota utilizada para encontrar um carro do banco através do ID. http://localhost:8080/car/id-do-carro

  • Find All Cars: (insira o bearer token) Rota que retorna todos os carros do banco. http://localhost:8080/car

Licença

Licença MIT.

About

Car registration API with built-in authentication system.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages