DrivenPass é um sistema de gerenciamento de senhas de cartões pessoais, informações de login de sites ou serviços e anotações livres em formato de texto.
- Cadastro e Login de usuários;
- Criação, busca e deleção de dados de cartões de crédito e débito;
- Criação, busca e deleção de dados de login em sites ou serviços;
- Criação, busca e deleção de anotações livres.
POST /signUp
Body | Type | Description |
---|---|---|
email |
string |
Required. Email do usuário |
password |
string |
Required. Senha com no mínimo 10 caracteres |
POST /signIn
Body | Type | Description |
---|---|---|
email |
string |
Required. Email do usuário |
password |
string |
Required. Senha do usuário |
{
"token": "jasonwebtoken (JWT)",
}
POST /card
Headers | Type | Description |
---|---|---|
Authentication |
string |
Required. Token |
Authorization format: Bearer jsonwebtoken
Body | Type | Description |
---|---|---|
userId |
number |
Required. Id do usuário |
cardName |
string |
Required. Nome do cartão |
number |
string |
Required. Número do cartão (4 conjuntos, com espaço entre eles, de 4 números) |
printedName |
string |
Required. Nome impresso no cartão |
securityCode |
string |
Required. Código de seguran do cartão, 3 números |
expirationDate |
date |
Required. Data de expiração do cartão, formato 'mm/aa' |
password |
string |
Required. Senha do cartão |
isVirtual |
boolean |
Required. Se o cartão é virtual ou não |
type |
string |
Required. Tipo de cartão; válido 'credit', 'debit' ou 'both' |
GET /cards/:userId
Headers | Type | Description |
---|---|---|
Authentication |
string |
Required. Token |
Authorization format: Bearer jsonwebtoken
[
{
"id": 1,
"userId": 1,
"cardName": "Nubank",
"number": "1111 2222 3333 4444",
"printedName": "Teste R Silva",
"securityCode": "123",
"expirationDate": "05/28",
"password": "1236",
"isVirtual": false,
"type": "credit"
},
{
"id": 2,
"userId": 1,
"cardName": "C6",
"number": "1234 5647 1598 4563",
"printedName": "Teste R Silva",
"securityCode": "852",
"expirationDate": "08/28",
"password": "1236",
"isVirtual": true,
"type": "both"
}
]
GET /card/:userId/:id
Headers | Type | Description |
---|---|---|
Authentication |
string |
Required. Token |
Authorization format: Bearer jsonwebtoken
{
"id": 1,
"userId": 1,
"cardName": "Nubank",
"number": "1111 2222 3333 4444",
"printedName": "Teste R Silva",
"securityCode": "123",
"expirationDate": "05/28",
"password": "1236",
"isVirtual": false,
"type": "credit"
}
DELETE /card/:userId/:id
Headers | Type | Description |
---|---|---|
Authentication |
string |
Required. Token |
Authorization format: Bearer jsonwebtoken
Card successfully deleted
POST /credential
Headers | Type | Description |
---|---|---|
Authentication |
string |
Required. Token |
Authorization format: Bearer jsonwebtoken
Body | Type | Description |
---|---|---|
userId |
number |
Required. Id do usuário |
credentialName |
string |
Required. Nome da credencial |
url |
string |
Required. Url do site |
userName |
string |
Required. Nome de usuário da credencial |
password |
string |
Required. Senha do credencial |
GET /credentials/:userId
Headers | Type | Description |
---|---|---|
Authentication |
string |
Required. Token |
Authorization format: Bearer jsonwebtoken
[
{
"id": 1,
"userId": 1,
"credentialName": "Facebook",
"url": "http://facebook.com",
"userName": "Letícia Gomez",
"decryptPassword": "senha123456"
},
{
"id": 2,
"userId": 1,
"credentialName": "Netflix",
"url": "http://netflix.com",
"userName": "Letícia Gomez",
"decryptPassword": "senha123456"
}
]
GET /credential/:userId/:id
Headers | Type | Description |
---|---|---|
Authentication |
string |
Required. Token |
Authorization format: Bearer jsonwebtoken
{
"id": 1,
"userId": 1,
"credentialName": "Facebook",
"url": "http://facebook.com",
"userName": "Letícia Gomez",
"decryptPassword": "senha123456"
}
DELETE /credential/:userId/:id
Headers | Type | Description |
---|---|---|
Authentication |
string |
Required. Token |
Authorization format: Bearer jsonwebtoken
Credential successfully deleted
POST /note
Headers | Type | Description |
---|---|---|
Authentication |
string |
Required. Token |
Authorization format: Bearer jsonwebtoken
Body | Type | Description |
---|---|---|
userId |
number |
Required. Id do usuário |
title |
string |
Required. Título da nota |
note |
string |
Required. Nota |
GET /notes/:userId
Headers | Type | Description |
---|---|---|
Authentication |
string |
Required. Token |
Authorization format: Bearer jsonwebtoken
[
{
"id": 1,
"userId": 1,
"title": "Título da anotação",
"note": "Anotações parte 1"
},
{
"id": 2,
"userId": 1,
"title": "Título da anotação 2",
"note": "Anotações parte 2"
}
]
GET /note/:userId/:id
Headers | Type | Description |
---|---|---|
Authentication |
string |
Required. Token |
Authorization format: Bearer jsonwebtoken
{
"id": 1,
"userId": 1,
"title": "Título da anotação",
"note": "Anotações parte 1"
}
DELETE /note/:userId/:id
Headers | Type | Description |
---|---|---|
Authentication |
string |
Required. Token |
Authorization format: Bearer jsonwebtoken
Note deleted successfully
Para executar este projeto, você precisará adicionar as seguintes variáveis de ambiente ao seu arquivo .env
DATABASE_URL = postgres://UserName:Password@Hostname:5432/DatabaseName
PORT = number #recommended:5000
TOKEN_SECRET_KEY = any string
TOKEN_EXPIRES_IN=1d
Clone o projecto
git clone https://github.com/Leticia-Pinheiro/DrivenPass_BackEnd
Vá para o diretório do projeto
cd DrivenPass_BackEnd/
Instale as dependências
npm install
Inicie o servidor
npm start
Letícia Gomez Pinheiro
Linkedin: https://www.linkedin.com/in/leticia-pinheiro-33354a1b6/
GitHub: https://github.com/Leticia-Pinheiro