How are we going to memorize gigantic, semantically meaningless passwords? It is to solve this pain that password managers emerged! With them, we only create a “master” password and all other passwords are kept secret! So when we need it, just remember the “master” password!
This project is a password manager API.
This Api can be used in two different ways: by cloning the project or by using your preferred client, such as Insomnia or Postman.
To clone the project, run the following command:
git clone https://github.com/kirodoras/pass
Then, navigate to the project folder and run the following command:
npm i -y
Finally, start the server:
npm run dev
You can now access the API's endpoints by navigating to http://localhost:5008/
or to the deployed URL https://app-pass-api.herokuapp.com/
.
Users /users
Notes /notes
- Create a note
/create
- Search all notes
/search
- Search a note
/search/:id
- Delete a note
/delete/:id
Wifis /wifis
- Create a network
/create
- Search all networks
/search
- Search a network
/search/:id
- Delete a network
/delete/:id
Credentials /credentials
- Create a credential
/create
- Search all credentials
/search
- Search a credential
/search/:id
- Delete a credential
/delete/:id
Cards /cards
- Create a card
/create
- Search all cards
/search
- Search a card
/search/:id
- Delete a card
/delete/:id
POST users/signup
- headers: {}
- body:{
"email": "test0@test.com",
"password": "0123456789"
}
POST users/signin
- headers: {}
- body:{
"email": "test0@test.com",
"password": "0123456789"
}
POST notes/create
- headers: {
"Authorization": Bearer [JWT-TOKEN]
}
- body:{
"note": "My note",
"tittle": "My tittle"
}
GET notes/search
- headers: {
"Authorization": Bearer [JWT-TOKEN]
}
- body:{
}
GET notes/search/:id
- headers: {
"Authorization": Bearer [JWT-TOKEN]
}
- body:{
}
DELETE notes/delete/:id
- headers: {
"Authorization": Bearer [JWT-TOKEN]
}
- body:{
}
POST wifis/create
- headers: {
"Authorization": Bearer [JWT-TOKEN]
}
- body:{
"network_name": "GVTXXXX",
"network_password": "1234",
"tittle": "My WIFI"
}
GET wifis/search/
- headers: {
"Authorization": Bearer [JWT-TOKEN]
}
- body:{
}
GET wifis/search/:id
- headers: {
"Authorization": Bearer [JWT-TOKEN]
}
- body:{
}
DELETE wifis/delete/:id
- headers: {
"Authorization": Bearer [JWT-TOKEN]
}
- body:{
}
POST credentials/create
- headers: {
"Authorization": Bearer [JWT-TOKEN]
}
- body:{
"url": "https://www.youtube.com/",
"url_user": "UseR",
"url_password": "password",
"tittle": "My Tittle"
}
GET credentials/search
- headers: {
"Authorization": Bearer [JWT-TOKEN]
}
- body:{
}
GET credentials/search/:id
- headers: {
"Authorization": Bearer [JWT-TOKEN]
}
- body:{
}
DELETE credentials/delete/:id
- headers: {
"Authorization": Bearer [JWT-TOKEN]
}
- body:{
}
POST cards/create
- headers: {
"Authorization": Bearer [JWT-TOKEN]
}
- body:{
"card_number": "5000400030001000",
"card_name": "João Santos",
"card_cvv": "321",
"card_expirate": "12/99",
"card_password": "1234",
"card_is_virtual": false,
"card_type": "BOTH",
"tittle": "Driven Bank"
}
GET cards/search
- headers: {
"Authorization": Bearer [JWT-TOKEN]
}
- body:{
}
GET cards/search/:id
- headers: {
"Authorization": Bearer [JWT-TOKEN]
}
- body:{
}
DELETE cards/delete/:id
- headers: {
"Authorization": Bearer [JWT-TOKEN]
}
- body:{
}