Migration
Migrate from PagerDuty or Opsgenie.
The reason teams stay on a tool they have outgrown is rarely the tool. It is the schedules, policies and routing keys nobody wants to rebuild by hand while staying on call. This page is what CallHeim's importer actually does, stated plainly, plus what it does not do.
If you are on Opsgenie
Atlassian ended new sales of Opsgenie on 2025-06-04 and the service reaches end of support on 2027-04-05; data not moved by then is deleted. Take an export well before that date rather than on it.
Atlassian Opsgenie licensing page · as of 2026-09-24 · what your options are
Seven object types
What the importer understands.
From a US-region PagerDuty or Opsgenie account, read with a read-only token.
- extracts
Users
Name, e-mail, role and one phone number. Imported as invited records — each person still has to be invited to sign in.
- extracts
Teams
Name and description.
- extracts
Services
Name, description and team.
- extracts
Schedules
Created as a shell; layers, overrides and restrictions come from whatever the vendor API returns for that schedule.
- extracts
Escalation policies
Tiers and timeouts, up to 8 tiers.
- extracts
Incidents
The last 90 days of history, so analytics do not start from an empty chart.
- extracts
Maintenance windows
Start, end and the service it applies to.
Integrations arrive as placeholder rows with no routing key. You generate a new CallHeim key and re-point each sender.
Import tooling (early access) reads your PagerDuty or Opsgenie configuration (US-region accounts); an optional dry run lets you review the result before anything is written to your workspace.
What needs review
- Schedule layers and overrides: the extractor requests a plain list, so layers, overrides and phone contact methods may arrive empty depending on what the vendor API returns.
- Escalation rules: only the first target of each tier carries over.
- Team and service links: services are written before their escalation policy, so an imported service may not page through the right policy until you relink it.
- Imported users: they arrive as invited records and are not reliably pageable until they sign in.
What is not migrated
- Per-user notification preferences and channel order
- EU-region PagerDuty or Opsgenie accounts — only US API hosts are read
- Any vendor other than PagerDuty or Opsgenie
- Integration secrets and routing keys — every sender needs a new CallHeim key
- Per-team import — each run reads the whole vendor account
Worth the extra time
Recreating escalation policies and schedules.
Of everything on the needs-review list, these two object types are where a five-minute check can turn into an afternoon — worth knowing before cutover, not during it.
Escalation policies
Tiers and timeouts import correctly, up to 8 tiers — but only the first target of each tier carries over. After Import, open each imported policy and add back any secondary or backup target the original had configured: a tier that paged "Alice, then Bob, then the whole team" imports with only Alice until you re-add the rest by hand.
Schedules
The base schedule and most rotations come across, but layers, overrides and phone contact methods may arrive empty, depending on what the source account’s API returns for that schedule. Before cutover, open the old schedule and the imported CallHeim schedule side by side, and rebuild any missing layer, restriction or override directly in CallHeim’s schedule editor.
The process
The recommended workflow.
Six steps. Only Import creates or updates anything in your CallHeim workspace.
- 01Parallel run
no workspace write
Forward alerts to CallHeim alongside your existing tool, so you can compare the two before anything changes for your team.
- 02Dry run
no workspace write
CallHeim reads your PagerDuty or Opsgenie account with a read-only token. The dry run writes nothing to your CallHeim workspace, and keeps a copy of the extract for the import.
- 03Review
no workspace write
Check what the dry run mapped and what it could not. Schedule layers and overrides may arrive empty, escalation rules keep only the first target of each tier, and team and service-to-policy links need checking by hand.
- 04Import
writes to your workspace
Run the same process for real. It creates the mapped users, teams, services, schedules, escalation policies, incidents and maintenance windows in your workspace. Re-running an import updates the same records instead of duplicating them, and overwrites edits made to imported records.
- 05Re-point senders
no workspace write
Give each alert source a new CallHeim integration URL and key. Existing PagerDuty or Opsgenie keys are not reused, and a tool with a fixed events.pagerduty.com endpoint cannot be repointed.
- 06Cut over
no workspace write
Once the parallel run and the imported configuration look right, stop forwarding to the old tool and retire it.
The dry run writes nothing to your CallHeim workspace, and keeps a copy of the extract for the import — it does not leave your old system untouched forever, and it is not a promise that nothing was written anywhere.
Questions
About migrating.
Can I migrate from PagerDuty?
Import tooling (early access) reads your PagerDuty or Opsgenie configuration (US-region accounts); an optional dry run lets you review the result before anything is written to your workspace. During the move you can also run in parallel: Run in parallel during a move: CallHeim receives PagerDuty Events API v1 and v2 bodies, Opsgenie outgoing webhooks, and alerts forwarded from Splunk On-Call, Squadcast, Zenduty and Grafana OnCall. Every sender needs a CallHeim integration URL and key; existing PagerDuty routing keys are not reused.
Can I migrate from Opsgenie?
Atlassian ends Opsgenie support on 5 April 2027; data not moved by then is deleted. Import tooling (early access) reads your PagerDuty or Opsgenie configuration (US-region accounts); an optional dry run lets you review the result before anything is written to your workspace. CallHeim also accepts Opsgenie outgoing webhooks, so alerts can be forwarded to both platforms during a parallel run.
Is there a trial?
CallHeim is in early access. 14-day trial with up to 5 seats and no card required. Adding a user beyond a plan’s seat limit is refused (Trial 5, Starter 10, Pro 50, Business 200); existing users and paging are not affected.
Start with the parallel run, not the cut-over.
CallHeim helps teams stay in control when critical systems are not. Explore the platform, connect one source, and send yourself a page.
Early access · every workspace starts with a 14-day trial for up to 5 seats, no card required