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"
load ./chilkat.dll
set rest [new_CkRest]
# URL: https://files.stripe.com/v1/files
set bTls 1
set port 443
set bAutoReconnect 1
set success [CkRest_Connect $rest "files.stripe.com" $port $bTls $bAutoReconnect]
if {[expr $success != 1]} then {
puts "ConnectFailReason: [CkRest_ConnectFailReason $rest]"
puts [CkRest_lastErrorText $rest]
delete_CkRest $rest
exit
}
CkRest_SetAuthBasic $rest "STRIPE_SECRET_KEY" ""
CkRest_put_PartSelector $rest "1"
CkRest_AddHeader $rest "Content-Disposition" "form-data; name=\"purpose\""
CkRest_SetMultipartBodyString $rest "dispute_evidence"
CkRest_put_PartSelector $rest "2"
set fileStream2 [new_CkStream]
CkStream_put_SourceFile $fileStream2 "/path/to/a/file.jpg"
CkRest_AddHeader $rest "Content-Disposition" "form-data; name=\"/path/to/a/file.jpg\"; filename=\"/path/to/a/file.jpg\""
CkRest_AddHeader $rest "Content-Type" "image/jpeg"
CkRest_SetMultipartBodyStream $rest $fileStream2
CkRest_put_PartSelector $rest "0"
CkRest_AddHeader $rest "Expect" "100-continue"
set strResponseBody [CkRest_fullRequestMultipart $rest "POST" "/v1/files"]
if {[expr [CkRest_LastMethodSuccess $rest] != 1]} then {
puts [CkRest_lastErrorText $rest]
delete_CkRest $rest
delete_CkStream $fileStream2
exit
}
set jsonResponse [new_CkJsonObject]
CkJsonObject_Load $jsonResponse $strResponseBody
set id [CkJsonObject_stringOf $jsonResponse "id"]
set object [CkJsonObject_stringOf $jsonResponse "object"]
set created [CkJsonObject_IntOf $jsonResponse "created"]
set filename [CkJsonObject_stringOf $jsonResponse "filename"]
set purpose [CkJsonObject_stringOf $jsonResponse "purpose"]
set size [CkJsonObject_IntOf $jsonResponse "size"]
set type [CkJsonObject_stringOf $jsonResponse "type"]
set url [CkJsonObject_stringOf $jsonResponse "url"]
delete_CkRest $rest
delete_CkStream $fileStream2
delete_CkJsonObject $jsonResponse
{
"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"
}