schemaExtension を更新する

名前空間: microsoft.graph

指定した schemaExtension の定義のプロパティを更新します。 拡張機能の追加更新は、拡張機能が InDevelopment または Available 状態にある場合にのみ行うことができます。 つまり、カスタム プロパティまたはターゲット リソースの種類を定義から削除することはできませんが、新しいカスタム プロパティを追加して拡張機能の説明を変更できます。

更新プログラムは、拡張機能の targetTypes プロパティに含まれるすべてのリソースに適用されます。 これらのリソースは、 サポートされているリソースの種類の 1 つです。

委任されたフローの場合、サインインユーザーは、拡張機能の 所有者 プロパティがサインインユーザーが所有するアプリケーションの appId に設定されている限り、スキーマ拡張機能を更新できます。 そのアプリケーションは、最初に拡張機能を作成したアプリケーション、またはサインインしているユーザーが所有する他のアプリケーションです。

所有者プロパティのこの条件により、サインインしているユーザーは、所有していない他のアプリケーション (Microsoft Graph エクスプローラーなど) を通じて更新を行うことができます。 Graph エクスプローラーを使用して schemaExtension リソースを更新する場合は、PATCH 要求本文に owner プロパティを含めます。

この API は、次の国内クラウド展開で使用できます。

グローバル サービス 米国政府機関 L4 米国政府機関 L5 (DOD) 21Vianet が運営する中国
✅ ✅ ✅ ✅

アクセス許可

この API の最小特権としてマークされているアクセス許可またはアクセス許可を選択します。 アプリで必要な場合にのみ、より高い特権のアクセス許可またはアクセス許可を使用します。 委任されたアクセス許可とアプリケーションのアクセス許可の詳細については、「アクセス許可の種類」を参照してください。 これらのアクセス許可の詳細については、「アクセス許可のリファレンス」を参照してください。

アクセス許可の種類 最小特権アクセス許可 より高い特権のアクセス許可
委任 (職場または学校のアカウント) Application.ReadWrite.All 注意事項なし。
委任 (個人用 Microsoft アカウント) サポートされていません。 サポートされていません。
アプリケーション Application.ReadWrite.All and Directory.ReadWrite.All 注意事項なし。

HTTP 要求

PATCH /schemaExtensions/{id}

要求ヘッダー

名前 説明
Authorization ベアラー {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 プロパティを含める必要があります。 この場合、 所有者 プロパティを自分が所有するアプリケーションの appId に 設定します。

PATCH https://graph.microsoft.com/v1.0/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