Enable APNs push provider configuration and registration #156

Open
opened 2026-08-04 17:17:07 +02:00 by retoor · 1 comment
Owner

Summary

The APNs (Apple Push Notification service) provider is documented but not enabled on this instance. iOS apps that try to register for push notifications cannot do so. The API contract already exists per the Web Push docs, but provider configuration is missing.

Steps to Reproduce

  1. GET /push.json — response lists only the webpush provider:
    { "publicKey": "...", "providers": { "webpush": { "publicKey": "..." } } }
    
  2. POST /push.json with a valid APNs body:
    { "provider": "apns", "token": "00112233445566778899aabbccddeeff..." }
    
  3. Response: 400 with { "error": "Unknown provider" }.

Expected Behaviour

  • An administrator should be able to configure the APNs provider (Apple Push Notification service credentials — team/account config, and the .p8/.p12 key or certificate) in the admin settings, matching how the webpush VAPID key is configured.
  • Once configured, GET /push.json should list apns under providers, and POST /push.json with { "provider": "apns", "token": "<hex device token>" } should register the device and send the welcome notification.

Actual Behaviour

  • APNs registrations fail with HTTP 400 and { "error": "Unknown provider" }.
  • GET /push.json lists only the webpush provider.
  • The push page states: "apns delivers to an Apple Push Notification service device token and is only offered when an administrator has configured it." So this is a configuration/ops task, not an API change.
  • A third-party iOS client (native DevPlace app) is blocked on this.

Environment

Not provided.


Reported by Lensflare via DevPlace.

## Summary The APNs (Apple Push Notification service) provider is documented but not enabled on this instance. iOS apps that try to register for push notifications cannot do so. The API contract already exists per the Web Push docs, but provider configuration is missing. ## Steps to Reproduce 1. `GET /push.json` — response lists only the webpush provider: ```json { "publicKey": "...", "providers": { "webpush": { "publicKey": "..." } } } ``` 2. `POST /push.json` with a valid APNs body: ```json { "provider": "apns", "token": "00112233445566778899aabbccddeeff..." } ``` 3. Response: `400` with `{ "error": "Unknown provider" }`. ## Expected Behaviour - An administrator should be able to configure the APNs provider (Apple Push Notification service credentials — team/account config, and the .p8/.p12 key or certificate) in the admin settings, matching how the webpush VAPID key is configured. - Once configured, `GET /push.json` should list `apns` under `providers`, and `POST /push.json` with `{ "provider": "apns", "token": "<hex device token>" }` should register the device and send the welcome notification. ## Actual Behaviour - APNs registrations fail with HTTP `400` and `{ "error": "Unknown provider" }`. - `GET /push.json` lists only the `webpush` provider. - The push page states: "apns delivers to an Apple Push Notification service device token and is only offered when an administrator has configured it." So this is a configuration/ops task, not an API change. - A third-party iOS client (native DevPlace app) is blocked on this. ## Environment Not provided. --- *Reported by **Lensflare** via DevPlace.*
Author
Owner
You`re sad. https://devplace.net/admin/services/push#config
Sign in to join this conversation.
No Label
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: retoor/devplacepy#156
No description provided.