Skip to main content

Ask Staff for Availability

Ask several staff members at once. Each gets their own link by email and, where possible, by text. This is the same as Staff > Action > Ask everyone for availability in the portal.

Ask for one of two things:

  • weekly: their usual week.
  • dates: each day from from_date to to_date. On their link, or under More > My Hours in the EquipDash app, they answer one week at a time, starting from their usual week where they have one. The ask counts as answered once they save the week holding to_date.

With a reply_by date, anyone who has not answered gets one reminder the day before.

Endpointโ€‹

POST /v1/staff/availability-requests

Authenticationโ€‹

Requires an API key with the staff:write scope. Limited to 30 calls a minute.

Request Bodyโ€‹

ParameterTypeRequiredDescription
staff_idsarray of integersYesThe staff members to ask. Every ID must belong to your account. Staff marked as terminated are skipped.
kindstringYesweekly or dates
from_datestringWhen kind is datesFirst date to ask about, YYYY-MM-DD
to_datestringWhen kind is datesLast date to ask about, YYYY-MM-DD. On or after from_date, and no more than three months later.
reply_bystringNoDate to answer by, YYYY-MM-DD
emailbooleanNoSend by email. Default true.
textbooleanNoSend by text. Default true. Only goes out when your account has texting set up.

Responseโ€‹

Success (201 Created)โ€‹

{
"data": {
"request_id": 46,
"kind": "dates",
"from_date": "2026-10-05",
"to_date": "2026-10-18",
"reply_by": "2026-10-02",
"sent": 6,
"not_reached": ["Jane Doe"]
},
"meta": {
"request_id": "req_abc123",
"timestamp": "2026-09-28T09:00:00+00:00"
}
}
FieldTypeDescription
request_idintegerID of the ask
kindstringweekly or dates
from_date, to_datestring or nullThe date range, null for weekly
reply_bystring or nullThe reply-by date
sentintegerHow many staff members got an email or a text
not_reachedarray of stringsNames of the staff members nothing could be sent to, usually because they have no email address or phone number

Errorsโ€‹

StatusCodeDescription
401authentication_requiredNo API key provided
401invalid_api_keyInvalid API key
403insufficient_scopeAPI key lacks the staff:write scope
422validation_errorA field is missing or malformed, or a staff ID is not in your account
422availability_request_not_sentThe ask was refused. message says why, for example "Ask for three months at most at a time." or "The last date has to be on or after the first."
429-More than 30 calls in a minute. Wait a minute and try again.

Example Requestโ€‹

curl -X POST "https://app.equipdash.com/api/v1/staff/availability-requests" \
-H "Authorization: Bearer eqd_live_abc123xyz789..." \
-H "Content-Type: application/json" \
-d '{
"staff_ids": [123, 124],
"kind": "dates",
"from_date": "2026-10-05",
"to_date": "2026-10-18",
"reply_by": "2026-10-02"
}'