Workplace API
Retrieve a list of team settings or a specific team setting by ID, with optional filter for external ID.
Optional ID of the location to retrieve relative settings.
Optional ID of the team to retrieve settings for.
Optional external ID to filter team settings (matches team's external_id).
Number of items to skip for pagination.
0Maximum number of items to return.
25Field to sort by.
Sort order, 'asc' or 'desc'.
ascPossible values: OK
Bad Request
Update multiple existing team settings.
OK
Bad Request
Not Found
Create one or more occupancy records. Idempotent on (people_id, location_id, seen_at).
ID of the associated location.
Created
Bad Request
Retrieve occupancy records with optional filters by ID, location, person, and time range.
Filter by a specific occupancy document ID.
Filter by Location ID.
Filter by People ID.
Start (inclusive) of UTC range filter. ISO 8601 with Z.
End (inclusive) of UTC range filter. ISO 8601 with Z.
Number of items to skip.
0Max items to return.
25Field to sort by (e.g., created_at, seen_at, people_id).
created_atSort order.
ascPossible values: OK
Bad Request
Soft-delete occupancy records that match the filters. Only location_id is required.
Location to scope the deletion.
Optional person filter.
Start (inclusive) of UTC range filter. ISO 8601 with Z.
End (inclusive) of UTC range filter. ISO 8601 with Z.
OK
Bad Request
Trigger forecasting for a location over an optional date range.
Unique identifier of the location to forecast.
68824ca5369c856b7c670510(Optional) Inclusive start date (YYYY-MM-DD).
2025-06-20(Optional) Inclusive end date (YYYY-MM-DD).
2025-07-31Force a rebuild even if recent results exist.
falseForecast job created/queued
Forecast job created/queued
Get forecasting job status (supports filtering and pagination).
Filter by a specific forecast job ID returned by /forecast/start.
689a01bde5c540bb57b0730bFilter by location ID.
68824ca5369c856b7c670510Filter jobs created on/after this date (YYYY-MM-DD).
Filter jobs created on/before this date (YYYY-MM-DD).
Number of items to skip (pagination).
0Maximum number of items to return.
25Sort field.
created_atPossible values: Sort order.
ascPossible values: Forecast job status list
Forecast job status list
Retrieve a list of location forecasts with optional location_id filter and pagination.
Filter by Location ID (can be multiple).
Start date-time in UTC for filtering forecasts.
End date-time in UTC for filtering forecasts.
Timezone of the location. When provided, starts_at and ends_at are interpreted in this timezone. Must be a valid IANA Time Zone identifier.
Europe/LondonNumber of items to skip for pagination.
0Maximum number of items to return.
25Field to sort by (e.g., starts_at).
Sort order, 'asc' or 'desc'.
ascPossible values: OK
Bad Request
Retrieve a list of team forecasts with optional location_id and team_id filters and pagination.
Filter by Location ID (can be multiple).
Filter by Team ID (can be multiple).
Start date-time in UTC for filtering forecasts.
End date-time in UTC for filtering forecasts.
Timezone of the location. When provided, starts_at and ends_at are interpreted in this timezone. Must be a valid IANA Time Zone identifier.
Europe/LondonNumber of items to skip for pagination.
0Maximum number of items to return.
25Field to sort by (e.g., starts_at).
Sort order, 'asc' or 'desc'.
ascPossible values: OK
Bad Request
Retrieve a list of people forecasts with optional location_id, people_id, and team_id filters and pagination.
Filter by Location ID (can be multiple).
Filter by People ID (can be multiple).
Filter by Team ID (can be multiple).
Start date-time in UTC for filtering forecasts.
End date-time in UTC for filtering forecasts.
Timezone of the location. When provided, starts_at and ends_at are interpreted in this timezone. Must be a valid IANA Time Zone identifier.
Europe/LondonNumber of items to skip for pagination.
0Maximum number of items to return.
25Field to sort by (e.g., starts_at).
Sort order, 'asc' or 'desc'.
ascPossible values: OK
Bad Request
Trigger location AI evolution
Unique identifier of the location.
68824ca5369c856b7c670510Date for the evolution in YYYY-MM-DD format.
2025-08-08Successful response
Successful response
Get AI evolution status
Unique identifier of a triggered evolution.
94289524-04ac-44d3-8f05-45b8a937f663Successful response
Successful response
Retrieve a list of allocations or a specific allocation by ID, with optional filters for location, layer, room, zone, people, team, external ID, or date range.
Optional ID of the allocation to retrieve.
Filter by Location ID.
Filter by Layer ID.
Filter by Room ID.
Filter by Zone ID.
Filter by People ID.
Filter by Team ID.
Optional external ID to filter allocations (matches external_id of PERSON or TEAM).
Start date-time in UTC for filtering allocations.
End date-time in UTC for filtering allocations.
Timezone of the location. When provided, starts_at and ends_at are interpreted in this timezone. Must be a valid IANA Time Zone identifier.
Europe/LondonNumber of items to skip for pagination.
0Maximum number of items to return.
25Field to sort by (e.g., starts_at, people_id).
Sort order, 'asc' or 'desc'.
ascPossible values: OK
Bad Request
Create multiple new allocations.
Created
Bad Request
Update multiple existing allocations.
OK
Bad Request
Not Found
Delete multiple allocations by their IDs.
OK
Bad Request
Not Found
Retrieve intentions with optional filters. starts_at and ends_at are dates (YYYY-MM-DD) interpreted in the given timezone.
the number of records you would like to return in a single request (default 25)
25Example: 25the number of records you skip within this request (default 0)
0Example: 0Field to sort by.
nameSort order.
ascPossible values: External intention type.
Inclusive date (YYYY-MM-DD); interpreted in the provided timezone.
Inclusive date (YYYY-MM-DD); interpreted in the provided timezone.
IANA timezone for interpreting date filters with internal IDs.
Europe/LondonIANA timezone for interpreting date filters with external IDs.
Europe/LondonInternal intention type.
Configuration context identifier.
OK
Bad Request
Create a single intention (normal allocation flow).
If true, bypasses certain safety checks and forces creation according to server rules.
falseCreated
Bad Request
Create one or more intentions using external identifiers/metadata. One of people_id or people_email is required per item.
Created
Bad Request
Accept a pending intention. If force is 'false', acceptance will fail when there is a conflicting intention. Set force to 'true' to override conflict checks (where permitted).
String flag controlling conflict override.
falseExample: falsePossible values: OK
Bad Request
Not Found
Conflict — a conflicting intention exists and force='false'.
Decline an invitation for an intention you were invited to. Optionally include a reason.
Optional reason for declining (audit/notifications).
OK
Bad Request
Not Found
Cancel an intention. If cancel_for_all is true, the cancellation applies to all invited attendees as well.
Partial intention update allowed by validator.
Optional cancel reason for audit.
When true, cancel this intention for all invited people as well.
falseOK
Bad Request
Not Found
Permanently delete a single intention by its ID. This is irreversible and, unlike cancel, the intention cannot be rejoined by any participant once deleted.
OK
Bad Request
Not Found
Last updated
Was this helpful?