[comment]: # ({a0f60ec7-a0f60ec7})
# role.update

[comment]: # ({/a0f60ec7-a0f60ec7})

[comment]: # ({63875138-63875138})
### Descripción

`object proxy.update(object/array proxies)`

Este método permite actualizar los proxies existentes.

::: noteclassic
Este método solo está disponible para el tipo de usuario *Super administrador*.
Los permisos para activar el método se pueden revocar en la configuración de roles de usuario. Ver
[User
roles](/manual/web_interface/frontend_sections/administration/user_roles)
para más información.
:::

[comment]: # ({/63875138-63875138})

[comment]: # ({826d9f46-fa5c3d93})
### Parámetros

`(objeto/matriz)` Propiedades de rol que se actualizarán.

La propiedad `roleid` debe definirse para cada rol, todos las demás
propiedades son opcionales. Sólo se actualizarán las propiedades pasadas, todas
las demás permanecerán sin cambios.

Además de las [standard role properties](object#role), el método
acepta los siguientes parámetros.

|Parámetro|[Tipo](/manual/api/reference_commentary#tipos_de_datos)|Descripción|
|--|--|------|
|rules|matriz|Acceda [rules](object#reglas_de_rol) para reemplazar las reglas de acceso actuales asignadas al rol.|

[comment]: # ({/826d9f46-fa5c3d93})

[comment]: # ({12d196f6-12d196f6})
### Valores de retorno

`(object)` Devuelve un objeto que contiene los IDs de los roles actualizados
bajo la propiedad `roleids`.

[comment]: # ({/12d196f6-12d196f6})

[comment]: # ({b41637d2-b41637d2})
### Ejemplos

[comment]: # ({/b41637d2-b41637d2})

[comment]: # ({ba624f03-1ce1fe70})
#### Deshabilitar la capacidad de ejecutar scripts

Actualice el rol con ID "5", deshabilite la capacidad de ejecutar scripts.

Solicitud:

```json
{
    "jsonrpc": "2.0",
    "method": "role.update",
    "params": [
        {
            "roleid": "5",
            "rules": {
                "actions": [
                    {
                        "name": "execute_scripts",
                        "status": "0"
                    }
                ]
            }
        }
    ],
    "auth": "3a57200802b24cda67c4e4010b50c065",
    "id": 1
}
```

Respuesta:

```json
{
    "jsonrpc": "2.0",
    "result": {
        "roleids": [
            "5"
        ]
    },
    "id": 1
}
```

[comment]: # ({/ba624f03-1ce1fe70})

[comment]: # ({9a05bab8-a6349165})
#### Limitando el acceso a la API

Actualizar rol con ID "5", denegar la llamada a cualquiera de los métodos "creación", "actualización" o "eliminación".

Solicitud:

```json
{
    "jsonrpc": "2.0",
    "method": "role.update",
    "params": [
        {
            "roleid": "5",
            "rules": {
                "api.access": "1",
                "api.mode": "0",
                "api": ["*.create", "*.update", "*.delete"]
            }
        }
    ],
    "auth": "3a57200802b24cda67c4e4010b50c065",
    "id": 1
}
```

Respuesta:

```json
{
    "jsonrpc": "2.0",
    "result": {
        "roleids": [
            "5"
        ]
    },
    "id": 1
}
```

[comment]: # ({/9a05bab8-a6349165})

[comment]: # ({36db1bd2-36db1bd2})
### Fuente

CRole::update() en *ui/include/classes/api/services/CRole.php*.

[comment]: # ({/36db1bd2-36db1bd2})
