Acl: insert

Tworzy regułę kontroli dostępu. Wypróbuj 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 kalendarza głównego obecnie zalogowanego użytkownika, użyj narzędzia „primary” słowa kluczowego.
Opcjonalne parametry zapytania
sendNotifications boolean Określa, czy wysyłać powiadomienia o zmianie w udostępnianiu kalendarza. Opcjonalnie: Wartość domyślna to Prawda.

Autoryzacja

To żądanie wymaga autoryzacji w tym zakresie:

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

Więcej informacji znajdziesz na stronie dotyczącej uwierzytelniania i autoryzacji.

Treść żądania

W treści żądania podaj zasób listy 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” – Nie umożliwia dostępu.
  • freeBusyReader” - Zapewnia dostęp w trybie odczytu do informacji o stanie Wolny/Zajęty.
  • reader” – Zapewnia uprawnienia do odczytu kalendarza. Wydarzenia prywatne będą wyświetlane użytkownikom z uprawnieniami do odczytu, ale ich szczegóły będą ukryte.
  • writer” – Zapewnia uprawnienia do odczytu i zapisu kalendarza. Wydarzenia prywatne będą się wyświetlać użytkownikom z uprawnieniami do zapisu oraz będą widoczne szczegóły wydarzeń.
  • owner” – Udostępnia prawo własności do kalendarza. Ta rola obejmuje wszystkie uprawnienia zapisującego oraz dodatkowe możliwości wyświetlania list kontroli dostępu i manipulowania nimi.
z możliwością zapisu
scope object Zakres, w jakim dostęp do kalendarza jest przyznawany przez tę regułę ACL.
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 zakresowi „default” (publicznemu) dotyczą każdego użytkownika, zarówno uwierzytelnionego, jak i nieuwierzytelnionego.
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ęto w przypadku typu „default”. z możliwością zapisu

Odpowiedź

Jeśli operacja się uda, metoda zwróci zasób listy 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

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

Używa biblioteki klienta w Pythonie.

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

Użyj poniższego eksploratora interfejsów API, aby wywołać tę metodę na bieżących danych i wyświetlić odpowiedź.