LogoRecal
Rest apiEndpoints

Get User Scheduling (Basic)

GET
/v1/users/{userId}/scheduling

Get available time slots based on busy times in users primary calendars with basic parameters

AuthorizationBearer <token>

Recal API token

In: header

Path Parameters

userId*string
Match^[A-Za-z0-9][A-Za-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

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/v1/users/user_123/scheduling?end=string&start=string"
{  "data": {    "availableSlots": [      {        "end": "2019-08-24T14:15:22Z",        "start": "2019-08-24T14:15:22Z"      }    ],    "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"    }  }}