I suspect your issue is here:
curl_setopt($ch, CURLOPT_POSTFIELDS, $dataString);
I believe this is expecting a String or an Array.
This parameter can either be passed as a urlencoded string like 'para1=val1¶2=val2&...' or as an array with the field name as key and field data as value. If value is an array, the Content-Type header will be set to multipart/form-data. As of PHP 5.2.0, value must be an array if files are passed to this option with the @ prefix. As of PHP 5.5.0, the @ prefix is deprecated and files can be sent using CURLFile.
Consider trying the following:
$dataArray = array( "async" => true, "type" => "image/jpeg", "width" => 800, "options" => $DataEncoded );
curl_setopt($ch, CURLOPT_POSTFIELDS, $dataArray);
Credit to @Patrick Q for catching the Encoding Type. You're not exactly sending it JSON encoded data, but Form data essentially.