Control Panel — API Documentation

Documentation

files.filedetails

Deprecated: the files.filedetails API returns a list of files with metadata in a specifed file path. Optionally, the list of files can be filtered by a shell wildcard, or by choosing only files of a certain type.

Example Code (PHP)

    $request = array(
        'command' => 'files.filedetails',
        'api_key' => 'APX4GKLM0RKQLSP2FBO1ROPKSSW47DZE',
        'timestamp' => time(),
        'cdn' => 158,
        'path' => 'sestore4/jb',
        'filter' => 'sestore4/jb/2015*' /*optional*/
        'type' => 'video'               /*optional*/
    );
        //Create request signature
    $json_request = json_encode($request);
    $sig = base64_encode(hash_hmac('sha256', $json_request,
        '8fc8c48da81e6a2a06a9556379bf798af508dc0792497c678b4c3532ba8b637f', true));
    $request['signature'] = $sig;
    $json_request = json_encode($request);
    
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, 'https://api.scaleengine.net/stable/'); // Set the URL
    curl_setopt($ch, CURLOPT_POST, true); // Perform a POST
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); // If not set, curl prints output to the browser
    curl_setopt($ch, CURLOPT_HEADER, false); // If set, curl returns headers as part of the data stream
    curl_setopt($ch, CURLOPT_POSTFIELDS, array('json' => $json_request)); //'Json' string or 'PHP' serialized return
    
    //If your PHP host does not have a proper SSL certificate bundle, you will need to turn off SSL Certificate Verification
    //This is dangerous, and should only be done temporarily until a proper certificate bundle can be installed
    //curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); // Turns off verification of the SSL certificate.
    //curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); // Turns off verification of the SSL certificate.
    
    $response = curl_exec($ch); //Execute the API Call
    if (!$response) {
        die('Failed to connect to ScaleEngine API');
    }
    
    //Decode the response as an associative array 
    $arrResponse = json_decode($response, true); 
    if ($arrResponse) {
        //Operation completed successfully
        //TODO Add work here
        print_r($arrResponse);
    } else {
        //Operation failed
        echo 'An error occured processing your request:';
        print_r($response);
    }
    	

Request Fields

command [REQUIRED] [string] - API command to execute
cdn [REQUIRED] [int] - The ScaleEngine CDN ID of your account
api_key [REQUIRED] [string] - The API key provided as part of your account
timestamp [REQUIRED] [int] - The unix timestamp of your request, used to prevent authenticated API requests from being replayed
path [REQUIRED] [string] - The file path to be searched. File paths begin with an sestore{#}. To find which sestore to use call files.getstorage.
filter [OPTIONAL] [string] - A shell wildcard pattern used to limit results. The filter is applied to the full filepath of the file or folders being searched. If sestore/jb/ is being requested, filters should either include the path requested ( sestore/jb/2016* ) or start with * ( *2016* ).
type [OPTIONAL] [String] - File type to be returned. By default invalid files and deleted files are not returned in the list,to see those file types use "deleted", "invalid", or "includeinvalid". (Default video)
  • audio - show only audio files
  • deleted - show only deleted files
  • includeinvalid - show valid and invalid files
  • invalid - show only invalid files
  • smil - show only smil files
  • valid - show only valid files
  • video - show only video files

Example Result (JSON)

    {
    "data" : {
        "sestore4/jb/" : {
		"2":{
                        "id" : 2,
                        "filename" : "/sestore4/vodstore/customers/jb/folder1/movie2.mp4",
                        "directory" : 1,
                        "user" : "jb",
                        "path" : "sestore4/jb/folder1/movie2.mp4",
                        "mtime" : 1421779592,
                        "size" : 2939290,
                        "duration": 30.016,
                        "bit_rate" : 783392,
                        "video_codec" : "h264",
                        "profile" : "Constrained Baseline",
                        "level" : 30,
                        "width" : 640,
                        "height" : 360,
                        "aspect_ratio" : "16:9",
                        "frame_rate" : 29.97,
                        "audio_codec" : "aac",
                        "sample_rate" : 48000,
                        "channels" : 2,
                        "deleted" : 0,
                        "invalid" : 0,
                        "notes" : "",
                        "user_name" : "Movie 2: The Sequel",
                        "user_description" : "This was my second movie",
                }
	}
    },
    "message": "Found Files Data",
    "status": "success",
    "handle_time":"0.3795 seconds"
    }
	

Result Fields

data [Array] - List files and their filepaths
[Array] - List of files with metadata for the filepath. The index of the array will reflect the parent filepath of the file (ex. index could be sestore1/jb/ and the array would contain the files)
[Array] - file metadata
message [string] - Debugging message
status [string] - "success" or "failure"
handle_time [float] - The amount of time spent processing your request