Skip to content

Availability routes: set

The Availability Verbs set as api.sb routes, with inputs, result, refusals and an example.

Reference for Availability, one group of Availability routes.

Availability.set

Set records the weekly hours a Worker can be booked in and the calendars whose busy times it subtracts. Verb page.

Text
POST /{namespace}/availabilities/set

Body, as JSON: the inputs. Emits Availability.set.

Inputs

InputTypeRequiredDescription
workerWorkerrequiredWho is booked.
hoursjsonrequiredOpen hours by weekday.
timezonestringrequiredAn IANA time zone.
calendarsstring[]Connected calendars to subtract busy times from.

Returns

OutputTypeRequiredDescription
availabilityAvailabilityrequiredThe Availability, replacing the Worker’s last one.

Refuses when

CheckErrorFixThen call
The key is valid, but its scopes do not allow this operation.forbiddenUse a key whose scopes cover the operation, or ask an owner of the namespace to grant them.None.

Example

Terminal
curl -X POST https://api.sb/leaseline.app/availabilities/set \
  -H "Authorization: Bearer $STARTUP_BUILDER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"worker":"worker_whZFpOKWIV","hours":{"tue":["09:00-12:00"],"thu":["13:00-17:00"]},"timezone":"America/Chicago"}'
JSON
{
  "api": "https://api.sb/leaseline.app",
  "availability": {
    "$id": "https://api.sb/leaseline.app/availabilities/availability_8Zj0a7vvRl",
    "$type": "Availability",
    "worker": "worker_whZFpOKWIV",
    "hours": {
      "mon": [
        "09:00-12:00"
      ],
      "thu": [
        "13:00-17:00"
      ]
    },
    "timezone": "America/Chicago"
  },
  "action": {
    "$id": "https://api.sb/leaseline.app/actions/act_br07HsG8MG",
    "operation": "Availability.set",
    "status": "done"
  },
  "links": {
    "self": "https://api.sb/leaseline.app/actions/act_br07HsG8MG"
  }
}