curl --request GET \
--url https://{organization}.rescueconsole.com/api/calendar \
--header 'Authorization: Bearer <token>'const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://{organization}.rescueconsole.com/api/calendar', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://{organization}.rescueconsole.com/api/calendar"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text){
"results": [
{
"id": "<string>",
"source": "task",
"module": "<string>",
"title": "<string>",
"starts_at": "<string>",
"ends_at": "<string>",
"all_day": true,
"entity_type": "<string>",
"entity_id": "<string>",
"tone": "overdue",
"detail": "<string>",
"assignees": [
{
"person_id": "<string>",
"name": "<string>"
}
],
"medical_record_id": "<string>"
}
],
"unavailable": [
"<string>"
]
}{
"error": "house_trained must be 1, 0 or null (not assessed)"
}{
"error": "house_trained must be 1, 0 or null (not assessed)"
}Get the calendar
Everything dated between two days, from every area your key may read, in one list. There is no permission of its own for the calendar: tasks with a due date are always included, narrowed exactly as List tasks is; medical items due, adoptions, animals into and out of foster, arrivals and meet and greets need read on Animals; shift schedules and shifts need read on Shifts. Items come sorted by day, all-day items before timed ones on the same day, then by time, then by title. There is no paging: the range is the page, and it may be at most 366 days. Each kind returns at most 1,000 items in one range (tasks, 2,000). If an area cannot be loaded, the rest of the calendar is still returned and unavailable names what is missing, so an empty day is never mistaken for a quiet one.
curl --request GET \
--url https://{organization}.rescueconsole.com/api/calendar \
--header 'Authorization: Bearer <token>'const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://{organization}.rescueconsole.com/api/calendar', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://{organization}.rescueconsole.com/api/calendar"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text){
"results": [
{
"id": "<string>",
"source": "task",
"module": "<string>",
"title": "<string>",
"starts_at": "<string>",
"ends_at": "<string>",
"all_day": true,
"entity_type": "<string>",
"entity_id": "<string>",
"tone": "overdue",
"detail": "<string>",
"assignees": [
{
"person_id": "<string>",
"name": "<string>"
}
],
"medical_record_id": "<string>"
}
],
"unavailable": [
"<string>"
]
}{
"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
The first day, YYYY-MM-DD.
The last day, YYYY-MM-DD, included. Not before from, and at most 366 days after it.
Only these kinds of item, comma-separated. Leave it out for every kind your key may read, which is also how meet and greets are included. A kind that does not exist is refused.
task, volunteer_event, volunteer_session, medical_due, adoption, foster_start, foster_end, intake Only items in these states, comma-separated.
The item's state. overdue: a task or medical item whose day has passed and that is not done. due: a task or medical item due today or later, or a meet and greet whose day has passed without being marked done. scheduled: a shift, a shift schedule or a meet and greet still to come. done: done, performed or completed, and a dated fact such as an adoption, an arrival or a foster placement. cancelled: a reversed adoption, a declined foster placement, a cancelled shift or schedule.
overdue, due, scheduled, done, cancelled