オープン拡張機能を更新する
名前空間: 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
要求の例と以下の要求本文を使用して、上記の拡張情報を次のように更新できます。
-
companyName
をWingtip Toys
からWingtip Toys (USA)
に変更する -
dealValue
を500050
から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"
]
}
次に、expirationDate
を 2016-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"
]
}