DriveItem を新しいフォルダーに移動する

DriveItem を新しい親アイテムに移動する場合は、移動する DriveItem の parentReference をアプリで更新します。

これは、Update メソッドの特殊なケースです。 アプリでは、新しいコンテナーへのアイテムの移動と、アイテムの別のプロパティの更新を単一の要求に組み合わせることができます。

この要求を使用して、アイテムをドライブ間で移動することはできません。

アクセス許可

この API を呼び出すには、次のいずれかのアクセス許可が必要です。 アクセス許可の選択方法などの詳細については、「アクセス許可」を参照してください。

アクセス許可の種類 アクセス許可 (特権の小さいものから大きいものへ)
委任 (職場または学校のアカウント) Files.ReadWrite、Files.ReadWrite.All、Sites.ReadWrite.All
委任 (個人用 Microsoft アカウント) Files.ReadWrite、Files.ReadWrite.All
アプリケーション Files.ReadWrite.All、Sites.ReadWrite.All

HTTP 要求

PATCH /drives/{drive-id}/items/{item-id}
PATCH /groups/{group-id}/drive/{item-id}
PATCH /me/drive/items/{item-id}
PATCH /sites/{site-id}/drive/items/{item-id}
PATCH /users/{user-id}/drive/items/{item-id}

オプションの要求ヘッダー

名前 説明
if-match String この要求ヘッダーが含まれていて、指定された eTag (または cTag) がフォルダーの現在の eTag に一致しない場合には、412 Precondition Failed 応答が返されます。

要求本文

要求の本文内に、parentReference プロパティの新しい値を指定します。 要求本文に含まれない既存のプロパティは、以前の値のままになるか、他のプロパティ値の変化に基づいて再計算されます。 最適なパフォーマンスを得るためには、変更されていない既存の値を含めないでください。

注: ドライブのルートにアイテムを移動するときは、"id:" "root" 構文はアプリでは使用できません。 アプリは、親参照のためにルート フォルダーの実際の ID を提供する必要があります。

応答

成功した場合、このメソッドは 200 OK 応答コードと、応答本文で、更新された DriveItem リソースを返します。

この例では、{item-id} で指定したアイテムを、ID を持つユーザーのドライブの new-parent-folder-id フォルダーに移動します。

PATCH /me/drive/items/{item-id}
Content-type: application/json

{
  "parentReference": {
    "id": "{new-parent-folder-id}"
  },
  "name": "new-item-name.txt"
}

応答

次の例は、この移動要求への応答を示しています。

HTTP/1.1 200 OK
Content-type: application/json

{
  "id": "0123456789abc",
  "name": "new-item-name.txt",
  "parentReference":
  {
    "driveId": "11231001",
    "path": "/drive/root:/Documents",
    "id": "1231203102!1011"
  }
}

エラー応答

エラーがどのように返されるかについては、「エラー応答」を参照してください。