Apple Push Notification service (APNs), previously known as Apple Push Service (APS), is a platform
notification service
A notification service provides means to send a notice to many persons at once. For example, if a flood were likely, residents of a community could be warned it's time to evacuate. If a school were suddenly closed for the day, students or paren ...
created by
Apple Inc.
Apple Inc. is an American multinational corporation and technology company headquartered in Cupertino, California, in Silicon Valley. It is best known for its consumer electronics, software, and services. Founded in 1976 as Apple Comput ...
that enables third party application developers to send notification data to applications installed on Apple devices. The notification information sent can include badges, sounds, newsstand updates, or custom text alerts. It was first launched with
iOS 3
iPhone OS 3 (''stylized as iPhone OS 3.0'') is the iOS version history#iPhone OS 3, third major release of the iOS mobile operating system developed by Apple Inc., succeeding iPhone OS 2. It was announced on March 17, 2009, and was released on J ...
on June 17, 2009. APNs support for local applications was later added to the
Mac OS X
macOS, previously OS X and originally Mac OS X, is a Unix, Unix-based operating system developed and marketed by Apple Inc., Apple since 2001. It is the current operating system for Apple's Mac (computer), Mac computers. With ...
API
An application programming interface (API) is a connection between computers or between computer programs. It is a type of software interface, offering a service to other pieces of software. A document or standard that describes how to build ...
beginning with the release of
Mac OS X 10.7 ("Lion"). Support for website notifications was later added with the release of
Mac OS X 10.9 ("Mavericks").
History
Apple announced the service on June 9, 2008 with an original stated release for that September; however, as stated by
Scott Forstall
Scott James Forstall (born August 28, 1969) is an American software engineer, known for leading the original software development team for the iPhone and iPad. Having spent his career first at NeXT and then Apple, he was the senior vice president ...
at the iOS 3.0 preview event on March 17, 2009, the rollout was delayed after a decision to restructure the APNs for scalability purposes due to the allegedly "overwhelming" response to the announcement of the APNs. At both events, Forstall stated that
push notification
Push technology, also known as server Push, refers to a communication method, where the communication is initiated by a server rather than a client. This approach is different from the "pull" method where the communication is initiated by a client ...
s better conserve battery than
background process
A background process is a computer process that runs ''behind the scenes'' (i.e., in the background) and without user intervention. Typical tasks for these processes include logging, system monitoring, scheduling, and user notification.
On a Wind ...
es (which are used in
pull technology
Pull coding or client pull is a style of network communication, where the initial request for data originates from the client, and then is responded to by the server. The reverse is known as push technology, where the server ''pushes'' data to ...
) for receiving notifications.
APNs was first launched together with iOS 3.0 on June 17, 2009.
The release of iOS 5.0 included a
Notification Center
Notification Center is a feature in iOS, iPadOS, macOS and watchOS that provides an overview of alerts from applications. It displays notifications until the user completes an associated action, rather than requiring instant resolution. User ...
, adding support for receiving and reading local notifications in a single place.
APNs was also added as an API to Mac OS X 10.7 ("Lion") so that developers could begin updating their third-party applications and start utilizing the service.
Support was later improved in
OS X 10.8 ("Mountain Lion") with the introduction of a Notification Center. As with iOS 5.0, the improvement allowed users to manage and read their received notifications in a single location.
The release of
OS X 10.9 ("Mavericks") included
Safari
A safari (; originally ) is an overland journey to observe wildlife, wild animals, especially in East Africa. The so-called big five game, "Big Five" game animals of Africa – lion, African leopard, leopard, rhinoceros, African elephant, elep ...
7.0, which added support for accepting and receiving APNs notifications from websites that the user granted permission to.
In December 2023, concerns arose regarding a potential privacy and surveillance loopholes involving push notifications delivered through APNs.
US Senator Ron Wyden revealed, through a letter to the
Department of Justice
A justice ministry, ministry of justice, or department of justice, is a ministry or other government agency in charge of the administration of justice. The ministry or department is often headed by a minister of justice (minister for justice in a ...
, that both the US government and foreign law enforcement could demand user data from Apple related to push notifications.
Technical details
In 2014, the maximum size allowed for a notification payload sent through the binary interface was increased from 256 bytes to 2 kilobytes. In December 2015, a new
HTTP/2
HTTP/2 (originally named HTTP/2.0) is a major revision of the HTTP network protocol used by the World Wide Web. It was derived from the earlier experimental SPDY protocol, originally developed by Google. HTTP/2 was developed by the HTTP Working ...
provider API was released by Apple, effectively replacing the now-legacy binary interface. The maximum notification payload size allowed using the HTTP/2 API is 4 kilobytes. Apple shut down the legacy binary API at the end of March 2021.
The HTTP/2 provider for APNs uses TCP port 443 as the main port of communication, but developers are also allowed to use TCP port 2197 if outbound access to port 443 is blocked by firewalls.
See also
*
iMessage
iMessage is an instant messaging service developed by Apple Inc. and launched in 2011. iMessage functions exclusively on Apple platforms – including iOS, iPadOS, macOS, watchOS, and visionOS – as part of Apple ecosystem, Apple's approach t ...
*
FaceTime
FaceTime is a proprietary videotelephony product developed by Apple. FaceTime is available on supported iOS mobile devices running iOS 4 and later and Mac computers that run and later. FaceTime supports any iOS device with a forward-facin ...
*
Firebase Cloud Messaging
Firebase Cloud Messaging (FCM), formerly known as Google Cloud Messaging (GCM), is a cross-platform cloud service for messages and Notification service, notifications for Android (operating system), Android, iOS, and web applications, which as o ...
*
SQL Server Notification Services SQL Server Notification Services is a platform developed by Microsoft for the development and deployment of notification applications based on SQL Server technology and the Microsoft .NET Framework. Notification Services offers a scalable server ...
*
Microsoft Notification Protocol
Microsoft Notification Protocol (MSNP, also known as the Mobile Status Notification Protocol) is an instant messaging protocol developed by Microsoft for use by the Microsoft Messenger service and the instant messaging clients that connect to i ...
*
Push email
Push email is an email system that provides an always-on capability, in which when new email arrives at the mail delivery agent (MDA) (commonly called mail server), it is immediately, actively transferred ( pushed) by the MDA to the mail user agen ...
*
Windows Notification Service
References
External links
*
Apple Push Notification Service DocumentationiOS: Understanding Notifications
{{Mac OS X
Push Notification Service
IOS
MacOS
Push technology