Manage Applications

    Revert file version

    post
    https://api.box.com/2.0
    /files/:file_id/versions/current

    Revert to a previous version of a file.

    If previous versions exist, this method can be used to promote one of the older versions to the top of the version history.

    This actually creates a new copy of the old version and puts it at the top of the versions history. The file will have the exact same contents as the older version, with the the same SHA1/etag, and the same name as the original.

    Other properties such as comments do not get updated to their former values.

    Request

    application/json

    Path Parameters

    stringin pathrequired
    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.

    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

    stringin bodyoptional
    11446498

    The file version ID

    stringin bodyoptional
    file

    Value is always "file_version"

    Response

    application/jsonFile Version

    Returns a newly created file version object.

    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/files/12345/versions/current \
         -H "Authorization: Bearer <ACCESS_TOKEN>" \
         -H "Content-Type: application/json" \
         -d '{
           "type": "file_version",
           "id": "456456"
         }'
    .NET
    string fileId = "11111";
    BoxFileVersion current = await client.FilesManager.PromoteVersionAsync(fileId, versionId: "22222");
    Java
    BoxFile file = new BoxFile(api, "id");
    List<BoxFileVersion> versions = file.getVersions();
    BoxFileVersion firstVersion = versions.get(0);
    firstVersion.promote();
    Python
    file_id = '11111'
    file_version_id = '12345'
    
    version_to_promote = client.file_version(file_version_id)
    
    new_version = client.file(file_id).promote_version(version_to_promote)
    print('Version {0} promoted; new version {1} created'.format(file_version_id, new_version.id))
    Node
    var fileID = '11111';
    var versionID = '22222';
    client.files.promoteVersion(fileID, versionID)
    	.then(version => {
    		/* version -> {
    			type: 'file_version',
    			id: '33333',
    			sha1: '12039d6dd9a7e6eefc78846802e',
    			name: 'Stark Family Lineage.pptx',
    			size: 37934912,
    			created_at: '2013-11-20T13:20:50-08:00',
    			modified_at: '2013-11-20T13:26:48-08:00',
    			modified_by: 
    			{ type: 'user',
    				id: '44444',
    				name: 'Eddard Stark',
    				login: 'ned@winterfell.example.com' } }
    		*/
    	});

    Response Example

    {
      "id": 11446498,
      "type": "file_version",
      "sha1": "134b65991ed521fcfe4724b7d814ab8ded5185dc",
      "name": "tigers.jpeg",
      "size": 629644,
      "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": "ceo@example.com"
      },
      "trashed_at": "2012-12-12T10:53:43-08:00",
      "purged_at": "2012-12-12T10:53:43-08:00"
    }