If you are using Apple Push Tokens (APNS HTTP/2) then your message can be up to 4KB. Using the older Apple Push Certificates, the payload is limited to 2KB. The entire message payload for PubNub publish/subscribe supports maximum 32KB which includes the pn_apns (and pn_gcm) data.
{ "pn_apns": { "aps": { "alert": "Your order is ready for pickup!", "payment_info": { "credit_card": 987656789876, "expiration": "0108" } } }, "pn_gcm": { "notification": "Your order is ready for pickup!", "payment_info": { "credit_card": 987656789876, "expiration": "0108" } }, "message": { "info": "This is data all non-APNS and non-GCM devices would receive. They would also receive the pn_apns and pn_gcm data." "note": "Your order is ready for pickup!", "payment_info": { "credit_card": 987656789876, "expiration": "0108" } } }
The entire payload above will be sent to active PubNub subscribers (including the pn_apns
and pn_gcm data). But only the data inside the pn_apns
section will be sent as an APNS message and displayed a push notification on an iOS device.
For more details, see Sending APNS and GCM Messages to Subscribers and Mobile Push Notification Services in One API Call.