/auth route:

// Request: 
// send in req.body

{
  "email": "[email protected]",
  "password": "12345678"
}

// Response:

{
  "success": true,
  "message": "User created successfully",
  "userID": 2
}

// non-protected route
// comment out route after creating user(s): not to be used in client

--POST auth/login

// Request: 
// send in req.body

{
  "email": "[email protected]",
  "password": "12345678"
}

// Response:

{
  "success": true,
  "message": "Login successful",
  "user": {
    "id": 2
  },
  "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6MiwiaWF0IjoxNzE3NTE1NzgyLCJleHAiOjE3MTc1MTU4NDJ9.8s9wehOxcsPRYHzYmwttWwZrB-h1XK1ae3rhD9r6FYU",
  "refreshToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOjIsImlhdCI6MTcxNzUxNTc4MiwiZXhwIjoxNzE3NjAyMTgyfQ.tULUORzElsynZrqevbxd_XCH_7C0zDoUw65XYmAuxXw"
}

// non-protected route

--POST /auth/refresh

// Request: 
// send in req.body

{
  "refreshToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOjIsImlhdCI6MTcxNzUxNTkwNiwiZXhwIjoxNzE3NjAyMzA2fQ.rcZO0ORJQhWoRpPt4rWjp4qQ9z_LGWRa3-DRt4qwKBU"
}

// Response:

{
  "success": true,
  "message": "Token refreshed successfully",
  "accessToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpYXQiOjE3MTc1MTU5NzMsImV4cCI6MTcxNzUxNjg3M30.9OSxYomby9mlo7BIPKPdmdXVtNPYPke_qQo5amnkHe4"
}

// requires refresh token from client
// accessToken sent to replace expired token on client

--GET /auth/getsignedURL

// Request: 
<http://localhost:8080/api/auth/getsignedURL?dirname=images>

// dirname needs to be paased in or else will be posting to undefined folder

// headers require authorization and token pair

// Response:

{
  "url": "<https://amitha-hmua-images.s3.ca-central-1.amazonaws.com/images/ea13debd-3342-479c-9a86-a5d9b39e0011.jpeg?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Credential=AKIAZQ3DUXDHKB4IELP2%2F20240604%2Fca-central-1%2Fs3%2Faws4_request&X-Amz-Date=20240604T155537Z&X-Amz-Expires=60&X-Amz-Signature=3cb1170367f416330046057f63af47328d7b0d38ec391404e9a9e105a430ac12&X-Amz-SignedHeaders=host&x-id=PutObject>"
}

// requires token from client
// url to be used for posting to aws bucket