次の方法で共有


オープン拡張機能を更新する

名前空間: microsoft.graph

サポートされているリソースの種類で Open 拡張機能 (openTypeExtension オブジェクト) を更新します。

  • 要求本文内のプロパティが拡張情報内の既存のプロパティの名前と一致すると、拡張情報内のデータが更新されます。
  • それ以外の場合、そのプロパティとそのデータが拡張機能に追加されます。

拡張機能内のデータには、プリミティブ型またはプリミティブ型の配列を指定できます。

オープン拡張機能をサポートするリソースの一覧については、「 アクセス許可」 セクションの表を参照してください。

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

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

アクセス許可

拡張機能が作成されたリソースと、要求されたアクセス許可の種類 (委任またはアプリケーション) に応じて、次の表に指定されているアクセス許可は、この API を呼び出すために必要な最小限の特権です。 より多くの特権アクセス許可を選択する前に注意することを含め、詳細については、[アクセス許可] で次のアクセス許可を検索してください。

サポートされているリソース 委任 (職場または学校のアカウント) 委任 (個人用 Microsoft アカウント) アプリケーション
device Directory.AccessAsUser.All サポート対象外 Device.ReadWrite.All
イベント Calendars.ReadWrite Calendars.ReadWrite Calendars.ReadWrite
グループ Group.ReadWrite.All サポート対象外 Group.ReadWrite.All
グループ イベント Group.ReadWrite.All 非サポート 非サポート
グループの投稿 Group.ReadWrite.All サポート対象外 Group.ReadWrite.All
メッセージ Mail.ReadWrite Mail.ReadWrite Mail.ReadWrite
organization Organization.ReadWrite.All 非サポート Organization.ReadWrite.All
個人用連絡先 Contacts.ReadWrite Contacts.ReadWrite Contacts.ReadWrite
todoTask Tasks.ReadWrite Tasks.ReadWrite Tasks.ReadWrite.All
todoTaskList Tasks.ReadWrite Tasks.ReadWrite Tasks.ReadWrite.All
ユーザー User.ReadWrite User.ReadWrite User.ReadWrite.All

HTTP 要求

要求で、リソース インスタンスを識別し、そのインスタンスの extensions ナビゲーション プロパティを使用して拡張機能を識別し、その拡張インスタンスで PATCH を行います。

PATCH /devices/{Id}/extensions/{extensionId}
PATCH /users/{id|userPrincipalName}/events/{id}/extensions/{extensionId}
PATCH /groups/{id}/extensions/{extensionId}
PATCH /groups/{id}/events/{id}/extensions/{extensionId}
PATCH /groups/{id}/threads/{id}/posts/{id}/extensions/{extensionId}
PATCH /users/{id|userPrincipalName}/messages/{id}/extensions/{extensionId}
PATCH /organization/{Id}/extensions/{extensionId}
PATCH /users/{id|userPrincipalName}/contacts/{id}/extensions/{extensionId}
PATCH /users/{id|userPrincipalName}/extensions/{extensionId}
PATCH /users/me/todo/lists/{todoTaskListId}/tasks/{taskId}/extensions/{extensionId}
PATCH /users/me/todo/lists/{todoTaskListId}/extensions/{extensionId}

注: 上記の構文は、含まれる拡張機能を更新するリソース インスタンスを特定する一般的な方法を示しています。 こうしたリソース インスタンスを特定するために使用できる他の構文すべても、同様の方法でオープン拡張機能を更新できます。

要求本文に、その拡張情報への変更や追加を行うための任意のカスタム データを含める方法については、要求本文のセクションをご覧ください。

要求ヘッダー

名前
Authorization ベアラー {token}。 必須です。 認証と認可についての詳細をご覧ください。
Content-Type application/json

要求本文

要求本文で、更新すべきプロパティの値のみを指定します。 要求本文に含まれていない既存のプロパティは、以前の値を維持するか、他のプロパティ値の変更に基づいて再計算されます。

次の表に、更新できるプロパティを示します。

次に示す必須の名前/値のペアと、その拡張情報に変更を加えるデータまたは追加するデータとともに、openTypeExtension オブジェクトの JSON 本文を指定します。

プロパティ 説明
@odata.type String #microsoft.graph.openTypeExtension である必要があります。 必須。
extensionName String id が指定されていない場合は必須です。 更新。
id String id が指定されていない場合は必須です。 読み取り専用です。

ディレクトリ (Microsoft Entra ID) オブジェクトであるリソースの場合:

  • 開いている拡張オブジェクトのプロパティを更新するには、要求本文 のすべての プロパティを指定する必要があります。それ以外の場合、Microsoft Graph は指定されていないプロパティを削除します。
  • 開いている拡張オブジェクト内のプロパティからデータを削除し、 プロパティを保持するには、その値を null に設定します。
  • 開いている拡張オブジェクトからプロパティを削除するには、PATCH 要求本文で渡さないでください。Microsoft Graph によって削除されます。
  • 開いている拡張オブジェクトのすべてのプロパティからデータを削除し、開いている拡張オブジェクトを保持するには、すべてのプロパティの値を nullに更新します。

メッセージなどの Microsoft 365 リソースの場合:

  • 要求本文でプロパティのサブセットを指定して、プロパティを更新できます。 省略されたプロパティとその値は保持されます。
  • null 値は許可されません。

応答

成功した場合、このメソッドは、ディレクトリ オブジェクトの 204 No Content 応答コード、または 200 OK 応答コードと、他のリソースの更新された openTypeExtension オブジェクトを 返します。

要求 1

最初の例では、メッセージ内の拡張情報を更新する方法を示します。 この拡張情報は、最初に次の JSON ペイロードで表されます。

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#Me/messages('AAMkAGE1M2IyNGNmLTI5MTktNDUyZi1iOTVl===')/extensions/$entity",
    "@odata.type": "#microsoft.graph.openTypeExtension",
    "@odata.id": "https://graph.microsoft.com/v1.0/users('ddfc984d-b826-40d7-b48b-57002df85e00@1717f226-49d1-4d0c-9d74-709fad6677b4')/messages('AAMkAGE1M2IyNGNmLTI5MTktNDUyZi1iOTVl===')/extensions
('Microsoft.OutlookServices.OpenTypeExtension.Com.Contoso.Referral')",
    "extensionName": "Com.Contoso.Referral",
    "id": "Microsoft.OutlookServices.OpenTypeExtension.Com.Contoso.Referral",
    "companyName": "Wingtip Toys",
    "dealValue": 500050,
    "expirationDate": "2015-12-03T10:00:00Z"
}

拡張情報は、その名前で参照できます。

PATCH https://graph.microsoft.com/v1.0/me/messages/AAMkAGE1M2IyNGNmLTI5MTktNDUyZi1iOTVl===/extensions/Com.Contoso.Referral

また、拡張情報は、その完全修飾名でも参照できます。

PATCH https://graph.microsoft.com/v1.0/me/messages/AAMkAGE1M2IyNGNmLTI5MTktNDUyZi1iOTVl===/extensions/Microsoft.OutlookServices.OpenTypeExtension.Com.Contoso.Referral

要求の例と以下の要求本文を使用して、上記の拡張情報を次のように更新できます。

  • companyNameWingtip Toys から Wingtip Toys (USA) に変更する
  • dealValue500050 から 500100 に変更する
  • 新しいデータをカスタム プロパティ updated として追加する
{
    "@odata.type": "microsoft.graph.openTypeExtension",
    "extensionName": "Com.Contoso.Referral",
    "companyName": "Wingtip Toys (USA)",
    "dealValue": "500100",
    "expirationDate": "2015-12-03T10:00:00.000Z",
    "updated": "2015-10-29T11:00:00.000Z"
} 

応答 1

ここでは、拡張情報を参照するために使用する方法にかかわらず、同じになる応答を示します。

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

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#Me/messages('AAMkAGE1M2IyNGNmLTI5MTktNDUyZi1iOTVl===')/extensions/$entity",
    "@odata.type": "#microsoft.graph.openTypeExtension",
    "@odata.id": "https://graph.microsoft.com/v1.0/users('ddfc984d-b826-40d7-b48b-57002df85e00@1717f226-49d1-4d0c-9d74-709fad6677b4')/messages('AAMkAGE1M2IyNGNmLTI5MTktNDUyZi1iOTVl===')/extensions
('Microsoft.OutlookServices.OpenTypeExtension.Com.Contoso.Referral')",
    "id": "Microsoft.OutlookServices.OpenTypeExtension.Com.Contoso.Referral",
    "extensionName": "Com.Contoso.Referral",
    "companyName": "Wingtip Toys (USA)",
    "dealValue": 500100,
    "expirationDate": "2015-12-03T10:00:00Z",
    "updated": "2015-10-29T11:00:00.000Z"
}

要求 2

2 番目の例では、グループ投稿に含まれる拡張情報を更新する方法を示します。 この拡張情報は、次の JSON ペイロード (expirationDate の値が 2015-07-03T13:04:00Z) で最初に表されます。

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#groups('37df2ff0-0de0-4c33-8aee-75289364aef6')/threads('AAQkADJizZJpEWwqDHsEpV_KA%3D%3D')/posts('AAMkADJiUg96QZUkA-ICwMubAADDEd7UAAA%3D')/extensions/$entity",
    "@odata.type": "#microsoft.graph.openTypeExtension",
    "id": "Microsoft.OutlookServices.OpenTypeExtension.Com.Contoso.Estimate",
    "extensionName": "Com.Contoso.Estimate",
    "companyName": "Contoso",
    "expirationDate": "2015-07-03T13:04:00Z",
    "DealValue": 1010100,
    "Strings@odata.type": "#Collection(String)",
    "topPicks": [
        "Employees only",
        "Add spouse or guest",
        "Add family"
    ]
}

次に、expirationDate2016-07-30T11:00:00Z に変更する要求と要求本文を示します。

PATCH https://graph.microsoft.com/v1.0/groups/37df2ff0-0de0-4c33-8aee-75289364aef6/threads/AAQkADJizZJpEWwqDHsEpV_KA==/posts/AAMkADJiUg96QZUkA-ICwMubAADDEd7UAAA=/extensions/Microsoft.OutlookServices.OpenTypeExtension.Com.Contoso.Estimate
Content-type: application/json

{
   "@odata.type": "Microsoft.OutlookServices.OpenTypeExtension",
   "extensionName": "Com.Contoso.Estimate",
   "companyName": "Contoso",
   "expirationDate": "2016-07-30T11:00:00.000Z",
   "DealValue": 1010100,
   "topPicks": [
       "Employees only",
       "Add spouse or guest",
       "Add family"
    ]
}

応答 2

ここでは、拡張情報内の更新された expirationDate を表示する 2 番目の例の応答を示します。

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

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#groups('37df2ff0-0de0-4c33-8aee-75289364aef6')/threads('AAQkADJizZJpEWwqDHsEpV_KA%3D%3D')/posts('AAMkADJiUg96QZUkA-ICwMubAADDEd7UAAA%3D')/extensions/$entity",
    "@odata.type": "#microsoft.graph.openTypeExtension",
    "id": "Microsoft.OutlookServices.OpenTypeExtension.Com.Contoso.Estimate",
    "extensionName": "Com.Contoso.Estimate",
    "companyName": "Contoso",
    "expirationDate": "2016-07-30T11:00:00Z",
    "DealValue": 1010100,
    "Strings@odata.type": "#Collection(String)",
    "topPicks": [
        "Employees only",
        "Add spouse or guest",
        "Add family"
    ]
}