AutodiscoverV2 request returns REST API endpoint not AutoDiscoverV1 endpoint in Exchange Server 2019 and 2016

Applies to: Exchange Server 2019Exchange Server 2016


Assume that you try to make a GET request to get the AutodiscoverV1 endpoint for a mailbox (for example, that’s hosted on Microsoft Exchange Server 2019 or Exchange Server 2016. The JSON emitted is {"Protocol":"AutoDiscoverV1","Url":""} instead of {"Protocol":"AutoDiscoverV1","Url":""}.


AutodiscoverV1 isn't in the enumeration of SupportedProtocol. The result is that in the ResourceUrlBuilder.GetResourceUrlSuffixForProtocol method, the wrong enumeration value is computed. When the code uses Enum.TryParse, it doesn't check the return value to see whether the parse is successful. The parse isn’t successful, and the enumeration value ends up being REST. That causes the REST endpoint to be returned.


To fix this issue, install one of the following updates:


Learn about the terminology that Microsoft uses to describe software updates.