Community Articles Building Team Workflows in Cosmic JS

Building Team Workflows in Cosmic JS

Cosmic JS provides tools and resources to create your own unique content publishing workflow that satisfies your team's needs. In this tutorial I'll demonstrate setting up a simple workflow for an Editor and Contributor team that needs to manage content in a draft, review and publish process. We'll also use Webhooks to integrate with Slack to notify the Editor when content is drafted by the Contributor. Let's get started.


Note: While the example that I'm demonstrating is for a publication, editorial or marketing team, you can think of the editor / contributor relationship as the management / execution layer of any team. 


Start by Inviting Your Contributors

Navigate to the left hand nav bar within your Cosmic JS Bucket Dashboard, click Settings and then click Users. You can extend user permissions via email for collaboration within your Bucket. 



When inviting my contributors, Cosmic JS gives me granular control over what Object Types this new Contributor is allowed to draft. I choose Blogs for this example, meaning my new content contributor can only draft Objects within the Blogs Object Type. 


Now that I’ve sent a notification to the contributor, I will set up notifications in Slack so I can be notified when my contributor has set a blog post to draft.

 

Set up Webhooks to receive Slack Notifications 

When my contributor drafts content within the Cosmic JS Bucket Dashboard, I want to receive a notification so that I can check their work and either send it back to them for additional review or publish. Note: as the Admin, Developer or Editor roles you can always edit and overwrite contributor content changes at any time. 

To receive notifications I will need to have my developer set up Cosmic JS Webhooks. Webhooks are used to trigger a POST request to the endpoint of your choice when an event occurs in your Bucket. Options for the channel notifying your team are numerous, but a couple of quick examples would be via Slack or SendGrid. 


Connect your Cosmic JS Buckets to Slack: 


1. Install the Cosmic JS Slack app to your Slack account by clicking here.

2. Select which channel you would like to receive the notifications and click "Authorize".


3. After you install the Slack app, copy the webhook link provided.



4. Paste the webhook link into the Endpoint input field. Documentation and a list of available Webhook events can be found here

Now every time my contributor creates and saves a draft within my Bucket, I'll be notified through Slack to review the work and schedule publishing. When it comes time for edits (and peace of mind) Cosmic JS provides audit logs with time-stamped revision updates that track authors as well as Revision History, which allows you to revert back to previous versions. 


Conclusion

I've just created a simple content publishing workflow for my team. In just a few steps I've invited a contributor to my Bucket and set up an automated system for notifying our team of new content changes being drafted. This is one of many possible workflows you're able to create with Cosmic JS User Permissions and Webhooks.

If you have any comments or questions about building content workflows with Cosmic JS, reach out to us on Twitter and join the conversation on Slack.

Was this article helpful?

Thank you! Your input helps us improve our articles and resources. If you have any other questions or comments, please contact support.

You may also like


In this tutorial I’ll demonstrate how to build an Authentication app using Angular 6 and Cosmic JS. Starting from scratch, learn how to build, configure and deploy this Angular6 Auth app to the Cosmic JS App Server for testing purposes.
A primary benefit of managing content API-first is that your content is transformed into portable and scalable content objects, available via API endpoint to create workflows with the third-party applications that your team uses.
To demonstrate how easy it is to get started with Cosmic JS, we'll utilize the Cosmic JS CLI to quickstart an Angular Ecommerce App. This Angular ecommerce app allows you to process orders from customers and accept Stripe payments for goods and services. Manage inventory in the Cosmic JS Dashboard.
In this tutorial I'm going to show you how to create a "Tutorials Portfolio" app using a Nuxt.js, and Cosmic JS.
Video: Build a Cosmic JS-powered blog using Gatsby
In this tutorial, we're going to build a digital shrine to the great musical artists of our time and to listening to music by album - the way great artists meant it to be listened to! In the process, you'll learn a little bit about Cosmic JS, React, CSS Grid, Flexbox, Material UI and Spotify's aweso

Ready to Get Started?

No payment info required.
Start Now   Contact Sales