---
title: "Send push notifications to user devices."
method: POST
path: "/api/v1/messages:send"
tags: ["ClixExternalService"]
---

# Send push notifications to user devices.

`POST /api/v1/messages:send`

## Request

- Base URL: `https://api.clix.so`
- URL: `https://api.clix.so/api/v1/messages:send`
- Auth: API key in header `X-Clix-Project-ID` and API key in header `X-Clix-API-Key`

This endpoint sends push notifications to one or more user devices.

## Request body

- V1SendPushNotificationsRequest: Request schema for sending push notifications.
  - `push_notifications` Clixexternalv1PushNotification[]: List of push notifications to send. (We recommend sending up to 500 push notifications.)
    - `target` union: Target information for the push notification. Only one of project_user_id, device_id, or user_id should be present.
      - object
        - `project_user_id` string, required: Project-specific user ID for targeting.
      - object
        - `device_id` string, required: ID of the target device.
      - object
        - `user_id` string, required: ID of the target user.
    - `title` string: Title of the push notification.
    - `body` string: Body content of the push notification.
    - `image_url` string: URL of the image to display in the push notification (optional).
    - `landing_url` string: URL to open when the notification is clicked (optional).

## Response `200`

A successful response containing the delivery results for each push notification.

- V1SendPushNotificationsResponse: Response schema containing the delivery results for each push notification.
  - `delivery_results` Clixexternalv1DeliveryResult[]: List of delivery results for each push notification.
    - `message_id` string: Unique ID of the push notification message.
    - `status` 'DELIVERY_RESULT_STATUS_SUCCEED' | 'DELIVERY_RESULT_STATUS_FAILED'
    - `additional_params` Clixexternalv1DeliveryResultAdditionalParams
      - `device_id` string
      - `fcm_message_id` string
      - `failure_reason` string

## Other responses

- `400`: Bad request - invalid parameters

---

[API](https://skmtc.dev/clix/apis/clix-external-v1-clix-proto.md) - [All operations](https://skmtc.dev/clix/apis/clix-external-v1-clix-proto/llms.txt) - [OpenAPI document](https://skmtc.dev/clix/apis/clix-external-v1-clix-proto/revisions/b5048a49e843?raw)
