API Details
If you have any questions please e-mail support@planningcenteronline.com. This API is final, but we will most likely add more fields so please make sure your code can handle those changes. Also, if you see an element that is in the result but not in our documentation please ask us before you rely on it, it might be something very specific to one of our applications that consume this API.
Overview
We’ve created this API for our customers so that they can access and manipulate their data in an easy and flexible way. Our API currently supports JSON and XML, however XML support is deprecated and will be removed as of January 1, 2014.
This API is built on top of a very simple REST technique (JSON data sent over HTTP using four common verbs, GET/POST/PUT/DELETE). When you’re creating and updating resources, you’ll be sending JSON into Planning Center Online. You need to let the system know that fact by adding the header **“Content-type: application/json”**, so we know that it’s not regular form-encoded data coming in. Then you just include the JSON of the resource in the body of your request.
Authentication
The API is accessed through your normal Planning Center account. No special API account is needed to access the API, but you might want to create an API person so that you can see all of the updates done through the API.
We use OAuth 1.0a for authentication against our servers. To request a Consumer Key please e-mail support@planningcenteronline.com with your product name, description, company name and contact information.
Ruby
Our API is completely compatible with ActiveResource (which you can find more information about here), but you will need to modify it in order to support OAuth. You can find a plugin to do this at http://github.com/jwagener/oauth-active-resource.
PHP
Getting OAuth working with PHP can be tricky. We recommend using Daniel Boorn’s Planning Center Online API Helper, and his sample implementation to get started.