> ## Documentation Index
> Fetch the complete documentation index at: https://moengage.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Push Notifications in iOS

> Set up APNs authentication, push registration, rich notifications, Live Activities, and triggered push in your iOS app.

Push notifications on iOS need work in three places: the MoEngage dashboard (APNs credentials), your Xcode project (capabilities and extensions), and your app code (registration and callbacks). The **Basic** pages cover all three and are required for any push integration.

**Optional** pages add individual campaign types and surfaces. **Advanced** covers customizing what the SDK does by default.

## Basic

| Page | What it covers |
| - | - |
| [iOS Push Integration Tutorial](https://moengage.com/docs/developer-guide/ios-sdk/push/basic/ios-push-integration-tutorial.md) | End-to-end steps to send, receive, and track rich push notifications. |
| [Push Notifications](https://moengage.com/docs/developer-guide/ios-sdk/push/basic/push-notifications.md) | Push setup in your app, including APNs, templates, and geofencing. |
| [APNS Authentication Key](https://moengage.com/docs/developer-guide/ios-sdk/push/basic/apns-authentication-key.md) | Generate a `.p8` key and upload it to the MoEngage dashboard. |
| [APNS Certificate/PEM file (legacy)](https://moengage.com/docs/developer-guide/ios-sdk/push/basic/apns-certificate-pem-file-legacy.md) | Create and upload a legacy APNs certificate in PEM format. |
| [Actionable Notifications](https://moengage.com/docs/developer-guide/ios-sdk/push/basic/actionable-notifications.md) | Add custom action buttons to standard iOS push notifications. |

## Optional

| Page | What it covers |
| - | - |
| [Transactional Live Activity](https://moengage.com/docs/developer-guide/ios-sdk/push/optional/transactional-live-activity.md) | Show real-time transactional updates on the Lock Screen. |
| [Broadcast Live Activity](https://moengage.com/docs/developer-guide/ios-sdk/push/optional/broadcast-live-activity.md) | Show real-time broadcast updates on the Lock Screen. |
| [Push templates](https://moengage.com/docs/developer-guide/ios-sdk/push/optional/push-templates.md) | Add custom push templates with a Notification Content Extension. |
| [Push Handled by Application](https://moengage.com/docs/developer-guide/ios-sdk/push/optional/push-handled-by-application.md) | Handle push display and tracking yourself using the messaging APIs. |
| [Real-Time Triggers](https://moengage.com/docs/developer-guide/ios-sdk/push/optional/real-time-triggers.md) | Fire device-triggered push the moment a user performs an event. |
| [iOS Notification Center](https://moengage.com/docs/developer-guide/ios-sdk/push/optional/i-os-notification-center.md) | Add an inbox view controller for read and unread notifications. |
| [Location triggered](https://moengage.com/docs/developer-guide/ios-sdk/push/optional/location-triggered.md) | Send geofence-based push notifications. |

## Advanced

| Page | What it covers |
| - | - |
| [Custom Notification Handling](https://moengage.com/docs/developer-guide/ios-sdk/push/advanced/custom-notification-handling.md) | Customize badge reset, notification sounds, and action handling. |

> [!NOTE]
>
> Choose one APNs authentication method. The [APNs Authentication Key](https://moengage.com/docs/developer-guide/ios-sdk/push/basic/apns-authentication-key.md) is the current approach; the PEM certificate is legacy.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.