---
title: "Create notification"
method: POST
path: "/notifications"
tags: ["Notifications"]
---

# Create notification

`POST /notifications`

Send a push notification to users in an experience or company team. The notification is processed asynchronously and supports targeting specific users.

Required permissions:
 - `notification:create`

## Request body

- union — Parameters for SendNotificationV2
  - object — Autogenerated input type of SendNotificationV2
    - `company_id` string, required — The unique identifier of the company to target. Only team members of this company will receive the notification. Clicking the notification opens your dashboard app view.
    - `content` string, required — The main body text of the notification displayed to the user.
    - `icon_user_id` string, nullable — The unique identifier of a user whose profile picture will be used as the notification icon. Defaults to the experience or company avatar when not provided.
    - `rest_path` string, nullable — A path segment appended to the generated deep link that opens your app. Use [restPath] in your app path configuration to read this parameter. For example, '/settings/billing'.
    - `subtitle` string, nullable — An optional secondary line of text displayed below the title in the notification.
    - `title` string, required — The headline text of the notification, displayed prominently to the user.
    - `user_ids` string[], nullable — An optional list of user IDs to narrow the audience. When provided, only these users receive the notification, provided they are in the targeted experience or company.
  - object — Autogenerated input type of SendNotificationV2
    - `content` string, required — The main body text of the notification displayed to the user.
    - `experience_id` string, required — The unique identifier of the experience to target. All users with access to this experience will receive the notification. Clicking the notification opens the experience view.
    - `icon_user_id` string, nullable — The unique identifier of a user whose profile picture will be used as the notification icon. Defaults to the experience or company avatar when not provided.
    - `rest_path` string, nullable — A path segment appended to the generated deep link that opens your app. Use [restPath] in your app path configuration to read this parameter. For example, '/settings/billing'.
    - `subtitle` string, nullable — An optional secondary line of text displayed below the title in the notification.
    - `title` string, required — The headline text of the notification, displayed prominently to the user.
    - `user_ids` string[], nullable — An optional list of user IDs to narrow the audience. When provided, only these users receive the notification, provided they are in the targeted experience or company.

## Response `200`

A successful response

- object — Response from queuing a notification
  - `success` boolean, required — Whether the notification was successfully queued for delivery

## Other responses

- `400` — Bad request
- `401` — Unauthorized
- `403` — Forbidden
- `404` — Not found
- `422` — Verification required
- `429` — Too many requests
- `500` — Internal server error

---

[API](https://skmtc.dev/whop/apis/whop-api.md) · [All operations](https://skmtc.dev/whop/apis/whop-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/whop/whop-api/revisions/60bbb4a6ffbc/schema)
