officedev / outlook-dev-docs Goto Github PK
View Code? Open in Web Editor NEWMicrosoft Outlook Developer Documentation
License: Creative Commons Attribution 4.0 International
Microsoft Outlook Developer Documentation
License: Creative Commons Attribution 4.0 International
By the time you get to the Test the Button outlook no longer accepts the add-in. It says "Installed" but doesn't actually add the add-in, once you close the store and get back to the main window it's not there, when you reopen the store it's no longer under custom add-ins. I suspect there's an error somewhere that doesn't get thrown because outlook doesn't give any errors/warnings. Not sure if there's a developer mode that I can activate in outlook to potentially see such errors/warnings.
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.
Only the outlook on the web can accept the Adaptive Card format, Office365 Pro Plus(version 1708) doesn't support it. The Office365 Pro Plus can only support original json format.
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.
All of this refers to https://docs.microsoft.com/en-us/outlook/add-ins/
In first sentence change "web technologies based platform" to "web-based platform". The "technologies" doesn't add anything and it makes whole phrase hard to read.
The remark " For an Outlook add-in, Outlook reads the manifest and hooks up the specified controls in the UI, then loads the JavaScript and HTML. This all executes in the context of a browser in a sandbox." implies that the "controls in the UI" in addition to the JS/HTML is in the context of a browser. The controls are not (at least not for desktop Outlook).
The bullet for contextual add-ins is to brief to give the reader any real idea of what they are. The screen shot below this bullet doesn't show enough of Outlook in the background to give the reader any understanding either.
The article starts out using the term "Outlook add-in" but it starts using "mail add-in" later. We should be consistent. I think that outside of the manifest, "Outlook add-in" is the official term.
Regarding "Please refer to individual topics and API references, to see which hosts they are/are not supported in.": if "individual topics" and "API references" are the same thing, then this is redundant. If they are different things, then what does "individual topics" refer to?
Hi @jasonjoh,
we did implement last month the exchange token validation but me and my colleague got concern about the safety of the proposed procedure. https://docs.microsoft.com/en-us/outlook/add-ins/validate-an-identity-token.
It's seems that the validation that is propose, may allow attacker to impersonate an user. Is there any mail address to express security issues ?
https://dev.office.com/reference/add-ins/outlook/tutorial-api-requirement-sets
I have a customer who wants to use our addin in their Outlook. They run an Exchange Server 2013 solution and can install addins through Exchange Admin Center. But when they try to install our addin it says:
The API version (1.3) required by this app isn't supported by the Exchange Server version (15.0.1236.3) that you're connecting to
The version number indicates that they are using Exchange Server 2013 CU14.
I've dug through loads and loads of documentation to try to find the version of Exchange they need in order to install it. It says in some places that they need Exchange 2013 or later to run addins - which obviously they have. But what about this specific API version?
@ElizabethSamuel-MSFT @dmahugh wanted to make you guys aware.
Reported via feedback here: https://docs.microsoft.com/en-us/outlook/add-ins/use-rest-api#comments-container
https://github.com/OfficeDev/outlook-dev-docs/blob/master/docs/add-ins/use-rest-api.md
In the last code sample, the getMessageUrl
is constructed incorrectly. It currently says:
var getMessageUrl = Office.context.mailbox.restUrl +
'/api/v2.0/messages/' + itemId;
Two issues
/api
segment is contained in the Office.context.mailbox.restUrl
property already. This may be true, I don't have code handy to test it./me
segment after /v2.0
. This is absolutely true.There is a non functional link in the article.
Repro steps:
Actual results:
Link redirects to a non existing page
Expected results:
Link redirects to an existing page.
GH Article:
https://github.com/OfficeDev/outlook-dev-docs/blob/live/docs/add-ins/addin-tutorial.md
From:
function getTokenFromCode(auth_code, callback, response) {...}
To:
async function getTokenFromCode(auth_code, callback, response) {...}
Per comment in LiveFyre on https://docs.microsoft.com/en-us/outlook/rest/node-tutorial:
I'd strongly recommend the author following the tutorial, copying and pasting the code samples, then debugging the quite a lot of bugs in them.
A couple of examples I've hit so far:
You define a function called getTokenFromCode(auth_code, res)
Then call it with getTokenFromCode(auth_code) which doesn't pass through the express response, breaking all of the cookie setting.The cookie uses jsonwebtoken as jwt. Except you miss the var jwt = require('json-web-token'); so jwt will always be undefined.
Also, jsonwebtoken seems to have a broken npm page. json-web-token seems to work and has the same interface you're trying to use.
I have written an add-in for outlook web. This addin gets activated based on the string match found in the Body of an email with PropertyName="BodyAsPlaintext", but the same regular expression is not working when I change the PropertyName="Subject".
For example: If it finds a string in Body of an email something like D3451-0032, G3645-7462/442 or 3702/3621392 its working fine. But if I try to send the same string in Subject of an email then its not working. I am attaching my manifest.xml file.
Thanks
<?xml version="1.0" encoding="UTF-8"?>
<OfficeApp
xmlns="http://schemas.microsoft.com/office/appforoffice/1.1"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:bt="http://schemas.microsoft.com/office/officeappbasictypes/1.0"
xmlns:mailappor="http://schemas.microsoft.com/office/mailappversionoverrides/1.0"
xsi:type="MailApp">
<!-- Begin Basic Settings: Add-in metadata, used for all versions of Office unless override provided. -->
<!-- IMPORTANT! Id must be unique for your add-in, if you reuse this manifest ensure that you change this id to a new GUID. -->
<Id>336c0281-182c-4a74-bcf4-8b820ab56e5b</Id>
<!--Version. Updates from the store only get triggered if there is a version change. -->
<Version>1.0.0.0</Version>
<ProviderName>[Provider name]</ProviderName>
<DefaultLocale>en-US</DefaultLocale>
<!-- The display name of your add-in. Used on the store and various places of the Office UI such as the add-ins dialog. -->
<DisplayName DefaultValue="RegEx" />
<Description DefaultValue="[Outlook Add-in description]"/>
<!-- Icon for your add-in. Used on installation screens and the add-ins dialog. -->
<IconUrl DefaultValue="https://localhost:3000/assets/icon-32.png" />
<HighResolutionIconUrl DefaultValue="https://localhost:3000/assets/hi-res-icon.png"/>
<!--If you plan to submit this add-in to the Office Store, uncomment the SupportUrl element below-->
<!--<SupportUrl DefaultValue="[Insert the URL of a page that provides support information for the app]" />-->
<!-- Domains that will be allowed when navigating. For example, if you use ShowTaskpane and then have an href link, navigation will only be allowed if the domain is on this list. -->
<!--<AppDomains>-->
<!--<AppDomain>AppDomain1</AppDomain>-->
<!--<AppDomain>AppDomain2</AppDomain>-->
<!--<AppDomain>AppDomain3</AppDomain>-->
<!--</AppDomains>-->
<!--End Basic Settings. -->
<Hosts>
<Host Name="Mailbox" />
</Hosts>
<Requirements>
<Sets>
<Set Name="Mailbox" MinVersion="1.1" />
</Sets>
</Requirements>
<FormSettings>
<Form xsi:type="ItemRead">
<DesktopSettings>
<SourceLocation DefaultValue="https://localhost:3000/index.html"/>
<RequestedHeight>450</RequestedHeight>
</DesktopSettings>
</Form>
</FormSettings>
<Permissions>ReadWriteItem</Permissions>
<Rule xsi:type="RuleCollection" Mode="Or">
<Rule xsi:type="RuleCollection" Mode="And">
<Rule xsi:type="RuleCollection" Mode="Or">
<Rule xsi:type="ItemIs" ItemType="Message" FormType="Read" />
</Rule>
<Rule xsi:type="ItemHasRegularExpressionMatch"
PropertyName="Subject" RegExName="MatchNumber"
RegExValue="((\d{4}\/\d{7})|([A-Z]\d{4}-\d{4}(\/\d{3})?))(?=\s)" />
</Rule>
</Rule>
<DisableEntityHighlighting>false</DisableEntityHighlighting>
</OfficeApp>
I am trying to search the messages by string e.g. "Delta" and then show the body of the message as well. But putting search variable in $messageQueryParams doesn't execute. Also I am unable to show the body of the message even though I am calling it in select
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.
I am trying to make a web application that periodically pulls my emails and displays them in a table but I don't want to have to sit down and type in the account credentials and reload the page every time the authentication token expires. Is there a way I can store the credentials in my application and just have my application auto-login whenever the token expires?
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.
0
down vote
favorite
I am experience issue with addFileAttachmentAsync. It works fine when add single attachment or inline image. But I need to add multiple attachments and multiple embedded images. Here are things I tried:
Just adding an single attachment - works
Just adding an single inline image - works
Adding an image and an attachment - works but it is slow
Multiple attachments and inline images - Does not work .
The error I am getting is quiet similar to the one here:
Office365 "addFileAttachmentAsync" error
click to see my error
To me it seems when you do multiple requests of the same format it breaks. But I am not sure why.
Any ideas?
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.
Me and others asked some question regarding this point earlier but these questions are now vanished:
=== old BEGIN ===
The validation of the ExchangeId token is done with the help of:
currentCertificate = AuthMetadata.GetSigningCertificate(new Uri(authMetadataEndpoint));
This seems to me verifying the token by itself, because the public key using for verifying is extracted from a URL within the token.
Can we assume some fixpoint of the signing certificate to check, e.g. CN=ww.exoauth.outlook.com or SAN: DNS:ww.exoauth.outlook.com, DNS:exoauth.outlook.com ?
=== old END ===
The answer is no, because now I see e.g.
CN=estsclient.coreauth.outlook.com
Therefor a second new proposal:
Can we assume, that the signing certificate we get from the authMetadataEndpoint is generated by one of the following intermediate CAs :
CN Thumbprint
Microsoft IT TLS CA 1 41 7e 22 50 37 fb fa a4 f9 57 61 d5 ae 72 9e 1a ea 7e 3a 42
Microsoft IT TLS CA 2 54 d9 d2 02 39 08 0c 32 31 6e d9 ff 98 0a 48 98 8f 4a df 2d
Microsoft IT TLS CA 4 8a 38 75 5d 09 96 82 3f e8 fa 31 16 a2 77 ce 44 6e ac 4e 99
Microsoft IT TLS CA 5 ad 89 8a c7 3d f3 33 eb 60 ac 1f 5f c6 c4 b2 21 9d db 79 b7
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.
I followed this page and was able to create a Node server to read mail from an office 365 account.
I also have an internal Exchange account that I would like to read from. To do this I went into the Application Registration Portal and created a new application for an internal Exchange e-mail address. I updated the .env file with the new access credentials. Next, I re-ran the same server code. The server received a successful connection but received a message that there are 0 mail messages to read.
It isn't clear how to use the information on this page to read from an internal Exchange server. My Office365 account is [email protected]
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.
Hi I'm writing an application uses Spring boot as Restful API, the session might not available at the backend. Is there another way to store token instead of using session? Eg database?
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.
https://docs.microsoft.com/en-us/outlook/add-ins/use-rest-api
Doc says that 1.5 is in preview, which is wrong.
In step #5 of the Calendar API and Contacts API instructions, the folder should be ./views/ for the hbs files.
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.
This came up in OfficeDev/office-js-docs#1046. Add-ins cannot activate on items that use a custom form.
I'm missing documentation about how the commands are presented in Outlook on the web for Office 365 and Outlook.com. There's no ribbon in that context and a ribbon button is therefor rendered differently.
⚠ Dit gedeelte niet bewerken. Het is vereist om problemen te koppelen tussen docs.microsoft.com en GitHub.
Current: link redirect to 404 error page
Expected: link should redirect to valid page or be removed from the article
Repro steps:
There is an unfinished sentence in an article.
Repro steps:
Actual results:
Sentence is not finished
Expected results:
Sentence should be finished
Proposed fix:
The unfinished word is most likely "attachments"
GH article:
https://github.com/OfficeDev/outlook-dev-docs/blob/master/docs/add-ins/get-attachments-of-an-outlook-item.md
Per comment on https://docs.microsoft.com/en-us/outlook/rest/php-tutorial:
Hi,
In order to be able to use the Objects Graph and User is necessary to add this 2 lines on the top of the
OutlookController.php
:
use Microsoft\Graph\Graph;
use Microsoft\Graph\Model;
At least that was what I need to do in order to be able to see the response.
I am getting below errors after signing in.
Error: C:\Users\garkumar\Node-work\mails1\node-tutorial\views\error.hbs: Can't set headers after they are sent.
at validateHeader (_http_outgoing.js:494:11)
at ServerResponse.setHeader (_http_outgoing.js:501:3)
at ServerResponse.header (C:\Users\garkumar\Node-work\mails1\node-tutorial\node_modules\express\lib\response.js:767:10)
at ServerResponse.send (C:\Users\garkumar\Node-work\mails1\node-tutorial\node_modules\express\lib\response.js:170:12)
at done (C:\Users\garkumar\Node-work\mails1\node-tutorial\node_modules\express\lib\response.js:1004:10)
at C:\Users\garkumar\Node-work\mails1\node-tutorial\node_modules\hbs\lib\hbs.js:93:9
at Object.done (C:\Users\garkumar\Node-work\mails1\node-tutorial\node_modules\hbs\lib\async.js:74:20)
at C:\Users\garkumar\Node-work\mails1\node-tutorial\node_modules\hbs\lib\hbs.js:88:18
at C:\Users\garkumar\Node-work\mails1\node-tutorial\node_modules\hbs\lib\hbs.js:69:11
at Object.done (C:\Users\garkumar\Node-work\mails1\node-tutorial\node_modules\hbs\lib\async.js:74:20)
at C:\Users\garkumar\Node-work\mails1\node-tutorial\node_modules\hbs\lib\hbs.js:64:20
at FSReqWrap.readFileAfterClose [as oncomplete] (fs.js:511:3)
Link to download schemas is broken.
This page mentions to open app.js and replace the contents, but no app.js was generated by "yo office". Generated files were:
create package.json
create my-office-add-in-manifest.xml
create app.css
create assets/icon-16.png
create assets/icon-32.png
create assets/icon-80.png
create assets/logo-filled.png
create certs/ca.crt
create certs/server.crt
create certs/server.key
create function-file/function-file.html
create function-file/function-file.js
create webpack.config.js
create index.html
create resource.html
create src/index.js
create .babelrc
create .gitignore
yo version 2.0.2
What should be done to get this to work?
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.
For the verification of the Exchange identity token, we have to implement firewall rules in order to access the server of the URL from the meta data endpoint ("appctx".” amurl”).
Can you give us a hint which server can be possible in order to implement the firewall rules for them?
In a first step it would be helpful to get an answer for this question at least for O365 domains and outlook.com.
This is a great document if you want to see pictures of the plugins that MS built for its partners, but as someone trying to develop a plugin themselves the referenced .sketch file isn't useful as it requires a proprietary app to open.
If you're so opinionated, Why not supply some boilerplate HTML, CSS some recommended selector values and a means for detecting whether the app is running inside of Outlook for IOS/Android and toggling styles? I guess I'll have to research that myself.
You're clearly using material design for Android inputs, but you don't reference the library. Is the average reader supposed to be able to look at your picture of 'example of icons' for Android and then be able to search for the icons based off the visualization provided? Am I supposed to know from visual inspection exactly what the different font-families being used between Android and IOS are? My job is to write code that does stuff that ships, not parse documentation to find every potential 'gotcha' and then research the omissions, figure out the new rejection reason.
While this page says it's guidelines, certain things are being enforced as rules. Couldn't you guys add your own CSS if you specified the classes we should use rather than passing the burden on the developer to keep up with every UX convention across devices with not much more to rely on than screenshots.
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.
Once we create our first Outlook add-in following these steps, how do we actually deploy it to our organization? Did not work through Centralized Deployment.
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.
I finally made the "Visual Studio 2017" version working. However, it only work for office365 not outlook2016 client. The error message for that is: "This add-in couldn't be started. Please try it again later..". Then I changed to a new account, the add-in don't even appear. I went back to the original account, the add-in completely disappeared. I checked the "manage add-in" on my outlook setting. I don't see the add-in at all.
How come the add-in generated from visual studio can only work for one account? Is there anyway I can manually register the add-in to another account?
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.
Hi,
I am using this doc to fetch logged in users outlook events. However, the data comes in ASCII format I believe. I need to use Unicode. I.E. when I add location from outlook, let's say İstanbul, the data that comes to me is "?stanbul". How can I fix this issue?
Hi,
I am using this service to subscribe events. However, I get error code 401 although I include the access token. I get the access token following https://docs.microsoft.com/en-us/outlook/rest/java-tutorial this tutorial. And my payload is like the following:
{
"@odata.type":"#Microsoft.OutlookServices.PushSubscription",
"Resource":"https://outlook.office.com/api/v2.0/me/events",
"NotificationURL":URL,
"ChangeType":"Created"
}
with the header:
authorization: Bearer + access token which I get from the tutorial. (I.E EwBAA8l6BAAURSN/FHlDW5xN74t6GzbtsBBeBUYAAeybQmu+RnQcYAQ3wTW3kJUclA03jKgc4Sdx2mp5SOlLswSAr9zTmO7qk33wpTD3ULZkUrl9IpTnnhtjeoSXt+z5GRRtmL40jyvAghrTseO8yEZtR04SLjl6i1KZNXxZwUTK8s6DkXESwkwaTmQKPckKHi9XeIbx8dolnT7vEeeUo5rmzcG251dQokfZYHCar3bd1bysV7oaTt5Iis6qgkYtg4BL/32QObgI8SHQS4my7FSsqLYFchYExEFeBXgUjt4yE0G0bbmykz3T5C713DAqo8BtCkkbRIckv6N4bpq84bpzaDAgdgHhnpcYzUaViJ2zhZXMrShUdpddug+DPkEDZgAACILe9sz+3mX7EAJrVvnkVpyZzC9WvQkY4xET3KdEstT..... Something like this)
content-type: application/json
Why do I get 401?
When I POST to i.E. https://outlook.office365.com/api/v2.0/me/messages/(getCallbackTokenAsync)/forward I am getting a 403 error saying "The api you are trying to access does not support item scoped OAuth."
It is missing for the ReadWriteMailbox permission?
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.
Please check the response below. Name has value which is address value instead of proper type.
using this api for getting contacts https://graph.microsoft.com/v1.0/me/contacts
"emailAddresses":[ {"name":"[email protected]","address":"[email protected]"}, {"name":"[email protected]","address":"[email protected]"}, {"name":"[email protected]","address":"[email protected]"} ],
I followed this document step by step. I have outlook 2016 desktop and outlook online. I can see outlook addin icon shows up, but when I clicked on the icon an very helpful error message shows up:
Add-in error: something went wrong and we couldn't start this add-in. Please try again later or contact your system administrator.. [RETRY] button....
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.
There is a link which redirects to a non existing GH article
Repro steps:
Actual results:
Link redirects to a non existing GH article
Expected results:
Link should redirect to an existing GH article
GH Article:
https://github.com/OfficeDev/outlook-dev-docs/blob/live/docs/add-ins/compose-scenario.md
Per comment left on topic:
(TokenResponse) session.getAttribute("tokens") always give null. Missing session.setAttribute("tokens", tokenResponse);
statement in AuthorizeController.java
Per user comment at https://docs.microsoft.com/en-us/outlook/rest/node-tutorial:
require('simple-oauth2')(credentials);
This one is outdated information. Use following one to work.
const oauth2 = require('simple-oauth2').create(credentials);
The node-tutorial repository does it correctly, just need to update the tutorial doc itself.
yo office will put every files on level up to the parent folder. i am using node v8.11.2. Is is a bug?
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.
We often receive an error 429 when using the Microsoft Graph or Outlook Mail REST API for particular actions on a mailbox. Error 429 seems to be a Throtting issue, but we cannot find any information about the issue we experience, because it's doesn't seems to be related to the 'Rate-Limit' throttling rule documented here: https://blogs.msdn.microsoft.com/exchangedev/2017/04/07/throttling-coming-to-outlook-api-and-microsoft-graph/
We are able to reproduce our issue with the following step below: (we used direct Outlook Mail API to reproduce it)
At exactly 500 ‘move’ actions we see the following behavior of the API:
We tried several mailboxes (shared and user mailboxes), same issue.
It’s not the ‘Rate Limit’-throttling, because the headers returns the information below and there are still remaining requests, when the error 500/429 occurs:
Rate-Limit-Limit: 10000
Rate-Limit-Remaining: 9502
Rate-Limit-Reset: 2018-01-12T15:30:26.817Z
We currently cannot find any other Throttling documentation related to the 500 move actions.
We sometimes have to wait for more than 30 minutes before the 429 error disappears.
@jasonjoh
Is this a bug in the API? Or a throttling rule/issue?
How can we solve this issue?
If it’s a throttling rule, could you provide us additional documentation on these rules?
Thanks!
There is a non functional link in the article.
Repro steps:
Actual results:
Link redirects to a non existing page
Expected results:
Link redirects to an existing page.
GH Article:
https://github.com/OfficeDev/outlook-dev-docs/blob/live/docs/add-ins/manifests.md
There is a invalid link which is redirecting to a non existing GH article.
Repro steps:
GH article:
https://github.com/OfficeDev/outlook-dev-docs/blob/live/docs/add-ins/get-attachments-of-an-outlook-item.md
Actual results:
Link redirects to a non existing GH article
Expected results:
Link redirects correctly
Hi,
I want inbox mail list from id [email protected] which is integrated with Outlook.
I just did the above Outlook REST API integration and It works fine with my outlook email id [email protected]. My question is one of my client has integrated his workspace id let say [email protected] with outlook. Now will this workspace email id work with above developed Outlook REST API?
FYI,
When I first attempted to run the example using Visual Studio, I got this error when clicking the Add-in.
Sorry, we couldn't load the app because your browser version is not supported …
After some research I found discussions about the html <meta http-equiv …/> . So I removed that line from MessageRead.html and redeployed the Add-in. It worked.
Then I added the original <meta http-equiv … /> element back in and it continues to work.
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.
Is item #6 below correct? It states that it is not possible to manipulate an item in another users mailbox by Outlook add-in. But is seems that it is possible to manipulate items in another user's mail folder by API here: https://developer.microsoft.com/en-us/graph/docs/api-reference/v1.0/api/user_list_messages
Quote from text on this page:
Mailbox items available to add-ins
Outlook Add-ins are available on messages or appointments while composing or reading, but not other item types. Outlook does not activate add-ins if the current message item, in a compose or read form, is one of the following:
Protected by Information Rights Management (IRM), in S/MIME format or encrypted in other ways for protection. A digitally signed message is an example since digital signing relies on one of these mechanisms.
A delivery report or notification that has the message class IPM.Report.*, including delivery and Non-Delivery Report (NDR) reports, and read, non-read, and delay notifications.
A draft (does not have a sender assigned to it), or in the Outlook Drafts folder.
A .msg or .eml file which is an attachment to another message.
A .msg or .eml file opened from the file system.
In a shared mailbox, in another user's mailbox, in an archive mailbox, or in a public folder.
Using a custom form.
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.
https://docs.microsoft.com/en-us/outlook/add-ins/outlook-mobile-addins
Any plans to include calendars in the latest mobile addin feature?
Only mail read is supported at this time. That means MobileMessageReadCommandSurface is the only ExtensionPoint you should declare in the mobile section of your manifest
When sideloading an add-in in Outlook 365, the UI that I see doesn't match the UI that's described in the Sideload Outlook add-ins for testing article. Is the article perhaps outdated?
Here's the Settings menu that I see in Outlook 365:
Hi guys, I am coming from https://docs.microsoft.com/en-us/outlook/rest/java-tutorial#implementing-oauth2 this documentation. However, I can not get the email of the user. I get the name but the email returns null..
Suppose I have a html formatted text, is there an easy way that I can render/transfer that text in the actionable email? I know the text supports Markdown, but the functions are very limited and it's hard to map the html format to Markdown syntax.
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.
This is in reference to: https://github.com/OfficeDev/outlook-dev-docs/blob/live/docs/add-ins/quick-start.md
The comment above Office.initialize in the first JS code block says "The initialize function must be run each time a new page is loaded". This comment is misleading and not to the point. The code is not "running" Office.initialize. It is assigning something to Office.initialize. The Office host will attempt to initialize Office regardless of whether this line of code is there or not. The initialization will fail if the Office.initialize property does not have a function assigned to it. That's what the comment should say.
Most of the JS is taken up with inserting HTML markup into the page. Since we're trying to teach add-ins and the Outlook API, not programmatic DOM manipulation, let's put most of this markup in the page to start with and then just have the JS insert the mail item data into the existing markup.
After step 1 in the Try it out section, the user gets a prompt to connect to an Exchange email account. The instructions make no mention of this prompt. You get 401 Not authorized error if you use a corporate account. If you use a MSA, you get an Outlook.com page where you have to sign-in again. Only then do you get to a place where you can take step 2.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.