在使用Microsoft graph API发送电子邮件时,我包含SingleValueExtended属性。发送邮件后,我想通过添加$ expand和$ filter条件使用图形API来获取它。请参见下面的代码。
{
"message": {
"subject": "Meet for lunch?",
"body": {
"contentType": "Text",
"content": "The new cafeteria is open."
},
"toRecipients": [
{
"emailAddress": {
"address": "example@domain.com"
}
}
],
"ccRecipients": [
{
"emailAddress": {
"address": "example1@domain.com"
}
}
]
},
"saveToSentItems": "true",
"singleValueExtendedProperties": [
{
"id": "String {4F830AA0-48FA-4D11-A5D4-9F6D72FB2A56} Name TestingEmailID",
"value": "outlookapi-1234"
}
]
}
我尝试通过以下查询来获取已发送的电子邮件。
https://graph.microsoft.com/beta/me/messages?$expand=singleValueExtendedProperties($filter=id eq 'String {4F830AA0-48FA-4D11-A5D4-9F6D72FB2A56} Name TestingEmailID')&$filter=singleValueExtendedProperties/Any(ep: ep/id eq 'String {4F830AA0-48FA-4D11-A5D4-9F6D72FB2A56} Name TestingEmailID' and ep/value eq 'outlookapi-1234')
它返回一个空数组。可能是什么原因?任何帮助表示赞赏。
结果:
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#users('c7b4dae9-babs-4fc3-83n4-19d118617837')/messages",
"value": []
}
我的要求是获取所发送电子邮件的ID。 sendMail api不返回已发送消息的ID。因此,尝试发送具有扩展属性的消息,并使用此值取回它以访问id。如果您还有其他建议可以达到此要求,请告诉我。