API Reference

BUDGETEE all API routes which are used in the system are stated here. Basically API references are divided into 4 modules.

  • Authentication API routes
  • Budgetee API routes
  • Budget Guide API routes
  • System Administrator API routes
System has 3 basic user types.
  • Tourist
  • Admin
  • System Administrator

Authentication API routes are public routes. Those can used to register as new customer & all user types login requests.

Client API routes will be used when client is authenticated to the system. These routes work with only valid API Token. API token is created when tourist is logged in (Authentication). Tourist user type tokens are not eligible to access other routes.

System Admininistrator routes are only accessible with valid Admin API token. Other user type tokens are not eligible to access admin routes. Admin routes are secured & guarded.

Public API routes will be used for public api calls. These routes no need an API Token.

https://budgetee-api.efito.xyz

Authentication

All authentication related API routes are explained here.

Login With Facebook

Both tourist & tour guide user types can authenticate with Facebook. This is same request for both Login & SignUp.

POST /api/public/login/facebook
Request
{
  "email" : "tour_guide@tourapp.com",
  "facebookId" : "1d5we",
  "medium": "FACEBOOK"
  "role": "role"
  "name": "name"
}
Response
{
  "success": true,
  "data": "generated_token",
  "message": "Successfully LoggedIn!"
}

Login With Apple

Both tourist & tour guide user types can authenticate with Apple. This is same request for both Login & SignUp.

POST /api/public/authenticate/apple
Request
{
  "email" : "tour_guide@tourapp.com",
  "appleId" : "1d5we",
  "medium": "APPLE"
  "role": "role"
  "name": "name"
}
Response
{
  "success": true,
  "data": "generated_token",
  "message": "Successfully LoggedIn!"
}

Confirm Email

Tourist & Tour Guide user types must validate their emails when signup. They will receive confirm email to their email address & they can click on it to verify email.

GET /api/public/token-validate/email/:recieved_token
Response
{
  "success": true,
  "data": {
   "_id": "613580cb80c20f30f0620fba",
   "email": "tour_guide@tourapp.com",
   "token": "generated_token",
  },
  "message": "Email Validation Succcessfull!"
}

Forgot Password

Request to modify password.

POST /api/public/forgot-password
Request
{
 "email": "tourist@tourapp.com"
}
Response
{
 "success": true,
 "data": null,
 "message": "Reset password link has been sent to your email!"
}

Reset Password Validate Token

Validate the request token sent to email to modify the password.

GET /api/public/token-validate/password/:recieved_token
Response
{
  "success": true,
  "data": {
   "_id": "613580cb80c20f30f0620fba",
   "email": "tour_guide@tourapp.com",
   "token": "generated_token",
  },
  "message": "Email Validation Succcessfull!"
}

Reset Password

Set new password after verifying token.

GET /api/auth/reset/password
Request
Response