microsoft 365 developer program
66 TopicsDeveloper Dashboard Still Showing Old Expired Sandbox After New Sandbox Provisioned
Hi team, I need help with an issue involving the Microsoft 365 Developer Program sandbox. I deleted my old Developer Program profile and rejoined using my Outlook account. I received a new welcome email confirming that a new instant sandbox was provisioned on 10th November 2025, but my Developer Dashboard still shows my old, which expired on 3 November 2025. It has now been 5 days, and the dashboard has not refreshed or linked to the new sandbox tenant. Additional context: My previous sandbox should not have expired, because I was actively using it and did not violate any program terms. The incorrect expiration may have caused this backend sync issue. Here is what I have tried so far: Signing in and out across multiple browsers Using Incognito / Private mode Clearing Microsoft cookies and cache Clicking “Join Now” again Verifying the new welcome email Attempting to sign in directly at admin.microsoft.com Waiting the recommended 24 to 48 hours Contacting Microsoft Support (case 2511101410000272) The issue appears to be that my Developer Dashboard is still linked to the old, expired tenant instead of the newly provisioned sandbox. This looks like a backend synchronization problem that may require a manual re-link by the Microsoft Developer Program team. I would appreciate it if the backend team could help re-link my Developer Program profile to the new sandbox tenant.22Views0likes0CommentsDeveloper Dashboard Still Showing Old Expired Sandbox After New Instant Sandbox Was Provisioned
Hi team, I need help with an issue involving the Microsoft 365 Developer Program sandbox. I deleted my old Developer Program profile and rejoined using my Outlook account (email address removed for privacy reasons). I received a new welcome email confirming that a new instant sandbox was provisioned on 10th November, but my Developer Dashboard still shows my old, expired tenant: email address removed for privacy reasons expired on November. It has now been 5 days, and the dashboard has not refreshed or linked to the new sandbox tenant. Additional context: My previous sandbox should not have expired, because I was actively using it and did not violate any program terms. The incorrect expiration may have caused this backend sync issue. The issue appears to be that my Developer Dashboard is still linked to the old, expired tenant instead of the newly provisioned sandbox. This looks like a backend synchronization problem that may require a manual re-link by the Microsoft Developer Program team. I would appreciate it if the backend team could help re-link my Developer Program profile to the new sandbox tenant. Thank you, Dee13Views0likes0CommentsIdentify multiple embedded instance of the same add-in in a file as one
Summary By default, when a file is opened in Excel with a JS add-in installed and then saved, the JS add-in is automatically embedded in the file. In the current design all embedded add-ins will be attempted to load when the file is opened even if the embedded add-ins are the same. As a result, when these files are shared with other users who already have the same JS add-in installed with a different version or deployment method, Excel displays two instances of the same add-in in the tabs, or occasionally shows an error in the task pane if the version it is embedded is an older one. We first became aware of this issue when a user reported seeing our JS add-in appear twice in the ribbon, which led to confusion. Upon inspecting the affected file’s XML web extensions, we identified two versions of the same add-in embedded: one deployed via OMEX and another via exCatalog. After further investigation and filing a ticket with Microsoft Support, it was confirmed that this behavior is by design under the current implementation. Why This Matters While we understand that this behavior is expected by design, it remains problematic for users—it can cause confusion and potential issues with custom functions or with the add-in itself. Also, it is not clear for As of the moment there are no easy workaround for users to remove the duplicate/additional instance of the same JS add-in embedded in the file, this will also need to be done for every file that is suffering from this issue (has multiple instance of the same add-in embedded in the file w/ different version/deployment method). Proposed Change/s Update current design to be able to identify if the embedded adds-in is the same through checking and comparing a unique id so even if they have different deployment/version tags it will not be loaded/attempted to be loaded in the task pane. Alternatives Considered Provide an option in Officejs API to prevent embedding/referencing add-in in a file Benefits Prevents users from seeing the same add-in appear twice in the file Eliminate propagating errors in the task pane from trying to render the same add-in with the old version tag [Alternative considered] Allow users/dev to be able to control which add-in gets embedded in the fileExpose SHA-256 or SHA-1 for Mail Attachments in Microsoft Graph
Problem Email attachments in Graph don’t include a content hash. To identify or match attachments, developers have to download the entire file first. That wastes bandwidth and time and increases exposure. OneDrive/SharePoint already return hashes, but mail does not, so experiences are inconsistent. Request Add a server-provided content hash to every mail attachment. Prefer SHA-256. If that’s not feasible initially, expose SHA-1 as a minimum to align with existing Drive item hashes. Benefits Faster and cheaper: avoid downloading large files just to tell if you already have them. Deduplication: detect repeated attachments across threads and mailboxes. Security operations: correlate attachments with threat intel by hash and triage suspicious emails without fetching payloads. eDiscovery and compliance: confidently match the same document across mail and files. Consistency: a predictable, uniform approach across Mail and OneDrive/SharePoint.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.622Views100likes2CommentsRetrieve the existing contents of a cell that invokes a function
Define the problem My Excel add-in has custom functions which call external APIs. These API calls are invoking complex models running in the cloud which can sometimes take minutes to complete and therefore return data to Excel. My users build large workbooks with potentially thousands of these functions. Often the user makes a change in their workbook which triggers all of these calculations again even though there's no change in the input data. An example would be insertion of a row or column. This causes huge pain for the end user. Solution Microsoft to update the Office JS API so that when a function is invoked it can check the contents of the cell that invoked the function. I seem to remember this was possible in the old COM add-ins but it's not possible in the Office JS add-ins. Why does this help My custom functions store both the API request and response in the data card (Excel.EntityCellValue) format. Since I effectively store the original API request in the cell, if the cell gets inadvertently invoked I can check the arguments of the functions (the input data) against the original API request and if nothing has changed then I can return the original API response stored in the cell. This is like cancelling a function but being able to return the original data rather than anything new. Alternatives I can implement caching, e.g. using IndexedDB, but that's not the ideal solution. The ideal is the above.Feature Request: Add error/rejection support to Office.onReady() for network/dependency failures
Description Currently, when Office.js loads but one of its dependent resources (such as office_strings.js) fails to load due to network issues or blocking, the Office.onReady() promise never resolves or rejects. This leaves developers without a reliable way to detect missing dependencies. Instead of relying on timeouts or log messages, it would be very helpful if Office.onReady() provided an error callback or rejection in these scenarios. Why this matters: Helps developers handle production failures gracefully. Avoids arbitrary timeouts/workarounds to detect missing dependencies. Provides parity with modern async practices where promises resolve or reject deterministically. Enables better telemetry/analytics by explicitly knowing why initialization failed. Suggested Approach: If a required dependency fails to load, Office.onReady() should reject with an error describing the missing dependency. Alternatively, provide an event/callback (e.g., Office.onError) that developers can subscribe to. Example: Office.onReady() .then(info => { console.log("Office.js initialized:", info); }) .catch(err => { console.error("Office.js failed to initialize:", err); // custom fallback handling }); Impact: This would improve developer experience significantly and make add-ins more resilient in real-world network environments.Fix messageRules
There is bug in this API: ``` GET url=https://graph.microsoft.com/v1.0/users/email address removed for privacy reasons/mailFolders/inbox/messageRules ``` If a rule contains a date filter (e.g. 'After 5/1/2025') then NO data is returned, even if other conditions and actions are valid. I have been told that Graph will not support the date filter. OK fine, but refusing to return other rule data is an obvious bug. Am I supposed to tell our users to go through all their rules and remove date filters? Anyway, if the M365 user interface still allows a date filter, then it should be obligatory that the messageRules API should support it.Add viewportChanged event to Word JavaScript API
In Word add-ins, we often need to react to changes in the user's viewport (scrolling, zooming, etc.). Currently, there's no event to detect when the visible pages change. A viewportChanged event on Word.Pane or Word.Window would allow developers to optimize performance and create dynamic experiences based on what the user is viewing.231Views72likes0Comments