LogoRecal
Rest apiEndpoints

Get Organization Scheduling

GET
/v1/organizations/{orgSlug}/scheduling

Get available time slots for all users in a sub-organization. Users whose calendars could not be read are listed in failedUsers and contribute no slots, so a non-empty failedUsers means the availability is a partial answer rather than a complete one. Members with no connected calendar are not listed — https://docs.recal.dev/core/troubleshooting

Tip: Use the x-timezone header to specify the timezone of the times provided in the request

AuthorizationBearer <token>

Recal API token

In: header

Path Parameters

orgSlug*string
Match^[a-z0-9][a-z0-9_-]{2,127}$

Query Parameters

end*string

End time of the time range in ISO format

Match^([+-]?\d{4}(?!\d{2}\b))((-?)((0[1-9]|1[0-2])(\3([12]\d|0[1-9]|3[01]))?|W([0-4]\d|5[0-3])(-?[1-7])?|(00[1-9]|0[1-9]\d|[12]\d{2}|3([0-5]\d|6[1-6])))(T((([01]\d|2[0-3])((:?)[0-5]\d)?|24:?00)([,.]\d+(?!:))?)?(\17[0-5]\d([,.]\d+)?)?([Zz]|([+-])([01]\d|2[0-3]):?([0-5]\d)?)?)?)?$
start*string

Start time of the time range in ISO format

Match^([+-]?\d{4}(?!\d{2}\b))((-?)((0[1-9]|1[0-2])(\3([12]\d|0[1-9]|3[01]))?|W([0-4]\d|5[0-3])(-?[1-7])?|(00[1-9]|0[1-9]\d|[12]\d{2}|3([0-5]\d|6[1-6])))(T((([01]\d|2[0-3])((:?)[0-5]\d)?|24:?00)([,.]\d+(?!:))?)?(\17[0-5]\d([,.]\d+)?)?([Zz]|([+-])([01]\d|2[0-3]):?([0-5]\d)?)?)?)?$
earliestTimeEachDay?string

Requested earliest time of each day (in the time zone of the request)

Match^([01]?[0-9]|2[0-3]):[0-5][0-9]$
latestTimeEachDay?string

Requested latest time of each day (in the time zone of the request)

Match^([01]?[0-9]|2[0-3]):[0-5][0-9]$
maxOverlaps?string

an integer >= 0 (default: 0)

Match^(?:(?!^-0$)-?(?:(?:0|[1-9]\d*)))$
Default"0"
padding?string

Padding in minutes to add before and after busy times

Match^(?:(?!^-0$)-?(?:(?:0|[1-9]\d*)))$
Default"0"
provider?array<>|unknown|unknown
slotDuration?string

Duration of each slot in minutes

Match^(?:(?!^-0$)-?(?:(?:0|[1-9]\d*)))$
Default"30"

Response Body

application/json

application/json

application/json

curl -X GET "https://example.com/v1/organizations/recal/scheduling?end=string&start=string"
{  "data": {    "availableSlots": [      {        "end": "2019-08-24T14:15:22Z",        "start": "2019-08-24T14:15:22Z",        "userId": "user_123"      }    ],    "options": {      "end": "2019-08-24T14:15:22Z",      "maxOverlaps": 0,      "padding": 0,      "slotDuration": 0,      "start": "2019-08-24T14:15:22Z",      "earliestTimeEachDay": "10:00",      "latestTimeEachDay": "16:00"    }  },  "failedUsers": [    {      "customId": "user_123",      "failedCalendars": [        {          "calendarId": "string",          "message": "string",          "provider": "google",          "reason": "accessDenied"        }      ],      "message": "string",      "reason": "accessDenied"    }  ]}