Step-by-Step Migration

1

Create an Integration, Copy the API Key

Request your tenant invite (contact us — registration is invite-only during the pilot; the welcome email includes the mobile setup QR code). Then open Integrations in the dashboard, create an API integration, and copy the key.

# Primary header:
Authorization: OpsPingKey abc123-def456-ghi789
# Also accepted (drop-in OpsGenie compatibility):
X-OpsPing-Key: abc123-def456-ghi789
Authorization: GenieKey abc123-def456-ghi789
2

Repoint Alertmanager (or Your Grafana Contact Point)

OpsPing's API is a drop-in replacement for the OpsGenie v2 alert API — and Alertmanager's opsgenie_config receiver speaks it natively. Change one line and your alert routing, grouping, and inhibition rules all keep working:

# alertmanager.yml — receivers: opsgenie_config
api_url: https://api.opsgenie.com
# OpsPing (after)
api_url: https://api.ops-ping.com

Prefer to keep Grafana Alerting as the contact-point layer? In Alerting → Contact Points, edit your OpsGenie contact point and change the URL to https://api.ops-ping.com. Either way, no payload changes.

3

Rebuild Schedules and Escalation Chains

OnCall schedules and escalation chains don't have a one-click export we can consume, so this step is honest work: recreate your rotations and escalation policies in the OpsPing dashboard, or script it against the OpsPing API (API reference) — teams typically finish in under an hour per rotation. Migration support is free on every plan if you'd rather we walk through it with you.

4

Verify with a Test Alert

Send one alert through the repointed receiver and confirm priority, tags, and responder routing land correctly in the dashboard:

curl -X POST https://api.ops-ping.com/v2/alerts \
  -H "Authorization: OpsPingKey YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "message": "Test alert from OnCall migration",
    "alias": "oncall-migration-test-01",
    "priority": "P2"
  }'
5

Install the App — This Is the Part OnCall OSS Lost

The archived OnCall mobile connection means no more push paging from a self-hosted stack. The OpsPing app restores it properly: iOS critical alerts that break through silent mode and Focus, and an Android P1 alarm that plays on the media stream — it fires even in silent/vibrate/DND. Push is free and unlimited on every plan. Keep SMS/voice as a P1-only fallback, billed at provider cost against your included monthly flex credit with a hard cap you set. Details on the pricing page.

What Transfers — and What Doesn't

CapabilityMigrates?Notes
Alertmanager routing (groups, inhibition, receivers)✓ Yesopsgenie_config receiver is natively compatible — one-line change
Grafana Alerting contact points✓ YesOpsGenie contact point URL change
Phone-call / SMS alerting✓ YesVia voice/SMS fallback at provider cost; push critical alerts are free
Mobile push paging✓ YesThe OpsPing app — iOS critical alerts + Android DND-bypassing P1 alarm
Schedules & rotations~ ManualRecreate in dashboard or via API; typically <1 hour per rotation
Escalation chains~ ManualRecreate as OpsPing escalation policies
Slack notifications✓ YesOutbound webhooks to Slack/Teams/any endpoint, scoped per team
OnCall mobile app✗ NoReplaced by the OpsPing app (iOS + Android)
IRM incident management / Sift AI✗ NoOpsPing is paging-first, not a Grafana Cloud IRM replacement

Why Not Just Move to Grafana Cloud IRM?

For some teams IRM is the right answer. The teams who come to us usually say one of these:

FAQ

Can I keep running the archived OnCall OSS code?

Technically yes — but the mobile Cloud Connection is dead (no push paging), and there are no more bug fixes or security patches. A paging layer you can't patch and can't page from is a liability, not an asset.

Do I need to keep Grafana at all?

No. OpsPing accepts alerts from anything that sends webhooks — Datadog, CloudWatch, Uptime Kuma, Healthchecks, your own scripts. Grafana/Alertmanager is just the smoothest path because the OpsGenie receiver compatibility is native.

Can I script the migration?

Yes — the OpsPing API is fully scriptable, and because it's OpsGenie-shaped, the OpsGenie Terraform provider works too: set OPSGENIE_API_URL to https://api.ops-ping.com and existing alert-API configuration applies unchanged.

Coming from Opsgenie instead?

See the Opsgenie migration guide — there's a full importer for users, teams, schedules, rotations, escalations, heartbeats, and integrations.

Need Help?

Migration support is free for all plans. Contact us or email migration@ops-ping.com — we'll walk you through it over a call or async.