Sync customer requests with GitLab

What is GitLab?

GitLab helps teams collaborate on code by providing a platform for version control, issue tracking, and continuous integration.

Why should you connect GitLab to Cycle: Key benefits

Customer feedback comes in all forms & shapes (Slack messages, call recordings, screenshots, emails, ...). In many cases, a single customer feedback will contain multiple requests which means you won't be able to create a unique issue from it. You'll also want to keep track of the customer submitting the feedback, but issue trackers don't have a "customer" object to do so. If you're currently creating an issue for every incoming request, you'll quickly find yourself with a graveyard of issues and a bunch of people expecting an update that they'll never get.

By connecting Cycle to GitLab you'll be able to

  1. Create GitLab issues automatically from Cycle when you commit to delivering a new feature or addressing a problem.
  2. Connect feature requests directly to items on your roadmap. That way you'll reconcile product discovery & delivery workflows
  3. Automate status updates between GitLab and Cycle to close feedback loops with your customers.
  4. Push customer context & product documents (scopes, PRDs, etc) to GitLab

We wrote an article explaining how to add product discovery on top of an issue tracking tool. Have a look!

How the GitLab integration works

When a feature's status changes in Cycle, it triggers GitLab to create a new issue. The issue's URL is added as a property to the feature in Cycle.

As the issue's status changes in GitLab, the feature's status in Cycle is updated as well. Stakeholders with quotes linked to the feature will automatically receive updates in a feedback loop.

Quick setup

Creating issues and tasks from Cycle:

  1. Open your Cycle workspace settings > API > create webhook. Create a webhook that listens for status changes.
  2. Filter the webhook events based on the specific status ID change you want to use as trigger.
  3. Use the filtered webhook events to create a new issues in GitLab.

Update Cycle based on status changes in GitLab:

  1. Setup a webhook in GitLab to listen to status updates.
  2. Based on the task's url, search for the corresponding doc in Cycle.
  3. Update the Cycle doc's status property accordingly.