Acl: insert

Tworzy regułę kontroli dostępu. Wypróbuj teraz lub zobacz przykład.

Żądanie

Żądanie HTTP

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

Parametry

Nazwa parametru Wartość Opis
Parametry ścieżki
calendarId string Identyfikator kalendarza. Aby pobrać identyfikatory kalendarzy, wywołaj metodę calendarList.list. Jeśli chcesz uzyskać dostęp do głównego kalendarza aktualnie zalogowanego użytkownika, użyj słowa kluczowego „primary”.
Parametry opcjonalne zapytania
sendNotifications boolean Określ, czy chcesz wysyłać powiadomienia o zmianie udostępniania kalendarza. Opcjonalnie: Wartość domyślna to True.

Autoryzacja

Ta prośba wymaga autoryzacji z co najmniej jednym z tych zakresów:

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

Więcej informacji znajdziesz na stronie Uwierzytelnianie i autoryzacja.

Treść żądania

W treści żądania podaj zasób ACL z tymi właściwościami:

Nazwa usługi Wartość Opis Uwagi
Właściwości wymagane
role string Rola przypisana do zakresu. Możliwe wartości:
  • none” – brak dostępu.
  • freeBusyReader” – zapewnia dostęp tylko do odczytu informacji o dostępności.
  • reader” – zapewnia dostęp do odczytu kalendarza. Wydarzenia prywatne będą widoczne dla użytkowników z dostępem tylko do odczytu, ale szczegóły wydarzeń będą ukryte.
  • writer” – zapewnia uprawnienia do odczytu i zapisu w kalendarzu. Wydarzenia prywatne będą widoczne dla użytkowników z dostępem do funkcji pisania, a szczegóły wydarzeń będą widoczne.
  • owner” – określa właściciela kalendarza. Ta rola ma wszystkie uprawnienia roli autora, a dodatkowo umożliwia wyświetlanie i modyfikowanie list dostępu.
zapisywalny
scope object Zakres, w jakim ta reguła ACL przyznaje dostęp do kalendarza.
scope.type string Typ zakresu. Możliwe wartości:
  • default” – zakres publiczny. Jest to wartość domyślna.
  • user” – ogranicza zakres do jednego użytkownika.
  • group” – ogranicza zakres do grupy.
  • domain” – ogranicza zakres do domeny.
Uwaga: uprawnienia przyznane w zakresie „default” (czyli publicznie) dotyczą wszystkich użytkowników, bez względu na to, czy są uwierzytelnieni.
Właściwości opcjonalne
scope.value string Adres e-mail użytkownika lub grupy albo nazwa domeny, w zależności od typu zakresu. Pominięte w przypadku typu „default”. zapisywalny

Odpowiedź

Jeśli operacja się powiedzie, zwróci ona zasoby ACL w treści odpowiedzi.

Przykłady

Uwaga: dostępne dla tej metody przykłady kodu nie odzwierciedlają wszystkich obsługiwanych języków programowania. Listę obsługiwanych języków znajdziesz na stronie z bibliotekami klienta.

Java

Korzysta z biblioteki klienta 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

Korzysta z biblioteki klienta Pythona.

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

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

print created_rule['id']

PHP

Używa biblioteki klienta 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

Używa biblioteki klienta Ruby.

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

Wypróbuj

Aby wywołać tę metodę na podstawie danych na żywo i zobaczyć odpowiedź, użyj narzędzia APIs Explorer.