Enable Automatic Sermon Updates
A webhook is a secure notification sent when content changes. Kleis uses episode webhooks to queue a background refresh instead of requiring a manual full sync after every edit.
Prerequisites
Section titled “Prerequisites”Complete the first sync and make sure WordPress is publicly reachable over HTTPS. You need permission to manage Planning Center webhooks.
Copy the endpoint
Section titled “Copy the endpoint”- Go to Settings > Kleis for Planning Center.
- Find Webhook URL.
- Click Click to reveal webhook URL.
- Select the field to highlight the complete URL, then copy it.
- Click Click to reveal webhook URL again to hide the field.
Keep this URL private. It includes a secret that authenticates incoming notifications.

Create the Planning Center webhook
Section titled “Create the Planning Center webhook”- Open the Planning Center Webhooks area linked from the Kleis settings page.
- Create a webhook subscription for Planning Center Publishing episode changes.
- Paste the complete Kleis Webhook URL as the destination.
- Subscribe to episode create, update, and delete events available in the Publishing webhook interface.
- Save and enable the webhook.
- Use Planning Center’s test-delivery feature when available, or make a harmless change to a test episode.
Kleis validates the secret, queues the episode, and refetches the canonical episode data in the background. Delivery and WordPress processing may take a short time.
Verify an update
Section titled “Verify an update”- Change the title of a test episode in Planning Center Publishing.
- Wait briefly, then refresh the corresponding Episode in WordPress.
- Confirm the title changed.
- Restore the original title and confirm that update arrives as well.
Recover failed updates
Section titled “Recover failed updates”Kleis retries a failed episode update up to five times. If all attempts fail, an administrator notice shows the latest 100 unresolved failures. Expand View failed updates to see each episode ID, action, attempt count, and error code.
- Resolve the connection or service error.
- If requested, reconnect Planning Center in Kleis settings.
- Select Retry failed updates in the notice.
- Allow time for WordPress cron, then check the affected sermons.
Retrying moves failed updates back into the background queue. The notice returns if these updates fail again. A newer delivery for the same episode replaces its older failure. Interrupted processing resumes after a short recovery delay.