| title | Restore recycleBinItem |
|---|---|
| description | Restore recycleBinItem to a fileStorageContainer. |
| author | cindylay |
| ms.localizationpriority | medium |
| ms.subservice | onedrive |
| doc_type | apiPageType |
| ms.date | 10/31/2025 |
Namespace: microsoft.graph
Restore recycleBinItem objects from the recycleBin of a fileStorageContainer. A recycleBinItem can be restored either by its id or using the original driveItemId as an alternate key.
[!INCLUDE national-cloud-support]
Choose the permission or permissions marked as least privileged for this API. Use a higher privileged permission or permissions only if your app requires it. For details about delegated and application permissions, see Permission types. To learn more about these permissions, see the permissions reference.
[!INCLUDE permissions-table]
[!INCLUDE app-permissions]
POST /storage/fileStorage/containers/{containerId}/recycleBin/items/restoreRestore a single recycleBinItem by using the driveItemId as an alternate key. If there's no matching recycleBinItem for the driveItemId, the API returns a 404 (Not Found) response.
POST https://graph.microsoft.com/beta/storage/fileStorage/containers/{containerId}/recycleBin/items(driveItemId='{driveItemId}')/restore| Name | Description |
|---|---|
| Authorization | Bearer {token}. Required. Learn more about authentication and authorization. |
| Content-Type | application/json. Required. |
If restoring by recycleBinItemId, in the request body, supply a JSON representation of the recycleBinItem objects to restore. If you are restoring by driveItemId as an alternate key, a request body is not required.
If successfully restored by recycleBinItemId, this method returns a 207 Multi-Status response code and the set of restored recycleBinItem objects in the response body.
If successfully restored with driveItemId as an alternate key, this method returns a 200 OK response code with the id of the singular recycleBinItem that was restored in the response body.
The following example shows a request.
POST https://graph.microsoft.com/v1.0/storage/fileStorage/containers/b!ISJs1WRro0y0EWgkUYcktDa0mE8zSlFEqFzqRn70Zwp1CEtDEBZgQICPkRbil_5Z/recycleBin/items/restore
Content-Type: application/json
{
"ids": ["5d625d33-338c-4a77-a98a-3e287116440c", "73133853-48f2-4956-bc4a-03f8d1675042"]
}[!INCLUDE sample-code] [!INCLUDE sdk-documentation]
The following example shows the response.
Note: The response object shown here might be shortened for readability.
HTTP/1.1 207 Multi-Status
Content-Type: application/json
{
"value": [
{
"id": "5d625d33-338c-4a77-a98a-3e287116440c"
},
{
"id": "73133853-48f2-4956-bc4a-03f8d1675042"
}
]
}In this example, the driveItemId is passed as a function parameter in the request URL. The response returns the corresponding id of the recycleBinItem that was restored.
POST https://graph.microsoft.com/beta/storage/fileStorage/containers/b!LRJHKCBZQU2fLtv8TzUomsz-OP7yGQRNlugra1iGHqRe5fORWrrHTbh8J8O8qPmx/recycleBin/items(driveItemId='01GC3BS4QFPBCZRLJHJVEYPITEHTDBYHBH')/restore
Content-Type: application/jsonHTTP/1.1 200 Ok
Content-Type: application/json
{
"id": "bf7ea563-b848-4ec8-9155-b2054564cfe4"
}In this example, there is no matching recycleBinItem to correlate with the specified driveItemId. The API returns a 404 (Not Found) response.
POST https://graph.microsoft.com/beta/storage/fileStorage/containers/e!JDJHKCBZTU2fLtv8TzUoksz-OP7yGQRNlugra1iGHqRe5fORWrrHTbh8J8O8qPmx/recycleBin/items(driveItemId='01jC3BS4QFPBCZRLGHJVEYPITEHTDBYHBP')/restore
Content-Type: application/jsonHTTP/1.1 404 Not Found
Content-Type: application/json
{
"error": {
"code": "NotFound",
"message": "The requested resource could not be found."
}
}