Can't get SingleValueExtendedProperties from Outlook contacts for certain data types with GRAPH

3

I'm trying to get values for PT_DOUBLE and PT_CLSID custom property data types using Microsoft Graph. I have no trouble getting custom properties for PT_LONG (Integer) or PT_UNICODE (String). Integer and String does not work for PT_DOUBLE and PT_CLSID properties, and I get this error:

ErrorInvalidExtendedProperty: The extended property attribute combination is invalid.

The documentation on supported data types is not very clear.

Here's a sample request that works for PT_UNICODE and PT_LONG props:

https://outlook.office.com/api/v2.0/me/contactfolders/{id}/contacts?
 $top=1&
 $expand=SingleValueExtendedProperties($filter=
 (PropertyId eq  'String {1A417774-4779-47C1-9851-E42057495FCA} Name InlineLinks')+OR+
 (PropertyId eq  'String {1A417774-4779-47C1-9851-E42057495FCA} Name XrmCompanyPeople')+OR+
 (PropertyId eq 'Integer {1A417774-4779-47C1-9851-E42057495FCA} Name XrmContactType'))

I can live without PT_DOUBLE, but I really need to access these PT_CLSID props (String and Guid do not work):

XrmContactId: Tag = 0x86680048; 
DASL: http://schemas.microsoft.com/mapi/string/{1A417774-4779-47C1-9851-E42057495FCA}/XrmContactId/0x00000048; 
Kind: MNID_STRING

XrmId: Tag = 0x86680048; 
DASL: http://schemas.microsoft.com/mapi/string/{1A417774-4779-47C1-9851-E42057495FCA}/XrmId/0x00000048; 
Kind: MNID_STRING

Does anyone know the data type name for PT_CLSID or list of supported data types for Microsoft Graph? The Exchange Server Protocols Master Property List is painful to read through and it didn't give me any insights.

microsoft-graph-api
outlook-restapi
asked on Stack Overflow Apr 29, 2017 by Eric Legault • edited Feb 9, 2018 by Marc LaFleur

1 Answer

1

For SingleValueLegacyExtendedProperty, both the PropertyID and Value elements are strings.

One bit of clarification, the API you're calling here is the Outlook API and not Graph. While they provide similar functionality, they are distinct endpoints. Extended Properties in Graph also only supports string values.

answered on Stack Overflow May 1, 2017 by Marc LaFleur

User contributions licensed under CC BY-SA 3.0