Outgoing webhooks allow you to automatically send story data from Kordiam to other systems, such as publishing platforms, WordPress sites or internal tools that require updates whenever a story changes.
Note: If you are in a developer's role, looking for technical specifications, please check Global Export Integration (Webhooks).
This article walks you through creating, editing, and managing webhooks from the new Webhooks settings page.
Where to find it
Go to Admin Settings in your Kordiam account and select Webhooks, located between API and Account in the settings menu. This page is only visible to and accessible by users with Admin rights.
Viewing your webhooks
The Webhooks page lists every webhook configured for your organization, showing:
- Label – the name you gave the connection
- Status – a colored badge showing whether the webhook is Active (green) or Paused (orange)
Hover over a webhook in the list to reveal actions to pause/activate, edit, or delete it.
If you haven't created any webhooks yet, you'll see the page header and an + WEBHOOK button to get started.
Creating a webhook
Click + WEBHOOK to open the setup window. Give your webhook a label (up to 50 characters) so you and your team can identify it later – this doesn't need to be unique.
Choose what triggers the webhook
Under Trigger, you can define which story statuses should cause the webhook to fire:
- By default, the webhook triggers on Any status.
- You can instead select one or more specific story statuses from your organization's active statuses. Each option is shown with its configured status color.
- This setting applies per webhook – different webhooks in the same organization can react to different statuses.
- You always need at least one valid selection; the field can't be saved empty. If you clear all selections, it automatically resets to Any.
If your organization doesn't use Story Statuses, this section won't appear, and all your webhooks trigger on any story update.
Choose a connection type
Select how Kordiam should connect to the receiving system. Once a webhook is created, the connection type can't be changed afterward, so choose carefully. Five connection types are supported:
Bearer Token For systems that authenticate with a pre-issued static token.
- URL (mandatory)
- Bearer token (mandatory)
AWS SQS For sending data directly into an Amazon SQS queue.
- URL (mandatory)
- Access token (mandatory)
- Secret key (mandatory)
- AWS region is derived automatically from the queue URL, so you don't need to enter it separately.
JWT (signed with shared secret) For systems that verify a JSON Web Token signed with a shared secret.
- URL (mandatory)
- JWT secret key (mandatory)
OAuth 2.0 (Client Credentials) For systems using the OAuth 2.0 client credentials flow.
- URL (mandatory)
- Client ID (mandatory)
- Client Secret (mandatory)
Custom Header For systems that authenticate via a custom HTTP header.
- URL (mandatory)
- Header name (mandatory)
- Header value (mandatory)
A URL is required for every connection type.
About sensitive fields
Fields like tokens, secrets, and passwords are write-only. Once a value has been saved, the field displays a fixed placeholder (*********) instead of the real value. This is just an indicator that something is stored, not a hint about its length. To replace it, click into the field: this clears the placeholder so you can type a new value. If you click in and leave it empty, your existing stored value stays untouched.
Test the connection
Before or after entering your credentials, use TEST CONNECTION to check that Kordiam can reach the target system and that your credentials are accepted. You can run this as many times as you like, and it works with whatever is currently in the form, including unsaved changes. It won't save anything on its own, and a failed test won't stop you from saving the webhook.
Keep in mind that a successful test confirms connectivity and valid credentials, not that every part of your specific integration will always succeed once real data starts flowing – that depends on how the receiving system is set up.
Main Platform / Global WordPress
For Bearer Token, OAuth 2.0, and Custom Header connections, you can link the webhook to a single platform in your organization using the Main Platform / Global WordPress toggle. This is commonly used for the Global WordPress integration. When enabled, you'll be asked to choose one platform, and the webhook becomes scoped to that platform rather than applying organization-wide. This option isn't available for AWS SQS or JWT connections.
If you turn the toggle on but save without selecting a platform, it automatically turns back off and the webhook stays organization-level.
Pausing, activating, editing, and deleting
- Pause / Activate: Use the button in the list (or the toggle inside the edit window) to switch a webhook on or off. This takes effect immediately – no confirmation needed. While paused, story changes are ignored for that webhook, and resuming it later won't retroactively send anything that happened while it was paused.
- Edit: Click a webhook to open it with its current settings, regardless of whether it's active or paused.
- Delete: Click delete to open a confirmation window. To confirm, type DELETE exactly as shown, then click the DELETE button. This permanently removes the webhook and its configuration.
Saving your changes
The SAVE button becomes available once all required fields are filled in. Saving doesn't require a successful connection test. If saving fails, the window stays open and shows an error so you can fix the issue and try again.
Things worth knowing
What happens if my CMS is unavailable?
If Kordiam can't reach your CMS, it will retry three times at five-second intervals. If all retries fail, that update is not re-sent automatically. If you know your CMS was down for a period, you can retrieve the latest version of any story via the Kordiam API, or contact support.
Can I have more than one webhook connection?
Yes. Kordiam supports multiple simultaneous webhook connections – for example, if you're sending data to more than one system.
What time zone is used for dates and times?
All data is sent in GMT (UTC+0).
What happens with cross-day publication slots?
If a publication time slot starts on one day and ends the next, Kordiam sends the publication date as the start day plus one.
Need help setting up a specific integration? Reach out to Kordiam Support and we'll help you get it configured.
Comments
0 comments
Please sign in to leave a comment.