Skip to main content
POST
/
files
/
{file_id}
cURL
curl -i -X POST "https://api.box.com/2.0/files/12345" \
     -H "authorization: Bearer <ACCESS_TOKEN>"
{
  "id": "123456789",
  "type": "file",
  "sequence_id": "3",
  "sha1": "85136C79CBF9FE36BB9D05D0639C70C265C18D37",
  "description": "Contract for Q1 renewal",
  "size": 629644,
  "path_collection": {
    "total_count": 1,
    "entries": [
      {
        "id": "12345",
        "type": "folder",
        "etag": "1",
        "sequence_id": "3",
        "name": "Contracts"
      }
    ]
  },
  "created_at": "2012-12-12T10:53:43-08:00",
  "modified_at": "2012-12-12T10:53:43-08:00",
  "modified_by": {
    "id": "11446498",
    "type": "user",
    "name": "Aaron Levie",
    "login": "[email protected]"
  },
  "owned_by": {
    "id": "11446498",
    "type": "user",
    "name": "Aaron Levie",
    "login": "[email protected]"
  },
  "item_status": "active",
  "etag": "1",
  "name": "Contract.pdf",
  "file_version": {
    "id": "12345",
    "type": "file_version",
    "sha1": "134b65991ed521fcfe4724b7d814ab8ded5185dc"
  },
  "trashed_at": null,
  "purged_at": null,
  "content_created_at": "2012-12-12T10:53:43-08:00",
  "content_modified_at": "2012-12-12T10:53:43-08:00",
  "created_by": {
    "id": "11446498",
    "type": "user",
    "name": "Aaron Levie",
    "login": "[email protected]"
  },
  "shared_link": null,
  "parent": {
    "id": "12345",
    "type": "folder",
    "etag": "1",
    "sequence_id": "3",
    "name": "Contracts"
  }
}
This endpoint is in the version 2024.0. No changes are required to continue using it. For more details, see Box API versioning.Learn more about Box SDK versioning strategy.

Authorizations

Authorization
string
header
required

The access token received from the authorization server in the OAuth 2.0 flow.

Path Parameters

file_id
string
required

The unique identifier that represents 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.

Query Parameters

fields
string[]

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.

Body

application/json
name
string

An optional new name for the file.

Example:

"Restored.docx"

parent
object

Specifies an optional ID of a folder to restore the file to when the original folder no longer exists.

Please be aware that this ID will only be used if the original folder no longer exists. Use this ID to provide a fallback location to restore the file to if the original location has been deleted.

Response

Returns a file object when the file has been restored.

Represents a file restored from the trash.

id
string
required

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.

Example:

"123456789"

type
enum<string>
required

The value will always be file.

Available options:
file
Example:

"file"

sequence_id
string | null
required

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.

Example:

"3"

sha1
string<digest>
required

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

Example:

"85136C79CBF9FE36BB9D05D0639C70C265C18D37"

description
string
required

The optional description of this file.

Maximum string length: 256
Example:

"Contract for Q1 renewal"

size
integer
required

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

Example:

629644

path_collection
Path collection · object
required

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

created_at
string<date-time>
required

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

Example:

"2012-12-12T10:53:43-08:00"

modified_at
string<date-time>
required

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

Example:

"2012-12-12T10:53:43-08:00"

modified_by
User (Mini) · object
required

The user who last modified this file.

owned_by
User (Mini) · object
required

The user who owns this file.

item_status
enum<string>
required

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.
Available options:
active,
trashed,
deleted
Example:

"active"

etag
string | null

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.

Example:

"1"

name
string

The name of the file.

Example:

"Contract.pdf"

file_version
File version (Mini) · object

The information about the current version of the file.

trashed_at
string | null

The time at which this file was put in the trash - becomes null after restore.

Example:

null

purged_at
string | null

The time at which this file is expected to be purged from the trash - becomes null after restore.

Example:

null

content_created_at
string<date-time> | null

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

Example:

"2012-12-12T10:53:43-08:00"

content_modified_at
string<date-time> | null

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

Example:

"2012-12-12T10:53:43-08:00"

created_by
User (Mini) · object

The user who created this file.

The shared link for this file. This will be null if a file had been trashed, even though the original shared link does become active again.

Example:

null

parent
Folder (Mini) · object

The folder that this file is located within.