Migrate from Opsgenie

Leave Opsgenie with nothing left behind.

Atlassian ends Opsgenie support on 5 April 2027: access shuts off and data that was not migrated is deleted. Transmit imports your account, checks the result against Opsgenie itself, and keeps Opsgenie’s API, so your integrations change one URL and one key.

Dates from Atlassian’s announcement of 3 March 2025, checked 4 October 2026.

The importer

A plan you can check before anything is written.

Most migrations find out a rotation was wrong when someone is not paged. Transmit asks Opsgenie who is on call on every schedule right now and puts its own answer beside it.

On-call check · now

ScheduleOpsgenieTransmit
Checkout primaryDana Reyes Dana Reyes
PaymentsPriya Shah Priya Shah
Platform nightsSam Ortiz Lee Park

A mismatch means a rotation did not map exactly; the warnings say which part. Example data.

What comes across

Members, schedules with their layers, restrictions and overrides, escalation policies, services, and heartbeats with their name, interval, message and priority.

What it warns about

  • Team participants in rotations
  • Escalation rules that page the next or previous on-call person
  • Rules that escalate until the alert is closed
  • Conditional notification rules
  • Heartbeat alert tags
  • People who are only reachable by push

What it never does

It never writes to Opsgenie and never stores your Opsgenie key. It slows down whenever Opsgenie says the account is near its rate limit, so a large account takes a few minutes.

The Opsgenie-compatible API

Only the URL and the key change.

Transmit answers on Opsgenie’s alert paths, so alert aliases, deduplication, closing on resolve and message updates work as before. For tools that cannot change their Opsgenie URL, each service also has a generic webhook and an Alertmanager webhook.

# Alertmanager
receivers:
  - name: transmit
    opsgenie_configs:
      - api_url: https://oncall-api.transmit.dev/
        api_key: tik_...  # the service's new key

Heartbeats

Heartbeats move without a false alarm.

An imported heartbeat starts watching at its first ping to Transmit, so none can page before its sender is repointed. Until then Opsgenie keeps watching it.

Three differences from Opsgenie

  • Imported heartbeats wait for their first ping. The dashboard shows them as waiting.
  • The key must be the heartbeat’s service’s key. Opsgenie keys cover the whole account; Transmit’s belong to one service.
  • An unknown name is a 404, where Opsgenie answers 202 to any name. With curl -f, a wrong ping fails the job.

The runbook

Side by side, then switch.

How a migration usually goes. In early access, we can do it with you.

  1. Day 1

    See the plan

    Create an Opsgenie API integration with read and configuration access, and start an import. Transmit only reads from Opsgenie and writes nothing yet. You get the plan: every member, schedule, policy, service and heartbeat it would create.

  2. Day 1

    Read the on-call check

    For every schedule, who Opsgenie says is on call right now, next to who the imported schedule computes. They should match. Warnings list everything that does not carry over exactly.

  3. Day 1

    Apply it

    Everything is written in one transaction. Each service gets a new Opsgenie-compatible key, shown for an hour and never again. Re-import any time; it updates what it made.

  4. Days 2–5

    Repoint, one sender at a time

    Change the URL and key in Alertmanager, Grafana and your scripts, and repoint heartbeat pings. Opsgenie keeps watching anything you have not moved yet.

  5. Days 2–5

    Run both side by side

    Send alerts to both systems and compare what each one pages. Send a test alert from each service to check every policy reaches a person.

  6. Cut-over

    Turn Opsgenie off

    When every sender is repointed and you trust what you see, stop sending to Opsgenie. Well before 5 April 2027.

Before you rely on it

Pages come by email, for now.

Texts and calls are not switched on yet, and an email at 3am rarely wakes anyone. Before you depend on Transmit, have everyone who is on call:

  1. Add alerts@alerts.transmit.dev to their contacts.
  2. Make it break through: VIP in Apple Mail with Emergency Bypass on the contact (iPhone), or a dedicated loud notification for it (Gmail on Android).
  3. Allow it through Focus or Do Not Disturb, and send a test alert to check it really wakes them.

If you need a phone to ring tonight, keep Opsgenie paging for that until Transmit switches on SMS and calls. Phone numbers come across in the import already, and are used once each person verifies theirs.

Plan your migration with us.

Transmit is in early access. Tell us about your on-call setup, and we will help you import it and check it against Opsgenie before you switch.