我可以从Outlook Contacts REST API获取MobilePhone2字段吗?

时间:2017-12-12 09:05:08

标签: api outlook

我正在使用Outlook Contacts REST API,以便为给定的联系人保存所有电话号码。

我必须调用两个版本的API(v2.0& beta),这样我几乎可以获得所有值。 即。 v2.0发送给我:

HomePhones: [ '0333333333', '0444444444' ],
MobilePhone1: '0611111111',
BusinessPhones: [ '0155555555', '0166666666' ],

beta发送给我:

Phones: [
    { Type: 'Home', Number: '0333333333' },
    { Type: 'Business', Number: '0155555555' },
    { Type: 'Mobile', Number: '0611111111' },
    { Type: 'Other', Number: '0677777777' }
],

但是,我的联系方式如下:

Outlook contact screenshot

正如您所看到的,两个API都向我发送了不同的结果,但没有一个是完整的。 此外,我在帐户中保存的联系人还有一个电话号码Mobile2,并且没有任何API将其发送给我。

有办法搞定吗?

谢谢,

bjorge

1 个答案:

答案 0 :(得分:2)

API不会直接公开此内容。但是,您始终可以使用正确的MAPI属性标记详细信息将其作为extended property请求。

我检查了与MFCMapi的联系,我看到Mobile2号码存储在GET /me/contacts?$expand=SingleValueExtendedProperties( $filter=PropertyId eq 'String 0x3A1E') 中,这是一个字符串属性,属性ID为0x3A1E。因此,由于您使用的是Outlook REST端点,因此您的请求将如下所示:

GET /me/contacts?$expand=singleValueExtendedProperties(
  $filter=id eq 'String 0x3A1E')

如果您使用的是Graph,请求会有所不同:

  func action1()
    {
    time1 += 2,78
    lbltime.text = String(time1)
    }

最后,我建议您对此UserVoice请求进行投票:https://officespdev.uservoice.com/forums/224641-feature-requests-and-feedback/suggestions/19861435-beef-up-contact-resource-contents-in-rest-api