Office Add-ins documentation
23 TopicsHow to conect to microsoft exchange using API with java application?
I want to conect to microsoft exchange using API with java application run security algorithms before it reaches user's inbox. How can I do that the API " GET https://graph.microsoft.com/v1.0/me/messages " results the mails from user and after the mail reached user's inbox ?3.2KViews0likes9CommentsImplement Document.Protect and Document.Unprotect in Word JavaScript API
I'm developing an add-in using the Word JavaScript API, and I need the ability to work with protected Word documents programmatically. In VBA and VSTO, I was able to unprotect these documents, alter them, and then protect them again. Please implement the https://learn.microsoft.com/en-us/office/vba/api/Word.document.protect and https://learn.microsoft.com/en-us/office/vba/api/Word.Document.Unprotect methods in Word's JavaScript API so that I don't have to do this through VBA or VSTO. It looks like this was already done in Excel (see https://learn.microsoft.com/en-us/javascript/api/office-scripts/excelscript/excelscript.worksheetprotection?view=office-scripts).Outlook 365 for Mobile app - Compose window support for Office JS add-ins
We are exploring the new Office JS add-ons model for Outlook for mobile apps and wanted to integrate our product with iOS/Android apps. While exploring the new Office JS model, we didn't see any way to integrate the product with compose window. Task-pane or commandBar way of integration is missing for compose window. Compose window task-pane or commandBar integration is common use case among iOS/Android users. While composing emails, the following use cases are common in industry: Users want to insert documents or attach emails from 3rd part repository or storage or from content management software. When user sends an email, they want to keep a copy of the email in the repository also Currently these use cases are not possible with add-in model. But it is supported in desktop version as well as web version of add-ins. Without these use cases support, users wont adapt our solutions. So this is required for more user adaptability.Word.Field type Macrobutton support in Office.js API
We're using Macrobutton type Word Fields in the VSTO add-in that is already developed for Word desktop. We're in the process of extending our feature to Word web version and we happy to have Macrobutton fields in Office.js API also. In terms of our feature, we need to insert and tag the content with Macrobutton fields in Office 365 Word web version and also need to open up a document which tagged using desktop addin and edit the tagged document using the web version.730Views2likes0CommentsExcel.binding: delete method doesn't actually work
Given the below code snippet, I'd expect to get a single console log the first time A1 is updated. Instead I get one every time A1 is updated, indicating that the binding isn't actually being deleted. Excel.run(async (context) => { const address = 'A1'; const bindindId = `myPrefix.${address}`; const binding = context.workbook.bindings.add(address, Excel.BindingType.range, bindindId); binding.onDataChanged.add(async (args) => { console.log('binding onDataChanged', address); args.binding.delete(); }); }); I also found https://stackoverflow.com/questions/58867679/excel-binding-class-delete-method-not-actually-deleting-the-binding, however their workaround of making the binding id unique apparently no longer works. The https://learn.microsoft.com/en-us/javascript/api/excel/excel.binding?view=excel-js-preview#excel-excel-binding-delete-member(1) (along with the method signature) indicates this should be working.Ability to Assign Custom Properties or Unique IDs to Individual Cells
Summary I'd like to request support for assigning custom metadata — such as unique IDs or arbitrary key-value pairs — directly to individual cells in Excel using the Office.js API. Why This Matters Currently, developers must rely on workarounds like named ranges, hidden metadata sheets, or cell notes to simulate per-cell identifiers. These approaches are either limited, fragile, or not scalable for large applications. Native support for cell-level metadata would unlock powerful use cases: Dynamic form builders Cell-level validation engines Workflow tracking Data lineage and audit trails Integration with external systems via stable cell references Proposed API Concept range.customProperties.add("id", "cell_001"); const id = range.customProperties.getItem("id").value; Or even: range.metadata = { id: "cell_001", status: "approved", validator: "admin" }; Benefits Eliminates reliance on fragile naming conventions Enables scalable, structured metadata management Improves developer experience and app robustness Alternatives Considered Named ranges: limited and global scope Notes/comments: visible to users, not structured Hidden metadata sheets: hard to maintain Custom XML parts: complex and not cell-specific Request Please consider adding support for cell-level metadata or custom properties in a future version of Office.js. Even a lightweight key-value store per cell would be a game-changer.596Views99likes2CommentsMS Graph APIs - open extensions API should support both primary mailbox as well as shared mailbox
Hi, The following MS Graph APIs are working only for primary mailbox and not working for shared mailbox. Hence there is no way to set/get custom properties for emails in the shared mailbox. This is required for classifying emails as processed based on these custom properties. " POST https://graph.microsoft.com/v1.0/users/<sharedmailbox ID>/extensions Content-type: application/json{ "@odata.type":"microsoft.graph.openTypeExtension", "extensionName":"<extensionName>", "extensionProperty": <extensionProperty> } GET `https://graph.microsoft.com/v1.0/users/<sharedmailbox ID>/messages/${itemId}/extensions/Microsoft.OutlookServices.OpenTypeExtension.iM.docId`; PATCH `https://graph.microsoft.com/v1.0/users/<sharedmailbox ID>/messages/${itemId}/extensions/Microsoft.OutlookServices.OpenTypeExtension.iM.docId`; { "@odata.type":"microsoft.graph.openTypeExtension", "extensionName":"<extensionName>", "extensionProperty": <extensionProperty> }, DELETE `https://graph.microsoft.com/v1.0/users/<sharedmailbox ID>/messages/${itemId}/extensions/Microsoft.OutlookServices.OpenTypeExtension.iM.docId`; { "@odata.type":"microsoft.graph.openTypeExtension", "extensionName":"<extensionName>", }" So open extensions API (GET/POST/PATCH/DELETE) should support both primary mailbox and shared mailbox. Thanks MajuGrouping shapes using the PowerPoint API
Hi, we are doing a project where we create a lot of shapes on a slide using the PowerPoint API, and would need to group these so the created object could be seen as one. This would make it easier to move around for the user. Is there any plan on supporting grouping from the API? Also, is there any good place to see what's coming in the PowerPoint API? Currently the PowerPoint preview API is empty and has been for a very long time.Table type and methods for PowerPoint (Office JS) Add-In
Currently, tables inside a slide are considered as an `Unsupported` type and cannot get any textFrame (or other properties/methods) from the table rows (as far as I read and tried). I think tables are frequently used in slides, and so providing an API for interacting with a them will come in handy. Especially for an add-in to help out with grammar/spelling, by not being able to interact with a table, it leaves a big hole. Please let me know if I should add additional information.493Views7likes0CommentsError bars for custom values for Excel API
In typescript for Excel (in the Automate environment of Excel) There currently is a method to add error bars with a script to your graphs. One of the possible types of error bars is the "custom"type. It is however not (yet) possible to set a range for your current error bars. For now it is only possible to set the type to custom, which is redundant without the range.450Views0likes0Comments