Acl: insert

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

Prośba

Żą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 aktualnie zalogowanego użytkownika, użyj słowa kluczowego „primary”.
Opcjonalne parametry zapytania
sendNotifications boolean Określa, czy powiadomienia o zmianie w udostępnianiu kalendarza mają być wysyłane. Opcjonalnie. Wartość domyślna to True.

Upoważnienie

To żądanie wymaga autoryzacji w tym zakresie:

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

Więcej informacji znajdziesz na stronie uwierzytelniania i autoryzacji.

Treść żądania

W treści żądania podaj zasób listy kontroli dostępu 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 do odczytu informacji o stanie Wolny/Zajęty.
  • reader” – daje uprawnienia do odczytu kalendarza. Wydarzenia prywatne będą widoczne dla użytkowników z uprawnieniami do odczytu, ale szczegóły wydarzenia będą ukryte.
  • writer” – daje uprawnienia do odczytu i zapisu kalendarza. Wydarzenia prywatne będą widoczne dla użytkowników z uprawnieniami do zapisu, a szczegóły wydarzeń będą widoczne.
  • owner” – przekazuje prawa własności do kalendarza. Ta rola ma wszystkie uprawnienia roli zapisującego, a także możliwość wyświetlania i modyfikowania list kontroli dostępu.
z możliwością zapisu
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: zakres uprawnień przyznany „default” (lub publicznie) dotyczy każdego użytkownika, niezależnie od tego, czy został uwierzytelniony.
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ęta 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

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

Używa biblioteki klienta dla języka Python.

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

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

print created_rule['id']

PHP

Korzysta z 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 Eksploratora interfejsów API poniżej, aby wywołać tę metodę na aktywnych danych i zobaczyć odpowiedź.