This project designed to effectively send notifications to people in case of emergency
User Registration:
User can create an account to provide other people's contact information(email, phone number)Multiple Addition:
User can add large amount of people at once using .csv and .xlsxDifferent Templates:
The system allows to manage templates depending on the situationScalability:
The system is able to work with multiple instances distributing the load among them using Kafka.
All endpoints starts with
http://localhost:8080/
POST
auth/register
Registers a new userPOST
auth/token
Generates JWT token for userGET
auth/validate
Validates given JWT
GET
/recipient/get
Returns all recipients you have been createdGET
/recipient/get/{id}
Returns single recipient by ID only if you created themPOST
/recipient/create
Creates new recipientDELETE
/recipient/{id}
Deletes recipient by ID only if you created themPATCH
/recipient/{id}
Updates recipient by ID only if you created them
POST
/batch/save/csv
Saves all your recipients with providen .csv filePOST
/batch/save/xlsx
Saves all your recipients with providen .xlsx fileGET
/batch/get/csv
Returns all your recipients in .csv fileGET
/batch/get/xlsx
Returns all your recipients in .xlsx file
GET
/template/get
Returns all templatesGET
/template/get/{id}
Returns single template by IDPOST
/template/create
Creates new templateDELETE
/template/{id}
Deletes template by IDPATCH
/template/{id}
Updates template by ID
GET
/send/all/{template_id}
sends notifications to your recipients by phone number and email using given template ID (WIP)GET
/send/email/{template_id}
sends notifications to your recipients by email using given template IDGET
/send/phone/{template_id}
sends notifications to your recipients by phone number using given template ID (WIP)