---
title: "Set the customer's push notifications"
method: POST
path: "/customers/actions/set-push-notifications"
tags: ["Customers actions"]
---

# Set the customer's push notifications

`POST /customers/actions/set-push-notifications`

Set up customer push notifications for a specific application and device.

Registers a push notification token (Apple or Android) for a customer account and links it to the specified external application and device ID. This enables the CareCloud platform to send push notifications to the customer's device. If a token is already registered for the same device ID, it is replaced.

To unregister a device, use [POST /customers/actions/cancel-push-notifications](https://carecloud.readme.io/reference/postcustomercancelpushnotifications) (enterprise interface only).

⚠️ The endpoint is available only in the Enterprise interface.
⚠️ Please make sure the ID of the device is unique. You will avoid problems with signing off other devices.

## Request body

- object
  - `customer_id` string, required — The unique ID of the customer.
  - `device` Device, required — Structure describes the client device or browser.
    - `device_id` string, required — The unique ID of the client device.
    - `device_system` string, required — Operation system of the device.
    - `device_name` string, required — The name of the device.
    - `device_type` string, required — Type of device by producer (product line).
  - `external_application_id` string, required — ID of the external application. More information about external applications and how to get an ID is available in [Authentication section](https://carecloud.readme.io/reference/authentication#external-applications-1).
  - `push_token` string, required — Push notification token (Apple or Google).

## Response `204`

No Content

## Other responses

- `400` — Bad input parameter. The response body's `error.error_data.invalid_params[]` array lists the parameters that caused the failure, each carrying a `reason` code. See the `BadRequestErrorBody` schema for the generic reason taxonomy. Operations with domain-specific business rules document additional reasons at the operation level.
- `401` — The client has invalid credentials or auth token.
- `403` — The client does not exist or the client tried to access an unauthorized property or resource.
- `404` — The resource was not found.
- `405` — The resource does not support the specified HTTP method.
- `429` — Too many requests - more than the resource limit.
- `500` — Server is not working as expected.
- `503` — Temporary state when the service is temporarily unavailable, overloaded or there is a maintenance window.

---

[API](https://skmtc.net/crmcarecloud/apis/rest-api-reference.md) · [All operations](https://skmtc.net/crmcarecloud/apis/rest-api-reference/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/crmcarecloud/rest-api-reference/revisions/329c06dbf8d9/schema)
