curl --request GET \
--url https://{organization}.rescueconsole.com/api/shifts/volunteers \
--header 'Authorization: Bearer <token>'const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://{organization}.rescueconsole.com/api/shifts/volunteers', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://{organization}.rescueconsole.com/api/shifts/volunteers"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text){
"results": [
{
"id": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"live_approvals": 123,
"shifts_taken": 123,
"stage": "waiting",
"display_name": "<string>",
"email": "<string>",
"last_activity_at": "2023-11-07T05:31:56Z"
}
],
"total": 123,
"limit": 123,
"offset": 123,
"has_more": true,
"stages": [
{
"value": "<string>",
"label": "<string>",
"count": 123
}
]
}{
"error": "house_trained must be 1, 0 or null (not assessed)"
}{
"error": "house_trained must be 1, 0 or null (not assessed)"
}{
"error": "house_trained must be 1, 0 or null (not assessed)"
}{
"error": "house_trained must be 1, 0 or null (not assessed)"
}List volunteers
Everybody with the volunteer role on their person record, with the stage they are at: waiting (no approval in force, so they cannot take a role that needs one), ready (approved, never signed up) or active (approved and signed up). Waiting first, then ready, then active, and within each stage the oldest person record first. stages counts every stage for your search, whichever stage you pick. Needs read on Shifts. It also needs read on People: without it the answer is 404.
curl --request GET \
--url https://{organization}.rescueconsole.com/api/shifts/volunteers \
--header 'Authorization: Bearer <token>'const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://{organization}.rescueconsole.com/api/shifts/volunteers', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://{organization}.rescueconsole.com/api/shifts/volunteers"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text){
"results": [
{
"id": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"live_approvals": 123,
"shifts_taken": 123,
"stage": "waiting",
"display_name": "<string>",
"email": "<string>",
"last_activity_at": "2023-11-07T05:31:56Z"
}
],
"total": 123,
"limit": 123,
"offset": 123,
"has_more": true,
"stages": [
{
"value": "<string>",
"label": "<string>",
"count": 123
}
]
}{
"error": "house_trained must be 1, 0 or null (not assessed)"
}{
"error": "house_trained must be 1, 0 or null (not assessed)"
}{
"error": "house_trained must be 1, 0 or null (not assessed)"
}{
"error": "house_trained must be 1, 0 or null (not assessed)"
}Authorizations
An API key from Settings, API keys. It starts with rc_live_.
Query Parameters
waiting, ready, active The name contains this text.
How many to return. 25 unless you say, 100 at most.
1 <= x <= 100How many to skip, for the next page.
x >= 0Response
One page of volunteers.
Show child attributes
Show child attributes
How many match the stage and the search.
Whether there is another page after this one.
Each stage with its label and how many are in it.
Show child attributes
Show child attributes