ファイルを更新

put
https://api.box.com/2.0
/files/:file_id/

ファイルを更新します。ファイルの名前変更や移動、共有リンクの作成、ファイルのロックといった目的に使用できます。

リクエスト

Bearer [ACCESS_TOKEN]
application/json

パスパラメータ

stringパス内必須
12345

ファイルを表す一意の識別子。

ファイルIDを確認するには、ウェブアプリケーションでファイルにアクセスして、URLからIDをコピーします。たとえば、URLがhttps://*.app.box.com/files/123の場合、file_id123です。

クエリパラメータ

string arrayクエリ内省略可能
id,type,name

応答に含める属性のカンマ区切りリスト。このパラメータを使用すると、標準の応答には通常含まれないフィールドをリクエストできます。

このパラメータを指定すると、明示的に指定しない限り標準フィールドは応答に含まれず、リクエストしたフィールドのほかには、簡易版レプリゼンテーションのフィールドしか返されないことに注意してください。

リクエスト本文

string本文内省略可能
The latest reports. Automatically updated256

ファイルの説明。Boxウェブアプリでファイルを表示すると、右側のサイドバーパネルに表示されます。さらに、このインデックスはファイルの検索インデックスで使用されるため、ユーザーは説明の内容でファイルを見つけることができます。

object本文内

項目のロックを定義します。これにより、ロックを作成したユーザー以外は、この項目を移動、名前変更、および変更できなくなります。

これをnullに設定すると、ロックが削除されます。

string本文内省略可能
lock

次の値に固定: lock

string / date-time本文内省略可能
2012-12-12T10:53:43-08:00

ロックが期限切れになる日時を定義します。

boolean本文内省略可能
true

ロック中でもファイルのダウンロードを許可するかどうかを定義します。

string本文内省略可能
NewFile.txt

ファイルの別の名前(省略可)。これを使用してファイルの名前を変更できます。

object本文内

ファイルの新しい親フォルダ(省略可)。これを使用して、ファイルを新しいフォルダに移動できます。

string本文内省略可能
123

親項目のID

object本文内

ファイルをダウンロードできるユーザーを定義します。

string本文内省略可能
open

このファイルのダウンロードが許可されるユーザーを定義します。使用可能な値は、open(すべてのユーザー)またはcompany(ユーザーの会社のその他のメンバー)です。

この設定は、通常コラボレーションのroleに含まれるダウンロード権限より優先されます。companyに設定すると、基本的に、ロールがviewerまたはeditorである外部ユーザーのダウンロードオプションが削除されます。

次の値のいずれか1つ: open,company

string array本文内省略可能
["approved"]

この項目のタグ。これらのタグは Boxウェブアプリおよびモバイルアプリで項目の横に表示されます。

タグを追加または削除するには、項目の現在のタグを取得して 変更してから、このフィールドを更新します。

タグの数は、1項目あたり100個までに制限され、一意のタグは会社あたり10,000個までに 制限されます。

リクエストヘッダー

stringヘッダー内
省略可能
1

変更を加える前にこの項目が最近変更されていないことを確認します。

その項目の最後に認識されたetag値をこのヘッダーに渡すと、それ以降に項目が変更されている場合、エンドポイントは412 Precondition Failedを返して失敗します。

レスポンス

application/jsonFile (標準)

ファイルオブジェクトを返します。

使用可能なすべてのフィールドがデフォルトで返されるとは限りません。特定のフィールドを明示的にリクエストするには、fieldsクエリパラメータを使用します。

Authorizationヘッダーで指定されているアクセストークンが認識されないか、指定されていない場合に返されます。

更新を完了するための権限がユーザーに不足している場合に返されます。

  • access_denied_insufficient_permissions - 認証済みユーザーにファイルの移動先フォルダへのアクセス権限がない場合に返されます。

ファイルが見つからない場合、またはユーザーにファイルへのアクセス権限が与えられていない場合に返されます。

file_idが認識されていない形式で指定されている場合に返されます。

If-Matchヘッダーがファイルの現在のetag値と一致しない場合にエラーを返します。これは、ファイルが前回リクエストされたときから変更されていることを示します。

予期しないクライアントエラー。

put
ファイルを更新
このドキュメント内で一部のAPIを試せるようになりました。
ログイン

リクエストの例

cURL
curl -i -X PUT "https://upload.box.com/api/2.0/files/12345" \
     -H "Authorization: Bearer <ACCESS_TOKEN>" \
     -H "Content-Type: application/json" \
     -d '{
       "name": "New name"
     }'
.NET
// Rename file 11111
var requestParams = new BoxFileRequest()
{
    Id = "11111",
    Name = "New name.pdf"
};
BoxFile updatedFile = await client.FilesManager.UpdateInformationAsync(requestParams);
Java
BoxFile file = new BoxFile(api, "id");
BoxFile.Info info = file.new Info();
info.setName("New Name");
file.updateInfo(info);
Python
file_id = '11111'
updated_file = client.file(file_id).update_info({'description': 'My file'})
Node
client.files.update('75937', { name : 'New name.pdf', fields: 'name' })
	.then(updatedFile => {
		/* updatedFile => {
			type: 'file',
			id: '11111',
			name: 'New name.pdf'
		}
		*/
	});
iOS
client.files.update(fileId: "11111", name: "New file name.docx") { (result: Result<File, BoxSDKError>) in
    guard case let .success(file) = result else {
        print("Error updating file information")
        return
    }

    print("File \(file.name) was updated at \(file.modifiedAt)")
}

レスポンスの例

{
  "id": 12345,
  "type": "file",
  "content_created_at": "2012-12-12T10:53:43-08:00",
  "content_modified_at": "2012-12-12T10:53:43-08:00",
  "created_at": "2012-12-12T10:53:43-08:00",
  "created_by": {
    "id": 11446498,
    "type": "user",
    "login": "ceo@example.com",
    "name": "Aaron Levie"
  },
  "description": "Contract for Q1 renewal",
  "etag": 1,
  "file_version": {
    "id": 12345,
    "type": "file_version",
    "sha1": "134b65991ed521fcfe4724b7d814ab8ded5185dc"
  },
  "item_status": "active",
  "modified_at": "2012-12-12T10:53:43-08:00",
  "modified_by": {
    "id": 11446498,
    "type": "user",
    "login": "ceo@example.com",
    "name": "Aaron Levie"
  },
  "name": "Contract.pdf",
  "owned_by": {
    "id": 11446498,
    "type": "user",
    "login": "ceo@example.com",
    "name": "Aaron Levie"
  },
  "parent": {
    "id": 12345,
    "type": "folder",
    "etag": 1,
    "name": "Contracts",
    "sequence_id": 3
  },
  "path_collection": {
    "entries": [
      {
        "id": 12345,
        "etag": 1,
        "type": "folder",
        "sequence_id": 3,
        "name": "Contracts"
      }
    ],
    "total_count": 1
  },
  "purged_at": "2012-12-12T10:53:43-08:00",
  "sequence_id": 3,
  "sha1": "85136C79CBF9FE36BB9D05D0639C70C265C18D37",
  "shared_link": {
    "access": "open",
    "download_count": 3,
    "download_url": "https://www.box.com/shared/static/rh935iit6ewrmw0unyul.jpeg",
    "effective_access": "company",
    "effective_permission": "can_download",
    "is_password_enabled": true,
    "permissions": {
      "can_download": true,
      "can_preview": true
    },
    "preview_count": 3,
    "unshared_at": "2018-04-13T13:53:23-07:00",
    "url": "https://www.box.com/s/vspke7y05sb214wjokpk",
    "vanity_url": "https://acme.app.box.com/v/my_url/"
  },
  "size": 629644,
  "trashed_at": "2012-12-12T10:53:43-08:00"
}