Routes & API Hooks
Backoffice route map
| Module | Routes | API/service |
|---|---|---|
| Login | /login | Auth0 / NextAuth |
| Booking | /booking, /booking/[id], /booking/edit/[id] | booking-service/bookings, catalog-service/public/*, payment-service/* |
| Customer | /customer, /customer/[id] | user-service/customers, groups, tiers, activation history |
| Refund | /refund, /refund/[id] | booking-service/refunds |
| Car | /car, /car/[id], /car/edit/[id] | catalog-service/cars, image upload |
| Promotion | /promotion, /promotion/[id], /promotion/edit/[id] | catalog-service/promotions, upload/sort |
| Add-on | /add-on, /add-on/[id], /add-on/edit/[id] | catalog-service/add-ons, options, sort |
| Fuel | /fuel | catalog-service/fuels |
| OWR | /one-way-rental, create/edit/detail | catalog-service/oneway-rentals |
| Branch | /branch, detail/edit | catalog-service/branches, image upload |
| Term & Policy | /term-and-policy/for-register, /for-booking | User register policies, Booking term policies |
| User | /user, create/edit/detail | user-service/users, roles |
| Role | /role, create/edit/detail | user-service/roles |
| My Profile | /my-profile, edit | user-service/users/me |
Customer Web route map
| Module | Routes | API/service |
|---|---|---|
| Home/Search | /, /search-result | catalog-service/public/search, branches, search attributes |
| Booking create | /booking | public add-ons, booking policies, create booking, payment initiate |
| Booking detail/manage | /booking/[id], /my-bookings, /booking/manage | booking-service/customer-bookings, booking-service/bookings |
| Booking edit | /booking/edit/[id] | update booking, restart payment, edit refund |
| Payment result | /booking/payment-success/[id] | booking/payment status |
| Terms/privacy | /booking/term-condition/[slug], /booking/privacy-policy/[slug] | booking public policy endpoints |
| Login | /login | passwordless, social, callback, userinfo |
| Profile | /profile | user-service/me/profile (get profile, update info/email/phone, verify OTP) |
| Branches | /branches | public branches list |
| Promotions | /promotions | public promotions |
| Contact us | /about/contact-us | user-service/public/contact-us |
Hook/API map ที่สำคัญ
| Hook/Area | Endpoint |
|---|---|
post-public-search | POST /catalog-service/public/search |
post-public-request-car | POST /catalog-service/public/request-car |
get-public-branches | GET /catalog-service/public/branches |
get-public-search-attributes | GET /catalog-service/public/search-attributes |
get-public-add-ons | GET /catalog-service/public/add-ons |
post-public-booking | POST /booking-service/public/booking |
post-public-booking-member | POST /booking-service/customer-bookings |
put-booking-by-id | PUT /booking-service/bookings/{id} |
put-booking-id | PUT /booking-service/customer-bookings/{id} |
post-payments-initiate | POST /payment-service/public/payments/initiate |
post-payments-initiate-member | POST /payment-service/payments/initiate |
use-payment-subscribe | GET /payment-service/payments/{transactionId}/subscribe |
get-contact / post-contact | GET/PUT /user-service/me/contact |
use-get-profile | GET /user-service/me/profile |
use-update-personal-info | PUT /user-service/me/personal-info (รวมฟิลด์ใบขับขี่ DriverLicenseNumber, DriverLicenseExpiry) |
use-update-email | PUT /user-service/me/email |
use-update-phone | PUT /user-service/me/phone |
use-check-email-availability | GET /user-service/me/email/check |
use-check-phone-availability | GET /user-service/me/phone/check |
register-policy-consent-api | GET /user-service/me/register-policies/consent, POST /me/accept-register-policies |
Image handling
| Use case | Endpoint |
|---|---|
| Car image upload | /api/proxy/catalog-service/images/car/upload |
| Branch image upload | /api/proxy/catalog-service/images/branch/upload |
| Promotion image upload | /api/proxy/catalog-service/images/promotion/upload |
| Term/register image upload | /api/proxy/catalog-service/images/terms-and-policy-for-register/upload |
| Booking bank book upload | /api/proxy/booking-service/images/booking/upload |
| Signed URL | POST /images/signed-url หรือ POST /public/signed-url ตาม context |