Envoy Workplace Reservation API Guide
Work Schedules & Desk Reservations
This guide explains how to use Envoy’s Workplace APIs to:
- Create a work schedule
- Check in to a work schedule
- Create a desk reservation
- Check in to a desk reservation
All examples use curl and can be adapted as needed.
📘 Table of Contents
- Overview
- Prerequisites
- Environment Variables
- Create a Work Schedule
- Check In to a Work Schedule
- Create a Desk Reservation
- Check In to a Desk Reservation
Overview
Envoy Workplace APIs allow you to schedule, check in, and optionally reserve desks for on-site work days.
Prerequisites
You will need:
- An Envoy API Key
- A valid location ID
- Your user email
- Desk booking features enabled (if using reservations)
Environment Variables
(Optional, but recommended for cleaner commands)
export ENVOY_API_KEY="xxxxx"
export ENVOY_LOCATION_ID="168651"
export ENVOY_USER_EMAIL="[email protected]"Create a Work Schedule
Required for scheduling yourself into the workplace. API Docs: https://developers.envoy.com/hub/reference/createworkschedule
Endpoint: POST /v1/work-schedules
Request
curl --request POST \
--url https://api.envoy.com/v1/work-schedules \
--header "X-API-Key: $ENVOY_API_KEY" \
--header "accept: application/json" \
--header "content-type: application/json" \
--data '
{
"workSchedule": {
"expectedArrivalAt": "2024-05-17T14:00:00.000Z",
"locationId": "'$ENVOY_LOCATION_ID'",
"email": "'$ENVOY_USER_EMAIL'"
}
}Response
{
"data": {
"id": "81502787",
"expectedArrivalAt": "2024-05-17T14:00:00.000Z",
"expectedDepartureAt": "2024-05-17T15:00:00.000Z",
"arrivedAt": null,
"departedAt": null,
"flowId": "349490",
"locationId": "168651",
"status": "APPROVED",
"registrationURL": "https://invites.envoy.com/invite/bU8YiuJjSzsFLsNrj1agMDRn/status",
"createdAt": "2024-05-17T14:39:44.185Z",
"updatedAt": "2024-05-17T14:39:44.185Z",
"reservations": null,
"scheduledFor": {
"id": "9150484",
"type": "EMPLOYEE",
"name": "Brent Demo",
"email": "[email protected]"
}
},
"meta": {}
}
Check In Work Schedule
Docs: https://developers.envoy.com/hub/reference/checkinworkschedule
Request
curl --request POST \
--url https://api.envoy.com/v1/work-schedules/81502787/checkin \
--header 'X-API-Key: xxxxxxxxx'
Response
204 No Content
Create Desk Reservation
Docs: https://developers.envoy.com/hub/reference/createreservation
Request
curl --request POST \
--url https://api.envoy.com/v1/reservations \
--header 'X-API-Key: xxxxxxxxxx' \
--header 'accept: application/json' \
--header 'content-type: application/json' \
--data '
{
"reservation": {
"locationId": "168651",
"spaceType": "DESK",
"userEmail": "[email protected]",
"startTime": "2024-05-17T14:00:00.000Z"
}
}
Check In Reservation
Docs: https://developers.envoy.com/hub/reference/checkinreservation
Request
curl --request POST \
--url https://api.envoy.com/v1/reservations/d-25000865/checkin \
--header 'X-API-Key: xxxxxxxxx'Updated 1 day ago
