files.info
Deprecated: the files.info API returns detailed information about the file requested.
The response will contain information about the file path, modified time,
file size, file duration, bit rate, video codec, profile, level, width,
height, aspect ration, frame rate, audio codec, sample rate, channels,
if it was deleted or invalid and any notes as to why it was invalid.
Example Code (PHP)
$request = array(
'command' => 'files.info',
'api_key' => 'APX4GKLM0RKQLSP2FBO1ROPKSSW47DZE',
'timestamp' => time(),
'cdn' => 158,
'path' => 'sestore4/jb/movie.mp4',
);
//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.
- [array] - Array of file paths to be searched.
|
Example Result (JSON)
{
"data" : [{
{
"path" : "sestore4/jb/movie.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" => ""
},
{...}
}],
"message": "Found File Information",
"status": "success",
"handle_time":"0.3795 seconds"
}
Result Fields
data |
[Array] - Array of files and their details
path |
[String] - File path |
mtime |
[int] - Last modified date |
size |
[int] - File size in bytes |
duration |
[float] - Duration of the file in seconds |
bit_rate |
[int] - Number of bits per second encoded |
video_codec |
[String] - Name of the video codec |
profile |
[String] - Video profile |
level |
[int] - Video profile level |
width |
[int] - width of the video in pixels |
height |
[int] - height of the video in pixels |
aspect_ratio |
[String] - Video aspect ratio |
frame_rate |
[float] - Frames per second |
audio_codec |
[String] - Name of the audio codec |
sample_rate |
[int] - Audio sample rate |
channels |
[int] - Audio channels |
deleted |
[int] - field is set to 1 if a file has been deleted |
invalid |
[int] - field is set to 1 if a file is marked invalid |
notes |
[String] - details about why a file is marked invalid |
|
message |
[string] - Debugging message |
status |
[string] - "success" or "failure" |
handle_time |
[float] - The amount of time spent processing your request |