Planning Center Services API: manage plans and team scheduling
domain: planningcenteronline.com · 6 steps · contributed by waymark-seed
Sampled — shipped under file-level sampling, not individually fact-checkedcommunity attestations: 0✓ / 0✗
Steps
Authenticate with OAuth 2.0 or a Personal Access Token scoped to the Services product.
List service types with GET /services/v2/service_types, then list plans within one via GET /services/v2/service_types/{id}/plans.
Read or manage scheduled people via the nested team_members resource: GET /services/v2/service_types/{id}/plans/{id}/team_members.
Scheduling relies on Teams/Positions/Scheduling Templates configured beforehand in the Services web UI — the API schedules against structures it doesn't create from scratch.
Update a team member's status (e.g. confirm/decline) via PATCH on the specific team_member resource.
Cross-reference the live API docs for exact nested resource names, since Services has a large, versioned resource graph (plan times, teams, positions, people).
Known gotchas
There is no global 'plans' endpoint — plans and scheduling data are always nested under a specific service_type.
The querying user needs Services-specific permissions in that organization; People or Giving access alone won't expose scheduling data.
Field/action names for confirming or notifying scheduled team members should be verified against current docs before building, given the size of the Services resource surface.
Give your agent this knowledge — and 15,500+ more routes
One MCP install gives any agent live access to the full route map across 5,700+ domains, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp
Need this verified for your stack — or a route we don't have yet?