Schedule
An instance of a PlanPerson with included data for displaying in a user's schedule
Example Request
curl https://api.planningcenteronline.com/services/v2/people/{person_id}/schedules
Example Object
{
"type": "Schedule",
"id": "1",
"attributes": {
"can_accept_partial": true,
"can_accept_partial_one_time": true,
"can_rehearse": true,
"dates": "string",
"decline_reason": "string",
"organization_name": "string",
"organization_time_zone": "string",
"organization_twenty_four_hour_time": "string",
"person_name": "string",
"plan_visible": true,
"plan_visible_to_me": true,
"position_display_times": "string",
"reschedule_declines": "string",
"responds_to_name": "string",
"service_type_name": "string",
"short_dates": "string",
"sort_date": "2000-01-01T12:00:00Z",
"status": "string",
"team_name": "string",
"team_position_name": "string"
},
"relationships": {
"person": {
"data": {
"type": "Person",
"id": "1"
}
},
"service_type": {
"data": {
"type": "ServiceType",
"id": "1"
}
},
"organization": {
"data": {
"type": "Organization",
"id": "1"
}
},
"plan_person": {
"data": {
"type": "PlanPerson",
"id": "1"
}
},
"plan": {
"data": {
"type": "Plan",
"id": "1"
}
},
"team": {
"data": {
"type": "Team",
"id": "1"
}
},
"responds_to_person": {
"data": {
"type": "Person",
"id": "1"
}
},
"times": {
"data": [
{
"type": "PlanTime",
"id": "1"
}
]
}
}
}
Attributes
| Name | Type | Description |
|---|---|---|
can_accept_partial |
boolean |
|
can_accept_partial_one_time |
boolean |
|
can_rehearse |
boolean |
|
dates |
string |
|
decline_reason |
string |
|
id |
primary_key |
|
organization_name |
string |
|
organization_time_zone |
string |
|
organization_twenty_four_hour_time |
string |
|
person_name |
string |
|
plan_visible |
boolean |
True if the scheduled Plan is visible to the scheduled Person |
plan_visible_to_me |
boolean |
True if the scheduled Plan is visible to the current Person |
position_display_times |
string |
|
reschedule_declines |
string |
|
responds_to_name |
string |
|
service_type_name |
string |
|
short_dates |
string |
|
sort_date |
date_time |
|
status |
string |
|
team_name |
string |
|
team_position_name |
string |
Relationships
| Name | Type | Association Type | Note |
|---|---|---|---|
| person | Person | to_one | |
| service_type | ServiceType | to_one | |
| organization | Organization | to_one | |
| plan_person | PlanPerson | to_one | |
| plan | Plan | to_one | |
| team | Team | to_one | |
| responds_to_person | Person | to_one | |
| times | PlanTime | to_many |
Can Include
| Parameter | Value | Description | Assignable |
|---|---|---|---|
| include | plan_times | include associated plan_times |
Order By
| Parameter | Value | Type | Description |
|---|---|---|---|
| order | starts_at | string | prefix with a hyphen (-starts_at) to reverse the order |
Query By
| Name | Parameter | Type | Description | Example |
|---|---|---|---|---|
| plan_id | where[plan_id] |
integer | Query on a related plan |
?where[plan_id]=1 |
Pagination
| Name | Parameter | Type | Description |
|---|---|---|---|
| per_page | per_page | integer | how many records to return per page (min=1, max=100, default=25) |
| offset | offset | integer | get results from given offset |
Endpoints
Listing
| HTTP Method | Endpoint |
|---|---|
| GET | /services/v2/people/{person_id}/schedules |
Reading
| HTTP Method | Endpoint |
|---|---|
| GET | /services/v2/people/{person_id}/schedules/{id} |
Actions
| HTTP Method | Endpoint | Description |
|---|---|---|
| POST | https://api.planningcenteronline.com/services/v2/people/{person_id}/schedules/{schedule_id}/accept |
Accept a Schedule |
If this isn't a split time schedule, or you want to accept all times, an empty JSON body is accepted. If the user wants to decline specific times you'll need to send the declined time IDs & a reason. A POST body should be formated...
Proposing a replacementWhen every time is declined the request falls through to the decline flow, and the optional
Note: |
||
| POST | https://api.planningcenteronline.com/services/v2/people/{person_id}/schedules/{schedule_id}/decline |
Decline a Schedule |
If this is a split time request, all times will be declined. If you want to decline specific times see ScheduleAcceptAction. A POST body should be formated...
Proposing a replacementThe optional
Note: |
||
Associations
| HTTP Method | Endpoint | Returns | Details | Filter By |
|---|---|---|---|---|
| GET | https://api.planningcenteronline.com/services/v2/people/{person_id}/schedules/{schedule_id}/declined_plan_times |
PlanTime | ||
| GET | https://api.planningcenteronline.com/services/v2/people/{person_id}/schedules/{schedule_id}/plan_times |
PlanTime | ||
| GET | https://api.planningcenteronline.com/services/v2/people/{person_id}/schedules/{schedule_id}/respond_to |
Person | ||
| GET | https://api.planningcenteronline.com/services/v2/people/{person_id}/schedules/{schedule_id}/team |
Team |
Belongs To
| HTTP Method | Endpoint | Association | Details | Filter By |
|---|---|---|---|---|
| GET | https://api.planningcenteronline.com/services/v2/people/{person_id}/schedules |
Person |
|
|
| GET | https://api.planningcenteronline.com/services/v2/service_types/{service_type_id}/plans/{plan_id}/my_schedules |
Plan |