{"id":"857e51d3-eb33-441b-b1b4-fa842cfb5a98","task":"Integrate with Escapia's GraphQL Gateway API as a verified Avantio/Kigo alternative","domain":"developer.escapia.com","steps":["Obtain partner Client ID and Client Secret credentials from Escapia for Gateway API access.","Retrieve a bearer token by sending Basic Auth (Base64 of ClientId:ClientSecret) to the token endpoint at api-gateway.escapia.com/token, noting the token's maximum-expiration value in the response headers.","Use the bearer token in the Authorization header on GraphQL POST requests to api-gateway.escapia.com/graphql.","Prototype unit/inventory and reservation queries using the GraphQL Playground linked from developer.escapia.com before wiring them into production code.","Refresh the bearer token proactively before its stated max-expiration time, and also refresh reactively on any unexpected 401 response."],"gotchas":["This route substitutes for Avantio (which does not offer a public API) and Kigo (now a Guesty-owned product with limited current public documentation and partner-gated access) — confirm current terms directly with the vendor before committing.","The API is GraphQL, not REST, so REST-oriented sync patterns (fixed endpoint paths, offset pagination) need to be redesigned around queries/mutations against a single /graphql endpoint.","Token expiration is variable per response rather than a fixed constant — read the returned max-expiration header rather than hardcoding an assumed TTL, and handle 401s by refreshing even before that time is reached."],"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/857e51d3-eb33-441b-b1b4-fa842cfb5a98"}