reports.revenue_stats
read-only
Revenue + occupancy KPIs over a 7/30/90-day window: occupancy %, ADR, RevPAR, total revenue (cents), a daily revenue series, and a per-room-type breakdown. Read-only. Revenue is sourced from folio_lines (Foyer-native authoritative).
Input parameters
| Field | Type | Required | Notes |
|---|---|---|---|
windowDays | literal | yes |
Output fields
| Field | Type | Required | Notes |
|---|---|---|---|
windowDays | number | yes | |
totalRooms | number | yes | |
occupiedNights | number | yes | |
availableNights | number | yes | |
occupancyPct | number | yes | |
revenueTotal | number | yes | |
adr | number | yes | |
revpar | number | yes | |
dailySeries | array of object | yes | |
dailySeries.date | string | yes | |
dailySeries.revenueCents | number | yes | |
byRoomType | array of object | yes | |
byRoomType.roomType | string | yes | |
byRoomType.displayName | string | yes | |
byRoomType.roomCount | number | yes | |
byRoomType.occupiedNights | number | yes | |
byRoomType.availableNights | number | yes | |
byRoomType.occupancyPct | number | yes | |
byRoomType.revenueCents | number | yes | |
byRoomType.adr | number | yes | |
byRoomType.revpar | number | yes |
reports.summary
read-only
Reports: summary. Read-only query. See the input schema for argument details.
Input parameters
Returns object.
Output fields
| Field | Type | Required | Notes |
|---|---|---|---|
generatedAt | string | yes | |
bookings | array of object | yes | |
bookings.month | string | yes | ISO month start, e.g. "2026-04-01". |
bookings.label | string | yes | Human label, e.g. "Apr 26". |
bookings.count | integer | yes | |
occupancy | array of object | yes | |
occupancy.month | string | yes | ISO month start, e.g. "2026-04-01". |
occupancy.label | string | yes | Human label, e.g. "Apr 26". |
occupancy.occupiedNights | integer | yes | |
occupancy.availableNights | integer | yes | |
occupancy.pct | number | yes | |
sources | array of object | yes | |
sources.source | string | yes | |
sources.count | integer | yes | |
aiLayers | array of object | yes | |
aiLayers.layer | string | yes | |
aiLayers.count | integer | yes | |
messagingRules | array of object | yes | |
messagingRules.id | string | yes | |
messagingRules.name | string | yes | |
messagingRules.enabled | boolean | yes | |
messagingRules.sentCount | integer | yes | |
messagingRules.lastSentAt | string · nullable | yes | |
cleaning | object | yes | |
cleaning.daysBack | integer | yes | |
cleaning.totalTasks | integer | yes | |
cleaning.completed | integer | yes | |
cleaning.skipped | integer | yes | |
cleaning.pending | integer | yes | |
cleaning.inProgress | integer | yes | |
cleaning.avgDurationMinutes | integer · nullable | yes | |
cleaning.completionPct | number | yes |