Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Use these endpoints to manage live media feeds on the network. 

Base URL for these endpoints:  https://api.bsn.cloud/2022/06/REST/Feeds/Media

_________________________________________________________________________

GET /

Returns a list of live media feeds on a network

Required Scope

bsn.api.main.feeds.media.retrieve

______________________________________________________________

Query String Parameters

filter string optional

An expression for filtering search results. The default value is null.

sort string optional

An expression for sorting the search results. The sort expression specifies the entry used for sorting and the ascending/descending (ASC/DESC) sorting order (see this page for more information). The default value is null.

marker string optional

A value specifying which page to retrieve. This value is useful if the isTruncated entry in the response body of the previous GET call indicates that the number of media feed instances exceeds the pageSize.

This parameter is only required if you need more elements in the paged list than the pageSize (100).

pageSize int optional

The maximum number of media feed instances that can be contained in the response body. This defaults to the maximum allowed page size (100).

______________________________________________________________

Request Example

The example request parameters and headers are set as follows:

  • marker value is set to the [PagedList].[NextMarker] property value from the previous BSN.cloud API response.

  • pageSize is set to 1

  • filter is set to [Name] BEGINS WITH 'Oct'

  • sort is set to [LastModifiedDate] DESC

Code Block
GET /2022/06/REST/Feeds/Media/?marker=OAb21dyge433&pageSize=1&filter=%5BName%5D%20BEGINS%20WITH%20%27Oct%27&sort=%5BLastModifiedDate%5D%20DESC HTTP/1.1
Host: api.bsn.cloud
Connection: Keep-Alive
Authorization: Bearer {{UserAccessToken}}
Accept: application/json, application/vnd.bsn.error+json
Accept-Encoding: gzip,deflate

______________________________________________________________

Response

Success Response Body

200: Returns apaged list of Live Media Feed Entity instances on a network. This will return not more than 100 entities along with the information necessary to return any other remaining pages.

Example

Code Block
languagejson
{
  "items": [
    {
      "id": 12345678,
      "name": "Oct2023_LMF_2",
      "ttl": "00:01:00",
      "physicalPath": "https://bsncloud.s3.amazonaws.com/JaneDoeTesting/1903005a2e7c4255f162ca068eb925b6",
      "fileSize": 842,
      "fileHash": "SHA1:7DED344401FA3D60E33987B0B792EDE2A4583180",
      "creationDate": "2023-10-25T18:31:55.037Z",
      "lastModifiedDate": "2023-10-25T18:31:55.153Z",
      "content": null,
      "permissions": [],
      "presentations": [
        {
         "id": 12345,
         "name": "All Set Presentation",
         "type": "Presentation",
         "link": null
        }
      ]
    }
  ],
  "totalItemCount": 3,
  "matchingItemCount": 3,
  "pageSize": 1,
  "nextMarker": "MjAyMy0xMC0yNVQxODozMTo1NS4xNTNaLDExNTAzNjQ1",
  "isTruncated": true,
  "sortExpression": "[LastModifiedDate] DESC",
  "filterExpression": "[Name] BEGINS WITH 'Oct'"
}

Failure

300: The requested representation could not be returned because it is ambiguous (there are multiple requested representations)

400: The request is malformed and therefore invalid

401: The access token is invalid or not specified

403: The supplied access token, though valid, doesn't provide access to this method 

406: The server cannot return the data representation that you requested (as specified in the "Accept" header)

5XX: Any 500 code is an internal server error

Endpoints:

Table of Contents
maxLevel2
indent20px
excludeEndpoints:


POST /

Creates a live media feed on a network

Required Scope

bsn.api.main.feeds.media.create

______________________________________________________________

Request Body 

The Live Media Feed Entity

______________________________________________________________

Request Example

The example request parameters and headers are set as follows:

Code Block
POST /2022/06/REST/Feeds/Media/ HTTP/1.1
Host: api.bsn.cloud
Connection: Keep-Alive
Authorization: Bearer {{UserAccessToken}}
Accept: application/json, application/vnd.bsn.error+json
Accept-Encoding: gzip,deflate
Content-Type: application/json
Content-Length: 414

This is the example request body:

Code Block
languagejson
{
  "id": 0,
  "name": "Main Screen Menu",
  "ttl": "00:05:00",
  "physicalPath": null,
  "fileSize": 0,
  "fileHash": null,
  "creationDate": "0001-01-01T00:00:00",
  "lastModifiedDate": "0001-01-01T00:00:00",
  "content": [
    {
      "contentId": 12345,
      "fileName": "Saturday Breakfast Menu.jpg",
      "title": "Breakfast Menu",
      "description": "Saturday Breakfast Menu (November 2023)",
      "disabled": false,
      "displayDuration": "00:00:15",
      "validityStartDate": "2023-11-11T08:00:00Z",
      "validityEndDate": "2023-11-11T12:00:00Z",
      "customFields": {
        "meal": "Breakfast"
      }
    }
  ],
  "permissions": [],
  "presentations": null
}

______________________________________________________________

Response

Success Response Body

201: Returns the Live Media Feed Entity created and referenced by the Uri (given by the Location header field) in the response. 

Example

Code Block
languagejson
{
  "id": 23456789,
  "name": "Main Screen Menu",
  "ttl": "00:05:00",
  "physicalPath": "https://bsncloud.s3.amazonaws.com/JaneDoeTesting/45ab34cb6a1827ad826562eb4e039d16",
  "fileSize": 350,
  "fileHash": "SHA1:ADD4E980482E239HCE4D6F9728999EBF838AB0CE",
  "creationDate": "2023-11-17T22:57:18.2028077Z",
  "lastModifiedDate": "2023-11-17T22:57:18.2028077Z",
  "content": [
    {
      "contentId": 12345,
      "fileName": "Saturday Breakfast Menu.jpg",
      "title": "Breakfast Menu",
      "description": "Saturday Breakfast Menu (November 2023)",
      "disabled": false,
      "displayDuration": "00:00:15",
      "validityStartDate": "2023-11-11T08:00:00Z",
      "validityEndDate": "2023-11-11T12:00:00Z",
      "customFields": {
        "meal": "Breakfast"
      }
    }
  ],
  "permissions": [],
  "presentations": []
}

Failure

300: The requested representation could not be returned because it is ambiguous (there are multiple requested representations)

400: The request or request body is malformed and therefore invalid, or it is rejected in accordance with the business rules

401: The access token is invalid or not specified

403: The supplied access token, though valid, doesn't provide access to this method 

406: The server cannot return the data representation that you requested (as specified in the "Accept" header)

415: The server cannot accept the data representation that you sent (as specified in the "Content-Type" header)

5XX: Any 500 code is an internal server error


DELETE /

Removes live media feed instances, specified by a filter, from a network. This allows multiple live media feed instances to be deleted at once.

Required Scope

bsn.api.main.feeds.media.delete

______________________________________________________________

Query String Parameter

filter string required 

An expression for filtering search results 

______________________________________________________________

Request Example

The example request parameters and headers are set as follows:

  • filter is set to [Name] ENDS WITH '3'

Code Block
DELETE /2022/06/REST/Feeds/Media/?filter=%5BName%5D%20ENDS%20WITH%20%273%27 HTTP/1.1
Host: api.bsn.cloud
Connection: Keep-Alive
Authorization: Bearer {{UserAccessToken}}
Accept: application/json, application/vnd.bsn.error+json
Accept-Encoding: gzip,deflate

______________________________________________________________

Response

Success Response Body

200: Returns the number of affected live media feeds as an integer value.

Failure

300: The requested representation could not be returned because it is ambiguous (there are multiple requested representations)

400: The request or request body is malformed and therefore invalid, or it is rejected in accordance with the business rules

401: The access token is invalid or not specified

403: The supplied access token, though valid, doesn't provide access to this method 

406: The server cannot return the data representation that you requested (as specified in the "Accept" header)

5XX: Any 500 code is an internal server error

GET /Count/ 

Returns the number of live media feeds on the network that match the specified filter criteria. If no filter is included, this call returns the total number of live media feeds on the network. 

Required Scope Token

bsn.api.main.feeds.media.retrieve

______________________________________________________________

Query String Parameter

filter string optional 

An expression for filtering search results. The default value is null.

______________________________________________________________

Request Example

The example request parameters and headers are set as follows:

  • filter is set to [Name] CONTAINS 'Oct'

Code Block
GET /2022/06/REST/Feeds/Media/Count/?filter=%20%5BName%5D%20CONTAINS%20%27Oct%27 HTTP/1.1
Host: api.bsn.cloud
Connection: Keep-Alive
Authorization: Bearer {{UserAccessToken}}
Accept: application/json, application/vnd.bsn.error+json
Accept-Encoding: gzip,deflate

______________________________________________________________

Response

Success Response Body

200: The number of live media feeds is returned as an integer value.

Failure

300: The requested representation could not be returned because it is ambiguous (there are multiple requested representations)

400: The request is malformed and therefore invalid

401: The access token is invalid or not specified

403: The supplied access token, though valid, doesn't provide access to this method 

406: The server cannot return the data representation that you requested (as specified in the "Accept" header)

5XX: Any 500 code is an internal server error

GET /{id:int}/

Returns the specified live media feeds instance

Required Scope Token

bsn.api.main.feeds.media.retrieve

______________________________________________________________

Segment

id int 

A unique identifier for the live media feed instance

______________________________________________________________

Request Example

The example request parameters and headers are set as follows:

  • id is set to 12345678

Code Block
GET /2022/06/REST/Feeds/Media/12345678/ HTTP/1.1
Host: api.bsn.cloud
Connection: Keep-Alive
Authorization: Bearer {{UserAccessToken}}
Accept: application/json, application/vnd.bsn.error+json
Accept-Encoding: gzip,deflate

______________________________________________________________

Response

Success Response with Body

200: Returns the Live Media Feed Entity

Success Response

304: The resource was not modified since the time specified in the “If-Modified-Since” header

Example

This is an example of a 200 level response:

Code Block
languagejson
{
  "id": 12345678,
  "name": "Oct2023_LMF_2",
  "ttl": "00:01:00",
  "physicalPath": "https://bsncloud.s3.amazonaws.com/JaneDoeTesting/1903005a2e7c4255f162ca068eb925b6",
  "fileSize": 842,
  "fileHash": "SHA1:7DED344483FB4D60E33987B0B792EDE2A4583180",
  "creationDate": "2023-10-25T18:31:55.037Z",
  "lastModifiedDate": "2023-10-25T18:31:55.153Z",
  "content": [
    {
      "contentId": 911345,
      "fileName": "ProfilePhoto.png",
      "title": "ProfilePhoto.png",
      "description": "",
      "disabled": false,
      "displayDuration": "00:00:06",
      "validityStartDate": null,
      "validityEndDate": null,
      "customFields": {}
    }
  ],
  "permissions": [],
  "presentations": []
}

Failure

300: The requested representation could not be returned because it is ambiguous (there are multiple requested representations)

400: The request is malformed and therefore invalid

401: The access token is invalid or not specified

403: The supplied access token, though valid, doesn't provide access to this method 

404: The server cannot find the requested resource (the path does not exist)

406: The server cannot return the data representation that you requested (as specified in the "Accept" header)

5XX: Any 500 code is an internal server error

PUT /{id:int}/ 

Modifies the specified live media feed instance

Required Scope Token

bsn.api.main.feeds.media.update

______________________________________________________________

Segment

id int 

A unique identifier for the live media feed instance

______________________________________________________________

Request Body

The Live Media Feed Entity

______________________________________________________________

Request Example

The example request parameters and headers are set as follows:

  • id is set to 12345678

Code Block
PUT /2022/06/REST/Feeds/Media/12345678/ HTTP/1.1
Host: api.bsn.cloud
Connection: Keep-Alive
Authorization: Bearer {{UserAccessToken}}
Accept: application/json, application/vnd.bsn.error+json
Accept-Encoding: gzip,deflate
Content-Type: application/json
Content-Length: 709

This is the example request body:

Code Block
languagejson
{
  "id": 12345678,
  "name": "Oct2023_LMF_2",
  "ttl": "00:01:00",
  "physicalPath": null,
  "fileSize": 0,
  "fileHash": null,
  "creationDate": "0001-01-01T00:00:00",
  "lastModifiedDate": "0001-01-01T00:00:00",
  "content": [
    {
      "contentId": 911345,
      "fileName": "ProfilePhoto.png",
      "title": "ProfilePhoto.png",
      "description": "",
      "disabled": false,
      "displayDuration": "00:00:06",
      "validityStartDate": null,
      "validityEndDate": null,
      "customFields": {
        "customField1": ""
      }
    }
  ],
  "permissions": [],
  "presentations": null
}

______________________________________________________________

Response

Success

204: The specified live media feed instance has been updated on the network 

Failure

300: The requested representation could not be returned because it is ambiguous (there are multiple requested representations)

400: The request or request body is malformed and therefore invalid, or it is rejected in accordance with the business rules

401: The access token is invalid or not specified

403: The supplied access token, though valid, doesn't provide access to this method 

404: The server cannot find the requested resource (the path does not exist)

406: The server cannot return the data representation that you requested (as specified in the "Accept" header)

412: Precondition failed (the resource changed since the time specified in the “If-Unmodified-Since” header value)

415: The server cannot accept the data representation that you sent (as specified in the "Content-Type" header)

5XX: Any 500 code is an internal server error

DELETE /{id:int}/ 

Removes the specified live media feed instance

Required Scope Token

bsn.api.main.feeds.media.delete

______________________________________________________________

Segment

id int

A unique identifier for the live media feed instance to delete

______________________________________________________________

Request Example

The example request parameters and headers are set as follows:

  • id is set to 11475023

Code Block
DELETE /2022/06/REST/Feeds/Media/11475023/ HTTP/1.1
Host: api.bsn.cloud
Connection: Keep-Alive
Authorization: Bearer {{UserAccessToken}}
Accept: application/json, application/vnd.bsn.error+json
Accept-Encoding: gzip,deflate

______________________________________________________________

Response

Success

204: The specified live media feed instance has been removed

Failure

300: The requested representation could not be returned because it is ambiguous (there are multiple requested representations)

400: The request or request body is malformed and therefore invalid, or it is rejected in accordance with the business rules

401: The access token is invalid or not specified

403: The supplied access token, though valid, doesn't provide access to this method 

404: The server cannot find the requested resource (the path does not exist)

406: The server cannot return the data representation that you requested (as specified in the "Accept" header)

412: Precondition failed (the resource changed since the time specified in the “If-Unmodified-Since” header value)

5XX: Any 500 code is an internal server error

GET /{name}/ 

Returns the specified live media feeds instance

Required Scope Token

bsn.api.main.feeds.media.retrieve

______________________________________________________________

Segment

name string

The name of the live media feed instance

______________________________________________________________

Request Example

The example request parameters and headers are set as follows:

  • name is set to Oct2023_LMF_2

Code Block
GET /2022/06/REST/Feeds/Media/Oct2023_LMF_2/ HTTP/1.1
Host: api.bsn.cloud
Connection: Keep-Alive
Authorization: Bearer {{UserAccessToken}}
Accept: application/json, application/vnd.bsn.error+json
Accept-Encoding: gzip,deflate

______________________________________________________________

Response

Success Response with Body

200: Returns the Live Media Feed Entity

Success Response

304: The resource was not modified since the time specified in the “If-Modified-Since” header

Example

This is an example of a 200 level response:

Code Block
languagejson
{
  "id": 12345678,
  "name": "Oct2023_LMF_2",
  "ttl": "00:01:00",
  "physicalPath": "https://bsncloud.s3.amazonaws.com/JaneDoeTesting/1903005a2e7c4255f162ca068eb925b6",
  "fileSize": 842,
  "fileHash": "SHA1:7DEB144483FA3D60E33987B0B792EDE2A4583180",
  "creationDate": "2023-10-25T18:31:55.037Z",
  "lastModifiedDate": "2023-10-25T18:31:55.153Z",
  "content": [
    {
      "contentId": 911345,
      "fileName": "ProfilePhoto.png",
      "title": "ProfilePhoto.png",
      "description": "",
      "disabled": false,
      "displayDuration": "00:00:06",
      "validityStartDate": null,
      "validityEndDate": null,
      "customFields": {}
    }
  ],
  "permissions": [],
  "presentations": []
}

Failure

300: The requested representation could not be returned because it is ambiguous (there are multiple requested representations)

400: The request is malformed and therefore invalid

401: The access token is invalid or not specified

403: The supplied access token, though valid, doesn't provide access to this method 

404: The server cannot find the requested resource (the path does not exist)

406: The server cannot return the data representation that you requested (as specified in the "Accept" header)

5XX: Any 500 code is an internal server error

PUT /{name}/ 

Modifies the specified live media feed instance

Required Scope Token

bsn.api.main.feeds.media.update

______________________________________________________________

Segment

name string

The name of the live media feed instance

______________________________________________________________

Request Body

The Live Media Feed Entity

______________________________________________________________

Request Example

The example request parameters and headers are set as follows:

  • id is set to Oct2023_LMF_2

Code Block
PUT /2022/06/REST/Feeds/Media/Oct2023_LMF_2/ HTTP/1.1
Host: api.bsn.cloud
Connection: Keep-Alive
Authorization: Bearer {{UserAccessToken}}
Accept: application/json, application/vnd.bsn.error+json
Accept-Encoding: gzip,deflate
Content-Type: application/json
Content-Length: 709

This is the example request body:

Code Block
languagejson
{
  "id": 12345678,
  "name": "Oct2023_LMF_2",
  "ttl": "00:01:00",
  "physicalPath": null,
  "fileSize": 0,
  "fileHash": null,
  "creationDate": "0001-01-01T00:00:00",
  "lastModifiedDate": "0001-01-01T00:00:00",
  "content": [
    {
      "contentId": 911345,
      "fileName": "ProfilePhoto.png",
      "title": "ProfilePhoto.png",
      "description": "",
      "disabled": false,
      "displayDuration": "00:00:06",
      "validityStartDate": null,
      "validityEndDate": null,
      "customFields": {
        "customField1": ""
      }
    }
  ],
  "permissions": [],
  "presentations": null
}

______________________________________________________________

Response

Success

204: The specified live media feed instance has been updated on the network 

Failure

300: The requested representation could not be returned because it is ambiguous (there are multiple requested representations)

400: The request or request body is malformed and therefore invalid, or it is rejected in accordance with the business rules

401: The access token is invalid or not specified

403: The supplied access token, though valid, doesn't provide access to this method 

404: The server cannot find the requested resource (the path does not exist)

406: The server cannot return the data representation that you requested (as specified in the "Accept" header)

412: Precondition failed (the resource changed since the time specified in the “If-Unmodified-Since” header value)

415: The server cannot accept the data representation that you sent (as specified in the "Content-Type" header)

5XX: Any 500 code is an internal server error

DELETE /{name}/ 

Removes the specified live media feed instance

Required Scope Token

bsn.api.main.feeds.media.delete

______________________________________________________________

Segment

name string

The name of the live media feed instance to delete

______________________________________________________________

Request Example

The example request parameters and headers are set as follows:

  • id is set to Oct2023_LMF_2

Code Block
DELETE /2022/06/REST/Feeds/Media/Oct2023_LMF_2/ HTTP/1.1
Host: api.bsn.cloud
Connection: Keep-Alive
Authorization: Bearer {{UserAccessToken}}
Accept: application/json, application/vnd.bsn.error+json
Accept-Encoding: gzip,deflate

______________________________________________________________

Response

Success

204: The specified live media feed instance has been removed

Failure

300: The requested representation could not be returned because it is ambiguous (there are multiple requested representations)

400: The request or request body is malformed and therefore invalid, or it is rejected in accordance with the business rules

401: The access token is invalid or not specified

403: The supplied access token, though valid, doesn't provide access to this method 

404: The server cannot find the requested resource (the path does not exist)

406: The server cannot return the data representation that you requested (as specified in the "Accept" header)

412: Precondition failed (the resource changed since the time specified in the “If-Unmodified-Since” header value)

5XX: Any 500 code is an internal server error

GET /Operations/ 

Returns operational permissions granted to roles for specific business operations

Required Scope Token

bsn.api.main.operations.retrieve

______________________________________________________________

Request Example

The example request parameters and headers are set as follows:

Code Block
GET /2022/06/REST/Feeds/Media/Operations/ HTTP/1.1
Host: api.bsn.cloud
Connection: Keep-Alive
Authorization: Bearer {{UserAccessToken}}
Accept: application/json, application/vnd.bsn.error+json
Accept-Encoding: gzip,deflate

______________________________________________________________

Response

Success Response Body

200: Returns theBusiness Operations Entity

Example

Expand
titleExpand to see response information:
Code Block
languagejson
{
   "uid": "4871f4d5-f78b-4c41-ab27-26391c40001a",
   "singularName": "Full Control",
   "pluralName": "Live Media Feed (Full Control)",
   "fullName": "Live Media Feed (Full Control)",
   "targetEntity": "LiveMediaFeed",
   "appliance": "Instance, Collection",
   "parent": null,
   "descendants":    [
            {
         "uid": "21529c26-0df7-4f25-8cd1-9156dffc9db6",
         "singularName": "View Live Media Feed",
         "pluralName": "View Live Media Feeds",
         "fullName": "Live Media Feed (Full Control) - View Live Media Feeds",
         "targetEntity": "LiveMediaFeed",
         "appliance": "Instance, Collection",
         "parent":          {
            "uid": "4871f4d5-f78b-4c41-ab27-26391c40001a",
            "singularName": "Full Control",
            "pluralName": "Live Media Feed (Full Control)",
            "fullName": "Live Media Feed (Full Control)",
            "targetEntity": "LiveMediaFeed",
            "appliance": "Instance, Collection",
            "parent": null,
            "descendants": null,
            "permissions": null
         },
         "descendants": [],
         "permissions":          [
                        {
               "entityId": null,
               "operationUID": "21529c26-0df7-4f25-8cd1-9156dffc9db6",
               "principal":                {
                  "name": "Network Managers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 5
               },
               "isFixed": true,
               "isInherited": false,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:47.327Z"
            },
                        {
               "entityId": null,
               "operationUID": "21529c26-0df7-4f25-8cd1-9156dffc9db6",
               "principal":                {
                  "name": "Viewers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 6
               },
               "isFixed": true,
               "isInherited": false,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:47.783Z"
            },
                        {
               "entityId": null,
               "operationUID": "21529c26-0df7-4f25-8cd1-9156dffc9db6",
               "principal":                {
                  "name": "Administrators",
                  "isCustom": false,
                  "type": "Role",
                  "id": 1
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:45.893Z"
            },
                        {
               "entityId": null,
               "operationUID": "21529c26-0df7-4f25-8cd1-9156dffc9db6",
               "principal":                {
                  "name": "General Managers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 2
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:46.18Z"
            },
                        {
               "entityId": null,
               "operationUID": "21529c26-0df7-4f25-8cd1-9156dffc9db6",
               "principal":                {
                  "name": "Creators",
                  "isCustom": false,
                  "type": "Role",
                  "id": 3
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:46.447Z"
            },
                        {
               "entityId": null,
               "operationUID": "21529c26-0df7-4f25-8cd1-9156dffc9db6",
               "principal":                {
                  "name": "Publishers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 4
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:46.75Z"
            },
                        {
               "entityId": null,
               "operationUID": "21529c26-0df7-4f25-8cd1-9156dffc9db6",
               "principal":                {
                  "name": "Custom",
                  "isCustom": true,
                  "type": "Role",
                  "id": 10498
               },
               "isFixed": false,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2023-10-24T21:50:01.73Z"
            }
         ]
      },
            {
         "uid": "6342cb21-6a12-410a-b957-adf22aec3c85",
         "singularName": "View Contents",
         "pluralName": "View Contents",
         "fullName": "Live Media Feed (Full Control) - View Contents",
         "targetEntity": "LiveMediaFeed",
         "appliance": "Instance, Collection",
         "parent":          {
            "uid": "4871f4d5-f78b-4c41-ab27-26391c40001a",
            "singularName": "Full Control",
            "pluralName": "Live Media Feed (Full Control)",
            "fullName": "Live Media Feed (Full Control)",
            "targetEntity": "LiveMediaFeed",
            "appliance": "Instance, Collection",
            "parent": null,
            "descendants": null,
            "permissions": null
         },
         "descendants": [],
         "permissions":          [
                        {
               "entityId": null,
               "operationUID": "6342cb21-6a12-410a-b957-adf22aec3c85",
               "principal":                {
                  "name": "Viewers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 6
               },
               "isFixed": true,
               "isInherited": false,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:47.793Z"
            },
                        {
               "entityId": null,
               "operationUID": "6342cb21-6a12-410a-b957-adf22aec3c85",
               "principal":                {
                  "name": "Administrators",
                  "isCustom": false,
                  "type": "Role",
                  "id": 1
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:45.893Z"
            },
                        {
               "entityId": null,
               "operationUID": "6342cb21-6a12-410a-b957-adf22aec3c85",
               "principal":                {
                  "name": "General Managers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 2
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:46.18Z"
            },
                        {
               "entityId": null,
               "operationUID": "6342cb21-6a12-410a-b957-adf22aec3c85",
               "principal":                {
                  "name": "Creators",
                  "isCustom": false,
                  "type": "Role",
                  "id": 3
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:46.447Z"
            },
                        {
               "entityId": null,
               "operationUID": "6342cb21-6a12-410a-b957-adf22aec3c85",
               "principal":                {
                  "name": "Publishers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 4
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:46.75Z"
            },
                        {
               "entityId": null,
               "operationUID": "6342cb21-6a12-410a-b957-adf22aec3c85",
               "principal":                {
                  "name": "Network Managers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 5
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:47.317Z"
            },
                        {
               "entityId": null,
               "operationUID": "6342cb21-6a12-410a-b957-adf22aec3c85",
               "principal":                {
                  "name": "Custom",
                  "isCustom": true,
                  "type": "Role",
                  "id": 10498
               },
               "isFixed": false,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2023-10-24T21:50:01.73Z"
            }
         ]
      },
            {
         "uid": "9cd07413-c9b3-43c9-bdb1-7c7c01dcd4fe",
         "singularName": "Create Live Media Feed",
         "pluralName": "Create Live Media Feed",
         "fullName": "Live Media Feed (Full Control) - Create Live Media Feed",
         "targetEntity": "LiveMediaFeed",
         "appliance": "Collection",
         "parent":          {
            "uid": "4871f4d5-f78b-4c41-ab27-26391c40001a",
            "singularName": "Full Control",
            "pluralName": "Live Media Feed (Full Control)",
            "fullName": "Live Media Feed (Full Control)",
            "targetEntity": "LiveMediaFeed",
            "appliance": "Instance, Collection",
            "parent": null,
            "descendants": null,
            "permissions": null
         },
         "descendants": [],
         "permissions":          [
                        {
               "entityId": null,
               "operationUID": "9cd07413-c9b3-43c9-bdb1-7c7c01dcd4fe",
               "principal":                {
                  "name": "Administrators",
                  "isCustom": false,
                  "type": "Role",
                  "id": 1
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:45.893Z"
            },
                        {
               "entityId": null,
               "operationUID": "9cd07413-c9b3-43c9-bdb1-7c7c01dcd4fe",
               "principal":                {
                  "name": "General Managers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 2
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:46.18Z"
            },
                        {
               "entityId": null,
               "operationUID": "9cd07413-c9b3-43c9-bdb1-7c7c01dcd4fe",
               "principal":                {
                  "name": "Creators",
                  "isCustom": false,
                  "type": "Role",
                  "id": 3
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:46.447Z"
            },
                        {
               "entityId": null,
               "operationUID": "9cd07413-c9b3-43c9-bdb1-7c7c01dcd4fe",
               "principal":                {
                  "name": "Publishers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 4
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:46.75Z"
            },
                        {
               "entityId": null,
               "operationUID": "9cd07413-c9b3-43c9-bdb1-7c7c01dcd4fe",
               "principal":                {
                  "name": "Network Managers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 5
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:47.317Z"
            },
                        {
               "entityId": null,
               "operationUID": "9cd07413-c9b3-43c9-bdb1-7c7c01dcd4fe",
               "principal":                {
                  "name": "Viewers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 6
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:47.77Z"
            },
                        {
               "entityId": null,
               "operationUID": "9cd07413-c9b3-43c9-bdb1-7c7c01dcd4fe",
               "principal":                {
                  "name": "Custom",
                  "isCustom": true,
                  "type": "Role",
                  "id": 10498
               },
               "isFixed": false,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2023-10-24T21:50:01.73Z"
            }
         ]
      },
            {
         "uid": "cd97ae27-1335-4516-b8d8-f09411186df9",
         "singularName": "Rename Live Media Feed",
         "pluralName": "Rename Live Media Feed",
         "fullName": "Live Media Feed (Full Control) - Rename Live Media Feed",
         "targetEntity": "LiveMediaFeed",
         "appliance": "Instance, Collection",
         "parent":          {
            "uid": "4871f4d5-f78b-4c41-ab27-26391c40001a",
            "singularName": "Full Control",
            "pluralName": "Live Media Feed (Full Control)",
            "fullName": "Live Media Feed (Full Control)",
            "targetEntity": "LiveMediaFeed",
            "appliance": "Instance, Collection",
            "parent": null,
            "descendants": null,
            "permissions": null
         },
         "descendants": [],
         "permissions":          [
                        {
               "entityId": null,
               "operationUID": "cd97ae27-1335-4516-b8d8-f09411186df9",
               "principal":                {
                  "name": "Administrators",
                  "isCustom": false,
                  "type": "Role",
                  "id": 1
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:45.893Z"
            },
                        {
               "entityId": null,
               "operationUID": "cd97ae27-1335-4516-b8d8-f09411186df9",
               "principal":                {
                  "name": "General Managers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 2
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:46.18Z"
            },
                        {
               "entityId": null,
               "operationUID": "cd97ae27-1335-4516-b8d8-f09411186df9",
               "principal":                {
                  "name": "Creators",
                  "isCustom": false,
                  "type": "Role",
                  "id": 3
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:46.447Z"
            },
                        {
               "entityId": null,
               "operationUID": "cd97ae27-1335-4516-b8d8-f09411186df9",
               "principal":                {
                  "name": "Publishers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 4
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:46.75Z"
            },
                        {
               "entityId": null,
               "operationUID": "cd97ae27-1335-4516-b8d8-f09411186df9",
               "principal":                {
                  "name": "Network Managers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 5
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:47.317Z"
            },
                        {
               "entityId": null,
               "operationUID": "cd97ae27-1335-4516-b8d8-f09411186df9",
               "principal":                {
                  "name": "Viewers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 6
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:47.77Z"
            },
                        {
               "entityId": null,
               "operationUID": "cd97ae27-1335-4516-b8d8-f09411186df9",
               "principal":                {
                  "name": "Custom",
                  "isCustom": true,
                  "type": "Role",
                  "id": 10498
               },
               "isFixed": false,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2023-10-24T21:50:01.73Z"
            }
         ]
      },
            {
         "uid": "b3eb9da2-b32a-473b-8b74-aa2bcb32199e",
         "singularName": "Update Live Media Feed",
         "pluralName": "Update Live Media Feed",
         "fullName": "Live Media Feed (Full Control) - Update Live Media Feed",
         "targetEntity": "LiveMediaFeed",
         "appliance": "Instance, Collection",
         "parent":          {
            "uid": "4871f4d5-f78b-4c41-ab27-26391c40001a",
            "singularName": "Full Control",
            "pluralName": "Live Media Feed (Full Control)",
            "fullName": "Live Media Feed (Full Control)",
            "targetEntity": "LiveMediaFeed",
            "appliance": "Instance, Collection",
            "parent": null,
            "descendants": null,
            "permissions": null
         },
         "descendants": [],
         "permissions":          [
                        {
               "entityId": null,
               "operationUID": "b3eb9da2-b32a-473b-8b74-aa2bcb32199e",
               "principal":                {
                  "name": "Administrators",
                  "isCustom": false,
                  "type": "Role",
                  "id": 1
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:45.893Z"
            },
                        {
               "entityId": null,
               "operationUID": "b3eb9da2-b32a-473b-8b74-aa2bcb32199e",
               "principal":                {
                  "name": "General Managers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 2
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:46.18Z"
            },
                        {
               "entityId": null,
               "operationUID": "b3eb9da2-b32a-473b-8b74-aa2bcb32199e",
               "principal":                {
                  "name": "Creators",
                  "isCustom": false,
                  "type": "Role",
                  "id": 3
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:46.447Z"
            },
                        {
               "entityId": null,
               "operationUID": "b3eb9da2-b32a-473b-8b74-aa2bcb32199e",
               "principal":                {
                  "name": "Publishers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 4
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:46.75Z"
            },
                        {
               "entityId": null,
               "operationUID": "b3eb9da2-b32a-473b-8b74-aa2bcb32199e",
               "principal":                {
                  "name": "Network Managers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 5
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:47.317Z"
            },
                        {
               "entityId": null,
               "operationUID": "b3eb9da2-b32a-473b-8b74-aa2bcb32199e",
               "principal":                {
                  "name": "Viewers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 6
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:47.77Z"
            },
                        {
               "entityId": null,
               "operationUID": "b3eb9da2-b32a-473b-8b74-aa2bcb32199e",
               "principal":                {
                  "name": "Custom",
                  "isCustom": true,
                  "type": "Role",
                  "id": 10498
               },
               "isFixed": false,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2023-10-24T21:50:01.73Z"
            }
         ]
      },
            {
         "uid": "f54db9df-41c9-41a9-8735-c2d909f12450",
         "singularName": "Assign Live Media Feed",
         "pluralName": "Assign Live Media Feed",
         "fullName": "Live Media Feed (Full Control) - Assign Live Media Feed",
         "targetEntity": "LiveMediaFeed",
         "appliance": "Instance, Collection",
         "parent":          {
            "uid": "4871f4d5-f78b-4c41-ab27-26391c40001a",
            "singularName": "Full Control",
            "pluralName": "Live Media Feed (Full Control)",
            "fullName": "Live Media Feed (Full Control)",
            "targetEntity": "LiveMediaFeed",
            "appliance": "Instance, Collection",
            "parent": null,
            "descendants": null,
            "permissions": null
         },
         "descendants": [],
         "permissions":          [
                        {
               "entityId": null,
               "operationUID": "f54db9df-41c9-41a9-8735-c2d909f12450",
               "principal":                {
                  "name": "Administrators",
                  "isCustom": false,
                  "type": "Role",
                  "id": 1
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:45.893Z"
            },
                        {
               "entityId": null,
               "operationUID": "f54db9df-41c9-41a9-8735-c2d909f12450",
               "principal":                {
                  "name": "General Managers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 2
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:46.18Z"
            },
                        {
               "entityId": null,
               "operationUID": "f54db9df-41c9-41a9-8735-c2d909f12450",
               "principal":                {
                  "name": "Creators",
                  "isCustom": false,
                  "type": "Role",
                  "id": 3
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:46.447Z"
            },
                        {
               "entityId": null,
               "operationUID": "f54db9df-41c9-41a9-8735-c2d909f12450",
               "principal":                {
                  "name": "Publishers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 4
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:46.75Z"
            },
                        {
               "entityId": null,
               "operationUID": "f54db9df-41c9-41a9-8735-c2d909f12450",
               "principal":                {
                  "name": "Network Managers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 5
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:47.317Z"
            },
                        {
               "entityId": null,
               "operationUID": "f54db9df-41c9-41a9-8735-c2d909f12450",
               "principal":                {
                  "name": "Viewers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 6
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:47.77Z"
            },
                        {
               "entityId": null,
               "operationUID": "f54db9df-41c9-41a9-8735-c2d909f12450",
               "principal":                {
                  "name": "Custom",
                  "isCustom": true,
                  "type": "Role",
                  "id": 10498
               },
               "isFixed": false,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2023-10-24T21:50:01.73Z"
            }
         ]
      },
            {
         "uid": "a2134e6b-9e70-40e8-88bd-e1a702197b53",
         "singularName": "Unassign Live Media Feed",
         "pluralName": "Unassign Live Media Feed",
         "fullName": "Live Media Feed (Full Control) - Unassign Live Media Feed",
         "targetEntity": "LiveMediaFeed",
         "appliance": "Instance, Collection",
         "parent":          {
            "uid": "4871f4d5-f78b-4c41-ab27-26391c40001a",
            "singularName": "Full Control",
            "pluralName": "Live Media Feed (Full Control)",
            "fullName": "Live Media Feed (Full Control)",
            "targetEntity": "LiveMediaFeed",
            "appliance": "Instance, Collection",
            "parent": null,
            "descendants": null,
            "permissions": null
         },
         "descendants": [],
         "permissions":          [
                        {
               "entityId": null,
               "operationUID": "a2134e6b-9e70-40e8-88bd-e1a702197b53",
               "principal":                {
                  "name": "Administrators",
                  "isCustom": false,
                  "type": "Role",
                  "id": 1
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:45.893Z"
            },
                        {
               "entityId": null,
               "operationUID": "a2134e6b-9e70-40e8-88bd-e1a702197b53",
               "principal":                {
                  "name": "General Managers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 2
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:46.18Z"
            },
                        {
               "entityId": null,
               "operationUID": "a2134e6b-9e70-40e8-88bd-e1a702197b53",
               "principal":                {
                  "name": "Creators",
                  "isCustom": false,
                  "type": "Role",
                  "id": 3
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:46.447Z"
            },
                        {
               "entityId": null,
               "operationUID": "a2134e6b-9e70-40e8-88bd-e1a702197b53",
               "principal":                {
                  "name": "Publishers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 4
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:46.75Z"
            },
                        {
               "entityId": null,
               "operationUID": "a2134e6b-9e70-40e8-88bd-e1a702197b53",
               "principal":                {
                  "name": "Network Managers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 5
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:47.317Z"
            },
                        {
               "entityId": null,
               "operationUID": "a2134e6b-9e70-40e8-88bd-e1a702197b53",
               "principal":                {
                  "name": "Viewers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 6
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:47.77Z"
            },
                        {
               "entityId": null,
               "operationUID": "a2134e6b-9e70-40e8-88bd-e1a702197b53",
               "principal":                {
                  "name": "Custom",
                  "isCustom": true,
                  "type": "Role",
                  "id": 10498
               },
               "isFixed": false,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2023-10-24T21:50:01.73Z"
            }
         ]
      },
            {
         "uid": "a153fc6a-7185-42e4-9f95-6bc31b5fe1f0",
         "singularName": "Edit Permissions",
         "pluralName": "Edit Permissions",
         "fullName": "Live Media Feed (Full Control) - Edit Permissions",
         "targetEntity": "LiveMediaFeed",
         "appliance": "Collection",
         "parent":          {
            "uid": "4871f4d5-f78b-4c41-ab27-26391c40001a",
            "singularName": "Full Control",
            "pluralName": "Live Media Feed (Full Control)",
            "fullName": "Live Media Feed (Full Control)",
            "targetEntity": "LiveMediaFeed",
            "appliance": "Instance, Collection",
            "parent": null,
            "descendants": null,
            "permissions": null
         },
         "descendants": [],
         "permissions":          [
                        {
               "entityId": null,
               "operationUID": "a153fc6a-7185-42e4-9f95-6bc31b5fe1f0",
               "principal":                {
                  "name": "Administrators",
                  "isCustom": false,
                  "type": "Role",
                  "id": 1
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:45.893Z"
            },
                        {
               "entityId": null,
               "operationUID": "a153fc6a-7185-42e4-9f95-6bc31b5fe1f0",
               "principal":                {
                  "name": "General Managers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 2
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:46.18Z"
            },
                        {
               "entityId": null,
               "operationUID": "a153fc6a-7185-42e4-9f95-6bc31b5fe1f0",
               "principal":                {
                  "name": "Creators",
                  "isCustom": false,
                  "type": "Role",
                  "id": 3
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:46.447Z"
            },
                        {
               "entityId": null,
               "operationUID": "a153fc6a-7185-42e4-9f95-6bc31b5fe1f0",
               "principal":                {
                  "name": "Publishers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 4
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:46.75Z"
            },
                        {
               "entityId": null,
               "operationUID": "a153fc6a-7185-42e4-9f95-6bc31b5fe1f0",
               "principal":                {
                  "name": "Network Managers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 5
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:47.317Z"
            },
                        {
               "entityId": null,
               "operationUID": "a153fc6a-7185-42e4-9f95-6bc31b5fe1f0",
               "principal":                {
                  "name": "Viewers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 6
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:47.77Z"
            },
                        {
               "entityId": null,
               "operationUID": "a153fc6a-7185-42e4-9f95-6bc31b5fe1f0",
               "principal":                {
                  "name": "Custom",
                  "isCustom": true,
                  "type": "Role",
                  "id": 10498
               },
               "isFixed": false,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2023-10-24T21:50:01.73Z"
            }
         ]
      },
            {
         "uid": "551fb25f-b467-4211-8dd6-f9ffffb1e47f",
         "singularName": "Delete Live Media Feed",
         "pluralName": "Delete Live Media Feed",
         "fullName": "Live Media Feed (Full Control) - Delete Live Media Feed",
         "targetEntity": "LiveMediaFeed",
         "appliance": "Instance, Collection",
         "parent":          {
            "uid": "4871f4d5-f78b-4c41-ab27-26391c40001a",
            "singularName": "Full Control",
            "pluralName": "Live Media Feed (Full Control)",
            "fullName": "Live Media Feed (Full Control)",
            "targetEntity": "LiveMediaFeed",
            "appliance": "Instance, Collection",
            "parent": null,
            "descendants": null,
            "permissions": null
         },
         "descendants": [],
         "permissions":          [
                        {
               "entityId": null,
               "operationUID": "551fb25f-b467-4211-8dd6-f9ffffb1e47f",
               "principal":                {
                  "name": "Network Managers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 5
               },
               "isFixed": true,
               "isInherited": false,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:47.337Z"
            },
                        {
               "entityId": null,
               "operationUID": "551fb25f-b467-4211-8dd6-f9ffffb1e47f",
               "principal":                {
                  "name": "Administrators",
                  "isCustom": false,
                  "type": "Role",
                  "id": 1
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:45.893Z"
            },
                        {
               "entityId": null,
               "operationUID": "551fb25f-b467-4211-8dd6-f9ffffb1e47f",
               "principal":                {
                  "name": "General Managers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 2
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:46.18Z"
            },
                        {
               "entityId": null,
               "operationUID": "551fb25f-b467-4211-8dd6-f9ffffb1e47f",
               "principal":                {
                  "name": "Creators",
                  "isCustom": false,
                  "type": "Role",
                  "id": 3
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:46.447Z"
            },
                        {
               "entityId": null,
               "operationUID": "551fb25f-b467-4211-8dd6-f9ffffb1e47f",
               "principal":                {
                  "name": "Publishers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 4
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:46.75Z"
            },
                        {
               "entityId": null,
               "operationUID": "551fb25f-b467-4211-8dd6-f9ffffb1e47f",
               "principal":                {
                  "name": "Viewers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 6
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:47.77Z"
            },
                        {
               "entityId": null,
               "operationUID": "551fb25f-b467-4211-8dd6-f9ffffb1e47f",
               "principal":                {
                  "name": "Custom",
                  "isCustom": true,
                  "type": "Role",
                  "id": 10498
               },
               "isFixed": false,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2023-10-24T21:50:01.73Z"
            }
         ]
      }
   ],
   "permissions":    [
            {
         "entityId": null,
         "operationUID": "4871f4d5-f78b-4c41-ab27-26391c40001a",
         "principal":          {
            "name": "Administrators",
            "isCustom": false,
            "type": "Role",
            "id": 1
         },
         "isFixed": true,
         "isInherited": false,
         "isAllowed": true,
         "creationDate": "2020-08-17T20:49:45.893Z"
      },
            {
         "entityId": null,
         "operationUID": "4871f4d5-f78b-4c41-ab27-26391c40001a",
         "principal":          {
            "name": "General Managers",
            "isCustom": false,
            "type": "Role",
            "id": 2
         },
         "isFixed": true,
         "isInherited": false,
         "isAllowed": true,
         "creationDate": "2020-08-17T20:49:46.18Z"
      },
            {
         "entityId": null,
         "operationUID": "4871f4d5-f78b-4c41-ab27-26391c40001a",
         "principal":          {
            "name": "Creators",
            "isCustom": false,
            "type": "Role",
            "id": 3
         },
         "isFixed": true,
         "isInherited": false,
         "isAllowed": true,
         "creationDate": "2020-08-17T20:49:46.447Z"
      },
            {
         "entityId": null,
         "operationUID": "4871f4d5-f78b-4c41-ab27-26391c40001a",
         "principal":          {
            "name": "Publishers",
            "isCustom": false,
            "type": "Role",
            "id": 4
         },
         "isFixed": true,
         "isInherited": false,
         "isAllowed": false,
         "creationDate": "2020-08-17T20:49:46.75Z"
      },
            {
         "entityId": null,
         "operationUID": "4871f4d5-f78b-4c41-ab27-26391c40001a",
         "principal":          {
            "name": "Network Managers",
            "isCustom": false,
            "type": "Role",
            "id": 5
         },
         "isFixed": true,
         "isInherited": false,
         "isAllowed": false,
         "creationDate": "2020-08-17T20:49:47.317Z"
      },
            {
         "entityId": null,
         "operationUID": "4871f4d5-f78b-4c41-ab27-26391c40001a",
         "principal":          {
            "name": "Viewers",
            "isCustom": false,
            "type": "Role",
            "id": 6
         },
         "isFixed": true,
         "isInherited": false,
         "isAllowed": false,
         "creationDate": "2020-08-17T20:49:47.77Z"
      },
            {
         "entityId": null,
         "operationUID": "4871f4d5-f78b-4c41-ab27-26391c40001a",
         "principal":          {
            "name": "Custom",
            "isCustom": true,
            "type": "Role",
            "id": 10498
         },
         "isFixed": false,
         "isInherited": false,
         "isAllowed": true,
         "creationDate": "2023-10-24T21:50:01.73Z"
      }
   ]
}

Failure

300: The requested representation could not be returned because it is ambiguous (there are multiple requested representations)

400: The request is malformed and therefore invalid

401: The access token is invalid or not specified

403: The supplied access token, though valid, doesn't provide access to this method 

406: The server cannot return the data representation that you requested (as specified in the "Accept" header)

5XX: Any 500 code is an internal server error

GET /{id:int}/Permissions/ 

Includes object permissions for a given live media feed instance.

Required Scope Token

bsn.api.main.feeds.media.retrieve

______________________________________________________________

Segment

id int

A unique identifier for the live media feed instance

______________________________________________________________

Request Example

The example request parameters and headers are set as follows:

  • id is set to 12345678

Code Block
GET /2022/06/REST/Feeds/Media/12345678/Permissions/ HTTP/1.1
Host: api.bsn.cloud
Connection: Keep-Alive
Authorization: Bearer {{UserAccessToken}}
Accept: application/json, application/vnd.bsn.error+json
Accept-Encoding: gzip,deflate

______________________________________________________________

Response

Success Response Body

200: Returns an array of Permission entities 

Example

Code Block
languagejson
[
  {
    "entityId": 12345678,
    "operationUID": "4871f4d5-f78b-4c41-ab27-26391c40001a",
    "principal": {
      "login": "JaneDoe@brightsign.biz",
      "type": "User",
      "id": 10498
    },
    "isFixed": false,
    "isInherited": false,
    "isAllowed": true,
    "creationDate": "2023-10-25T22:17:24.28Z"
  },
  {
    "entityId": 12345678,
    "operationUID": "cd97ae27-1335-4516-b8d8-f09411186df9",
    "principal": {
      "name": "Custom",
      "isCustom": true,
      "type": "Role",
      "id": 10498
    },
    "isFixed": false,
    "isInherited": false,
    "isAllowed": false,
    "creationDate": "2023-10-27T18:48:11.053Z"
  }
]

Failure

300: The requested representation could not be returned because it is ambiguous (there are multiple requested representations)

400: The request is malformed and therefore invalid

401: The access token is invalid or not specified

403: The supplied access token, though valid, doesn't provide access to this method 

404: The server cannot find the requested resource (the path does not exist)

406: The server cannot return the data representation that you requested (as specified in the "Accept" header)

5XX: Any 500 code is an internal server error

POST /{id:int}/Permissions/ 

Adds permissions to live media feeds instance(s) with the specified id.

Required Scope Token

bsn.api.main.feeds.media.update

______________________________________________________________

Segment

id int

A unique identifier for the live media feed instance

______________________________________________________________

Request Body

An array of Permission entities

______________________________________________________________

Request Example

The example request parameters and headers are set as follows:

  • id is set to 12345678

Code Block
POST /2022/06/REST/Feeds/Media/12345678/Permissions/ HTTP/1.1
Host: api.bsn.cloud
Connection: Keep-Alive
Authorization: Bearer {{UserAccessToken}}
Accept: application/json, application/vnd.bsn.error+json
Accept-Encoding: gzip,deflate
Content-Type: application/json
Content-Length: 328

This is the example request body:

Code Block
languagejson
[
  {
    "entityId": 12345678,
    "operationUID": "4871f4d5-f78b-4c41-ab27-26391c40001a",
    "principal": {
      "name": "Custom",
      "isCustom": true,
      "type": "Role",
      "id": 10498
    },
    "isFixed": false,
    "isInherited": false,
    "isAllowed": true,
    "creationDate": "2023-10-25T22:17:24.28Z"
  }
]

______________________________________________________________

Response

Success

204: The specified permissions were successfully granted

Failure

400: The request or request body is malformed and therefore invalid, or it is rejected in accordance with the business rules

401: The access token is invalid or not specified

403: The supplied access token, though valid, doesn't provide access to this method 

404: The server cannot find the requested resource (the path does not exist)

415: The server cannot accept the data representation that you sent (as specified in the "Content-Type" header)

5XX: Any 500 code is an internal server error

DELETE /{id:int}/Permissions/ 

Removes permissions from the specified live media feed instance. 

Required Scope Token

bsn.api.main.feeds.media.update

______________________________________________________________

Segment

id int

A unique identifier for the live media feed instance

______________________________________________________________

Request Body

An array of Permission entities

______________________________________________________________

Request Example

The example request parameters and headers are set as follows:

  • id is set to 12345678

Code Block
DELETE /2022/06/REST/Feeds/Media/12345678/Permissions/ HTTP/1.1
Host: api.bsn.cloud
Connection: Keep-Alive
Authorization: Bearer {{UserAccessToken}}
Accept: application/json, application/vnd.bsn.error+json
Accept-Encoding: gzip,deflate
Content-Type: application/json
Content-Length: 328

This is the example request body:

Code Block
languagejson
[
  {
    "entityId": 12345678,
    "operationUID": "4871f4d5-f78b-4c41-ab27-26391c40001a",
    "principal": {
      "name": "Custom",
      "isCustom": true,
      "type": "Role",
      "id": 10498
    },
    "isFixed": false,
    "isInherited": false,
    "isAllowed": true,
    "creationDate": "2023-10-25T22:17:24.28Z"
  }
]

______________________________________________________________

Response

Success

204: The specified permissions were successfully deleted

Failure

300: The requested representation could not be returned because it is ambiguous (there are multiple requested representations)

400: The request or request body is malformed and therefore invalid, or it is rejected in accordance with the business rules

401: The access token is invalid or not specified

403: The supplied access token, though valid, doesn't provide access to this method 

404: The server cannot find the requested resource (the path does not exist)

406: The server cannot return the data representation that you requested (as specified in the "Accept" header)

5XX: Any 500 code is an internal server error

GET /{name}/Permissions/ 

Includes object permissions for a given live media feed instance.

Required Scope Token

bsn.api.main.feeds.media.retrieve

______________________________________________________________

Segment

name string

The name of the live media feed instance

______________________________________________________________

Request Example

The example request parameters and headers are set as follows:

  • name is set to Oct2023_LMF

Code Block
GET /2022/06/REST/Feeds/Media/Oct2023_LMF/Permissions/ HTTP/1.1
Host: api.bsn.cloud
Connection: Keep-Alive
Authorization: Bearer {{UserAccessToken}}
Accept: application/json, application/vnd.bsn.error+json
Accept-Encoding: gzip,deflate

______________________________________________________________

Response

Success Response Body

200: Returns an array of Permission entities 

Example

Code Block
languagejson
[
  {
    "entityId": 12345678,
    "operationUID": "4871f4d5-f78b-4c41-ab27-26391c40001a",
    "principal": {
      "login": "JaneDoe@brightsign.biz",
      "type": "User",
      "id": 10498
    },
    "isFixed": false,
    "isInherited": false,
    "isAllowed": true,
    "creationDate": "2023-10-25T22:17:24.28Z"
  },
  {
    "entityId": 12345678,
    "operationUID": "cd97ae27-1335-4516-b8d8-f09411186df9",
    "principal": {
      "name": "Custom",
      "isCustom": true,
      "type": "Role",
      "id": 10498
    },
    "isFixed": false,
    "isInherited": false,
    "isAllowed": false,
    "creationDate": "2023-10-27T18:48:11.053Z"
  }
]

Failure

300: The requested representation could not be returned because it is ambiguous (there are multiple requested representations)

400: The request is malformed and therefore invalid

401: The access token is invalid or not specified

403: The supplied access token, though valid, doesn't provide access to this method 

404: The server cannot find the requested resource (the path does not exist)

406: The server cannot return the data representation that you requested (as specified in the "Accept" header)

5XX: Any 500 code is an internal server error

POST /{name}/Permissions/ 

Adds permissions to live media feeds instance(s) with the specified name.

Required Scope Token

bsn.api.main.feeds.media.update

______________________________________________________________

Segment

name string

The name of the live media feed instance

______________________________________________________________

Request Body

An array of Permission entities

______________________________________________________________

Request Example

The example request parameters and headers are set as follows:

  • name is set to Oct2023_LMF

Code Block
POST /2022/06/REST/Feeds/Media/Oct2023_LMF/Permissions/ HTTP/1.1
Host: api.bsn.cloud
Connection: Keep-Alive
Authorization: Bearer {{UserAccessToken}}
Accept: application/json, application/vnd.bsn.error+json
Accept-Encoding: gzip,deflate
Content-Type: application/json
Content-Length: 328

This is the example request body:

Code Block
languagejson
[
  {
    "entityId": 12345678,
    "operationUID": "4871f4d5-f78b-4c41-ab27-26391c40001a",
    "principal": {
      "name": "Custom",
      "isCustom": true,
      "type": "Role",
      "id": 10498
    },
    "isFixed": false,
    "isInherited": false,
    "isAllowed": true,
    "creationDate": "2023-10-25T22:17:24.28Z"
  }
]

______________________________________________________________

Response

Success

204: The specified permissions were successfully granted

Failure

400: The request or request body is malformed and therefore invalid, or it is rejected in accordance with the business rules

401: The access token is invalid or not specified

403: The supplied access token, though valid, doesn't provide access to this method 

404: The server cannot find the requested resource (the path does not exist)

415: The server cannot accept the data representation that you sent (as specified in the "Content-Type" header)

5XX: Any 500 code is an internal server error

DELETE /{name}/Permissions/ 

Removes permissions from the specified live media feed instance. 

Required Scope Token

bsn.api.main.feeds.media.update

______________________________________________________________

Segment

name string

The name of the live media feed instance

______________________________________________________________

Request Body

An array of Permission entities

______________________________________________________________

Request Example

The example request parameters and headers are set as follows:

  • name is set to Oct2023_LMF

Code Block
DELETE /2022/06/REST/Feeds/Media/Oct2023_LMF/Permissions/ HTTP/1.1
Host: api.bsn.cloud
Connection: Keep-Alive
Authorization: Bearer {{UserAccessToken}}
Accept: application/json, application/vnd.bsn.error+json
Accept-Encoding: gzip,deflate
Content-Type: application/json
Content-Length: 328

This is the example request body:

Code Block
languagejson
[
  {
    "entityId": 12345678,
    "operationUID": "4871f4d5-f78b-4c41-ab27-26391c40001a",
    "principal": {
      "name": "Custom",
      "isCustom": true,
      "type": "Role",
      "id": 10498
    },
    "isFixed": false,
    "isInherited": false,
    "isAllowed": true,
    "creationDate": "2023-10-25T22:17:24.28Z"
  }
]

______________________________________________________________

Response

Success

204: The specified permissions were successfully deleted 

Failure

300: The requested representation could not be returned because it is ambiguous (there are multiple requested representations)

400: The request or request body is malformed and therefore invalid, or it is rejected in accordance with the business rules

401: The access token is invalid or not specified

403: The supplied access token, though valid, doesn't provide access to this method 

404: The server cannot find the requested resource (the path does not exist)

406: The server cannot return the data representation that you requested (as specified in the "Accept" header)

5XX: Any 500 code is an internal server error