---
title: Grupos/Puntos finales regulares (2022/06)
slug: develop/es/grupospuntos-finales-regulares-202206
docTags: 
createdAt: 2025-03-11T07:03:30.743Z
---

Use estos endpoints para administrar grupos en la red. 

URL base para estos endpoints:  ***https\://api.bsn.cloud/2022/06/REST/Groups/Regular***

*\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_*

## GET /

Recupera una lista de grupos en la red.

**Token de alcance requerido**

bsn.api.main.groups.regular.retrieve

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Parámetros de cadena de consulta**

- `filtro` <font color="#704ae0">string</font> <font color="#01a0af">opcional: </font>Una [expresión](docId\:cOT2DfqiG9WykoYa94HEX) para filtrar resultados de búsqueda. El valor predeterminado es null.
- `ordenar` <font color="#704ae0">string</font> <font color="#01a0af">opcional: </font>Una expresión para ordenar los resultados de búsqueda. La expresión de ordenación especifica la entrada utilizada para ordenar y el orden de clasificación ascendente/descendente (ASC/DESC) (consulte [esta página](docId\:cOT2DfqiG9WykoYa94HEX) para obtener más información). El valor predeterminado es null.
- `marcador` <font color="#704ae0">string</font> <font color="#01a0af">opcional: </font>Un valor que especifica qué página recuperar. Este valor es útil si la entrada `isTruncated` en el cuerpo de la respuesta de la llamada GET anterior indica que el número de instancias de grupos excede el `pageSize`. Este parámetro solo es necesario si necesita más elementos en la lista paginada que el `pageSize` (100).
- `pageSize` <font color="#704ae0">int</font> <font color="#01a0af">opcional: </font>El número máximo de instancias de grupos que se pueden contener en el cuerpo de la respuesta. De forma predeterminada, este valor es el tamaño máximo de página permitido (100).

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Ejemplo de solicitud**

Los parámetros y encabezados de la solicitud de ejemplo se establecen de la siguiente manera:

- `marcador` value is set to `[PagedList].[NextMarker]` property value from the previous BSN.cloud API response.
- `pageSize` se establece en `1`
- `filtro` se establece en `[CreationDate] ESTÁ EN EL RANGO '2020-07-01' Y '2023-08-01'`
- `ordenar` se establece en `[Nombre] ASC`

```text
GET /2022/06/REST/Groups/Regular/?marker=YXVkaW8tdGVzdCwyNjQ1Mjg%3D&pageSize=1&filter=%5BCreationDate%5D%20IS%20IN%20THE%20RANGE%20%272020-07-01%27%20AND%20%272023-08-01%27&sort=%5BName%5D%20ASC 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
```

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Cuerpo de la respuesta exitosa**

<font color="#089a4d">200</font>: Devuelve una [lista paginada](docId:1GSmBtULb07Tf6mcfQCxP) de instancias de [Entidad de grupos regulares](docId\:PxnHYkctheoZkZp5s3VCf) en una red. Esto no devolverá más de 100 entidades junto con la información necesaria para devolver cualquier otra página restante.

:::ExpandableHeading
Ejemplo

```json
{
   "items": [   {
      "id": 123456,
      "name": "ConferenceRoom",
      "creationDate": "2023-7-11T22:24:51.347Z",
      "lastModifiedDate": "2023-12-11T22:45:47.007Z",
      "autorun": null,
      "hdX23Firmware": "",
      "hdX23FirmwareId": -1,
      "lsX23Firmware": "",
      "lsX23FirmwareId": -1,
      "hsX23Firmware": "",
      "hsX23FirmwareId": -1,
      "hoX23Firmware": "",
      "hoX23FirmwareId": -1,
      "xdX33Firmware": "",
      "xdX33FirmwareId": -1,
      "xtX43Firmware": "",
      "xtX43FirmwareId": -1,
      "xdX34_XTX44Firmware": "",
      "xdX34_XTX44FirmwareId": -1,
      "hdX4_HSX4_LSX4Firmware": "8.5.47",
      "hdX4_HSX4_LSX4FirmwareId": 12345678,
      "auX5Firmware": "",
      "auX5FirmwareId": -1,
      "4KX42Firmware": "",
      "4KX42FirmwareId": -1,
      "xcX55Firmware": "",
      "xcX55FirmwareId": -1,
      "xtX45_XDX35_HDX25_LS4X5_HS1X5Firmware": "",
      "xtX45_XDX35_HDX25_LS4X5_HS1X5FirmwareId": -1,
      "enableSerialDebugging": false,
      "enableSystemLogDebugging": false,
      "enableStorageSpaceLimit": false,
      "storageSpaceLimitUnits": "Percentage",
      "publishedDataSizeLimit": 0,
      "dynamicDataSizeLimit": 0,
      "htmlDataSizeLimit": 0,
      "htmlLocalStorageSizeLimit": 0,
      "webDatabaseSizeLimit": 0,
      "devicesCount": 2,
      "devicesHealthStatus":       {
         "normal": 1,
         "error": 1
      },
      "devices": null,
      "schedule": [],
      "permissions": []
   }],
   "totalItemCount": 8,
   "matchingItemCount": 8,
   "pageSize": 1,
   "nextMarker": "Q29uZmVyZW5jZVJvb20sMzIwMzA3",
   "prevMarker": "Q29uZmVyZW5jZVJvb20sMzIwMpG8",
   "isTruncated": true,
   "sortExpression": "[Name] ASC",
   "filterExpression": "[CreationDate] IS IN THE RANGE '2020-07-01T00:00:00.000Z' AND '2023-08-01T00:00:00.000Z'"
}
```
:::

**Respuesta de error**

<font color="#9a0808">300</font>: La representación solicitada no pudo devolverse porque es ambigua (hay múltiples representaciones solicitadas)

<font color="#9a0808">400</font>: La solicitud tiene un formato incorrecto y, por lo tanto, no es válida

<font color="#9a0808">401</font>: El token de acceso no es válido o no se especificó

<font color="#9a0808">403</font>: El token de acceso proporcionado, aunque válido, no proporciona acceso a este método 

<font color="#9a0808">406</font>: El servidor no puede devolver la representación de datos que solicitó (como se especifica en el encabezado "Accept")

<font color="#9a0808">5XX</font>: Cualquier código 500 es un error interno del servidor

## POST /

Crea un grupo en la red.

**Token de alcance requerido**

bsn.api.main.groups.regular.create

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Cuerpo de la solicitud**

- La [Entidad de grupos regulares](docId\:PxnHYkctheoZkZp5s3VCf) 

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Ejemplo de solicitud**

Los parámetros y encabezados de la solicitud de ejemplo se establecen de la siguiente manera:

```text
POST /2022/06/REST/Groups/Regular/ 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: 1053
```

Este es el cuerpo de la solicitud de ejemplo:

```json
{
   "id": 0,
   "name": "NewGroup",
   "creationDate": "0001-01-01T00:00:00.000Z",
   "lastModifiedDate": "0001-01-01T00:00:00.000Z",
   "autorun": null,
   "hdX23Firmware": "",
   "hdX23FirmwareId": -1,
   "lsX23Firmware": "",
   "lsX23FirmwareId": -1,
   "hsX23Firmware": "",
   "hsX23FirmwareId": -1,
   "hoX23Firmware": "",
   "hoX23FirmwareId": -1,
   "xdX33Firmware": "",
   "xdX33FirmwareId": -1,
   "xtX43Firmware": "",
   "xtX43FirmwareId": -1,
   "xdX34_XTX44Firmware": "",
   "xdX34_XTX44FirmwareId": -1,
   "hdX4_HSX4_LSX4Firmware": "8.5.47",
   "hdX4_HSX4_LSX4FirmwareId": -1,
   "4KX42Firmware": "",
   "4KX42FirmwareId": -1,
   "enableSerialDebugging": false,
   "enableSystemLogDebugging": false,
   "enableStorageSpaceLimit": false,
   "storageSpaceLimitUnits": "Percentage",
   "publishedDataSizeLimit": 0,
   "dynamicDataSizeLimit": 0,
   "htmlDataSizeLimit": 0,
   "htmlLocalStorageSizeLimit": 0,
   "webDatabaseSizeLimit": 0,
   "devicesCount": 0,
   "devicesHealthStatus": null,
   "devices": null,
   "schedule": null,
   "permissions": []
}
```

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Cuerpo de la respuesta exitosa**

<font color="#089a4d">201</font>: Devuelve la [Entidad de grupos regulares](docId\:PxnHYkctheoZkZp5s3VCf) creada y referenciada por la Uri (proporcionada por el campo de encabezado Location) en la respuesta.  

**Ejemplo**

```json
{
   "id": 123456,
   "name": "NewGroup",
   "creationDate": "2023-10-19T20:30:35.833Z",
   "lastModifiedDate": "2023-10-19T20:30:35.833Z",
   "autorun": null,
   "hdX23Firmware": "",
   "hdX23FirmwareId": -1,
   "lsX23Firmware": "",
   "lsX23FirmwareId": -1,
   "hsX23Firmware": "",
   "hsX23FirmwareId": -1,
   "hoX23Firmware": "",
   "hoX23FirmwareId": -1,
   "xdX33Firmware": "",
   "xdX33FirmwareId": -1,
   "xtX43Firmware": "",
   "xtX43FirmwareId": -1,
   "xdX34_XTX44Firmware": "",
   "xdX34_XTX44FirmwareId": -1,
   "hdX4_HSX4_LSX4Firmware": "8.5.47",
   "hdX4_HSX4_LSX4FirmwareId": 12345,
   "auX5Firmware": "",
   "auX5FirmwareId": -1,
   "4KX42Firmware": "",
   "4KX42FirmwareId": -1,
   "xcX55Firmware": "",
   "xcX55FirmwareId": -1,
   "xtX45_XDX35_HDX25_LS4X5_HS1X5Firmware": "",
   "xtX45_XDX35_HDX25_LS4X5_HS1X5FirmwareId": -1,
   "enableSerialDebugging": false,
   "enableSystemLogDebugging": false,
   "enableStorageSpaceLimit": false,
   "storageSpaceLimitUnits": "Percentage",
   "publishedDataSizeLimit": 0,
   "dynamicDataSizeLimit": 0,
   "htmlDataSizeLimit": 0,
   "htmlLocalStorageSizeLimit": 0,
   "webDatabaseSizeLimit": 0,
   "devicesCount": 0,
   "devicesHealthStatus": {},
   "devices": null,
   "schedule": [],
   "permissions": []
}
```

**Respuesta de error**

<font color="#9a0808">300</font>: La representación solicitada no pudo devolverse porque es ambigua (hay múltiples representaciones solicitadas)

<font color="#9a0808">400</font>: La solicitud o el cuerpo de la solicitud tienen un formato incorrecto y, por lo tanto, no son válidos, o se rechazan de acuerdo con las reglas de negocio

<font color="#9a0808">401</font>: El token de acceso no es válido o no se especificó

<font color="#9a0808">403</font>: El token de acceso proporcionado, aunque es válido, no proporciona acceso a este método 

<font color="#9a0808">406</font>: El servidor no puede devolver la representación de datos que solicitó (según se especifica en el encabezado "Accept")

<font color="#9a0808">415</font>: El servidor no puede aceptar la representación de datos que envió (según se especifica en el encabezado "Content-Type")

<font color="#9a0808">5XX</font>: Cualquier código 500 es un error interno del servidor

## DELETE /

Elimina grupos, especificados por un filtro, de una red. Esto permite eliminar varios grupos a la vez.

**Token de alcance requerido**

bsn.api.main.groups.regular.delete

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Parámetro de cadena de consulta**

- `filtro` <font color="#704ae0">string</font> <font color="#01a0af">required: </font>Una [expresión](docId\:cOT2DfqiG9WykoYa94HEX) para filtrar los resultados de búsqueda. 
- `reassignmentGroupId` <font color="#704ae0">int</font> <font color="#01a0af">optional: </font>El identificador de la instancia de grupo a la que deben reasignarse los dispositivos afectados. Si este valor es negativo, los dispositivos se reasignarán a la instancia de grupo predeterminada “Unassigned”. Si no existe una instancia de grupo con el Id \[int] positivo especificado, el método devolverá un error descriptivo. El valor predeterminado es 0.

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Ejemplo de solicitud**

Los parámetros y encabezados de la solicitud de ejemplo se establecen de la siguiente manera:

- `filtro` se establece en `[DevicesCount] ES 0`
- `reassignmentGroupId` se establece en `12345`

```text
DELETE /2022/06/REST/Groups/Regular/?reassignmentGroupId=12345&filter=%5BDevicesCount%5D%20IS%200 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
```

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Cuerpo de la respuesta exitosa**

<font color="#089a4d">200</font>: Devuelve el número de grupos afectados como un valor entero.

**Respuesta de error**

<font color="#9a0808">300</font>: La representación solicitada no pudo devolverse porque es ambigua (hay múltiples representaciones solicitadas)

<font color="#9a0808">400</font>: La solicitud o el cuerpo de la solicitud están mal formados y, por lo tanto, son inválidos, o se rechazan de acuerdo con las reglas de negocio

<font color="#9a0808">401</font>: El token de acceso es inválido o no se especificó

<font color="#9a0808">403</font>: El token de acceso proporcionado, aunque válido, no proporciona acceso a este método 

<font color="#9a0808">406</font>: El servidor no puede devolver la representación de datos que usted solicitó (como se especifica en el encabezado "Accept")

<font color="#9a0808">5XX</font>: Cualquier código 500 es un error interno del servidor

## GET /Count/  

Devuelve el número de grupos en la red que coinciden con los criterios de filtro especificados. Si no se incluye ningún filtro, esta llamada devuelve el número total de grupos en la red. 

**Token de Scope requerido**

bsn.api.main.groups.regular.retrieve

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Parámetro de Query String**

- `filtro` <font color="#704ae0">string</font> <font color="#01a0af">opcional: </font>Una [expresión](docId\:cOT2DfqiG9WykoYa94HEX) para filtrar resultados de búsqueda. El valor predeterminado es null.

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Ejemplo de solicitud**

Los parámetros y encabezados de la solicitud de ejemplo se establecen de la siguiente manera:

- `filtro` se establece en `[Name] CONTIENE 'test'`

```text
GET /2022/06/REST/Groups/Regular/Count/?filter=%5BName%5D%20CONTAINS%20%27test%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
```

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Cuerpo de la respuesta exitosa**

<font color="#089a4d">200</font>: El número de grupos se devuelve como un valor entero.

**Respuesta de error**

<font color="#9a0808">300</font>: La representación solicitada no pudo devolverse porque es ambigua (hay múltiples representaciones solicitadas)

<font color="#9a0808">400</font>: La solicitud está mal formada y, por lo tanto, es inválida

<font color="#9a0808">401</font>: El token de acceso es inválido o no se especificó

<font color="#9a0808">403</font>: El token de acceso proporcionado, aunque válido, no proporciona acceso a este método 

<font color="#9a0808">406</font>: El servidor no puede devolver la representación de datos que usted solicitó (como se especifica en el encabezado "Accept")

<font color="#9a0808">5XX</font>: Cualquier código 500 es un error interno del servidor

## GET /\{id}/  

Devuelve un grupo especificado

**Token de Scope requerido**

bsn.api.main.groups.regular.retrieve

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Segmento**

- `identificación` <font color="#704ae0">int: </font>El identificador único del grupo

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Ejemplo de solicitud**

Los parámetros y encabezados de la solicitud de ejemplo se establecen de la siguiente manera:

- `identificación` se establece en `12345`
- El valor de encabezado opcional `If-Modified-Since` es igual al valor de encabezado `Última modificación` recuperado de la respuesta anterior de `GET /id` o `GET /name`&#x20;

```text
GET /2022/06/REST/Groups/Regular/12345/ 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
If-Modified-Since: Wed, 20 Dec 2023 21:32:34 GMT
```

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Respuesta correcta con cuerpo**

<font color="#089a4d">200</font>: Devuelve la [Entidad de grupos regulares](docId\:PxnHYkctheoZkZp5s3VCf) 

**Ejemplo**

Este es un ejemplo de una respuesta de nivel 200:

```json
{
   "id": 12345,
   "name": "ConferenceRoom",
   "creationDate": "2023-12-11T22:24:51.347Z",
   "lastModifiedDate": "2023-12-20T21:32:35.093Z",
   "autorun": null,
   "hdX23Firmware": "",
   "hdX23FirmwareId": -1,
   "lsX23Firmware": "",
   "lsX23FirmwareId": -1,
   "hsX23Firmware": "",
   "hsX23FirmwareId": -1,
   "hoX23Firmware": "",
   "hoX23FirmwareId": -1,
   "xdX33Firmware": "",
   "xdX33FirmwareId": -1,
   "xtX43Firmware": "",
   "xtX43FirmwareId": -1,
   "xdX34_XTX44Firmware": "",
   "xdX34_XTX44FirmwareId": -1,
   "hdX4_HSX4_LSX4Firmware": "",
   "hdX4_HSX4_LSX4FirmwareId": -1,
   "auX5Firmware": "",
   "auX5FirmwareId": -1,
   "4KX42Firmware": "",
   "4KX42FirmwareId": -1,
   "xcX55Firmware": "",
   "xcX55FirmwareId": -1,
   "xtX45_XDX35_HDX25_LS4X5_HS1X5Firmware": "",
   "xtX45_XDX35_HDX25_LS4X5_HS1X5FirmwareId": -1,
   "enableSerialDebugging": true,
   "enableSystemLogDebugging": false,
   "enableStorageSpaceLimit": false,
   "storageSpaceLimitUnits": "Percentage",
   "publishedDataSizeLimit": 0,
   "dynamicDataSizeLimit": 0,
   "htmlDataSizeLimit": 0,
   "htmlLocalStorageSizeLimit": 0,
   "webDatabaseSizeLimit": 0,
   "devicesCount": 2,
   "devicesHealthStatus":    {
      "normal": 1,
      "error": 1
   },
   "devices":    [
            {
         "id": 12345,
         "serial": "XXXXXX000000"
      },
            {
         "id": 67890,
         "serial": "YYYYYY000000"
      }
   ],
   "schedule": [],
   "permissions": []
}
```

**Respuesta correcta**

<font color="#089a4d">304</font>: El recurso no se modificó desde la hora especificada en el encabezado `If-Modified-Since`&#x20;

**Respuesta de error**

<font color="#9a0808">300</font>: No se pudo devolver la representación solicitada porque es ambigua (hay múltiples representaciones solicitadas)

<font color="#9a0808">400</font>: La solicitud tiene un formato incorrecto y, por lo tanto, no es válida

<font color="#9a0808">401</font>: El token de acceso no es válido o no se especificó

<font color="#9a0808">403</font>: El token de acceso proporcionado, aunque válido, no proporciona acceso a este método

<font color="#9a0808">404</font>: El servidor no puede encontrar el recurso solicitado (la ruta no existe)

<font color="#9a0808">406</font>: El servidor no puede devolver la representación de datos que usted solicitó (según se especifica en el encabezado "Accept")

<font color="#9a0808">5XX</font>: Cualquier código 500 es un error interno del servidor

## PUT /\{id}/  

Actualiza el grupo especificado

**Token de alcance requerido**

bsn.api.main.groups.regular.update

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Segmento**

- `identificación` <font color="#704ae0">int: </font>El identificador único del grupo

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Cuerpo de la solicitud**

- La [Entidad de grupos regulares](docId\:PxnHYkctheoZkZp5s3VCf) 

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Ejemplo de solicitud**

Los parámetros y encabezados de la solicitud de ejemplo se establecen de la siguiente manera:

- `identificación` se establece en `12345`
- El valor del encabezado opcional `If-Unmodified-Since` es igual al valor del encabezado `Última modificación` recuperado de la respuesta de `GET /id` o `GET /name`.

```text
PUT /2022/06/REST/Groups/Regular/12345/ 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
If-Unmodified-Since: Wed, 20 Dec 2023 21:32:34 GMT
Content-Type: application/json
Content-Length: 1785
```

Este es el cuerpo de la solicitud de ejemplo:

```json
{
  "id": 0,
  "name": "Default",
  "creationDate": "0001-01-01T00:00:00",
  "lastModifiedDate": "0001-01-01T00:00:00",
  "autorun": null,
  "hdX23Firmware": "",
  "hdX23FirmwareId": -1,
  "lsX23Firmware": "",
  "lsX23FirmwareId": -1,
  "hsX23Firmware": "",
  "hsX23FirmwareId": -1,
  "hoX23Firmware": "",
  "hoX23FirmwareId": -1,
  "xdX33Firmware": "",
  "xdX33FirmwareId": -1,
  "xtX43Firmware": "",
  "xtX43FirmwareId": -1,
  "xdX34_XTX44Firmware": "",
  "xdX34_XTX44FirmwareId": -1,
  "hdX4_HSX4_LSX4Firmware": "8.5.47",
  "hdX4_HSX4_LSX4FirmwareId": -1,
  "auX5Firmware": "",
  "auX5FirmwareId": -1,
  "4KX42Firmware": "",
  "4KX42FirmwareId": -1,
  "xcX55Firmware": "",
  "xcX55FirmwareId": -1,
  "xtX45_XDX35_HDX25_LS4X5_HS1X5Firmware": "",
  "xtX45_XDX35_HDX25_LS4X5_HS1X5FirmwareId": -1,
  "enableSerialDebugging": false,
  "enableSystemLogDebugging": true,
  "enableStorageSpaceLimit": false,
  "storageSpaceLimitUnits": "Percentage",
  "publishedDataSizeLimit": 0,
  "dynamicDataSizeLimit": 0,
  "htmlDataSizeLimit": 0,
  "htmlLocalStorageSizeLimit": 0,
  "webDatabaseSizeLimit": 0,
  "devicesCount": 0,
  "devicesHealthStatus": null,
  "devices": null,
  "schedule": null,
  "permissions": []
}
```

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Respuesta correcta**

<font color="#089a4d">204</font>: El grupo especificado se ha actualizado

**Respuesta de error**

<font color="#9a0808">300</font>: No se pudo devolver la representación solicitada porque es ambigua (hay múltiples representaciones solicitadas)

<font color="#9a0808">400</font>: La solicitud o el cuerpo de la solicitud tiene un formato incorrecto y, por lo tanto, no es válido, o se rechaza de acuerdo con las reglas empresariales

<font color="#9a0808">401</font>: El token de acceso no es válido o no se especificó

<font color="#9a0808">403</font>: El token de acceso proporcionado, aunque válido, no proporciona acceso a este método

<font color="#9a0808">404</font>: El servidor no puede encontrar el recurso solicitado (la ruta no existe)

<font color="#9a0808">406</font>: El servidor no puede devolver la representación de datos que solicitó (según se especifica en el encabezado "Accept")

<font color="#9a0808">412</font>: Falló la condición previa (el recurso/grupo cambió desde el momento especificado en el valor del encabezado “If-Unmodified-Since”)

<font color="#9a0808">415</font>: El servidor no puede aceptar la representación de datos que envió (según se especifica en el encabezado "Content-Type")

<font color="#9a0808">5XX</font>: Cualquier código 500 es un error interno del servidor

## PATCH /\{id}/  

Aplica una secuencia de cambios a una entidad de grupo específica especificada por id. Consulte [RFC 6902](https://datatracker.ietf.org/doc/html/rfc6902).

**Token de alcance requerido**

bsn.api.main.groups.regular.update

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Segmento**

- `identificación` <font color="#704ae0">int: </font>El identificador de la entidad de grupo, que es un recurso Uri

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Cuerpo de la solicitud**

Estas propiedades son entradas en un array. Cada entrada debe tener estas tres propiedades:

- `op` <font color="#704ae0">string</font>:  El tipo de operación; en este caso siempre es "replace"
- `ruta` <font color="#704ae0">string</font>: Una ruta Uri que hace referencia a la ubicación dentro del documento de destino donde se realizará la actualización
- `valor` <font color="#704ae0">object</font>: Los valores de reemplazo para los parámetros que deben actualizarse. Esto puede ser un array.

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Ejemplo de solicitud**

Los parámetros y encabezados de ejemplo de la solicitud se establecen de la siguiente manera:

- `identificación` es `12345`
- El valor opcional del encabezado `If-Unmodified-Since` es igual al valor del encabezado `Última modificación` recuperado de la respuesta de `GET /id` o `GET /name`.

```text
PATCH /2022/06/REST/Groups/Regular/12345/ 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
If-Unmodified-Since: Wed, 20 Dec 2023 21:32:34 GMT
Content-Type: application/json-patch+json
Content-Length: 91
```

Este es el cuerpo de solicitud de ejemplo:

```json
[
  {
    "op": "replace",
    "path": "/xdX34_XTX44Firmware/",
    "value": "8.5.33"
  }
]
```

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Respuesta satisfactoria**

<font color="#089a4d">204</font>: Los parámetros se reemplazaron correctamente.

**Respuesta de error**

<font color="#9a0808">400</font>: La solicitud o el cuerpo de la solicitud tienen un formato incorrecto y, por lo tanto, no son válidos, o se rechazan de acuerdo con las reglas de negocio

<font color="#9a0808">401</font>: El token de acceso no es válido o no se especificó

<font color="#9a0808">403</font>: El token de acceso proporcionado, aunque válido, no proporciona acceso a este método

<font color="#9a0808">404</font>: El servidor no puede encontrar el recurso solicitado (la ruta no existe)

<font color="#9a0808">412</font>: La condición previa falló (el recurso cambió desde el momento especificado en el valor del encabezado “If-Unmodified-Since”)

<font color="#9a0808">415</font>: El servidor no puede aceptar la representación de datos que envió (como se especifica en el encabezado "Content-Type")

<font color="#9a0808">5XX</font>: Cualquier código 500 es un error interno del servidor

## DELETE /\{id}/  

Elimina el grupo especificado

**Token de alcance requerido**

bsn.api.main.groups.regular.delete

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Segmento**

- `identificación` <font color="#704ae0">int: </font>El identificador único del grupo

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Parámetro de cadena de consulta**

- `reassignmentGroupId` <font color="#704ae0">int</font> <font color="#01a0af">opcional: </font>El identificador de la instancia de grupo a la que se deben reasignar los dispositivos afectados. Si este valor es negativo, los dispositivos se reasignarán a la instancia de grupo predeterminada “Unassigned”. Si no existe una instancia de grupo con el Id \[int] positivo especificado, el método devolverá un error descriptivo. El valor predeterminado es 0.

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Ejemplo de solicitud**

Los parámetros y encabezados de la solicitud de ejemplo se configuran de la siguiente manera:

- `identificación` se establece en `12345`
- `reassignmentGroupId` se establece en `90`
- El valor opcional del encabezado `If-Unmodified-Since` es igual al valor del encabezado `Última modificación` recuperado de la respuesta de `GET /id` o `GET /name`.

```text
DELETE /2022/06/REST/Groups/Regular/12345/?reassignmentGroupId=90 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
If-Unmodified-Since: Wed, 20 Dec 2023 21:32:34 GMT
```

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Respuesta correcta**

<font color="#089a4d">204</font>: El grupo especificado se ha eliminado de la red 

**Respuesta de error**

<font color="#9a0808">300</font>: No se pudo devolver la representación solicitada porque es ambigua (hay múltiples representaciones solicitadas)

<font color="#9a0808">400</font>: La solicitud o el cuerpo de la solicitud tiene un formato incorrecto y, por lo tanto, no es válido, o se rechaza de acuerdo con las reglas empresariales

<font color="#9a0808">401</font>: El token de acceso no es válido o no se especificó

<font color="#9a0808">403</font>: El token de acceso proporcionado, aunque válido, no proporciona acceso a este método

<font color="#9a0808">404</font>: El servidor no puede encontrar el recurso solicitado (la ruta no existe)

<font color="#9a0808">406</font>: El servidor no puede devolver la representación de datos que usted solicitó (según se especifica en el encabezado "Accept")

<font color="#9a0808">412</font>: Error de condición previa (el recurso cambió desde la hora especificada en el valor del encabezado “If-Unmodified-Since”)

<font color="#9a0808">5XX</font>: Cualquier código 500 es un error interno del servidor

## GET /\{name}/  

Devuelve un grupo especificado

**Token de alcance requerido**

bsn.api.main.groups.regular.retrieve

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Segmento**

- `nombre` <font color="#704ae0">string: </font>El nombre del grupo

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Ejemplo de solicitud**

Los parámetros y encabezados de la solicitud de ejemplo se configuran de la siguiente manera:

- `nombre` está establecido en `SalaDeConferencias`
- El valor opcional del encabezado `If-Modified-Since` es igual al valor del encabezado `Última modificación` recuperado de la respuesta anterior de `GET /id` o `GET /name`&#x20;

```text
GET /2022/06/REST/Groups/Regular/ConferenceRoom/ 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
If-Modified-Since: Wed, 20 Dec 2023 21:32:34 GMT
```

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Respuesta correcta con cuerpo**

<font color="#089a4d">200</font>: Devuelve la [Entidad de grupos regulares](docId\:PxnHYkctheoZkZp5s3VCf) 

**Ejemplo**

Este es un ejemplo de una respuesta de nivel 200:

```json
{
   "id": 456789,
   "name": "ConferenceRoom",
   "creationDate": "2023-12-11T22:24:51.347Z",
   "lastModifiedDate": "2023-12-20T21:32:35.093Z",
   "autorun": null,
   "hdX23Firmware": "",
   "hdX23FirmwareId": -1,
   "lsX23Firmware": "",
   "lsX23FirmwareId": -1,
   "hsX23Firmware": "",
   "hsX23FirmwareId": -1,
   "hoX23Firmware": "",
   "hoX23FirmwareId": -1,
   "xdX33Firmware": "",
   "xdX33FirmwareId": -1,
   "xtX43Firmware": "",
   "xtX43FirmwareId": -1,
   "xdX34_XTX44Firmware": "",
   "xdX34_XTX44FirmwareId": -1,
   "hdX4_HSX4_LSX4Firmware": "",
   "hdX4_HSX4_LSX4FirmwareId": -1,
   "auX5Firmware": "",
   "auX5FirmwareId": -1,
   "4KX42Firmware": "",
   "4KX42FirmwareId": -1,
   "xcX55Firmware": "",
   "xcX55FirmwareId": -1,
   "xtX45_XDX35_HDX25_LS4X5_HS1X5Firmware": "",
   "xtX45_XDX35_HDX25_LS4X5_HS1X5FirmwareId": -1,
   "enableSerialDebugging": true,
   "enableSystemLogDebugging": false,
   "enableStorageSpaceLimit": false,
   "storageSpaceLimitUnits": "Percentage",
   "publishedDataSizeLimit": 0,
   "dynamicDataSizeLimit": 0,
   "htmlDataSizeLimit": 0,
   "htmlLocalStorageSizeLimit": 0,
   "webDatabaseSizeLimit": 0,
   "devicesCount": 2,
   "devicesHealthStatus":    {
      "normal": 1,
      "error": 1
   },
   "devices":    [
            {
         "id": 12345,
         "serial": "XXXXXX000000"
      },
            {
         "id": 67890,
         "serial": "YYYYYY000000"
      }
   ],
   "schedule": [],
   "permissions": []
}
```

**Respuesta correcta**

<font color="#089a4d">304</font>: El recurso no se modificó desde la hora especificada en el encabezado “If-Modified-Since”

**Respuesta de error**

<font color="#9a0808">300</font>: No se pudo devolver la representación solicitada porque es ambigua (hay varias representaciones solicitadas)

<font color="#9a0808">400</font>: La solicitud está mal formada y, por lo tanto, no es válida

<font color="#9a0808">401</font>: El token de acceso no es válido o no se especificó

<font color="#9a0808">403</font>: El token de acceso proporcionado, aunque válido, no proporciona acceso a este método

<font color="#9a0808">404</font>: El servidor no puede encontrar el recurso solicitado (la ruta no existe)

<font color="#9a0808">406</font>: El servidor no puede devolver la representación de datos que usted solicitó (según se especifica en el encabezado "Accept")

<font color="#9a0808">5XX</font>: Cualquier código 500 es un error interno del servidor

## PUT /\{name}/  

Actualiza un grupo especificado

**Token de alcance requerido**

bsn.api.main.groups.regular.update

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Segmento**

- `nombre` <font color="#704ae0">string: </font>El nombre del grupo

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Cuerpo de la solicitud**

- La [Entidad de grupos regulares](docId\:PxnHYkctheoZkZp5s3VCf) 

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Ejemplo de solicitud**

Los parámetros y encabezados de la solicitud de ejemplo se establecen de la siguiente manera:

- `nombre` se establece en `Predeterminado`
- El valor del encabezado opcional `If-Unmodified-Since` es igual al valor del encabezado `Última modificación` recuperado de la respuesta `GET /id` o `GET /name`.

```text
PUT /2022/06/REST/Groups/Regular/Default/ 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
If-Unmodified-Since: Wed, 20 Dec 2023 21:32:34 GMT
Content-Type: Content-Type: application/json-patch+json
Content-Length: 1785
```

Este es el cuerpo de la solicitud de ejemplo:

```json
{
  "id": 0,
  "name": "Default",
  "creationDate": "0001-01-01T00:00:00",
  "lastModifiedDate": "0001-01-01T00:00:00",
  "autorun": null,
  "hdX23Firmware": "",
  "hdX23FirmwareId": -1,
  "lsX23Firmware": "",
  "lsX23FirmwareId": -1,
  "hsX23Firmware": "",
  "hsX23FirmwareId": -1,
  "hoX23Firmware": "",
  "hoX23FirmwareId": -1,
  "xdX33Firmware": "",
  "xdX33FirmwareId": -1,
  "xtX43Firmware": "",
  "xtX43FirmwareId": -1,
  "xdX34_XTX44Firmware": "",
  "xdX34_XTX44FirmwareId": -1,
  "hdX4_HSX4_LSX4Firmware": "8.5.47",
  "hdX4_HSX4_LSX4FirmwareId": -1,
  "auX5Firmware": "",
  "auX5FirmwareId": -1,
  "4KX42Firmware": "",
  "4KX42FirmwareId": -1,
  "xcX55Firmware": "",
  "xcX55FirmwareId": -1,
  "xtX45_XDX35_HDX25_LS4X5_HS1X5Firmware": "",
  "xtX45_XDX35_HDX25_LS4X5_HS1X5FirmwareId": -1,
  "enableSerialDebugging": false,
  "enableSystemLogDebugging": true,
  "enableStorageSpaceLimit": false,
  "storageSpaceLimitUnits": "Percentage",
  "publishedDataSizeLimit": 0,
  "dynamicDataSizeLimit": 0,
  "htmlDataSizeLimit": 0,
  "htmlLocalStorageSizeLimit": 0,
  "webDatabaseSizeLimit": 0,
  "devicesCount": 0,
  "devicesHealthStatus": null,
  "devices": null,
  "schedule": null,
  "permissions": []
}
```

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Respuesta correcta**

<font color="#089a4d">204</font>: El grupo especificado ha sido actualizado

**Respuesta de error**

<font color="#9a0808">300</font>: La representación solicitada no pudo devolverse porque es ambigua (hay múltiples representaciones solicitadas)

<font color="#9a0808">400</font>: La solicitud o el cuerpo de la solicitud están mal formados y, por lo tanto, son inválidos, o se rechazan de acuerdo con las reglas de negocio

<font color="#9a0808">401</font>: El token de acceso es inválido o no se ha especificado

<font color="#9a0808">403</font>: El token de acceso proporcionado, aunque válido, no proporciona acceso a este método

<font color="#9a0808">404</font>: El servidor no puede encontrar el recurso solicitado (la ruta no existe)

<font color="#9a0808">406</font>: El servidor no puede devolver la representación de datos que usted solicitó (según se especifica en el encabezado "Accept")

<font color="#9a0808">412</font>: Falló la condición previa (el recurso/grupo cambió desde el momento especificado en el valor del encabezado “If-Unmodified-Since”)

<font color="#9a0808">415</font>: El servidor no puede aceptar la representación de datos que usted envió (según se especifica en el encabezado "Content-Type")

<font color="#9a0808">5XX</font>: Cualquier código 500 es un error interno del servidor

## PATCH /\{name}/  

Aplica una secuencia de cambios a una entidad de grupo específica especificada por nombre. Consulte [RFC 6902](https://datatracker.ietf.org/doc/html/rfc6902).

**Token de alcance requerido**

bsn.api.main.groups.regular.update

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Segmento**

- `nombre` <font color="#704ae0">string: </font>El nombre de la entidad de grupo, que es un recurso Uri

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Cuerpo de la solicitud**

Estas propiedades son entradas en una matriz. Cada entrada debe tener estas tres propiedades:

- `op` <font color="#704ae0">string: </font>El tipo de operación; en este caso siempre es "replace"
- `ruta` <font color="#704ae0">string</font>: Una ruta Uri que hace referencia a la ubicación dentro del documento de destino donde se realizará la actualización
- `valor` <font color="#704ae0">object</font>: Los valores de reemplazo para los parámetros que deben actualizarse. Esto puede ser una matriz.

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Ejemplo de solicitud**

Los parámetros y encabezados de la solicitud de ejemplo se establecen de la siguiente manera:

- `nombre` es `Predeterminado`
- El valor opcional del encabezado `If-Unmodified-Since` es igual al valor del encabezado `Última modificación` recuperado de la respuesta de `GET /id` o `GET /name`.

```text
PATCH /2022/06/REST/Groups/Regular/Default/ 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
If-Unmodified-Since: Wed, 20 Dec 2023 21:32:34 GMT
Content-Type: application/json-patch+json
Content-Length: 91
```

Este es el cuerpo de la solicitud de ejemplo:

```json
[
  {
    "op": "replace",
    "path": "/xdX34_XTX44Firmware/",
    "value": "8.5.33"
  }
]
```

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Respuesta correcta**

<font color="#089a4d">204</font>: Los parámetros se han reemplazado correctamente.

**Respuesta de error**

<font color="#9a0808">400</font>: La solicitud o el cuerpo de la solicitud están mal formados y, por lo tanto, no son válidos, o se rechazan de acuerdo con las reglas de negocio

<font color="#9a0808">401</font>: El token de acceso no es válido o no se especificó

<font color="#9a0808">403</font>: El token de acceso proporcionado, aunque válido, no proporciona acceso a este método

<font color="#9a0808">404</font>: El servidor no puede encontrar el recurso solicitado (la ruta no existe)

<font color="#9a0808">412</font>: Falló la precondición (el recurso cambió desde la hora especificada en el valor del encabezado “If-Unmodified-Since”)

<font color="#9a0808">415</font>: El servidor no puede aceptar la representación de datos que usted envió (según se especifica en el encabezado "Content-Type")

<font color="#9a0808">5XX</font>: Cualquier código 500 es un error interno del servidor

## DELETE /\{name}/  

Elimina un grupo especificado

**Token de alcance requerido**

bsn.api.main.groups.regular.delete

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Segmento**

- `nombre` <font color="#704ae0">string: </font>El nombre del grupo

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Parámetro de cadena de consulta**

- `reassignmentGroupId` <font color="#704ae0">int</font> <font color="#01a0af">opcional: </font>El identificador de la instancia de grupo a la que se deben reasignar los dispositivos afectados. Si este valor es negativo, los dispositivos se reasignarán a la instancia de grupo predeterminada “Unassigned”. Si no existe una instancia de grupo con el Id positivo \[int] especificado, el método devolverá un error descriptivo. El valor predeterminado es 0.

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Ejemplo de solicitud**

Los parámetros y encabezados de la solicitud de ejemplo se establecen de la siguiente manera:

- `identificación` está establecido en `Predeterminado`
- `reassignmentGroupId` está establecido en `90`
- El valor opcional del encabezado `If-Unmodified-Since` es igual al valor del encabezado `Última modificación` recuperado de la respuesta de `GET /id` o `GET /name`.

```text
DELETE /2022/06/REST/Groups/Regular/Default/?reassignmentGroupId=90 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
If-Unmodified-Since: Wed, 20 Dec 2023 21:32:34 GMT
```

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Respuesta correcta**

<font color="#089a4d">204</font>: El grupo especificado se ha eliminado de la red 

**Respuesta** **de error**

<font color="#9a0808">300</font>: La representación solicitada no pudo devolverse porque es ambigua (hay múltiples representaciones solicitadas)

<font color="#9a0808">400</font>: La solicitud o el cuerpo de la solicitud tienen un formato incorrecto y, por lo tanto, no son válidos, o se rechazan de acuerdo con las reglas de negocio

<font color="#9a0808">401</font>: El token de acceso no es válido o no se especificó

<font color="#9a0808">403</font>: El token de acceso proporcionado, aunque es válido, no proporciona acceso a este método

<font color="#9a0808">404</font>: El servidor no puede encontrar el recurso solicitado (la ruta no existe)

<font color="#9a0808">406</font>: El servidor no puede devolver la representación de datos que usted solicitó (como se especifica en el encabezado "Accept")

<font color="#9a0808">412</font>: La condición previa falló (el recurso cambió desde el momento especificado en el valor del encabezado “If-Unmodified-Since”)

<font color="#9a0808">5XX</font>: Cualquier código 500 es un error interno del servidor

## GET /\{Id}/Schedule/  

Devuelve una lista de [Entidad de presentación programada](docId\:z_PQopHm2pRePJQ1IEuXW) en el grupo especificado

**Token de alcance requerido**

bsn.api.main.groups.regular.retrieve

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Segmento**

- `groupId` <font color="#704ae0">int: </font>El identificador único del grupo

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Parámetro de cadena de consulta**

- `marcador` <font color="#704ae0">string</font> <font color="#01a0af">optional: </font>Un valor que especifica qué página recuperar. Este valor es útil si la entrada `isTruncated` en el cuerpo de la respuesta de la llamada GET anterior indica que el número de instancias de grupo excede el valor de `pageSize`.
- `pageSize` <font color="#704ae0">int</font> <font color="#01a0af">optional: </font>La cantidad máxima de instancias de grupo que pueden incluirse en el cuerpo de la respuesta.

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Ejemplo de solicitud**

Los parámetros y encabezados de la solicitud de ejemplo se establecen de la siguiente manera:

- `groupId` se establece en `12345`
- `pageSize` se establece en `1`
- `marcador` se establece en el valor de la propiedad `[PagedList].[NextMarker]` de la respuesta anterior de la API de BSN.cloud.

```text
GET /2022/06/REST/Groups/Regular/12345/Schedule/?marker=Zy023g2B8&pageSize=1 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
```

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Cuerpo de respuesta exitoso**

<font color="#089a4d">200</font>: Devuelve una lista de las presentaciones programadas del grupo especificado

**Ejemplo**

```json
{
   "items": [   {
      "id": 2345678,
      "presentationId": 123456,
      "presentationName": "October2023Prez",
      "isRecurrent": false,
      "eventDate": "2023-11-03T00:00:00",
      "startTime": "00:00:00",
      "duration": "23:59:00",
      "recurrenceStartDate": null,
      "recurrenceEndDate": null,
      "daysOfWeek": "None",
      "creationDate": "2023-11-03T21:04:32.81Z",
      "lastModifiedDate": "2023-11-03T21:04:32.81Z",
      "expirationDate": "2023-11-04T11:59:00Z",
      "interruptScheduling": false
   }],
   "totalItemCount": 3,
   "matchingItemCount": 3,
   "pageSize": 1,
   "nextMarker": "GWpbWFcsw15NjI5MjN0",
   "prevMarker": "GWpbWFcsw15NjI5hu8u",
   "isTruncated": true,
   "sortExpression": "[ScheduledPresentation].[ExpireDate] DESC",
   "filterExpression": null
}
```

**Respuesta de error**

<font color="#9a0808">300</font>: No se pudo devolver la representación solicitada porque es ambigua (hay múltiples representaciones solicitadas)

<font color="#9a0808">400</font>: La solicitud tiene un formato incorrecto y, por lo tanto, no es válida

<font color="#9a0808">401</font>: El token de acceso no es válido o no se especificó

<font color="#9a0808">403</font>: El token de acceso proporcionado, aunque válido, no proporciona acceso a este método 

<font color="#9a0808">404</font>: El servidor no puede encontrar el recurso solicitado (la ruta no existe)

<font color="#9a0808">406</font>: El servidor no puede devolver la representación de datos que usted solicitó (según se especifica en el encabezado "Accept")

<font color="#9a0808">5XX</font>: Cualquier código 500 es un error interno del servidor

## POST /\{Id}/Schedule/  

Agrega una presentación programada al grupo especificado

**Token de alcance requerido**

bsn.api.main.groups.regular.update

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Segmento**

- `groupId` <font color="#704ae0">int: </font>El identificador único del grupo

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Cuerpo de la solicitud**

- La [Entidad de presentación programada](docId\:z_PQopHm2pRePJQ1IEuXW) 

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Ejemplo de solicitud**

Los parámetros y encabezados de ejemplo de la solicitud se establecen de la siguiente manera:

- `groupId` se establece en `12345`

```text
POST /2022/06/REST/Groups/Regular/12345/Schedule/ 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: 419
```

Este es el cuerpo de solicitud de ejemplo:

```json
{
  "id": 0,
  "presentationId": 23456,
  "presentationName": "October2023Prez",
  "isRecurrent": false,
  "eventDate": "2023-11-04T00:00:00",
  "startTime": "00:00:00",
  "duration": "23:59:00",
  "recurrenceStartDate": null,
  "recurrenceEndDate": null,
  "daysOfWeek": "None",
  "creationDate": "0001-01-01T00:00:00",
  "lastModifiedDate": "0001-01-01T00:00:00",
  "expirationDate": null,
  "interruptScheduling": false
}
```

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Cuerpo de respuesta correcta**

<font color="#089a4d">201</font>: Devuelve el nuevo recurso creado y referenciado por el Uri (proporcionado por el campo de encabezado Location) en la respuesta. La respuesta incluye la [Entidad de presentación programada](docId\:z_PQopHm2pRePJQ1IEuXW).

**Ejemplo**

```json
{
   "id": 1234567,
   "presentationId": 23456,
   "presentationName": "October2023Prez",
   "isRecurrent": false,
   "eventDate": "2023-11-04T00:00:00",
   "startTime": "00:00:00",
   "duration": "23:59:00",
   "recurrenceStartDate": null,
   "recurrenceEndDate": null,
   "daysOfWeek": "None",
   "creationDate": "2023-11-03T18:14:09.3506335Z",
   "lastModifiedDate": "2023-11-03T18:14:09.3506335Z",
   "expirationDate": "2023-11-05T11:59:00Z",
   "interruptScheduling": false
}
```

**Respuesta de error**

<font color="#9a0808">300</font>: La representación solicitada no pudo devolverse porque es ambigua (hay múltiples representaciones solicitadas)

<font color="#9a0808">400</font>: La solicitud o el cuerpo de la solicitud están mal formados y, por lo tanto, no son válidos, o se rechazan de acuerdo con las reglas de negocio

<font color="#9a0808">401</font>: El token de acceso no es válido o no se especificó

<font color="#9a0808">403</font>: El token de acceso proporcionado, aunque válido, no proporciona acceso a este método 

<font color="#9a0808">404</font>: El servidor no puede encontrar el recurso solicitado (la ruta no existe)

<font color="#9a0808">406</font>: El servidor no puede devolver la representación de datos que solicitó (como se especifica en el encabezado "Accept")

<font color="#9a0808">415</font>: El servidor no puede aceptar la representación de datos que envió (como se especifica en el encabezado "Content-Type")

<font color="#9a0808">5XX</font>: Cualquier código 500 es un error interno del servidor

## GET /\{name}/Schedule/  

Devuelve una lista de la [Entidad de presentación programada](docId\:z_PQopHm2pRePJQ1IEuXW) en el grupo especificado

**Token de alcance requerido**

bsn.api.main.groups.regular.retrieve

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Segmento**

- `groupName` <font color="#704ae0">string: </font>El nombre del grupo

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Parámetros de cadena de consulta**

- `marcador` <font color="#704ae0">string</font> <font color="#01a0af">opcional: </font>Un valor que especifica qué página recuperar. Este valor es útil si la entrada `isTruncated` en el cuerpo de la respuesta de la llamada GET anterior indica que el número de instancias del grupo excede el `pageSize`.
- `pageSize` <font color="#704ae0">int</font> <font color="#01a0af">opcional: </font>El número máximo de instancias del grupo que pueden incluirse en el cuerpo de la respuesta.

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Ejemplo de solicitud**

Los parámetros y encabezados de la solicitud de ejemplo se establecen de la siguiente manera:

- `groupName` se establece en `October2023Prez`
- `pageSize` se establece en `1`
- `marcador` se establece en el valor de la propiedad `[PagedList].[NextMarker]` de la respuesta anterior de la API de BSN.cloud.

```text
GET /2022/06/REST/Groups/Regular/October2023Prez/Schedule/?marker=RGVmYXVsdMDkxNA&pageSize=1 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
```

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Cuerpo de respuesta correcta**

<font color="#089a4d">200</font>: Devuelve una lista de las presentaciones programadas del grupo especificado

**Ejemplo**

```json
{
   "items": [   {
      "id": 2345678,
      "presentationId": 123456,
      "presentationName": "October2023Prez",
      "isRecurrent": true,
      "eventDate": null,
      "startTime": "00:00:00",
      "duration": "1.00:00:00",
      "recurrenceStartDate": null,
      "recurrenceEndDate": null,
      "daysOfWeek": "EveryDay",
      "creationDate": "2023-10-20T21:11:48.233Z",
      "lastModifiedDate": "2023-10-20T21:11:48.233Z",
      "expirationDate": null,
      "interruptScheduling": false
   }],
   "totalItemCount": 3,
   "matchingItemCount": 3,
   "pageSize": 1,
   "nextMarker": "GWpbWFcsw15NjI5MjN0",
   "prevMarker": "GWpbWFcsw15NjI58901",
   "isTruncated": true,
   "sortExpression": "[ScheduledPresentation].[ExpireDate] DESC",
   "filterExpression": null
}
```

**Respuesta de error**

<font color="#9a0808">300</font>: La representación solicitada no pudo devolverse porque es ambigua (hay múltiples representaciones solicitadas)

<font color="#9a0808">400</font>: La solicitud tiene un formato incorrecto y, por lo tanto, no es válida

<font color="#9a0808">401</font>: El token de acceso no es válido o no se especificó

<font color="#9a0808">403</font>: El token de acceso proporcionado, aunque válido, no proporciona acceso a este método

<font color="#9a0808">404</font>: El servidor no puede encontrar el recurso solicitado (la ruta no existe) 

<font color="#9a0808">406</font>: El servidor no puede devolver la representación de datos que solicitó (como se especifica en el encabezado "Accept")

<font color="#9a0808">5XX</font>: Cualquier código 500 es un error interno del servidor

## POST /\{name}/Schedule/  

Agrega una presentación programada al grupo especificado

**Token de alcance requerido**

bsn.api.main.groups.regular.update

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Segmento**

- `groupName` <font color="#704ae0">string: </font>El nombre del grupo

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Cuerpo de la solicitud**

- La [Entidad de presentación programada](docId\:z_PQopHm2pRePJQ1IEuXW) 

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Ejemplo de solicitud**

Los parámetros y encabezados de la solicitud de ejemplo se establecen de la siguiente manera:

- `groupName` se establece en `October2023Prez`

```text
POST /2022/06/REST/Groups/Regular/October2023Prez/Schedule/ 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: 419
```

Este es el cuerpo de la solicitud de ejemplo:

```json
{
  "id": 0,
  "presentationId": 123456,
  "presentationName": "October2023Prez",
  "isRecurrent": false,
  "eventDate": "2023-11-04T00:00:00",
  "startTime": "00:00:00",
  "duration": "23:59:00",
  "recurrenceStartDate": null,
  "recurrenceEndDate": null,
  "daysOfWeek": "None",
  "creationDate": "0001-01-01T00:00:00",
  "lastModifiedDate": "0001-01-01T00:00:00",
  "expirationDate": null,
  "interruptScheduling": false
}
```

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Cuerpo de la respuesta exitosa**

<font color="#089a4d">201</font>: Devuelve el nuevo recurso creado y referenciado por el Uri (proporcionado por el campo de encabezado Location) en la respuesta. La respuesta incluye la [Entidad de presentación programada](docId\:z_PQopHm2pRePJQ1IEuXW) .

**Ejemplo**

```json
{
   "id": 2345678,
   "presentationId": 23456,
   "presentationName": "October2023Prez",
   "isRecurrent": false,
   "eventDate": "2023-11-04T00:00:00",
   "startTime": "00:00:00",
   "duration": "23:59:00",
   "recurrenceStartDate": null,
   "recurrenceEndDate": null,
   "daysOfWeek": "None",
   "creationDate": "2023-11-03T18:14:09.3506335Z",
   "lastModifiedDate": "2023-11-03T18:14:09.3506335Z",
   "expirationDate": "2023-11-05T11:59:00Z",
   "interruptScheduling": false
}
```

**Respuesta de error**

<font color="#9a0808">300</font>: La representación solicitada no pudo devolverse porque es ambigua (hay múltiples representaciones solicitadas)

<font color="#9a0808">400</font>: La solicitud o el cuerpo de la solicitud tienen un formato incorrecto y, por lo tanto, no son válidos, o se rechazan de acuerdo con las reglas de negocio

<font color="#9a0808">401</font>: El token de acceso no es válido o no se especificó

<font color="#9a0808">403</font>: El token de acceso proporcionado, aunque válido, no proporciona acceso a este método

<font color="#9a0808">404</font>: El servidor no puede encontrar el recurso solicitado (la ruta no existe) 

<font color="#9a0808">406</font>: El servidor no puede devolver la representación de datos que usted solicitó (según se especifica en el encabezado "Accept")

<font color="#9a0808">415</font>: El servidor no puede aceptar la representación de datos que usted envió (según se especifica en el encabezado "Content-Type")

<font color="#9a0808">5XX</font>: Cualquier código 500 es un error interno del servidor

## GET /\{id}/Schedule/\{scheduledPresentationId}/  

Devuelve la programación de la presentación especificada en el grupo especificado

**Token de Scope requerido**

bsn.api.main.groups.regular.retrieve

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Segmento**

`groupId` <font color="#704ae0">int: </font>El identificador único del grupo

`scheduledPresentationId` <font color="#704ae0">int: </font>El identificador único de la presentación programada

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Ejemplo de solicitud**

Los parámetros y encabezados de la solicitud de ejemplo se establecen de la siguiente manera:

- `groupId` se establece en `12345`
- `scheduledPresentationId` se establece en `234567`

```text
GET /2022/06/REST/Groups/Regular/12345/Schedule/234567/ 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
```

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Cuerpo de la respuesta correcta**

<font color="#089a4d">200</font>: Devuelve la [Entidad de presentación programada](docId\:z_PQopHm2pRePJQ1IEuXW) 

**Ejemplo**

```json
{
   "id": 234567,
   "presentationId": 1234567,
   "presentationName": "Default",
   "isRecurrent": true,
   "eventDate": null,
   "startTime": "00:00:00",
   "duration": "1.00:00:00",
   "recurrenceStartDate": null,
   "recurrenceEndDate": null,
   "daysOfWeek": "EveryDay",
   "creationDate": "2023-10-19T17:21:32.767Z",
   "lastModifiedDate": "2023-10-19T17:21:32.767Z",
   "expirationDate": null,
   "interruptScheduling": false
}
```

**Respuesta de error**

<font color="#9a0808">300</font>: La representación solicitada no pudo devolverse porque es ambigua (hay varias representaciones solicitadas)

<font color="#9a0808">400</font>: La solicitud está mal formada y, por lo tanto, no es válida

<font color="#9a0808">401</font>: El token de acceso no es válido o no se especificó

<font color="#9a0808">403</font>: El token de acceso proporcionado, aunque válido, no ofrece acceso a este método 

<font color="#9a0808">404</font>: El servidor no puede encontrar el recurso solicitado (la ruta no existe)

<font color="#9a0808">406</font>: El servidor no puede devolver la representación de datos que solicitó (según se especifica en el encabezado "Accept")

<font color="#9a0808">5XX</font>: Cualquier código 500 es un error interno del servidor

## PUT /\{id}/Schedule/\{scheduledPresentationId}/  

Actualiza la presentación programada especificada en el grupo especificado.

**Token de ámbito requerido**

bsn.api.main.groups.regular.update

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Segmento**

- `groupId` <font color="#704ae0">int: </font>El identificador único del grupo
- `scheduledPresentationId` <font color="#704ae0">int: </font>El identificador único de la presentación programada

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Cuerpo de la solicitud**

- La [Entidad de presentación programada](docId\:z_PQopHm2pRePJQ1IEuXW) 

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Ejemplo de solicitud**

Los parámetros y encabezados de la solicitud de ejemplo se establecen de la siguiente manera:

- `groupId` se establece en `12345`
- `scheduledPresentationId` se establece en `234567`

```text
PUT /2022/06/REST/Groups/Regular/12345/Schedule/234567/ 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: 443
```

Este es el cuerpo de solicitud de ejemplo:

```json
{
   "id": 0,
   "presentationId": 1234567,
   "presentationName": "Default",
   "isRecurrent": true,
   "eventDate": null,
   "startTime": "00:00:00",
   "duration": "1.00:00:00",
   "recurrenceStartDate": null,
   "recurrenceEndDate": null,
   "daysOfWeek": "EveryDay",
   "creationDate": "0001-01-01T00:00:00",
   "lastModifiedDate": "0001-01-01T00:00:00",
   "expirationDate": null,
   "interruptScheduling": false
}
```

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Respuesta correcta**

<font color="#089a4d">204</font>: La presentación programada en el grupo especificado ha sido actualizada

**Respuesta de error**

<font color="#9a0808">300</font>: La representación solicitada no pudo devolverse porque es ambigua (hay múltiples representaciones solicitadas)

<font color="#9a0808">400</font>: La solicitud o el cuerpo de la solicitud tiene un formato incorrecto y, por lo tanto, no es válido, o es rechazado de acuerdo con las reglas de negocio

<font color="#9a0808">401</font>: El token de acceso no es válido o no se ha especificado

<font color="#9a0808">403</font>: El token de acceso proporcionado, aunque válido, no proporciona acceso a este método

<font color="#9a0808">404</font>: El servidor no puede encontrar el recurso solicitado (la ruta no existe)

<font color="#9a0808">406</font>: El servidor no puede devolver la representación de datos que solicitó (como se especifica en el encabezado "Accept")

<font color="#9a0808">415</font>: El servidor no puede aceptar la representación de datos que envió (como se especifica en el encabezado "Content-Type")

<font color="#9a0808">5XX</font>: Cualquier código 500 es un error interno del servidor

## DELETE /\{id}/Schedule/\{scheduledPresentationId}/  

Elimina una presentación programada especificada del grupo especificado

**Token de alcance requerido**

bsn.api.main.groups.regular.update

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Segmento**

- `groupId` <font color="#704ae0">int: </font>El identificador único del grupo
- `scheduledPresentationId` <font color="#704ae0">int: </font>El identificador único de la presentación programada

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Ejemplo de solicitud**

Los parámetros y encabezados de la solicitud de ejemplo se establecen de la siguiente manera:

- `groupId` se establece en `12345`
- `scheduledPresentationId` se establece en `234567`

```text
DELETE /2022/06/REST/Groups/Regular/12345/Schedule/234567/ 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
```

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Respuesta correcta**

<font color="#089a4d">204</font>: La presentación programada ha sido eliminada del grupo especificado

**Respuesta de error**

<font color="#9a0808">300</font>: La representación solicitada no pudo devolverse porque es ambigua (hay múltiples representaciones solicitadas)

<font color="#9a0808">400</font>: La solicitud o el cuerpo de la solicitud tiene un formato incorrecto y, por lo tanto, no es válido, o se rechaza de acuerdo con las reglas de negocio

<font color="#9a0808">401</font>: El token de acceso no es válido o no se especificó

<font color="#9a0808">403</font>: El token de acceso proporcionado, aunque válido, no proporciona acceso a este método 

<font color="#9a0808">404</font>: El servidor no puede encontrar el recurso solicitado (la ruta no existe)

<font color="#9a0808">406</font>: El servidor no puede devolver la representación de datos que usted solicitó (según se especifica en el encabezado "Accept")

<font color="#9a0808">5XX</font>: Cualquier código 500 es un error interno del servidor

## GET /\{name}/Schedule/\{scheduledPresentationId}/  

Devuelve la programación de la presentación especificada en el grupo especificado

**Token de Scope requerido**

bsn.api.main.groups.regular.retrieve

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Segmento**

- `groupName` <font color="#704ae0">string: </font>El nombre del grupo
- `scheduledPresentationId` <font color="#704ae0">int: </font>El identificador único de la presentación programada

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Ejemplo de solicitud**

Los parámetros y encabezados de la solicitud de ejemplo se establecen de la siguiente manera:

- `groupName` se establece en `Predeterminado`
- `scheduledPresentationId` se establece en `234567`

```text
GET /2022/06/REST/Groups/Regular/Default/Schedule/234567/ 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
```

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Cuerpo de la respuesta correcta**

<font color="#089a4d">200</font>: Devuelve la [Entidad de presentación programada](docId\:z_PQopHm2pRePJQ1IEuXW).

**Ejemplo**

```json
{
   "id": 234567,
   "presentationId": 987654,
   "presentationName": "Default",
   "isRecurrent": true,
   "eventDate": null,
   "startTime": "00:00:00",
   "duration": "1.00:00:00",
   "recurrenceStartDate": null,
   "recurrenceEndDate": null,
   "daysOfWeek": "EveryDay",
   "creationDate": "2023-10-19T17:21:32.767Z",
   "lastModifiedDate": "2023-10-19T17:21:32.767Z",
   "expirationDate": null,
   "interruptScheduling": false
}
```

**Respuesta de error**

<font color="#9a0808">300</font>: La representación solicitada no pudo devolverse porque es ambigua (hay múltiples representaciones solicitadas)

<font color="#9a0808">400</font>: La solicitud tiene un formato incorrecto y, por lo tanto, no es válida

<font color="#9a0808">401</font>: El token de acceso no es válido o no se especificó

<font color="#9a0808">403</font>: El token de acceso proporcionado, aunque válido, no proporciona acceso a este método 

<font color="#9a0808">404</font>: El servidor no puede encontrar el recurso solicitado (la ruta no existe)

<font color="#9a0808">406</font>: El servidor no puede devolver la representación de datos que usted solicitó (según se especifica en el encabezado "Accept")

<font color="#9a0808">5XX</font>: Cualquier código 500 es un error interno del servidor

## PUT /\{name}/Schedule/\{scheduledPresentationId}/  

Actualiza la presentación programada especificada en el grupo especificado.

**Token de alcance requerido**

bsn.api.main.groups.regular.update

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Segmento**

- `groupName` <font color="#704ae0">string: </font>El nombre del grupo
- `scheduledPresentationId` <font color="#704ae0">int: </font>El identificador único de la presentación programada

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Cuerpo de la solicitud**

- La [Entidad de presentación programada](docId\:z_PQopHm2pRePJQ1IEuXW) 

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Ejemplo de solicitud**

Los parámetros y encabezados de la solicitud de ejemplo se establecen de la siguiente manera:

- `groupName` se establece en `Predeterminado`
- `scheduledPresentationId` se establece en `234567`

```text
PUT /2022/06/REST/Groups/Regular/Default/Schedule/234567/ 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: 443
```

Este es el cuerpo de la solicitud de ejemplo:

```json
{
   "id": 0,
   "presentationId": 987654,
   "presentationName": "Default",
   "isRecurrent": true,
   "eventDate": null,
   "startTime": "00:00:00",
   "duration": "1.00:00:00",
   "recurrenceStartDate": null,
   "recurrenceEndDate": null,
   "daysOfWeek": "EveryDay",
   "creationDate": "0001-01-01T00:00:00",
   "lastModifiedDate": "0001-01-01T00:00:00",
   "expirationDate": null,
   "interruptScheduling": false
}
```

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Respuesta correcta**

<font color="#089a4d">204</font>: La presentación programada especificada se ha actualizado en el grupo especificado

**Respuesta de error**

<font color="#9a0808">300</font>: La representación solicitada no pudo devolverse porque es ambigua (hay múltiples representaciones solicitadas)

<font color="#9a0808">400</font>: La solicitud o el cuerpo de la solicitud tiene un formato incorrecto y, por lo tanto, no es válido, o se rechaza de acuerdo con las reglas de negocio

<font color="#9a0808">401</font>: El token de acceso no es válido o no se especificó

<font color="#9a0808">403</font>: El token de acceso proporcionado, aunque válido, no proporciona acceso a este método 

<font color="#9a0808">404</font>: El servidor no puede encontrar el recurso solicitado (la ruta no existe)

<font color="#9a0808">406</font>: El servidor no puede devolver la representación de datos que usted solicitó (según se especifica en el encabezado "Accept")

<font color="#9a0808">415</font>: El servidor no puede aceptar la representación de datos que usted envió (según se especifica en el encabezado "Content-Type")

<font color="#9a0808">5XX</font>: Cualquier código 500 es un error interno del servidor

## DELETE /\{name}/Schedule/\{scheduledPresentationId}/ 

Elimina la presentación programada especificada del grupo especificado

**Token de alcance requerido**

bsn.api.main.groups.regular.update

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Segmento**

- `groupName` <font color="#704ae0">string: </font>El nombre del grupo
- `scheduledPresentationId` <font color="#704ae0">int: </font>El identificador único de la presentación programada

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Ejemplo de solicitud**

Los parámetros y encabezados de la solicitud de ejemplo se establecen de la siguiente manera:

- `groupName` se establece en `Predeterminado`
- `scheduledPresentationId` se establece en `234567`

```text
DELETE /2022/06/REST/Groups/Regular/Default/Schedule/234567/ 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
```

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Respuesta correcta**

<font color="#089a4d">204</font>: La presentación programada especificada se ha eliminado del grupo especificado

**Respuesta de error**

<font color="#9a0808">300</font>: No se pudo devolver la representación solicitada porque es ambigua (hay múltiples representaciones solicitadas)

<font color="#9a0808">400</font>: La solicitud o el cuerpo de la solicitud están mal formados y, por lo tanto, no son válidos, o se rechazan de acuerdo con las reglas de negocio

<font color="#9a0808">401</font>: El token de acceso no es válido o no se especificó

<font color="#9a0808">403</font>: El token de acceso proporcionado, aunque válido, no brinda acceso a este método

<font color="#9a0808">404</font>: El servidor no puede encontrar el recurso solicitado (la ruta no existe)

<font color="#9a0808">406</font>: El servidor no puede devolver la representación de datos que usted solicitó (como se especifica en el encabezado "Accept")

<font color="#9a0808">5XX</font>: Cualquier código 500 es un error interno del servidor

## GET /Operations/  

Devuelve los permisos operativos otorgados a roles para operaciones comerciales específicas

**Token de ámbito requerido**

bsn.api.main.groups.operations.retrieve

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Ejemplo de solicitud**

Los parámetros y encabezados de la solicitud de ejemplo se establecen de la siguiente manera:

```text
GET /2022/06/REST/Groups/Regular/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
```

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Cuerpo de la respuesta correcta**

<font color="#089a4d">200</font>: Devuelve la [Entidad de operaciones comerciales](docId\:BB_TAuFfpLMvkrODV93I7)

:::ExpandableHeading
Ejemplo

```json
{
   "uid": "d430853f-c05f-61b4-d137-0237a6984032",
   "singularName": "Full Control",
   "pluralName": "Group (Full Control)",
   "fullName": "Group (Full Control)",
   "targetEntity": "Group",
   "appliance": "Instance, Collection",
   "parent": null,
   "descendants":    [
            {
         "uid": "67b9b0ab-fb5f-36c4-d598-a71aa8998e4e",
         "singularName": "View Group",
         "pluralName": "View Groups",
         "fullName": "Group (Full Control) - View Groups",
         "targetEntity": "Group",
         "appliance": "Instance, Collection",
         "parent":          {
            "uid": "d430853f-c05f-61b4-d137-0237a6984032",
            "singularName": "Full Control",
            "pluralName": "Group (Full Control)",
            "fullName": "Group (Full Control)",
            "targetEntity": "Group",
            "appliance": "Instance, Collection",
            "parent": null,
            "descendants": null,
            "permissions": null
         },
         "descendants": [],
         "permissions":          [
                        {
               "entityId": null,
               "operationUID": "67b9b0ab-fb5f-36c4-d598-a71aa8998e4e",
               "principal":                {
                  "name": "Publishers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 4
               },
               "isFixed": true,
               "isInherited": false,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:46.907Z"
            },
                        {
               "entityId": null,
               "operationUID": "67b9b0ab-fb5f-36c4-d598-a71aa8998e4e",
               "principal":                {
                  "name": "Viewers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 6
               },
               "isFixed": true,
               "isInherited": false,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:47.983Z"
            },
                        {
               "entityId": null,
               "operationUID": "67b9b0ab-fb5f-36c4-d598-a71aa8998e4e",
               "principal":                {
                  "name": "Administrators",
                  "isCustom": false,
                  "type": "Role",
                  "id": 1
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:45.95Z"
            },
                        {
               "entityId": null,
               "operationUID": "67b9b0ab-fb5f-36c4-d598-a71aa8998e4e",
               "principal":                {
                  "name": "General Managers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 2
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:46.237Z"
            },
                        {
               "entityId": null,
               "operationUID": "67b9b0ab-fb5f-36c4-d598-a71aa8998e4e",
               "principal":                {
                  "name": "Creators",
                  "isCustom": false,
                  "type": "Role",
                  "id": 3
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:46.553Z"
            },
                        {
               "entityId": null,
               "operationUID": "67b9b0ab-fb5f-36c4-d598-a71aa8998e4e",
               "principal":                {
                  "name": "Network Managers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 5
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:47.487Z"
            },
                        {
               "entityId": null,
               "operationUID": "67b9b0ab-fb5f-36c4-d598-a71aa8998e4e",
               "principal":                {
                  "name": "Custom",
                  "isCustom": true,
                  "type": "Role",
                  "id": 10498
               },
               "isFixed": false,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2023-10-05T22:24:13.543Z"
            }
         ]
      },
            {
         "uid": "2e0ef6d3-8e8e-f704-258c-82c8ecae089d",
         "singularName": "View Devices",
         "pluralName": "View Devices",
         "fullName": "Group (Full Control) - View Devices",
         "targetEntity": "Group",
         "appliance": "Instance, Collection",
         "parent":          {
            "uid": "d430853f-c05f-61b4-d137-0237a6984032",
            "singularName": "Full Control",
            "pluralName": "Group (Full Control)",
            "fullName": "Group (Full Control)",
            "targetEntity": "Group",
            "appliance": "Instance, Collection",
            "parent": null,
            "descendants": null,
            "permissions": null
         },
         "descendants": [],
         "permissions":          [
                        {
               "entityId": null,
               "operationUID": "2e0ef6d3-8e8e-f704-258c-82c8ecae089d",
               "principal":                {
                  "name": "Viewers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 6
               },
               "isFixed": true,
               "isInherited": false,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:47.993Z"
            },
                        {
               "entityId": null,
               "operationUID": "2e0ef6d3-8e8e-f704-258c-82c8ecae089d",
               "principal":                {
                  "name": "Administrators",
                  "isCustom": false,
                  "type": "Role",
                  "id": 1
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:45.95Z"
            },
                        {
               "entityId": null,
               "operationUID": "2e0ef6d3-8e8e-f704-258c-82c8ecae089d",
               "principal":                {
                  "name": "General Managers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 2
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:46.237Z"
            },
                        {
               "entityId": null,
               "operationUID": "2e0ef6d3-8e8e-f704-258c-82c8ecae089d",
               "principal":                {
                  "name": "Creators",
                  "isCustom": false,
                  "type": "Role",
                  "id": 3
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:46.553Z"
            },
                        {
               "entityId": null,
               "operationUID": "2e0ef6d3-8e8e-f704-258c-82c8ecae089d",
               "principal":                {
                  "name": "Publishers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 4
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:46.893Z"
            },
                        {
               "entityId": null,
               "operationUID": "2e0ef6d3-8e8e-f704-258c-82c8ecae089d",
               "principal":                {
                  "name": "Network Managers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 5
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:47.487Z"
            },
                        {
               "entityId": null,
               "operationUID": "2e0ef6d3-8e8e-f704-258c-82c8ecae089d",
               "principal":                {
                  "name": "Custom",
                  "isCustom": true,
                  "type": "Role",
                  "id": 10498
               },
               "isFixed": false,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2023-10-05T22:24:13.543Z"
            }
         ]
      },
            {
         "uid": "432d38a8-7055-40f0-8dd2-348805c1b725",
         "singularName": "View Schedule",
         "pluralName": "View Schedule",
         "fullName": "Group (Full Control) - View Schedule",
         "targetEntity": "Group",
         "appliance": "Instance, Collection",
         "parent":          {
            "uid": "d430853f-c05f-61b4-d137-0237a6984032",
            "singularName": "Full Control",
            "pluralName": "Group (Full Control)",
            "fullName": "Group (Full Control)",
            "targetEntity": "Group",
            "appliance": "Instance, Collection",
            "parent": null,
            "descendants": null,
            "permissions": null
         },
         "descendants": [],
         "permissions":          [
                        {
               "entityId": null,
               "operationUID": "432d38a8-7055-40f0-8dd2-348805c1b725",
               "principal":                {
                  "name": "Publishers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 4
               },
               "isFixed": true,
               "isInherited": false,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:46.93Z"
            },
                        {
               "entityId": null,
               "operationUID": "432d38a8-7055-40f0-8dd2-348805c1b725",
               "principal":                {
                  "name": "Viewers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 6
               },
               "isFixed": true,
               "isInherited": false,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:48.003Z"
            },
                        {
               "entityId": null,
               "operationUID": "432d38a8-7055-40f0-8dd2-348805c1b725",
               "principal":                {
                  "name": "Administrators",
                  "isCustom": false,
                  "type": "Role",
                  "id": 1
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:45.95Z"
            },
                        {
               "entityId": null,
               "operationUID": "432d38a8-7055-40f0-8dd2-348805c1b725",
               "principal":                {
                  "name": "General Managers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 2
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:46.237Z"
            },
                        {
               "entityId": null,
               "operationUID": "432d38a8-7055-40f0-8dd2-348805c1b725",
               "principal":                {
                  "name": "Creators",
                  "isCustom": false,
                  "type": "Role",
                  "id": 3
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:46.553Z"
            },
                        {
               "entityId": null,
               "operationUID": "432d38a8-7055-40f0-8dd2-348805c1b725",
               "principal":                {
                  "name": "Network Managers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 5
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:47.487Z"
            },
                        {
               "entityId": null,
               "operationUID": "432d38a8-7055-40f0-8dd2-348805c1b725",
               "principal":                {
                  "name": "Custom",
                  "isCustom": true,
                  "type": "Role",
                  "id": 10498
               },
               "isFixed": false,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2023-10-05T22:24:13.543Z"
            }
         ]
      },
            {
         "uid": "08a3a36f-163c-7f44-9586-839aeee44587",
         "singularName": "Create Group",
         "pluralName": "Create Group",
         "fullName": "Group (Full Control) - Create Group",
         "targetEntity": "Group",
         "appliance": "Collection",
         "parent":          {
            "uid": "d430853f-c05f-61b4-d137-0237a6984032",
            "singularName": "Full Control",
            "pluralName": "Group (Full Control)",
            "fullName": "Group (Full Control)",
            "targetEntity": "Group",
            "appliance": "Instance, Collection",
            "parent": null,
            "descendants": null,
            "permissions": null
         },
         "descendants": [],
         "permissions":          [
                        {
               "entityId": null,
               "operationUID": "08a3a36f-163c-7f44-9586-839aeee44587",
               "principal":                {
                  "name": "Administrators",
                  "isCustom": false,
                  "type": "Role",
                  "id": 1
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:45.95Z"
            },
                        {
               "entityId": null,
               "operationUID": "08a3a36f-163c-7f44-9586-839aeee44587",
               "principal":                {
                  "name": "General Managers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 2
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:46.237Z"
            },
                        {
               "entityId": null,
               "operationUID": "08a3a36f-163c-7f44-9586-839aeee44587",
               "principal":                {
                  "name": "Creators",
                  "isCustom": false,
                  "type": "Role",
                  "id": 3
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:46.553Z"
            },
                        {
               "entityId": null,
               "operationUID": "08a3a36f-163c-7f44-9586-839aeee44587",
               "principal":                {
                  "name": "Publishers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 4
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:46.893Z"
            },
                        {
               "entityId": null,
               "operationUID": "08a3a36f-163c-7f44-9586-839aeee44587",
               "principal":                {
                  "name": "Network Managers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 5
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:47.487Z"
            },
                        {
               "entityId": null,
               "operationUID": "08a3a36f-163c-7f44-9586-839aeee44587",
               "principal":                {
                  "name": "Viewers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 6
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:47.97Z"
            },
                        {
               "entityId": null,
               "operationUID": "08a3a36f-163c-7f44-9586-839aeee44587",
               "principal":                {
                  "name": "Custom",
                  "isCustom": true,
                  "type": "Role",
                  "id": 10498
               },
               "isFixed": false,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2023-10-05T22:24:13.543Z"
            }
         ]
      },
            {
         "uid": "294648cf-9961-4b93-9ab9-23264a58328d",
         "singularName": "Update Group",
         "pluralName": "Update Group",
         "fullName": "Group (Full Control) - Update Group",
         "targetEntity": "Group",
         "appliance": "Instance, Collection",
         "parent":          {
            "uid": "d430853f-c05f-61b4-d137-0237a6984032",
            "singularName": "Full Control",
            "pluralName": "Group (Full Control)",
            "fullName": "Group (Full Control)",
            "targetEntity": "Group",
            "appliance": "Instance, Collection",
            "parent": null,
            "descendants": null,
            "permissions": null
         },
         "descendants": [],
         "permissions":          [
                        {
               "entityId": null,
               "operationUID": "294648cf-9961-4b93-9ab9-23264a58328d",
               "principal":                {
                  "name": "Administrators",
                  "isCustom": false,
                  "type": "Role",
                  "id": 1
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:45.95Z"
            },
                        {
               "entityId": null,
               "operationUID": "294648cf-9961-4b93-9ab9-23264a58328d",
               "principal":                {
                  "name": "General Managers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 2
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:46.237Z"
            },
                        {
               "entityId": null,
               "operationUID": "294648cf-9961-4b93-9ab9-23264a58328d",
               "principal":                {
                  "name": "Creators",
                  "isCustom": false,
                  "type": "Role",
                  "id": 3
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:46.553Z"
            },
                        {
               "entityId": null,
               "operationUID": "294648cf-9961-4b93-9ab9-23264a58328d",
               "principal":                {
                  "name": "Publishers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 4
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:46.893Z"
            },
                        {
               "entityId": null,
               "operationUID": "294648cf-9961-4b93-9ab9-23264a58328d",
               "principal":                {
                  "name": "Network Managers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 5
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:47.487Z"
            },
                        {
               "entityId": null,
               "operationUID": "294648cf-9961-4b93-9ab9-23264a58328d",
               "principal":                {
                  "name": "Viewers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 6
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:47.97Z"
            },
                        {
               "entityId": null,
               "operationUID": "294648cf-9961-4b93-9ab9-23264a58328d",
               "principal":                {
                  "name": "Custom",
                  "isCustom": true,
                  "type": "Role",
                  "id": 10498
               },
               "isFixed": false,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2023-10-05T22:24:13.543Z"
            }
         ]
      },
            {
         "uid": "2f860f4e-c67b-a9d4-95de-f0bdd6c10f58",
         "singularName": "Add Device",
         "pluralName": "Add Device",
         "fullName": "Group (Full Control) - Add Device",
         "targetEntity": "Group",
         "appliance": "Instance, Collection",
         "parent":          {
            "uid": "d430853f-c05f-61b4-d137-0237a6984032",
            "singularName": "Full Control",
            "pluralName": "Group (Full Control)",
            "fullName": "Group (Full Control)",
            "targetEntity": "Group",
            "appliance": "Instance, Collection",
            "parent": null,
            "descendants": null,
            "permissions": null
         },
         "descendants": [],
         "permissions":          [
                        {
               "entityId": null,
               "operationUID": "2f860f4e-c67b-a9d4-95de-f0bdd6c10f58",
               "principal":                {
                  "name": "Administrators",
                  "isCustom": false,
                  "type": "Role",
                  "id": 1
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:45.95Z"
            },
                        {
               "entityId": null,
               "operationUID": "2f860f4e-c67b-a9d4-95de-f0bdd6c10f58",
               "principal":                {
                  "name": "General Managers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 2
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:46.237Z"
            },
                        {
               "entityId": null,
               "operationUID": "2f860f4e-c67b-a9d4-95de-f0bdd6c10f58",
               "principal":                {
                  "name": "Creators",
                  "isCustom": false,
                  "type": "Role",
                  "id": 3
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:46.553Z"
            },
                        {
               "entityId": null,
               "operationUID": "2f860f4e-c67b-a9d4-95de-f0bdd6c10f58",
               "principal":                {
                  "name": "Publishers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 4
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:46.893Z"
            },
                        {
               "entityId": null,
               "operationUID": "2f860f4e-c67b-a9d4-95de-f0bdd6c10f58",
               "principal":                {
                  "name": "Network Managers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 5
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:47.487Z"
            },
                        {
               "entityId": null,
               "operationUID": "2f860f4e-c67b-a9d4-95de-f0bdd6c10f58",
               "principal":                {
                  "name": "Viewers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 6
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:47.97Z"
            },
                        {
               "entityId": null,
               "operationUID": "2f860f4e-c67b-a9d4-95de-f0bdd6c10f58",
               "principal":                {
                  "name": "Custom",
                  "isCustom": true,
                  "type": "Role",
                  "id": 10498
               },
               "isFixed": false,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2023-10-05T22:24:13.543Z"
            }
         ]
      },
            {
         "uid": "31cd7f9e-1cd2-22b4-7909-83de98da8115",
         "singularName": "Remove Device",
         "pluralName": "Remove Device",
         "fullName": "Group (Full Control) - Remove Device",
         "targetEntity": "Group",
         "appliance": "Instance, Collection",
         "parent":          {
            "uid": "d430853f-c05f-61b4-d137-0237a6984032",
            "singularName": "Full Control",
            "pluralName": "Group (Full Control)",
            "fullName": "Group (Full Control)",
            "targetEntity": "Group",
            "appliance": "Instance, Collection",
            "parent": null,
            "descendants": null,
            "permissions": null
         },
         "descendants": [],
         "permissions":          [
                        {
               "entityId": null,
               "operationUID": "31cd7f9e-1cd2-22b4-7909-83de98da8115",
               "principal":                {
                  "name": "Administrators",
                  "isCustom": false,
                  "type": "Role",
                  "id": 1
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:45.95Z"
            },
                        {
               "entityId": null,
               "operationUID": "31cd7f9e-1cd2-22b4-7909-83de98da8115",
               "principal":                {
                  "name": "General Managers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 2
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:46.237Z"
            },
                        {
               "entityId": null,
               "operationUID": "31cd7f9e-1cd2-22b4-7909-83de98da8115",
               "principal":                {
                  "name": "Creators",
                  "isCustom": false,
                  "type": "Role",
                  "id": 3
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:46.553Z"
            },
                        {
               "entityId": null,
               "operationUID": "31cd7f9e-1cd2-22b4-7909-83de98da8115",
               "principal":                {
                  "name": "Publishers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 4
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:46.893Z"
            },
                        {
               "entityId": null,
               "operationUID": "31cd7f9e-1cd2-22b4-7909-83de98da8115",
               "principal":                {
                  "name": "Network Managers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 5
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:47.487Z"
            },
                        {
               "entityId": null,
               "operationUID": "31cd7f9e-1cd2-22b4-7909-83de98da8115",
               "principal":                {
                  "name": "Viewers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 6
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:47.97Z"
            },
                        {
               "entityId": null,
               "operationUID": "31cd7f9e-1cd2-22b4-7909-83de98da8115",
               "principal":                {
                  "name": "Custom",
                  "isCustom": true,
                  "type": "Role",
                  "id": 10498
               },
               "isFixed": false,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2023-10-05T22:24:13.543Z"
            }
         ]
      },
            {
         "uid": "66702586-1ae4-4079-83e7-d803e6b105d5",
         "singularName": "Update Schedule",
         "pluralName": "Update Schedule",
         "fullName": "Group (Full Control) - Update Schedule",
         "targetEntity": "Group",
         "appliance": "Instance, Collection",
         "parent":          {
            "uid": "d430853f-c05f-61b4-d137-0237a6984032",
            "singularName": "Full Control",
            "pluralName": "Group (Full Control)",
            "fullName": "Group (Full Control)",
            "targetEntity": "Group",
            "appliance": "Instance, Collection",
            "parent": null,
            "descendants": null,
            "permissions": null
         },
         "descendants": [],
         "permissions":          [
                        {
               "entityId": null,
               "operationUID": "66702586-1ae4-4079-83e7-d803e6b105d5",
               "principal":                {
                  "name": "Publishers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 4
               },
               "isFixed": true,
               "isInherited": false,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:46.943Z"
            },
                        {
               "entityId": null,
               "operationUID": "66702586-1ae4-4079-83e7-d803e6b105d5",
               "principal":                {
                  "name": "Network Managers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 5
               },
               "isFixed": true,
               "isInherited": false,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:47.5Z"
            },
                        {
               "entityId": null,
               "operationUID": "66702586-1ae4-4079-83e7-d803e6b105d5",
               "principal":                {
                  "name": "Administrators",
                  "isCustom": false,
                  "type": "Role",
                  "id": 1
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:45.95Z"
            },
                        {
               "entityId": null,
               "operationUID": "66702586-1ae4-4079-83e7-d803e6b105d5",
               "principal":                {
                  "name": "General Managers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 2
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:46.237Z"
            },
                        {
               "entityId": null,
               "operationUID": "66702586-1ae4-4079-83e7-d803e6b105d5",
               "principal":                {
                  "name": "Creators",
                  "isCustom": false,
                  "type": "Role",
                  "id": 3
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:46.553Z"
            },
                        {
               "entityId": null,
               "operationUID": "66702586-1ae4-4079-83e7-d803e6b105d5",
               "principal":                {
                  "name": "Viewers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 6
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:47.97Z"
            },
                        {
               "entityId": null,
               "operationUID": "66702586-1ae4-4079-83e7-d803e6b105d5",
               "principal":                {
                  "name": "Custom",
                  "isCustom": true,
                  "type": "Role",
                  "id": 10498
               },
               "isFixed": false,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2023-10-05T22:24:13.543Z"
            }
         ]
      },
            {
         "uid": "df37d180-183f-68e4-1515-5ea51a0d053f",
         "singularName": "Edit Permissions",
         "pluralName": "Edit Permissions",
         "fullName": "Group (Full Control) - Edit Permissions",
         "targetEntity": "Group",
         "appliance": "Collection",
         "parent":          {
            "uid": "d430853f-c05f-61b4-d137-0237a6984032",
            "singularName": "Full Control",
            "pluralName": "Group (Full Control)",
            "fullName": "Group (Full Control)",
            "targetEntity": "Group",
            "appliance": "Instance, Collection",
            "parent": null,
            "descendants": null,
            "permissions": null
         },
         "descendants": [],
         "permissions":          [
                        {
               "entityId": null,
               "operationUID": "df37d180-183f-68e4-1515-5ea51a0d053f",
               "principal":                {
                  "name": "Administrators",
                  "isCustom": false,
                  "type": "Role",
                  "id": 1
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:45.95Z"
            },
                        {
               "entityId": null,
               "operationUID": "df37d180-183f-68e4-1515-5ea51a0d053f",
               "principal":                {
                  "name": "General Managers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 2
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:46.237Z"
            },
                        {
               "entityId": null,
               "operationUID": "df37d180-183f-68e4-1515-5ea51a0d053f",
               "principal":                {
                  "name": "Creators",
                  "isCustom": false,
                  "type": "Role",
                  "id": 3
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:46.553Z"
            },
                        {
               "entityId": null,
               "operationUID": "df37d180-183f-68e4-1515-5ea51a0d053f",
               "principal":                {
                  "name": "Publishers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 4
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:46.893Z"
            },
                        {
               "entityId": null,
               "operationUID": "df37d180-183f-68e4-1515-5ea51a0d053f",
               "principal":                {
                  "name": "Network Managers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 5
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:47.487Z"
            },
                        {
               "entityId": null,
               "operationUID": "df37d180-183f-68e4-1515-5ea51a0d053f",
               "principal":                {
                  "name": "Viewers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 6
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:47.97Z"
            },
                        {
               "entityId": null,
               "operationUID": "df37d180-183f-68e4-1515-5ea51a0d053f",
               "principal":                {
                  "name": "Custom",
                  "isCustom": true,
                  "type": "Role",
                  "id": 10498
               },
               "isFixed": false,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2023-10-05T22:24:13.543Z"
            }
         ]
      },
            {
         "uid": "0720a4b7-7c43-76f4-4913-4d92f5709149",
         "singularName": "Delete Group",
         "pluralName": "Delete Group",
         "fullName": "Group (Full Control) - Delete Group",
         "targetEntity": "Group",
         "appliance": "Instance, Collection",
         "parent":          {
            "uid": "d430853f-c05f-61b4-d137-0237a6984032",
            "singularName": "Full Control",
            "pluralName": "Group (Full Control)",
            "fullName": "Group (Full Control)",
            "targetEntity": "Group",
            "appliance": "Instance, Collection",
            "parent": null,
            "descendants": null,
            "permissions": null
         },
         "descendants": [],
         "permissions":          [
                        {
               "entityId": null,
               "operationUID": "0720a4b7-7c43-76f4-4913-4d92f5709149",
               "principal":                {
                  "name": "Administrators",
                  "isCustom": false,
                  "type": "Role",
                  "id": 1
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:45.95Z"
            },
                        {
               "entityId": null,
               "operationUID": "0720a4b7-7c43-76f4-4913-4d92f5709149",
               "principal":                {
                  "name": "General Managers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 2
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:46.237Z"
            },
                        {
               "entityId": null,
               "operationUID": "0720a4b7-7c43-76f4-4913-4d92f5709149",
               "principal":                {
                  "name": "Creators",
                  "isCustom": false,
                  "type": "Role",
                  "id": 3
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:46.553Z"
            },
                        {
               "entityId": null,
               "operationUID": "0720a4b7-7c43-76f4-4913-4d92f5709149",
               "principal":                {
                  "name": "Publishers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 4
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:46.893Z"
            },
                        {
               "entityId": null,
               "operationUID": "0720a4b7-7c43-76f4-4913-4d92f5709149",
               "principal":                {
                  "name": "Network Managers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 5
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": true,
               "creationDate": "2020-08-17T20:49:47.487Z"
            },
                        {
               "entityId": null,
               "operationUID": "0720a4b7-7c43-76f4-4913-4d92f5709149",
               "principal":                {
                  "name": "Viewers",
                  "isCustom": false,
                  "type": "Role",
                  "id": 6
               },
               "isFixed": true,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2020-08-17T20:49:47.97Z"
            },
                        {
               "entityId": null,
               "operationUID": "0720a4b7-7c43-76f4-4913-4d92f5709149",
               "principal":                {
                  "name": "Custom",
                  "isCustom": true,
                  "type": "Role",
                  "id": 10498
               },
               "isFixed": false,
               "isInherited": true,
               "isAllowed": false,
               "creationDate": "2023-10-05T22:24:13.543Z"
            }
         ]
      }
   ],
   "permissions":    [
            {
         "entityId": null,
         "operationUID": "d430853f-c05f-61b4-d137-0237a6984032",
         "principal":          {
            "name": "Administrators",
            "isCustom": false,
            "type": "Role",
            "id": 1
         },
         "isFixed": true,
         "isInherited": false,
         "isAllowed": true,
         "creationDate": "2020-08-17T20:49:45.95Z"
      },
            {
         "entityId": null,
         "operationUID": "d430853f-c05f-61b4-d137-0237a6984032",
         "principal":          {
            "name": "General Managers",
            "isCustom": false,
            "type": "Role",
            "id": 2
         },
         "isFixed": true,
         "isInherited": false,
         "isAllowed": true,
         "creationDate": "2020-08-17T20:49:46.237Z"
      },
            {
         "entityId": null,
         "operationUID": "d430853f-c05f-61b4-d137-0237a6984032",
         "principal":          {
            "name": "Creators",
            "isCustom": false,
            "type": "Role",
            "id": 3
         },
         "isFixed": true,
         "isInherited": false,
         "isAllowed": false,
         "creationDate": "2020-08-17T20:49:46.553Z"
      },
            {
         "entityId": null,
         "operationUID": "d430853f-c05f-61b4-d137-0237a6984032",
         "principal":          {
            "name": "Publishers",
            "isCustom": false,
            "type": "Role",
            "id": 4
         },
         "isFixed": true,
         "isInherited": false,
         "isAllowed": false,
         "creationDate": "2020-08-17T20:49:46.893Z"
      },
            {
         "entityId": null,
         "operationUID": "d430853f-c05f-61b4-d137-0237a6984032",
         "principal":          {
            "name": "Network Managers",
            "isCustom": false,
            "type": "Role",
            "id": 5
         },
         "isFixed": true,
         "isInherited": false,
         "isAllowed": true,
         "creationDate": "2020-08-17T20:49:47.487Z"
      },
            {
         "entityId": null,
         "operationUID": "d430853f-c05f-61b4-d137-0237a6984032",
         "principal":          {
            "name": "Viewers",
            "isCustom": false,
            "type": "Role",
            "id": 6
         },
         "isFixed": true,
         "isInherited": false,
         "isAllowed": false,
         "creationDate": "2020-08-17T20:49:47.97Z"
      },
            {
         "entityId": null,
         "operationUID": "d430853f-c05f-61b4-d137-0237a6984032",
         "principal":          {
            "name": "Custom",
            "isCustom": true,
            "type": "Role",
            "id": 10498
         },
         "isFixed": false,
         "isInherited": false,
         "isAllowed": false,
         "creationDate": "2023-10-05T22:24:13.543Z"
      }
   ]
}
```
:::

**Respuesta de error**

<font color="#9a0808">300</font>: La representación solicitada no pudo devolverse porque es ambigua (hay múltiples representaciones solicitadas)

<font color="#9a0808">400</font>: La solicitud está mal formada y, por lo tanto, es inválida

<font color="#9a0808">401</font>: El token de acceso es inválido o no se especificó

<font color="#9a0808">403</font>: El token de acceso proporcionado, aunque válido, no proporciona acceso a este método 

<font color="#9a0808">406</font>: El servidor no puede devolver la representación de datos que solicitó (según se especifica en el encabezado "Accept")

<font color="#9a0808">5XX</font>: Cualquier código 500 es un error interno del servidor

## GET /\{id}/Permissions/  

Incluye permisos de objeto para una instancia de grupo determinada.

**Token de alcance requerido**

bsn.api.main.groups.regular.retrieve

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Segmento**

- `identificación` <font color="#704ae0">int: </font>El identificador único del grupo

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Ejemplo de solicitud**

Los parámetros y encabezados de la solicitud de ejemplo se establecen de la siguiente manera:

- `identificación` se establece en `56789`

```text
GET /2022/06/REST/Groups/Regular/56789/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
```

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Cuerpo de la respuesta exitosa**

<font color="#089a4d">200</font>: Devuelve una matriz de entidades [Permiso](docId\:hc70CptqCOfQdZw2spAEK) 

**Ejemplo**

```json
[
  {
    "entityId": 56789,
    "operationUID": "67b9b0ab-fb5f-36c4-d598-a71aa8998e4e",
    "principal": {
      "login": "johndoe@brightsign.biz",
      "type": "User",
      "id": 5432
    },
    "isFixed": true,
    "isInherited": false,
    "isAllowed": true,
    "creationDate": "2020-06-01T17:13:32.927Z"
  },
  {
    "entityId": 56789,
    "operationUID": "d430853f-c05f-61b4-d137-0237a6984032",
    "principal": {
      "name": "Custom",
      "isCustom": true,
      "type": "Role",
      "id": 12345
    },
    "isFixed": false,
    "isInherited": false,
    "isAllowed": false,
    "creationDate": "2023-10-27T18:48:11.053Z"
  }
]
```

**Respuesta de error**

<font color="#9a0808">300</font>: La representación solicitada no pudo devolverse porque es ambigua (hay múltiples representaciones solicitadas)

<font color="#9a0808">400</font>: La solicitud está mal formada y, por lo tanto, es inválida

<font color="#9a0808">401</font>: El token de acceso es inválido o no se especificó

<font color="#9a0808">403</font>: El token de acceso proporcionado, aunque válido, no proporciona acceso a este método

<font color="#9a0808">404</font>: El servidor no puede encontrar el recurso solicitado (la ruta no existe)

<font color="#9a0808">406</font>: El servidor no puede devolver la representación de datos que solicitó (según se especifica en el encabezado "Accept")

<font color="#9a0808">5XX</font>: Cualquier código 500 es un error interno del servidor

## POST /\{id}/Permissions/  

Agrega permisos al grupo especificado

**Token de Scope requerido**

bsn.api.main.groups.regular.update

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Segmento**

- `identificación` <font color="#704ae0">int: </font>El identificador único del grupo

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Cuerpo de la solicitud**

- Un array de [Permiso](docId\:hc70CptqCOfQdZw2spAEK) entidades

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Ejemplo de solicitud**

Los parámetros y encabezados de la solicitud de ejemplo se establecen de la siguiente manera:

- `identificación` se establece en `12345`

```text
POST /2022/06/REST/Groups/Regular/12345/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: 343
```

Este es el cuerpo de la solicitud de ejemplo:

```json
{
  "entityId": 12345,
  "operationUID": "67b9b0ab-fb5f-36c4-d598-a71aa8998e4e",
  "principal": {
    "login": "JaneDoe@brightsign.biz",
    "type": "User",
    "id": 12345
  },
  "isFixed": false,
  "isInherited": false,
  "isAllowed": true,
  "creationDate": "0001-01-01T00:00:00"
}
```

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Respuesta exitosa**

<font color="#089a4d">204</font>: Los permisos se agregaron correctamente al grupo

**Respuesta de error**

<font color="#9a0808">400</font>: La solicitud o el cuerpo de la solicitud tienen un formato incorrecto y, por lo tanto, no son válidos, o se rechazan de acuerdo con las reglas de negocio

<font color="#9a0808">401</font>: El token de acceso no es válido o no se especificó

<font color="#9a0808">403</font>: El token de acceso proporcionado, aunque válido, no proporciona acceso a este método

<font color="#9a0808">404</font>: El servidor no puede encontrar el recurso solicitado (la ruta no existe)

<font color="#9a0808">415</font>: El servidor no puede aceptar la representación de datos que usted envió (según se especifica en el encabezado "Content-Type")

<font color="#9a0808">5XX</font>: Cualquier código 500 es un error interno del servidor

## DELETE /\{id}/Permissions/  

Elimina permisos del grupo especificado

**Token de Scope requerido**

bsn.api.main.groups.regular.update

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Segmento**

- `identificación` <font color="#704ae0">int: </font>El identificador único del grupo

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Cuerpo de la solicitud**

- Un array de [Permiso](docId\:hc70CptqCOfQdZw2spAEK) entidades

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Ejemplo de solicitud**

Los parámetros y encabezados de la solicitud de ejemplo se establecen de la siguiente manera:

- `identificación` se establece en `56789`

```text
DELETE /2022/06/REST/Groups/Regular/56789/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: 604
```

Este es el cuerpo de solicitud de ejemplo:

```json
[
  {
    "entityId": 56789,
    "operationUID": "d430853f-c05f-61b4-d137-0237a6984032",
    "principal": {
      "name": "Custom",
      "isCustom": true,
      "type": "Role",
      "id": 12345
    },
    "isFixed": false,
    "isInherited": false,
    "isAllowed": false,
    "creationDate": "2023-10-27T18:48:11.053Z"
  }
]
```

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Respuesta correcta**

<font color="#089a4d">204</font>: Los permisos especificados se han eliminado del grupo

**Respuesta de error**

<font color="#9a0808">300</font>: La representación solicitada no pudo devolverse porque es ambigua (hay múltiples representaciones solicitadas)

<font color="#9a0808">400</font>: La solicitud o el cuerpo de la solicitud está mal formado y, por lo tanto, no es válido, o se rechaza de acuerdo con las reglas de negocio

<font color="#9a0808">401</font>: El token de acceso no es válido o no se especificó

<font color="#9a0808">403</font>: El token de acceso proporcionado, aunque válido, no proporciona acceso a este método 

<font color="#9a0808">404</font>: El servidor no puede encontrar el recurso solicitado (la ruta no existe)

<font color="#9a0808">406</font>: El servidor no puede devolver la representación de datos que solicitó (según se especifica en el encabezado "Accept")

<font color="#9a0808">5XX</font>: Cualquier código 500 es un error interno del servidor

## GET /\{name}/Permissions/  

Incluye permisos de objeto para una instancia de grupo determinada.

**Token de Scope requerido**

bsn.api.main.groups.regular.retrieve

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Segmento**

- `nombre` <font color="#704ae0">string: </font>El nombre del grupo

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Ejemplo de solicitud**

Los parámetros y encabezados de la solicitud de ejemplo se establecen de la siguiente manera:

- `nombre` se establece en `Control de dispositivos`

```text
GET /2022/06/REST/Groups/Regular/Device Control/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
```

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Cuerpo de la respuesta correcta**

<font color="#089a4d">200</font>: Devuelve una matriz de entidades de [Permiso](docId\:hc70CptqCOfQdZw2spAEK) 

**Ejemplo**

```json
[
  {
    "entityId": 12345,
    "operationUID": "67b9b0ab-fb5f-36c4-d598-a71aa8998e4e",
    "principal": {
      "login": "johndoe@brightsign.biz",
      "type": "User",
      "id": 1234
    },
    "isFixed": true,
    "isInherited": false,
    "isAllowed": true,
    "creationDate": "2020-06-01T17:13:32.927Z"
  },
  {
    "entityId": 12345,
    "operationUID": "d430853f-c05f-61b4-d137-0237a6984032",
    "principal": {
      "name": "Custom",
      "isCustom": true,
      "type": "Role",
      "id": 12345
    },
    "isFixed": false,
    "isInherited": false,
    "isAllowed": false,
    "creationDate": "2023-10-27T18:48:11.053Z"
  }
]
```

**Respuesta de error**

<font color="#9a0808">300</font>: La representación solicitada no pudo devolverse porque es ambigua (hay múltiples representaciones solicitadas)

<font color="#9a0808">400</font>: La solicitud está mal formada y, por lo tanto, es inválida

<font color="#9a0808">401</font>: El token de acceso es inválido o no fue especificado

<font color="#9a0808">403</font>: El token de acceso proporcionado, aunque válido, no proporciona acceso a este método 

<font color="#9a0808">404</font>: El servidor no puede encontrar el recurso solicitado (la ruta no existe)

<font color="#9a0808">406</font>: El servidor no puede devolver la representación de datos que solicitó (según se especifica en el encabezado "Accept")

<font color="#9a0808">5XX</font>: Cualquier código 500 es un error interno del servidor

## POST /\{name}/Permissions/  

Agrega permisos al grupo especificado

**Token de Scope requerido**

bsn.api.main.groups.regular.update

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Segmento**

- `nombre` <font color="#704ae0">string: </font>El nombre del grupo

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Cuerpo de la solicitud**

- Un array de [Permiso](docId\:hc70CptqCOfQdZw2spAEK) entidades

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Ejemplo de solicitud**

Los parámetros y encabezados de la solicitud de ejemplo se establecen de la siguiente manera:

- `nombre` se establece en `Control de dispositivos`

```text
POST /2022/06/REST/Groups/Regular/Device Control/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: 343
```

Este es el cuerpo de solicitud de ejemplo:

```json
{
  "entityId": 56789,
  "operationUID": "67b9b0ab-fb5f-36c4-d598-a71aa8998e4e",
  "principal": {
    "login": "JaneDoe@brightsign.biz",
    "type": "User",
    "id": 12345
  },
  "isFixed": false,
  "isInherited": false,
  "isAllowed": true,
  "creationDate": "0001-01-01T00:00:00"
}
```

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Respuesta exitosa**

<font color="#089a4d">204</font>: Los permisos se agregaron correctamente al grupo

**Respuesta de error**

<font color="#9a0808">400</font>: La solicitud o el cuerpo de la solicitud está mal formado y, por lo tanto, es inválido, o es rechazado de acuerdo con las reglas de negocio

<font color="#9a0808">401</font>: El token de acceso es inválido o no fue especificado

<font color="#9a0808">403</font>: El token de acceso proporcionado, aunque válido, no proporciona acceso a este método

<font color="#9a0808">404</font>: El servidor no puede encontrar el recurso solicitado (la ruta no existe)

<font color="#9a0808">415</font>: El servidor no puede aceptar la representación de datos que envió (según se especifica en el encabezado "Content-Type")

<font color="#9a0808">5XX</font>: Cualquier código 500 es un error interno del servidor

## DELETE /\{name}/Permissions/  

Elimina los permisos del grupo especificado

**Token de alcance requerido**

bsn.api.main.groups.regular.update

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Segmento**

- `nombre` <font color="#704ae0">string: </font>El nombre del grupo

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Cuerpo de la solicitud**

- Una matriz de entidades [Permiso](docId\:hc70CptqCOfQdZw2spAEK) entities

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Ejemplo de solicitud**

Los parámetros y encabezados de la solicitud de ejemplo se configuran de la siguiente manera:

- `nombre` se establece en `Control de dispositivos`

```text
DELETE /2022/06/REST/Groups/Regular/Device Control/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: 604
```

Este es el cuerpo de la solicitud de ejemplo:

```json
[
  {
    "entityId": 12345,
    "operationUID": "d430853f-c05f-61b4-d137-0237a6984032",
    "principal": {
      "name": "Custom",
      "isCustom": true,
      "type": "Role",
      "id": 12345
    },
    "isFixed": false,
    "isInherited": false,
    "isAllowed": false,
    "creationDate": "2023-10-27T18:48:11.053Z"
  }
]
```

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

**Respuesta correcta**

<font color="#089a4d">204</font>: Los permisos especificados se han eliminado del grupo

**Respuesta de error**

<font color="#9a0808">300</font>: No se pudo devolver la representación solicitada porque es ambigua (hay múltiples representaciones solicitadas)

<font color="#9a0808">400</font>: La solicitud o el cuerpo de la solicitud tienen un formato incorrecto y, por lo tanto, no son válidos, o se rechazan de acuerdo con las reglas de negocio

<font color="#9a0808">401</font>: El token de acceso no es válido o no se especificó

<font color="#9a0808">403</font>: El token de acceso proporcionado, aunque es válido, no proporciona acceso a este método 

<font color="#9a0808">404</font>: El servidor no puede encontrar el recurso solicitado (la ruta no existe)

<font color="#9a0808">406</font>: El servidor no puede devolver la representación de datos que usted solicitó (según se especifica en el encabezado "Accept")

<font color="#9a0808">5XX</font>: Cualquier código 500 es un error interno del servidor
