Создание calendarPermission

Пространство имен: microsoft.graph

Создайте ресурс calendarPermission , чтобы указать удостоверение и роль пользователя, которому предоставлен общий или делегированный доступ к указанному календарю.

Этот API доступен в следующих национальных облачных развертываниях.

Глобальная служба Правительство США L4 Правительство США L5 (DOD) Китай управляется 21Vianet

Разрешения

В зависимости от типа календаря, к которому относится событие, а также от требуемого типа разрешений (делегированные или разрешения приложений), для вызова этого API необходимо одно из указанных ниже разрешений. Дополнительные сведения, включая сведения о том, как выбрать разрешения, см. в статье Разрешения.

Календарь Делегированные (рабочая или учебная учетная запись) Делегированное (личная учетная запись Майкрософт) Приложение
календарь пользователя Calendars.Read, Calendars.ReadWrite Calendars.Read, Calendars.ReadWrite Calendars.Read, Calendars.ReadWrite
календарь группы Group.Read.All, Group.ReadWrite.All Не поддерживается. Не поддерживается.

HTTP-запрос

Создайте указанные разрешения для основного календаря пользователя:

POST /users/{id}/calendar/calendarPermissions

Создайте указанные разрешения календаря группы:

POST /groups/{id}/calendar/calendarPermissions

Создайте указанные разрешения пользовательского календаря, содержащего идентифицированное событие:

POST /users/{id}/events/{id}/calendar/calendarPermissions

Заголовки запросов

Имя Описание
Авторизация Bearer {token}. Обязательно. Дополнительные сведения о проверке подлинности и авторизации.
Content-Type application/json. Обязательно.

Текст запроса

В тексте запроса укажите представление объекта calendarPermission в формате JSON.

Отклик

В случае успешного 200 OK выполнения этот метод возвращает код отклика и коллекцию объектов calendarPermission в теле отклика.

Примеры

Запрос

Ниже показан пример запроса.

POST https://graph.microsoft.com/v1.0/me/calendar/calendarPermissions

{
    "emailAddress": {
        "name": "Samantha Booth",
        "address": "samanthab@contoso.com"
    },
    "isInsideOrganization": true,
    "isRemovable": true,
    "role": "read"
}

Отклик

Ниже показан пример отклика.

Примечание. Объект отклика, показанный здесь, может быть сокращен для удобочитаемости.

HTTP/1.1 200 OK
Content-type: application/json

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users('458d4c95-124e-49da-ba9d-1dd0387e682e')/calendar/calendarPermissions/$entity",
    "id": "RXhjaGFuZ2VQdWJsaXNoZWRVc2VyLnNhbWFudGhhYkBhZGF0dW0ub25taWNyb3NvZnQuY29t",
    "isRemovable": true,
    "isInsideOrganization": true,
    "role": "read",
    "allowedRoles": [
        "freeBusyRead",
        "limitedRead",
        "read"
    ],
    "emailAddress": {
        "name": "Samantha Booth",
        "address": "samanthab@contoso.com"
    }
}