File (Full)

A full representation of a file, as can be returned from any file API endpoints by default

This resource has a few variations that can be encountered when using the API.

The fields that are part of the full variant can be returned by API endpoints that support the fields parameter. For example, by defining the fields request parameter as id,type when requesting a file by ID, only those fields will be returned in the API response.

string
12345

The unique identifier that represent a file.

The ID for any file can be determined by visiting a file in the web application and copying the ID from the URL. For example, for the URL https://*.app.box.com/files/123 the file_id is 123.

string
file

Value is always file

["editor"]

A list of the types of roles that user can be invited at when sharing this file.

Details about the classification applied to this file.

#FF0000

The color that is used to display the classification label in a user-interface. Colors are defined by the admin or co-admin who created the classification in the Box web app.

Content that should not be shared outside the company.

An explanation of the meaning of this classification.

Top Secret

The name of the classification

10

The number of comments on this file

string / date-time
2012-12-12T10:53:43-08:00

The date and time at which this file was originally created, which might be before it was uploaded to Box.

string / date-time
2012-12-12T10:53:43-08:00

The date and time at which this file was last updated, which might be before it was uploaded to Box.

string / date-time
2012-12-12T10:53:43-08:00

The date and time when the file was created on Box.

The user who created this file

Contract for Q1 renewal256

The optional description of this file

string
1

The HTTP etag of this file. This can be used within some API endpoints in the If-Match and If-None-Match headers to only perform changes on the file if (no) changes have happened.

string / date-time
2012-12-12T10:53:43-08:00

When the file will automatically be deleted

string
pdf

Indicates the (optional) file extension for this file. By default, this is set to an empty string.

The information about the current version of the file.

true

Specifies if this file has any other collaborators.

true

Specifies if this file is owned by a user outside of the authenticated enterprise.

boolean
true

Indicates if the file is a package. Packages are commonly used by Mac Applications and can include iWork files.

active

Defines if this item has been deleted or not.

  • active when the item has is not in the trash
  • trashed when the item has been moved to the trash but not deleted
  • deleted when the item has been permanently deleted.

Value is one of active,trashed,deleted

object

The lock held on this file. If there is no lock, this can either be null or have a timestamp in the past.

string
11446498

The unique identifier for this lock

string
lock

Value is always lock

string / date-time
2012-12-12T10:53:43-08:00

The time this lock was created at.

The user who created the lock.

string / date-time
2012-12-12T10:53:43-08:00

The time this lock is to expire at, which might be in the past.

true

Whether or not the file can be downloaded while locked.

associative array

An object containing the metadata instances that have been attached to this file.

Each metadata instance is uniquely identified by its scope and templateKey. There can only be one instance of any metadata template attached to each file. Each metadata instance is nested within an object with the templateKey as the key, which again itself is nested in an object with the scope as the key.

associative array

A list of metadata instances, nested within key-value pairs of their scope and templateKey.

An instance of a metadata template, which has been applied to a file or folder.

string / date-time
2012-12-12T10:53:43-08:00

The date and time when the file was last updated on Box.

The user who last modified this file

string
Contract.pdf

The name of the file

The user who owns this file

The folder that this file is located within.

The tree of folders that this file is contained in, starting at the root.

The parent folders for this item

1

The number of folders in this list.

Describes the permissions that the current user has for this file.

true

Specifies if the user can place annotations on this file.

true

Specifies if the user can place comments on this file.

true

Specifies if the current user can delete this item.

true

Specifies if the current user can download this item.

true

Specifies if the current user can invite new users to collaborate on this item, and if the user can update the role of a user already collaborated on this item.

true

Specifies if the user can preview this file.

true

Specifies if the user can rename this item.

true

Specifies if the user can change the access level of an existing shared link on this item.

true

Specifies if the user can create a shared link for this item.

true

Specifies if the user can upload a new version of this file.

true

Specifies if the user view all annotations placed on this file

true

Specifies if the user view annotations placed by themselves on this file

string / date-time
2012-12-12T10:53:43-08:00

The time at which this file is expected to be purged from the trash.

A list of representations for a file that can be used to display a placeholder of the file in your application. By default this returns all representations and we recommend using the X-Rep-Hints header to further customize the desired representations.

A list of files

An object containing the URL that can be used to actually fetch the representation.

https://dl.boxcloud.com/api/2.0/internal_files/123/versions/345/representations/png_paged_2048x2048/content/{+asset_path}?watermark_content=4567

The download URL that can be used to fetch the representation. Make sure to make an authenticated API call to this endpoint.

This URL is a template and will require the {+asset_path} to be replaced by a path. In general, for unpaged representations it can be replaced by an empty string.

For paged representations, replace the {+asset_path} with the page to request plus the extension for the file, for example 1.pdf.

When requesting the download URL the following additional query params can be passed along.

  • set_content_disposition_type - Sets the Content-Disposition header in the API response with the specified disposition type of either inline or attachment. If not supplied, the Content-Disposition header is not included in the response.

  • set_content_disposition_filename - Allows the application to define the representation's file name used in the Content-Disposition header. If not defined, the filename is derived from the source file name in Box combined with the extension of the representation.

An object containing the URL that can be used to fetch more info on this representation.

string
https://api.box.com/2.0/internal_files/123/versions/345/representations/png_paged_2048x2048

The API URL that can be used to get more info on this file representation. Make sure to make an authenticated API call to this endpoint.

An object containing the size and type of this presentation.

string / <width>x<height>
2048x2048

The width by height size of this representation in pixels.

true

Indicates if the representation is build up out of multiple pages.

true

Indicates if the representation can be used as a thumbnail of the file.

png

Indicates the file type of the returned representation.

An object containing the status of this representation.

success

The status of the representation.

  • success defines the representation as ready to be viewed.
  • viewable defines a video to be ready for viewing.
  • pending defines the representation as to be generated. Retry this endpoint to re-check the status.
  • none defines that the representation will be created when requested. Request the URL defined in the info object to trigger this generation.

Value is one of success,viewable,pending,none

3

A numeric identifier that represents the most recent user event that has been applied to this item.

This can be used in combination with the GET /events-endpoint to filter out user events that would have occurred before this identifier was read.

An example would be where a Box Drive-like application would fetch an item via the API, and then listen to incoming user events for changes to the item. The application would ignore any user events where the sequence_id in the event is smaller than or equal to the sequence_id in the originally fetched resource.

string / digest
85136C79CBF9FE36BB9D05D0639C70C265C18D37

The SHA1 hash of the file. This can be used to compare the contents of a file on Box with a local file.

integer
629644

The file size in bytes. Be careful parsing this integer as it can get very large and cause an integer overflow.

string array
["approved"]

The tags for this item. These tags are shown in the Box web app and mobile apps next to an item.

To add or remove a tag, retrieve the item's current tags, modify them, and then update this field.

There is a limit of 100 tags per item, and 10,000 unique tags per enterprise.

string / date-time
2012-12-12T10:53:43-08:00

The time at which this file was put in the trash.

Ellis Wiggins

The display name of the user that uploaded the file. In most cases this is the name of the logged in user at the time of upload.

If this file was uploaded by a logged out user and an email address was provided on upload, then this field will return that email address.

If this file was uploaded using a File Request form then this field will be set to return a value of File Request. No email address will be added.

In all other anonymous cases where no email was provided this field will default to a value of "Someone".

1

The version number of this file

Details about the watermark applied to this file

true

Specifies if this item has a watermark applied.

Response Example

{
  "id": 12345,
  "type": "file",
  "allowed_invitee_roles": [
    "editor"
  ],
  "classification": {
    "color": "#FF0000",
    "definition": "Content that should not be shared outside the company.",
    "name": "Top Secret"
  },
  "comment_count": 10,
  "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,
  "expires_at": "2012-12-12T10:53:43-08:00",
  "expiring_embed_link": {
    "access_token": "c3FIOG9vSGV4VHo4QzAyg5T1JvNnJoZ3ExaVNyQWw6WjRsanRKZG5lQk9qUE1BVQ",
    "expires_in": 3600,
    "restricted_to": [
      {
        "scope": "item_download",
        "object": {
          "id": 12345,
          "etag": 1,
          "type": "file",
          "sequence_id": 3,
          "name": "Contract.pdf",
          "sha1": "85136C79CBF9FE36BB9D05D0639C70C265C18D37",
          "file_version": {
            "id": 12345,
            "type": "file_version",
            "sha1": "134b65991ed521fcfe4724b7d814ab8ded5185dc"
          }
        }
      }
    ],
    "token_type": "bearer",
    "url": "https://cloud.app.box.com/preview/expiring_embed/..."
  },
  "extension": "pdf",
  "file_version": {
    "id": 12345,
    "type": "file_version",
    "sha1": "134b65991ed521fcfe4724b7d814ab8ded5185dc"
  },
  "has_collaborations": true,
  "is_externally_owned": true,
  "is_package": true,
  "item_status": "active",
  "lock": {
    "id": 11446498,
    "type": "lock",
    "created_at": "2012-12-12T10:53:43-08:00",
    "created_by": {
      "id": 11446498,
      "type": "user",
      "login": "ceo@example.com",
      "name": "Aaron Levie"
    },
    "expired_at": "2012-12-12T10:53:43-08:00",
    "is_download_prevented": true
  },
  "metadata": {
    "enterprise_27335": {
      "marketingCollateral": {
        "$canEdit": true,
        "$id": "01234500-12f1-1234-aa12-b1d234cb567e",
        "$parent": "folder_59449484661",
        "$scope": "enterprise_27335",
        "$template": "marketingCollateral",
        "$type": "properties-6bcba49f-ca6d-4d2a-a758-57fe6edf44d0",
        "$typeVersion": 2,
        "$version": 1
      }
    }
  },
  "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
  },
  "permissions": {
    "can_annotate": true,
    "can_comment": true,
    "can_delete": true,
    "can_download": true,
    "can_invite_collaborator": true,
    "can_preview": true,
    "can_rename": true,
    "can_set_share_access": true,
    "can_share": true,
    "can_upload": true,
    "can_view_annotations_all": true,
    "can_view_annotations_self": true
  },
  "purged_at": "2012-12-12T10:53:43-08:00",
  "representations": {
    "entries": [
      {
        "content": {
          "url_template": "https://dl.boxcloud.com/api/2.0/internal_files/123/versions/345/representations/png_paged_2048x2048/content/{+asset_path}?watermark_content=4567"
        },
        "info": {
          "url": "https://api.box.com/2.0/internal_files/123/versions/345/representations/png_paged_2048x2048"
        },
        "properties": {
          "dimensions": "2048x2048",
          "paged": true,
          "thumb": true
        },
        "representation": "png",
        "status": {
          "state": "success"
        }
      }
    ]
  },
  "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_name": "my_url",
    "vanity_url": "https://acme.app.box.com/v/my_url/"
  },
  "size": 629644,
  "tags": [
    "approved"
  ],
  "trashed_at": "2012-12-12T10:53:43-08:00",
  "uploader_display_name": "Ellis Wiggins",
  "version_number": 1,
  "watermark_info": {
    "is_watermarked": true
  }
}