A few years ago, after we had just raised our pre-Series A round, through a series of introductions, we ended up meeting one of the earliest Opsgenie team members, who was very keen on investing in Zenduty. While he loved our end-to-end approach to incident management(including alerting and incident response), our ultimate focus on miniming MTTR(as opposed to MTTA) as our primary differentiator, and our great traction, another reason why he was interested was his contention that Opsgenie, the product and business that he had helped built from the ground up, was finding it difficult to grow in its new home after its acquisition by Atlassian, and he had sensed an opportunity. There were several coupling and decoupling attempts between Opsgenie and Jira and JSM, but eventually Opsgenie was left to operate as a pseudo-standalone product with very little support - strategic or otherwise. It therefore came as no surprise that on March 8th, Atlassian announced that it is sunsetting Opsgenie and will not take any new customers after June 4th, 2025.

We at Zenduty have been migrating hordes of customers out of Opsgenie for quite some time. Why did customers move from Opsgenie to Zenduty?

  1. They needed full-stack incident response, and not just alerting
  2. They needed a solution that supported decentralized management of production reliability("shift-left")
  3. They needed an incident management process that was easy to set up and was scalable across hundreds of teams
  4. They needed an incident response process that was predictable and repeatable
  5. Better and Scalable pricing + Zenduty had a 90%+ overlap in capabilities with Opsgenie(i.e, Zenduty had 90%+ of what Opsgenie gave them already), so they did not need to reinvent the wheel or change any processes internally
  6. They were moving out of the Atlassian ecosystem lock, stock, and barrel

How long does a typical migration take?

The answer is - it depends. Typically, a migration from Opsgenie to Zenduty can take anywhere from 20 minutes to a week. If your current Opsgenie setup consists of standard, out-of-the-box integrations with cloud observability tools, you can use our Opsgenie-to-Zenduty migration scripts to migrate all objects from Opsgenie to Zenduty and simply replace the webhooks for all integrations. However, if you have built customer scripts on top of the Opsgenie APIs, then that will need a bit of reworking. But worry not! Luckily, the Zenduty developer support team can help you migrate easily and quickly!

Ready to migrate from Opsgenie to Zenduty or interested in exploring Zenduty? Reach out to our team here, and set up a call to discuss your migration! If you'd like to see the full feature-by-feature differentiation, read here.

Prefer DIY? Read on...

Below is a guide that will walk you through the required steps. Follow the steps one after the other, and in just a few minutes, you'll be fully migrated to Zenduty!

Prerequisites

Before you begin, ensure you have:

  • You'll need an Opsgenie API key with Read and Configuration access.
  • Remove any dormant users, services, teams, and escalation policies in Opsgenie. This will streamline the migration process.

Step-by-Step Migration Guide

1. Generate API Keys

In Opsgenie:

  • Navigate to Settings โ†’ API Key Management.
  • Click on Create New API Key.
  • Assign Read and Configuration access to this API key
  • Copy and save the API key securely

In Zenduty:

  • Sign up for a Zenduty account if you haven't already: Zenduty Signup.
  • Navigate to Accounts โ†’ API Keys.
  • Click Create a new API key and copy it.

2. Migration Assistance

We have a ready-to-use migration script that simplifies the process. Book a call - here , and we'll help you migrate from Opsgenie to Zenduty in minutes!

3. Set Environment Variables

In your terminal, navigate to the folder where the repository is cloned and set up the environment variables:

export OPSGENIEAPIKEY={your_opsgenie_api_key}
export ZENDUTYAPIKEY={your_zenduty_api_key}

4. Install Dependencies

Install the required dependencies:

pip install -r requirements.txt

Or, if using Python 3:

pip3 install -r requirements.txt

5. Migrate Users

Run the following command to migrate Opsgenie users to Zenduty:

python -c "import users; users.invite_users()"

Wait for all users to be added, and verify by checking the user count in both platforms.

๐Ÿ’ก
Check out Zenduty vs Opsgenie โ€“ The Modern, Full-Stack Alternative for Faster Incident Response and Reliability.

6. Migrate Teams

Run the command below to migrate teams:

python -c "import teams; import asyncio; asyncio.run(teams.clone_teams())"

This will migrate all existing Opsgenie teams to Zenduty.

7. Migrate Team Members

To migrate team members, execute:

python -c "import team_members; import asyncio; asyncio.get_event_loop().run_until_complete(team_members.clone_team_members())"

All team members from Opsgenie will now be added to the respective Zenduty teams

8. Migrate Schedules

Run the following command to migrate schedules:

python -c "import schedules; import asyncio; asyncio.run(schedules.clone_schedules())"

9. Migrate Escalation Policies

Run the following command to escalation policies:

python -c "import esp; import asyncio; asyncio.get_event_loop().run_until_complete(esp.clone_esp())"

Additional Notes

  • During migration, a global team will be created in Zenduty, containing all users in the account. You can choose to delete this team later if needed.
  • Validate the migration by cross-checking data between Opsgenie and Zenduty.

By following these steps, you can seamlessly transition from Opsgenie to Zenduty, ensuring all your users, teams, and schedules are migrated efficiently. If you encounter any issues, feel free to reach out to Zenduty support - support@zenduty.com

Nidhi

Product Manager at Zenduty