Skip to content

Conversation

samantharamon
Copy link
Contributor

@samantharamon samantharamon commented Sep 8, 2025

Copy link
Contributor

Learn Build status updates of commit 4493a27:

💡 Validation status: suggestions

File Status Preview URL Details
docs/outlook/encryption-decryption.md 💡Suggestion View Details
docs/outlook/one-outlook.md 💡Suggestion View Details
docs/develop/event-based-activation.md ✅Succeeded View
docs/images/outlook-encryption-placeholder-message.png ✅Succeeded View

docs/outlook/encryption-decryption.md

  • Line 31, Column 451: [Suggestion: learn-site-link-broken - See documentation] Link '/javascript/api/outlook/office.messagedecrypteventcompletedoptions?view=outlook-js-preview&preserve-view=true' points to a learn site page that doesn't exist. Check the path or URL and update the link.
  • Line 123, Column 246: [Suggestion: learn-site-link-broken - See documentation] Link '/javascript/api/outlook/office.messagedecrypteventcompletedoptions?view=outlook-js-preview&preserve-view=true' points to a learn site page that doesn't exist. Check the path or URL and update the link.
  • Line 123, Column 444: [Suggestion: learn-site-link-broken - See documentation] Link '/javascript/api/outlook/office.messagedecrypteventcompletedoptions?view=outlook-js-preview&preserve-view=true#outlook-office-messagedecrypteventcompletedoptions-allowevent-member' points to a learn site page that doesn't exist. Check the path or URL and update the link.
  • Line 123, Column 725: [Suggestion: learn-site-link-broken - See documentation] Link '/javascript/api/outlook/office.messagedecrypteventcompletedoptions?view=outlook-js-preview&preserve-view=true#outlook-office-messagedecrypteventcompletedoptions-emailbody-member' points to a learn site page that doesn't exist. Check the path or URL and update the link.
  • Line 123, Column 920: [Suggestion: learn-site-link-broken - See documentation] Link '/javascript/api/outlook/office.messagedecrypteventcompletedoptions?view=outlook-js-preview&preserve-view=true#outlook-office-messagedecrypteventcompletedoptions-attachments-member' points to a learn site page that doesn't exist. Check the path or URL and update the link.

docs/outlook/one-outlook.md

  • Line 48, Column 487: [Suggestion: learn-site-link-broken - See documentation] Link '/javascript/api/outlook/office.messagedecrypteventcompletedoptions?view=outlook-js-preview&preserve-view=true' points to a learn site page that doesn't exist. Check the path or URL and update the link.
  • Line 48, Column 661: [Suggestion: learn-site-link-broken - See documentation] Link '/javascript/api/outlook/office.decryptedmessageattachment?view=outlook-js-preview&preserve-view=true' points to a learn site page that doesn't exist. Check the path or URL and update the link.
  • Line 48, Column 817: [Suggestion: learn-site-link-broken - See documentation] Link '/javascript/api/outlook/office.decryptedmessagebody?view=outlook-js-preview&preserve-view=true' points to a learn site page that doesn't exist. Check the path or URL and update the link.

For more details, please refer to the build report.

Note: Your PR may contain errors or warnings or suggestions unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.

Copy link
Contributor

PoliCheck Scan Report

The following report lists PoliCheck issues in PR files. Before you merge the PR, you must fix all severity-1 issues. Other issues are also a high priority. The AI Review Details column lists suggestions for either removing or replacing the terms. If you find a false positive result, mention it in a PR comment and include this text: #policheck-false-positive. This feedback helps reduce false positives in future scans.

✅ No issues found

More information about PoliCheck

Information: PoliCheck | Severity Guidance | Term
For any questions: Try searching the learn.microsoft.com contributor guides or post your question in the Learn support channel.

Copy link
Contributor

PoliCheck Scan Report

The following report lists PoliCheck issues in PR files. Before you merge the PR, you must fix all severity-1 issues. Other issues are also a high priority. The AI Review Details column lists suggestions for either removing or replacing the terms. If you find a false positive result, mention it in a PR comment and include this text: #policheck-false-positive. This feedback helps reduce false positives in future scans.

✅ No issues found

More information about PoliCheck

Information: PoliCheck | Severity Guidance | Term
For any questions: Try searching the learn.microsoft.com contributor guides or post your question in the Learn support channel.

Copy link
Contributor

Learn Build status updates of commit db7c1e4:

💡 Validation status: suggestions

File Status Preview URL Details
docs/outlook/encryption-decryption.md 💡Suggestion View Details
docs/outlook/one-outlook.md 💡Suggestion View Details
docs/develop/event-based-activation.md ✅Succeeded View
docs/images/outlook-encryption-placeholder-message.png ✅Succeeded View
docs/toc.yml ✅Succeeded View

docs/outlook/encryption-decryption.md

  • Line 31, Column 448: [Suggestion: learn-site-link-broken - See documentation] Link '/javascript/api/outlook/office.messagedecrypteventcompletedoptions?view=outlook-js-preview&preserve-view=true' points to a learn site page that doesn't exist. Check the path or URL and update the link.
  • Line 123, Column 243: [Suggestion: learn-site-link-broken - See documentation] Link '/javascript/api/outlook/office.messagedecrypteventcompletedoptions?view=outlook-js-preview&preserve-view=true' points to a learn site page that doesn't exist. Check the path or URL and update the link.
  • Line 123, Column 441: [Suggestion: learn-site-link-broken - See documentation] Link '/javascript/api/outlook/office.messagedecrypteventcompletedoptions?view=outlook-js-preview&preserve-view=true#outlook-office-messagedecrypteventcompletedoptions-allowevent-member' points to a learn site page that doesn't exist. Check the path or URL and update the link.
  • Line 123, Column 722: [Suggestion: learn-site-link-broken - See documentation] Link '/javascript/api/outlook/office.messagedecrypteventcompletedoptions?view=outlook-js-preview&preserve-view=true#outlook-office-messagedecrypteventcompletedoptions-emailbody-member' points to a learn site page that doesn't exist. Check the path or URL and update the link.
  • Line 123, Column 917: [Suggestion: learn-site-link-broken - See documentation] Link '/javascript/api/outlook/office.messagedecrypteventcompletedoptions?view=outlook-js-preview&preserve-view=true#outlook-office-messagedecrypteventcompletedoptions-attachments-member' points to a learn site page that doesn't exist. Check the path or URL and update the link.
  • Line 123, Column 1202: [Suggestion: learn-site-link-broken - See documentation] Link '/javascript/api/outlook/office.messagedecrypteventcompletedoptions?view=outlook-js-preview&preserve-view=true#outlook-office-messagedecrypteventcompletedoptions-contextdata-member' points to a learn site page that doesn't exist. Check the path or URL and update the link.

docs/outlook/one-outlook.md

  • Line 48, Column 487: [Suggestion: learn-site-link-broken - See documentation] Link '/javascript/api/outlook/office.messagedecrypteventcompletedoptions?view=outlook-js-preview&preserve-view=true' points to a learn site page that doesn't exist. Check the path or URL and update the link.
  • Line 48, Column 661: [Suggestion: learn-site-link-broken - See documentation] Link '/javascript/api/outlook/office.decryptedmessageattachment?view=outlook-js-preview&preserve-view=true' points to a learn site page that doesn't exist. Check the path or URL and update the link.
  • Line 48, Column 817: [Suggestion: learn-site-link-broken - See documentation] Link '/javascript/api/outlook/office.decryptedmessagebody?view=outlook-js-preview&preserve-view=true' points to a learn site page that doesn't exist. Check the path or URL and update the link.

For more details, please refer to the build report.

Note: Your PR may contain errors or warnings or suggestions unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.

@samantharamon samantharamon requested a review from Copilot October 8, 2025 22:45
Copy link
Contributor

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR creates comprehensive documentation for implementing encryption and decryption functionality in Outlook add-ins using the new OnMessageRead event. The documentation covers the end-to-end workflow for creating encryption add-ins, from securing message content during composition to automatically decrypting messages when recipients open them.

  • Introduces the OnMessageRead event for automatic decryption of encrypted messages
  • Documents the encryption/decryption workflow and implementation requirements
  • Updates existing documentation to reference the new encryption capabilities

Reviewed Changes

Copilot reviewed 4 out of 5 changed files in this pull request and generated 2 comments.

File Description
docs/toc.yml Adds navigation entry for the new encryption add-in documentation
docs/outlook/one-outlook.md Updates message encryption scenario with references to new encryption capabilities and APIs
docs/outlook/encryption-decryption.md Creates comprehensive guide for implementing encryption/decryption in Outlook add-ins
docs/develop/event-based-activation.md Adds OnMessageRead event to the supported events table

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Copy link
Contributor

PoliCheck Scan Report

The following report lists PoliCheck issues in PR files. Before you merge the PR, you must fix all severity-1 issues. Other issues are also a high priority. The AI Review Details column lists suggestions for either removing or replacing the terms. If you find a false positive result, mention it in a PR comment and include this text: #policheck-false-positive. This feedback helps reduce false positives in future scans.

✅ No issues found

More information about PoliCheck

Information: PoliCheck | Severity Guidance | Term
For any questions: Try searching the learn.microsoft.com contributor guides or post your question in the Learn support channel.

Copy link
Contributor

Learn Build status updates of commit 0d62810:

💡 Validation status: suggestions

File Status Preview URL Details
docs/outlook/encryption-decryption.md 💡Suggestion View Details
docs/outlook/one-outlook.md 💡Suggestion View Details
docs/develop/event-based-activation.md ✅Succeeded View
docs/images/outlook-encryption-placeholder-message.png ✅Succeeded View
docs/toc.yml ✅Succeeded View

docs/outlook/encryption-decryption.md

  • Line 31, Column 448: [Suggestion: learn-site-link-broken - See documentation] Link '/javascript/api/outlook/office.messagedecrypteventcompletedoptions?view=outlook-js-preview&preserve-view=true' points to a learn site page that doesn't exist. Check the path or URL and update the link.
  • Line 123, Column 243: [Suggestion: learn-site-link-broken - See documentation] Link '/javascript/api/outlook/office.messagedecrypteventcompletedoptions?view=outlook-js-preview&preserve-view=true' points to a learn site page that doesn't exist. Check the path or URL and update the link.
  • Line 123, Column 441: [Suggestion: learn-site-link-broken - See documentation] Link '/javascript/api/outlook/office.messagedecrypteventcompletedoptions?view=outlook-js-preview&preserve-view=true#outlook-office-messagedecrypteventcompletedoptions-allowevent-member' points to a learn site page that doesn't exist. Check the path or URL and update the link.
  • Line 123, Column 722: [Suggestion: learn-site-link-broken - See documentation] Link '/javascript/api/outlook/office.messagedecrypteventcompletedoptions?view=outlook-js-preview&preserve-view=true#outlook-office-messagedecrypteventcompletedoptions-emailbody-member' points to a learn site page that doesn't exist. Check the path or URL and update the link.
  • Line 123, Column 917: [Suggestion: learn-site-link-broken - See documentation] Link '/javascript/api/outlook/office.messagedecrypteventcompletedoptions?view=outlook-js-preview&preserve-view=true#outlook-office-messagedecrypteventcompletedoptions-attachments-member' points to a learn site page that doesn't exist. Check the path or URL and update the link.
  • Line 123, Column 1202: [Suggestion: learn-site-link-broken - See documentation] Link '/javascript/api/outlook/office.messagedecrypteventcompletedoptions?view=outlook-js-preview&preserve-view=true#outlook-office-messagedecrypteventcompletedoptions-contextdata-member' points to a learn site page that doesn't exist. Check the path or URL and update the link.

docs/outlook/one-outlook.md

  • Line 48, Column 487: [Suggestion: learn-site-link-broken - See documentation] Link '/javascript/api/outlook/office.messagedecrypteventcompletedoptions?view=outlook-js-preview&preserve-view=true' points to a learn site page that doesn't exist. Check the path or URL and update the link.
  • Line 48, Column 661: [Suggestion: learn-site-link-broken - See documentation] Link '/javascript/api/outlook/office.decryptedmessageattachment?view=outlook-js-preview&preserve-view=true' points to a learn site page that doesn't exist. Check the path or URL and update the link.
  • Line 48, Column 817: [Suggestion: learn-site-link-broken - See documentation] Link '/javascript/api/outlook/office.decryptedmessagebody?view=outlook-js-preview&preserve-view=true' points to a learn site page that doesn't exist. Check the path or URL and update the link.

For more details, please refer to the build report.

Note: Your PR may contain errors or warnings or suggestions unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.

Copy link
Contributor

Learn Build status updates of commit cff95c6:

💡 Validation status: suggestions

File Status Preview URL Details
docs/outlook/encryption-decryption.md 💡Suggestion View Details
docs/outlook/one-outlook.md 💡Suggestion View Details
docs/develop/event-based-activation.md ✅Succeeded View
docs/images/outlook-encryption-placeholder-message.png ✅Succeeded View
docs/toc.yml ✅Succeeded View

docs/outlook/encryption-decryption.md

  • Line 31, Column 448: [Suggestion: learn-site-link-broken - See documentation] Link '/javascript/api/outlook/office.messagedecrypteventcompletedoptions?view=outlook-js-preview&preserve-view=true' points to a learn site page that doesn't exist. Check the path or URL and update the link.
  • Line 125, Column 243: [Suggestion: learn-site-link-broken - See documentation] Link '/javascript/api/outlook/office.messagedecrypteventcompletedoptions?view=outlook-js-preview&preserve-view=true' points to a learn site page that doesn't exist. Check the path or URL and update the link.
  • Line 125, Column 441: [Suggestion: learn-site-link-broken - See documentation] Link '/javascript/api/outlook/office.messagedecrypteventcompletedoptions?view=outlook-js-preview&preserve-view=true#outlook-office-messagedecrypteventcompletedoptions-allowevent-member' points to a learn site page that doesn't exist. Check the path or URL and update the link.
  • Line 125, Column 722: [Suggestion: learn-site-link-broken - See documentation] Link '/javascript/api/outlook/office.messagedecrypteventcompletedoptions?view=outlook-js-preview&preserve-view=true#outlook-office-messagedecrypteventcompletedoptions-emailbody-member' points to a learn site page that doesn't exist. Check the path or URL and update the link.
  • Line 125, Column 917: [Suggestion: learn-site-link-broken - See documentation] Link '/javascript/api/outlook/office.messagedecrypteventcompletedoptions?view=outlook-js-preview&preserve-view=true#outlook-office-messagedecrypteventcompletedoptions-attachments-member' points to a learn site page that doesn't exist. Check the path or URL and update the link.
  • Line 125, Column 1202: [Suggestion: learn-site-link-broken - See documentation] Link '/javascript/api/outlook/office.messagedecrypteventcompletedoptions?view=outlook-js-preview&preserve-view=true#outlook-office-messagedecrypteventcompletedoptions-contextdata-member' points to a learn site page that doesn't exist. Check the path or URL and update the link.

docs/outlook/one-outlook.md

  • Line 48, Column 487: [Suggestion: learn-site-link-broken - See documentation] Link '/javascript/api/outlook/office.messagedecrypteventcompletedoptions?view=outlook-js-preview&preserve-view=true' points to a learn site page that doesn't exist. Check the path or URL and update the link.
  • Line 48, Column 661: [Suggestion: learn-site-link-broken - See documentation] Link '/javascript/api/outlook/office.decryptedmessageattachment?view=outlook-js-preview&preserve-view=true' points to a learn site page that doesn't exist. Check the path or URL and update the link.
  • Line 48, Column 817: [Suggestion: learn-site-link-broken - See documentation] Link '/javascript/api/outlook/office.decryptedmessagebody?view=outlook-js-preview&preserve-view=true' points to a learn site page that doesn't exist. Check the path or URL and update the link.

For more details, please refer to the build report.

Note: Your PR may contain errors or warnings or suggestions unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.

Copy link
Contributor

PoliCheck Scan Report

The following report lists PoliCheck issues in PR files. Before you merge the PR, you must fix all severity-1 issues. Other issues are also a high priority. The AI Review Details column lists suggestions for either removing or replacing the terms. If you find a false positive result, mention it in a PR comment and include this text: #policheck-false-positive. This feedback helps reduce false positives in future scans.

✅ No issues found

More information about PoliCheck

Information: PoliCheck | Severity Guidance | Term
For any questions: Try searching the learn.microsoft.com contributor guides or post your question in the Learn support channel.

Copy link
Collaborator

@AlexJerabek AlexJerabek left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good. Just a few suggestions

// Display the message body and attachments if decryption is successful.
const decryptedBody = {
coercionType: Office.CoercionType.Html,
content: "<p>Please find attached the recent report and its supporting documentation.</p>"
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why have the fake values here instead of placeholders?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

My thought was that the sample values would help support the scenario-based approach. I think they would be helpful especially if devs have to handle decrypting different types of attachments.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That's fair. Is there any way to make it clear what would have been decrypted (content) versus a value the user would infer (attachmentType)? Maybe if you replace the string literals with variable names (content: decryptedFile)?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated. In addition to having variable names, I added a comment to clarify that the values are obtained from the decryption process.

Co-authored-by: Alex Jerabek <38896772+AlexJerabek@users.noreply.github.com>
Copy link
Contributor

Learn Build status updates of commit cdc3603:

💡 Validation status: suggestions

File Status Preview URL Details
docs/outlook/encryption-decryption.md 💡Suggestion View Details
docs/outlook/one-outlook.md 💡Suggestion View Details
docs/develop/event-based-activation.md ✅Succeeded View
docs/images/outlook-encryption-placeholder-message.png ✅Succeeded View
docs/toc.yml ✅Succeeded View

docs/outlook/encryption-decryption.md

  • Line 31, Column 448: [Suggestion: learn-site-link-broken - See documentation] Link '/javascript/api/outlook/office.messagedecrypteventcompletedoptions?view=outlook-js-preview&preserve-view=true' points to a learn site page that doesn't exist. Check the path or URL and update the link.
  • Line 125, Column 243: [Suggestion: learn-site-link-broken - See documentation] Link '/javascript/api/outlook/office.messagedecrypteventcompletedoptions?view=outlook-js-preview&preserve-view=true' points to a learn site page that doesn't exist. Check the path or URL and update the link.
  • Line 125, Column 441: [Suggestion: learn-site-link-broken - See documentation] Link '/javascript/api/outlook/office.messagedecrypteventcompletedoptions?view=outlook-js-preview&preserve-view=true#outlook-office-messagedecrypteventcompletedoptions-allowevent-member' points to a learn site page that doesn't exist. Check the path or URL and update the link.
  • Line 125, Column 722: [Suggestion: learn-site-link-broken - See documentation] Link '/javascript/api/outlook/office.messagedecrypteventcompletedoptions?view=outlook-js-preview&preserve-view=true#outlook-office-messagedecrypteventcompletedoptions-emailbody-member' points to a learn site page that doesn't exist. Check the path or URL and update the link.
  • Line 125, Column 917: [Suggestion: learn-site-link-broken - See documentation] Link '/javascript/api/outlook/office.messagedecrypteventcompletedoptions?view=outlook-js-preview&preserve-view=true#outlook-office-messagedecrypteventcompletedoptions-attachments-member' points to a learn site page that doesn't exist. Check the path or URL and update the link.
  • Line 125, Column 1202: [Suggestion: learn-site-link-broken - See documentation] Link '/javascript/api/outlook/office.messagedecrypteventcompletedoptions?view=outlook-js-preview&preserve-view=true#outlook-office-messagedecrypteventcompletedoptions-contextdata-member' points to a learn site page that doesn't exist. Check the path or URL and update the link.

docs/outlook/one-outlook.md

  • Line 48, Column 487: [Suggestion: learn-site-link-broken - See documentation] Link '/javascript/api/outlook/office.messagedecrypteventcompletedoptions?view=outlook-js-preview&preserve-view=true' points to a learn site page that doesn't exist. Check the path or URL and update the link.
  • Line 48, Column 661: [Suggestion: learn-site-link-broken - See documentation] Link '/javascript/api/outlook/office.decryptedmessageattachment?view=outlook-js-preview&preserve-view=true' points to a learn site page that doesn't exist. Check the path or URL and update the link.
  • Line 48, Column 817: [Suggestion: learn-site-link-broken - See documentation] Link '/javascript/api/outlook/office.decryptedmessagebody?view=outlook-js-preview&preserve-view=true' points to a learn site page that doesn't exist. Check the path or URL and update the link.

For more details, please refer to the build report.

Note: Your PR may contain errors or warnings or suggestions unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.

Copy link
Contributor

PoliCheck Scan Report

The following report lists PoliCheck issues in PR files. Before you merge the PR, you must fix all severity-1 issues. Other issues are also a high priority. The AI Review Details column lists suggestions for either removing or replacing the terms. If you find a false positive result, mention it in a PR comment and include this text: #policheck-false-positive. This feedback helps reduce false positives in future scans.

✅ No issues found

More information about PoliCheck

Information: PoliCheck | Severity Guidance | Term
For any questions: Try searching the learn.microsoft.com contributor guides or post your question in the Learn support channel.

Copy link
Contributor

Learn Build status updates of commit f1fd268:

✅ Validation status: passed

File Status Preview URL Details
docs/develop/event-based-activation.md ✅Succeeded View
docs/images/outlook-encryption-placeholder-message.png ✅Succeeded View
docs/outlook/encryption-decryption.md ✅Succeeded View
docs/outlook/one-outlook.md ✅Succeeded View
docs/toc.yml ✅Succeeded View

For more details, please refer to the build report.

Copy link
Contributor

PoliCheck Scan Report

The following report lists PoliCheck issues in PR files. Before you merge the PR, you must fix all severity-1 issues. Other issues are also a high priority. The AI Review Details column lists suggestions for either removing or replacing the terms. If you find a false positive result, mention it in a PR comment and include this text: #policheck-false-positive. This feedback helps reduce false positives in future scans.

✅ No issues found

More information about PoliCheck

Information: PoliCheck | Severity Guidance | Term
For any questions: Try searching the learn.microsoft.com contributor guides or post your question in the Learn support channel.

@samantharamon samantharamon merged commit ff2b23b into main Oct 10, 2025
3 checks passed
@samantharamon samantharamon deleted the samramon-decryption branch October 10, 2025 22:37
| **Android** | Not available | Not available | Not available | Not available |
| **iOS** | Not available | Not available | Not available | Not available |

#### Preview the decryption APIs in classic Outlook on Windows
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@samantharamon I'm late to the review table, sorry 'boot that. Is this intended to be an H4?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No worries, @lindalu-MSFT! Thanks for reviewing. Yes, I made this an H4 since it extends the "Supported environments" section. However, I'm open to changing this to an H3 if you think it makes more sense.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants