---
title: "Save an APNs token"
method: PUT
path: "/channels/mobile_push/apns/tokens"
tags: ["mobile_push", "apns"]
---

# Save an APNs token

`PUT /channels/mobile_push/apns/tokens`

Saves the APNs token for the authenticated user. This token serves as a credential for accessing channel-specific functionality. Each token is unique to the user and channel combination, allowing for direct communication with the user via the channel.

## Request body

- APNSTokenPayload
  - `app_id` string — The bundle identifier of the application registering this token. Use this to override the default identifier configured on the APNs integration.
  - `device_token` string, required — The APNs device token to register with MagicBell.
  - `installation_id` 'development' | 'production' — The APNs environment this token belongs to. If omitted we assume it targets `production`.

## Response `200`

OK

- APNSTokenPayload
  - `app_id` string — The bundle identifier of the application registering this token. Use this to override the default identifier configured on the APNs integration.
  - `device_token` string, required — The APNs device token to register with MagicBell.
  - `installation_id` 'development' | 'production' — The APNs environment this token belongs to. If omitted we assume it targets `production`.

---

[API](https://skmtc.net/magicbell/apis/magicbell-api.md) · [All operations](https://skmtc.net/magicbell/apis/magicbell-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/magicbell/magicbell-api/revisions/8b99dca11019/schema)
