[GH-ISSUE #4] New JSON-based AutoDiscovery #1

Open
opened 2026-03-04 03:27:43 +03:00 by kerem · 14 comments
Owner

Originally created by @TCB13 on GitHub (Apr 6, 2018).
Original GitHub issue: https://github.com/gronke/email-autodiscover/issues/4

Hello,

I've noticed that the latest Outlook 2016 from Office 365 uses a new auto configuration format, have a look at this from my Apache:

[06/Apr/2018:04:26:15 +0200] "GET /autodiscover/autodiscover.json?Email=user%40exampledomain.org&Protocol=ActiveSync&RedirectCount=1 HTTP/1.1" 404 4020 "-" "OutlookMobileCloudService-Autodetect/1.0.0"

Are there any ideas on supporting this newer JSON format as well? Thank you.

Originally created by @TCB13 on GitHub (Apr 6, 2018). Original GitHub issue: https://github.com/gronke/email-autodiscover/issues/4 Hello, I've noticed that the latest Outlook 2016 from Office 365 uses a new auto configuration format, have a look at this from my Apache: ` [06/Apr/2018:04:26:15 +0200] "GET /autodiscover/autodiscover.json?Email=user%40exampledomain.org&Protocol=ActiveSync&RedirectCount=1 HTTP/1.1" 404 4020 "-" "OutlookMobileCloudService-Autodetect/1.0.0"` Are there any ideas on supporting this newer JSON format as well? Thank you.
Author
Owner

@Billyboylindien commented on GitHub (Jul 25, 2018):

Same on my side.
It use activesync protocol.
Impossible to find any documentation :'(
If someone have I take ;)

My searches:
https://github.com/mailcow/mailcow-dockerized/blob/master/data/web/autodiscover-json.php

<!-- gh-comment-id:407759512 --> @Billyboylindien commented on GitHub (Jul 25, 2018): Same on my side. It use activesync protocol. Impossible to find any documentation :'( If someone have I take ;) My searches: https://github.com/mailcow/mailcow-dockerized/blob/master/data/web/autodiscover-json.php
Author
Owner

@gronke commented on GitHub (Jul 25, 2018):

I've noticed that the latest Outlook 2016 from Office 365 uses a new auto configuration format
@TCB13 do you know if the client sends a user agent string or how we can differentiate which client is connecting?

Are there any ideas on supporting this newer JSON format as well? Thank you.
It invites for a conditional that differentiates which format to present.

Impossible to find any documentation :'(
Usually looking at other ISPs configuration is an appropriate way to gain such information.

<!-- gh-comment-id:407778211 --> @gronke commented on GitHub (Jul 25, 2018): > I've noticed that the latest Outlook 2016 from Office 365 uses a new auto configuration format @TCB13 do you know if the client sends a user agent string or how we can differentiate which client is connecting? > Are there any ideas on supporting this newer JSON format as well? Thank you. It invites for a conditional that differentiates which format to present. > Impossible to find any documentation :'( Usually looking at other ISPs configuration is an appropriate way to gain such information.
Author
Owner

@TCB13 commented on GitHub (Jul 25, 2018):

@gronke I think the link by @Billyboylindien answers that question https://github.com/mailcow/mailcow-dockerized/blob/master/data/web/autodiscover-json.php

Looks like the Protocol field in the GET request can be either ActiveSync or AutodiscoverV1.

<!-- gh-comment-id:407780672 --> @TCB13 commented on GitHub (Jul 25, 2018): @gronke I think the link by @Billyboylindien answers that question https://github.com/mailcow/mailcow-dockerized/blob/master/data/web/autodiscover-json.php Looks like the `Protocol` field in the GET request can be either `ActiveSync` or `AutodiscoverV1`.
Author
Owner

@Gorjan-Relevantmobile commented on GitHub (Sep 18, 2018):

Hi Guys, could you please tell me if some one has implemented this?

<!-- gh-comment-id:422391486 --> @Gorjan-Relevantmobile commented on GitHub (Sep 18, 2018): Hi Guys, could you please tell me if some one has implemented this?
Author
Owner

@Deepakbaghel99 commented on GitHub (Oct 16, 2018):

Autodiscover.json is the new Autodiscover (Autodiscover V2) service that is used by Office 365 clients to discover the location of the mailbox to connect too.
3rd party clients are advised to used Graph.microsoft.com. Behind the scene Graph would do the Autodiscover V2 to discover the protocol URL required to connect to the requested mailbox and then connect to it to get the requested content.
https://channel9.msdn.com/Events/Ignite/2016/BRK3045 is the link to the Ignite talk talking (24.30 mins) about Autodiscover V2 in Graph context.

<!-- gh-comment-id:430416866 --> @Deepakbaghel99 commented on GitHub (Oct 16, 2018): Autodiscover.json is the new Autodiscover (Autodiscover V2) service that is used by Office 365 clients to discover the location of the mailbox to connect too. 3rd party clients are advised to used Graph.microsoft.com. Behind the scene Graph would do the Autodiscover V2 to discover the protocol URL required to connect to the requested mailbox and then connect to it to get the requested content. https://channel9.msdn.com/Events/Ignite/2016/BRK3045 is the link to the Ignite talk talking (24.30 mins) about Autodiscover V2 in Graph context.
Author
Owner

@TCB13 commented on GitHub (Aug 19, 2019):

I still can't get arond this. Outlook doesn't even seem to behave the same from domain to domain.

<!-- gh-comment-id:522522594 --> @TCB13 commented on GitHub (Aug 19, 2019): I still can't get arond this. Outlook doesn't even seem to behave the same from domain to domain.
Author
Owner

@FoZo commented on GitHub (Aug 31, 2020):

Hi,
it looks like the new otulook just don't support autodiscovery for non MS services.
After few days digging in the MS documentation I had found this:
https://docs.microsoft.com/en-us/openspecs/exchange_server_protocols/ms-oxdscli/b79961b5-ff44-47bf-b136-b5613c45f18b#Appendix_A_36

<!-- gh-comment-id:683585951 --> @FoZo commented on GitHub (Aug 31, 2020): Hi, it looks like the new otulook just don't support autodiscovery for non MS services. After few days digging in the MS documentation I had found this: https://docs.microsoft.com/en-us/openspecs/exchange_server_protocols/ms-oxdscli/b79961b5-ff44-47bf-b136-b5613c45f18b#Appendix_A_36
Author
Owner

@kartikayx commented on GitHub (Sep 28, 2020):

Can someone point me to a document or something ? I need to implement auto discovery for my native mobile app using graph i don't find any resource related to this.

<!-- gh-comment-id:699935142 --> @kartikayx commented on GitHub (Sep 28, 2020): Can someone point me to a document or something ? I need to implement auto discovery for my native mobile app using graph i don't find any resource related to this.
Author
Owner

@kartikayx commented on GitHub (Sep 30, 2020):

Autodiscover.json is the new Autodiscover (Autodiscover V2) service that is used by Office 365 clients to discover the location of the mailbox to connect too.
3rd party clients are advised to used Graph.microsoft.com. Behind the scene Graph would do the Autodiscover V2 to discover the protocol URL required to connect to the requested mailbox and then connect to it to get the requested content.
https://channel9.msdn.com/Events/Ignite/2016/BRK3045 is the link to the Ignite talk talking (24.30 mins) about Autodiscover V2 in Graph context.

@Deepakbaghel99 How we can use graph ? graph will require the auth tokens right ? which api of graph we need to call ?

<!-- gh-comment-id:701283214 --> @kartikayx commented on GitHub (Sep 30, 2020): > Autodiscover.json is the new Autodiscover (Autodiscover V2) service that is used by Office 365 clients to discover the location of the mailbox to connect too. > 3rd party clients are advised to used Graph.microsoft.com. Behind the scene Graph would do the Autodiscover V2 to discover the protocol URL required to connect to the requested mailbox and then connect to it to get the requested content. > https://channel9.msdn.com/Events/Ignite/2016/BRK3045 is the link to the Ignite talk talking (24.30 mins) about Autodiscover V2 in Graph context. @Deepakbaghel99 How we can use graph ? graph will require the auth tokens right ? which api of graph we need to call ?
Author
Owner

@TCB13 commented on GitHub (Sep 30, 2020):

3rd party clients are advised to used Graph.microsoft.com. Behind the scene Graph would do the Autodiscover V2 to discover the protocol URL required to connect to the requested mailbox and then connect to it to get the requested content.

Yeah I've noticed that Microsoft probes my servers for the v2 protocol however they don't seem to pass the settings to Outlook after that... I think this is anti competitive behavior - making sure only O365 email works properly with Outlook.
Before someone says my v2 implementation is broken just consider for a second that it works just fine with older versions of Outlook but its broken with the newer versions that use microsoft's graph servers.

<!-- gh-comment-id:701303395 --> @TCB13 commented on GitHub (Sep 30, 2020): > 3rd party clients are advised to used Graph.microsoft.com. Behind the scene Graph would do the Autodiscover V2 to discover the protocol URL required to connect to the requested mailbox and then connect to it to get the requested content. Yeah I've noticed that Microsoft probes my servers for the v2 protocol however they don't seem to pass the settings to Outlook after that... I think this is anti competitive behavior - making sure only O365 email works properly with Outlook. Before someone says my v2 implementation is broken just consider for a second that it works just fine with older versions of Outlook but its broken with the newer versions that use microsoft's graph servers.
Author
Owner

@chris001 commented on GitHub (Dec 23, 2020):

I'm surprised and don't believe MS is still acting anti competitive in 2020. Example, they recently integrated linux VMs into windows server (afaik)! I bet this AutodiscoverV2 is caused by human error of missing documentation on how to use their Graph API and it should appear soon, as long we ask MS for it, and/or search in MS Tech Net for it.

<!-- gh-comment-id:749856616 --> @chris001 commented on GitHub (Dec 23, 2020): I'm surprised and don't believe MS is still acting anti competitive in 2020. Example, they recently integrated linux VMs into windows server (afaik)! I bet this AutodiscoverV2 is caused by human error of missing documentation on how to use their Graph API and it should appear soon, as long we ask MS for it, and/or search in MS Tech Net for it.
Author
Owner

@Trimilur commented on GitHub (Mar 26, 2021):

Are there any news here? I am also unable to get autodiscover with imap working in outlook with o365.

<!-- gh-comment-id:807910868 --> @Trimilur commented on GitHub (Mar 26, 2021): Are there any news here? I am also unable to get autodiscover with imap working in outlook with o365.
Author
Owner

@christophsanz commented on GitHub (Mar 27, 2021):

I am having the same issue. It is weird how if you use the old "Mail (Microsoft Outlook) (32-Bit)" via the Control Panel everything works... this is just frustrating.
Why is automatic email configuration still that hard in 2021, why does not everyone use RFC 6186 ??

<!-- gh-comment-id:808810400 --> @christophsanz commented on GitHub (Mar 27, 2021): I am having the same issue. It is weird how if you use the old "Mail (Microsoft Outlook) (32-Bit)" via the Control Panel everything works... this is just frustrating. Why is automatic email configuration still that hard in 2021, why does not everyone use RFC 6186 ??
Author
Owner

@m3nu commented on GitHub (Mar 28, 2021):

There is also a registry flag that can change the default dialog in Outlook back to the “advanced version”.

<!-- gh-comment-id:808853229 --> @m3nu commented on GitHub (Mar 28, 2021): There is also a registry flag that can change the default dialog in Outlook back to the “advanced version”.
Sign in to join this conversation.
No labels
pull-request
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/email-autodiscover#1
No description provided.