Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Outlook: Deeplinks to mail items returned by Outlook API no longer load #1095

Closed
davidfishlock opened this issue Apr 10, 2020 · 61 comments
Closed
Assignees
Labels
Area: Outlook Issue related to Outlook add-ins Status: fixed Fix is deployed and available to customer Type: product bug Bug in the Office Add-ins platform or Office JavaScript APIs

Comments

@davidfishlock
Copy link

When attempting to navigate to a WebLink for a mail item returned by the Outlook API, the user receives a blank page with a spinner and 'loading' indefinitely.

Expected Behavior

The OWA read item view is displayed with the mail item

Current Behavior

The user is stuck on a blank loading screen indefinitely

Steps to Reproduce, or Live Example

Context

Your Environment

  • Platform [PC desktop, Mac, iOS, Office Online]: Any
  • Host [Excel, Word, PowerPoint, etc.]: Outlook
  • Operating System: Any
  • Browser (if using Office Online): Any
@ghost ghost added the Needs: triage 🔍 New issue, needs PM on rotation to triage ASAP label Apr 10, 2020
@Rick-Kirkham Rick-Kirkham added Area: Outlook Issue related to Outlook add-ins Needs: attention 👋 Waiting on Microsoft to provide feedback Type: product bug Bug in the Office Add-ins platform or Office JavaScript APIs and removed Needs: triage 🔍 New issue, needs PM on rotation to triage ASAP labels Apr 10, 2020
@exextoc
Copy link
Collaborator

exextoc commented Apr 10, 2020

@davidfishlock Can you also provide an example of the API that's returning that link?

The URL in the repro steps is a REST URL, rather than an OWA URL, so it should return a JSON response when called with a token via an HTTP request (see Message API).

@davidfishlock
Copy link
Author

davidfishlock commented Apr 11, 2020

@exextoc Yes, we are calling the Outlook Rest API Version 2.0 as shown in the link you provide above.

The JSON response contains a property 'WebLink' containing a url to open the mail item in OWA. Folllowing that url now leads to a blank page with loading spinner, the item never loads.

WebLinks returned by the REST API are in the format:
https://outlook.live.com/owa/?ItemID={someItemID}&exvsurl=1&viewmodel=ReadMessageItem

These urls have been loading the mail item correctly until this week.

@exextoc
Copy link
Collaborator

exextoc commented Apr 11, 2020

Thanks for the clarifications.

This repo is for Office.js questions (the web-based Office add-in platform), which does provide some access to REST (hence my confusion), but this is purely a REST question.

For REST questions, you could ask a question on Stack Overflow with the 'outlook-restapi' tag.

For this particular issue, if the URL looks correct (you mentioned it was working last week), the issue may be with OWA or with authentication (also consider whether the issue is scoped to certain users or organizations). In those cases, you could get a better response by opening a support ticket with Microsoft.

@exextoc exextoc added Resolution: external Issue isn't related to the Office Add-ins platform, Office JavaScript APIs, or documentation and removed Needs: attention 👋 Waiting on Microsoft to provide feedback labels Apr 11, 2020
@davidfishlock
Copy link
Author

davidfishlock commented Apr 11, 2020

@exextoc So to be clear, you have no route to escalate this internally since this will likely be breaking a large number of Outlook add-ins? It seems very poor that the best route to raise this is via stack overflow.

This affects all users, and the issue is not authentication.

@exextoc
Copy link
Collaborator

exextoc commented Apr 11, 2020

I tried to reproduce the issue initially with an organization account but unfortunately couldn't.

I'm able to reproduce the issue now but only on an outlook.com account (a "Microsoft account"). Is this consistent with what you're seeing?

@davidfishlock
Copy link
Author

davidfishlock commented Apr 11, 2020

@exextoc Yes, the reports I have are against live.com and hotmail accounts etc

@jankratochvilcz
Copy link

@exextoc We'd really appreciate your help here. I've opened a support ticket with Outlook already, but so far it looks like getting an actionable will be very difficult.

Please let us know how we can make sure that this issue is seen by the OWA team as it's blocking for the release of our add-in.

@exextoc
Copy link
Collaborator

exextoc commented Apr 14, 2020

We have forwarded the information about this issue to the appropriate team, and they are now investigating this issue.

@davidfishlock
Copy link
Author

@exextoc has there been any progress on this or acknowledgement of the issue? This is a showstopper for us.

Is there any way we can contact the relevant team directly?

@JuaneloJuanelo JuaneloJuanelo added the Status: fix pending Fix is complete but awaiting prod deployment label May 3, 2020
@exextoc
Copy link
Collaborator

exextoc commented May 22, 2020

@davidfishlock we have fixed this bug and it should be available now. Can you check to see if it works now?

@exextoc exextoc added Status: fixed Fix is deployed and available to customer Needs: author feedback Waiting for author (creator) of Issue to provide more info and removed Status: fix pending Fix is complete but awaiting prod deployment labels May 22, 2020
@davidfishlock
Copy link
Author

@exextoc No, there doesn't appear to be any change in behaviour.

The API still returns a WebLink in this format:
https://outlook.live.com/owa/?ItemID=[TheEmailID]&exvsurl=1&viewmodel=ReadMessageItem

Navigating to this redirects to:
https://outlook.live.com/mail/0/deeplink?ItemID=[TheEmailID]

The mail item doesn't load, just a loading spinner as previously.

@ghost ghost added Needs: attention 👋 Waiting on Microsoft to provide feedback and removed Needs: author feedback Waiting for author (creator) of Issue to provide more info labels May 22, 2020
@exextoc
Copy link
Collaborator

exextoc commented May 22, 2020

Just to clarify, did you logout and login into your account? I was able to validate that this works for my test outlook.com account.

@exextoc exextoc added Needs: author feedback Waiting for author (creator) of Issue to provide more info and removed Needs: attention 👋 Waiting on Microsoft to provide feedback labels May 22, 2020
@davidfishlock
Copy link
Author

I tested this against two accounts, one on live.com, the other on outlook.com domain.

Also tested in both Chrome and Firefox, and also in Incognito / Private browsing mode and the emails don't seem to be loading in any of these cases.

@ghost ghost added the Needs: attention 👋 Waiting on Microsoft to provide feedback label May 22, 2020
@ChangingTerry
Copy link

@exextoc Yes all working thanks

@rohit-gandhe
Copy link

Seems like this broken again?
I submitted a stack question here: https://stackoverflow.com/questions/67140484/weblinks-deeplinks-to-outlook-in-ms-graph-api-not-working

@rohit-gandhe
Copy link

Is it just me who has this issue?

@jankratochvilcz
Copy link

Hi @rohit-gandhe. I've tried today and I cannot repro this on our add-in.

@pshutchins
Copy link

Links from mail webLink were working fine, then I changed to using immutableid and now the links are broken. They only display a spinning wheel - loading.
Same problem?

@exextoc
Copy link
Collaborator

exextoc commented May 12, 2021

@pshutchins Can you please explain in detail how you are getting link, immutableid and how you are changing it to use immutableid? It will help us understand use-case and help us answer better.

@pshutchins
Copy link

Using microsoft.graph\3.31.0 and AspNetCore.App.Ref\5.0.0

In my c# code I am using the following code I found online.

Without the headeroptions message.WebLink provides a useful link,
With the headeroptions message.WebLink provides broken link.

I store the link in a SQL db.

https://graph.microsoft.com/.default
var headerOptions = new List()
{
new HeaderOption("Prefer", "IdType="ImmutableId"")
};

Microsoft.Graph.Message message = await graphServiceClient.Users["###@###.###"].MailFolders[FolderId]
.Messages
.Request(headerOptions)
.AddAsync(m);

string link = message.WebLink;

link given:
https://outlook.office365.com/owa/?ItemID=AAkALgAAAAAAHYQDEapmEc2byACqAC%2FEWg0ASAizQ%2BuaMkGMwntlFIJKPgAA8XHYKgAA&exvsurl=1&viewmodel=ReadMessageItem

That gets redirected and fails to load:
https://outlook.office365.com/mail/deeplink?ItemID=AAkALgAAAAAAHYQDEapmEc2byACqAC%2FEWg0ASAizQ%2BuaMkGMwntlFIJKPgAA8XHYKgAA&exvsurl=1

@pshutchins
Copy link

Also if it will help, this is error from browser console (Microsoft Edge Version 90.0.818.56):

types.js:262 [Deprecation] SharedArrayBuffer will require cross-origin isolation as of M91, around May 2021. See https://developer.chrome.com/blog/enabling-shared-array-buffer/ for more details.
createServiceFetchError.ts:12 Uncaught (in promise) Error: ResponseCode=ErrorItemNotFound, ActionSource=LoadItemReadingPane
at r (createServiceFetchError.ts:12)
at a (handleServerResponse…ccessAndError.ts:18)
at getItemService.ts:111
at owa.MailBootCalenda…ootSharedBoot.js:1
at action.js:22
at u (legacyApplyMiddleware.js:27)
at t.promiseMiddleware (getSupportedFallbackForLocale.ts:26)
at w (DatapointMiddleware.ts:152)
at g (DatapointMiddleware.ts:97)
at t.dispatchWithMiddleware (legacyApplyMiddleware.js:23)
createServiceFetchError.ts:12 Uncaught (in promise) Error: ResponseCode=ErrorItemNotFound, ActionSource=LoadItemReadingPane
at r (createServiceFetchError.ts:12)
at a (handleServerResponse…ccessAndError.ts:18)
at getItemService.ts:111
at owa.MailBootCalenda…ootSharedBoot.js:1
at action.js:22
at u (legacyApplyMiddleware.js:27)
at t.promiseMiddleware (getSupportedFallbackForLocale.ts:26)
at w (DatapointMiddleware.ts:152)
at g (DatapointMiddleware.ts:97)
at t.dispatchWithMiddleware (legacyApplyMiddleware.js:23)
DevTools failed to load SourceMap: Could not parse content for https://outlook.office365.com/mail/deeplink/read/owa.mailindex.js.map: Unexpected token < in JSON at position 0

@exextoc
Copy link
Collaborator

exextoc commented May 12, 2021

@pshutchins Thanks for your reply. Couple of more questions.

  1. Which platform are you using - Outlook Desktop, Outlook Mac, Outlook on Web or Outlook on Android/iOS?
  2. I am trying to understand which addin API is at fault here? Are you getting immutableid from some addin API which is not working as expected with some graph API?

@pshutchins
Copy link

pshutchins commented May 12, 2021

As far as platform I am not sure what you are asking, I am new to this (MS Graph) so bare with me.
I do appreciate any assistance.

I am using VS2019 to create a C# .Net Core ASP web application that creates a draft message in a particular folder within our organization's Exchange Online account.
Using microsoft.graph 3.31.0 on the server.
This is a daemon application.

When it creates the message it returns a Microsoft.Graph.Message with the Id and WebLink.
I put the WebLink on a web page for user to click.

When the link works it uses OWA. Our organization does use Outlook Desktop, I have it installed.
Even when the link does not work, the message is created properly and can be accessed from my Outlook Desktop.

@exextoc
Copy link
Collaborator

exextoc commented May 12, 2021

@pshutchins Are you using any Outlook Addins APIs which is not working for you as expected? Which API is that?

https://docs.microsoft.com/en-us/office/dev/add-ins/outlook/apis

@pshutchins
Copy link

I am not aware of any AddIns being used in OWA.

@exextoc
Copy link
Collaborator

exextoc commented May 12, 2021

@pshutchins In that case, most likely it is not the same issue. This GitHub project and issue are related to OfficeJS APIs (addins apis). You may want to reach out to other GitHub project (probably Microsoft Graph APIs?) and file a new issue.

Thanks for your understanding.

@pshutchins
Copy link

thanks

@davidfishlock
Copy link
Author

@exextoc it appears that deeplinks on mobile OWA are broken again. In all cases the weblinks returned by Outlook REST API or graph appear to load the inbox.

@boehmmic
Copy link

Hello @exextoc could you open the issue again? It still / again only leads to a blank page when opening the event detail link via API on mobile devices.

@nitingupta2012
Copy link

nitingupta2012 commented Nov 3, 2022

Hi @exextoc

We are also facing the same issue. Using graph API via power automate to generate emails and user can view the emails via weblink provided by API.

For some users the link is working fine and users are able to view the email and can edit the email via deeplink but for other set of users they are unable to edit the email hence can't send it.

Strange behavior's for users in same org with same licensing and access permissions.

Can we open this issue again?

@Frank-Bresz-EY
Copy link

Also seeing this - it was working up until a few months ago, now broken, have tried many things. FAIL

@qiuzman
Copy link

qiuzman commented May 10, 2023

Also seeing this - it was working up until a few months ago, now broken, have tried many things. FAIL

Yea same for us it was all working until today. Now the web links for emails just result in an envelop opening and reopening over and over on outlook.office365.com. This is super frustrating as my users think it is an issue on my end lol.

@Frank-Bresz-EY
Copy link

Team - here is something - where formerly I was using:

https://mail-us.o365.company.com/mail/deeplink?ItemID=AAMkADYxZGViMjA1LTA4MDAtNGExMy05NDFmLTRlZDM5MTAzOGMzOQBGAAAAAAA5T6IEPLoISZ-sA9HfSju7BwC40PwF1e2CQbCSgFXyeGfbAAAAmKSNAADbQGoTkL40RZwMKwbhlQxZAAQZls71AAA=

I changed to this:

https://mail-us.o365.company.com/mail/inbox/id/AAMkADYxZGViMjA1LTA4MDAtNGExMy05NDFmLTRlZDM5MTAzOGMzOQBGAAAAAAA5T6IEPLoISZ%2FsA9HfSju7BwC40PwF1e2CQbCSgFXyeGfbAAAAmKSNAADbQGoTkL40RZwMKwbhlQxZAAQZls71AAA%3D

Note - I had to change deeplink?ItemID= to be /inbox/id/

Also had to do the HTTP thing to convert '-' and the '=' to the %2F and the %3d

I need to determine how I make use of this in my powerautomate - I think there was a hint somewhere in the thread on how to change the -= stuff into the right characters. If I figure it out I will post here.

It still doesn't seem to be 100% though.

@pulsovi
Copy link

pulsovi commented May 16, 2023

Also seeing this - it was working up until a few months ago, now broken, have tried many things. FAIL

I have the same, unable to use the "hack" of /inbox/id/ because some of the items I want to read are not in the inbox.

On browser console errors it show :
Uncaught (in promise) TypeError: c is undefined
somwhere in the minified code at ...options:c.options...

,(()=>gn.importAndExecute(u))),runAfterRequests:On,loadBpos:!0,strategies:i,bootstrap:ln,options:c.options,isDeepLink:u==sn.Y.MailDeepLink||u==sn.Y.CalendarDeepLink,onLoaderRemoved:t,handleBoot

Same as #3345

@Frank-Bresz-EY
Copy link

Well I have this Power Automate thing working for items in inbox - but it doesn't work for items in the sent folder - which I still cannot figure out.

These links that look nearly identical - work if the item is in the inbox - but not when viewing items in the sent folder - which is called 'sentitems' in OWA Now for some reason.

This gross, horrible and disgusting Power Automate generates the right link for the Inbox (Had to use replace because uriComponent does not change the "dash" into "%2F", and apparently the new OWA interface needs that to be updated)

concat(' https://mail-us.o365.company.com/mail/inbox/id/', replace ( uriComponent ( triggerOutputs()?['body/id'] ) , '-', '%2F' ) )

https://mail-us.o365.company.com/mail/sentitems/id/AAMkADYxZGViMjA1LTA4MDAtNGExMy05NDFmLTRlZDM5MTAzOGMzOQBGAAAAAAA5T6IEPLoISZ%2FsA9HfSju7BwC40PwF1e2CQbCSgFXyeGfbAAAAmKSPAADbQGoTkL40RZwMKwbhlQxZAANzKunLAAA%3D

https://mail-us.o365.company.com/mail/inbox/id/AAMkADYxZGViMjA1LTA4MDAtNGExMy05NDFmLTRlZDM5MTAzOGMzOQBGAAAAAAA5T6IEPLoISZ%2FsA9HfSju7BwC40PwF1e2CQbCSgFXyeGfbAAAAmKSNAADbQGoTkL40RZwMKwbhlQxZAAQdoVVkAAA%3D

https://mail-us.o365.company.com/mail/inbox/id/AAMkADYxZGViMjA1LTA4MDAtNGExMy05NDFmLTRlZDM5MTAzOGMzOQBGAAAAAAA5T6IEPLoISZ%2FsA9HfSju7BwC40PwF1e2CQbCSgFXyeGfbAAAAmKSNAADbQGoTkL40RZwMKwbhlQxZAAQdoVVaAAA%3D

@Frank-Bresz-EY
Copy link

Hmm, I can't be sure - but seems like the gang at MSFT fixed the DeepLink

@Frank-Bresz-EY
Copy link

Just tested one of my old flows with the deeplink and it worked. Looks like whatever "was broken" - got repaired

@UNiXMIT
Copy link

UNiXMIT commented May 23, 2023

Broke for me on Chrome and Edge this week. It works in Brave. Maybe a Chrome update has broken it again recently.

@exextoc
Copy link
Collaborator

exextoc commented May 26, 2023

@UNiXMIT Can you create a new issue with all the details of the problem you are facing as this is and old issue and already closed?

@UNiXMIT
Copy link

UNiXMIT commented May 26, 2023

@UNiXMIT Can you create a new issue with all the details of the problem you are facing as this is and old issue and already closed?

Typical, I just went to reproduce this again to raise a new issue and it's working again in Chrome and Edge.

@exextoc
Copy link
Collaborator

exextoc commented Jun 1, 2023

@mccreelake While we are investigating the problem you are facing, can you please create a new issue with all these details of the problem you are facing as this is an old and wider issue and is already closed?

@wannesmatthys
Copy link

Is this still broken? Having the exact same problem 3 yrs later.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area: Outlook Issue related to Outlook add-ins Status: fixed Fix is deployed and available to customer Type: product bug Bug in the Office Add-ins platform or Office JavaScript APIs
Projects
None yet
Development

No branches or pull requests