5 free tools

Push notification tools

Five browser tools for the parts of Apple push notifications that go wrong most often: the payload, the provider token, the device token, the error that comes back, and Live Activity updates.

About these tools

Sending a push to an iPhone takes three things that have to agree with each other. Your server needs credentials, either a push certificate or a provider token signed with a .p8 key. It needs a device token that came from a build signed for the same environment, sandbox for apps run from Xcode and production for TestFlight and the App Store. And it needs a payload that fits APNs' rules: an aps dictionary, the right push type and topic headers, and no more than 4 KB. When one of them is off, APNs answers with a status code and a one-word reason, and the notification never arrives.

Start with the push notification tester to build an alert or background payload. It checks the JSON against the size limit and the aps keys, then prints a curl command, an FCM HTTP v1 equivalent and a simctl command for the Simulator, with no keys involved.

The APNs JWT generator signs a provider token from your .p8 key with the browser's Web Crypto API, shows the decoded header and claims, and counts down the one-hour lifetime, so you can compare it with what your server sends. The key is used for signing inside the tab, and this tool's code doesn't send it anywhere.

The device token checker catches the formats that look like tokens but aren't: Data descriptions with the middle cut out, base64, Firebase registration tokens and UUIDs. Paste a column from your database to clean and de-duplicate it.

When APNs says no, paste the response into the APNs error codes explainer. It covers every reason string Apple documents, with likely causes, a fix checklist and whether a retry makes sense, and it turns the timestamp on a 410 into a date.

The Live Activity payload builder handles the liveactivity push type: start, update and end events, content-state, stale and dismissal dates, the topic suffix and the priority budget, with warnings for date encodings that make updates fail silently.

Everything here runs in your browser. The pages build JSON and commands for you to run with your own credentials; the tools' code doesn't upload anything you paste. To send a test push to a real device from a Mac, the pages also point to the Push Notification Tester app.

Questions

Do these tools send push notifications?

No. They build and check payloads, tokens and commands in your browser. You send the request yourself with curl or your server, or with the Push Notification Tester app on a Mac.

Is my .p8 key or device token uploaded?

No. The JWT generator reads the key and signs inside the tab, and the token checker works on the text you paste. The tools' code doesn't send anything you add.

Why does my push work from Xcode but not from TestFlight?

Xcode builds register with the APNs sandbox, while TestFlight and App Store builds use production. Each environment issues its own device tokens, so send TestFlight tokens to api.push.apple.com.

Do the tools cover Android?

The push notification tester prints the equivalent FCM HTTP v1 request for an alert payload. An FCM payload builder is planned for this section.

More free tools