cPanel API 2 Functions - Fileman::fileop

Warning:

The cPanel API 2 system is deprecated. We strongly recommend that you use UAPI instead of cPanel API 2.

Description

This function performs an operation on one or more files.

Warning:

We strongly recommend that you use UAPI instead of cPanel API 2. However, no equivalent UAPI function exists.

Important:

When you disable the File Storage role, the system disables this function.


Examples


WHM API (JSON)

https://hostname.example.com:2087/cpsess##########/json-api/cpanel?cpanel_jsonapi_user=user&cpanel_jsonapi_apiversion=2&cpanel_jsonapi_module=Fileman&cpanel_jsonapi_func=fileop&op=copy&sourcefiles=hot.txt&destfiles=new_directory&doubledecode=1
Note:

For more information, read our Calls from the WHM API documentation.


LiveAPI PHP Class

$cpanel = new CPANEL(); // Connect to cPanel - only do this once.

// Perform an operation on a file or group of files.
$fileop = $cpanel->api2(
    'Fileman', 'fileop',
        array(
        'op'                => 'move'
        'sourcefiles'       => 'example.txt,example2.txt'
        'destfiles'         => 'new_directory'
        'doubledecode'      => '1'
    )
);
Note:

For more information, read our Guide to the LiveAPI System.


LiveAPI Perl Module

my $cpliveapi = Cpanel::LiveAPI->new(); # Connect to cPanel - only do this once.

# Perform an operation on a file or group of files.
my $fileop = $cpliveapi->api2(
    'Fileman', 'fileop',
    {
        'op'                => 'move'
        'sourcefiles'       => 'example.txt,example2.txt'
        'destfiles'         => 'new_directory'
        'doubledecode'      => '1'
    }   
 );
Note:

For more information, read our Guide to the LiveAPI System.


cPanel Tag System (deprecated)

Warnings:
  • cPanel tags are deprecated . We strongly recommend that you only use the LiveAPI system to call the cPanel APIs. Examples are only present in order to help developers move from the old cPanel tag system to our LiveAPI .
  • cPanel API 2 calls that use cPanel tags vary in code syntax and in their output.
  • For more information, read our Deprecated cPanel Tag Usage documentation.

Command Line

cpapi2 --user=username Fileman fileop op=move sourcefiles=example.txt,example2.txt destfiles=new_directory doubledecode=1
Notes:
  • You must URI-encode values.
  • username represents your account-level username.
  • You must include the --user=username option.
  • For more information and additional output options, read our Guide to cPanel API 2 documentation or run the cpapi2 --help command.
  • If you run CloudLinux™, you must use the full path of the cpapi2 command:
    /usr/local/cpanel/bin/cpapi2

Output (JSON)

{
  "cpanelresult": {
    "apiversion": 2,
    "func": "fileop",
    "data": [
      {
        "dest": "/home/example/new_directory",
        "src": "/home/example/example.txt",
        "result": 1
      },
      {
        "dest": "/home/example/new_directory",
        "src": "/home/example/example2.txt",
        "result": 1
      }
    ],
    "event": {
      "result": 1
    },
    "module": "Fileman"
  }
}
Note:

Use cPanel's API Shell interface (cPanel >> Home >> Advanced >> API Shell) to directly test cPanel API calls.


Parameters

Parameter Type Description Possible values Example

op

string

Required

The operation.

  • copy — Copy the file.
  • move — Move the file.
  • rename — Rename the file.
  • chmod — Change the file's permissions.
  • extract — Extract the file.
  • compress — Compress the file.
  • link — Create a symlink for the file.
  • unlink — Remove a symlink.
  • trash — Move the file to the .trash directory.
  • restorefile — Restore a file from the .trash directory.
move
sourcefiles string

Required

The files.

Any valid filename or directory name, relative to the account's /home directory.

This parameter accepts multiple values as a comma-separated list.

example.txt,example2.txt
destfiles string

The files to serve as the destination files for the source files.

Use this parameter if you used the copy, move, or rename operations in the op parameter.

Any valid filename or directory name on the server.

This parameter accepts multiple values as a comma-separated list.

new_directory
doubledecode Boolean

Required

Whether to decode the sourcefiles and destfiles parameters' URI values.

  • 0 — Do not decode.
  • 1 — Decode.
1
metadata string

The additional values that the op value's operation requires.

For example, if you use the compress operation, use this parameter to pass in the archive type.

For the chmod operation, use this parameter to pass in the files' octal permissions:

  • 0755
  • 0700

For the compress operation, use this parameter to pass in the files' archive type:

  • zip
  • tar.gz
  • tar.bz2
  • tar
  • gz
  • bz2
zip

Returns

Return Type Description Possible values Example
dest string The path to the destination file. The absolute path to a file on the server. /home/example/new_directory
src string The path from the source file.

The absolute path to a location on the server.

/home/example/example.txt
output string

Additional relevant output.

This function does not always return an ouput value.

A valid string. adding: new_directory (stored 0%)
err string

A reason for failure.

This function only returns an err value if an error occurred.


A string that describes the error. This is an error message.
result Boolean

Whether the function succeeded.

  • 1 — The function succeeded.
  • 0 — The function failed.
1