Manage Applications

    Create a folder

    post
    https://api.box.com/2.0
    /folders

    Creates a new empty folder within the specified parent folder.

    Request

    application/json

    Query Parameters

    string arrayin queryoptional
    id,type,name

    A comma-separated list of attributes to include in the response. This can be used to request fields that are not normally returned in a standard response.

    Be aware that specifying this parameter will have the effect that none of the standard fields are returned in the response unless explicitly specified, instead only fields for the mini representation are returned, additional to the fields requested.

    Request Body

    Setting this object enables the upload email address.

    This email address can be used by users to directly upload files directly to the folder via email.

    stringin bodyoptional
    open

    When this parameter has been set, users can email files to the email address that has been automatically created for this folder.

    To create an email address, set this property either when creating or updating the folder.

    When set to collaborators, only emails from registered email addresses for collaborators will be accepted. This includes any email aliases a user might have registered.

    When set to open it will accept emails from any email address.

    Value is one of "open", "collaborators"

    stringin bodyrequired
    New Folder255

    The name for the new folder.

    There are some restrictions to the file name. Names containing non-printable ASCII characters, forward and backward slashes (/, \), as well as names with trailing spaces are prohibited.

    Additionally, the special names . and .. are not allowed either.

    objectin body

    The parent folder to create the new folder within.

    stringin bodyrequired
    0

    The ID of parent folder

    stringin bodyoptional
    synced

    Specifies whether a folder should be synced to a user's device or not. This is used by Box Sync (discontinued) and is not used by Box Drive.

    Value is one of "synced", "not_synced", "partially_synced"

    Response

    application/jsonFolder

    Returns a folder object.

    Not all available fields are returned by default. Use the fields query parameter to explicitly request any specific fields.

    application/jsonClient Error

    Returns an error if some of the parameters are missing or invalid.

    • bad_request when a parameter is missing or incorrect.
    • item_name_too_long when the folder name is too long.
    • item_name_invalid when the folder name contains invalid characters.
    application/jsonClient Error

    Returns an error if the user does not have the required access to perform the action. This might be because they don't have access to the folder or parent folder, or because the application does not have permission to write files and folders.

    application/jsonClient Error

    Returns an error if the parent folder could not be found, or the authenticated user does not have access to the parent folder.

    • not_found when the authenticated user does not have access to the parent folder
    application/jsonClient Error
    • operation_blocked_temporary: Returned if either of the destination or source folders is locked due to another move, copy, delete or restore operation in process.

      The operation can be retried at a later point.

    • item_name_in_use: Returned if a folder with the name already exists in the parent folder.

    You can now try out some of our APIs live, right here in the documentation.
    Log In

    Request Example

    cURL
    curl -X POST https://api.box.com/2.0/folders \
         -H "Authorization: Bearer <ACCESS_TOKEN>" \
         -H "Content-Type: application/json" \
         -d '{
           "name": "New Folder",
           "parent": {
             "id": "0"
           }
         }'
    .NET
    // Create a new folder in the user's root folder
    var folderParams = new BoxFolderRequest()
    {
        Name = "New folder",
        Parent = new BoxRequestEntity()
        {
            Id = "0"
        }
    };
    BoxFolder folder = client.FoldersManager.CreateAsync(folderParams);
    Java
    BoxFolder parentFolder = new BoxFolder(api, "id");
    BoxFolder.Info childFolderInfo = parentFolder.createFolder("Child Folder Name");
    Python
    subfolder = client.folder('0').create_subfolder('My Stuff')
    print('Created subfolder with ID {0}'.format(subfolder.id))
    Node
    client.folders.create('0', 'New Folder')
        .then(folder => {
            /* folder -> {
                type: 'folder',
                id: '123456',
                sequence_id: '0',
                etag: '0',
                name: 'New Folder',
                created_at: '2012-12-12T10:53:43-08:00',
                modified_at: '2012-12-12T11:15:04-08:00',
                description: '',
                size: 0,
                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: 0,
                    entries: [],
                    offset: 0,
                    limit: 100 } }
            */
        });

    Response Example

    {
      "id": 12345,
      "etag": 1,
      "type": "folder",
      "sequence_id": 3,
      "name": "Contracts",
      "created_at": "2012-12-12T10:53:43-08:00",
      "modified_at": "2012-12-12T10:53:43-08:00",
      "description": "Legal contracts for the new ACME deal",
      "size": 629644,
      "path_collection": {
        "total_count": 1,
        "entries": [
          {
            "id": 12345,
            "etag": 1,
            "type": "folder",
            "sequence_id": 3,
            "name": "Contracts"
          }
        ]
      },
      "created_by": {
        "id": 11446498,
        "type": "user",
        "name": "Aaron Levie",
        "login": "ceo@example.com"
      },
      "modified_by": {
        "id": 11446498,
        "type": "user",
        "name": "Aaron Levie",
        "login": "ceo@example.com"
      },
      "trashed_at": "2012-12-12T10:53:43-08:00",
      "purged_at": "2012-12-12T10:53:43-08:00",
      "content_created_at": "2012-12-12T10:53:43-08:00",
      "content_modified_at": "2012-12-12T10:53:43-08:00",
      "expires_at": "2012-12-12T10:53:43-08:00",
      "owned_by": {
        "id": 11446498,
        "type": "user",
        "name": "Aaron Levie",
        "login": "ceo@example.com"
      },
      "shared_link": {
        "url": "https://www.box.com/s/vspke7y05sb214wjokpk",
        "download_url": "https://www.box.com/shared/static/rh935iit6ewrmw0unyul.jpeg",
        "vanity_url": "https://acme.app.box.com/v/my_url/",
        "access": "open",
        "effective_access": "company",
        "effective_permission": "can_download",
        "unshared_at": "2018-04-13T13:53:23-07:00",
        "is_password_enabled": true,
        "permissions": {
          "can_download": true,
          "can_preview": true
        },
        "download_count": 3,
        "preview_count": 3
      },
      "folder_upload_email": {
        "access": "open",
        "email": "upload.Contracts.asd7asd@u.box.com"
      },
      "parent": {
        "id": 12345,
        "etag": 1,
        "type": "folder",
        "sequence_id": 3,
        "name": "Contracts"
      },
      "item_status": "active",
      "item_collection": {
        "total_count": 5000,
        "limit": 1000,
        "offset": 2000,
        "order": [
          {
            "by": "type",
            "direction": "ASC"
          }
        ],
        "entries": [
          {
            "id": 12345,
            "etag": 1,
            "type": "file",
            "sequence_id": 3,
            "name": "Contract.pdf"
          }
        ]
      },
      "sync_state": "synced",
      "has_collaborations": true,
      "permissions": {
        "can_delete": true,
        "can_download": true,
        "can_invite_collaborator": true,
        "can_rename": true,
        "can_set_share_access": true,
        "can_share": true,
        "can_upload": true
      },
      "tags": [
        "approved"
      ],
      "can_non_owners_invite": true,
      "is_externally_owned": true,
      "is_collaboration_restricted_to_enterprise": true,
      "allowed_shared_link_access_levels": [
        "open"
      ],
      "allowed_invitee_roles": [
        "open"
      ],
      "watermark_info": {
        "is_watermarked": true
      },
      "can_non_owners_view_collaborators": true
    }