フォルダを更新

put
https://api.box.com/2.0
/folders/:folder_id/

フォルダを更新します。フォルダの移動、共有リンクの作成、コラボレーションの更新といった目的にも使用できます。

Request

Bearer [ACCESS_TOKEN]
application/json

Path Parameters

stringin pathrequired
12345

フォルダを表す一意の識別子。

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

Boxアカウントのルートフォルダは常にID 0で表されます。

Query Parameters

string arrayin queryoptional
id,type,name

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

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

Request Body

booleanin bodyoptional
true

フォルダの所有者ではないユーザーが そのフォルダに新しいコラボレータを招待できるかどうかを指定します。

booleanin bodyoptional
true

このフォルダの所有者ではないコラボレータが このフォルダのその他のコラボレータを 表示できないように制限します。

この制限を有効にした場合は、所有者ではないユーザーが新しいコラボレータを 招待することも制限されます。

このフィールドをfalseに設定する場合は、 can_non_owners_invite_collaboratorsfalseに設定する必要もあります (まだ設定されていない場合)。

object arrayin bodyoptional

このフォルダをメンバーとして追加するコレクションの配列。現時点では、favoritesコレクションのみがサポートされています。

コレクションのIDを取得するには、すべてのコレクションのリストを取得エンドポイントを使用します。

空の配列[]またはnullを渡すと、すべてのコレクションからこのフォルダが削除されます。

stringin bodyoptional
11446498

このオブジェクトの一意の識別子

stringin bodyoptional
file

このオブジェクトのタイプ

stringin bodyoptional
Legal contracts for the new ACME deal256

このフォルダの説明 (省略可)

objectin body

このオブジェクトを設定するとアップロードメールアドレスが有効になります。

ユーザーはこのメールアドレスを使用することにより、メールを介して フォルダにファイルを直接アップロードできます。

値をnullに設定するとアップロードメールアドレスは無効になります。

stringin bodyoptional
open

このパラメータが設定されている場合、 ユーザーは、このフォルダに対して自動的に作成されたメールアドレスに メールでファイルを送信できます。

メールアドレスを作成するには、フォルダを作成するとき、または更新するときに このプロパティを設定します。

collaboratorsに設定すると、コラボレータの登録済み メールアドレスからのメールのみが受け入れられます。 これには、ユーザーが登録しているすべてのメールエイリアスも含まれます。

openに設定すると、どのメールアドレスからのメールでも 受け入れられます。

Value is one of open,collaborators

true

このフォルダへの招待を社内のユーザーのみに限定するかどうかを指定します。既存のコラボレーションには影響しません。

stringin bodyoptional
New Folder

このフォルダの新しい名前 (省略可)。

objectin body

このフォルダの親フォルダ。フォルダを移動したり、ごみ箱からフォルダを復元したりするときに使用します。

stringin bodyoptional
0

新しい親フォルダのID

stringin bodyoptional
synced

フォルダをユーザーのデバイスに同期する必要があるかどうかを指定します。 これはBox Sync(廃止済み)で使用され、Box Driveでは 使用されません。

Value is one of synced,not_synced,partially_synced

string arrayin bodyoptional
["approved"]

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

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

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

Request Headers

stringin header
optional
1

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

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

Response

application/jsonFolder (Standard)

更新されたフォルダのフォルダオブジェクトを返します

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

この呼び出しは同期的に復帰します。これは、すべての子孫に大量の項目が含まれているフォルダを移動する場合にも当てはまります。つまり、非常に大きいフォルダの場合は、この呼び出しが復帰するまでに数分または数時間かかる場合があります。

一部のパラメータが指定されていないか無効な場合、またはフォルダロックにより移動操作ができなくなっている場合はエラーを返します。

  • bad_request - パラメータが指定されていないか誤っている場合に返されます。このエラーは、アクセスタイプがopenの共有リンクにパスワードが設定されている場合にも発生します。
  • item_name_too_long - フォルダ名が長すぎる場合に返されます。
  • item_name_invalid - フォルダ名に無効な文字が含まれている場合に返されます。

ユーザーにこのアクションを実行するためのアクセス権限がない場合はエラーを返します。

  • access_denied_insufficient_permissions: ユーザーにフォルダまたは親フォルダへのアクセス権限がない場合か、移動できないようにフォルダロックが適用されているのにフォルダが移動されている場合に返されます。

  • insufficient_scope: アプリケーションにフォルダを更新するための適切なスコープがない場合に返されます。Boxに保存されているすべてのファイルとフォルダに対して読み取りと書き込みを行えるようにアプリケーションが設定されていることを確認してください。

  • forbidden: ユーザーが他のユーザーに対してこのアクションを実行することが許可されていない場合に返されます。これには、アクセスレベルがcompanyに設定されている共有リンクを無料アカウントで作成するアクションも含まれます。

フォルダまたは親フォルダが見つからないか、 認証済みユーザーがどちらのフォルダにも アクセスできない場合はエラーを返します。

  • not_found - 認証済みユーザーがフォルダまたは親フォルダにアクセスできない場合に 返されます。
  • operation_blocked_temporary: 別の移動、コピー、削除、 または復元操作が進行中であるために宛先フォルダまたは元のフォルダが ロックされている場合に返されます。

    操作は後で再試行することができます。

  • item_name_in_use: この名前のフォルダがすでに親フォルダ内に存在している場合に 返されます。

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

操作の処理時間が60秒を超えるとエラーを返します。 このレスポンスが返された後も 操作は続行されます。

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

put
フォルダを更新
You can now try out some of our APIs live, right here in the documentation.
Log in

Request Example

cURL
curl -i -X PUT "https://api.box.com/2.0/folders/4353455" \
     -H "Authorization: Bearer <ACCESS_TOKEN>" \
     -H "Content-Type: application/json" \
     -d '{
       "name": "New folder name"
     }'
.NET
var requestParams = new BoxFolderRequest()
{
    Id = "11111",
    Name = "My Documents (2017)"
};
BoxFolder updatedFolder = await client.FoldersManager.UpdateInformationAsync(requestParams);
Java
BoxFolder folder = new BoxFolder(api, "id");
BoxFolder.Info info = folder.new Info();
info.setName("New Name");
folder.updateInfo(info);
Python
updated_folder = client.folder(folder_id='22222').update_info({
    'name': '[ARCHIVED] Planning documents',
    'description': 'Old planning documents',
})
print('Folder updated!')
Node
client.folders.update('11111', {name: 'Pictures from 2017'})
    .then(updatedFolder => {
        /* updatedFolder -> {
            type: 'folder',
            id: '11111',
            sequence_id: '1',
            etag: '1',
            name: 'Pictures from 2017',
            created_at: '2012-12-12T10:53:43-08:00',
            modified_at: '2012-12-12T11:15:04-08:00',
            description: 'Some pictures I took',
            size: 629644,
            path_collection: 
            { total_count: 1,
                entries: 
                [ { type: 'folder',
                    id: '0',
                    sequence_id: null,
                    etag: null,
                    name: 'All Files' } ] },
            created_by: 
            { type: 'user',
                id: '22222',
                name: 'Example User'
                login: 'user@example.com' },
            modified_by: 
            { type: 'user',
                id: '22222',
                name: 'Example User',
                login: 'user@example.com' },
            owned_by: 
            { type: 'user',
                id: '22222',
                name: 'Example User',
                login: 'user@example.com' },
            shared_link: null,
            parent: 
            { type: 'folder',
                id: '0',
                sequence_id: null,
                etag: null,
                name: 'All Files' },
            item_status: 'active',
            item_collection: 
            { total_count: 1,
                entries: 
                [ { type: 'file',
                    id: '33333',
                    sequence_id: '3',
                    etag: '3',
                    sha1: '134b65991ed521fcfe4724b7d814ab8ded5185dc',
                    name: 'tigers.jpeg' } ],
                offset: 0,
                limit: 100 } }
        */
    });

Response Example

{
  "id": 12345,
  "type": "folder",
  "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": "Legal contracts for the new ACME deal",
  "etag": 1,
  "expires_at": "2012-12-12T10:53:43-08:00",
  "folder_upload_email": {
    "access": "open",
    "email": "upload.Contracts.asd7asd@u.box.com"
  },
  "item_collection": {
    "entries": [
      {
        "id": 12345,
        "etag": 1,
        "type": "file",
        "sequence_id": 3,
        "name": "Contract.pdf",
        "sha1": "85136C79CBF9FE36BB9D05D0639C70C265C18D37",
        "file_version": {
          "id": 12345,
          "type": "file_version",
          "sha1": "134b65991ed521fcfe4724b7d814ab8ded5185dc"
        }
      }
    ],
    "limit": 1000,
    "offset": 2000,
    "order": [
      {
        "by": "type",
        "direction": "ASC"
      }
    ],
    "total_count": 5000
  },
  "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": "Contracts",
  "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,
  "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_name": "my_url",
    "vanity_url": "https://acme.app.box.com/v/my_url/"
  },
  "size": 629644,
  "trashed_at": "2012-12-12T10:53:43-08:00"
}