openTypeExtension を取得する
名前空間: microsoft.graph
重要
Microsoft Graph の /beta
バージョンの API は変更される可能性があります。 実稼働アプリケーションでこれらの API を使用することは、サポートされていません。 v1.0 で API を使用できるかどうかを確認するには、Version セレクターを使用します。
注意
この機能を baseTask または baseTaskList と共に使用する既存のアプリは、これらのリソースに基づいて構築された To Do API セットが 2022 年 5 月 31 日に非推奨になったので、更新する必要があります。 その API セットは、2022 年 8 月 31 日にデータを戻すことを停止します。 todoTask 上に構築された API セットを使用してください。
名前または完全修飾名で識別されたオープン拡張機能 (openTypeExtension オブジェクト) を取得します。
[アクセス許可] セクションの表に、開いている拡張機能をサポートするリソースを示します。
次の表は、サポートされているリソース インスタンスからオープン拡張機能を取得できる 3 つのシナリオの一覧です。
GET シナリオ | サポートされているリソース | 応答本文 |
---|---|---|
既知のリソース インスタンスから特定の拡張機能を取得します。 |
管理単位 baseTask (非推奨) baseTaskList (非推奨) device イベント グループ グループ イベント グループの投稿 message organization 個人用連絡先 user todoTask todoTaskList |
オープン拡張機能のみ。 |
特定の拡張機能で展開された既知のリソース インスタンスを取得します。 | 管理単位、基本タスク、基本タスク リスト、デバイス、イベント、グループ、グループ イベント、グループ の投稿、メッセージ、organization、個人用連絡先、ユーザー、To Do タスク、To Do タスク リスト。 | オープン拡張機能で展開されたリソース インスタンス。 |
特定の拡張機能でリソース インスタンスを検索し、展開します。 | 基本タスク、基本タスク リスト、イベント、グループ イベント、グループ投稿、メッセージ、個人用連絡先、To Do タスク、To Do タスク リスト | オープン拡張機能で展開されたリソース インスタンス。 |
この API は、次の国内クラウド展開で使用できます。
グローバル サービス | 米国政府機関 L4 | 米国政府機関 L5 (DOD) | 21Vianet が運営する中国 |
---|---|---|---|
✅ | ✅ | ✅ | ✅ |
アクセス許可
拡張機能を含むリソースおよび要求されたアクセス許可の種類(委任またはアプリケーション)に応じて、以下の表で指定されているアクセス許可が、このAPIを呼び出すために最低限必要な特権になります。 より多くの特権アクセス許可を選択する前に注意することを含め、詳細については、[アクセス許可] で次のアクセス許可を検索してください。
サポートされているリソース | 委任 (職場または学校のアカウント) | 委任 (個人用 Microsoft アカウント) | アプリケーション |
---|---|---|---|
baseTask (非推奨) | Tasks.ReadWrite | Tasks.ReadWrite | 非サポート |
baseTaskList (非推奨) | Tasks.ReadWrite | Tasks.ReadWrite | 非サポート |
device | Directory.Read.All | 非サポート | Device.ReadWrite.All |
event | Calendars.Read | Calendars.Read | Calendars.Read |
グループ | Group.Read.All | サポート対象外 | Group.Read.All |
グループ イベント | Group.Read.All | 非サポート | 非サポート |
グループの投稿 | Group.Read.All | サポート対象外 | Group.Read.All |
message | Mail.Read | Mail.Read | Mail.Read |
組織 | User.Read | 非サポート | Organization.Read.All |
個人用連絡先 | Contacts.Read | Contacts.Read | Contacts.Read |
todoTask | Tasks.ReadWrite | Tasks.ReadWrite | 非サポート |
todoTaskList | Tasks.ReadWrite | Tasks.ReadWrite | 非サポート |
ユーザー | User.Read | User.Read | User.Read.All |
HTTP 要求
このセクションでは、前述の 3 つの GET
シナリオの構文について説明します。
既知のリソース インスタンス内の特定の拡張機能を取得する
リソース インスタンスを取得するのと同じ REST 要求を使用し、そのインスタンスの extensions ナビゲーション プロパティを使用して拡張機能を識別します。
GET /administrativeUnits/{administrativeUnitId}/extensions/{extensionId}
GET /devices/{deviceId}/extensions/{extensionId}
GET /users/{Id|userPrincipalName}/events/{eventId}/extensions/{extensionId}
GET /groups/{groupId}/extensions/{extensionId}
GET /groups/{groupId}/events/{eventId}/extensions/{extensionId}
GET /groups/{groupId}/threads/{threadId}/posts/{postId}/extensions/{extensionId}
GET /users/{userId|userPrincipalName}/messages/{messageId}/extensions/{extensionId}
GET /organization/{organizationId}/extensions/{extensionId}
GET /users/{userId|userPrincipalName}/contacts/{contactId}/extensions/{extensionId}
GET /users/{userId|userPrincipalName}/extensions/{extensionId}
GET /users/{userId|userPrincipalName}/todo/lists/{listId}/tasks/{todoTaskId}/extensions/{extensionId}
GET /users/{userId|userPrincipalName}/todo/lists/{listId}/extensions/{extensionId}
GET /users/{userId|userPrincipalName}/tasks/lists/{listId}/tasks/{baseTaskId}/extensions/{extensionId}
GET /users/{userId|userPrincipalName}/tasks/lists/{listId}/extensions/{extensionId}
一致する拡張機能で展開された既知のリソース インスタンスを取得する
イベント、グループ イベント、グループの投稿、メッセージ、個人用連絡先、タスク、タスク リストのリソースの種類に関しては、リソース インスタンスを取得するのと同じ REST 要求を使用して、そのインスタンスの id プロパティのフィルターに一致する拡張機能を検索し、拡張機能でインスタンスを展開できます。 応答には、リソース プロパティのほとんどが含まれています。
GET /users/{userId|userPrincipalName}/events/{eventId}?$expand=extensions($filter=id eq '{extensionId}')
GET /groups/{groupId}/events/{eventId}?$expand=extensions($filter=id eq '{extensionId}')
GET /groups/{groupId}/threads/{threadId}/posts/{postId}?$expand=extensions($filter=id eq '{extensionId}')
GET /users/{userId|userPrincipalName}/messages/{messageId}?$expand=extensions($filter=id eq '{extensionId}')
GET /users/{userId|userPrincipalName}/contacts/{contactId}?$expand=extensions($filter=id eq '{extensionId}')
GET /users/{userId|userPrincipalName}/todo/lists/{listId}/tasks/{taskId}?$expand=extensions($filter=id eq '{extensionId}')
GET /users/{userId|userPrincipalName}/todo/lists/{listId}?$expand=extensions($filter=id eq '{extensionId}')
GET /users/{userId|userPrincipalName}/tasks/lists/{listId}/tasks/{taskId}?$expand=extensions($filter=id eq '{extensionId}')
GET /users/{userId|userPrincipalName}/tasks/lists/{listId}?$expand=extensions($filter=id eq '{extensionId}')
デバイス、グループ、組織、ユーザーのリソースの種類に関しては、リソース インスタンスから id プロパティやその他のプロパティを含めるために、$select
パラメーターを使用する必要もあります。
GET /devices/{deviceId}?$expand=extensions($filter=id eq '{extensionId}')&$select=id,{property_1},{property_n}
GET /groups/{groupId}?$expand=extensions($filter=id eq '{extensionId}')&$select=id,{property_1},{property_n}
GET /organization/{organizationId}?$expand=extensions($filter=id eq '{extensionId}')&$select=id,{property_1},{property_n}
GET /users/{userId|userPrincipalName}?$expand=extensions($filter=id eq '{extensionId}')&$select=id,{property_1},{property_n}
一致する拡張機能で展開されたリソース インスタンスにフィルターをかける
サポートされているリソースのコレクションを取得するのと同じ REST 要求を使用して、対応する id プロパティの拡張機能を含むインスタンスのコレクションにフィルターをかけ、拡張機能でこれらのインスタンスを展開します。
GET /users/{userId|userPrincipalName}/events?$filter=Extensions/any(f:f/id eq '{extensionId}')&$expand=Extensions($filter=id eq '{extensionId}')
GET /groups/{groupId}/events?$filter=Extensions/any(f:f/id eq '{extensionId}')&$expand=Extensions($filter=id eq '{extensionId}')
GET /groups/{groupId}/threads/{threadId}/posts?$filter=Extensions/any(f:f/id eq '{extensionId}')&$expand=Extensions($filter=id eq '{extensionId}')
GET /users/{userId|userPrincipalName}/messages?$filter=Extensions/any(f:f/id eq '{extensionId}')&$expand=Extensions($filter=id eq '{extensionId}')
GET /users/{userId|userPrincipalName}/contacts?$filter=Extensions/any(f:f/id eq '{extensionId}')&$expand=Extensions($filter=id eq '{extensionId}')
注: 上記の構文は、拡張機能の取得元となるリソース インスタンスまたはコレクションを特定する一般的な方法を示しています。 こうしたリソース インスタンスまたはコレクションを特定するために使用できる他の構文すべても、同様の方法でオープン拡張機能を取得できます。
パス パラメーター
パラメーター | 型 | 説明 |
---|---|---|
ID | string | メッセージ、イベント、連絡先など、対応するコレクション内のオブジェクトの一意識別子のプレースホルダー。 必須です。 openTypeExtension の id プロパティと混同しないでください。 |
extensionId | string | 拡張機能の一意のテキスト識別子である拡張名のプレースホルダー、または拡張機能の種類と一意のテキスト識別子を連結する完全修飾名。 拡張機能を作成すると、 id プロパティに完全修飾名が返されます。 必須です。 |
オプションのクエリ パラメーター
$filter
文字列内のスペース文字には必ず URL エンコードを適用してください。
パラメーター | 説明 | 例 |
---|---|---|
$filter |
id が extensionId パラメーターの値と一致する拡張情報を返します。 |
要求 3 |
$filter with any operator |
id が extensionId パラメーターの値と一致する拡張情報を含むリソース コレクションのインスタンスを返します。 |
要求 5 |
$expand | リソース インスタンスを展開して、拡張情報を組み込みます。 | 要求 3 および要求 5 |
要求ヘッダー
名前 | 値 |
---|---|
Authorization | ベアラー {token}。 必須です。 認証と承認の詳細については、こちらをご覧ください。 |
要求本文
このメソッドには、要求本文を指定しません。
応答
成功した場合、このメソッドは応答本文で 200 OK
応答コードと openTypeExtension オブジェクトを返します。
GET クエリに応じて、厳密な応答の本体は異なります。
例
要求 1
最初の例では、拡張情報を参照する 2 通りの方法を示し、指定されたメッセージ内の拡張情報を取得します。 応答は、拡張情報を参照するために使用する方法に関係なく、同じです。
最初は、名前で参照します。
GET https://graph.microsoft.com/beta/me/messages/AAMkAGE1M2IyNGNmLTI5MTktNDUyZi1iOTVl===/extensions/Com.Contoso.Referral
次に、ID (完全修飾名) で参照します。
GET https://graph.microsoft.com/beta/me/messages/AAMkAGE1M2IyNGNmLTI5MTktNDUyZi1iOTVl===/extensions/Microsoft.OutlookServices.OpenTypeExtension.Com.Contoso.Referral')
応答 1
最初の例の応答を次に示します。
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#Me/messages('AAMkAGE1M2IyNGNmLTI5MTktNDUyZi1iOTVl===')/extensions/$entity",
"@odata.type": "#Microsoft.Graph.OpenTypeExtension",
"@odata.id": "https://graph.microsoft.com/beta/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"
}
要求 2
2 番目の例では、名前で拡張情報を参照し、指定されたグループ イベント内の拡張情報を取得します。
GET https://graph.microsoft.com/beta/groups/f5480dfd-7d77-4d0b-ba2e-3391953cc74a/events/AAMkADVl17IsAAA=/extensions/Com.Contoso.Deal
応答 2
2 番目の例の応答を次に示します。
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#groups/f5480dfd-7d77-4d0b-ba2e-3391953cc74a/events/AAMkADVl7IsAAA%3D/extensions/$entity",
"@odata.type": "#Microsoft.Graph.OpenTypeExtension",
"id": "Microsoft.OutlookServices.OpenTypeExtension.Com.Contoso.Deal",
"extensionName": "Com.Contoso.Deal",
"companyName": "Alpine Skis",
"dealValue": 1010100,
"expirationDate": "2015-07-03T13:04:00Z"
}
要求 3
3 番目の例では、指定されたメッセージを取得し、フィルターから返された拡張情報を組み込んで展開します。 このフィルターは、id が完全修飾名と一致する拡張情報を返します。
GET https://graph.microsoft.com/beta/me/messages/AAMkAGE1M2IyNGNmLTI5MTktNDUyZi1iOTVl===/?$expand=extensions($filter=id%20eq%20'Microsoft.OutlookServices.OpenTypeExtension.Com.Contoso.Referral')
応答 3
3 番目の例の応答を次に示します。 注: ここで示す応答オブジェクトは、読みやすさのために短縮されている可能性があります。
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#Me/messages/$entity",
"@odata.id": "https://graph.microsoft.com/beta/users('ddfc984d-b826-40d7-b48b-57002df85e00@1717f226-49d1-4d0c-9d74-709fad6677b4')/messages('AAMkAGE1M2IyNGNmLTI5MTktNDUyZi1iOTVl===')",
"@odata.etag": "W/\"CQAAABYAAACY4MQpaFz9SbqUDe4+bs88AABNsWMM\"",
"id": "AAMkAGE1M2IyNGNmLTI5MTktNDUyZi1iOTVl===",
"changeKey": "CQAAABYAAACY4MQpaFz9SbqUDe4+bs88AABNsWMM",
"categories": [
],
"createDateTime": "2015-06-19T02:03:31Z",
"lastModifiedDateTime": "2015-08-13T02:28:00Z",
"subject": "Attached is the requested info",
"bodyPreview": "See the images attached.",
"body": {
"contentType": "HTML",
"content": "<html>\r\n<head>\r\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\">\r\n<style type=\"text/css\" style=\"display:none;\"><!-- P {margin-top:0;margin-bottom:0;} --></style>\r\n</head>\r\n<body dir=\"ltr\">\r\n<div id=\"divtagdefaultwrapper\" style=\"font-size:12pt;color:#000000;background-color:#FFFFFF;font-family:Calibri,Arial,Helvetica,sans-serif;\">\r\n<p>See the images attached. <br>\r\n</p>\r\n</div>\r\n</body>\r\n</html>\r\n"
},
"importance": "Normal",
"hasAttachments": true,
"parentFolderId": "AQMkAGE1M2IyNGNmLTI5MTktNDUyZi1iOTVl===QAAAA==",
"from": {
"emailAddress": {
"address": "desmond@contoso.com",
"name": "Desmond Raley"
}
},
"sender": {
"emailAddress": {
"address": "desmond@contoso.com",
"name": "Desmond Raley"
}
},
"toRecipients": [
{
"emailAddress": {
"address": "wendy@contoso.com",
"name": "Wendy Molina"
}
}
],
"ccRecipients": [
],
"bccRecipients": [
],
"replyTo": [
],
"conversationId": "AAQkAGE1M2IyNGNmLTI5MTktNDUyZi1iOTVl===mivdTmQ=",
"receivedDateTime": "2015-06-19T02:05:04Z",
"sentDateTime": "2015-06-19T02:04:59Z",
"isDeliveryReceiptRequested": false,
"isReadReceiptRequested": false,
"isDraft": false,
"isRead": true,
"webLink": "https://outlook.office.com/owa/?ItemID=AAMkAGE1M2IyNGNmLTI5MTktNDUyZi1iOTVl===%2FNJTqt5NqHlVnKVBwCY4MQpaFz9SbqUDe4%2Bbs88AAAAAAEJAACY4MQpaFz9SbqUDe4%2Bbs88AAApA4JMAAA%3D&exvsurl=1&viewmodel=ReadMessageItem",
"inferenceClassification": "Focused",
"extensions": [
{
"@odata.type": "#Microsoft.Graph.OpenTypeExtension",
"@odata.id": "https://graph.microsoft.com/beta/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"
}
]
}
要求 4
4 番目の例では、完全修飾名で拡張情報を参照し、指定されたグループ投稿内の拡張情報を取得します。
GET https://graph.microsoft.com/beta/groups/37df2ff0-0de0-4c33-8aee-75289364aef6/threads/AAQkADJizZJpEWwqDHsEpV_KA==/posts/AAMkADJiUg96QZUkA-ICwMubAADDEd7UAAA=/extensions/Microsoft.OutlookServices.OpenTypeExtension.Com.Contoso.Estimate
応答 4
4 番目の例の応答を次に示します。
HTTP/1.1 200 OK
Content-Type: application/json
{
"@odata.context": "https://graph.microsoft.com/beta/$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",
"Strings@odata.type": "#Collection(String)",
"topPicks": [
"Employees only",
"Add spouse or guest",
"Add family"
]
}
要求 5
5 番目の例では、サインインしているユーザーのメールボックス内のすべてのメッセージを参照して、フィルターと一致する拡張情報が含まれているメッセージを検出し、拡張情報を組み込んでそれらのメッセージを展開します。 このフィルターは、拡張情報名 と一致する Com.Contoso.Referral
プロパティを持つ拡張情報を返します。
GET https://graph.microsoft.com/beta/me/messages?$filter=Extensions/any(f:f/id%20eq%20'Com.Contoso.Referral')&$expand=Extensions($filter=id%20eq%20'Com.Contoso.Referral')
応答 5
5 番目の例のこの応答では、id が Com.Contoso.Referral
である拡張情報が含まれているメッセージがユーザーのメールボックスに 1 つだけ存在します。
注: ここに示す応答オブジェクトは、読みやすさのために短縮されている場合があります。
HTTP/1.1 200 OK
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#Me/messages",
"value": [
{
"@odata.id": "https://graph.microsoft.com/beta/users('ddfc984d-b826-40d7-b48b-57002df85e00@1717f226-49d1-4d0c-9d74-709fad6677b4')/messages('AAMkAGE1M2IyNGNmLTI5MTktNDUyZi1iOTVl===')",
"@odata.etag": "W/\"CQAAABYAAACY4MQpaFz9SbqUDe4+bs88AABNsWMM\"",
"id": "AAMkAGE1M2IyNGNmLTI5MTktNDUyZi1iOTVl===",
"changeKey": "CQAAABYAAACY4MQpaFz9SbqUDe4+bs88AABNsWMM",
"categories": [
],
"createDateTime": "2015-06-19T02:03:31Z",
"lastModifiedDateTime": "2015-08-13T02:28:00Z",
"subject": "Attached is the requested info",
"bodyPreview": "See the images attached.",
"body": {
"contentType": "HTML",
"content": "<html>\r\n<head>\r\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\">\r\n<style type=\"text/css\" style=\"display:none;\"><!-- P {margin-top:0;margin-bottom:0;} --></style>\r\n</head>\r\n<body dir=\"ltr\">\r\n<div id=\"divtagdefaultwrapper\" style=\"font-size:12pt;color:#000000;background-color:#FFFFFF;font-family:Calibri,Arial,Helvetica,sans-serif;\">\r\n<p>See the images attached. <br>\r\n</p>\r\n</div>\r\n</body>\r\n</html>\r\n"
},
"importance": "Normal",
"hasAttachments": true,
"parentFolderId": "AQMkAGE1M2IyNGNmLTI5MTktNDUyZi1iOTVl===QAAAA==",
"from": {
"emailAddress": {
"address": "desmond@contoso.com",
"name": "Desmond Raley"
}
},
"sender": {
"emailAddress": {
"address": "desmond@contoso.com",
"name": "Desmond Raley"
}
},
"toRecipients": [
{
"emailAddress": {
"address": "wendy@contoso.com",
"name": "Wendy Molina"
}
}
],
"ccRecipients": [
],
"bccRecipients": [
],
"replyTo": [
],
"conversationId": "AAQkAGE1M2IyNGNmLTI5MTktNDUyZi1iOTVl===mivdTmQ=",
"receivedDateTime": "2015-06-19T02:05:04Z",
"sentDateTime": "2015-06-19T02:04:59Z",
"isDeliveryReceiptRequested": false,
"isReadReceiptRequested": false,
"isDraft": false,
"isRead": true,
"webLink": "https://outlook.office.com/owa/?ItemID=AAMkAGE1M2IyNGNmLTI5MTktNDUyZi1iOTVl===%2FNJTqt5NqHlVnKVBwCY4MQpaFz9SbqUDe4%2Bbs88AAAAAAEJAACY4MQpaFz9SbqUDe4%2Bbs88AAApA4JMAAA%3D&exvsurl=1&viewmodel=ReadMessageItem",
"inferenceClassification": "Focused",
"extensions": [
{
"@odata.type": "#Microsoft.Graph.OpenTypeExtension",
"@odata.id": "https://graph.microsoft.com/beta/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"
}
]
}
]
}