From de0aba15bba69a5808a3b1c8c2b2ca385b5103b3 Mon Sep 17 00:00:00 2001 From: Bert Jansen Date: Wed, 6 Nov 2024 11:51:34 +0100 Subject: [PATCH 1/3] Workflow doc updates for the change in app-only handling --- ...issions-by-using-the-sharepoint-workflo.md | 23 ++- ...-with-elevated-permissions-new-guidance.md | 157 ++++++++++++++++++ docs/images/workflowappinvstepnew.png | Bin 0 -> 85636 bytes 3 files changed, 179 insertions(+), 1 deletion(-) create mode 100644 docs/general-development/workflow-with-elevated-permissions-new-guidance.md create mode 100644 docs/images/workflowappinvstepnew.png diff --git a/docs/general-development/create-a-workflow-with-elevated-permissions-by-using-the-sharepoint-workflo.md b/docs/general-development/create-a-workflow-with-elevated-permissions-by-using-the-sharepoint-workflo.md index cf9ffd1c1d..bc35754e5f 100644 --- a/docs/general-development/create-a-workflow-with-elevated-permissions-by-using-the-sharepoint-workflo.md +++ b/docs/general-development/create-a-workflow-with-elevated-permissions-by-using-the-sharepoint-workflo.md @@ -1,7 +1,7 @@ --- title: Create a workflow with elevated permissions by using the SharePoint Workflow platform description: Create SharePoint workflows that access objects in SharePoint that require elevated permissions. These solutions grant permissions to the workflow app and wrap actions with the App Step. -ms.date: 05/18/2023 +ms.date: 11/04/2024 ms.assetid: 4656f6a0-36fd-4b7d-898e-8cd4bdbbda57 ms.localizationpriority: high --- @@ -11,6 +11,7 @@ ms.localizationpriority: high This article describes how to create SharePoint workflows that access objects in SharePoint that require elevated permissions. These solutions use two features: granting permissions to the workflow app and wrapping actions with the App Step. > [!NOTE] +> SharePoint 2013 workflow has been deprecated since April 2023 and will be turned off for new tenants as of April 2, 2024. It will be removed from existing tenants and will be fully retired as of April 2, 2026. If you’re using SharePoint 2013 workflow, we recommend migrating to Power Automate or other supported solutions. For more info, see [SharePoint 2013 workflow retirement in Microsoft 365](https://aka.ms/sp-workflows-2013support). > SharePoint 2010 workflows have been retired since August 1, 2020 for new tenants and removed from existing tenants on November 1, 2020. If you’re using SharePoint 2010 workflows, we recommend migrating to Power Automate or other supported solutions. For more info, see [SharePoint 2010 workflow retirement](https://support.microsoft.com/office/sharepoint-2010-workflow-retirement-1ca3fff8-9985-410a-85aa-8120f626965f). > [!IMPORTANT] @@ -26,6 +27,9 @@ To solve this, you have to create a workflow with elevated permissions by doing 1. Grant full control permission to the workflow. 1. Develop the workflow to wrap actions inside an App Step. +> [!IMPORTANT] +> When you want to use workflows with elevated permissions on sites that did not yet have workflow enabled on November 7, 2024, then the configuration steps to follow will be different. More details can be found [in this article](workflow-with-elevated-permissions-new-guidance.md). + ## Allow a workflow to use add-in permissions on a SharePoint site The first step is to allow the workflow to use add-in permissions. You configure a workflow to use add-in permissions on the **Site settings** page of the SharePoint site where the workflow runs. The following procedure configures the SharePoint site to allow the workflow to use add-in permissions. @@ -50,6 +54,9 @@ The first step is to allow the workflow to use add-in permissions. You configure ## Grant full control permission to a workflow +> [!IMPORTANT] +> When you want to use workflows with elevated permissions on sites or sub sites that did not yet have workflow enabled after November 7 2024, then the configuration steps to follow will be different. More details can be found [in this article](workflow-with-elevated-permissions-new-guidance.md). + For the workflow to function properly, it must be granted full control on the site. The following procedure grants full control permission to the workflow. > [!IMPORTANT] @@ -161,6 +168,20 @@ The following diagram illustrates the change in permissions. ![Permissions matrix.](../images/SPD15-WFAppPermissions15.png) +## Deletion of workflow principals + +> [!Important] +> If the workflow principals (as listed via `/_layouts/15/appprincipals.aspx` or via Microsoft Entra admin center) are deleted, then they need to be restored within 30 days. +> +> - When the deleted principal was for a site that was configured to use SharePoint 2013 workflow before November 7th , that will break workflows running for that site +> - When the deleted principal was the tenant level workflow app, this will break workflows running in all sites that were configured for workflow after November 7th, 2024 + +It’s critical to restore the Service Principal from the recycle bin within 30 days. If the restore does not happen during that period of time, workflows will be broken. + +### How to restore deleted Service Principals? + +Currently, service principals can be listed, viewed, hard deleted, or restored via the deletedItems Microsoft Graph API. To restore applications using Microsoft Graph, see [Restore deleted item - Microsoft Graph v1.0](https://learn.microsoft.com/en-us/graph/api/directory-deleteditems-restore?tabs=http). + ## See also - [Blog article from the SharePoint Designer team: Workflow package and deploy scenario](https://blogs.msdn.microsoft.com/sharepointdesigner/2012/08/29/packaging-sharepoint-2013-list-site-and-reusable-workflow-and-how-to-deploy-the-package/) diff --git a/docs/general-development/workflow-with-elevated-permissions-new-guidance.md b/docs/general-development/workflow-with-elevated-permissions-new-guidance.md new file mode 100644 index 0000000000..02d44e1ea4 --- /dev/null +++ b/docs/general-development/workflow-with-elevated-permissions-new-guidance.md @@ -0,0 +1,157 @@ +--- +title: Create a workflow with elevated permissions by using the SharePoint Workflow platform. Guidance for sites that enable workflow after November 7 2024. +description: Create SharePoint workflows that access objects in SharePoint that require elevated permissions. These solutions grant permissions to the workflow app and wrap actions with the App Step. +ms.date: 11/04/2024 +ms.assetid: 4656f6a0-36fd-4b7d-898e-8cd4bdbbda57 +ms.localizationpriority: high +--- + +# Create a workflow with elevated permissions by using the SharePoint Workflow platform + +This article describes how to create SharePoint workflows that access objects in SharePoint that require elevated permissions. These solutions use two features: granting permissions to the workflow app and wrapping actions with the App Step. + +> [!NOTE] +> SharePoint 2013 workflow has been deprecated since April 2023 and will be turned off for new tenants as of April 2, 2024. It will be removed from existing tenants and will be fully retired as of April 2, 2026. If you’re using SharePoint 2013 workflow, we recommend migrating to Power Automate or other supported solutions. For more info, see [SharePoint 2013 workflow retirement in Microsoft 365](https://aka.ms/sp-workflows-2013support). +> SharePoint 2010 workflows have been retired since August 1, 2020 for new tenants and removed from existing tenants on November 1, 2020. If you’re using SharePoint 2010 workflows, we recommend migrating to Power Automate or other supported solutions. For more info, see [SharePoint 2010 workflow retirement](https://support.microsoft.com/office/sharepoint-2010-workflow-retirement-1ca3fff8-9985-410a-85aa-8120f626965f). + +> [!IMPORTANT] +> The scope of this article is when you want to use workflows with elevated permissions on sites that did not yet have workflow enabled on November 7, 2024. If your sites had workflow enabled before November 7, 2024, then follow [this guidance](create-a-workflow-with-elevated-permissions-by-using-the-sharepoint-workflo.md). + +To create a workflow with elevated permissions follow these steps: + +1. Allow the workflow to use add-in permissions. +1. Have a SharePoint tenant admin do a *one-time update of the workflow setup to allow application permissions being used and set the required permissions. +1. Develop the workflow to wrap actions inside an App Step. + +## Allow a workflow to use add-in permissions on a SharePoint site + +The first step is to allow the workflow to use add-in permissions. You configure a workflow to use add-in permissions on the **Site settings** page of the SharePoint site where the workflow runs. The following procedure configures the SharePoint site to allow the workflow to use add-in permissions. + +> [!IMPORTANT] +> The procedure must be completed by a user that has **Site Administrator** permissions. + +### To allow workflow to use add-in permissions + +1. Select the **Settings** icon as shown in the figure to open the **Site settings** page. + + ![Settings menu](../images/SPD15-WFAppPermissions1.png) + +1. Go to **Site settings**. +1. In the **Site Actions** section, select **Manage site features**. +1. Locate the feature called **Workflows can use app permissions**, as shown in the figure, and then select **Activate**. + + > [!WARNING] + > This feature will not activate unless you have properly configured the SharePoint Workflow platform and SharePoint Add-ins. + + ![Workflow can use app permissions feature](../images/SPD15-WFAppPermissions2.png) + +## Grant write permission to a workflow + +For the workflow to function properly, it must be granted full control on the site. The following procedure grants full control permission to the workflow. + +> [!IMPORTANT] +> The procedure must be completed by a user that is **SharePoint tenant administrator** permissions. The workflow must already be published to the SharePoint site. + +### To grant write permission to a workflow + +1. Select the **Settings** icon. + + ![Settings menu](../images/SPD15-WFAppPermissions1.png) + +1. Go to **Site settings**. +1. In the **Users and Permissions** section, select **Site app permissions**. + + > [!IMPORTANT] + > In SharePoint Online, select **Site collection app permissions**. This option is only visible to **Site Collection Administrators**. + +1. Copy the **client** section of the **App Identifier**. This is the identifier between the last "|" and the "@" sign, as shown in the figure. + + ![Selecting App Identifier](../images/SPD15-WFAppPermissions3.png) + +1. Go to the **Grant permission to an app** page **as SharePoint tenant administrator**. This must be done by browsing to the `appinv.aspx` page of the tenant. + + Example: `http://{your tenant}-admin.sharepoint.com/_layouts/15/appinv.aspx`. + + > [!IMPORTANT] + > The 'app' in this step refers to the tenant level workflow app. The tenant level Workflow app will have app-only access to all new sites where workflow is enabled, and the Workflow app is installed. + + For more information about setting up a workflow, see the [Blog article from Sympraxis Consulting: Looping Through Content in a SharePoint Site Workflow](http://sympmarc.com/series/looping-through-content-in-a-sharepoint-2013-site-workflow/) + +1. Paste the client ID in the **App Id** field, and then select **Lookup**, as shown in the previous figure. +1. Paste the following code in the **Permission Request XML** field to update the default permission to allow app-only. + + ```XML + + + + ``` + + > [!WARNING] + > There are no placeholders in the **Scope** value. It is a literal value. Enter it exactly as it appears here. + + The following figure shows an example. + + ![The appinv.aspx URL example and page.](../images/workflowappinvstepnew.png) + +1. Select **Create**. +1. You are then asked to trust the workflow add-in, as shown in the following figure. Select **Trust It**. + +## Wrap actions inside an App Step + +Finally, you need to wrap the workflow actions inside an App Step. The following procedure wraps a **Send an Email** action inside an App Step. The workflow in this example sends an acknowledgement email message from a custom list. + +### To wrap actions inside an App Step + +1. Open the app catalog site in SharePoint Designer. +1. Create a new Custom List on which to run the workflow. In this example, the list name is **App Demo**. +1. Select **Workflows** in the navigation window. +1. Create a new **List Workflow** for the **App Demo** list, as shown in the figure. + + ![Create a new List Workflow.](../images/SPD15-WFAppPermissions7.png) + +1. Insert an **App Step**, as shown in the figure. + + ![Adding an App Step.](../images/SPD15-WFAppPermissions8.png) + +1. Insert a **Send an Email** action in the **App Step**. +1. Select the **Address book** button. In the **To** field, select **Workflow Lookup for a User**, and then select **Add** as shown in the figure. + + ![Select Workflow lookup for a user.](../images/SPD15-WFAppPermissions9.png) + +1. Enter the **Created By** field as the lookup value, as shown in the figure. + + ![Lookup for Person dialog.](../images/SPD15-WFAppPermissions10.png) + +1. Enter **Email** from the **App Demo** list in the email message body. +1. Select **OK** to return to the workflow. The completed workflow is shown in the figure. + + ![Email action in App Step.](../images/SPD15-WFAppPermissions11.png) + +1. Select the **Workflow Settings** icon in the ribbon, as shown in the figure. + + ![Workflow Settings icon in ribbon.](../images/SPD15-WFAppPermissions12.png) + +1. Clear the check box next to **Automatically update the workflow status to the current stage name**, and then select **Publish**. + + ![Clear automatic updates check mark and publish.](../images/SPD15-WFAppPermissions13.png) + +## What are the implications of enabling app-only + +Enabling app-only workflows on a new site doesn’t guarantee app-only access to just that site. The tenant level Workflow app will have app-only access to all new sites where workflow is enabled, and the Workflow app is installed. If a tenant level permission is granted to this app, the Workflow app will be able to access tenant level resources. + +> [!Important] +> For the above reasons, Microsoft does not recommend allowing app-only access, Tenant admins should weigh the risks of allowing app-only access within their tenancy. + +## Deletion of workflow principals + +> [!Important] +> If the workflow principals (as listed via `/_layouts/15/appprincipals.aspx` or via Microsoft Entra admin center) are deleted, then they need to be restored within 30 days. +> +> - When the deleted principal was for a site that was configured to use SharePoint 2013 workflow before November 7th , that will break workflows running for that site +> - When the deleted principal was the tenant level workflow app, this will break workflows running in all sites that were configured for workflow after November 7th, 2024 + +It’s critical to restore the Service Principal from the recycle bin within 30 days. If the restore does not happen during that period of time, workflows will be broken. + +### How to restore deleted Service Principals? + +Currently, service principals can be listed, viewed, hard deleted, or restored via the deletedItems Microsoft Graph API. To restore applications using Microsoft Graph, see [Restore deleted item - Microsoft Graph v1.0](https://learn.microsoft.com/en-us/graph/api/directory-deleteditems-restore?tabs=http). diff --git a/docs/images/workflowappinvstepnew.png b/docs/images/workflowappinvstepnew.png new file mode 100644 index 0000000000000000000000000000000000000000..5e65e8db2c6de5ecc0d3fc0709f2d16423a3fc2e GIT binary patch literal 85636 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 Date: Wed, 6 Nov 2024 11:59:17 +0100 Subject: [PATCH 2/3] fix warnings --- ...th-elevated-permissions-by-using-the-sharepoint-workflo.md | 2 +- .../workflow-with-elevated-permissions-new-guidance.md | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/general-development/create-a-workflow-with-elevated-permissions-by-using-the-sharepoint-workflo.md b/docs/general-development/create-a-workflow-with-elevated-permissions-by-using-the-sharepoint-workflo.md index bc35754e5f..fb7ef33323 100644 --- a/docs/general-development/create-a-workflow-with-elevated-permissions-by-using-the-sharepoint-workflo.md +++ b/docs/general-development/create-a-workflow-with-elevated-permissions-by-using-the-sharepoint-workflo.md @@ -180,7 +180,7 @@ It’s critical to restore the Service Principal from the recycle bin within 30 ### How to restore deleted Service Principals? -Currently, service principals can be listed, viewed, hard deleted, or restored via the deletedItems Microsoft Graph API. To restore applications using Microsoft Graph, see [Restore deleted item - Microsoft Graph v1.0](https://learn.microsoft.com/en-us/graph/api/directory-deleteditems-restore?tabs=http). +Currently, service principals can be listed, viewed, hard deleted, or restored via the deletedItems Microsoft Graph API. To restore applications using Microsoft Graph, see [Restore deleted item - Microsoft Graph v1.0](https://learn.microsoft.com/graph/api/directory-deleteditems-restore?tabs=http). ## See also diff --git a/docs/general-development/workflow-with-elevated-permissions-new-guidance.md b/docs/general-development/workflow-with-elevated-permissions-new-guidance.md index 02d44e1ea4..21bd627d50 100644 --- a/docs/general-development/workflow-with-elevated-permissions-new-guidance.md +++ b/docs/general-development/workflow-with-elevated-permissions-new-guidance.md @@ -1,6 +1,6 @@ --- title: Create a workflow with elevated permissions by using the SharePoint Workflow platform. Guidance for sites that enable workflow after November 7 2024. -description: Create SharePoint workflows that access objects in SharePoint that require elevated permissions. These solutions grant permissions to the workflow app and wrap actions with the App Step. +description: Create SharePoint workflows that access objects in SharePoint that require elevated permissions for sites that enable workflow after November 7 2024. These solutions grant permissions to the workflow app and wrap actions with the App Step. ms.date: 11/04/2024 ms.assetid: 4656f6a0-36fd-4b7d-898e-8cd4bdbbda57 ms.localizationpriority: high @@ -154,4 +154,4 @@ It’s critical to restore the Service Principal from the recycle bin within 30 ### How to restore deleted Service Principals? -Currently, service principals can be listed, viewed, hard deleted, or restored via the deletedItems Microsoft Graph API. To restore applications using Microsoft Graph, see [Restore deleted item - Microsoft Graph v1.0](https://learn.microsoft.com/en-us/graph/api/directory-deleteditems-restore?tabs=http). +Currently, service principals can be listed, viewed, hard deleted, or restored via the deletedItems Microsoft Graph API. To restore applications using Microsoft Graph, see [Restore deleted item - Microsoft Graph v1.0](https://learn.microsoft.com/graph/api/directory-deleteditems-restore?tabs=http). From ad8449008ff4125518276cbd2d14bc4097969e86 Mon Sep 17 00:00:00 2001 From: Andrew Connell Date: Sat, 16 Nov 2024 08:14:38 -0500 Subject: [PATCH 3/3] Grammar fixes + address absolute link (should be relative) --- ...issions-by-using-the-sharepoint-workflo.md | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/docs/general-development/create-a-workflow-with-elevated-permissions-by-using-the-sharepoint-workflo.md b/docs/general-development/create-a-workflow-with-elevated-permissions-by-using-the-sharepoint-workflo.md index fb7ef33323..98d660f99a 100644 --- a/docs/general-development/create-a-workflow-with-elevated-permissions-by-using-the-sharepoint-workflo.md +++ b/docs/general-development/create-a-workflow-with-elevated-permissions-by-using-the-sharepoint-workflo.md @@ -12,14 +12,14 @@ This article describes how to create SharePoint workflows that access objects in > [!NOTE] > SharePoint 2013 workflow has been deprecated since April 2023 and will be turned off for new tenants as of April 2, 2024. It will be removed from existing tenants and will be fully retired as of April 2, 2026. If you’re using SharePoint 2013 workflow, we recommend migrating to Power Automate or other supported solutions. For more info, see [SharePoint 2013 workflow retirement in Microsoft 365](https://aka.ms/sp-workflows-2013support). -> SharePoint 2010 workflows have been retired since August 1, 2020 for new tenants and removed from existing tenants on November 1, 2020. If you’re using SharePoint 2010 workflows, we recommend migrating to Power Automate or other supported solutions. For more info, see [SharePoint 2010 workflow retirement](https://support.microsoft.com/office/sharepoint-2010-workflow-retirement-1ca3fff8-9985-410a-85aa-8120f626965f). +> SharePoint 2010 workflows have been retired since August 1, 2020, for new tenants and removed from existing tenants on November 1, 2020. If you’re using SharePoint 2010 workflows, we recommend migrating to Power Automate or other supported solutions. For more info, see [SharePoint 2010 workflow retirement](https://support.microsoft.com/office/sharepoint-2010-workflow-retirement-1ca3fff8-9985-410a-85aa-8120f626965f). > [!IMPORTANT] > This article assumes that the SharePoint Workflow platform has been installed and configured and that SharePoint has been configured for add-ins. For more information about SharePoint Workflows and SharePoint Add-ins, including installation and configuration, see [Workflows in SharePoint](workflows-in-sharepoint.md) and [Install and manage SharePoint Add-ins](../sp-add-ins/sharepoint-add-ins.md). Imagine that as a SharePoint administrator, you would like to define some processes for managing user requests for purchases of add-ins from the Office Store. In the simplest case, you want to send an acknowledgment email when a user requests an add-in. In addition, you might also want to add structure to the request approval process. -By default, workflow does not have permissions to access the app catalog. Catalog lists in SharePoint require owner (full control) permissions. Workflows generally run at a permission level equivalent to write. +By default, workflow does not have permission to access the app catalog. Catalog lists in SharePoint require owner (full control) permissions. Workflows generally run at a permission level equivalent to write. To solve this, you have to create a workflow with elevated permissions by doing the following in the Site Collection site: @@ -37,7 +37,7 @@ The first step is to allow the workflow to use add-in permissions. You configure > [!IMPORTANT] > The procedure must be completed by a user that has **Site Administrator** permissions. -### To allow workflow to use add-in permissions +### To allow the workflow to use add-in permissions 1. Select the **Settings** icon as shown in the figure to open the **Site settings** page. @@ -55,7 +55,7 @@ The first step is to allow the workflow to use add-in permissions. You configure ## Grant full control permission to a workflow > [!IMPORTANT] -> When you want to use workflows with elevated permissions on sites or sub sites that did not yet have workflow enabled after November 7 2024, then the configuration steps to follow will be different. More details can be found [in this article](workflow-with-elevated-permissions-new-guidance.md). +> When you want to use workflows with elevated permissions on sites or sub-sites that did not yet have workflow enabled after November 7, 2024, then the configuration steps to follow will be different. More details can be found [in this article](workflow-with-elevated-permissions-new-guidance.md). For the workflow to function properly, it must be granted full control on the site. The following procedure grants full control permission to the workflow. @@ -83,7 +83,7 @@ For the workflow to function properly, it must be granted full control on the si Example: `http://{hostname}/{the Site Collection}/_layouts/15/appinv.aspx`. > [!NOTE] - > The 'app' in this step refers to the workflow add-in in general and not just a specific workflow. Individual workflows cannot be access controlled. When you enable add-in permissions, you are enabling for all workflows within the Site Collection. + > The 'app' in this step refers to the workflow add-in in general and not just a specific workflow. Individual workflows cannot be access-controlled. When you enable add-in permissions, you are enabling all workflows within the Site Collection. For more information about setting up a workflow, see the [Blog article from Sympraxis Consulting: Looping Through Content in a SharePoint Site Workflow](http://sympmarc.com/series/looping-through-content-in-a-sharepoint-2013-site-workflow/) @@ -114,7 +114,7 @@ For the workflow to function properly, it must be granted full control on the si ## Wrap actions inside an App Step -Finally, you need to wrap the workflow actions inside an App Step. The following procedure wraps a **Send an Email** action inside an App Step. The workflow in this example sends an acknowledgement email message from a custom list. +Finally, you need to wrap the workflow actions inside an App Step. The following procedure wraps a **Send an Email** action inside an App Step. The workflow in this example sends an acknowledgment email message from a custom list. ### To wrap actions inside an App Step @@ -159,10 +159,10 @@ To understand why elevating permissions for a workflow is required, consider tha Two reasons why it is necessary to elevate permissions to create a workflow in the App Request list are: -- By default, workflow only has write permission. +- By default, the workflow only has write permission. - The user has no permissions. -The first step to solve this problem is to allow the application to authorize by using only its identity and ignoring that of the user. This is done by enabling the App Step feature. The second step grants full control permission to the workflow. +The first step to solve this problem is to allow the application to be authorized by using only its identity and ignoring that of the user. This is done by enabling the App Step feature. The second step grants full control permission to the workflow. The following diagram illustrates the change in permissions. @@ -173,14 +173,14 @@ The following diagram illustrates the change in permissions. > [!Important] > If the workflow principals (as listed via `/_layouts/15/appprincipals.aspx` or via Microsoft Entra admin center) are deleted, then they need to be restored within 30 days. > -> - When the deleted principal was for a site that was configured to use SharePoint 2013 workflow before November 7th , that will break workflows running for that site -> - When the deleted principal was the tenant level workflow app, this will break workflows running in all sites that were configured for workflow after November 7th, 2024 +> - When the deleted principal was for a site that was configured to use SharePoint 2013 workflow before November 7th, that will break workflows running for that site +> - When the deleted principal was the tenant-level workflow app, this will break workflows running in all sites that were configured for workflow after November 7th, 2024 It’s critical to restore the Service Principal from the recycle bin within 30 days. If the restore does not happen during that period of time, workflows will be broken. ### How to restore deleted Service Principals? -Currently, service principals can be listed, viewed, hard deleted, or restored via the deletedItems Microsoft Graph API. To restore applications using Microsoft Graph, see [Restore deleted item - Microsoft Graph v1.0](https://learn.microsoft.com/graph/api/directory-deleteditems-restore?tabs=http). +Currently, service principals can be listed, viewed, hard deleted, or restored via the deletedItems Microsoft Graph API. To restore applications using Microsoft Graph, see [Restore deleted item - Microsoft Graph v1.0](/graph/api/directory-deleteditems-restore). ## See also