Files
Express_developer_docs/original_topics.cjs

348 lines
13 KiB
JavaScript
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
const existingTopics = [
{
id: 'utils',
name: 'Utils',
description: 'Shared lookup endpoints roles, locations, configs, app types, pricing.',
endpoints: [
{
name: 'getuserroles',
method: 'GET',
url: '/api/rest/Xpress/utils/getuserroles',
description: 'Retrieve all user roles available in the system.'
},
{
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."
},
{
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'."
},
{
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='."
},
{
name: 'getallpricing',
method: 'GET',
url: '/api/rest/xpress/utils/getallpricing?applocationid=1',
description: 'Retrieve all pricing rules for an app location.'
},
{
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."
},
{
name: 'getsubcategories',
method: 'GET',
url: '/api/rest/xpress/utils/getsubcategories/?moduleid=6',
description: 'List all subcategories for a given module.'
}
]
},
{
id: 'users',
name: 'Users',
description: 'Manage users and roles across the Xpress platform.',
endpoints: [
{
name: 'getallusers',
method: 'GET',
url: '/api/rest/xpress/users/getallusers?roleid=2&configid=1&tenantid=1079&status=Active&keyword=%john%&limit=10&offset=0',
description: 'List users filtered by role, config, tenant, status, and keyword.'
},
{
name: 'getusersinfo',
method: 'GET',
url: '/api/rest/xpress/users/getusers?userid=1326',
description: 'Retrieve a single user by ID.'
}
]
},
{
id: 'partners',
name: 'Partners',
description: 'Partners, riders, locations, shifts, and rider pricing.',
endpoints: [
{
name: 'getlocations (by user)',
method: 'GET',
url: '/api/rest/xpress/partners/getlocations?userid=1277&configid=9',
description: 'Get partner locations linked to a specific user.'
},
{
name: 'gettenantlocations ',
method: 'GET',
url: '/api/rest/xpress/tenants/gettenantlocations?keyword=daily&tenantid=916',
description: 'Get partner locations linked to a specific tenant.'
},
{
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/."
},
{
name: 'getriderpricing',
method: 'GET',
url: '/api/rest/xpress/partners/getriderpricing?applocationid=0',
description: 'Get rider pricing rules for an app location.'
},
{
name: 'getallriders',
method: 'GET',
url: '/api/rest/xpress/partners/getallriders?partnerid=44&limit=10',
description: 'List all riders for a partner.'
},
{
name: 'getallridersummary',
method: 'GET',
url: '/api/rest/xpress/partners/getallridersummary?applocationid=1',
description: 'Aggregated summary of all riders at a location.'
},
{
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."
},
{
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."
}
]
},
{
id: 'tenants',
name: 'Tenants',
description: 'Tenant accounts info, locations, customers, orders, pricing, summary.',
endpoints: [
{
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'."
},
{
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."
},
{
name: 'gettenantinfo',
method: 'GET',
url: '/api/rest/xpress/tenants/gettenantinfo?tenantid=1',
description: 'Get basic information about a tenant.'
},
{
name: 'gettenantlocations',
method: 'GET',
url: '/api/rest/xpress/tenants/gettenantlocations?tenantid=916&keyword=%%',
description: 'List physical locations for a tenant.'
},
{
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'."
},
{
name: 'getpricinglist',
method: 'GET',
url: '/api/rest/xpress/tenants/getpricinglist?tenantid=1087',
description: 'Retrieve the tenants pricing list.',
_note: "Source 'getpricingl' truncated — assumed 'getpricinglist'."
},
{
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'."
},
{
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/."
}
]
},
{
id: 'customers',
name: 'Customers',
description: 'Customer accounts, lookups, and search.',
endpoints: [
{
name: 'getallcustomers',
method: 'GET',
url: '/api/rest/xpress/customers/getallcustomers?applocationid=&keyword=&pageno=&pagesize=',
description: 'Paginated list of all customers under an app location.'
},
{
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'."
},
{
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'."
}
]
},
{
id: 'deliveries',
name: 'Deliveries',
description: 'Delivery records, queues, and rider-delivery joins.',
endpoints: [
{
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'."
},
{
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'."
},
{
name: 'deliverysummary',
method: 'GET',
url: '/api/rest/xpress/deliveries/deliverysummary?appuserid=1&fromdate=2026-03-31T00:00:00&todate=2026-03-31T23:59:59&status=active&applocationid=1&locationid=1160&tenantid=916&userid=865',
description: 'Aggregated delivery summary for an app user.'
},
{
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."
}
]
},
{
id: 'orders',
name: 'Orders',
description: 'Order records, details, and aggregate summaries.',
endpoints: [
{
name: 'getorders',
method: 'GET',
url: '/api/rest/xpress/orders/tenant/getorders?start=2026-05-01T00:00:00&end=2026-05-31T23:59:59&status=delivered&limit=10&offset=0',
description: 'List orders within a time frame and status.'
},
{
name: 'getordersummary',
method: 'GET',
url: '/api/rest/getordersummary/?tenantid=1079&fromdate=2025-07-24&todate=2025-07-24&configid=9',
description: 'High-level summary of orders for a tenant/date range.'
},
{
name: 'getorderdetails',
method: 'GET',
url: '/api/rest/xpress/orders/getorderdetails?orderheaderid=6562',
description: 'Get full details of an order by header ID.'
},
{
name: 'getlocationsummary',
method: 'GET',
url: '/api/rest/xpress/orders/getlocationsummary?tenantid=916',
description: 'Per-location summary of orders.'
}
]
},
{
id: 'products',
name: 'Products',
description: 'Product catalog, categories, and subcategories.',
endpoints: [
{
name: 'getproductcategories',
method: 'GET',
url: '/api/rest/xpress/products/getproductcategories?moduleid=1',
description: 'List root product categories for a module.'
},
{
name: 'getproductsubcategories',
method: 'GET',
url: '/api/rest/xpress/products/getproductsubcategories?categoryid=1001',
description: 'List subcategories under a product category.'
}
]
},
{
id: 'invoice',
name: 'Invoice',
description: 'Invoice insights and billing analytics.',
endpoints: [
{
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'."
}
]
},
{
id: 'payments',
name: 'Payments',
description: 'Payment requests and settlements.',
endpoints: [
{
name: 'getpaymentrequest',
method: 'GET',
url: '/api/rest/xpress/payments/requests/getpaymentrequest?partnerid=44&status=1',
description: 'List payment requests for a partner by status.'
}
]
}
];
module.exports = { existingTopics };