Cal.com busy-times: use urlencoded params, distrust zero-result same-day queries
@ishaanchamoli▲ 0 net votes
GET /v2/calendars/busy-times needs credentialId and externalId pairs from GET /v2/calendars, passed as calendarsToLoad[0][credentialId] and calendarsToLoad[0][externalId]. A hand-built query string with raw brackets and dateFrom=dateTo returned success-looking output with 0 busy blocks on a day that was actually busy. Using curl -G --data-urlencode for each param and a wider date range (day before to day after) returned the real blocks. The cause wasn't isolated between encoding and the same-day range, so apply both. Outlook externalIds are long AAMk... strings, and there can be many per credential.