Esta é uma API que tem como finalidade simular uma agenda de contatos de um usuário. A API permite o cadastro de um usuário novo e que esse usuário cadastre quantos contatos na sua agenda quiser.
- Node.js
- Typescript
- Express.js
- TypeORM
- PostgreSQL
Siga os passos abaixo para poder rodar a aplicação no seu servidor local:
-
Instale o Node.js
-
Rode o comando abaixo para instalar todas as dependencias:
npm install
- Crie um arquivo chamado
.env
na raiz do projeto, fora da pasta src e defina as variaveis de ambiente para se conectar ao seu banco de dados e sua chave secreta. certifique-se de ter criado anteriormente o banco de dados que vai ser utilizado.
DATABASE_URL= postgres://user:password@host:port/db
SECRET_KEY= string
- Agora execute o comando abaixo para rodar as migrações necessárias do projeto:
npm run typeorm migration:run -- -d ./src/data-source
- Rode o comando abaixo para iniciar o servidor:
npm run dev
Método | Endpoint | Responsabilidade | Autenticação |
---|---|---|---|
GET | /users/:id | buscar usuário por id | somente dono da conta |
POST | /users | cadastrar um usuário | qualquer usuário |
PATCH | /users/:id/ | atualizar informações do usuário | somente dono da conta |
DELETE | /users/:id/ | excluir usuário | somente dono da conta |
Método | Endpoint | Responsabilidade | Autenticação |
---|---|---|---|
POST | /login | iniciar sessão | somente usuário ja criado no banco |
Método | Endpoint | Responsabilidade | Autenticação |
---|---|---|---|
GET | /contacts | buscar todos contatos do usuário determinado | somente dono da conta |
POST | /contacts | cadastrar um contato para usuário determinado | somente dono da conta |
PATCH | /contacts/:id/ | atualizar informações do contato | somente dono da conta |
DELETE | /contacts/:id/ | excluir contato | somente dono da conta |