I have an application with a need to retrieve the Global Object Id from a calendar event. I am using direct XML calls to EWS, not the managed API. I have noted that with Exchange 2013, when I retrieve all properties, I get this item in the UID field. Perfect, except, the customer I am doing this project for is using Exchange 2007 and that cannot be changed. Unfortunately his version of EWS is not returning a UID field. So the first part of my question is - am I wrong about this field not being supported in Exchange 2007? Or perhaps I'm doing something wrong?
Assuming that is a dead end, I thought I would use the Extended Field URI feature to get the property. This is the XML that I created:
<ItemShape>
<t:BaseShape>AllProperties</t:BaseShape>
<t:BodyType>Text</t:BodyType>
<t:AdditionalProperties>
<t:ExtendedFieldURI PropertySetId="6ED8DA90-450B-101B-98DA-00AA003F1305" PropertyName="Global Object Id" PropertyType="Binary" /></t:AdditionalProperties>
</ItemShape>
Although EWS gives no error to this, all I get is the usual properties, my request for Global Object Id is ignored. Of course, I have no idea what value I should use for Property Name. I've observed that I can put any random value in there, and nothing changes. How can I find out the correct name? I have tried using a PropertyTag (0x3) but then EWS complains that I cannot do this with named properties.
Help! I'm getting desperate.