LogoRecal
Rest apiEndpoints

Get Scheduling from Busy Data

POST
/v1/users/scheduling

Get available time slots based on busy data with advanced parameters

AuthorizationBearer <token>

Recal API token

In: header

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)?)?)?)?$
maxOverlaps?string

an integer >= 0 (default: 0)

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

Padding in minutes to add before and after busy times

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

Duration of each slot in minutes

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

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/v1/users/scheduling?end=string&start=string" \  -H "Content-Type: application/json" \  -d '{    "users": [      {        "id": "user_123"      }    ]  }'
{  "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"      },      "userId": "user_123",      "calendarIds": "string",      "schedules": {        "days": [          "friday"        ],        "end": "13:00",        "start": "10:00"      }    }  ]}