Uploads a file to Stripe.
curl https://files.stripe.com/v1/files \
-u STRIPE_SECRET_KEY: \
-F purpose=dispute_evidence \
-F file="@/path/to/a/file.jpg"
<?php
// The version number (9_5_0) should match version of the Chilkat extension used, omitting the micro-version number.
// For example, if using Chilkat v9.5.0.48, then include as shown here:
include("chilkat_9_5_0.php");
$rest = new CkRest();
// URL: https://files.stripe.com/v1/files
$bTls = true;
$port = 443;
$bAutoReconnect = true;
$success = $rest->Connect('files.stripe.com',$port,$bTls,$bAutoReconnect);
if ($success != true) {
print 'ConnectFailReason: ' . $rest->get_ConnectFailReason() . "\n";
print $rest->lastErrorText() . "\n";
exit;
}
$rest->SetAuthBasic('STRIPE_SECRET_KEY','');
$rest->put_PartSelector('1');
$rest->AddHeader('Content-Disposition','form-data; name=\'purpose\'');
$rest->SetMultipartBodyString('dispute_evidence');
$rest->put_PartSelector('2');
$fileStream2 = new CkStream();
$fileStream2->put_SourceFile('/path/to/a/file.jpg');
$rest->AddHeader('Content-Disposition','form-data; name=\'/path/to/a/file.jpg\'; filename=\'/path/to/a/file.jpg\'');
$rest->AddHeader('Content-Type','image/jpeg');
$rest->SetMultipartBodyStream($fileStream2);
$rest->put_PartSelector('0');
$rest->AddHeader('Expect','100-continue');
$strResponseBody = $rest->fullRequestMultipart('POST','/v1/files');
if ($rest->get_LastMethodSuccess() != true) {
print $rest->lastErrorText() . "\n";
exit;
}
$jsonResponse = new CkJsonObject();
$jsonResponse->Load($strResponseBody);
$id = $jsonResponse->stringOf('id');
$object = $jsonResponse->stringOf('object');
$created = $jsonResponse->IntOf('created');
$filename = $jsonResponse->stringOf('filename');
$purpose = $jsonResponse->stringOf('purpose');
$size = $jsonResponse->IntOf('size');
$type = $jsonResponse->stringOf('type');
$url = $jsonResponse->stringOf('url');
?>
{
"id": "file_1BnEEuGswQrCoh0XqB3XkqAg",
"object": "file_upload",
"created": 1516661888,
"filename": "path",
"purpose": "sigma_scheduled_query",
"size": 500,
"type": "csv",
"url": "https://stripe-upload-api.s3.amazonaws.com/uploads/file_1BnEEuGswQrCoh0XqB3XkqAg?AWSAccessKeyId=KEY_ID\u0026Expires=TIMESTAMP\u0026Signature=SIGNATURE"
}