singleValueLegacyExtendedProperty を取得する
名前空間: microsoft.graph
特定の拡張プロパティで展開された単一のリソース インスタンス、または 1 つのフィルターと一致する拡張プロパティを含むリソース インスタンスのコレクションを取得できます。
クエリ パラメーター $expand
を使用すると、指定した拡張プロパティで展開された特定のリソース インスタンスを取得できます。
id プロパティ上で $filter
および eq
演算子を使用して拡張プロパティを指定します。 これは、現時点で、拡張プロパティを表す singleValueLegacyExtendedProperty オブジェクトを取得する唯一の方法です。
特定の拡張プロパティを含むリソース インスタンスを取得するには、$filter
クエリ パラメーターを使用して、eq
演算子を id プロパティに適用します。 さらに、数値の拡張プロパティについては、value プロパティで eq
、ne
、ge
、gt
、le
、lt
演算子のいずれかを適用します。 文字列型の拡張プロパティについては、contains
、startswith
、eq
、ne
演算子を value に適用します。
フィルターは、サインインしているユーザーのメールボックスにあるリソースのインスタンスすべてに適用されます。
拡張プロパティの id で文字列名 (Name
) をフィルタリングする場合は、大文字と小文字が区別されます。 拡張プロパティの value プロパティをフィルタリングする場合は、大文字と小文字が区別されません。
次のユーザー リソースがサポートされます。
次のグループ リソースもサポートされます。
オープン拡張機能または拡張プロパティを使用するのに適した状況と、拡張プロパティを指定する方法の詳細については、「拡張プロパティの概要」を参照してください。
この API は、次の国内クラウド展開で使用できます。
グローバル サービス | 米国政府機関 L4 | 米国政府機関 L5 (DOD) | 21Vianet が運営する中国 |
---|---|---|---|
✅ | ✅ | ✅ | ✅ |
アクセス許可
拡張プロパティの取得元のリソースと、要求するアクセス許可の種類 (委任またはアプリケーション) に応じて、次の表で指定されているアクセス許可は、この API を呼び出すために最低限必要です。 アクセス許可の選択方法などの詳細については、「アクセス許可」を参照してください。
サポートされているリソース | 委任 (職場または学校のアカウント) | 委任 (個人用 Microsoft アカウント) | アプリケーション |
---|---|---|---|
calendar | Calendars.Read | Calendars.Read | Calendars.Read |
contact | Contacts.Read | Contacts.Read | Contacts.Read |
contactFolder | Contacts.Read | Contacts.Read | Contacts.Read |
event | Calendars.Read | Calendars.Read | Calendars.Read |
グループ calendar | Group.Read.All | サポート対象外 | サポート対象外 |
グループ event | Group.Read.All | サポート対象外 | サポート対象外 |
グループ post | Group.Read.All | サポート対象外 | Group.Read.All |
mailFolder | Mail.Read | Mail.Read | Mail.Read |
message | Mail.Read | Mail.Read | Mail.Read |
HTTP 要求
フィルターと一致する拡張プロパティで展開されたリソース インスタンスを取得する
id プロパティに対するフィルターと一致する拡張プロパティで展開された、リソース インスタンスを取得します。 フィルター文字列内のスペース文字に URL エンコードを適用していることを確認してください。
message インスタンスの取得:
GET /me/messages/{id}?$expand=singleValueExtendedProperties($filter=id eq '{id_value}')
GET /users/{id|userPrincipalName}/messages/{id}?$expand=singleValueExtendedProperties($filter=id eq '{id_value}')
GET /me/mailFolders/{id}/messages/{id}?$expand=singleValueExtendedProperties($filter=id eq '{id_value}')
mailFolder インスタンスの取得:
GET /me/mailFolders/{id}?$expand=singleValueExtendedProperties($filter=id eq '{id_value}')
GET /users/{id|userPrincipalName}/mailFolders/{id}?$expand=singleValueExtendedProperties($filter=id eq '{id_value}')
event インスタンスの取得:
GET /me/events/{id}?$expand=singleValueExtendedProperties($filter=id eq '{id_value}')
GET /users/{id|userPrincipalName}/events/{id}?$expand=singleValueExtendedProperties($filter=id eq '{id_value}')
calendar インスタンスの取得:
GET /me/calendars/{id}?$expand=singleValueExtendedProperties($filter=id eq '{id_value}')
GET /users/{id|userPrincipalName}/calendars/{id}?$expand=singleValueExtendedProperties($filter=id eq '{id_value}')
contact インスタンスの取得:
GET /me/contacts/{id}?$expand=singleValueExtendedProperties($filter=id eq '{id_value}')
GET /users/{id|userPrincipalName}/contacts/{id}?$expand=singleValueExtendedProperties($filter=id eq '{id_value}')
GET /me/contactFolders/{id}/contacts/{id}?$expand=singleValueExtendedProperties($filter=id eq '{id_value}')
GET /users/{id|userPrincipalName}/contactFolders/{id}/contacts/{id}?$expand=singleValueExtendedProperties($filter=id eq '{id_value}')
contactFolder インスタンスの取得:
GET /me/contactfolders/{id}?$expand=singleValueExtendedProperties($filter=id eq '{id_value}')
GET /users/{id|userPrincipalName}/contactFolders/{id}?$expand=singleValueExtendedProperties($filter=id eq '{id_value}')
グループ event インスタンスの取得:
GET /groups/{id}/events/{id}?$expand=singleValueExtendedProperties($filter=id eq '{id_value}')
グループ post インスタンスの取得:
GET /groups/{id}/threads/{id}/posts/{id}?$expand=singleValueExtendedProperties($filter=id eq '{id_value}')
GET /groups/{id}/conversations/{id}/threads/{id}/posts/{id}?$expand=singleValueExtendedProperties($filter=id eq '{id_value}')
フィルターと一致する数値の拡張プロパティを含むリソース インスタンスを取得する
フィルターと一致する数値の拡張プロパティを持つサポート対象リソースのインスタンスを取得します。 フィルターは id プロパティには eq
演算子を使用し、value プロパティには eq
、ne
、ge
、gt
、le
、lt
のいずれかの演算子を使用します。
フィルター文字列内のコロン、スラッシュ、スペースに URL エンコードを適用していることをご確認ください。
次の構文の行では、id に eq
演算子を使用し、プロパティ値にもう 1 つの eq
演算子を使用するフィルターを示しています。
value に対する eq
演算子は、数値に適用される別の演算子 (ne
、ge
、gt
、le
、lt
) のいずれかと置き換えることができます。
message インスタンスの取得:
GET /me/messages?$filter=singleValueExtendedProperties/Any(ep: ep/id eq '{id_value}' and ep/value eq '{property_value}')
GET /users/{id|userPrincipalName}/messages?$filter=singleValueExtendedProperties/Any(ep: ep/id eq '{id_value}' and ep/value eq '{property_value}')
GET /me/mailFolders/{id}/messages?$filter=singleValueExtendedProperties/Any(ep: ep/id eq '{id_value}' and ep/value eq '{property_value}')
mailFolder インスタンスの取得:
GET /me/mailFolders?$filter=singleValueExtendedProperties/Any(ep: ep/id eq '{id_value}' and ep/value eq '{property_value}')
GET /users/{id|userPrincipalName}/mailFolders?$filter=singleValueExtendedProperties/Any(ep: ep/id eq '{id_value}' and ep/value eq '{property_value}')
event インスタンスの取得:
GET /me/events?$filter=singleValueExtendedProperties/Any(ep: ep/id eq '{id_value}' and ep/value eq '{property_value}')
GET /users/{id|userPrincipalName}/events?$filter=singleValueExtendedProperties/Any(ep: ep/id eq '{id_value}' and ep/value eq '{property_value}')
calendar インスタンスの取得:
GET /me/calendars?$filter=singleValueExtendedProperties/Any(ep: ep/id eq '{id_value}' and ep/value eq '{property_value}')
GET /users/{id|userPrincipalName}/calendars?$filter=singleValueExtendedProperties/Any(ep: ep/id eq '{id_value}' and ep/value eq '{property_value}')
contact インスタンスの取得:
GET /me/contacts?$filter=singleValueExtendedProperties/Any(ep: ep/id eq '{id_value}' and ep/value eq '{property_value}')
GET /users/{id|userPrincipalName}/contacts?$filter=singleValueExtendedProperties/Any(ep: ep/id eq '{id_value}' and ep/value eq '{property_value}')
GET /me/contactFolders/{id}/contacts?$filter=singleValueExtendedProperties/Any(ep: ep/id eq '{id_value}' and ep/value eq '{property_value}')
GET /users/{id|userPrincipalName}/contactFolders/{id}/contacts?$filter=singleValueExtendedProperties/Any(ep: ep/id eq '{id_value}' and ep/value eq '{property_value}')
contactFolder インスタンスの取得:
GET /me/contactfolders?$filter=singleValueExtendedProperties/Any(ep: ep/id eq '{id_value}' and ep/value eq '{property_value}')
GET /users/{id|userPrincipalName}/contactFolders?$filter=singleValueExtendedProperties/Any(ep: ep/id eq '{id_value}' and ep/value eq '{property_value}')
グループ event インスタンスの取得:
GET /groups/{id}/events?$filter=singleValueExtendedProperties/Any(ep: ep/id eq '{id_value}' and ep/value eq '{property_value}')
グループ post インスタンスの取得:
GET /groups/{id}/threads/{id}/posts?$filter=singleValueExtendedProperties/Any(ep: ep/id eq '{id_value}' and ep/value eq '{property_value}')
GET /groups/{id}/conversations/{id}/threads/{id}/posts?$filter=singleValueExtendedProperties/Any(ep: ep/id eq '{id_value}' and ep/value eq '{property_value}')
フィルターと一致する文字列型の拡張プロパティを含むリソース インスタンスを取得する
フィルターと一致する文字列型の拡張プロパティを含む message または event リソースのインスタンスを取得します。 フィルターは id プロパティには eq
演算子を使用し、value プロパティには contains
、startswith
、eq
、ne
のいずれかの演算子を使用します。 フィルター文字列内のコロン、スラッシュ、スペースに URL エンコードを適用していることをご確認ください。
message インスタンスの取得:
GET /me/messages?$filter=singleValueExtendedProperties/Any(ep: ep/id eq '{id_value}' and contains(ep/value, '{property_value}'))
GET /users/{id|userPrincipalName}/messages?$filter=singleValueExtendedProperties/Any(ep: ep/id eq '{id_value}' and contains(ep/value, '{property_value}'))
GET /me/mailFolders/{id}/messages?$filter=singleValueExtendedProperties/Any(ep: ep/id eq '{id_value}' and contains(ep/value, '{property_value}'))
GET /me/messages?$filter=singleValueExtendedProperties/Any(ep: ep/id eq '{id_value}' and startswith(ep/value, '{property_value}'))
GET /users/{id|userPrincipalName}/messages?$filter=singleValueExtendedProperties/Any(ep: ep/id eq '{id_value}' and startswith(ep/value, '{property_value}'))
GET /me/mailFolders/{id}/messages?$filter=singleValueExtendedProperties/Any(ep: ep/id eq '{id_value}' and startswith(ep/value, '{property_value}'))
GET /me/messages?$filter=singleValueExtendedProperties/Any(ep: ep/id eq '{id_value}' and ep/value eq '{property_value}')
GET /users/{id|userPrincipalName}/messages?$filter=singleValueExtendedProperties/Any(ep: ep/id eq '{id_value}' and ep/value eq '{property_value}')
GET /me/mailFolders/{id}/messages?$filter=singleValueExtendedProperties/Any(ep: ep/id eq '{id_value}' and ep/value eq '{property_value}')
GET /me/messages?$filter=singleValueExtendedProperties/Any(ep: ep/id eq '{id_value}' and ep/value ne '{property_value}')
GET /users/{id|userPrincipalName}/messages?$filter=singleValueExtendedProperties/Any(ep: ep/id eq '{id_value}' and ep/value ne '{property_value}')
GET /me/mailFolders/{id}/messages?$filter=singleValueExtendedProperties/Any(ep: ep/id eq '{id_value}' and ep/value ne '{property_value}')
event インスタンスの取得:
GET /me/events?$filter=singleValueExtendedProperties/Any(ep: ep/id eq '{id_value}' and contains(ep/value, '{property_value}'))
GET /users/{id|userPrincipalName}/events?$filter=singleValueExtendedProperties/Any(ep: ep/id eq '{id_value}' and contains(ep/value, '{property_value}'))
GET /me/events?$filter=singleValueExtendedProperties/Any(ep: ep/id eq '{id_value}' and startswith(ep/value, '{property_value}'))
GET /users/{id|userPrincipalName}/events?$filter=singleValueExtendedProperties/Any(ep: ep/id eq '{id_value}' and startswith(ep/value, '{property_value}'))
GET /me/events?$filter=singleValueExtendedProperties/Any(ep: ep/id eq '{id_value}' and ep/value eq '{property_value}')
GET /users/{id|userPrincipalName}/events?$filter=singleValueExtendedProperties/Any(ep: ep/id eq '{id_value}' and ep/value eq '{property_value}')
GET /me/events?$filter=singleValueExtendedProperties/Any(ep: ep/id eq '{id_value}' and ep/value ne '{property_value}')
GET /users/{id|userPrincipalName}/events?$filter=singleValueExtendedProperties/Any(ep: ep/id eq '{id_value}' and ep/value ne '{property_value}')
グループ event インスタンスの取得:
GET /groups/{id}/events?$filter=singleValueExtendedProperties/Any(ep: ep/id eq '{id_value}' and contains(ep/value, '{property_value}'))
GET /groups/{id}/events?$filter=singleValueExtendedProperties/Any(ep: ep/id eq '{id_value}' and startswith(ep/value, '{property_value}'))
GET /groups/{id}/events?$filter=singleValueExtendedProperties/Any(ep: ep/id eq '{id_value}' and ep/value eq '{property_value}')
GET /groups/{id}/events?$filter=singleValueExtendedProperties/Any(ep: ep/id eq '{id_value}' and ep/value ne '{property_value}')
パス パラメーター
パラメーター | 種類 | 説明 |
---|---|---|
id_value | String | 照合する拡張プロパティの ID。 サポートされている形式のいずれかに従う必要があります。 詳しくは、「Outlook の拡張プロパティの概要」を参照してください。 必須。 |
property_value | String | 照合する拡張プロパティの値。 前述の「HTTP 要求」セクションに示した一覧で必要になります。 {property_value} が文字列ではない場合、ep/value を {property_value} と比較するときに、適切な Edm データ型に明示的にキャストしてください。 例については、以下の要求 4 を参照してください。 |
要求ヘッダー
名前 | 説明 |
---|---|
Authorization | ベアラー {token}。 必須です。 認証と認可についての詳細をご覧ください。 |
要求本文
このメソッドには、要求本文を指定しません。
応答
成功した場合、このメソッドは 200 OK
応答コードを返します。
一致する拡張プロパティで展開されたリソース インスタンスを取得する
応答本文には、一致する singleValueLegacyExtendedProperty オブジェクトで展開された、要求したリソース インスタンスで表されるオブジェクトが含まれます。
フィルターと一致する拡張プロパティを含むリソース インスタンスを取得する
応答本文には、一致する拡張プロパティを含むリソース インスタンスを表す 1 つ以上のオブジェクトが含まれます。 応答本文には、拡張プロパティは含まれません。
例
要求 1
最初の例では、単一値の拡張プロパティを含めることによって指定されたメッセージを取得して展開します。 フィルターは、id が文字列 String {66f5a359-4659-4830-9070-00047ec6ac6e} Name Color
と一致する拡張プロパティを返します (ここでは、読みやすくするため URL エンコードを削除しています)。
GET https://graph.microsoft.com/v1.0/me/messages/AAMkAGE1M2_bs88AACHsLqWAAA=?$expand=singleValueExtendedProperties($filter=id%20eq%20'String%20{66f5a359-4659-4830-9070-00047ec6ac6e}%20Name%20Color')
応答 1
応答本文には、指定されたメッセージのすべてのプロパティと、フィルターから返される拡張プロパティが含まれています。
注:簡潔にするために、ここに示すメッセージ オブジェクトは切り詰められています。 実際の呼び出しではすべてのプロパティが返されます。
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#Me/messages/$entity",
"@odata.id": "https://graph.microsoft.com/v1.0/users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/messages('AAMkAGE1M2_bs88AACHsLqWAAA=')",
"@odata.etag": "W/\"CQAAABYAAACY4MQpaFz9SbqUDe4+bs88AACbyS4H\"",
"id": "AAMkAGE1M2_bs88AACHsLqWAAA=",
"subject": "RE: Talk about emergency prep",
"sender": {
"emailAddress": {
"name": "Christine Irwin",
"address": "christine@contoso.com"
}
},
"from": null,
"toRecipients": [
{
"emailAddress": {
"name": "Christine Irwin",
"address": "christine@contoso.com"
}
}
],
"singleValueExtendedProperties": [
{
"id": "String {66f5a359-4659-4830-9070-00047ec6ac6e} Name Color",
"value": "Green"
}
]
}
要求 2
2 番目の例では、文字列で型指定され、フィルターで指定された単一値の拡張プロパティを持つメッセージを取得します。 フィルターは、以下のような拡張プロパティを検索します。
その id は文字列
String {66f5a359-4659-4830-9070-00047ec6ac6e} Name Color
と一致します (ここでは、読みやすくするため URL エンコードを削除しています)。その value は文字列
Green
と一致します。
GET https://graph.microsoft.com/v1.0/me/messages?$filter=singleValueExtendedProperties%2FAny(ep%3A%20ep%2Fid%20eq%20'String%20{66f5a359-4659-4830-9070-00047ec6ac6e}%20Name%20Color'%20and%20ep%2Fvalue%20eq%20'Green')
応答 2
正常な応答が HTTP 200 OK
応答コードによって示され、応答の本文には、フィルターに一致する拡張プロパティを持つメッセージのすべてのプロパティが含まれます。 応答本文は、メッセージのコレクションの取得からの応答に似ています。 応答は、一致する拡張プロパティを含みません。
要求 3
3 番目の例では、文字列で型指定され、フィルターで指定された単一値の拡張プロパティを持つメッセージを取得します。 フィルターは、以下のような拡張プロパティを検索します。
その id は文字列
String {66f5a359-4659-4830-9070-00047ec6ac6e} Name Color
と一致します (ここでは、読みやすくするため URL エンコードを削除しています)。その value には文字列
green
が含まれます。
GET https://graph.microsoft.com/v1.0/Me/messages?$filter=singleValueExtendedProperties/any(ep:ep/Id eq 'String {66f5a359-4659-4830-9070-00047ec6ac6e} Name Color' and contains(ep/Value, 'green'))
応答 3
正常な応答が HTTP 200 OK
応答コードによって示され、応答の本文には、フィルターに一致する拡張プロパティを持つメッセージのすべてのプロパティが含まれます。 たとえば、 id が文字列 String {66f5a359-4659-4830-9070-00047ec6ac6e} Name Color
と等しい単一値の拡張プロパティと 値Light green
を持つメッセージは、フィルターと一致し、応答に含まれます。
応答本文は、メッセージのコレクションの取得からの応答に似ています。 応答は、一致する拡張プロパティを含みません。
要求 4
次の 2 つの例では、文字列以外で型指定された単一値の拡張プロパティを持つメッセージを取得する方法を示しています。 読みやすくするため、必要な URL エンコードは含まれていません。
次の例は、以下のような拡張プロパティを検索するフィルターを示しています。
その id は文字列
CLSID {00062008-0000-0000-C000-000000000046} Name ConnectorSenderGuid
と一致します。その value は GUID
b9cf8971-7d55-4b73-9ffa-a584611b600b
です。 プロパティ値を GUID と比較するには、ep/value
をEdm.Guid
にキャストします。
GET https://graph.microsoft.com/v1.0/me/messages?$filter=singleValueExtendedProperties/any(ep:ep/id eq 'CLSID {00062008-0000-0000-C000-000000000046} Name ConnectorSenderGuid' and cast(ep/value, Edm.Guid) eq (b9cf8971-7d55-4b73-9ffa-a584611b600b))
次の例は、以下のような拡張プロパティを検索するフィルターを示しています。
その id は文字列
Integer {66f5a359-4659-4830-9070-00047ec6ac6e} Name Pallete
と一致します。その value は整数 12 と等しくなります。 プロパティ値を整数と比較するには、
ep/value
をEdm.Int32
にキャストします。
GET https://graph.microsoft.com/v1.0/me/messages?$filter=singleValueExtendedProperties/any(ep:ep/id eq 'Integer {66f5a359-4659-4830-9070-00047ec6ac6e} Name Pallete' and cast(ep/value, Edm.Int32) eq 12)
応答 4
前の 2 つの例では、正常な応答が HTTP 200 OK
応答コードによって示され、応答の本文には、対応するフィルターに一致する拡張プロパティを持つメッセージのすべてのプロパティが含まれます。 応答本文は、メッセージのコレクションの取得からの応答に似ています。 応答は、一致する拡張プロパティを含みません。