Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ionic-framework/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Microsoft graph api 是否有任何方法可以使用graph api或其他api从邮件中获取Office 365标签?_Microsoft Graph Api_Microsoft Graph Sdks - Fatal编程技术网

Microsoft graph api 是否有任何方法可以使用graph api或其他api从邮件中获取Office 365标签?

Microsoft graph api 是否有任何方法可以使用graph api或其他api从邮件中获取Office 365标签?,microsoft-graph-api,microsoft-graph-sdks,Microsoft Graph Api,Microsoft Graph Sdks,EWS Emailmessage.PolicyTag.RetentionId中存在属性。我想使用Graph API或任何其他API访问此属性。早些时候,我直接从EWS获取它,但由于交换协议的最新变化。IOS或android上的电子邮件id检索不再适用于EWS。早些时候它起作用了 我也尝试过Graph beta版,但检索失败。您可以使用托管Graph API库来实现这一点。下面是代码片段: SearchFilter isequalto = new SearchFilter.IsEqualTo(M

EWS Emailmessage.PolicyTag.RetentionId中存在属性。我想使用Graph API或任何其他API访问此属性。早些时候,我直接从EWS获取它,但由于交换协议的最新变化。IOS或android上的电子邮件id检索不再适用于EWS。早些时候它起作用了


我也尝试过Graph beta版,但检索失败。

您可以使用托管Graph API库来实现这一点。下面是代码片段:

SearchFilter isequalto = new 
SearchFilter.IsEqualTo(MessageObjectSchema.Subject, "Re: edb0e580-6446-4b17-912a-44b1ea7509a1");
MessageView view = new MessageView();
ExtendedPropertyDefinition propDef = new ExtendedPropertyDefinition(MapiPropertyType.Binary, 0x3019);
view.PropertySet.Add(propDef);
var msg = await service.FindItems(WellKnownFolderName.Inbox, view, isequalto);
这将在SingleValueExtendedProperties定义中

链接至图书馆:

您将获得base64二进制blob,您必须将其转换为字节并从中构造Guid:

byte[] data = System.Convert.FromBase64String(propertyValue);
new Guid(data);

returns:
33506786-ed79-4239-94a6-3222b0e1ff76

我已经联系了负责ews到microsoft graph过渡的pm。他应该可以在这里帮助您。Graph目前无法检索RetentionPolicy标记。您能解释一下EWS中无法检索电子邮件的问题吗?我们开发了O365插件,可将电子邮件从任何平台(如windows、ios、mac和android)保存到SharePoint中。早些时候,我们从office JS获取消息id,并使用访问令牌将其发送到EWS。这种情况一直持续到2019年3月19日。就在同一天,微软对Exchange协议进行了修改,由于这个原因,IOS/Android上返回的消息id不再适用于EWS。我们转向GraphAPI来获取电子邮件属性和mime内容。现在我们坚持使用retentionPolicyid,因为我们在保存到sharepoint库时标记了电子邮件@JeremyThakeMSFT请帮忙。嘿,Ivan,你能解释一下ExtendedPropertyDefinition propDef=new ExtendedPropertyDefinition(MapiPropertyType.Binary,0x3019)的代码段吗;view.PropertySet.Add(propDef);我需要获取RentationIDure,即保留策略的Mapi属性标记。它包含二进制格式的保留策略guid。在上面的代码中,您需要额外的扩展属性,它不是公共模式的一部分。请查看完整示例:您好,我们从exchange获得的GUId作为保留ID。但从GraphAPI返回二进制值作为retentionId。现在,当我们将此二进制值与Sharepoint标记匹配时,它不匹配。我可以使用下面的查询Id eq“String{403FC56B-CD30-47C5-86F8-ede9e35a02b}name complianceTag”获取complianceTag名称。我更新了答案,包括解释和简单的例子。