This is a basic Node.js application backend that provides a REST API.
Node.js in the version 16.x
Yarn in the version 1.22.x
Mysql in the last version
yarn
rename the file 'nodemon.example.json' to 'nodemon.json' soon after setting it up with your local mysql connection.
yarn start
Our
yarn dev ( run the development mode )
GET /users
{
"response": [
{
"_id": "43ab0e1e-58b7-4348-ad0b-e14010daddd5",
"name": "Karlla Souzza",
"email": "karlla@karlla.com",
"password": "38795f946d1f3386ec68ad1b3af66768f4e0edd07446433c10ca9536bce77cd2",
"thumbnail": null,
"bio": null
},
...
],
"count": 1,
"error": false
}
POST /users
{
"name": "Karlla Souzza",
"email": "karlla@karlla.com",
"password": "Karlla1*"
}
{
"id": "43ab0e1e-58b7-4348-ad0b-e14010daddd5",
"error": false
}
GET /users/:id
GET /users/43ab0e1e-58b7-4348-ad0b-e14010daddd5
{
"response": [
{
"name": "Karlla Souzza",
"email": "karlla@karlla.com",
"thumbnail": null
}
],
"error": false
}
GET /users/:id
{
"message": "The id require non exists",
"error": true
}
GET /users/seach/:email
GET /users/seach/karlla@karlla.com
{
"response": [
{
"name": "karlla Souzza",
"email": "karlla@karlla.com"
}
],
"error": false
}
GET /users/seach/:email
{
"message": "The email require non exists",
"error": true
}
POST /login
{
"email": "karlla@karlla.com",
"password": "Karlla1*"
}
{
"_id": "43ab0e1e-58b7-4348-ad0b-e14010daddd5",
"error": false
}
GET /users/login
{
"message": "Error logging in",
"error": true
}
POST /users/upload
{
"upload": foto_perfil.png,
"id": "43ab0e1e-58b7-4348-ad0b-e14010daddd5"
}
{
"response": "Image loaded successfully",
"error": false
}
GET /users/:id/img
GET /users/43ab0e1e-58b7-4348-ad0b-e14010daddd5/img
Rendered image
PATCH /users/:id
GET /users/43ab0e1e-58b7-4348-ad0b-e14010daddd5
Rendered image
DELETE /users/:id
{
"response": "User deleted successfully",
"error": false
}
DELETE /users/:id
{
"message": "The id require non exists",
"error": true
}
GET /chats/:id
/chats/43ab0e1e-58b7-4348-ad0b-e14010daddd
{
"response": [
{
"_id": "4b5a9a3f-4d8d-4ac3-8472-8a071b378d89",
"status": "Pending",
"user_to": "a9c87413-4cb2-4810-be9f-38566059ba31",
"user_from": "ebf01b1f-e56e-4c42-969d-17a07bfd1e25"
},
...
],
"count": 1,
"error": false
}
GET /chats/requests/:id
/chats/requests/43ab0e1e-58b7-4348-ad0b-e14010daddd
{
"response": [
{
"_id": "4b5a9a3f-4d8d-4ac3-8472-8a071b378d89",
"status": "Pending",
"user_to": "a9c87413-4cb2-4810-be9f-38566059ba31",
"user_from": "ebf01b1f-e56e-4c42-969d-17a07bfd1e25"
}
],
"count": 1,
"error": false
}
POST /chats/pending
{
"userFrom": "ebf01b1f-e56e-4c42-969d-17a07bfd1e25",
"userTo": "a9c87413-4cb2-4810-be9f-38566059ba31"
}
{
"id": "ebc92217-c05e-4c3a-9d27-af9ee44f13d3",
"error": false
}
PATCH /chats/accepted
{
"id": "ebc92217-c05e-4c3a-9d27-af9ee44f13d3"
}
{
"response": "Chat Status Changed To Accepted",
"error": false
}
PATCH /chats/denied
{
"id": "ebc92217-c05e-4c3a-9d27-af9ee44f13d3"
}
{
"response": "Chat Status Changed To Denied",
"error": false
}
DELETE /chats/:id
/chats/ebc92217-c05e-4c3a-9d27-af9ee44f13d3
{
"response": "Chat Deleted Successfully",
"error": false
}
GET /messages/:chatId,:PerPage,:Page
/messages/4b5a9a3f-4d8d-4ac3-8472-8a071b378d89,10,0
{
"response": [
{
"_id": "7f1fac97-bc7a-4c94-b612-deb81de00bb3",
"chat_id": "4b5a9a3f-4d8d-4ac3-8472-8a071b378d89",
"content": "ola mundo",
"data_create": "2022-03-02T06:23:24.000Z",
"status": "Delivered",
"user_from_id": "ebf01b1f-e56e-4c42-969d-17a07bfd1e25",
"user_to_id": "a9c87413-4cb2-4810-be9f-38566059ba31"
}
],
"count": 1,
"error": false
}
POST /messages
{
"content": "ola mundo",
"chatId": "4b5a9a3f-4d8d-4ac3-8472-8a071b378d89"
}
{
"response": {
"id": "4990d471-6934-4cf2-9e79-3a098ead41d9",
"content": "ola mundo",
"status": "Delivered",
"dataCreated": "2022-03-02T03:32:19-03:00",
"chatId": "4b5a9a3f-4d8d-4ac3-8472-8a071b378d89",
"userTo": "a9c87413-4cb2-4810-be9f-38566059ba31",
"userFrom": "ebf01b1f-e56e-4c42-969d-17a07bfd1e25"
},
"error": false
}
PATCH /messages/notDisplayed
{
"id": "dac0fcb0-e03e-4a45-8db2-41f950d5b402"
}
{
"response": "Message Status Changed To Not Displayed",
"error": false
}
PATCH /messages/Displayed
{
"id": "dac0fcb0-e03e-4a45-8db2-41f950d5b402"
}
{
"response": "Message Status Changed To Displayed",
"error": false
}
DELETE /messages/:id,:messageId
/messages/ebf01b1f-e56e-4c42-969d-17a07bfd1e25,4990d471-6934-4cf2-9e79-3a098ead41d9
{
"response": "Message deleted successfully",
"error": false
}