Обновление schemaExtension

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

Важно!

API версии /beta в Microsoft Graph могут быть изменены. Использование этих API в производственных приложениях не поддерживается. Чтобы определить, доступен ли API в версии 1.0, используйте селектор версий.

Обновление свойств в определении указанной schemaExtension. Дополнительные обновления расширения можно выполнять только в том случае, если расширение находится в InDevelopment состоянии или Available . Это означает, что пользовательские свойства или типы целевых ресурсов нельзя удалить из определения, но можно добавить новые настраиваемые свойства и изменить описание расширения.

Обновление применяется ко всем ресурсам, включенным в свойство targetTypes расширения. Эти ресурсы относятся к вспомогательным типам ресурсов.

Для делегированных потоков пользователь, выполнив вход, может обновить расширение схемы при условии, что свойству владельца расширения присвоено значение appId приложения, владельцем вошедшего пользователя. Это может быть приложение, которое изначально создало расширение, или какое-либо другое приложение, принадлежащее вошедшего в систему пользователя.

Это условие для свойства владельца позволяет вошедшего пользователя вносить обновления через другие приложения, которыми он не владеет, например Microsoft Graph Обозреватель. При использовании Обозреватель Graph для обновления ресурса schemaExtension включите свойство owner в текст запроса PATCH.

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

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

Разрешения

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

Тип разрешения Разрешения (в порядке повышения привилегий)
Делегированные (рабочая или учебная учетная запись) Application.ReadWrite.All
Делегированные (личная учетная запись Майкрософт) Не поддерживается.
Приложение Application.ReadWrite.All и Directory.ReadWrite.All

HTTP-запрос

PATCH /schemaExtensions/{id}

Необязательные заголовки запросов

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

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

В тексте запроса укажите значения для соответствующих полей, которые необходимо обновить. Предыдущие значения существующих свойств, не включенных в текст запроса, останутся прежними или будут повторно вычислены с учетом измененных значений других свойств. Для достижения оптимальной производительности не следует включать существующие значения, которые не изменились.

Свойство Тип Описание
description String Описание расширения схемы.
properties Коллекция extensionSchemaProperty Коллекция имен и типов свойств, составляющих определение расширения схемы. Допускаются только аддитивные изменения.
status String Состояние жизненного цикла расширения схемы. Начальное состояние при создании — InDevelopment. Возможные переходы состояний : из InDevelopment в Available и Available в Deprecated.
targetTypes Коллекция String Набор типов Microsoft Graph (поддерживающих расширения), к которым можно применить это расширение схемы. Допускаются только аддитивные изменения.

Отклик

В случае успешного выполнения этот метод возвращает код отклика 204 No Content. При попытке выполнить этот запрос из приложения, которым вы не владеете (и без установки для свойства владельцазначения appId приложения, которым вы владеете), возвращается 403 Forbidden код ответа.

Пример

Запрос

Ниже показан пример запроса. Если вы выполняете запрос из приложения, которым вы не владеете, необходимо включить свойство owner . В этом случае задайте для свойства owner значение appId приложения, которое вы являетесь владельцем.

PATCH https://graph.microsoft.com/beta/schemaExtensions/exto6x7sfft_courses
Content-type: application/json

{
    "owner": "ef4cb9a8-97c3-4ca7-854b-5cb5ced376fa",
    "properties": [
        {
            "name": "courseId",
            "type": "Integer"
        },
        {
            "name": "courseName",
            "type": "String"
        },
        {
            "name": "courseType",
            "type": "String"
        },
        {
            "name": "courseSupervisors",
            "type": "String"
        }
    ]
}

Отклик

HTTP/1.1 204 No Content