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"
Chilkat.Rest rest = new Chilkat.Rest();
bool success;
// URL: https://files.stripe.com/v1/files
bool bTls = true;
int port = 443;
bool bAutoReconnect = true;
success = await rest.ConnectAsync("files.stripe.com",port,bTls,bAutoReconnect);
if (success != true) {
Debug.WriteLine("ConnectFailReason: " + Convert.ToString(rest.ConnectFailReason));
Debug.WriteLine(rest.LastErrorText);
return;
}
rest.SetAuthBasic("STRIPE_SECRET_KEY","");
rest.PartSelector = "1";
rest.AddHeader("Content-Disposition","form-data; name=\"purpose\"");
rest.SetMultipartBodyString("dispute_evidence");
rest.PartSelector = "2";
Chilkat.Stream fileStream2 = new Chilkat.Stream();
fileStream2.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.PartSelector = "0";
rest.AddHeader("Expect","100-continue");
string strResponseBody = await rest.FullRequestMultipartAsync("POST","/v1/files");
if (rest.LastMethodSuccess != true) {
Debug.WriteLine(rest.LastErrorText);
return;
}
Chilkat.JsonObject jsonResponse = new Chilkat.JsonObject();
jsonResponse.Load(strResponseBody);
string id;
string object;
int created;
string filename;
string purpose;
int size;
string type;
string url;
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"
}