diff --git a/Get Api's.txt b/Get Api's.txt
deleted file mode 100644
index ca70c6e..0000000
--- a/Get Api's.txt
+++ /dev/null
@@ -1,184 +0,0 @@
-๐ค Users & Authorization GET APIs
-http
-
-
-# Get all users (Web)
-https://fiesta.nearle.app/live/api/v1/web/users/getallusers?roleid=2&tenantid=8&pageno=1&pagesize=10&keyword=john
-# Get a specific user profile by ID (Web)
-https://fiesta.nearle.app/live/api/v1/web/users/getusers?userid=12
-# Get a specific user profile by ID (Mobile)
-https://fiesta.nearle.app/live/api/v1/mob/users/getusers?userid=15
-๐ฅ Customer Management GET APIs
-http
-
-
-# Fetch customer profile by ID or Contact (Mobile)
-https://fiesta.nearle.app/live/api/v1/mob/customers/getbyid?customerid=4082&contactno=9876543210
-# Get customer saved address locations (Mobile)
-https://fiesta.nearle.app/live/api/v1/mob/customers/getcustomerlocation?customerid=4082
-# Get customer logged support requests (Mobile)
-https://fiesta.nearle.app/live/api/v1/mob/customers/getcustomerrequests?customerid=4082&pageno=1&pagesize=10
-# Search customer names under a tenant (Mobile)
-https://fiesta.nearle.app/live/api/v1/mob/customers/search?keyword=Jane&tenantid=8
-# Retrieve customers linked to a tenant location (Mobile)
-https://fiesta.nearle.app/live/api/v1/mob/customers/gettenantcustomers?tenantid=8&locationid=2&pageno=1&pagesize=10
-# Retrieve merchant customers list (Web)
-https://fiesta.nearle.app/live/api/v1/web/customers/gettenantcustomers?tenantid=8&locationid=2&pageno=1&pagesize=10&keyword=jane
-๐ฆ Product & Catalog GET APIs
-http
-
-
-# Get product subcategories (Web)
-https://fiesta.nearle.app/live/api/v1/web/products/getproductsubcategories?categoryid=2&tenantid=8
-# Get products stock counts (Web)
-https://fiesta.nearle.app/live/api/v1/web/products/getproductscount?tenantid=8&categoryid=2&subcategoryid=12&approve=1
-# Get all global categories (Web)
-https://fiesta.nearle.app/live/api/v1/web/products/getproductcategories
-# Get specific product variants (Web)
-https://fiesta.nearle.app/live/api/v1/web/products/getproductvariants?tenantid=8&subcategoryid=12
-# Get master catalog listings (Web)
-https://fiesta.nearle.app/live/api/v1/web/products/getcatalougeproducts?tenantid=8&locationid=2&subcategoryid=12&keyword=&pageno=1&pagesize=10
-# Get live stocks catalog (Web)
-https://fiesta.nearle.app/live/api/v1/web/products/getproductstocks?tenantid=8&locationid=2
-# Get dynamic stock statement ledger (Web)
-https://fiesta.nearle.app/live/api/v1/web/products/getstockstatement?tenantid=8&locationid=2&subcategoryid=12&pageno=1&pagesize=10&keyword=
-# Get outlet geofenced inventory (Web)
-https://fiesta.nearle.app/live/api/v1/web/products/getlocationproducts?tenantid=8&locationid=2&subcategoryid=12&pageno=1&pagesize=10
-# Get outlet category inventory summary (Web)
-https://fiesta.nearle.app/live/api/v1/web/products/getlocationproductsummary?tenantid=8&locationid=2
-# Master products search board (Web)
-https://fiesta.nearle.app/live/api/v1/web/products/getallproducts?tenantid=8&locationid=2&keyword=milk&pageno=1&pagesize=10
-# Get product details by variant ID (Mobile)
-https://fiesta.nearle.app/live/api/v1/mob/products/getproductbyvariant?tenantid=8&variantid=4
-# Get product subcategories (Mobile)
-https://fiesta.nearle.app/live/api/v1/mob/products/getproductsubcategories?categoryid=2&tenantid=8
-# Search product catalog (Mobile)
-https://fiesta.nearle.app/live/api/v1/mob/products/getallproducts?keyword=milk&pageno=1&pagesize=10
-# Get structured home subcategory list (Mobile)
-https://fiesta.nearle.app/live/api/v1/mob/products/getproductsbysubcategory?categoryid=2&tenantid=8&locationid=2
-# Get mobile geofenced outlet products (Mobile)
-https://fiesta.nearle.app/live/api/v1/mob/products/getlocationproducts?tenantid=8&locationid=2&pageno=1&pagesize=20
-๐ Order Orchestration GET APIs
-http
-
-
-# Filtered dynamic orders board (Web)
-https://fiesta.nearle.app/live/api/v1/web/orders/getorders?tenantid=8&locationid=2&status=processing&pageno=1&pagesize=10
-# Tenant orders board (Web)
-https://fiesta.nearle.app/live/api/v1/web/orders/tenant/getorders?tenantid=8&locationid=2&status=processing&pageno=1&pagesize=10
-# Partner fleet orders board (Web)
-https://fiesta.nearle.app/live/api/v1/web/orders/partner/getorders?partnerid=1&status=processing&pageno=1&pagesize=10
-# Individual consumer invoice histories (Web)
-https://fiesta.nearle.app/live/api/v1/web/orders/customer/getorders?customerid=4082&status=delivered&pageno=1&pagesize=10
-# Operator/User orders board (Web)
-https://fiesta.nearle.app/live/api/v1/web/orders/user/getorders?appuserid=12&status=processing&pageno=1&pagesize=10
-# System Admin orders board (Web)
-https://fiesta.nearle.app/live/api/v1/web/orders/admin/getorders?applocationid=1&status=processing&pageno=1&pagesize=10
-# Get order dashboard stats summary (Web)
-https://fiesta.nearle.app/live/api/v1/web/orders/getordersummary?tenantid=8&fromdate=2026-05-01&todate=2026-05-20
-# Get location orders summary (Web)
-https://fiesta.nearle.app/live/api/v1/web/orders/getlocationsummary?tenantid=8
-# Get annual orders insights analytics (Web)
-https://fiesta.nearle.app/live/api/v1/web/orders/getorderinsight?tenantid=8
-# Get order detailed lines (Web)
-https://fiesta.nearle.app/live/api/v1/web/orders/getorderdetails?orderheaderid=2099
-# Get customer order history (Mobile)
-https://fiesta.nearle.app/live/api/v1/mob/orders/getcustomerorders?customerid=4082&pageno=1&pagesize=10
-# Get specific tenant store orders (Mobile)
-https://fiesta.nearle.app/live/api/v1/mob/orders/tenant/getorders?tenantid=8&locationid=2&pageno=1&pagesize=10
-# Get mobile order detailed lines (Mobile)
-https://fiesta.nearle.app/live/api/v1/mob/orders/getorderdetails?orderheaderid=2099
-๐๏ธ Partner & Rider GET APIs
-http
-
-
-# Get active riders (Web)
-https://fiesta.nearle.app/live/api/v1/web/partners/getriders?partnerid=1&applocationid=1&userid=12&tenantid=8
-# Get partner profiles (Web)
-https://fiesta.nearle.app/live/api/v1/web/partners/getpartners?partnerid=1&applocationid=1&userid=12
-# Get rider shifts (Web)
-https://fiesta.nearle.app/live/api/v1/web/partners/getridershifts?applocationid=1
-# Get location configurations (Web)
-https://fiesta.nearle.app/live/api/v1/web/partners/getlocations?userid=12&configid=1
-# Get rider log sheet (Web)
-https://fiesta.nearle.app/live/api/v1/web/partners/getriderlogs?partnerid=1&applocationid=1&fromdate=2026-05-20&todate=2026-05-20
-# Get partner profiles (Mobile)
-https://fiesta.nearle.app/live/api/v1/mob/partners/getpartners?partnerid=1&applocationid=1&userid=12
-# Get rider log sheet (Mobile)
-https://fiesta.nearle.app/live/api/v1/mob/partners/getriderlogs?partnerid=1&applocationid=1&fromdate=2026-05-20&todate=2026-05-20
-# Get rider operational info (Mobile)
-https://fiesta.nearle.app/live/api/v1/mob/partners/getriderinfo?userid=15
-# Get active riders list (Mobile)
-https://fiesta.nearle.app/live/api/v1/mob/partners/getriders?partnerid=1&applocationid=1&userid=15&tenantid=8
-๐ Logistics & Deliveries GET APIs
-http
-
-
-# Get deliveries performance summaries (Web)
-https://fiesta.nearle.app/live/api/v1/web/deliveries/deliverysummary?tenantid=8&partnerid=1&userid=12&applocationid=1&locationid=2&fromdate=2026-05-20&todate=2026-05-20
-# Get daily delivery insights (Web)
-https://fiesta.nearle.app/live/api/v1/web/deliveries/getdeliveryinsight?tenantid=8
-# Get location deliveries summary (Web)
-https://fiesta.nearle.app/live/api/v1/web/deliveries/getlocationsummary?tenantid=8
-# Get deliveries financial report summary (Web)
-https://fiesta.nearle.app/live/api/v1/web/deliveries/getreportsummary?tenantid=8&partnerid=1&userid=12&applocationid=1&fromdate=2026-05-01&todate=2026-05-20
-# Get fleet rider summary metrics (Web)
-https://fiesta.nearle.app/live/api/v1/web/deliveries/getridersummary?applocationid=1&partnerid=1&tenantid=8&fromdate=2026-05-20&todate=2026-05-20
-# Get master deliveries board (Web)
-https://fiesta.nearle.app/live/api/v1/web/deliveries/getdeliveries?tenantid=8&fromdate=2026-05-20&todate=2026-05-20
-# Get mobile dispatch summaries (Mobile)
-https://fiesta.nearle.app/live/api/v1/mob/deliveries/deliverysummary?userid=15&fromdate=2026-05-20&todate=2026-05-20
-# Get mobile deliveries board (Mobile)
-https://fiesta.nearle.app/live/api/v1/mob/deliveries/getdeliveries?userid=15&status=assigned
-# Fetch rider active shift deliveries queue (Mobile)
-https://fiesta.nearle.app/live/api/v1/mob/deliveries/getdeliveryqueues?userid=15&fromdate=2026-05-20&todate=2026-05-20
-๐ช Tenant & Outlet Location GET APIs
-http
-
-
-# Search registered tenants (Web)
-https://fiesta.nearle.app/live/api/v1/web/tenants/search?status=Active&keyword=Fresh
-# Search tenants by keyword (Web)
-https://fiesta.nearle.app/live/api/v1/web/tenants/searchbykeyword?keyword=daily
-# Get all active tenants catalog (Web)
-https://fiesta.nearle.app/live/api/v1/web/tenants/getalltenants?applocationid=1&status=Active&pageno=1&pagesize=10
-# Get outlet locations assigned to a tenant (Web)
-https://fiesta.nearle.app/live/api/v1/web/tenants/gettenantlocations?tenantid=8
-# Retrieve delivery time slots config (Mobile)
-https://fiesta.nearle.app/live/api/v1/mob/tenants/gettenantslot
-# Search tenants by keyword (Mobile)
-https://fiesta.nearle.app/live/api/v1/mob/tenants/searchbykeyword?keyword=grocery
-# Retrieve tenants associated with a customer (Mobile)
-https://fiesta.nearle.app/live/api/v1/mob/tenants/getcustomertenants?customerid=4082&tenant=0
-# Get outlet locations linked to a tenant (Mobile)
-https://fiesta.nearle.app/live/api/v1/mob/tenants/gettenantlocations?tenantid=8
-# Get logistics pricing slabs for a tenant (Mobile)
-https://fiesta.nearle.app/live/api/v1/mob/tenants/gettenantpricing?tenantid=8&applocationid=1
-# Get staff members under a tenant store (Mobile)
-https://fiesta.nearle.app/live/api/v1/mob/tenants/getstaffs?tenantid=8
-# Get tenant detailed profile info (Mobile)
-https://fiesta.nearle.app/live/api/v1/mob/tenants/gettenantinfo?tenantid=8&locationid=2
-โ๏ธ Utilities & General Configurations GET APIs
-http
-
-
-# Fetch application categories by tag (Web)
-https://fiesta.nearle.app/live/api/v1/web/utils/getapptypes?tag=customer
-# Resolve subcategories (Web)
-https://fiesta.nearle.app/live/api/v1/web/utils/getsubcategories?moduleid=1&categoryid=2
-# Fetch system active geofence details (Web)
-https://fiesta.nearle.app/live/api/v1/web/utils/getapplocations?applocationid=1
-# Fetch global system categories configurations (Web)
-https://fiesta.nearle.app/live/api/v1/web/utils/getappcategories
-# Get mobile geofence configuration details (Mobile)
-https://fiesta.nearle.app/live/api/v1/mob/utils/getapplocationconfig?applocationid=1
-# Get mobile active geofence details (Mobile)
-https://fiesta.nearle.app/live/api/v1/mob/utils/getapplocations?applocationid=1
-# Fetch mobile app types by tag (Mobile)
-https://fiesta.nearle.app/live/api/v1/mob/utils/getapptypes?tag=rider
-# Fetch global payment & geofence configs (Mobile)
-https://fiesta.nearle.app/live/api/v1/mob/utils/getappconfig?configid=1
-# Get mobile category subcategories list (Mobile)
-https://fiesta.nearle.app/live/api/v1/mob/utils/getsubcategories?moduleid=1&categoryid=2
-# Fetch mobile app categories configurations (Mobile)
-https://fiesta.nearle.app/live/api/v1/mob/utils/getappcategories
diff --git a/Post, put and delete Api's.txt b/Post, put and delete Api's.txt
deleted file mode 100644
index 3aa7077..0000000
--- a/Post, put and delete Api's.txt
+++ /dev/null
@@ -1,652 +0,0 @@
-1. User & Authentication APIs
-๐ป Web Portal
-POST Tenant Web Panel Login
-URL: https://fiesta.nearle.app/live/api/v1/web/users/tenant/weblogin
-Payload:
-json
-
-
-{
- "authname": "merchant_admin_01",
- "password": "PasswordSecurityHash99!"
-}
-POST General Application Login
-URL: https://fiesta.nearle.app/live/api/v1/web/users/applogin
-Payload:
-json
-
-
-{
- "authname": "system_operator",
- "password": "OperatorSafePasswordSecret",
- "deviceid": "device_uuid_8828b",
- "devicetype": "android"
-}
-POST Register New Web Staff Account
-URL: https://fiesta.nearle.app/live/api/v1/web/users/create
-Payload:
-json
-
-
-{
- "authname": "tenant_staff_steve",
- "firstname": "Steve",
- "lastname": "Rogers",
- "password": "SteveSecurePassword12",
- "email": "steve.rogers@merchant.com",
- "dialcode": "+61",
- "contactno": "412345678",
- "roleid": 3,
- "pin": 1234,
- "address": "100 Flinders St",
- "suburb": "Melbourne",
- "city": "Melbourne",
- "state": "VIC",
- "postcode": "3000",
- "tenantid": 8,
- "locationid": 2,
- "applocationid": 1,
- "status": "active"
-}
-PUT Update Web Staff User Details
-URL: https://fiesta.nearle.app/live/api/v1/web/users/update
-Payload:
-json
-
-
-{
- "userid": 15,
- "firstname": "Steve",
- "lastname": "Captain",
- "email": "steve.captain@merchant.com",
- "contactno": "412345678",
- "address": "200 Flinders St",
- "suburb": "Melbourne",
- "city": "Melbourne",
- "state": "VIC",
- "postcode": "3000",
- "status": "active"
-}
-๐ฑ Mobile App
-POST Rider/Merchant Mobile App Login
-URL: https://fiesta.nearle.app/live/api/v1/mob/users/tenant/login
-Payload:
-json
-
-
-{
- "authname": "rider_john_01",
- "password": "RiderSecretKey"
-}
-POST Create Mobile Staff User
-URL: https://fiesta.nearle.app/live/api/v1/mob/users/create
-Payload: (Uses the same schema as Web Register New Web Staff Account)
-PUT Update Mobile Staff Details
-URL: https://fiesta.nearle.app/live/api/v1/mob/users/update
-Payload: (Uses the same schema as Web Update Web Staff User Details)
-2. Customer Management APIs
-๐ฑ Mobile App
-POST Passwordless OTP Login (via Phone)
-URL: https://fiesta.nearle.app/live/api/v1/mob/customers/login
-Payload:
-json
-
-
-{
- "contactno": "0499888777"
-}
-POST Register Customer Account
-URL: https://fiesta.nearle.app/live/api/v1/mob/customers/create
-Payload:
-json
-
-
-{
- "firstname": "Jane",
- "lastname": "Smith",
- "profileimage": "https://storage.nearle.app/avatars/jane_smith.jpg",
- "gender": "Female",
- "dob": "1994-11-20",
- "dialcode": "+61",
- "contactno": "499888777",
- "email": "jane.smith@gmail.com",
- "deviceid": "uuid_7728b991a",
- "devicetype": "ios",
- "authmode": 1,
- "customertoken": "fcm_token_device_hash_xyz",
- "address": "456 Oak Avenue",
- "suburb": "Richmond",
- "city": "Melbourne",
- "state": "VIC",
- "postcode": "3121",
- "latitude": "-37.8212",
- "longitude": "144.9984",
- "applocationid": 1,
- "status": 1,
- "intro": "Regular subscriber of organic morning deliveries."
-}
-POST Save New Geofenced Location Address
-URL: https://fiesta.nearle.app/live/api/v1/mob/customers/createlocations
-Payload:
-json
-
-
-{
- "customerid": 4082,
- "address": "123 High Street",
- "suburb": "Prahran",
- "city": "Melbourne",
- "state": "VIC",
- "postcode": "3181",
- "latitude": "-37.8502",
- "longitude": "144.9924",
- "primaryaddress": 1,
- "status": 1
-}
-POST Log Customer Support Ticket Request
-URL: https://fiesta.nearle.app/live/api/v1/mob/customers/createcustomerrequest
-Payload:
-json
-
-
-{
- "customerid": 4082,
- "tenantid": 8,
- "apptypeid": 1,
- "locationid": 2,
- "subject": "Delay in Morning Milk Delivery",
- "remarks": "Order scheduled for 7:00 AM hasn't arrived.",
- "status": 1
-}
-PUT Update Customer Profile Details
-URL: https://fiesta.nearle.app/live/api/v1/mob/customers/update
-Payload:
-json
-
-
-{
- "customerid": 4082,
- "firstname": "Jane",
- "lastname": "Miller",
- "email": "jane.miller@gmail.com",
- "contactno": "499888777",
- "address": "789 Pine Road",
- "suburb": "Hawthorn",
- "city": "Melbourne",
- "state": "VIC",
- "postcode": "3122",
- "status": 1
-}
-3. Catalog & Product Inventory APIs
-๐ป Web Portal
-POST Add Multi-Product Stock Entry
-URL: https://fiesta.nearle.app/live/api/v1/web/products/createproductstock
-Payload:
-json
-
-
-[
- {
- "tenantid": 8,
- "locationid": 2,
- "productid": 105,
- "quantity": 150,
- "stocktype": "credit",
- "status": "active"
- },
- {
- "tenantid": 8,
- "locationid": 2,
- "productid": 109,
- "quantity": 80,
- "stocktype": "credit",
- "status": "active"
- }
-]
-POST Create Master Product Catalog Item
-URL: https://fiesta.nearle.app/live/api/v1/web/products/create
-Payload:
-json
-
-
-{
- "applocationid": 1,
- "tenantid": 8,
- "categoryid": 2,
- "subcategoryid": 12,
- "productname": "Fresh Cow Milk 1L",
- "productimage": "https://storage.nearle.app/products/cow_milk_1l.png",
- "productdesc": "Pure farm fresh cow milk pasteurized.",
- "productsku": "MILK-COW-1L",
- "productunit": "Litre",
- "unitvalue": "1",
- "productcost": 1.80,
- "retailprice": 3.50,
- "taxpercent": 5.00,
- "productstock": 100,
- "productstatus": "available",
- "approve": 1
-}
-POST Map Product to Specific Outlet Location
-URL: https://fiesta.nearle.app/live/api/v1/web/products/createproductlocation
-Payload:
-json
-
-
-[
- {
- "tenantid": 8,
- "locationid": 2,
- "productid": 105,
- "catlougeid": 1,
- "minquantity": 5,
- "maxquantity": 200,
- "price": 3.75,
- "status": "Active"
- }
-]
-POST Create Product Variant Metadata
-URL: https://fiesta.nearle.app/live/api/v1/web/products/createproductvariant
-Payload:
-json
-
-
-{
- "tenantid": 8,
- "variantname": "1.5 Liters Bottle",
- "categoryid": 2,
- "subcategoryid": 12,
- "status": "active"
-}
-PUT Update Master Product Details
-URL: https://fiesta.nearle.app/live/api/v1/web/products/update
-Payload:
-json
-
-
-{
- "productid": 105,
- "productname": "Organic Farm Cow Milk 1L",
- "productcost": 1.95,
- "retailprice": 3.75,
- "productstock": 120,
- "productstatus": "available"
-}
-PUT Update Product Outlet Constraints
-URL: https://fiesta.nearle.app/live/api/v1/web/products/updateproductlocation
-Payload:
-json
-
-
-{
- "productlocationid": 25,
- "tenantid": 8,
- "locationid": 2,
- "productid": 105,
- "minquantity": 10,
- "maxquantity": 150,
- "price": 3.99,
- "status": "Active"
-}
-DELETE Purge Master Product Catalog Entry
-URL: https://fiesta.nearle.app/live/api/v1/web/products/delete?productid=105
-Parameters:
-productid (int, required): Unique ID of the catalog item to be purged.
-๐ฑ Mobile App
-PUT Mobile Update Product Details
-URL: https://fiesta.nearle.app/live/api/v1/mob/products/update
-Payload: (Uses the same schema as Web Update Master Product Details)
-PUT Mobile Update Product Outlet Config
-URL: https://fiesta.nearle.app/live/api/v1/mob/products/updateproductlocation
-Payload: (Uses the same schema as Web Update Product Outlet Constraints)
-4. Order Orchestration APIs
-๐ป Web Portal
-POST Create New Web Order (Flat JSON Format)
-URL: https://fiesta.nearle.app/live/api/v1/web/orders/createorder
-Payload:
-json
-
-
-{
- "tenantid": 8,
- "locationid": 2,
- "applocationid": 1,
- "moduleid": 1,
- "customerid": 4082,
- "orderstatus": "pending",
- "deliverytype": "standard",
- "deliverytime": "2026-05-20 18:00:00",
- "pickupaddress": "Shop 4, Central Plaza, Melbourne",
- "pickuplat": "-37.8136",
- "pickuplong": "144.9631",
- "pickupcustomer": "Central Plaza Merchant",
- "pickupcontactno": "399887766",
- "deliveryaddress": "Apt 4B, Sunset Boulevard, Richmond",
- "deliverylat": "-37.8212",
- "deliverylong": "144.9984",
- "orderamount": 11.48,
- "taxamount": 1.10,
- "ordervalue": 12.58,
- "itemcount": 2,
- "paymenttype": 1,
- "paymentstatus": 0,
- "deliverycharge": 3.00,
- "ordernotes": "Please ring doorbell twice.",
- "items": [
- {
- "productid": 105,
- "productname": "Organic Whole Milk 1L",
- "orderqty": 2,
- "price": 3.99,
- "taxpercentage": 10.00,
- "taxamount": 0.80,
- "productsumprice": 7.98
- },
- {
- "productid": 109,
- "productname": "Salted Butter 250g",
- "orderqty": 1,
- "price": 3.50,
- "taxpercentage": 10.00,
- "taxamount": 0.35,
- "productsumprice": 3.50
- }
- ]
-}
-PUT Update Order Status & Financial Flag
-URL: https://fiesta.nearle.app/live/api/v1/web/orders/updateorder
-Payload:
-json
-
-
-{
- "orderheaderid": 2099,
- "orderstatus": "ready",
- "paymentstatus": 1,
- "remarks": "Order packed and waiting for rider assignment."
-}
-๐ฑ Mobile App
-POST Create Mobile Order (Wrapped JSON Format)
-URL: https://fiesta.nearle.app/live/api/v1/mob/orders/createorder
-Payload:
-json
-
-
-{
- "orders": {
- "tenantid": 8,
- "locationid": 2,
- "applocationid": 1,
- "moduleid": 1,
- "customerid": 4082,
- "orderstatus": "pending",
- "deliverytype": "standard",
- "deliverytime": "2026-05-20 18:00:00",
- "pickupaddress": "Shop 4, Central Plaza, Melbourne",
- "pickuplat": "-37.8136",
- "pickuplong": "144.9631",
- "pickupcustomer": "Central Plaza Merchant",
- "pickupcontactno": "399887766",
- "deliveryaddress": "Apt 4B, Sunset Boulevard, Richmond",
- "deliverylat": "-37.8212",
- "deliverylong": "144.9984",
- "orderamount": 11.48,
- "taxamount": 1.10,
- "ordervalue": 12.58,
- "itemcount": 2,
- "paymenttype": 1,
- "paymentstatus": 0,
- "deliverycharge": 3.00,
- "ordernotes": "Leave in parcel locker.",
- "items": [
- {
- "productid": 105,
- "productname": "Organic Whole Milk 1L",
- "orderqty": 2,
- "price": 3.99,
- "taxpercentage": 10.00,
- "taxamount": 0.80,
- "productsumprice": 7.98
- },
- {
- "productid": 109,
- "productname": "Salted Butter 250g",
- "orderqty": 1,
- "price": 3.50,
- "taxpercentage": 10.00,
- "taxamount": 0.35,
- "productsumprice": 3.50
- }
- ]
- }
-}
-PUT Mobile Update Order Status
-URL: https://fiesta.nearle.app/live/api/v1/mob/orders/updateorder
-Payload: (Uses the same schema as Web Update Order Status & Financial Flag)
-5. Delivery & Rider Logistics APIs
-๐ป Web Portal
-POST Initialize Logistics Delivery Dispatch (Assign Rider)
-URL: https://fiesta.nearle.app/live/api/v1/web/deliveries/createdeliveries
-Payload:
-json
-
-
-[
- {
- "orderheaderid": 2100,
- "applocationid": 1,
- "partnerid": 1,
- "tenantid": 8,
- "moduleid": 1,
- "locationid": 2,
- "userid": 15,
- "orderid": "ORD-19028-4",
- "deliverydate": "2026-05-20",
- "orderstatus": "assigned",
- "assigntime": "2026-05-20 12:10:00",
- "itemcount": 2,
- "orderamount": 12.58,
- "customerid": 4082,
- "pickupcustomer": "Central Merchant Warehouse",
- "pickupcontactno": "987654321",
- "pickuplocationid": 2,
- "pickupaddress": "Shop 4, Central Plaza, Melbourne",
- "pickuplat": "-37.8136",
- "pickuplon": "144.9631",
- "deliverycustomerid": 4082,
- "deliverylocationid": 554,
- "deliverycustomer": "Jane Smith",
- "deliverycontactno": "499888777",
- "deliveryaddress": "456 Oak Avenue, Richmond, VIC, 3121",
- "droplat": "-37.8212",
- "droplon": "144.9984",
- "deliverycharges": 3.00,
- "deliveryamt": 15.58,
- "deliverytype": "standard",
- "paymenttype": 1
- }
-]
-PUT Update Rider Pickup Status
-URL: https://fiesta.nearle.app/live/api/v1/web/deliveries/updatedelivery
-Payload:
-json
-
-
-{
- "deliveryid": 8871,
- "orderheaderid": 2100,
- "userid": 15,
- "orderstatus": "picked",
- "pickuptime": "2026-05-20 12:20:00",
- "riderslat": "-37.8140",
- "riderslon": "144.9640"
-}
-๐ฑ Mobile App
-POST Initialize Mobile Logistics Delivery
-URL: https://fiesta.nearle.app/live/api/v1/mob/deliveries/createdeliveries
-Payload: (Uses the same schema as Web Initialize Logistics Delivery Dispatch)
-PUT Rider Update Dispatch Status (Delivered & GPS Tracking)
-URL: https://fiesta.nearle.app/live/api/v1/mob/deliveries/updatedelivery
-Payload:
-json
-
-
-{
- "deliveryid": 8871,
- "orderheaderid": 2100,
- "userid": 15,
- "orderstatus": "delivered",
- "deliverytime": "2026-05-20 12:45:00",
- "riderslat": "-37.8210",
- "riderslon": "144.9980",
- "actualkms": "4.2",
- "feedback": "Handed over safely.",
- "smsdelivery": 1
-}
-6. Tenant & Location Configuration APIs
-๐ป Web Portal
-POST Link Customer Profile to Tenant Store
-URL: https://fiesta.nearle.app/live/api/v1/web/tenants/createtenantcustomer
-Payload:
-json
-
-
-{
- "moduleid": 1,
- "tenantid": 8,
- "locationid": 2,
- "customerid": 4082,
- "customerlocationid": 554,
- "status": 1
-}
-POST Create New Geofenced Store Location
-URL: https://fiesta.nearle.app/live/api/v1/web/tenants/createlocation
-Payload:
-json
-
-
-{
- "tenantid": 8,
- "applocationid": 1,
- "moduleid": 1,
- "locationname": "Hawthorn Daily Fresh Store",
- "email": "hawthorn.store@merchant.com",
- "contactno": "399443322",
- "latitude": "-37.8222",
- "longitude": "145.0384",
- "address": "12 Glenferrie Rd",
- "suburb": "Hawthorn",
- "city": "Melbourne",
- "state": "VIC",
- "postcode": "3122",
- "opentime": "07:00:00",
- "closetime": "22:00:00",
- "partnerid": 1,
- "deliveryradius": 5000,
- "deliverymins": 30,
- "cancelsecs": 60,
- "status": "Active"
-}
-POST Map Tenant Location Linkage Entry
-URL: https://fiesta.nearle.app/live/api/v1/web/tenants/createtenantlocation
-Payload: (Uses the same schema as Create New Geofenced Store Location)
-PUT Update Store Location Configurations
-URL: https://fiesta.nearle.app/live/api/v1/web/tenants/updatelocation
-Payload:
-json
-
-
-{
- "locationid": 2,
- "tenantid": 8,
- "applocationid": 1,
- "locationname": "Richmond Daily Fresh Store",
- "email": "richmond.store@merchant.com",
- "contactno": "399887766",
- "latitude": "-37.8212",
- "longitude": "144.9984",
- "address": "Shop 4, 100 Church St",
- "suburb": "Richmond",
- "city": "Melbourne",
- "state": "VIC",
- "postcode": "3121",
- "opentime": "07:00:00",
- "closetime": "22:00:00",
- "deliveryradius": 8000,
- "deliverymins": 45,
- "cancelsecs": 120,
- "status": "Active"
-}
-PUT Modify Tenant Location Linkage Config
-URL: https://fiesta.nearle.app/live/api/v1/web/tenants/updatetenantlocation
-Payload: (Uses the same schema as Update Store Location Configurations)
-๐ฑ Mobile App
-POST Mobile Link Customer Profile to Tenant Store
-URL: https://fiesta.nearle.app/live/api/v1/mob/tenants/createtenantcustomer
-Payload: (Uses the same schema as Web Link Customer Profile to Tenant Store)
-POST Mobile Create Geofenced Store Location
-URL: https://fiesta.nearle.app/live/api/v1/mob/tenants/createlocation
-Payload: (Uses the same schema as Web Create New Geofenced Store Location)
-POST Onboard/Create New Staff Member Account
-URL: https://fiesta.nearle.app/live/api/v1/mob/tenants/createstaff
-Payload: (Uses the same schema as Web Register New Web Staff Account)
-POST Onboard New Tenant & Admin Profile (Joint Creation)
-URL: https://fiesta.nearle.app/live/api/v1/mob/tenants/createtenantuser
-Payload:
-json
-
-
-{
- "tenantname": "Fresh Organic Greens",
- "configid": 1,
- "partnerid": 1,
- "moduleid": 1,
- "tenanttype": "Enterprise",
- "registrationno": "ABN-19028-299",
- "tenanttoken": "tenant_fcm_token_hash_value_xyz",
- "companyname": "Fresh Organic Greens Pty Ltd",
- "devicetype": "web",
- "firstname": "Arthur",
- "primaryemail": "arthur@organicgreens.com",
- "primarycontact": "488999000",
- "categoryid": 2,
- "subcategoryid": 12,
- "address": "400 Chapel St",
- "suburb": "South Yarra",
- "city": "Melbourne",
- "state": "VIC",
- "postcode": "3141",
- "latitude": "-37.8398",
- "longitude": "144.9953",
- "tenantimage": "https://storage.nearle.app/tenants/organic_greens.png",
- "tenantinfo": "Direct farm-to-table organic vegetables delivery provider.",
- "paymode1": 1,
- "paymode2": 1,
- "promotion": 0,
- "minorder": 15,
- "applocationid": 1,
- "approved": 1,
- "status": "Active",
- "tenantlocations": {
- "locationname": "South Yarra Main Warehouse",
- "email": "southyarra@organicgreens.com",
- "contactno": "488999000",
- "latitude": "-37.8398",
- "longitude": "144.9953",
- "address": "400 Chapel St",
- "suburb": "South Yarra",
- "city": "Melbourne",
- "state": "VIC",
- "postcode": "3141",
- "opentime": "06:00:00",
- "closetime": "21:00:00",
- "partnerid": 1,
- "deliveryradius": 6000,
- "deliverymins": 30,
- "cancelsecs": 90,
- "status": "Active"
- }
-}
-PUT Mobile Update Store Location Configurations
-URL: https://fiesta.nearle.app/live/api/v1/mob/tenants/updatelocation
-Payload: (Uses the same schema as Web Update Store Location Configurations)
diff --git a/Xpress_api_get_docs.md b/Xpress_api_get_docs.md
new file mode 100644
index 0000000..53f4403
--- /dev/null
+++ b/Xpress_api_get_docs.md
@@ -0,0 +1,450 @@
+# Nearle LiveSetup GET APIs Directory
+
+This document lists **all active GET APIs** registered under the `LiveSetup` routing function in the Nearle backend.
+
+* **Base URL**: `https://jupiter.nearle.app/`
+* **Namespace**: `/live/api/...`
+* **Format**: HTTP GET query parameters
+
+---
+
+## ๐ค Users & Authorization GET APIs
+http
+
+# Get a specific user profile by ID (Mobile/Client)
+https://jupiter.nearle.app/live/api/v1/users/getusers?userid=12
+
+# Get a specific user profile by Username (Mobile/Client)
+https://jupiter.nearle.app/live/api/v1/users/getusers?username=rider_joe
+
+# Get all users (V1)
+https://jupiter.nearle.app/live/api/v1/users/getallusers?roleid=2&tenantid=8&pageno=1&pagesize=10&keyword=john
+
+# Get all users (V2)
+https://jupiter.nearle.app/live/api/v2/users/getallusers?roleid=2&tenantid=8&pageno=1&pagesize=10&keyword=john
+
+---
+
+## ๐ฅ Customer Management GET APIs
+http
+
+# Fetch customer profile by ID (Mobile)
+https://jupiter.nearle.app/live/api/v1/customers/getbyid?customerid=4082
+
+# Fetch customer profile by Contact Number (Mobile)
+https://jupiter.nearle.app/live/api/v1/customers/getbyno?contactno=%2B61411222333
+
+# Retrieve customers linked to a tenant
+https://jupiter.nearle.app/live/api/v1/customers/getbytid?tenantid=8&pageno=1&pagesize=10
+
+# Retrieve customers linked to a tenant location/branch
+https://jupiter.nearle.app/live/api/v1/customers/gettenantcustomers?tenantid=8&pageno=1&pagesize=10
+
+# Get customer saved address locations (Mobile)
+https://jupiter.nearle.app/live/api/v1/customers/getcustomerlocation?customerid=4082
+
+# Retrieve customers linked to a general app location zone
+https://jupiter.nearle.app/live/api/v1/customers/getcustomersbyapplocation?applocationid=5
+
+# Retrieve all registered customers with paginated keywords
+https://jupiter.nearle.app/live/api/v1/customers/getallcustomers?pageno=1&pagesize=10&keyword=smith
+
+# Get customer counts and classifications summaries under a tenant
+https://jupiter.nearle.app/live/api/v1/customers/getcustomersummary?tenantid=8
+
+# Search customer names under a tenant
+https://jupiter.nearle.app/live/api/v1/customers/search?keyword=Jane&tenantid=8
+
+# Get customer logged support requests (Mobile)
+https://jupiter.nearle.app/live/api/v1/customers/getcustomerrequests?customerid=4082&pageno=1&pagesize=10
+
+---
+
+## ๐ฆ Products & Catalog GET APIs
+http
+
+# Retrieve all registered products with extensive filters
+https://jupiter.nearle.app/live/api/v1/products/getallproducts?categoryid=4&subcategoryid=14&productid=101&applocationid=5&tenantid=8&locationid=45&keyword=strawberry&productstatus=available&approve=approved&pageno=1&pagesize=10
+
+# Fetch detailed information of a single product (Mobile)
+https://jupiter.nearle.app/live/api/v1/products/getproductinfo?productid=101
+
+# List all general product categories (Mobile)
+https://jupiter.nearle.app/live/api/v1/products/getproductcategories
+
+# List product subcategories under a specific category and tenant
+https://jupiter.nearle.app/live/api/v1/products/getproductsubcategories?categoryid=4&tenantid=8
+
+# Get products grouped under subcategories
+https://jupiter.nearle.app/live/api/v1/products/getproductsbysubcategory?categoryid=4&tenantid=8&applocationid=5&locationid=45&keyword=berry
+
+# Retrieve product counts categorized by tenant and subcategory
+https://jupiter.nearle.app/live/api/v1/products/getproductscount?tenantid=8&categoryid=4&subcategoryid=14&approve=approved
+
+# Fetch product detail matches by Variant ID
+https://jupiter.nearle.app/live/api/v1/products/getproductbyvariant?tenantid=8&variantid=22
+
+# List variants available under a tenant subcategory
+https://jupiter.nearle.app/live/api/v1/products/getproductvariants?tenantid=8&subcategoryid=14
+
+# Get active product discount rules under a tenant
+https://jupiter.nearle.app/live/api/v1/products/getproductdiscounts?tenantid=8
+
+# Retrieve products catalog for customer order creation (Mobile V2)
+https://jupiter.nearle.app/live/api/v2/products/getcatalougeproducts?tenantid=8&locationid=45&subcategoryid=14&keyword=apple&pageno=1&pagesize=10
+
+# Retrieve products mapped to a physical location (V2)
+https://jupiter.nearle.app/live/api/v2/products/getlocationproducts?tenantid=8&locationid=45&subcategoryid=14&keyword=apple&pageno=1&pagesize=10
+
+# Retrieve summary metrics of products in a location (V2)
+https://jupiter.nearle.app/live/api/v2/products/getlocationproductsummary?tenantid=8&locationid=45
+
+# Query product stock ledger statement history (V2)
+https://jupiter.nearle.app/live/api/v2/products/getstockstatement?tenantid=8&locationid=45&subcategoryid=14&keyword=apple&pageno=1&pagesize=10
+
+# Query current active product stock levels (V2)
+https://jupiter.nearle.app/live/api/v2/products/getproductstocks?tenantid=8&locationid=45
+
+# Query category-wise inventory summary statistics (V2)
+https://jupiter.nearle.app/live/api/v2/products/getproductcategorywisesummary?tenantid=8&locationid=45&subcategoryid=14
+
+# Fetch stock statement summaries (V2)
+https://jupiter.nearle.app/live/api/v2/products/getstockstatementsummary?tenantid=8&locationid=45
+
+---
+
+## ๐ Order Management GET APIs
+http
+
+# Query all orders with custom filters (V1)
+https://jupiter.nearle.app/live/api/v1/orders/getorders?fromdate=2026-05-01&todate=2026-05-20&status=pending&keyword=sydney&roleid=2&tenantid=8&locationid=45&pageno=1&pagesize=10
+
+# Query partner dispatch tasks (V1)
+https://jupiter.nearle.app/live/api/v1/orders/partner/getorders?partnerid=102&status=pending&pageno=1&pagesize=10
+
+# Query tenant physical store orders (V1)
+https://jupiter.nearle.app/live/api/v1/orders/tenant/getorders?tenantid=8&locationid=45&pageno=1&pagesize=10
+
+# Query specific customer orders (V1)
+https://jupiter.nearle.app/live/api/v1/orders/customer/getorders?customerid=12&pageno=1&pagesize=10
+
+# Retrieve order locations count summary under a tenant (V1)
+https://jupiter.nearle.app/live/api/v1/orders/tenant/getlocationsummary?tenantid=8
+
+# Query consolidated order values summaries (V1)
+https://jupiter.nearle.app/live/api/v1/orders/getordersummary?tenantid=8&locationid=45&fromdate=2026-05-01&todate=2026-05-20
+
+# Query order status counts grouped by app location hubs (V1)
+https://jupiter.nearle.app/live/api/v1/orders/getlocationsummary?tenantid=8
+
+# Get monthly order counts grouped by app locations (V1)
+https://jupiter.nearle.app/live/api/v1/orders/getorderinsight?tenantid=8
+
+# Retrieve item line details and pricing summaries for an order (Mobile V1)
+https://jupiter.nearle.app/live/api/v1/orders/getorderdetails?orderheaderid=9821
+
+# Get customer orders filtered by application location zone (V1)
+https://jupiter.nearle.app/live/api/v1/orders/getorderbylocations?customerid=12&applocationid=5
+
+# Query active orders list (V2)
+https://jupiter.nearle.app/live/api/v2/orders/getorders?fromdate=2026-05-01&todate=2026-05-20&status=pending&tenantid=8&locationid=45&pageno=1&pagesize=10
+
+# Retrieve monthly counts per tenant store location (V2)
+https://jupiter.nearle.app/live/api/v2/orders/getorderinsight?tenantid=8
+
+# Fetch daily consolidated order summary values (V2)
+https://jupiter.nearle.app/live/api/v2/orders/getordersummary?tenantid=8&fromdate=2026-05-01&todate=2026-05-20
+
+# Retrieve tenant location-wise active order classifications (V2)
+https://jupiter.nearle.app/live/api/v2/orders/getlocationsummary?tenantid=8
+
+# Search customer orders with keywords and paging (V3)
+https://jupiter.nearle.app/live/api/v3/orders/getcustomerorders?customerid=12&tenantid=8&orderstatus=delivered&pageno=1&pagesize=10
+
+---
+
+## ๐ Deliveries & Dispatch GET APIs
+http
+
+# Query parameterized deliveries list with search keyword (V2)
+https://jupiter.nearle.app/live/api/v2/deliveries/getdeliveries?tenantid=8&locationid=45&partnerid=102&userid=12&status=pending&fromdate=2026-05-01&todate=2026-05-20&keyword=sydney&pageno=1&pagesize=10
+
+# Query parameterized deliveries list with search keyword (V3)
+https://jupiter.nearle.app/live/api/v3/deliveries/getdeliveries?tenantid=8&locationid=45&partnerid=102&userid=12&status=pending&fromdate=2026-05-01&todate=2026-05-20&keyword=sydney&pageno=1&pagesize=10
+
+# Query event transaction logs trail of a delivery (V1)
+https://jupiter.nearle.app/live/api/v1/deliveries/getdeliverylogs?deliveryid=405
+
+# Query event log history of a delivery (V2)
+https://jupiter.nearle.app/live/api/v2/deliveries/getdeliverylogs?deliveryid=405
+
+# Query event log history of a delivery (V3)
+https://jupiter.nearle.app/live/api/v3/deliveries/getdeliverylogs?deliveryid=405
+
+# Query delivery status classification values (V1)
+https://jupiter.nearle.app/live/api/v1/deliveries/deliverysummary?tenantid=8&locationid=45&fromdate=2026-05-01&todate=2026-05-20
+
+# Retrieve active deliveries count statistics grouped by app location (V1)
+https://jupiter.nearle.app/live/api/v1/deliveries/getlocationsummary?tenantid=8
+
+# Query active deliveries summary grouped by location (V2)
+https://jupiter.nearle.app/live/api/v2/deliveries/getlocationsummary?tenantid=8
+
+# Get current dispatch tasks queue (Mobile V1)
+https://jupiter.nearle.app/live/api/v1/deliveries/getdeliveryqueues?tenantid=8&locationid=45
+
+# Get picked dispatch tasks from queue (Mobile V1)
+https://jupiter.nearle.app/live/api/v1/deliveries/getdeliveryqueuespicked?tenantid=8&locationid=45
+
+# Query active dispatch task queues (Mobile V2)
+https://jupiter.nearle.app/live/api/v2/deliveries/getdeliveryqueues?tenantid=8&locationid=45
+
+# Get monthly delivery performance summaries (V1)
+https://jupiter.nearle.app/live/api/v1/deliveries/getdeliveryinsight?tenantid=8
+
+# Get complete distance, COD collections, and tasks report summaries (V1)
+https://jupiter.nearle.app/live/api/v1/deliveries/getreportsummary?tenantid=8&fromdate=2026-05-01&todate=2026-05-20
+
+# Get report summaries grouped by tenant store location (V1)
+https://jupiter.nearle.app/live/api/v1/deliveries/getreportlocationsummary?tenantid=8&locationid=45&fromdate=2026-05-01&todate=2026-05-20
+
+# Query report stats per Rider per tenant store location (V1)
+https://jupiter.nearle.app/live/api/v1/deliveries/getriderlocationreportsummary?tenantid=8&userid=12&fromdate=2026-05-01&todate=2026-05-20
+
+# Retrieve active riders shift and duty metric summaries (V1)
+https://jupiter.nearle.app/live/api/v1/deliveries/getridersummary?tenantid=8&locationid=45&fromdate=2026-05-01&todate=2026-05-20
+
+# Retrieve Rider metrics summary grouped by store location (V1)
+https://jupiter.nearle.app/live/api/v1/deliveries/getriderlocationsummary?tenantid=8&locationid=45&fromdate=2026-05-01&todate=2026-05-20
+
+# Fetch details of Rider assigned to a delivery task (Mobile V1)
+https://jupiter.nearle.app/live/api/v1/deliveries/getriderbydelivery?deliveryid=405
+
+# Retrieve last delivery detail matching customer contact number (V1)
+https://jupiter.nearle.app/live/api/v1/deliveries/getlastdeliverybycontact?contactno=%2B61411222333
+
+# Get specific rider performance report summary (V1)
+https://jupiter.nearle.app/live/api/v1/deliveries/getuserreportsummary?userid=12&fromdate=2026-05-01&todate=2026-05-20
+
+# Query raw logs of rider activity (V1)
+https://jupiter.nearle.app/live/api/v1/deliveries/getuserdeliverylogs?userid=12&fromdate=2026-05-01&todate=2026-05-20
+
+---
+
+## ๐งพ Invoices & Billing GET APIs
+http
+
+# Retrieve next sequence identifier for tenant invoice generation
+https://jupiter.nearle.app/live/api/v1/invoice/getseqno?tenantid=8
+
+# List orders associated under an invoice
+https://jupiter.nearle.app/live/api/v1/invoice/getinvoiceorders?invoiceid=402
+
+# Query invoices catalog with paging and status checks
+https://jupiter.nearle.app/live/api/v1/invoice/getallinvoice?tenantid=8&customerid=12&status=Unpaid&pageno=1&pagesize=10
+
+# Retrieve consolidate revenue insights for invoice billing
+https://jupiter.nearle.app/live/api/v1/invoice/getinvoiceinsight?tenantid=8
+
+---
+
+## ๐ข Tenant & Location GET APIs
+http
+
+# Fetch complete metadata and credentials of a single tenant
+https://jupiter.nearle.app/live/api/v1/tenants/gettenantinfo?tenantid=8
+
+# Search tenant registries by name or email keyword
+https://jupiter.nearle.app/live/api/v1/tenants/search?keyword=sydney
+
+# Query list of staff roster belonging to a tenant location
+https://jupiter.nearle.app/live/api/v1/tenants/getstaffs?tenantid=8&locationid=45
+
+# Get active tenants mapped under an application hub zone
+https://jupiter.nearle.app/live/api/v1/tenants/gettenants?applocationid=5
+
+# Query complete list of tenants
+https://jupiter.nearle.app/live/api/v1/tenants/getalltenants?pageno=1&pagesize=10&keyword=grocery
+
+# Query consolidated location metrics under a tenant
+https://jupiter.nearle.app/live/api/v1/tenants/gettenantsummary?tenantid=8
+
+# Check if tenant uses online cloud inventory storage
+https://jupiter.nearle.app/live/api/v1/tenants/getcloudstore?tenantid=8
+
+# Query physical warehouses/outlets mapped to a tenant
+https://jupiter.nearle.app/live/api/v1/tenants/gettenantlocations?tenantid=8&pageno=1&pagesize=10
+
+# Get operational time slots for orders fulfillment
+https://jupiter.nearle.app/live/api/v1/tenants/gettenantslots?tenantid=8&locationid=45
+
+# Query coordinate and contact details of a single store location
+https://jupiter.nearle.app/live/api/v1/tenants/gettenantlocation?locationid=45
+
+# Get delivery pricing rules configured for a tenant
+https://jupiter.nearle.app/live/api/v1/tenants/gettenantpricing?tenantid=8
+
+# Query support ticket requests created by a tenant
+https://jupiter.nearle.app/live/api/v1/tenants/gettenantrequests?tenantid=8&pageno=1&pagesize=10
+
+# Query pricing list configured for a tenant
+https://jupiter.nearle.app/live/api/v1/tenants/getpricinglist?tenantid=8
+
+# Query promotional active marketing discount settings
+https://jupiter.nearle.app/live/api/v1/tenants/gettenantpromotions?tenantid=8
+
+# Query location high level metric summary (V2)
+https://jupiter.nearle.app/live/api/v2/tenants/getlocationsummary?tenantid=8
+
+# Query active staff roster status metrics (V2)
+https://jupiter.nearle.app/live/api/v2/tenants/gettenantstaffsummary?tenantid=8&locationid=45
+
+# Query active dispatch rider metric counts (V2)
+https://jupiter.nearle.app/live/api/v2/tenants/gettenantridersummary?tenantid=8&locationid=45
+
+# Query list of tenants servicing a customer location (V2)
+https://jupiter.nearle.app/live/api/v2/tenants/getcustomertenants?customerid=12&applocationid=5
+
+---
+
+## ๐ ๏ธ Utilities & Configurations GET APIs
+http
+
+# Get active app physical hub locations (V1)
+https://jupiter.nearle.app/live/api/v1/utils/getapplocations?applocationid=5
+
+# Get active app physical hub locations (V2)
+https://jupiter.nearle.app/live/api/v2/utils/getapplocations?userid=12
+
+# Get core app specifications and provider credentials (V1)
+https://jupiter.nearle.app/live/api/v1/utils/getappconfig?configid=6
+
+# Get all system app configurations
+https://jupiter.nearle.app/live/api/v1/utils/getallappconfig
+
+# Get application type classifications matching tag string
+https://jupiter.nearle.app/live/api/v1/utils/getapptypes?tag=Rider
+
+# List app categories mapped under module configuration
+https://jupiter.nearle.app/live/api/v1/utils/getcategories?moduleid=6
+
+# List app subcategories under category and module configurations
+https://jupiter.nearle.app/live/api/v1/utils/getsubcategories?moduleid=6&categoryid=4
+
+# Query exact pricing configurations mapped to zone and config
+https://jupiter.nearle.app/live/api/v1/utils/getapppricing?applocationid=5&configid=6&pricingtypeid=1
+
+# Get all app delivery pricing ranges
+https://jupiter.nearle.app/live/api/v1/utils/getallpricing?applocationid=5
+
+# Retrieve app zone configs
+https://jupiter.nearle.app/live/api/v1/utils/getapplocationconfig?applocationid=5
+
+# Query push notifications history processed for tenant
+https://jupiter.nearle.app/live/api/v1/utils/gettenantnotifications?tenantid=8&pageno=1&pagesize=10
+
+# Fetch third-party shopfront sync order payloads
+https://jupiter.nearle.app/live/api/v1/utils/getshopfrontorders
+
+# Get rider cumulative bonus points summary
+https://jupiter.nearle.app/live/api/v1/utils/getuserbonussummary?userid=12
+
+# List all system platform roles
+https://jupiter.nearle.app/live/api/v1/utils/getuserroles
+
+# Retrieve app user credentials stored in Redis cache
+https://jupiter.nearle.app/live/api/v1/utils/getuserredis?userid=12
+
+# Query raw rider logs cached in memory
+https://jupiter.nearle.app/live/api/v1/utils/getriderperiodiclogs?userid=12
+
+# Query current cached online/duty status of a Rider
+https://jupiter.nearle.app/live/api/v1/utils/getriderstatus?userid=12
+
+---
+
+## ๐ค Logistics Partner GET APIs
+http
+
+# Get active dispatch riders summary metrics
+https://jupiter.nearle.app/live/api/v1/partners/getactiveriderssummary?partnerid=102
+
+# Get available rider operational shifts
+https://jupiter.nearle.app/live/api/v1/partners/getridershifts?partnerid=102&shiftdate=2026-05-20
+
+# Query delivery billing price configurations for riders
+https://jupiter.nearle.app/live/api/v1/partners/getriderpricing?partnerid=102&applocationid=5
+
+# Retrieve rider pools availability status
+https://jupiter.nearle.app/live/api/v1/partners/getriderpool?partnerid=102&applocationid=5
+
+# Retrieve general rider user info metadata (V1)
+https://jupiter.nearle.app/live/api/v1/partners/getriderinfo?partnerid=102&userid=12
+
+# Retrieve general rider user info metadata (V2)
+https://jupiter.nearle.app/live/api/v2/partners/getriderinfo?partnerid=102&userid=12
+
+# Fetch active logistics riders status metrics (V1)
+https://jupiter.nearle.app/live/api/v1/partners/getriders?partnerid=102&applocationid=5
+
+# Fetch active logistics riders status metrics (V2)
+https://jupiter.nearle.app/live/api/v2/partners/getriders?partnerid=102&applocationid=5
+
+# Query full details of a single rider (V1)
+https://jupiter.nearle.app/live/api/v1/partners/getriderdetail?userid=12
+
+# List all registered riders in the partner pool
+https://jupiter.nearle.app/live/api/v1/partners/getallriders?partnerid=102&pageno=1&pagesize=10
+
+# List partner profiles
+https://jupiter.nearle.app/live/api/v1/partners/getpartners?partnerid=102
+
+# Fetch physical location configuration mappings
+https://jupiter.nearle.app/live/api/v1/partners/getlocations?partnerid=102
+
+# List partner logins under user directory
+https://jupiter.nearle.app/live/api/v1/partners/getpartnerusers?partnerid=102
+
+# Get order counts completed per rider
+https://jupiter.nearle.app/live/api/v1/partners/getridercount?partnerid=102&fromdate=2026-05-01&todate=2026-05-20
+
+# Fetch rider logs (V1)
+https://jupiter.nearle.app/live/api/v1/partners/getriderlog?userid=12&logdate=2026-05-20
+
+# Query rider cumulative login logs (V1)
+https://jupiter.nearle.app/live/api/v1/partners/getriderlogs?partnerid=102&fromdate=2026-05-01&todate=2026-05-20
+
+# Query rider cumulative login logs (V2)
+https://jupiter.nearle.app/live/api/v2/partners/getriderlogs?partnerid=102&fromdate=2026-05-01&todate=2026-05-20
+
+# Get weekly cumulative kilometers traveled by rider
+https://jupiter.nearle.app/live/api/v1/partners/getriderweeklykms?userid=12&fromdate=2026-05-01&todate=2026-05-20
+
+# Get rider support requests
+https://jupiter.nearle.app/live/api/v1/partners/getridersupport?userid=12
+
+# Get consolidated summary profiles of all riders
+https://jupiter.nearle.app/live/api/v1/partners/getallridersummary?partnerid=102
+
+# Get summary of rider location mappings
+https://jupiter.nearle.app/live/api/v1/partners/getuserlocationsummary?partnerid=102
+
+# Retrieve admin access tokens
+https://jupiter.nearle.app/live/api/v1/partners/getadmintoken?partnerid=102
+
+# Get today's delivery status metrics
+https://jupiter.nearle.app/live/api/v2/partners/getdeliverystats?partnerid=102
+
+---
+
+## ๐ณ Payments & Platform Admin GET APIs
+http
+
+# Query payment requests log
+https://jupiter.nearle.app/live/api/v1/payments/requests/getpaymentrequest?customerid=12
+
+# Retrieve specific order summaries under administrator access
+https://jupiter.nearle.app/live/api/v1/admin/orders/getorders?tenantid=8&pageno=1&pagesize=10
+
+# Fetch SMS provider specifications
+https://jupiter.nearle.app/live/api/v1/platform/getsmsprovider
diff --git a/Xpress_api_write_docs.md b/Xpress_api_write_docs.md
new file mode 100644
index 0000000..0f652c3
--- /dev/null
+++ b/Xpress_api_write_docs.md
@@ -0,0 +1,1081 @@
+# Nearle LiveSetup Write APIs (POST, PUT, DELETE) Directory
+
+This document details the **POST, PUT, and DELETE** endpoints under the `LiveSetup` routing namespace `/live/api/...`, providing exact structures for all required JSON request bodies.
+
+* **Base URL**: `https://jupiter.nearle.app/`
+* **Format**: HTTP Header `Content-Type: application/json` is required for all payloads.
+
+---
+
+## Table of Contents
+1. [๐ค Users & Authorization APIs](#1-users--authorization-apis)
+2. [๐ฅ Customer Management APIs](#2-customer-management-apis)
+3. [๐ข Tenant & Location APIs](#3-tenant--location-apis)
+4. [๐ฆ Products & Catalog APIs](#4-products--catalog-apis)
+5. [๐ Order Management APIs](#5-order-management-apis)
+6. [๐ Deliveries & Dispatch APIs](#6-deliveries--dispatch-apis)
+7. [๐ค Partner & Rider Operations APIs](#7-partner--rider-operations-apis)
+8. [๐งพ Invoices & Billing APIs](#8-invoices--billing-apis)
+9. [๐ ๏ธ Utilities & Webhooks APIs](#9-utilities--webhooks-apis)
+10. [๐ณ Payments APIs](#10-payments-apis)
+
+---
+
+## 1. ๐ค Users & Authorization APIs
+
+### 1.1 User Login (Generic / Staff / Admin)
+* **URL**: `POST https://jupiter.nearle.app/live/api/v1/users/login`
+* **Request Body**:
+ ```json
+ {
+ "username": "admin_nearle",
+ "password": "secure_password_hash"
+ }
+ ```
+
+### 1.2 Tenant Login
+* **URL**: `POST https://jupiter.nearle.app/live/api/v1/users/tenant/login`
+* **Request Body**:
+ ```json
+ {
+ "username": "tenant_manager",
+ "password": "secure_password_hash"
+ }
+ ```
+
+### 1.3 Partner Login
+* **URL**: `POST https://jupiter.nearle.app/live/api/v1/users/partner/login`
+* **Request Body**:
+ ```json
+ {
+ "username": "logistics_partner_ceo",
+ "password": "secure_password_hash"
+ }
+ ```
+
+### 1.4 Rider Authentication (V1)
+* **URL**: `POST https://jupiter.nearle.app/live/api/v1/users/rider/login`
+* **Request Body**:
+ ```json
+ {
+ "username": "rider_john",
+ "password": "rider_password"
+ }
+ ```
+
+### 1.5 Rider Authentication with PIN & FCM Token (V2)
+* **URL**: `POST https://jupiter.nearle.app/live/api/v2/users/rider/login`
+* **Request Body**:
+ ```json
+ {
+ "username": "rider_john",
+ "pin": 1234,
+ "userfcmtoken": "fcm_device_token_abc123",
+ "deviceid": "device_uuid_981249",
+ "devicetype": "android"
+ }
+ ```
+
+### 1.6 Tenant Web Login
+* **URL**: `POST https://jupiter.nearle.app/live/api/v1/users/tenant/weblogin`
+* **Request Body**:
+ ```json
+ {
+ "username": "tenant_web_admin",
+ "password": "secure_password_hash"
+ }
+ ```
+
+### 1.7 Create App User (V1 / V2)
+* **URLs**:
+ * `POST https://jupiter.nearle.app/live/api/v1/users/create`
+ * `POST https://jupiter.nearle.app/live/api/v2/users/create`
+* **Request Body**:
+ ```json
+ {
+ "userid": 0,
+ "authname": "rider_joe",
+ "firstname": "Joe",
+ "lastname": "Smith",
+ "password": "joe_password_raw",
+ "email": "joe.smith@nearle.app",
+ "contactno": "+61400111222",
+ "roleid": 4,
+ "pin": 1234,
+ "tenantid": 8,
+ "locationid": 45,
+ "applocationid": 5,
+ "status": "Active"
+ }
+ ```
+
+### 1.8 Update App User Details (V1 / V2)
+* **URLs**:
+ * `PUT https://jupiter.nearle.app/live/api/v1/users/update`
+ * `PUT https://jupiter.nearle.app/live/api/v2/users/update`
+* **Request Body**:
+ ```json
+ {
+ "userid": 12,
+ "authname": "rider_joe",
+ "firstname": "Joseph",
+ "lastname": "Smith",
+ "email": "joseph.smith@nearle.app",
+ "contactno": "+61400111222",
+ "roleid": 4,
+ "pin": 1234,
+ "tenantid": 8,
+ "locationid": 45,
+ "applocationid": 5,
+ "status": "Active"
+ }
+ ```
+
+### 1.9 Delete App User
+* **URL**: `DELETE https://jupiter.nearle.app/live/api/v1/users/delete`
+* **Request Body**:
+ ```json
+ {
+ "userid": 12
+ }
+ ```
+
+---
+
+## 2. ๐ฅ Customer Management APIs
+
+### 2.1 Customer Login (Mobile OTP or Contact verification)
+* **URL**: `POST https://jupiter.nearle.app/live/api/v1/customers/login`
+* **Request Body**:
+ ```json
+ {
+ "contactno": "+61411222333"
+ }
+ ```
+
+### 2.2 Register Customer
+* **URL**: `POST https://jupiter.nearle.app/live/api/v1/customers/create`
+* **Request Body**:
+ ```json
+ {
+ "customerid": 0,
+ "tenantid": 8,
+ "applocationid": 5,
+ "firstname": "Jane",
+ "lastname": "Doe",
+ "email": "jane.doe@example.com",
+ "contactno": "+61411222333",
+ "dob": "1992-06-15",
+ "gender": "Female",
+ "status": "Active"
+ }
+ ```
+
+### 2.3 Update Customer Profile
+* **URL**: `PUT https://jupiter.nearle.app/live/api/v1/customers/update`
+* **Request Body**:
+ ```json
+ {
+ "customerid": 4082,
+ "tenantid": 8,
+ "applocationid": 5,
+ "firstname": "Jane",
+ "lastname": "Smith",
+ "email": "jane.smith@example.com",
+ "contactno": "+61411222333",
+ "dob": "1992-06-15",
+ "gender": "Female",
+ "status": "Active"
+ }
+ ```
+
+### 2.4 Create Customer Address Locations
+* **URL**: `POST https://jupiter.nearle.app/live/api/v1/customers/createlocations`
+* **Request Body**:
+ ```json
+ [
+ {
+ "locationid": 0,
+ "customerid": 4082,
+ "locationname": "Home Address",
+ "address": "100 Berry St, North Sydney NSW 2060",
+ "suburb": "North Sydney",
+ "city": "Sydney",
+ "state": "NSW",
+ "postcode": "2060",
+ "latitude": "-33.8398",
+ "longitude": "151.2058",
+ "status": "Active"
+ }
+ ]
+ ```
+
+### 2.5 Delete Customer Profile
+* **URL**: `DELETE https://jupiter.nearle.app/live/api/v1/customers/delete`
+* **Request Body**:
+ ```json
+ {
+ "customerid": 4082
+ }
+ ```
+
+### 2.6 Submit Customer Support Request
+* **URL**: `POST https://jupiter.nearle.app/live/api/v1/customers/createcustomerrequest`
+* **Request Body**:
+ ```json
+ {
+ "customerid": 4082,
+ "subject": "Missing items in order ORD-000843",
+ "description": "Apples were missing from my fresh produce bag.",
+ "category": "Refund/Missing Items"
+ }
+ ```
+
+---
+
+## 3. ๐ข Tenant & Location APIs
+
+### 3.1 Create Tenant
+* **URL**: `POST https://jupiter.nearle.app/live/api/v1/tenants/create`
+* **Request Body**:
+ ```json
+ {
+ "tenantid": 0,
+ "tenantname": "Sydney Fresh Grocers",
+ "status": "Active"
+ }
+ ```
+
+### 3.2 Create Tenant Location / Branch
+* **URL**: `POST https://jupiter.nearle.app/live/api/v1/tenants/createlocation`
+* **Request Body**:
+ ```json
+ {
+ "tenantid": 8,
+ "locationname": "North Sydney Outlet",
+ "address": "45 Berry St",
+ "suburb": "North Sydney",
+ "city": "Sydney",
+ "state": "NSW",
+ "postcode": "2060",
+ "latitude": "-33.8398",
+ "longitude": "151.2058",
+ "status": "Active"
+ }
+ ```
+
+### 3.3 Create Tenant User Setup
+* **URL**: `POST https://jupiter.nearle.app/live/api/v1/tenants/createtenantuser`
+* **Request Body**:
+ ```json
+ {
+ "tenantid": 8,
+ "userid": 12,
+ "status": "Active"
+ }
+ ```
+
+### 3.4 Update Tenant Details
+* **URL**: `PUT https://jupiter.nearle.app/live/api/v1/tenants/update`
+* **Request Body**:
+ ```json
+ {
+ "tenantid": 8,
+ "tenantname": "Sydney Premium Grocers Group",
+ "status": "Active"
+ }
+ ```
+
+### 3.5 Update Tenant Location Details (V1)
+* **URL**: `PUT https://jupiter.nearle.app/live/api/v1/tenants/updatelocation`
+* **Request Body**:
+ ```json
+ {
+ "locationid": 45,
+ "tenantid": 8,
+ "locationname": "North Sydney Hub Store",
+ "address": "45 Berry St",
+ "suburb": "North Sydney",
+ "city": "Sydney",
+ "state": "NSW",
+ "postcode": "2060",
+ "latitude": "-33.8398",
+ "longitude": "151.2058",
+ "status": "Active"
+ }
+ ```
+
+### 3.6 Create Partner Association (Console)
+* **URL**: `PUT https://jupiter.nearle.app/live/api/v1/tenants/createpartneruser`
+* **Request Body**:
+ ```json
+ {
+ "tenantid": 8,
+ "partnerid": 102,
+ "status": "Active"
+ }
+ ```
+
+### 3.7 Add Customer to Tenant Database
+* **URL**: `POST https://jupiter.nearle.app/live/api/v1/tenants/createtenantcustomer`
+* **Request Body**:
+ ```json
+ {
+ "tenantid": 8,
+ "customerid": 4082,
+ "status": "Active"
+ }
+ ```
+
+### 3.8 Add Tenant Roster Staff
+* **URL**: `POST https://jupiter.nearle.app/live/api/v1/tenants/createstaff`
+* **Request Body**:
+ ```json
+ {
+ "userid": 15,
+ "tenantid": 8,
+ "locationid": 45,
+ "status": "Active"
+ }
+ ```
+
+### 3.9 Update Tenant Roster Staff
+* **URL**: `PUT https://jupiter.nearle.app/live/api/v1/tenants/updatestaff`
+* **Request Body**:
+ ```json
+ {
+ "userid": 15,
+ "tenantid": 8,
+ "locationid": 45,
+ "status": "Inactive"
+ }
+ ```
+
+### 3.10 Create Delivery Rate Config for Tenant
+* **URL**: `POST https://jupiter.nearle.app/live/api/v1/tenants/createpricing`
+* **Request Body**:
+ ```json
+ {
+ "tenantid": 8,
+ "basefare": 8.50,
+ "additionalkm": 1.50,
+ "additionalcharges": 2.00,
+ "fuelcharge": 0.50
+ }
+ ```
+
+### 3.11 Create Tenant Support Request ticket
+* **URL**: `POST https://jupiter.nearle.app/live/api/v1/tenants/createtenantrequest`
+* **Request Body**:
+ ```json
+ {
+ "tenantid": 8,
+ "subject": "Payout mismatch on invoice INV-00802",
+ "description": "Calculated payout did not include fuel tax bonus.",
+ "category": "Billing"
+ }
+ ```
+
+### 3.12 Create Tenant Discount Promotion Configuration
+* **URL**: `POST https://jupiter.nearle.app/live/api/v1/tenants/createtenantpromotions`
+* **Request Body**:
+ ```json
+ {
+ "tenantid": 8,
+ "promocode": "FREESHIP50",
+ "discountamount": 10.00,
+ "minordervalue": 50.00,
+ "status": "Active"
+ }
+ ```
+
+### 3.13 Create Tenant physical outlet (V2)
+* **URL**: `POST https://jupiter.nearle.app/live/api/v2/tenants/createtenantlocation`
+* **Request Body**: See V1 location request payload structure.
+
+### 3.14 Update Tenant Physical Location Details (V2)
+* **URL**: `PUT https://jupiter.nearle.app/live/api/v2/tenants/updatetenantlocation`
+* **Request Body**: See V1 location request payload structure.
+
+---
+
+## 4. ๐ฆ Products & Catalog APIs
+
+### 4.1 Create Catalog Product
+* **URL**: `POST https://jupiter.nearle.app/live/api/v1/products/create`
+* **Request Body**:
+ ```json
+ {
+ "productid": 0,
+ "productname": "Organic Strawberries 500g",
+ "categoryid": 4,
+ "subcategoryid": 14,
+ "tenantid": 8,
+ "applocationid": 5,
+ "productcost": 6.80,
+ "unitvalue": "500g",
+ "productstatus": "available",
+ "sku": "STRAW-500G-ORG",
+ "status": "Active"
+ }
+ ```
+
+### 4.2 Update Product Attributes
+* **URL**: `PUT https://jupiter.nearle.app/live/api/v1/products/update`
+* **Request Body**:
+ ```json
+ {
+ "productid": 101,
+ "productname": "Premium Organic Strawberries 500g",
+ "categoryid": 4,
+ "subcategoryid": 14,
+ "tenantid": 8,
+ "applocationid": 5,
+ "productcost": 7.20,
+ "unitvalue": "500g",
+ "productstatus": "available",
+ "sku": "STRAW-500G-ORG",
+ "status": "Active"
+ }
+ ```
+
+### 4.3 Delete Product
+* **URL**: `DELETE https://jupiter.nearle.app/live/api/v1/products/delete`
+* **Request Body**:
+ ```json
+ {
+ "productid": 101
+ }
+ ```
+
+### 4.4 Create Product Variant
+* **URL**: `POST https://jupiter.nearle.app/live/api/v1/products/createproductvariant`
+* **Request Body**:
+ ```json
+ {
+ "productid": 101,
+ "variantname": "Mega Pack 1Kg",
+ "variantcost": 12.50,
+ "sku": "STRAW-1KG-ORG",
+ "status": "Active"
+ }
+ ```
+
+### 4.5 Setup Product Discount Rule
+* **URL**: `POST https://jupiter.nearle.app/live/api/v1/products/createproductdiscount`
+* **Request Body**:
+ ```json
+ {
+ "productid": 101,
+ "discountpercentage": 15.00,
+ "status": "Active"
+ }
+ ```
+
+### 4.6 Set Product Location Map (V2)
+* **URL**: `POST https://jupiter.nearle.app/live/api/v2/products/createproductlocation`
+* **Request Body**:
+ ```json
+ [
+ {
+ "productid": 101,
+ "locationid": 45,
+ "tenantid": 8,
+ "status": "Active"
+ }
+ ]
+ ```
+
+### 4.7 Update Product Location Map (V2)
+* **URL**: `PUT https://jupiter.nearle.app/live/api/v2/products/updateproductlocation`
+* **Request Body**:
+ ```json
+ {
+ "productid": 101,
+ "locationid": 45,
+ "status": "Inactive"
+ }
+ ```
+
+### 4.8 Add Stock Entry (Inbound/Outbound Ingest - V2)
+* **URL**: `POST https://jupiter.nearle.app/live/api/v2/products/createproductstock`
+* **Request Body**:
+ ```json
+ [
+ {
+ "stockid": 0,
+ "productid": 101,
+ "locationid": 45,
+ "tenantid": 8,
+ "qty": 50,
+ "transactiontype": "in",
+ "reference": "PURCHASE-PO9812",
+ "createdby": 12
+ }
+ ]
+ ```
+
+### 4.9 Update Product Stock Quantity (V2)
+* **URL**: `PUT https://jupiter.nearle.app/live/api/v2/products/updateproductstock`
+* **Request Body**:
+ ```json
+ {
+ "productid": 101,
+ "locationid": 45,
+ "tenantid": 8,
+ "qty": 45,
+ "transactiontype": "out",
+ "reference": "ADJUSTMENT-RECON",
+ "createdby": 12
+ }
+ ```
+
+---
+
+## 5. ๐ Order Management APIs
+
+### 5.1 Create Simple Order (V1)
+* **URL**: `POST https://jupiter.nearle.app/live/api/v1/orders/createorder`
+* **Request Body**:
+ ```json
+ {
+ "orders": {
+ "tenantid": 8,
+ "locationid": 45,
+ "customerid": 4082,
+ "orderamount": 13.60,
+ "itemcount": 2,
+ "items": [
+ {
+ "productid": 101,
+ "productname": "Organic Strawberries 500g",
+ "orderqty": 2.0,
+ "unitprice": 6.80
+ }
+ ]
+ }
+ }
+ ```
+
+### 5.2 Create Multiple Orders in Bulk (V1)
+* **URL**: `POST https://jupiter.nearle.app/live/api/v1/orders/createorders`
+* **Request Body**:
+ ```json
+ [
+ {
+ "orders": {
+ "tenantid": 8,
+ "locationid": 45,
+ "customerid": 4082,
+ "orderamount": 6.80,
+ "itemcount": 1,
+ "items": [ ... ]
+ }
+ }
+ ]
+ ```
+
+### 5.3 Update Order Details
+* **URL**: `PUT https://jupiter.nearle.app/live/api/v1/orders/updateorder`
+* **Request Body**:
+ ```json
+ {
+ "orderheaderid": 9821,
+ "orderstatus": "delivered",
+ "deliveryamt": 12.50
+ }
+ ```
+
+### 5.4 Update Multiple Orders Status in Bulk
+* **URL**: `PUT https://jupiter.nearle.app/live/api/v1/orders/updatemultipleorders`
+* **Request Body**:
+ ```json
+ [
+ {
+ "orderheaderid": 9821,
+ "orderstatus": "picked"
+ },
+ {
+ "orderheaderid": 9822,
+ "orderstatus": "picked"
+ }
+ ]
+ ```
+
+### 5.5 Create Order with Coordinates Details (V2)
+* **URL**: `POST https://jupiter.nearle.app/live/api/v2/orders/createorder`
+* **Request Body**:
+ ```json
+ {
+ "orders": {
+ "tenantid": 8,
+ "orderamount": 13.60,
+ "itemcount": 1,
+ "items": [
+ {
+ "productid": 101,
+ "productname": "Organic Strawberries 500g",
+ "orderqty": 2.0,
+ "unitprice": 6.80
+ }
+ ]
+ },
+ "pickup": {
+ "customerid": 15,
+ "address": "Pickup Main Warehouse St",
+ "latitude": "-33.8688",
+ "longitude": "151.2093"
+ },
+ "drop": {
+ "customerid": 4082,
+ "address": "100 Berry St, North Sydney NSW 2060",
+ "latitude": "-33.8398",
+ "longitude": "151.2058"
+ }
+ }
+ ```
+
+### 5.6 Create Order with Auto Stock-Out Record (V3)
+* **URL**: `POST https://jupiter.nearle.app/live/api/v3/orders/createorder`
+* **Request Body**: See V1 order payload format.
+
+---
+
+## 6. ๐ Deliveries & Dispatch APIs
+
+### 6.1 Register New Dispatch Task (V1)
+* **URL**: `POST https://jupiter.nearle.app/live/api/v1/deliveries/createdelivery`
+* **Request Body**:
+ ```json
+ {
+ "deliveryid": 0,
+ "orderheaderid": 9821,
+ "userid": 12,
+ "tenantid": 8,
+ "orderid": "ORD-000843",
+ "deliverydate": "2026-05-20",
+ "orderstatus": "pending",
+ "pickupaddress": "123 Warehouse Rd",
+ "pickuplat": "-33.8600",
+ "pickuplon": "151.2000",
+ "deliveryaddress": "45 Residential St",
+ "deliverylat": "-33.8700",
+ "deliverylong": "151.2100",
+ "deliveryamt": 12.50,
+ "paymenttype": 43
+ }
+ ```
+
+### 6.2 Register Bulk Dispatches (V1)
+* **URL**: `POST https://jupiter.nearle.app/live/api/v1/deliveries/createdeliveries`
+* **Request Body**: Array of V1 dispatch payloads.
+
+### 6.3 Update Transit Status (Rider state transitions V1)
+* **URL**: `PUT https://jupiter.nearle.app/live/api/v1/deliveries/Updatedelivery`
+* **Request Body**:
+ ```json
+ {
+ "deliveryid": 405,
+ "orderheaderid": 9821,
+ "userid": 12,
+ "orderstatus": "delivered",
+ "starttime": "2026-05-20 10:30:00",
+ "arrivaltime": "2026-05-20 10:45:00",
+ "deliverytime": "2026-05-20 10:50:00",
+ "riderslat": "-33.8702",
+ "riderslon": "151.2103",
+ "dropimage": "base64_or_s3_url_string",
+ "collectedamt": 12.50,
+ "collectionstatus": 1
+ }
+ ```
+
+### 6.4 Publish Delivery Tracking Logs (V1)
+* **URL**: `POST https://jupiter.nearle.app/live/api/v1/deliveries/createdeliverylog`
+* **Request Body**:
+ ```json
+ {
+ "deliveryid": 405,
+ "latitude": "-33.8688",
+ "longitude": "151.2093",
+ "raw_latitude": "-33.86885",
+ "raw_longitude": "151.20935",
+ "speed": "24.5",
+ "heading": "180.0",
+ "status": "in_transit"
+ }
+ ```
+
+### 6.5 Register Bulk Dispatches (V2)
+* **URL**: `POST https://jupiter.nearle.app/live/api/v2/deliveries/createdeliveries`
+* **Request Body**: Array of V1 dispatch payloads.
+
+### 6.6 Publish Delivery Tracking Logs (V2)
+* **URL**: `POST https://jupiter.nearle.app/live/api/v2/deliveries/createdeliverylog`
+* **Request Body**: See V1 tracking log payload.
+
+---
+
+## 7. ๐ค Partner & Rider Operations APIs
+
+### 7.1 Setup Logistics Shift
+* **URL**: `POST https://jupiter.nearle.app/live/api/v1/partners/createshift`
+* **Request Body**:
+ ```json
+ {
+ "shiftid": 0,
+ "shiftdate": "2026-05-20",
+ "starttime": "08:00:00",
+ "endtime": "16:00:00",
+ "shifthours": 8.0,
+ "basefare": 20.00,
+ "additionalkm": 1.20,
+ "additionalcharges": 2.50,
+ "orders": 15,
+ "fuelcharge": 5.00
+ }
+ ```
+
+### 7.2 Register Logistics Rider profile
+* **URL**: `POST https://jupiter.nearle.app/live/api/v1/partners/createrider`
+* **Request Body**:
+ ```json
+ {
+ "userid": 12,
+ "partnerid": 102,
+ "identificationno": "AB981240A",
+ "shiftid": 2,
+ "basefare": 20.00,
+ "additionalkm": 1.20,
+ "additionalcharges": 2.50,
+ "vehicleid": 3,
+ "vehiclename": "Electric Bike",
+ "vehicleno": "NSW-RIDER-01",
+ "model": "Volt-X",
+ "color": "Red",
+ "licenseno": "LIC801249",
+ "insuranceno": "INS-7712",
+ "insurancedate": "2027-05-20"
+ }
+ ```
+
+### 7.3 Update Rider Operational Rates Setup
+* **URL**: `PUT https://jupiter.nearle.app/live/api/v1/partners/updateridersettings`
+* **Request Body**:
+ ```json
+ {
+ "userid": 12,
+ "partnerid": 102,
+ "basefare": 22.00,
+ "additionalkm": 1.30,
+ "additionalcharges": 3.00
+ }
+ ```
+
+### 7.4 Update Rider Profile details
+* **URL**: `PUT https://jupiter.nearle.app/live/api/v1/partners/updaterider`
+* **Request Body**: Complete rider register model updating targeted values.
+
+### 7.5 Create Rider Shift Log (V1 / V2)
+* **URLs**:
+ * `POST https://jupiter.nearle.app/live/api/v1/partners/createriderlog`
+ * `POST https://jupiter.nearle.app/live/api/v2/partners/createriderlog`
+* **Request Body**:
+ ```json
+ {
+ "logid": 0,
+ "logdate": "2026-05-20",
+ "userid": 12,
+ "partnerid": 102,
+ "shiftid": 2,
+ "shifthours": 8.0,
+ "login": "2026-05-20 08:00:00",
+ "latitude": "-33.8688",
+ "longitude": "151.2093",
+ "status": "login"
+ }
+ ```
+
+### 7.6 Update Rider Shift Log (Logout/Fulfill - V1 / V2)
+* **URLs**:
+ * `PUT https://jupiter.nearle.app/live/api/v1/partners/updateriderlog`
+ * `PUT https://jupiter.nearle.app/live/api/v2/partners/updateriderlog`
+* **Request Body**:
+ ```json
+ {
+ "logid": 4092,
+ "userid": 12,
+ "logout": "2026-05-20 16:00:00",
+ "workhours": 7.8,
+ "shorthours": 0.2,
+ "logstatus": 2,
+ "latitude": "-33.8690",
+ "longitude": "151.2100",
+ "status": "logout"
+ }
+ ```
+
+### 7.7 Create Rider break status log (V1 / V2)
+* **URLs**:
+ * `POST https://jupiter.nearle.app/live/api/v1/partners/createbreaklog`
+ * `POST https://jupiter.nearle.app/live/api/v2/partners/createbreaklog`
+* **Request Body**:
+ ```json
+ {
+ "breakid": 0,
+ "logid": 4092,
+ "breakdate": "2026-05-20",
+ "userid": 12,
+ "partnerid": 102,
+ "shiftid": 2,
+ "breakstart": "2026-05-20 12:00:00",
+ "latitude": "-33.8688",
+ "longitude": "151.2093"
+ }
+ ```
+
+### 7.8 Complete Rider break status log (V1 / V2)
+* **URLs**:
+ * `PUT https://jupiter.nearle.app/live/api/v1/partners/updatebreaklog`
+ * `PUT https://jupiter.nearle.app/live/api/v2/partners/updatebreaklog`
+* **Request Body**:
+ ```json
+ {
+ "breakid": 901,
+ "breakend": "2026-05-20 12:30:00",
+ "breakhours": 0.5
+ }
+ ```
+
+### 7.9 Submit Rider support request ticket
+* **URL**: `POST https://jupiter.nearle.app/live/api/v1/partners/createridersupport`
+* **Request Body**: See V1 customer support request format.
+
+### 7.10 Delete Rider Logs (V2)
+* **URL**: `DELETE https://jupiter.nearle.app/live/api/v2/partners/deleteriderlog`
+* **Request Body**:
+ ```json
+ {
+ "logid": 4092
+ }
+ ```
+
+---
+
+## 8. ๐งพ Invoices & Billing APIs
+
+### 8.1 Create Invoice Setup
+* **URL**: `POST https://jupiter.nearle.app/live/api/v1/invoice/create`
+* **Request Body**:
+ ```json
+ {
+ "invoiceid": 0,
+ "invoiceno": "INV-00802",
+ "invoicedate": "2026-05-20",
+ "tenantid": 8,
+ "customerid": 4082,
+ "amount": 250.00,
+ "taxamount": 25.00,
+ "status": "Unpaid"
+ }
+ ```
+
+### 8.2 Update Invoice
+* **URL**: `PUT https://jupiter.nearle.app/live/api/v1/invoice/update`
+* **Request Body**: Complete invoice model with targeting invoice ID.
+
+### 8.3 Update Invoice Payment Status
+* **URL**: `PUT https://jupiter.nearle.app/live/api/v1/invoice/updatestatus`
+* **Request Body**:
+ ```json
+ {
+ "invoiceid": 402,
+ "status": "Paid",
+ "paymentmode": "Card",
+ "reference": "TXN9402801"
+ }
+ ```
+
+---
+
+## 9. ๐ ๏ธ Utilities & Webhooks APIs
+
+### 9.1 Send Single Push Notification
+* **URL**: `POST https://jupiter.nearle.app/live/api/v1/utils/notifyuser`
+* **Request Body**:
+ ```json
+ {
+ "token": "FCM_DEVICE_TOKEN_ABC",
+ "notification": {
+ "title": "Welcome to Nearle!",
+ "body": "Your registration was successful.",
+ "sound": "default",
+ "type": "welcome"
+ }
+ }
+ ```
+
+### 9.2 Send Multi-token Broadcast Push Notification
+* **URL**: `POST https://jupiter.nearle.app/live/api/v1/utils/sendnotifications`
+* **Request Body**:
+ ```json
+ {
+ "token": ["FCM_TOKEN_1", "FCM_TOKEN_2"],
+ "notification": {
+ "title": "System Update",
+ "body": "System will be down for 5 mins.",
+ "sound": "default",
+ "type": "standard"
+ }
+ }
+ ```
+
+### 9.3 Create Global Logistics Rates Config
+* **URL**: `POST https://jupiter.nearle.app/live/api/v1/utils/createapppricing`
+* **Request Body**: See Tenant delivery rate setup payload structure.
+
+### 9.4 Send Push notification to Admin Console
+* **URL**: `POST https://jupiter.nearle.app/live/api/v1/utils/notifyadmin`
+* **Request Body**:
+ ```json
+ {
+ "token": "ADMIN_FCM_TOKEN",
+ "notification": {
+ "title": "Database Threshold",
+ "body": "Active connection reaches 85%.",
+ "sound": "default",
+ "type": "warning"
+ }
+ }
+ ```
+
+### 9.5 Send Push notification to Tenant Manager & log history
+* **URL**: `POST https://jupiter.nearle.app/live/api/v1/utils/notifytenant`
+* **Request Body**:
+ ```json
+ {
+ "token": "TENANT_FCM_TOKEN",
+ "tenantid": 8,
+ "moduleid": 6,
+ "locationid": 45,
+ "customerid": 4082,
+ "notification": {
+ "title": "Low Stock",
+ "body": "Fresh apples quantity falls below threshold.",
+ "sound": "default",
+ "type": "alert"
+ }
+ }
+ ```
+
+### 9.6 General Webhook Listener / Receiver
+* **URL**: `POST https://jupiter.nearle.app/live/api/v1/utils/webhooks`
+* **Request Body**:
+ ```json
+ {
+ "id": "event-uuid-1",
+ "event": "sale.created",
+ "timestamp": "2026-05-20T10:20:00Z",
+ "payload": { ... }
+ }
+ ```
+
+### 9.7 Third-party GraphQL Webhook Registration
+* **URL**: `POST https://jupiter.nearle.app/live/api/v1/utils/register-webhook`
+* **Request Body**:
+ ```json
+ {
+ "callbackurl": "https://jupiter.nearle.app/live/api/v1/utils/webhooksreceiver",
+ "secret": "webhook_secret_key"
+ }
+ ```
+
+### 9.8 Create Internal Webhook Event Configuration
+* **URL**: `POST https://jupiter.nearle.app/live/api/v1/utils/createwebhook`
+* **Request Body**:
+ ```json
+ {
+ "webhookid": 0,
+ "eventname": "sale.created",
+ "callbackurl": "https://clientapp.com/webhooks",
+ "status": "Active"
+ }
+ ```
+
+### 9.9 Shopfront Callback Webhook Receiver
+* **URL**: `POST https://jupiter.nearle.app/live/api/v1/utils/webhooksreceiver`
+* **Request Body**: Accepts payload format designated by the external Shopfront service.
+
+### 9.10 Setup Shopfront Inventory GraphQL Webhook
+* **URL**: `POST https://jupiter.nearle.app/live/api/v1/utils/webhooks/inventory`
+* **Request Body**: See V1 webhook register payload format.
+
+### 9.11 Setup physical app zone config
+* **URL**: `POST https://jupiter.nearle.app/live/api/v1/utils/createapplocationconfig`
+* **Request Body**:
+ ```json
+ {
+ "applocationid": 5,
+ "configid": 6,
+ "locationname": "Sydney Metro Hub",
+ "latitude": "-33.8688",
+ "longitude": "151.2093",
+ "status": "Active"
+ }
+ ```
+
+### 9.12 Update physical app zone config
+* **URL**: `PUT https://jupiter.nearle.app/live/api/v1/utils/updateapplocationconfig`
+* **Request Body**: See V1 app zone setup payload format.
+
+### 9.13 Ingest App User Credentials in Redis Cache
+* **URL**: `POST https://jupiter.nearle.app/live/api/v1/utils/createuserredis`
+* **Request Body**:
+ ```json
+ {
+ "userid": 12,
+ "authtoken": "session_bearer_token_string",
+ "expiry": 86400
+ }
+ ```
+
+### 9.14 Publish Rider Periodic Coordinates Log
+* **URL**: `POST https://jupiter.nearle.app/live/api/v1/utils/createriderperiodiclog`
+* **Request Body**:
+ ```json
+ {
+ "userid": 12,
+ "latitude": "-33.8688",
+ "longitude": "151.2093",
+ "speed": "15.4",
+ "heading": "90.0",
+ "timestamp": "2026-05-20T10:20:00Z"
+ }
+ ```
+
+### 9.15 Publish Rider Current Duty status
+* **URL**: `POST https://jupiter.nearle.app/live/api/v1/utils/createriderstatus`
+* **Request Body**:
+ ```json
+ {
+ "userid": 12,
+ "onduty": 1,
+ "status": "idle"
+ }
+ ```
+
+---
+
+## 10. ๐ณ Payments APIs
+
+### 10.1 Issue Customer Payment Charge Request
+* **URL**: `POST https://jupiter.nearle.app/live/api/v1/payments/requests/create`
+* **Request Body**:
+ ```json
+ {
+ "amount": 250.00,
+ "currency": "AUD",
+ "customerid": 4082,
+ "description": "Invoice Payment INV-00802"
+ }
+ ```
diff --git a/index.html b/index.html
index 549b3b5..f3e7e41 100644
--- a/index.html
+++ b/index.html
@@ -5,7 +5,7 @@
-
Nearle Express Developer Docs
+ NearleXpress Developer Docs
diff --git a/src/components/Introduction.jsx b/src/components/Introduction.jsx
index d64e7c1..c80e09e 100644
--- a/src/components/Introduction.jsx
+++ b/src/components/Introduction.jsx
@@ -26,7 +26,7 @@ export default function Introduction({ allLegacy, allRest, setActiveTopic }) {
- Nearle Express API
+ NearleXpress API
diff --git a/src/components/Sidebar.jsx b/src/components/Sidebar.jsx
index 150fe0c..cbddfe4 100644
--- a/src/components/Sidebar.jsx
+++ b/src/components/Sidebar.jsx
@@ -52,7 +52,7 @@ export default function Sidebar({ legacyTopics, restTopics, activeTopic, setActi
- Nearle Express
+ NearleXpress
diff --git a/src/data/topics.js b/src/data/topics.js
index 7df770f..14f4f53 100644
--- a/src/data/topics.js
+++ b/src/data/topics.js
@@ -1,5 +1,5 @@
export const LEGACY_BASE_URL = 'https://api.workolik.com';
-export const REST_BASE_URL = 'https://fiesta.nearle.app';
+export const REST_BASE_URL = 'https://jupiter.nearle.app';
export const legacyTopics = [
{
@@ -17,22 +17,19 @@ export const legacyTopics = [
"name": "getapptypes",
"method": "GET",
"url": "/api/rest/xpress/utils/getapptypes?tag=DELIVERY",
- "description": "List application types filtered by a tag (e.g. DELIVERY).",
- "_note": "Host typo in source ('workopi') corrected to api.workolik.com."
+ "description": "List application types filtered by a tag (e.g. DELIVERY)."
},
{
"name": "getapplocations",
"method": "GET",
"url": "/api/rest/xpress/utils/getapplocations?userid=1326",
- "description": "List all application locations.",
- "_note": "Source name 'Gpplocation' assumed to be 'Getapplocations'."
+ "description": "List all application locations."
},
{
"name": "getapppricing",
"method": "GET",
"url": "/api/rest/xpress/utils/getapppricing?applocationid=1",
- "description": "Retrieve app pricing for a given app location.",
- "_note": "Source query 'getapppripplocationid=' reconstructed as 'getapppricing?applocationid='."
+ "description": "Retrieve app pricing for a given app location."
},
{
"name": "getallpricing",
@@ -44,8 +41,7 @@ export const legacyTopics = [
"name": "getapplocationconfig",
"method": "GET",
"url": "/api/rest/xpress/utils/getapplocationconfig",
- "description": "Retrieve the configuration for application locations.",
- "_note": "Host typo in source ('workom') corrected to api.workolik.com."
+ "description": "Retrieve the configuration for application locations."
},
{
"name": "getsubcategories",
@@ -95,8 +91,7 @@ export const legacyTopics = [
"name": "getpartners",
"method": "GET",
"url": "/api/rest/xpress/partners/getpartners",
- "description": "List all partners.",
- "_note": "Source URL had a double slash (/api/rest//partners/) โ assumed /xpress/partners/."
+ "description": "List all partners."
},
{
"name": "getriderpricing",
@@ -120,15 +115,13 @@ export const legacyTopics = [
"name": "getriderdetail",
"method": "GET",
"url": "/api/rest/xpress/partners/getriderdetail?userid=1",
- "description": "Detailed information for a specific rider.",
- "_note": "Source had 'htapi.workolik.com' (missing 'tps://') โ restored to https://api.workolik.com."
+ "description": "Detailed information for a specific rider."
},
{
"name": "getridershifts",
"method": "GET",
"url": "/api/rest/xpress/partners/getridershifts?applocationid=1",
- "description": "Get rider shift records for an app location.",
- "_note": "Host typo in source ('workk.com') corrected to api.workolik.com."
+ "description": "Get rider shift records for an app location."
}
]
},
@@ -141,69 +134,13 @@ export const legacyTopics = [
"name": "gettenants",
"method": "GET",
"url": "/api/rest/xpress/tenants/gettenants?applocationid=1&status=active&partnerid=44",
- "description": "List tenants filtered by app location and status.",
- "params": [
- {
- "name": "applocationid",
- "type": "STRING",
- "default": "1"
- },
- {
- "name": "status",
- "type": "STRING",
- "default": "active"
- },
- {
- "name": "partnerid",
- "type": "string",
- "default": "44"
- }
- ],
- "_note": "Source name 'Gettenan' truncated โ assumed 'Gettenants'."
+ "description": "List tenants filtered by app location and status."
},
{
"name": "getalltenants",
"method": "GET",
"url": "/api/rest/xpress/tenants/getalltenants?applocationid=1&moduleid=6&tenanttype=E&keyword=%25%25&status=Active&limit=10&offset=0",
- "description": "List all tenants with extensive filters.",
- "params": [
- {
- "name": "applocationid",
- "type": "STRING",
- "default": "1"
- },
- {
- "name": "moduleid",
- "type": "STRING",
- "default": "6"
- },
- {
- "name": "tenanttype",
- "type": "STRING",
- "default": "E"
- },
- {
- "name": "keyword",
- "type": "STRING",
- "default": "%%"
- },
- {
- "name": "status",
- "type": "STRING",
- "default": "Active"
- },
- {
- "name": "limit",
- "type": "STRING",
- "default": "10"
- },
- {
- "name": "offset",
- "type": "STRING",
- "default": "0"
- }
- ],
- "_note": "Source query 'status=Actilimit=10' reconstructed as 'status=Active&limit=10'. 'approved=1' param dropped per spec."
+ "description": "List all tenants with extensive filters."
},
{
"name": "gettenantinfo",
@@ -221,29 +158,25 @@ export const legacyTopics = [
"name": "gettenantsummary",
"method": "GET",
"url": "/api/rest/xpress/tenants/gettenantsummary?moduleid=6&applocationid=1&tenanttype=E&keyword=%%",
- "description": "Aggregated summary for tenants under a module/location.",
- "_note": "Source 'tenettenantsummary' reconstructed as 'tenants/gettenantsummary'."
+ "description": "Aggregated summary for tenants under a module/location."
},
{
"name": "getpricinglist",
"method": "GET",
"url": "/api/rest/xpress/tenants/getpricinglist?tenantid=1087",
- "description": "Retrieve the tenantโs pricing list.",
- "_note": "Source 'getpricingl' truncated โ assumed 'getpricinglist'."
+ "description": "Retrieve the tenant's pricing list."
},
{
"name": "tenantsearch",
"method": "GET",
"url": "/api/rest/xpress/tenants/search?keyword=daily&status=active",
- "description": "Full-text search for tenants by keyword.",
- "_note": "Source name 'Tennatsearch' assumed to be 'Tenantsearch'."
+ "description": "Full-text search for tenants by keyword."
},
{
"name": "getorders",
"method": "GET",
"url": "/api/rest/xpress/tenant/getorders?applocationid=&tenantid=&locationid=&status=",
- "description": "List orders scoped to a single tenant.",
- "_note": "Source uses /tenant/ (singular) here. Confirm whether this should be /tenants/ or kept as /tenant/."
+ "description": "List orders scoped to a single tenant."
}
]
},
@@ -262,15 +195,13 @@ export const legacyTopics = [
"name": "gettenantcustomers",
"method": "GET",
"url": "/api/rest/xpress/customers/gettenantcustomers?tenantid=1087&limit=10&offset=0",
- "description": "List customers under a specific tenant.",
- "_note": "Source path 'xpresustomers' reconstructed as 'xpress/customers'."
+ "description": "List customers under a specific tenant."
},
{
"name": "searchcustomers",
"method": "GET",
"url": "/api/rest/xpress/customers/searchcustomers?tenantid=1087&keyword=%%",
- "description": "Search customers by keyword within a tenant.",
- "_note": "Source name 'Searchcumer' assumed to be 'Searchcustomers'."
+ "description": "Search customers by keyword within a tenant."
}
]
},
@@ -283,15 +214,13 @@ export const legacyTopics = [
"name": "getdeliveries",
"method": "GET",
"url": "/api/rest/xpress/deliveries/getdeliveries?tenantid=10&status=Delivered&fromdate=2026-05-01T00:00:00&todate=2026-05-05T23:59:59&keyword=%john%&limit=10&offset=0",
- "description": "List deliveries with filters: tenant, status, date range, keyword.",
- "_note": "Source query 'tenantid=10=Delivered' reconstructed as 'tenantid=10&status=Delivered'."
+ "description": "List deliveries with filters: tenant, status, date range, keyword."
},
{
"name": "getdeliveryqueues",
"method": "GET",
"url": "/api/rest/xpress/deliveries/getdeliveryqueues?userid=1277&fdate=2025-12-30T00:00:00 &tdate=2025-12-30T23:59:59",
- "description": "Retrieve delivery queue snapshots for a user/date range.",
- "_note": "Source name 'tdeliveryqueues' truncated โ assumed 'Getdeliveryqueues'."
+ "description": "Retrieve delivery queue snapshots for a user/date range."
},
{
"name": "deliverysummary",
@@ -303,8 +232,7 @@ export const legacyTopics = [
"name": "getriderbydelivery",
"method": "GET",
"url": "/api/rest/xpress/deliveries/getriderbydelivery/?applocationid=&tenantid=&locationid=&fromdate=&todate=&keyword=",
- "description": "Map riders to deliveries within a location and date range.",
- "_note": "Source URL was missing 'https' scheme โ restored."
+ "description": "Map riders to deliveries within a location and date range."
}
]
},
@@ -367,8 +295,7 @@ export const legacyTopics = [
"name": "getinvoiceinsight",
"method": "GET",
"url": "/api/rest/xpress/invoice/getinvoiceinsight?tenantid=916",
- "description": "Retrieve invoice insights and statistics for a tenant.",
- "_note": "Source name 'Getinvoinsights' assumed to be 'Getinvoiceinsight'."
+ "description": "Retrieve invoice insights and statistics for a tenant."
}
]
},
@@ -388,1151 +315,647 @@ export const legacyTopics = [
];
export const restTopics = [
- {
- "id": "utils",
- "name": "Utils",
- "description": "Shared lookup endpoints roles, locations, configs, app types, pricing.",
- "endpoints": [
- {
- "name": "Fetch application categories by tag (Web)",
- "method": "GET",
- "url": "/live/api/v1/web/utils/getapptypes?tag=customer",
- "description": "Fetch application categories by tag (Web)"
- },
- {
- "name": "Resolve subcategories (Web)",
- "method": "GET",
- "url": "/live/api/v1/web/utils/getsubcategories?moduleid=1&categoryid=2",
- "description": "Resolve subcategories (Web)"
- },
- {
- "name": "Fetch system active geofence details (Web)",
- "method": "GET",
- "url": "/live/api/v1/web/utils/getapplocations?applocationid=1",
- "description": "Fetch system active geofence details (Web)"
- },
- {
- "name": "Fetch global system categories configurations (Web)",
- "method": "GET",
- "url": "/live/api/v1/web/utils/getappcategories",
- "description": "Fetch global system categories configurations (Web)"
- },
- {
- "name": "Get mobile geofence configuration details (Mobile)",
- "method": "GET",
- "url": "/live/api/v1/mob/utils/getapplocationconfig?applocationid=1",
- "description": "Get mobile geofence configuration details (Mobile)"
- },
- {
- "name": "Get mobile active geofence details (Mobile)",
- "method": "GET",
- "url": "/live/api/v1/mob/utils/getapplocations?applocationid=1",
- "description": "Get mobile active geofence details (Mobile)"
- },
- {
- "name": "Fetch mobile app types by tag (Mobile)",
- "method": "GET",
- "url": "/live/api/v1/mob/utils/getapptypes?tag=rider",
- "description": "Fetch mobile app types by tag (Mobile)"
- },
- {
- "name": "Fetch global payment & geofence configs (Mobile)",
- "method": "GET",
- "url": "/live/api/v1/mob/utils/getappconfig?configid=1",
- "description": "Fetch global payment & geofence configs (Mobile)"
- },
- {
- "name": "Get mobile category subcategories list (Mobile)",
- "method": "GET",
- "url": "/live/api/v1/mob/utils/getsubcategories?moduleid=1&categoryid=2",
- "description": "Get mobile category subcategories list (Mobile)"
- },
- {
- "name": "Fetch mobile app categories configurations (Mobile)",
- "method": "GET",
- "url": "/live/api/v1/mob/utils/getappcategories",
- "description": "Fetch mobile app categories configurations (Mobile)"
- }
- ]
- },
{
"id": "users",
"name": "Users",
- "description": "Manage users and roles across the Xpress platform.",
+ "description": "User authentication, profile management, and role-based access across web and mobile.",
"endpoints": [
{
- "name": "Get all users (Web)",
+ "name": "Get user by ID (V1)",
"method": "GET",
- "url": "/live/api/v1/web/users/getallusers?roleid=2&tenantid=8&pageno=1&pagesize=10&keyword=john",
- "description": "Get all users (Web)"
+ "url": "/live/api/v1/users/getusers?userid=12",
+ "description": "Get a specific user profile by ID."
},
{
- "name": "Get a specific user profile by ID (Web)",
+ "name": "Get user by username",
"method": "GET",
- "url": "/live/api/v1/web/users/getusers?userid=12",
- "description": "Get a specific user profile by ID (Web)"
+ "url": "/live/api/v1/users/getusers?username=rider_joe",
+ "description": "Get a specific user profile by username."
},
{
- "name": "Get a specific user profile by ID (Mobile)",
+ "name": "Get all users (V1)",
"method": "GET",
- "url": "/live/api/v1/mob/users/getusers?userid=15",
- "description": "Get a specific user profile by ID (Mobile)"
+ "url": "/live/api/v1/users/getallusers?roleid=2&tenantid=8&pageno=1&pagesize=10&keyword=john",
+ "description": "List all users with filters: role, tenant, keyword, pagination."
},
{
- "name": "Operator/User orders board (Web)",
+ "name": "Get all users (V2)",
"method": "GET",
- "url": "/live/api/v1/web/orders/user/getorders?appuserid=12&status=processing&pageno=1&pagesize=10",
- "description": "Operator/User orders board (Web)"
+ "url": "/live/api/v2/users/getallusers?roleid=2&tenantid=8&pageno=1&pagesize=10&keyword=john",
+ "description": "List all users (V2) with filters: role, tenant, keyword, pagination."
},
{
- "name": "Tenant Web Panel Login",
+ "name": "User Login",
"method": "POST",
- "url": "/live/api/v1/web/users/tenant/weblogin",
- "description": "Tenant Web Panel Login",
+ "url": "/live/api/v1/users/login",
+ "description": "Generic staff / admin login.",
"body": {
- "authname": "merchant_admin_01",
- "password": "PasswordSecurityHash99!"
+ "username": "admin_nearle",
+ "password": "secure_password_hash"
}
},
{
- "name": "General Application Login",
+ "name": "Tenant Login",
"method": "POST",
- "url": "/live/api/v1/web/users/applogin",
- "description": "General Application Login",
+ "url": "/live/api/v1/users/tenant/login",
+ "description": "Tenant manager login.",
"body": {
- "authname": "system_operator",
- "password": "OperatorSafePasswordSecret",
- "deviceid": "device_uuid_8828b",
+ "username": "tenant_manager",
+ "password": "secure_password_hash"
+ }
+ },
+ {
+ "name": "Partner Login",
+ "method": "POST",
+ "url": "/live/api/v1/users/partner/login",
+ "description": "Logistics partner login.",
+ "body": {
+ "username": "logistics_partner_ceo",
+ "password": "secure_password_hash"
+ }
+ },
+ {
+ "name": "Rider Login (V1)",
+ "method": "POST",
+ "url": "/live/api/v1/users/rider/login",
+ "description": "Rider authentication (V1).",
+ "body": {
+ "username": "rider_john",
+ "password": "rider_password"
+ }
+ },
+ {
+ "name": "Rider Login with PIN & FCM (V2)",
+ "method": "POST",
+ "url": "/live/api/v2/users/rider/login",
+ "description": "Rider authentication with PIN and FCM token (V2).",
+ "body": {
+ "username": "rider_john",
+ "pin": 1234,
+ "userfcmtoken": "fcm_device_token_abc123",
+ "deviceid": "device_uuid_981249",
"devicetype": "android"
}
},
{
- "name": "Register New Web Staff Account",
+ "name": "Tenant Web Login",
"method": "POST",
- "url": "/live/api/v1/web/users/create",
- "description": "Register New Web Staff Account",
+ "url": "/live/api/v1/users/tenant/weblogin",
+ "description": "Tenant web panel login.",
"body": {
- "authname": "tenant_staff_steve",
- "firstname": "Steve",
- "lastname": "Rogers",
- "password": "SteveSecurePassword12",
- "email": "steve.rogers@merchant.com",
- "dialcode": "+61",
- "contactno": "412345678",
- "roleid": 3,
+ "username": "tenant_web_admin",
+ "password": "secure_password_hash"
+ }
+ },
+ {
+ "name": "Create User (V1)",
+ "method": "POST",
+ "url": "/live/api/v1/users/create",
+ "description": "Register a new app user.",
+ "body": {
+ "userid": 0,
+ "authname": "rider_joe",
+ "firstname": "Joe",
+ "lastname": "Smith",
+ "password": "joe_password_raw",
+ "email": "joe.smith@nearle.app",
+ "contactno": "+61400111222",
+ "roleid": 4,
"pin": 1234,
- "address": "100 Flinders St",
- "suburb": "Melbourne",
- "city": "Melbourne",
- "state": "VIC",
- "postcode": "3000",
"tenantid": 8,
- "locationid": 2,
- "applocationid": 1,
- "status": "active"
+ "locationid": 45,
+ "applocationid": 5,
+ "status": "Active"
}
},
{
- "name": "Update Web Staff User Details",
- "method": "PUT",
- "url": "/live/api/v1/web/users/update",
- "description": "Update Web Staff User Details",
- "body": {
- "userid": 15,
- "firstname": "Steve",
- "lastname": "Captain",
- "email": "steve.captain@merchant.com",
- "contactno": "412345678",
- "address": "200 Flinders St",
- "suburb": "Melbourne",
- "city": "Melbourne",
- "state": "VIC",
- "postcode": "3000",
- "status": "active"
- }
- },
- {
- "name": "Rider/Merchant Mobile App Login",
+ "name": "Create User (V2)",
"method": "POST",
- "url": "/live/api/v1/mob/users/tenant/login",
- "description": "Rider/Merchant Mobile App Login",
+ "url": "/live/api/v2/users/create",
+ "description": "Register a new app user (V2).",
"body": {
- "authname": "rider_john_01",
- "password": "RiderSecretKey"
- }
- },
- {
- "name": "Create Mobile Staff User",
- "method": "POST",
- "url": "/live/api/v1/mob/users/create",
- "description": "Create Mobile Staff User Payload: (Uses the same schema as Web Register New Web Staff Account)",
- "body": {
- "authname": "tenant_staff_steve",
- "firstname": "Steve",
- "lastname": "Rogers",
- "password": "SteveSecurePassword12",
- "email": "steve.rogers@merchant.com",
- "dialcode": "+61",
- "contactno": "412345678",
- "roleid": 3,
+ "userid": 0,
+ "authname": "rider_joe",
+ "firstname": "Joe",
+ "lastname": "Smith",
+ "password": "joe_password_raw",
+ "email": "joe.smith@nearle.app",
+ "contactno": "+61400111222",
+ "roleid": 4,
"pin": 1234,
- "address": "100 Flinders St",
- "suburb": "Melbourne",
- "city": "Melbourne",
- "state": "VIC",
- "postcode": "3000",
"tenantid": 8,
- "locationid": 2,
- "applocationid": 1,
- "status": "active"
+ "locationid": 45,
+ "applocationid": 5,
+ "status": "Active"
}
},
{
- "name": "Update Mobile Staff Details",
+ "name": "Update User (V1)",
"method": "PUT",
- "url": "/live/api/v1/mob/users/update",
- "description": "Update Mobile Staff Details Payload: (Uses the same schema as Web Update Web Staff User Details)",
+ "url": "/live/api/v1/users/update",
+ "description": "Update app user details.",
"body": {
- "userid": 15,
- "firstname": "Steve",
- "lastname": "Captain",
- "email": "steve.captain@merchant.com",
- "contactno": "412345678",
- "address": "200 Flinders St",
- "suburb": "Melbourne",
- "city": "Melbourne",
- "state": "VIC",
- "postcode": "3000",
- "status": "active"
- }
- }
- ]
- },
- {
- "id": "partners",
- "name": "Partners",
- "description": "Partners, riders, locations, shifts, and rider pricing.",
- "endpoints": [
- {
- "name": "Partner fleet orders board (Web)",
- "method": "GET",
- "url": "/live/api/v1/web/orders/partner/getorders?partnerid=1&status=processing&pageno=1&pagesize=10",
- "description": "Partner fleet orders board (Web)"
- },
- {
- "name": "Get active riders (Web)",
- "method": "GET",
- "url": "/live/api/v1/web/partners/getriders?partnerid=1&applocationid=1&userid=12&tenantid=8",
- "description": "Get active riders (Web)"
- },
- {
- "name": "Get partner profiles (Web)",
- "method": "GET",
- "url": "/live/api/v1/web/partners/getpartners?partnerid=1&applocationid=1&userid=12",
- "description": "Get partner profiles (Web)"
- },
- {
- "name": "Get rider shifts (Web)",
- "method": "GET",
- "url": "/live/api/v1/web/partners/getridershifts?applocationid=1",
- "description": "Get rider shifts (Web)"
- },
- {
- "name": "Get location configurations (Web)",
- "method": "GET",
- "url": "/live/api/v1/web/partners/getlocations?userid=12&configid=1",
- "description": "Get location configurations (Web)"
- },
- {
- "name": "Get rider log sheet (Web)",
- "method": "GET",
- "url": "/live/api/v1/web/partners/getriderlogs?partnerid=1&applocationid=1&fromdate=2026-05-20&todate=2026-05-20",
- "description": "Get rider log sheet (Web)"
- },
- {
- "name": "Get partner profiles (Mobile)",
- "method": "GET",
- "url": "/live/api/v1/mob/partners/getpartners?partnerid=1&applocationid=1&userid=12",
- "description": "Get partner profiles (Mobile)"
- },
- {
- "name": "Get rider log sheet (Mobile)",
- "method": "GET",
- "url": "/live/api/v1/mob/partners/getriderlogs?partnerid=1&applocationid=1&fromdate=2026-05-20&todate=2026-05-20",
- "description": "Get rider log sheet (Mobile)"
- },
- {
- "name": "Get rider operational info (Mobile)",
- "method": "GET",
- "url": "/live/api/v1/mob/partners/getriderinfo?userid=15",
- "description": "Get rider operational info (Mobile)"
- },
- {
- "name": "Get active riders list (Mobile)",
- "method": "GET",
- "url": "/live/api/v1/mob/partners/getriders?partnerid=1&applocationid=1&userid=15&tenantid=8",
- "description": "Get active riders list (Mobile)"
- }
- ]
- },
- {
- "id": "tenants",
- "name": "Tenants",
- "description": "Tenant accounts info, locations, customers, orders, pricing, summary.",
- "endpoints": [
- {
- "name": "Tenant orders board (Web)",
- "method": "GET",
- "url": "/live/api/v1/web/orders/tenant/getorders?tenantid=8&locationid=2&status=processing&pageno=1&pagesize=10",
- "description": "Tenant orders board (Web)"
- },
- {
- "name": "Get specific tenant store orders (Mobile)",
- "method": "GET",
- "url": "/live/api/v1/mob/orders/tenant/getorders?tenantid=8&locationid=2&pageno=1&pagesize=10",
- "description": "Get specific tenant store orders (Mobile)"
- },
- {
- "name": "Search registered tenants (Web)",
- "method": "GET",
- "url": "/live/api/v1/web/tenants/search?status=Active&keyword=Fresh",
- "description": "Search registered tenants (Web)"
- },
- {
- "name": "Search tenants by keyword (Web)",
- "method": "GET",
- "url": "/live/api/v1/web/tenants/searchbykeyword?keyword=daily",
- "description": "Search tenants by keyword (Web)"
- },
- {
- "name": "Get all active tenants catalog (Web)",
- "method": "GET",
- "url": "/live/api/v1/web/tenants/getalltenants?applocationid=1&status=Active&pageno=1&pagesize=10",
- "description": "Get all active tenants catalog (Web)"
- },
- {
- "name": "Get outlet locations assigned to a tenant (Web)",
- "method": "GET",
- "url": "/live/api/v1/web/tenants/gettenantlocations?tenantid=8",
- "description": "Get outlet locations assigned to a tenant (Web)"
- },
- {
- "name": "Retrieve delivery time slots config (Mobile)",
- "method": "GET",
- "url": "/live/api/v1/mob/tenants/gettenantslot",
- "description": "Retrieve delivery time slots config (Mobile)"
- },
- {
- "name": "Search tenants by keyword (Mobile)",
- "method": "GET",
- "url": "/live/api/v1/mob/tenants/searchbykeyword?keyword=grocery",
- "description": "Search tenants by keyword (Mobile)"
- },
- {
- "name": "Retrieve tenants associated with a customer (Mobile)",
- "method": "GET",
- "url": "/live/api/v1/mob/tenants/getcustomertenants?customerid=4082&tenant=0",
- "description": "Retrieve tenants associated with a customer (Mobile)"
- },
- {
- "name": "Get outlet locations linked to a tenant (Mobile)",
- "method": "GET",
- "url": "/live/api/v1/mob/tenants/gettenantlocations?tenantid=8",
- "description": "Get outlet locations linked to a tenant (Mobile)"
- },
- {
- "name": "Get logistics pricing slabs for a tenant (Mobile)",
- "method": "GET",
- "url": "/live/api/v1/mob/tenants/gettenantpricing?tenantid=8&applocationid=1",
- "description": "Get logistics pricing slabs for a tenant (Mobile)"
- },
- {
- "name": "Get staff members under a tenant store (Mobile)",
- "method": "GET",
- "url": "/live/api/v1/mob/tenants/getstaffs?tenantid=8",
- "description": "Get staff members under a tenant store (Mobile)"
- },
- {
- "name": "Get tenant detailed profile info (Mobile)",
- "method": "GET",
- "url": "/live/api/v1/mob/tenants/gettenantinfo?tenantid=8&locationid=2",
- "description": "Get tenant detailed profile info (Mobile)"
- },
- {
- "name": "Link Customer Profile to Tenant Store",
- "method": "POST",
- "url": "/live/api/v1/web/tenants/createtenantcustomer",
- "description": "Link Customer Profile to Tenant Store",
- "body": {
- "moduleid": 1,
- "tenantid": 8,
- "locationid": 2,
- "customerid": 4082,
- "customerlocationid": 554,
- "status": 1
- }
- },
- {
- "name": "Create New Geofenced Store Location",
- "method": "POST",
- "url": "/live/api/v1/web/tenants/createlocation",
- "description": "Create New Geofenced Store Location",
- "body": {
- "tenantid": 8,
- "applocationid": 1,
- "moduleid": 1,
- "locationname": "Hawthorn Daily Fresh Store",
- "email": "hawthorn.store@merchant.com",
- "contactno": "399443322",
- "latitude": "-37.8222",
- "longitude": "145.0384",
- "address": "12 Glenferrie Rd",
- "suburb": "Hawthorn",
- "city": "Melbourne",
- "state": "VIC",
- "postcode": "3122",
- "opentime": "07:00:00",
- "closetime": "22:00:00",
- "partnerid": 1,
- "deliveryradius": 5000,
- "deliverymins": 30,
- "cancelsecs": 60,
- "status": "Active"
- }
- },
- {
- "name": "Map Tenant Location Linkage Entry",
- "method": "POST",
- "url": "/live/api/v1/web/tenants/createtenantlocation",
- "description": "Map Tenant Location Linkage Entry Payload: (Uses the same schema as Create New Geofenced Store Location)",
- "body": {
- "tenantid": 8,
- "applocationid": 1,
- "moduleid": 1,
- "locationname": "Hawthorn Daily Fresh Store",
- "email": "hawthorn.store@merchant.com",
- "contactno": "399443322",
- "latitude": "-37.8222",
- "longitude": "145.0384",
- "address": "12 Glenferrie Rd",
- "suburb": "Hawthorn",
- "city": "Melbourne",
- "state": "VIC",
- "postcode": "3122",
- "opentime": "07:00:00",
- "closetime": "22:00:00",
- "partnerid": 1,
- "deliveryradius": 5000,
- "deliverymins": 30,
- "cancelsecs": 60,
- "status": "Active"
- }
- },
- {
- "name": "Update Store Location Configurations",
- "method": "PUT",
- "url": "/live/api/v1/web/tenants/updatelocation",
- "description": "Update Store Location Configurations",
- "body": {
- "locationid": 2,
- "tenantid": 8,
- "applocationid": 1,
- "locationname": "Richmond Daily Fresh Store",
- "email": "richmond.store@merchant.com",
- "contactno": "399887766",
- "latitude": "-37.8212",
- "longitude": "144.9984",
- "address": "Shop 4, 100 Church St",
- "suburb": "Richmond",
- "city": "Melbourne",
- "state": "VIC",
- "postcode": "3121",
- "opentime": "07:00:00",
- "closetime": "22:00:00",
- "deliveryradius": 8000,
- "deliverymins": 45,
- "cancelsecs": 120,
- "status": "Active"
- }
- },
- {
- "name": "Modify Tenant Location Linkage Config",
- "method": "PUT",
- "url": "/live/api/v1/web/tenants/updatetenantlocation",
- "description": "Modify Tenant Location Linkage Config Payload: (Uses the same schema as Update Store Location Configurations)",
- "body": {
- "locationid": 2,
- "tenantid": 8,
- "applocationid": 1,
- "locationname": "Richmond Daily Fresh Store",
- "email": "richmond.store@merchant.com",
- "contactno": "399887766",
- "latitude": "-37.8212",
- "longitude": "144.9984",
- "address": "Shop 4, 100 Church St",
- "suburb": "Richmond",
- "city": "Melbourne",
- "state": "VIC",
- "postcode": "3121",
- "opentime": "07:00:00",
- "closetime": "22:00:00",
- "deliveryradius": 8000,
- "deliverymins": 45,
- "cancelsecs": 120,
- "status": "Active"
- }
- },
- {
- "name": "Mobile Link Customer Profile to Tenant Store",
- "method": "POST",
- "url": "/live/api/v1/mob/tenants/createtenantcustomer",
- "description": "Mobile Link Customer Profile to Tenant Store Payload: (Uses the same schema as Web Link Customer Profile to Tenant Store)",
- "body": {
- "moduleid": 1,
- "tenantid": 8,
- "locationid": 2,
- "customerid": 4082,
- "customerlocationid": 554,
- "status": 1
- }
- },
- {
- "name": "Mobile Create Geofenced Store Location",
- "method": "POST",
- "url": "/live/api/v1/mob/tenants/createlocation",
- "description": "Mobile Create Geofenced Store Location Payload: (Uses the same schema as Web Create New Geofenced Store Location)",
- "body": {
- "tenantid": 8,
- "applocationid": 1,
- "moduleid": 1,
- "locationname": "Hawthorn Daily Fresh Store",
- "email": "hawthorn.store@merchant.com",
- "contactno": "399443322",
- "latitude": "-37.8222",
- "longitude": "145.0384",
- "address": "12 Glenferrie Rd",
- "suburb": "Hawthorn",
- "city": "Melbourne",
- "state": "VIC",
- "postcode": "3122",
- "opentime": "07:00:00",
- "closetime": "22:00:00",
- "partnerid": 1,
- "deliveryradius": 5000,
- "deliverymins": 30,
- "cancelsecs": 60,
- "status": "Active"
- }
- },
- {
- "name": "Onboard/Create New Staff Member Account",
- "method": "POST",
- "url": "/live/api/v1/mob/tenants/createstaff",
- "description": "Onboard/Create New Staff Member Account Payload: (Uses the same schema as Web Register New Web Staff Account)",
- "body": {
- "authname": "tenant_staff_steve",
- "firstname": "Steve",
- "lastname": "Rogers",
- "password": "SteveSecurePassword12",
- "email": "steve.rogers@merchant.com",
- "dialcode": "+61",
- "contactno": "412345678",
- "roleid": 3,
+ "userid": 12,
+ "authname": "rider_joe",
+ "firstname": "Joseph",
+ "lastname": "Smith",
+ "email": "joseph.smith@nearle.app",
+ "contactno": "+61400111222",
+ "roleid": 4,
"pin": 1234,
- "address": "100 Flinders St",
- "suburb": "Melbourne",
- "city": "Melbourne",
- "state": "VIC",
- "postcode": "3000",
"tenantid": 8,
- "locationid": 2,
- "applocationid": 1,
- "status": "active"
- }
- },
- {
- "name": "Onboard New Tenant & Admin Profile (Joint Creation)",
- "method": "POST",
- "url": "/live/api/v1/mob/tenants/createtenantuser",
- "description": "Onboard New Tenant & Admin Profile (Joint Creation)",
- "body": {
- "tenantname": "Fresh Organic Greens",
- "configid": 1,
- "partnerid": 1,
- "moduleid": 1,
- "tenanttype": "Enterprise",
- "registrationno": "ABN-19028-299",
- "tenanttoken": "tenant_fcm_token_hash_value_xyz",
- "companyname": "Fresh Organic Greens Pty Ltd",
- "devicetype": "web",
- "firstname": "Arthur",
- "primaryemail": "arthur@organicgreens.com",
- "primarycontact": "488999000",
- "categoryid": 2,
- "subcategoryid": 12,
- "address": "400 Chapel St",
- "suburb": "South Yarra",
- "city": "Melbourne",
- "state": "VIC",
- "postcode": "3141",
- "latitude": "-37.8398",
- "longitude": "144.9953",
- "tenantimage": "https://storage.nearle.app/tenants/organic_greens.png",
- "tenantinfo": "Direct farm-to-table organic vegetables delivery provider.",
- "paymode1": 1,
- "paymode2": 1,
- "promotion": 0,
- "minorder": 15,
- "applocationid": 1,
- "approved": 1,
- "status": "Active",
- "tenantlocations": {
- "locationname": "South Yarra Main Warehouse",
- "email": "southyarra@organicgreens.com",
- "contactno": "488999000",
- "latitude": "-37.8398",
- "longitude": "144.9953",
- "address": "400 Chapel St",
- "suburb": "South Yarra",
- "city": "Melbourne",
- "state": "VIC",
- "postcode": "3141",
- "opentime": "06:00:00",
- "closetime": "21:00:00",
- "partnerid": 1,
- "deliveryradius": 6000,
- "deliverymins": 30,
- "cancelsecs": 90,
- "status": "Active"
- }
- }
- },
- {
- "name": "Mobile Update Store Location Configurations",
- "method": "PUT",
- "url": "/live/api/v1/mob/tenants/updatelocation",
- "description": "Mobile Update Store Location Configurations Payload: (Uses the same schema as Web Update Store Location Configurations)",
- "body": {
- "locationid": 2,
- "tenantid": 8,
- "applocationid": 1,
- "locationname": "Richmond Daily Fresh Store",
- "email": "richmond.store@merchant.com",
- "contactno": "399887766",
- "latitude": "-37.8212",
- "longitude": "144.9984",
- "address": "Shop 4, 100 Church St",
- "suburb": "Richmond",
- "city": "Melbourne",
- "state": "VIC",
- "postcode": "3121",
- "opentime": "07:00:00",
- "closetime": "22:00:00",
- "deliveryradius": 8000,
- "deliverymins": 45,
- "cancelsecs": 120,
+ "locationid": 45,
+ "applocationid": 5,
"status": "Active"
}
+ },
+ {
+ "name": "Update User (V2)",
+ "method": "PUT",
+ "url": "/live/api/v2/users/update",
+ "description": "Update app user details (V2).",
+ "body": {
+ "userid": 12,
+ "authname": "rider_joe",
+ "firstname": "Joseph",
+ "lastname": "Smith",
+ "email": "joseph.smith@nearle.app",
+ "contactno": "+61400111222",
+ "roleid": 4,
+ "pin": 1234,
+ "tenantid": 8,
+ "locationid": 45,
+ "applocationid": 5,
+ "status": "Active"
+ }
+ },
+ {
+ "name": "Delete User",
+ "method": "DELETE",
+ "url": "/live/api/v1/users/delete",
+ "description": "Remove an app user account.",
+ "body": {
+ "userid": 12
+ }
}
]
},
{
"id": "customers",
"name": "Customers",
- "description": "Customer accounts, lookups, and search.",
+ "description": "Customer registration, profile management, address book, and support requests.",
"endpoints": [
{
- "name": "Fetch customer profile by ID or Contact (Mobile)",
+ "name": "Get customer by ID",
"method": "GET",
- "url": "/live/api/v1/mob/customers/getbyid?customerid=4082&contactno=9876543210",
- "description": "Fetch customer profile by ID or Contact (Mobile)"
+ "url": "/live/api/v1/customers/getbyid?customerid=4082",
+ "description": "Fetch customer profile by ID."
},
{
- "name": "Get customer saved address locations (Mobile)",
+ "name": "Get customer by contact number",
"method": "GET",
- "url": "/live/api/v1/mob/customers/getcustomerlocation?customerid=4082",
- "description": "Get customer saved address locations (Mobile)"
+ "url": "/live/api/v1/customers/getbyno?contactno=%2B61411222333",
+ "description": "Fetch customer profile by contact number."
},
{
- "name": "Get customer logged support requests (Mobile)",
+ "name": "Get customers by tenant ID",
"method": "GET",
- "url": "/live/api/v1/mob/customers/getcustomerrequests?customerid=4082&pageno=1&pagesize=10",
- "description": "Get customer logged support requests (Mobile)"
+ "url": "/live/api/v1/customers/getbytid?tenantid=8&pageno=1&pagesize=10",
+ "description": "Retrieve customers linked to a tenant."
},
{
- "name": "Search customer names under a tenant (Mobile)",
+ "name": "Get tenant customers",
"method": "GET",
- "url": "/live/api/v1/mob/customers/search?keyword=Jane&tenantid=8",
- "description": "Search customer names under a tenant (Mobile)"
+ "url": "/live/api/v1/customers/gettenantcustomers?tenantid=8&pageno=1&pagesize=10",
+ "description": "Retrieve customers linked to a tenant location/branch."
},
{
- "name": "Retrieve customers linked to a tenant location (Mobile)",
+ "name": "Get customer locations",
"method": "GET",
- "url": "/live/api/v1/mob/customers/gettenantcustomers?tenantid=8&locationid=2&pageno=1&pagesize=10",
- "description": "Retrieve customers linked to a tenant location (Mobile)"
+ "url": "/live/api/v1/customers/getcustomerlocation?customerid=4082",
+ "description": "Get customer saved address locations."
},
{
- "name": "Retrieve merchant customers list (Web)",
+ "name": "Get customers by app location",
"method": "GET",
- "url": "/live/api/v1/web/customers/gettenantcustomers?tenantid=8&locationid=2&pageno=1&pagesize=10&keyword=jane",
- "description": "Retrieve merchant customers list (Web)"
+ "url": "/live/api/v1/customers/getcustomersbyapplocation?applocationid=5",
+ "description": "Retrieve customers linked to a general app location zone."
},
{
- "name": "Individual consumer invoice histories (Web)",
+ "name": "Get all customers",
"method": "GET",
- "url": "/live/api/v1/web/orders/customer/getorders?customerid=4082&status=delivered&pageno=1&pagesize=10",
- "description": "Individual consumer invoice histories (Web)"
+ "url": "/live/api/v1/customers/getallcustomers?pageno=1&pagesize=10&keyword=smith",
+ "description": "Retrieve all registered customers with paginated keywords."
},
{
- "name": "Passwordless OTP Login (via Phone)",
+ "name": "Get customer summary",
+ "method": "GET",
+ "url": "/live/api/v1/customers/getcustomersummary?tenantid=8",
+ "description": "Get customer counts and classifications summaries under a tenant."
+ },
+ {
+ "name": "Search customers",
+ "method": "GET",
+ "url": "/live/api/v1/customers/search?keyword=Jane&tenantid=8",
+ "description": "Search customer names under a tenant."
+ },
+ {
+ "name": "Get customer support requests",
+ "method": "GET",
+ "url": "/live/api/v1/customers/getcustomerrequests?customerid=4082&pageno=1&pagesize=10",
+ "description": "Get customer logged support requests."
+ },
+ {
+ "name": "Customer Login (OTP)",
"method": "POST",
- "url": "/live/api/v1/mob/customers/login",
- "description": "Passwordless OTP Login (via Phone)",
+ "url": "/live/api/v1/customers/login",
+ "description": "Passwordless OTP login via contact number.",
"body": {
- "contactno": "0499888777"
+ "contactno": "+61411222333"
}
},
{
- "name": "Register Customer Account",
+ "name": "Register Customer",
"method": "POST",
- "url": "/live/api/v1/mob/customers/create",
- "description": "Register Customer Account",
+ "url": "/live/api/v1/customers/create",
+ "description": "Register a new customer account.",
"body": {
+ "customerid": 0,
+ "tenantid": 8,
+ "applocationid": 5,
+ "firstname": "Jane",
+ "lastname": "Doe",
+ "email": "jane.doe@example.com",
+ "contactno": "+61411222333",
+ "dob": "1992-06-15",
+ "gender": "Female",
+ "status": "Active"
+ }
+ },
+ {
+ "name": "Update Customer Profile",
+ "method": "PUT",
+ "url": "/live/api/v1/customers/update",
+ "description": "Update customer profile details.",
+ "body": {
+ "customerid": 4082,
+ "tenantid": 8,
+ "applocationid": 5,
"firstname": "Jane",
"lastname": "Smith",
- "profileimage": "https://storage.nearle.app/avatars/jane_smith.jpg",
+ "email": "jane.smith@example.com",
+ "contactno": "+61411222333",
+ "dob": "1992-06-15",
"gender": "Female",
- "dob": "1994-11-20",
- "dialcode": "+61",
- "contactno": "499888777",
- "email": "jane.smith@gmail.com",
- "deviceid": "uuid_7728b991a",
- "devicetype": "ios",
- "authmode": 1,
- "customertoken": "fcm_token_device_hash_xyz",
- "address": "456 Oak Avenue",
- "suburb": "Richmond",
- "city": "Melbourne",
- "state": "VIC",
- "postcode": "3121",
- "latitude": "-37.8212",
- "longitude": "144.9984",
- "applocationid": 1,
- "status": 1,
- "intro": "Regular subscriber of organic morning deliveries."
+ "status": "Active"
}
},
{
- "name": "Save New Geofenced Location Address",
+ "name": "Create Customer Address",
"method": "POST",
- "url": "/live/api/v1/mob/customers/createlocations",
- "description": "Save New Geofenced Location Address",
+ "url": "/live/api/v1/customers/createlocations",
+ "description": "Save a new geofenced address location for a customer.",
+ "body": [
+ {
+ "locationid": 0,
+ "customerid": 4082,
+ "locationname": "Home Address",
+ "address": "100 Berry St, North Sydney NSW 2060",
+ "suburb": "North Sydney",
+ "city": "Sydney",
+ "state": "NSW",
+ "postcode": "2060",
+ "latitude": "-33.8398",
+ "longitude": "151.2058",
+ "status": "Active"
+ }
+ ]
+ },
+ {
+ "name": "Delete Customer",
+ "method": "DELETE",
+ "url": "/live/api/v1/customers/delete",
+ "description": "Remove a customer profile.",
"body": {
- "customerid": 4082,
- "address": "123 High Street",
- "suburb": "Prahran",
- "city": "Melbourne",
- "state": "VIC",
- "postcode": "3181",
- "latitude": "-37.8502",
- "longitude": "144.9924",
- "primaryaddress": 1,
- "status": 1
+ "customerid": 4082
}
},
{
- "name": "Log Customer Support Ticket Request",
+ "name": "Submit Customer Support Request",
"method": "POST",
- "url": "/live/api/v1/mob/customers/createcustomerrequest",
- "description": "Log Customer Support Ticket Request",
+ "url": "/live/api/v1/customers/createcustomerrequest",
+ "description": "Log a customer support ticket.",
"body": {
"customerid": 4082,
- "tenantid": 8,
- "apptypeid": 1,
- "locationid": 2,
- "subject": "Delay in Morning Milk Delivery",
- "remarks": "Order scheduled for 7:00 AM hasn't arrived.",
- "status": 1
- }
- },
- {
- "name": "Update Customer Profile Details",
- "method": "PUT",
- "url": "/live/api/v1/mob/customers/update",
- "description": "Update Customer Profile Details",
- "body": {
- "customerid": 4082,
- "firstname": "Jane",
- "lastname": "Miller",
- "email": "jane.miller@gmail.com",
- "contactno": "499888777",
- "address": "789 Pine Road",
- "suburb": "Hawthorn",
- "city": "Melbourne",
- "state": "VIC",
- "postcode": "3122",
- "status": 1
+ "subject": "Missing items in order ORD-000843",
+ "description": "Apples were missing from my fresh produce bag.",
+ "category": "Refund/Missing Items"
}
}
]
},
{
- "id": "deliveries",
- "name": "Deliveries",
- "description": "Delivery records, queues, and rider-delivery joins.",
+ "id": "tenants",
+ "name": "Tenants",
+ "description": "Tenant onboarding, location management, staff, pricing, promotions, and support.",
"endpoints": [
{
- "name": "Get deliveries performance summaries (Web)",
+ "name": "Get tenant info",
"method": "GET",
- "url": "/live/api/v1/web/deliveries/deliverysummary?tenantid=8&partnerid=1&userid=12&applocationid=1&locationid=2&fromdate=2026-05-20&todate=2026-05-20",
- "description": "Get deliveries performance summaries (Web)"
+ "url": "/live/api/v1/tenants/gettenantinfo?tenantid=8",
+ "description": "Fetch complete metadata and credentials of a single tenant."
},
{
- "name": "Get daily delivery insights (Web)",
+ "name": "Search tenants",
"method": "GET",
- "url": "/live/api/v1/web/deliveries/getdeliveryinsight?tenantid=8",
- "description": "Get daily delivery insights (Web)"
+ "url": "/live/api/v1/tenants/search?keyword=sydney",
+ "description": "Search tenant registries by name or email keyword."
},
{
- "name": "Get location deliveries summary (Web)",
+ "name": "Get tenant staff",
"method": "GET",
- "url": "/live/api/v1/web/deliveries/getlocationsummary?tenantid=8",
- "description": "Get location deliveries summary (Web)"
+ "url": "/live/api/v1/tenants/getstaffs?tenantid=8&locationid=45",
+ "description": "Query list of staff roster belonging to a tenant location."
},
{
- "name": "Get deliveries financial report summary (Web)",
+ "name": "Get tenants by app location",
"method": "GET",
- "url": "/live/api/v1/web/deliveries/getreportsummary?tenantid=8&partnerid=1&userid=12&applocationid=1&fromdate=2026-05-01&todate=2026-05-20",
- "description": "Get deliveries financial report summary (Web)"
+ "url": "/live/api/v1/tenants/gettenants?applocationid=5",
+ "description": "Get active tenants mapped under an application hub zone."
},
{
- "name": "Get fleet rider summary metrics (Web)",
+ "name": "Get all tenants",
"method": "GET",
- "url": "/live/api/v1/web/deliveries/getridersummary?applocationid=1&partnerid=1&tenantid=8&fromdate=2026-05-20&todate=2026-05-20",
- "description": "Get fleet rider summary metrics (Web)"
+ "url": "/live/api/v1/tenants/getalltenants?pageno=1&pagesize=10&keyword=grocery",
+ "description": "Query complete list of tenants with pagination."
},
{
- "name": "Get master deliveries board (Web)",
+ "name": "Get tenant summary",
"method": "GET",
- "url": "/live/api/v1/web/deliveries/getdeliveries?tenantid=8&fromdate=2026-05-20&todate=2026-05-20",
- "description": "Get master deliveries board (Web)"
+ "url": "/live/api/v1/tenants/gettenantsummary?tenantid=8",
+ "description": "Query consolidated location metrics under a tenant."
},
{
- "name": "Get mobile dispatch summaries (Mobile)",
+ "name": "Get cloud store status",
"method": "GET",
- "url": "/live/api/v1/mob/deliveries/deliverysummary?userid=15&fromdate=2026-05-20&todate=2026-05-20",
- "description": "Get mobile dispatch summaries (Mobile)"
+ "url": "/live/api/v1/tenants/getcloudstore?tenantid=8",
+ "description": "Check if tenant uses online cloud inventory storage."
},
{
- "name": "Get mobile deliveries board (Mobile)",
+ "name": "Get tenant locations",
"method": "GET",
- "url": "/live/api/v1/mob/deliveries/getdeliveries?userid=15&status=assigned",
- "description": "Get mobile deliveries board (Mobile)"
+ "url": "/live/api/v1/tenants/gettenantlocations?tenantid=8&pageno=1&pagesize=10",
+ "description": "Query physical warehouses/outlets mapped to a tenant."
},
{
- "name": "Fetch rider active shift deliveries queue (Mobile)",
+ "name": "Get tenant time slots",
"method": "GET",
- "url": "/live/api/v1/mob/deliveries/getdeliveryqueues?userid=15&fromdate=2026-05-20&todate=2026-05-20",
- "description": "Fetch rider active shift deliveries queue (Mobile)"
+ "url": "/live/api/v1/tenants/gettenantslots?tenantid=8&locationid=45",
+ "description": "Get operational time slots for orders fulfillment."
},
{
- "name": "Initialize Logistics Delivery Dispatch (Assign Rider)",
+ "name": "Get tenant location details",
+ "method": "GET",
+ "url": "/live/api/v1/tenants/gettenantlocation?locationid=45",
+ "description": "Query coordinate and contact details of a single store location."
+ },
+ {
+ "name": "Get tenant pricing",
+ "method": "GET",
+ "url": "/live/api/v1/tenants/gettenantpricing?tenantid=8",
+ "description": "Get delivery pricing rules configured for a tenant."
+ },
+ {
+ "name": "Get tenant support requests",
+ "method": "GET",
+ "url": "/live/api/v1/tenants/gettenantrequests?tenantid=8&pageno=1&pagesize=10",
+ "description": "Query support ticket requests created by a tenant."
+ },
+ {
+ "name": "Get pricing list",
+ "method": "GET",
+ "url": "/live/api/v1/tenants/getpricinglist?tenantid=8",
+ "description": "Query pricing list configured for a tenant."
+ },
+ {
+ "name": "Get tenant promotions",
+ "method": "GET",
+ "url": "/live/api/v1/tenants/gettenantpromotions?tenantid=8",
+ "description": "Query promotional active marketing discount settings."
+ },
+ {
+ "name": "Get location summary (V2)",
+ "method": "GET",
+ "url": "/live/api/v2/tenants/getlocationsummary?tenantid=8",
+ "description": "Query location high level metric summary."
+ },
+ {
+ "name": "Get tenant staff summary (V2)",
+ "method": "GET",
+ "url": "/live/api/v2/tenants/gettenantstaffsummary?tenantid=8&locationid=45",
+ "description": "Query active staff roster status metrics."
+ },
+ {
+ "name": "Get tenant rider summary (V2)",
+ "method": "GET",
+ "url": "/live/api/v2/tenants/gettenantridersummary?tenantid=8&locationid=45",
+ "description": "Query active dispatch rider metric counts."
+ },
+ {
+ "name": "Get customer tenants (V2)",
+ "method": "GET",
+ "url": "/live/api/v2/tenants/getcustomertenants?customerid=12&applocationid=5",
+ "description": "Query list of tenants servicing a customer location."
+ },
+ {
+ "name": "Create Tenant",
"method": "POST",
- "url": "/live/api/v1/web/deliveries/createdeliveries",
- "description": "Initialize Logistics Delivery Dispatch (Assign Rider)",
- "body": [
- {
- "orderheaderid": 2100,
- "applocationid": 1,
- "partnerid": 1,
- "tenantid": 8,
- "moduleid": 1,
- "locationid": 2,
- "userid": 15,
- "orderid": "ORD-19028-4",
- "deliverydate": "2026-05-20",
- "orderstatus": "assigned",
- "assigntime": "2026-05-20 12:10:00",
- "itemcount": 2,
- "orderamount": 12.58,
- "customerid": 4082,
- "pickupcustomer": "Central Merchant Warehouse",
- "pickupcontactno": "987654321",
- "pickuplocationid": 2,
- "pickupaddress": "Shop 4, Central Plaza, Melbourne",
- "pickuplat": "-37.8136",
- "pickuplon": "144.9631",
- "deliverycustomerid": 4082,
- "deliverylocationid": 554,
- "deliverycustomer": "Jane Smith",
- "deliverycontactno": "499888777",
- "deliveryaddress": "456 Oak Avenue, Richmond, VIC, 3121",
- "droplat": "-37.8212",
- "droplon": "144.9984",
- "deliverycharges": 3,
- "deliveryamt": 15.58,
- "deliverytype": "standard",
- "paymenttype": 1
- }
- ]
- },
- {
- "name": "Update Rider Pickup Status",
- "method": "PUT",
- "url": "/live/api/v1/web/deliveries/updatedelivery",
- "description": "Update Rider Pickup Status",
+ "url": "/live/api/v1/tenants/create",
+ "description": "Create a new tenant account.",
"body": {
- "deliveryid": 8871,
- "orderheaderid": 2100,
- "userid": 15,
- "orderstatus": "picked",
- "pickuptime": "2026-05-20 12:20:00",
- "riderslat": "-37.8140",
- "riderslon": "144.9640"
+ "tenantid": 0,
+ "tenantname": "Sydney Fresh Grocers",
+ "status": "Active"
}
},
{
- "name": "Initialize Mobile Logistics Delivery",
+ "name": "Create Tenant Location",
"method": "POST",
- "url": "/live/api/v1/mob/deliveries/createdeliveries",
- "description": "Initialize Mobile Logistics Delivery Payload: (Uses the same schema as Web Initialize Logistics Delivery Dispatch)",
- "body": [
- {
- "orderheaderid": 2100,
- "applocationid": 1,
- "partnerid": 1,
- "tenantid": 8,
- "moduleid": 1,
- "locationid": 2,
- "userid": 15,
- "orderid": "ORD-19028-4",
- "deliverydate": "2026-05-20",
- "orderstatus": "assigned",
- "assigntime": "2026-05-20 12:10:00",
- "itemcount": 2,
- "orderamount": 12.58,
- "customerid": 4082,
- "pickupcustomer": "Central Merchant Warehouse",
- "pickupcontactno": "987654321",
- "pickuplocationid": 2,
- "pickupaddress": "Shop 4, Central Plaza, Melbourne",
- "pickuplat": "-37.8136",
- "pickuplon": "144.9631",
- "deliverycustomerid": 4082,
- "deliverylocationid": 554,
- "deliverycustomer": "Jane Smith",
- "deliverycontactno": "499888777",
- "deliveryaddress": "456 Oak Avenue, Richmond, VIC, 3121",
- "droplat": "-37.8212",
- "droplon": "144.9984",
- "deliverycharges": 3,
- "deliveryamt": 15.58,
- "deliverytype": "standard",
- "paymenttype": 1
- }
- ]
- },
- {
- "name": "Rider Update Dispatch Status (Delivered & GPS Tracking)",
- "method": "PUT",
- "url": "/live/api/v1/mob/deliveries/updatedelivery",
- "description": "Rider Update Dispatch Status (Delivered & GPS Tracking)",
- "body": {
- "deliveryid": 8871,
- "orderheaderid": 2100,
- "userid": 15,
- "orderstatus": "delivered",
- "deliverytime": "2026-05-20 12:45:00",
- "riderslat": "-37.8210",
- "riderslon": "144.9980",
- "actualkms": "4.2",
- "feedback": "Handed over safely.",
- "smsdelivery": 1
- }
- }
- ]
- },
- {
- "id": "orders",
- "name": "Orders",
- "description": "Order records, details, and aggregate summaries.",
- "endpoints": [
- {
- "name": "Filtered dynamic orders board (Web)",
- "method": "GET",
- "url": "/live/api/v1/web/orders/getorders?tenantid=8&locationid=2&status=processing&pageno=1&pagesize=10",
- "description": "Filtered dynamic orders board (Web)"
- },
- {
- "name": "System Admin orders board (Web)",
- "method": "GET",
- "url": "/live/api/v1/web/orders/admin/getorders?applocationid=1&status=processing&pageno=1&pagesize=10",
- "description": "System Admin orders board (Web)"
- },
- {
- "name": "Get order dashboard stats summary (Web)",
- "method": "GET",
- "url": "/live/api/v1/web/orders/getordersummary?tenantid=8&fromdate=2026-05-01&todate=2026-05-20",
- "description": "Get order dashboard stats summary (Web)"
- },
- {
- "name": "Get location orders summary (Web)",
- "method": "GET",
- "url": "/live/api/v1/web/orders/getlocationsummary?tenantid=8",
- "description": "Get location orders summary (Web)"
- },
- {
- "name": "Get annual orders insights analytics (Web)",
- "method": "GET",
- "url": "/live/api/v1/web/orders/getorderinsight?tenantid=8",
- "description": "Get annual orders insights analytics (Web)"
- },
- {
- "name": "Get order detailed lines (Web)",
- "method": "GET",
- "url": "/live/api/v1/web/orders/getorderdetails?orderheaderid=2099",
- "description": "Get order detailed lines (Web)"
- },
- {
- "name": "Get customer order history (Mobile)",
- "method": "GET",
- "url": "/live/api/v1/mob/orders/getcustomerorders?customerid=4082&pageno=1&pagesize=10",
- "description": "Get customer order history (Mobile)"
- },
- {
- "name": "Get mobile order detailed lines (Mobile)",
- "method": "GET",
- "url": "/live/api/v1/mob/orders/getorderdetails?orderheaderid=2099",
- "description": "Get mobile order detailed lines (Mobile)"
- },
- {
- "name": "Create New Web Order (Flat JSON Format)",
- "method": "POST",
- "url": "/live/api/v1/web/orders/createorder",
- "description": "Create New Web Order (Flat JSON Format)",
+ "url": "/live/api/v1/tenants/createlocation",
+ "description": "Create a new tenant branch/outlet location.",
"body": {
"tenantid": 8,
- "locationid": 2,
- "applocationid": 1,
- "moduleid": 1,
- "customerid": 4082,
- "orderstatus": "pending",
- "deliverytype": "standard",
- "deliverytime": "2026-05-20 18:00:00",
- "pickupaddress": "Shop 4, Central Plaza, Melbourne",
- "pickuplat": "-37.8136",
- "pickuplong": "144.9631",
- "pickupcustomer": "Central Plaza Merchant",
- "pickupcontactno": "399887766",
- "deliveryaddress": "Apt 4B, Sunset Boulevard, Richmond",
- "deliverylat": "-37.8212",
- "deliverylong": "144.9984",
- "orderamount": 11.48,
- "taxamount": 1.1,
- "ordervalue": 12.58,
- "itemcount": 2,
- "paymenttype": 1,
- "paymentstatus": 0,
- "deliverycharge": 3,
- "ordernotes": "Please ring doorbell twice.",
- "items": [
- {
- "productid": 105,
- "productname": "Organic Whole Milk 1L",
- "orderqty": 2,
- "price": 3.99,
- "taxpercentage": 10,
- "taxamount": 0.8,
- "productsumprice": 7.98
- },
- {
- "productid": 109,
- "productname": "Salted Butter 250g",
- "orderqty": 1,
- "price": 3.5,
- "taxpercentage": 10,
- "taxamount": 0.35,
- "productsumprice": 3.5
- }
- ]
+ "locationname": "North Sydney Outlet",
+ "address": "45 Berry St",
+ "suburb": "North Sydney",
+ "city": "Sydney",
+ "state": "NSW",
+ "postcode": "2060",
+ "latitude": "-33.8398",
+ "longitude": "151.2058",
+ "status": "Active"
}
},
{
- "name": "Update Order Status & Financial Flag",
- "method": "PUT",
- "url": "/live/api/v1/web/orders/updateorder",
- "description": "Update Order Status & Financial Flag",
- "body": {
- "orderheaderid": 2099,
- "orderstatus": "ready",
- "paymentstatus": 1,
- "remarks": "Order packed and waiting for rider assignment."
- }
- },
- {
- "name": "Create Mobile Order (Wrapped JSON Format)",
+ "name": "Create Tenant User Setup",
"method": "POST",
- "url": "/live/api/v1/mob/orders/createorder",
- "description": "Create Mobile Order (Wrapped JSON Format)",
+ "url": "/live/api/v1/tenants/createtenantuser",
+ "description": "Link a user account to a tenant.",
"body": {
- "orders": {
- "tenantid": 8,
- "locationid": 2,
- "applocationid": 1,
- "moduleid": 1,
- "customerid": 4082,
- "orderstatus": "pending",
- "deliverytype": "standard",
- "deliverytime": "2026-05-20 18:00:00",
- "pickupaddress": "Shop 4, Central Plaza, Melbourne",
- "pickuplat": "-37.8136",
- "pickuplong": "144.9631",
- "pickupcustomer": "Central Plaza Merchant",
- "pickupcontactno": "399887766",
- "deliveryaddress": "Apt 4B, Sunset Boulevard, Richmond",
- "deliverylat": "-37.8212",
- "deliverylong": "144.9984",
- "orderamount": 11.48,
- "taxamount": 1.1,
- "ordervalue": 12.58,
- "itemcount": 2,
- "paymenttype": 1,
- "paymentstatus": 0,
- "deliverycharge": 3,
- "ordernotes": "Leave in parcel locker.",
- "items": [
- {
- "productid": 105,
- "productname": "Organic Whole Milk 1L",
- "orderqty": 2,
- "price": 3.99,
- "taxpercentage": 10,
- "taxamount": 0.8,
- "productsumprice": 7.98
- },
- {
- "productid": 109,
- "productname": "Salted Butter 250g",
- "orderqty": 1,
- "price": 3.5,
- "taxpercentage": 10,
- "taxamount": 0.35,
- "productsumprice": 3.5
- }
- ]
- }
+ "tenantid": 8,
+ "userid": 12,
+ "status": "Active"
}
},
{
- "name": "Mobile Update Order Status",
+ "name": "Update Tenant",
"method": "PUT",
- "url": "/live/api/v1/mob/orders/updateorder",
- "description": "Mobile Update Order Status Payload: (Uses the same schema as Web Update Order Status & Financial Flag)",
+ "url": "/live/api/v1/tenants/update",
+ "description": "Update tenant details.",
"body": {
- "orderheaderid": 2099,
- "orderstatus": "ready",
- "paymentstatus": 1,
- "remarks": "Order packed and waiting for rider assignment."
+ "tenantid": 8,
+ "tenantname": "Sydney Premium Grocers Group",
+ "status": "Active"
+ }
+ },
+ {
+ "name": "Update Tenant Location (V1)",
+ "method": "PUT",
+ "url": "/live/api/v1/tenants/updatelocation",
+ "description": "Update tenant location details.",
+ "body": {
+ "locationid": 45,
+ "tenantid": 8,
+ "locationname": "North Sydney Hub Store",
+ "address": "45 Berry St",
+ "suburb": "North Sydney",
+ "city": "Sydney",
+ "state": "NSW",
+ "postcode": "2060",
+ "latitude": "-33.8398",
+ "longitude": "151.2058",
+ "status": "Active"
+ }
+ },
+ {
+ "name": "Create Partner Association",
+ "method": "PUT",
+ "url": "/live/api/v1/tenants/createpartneruser",
+ "description": "Associate a logistics partner with a tenant.",
+ "body": {
+ "tenantid": 8,
+ "partnerid": 102,
+ "status": "Active"
+ }
+ },
+ {
+ "name": "Add Customer to Tenant",
+ "method": "POST",
+ "url": "/live/api/v1/tenants/createtenantcustomer",
+ "description": "Add a customer to a tenant's database.",
+ "body": {
+ "tenantid": 8,
+ "customerid": 4082,
+ "status": "Active"
+ }
+ },
+ {
+ "name": "Create Tenant Staff",
+ "method": "POST",
+ "url": "/live/api/v1/tenants/createstaff",
+ "description": "Add a new staff member to a tenant roster.",
+ "body": {
+ "userid": 15,
+ "tenantid": 8,
+ "locationid": 45,
+ "status": "Active"
+ }
+ },
+ {
+ "name": "Update Tenant Staff",
+ "method": "PUT",
+ "url": "/live/api/v1/tenants/updatestaff",
+ "description": "Update a tenant staff member's status.",
+ "body": {
+ "userid": 15,
+ "tenantid": 8,
+ "locationid": 45,
+ "status": "Inactive"
+ }
+ },
+ {
+ "name": "Create Tenant Pricing Config",
+ "method": "POST",
+ "url": "/live/api/v1/tenants/createpricing",
+ "description": "Create delivery rate configuration for a tenant.",
+ "body": {
+ "tenantid": 8,
+ "basefare": 8.50,
+ "additionalkm": 1.50,
+ "additionalcharges": 2.00,
+ "fuelcharge": 0.50
+ }
+ },
+ {
+ "name": "Create Tenant Support Request",
+ "method": "POST",
+ "url": "/live/api/v1/tenants/createtenantrequest",
+ "description": "Log a support ticket for a tenant.",
+ "body": {
+ "tenantid": 8,
+ "subject": "Payout mismatch on invoice INV-00802",
+ "description": "Calculated payout did not include fuel tax bonus.",
+ "category": "Billing"
+ }
+ },
+ {
+ "name": "Create Tenant Promotion",
+ "method": "POST",
+ "url": "/live/api/v1/tenants/createtenantpromotions",
+ "description": "Create a discount promotion configuration for a tenant.",
+ "body": {
+ "tenantid": 8,
+ "promocode": "FREESHIP50",
+ "discountamount": 10.00,
+ "minordervalue": 50.00,
+ "status": "Active"
+ }
+ },
+ {
+ "name": "Create Tenant Location (V2)",
+ "method": "POST",
+ "url": "/live/api/v2/tenants/createtenantlocation",
+ "description": "Create a new physical tenant outlet (V2).",
+ "body": {
+ "tenantid": 8,
+ "locationname": "North Sydney Outlet",
+ "address": "45 Berry St",
+ "suburb": "North Sydney",
+ "city": "Sydney",
+ "state": "NSW",
+ "postcode": "2060",
+ "latitude": "-33.8398",
+ "longitude": "151.2058",
+ "status": "Active"
+ }
+ },
+ {
+ "name": "Update Tenant Location (V2)",
+ "method": "PUT",
+ "url": "/live/api/v2/tenants/updatetenantlocation",
+ "description": "Update tenant physical location details (V2).",
+ "body": {
+ "locationid": 45,
+ "tenantid": 8,
+ "locationname": "North Sydney Hub Store",
+ "address": "45 Berry St",
+ "suburb": "North Sydney",
+ "city": "Sydney",
+ "state": "NSW",
+ "postcode": "2060",
+ "latitude": "-33.8398",
+ "longitude": "151.2058",
+ "status": "Active"
}
}
]
@@ -1540,241 +963,1086 @@ export const restTopics = [
{
"id": "products",
"name": "Products",
- "description": "Product catalog, categories, and subcategories.",
+ "description": "Product catalog, variants, discounts, stock management, and location mapping.",
"endpoints": [
{
- "name": "Get product subcategories (Web)",
+ "name": "Get all products (V1)",
"method": "GET",
- "url": "/live/api/v1/web/products/getproductsubcategories?categoryid=2&tenantid=8",
- "description": "Get product subcategories (Web)"
+ "url": "/live/api/v1/products/getallproducts?categoryid=4&subcategoryid=14&productid=101&applocationid=5&tenantid=8&locationid=45&keyword=strawberry&productstatus=available&approve=approved&pageno=1&pagesize=10",
+ "description": "Retrieve all registered products with extensive filters."
},
{
- "name": "Get products stock counts (Web)",
+ "name": "Get product info",
"method": "GET",
- "url": "/live/api/v1/web/products/getproductscount?tenantid=8&categoryid=2&subcategoryid=12&approve=1",
- "description": "Get products stock counts (Web)"
+ "url": "/live/api/v1/products/getproductinfo?productid=101",
+ "description": "Fetch detailed information of a single product."
},
{
- "name": "Get all global categories (Web)",
+ "name": "Get product categories",
"method": "GET",
- "url": "/live/api/v1/web/products/getproductcategories",
- "description": "Get all global categories (Web)"
+ "url": "/live/api/v1/products/getproductcategories",
+ "description": "List all general product categories."
},
{
- "name": "Get specific product variants (Web)",
+ "name": "Get product subcategories (V1)",
"method": "GET",
- "url": "/live/api/v1/web/products/getproductvariants?tenantid=8&subcategoryid=12",
- "description": "Get specific product variants (Web)"
+ "url": "/live/api/v1/products/getproductsubcategories?categoryid=4&tenantid=8",
+ "description": "List product subcategories under a specific category and tenant."
},
{
- "name": "Get master catalog listings (Web)",
+ "name": "Get products by subcategory",
"method": "GET",
- "url": "/live/api/v1/web/products/getcatalougeproducts?tenantid=8&locationid=2&subcategoryid=12&keyword=&pageno=1&pagesize=10",
- "description": "Get master catalog listings (Web)"
+ "url": "/live/api/v1/products/getproductsbysubcategory?categoryid=4&tenantid=8&applocationid=5&locationid=45&keyword=berry",
+ "description": "Get products grouped under subcategories."
},
{
- "name": "Get live stocks catalog (Web)",
+ "name": "Get product count",
"method": "GET",
- "url": "/live/api/v1/web/products/getproductstocks?tenantid=8&locationid=2",
- "description": "Get live stocks catalog (Web)"
+ "url": "/live/api/v1/products/getproductscount?tenantid=8&categoryid=4&subcategoryid=14&approve=approved",
+ "description": "Retrieve product counts categorized by tenant and subcategory."
},
{
- "name": "Get dynamic stock statement ledger (Web)",
+ "name": "Get product by variant",
"method": "GET",
- "url": "/live/api/v1/web/products/getstockstatement?tenantid=8&locationid=2&subcategoryid=12&pageno=1&pagesize=10&keyword=",
- "description": "Get dynamic stock statement ledger (Web)"
+ "url": "/live/api/v1/products/getproductbyvariant?tenantid=8&variantid=22",
+ "description": "Fetch product detail matches by Variant ID."
},
{
- "name": "Get outlet geofenced inventory (Web)",
+ "name": "Get product variants",
"method": "GET",
- "url": "/live/api/v1/web/products/getlocationproducts?tenantid=8&locationid=2&subcategoryid=12&pageno=1&pagesize=10",
- "description": "Get outlet geofenced inventory (Web)"
+ "url": "/live/api/v1/products/getproductvariants?tenantid=8&subcategoryid=14",
+ "description": "List variants available under a tenant subcategory."
},
{
- "name": "Get outlet category inventory summary (Web)",
+ "name": "Get product discounts",
"method": "GET",
- "url": "/live/api/v1/web/products/getlocationproductsummary?tenantid=8&locationid=2",
- "description": "Get outlet category inventory summary (Web)"
+ "url": "/live/api/v1/products/getproductdiscounts?tenantid=8",
+ "description": "Get active product discount rules under a tenant."
},
{
- "name": "Master products search board (Web)",
+ "name": "Get catalogue products (V2)",
"method": "GET",
- "url": "/live/api/v1/web/products/getallproducts?tenantid=8&locationid=2&keyword=milk&pageno=1&pagesize=10",
- "description": "Master products search board (Web)"
+ "url": "/live/api/v2/products/getcatalougeproducts?tenantid=8&locationid=45&subcategoryid=14&keyword=apple&pageno=1&pagesize=10",
+ "description": "Retrieve products catalog for customer order creation."
},
{
- "name": "Get product details by variant ID (Mobile)",
+ "name": "Get location products (V2)",
"method": "GET",
- "url": "/live/api/v1/mob/products/getproductbyvariant?tenantid=8&variantid=4",
- "description": "Get product details by variant ID (Mobile)"
+ "url": "/live/api/v2/products/getlocationproducts?tenantid=8&locationid=45&subcategoryid=14&keyword=apple&pageno=1&pagesize=10",
+ "description": "Retrieve products mapped to a physical location."
},
{
- "name": "Get product subcategories (Mobile)",
+ "name": "Get location product summary (V2)",
"method": "GET",
- "url": "/live/api/v1/mob/products/getproductsubcategories?categoryid=2&tenantid=8",
- "description": "Get product subcategories (Mobile)"
+ "url": "/live/api/v2/products/getlocationproductsummary?tenantid=8&locationid=45",
+ "description": "Retrieve summary metrics of products in a location."
},
{
- "name": "Search product catalog (Mobile)",
+ "name": "Get stock statement (V2)",
"method": "GET",
- "url": "/live/api/v1/mob/products/getallproducts?keyword=milk&pageno=1&pagesize=10",
- "description": "Search product catalog (Mobile)"
+ "url": "/live/api/v2/products/getstockstatement?tenantid=8&locationid=45&subcategoryid=14&keyword=apple&pageno=1&pagesize=10",
+ "description": "Query product stock ledger statement history."
},
{
- "name": "Get structured home subcategory list (Mobile)",
+ "name": "Get product stocks (V2)",
"method": "GET",
- "url": "/live/api/v1/mob/products/getproductsbysubcategory?categoryid=2&tenantid=8&locationid=2",
- "description": "Get structured home subcategory list (Mobile)"
+ "url": "/live/api/v2/products/getproductstocks?tenantid=8&locationid=45",
+ "description": "Query current active product stock levels."
},
{
- "name": "Get mobile geofenced outlet products (Mobile)",
+ "name": "Get category-wise inventory summary (V2)",
"method": "GET",
- "url": "/live/api/v1/mob/products/getlocationproducts?tenantid=8&locationid=2&pageno=1&pagesize=20",
- "description": "Get mobile geofenced outlet products (Mobile)"
+ "url": "/live/api/v2/products/getproductcategorywisesummary?tenantid=8&locationid=45&subcategoryid=14",
+ "description": "Query category-wise inventory summary statistics."
},
{
- "name": "Add Multi-Product Stock Entry",
+ "name": "Get stock statement summary (V2)",
+ "method": "GET",
+ "url": "/live/api/v2/products/getstockstatementsummary?tenantid=8&locationid=45",
+ "description": "Fetch stock statement summaries."
+ },
+ {
+ "name": "Create Product",
"method": "POST",
- "url": "/live/api/v1/web/products/createproductstock",
- "description": "Add Multi-Product Stock Entry",
- "body": [
- {
- "tenantid": 8,
- "locationid": 2,
- "productid": 105,
- "quantity": 150,
- "stocktype": "credit",
- "status": "active"
- },
- {
- "tenantid": 8,
- "locationid": 2,
- "productid": 109,
- "quantity": 80,
- "stocktype": "credit",
- "status": "active"
- }
- ]
- },
- {
- "name": "Create Master Product Catalog Item",
- "method": "POST",
- "url": "/live/api/v1/web/products/create",
- "description": "Create Master Product Catalog Item",
+ "url": "/live/api/v1/products/create",
+ "description": "Create a new catalog product.",
"body": {
- "applocationid": 1,
+ "productid": 0,
+ "productname": "Organic Strawberries 500g",
+ "categoryid": 4,
+ "subcategoryid": 14,
"tenantid": 8,
- "categoryid": 2,
- "subcategoryid": 12,
- "productname": "Fresh Cow Milk 1L",
- "productimage": "https://storage.nearle.app/products/cow_milk_1l.png",
- "productdesc": "Pure farm fresh cow milk pasteurized.",
- "productsku": "MILK-COW-1L",
- "productunit": "Litre",
- "unitvalue": "1",
- "productcost": 1.8,
- "retailprice": 3.5,
- "taxpercent": 5,
- "productstock": 100,
+ "applocationid": 5,
+ "productcost": 6.80,
+ "unitvalue": "500g",
"productstatus": "available",
- "approve": 1
+ "sku": "STRAW-500G-ORG",
+ "status": "Active"
}
},
{
- "name": "Map Product to Specific Outlet Location",
+ "name": "Update Product",
+ "method": "PUT",
+ "url": "/live/api/v1/products/update",
+ "description": "Update product attributes.",
+ "body": {
+ "productid": 101,
+ "productname": "Premium Organic Strawberries 500g",
+ "categoryid": 4,
+ "subcategoryid": 14,
+ "tenantid": 8,
+ "applocationid": 5,
+ "productcost": 7.20,
+ "unitvalue": "500g",
+ "productstatus": "available",
+ "sku": "STRAW-500G-ORG",
+ "status": "Active"
+ }
+ },
+ {
+ "name": "Delete Product",
+ "method": "DELETE",
+ "url": "/live/api/v1/products/delete",
+ "description": "Remove a catalog product.",
+ "body": {
+ "productid": 101
+ }
+ },
+ {
+ "name": "Create Product Variant",
"method": "POST",
- "url": "/live/api/v1/web/products/createproductlocation",
- "description": "Map Product to Specific Outlet Location",
+ "url": "/live/api/v1/products/createproductvariant",
+ "description": "Create a product variant entry.",
+ "body": {
+ "productid": 101,
+ "variantname": "Mega Pack 1Kg",
+ "variantcost": 12.50,
+ "sku": "STRAW-1KG-ORG",
+ "status": "Active"
+ }
+ },
+ {
+ "name": "Create Product Discount",
+ "method": "POST",
+ "url": "/live/api/v1/products/createproductdiscount",
+ "description": "Setup a product discount rule.",
+ "body": {
+ "productid": 101,
+ "discountpercentage": 15.00,
+ "status": "Active"
+ }
+ },
+ {
+ "name": "Map Product to Location (V2)",
+ "method": "POST",
+ "url": "/live/api/v2/products/createproductlocation",
+ "description": "Set product location mapping.",
"body": [
{
+ "productid": 101,
+ "locationid": 45,
"tenantid": 8,
- "locationid": 2,
- "productid": 105,
- "catlougeid": 1,
- "minquantity": 5,
- "maxquantity": 200,
- "price": 3.75,
"status": "Active"
}
]
},
{
- "name": "Create Product Variant Metadata",
+ "name": "Update Product Location Map (V2)",
+ "method": "PUT",
+ "url": "/live/api/v2/products/updateproductlocation",
+ "description": "Update product location mapping.",
+ "body": {
+ "productid": 101,
+ "locationid": 45,
+ "status": "Inactive"
+ }
+ },
+ {
+ "name": "Add Stock Entry (V2)",
"method": "POST",
- "url": "/live/api/v1/web/products/createproductvariant",
- "description": "Create Product Variant Metadata",
- "body": {
- "tenantid": 8,
- "variantname": "1.5 Liters Bottle",
- "categoryid": 2,
- "subcategoryid": 12,
- "status": "active"
- }
+ "url": "/live/api/v2/products/createproductstock",
+ "description": "Add inbound/outbound stock entry.",
+ "body": [
+ {
+ "stockid": 0,
+ "productid": 101,
+ "locationid": 45,
+ "tenantid": 8,
+ "qty": 50,
+ "transactiontype": "in",
+ "reference": "PURCHASE-PO9812",
+ "createdby": 12
+ }
+ ]
},
{
- "name": "Update Master Product Details",
+ "name": "Update Product Stock (V2)",
"method": "PUT",
- "url": "/live/api/v1/web/products/update",
- "description": "Update Master Product Details",
+ "url": "/live/api/v2/products/updateproductstock",
+ "description": "Update product stock quantity.",
"body": {
- "productid": 105,
- "productname": "Organic Farm Cow Milk 1L",
- "productcost": 1.95,
- "retailprice": 3.75,
- "productstock": 120,
- "productstatus": "available"
- }
- },
- {
- "name": "Update Product Outlet Constraints",
- "method": "PUT",
- "url": "/live/api/v1/web/products/updateproductlocation",
- "description": "Update Product Outlet Constraints",
- "body": {
- "productlocationid": 25,
+ "productid": 101,
+ "locationid": 45,
"tenantid": 8,
- "locationid": 2,
- "productid": 105,
- "minquantity": 10,
- "maxquantity": 150,
- "price": 3.99,
- "status": "Active"
+ "qty": 45,
+ "transactiontype": "out",
+ "reference": "ADJUSTMENT-RECON",
+ "createdby": 12
+ }
+ }
+ ]
+ },
+ {
+ "id": "orders",
+ "name": "Orders",
+ "description": "Order creation, status management, and analytics across all scopes.",
+ "endpoints": [
+ {
+ "name": "Get orders (V1)",
+ "method": "GET",
+ "url": "/live/api/v1/orders/getorders?fromdate=2026-05-01&todate=2026-05-20&status=pending&keyword=sydney&roleid=2&tenantid=8&locationid=45&pageno=1&pagesize=10",
+ "description": "Query all orders with custom filters."
+ },
+ {
+ "name": "Get partner orders (V1)",
+ "method": "GET",
+ "url": "/live/api/v1/orders/partner/getorders?partnerid=102&status=pending&pageno=1&pagesize=10",
+ "description": "Query partner dispatch tasks."
+ },
+ {
+ "name": "Get tenant orders (V1)",
+ "method": "GET",
+ "url": "/live/api/v1/orders/tenant/getorders?tenantid=8&locationid=45&pageno=1&pagesize=10",
+ "description": "Query tenant physical store orders."
+ },
+ {
+ "name": "Get customer orders (V1)",
+ "method": "GET",
+ "url": "/live/api/v1/orders/customer/getorders?customerid=12&pageno=1&pagesize=10",
+ "description": "Query specific customer orders."
+ },
+ {
+ "name": "Get tenant location summary (V1)",
+ "method": "GET",
+ "url": "/live/api/v1/orders/tenant/getlocationsummary?tenantid=8",
+ "description": "Retrieve order location count summary under a tenant."
+ },
+ {
+ "name": "Get order summary (V1)",
+ "method": "GET",
+ "url": "/live/api/v1/orders/getordersummary?tenantid=8&locationid=45&fromdate=2026-05-01&todate=2026-05-20",
+ "description": "Query consolidated order values summaries."
+ },
+ {
+ "name": "Get location summary (V1)",
+ "method": "GET",
+ "url": "/live/api/v1/orders/getlocationsummary?tenantid=8",
+ "description": "Query order status counts grouped by app location hubs."
+ },
+ {
+ "name": "Get order insight (V1)",
+ "method": "GET",
+ "url": "/live/api/v1/orders/getorderinsight?tenantid=8",
+ "description": "Get monthly order counts grouped by app locations."
+ },
+ {
+ "name": "Get order details (V1)",
+ "method": "GET",
+ "url": "/live/api/v1/orders/getorderdetails?orderheaderid=9821",
+ "description": "Retrieve item line details and pricing summaries for an order."
+ },
+ {
+ "name": "Get orders by location (V1)",
+ "method": "GET",
+ "url": "/live/api/v1/orders/getorderbylocations?customerid=12&applocationid=5",
+ "description": "Get customer orders filtered by application location zone."
+ },
+ {
+ "name": "Get orders (V2)",
+ "method": "GET",
+ "url": "/live/api/v2/orders/getorders?fromdate=2026-05-01&todate=2026-05-20&status=pending&tenantid=8&locationid=45&pageno=1&pagesize=10",
+ "description": "Query active orders list (V2)."
+ },
+ {
+ "name": "Get order insight (V2)",
+ "method": "GET",
+ "url": "/live/api/v2/orders/getorderinsight?tenantid=8",
+ "description": "Retrieve monthly counts per tenant store location."
+ },
+ {
+ "name": "Get order summary (V2)",
+ "method": "GET",
+ "url": "/live/api/v2/orders/getordersummary?tenantid=8&fromdate=2026-05-01&todate=2026-05-20",
+ "description": "Fetch daily consolidated order summary values."
+ },
+ {
+ "name": "Get location summary (V2)",
+ "method": "GET",
+ "url": "/live/api/v2/orders/getlocationsummary?tenantid=8",
+ "description": "Retrieve tenant location-wise active order classifications."
+ },
+ {
+ "name": "Get customer orders (V3)",
+ "method": "GET",
+ "url": "/live/api/v3/orders/getcustomerorders?customerid=12&tenantid=8&orderstatus=delivered&pageno=1&pagesize=10",
+ "description": "Search customer orders with keywords and paging."
+ },
+ {
+ "name": "Create Order (V1)",
+ "method": "POST",
+ "url": "/live/api/v1/orders/createorder",
+ "description": "Create a simple order.",
+ "body": {
+ "orders": {
+ "tenantid": 8,
+ "locationid": 45,
+ "customerid": 4082,
+ "orderamount": 13.60,
+ "itemcount": 2,
+ "items": [
+ {
+ "productid": 101,
+ "productname": "Organic Strawberries 500g",
+ "orderqty": 2.0,
+ "unitprice": 6.80
+ }
+ ]
+ }
}
},
{
- "name": "Purge Master Product Catalog Entry",
+ "name": "Create Multiple Orders (V1)",
+ "method": "POST",
+ "url": "/live/api/v1/orders/createorders",
+ "description": "Create multiple orders in bulk.",
+ "body": [
+ {
+ "orders": {
+ "tenantid": 8,
+ "locationid": 45,
+ "customerid": 4082,
+ "orderamount": 6.80,
+ "itemcount": 1,
+ "items": [
+ {
+ "productid": 101,
+ "productname": "Organic Strawberries 500g",
+ "orderqty": 1.0,
+ "unitprice": 6.80
+ }
+ ]
+ }
+ }
+ ]
+ },
+ {
+ "name": "Update Order",
+ "method": "PUT",
+ "url": "/live/api/v1/orders/updateorder",
+ "description": "Update order status and financial details.",
+ "body": {
+ "orderheaderid": 9821,
+ "orderstatus": "delivered",
+ "deliveryamt": 12.50
+ }
+ },
+ {
+ "name": "Update Multiple Orders",
+ "method": "PUT",
+ "url": "/live/api/v1/orders/updatemultipleorders",
+ "description": "Update multiple order statuses in bulk.",
+ "body": [
+ {
+ "orderheaderid": 9821,
+ "orderstatus": "picked"
+ },
+ {
+ "orderheaderid": 9822,
+ "orderstatus": "picked"
+ }
+ ]
+ },
+ {
+ "name": "Create Order with Coordinates (V2)",
+ "method": "POST",
+ "url": "/live/api/v2/orders/createorder",
+ "description": "Create an order with pickup and drop coordinate details.",
+ "body": {
+ "orders": {
+ "tenantid": 8,
+ "orderamount": 13.60,
+ "itemcount": 1,
+ "items": [
+ {
+ "productid": 101,
+ "productname": "Organic Strawberries 500g",
+ "orderqty": 2.0,
+ "unitprice": 6.80
+ }
+ ]
+ },
+ "pickup": {
+ "customerid": 15,
+ "address": "Pickup Main Warehouse St",
+ "latitude": "-33.8688",
+ "longitude": "151.2093"
+ },
+ "drop": {
+ "customerid": 4082,
+ "address": "100 Berry St, North Sydney NSW 2060",
+ "latitude": "-33.8398",
+ "longitude": "151.2058"
+ }
+ }
+ },
+ {
+ "name": "Create Order with Auto Stock-Out (V3)",
+ "method": "POST",
+ "url": "/live/api/v3/orders/createorder",
+ "description": "Create order with automatic stock deduction record.",
+ "body": {
+ "orders": {
+ "tenantid": 8,
+ "locationid": 45,
+ "customerid": 4082,
+ "orderamount": 13.60,
+ "itemcount": 2,
+ "items": [
+ {
+ "productid": 101,
+ "productname": "Organic Strawberries 500g",
+ "orderqty": 2.0,
+ "unitprice": 6.80
+ }
+ ]
+ }
+ }
+ }
+ ]
+ },
+ {
+ "id": "deliveries",
+ "name": "Deliveries",
+ "description": "Dispatch management, transit tracking, delivery logs, and summary reports.",
+ "endpoints": [
+ {
+ "name": "Get deliveries (V2)",
+ "method": "GET",
+ "url": "/live/api/v2/deliveries/getdeliveries?tenantid=8&locationid=45&partnerid=102&userid=12&status=pending&fromdate=2026-05-01&todate=2026-05-20&keyword=sydney&pageno=1&pagesize=10",
+ "description": "Query parameterized deliveries list with search keyword (V2)."
+ },
+ {
+ "name": "Get deliveries (V3)",
+ "method": "GET",
+ "url": "/live/api/v3/deliveries/getdeliveries?tenantid=8&locationid=45&partnerid=102&userid=12&status=pending&fromdate=2026-05-01&todate=2026-05-20&keyword=sydney&pageno=1&pagesize=10",
+ "description": "Query parameterized deliveries list with search keyword (V3)."
+ },
+ {
+ "name": "Get delivery logs (V1)",
+ "method": "GET",
+ "url": "/live/api/v1/deliveries/getdeliverylogs?deliveryid=405",
+ "description": "Query event transaction logs trail of a delivery."
+ },
+ {
+ "name": "Get delivery logs (V2)",
+ "method": "GET",
+ "url": "/live/api/v2/deliveries/getdeliverylogs?deliveryid=405",
+ "description": "Query event log history of a delivery (V2)."
+ },
+ {
+ "name": "Get delivery logs (V3)",
+ "method": "GET",
+ "url": "/live/api/v3/deliveries/getdeliverylogs?deliveryid=405",
+ "description": "Query event log history of a delivery (V3)."
+ },
+ {
+ "name": "Get delivery summary (V1)",
+ "method": "GET",
+ "url": "/live/api/v1/deliveries/deliverysummary?tenantid=8&locationid=45&fromdate=2026-05-01&todate=2026-05-20",
+ "description": "Query delivery status classification values."
+ },
+ {
+ "name": "Get location summary (V1)",
+ "method": "GET",
+ "url": "/live/api/v1/deliveries/getlocationsummary?tenantid=8",
+ "description": "Retrieve active deliveries count statistics grouped by app location."
+ },
+ {
+ "name": "Get location summary (V2)",
+ "method": "GET",
+ "url": "/live/api/v2/deliveries/getlocationsummary?tenantid=8",
+ "description": "Query active deliveries summary grouped by location."
+ },
+ {
+ "name": "Get delivery queues (V1)",
+ "method": "GET",
+ "url": "/live/api/v1/deliveries/getdeliveryqueues?tenantid=8&locationid=45",
+ "description": "Get current dispatch tasks queue."
+ },
+ {
+ "name": "Get picked delivery queues (V1)",
+ "method": "GET",
+ "url": "/live/api/v1/deliveries/getdeliveryqueuespicked?tenantid=8&locationid=45",
+ "description": "Get picked dispatch tasks from queue."
+ },
+ {
+ "name": "Get delivery queues (V2)",
+ "method": "GET",
+ "url": "/live/api/v2/deliveries/getdeliveryqueues?tenantid=8&locationid=45",
+ "description": "Query active dispatch task queues."
+ },
+ {
+ "name": "Get delivery insight (V1)",
+ "method": "GET",
+ "url": "/live/api/v1/deliveries/getdeliveryinsight?tenantid=8",
+ "description": "Get monthly delivery performance summaries."
+ },
+ {
+ "name": "Get report summary (V1)",
+ "method": "GET",
+ "url": "/live/api/v1/deliveries/getreportsummary?tenantid=8&fromdate=2026-05-01&todate=2026-05-20",
+ "description": "Get complete distance, COD collections, and tasks report summaries."
+ },
+ {
+ "name": "Get report location summary (V1)",
+ "method": "GET",
+ "url": "/live/api/v1/deliveries/getreportlocationsummary?tenantid=8&locationid=45&fromdate=2026-05-01&todate=2026-05-20",
+ "description": "Get report summaries grouped by tenant store location."
+ },
+ {
+ "name": "Get rider location report summary (V1)",
+ "method": "GET",
+ "url": "/live/api/v1/deliveries/getriderlocationreportsummary?tenantid=8&userid=12&fromdate=2026-05-01&todate=2026-05-20",
+ "description": "Query report stats per rider per tenant store location."
+ },
+ {
+ "name": "Get rider summary (V1)",
+ "method": "GET",
+ "url": "/live/api/v1/deliveries/getridersummary?tenantid=8&locationid=45&fromdate=2026-05-01&todate=2026-05-20",
+ "description": "Retrieve active riders shift and duty metric summaries."
+ },
+ {
+ "name": "Get rider location summary (V1)",
+ "method": "GET",
+ "url": "/live/api/v1/deliveries/getriderlocationsummary?tenantid=8&locationid=45&fromdate=2026-05-01&todate=2026-05-20",
+ "description": "Retrieve rider metrics summary grouped by store location."
+ },
+ {
+ "name": "Get rider by delivery (V1)",
+ "method": "GET",
+ "url": "/live/api/v1/deliveries/getriderbydelivery?deliveryid=405",
+ "description": "Fetch details of rider assigned to a delivery task."
+ },
+ {
+ "name": "Get last delivery by contact (V1)",
+ "method": "GET",
+ "url": "/live/api/v1/deliveries/getlastdeliverybycontact?contactno=%2B61411222333",
+ "description": "Retrieve last delivery detail matching customer contact number."
+ },
+ {
+ "name": "Get user report summary (V1)",
+ "method": "GET",
+ "url": "/live/api/v1/deliveries/getuserreportsummary?userid=12&fromdate=2026-05-01&todate=2026-05-20",
+ "description": "Get specific rider performance report summary."
+ },
+ {
+ "name": "Get user delivery logs (V1)",
+ "method": "GET",
+ "url": "/live/api/v1/deliveries/getuserdeliverylogs?userid=12&fromdate=2026-05-01&todate=2026-05-20",
+ "description": "Query raw logs of rider activity."
+ },
+ {
+ "name": "Create Delivery (V1)",
+ "method": "POST",
+ "url": "/live/api/v1/deliveries/createdelivery",
+ "description": "Register a new dispatch task.",
+ "body": {
+ "deliveryid": 0,
+ "orderheaderid": 9821,
+ "userid": 12,
+ "tenantid": 8,
+ "orderid": "ORD-000843",
+ "deliverydate": "2026-05-20",
+ "orderstatus": "pending",
+ "pickupaddress": "123 Warehouse Rd",
+ "pickuplat": "-33.8600",
+ "pickuplon": "151.2000",
+ "deliveryaddress": "45 Residential St",
+ "deliverylat": "-33.8700",
+ "deliverylong": "151.2100",
+ "deliveryamt": 12.50,
+ "paymenttype": 43
+ }
+ },
+ {
+ "name": "Create Bulk Deliveries (V1)",
+ "method": "POST",
+ "url": "/live/api/v1/deliveries/createdeliveries",
+ "description": "Register bulk dispatch tasks.",
+ "body": [
+ {
+ "deliveryid": 0,
+ "orderheaderid": 9821,
+ "userid": 12,
+ "tenantid": 8,
+ "orderid": "ORD-000843",
+ "deliverydate": "2026-05-20",
+ "orderstatus": "pending",
+ "pickupaddress": "123 Warehouse Rd",
+ "pickuplat": "-33.8600",
+ "pickuplon": "151.2000",
+ "deliveryaddress": "45 Residential St",
+ "deliverylat": "-33.8700",
+ "deliverylong": "151.2100",
+ "deliveryamt": 12.50,
+ "paymenttype": 43
+ }
+ ]
+ },
+ {
+ "name": "Update Delivery Status (V1)",
+ "method": "PUT",
+ "url": "/live/api/v1/deliveries/Updatedelivery",
+ "description": "Update transit status / rider state transitions.",
+ "body": {
+ "deliveryid": 405,
+ "orderheaderid": 9821,
+ "userid": 12,
+ "orderstatus": "delivered",
+ "starttime": "2026-05-20 10:30:00",
+ "arrivaltime": "2026-05-20 10:45:00",
+ "deliverytime": "2026-05-20 10:50:00",
+ "riderslat": "-33.8702",
+ "riderslon": "151.2103",
+ "dropimage": "base64_or_s3_url_string",
+ "collectedamt": 12.50,
+ "collectionstatus": 1
+ }
+ },
+ {
+ "name": "Publish Delivery Tracking Log (V1)",
+ "method": "POST",
+ "url": "/live/api/v1/deliveries/createdeliverylog",
+ "description": "Publish GPS tracking log for a delivery.",
+ "body": {
+ "deliveryid": 405,
+ "latitude": "-33.8688",
+ "longitude": "151.2093",
+ "raw_latitude": "-33.86885",
+ "raw_longitude": "151.20935",
+ "speed": "24.5",
+ "heading": "180.0",
+ "status": "in_transit"
+ }
+ },
+ {
+ "name": "Create Bulk Deliveries (V2)",
+ "method": "POST",
+ "url": "/live/api/v2/deliveries/createdeliveries",
+ "description": "Register bulk dispatch tasks (V2).",
+ "body": [
+ {
+ "deliveryid": 0,
+ "orderheaderid": 9821,
+ "userid": 12,
+ "tenantid": 8,
+ "orderid": "ORD-000843",
+ "deliverydate": "2026-05-20",
+ "orderstatus": "pending",
+ "pickupaddress": "123 Warehouse Rd",
+ "pickuplat": "-33.8600",
+ "pickuplon": "151.2000",
+ "deliveryaddress": "45 Residential St",
+ "deliverylat": "-33.8700",
+ "deliverylong": "151.2100",
+ "deliveryamt": 12.50,
+ "paymenttype": 43
+ }
+ ]
+ },
+ {
+ "name": "Publish Delivery Tracking Log (V2)",
+ "method": "POST",
+ "url": "/live/api/v2/deliveries/createdeliverylog",
+ "description": "Publish GPS tracking log for a delivery (V2).",
+ "body": {
+ "deliveryid": 405,
+ "latitude": "-33.8688",
+ "longitude": "151.2093",
+ "raw_latitude": "-33.86885",
+ "raw_longitude": "151.20935",
+ "speed": "24.5",
+ "heading": "180.0",
+ "status": "in_transit"
+ }
+ }
+ ]
+ },
+ {
+ "id": "partners",
+ "name": "Partners",
+ "description": "Logistics partner management, rider profiles, shifts, logs, and break tracking.",
+ "endpoints": [
+ {
+ "name": "Get active riders summary",
+ "method": "GET",
+ "url": "/live/api/v1/partners/getactiveriderssummary?partnerid=102",
+ "description": "Get active dispatch riders summary metrics."
+ },
+ {
+ "name": "Get rider shifts",
+ "method": "GET",
+ "url": "/live/api/v1/partners/getridershifts?partnerid=102&shiftdate=2026-05-20",
+ "description": "Get available rider operational shifts."
+ },
+ {
+ "name": "Get rider pricing",
+ "method": "GET",
+ "url": "/live/api/v1/partners/getriderpricing?partnerid=102&applocationid=5",
+ "description": "Query delivery billing price configurations for riders."
+ },
+ {
+ "name": "Get rider pool",
+ "method": "GET",
+ "url": "/live/api/v1/partners/getriderpool?partnerid=102&applocationid=5",
+ "description": "Retrieve rider pool availability status."
+ },
+ {
+ "name": "Get rider info (V1)",
+ "method": "GET",
+ "url": "/live/api/v1/partners/getriderinfo?partnerid=102&userid=12",
+ "description": "Retrieve general rider user info metadata."
+ },
+ {
+ "name": "Get rider info (V2)",
+ "method": "GET",
+ "url": "/live/api/v2/partners/getriderinfo?partnerid=102&userid=12",
+ "description": "Retrieve general rider user info metadata (V2)."
+ },
+ {
+ "name": "Get active riders (V1)",
+ "method": "GET",
+ "url": "/live/api/v1/partners/getriders?partnerid=102&applocationid=5",
+ "description": "Fetch active logistics riders status metrics."
+ },
+ {
+ "name": "Get active riders (V2)",
+ "method": "GET",
+ "url": "/live/api/v2/partners/getriders?partnerid=102&applocationid=5",
+ "description": "Fetch active logistics riders status metrics (V2)."
+ },
+ {
+ "name": "Get rider detail (V1)",
+ "method": "GET",
+ "url": "/live/api/v1/partners/getriderdetail?userid=12",
+ "description": "Query full details of a single rider."
+ },
+ {
+ "name": "Get all riders",
+ "method": "GET",
+ "url": "/live/api/v1/partners/getallriders?partnerid=102&pageno=1&pagesize=10",
+ "description": "List all registered riders in the partner pool."
+ },
+ {
+ "name": "Get partner profiles",
+ "method": "GET",
+ "url": "/live/api/v1/partners/getpartners?partnerid=102",
+ "description": "List partner profiles."
+ },
+ {
+ "name": "Get partner locations",
+ "method": "GET",
+ "url": "/live/api/v1/partners/getlocations?partnerid=102",
+ "description": "Fetch physical location configuration mappings."
+ },
+ {
+ "name": "Get partner users",
+ "method": "GET",
+ "url": "/live/api/v1/partners/getpartnerusers?partnerid=102",
+ "description": "List partner logins under user directory."
+ },
+ {
+ "name": "Get rider count",
+ "method": "GET",
+ "url": "/live/api/v1/partners/getridercount?partnerid=102&fromdate=2026-05-01&todate=2026-05-20",
+ "description": "Get order counts completed per rider."
+ },
+ {
+ "name": "Get rider log",
+ "method": "GET",
+ "url": "/live/api/v1/partners/getriderlog?userid=12&logdate=2026-05-20",
+ "description": "Fetch rider logs for a specific date."
+ },
+ {
+ "name": "Get rider logs (V1)",
+ "method": "GET",
+ "url": "/live/api/v1/partners/getriderlogs?partnerid=102&fromdate=2026-05-01&todate=2026-05-20",
+ "description": "Query rider cumulative login logs."
+ },
+ {
+ "name": "Get rider logs (V2)",
+ "method": "GET",
+ "url": "/live/api/v2/partners/getriderlogs?partnerid=102&fromdate=2026-05-01&todate=2026-05-20",
+ "description": "Query rider cumulative login logs (V2)."
+ },
+ {
+ "name": "Get rider weekly kms",
+ "method": "GET",
+ "url": "/live/api/v1/partners/getriderweeklykms?userid=12&fromdate=2026-05-01&todate=2026-05-20",
+ "description": "Get weekly cumulative kilometers traveled by rider."
+ },
+ {
+ "name": "Get rider support requests",
+ "method": "GET",
+ "url": "/live/api/v1/partners/getridersupport?userid=12",
+ "description": "Get rider support requests."
+ },
+ {
+ "name": "Get all rider summary",
+ "method": "GET",
+ "url": "/live/api/v1/partners/getallridersummary?partnerid=102",
+ "description": "Get consolidated summary profiles of all riders."
+ },
+ {
+ "name": "Get user location summary",
+ "method": "GET",
+ "url": "/live/api/v1/partners/getuserlocationsummary?partnerid=102",
+ "description": "Get summary of rider location mappings."
+ },
+ {
+ "name": "Get admin token",
+ "method": "GET",
+ "url": "/live/api/v1/partners/getadmintoken?partnerid=102",
+ "description": "Retrieve admin access tokens."
+ },
+ {
+ "name": "Get delivery stats (V2)",
+ "method": "GET",
+ "url": "/live/api/v2/partners/getdeliverystats?partnerid=102",
+ "description": "Get today's delivery status metrics."
+ },
+ {
+ "name": "Create Rider Shift",
+ "method": "POST",
+ "url": "/live/api/v1/partners/createshift",
+ "description": "Setup a logistics shift configuration.",
+ "body": {
+ "shiftid": 0,
+ "shiftdate": "2026-05-20",
+ "starttime": "08:00:00",
+ "endtime": "16:00:00",
+ "shifthours": 8.0,
+ "basefare": 20.00,
+ "additionalkm": 1.20,
+ "additionalcharges": 2.50,
+ "orders": 15,
+ "fuelcharge": 5.00
+ }
+ },
+ {
+ "name": "Create Rider Profile",
+ "method": "POST",
+ "url": "/live/api/v1/partners/createrider",
+ "description": "Register a new logistics rider profile.",
+ "body": {
+ "userid": 12,
+ "partnerid": 102,
+ "identificationno": "AB981240A",
+ "shiftid": 2,
+ "basefare": 20.00,
+ "additionalkm": 1.20,
+ "additionalcharges": 2.50,
+ "vehicleid": 3,
+ "vehiclename": "Electric Bike",
+ "vehicleno": "NSW-RIDER-01",
+ "model": "Volt-X",
+ "color": "Red",
+ "licenseno": "LIC801249",
+ "insuranceno": "INS-7712",
+ "insurancedate": "2027-05-20"
+ }
+ },
+ {
+ "name": "Update Rider Settings",
+ "method": "PUT",
+ "url": "/live/api/v1/partners/updateridersettings",
+ "description": "Update rider operational rates.",
+ "body": {
+ "userid": 12,
+ "partnerid": 102,
+ "basefare": 22.00,
+ "additionalkm": 1.30,
+ "additionalcharges": 3.00
+ }
+ },
+ {
+ "name": "Update Rider Profile",
+ "method": "PUT",
+ "url": "/live/api/v1/partners/updaterider",
+ "description": "Update rider profile details.",
+ "body": {
+ "userid": 12,
+ "partnerid": 102,
+ "identificationno": "AB981240A",
+ "shiftid": 2,
+ "basefare": 22.00,
+ "additionalkm": 1.30,
+ "additionalcharges": 2.50,
+ "vehicleid": 3,
+ "vehiclename": "Electric Bike",
+ "vehicleno": "NSW-RIDER-01",
+ "model": "Volt-X",
+ "color": "Red",
+ "licenseno": "LIC801249",
+ "insuranceno": "INS-7712",
+ "insurancedate": "2027-05-20"
+ }
+ },
+ {
+ "name": "Create Rider Log (V1)",
+ "method": "POST",
+ "url": "/live/api/v1/partners/createriderlog",
+ "description": "Create a rider shift log entry.",
+ "body": {
+ "logid": 0,
+ "logdate": "2026-05-20",
+ "userid": 12,
+ "partnerid": 102,
+ "shiftid": 2,
+ "shifthours": 8.0,
+ "login": "2026-05-20 08:00:00",
+ "latitude": "-33.8688",
+ "longitude": "151.2093",
+ "status": "login"
+ }
+ },
+ {
+ "name": "Create Rider Log (V2)",
+ "method": "POST",
+ "url": "/live/api/v2/partners/createriderlog",
+ "description": "Create a rider shift log entry (V2).",
+ "body": {
+ "logid": 0,
+ "logdate": "2026-05-20",
+ "userid": 12,
+ "partnerid": 102,
+ "shiftid": 2,
+ "shifthours": 8.0,
+ "login": "2026-05-20 08:00:00",
+ "latitude": "-33.8688",
+ "longitude": "151.2093",
+ "status": "login"
+ }
+ },
+ {
+ "name": "Update Rider Log (V1)",
+ "method": "PUT",
+ "url": "/live/api/v1/partners/updateriderlog",
+ "description": "Update rider shift log (logout/fulfill).",
+ "body": {
+ "logid": 4092,
+ "userid": 12,
+ "logout": "2026-05-20 16:00:00",
+ "workhours": 7.8,
+ "shorthours": 0.2,
+ "logstatus": 2,
+ "latitude": "-33.8690",
+ "longitude": "151.2100",
+ "status": "logout"
+ }
+ },
+ {
+ "name": "Update Rider Log (V2)",
+ "method": "PUT",
+ "url": "/live/api/v2/partners/updateriderlog",
+ "description": "Update rider shift log (logout/fulfill) (V2).",
+ "body": {
+ "logid": 4092,
+ "userid": 12,
+ "logout": "2026-05-20 16:00:00",
+ "workhours": 7.8,
+ "shorthours": 0.2,
+ "logstatus": 2,
+ "latitude": "-33.8690",
+ "longitude": "151.2100",
+ "status": "logout"
+ }
+ },
+ {
+ "name": "Create Break Log (V1)",
+ "method": "POST",
+ "url": "/live/api/v1/partners/createbreaklog",
+ "description": "Create a rider break status log.",
+ "body": {
+ "breakid": 0,
+ "logid": 4092,
+ "breakdate": "2026-05-20",
+ "userid": 12,
+ "partnerid": 102,
+ "shiftid": 2,
+ "breakstart": "2026-05-20 12:00:00",
+ "latitude": "-33.8688",
+ "longitude": "151.2093"
+ }
+ },
+ {
+ "name": "Create Break Log (V2)",
+ "method": "POST",
+ "url": "/live/api/v2/partners/createbreaklog",
+ "description": "Create a rider break status log (V2).",
+ "body": {
+ "breakid": 0,
+ "logid": 4092,
+ "breakdate": "2026-05-20",
+ "userid": 12,
+ "partnerid": 102,
+ "shiftid": 2,
+ "breakstart": "2026-05-20 12:00:00",
+ "latitude": "-33.8688",
+ "longitude": "151.2093"
+ }
+ },
+ {
+ "name": "Complete Break Log (V1)",
+ "method": "PUT",
+ "url": "/live/api/v1/partners/updatebreaklog",
+ "description": "Mark a rider break as completed.",
+ "body": {
+ "breakid": 901,
+ "breakend": "2026-05-20 12:30:00",
+ "breakhours": 0.5
+ }
+ },
+ {
+ "name": "Complete Break Log (V2)",
+ "method": "PUT",
+ "url": "/live/api/v2/partners/updatebreaklog",
+ "description": "Mark a rider break as completed (V2).",
+ "body": {
+ "breakid": 901,
+ "breakend": "2026-05-20 12:30:00",
+ "breakhours": 0.5
+ }
+ },
+ {
+ "name": "Create Rider Support Request",
+ "method": "POST",
+ "url": "/live/api/v1/partners/createridersupport",
+ "description": "Submit a rider support request ticket.",
+ "body": {
+ "userid": 12,
+ "subject": "Missing delivery payment",
+ "description": "COD collection not reflected in dashboard.",
+ "category": "Billing"
+ }
+ },
+ {
+ "name": "Delete Rider Log (V2)",
"method": "DELETE",
- "url": "/live/api/v1/web/products/delete?productid=105",
- "description": "Purge Master Product Catalog Entry"
- },
- {
- "name": "Mobile Update Product Details",
- "method": "PUT",
- "url": "/live/api/v1/mob/products/update",
- "description": "Mobile Update Product Details Payload: (Uses the same schema as Web Update Master Product Details)",
+ "url": "/live/api/v2/partners/deleteriderlog",
+ "description": "Remove a rider log entry.",
"body": {
- "productid": 105,
- "productname": "Organic Farm Cow Milk 1L",
- "productcost": 1.95,
- "retailprice": 3.75,
- "productstock": 120,
- "productstatus": "available"
- }
- },
- {
- "name": "Mobile Update Product Outlet Config",
- "method": "PUT",
- "url": "/live/api/v1/mob/products/updateproductlocation",
- "description": "Mobile Update Product Outlet Config Payload: (Uses the same schema as Web Update Product Outlet Constraints)",
- "body": {
- "productlocationid": 25,
- "tenantid": 8,
- "locationid": 2,
- "productid": 105,
- "minquantity": 10,
- "maxquantity": 150,
- "price": 3.99,
- "status": "Active"
+ "logid": 4092
}
}
]
@@ -1782,13 +2050,419 @@ export const restTopics = [
{
"id": "invoice",
"name": "Invoice",
- "description": "Invoice insights and billing analytics.",
- "endpoints": []
+ "description": "Invoice generation, billing management, and payment status tracking.",
+ "endpoints": [
+ {
+ "name": "Get invoice sequence number",
+ "method": "GET",
+ "url": "/live/api/v1/invoice/getseqno?tenantid=8",
+ "description": "Retrieve next sequence identifier for tenant invoice generation."
+ },
+ {
+ "name": "Get invoice orders",
+ "method": "GET",
+ "url": "/live/api/v1/invoice/getinvoiceorders?invoiceid=402",
+ "description": "List orders associated under an invoice."
+ },
+ {
+ "name": "Get all invoices",
+ "method": "GET",
+ "url": "/live/api/v1/invoice/getallinvoice?tenantid=8&customerid=12&status=Unpaid&pageno=1&pagesize=10",
+ "description": "Query invoices catalog with paging and status checks."
+ },
+ {
+ "name": "Get invoice insight",
+ "method": "GET",
+ "url": "/live/api/v1/invoice/getinvoiceinsight?tenantid=8",
+ "description": "Retrieve consolidated revenue insights for invoice billing."
+ },
+ {
+ "name": "Create Invoice",
+ "method": "POST",
+ "url": "/live/api/v1/invoice/create",
+ "description": "Create a new invoice.",
+ "body": {
+ "invoiceid": 0,
+ "invoiceno": "INV-00802",
+ "invoicedate": "2026-05-20",
+ "tenantid": 8,
+ "customerid": 4082,
+ "amount": 250.00,
+ "taxamount": 25.00,
+ "status": "Unpaid"
+ }
+ },
+ {
+ "name": "Update Invoice",
+ "method": "PUT",
+ "url": "/live/api/v1/invoice/update",
+ "description": "Update an existing invoice.",
+ "body": {
+ "invoiceid": 402,
+ "invoiceno": "INV-00802",
+ "invoicedate": "2026-05-20",
+ "tenantid": 8,
+ "customerid": 4082,
+ "amount": 275.00,
+ "taxamount": 27.50,
+ "status": "Unpaid"
+ }
+ },
+ {
+ "name": "Update Invoice Status",
+ "method": "PUT",
+ "url": "/live/api/v1/invoice/updatestatus",
+ "description": "Update invoice payment status.",
+ "body": {
+ "invoiceid": 402,
+ "status": "Paid",
+ "paymentmode": "Card",
+ "reference": "TXN9402801"
+ }
+ }
+ ]
+ },
+ {
+ "id": "utils",
+ "name": "Utils",
+ "description": "App configuration, notifications, webhooks, Redis cache, and rider telemetry.",
+ "endpoints": [
+ {
+ "name": "Get app locations (V1)",
+ "method": "GET",
+ "url": "/live/api/v1/utils/getapplocations?applocationid=5",
+ "description": "Get active app physical hub locations."
+ },
+ {
+ "name": "Get app locations (V2)",
+ "method": "GET",
+ "url": "/live/api/v2/utils/getapplocations?userid=12",
+ "description": "Get active app physical hub locations (V2)."
+ },
+ {
+ "name": "Get app config",
+ "method": "GET",
+ "url": "/live/api/v1/utils/getappconfig?configid=6",
+ "description": "Get core app specifications and provider credentials."
+ },
+ {
+ "name": "Get all app configs",
+ "method": "GET",
+ "url": "/live/api/v1/utils/getallappconfig",
+ "description": "Get all system app configurations."
+ },
+ {
+ "name": "Get app types",
+ "method": "GET",
+ "url": "/live/api/v1/utils/getapptypes?tag=Rider",
+ "description": "Get application type classifications matching tag string."
+ },
+ {
+ "name": "Get categories",
+ "method": "GET",
+ "url": "/live/api/v1/utils/getcategories?moduleid=6",
+ "description": "List app categories mapped under module configuration."
+ },
+ {
+ "name": "Get subcategories",
+ "method": "GET",
+ "url": "/live/api/v1/utils/getsubcategories?moduleid=6&categoryid=4",
+ "description": "List app subcategories under category and module configurations."
+ },
+ {
+ "name": "Get app pricing",
+ "method": "GET",
+ "url": "/live/api/v1/utils/getapppricing?applocationid=5&configid=6&pricingtypeid=1",
+ "description": "Query exact pricing configurations mapped to zone and config."
+ },
+ {
+ "name": "Get all pricing",
+ "method": "GET",
+ "url": "/live/api/v1/utils/getallpricing?applocationid=5",
+ "description": "Get all app delivery pricing ranges."
+ },
+ {
+ "name": "Get app location config",
+ "method": "GET",
+ "url": "/live/api/v1/utils/getapplocationconfig?applocationid=5",
+ "description": "Retrieve app zone configs."
+ },
+ {
+ "name": "Get tenant notifications",
+ "method": "GET",
+ "url": "/live/api/v1/utils/gettenantnotifications?tenantid=8&pageno=1&pagesize=10",
+ "description": "Query push notifications history processed for tenant."
+ },
+ {
+ "name": "Get shopfront orders",
+ "method": "GET",
+ "url": "/live/api/v1/utils/getshopfrontorders",
+ "description": "Fetch third-party shopfront sync order payloads."
+ },
+ {
+ "name": "Get user bonus summary",
+ "method": "GET",
+ "url": "/live/api/v1/utils/getuserbonussummary?userid=12",
+ "description": "Get rider cumulative bonus points summary."
+ },
+ {
+ "name": "Get user roles",
+ "method": "GET",
+ "url": "/live/api/v1/utils/getuserroles",
+ "description": "List all system platform roles."
+ },
+ {
+ "name": "Get user Redis cache",
+ "method": "GET",
+ "url": "/live/api/v1/utils/getuserredis?userid=12",
+ "description": "Retrieve app user credentials stored in Redis cache."
+ },
+ {
+ "name": "Get rider periodic logs",
+ "method": "GET",
+ "url": "/live/api/v1/utils/getriderperiodiclogs?userid=12",
+ "description": "Query raw rider logs cached in memory."
+ },
+ {
+ "name": "Get rider status",
+ "method": "GET",
+ "url": "/live/api/v1/utils/getriderstatus?userid=12",
+ "description": "Query current cached online/duty status of a rider."
+ },
+ {
+ "name": "Send Push Notification (Single)",
+ "method": "POST",
+ "url": "/live/api/v1/utils/notifyuser",
+ "description": "Send a single push notification to a device.",
+ "body": {
+ "token": "FCM_DEVICE_TOKEN_ABC",
+ "notification": {
+ "title": "Welcome to Nearle!",
+ "body": "Your registration was successful.",
+ "sound": "default",
+ "type": "welcome"
+ }
+ }
+ },
+ {
+ "name": "Send Push Notification (Broadcast)",
+ "method": "POST",
+ "url": "/live/api/v1/utils/sendnotifications",
+ "description": "Send multi-token broadcast push notification.",
+ "body": {
+ "token": ["FCM_TOKEN_1", "FCM_TOKEN_2"],
+ "notification": {
+ "title": "System Update",
+ "body": "System will be down for 5 mins.",
+ "sound": "default",
+ "type": "standard"
+ }
+ }
+ },
+ {
+ "name": "Create App Pricing Config",
+ "method": "POST",
+ "url": "/live/api/v1/utils/createapppricing",
+ "description": "Create global logistics rates configuration.",
+ "body": {
+ "applocationid": 5,
+ "basefare": 8.50,
+ "additionalkm": 1.50,
+ "additionalcharges": 2.00,
+ "fuelcharge": 0.50
+ }
+ },
+ {
+ "name": "Notify Admin",
+ "method": "POST",
+ "url": "/live/api/v1/utils/notifyadmin",
+ "description": "Send push notification to admin console.",
+ "body": {
+ "token": "ADMIN_FCM_TOKEN",
+ "notification": {
+ "title": "Database Threshold",
+ "body": "Active connection reaches 85%.",
+ "sound": "default",
+ "type": "warning"
+ }
+ }
+ },
+ {
+ "name": "Notify Tenant",
+ "method": "POST",
+ "url": "/live/api/v1/utils/notifytenant",
+ "description": "Send push notification to tenant manager and log history.",
+ "body": {
+ "token": "TENANT_FCM_TOKEN",
+ "tenantid": 8,
+ "moduleid": 6,
+ "locationid": 45,
+ "customerid": 4082,
+ "notification": {
+ "title": "Low Stock",
+ "body": "Fresh apples quantity falls below threshold.",
+ "sound": "default",
+ "type": "alert"
+ }
+ }
+ },
+ {
+ "name": "Webhook Listener",
+ "method": "POST",
+ "url": "/live/api/v1/utils/webhooks",
+ "description": "General webhook listener / receiver.",
+ "body": {
+ "id": "event-uuid-1",
+ "event": "sale.created",
+ "timestamp": "2026-05-20T10:20:00Z",
+ "payload": {}
+ }
+ },
+ {
+ "name": "Register GraphQL Webhook",
+ "method": "POST",
+ "url": "/live/api/v1/utils/register-webhook",
+ "description": "Register a third-party GraphQL webhook callback.",
+ "body": {
+ "callbackurl": "https://jupiter.nearle.app/live/api/v1/utils/webhooksreceiver",
+ "secret": "webhook_secret_key"
+ }
+ },
+ {
+ "name": "Create Internal Webhook",
+ "method": "POST",
+ "url": "/live/api/v1/utils/createwebhook",
+ "description": "Create an internal webhook event configuration.",
+ "body": {
+ "webhookid": 0,
+ "eventname": "sale.created",
+ "callbackurl": "https://clientapp.com/webhooks",
+ "status": "Active"
+ }
+ },
+ {
+ "name": "Shopfront Webhook Receiver",
+ "method": "POST",
+ "url": "/live/api/v1/utils/webhooksreceiver",
+ "description": "Shopfront callback webhook receiver endpoint.",
+ "body": {
+ "id": "event-uuid-2",
+ "event": "inventory.updated",
+ "timestamp": "2026-05-20T10:20:00Z",
+ "payload": {}
+ }
+ },
+ {
+ "name": "Setup Inventory Webhook",
+ "method": "POST",
+ "url": "/live/api/v1/utils/webhooks/inventory",
+ "description": "Setup shopfront inventory GraphQL webhook.",
+ "body": {
+ "callbackurl": "https://jupiter.nearle.app/live/api/v1/utils/webhooksreceiver",
+ "secret": "webhook_secret_key"
+ }
+ },
+ {
+ "name": "Create App Location Config",
+ "method": "POST",
+ "url": "/live/api/v1/utils/createapplocationconfig",
+ "description": "Setup physical app zone configuration.",
+ "body": {
+ "applocationid": 5,
+ "configid": 6,
+ "locationname": "Sydney Metro Hub",
+ "latitude": "-33.8688",
+ "longitude": "151.2093",
+ "status": "Active"
+ }
+ },
+ {
+ "name": "Update App Location Config",
+ "method": "PUT",
+ "url": "/live/api/v1/utils/updateapplocationconfig",
+ "description": "Update physical app zone configuration.",
+ "body": {
+ "applocationid": 5,
+ "configid": 6,
+ "locationname": "Sydney Metro Hub Updated",
+ "latitude": "-33.8688",
+ "longitude": "151.2093",
+ "status": "Active"
+ }
+ },
+ {
+ "name": "Ingest User Redis Cache",
+ "method": "POST",
+ "url": "/live/api/v1/utils/createuserredis",
+ "description": "Store app user credentials in Redis cache.",
+ "body": {
+ "userid": 12,
+ "authtoken": "session_bearer_token_string",
+ "expiry": 86400
+ }
+ },
+ {
+ "name": "Publish Rider Periodic Log",
+ "method": "POST",
+ "url": "/live/api/v1/utils/createriderperiodiclog",
+ "description": "Publish rider periodic GPS coordinates log.",
+ "body": {
+ "userid": 12,
+ "latitude": "-33.8688",
+ "longitude": "151.2093",
+ "speed": "15.4",
+ "heading": "90.0",
+ "timestamp": "2026-05-20T10:20:00Z"
+ }
+ },
+ {
+ "name": "Publish Rider Duty Status",
+ "method": "POST",
+ "url": "/live/api/v1/utils/createriderstatus",
+ "description": "Publish rider current duty status.",
+ "body": {
+ "userid": 12,
+ "onduty": 1,
+ "status": "idle"
+ }
+ }
+ ]
},
{
"id": "payments",
"name": "Payments",
- "description": "Payment requests and settlements.",
- "endpoints": []
+ "description": "Payment requests, admin order queries, and platform configuration.",
+ "endpoints": [
+ {
+ "name": "Get payment request",
+ "method": "GET",
+ "url": "/live/api/v1/payments/requests/getpaymentrequest?customerid=12",
+ "description": "Query payment requests log."
+ },
+ {
+ "name": "Admin get orders",
+ "method": "GET",
+ "url": "/live/api/v1/admin/orders/getorders?tenantid=8&pageno=1&pagesize=10",
+ "description": "Retrieve specific order summaries under administrator access."
+ },
+ {
+ "name": "Get SMS provider",
+ "method": "GET",
+ "url": "/live/api/v1/platform/getsmsprovider",
+ "description": "Fetch SMS provider specifications."
+ },
+ {
+ "name": "Create Payment Request",
+ "method": "POST",
+ "url": "/live/api/v1/payments/requests/create",
+ "description": "Issue a customer payment charge request.",
+ "body": {
+ "amount": 250.00,
+ "currency": "AUD",
+ "customerid": 4082,
+ "description": "Invoice Payment INV-00802"
+ }
+ }
+ ]
}
];