POST /v1/auth/register – register user (with email verification)POST /v1/auth/login – login all rolesGET /v1/customer/profile – get user profile (JWT)/v1customer//profile - create user profilePUT /v1/customer/profile – update user profileGET /v1/customer/notifications – user notifications (broadcast + order)GET /v1/courier-pickup/tasks – list pickup tasksPATCH /v1/courier-pickup/tasks/:id – update pickup taskGET /v1/courier-pickup/earnings – earnings summaryPOST /v1/courier-pickup/withdrawPOST /v1/courier/trip-log – log trip GPSGET /v1/courier/trip-summary/:orderIdGET /v1/courier-delivery/orders – delivery ordersPATCH /v1/courier-delivery/orders/:productId – update delivery statusPOST /v1/courier-delivery/shipping-proof/:productId – upload proof deliveryGET /v1/courier-delivery/earnings – delivery earningsPOST /v1/courier-delivery/withdrawPOST /v1/courier-delivery/profilePOST /v1/courier-pickup/profileGET /v1/products – list products with filter (global)GET /v1/products/:slug – get a product (global)GET/v1/products/:slug/details - get a product detail (global)GET /v1/categories - list categories with filter (global)GET /v1/categories/:slug - get a category (global)GET /v1/faq - get faq (global)GET /v1/company-profile - get company profile information (global)GET /v1/vendors - get all vendors (global)GET /v1/vendors/:vendorId - get single vendor (global)GET /v1/products/:productId/variants – get product variant (global)GET /v1/products/:productId/product-attributes - get product attribute (global)GET /v1/products/:productId/reviews - get all product reviews (global)GET /v1/products/:productId/reviews/:productReviewId - get single product review (global)POST /v1/customer/products/:productId/reviews – submit product reviewPATCH /v1/customer/products/:productId/reviews/:productReviewId - edit product reviewDELETE /v1/customer/products/:productId/reviews/:productReviewId - delete product reviewGET /v1/vendors/:vendorId/reviews - get all vendor reviews (global)GET /v1/vendors/:vendorId/reviews/:vendorReviewId - get single vendor review (global)POST /v1/customer/vendors/:vendorId/reviews - submit vendor reviewPATCH /v1/customer/vendors/:vendorId/reviews/:vendorReviewId - edit vendor reviewDELETE /v1/customer/vendors/:vendorId/reviews/:vendorReviewId - delete product reviewGET /v1/couriers/:courierId/reviews?role - get all courier reviews || based on role (global)GET /v1/couriers/:courierId/reviews/:courierReviewId - get single courier review (global)POST /v1/customer/couriers/:courierId/reviews - submit courier reviewPATCH /v1/customer/couriers/:vendorId/reviews/:courierReviewId - edit courier reviewDELETE /v1/customer/couriers/:courierId/reviews/:courierReviewId - delete courier reviewGET /v1/customer/cart – list cart itemsPOST /v1/customer/cart – add item to cartPATCH /v1/customer/cart/:productId - edit cart productDELETE /v1/customer/cart/:productId – remove product from cartGET /v1/customer/wishlists - get all wishlistsPOST /v1/customer/wishlists - add wishlistDELETE /v1/customer/wishlists/:productId - delete a wishlistPOST /v1/superadmin/loginGET /v1/superadmin/users - get all usersPATCH /v1/superadmin/users/:userId/suspend - suspend userDELETE /v1/superadmin/users/:userId - delete userGET /v1/superadmin/users/address - get user addressGET /v1/superadmin/users/address/:userId - get single user addressPOST /v1/superadmin/vendors - regist a vendorGET /v1/superadmin/vendors/:vendorId/products - get all product in a specific vendorGET /v1/superadmin/vendors/:vendorId/product/:productId - get single product in a specific vendorPATCH /v1/superadmin/vendors/:storeId - update a specific vendor's store dataDELETE /v1/superadmin/vendors/:storeId – delete a specific vendor's storeGET /v1/superadmin/address/vendors – get all vendor addressesGET /v1/superadmin/address/vendors/:storeId – get a vendor's address by store IDDELETE /v1/superadmin/vendors/product/:productId – delete a product that belongs to a vendorPATCH /v1/superadmin/vendors/product/:productId – update a product that belongs to a vendorGET /v1/superadmin/couriers – get a list of all couriersGET /v1/superadmin/couriers/:courierId – get details of a specific courierGET /v1/superadmin/couriers/address – get addresses of all couriersGET /v1/superadmin/couriers/address/:courierId – get address of a specific courierPOST /v1/superadmin/courier-pickup register a new pickup courierPOST /v1/superadmin/courier-delivery – register a new delivery courierPATCH /v1/superadmin/courier-pickup/:id – update pickup courier informationPATCH /v1/superadmin/courier-delivery/:id – update delivery courier informationPATCH /v1/superadmin/internal-couriers/:internalCourierId/approve – approve internal courier registration requestPATCH /v1/superadmin/internal-couriers/:internalCourierId/reject – reject internal courier registration requestGET /v1/superadmin/couriers/trip-log/:courierId – get trip logs of a specific courierGET /v1/superadmin/couriers/summary/:courierId – get delivery summary of a specific courierPOST /v1/customer/checkout – checkout cart (multi-toko)GET /v1/customer/orders – list user ordersGET /v1/customer/orders/:orderId – order detailGET /v1/customer/orders/:orderId/store-orders – split order per tokoPOST /v1/customer/orders/address - lokasi penerimaan barangPOST /v1/superadmin/messages/broadcastGET /v1/broadcastsPATCH /v1/broadcasts/:id/readPOST /v1/superadmin/faqGET /v1/superadmin/categoriesGET /v1/superadmin/sub-categoryGET /v1/superadmin/categories/:categoryIdGET /v1/superadmin/sub-category/:subCategoryIdPOST /v1/superadmin/categoriesPOST /v1/superadmin/sub-categoryPOST /v1/superadmin/sub-sub-categoryPUT /v1/superadmin/categories/:categoryIdPUT /v1/superadmin/sub-sub-category/:subSubCategoryIdDELETE /v1/superadmin/categories/:categoryIdDELETE /v1/superadmin/sub-category/:subCategoryIdDELETE /v1/superadmin/sub-sub-category/:subSubCategoryIdPOST /v1/superadmin/commission-settingsGET /v1/superadmin/commission-settingsGET /v1/superadmin/earningsPOST /v1/superadmin/withdrawGET /superadmin/analytics – transaction overviewGET /v1/superadmin/shipping-centers – list shipping centerGET /v1/superadmin/shipping-centers/:shippingCenterId – detail shipping centerPOST /v1/superadmin/shipping-centers – tambah shipping centerPUT /v1/superadmin/shipping-centers/:shippingCenterId – update shipping centerPOST /v1/vendor/loginGET /v1/vendor/products – list productsPOST /v1/vendor/products – create productDELETE /v1/vendor/products/:productId – delete productGET /v1/vendor/products/:productId/details - list all product detailGET /v1/vendor/products/:productId/details/:detailId - get a product detailPOST /v1/vendor/products/:productId/details - create new detail productPATCH /v1/vendor/products/:productId/details/:detailId - edit detail productDELETE /v1/vendor/products/:productId/details/:detailId - delete detail productGET /v1/vendor/products/:productId/variants - get all product variantsPOST /v1/vendor/products/:productId/variants - add product variantPATCH /v1/vendor/products/:productId/variants/:variantId - edit product variantDELETE /v1/vendor/products/:productId/variants/:variantId - delete product variantGET /v1/vendor/products/:productId/attributes - get all product attributesGET /v1/vendor/products/:productId/attributes/:attributeId - get a product attribute by productIdPOST /v1/vendor/products/:productId/attributes - add product attributePATCH /v1/vendor/products/:productId/attributes/:attributeId - edit product attributeDELETE /v1/vendor/products/:productId/attributes/:attributeId - delete product attributeGET /v1/vendor/orders – list store ordersGET /v1/vendor/orders/:orderId - get an orderPATCH /v1/vendor/orders/:orderId/status - change order statusGET /v1/vendor/notifications – notificationsGET /v1/vendor/earnings – earnings summaryGET /v1/vendor/withdrawalsGET /v1/vendor/withdrawls/:withdrawalIdPOST /v1/vendor/withdrawals – request withdrawGET /v1/vendor/internal-couriers - get all internal couriersGET /v1/vendor/internal-couriers/courierId - get detail of internal courierPOST /v1/vendor/internal-couriers – register internal couriersPATCH /v1/vendor/settings/profile - data toko (nama toko, jam buka, jam tutup, lokasi, dll) - edit vendor profileGET /v1/vendor/pickup-couriers - get all pick couriersGET /v1/vendor/pickup-couriers/:pickupCourierId - get a pick couriersGET /v1/vendor/pickup-couriers/:orderShimpentId/pickup-courier - get order shipment by pickup courierGET /v1/vendor/pickup-couriers/:pickupCourierId/orders - get pickup courier ordersPOST /v1/vendor/pickup-couriers/:pickupCourierId/assign - assign a pick courier for deliver to shipping centerGET /v1/regions/countriesGET /v1/regions/provinces?countryId=...GET /v1/regions/regencies?provinceId=...GET /v1/regions/districts?regencyId=...GET /v1/regions/villages?districtId=...GET /v1/commissions – user commissionsPOST /v1/withdraw-request – request withdrawGET /v1/payouts – list payoutsGET /v1/payouts/:id/history – payout history detailGET /v1/transit-inventories – list data transitGET /v1/transit-inventories/:transitId – detail data transitPOST /v1/transit-inventories – input data transit (by courier)PATCH /v1/transit-inventories/:id/verify – verifikasi transit oleh super adminPATCH /v1/transit-inventories/:id/depart – update waktu keluarPATCH /v1/transit-inventories/:id/status – ubah status transitGET /v1/transit-inventories/store/:storeId – list data transit milik toko