directrate

Changelog

What shipped, and when.

Dated from the gateway's own commits and the Actor's publishing notes.

Actor 0.2

Wyndham, the five OTAs, parity, stay, free-night certificates

  • Wyndham joins as the eleventh chain: public and member cash rates and a native price calendar; rooms and plans named by code, as the chain’s anonymous booking flow names them.
  • Booking.com, Expedia, Hotels.com, Trip.com and Agoda are sources of their own: /shop, /calendar and /compset with the OTA’s hotel id as the code, tax-inclusive on the comparable field, Genius / Member Price / Member deal reported apart.
  • POST /parity: the direct public rate, member rate and points beside each OTA’s public price for the same stay — per-channel gap, cheapest channel, deepest undercut, a verdict. The id map (GET /hotels/{chain}/{code}/ids) resolves OTA ids from Google Hotels’ own cross-source match; POST /hotels/ids/jobs fills it for a city without a burst.
  • POST /stay: a 2–14 night stay as one against each night alone, with the split verdict.
  • Free-night certificates on /award, /compset/award and matrix cells: Marriott 35k/40k/50k/85k, Hilton free night, IHG 40k, with the top-up each needs.
  • Watches gain condition: "undercut" — the parity alert.
  • Apify Actor 0.2 published: parity and stay modes, the OTAs as chains, certificate columns. Calendar pricing on the listing corrected to 0.1 credit a night on native-calendar chains.

Native calendars on nine chains

  • /calendar nights now ride each chain’s own date-range endpoint where one exists — IHG (62 nights of cash, member and points per call), Hilton (a month, points or cash), Marriott (30-day windows, cash or points), Choice (31 dates, award and cash), Radisson (a year of public and member cash with minimum stay), I Prefer (18 months of cash and points), Wyndham (a month of cash), Best Western (synthesised from 365-night rate-plan spans), Meliá (availability only, so /calendar skips the closed nights).
  • A night through a native calendar is billed 0.1 credit (0.25 on Wyndham) instead of the shop weight; calendar_night_credits is on GET /chains.
  • max_age on /shop, /award and /calendar bounds the cache staleness you accept; 0 forces live.
  • POST /matrix, /jobs, /export, /watches, /award/search, /award/value, /calendar/area: the cell store and the batch subsystem behind flexible-date award search, exports and signed-webhook watches.
  • Hyatt’s web points calendar is captured and normalised but sits behind a browser challenge; /calendar on Hyatt shops the open nights.

Actor 0.1

Launch: ten chains, the Apify Actor, pay-per-event

  • api.directrate.dev live with /shop, /award, /calendar, /compset, /compset/award, /suggest, /hotels, /hotel, /chains, /usage across Marriott, Hilton, Hyatt, IHG, Choice, Radisson, I Prefer, Meliá, Best Western and Premier Inn.
  • Every response states its own price in X-Credits-Charged; errors, not_found and timeouts bill 0; cache hits 0.25×; /compset per hotel returned with a 1-credit floor.
  • Public /status.json with measured uptime per source over the window, and /openapi.json with no key.
  • Apify Actor Hotel Rates, Award Points & OTA Parity published on the Store with one pay-per-event unit (credit-unit $0.003); the Free plan runs in demo mode (5 credits a run).
  • A past check-in date is refused as invalid_request on every chain, free, instead of being billed as a sold_out.