Authenticate with a Bearer token from the Guesty OAuth token endpoint using client credentials.
Create a parent listing (the property) via the listings POST endpoint with property-level fields: name, address, property type, and amenities.
Create individual unit listings as children of the parent by posting to the listings endpoint with a parentId field referencing the parent listing ID; each unit has its own title, bedroom count, capacity, and pricing.
Upload photos for each unit listing using the Guesty media/photos endpoint with a multipart form request; link each photo to the appropriate listing ID.
Configure channel distribution for each unit listing individually by enabling the desired OTA channels (Airbnb, Vrbo, Booking.com) via the channel management endpoint.
Set unified pricing rules or unit-specific pricing overrides via the pricing endpoint; verify channel sync status for each unit after configuration to confirm listings are live on all connected channels.
Known gotchas
Parent-child listing structures in Guesty affect how calendar availability is managed; blocking the parent does not automatically block children — manage availability at the unit (child) level for short-term rental operations.
Each OTA channel has content requirements (minimum photo count, description length, amenity list) that Guesty validates at sync time; a listing may be accepted by Guesty's API but rejected by the OTA if content is incomplete.
Guesty's API rate limit of approximately 15 calls per second applies across all endpoints; bulk creation of many unit listings must be throttled to avoid 429 errors and potential listing data corruption.
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp