Control Panel — API Documentation

Documentation

aws.status

Retrieve the upload status of AWS S3 Upload requests. The last 25 requests will be returned by default

Example Code (PHP)

    $request = array(
        'command' => 'aws.status',
        'api_key' => 'APX4GKLM0RKQLSP2FBO1ROPKSSW47DZE',
        'timestamp' => time(),
        'cdn' => 158,
        'limit' => 25, //optional
        'offset' => 0

    );
    
        //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
limit [OPTIONAL] [int] - Limits the number of results to be returned.
offset [OPTIONAL] [int] - Number of results to be skipped when searching.

Example Result (JSON)

    {
    "message": "Found AWS Status",
    "status": "success",
    "data": {
            "id" : 1,
            "cdn_id": 158,
            "path": "sestore{#}/jb/path/to/file.mp4",
            "destination_path": "path/to/file.mp4",
            "metadata": "{}",
            "acl": "private",
            "callback": "www.mycallbackurl.com/",
            "message": "Successfully Uploaded to AWS",
            "results": {
                'Bucket' => '',
                'ETag' => '',
                'Expiration' => '',
                'Key' => '',
                'Location' => '',
                'ObjectURL' => '',
                'RequestCharged' => 'requester',
                'SSEKMSKeyId' => '',
                'ServerSideEncryption' => 'AES256|aws:kms',
                'VersionId' => '',
            },
            "created": "2018-01-01 00:00:00",
            "last_updated": "2018-01-01 1:00:00",
            "status": 200
        }
    }
	

Result Fields

message [string] - Debugging message
status [string] - "success" or "failure"
handle_time [float] - The amount of time spent processing your request
data [Array]
id [int] - The AWS S3 upload request ID
cdn_id [int] - The ScaleEngine CDN ID of your account
path [String] - The video filename including filepath to be uploaded.
destination_path [String] - The destination file path; including folders and filename.
metadata [Array] - user metadata for the AWS object
acl [String] - Sets the acl of the video when upload is finished. "private" or "public-read"
callback [String] - Callback URL to send information when upload is finished
message [String] - Status message
results [Array] - AWS response data
created [String] - Date and Time the upload request was queued
last_updated [String] - Date and Time the status was last updated
status [int] - http status code