Acl: update

Aggiorna una regola di controllo dell'accesso. Prova subito o guarda un esempio.

Richiesta

Richiesta HTTP

PUT https://www.googleapis.com/calendar/v3/calendars/calendarId/acl/ruleId

Parametri

Nome del parametro Valore Descrizione
Parametri del percorso
calendarId string Identificatore del calendario. Per recuperare gli ID calendario, chiama il metodo calendarList.list. Utilizza la parola chiave "primary" per accedere al calendario principale dell'utente che ha eseguito l'accesso.
ruleId string Identificatore della regola ACL.
Parametri di query facoltativi
sendNotifications boolean Indica se inviare notifiche relative alla modifica della condivisione del calendario. Tieni presente che non ci sono notifiche relative alla rimozione dell'accesso. Campo facoltativo. Il valore predefinito è True.

Autorizzazione

Questa richiesta richiede un'autorizzazione con il seguente ambito:

Ambito
https://www.googleapis.com/auth/calendar

Per ulteriori informazioni, consulta la pagina relativa all'autenticazione e autorizzazione.

Corpo della richiesta

Nel corpo della richiesta, fornisci una risorsa Acl con le seguenti proprietà:

Nome proprietà Valore Descrizione Note
Proprietà obbligatorie
scope object La misura in cui l'accesso al calendario è concesso da questa regola ACL.
scope.type string Il tipo di ambito. I valori possibili sono:
  • "default": l'ambito pubblico. Questo è il valore predefinito.
  • "user": limita l'ambito a un singolo utente.
  • "group": limita l'ambito a un gruppo.
  • "domain": limita l'ambito a un dominio.
Nota: le autorizzazioni concesse all'ambito "default", o pubblico, si applicano a qualsiasi utente, autenticato o meno.
Proprietà facoltative
role string Il ruolo assegnato all'ambito. I valori possibili sono:
  • "none": non fornisce alcun accesso.
  • "freeBusyReader": fornisce l'accesso in lettura alle informazioni sulla disponibilità.
  • "reader": fornisce l'accesso in lettura al calendario. Gli eventi privati saranno visibili agli utenti con accesso in lettura, ma i relativi dettagli saranno nascosti.
  • "writer": fornisce l'accesso in lettura e scrittura al calendario. Gli eventi privati verranno mostrati agli utenti con accesso come autore, mentre i dettagli degli eventi saranno visibili.
  • "owner": fornisce la proprietà del calendario. Questo ruolo dispone di tutte le autorizzazioni del ruolo Autore e offre la possibilità aggiuntiva di visualizzare e manipolare gli ACL.
scrivibile
scope.value string L'indirizzo email di un utente o gruppo oppure il nome di un dominio, a seconda del tipo di ambito. Omesso per il tipo "default". scrivibile

Risposta

In caso di esito positivo, questo metodo restituisce una risorsa Acl nel corpo della risposta.

Esempi

Nota: gli esempi di codice disponibili per questo metodo non rappresentano tutti i linguaggi di programmazione supportati (consulta la pagina relativa alle librerie client per un elenco dei linguaggi supportati).

Java

Utilizza la libreria client Java.

import com.google.api.services.calendar.Calendar;
import com.google.api.services.calendar.model.AclRule;

// ...

// Initialize Calendar service with valid OAuth credentials
Calendar service = new Calendar.Builder(httpTransport, jsonFactory, credentials)
    .setApplicationName("applicationName").build();

// Retrieve the access rule from the API
AclRule rule = service.acl().get('primary', "ruleId").execute();

// Make a change
rule.setRole("newRole");

// Update the access rule
AclRule updatedRule = service.acl().update('primary', rule.getId(), rule).execute();
System.out.println(updatedRule.getEtag());

Python

Utilizza la libreria client Python.

rule = service.acl().get(calendarId='primary', ruleId='ruleId').execute()
rule['role'] = 'newRole'

updated_rule = service.acl().update(calendarId='primary', ruleId=rule['id'], body=rule).execute()
print updated_rule['etag']

PHP

Utilizza la libreria client PHP.

$rule = $service->acl->get('primary', 'ruleId');
$rule->setRole('newRole');

$updatedRule = $service->acl->update('primary', $rule->getId(), $rule);
echo $updatedRule->getEtag();

Ruby

Utilizza la libreria client di Ruby.

rule = client.get_acl('primary', 'ruleId')
rule.role = 'newRole'
result = client.update_acl('primary', rule.id, rule)
print result.etag

Prova.

Utilizza Explorer API di seguito per chiamare questo metodo sui dati in tempo reale e visualizzare la risposta.