Skip to main content

Assign Guides

Assign one or more staff members as guides for an experience availability slot. The response includes separate lists of successfully assigned, blocked, and warned guides.

Endpointโ€‹

POST /v1/experience-availability/{id}/guides

Authenticationโ€‹

Requires an API key with the experiences:write scope.

Path Parametersโ€‹

ParameterTypeDescription
idintegerExperience availability slot ID

Request Bodyโ€‹

ParameterTypeRequiredDescription
staff_idsarrayYesOne or more staff member IDs to assign as guides

Responseโ€‹

Success (201 Created)โ€‹

{
"data": {
"assigned": [
{ "id": 11, "staff_id": 5 },
{ "id": 12, "staff_id": 9 }
],
"blocked": [
{ "staff_id": 3, "reason": "Staff member is on approved leave for this slot" }
],
"warned": [
{ "staff_id": 8, "warnings": ["Has a shift ending shortly before this slot"] }
]
},
"meta": {
"request_id": "req_abc123",
"timestamp": "2026-04-01T09:00:00+00:00"
}
}
Partial Success

If at least one guide is assigned successfully the response is 201 Created. If every guide is blocked (none assigned), the response is 422. The blocked and warned arrays will always be present (empty if not applicable).

Assignment emails

Each newly assigned staff member is emailed the session details (experience, date, time). Re-assigning a staff member who is already on the slot is an idempotent success โ€” it returns the existing assignment in assigned and does not create a duplicate or send another email. Suppliers can customize or disable this email in Settings โ†’ Email Templates (the Guide Assignment staff template).

Response Fieldsโ€‹

FieldTypeDescription
assignedarrayGuides that were successfully assigned. Each entry has id (guide assignment ID) and staff_id.
blockedarrayGuides that could not be assigned. Each entry has staff_id and reason.
warnedarrayGuides assigned but with scheduling warnings. Each entry has staff_id and warnings (array of strings).

Errorsโ€‹

StatusCodeDescription
401authentication_requiredNo API key provided
401invalid_api_keyInvalid API key
403insufficient_scopeAPI key lacks experiences:write scope
404not_foundAvailability slot not found or belongs to another supplier
422validation_errorMissing or invalid staff_ids
422(response body)All provided guides were blocked

Example Requestโ€‹

curl -X POST "https://app.equipdash.com/api/v1/experience-availability/12/guides" \
-H "Authorization: Bearer eqd_live_abc123xyz789..." \
-H "Content-Type: application/json" \
-d '{
"staff_ids": [5, 8, 9]
}'