---
title: "Create subscriber"
method: POST
path: "/stakeholder-comms/cloudId/{cloudId}/api/subscribers"
tags: ["Status Page"]
---

# Create subscriber

`POST /stakeholder-comms/cloudId/{cloudId}/api/subscribers`

Add a new subscriber for status page.

## Request body

- StakeholderCommsSubscriptionRequest — Request to create a subscriber.
  - `subscriptionRequest` object, required — Subscription request payload.
    - `itemId` string, required — Identifier of the item to subscribe to (page, component, or incident).
    - `itemType` 'INCIDENT_SUBSCRIBER' | 'PAGE_SUBSCRIBER' | 'COMPONENT_SUBSCRIBER', required — Type of the item being subscribed to.
    - `subscriptionType` 'EMAIL' | 'SMS' | 'WEBHOOK' | 'SLACK', required — Channel type for the subscription.
    - `subscriptionData` object — Channel-specific subscription data.
      - `phoneNumber` string — Phone number for SMS subscriptions.
      - `phoneCountry` string — Phone country code for SMS subscriptions.
      - `email` string — Email address for email subscriptions.
      - `webhookEndpoint` string — Webhook URL for webhook subscriptions.
    - `captchaToken` string — CAPTCHA token for verification.

## Response `201`

Returned if the subscriber is successfully created.

- StakeholderCommsSubscriber — A subscriber in Stakeholder Comms.
  - `id` string — Identifier of the subscriber.
  - `itemId` string — Identifier of the subscribed item (page, incident, component).
  - `type` 'INCIDENT_SUBSCRIBER' | 'PAGE_SUBSCRIBER' | 'COMPONENT_SUBSCRIBER' — Subscription item type.
  - `status` 'PENDING_CONFIRMATION' | 'SUBSCRIBED' | 'UNSUBSCRIBED' | 'SUSPENDED' | 'DEACTIVATED' | 'QUARANTINED' | 'UNVERIFIED' — Status of the subscriber.
  - `email` string — Email address of the subscriber.
  - `phoneNumber` string — Phone number for SMS notifications.
  - `phoneCountry` string — Country code for the phone number.
  - `componentIds` string[] — Component identifiers the subscriber is interested in.
  - `webhookEndpoint` string — Webhook URL for notifications.
  - `skipConfirmation` boolean — Whether email confirmation was skipped.
  - `pageAccessUserId` string — Page-access user identifier.
  - `phoneNumberDisplay` string — Formatted phone number for display.
  - `deactivatedAt` string, date-time — When the subscriber was deactivated.
  - `orphanedAt` string, date-time — When the subscriber became orphaned.
  - `quarantinedAt` string, date-time — When the subscriber was quarantined.
  - `confirmedAt` string, date-time — When the subscriber confirmed their subscription.
  - `confirmationCode` string — Confirmation code sent to the subscriber.
  - `shortCodeSubscriptionId` string — Short code subscription identifier.
  - `lastRemindedAt` string, date-time — When the last reminder was sent.
  - `subscriptionType` 'EMAIL' | 'SMS' | 'WEBHOOK' | 'SLACK' — Subscription channel.
  - `additionalInformation` string[] — Additional information strings for the subscription.
  - `slackChannelId` string — Slack channel identifier.
  - `slackUserId` string — Slack user identifier.
  - `createdAt` string, date-time — When the subscriber was created.
  - `updatedAt` string, date-time — When the subscriber was last updated.

## Other responses

- `400` — Returned if the request is invalid.
- `401` — Returned if the authentication credentials are incorrect.
- `403` — Returned if the user does not have permission to create the subscriber.
- `409` — Returned if a subscriber with the same email already exists for the page.
- `500` — Returned if an internal server error occurs.

---

[API](https://skmtc.net/atlassian/apis/jsm-operations-api.md) · [All operations](https://skmtc.net/atlassian/apis/jsm-operations-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/atlassian/jsm-operations-api/versions/ed65f017bcb8/schema)
