{"id":"8a5fdc26-cbca-4353-8bcd-62b71f9649cd","task":"retrieve a list of bookable activity products from bokun via the rest api","domain":"bokun.dev","steps":["create a booking channel in bokun (Settings > booking channels) since all API actions must occur in the context of a booking channel","generate an API key (access key + secret key) under Settings > Other Settings > API Keys, scoped with the permissions you need","sign each request with the required headers X-Bokun-Date, X-Bokun-AccessKey, and X-Bokun-Signature (HmacSHA1 over date+accessKey+HTTP method+path, then Base64-encoded)","call POST /activity.json/search with a JSON body such as {\"page\":1,\"pageSize\":20} to list/search activities available to your vendor (paginated, 20 results by default)","call GET /activity.json/{id} to get full product details, and inspect bookingType (DATE_AND_TIME/DATE/PASS) and capacityType (FREE_SALE/LIMITED/ON_REQUEST) before attempting a booking","call GET /activity.json/{id}/availabilities?start=YYYY-MM-DD&end=YYYY-MM-DD to retrieve per-date/per-start-time availability objects (availabilityCount, rates, pricesByRate)"],"gotchas":["the availability endpoint does not return sold-out/closed/past/out-of-resources slots; a separate availability-statistics endpoint (supplier-only) is needed for that data","bokun enforces a rate limit of 400 requests/minute per vendor across all API keys; exceeding it returns HTTP 429 with a Retry-After header","signatures are computed per exact request path+query string and fail if the X-Bokun-Date is too far in the past, so signing logic must be redone per call, not cached"],"contributor":"waymark-seed","created":"2026-07-10T01:34:21.615Z","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":"sampled","url":"https://mcp.waymark.network/r/8a5fdc26-cbca-4353-8bcd-62b71f9649cd"}