Availability & Rates (ARI)
Once a listing is onboarded, push its availability and rates to Channex. The listing must already have Channex room types (onboard it first), since ARI is keyed by the stored room_type_id / rate_plan_id.
Push ARI
POST /api/v1/admin/channex/listings/{listingId}/ari?channelId=chnl_X&from=2026-06-10&to=2026-09-08
fromdefaults to today; values in the past are clamped to today.todefaults tofrom+ 90 days; the window is capped at 365 days.
Response:
{
"listingId": "lst_0853ie",
"status": "SYNCED",
"messages": [
"availability rows pushed: 184",
"rate rows pushed: 184",
"window: 2026-06-10 → 2026-09-08"
]
}
Availability
Built from the Inventory table and sent to POST /availability:
{
"values": [
{ "property_id": "5f8a…", "room_type_id": "7c2b…", "date": "2026-06-10", "availability": 3 }
]
}
availability=inventory.quantity.- A stop-sell day (
inventory.stopSell = true) is pushed asavailability: 0.
Rates
Built from the ChannelRate table (for the same channelId) and sent to POST /restrictions:
{
"values": [
{ "property_id": "5f8a…", "rate_plan_id": "a91d…", "date": "2026-06-10", "rate": 12000 }
]
}
rate=channelRate.nightlyRate(falls back torate), rounded to an integer in the smallest currency unit (paise for INR).- Rows whose property has no mapped rate plan are skipped.
Batching
Both values arrays are sent in chunks of 500 entries per request, so large windows are split across multiple calls automatically.