Share your ideas

Public Webhooks that allow external systems to react to WCH events

The kinds of things that webhooks in content management systems usually cater to are

* Scheduling a facebook post/tweet featuring the newly published content item.
* Invalidating the cache of your app to make sure users see the latest content once it's published.
* Notifying your team by sending an email, posting a message to a Slack channel or moving a card inside Trello.
* Deploying a production build when content was published or deleted.
* Deploying a preview build when the draft state of certain contents have changed.
* Running a test suite on a CI service when the content model of a development environment was changed
* Re-building an external search index when content was updated
* Use a service like zapier to consume our "review started" events to send an email to the approver (https://zapier.com/apps/email/integrations/webhook/62/turn-webhooks-into-sent-emails)

Generally speaking, this new WebHooks service would really help enable the use of WCH within a larger system. And it's super cheap as it's all using events that we already have - just making them public and adding a mechanism to register which events you're interested in, and what URL to send them to. I think we're talking at most a person week or 2 to do something simple.
It allows for external translation, and more widely, any other custom workflow that involves other systems.
A custom service would populate the external translation tool with the text of a content item when the item is marked with a tag or category 'ready for translation'. The items could have an element called 'translation status' that is required and thus blocks publication until set.
When the translation is done, the translator uses a custom UI that takes the translated text and populates a new content item back in WCH and marks the original item as translated by updating the element via our APIs.
The item can now be published.
A similar process could be used to implement other custom workflows, such as additional approvals outside WCH etc.
Demo video - https://ibm.ent.box.com/s/xcems6fe1coez4o2082rwllgz9ge3xe2
Proposed API - http://swagger.rtp.raleigh.ibm.com:4000/?url=http://swagger.rtp.raleigh.ibm.com/proxy/github/DX/hack-authoring-webhook/contents/api/authoring-webhook.yaml

Initially, this could be API only. In the future, we could add a CLI or UI way to set up the webhooks.

  • Guest
  • Feb 25 2020
  • Shipped
What is your industry? Computer Services
What is the idea priority? Urgent
  • Will Izard commented
    June 17, 2020 15:57

    This is implemented. We should close this.

  • +3