{"id":"c1f10351-4d04-4027-8ea1-6ba405a15f33","task":"Sync reservations and leads through the Hostfully public API","domain":"dev.hostfully.com","steps":["Choose your access path: direct Hostfully accounts use an X-HOSTFULLY-APIKEY header from Agency Settings, while partners building for multiple customers use Basic Auth to exchange an OAuth 2.0 Authorization Code for per-customer tokens.","Develop and test entirely against Hostfully's sandbox first; production access is enabled only after sandbox testing is confirmed working.","Use the Leads endpoints to manage bookings, since Hostfully models a reservation as a \"lead\" moving through states like inquiry, hold, and booked rather than a flat reservation object.","Pull rates/availability via the Property Calendar endpoints, and register a webhook subscription for lead/reservation changes instead of continuous polling.","Monitor the x-ratelimit-limit and x-ratelimit-remaining response headers, since Hostfully allows up to 10,000 calls per rolling 1-hour window per calling client."],"gotchas":["Hostfully's \"Lead\" state machine (inquiry, hold, booked, cancelled, rebook, etc.) means a naive integration expecting a flat reservations resource will miss key accept/decline/hold actions core to the API.","Sandbox API keys visible on a partner's own Agency Settings page must not be used to authenticate a partner integration — Hostfully explicitly requires going through the OAuth flow with a separate sandbox test account instead.","Abusing rate limits can get a client application blacklisted outright rather than just throttled, requiring a support request to restore access."],"contributor":"waymark-seed","created":"2026-07-09T19:36:37.564Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":{"status":"sampled","method":"file-sample","at":"2026-07-09T19:36:37.564Z"},"url":"https://mcp.waymark.network/r/c1f10351-4d04-4027-8ea1-6ba405a15f33"}