Skip to main content
Drupal is a registered trademark of Dries Buytaert
Release: OpenID Connect / OAuth client 3.0.0-alpha9 New alpha version released for module openid_connect (3.0.0-alpha9). Release: Timelinr 1.0.1 Minor update available for module timelinr (1.0.1). Usage Milestone: Simplify Module simplify crossed 10,000 active installs. Usage Milestone: Views Reference Filter Module entityreference_filter crossed 10,000 active installs. Usage Milestone: Dropdown Language Module dropdown_language crossed 10,000 active installs. Usage Milestone: Paragraphs Browser Module paragraphs_browser crossed 10,000 active installs. Usage Milestone: OpenAPI Module openapi crossed 10,000 active installs. Usage Milestone: Decoupled Router Module decoupled_router crossed 10,000 active installs. Usage Milestone: Time Field for Drupal 8+ Module time_field crossed 10,000 active installs. Module Revived: Entityqueue Buttons 1.1.2 Module entityqueue_buttons updated after 8 months of inactivity (1.1.2).

PCO - Planning Center Online API

7 sites Security covered Drupal 10–11
View on drupal.org

This module provides a way for developers to connect to the Planning Center Online API using Guzzle. It allows you to fetch data from Planning Center services directly within your Drupal site.

This project is not affiliated with Planning Center Online.

PCO is a developer focussed module that leverages guzzle to connect to the Planning Center Online API.

Installation and Configuration

  1. composer require 'drupal/pco:^2.0'
  2. If you haven't already, create a personal access token. Be sure to record your API token and secret for later use.
  3. Enable the PCO Drupal Module.
  4. After enabling the module set the necessary API credentials in Drupal at /admin/config/pco-api You will need to setup your API secret using the required Key module. Storing keys in files outside the webroot or as environment variables is recommended.

Requirements

Key module is required to securely store API credentials.

Code Example

// This would get 50 people from Planning Center.
$client = Drupal::service('pco.client');
$query = [
  'per_page' => 50,
  'include' => 'emails',
];
$request = $client->connect('get', 'people/v2/people', $query, []);
$results = json_decode($request);

Warning moving from 8.x-1.0 to 2.0.x

2.0.x finally addresses the namespace inconsistency where the Drupal project is pco and the namespace was pco_api. It is now the pco for both.

Please take care if you are already using this module. You will need to update your Drupal::service('pco.client'); references and anywhere you have implemented dependency injection.

Depends on

Dependencies of the latest stable release

Required by

Tracked projects that depend on this one

No tracked projects depend on this one yet.

Activity

Tracked releases
1
Tracked since
Nov 2025
Latest release
9 months ago
Releases (12 mo)
1 ▲ from 0
Maintenance
Slowing

Releases

Version Type Core Release date
2.1.0 Stable 10–11 Nov 11, 2025