Acl: insert

Crea una regola di controllo dell'accesso. Prova ora o guarda un esempio.

Richiesta

Richiesta HTTP

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

Parametri

Nome del parametro Valore Descrizione
Parametri del percorso
calendarId string Identificatore del calendario. Per recuperare gli ID calendario, chiama il metodo calendarList.list. Se vuoi accedere al calendario principale dell'utente che ha eseguito l'accesso, utilizza la parola chiave "primary".
Parametri di query facoltativi
sendNotifications boolean Indica se inviare notifiche relative alla modifica della condivisione del calendario. Facoltativo. Il valore predefinito è True.

Autorizzazione

Questa richiesta richiede l'autorizzazione con almeno uno dei seguenti ambiti:

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

Per ulteriori informazioni, consulta la pagina 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
role string Il ruolo assegnato all'ambito. I valori possibili sono:
  • "none": non fornisce alcun accesso.
  • "freeBusyReader": fornisce l'accesso in lettura alle informazioni su disponibilità/occupato.
  • "reader": fornisce l'accesso in lettura al calendario. Gli eventi privati verranno visualizzati agli utenti con accesso in qualità di lettore, ma i dettagli degli eventi verranno nascosti.
  • "writer": fornisce l'accesso in lettura e scrittura al calendario. Gli eventi privati verranno visualizzati agli utenti con accesso come autore e i relativi dettagli saranno visibili.
  • "owner": fornisce la proprietà del calendario. Questo ruolo ha tutte le autorizzazioni del ruolo Scrittore, con la possibilità aggiuntiva di visualizzare e manipolare le ACL.
scrivibile
scope object Il grado 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
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();

// Create access rule with associated scope
AclRule rule = new AclRule();
Scope scope = new Scope();
scope.setType("scopeType").setValue("scopeValue");
rule.setScope(scope).setRole("role");

// Insert new access rule
AclRule createdRule = service.acl().insert('primary', rule).execute();
System.out.println(createdRule.getId());

Python

Utilizza la libreria client Python.

rule = {
    'scope': {
        'type': 'scopeType',
        'value': 'scopeEmail',
    },
    'role': 'role'
}

created_rule = service.acl().insert(calendarId='primary', body=rule).execute()

print created_rule['id']

PHP

Utilizza la libreria client PHP.

$rule = new Google_Service_Calendar_AclRule();
$scope = new Google_Service_Calendar_AclRuleScope();

$scope->setType("scopeType");
$scope->setValue("scopeValue");
$rule->setScope($scope);
$rule->setRole("role");

$createdRule = $service->acl->insert('primary', $rule);
echo $createdRule->getId();

Ruby

Utilizza la libreria client Ruby.

rule = Google::Apis::CalendarV3::AclRule.new(
  scope: {
    type: 'scopeType',
    value: 'scopeEmail',
  },
  role: 'role'
)
result = client.insert_acl('primary', rule)
print result.id

Prova

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