Update a shared user's role/access
curl --request PUT \
--url https://management.scanova.io/multi-users/{pk}/ \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"access_level": 3
}
'import requests
url = "https://management.scanova.io/multi-users/{pk}/"
payload = { "access_level": 3 }
headers = {
"Authorization": "<api-key>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({access_level: 3})
};
fetch('https://management.scanova.io/multi-users/{pk}/', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://management.scanova.io/multi-users/{pk}/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'access_level' => 3
]),
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://management.scanova.io/multi-users/{pk}/"
payload := strings.NewReader("{\n \"access_level\": 3\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Authorization", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.put("https://management.scanova.io/multi-users/{pk}/")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"access_level\": 3\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://management.scanova.io/multi-users/{pk}/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"access_level\": 3\n}"
response = http.request(request)
puts response.read_bodyAPI de gestión — Usuarios compartidos y roles
Actualizar un usuario compartido
PUT /multi-users//
PUT
/
multi-users
/
{pk}
/
Update a shared user's role/access
curl --request PUT \
--url https://management.scanova.io/multi-users/{pk}/ \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"access_level": 3
}
'import requests
url = "https://management.scanova.io/multi-users/{pk}/"
payload = { "access_level": 3 }
headers = {
"Authorization": "<api-key>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({access_level: 3})
};
fetch('https://management.scanova.io/multi-users/{pk}/', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://management.scanova.io/multi-users/{pk}/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'access_level' => 3
]),
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://management.scanova.io/multi-users/{pk}/"
payload := strings.NewReader("{\n \"access_level\": 3\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Authorization", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.put("https://management.scanova.io/multi-users/{pk}/")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"access_level\": 3\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://management.scanova.io/multi-users/{pk}/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"access_level\": 3\n}"
response = http.request(request)
puts response.read_bodyLos usuarios compartidos son los compañeros de equipo que invitas a tu cuenta de Scanova — la misma lista que se muestra en la tabla Users del panel. Este endpoint te permite listarlos, invitarlos, actualizarlos o eliminarlos de forma programática.
Este endpoint no estaba documentado anteriormente. Requiere una clave de la API de gestión con cuota
MANAGEMENT_API (o MANAGEMENT_API_SANDBOX), enviada como el valor sin procesar del encabezado Authorization — consulta el resumen de la API de gestión — además de la propia cuota de Team de la cuenta para usuarios compartidos. Para saber qué otorga realmente cada rol, consulta Roles y permisos; para el formato de transmisión de los propios roles, consulta Roles (niveles de acceso).integer
requerido
El ID del registro de usuario compartido de la respuesta de listado anterior.
curl --request PUT \
--url 'https://management.scanova.io/multi-users/118/' \
--header 'Authorization: YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data '{"access_level": 3}'
curl --request PUT \
--url 'https://management.scanova.io/multi-users/118/' \
--header 'Authorization: YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data '{"is_active": false}'
PUT devuelve la misma forma que la respuesta de invitación anterior.
email y name son solo para creación — enviarlos en un cuerpo PUT se ignora silenciosamente en lugar de generar un error, ya que la identidad de un usuario compartido no se puede cambiar después de enviar la invitación. Para actualizar el rol, el alcance de etiquetas o el estado activo, usa solo los campos que quieras cambiar.Relacionado
- Listar usuarios compartidos — encuentra el
pkcon el que operar aquí. - Obtener un usuario compartido — otra operación de este mismo endpoint
{pk}. - Eliminar un usuario compartido — otra operación de este mismo endpoint
{pk}. - Listar roles — busca o crea el ID de
access_levelque requieren las llamadas de invitar/actualizar de este endpoint. - Crear un rol personalizado — busca o crea el ID de
access_levelque requieren las llamadas de invitar/actualizar de este endpoint. - Usuarios compartidos — la propia tabla Users del panel, que muestra las mismas acciones de invitar/desactivar/eliminar.
- Roles y permisos — qué otorga realmente cada rol a un compañero de equipo.
Autorizaciones
Send your Management API key as the raw value of the Authorization header — no "Bearer " or "Token " prefix, and no other characters. Example: Authorization: 401f7ac837da42b97f613d789819ff93537bee6a. A header containing more than one space-separated part is rejected outright. Requests also require the request's Host header to be the management API host (e.g. management.scanova.io) — the same key sent to the regular API host will not authenticate.
Parámetros de ruta
Cuerpo
application/json
Respuesta
200
Shared user updated.
¿Esta página le ayudó?
⌘I