Convert restId to the entryId with calling translateExchangeIds?

180 Views Asked by At

As a followup to Converting restId format type to old Outlook HexEntryId type :
Since user2250152's excellent answer indicates that I have to do some programming myself, I was wondering:

Can I also do the conversion for the restId to the entryId myself?
That would save a call to translateExchangeIds.

Example data from the translateExchangeIds call:

"sourceId": "AAMkADI2ZGIwY2FlLTA1NDQtNGFhYi1hNDJmLWEyMGJhZWU5NmM2YgBGAAAAAACrxyqss0H-T5iGuqwSXncoBwB1kc8DNbIxRK3H-NcbpuL8AAAAAAENAAB1kc8DNbIxRK3H-NcbpuL8AAKHvUXcAAA="
"targetId": "AAAAAKvHKqyzQf9PmIa6rBJedygHAHWRzwM1sjFErcf81xum4vwAAAAAAQ0AAHWRzwM1sjFErcf81xum4vwAAoe9RdwAAA2"

"sourceId": "AAMkADI2ZGIwY2FlLTA1NDQtNGFhYi1hNDJmLWEyMGJhZWU5NmM2YgBGAAAAAACrxyqss0H-T5iGuqwSXncoBwB1kc8DNbIxRK3H-NcbpuL8AAAAAAENAABV1BT8PvI4S78XiwEQP4DVAATuyF7bAAA="
"targetId": "AAAAAKvHKqyzQf9PmIa6rBJedygHAHWRzwM1sjFErcf81xum4vwAAAAAAQ0AAFXUFPw-8jhLvxeLARA_gNUABO7IXtsAAA2"

"sourceId": "AAMkADI2ZGIwY2FlLTA1NDQtNGFhYi1hNDJmLWEyMGJhZWU5NmM2YgBGAAAAAACrxyqss0H-T5iGuqwSXncoBwB1kc8DNbIxRK3H-NcbpuL8AAAAAAENAAB1kc8DNbIxRK3H-NcbpuL8AAJ2Kv4fAAA="
"targetId": "AAAAAKvHKqyzQf9PmIa6rBJedygHAHWRzwM1sjFErcf81xum4vwAAAAAAQ0AAHWRzwM1sjFErcf81xum4vwAAnYq_h8AAA2"
1

There are 1 best solutions below

0
On

EWS and Graph/rest Id's (which are just a base64URL safe version of the ewsId) contain the EntryId + some flags that tell the backend how to open the item. Microsoft don't document the format because they consider it opaque and subject to change. So you can do it yourself but it won't be supported if you convert both of the values to Hex and work backwards you'll see what i means eg

0003240032366462306361652d303534342d346161622d613432662d61323062616565393663366200460000000000abc72aacb341fe4f9886baac125e772807007591cf0335b23144adc7f8d71ba6e2fc00000000010d00007591cf0335b23144adc7f8d71ba6e2fc0002762afe1f0000

00000000abc72aacb341ff4f9886baac125e772807007591cf0335b23144adc7fcd71ba6e2fc00000000010d00007591cf0335b23144adc7fcd71ba6e2fc0002762afe1f00000d