๐Ÿ“˜ Epiphan Knowledge
All pages ยท pearl family

Pearl REST API list, create, rename, and delete publishers

Before configuring or controlling a stream you need its publisher ID. Publishers are listed per channel, and new ones can be created and deleted through the API.

Applies to: Pearl-2, Pearl Mini, Pearl Nexus, Pearl Nano.

Method and path What it does
GET /channels/{cid}/publishers Lists the publishers on a channel
GET /channels/{cid}/publishers/type Lists the ID, type, and name of each publisher
GET /channels/{cid}/publishers/{pid}/type Returns the type of one publisher
GET /channels/{cid}/publishers/{pid}/name Returns the display name of one publisher
PUT /channels/{cid}/publishers/{pid}/name?name=<new name> Renames a publisher
POST /channels/{cid}/publishers Adds a new publisher to a channel
DELETE /channels/{cid}/publishers/{pid} Deletes a publisher

Publisher types are rtmp, rtsp, rtp-udp, mpegts-udp, mpegts-rtp, ndi, hls, and srt.

Device differences

A channel with no publishers returns an empty result array rather than an error.

Publisher names are 1 to 128 characters. The rename endpoint takes the new name as a query parameter, not a body, and returns the updated name in result.

Creating a publisher. Send a JSON body containing an optional name and a required settings object. The settings object must include a type field that selects which protocol block is expected:

{
  "name": "New RTMP",
  "settings": {
    "type": "rtmp",
    "rtmp": {
      "disable_audio": false,
      "url": "rtmp://192.168.86.51",
      "stream": "",
      "username": "",
      "password": ""
    },
    "common": { "enabled": false, "single_touch": false }
  }
}

A successful creation returns HTTP 201 with the new publisher's id, name, and settings. A request naming a channel that does not exist returns 404.

Was this helpful?
Source: pearl-rest-api.md ยท id pearl-family/pearl-rest-api-list-create-rename-and-delete-publishers ยท Updated Oct 7, 2026 ยท view as markdown