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"
Use ChilkatAx-9.5.0-win32.pkg
Procedure Test
Handle hoRest
Boolean iSuccess
Boolean iBTls
Integer iPort
Boolean iBAutoReconnect
Variant vFileStream2
Handle hoFileStream2
String sStrResponseBody
Handle hoJsonResponse
String sId
String sObject
Integer iCreated
String sFilename
String sPurpose
Integer iSize
String sType
String sUrl
String sTemp1
Integer iTemp1
Boolean bTemp1
Get Create (RefClass(cComChilkatRest)) To hoRest
If (Not(IsComObjectCreated(hoRest))) Begin
Send CreateComObject of hoRest
End
// URL: https://files.stripe.com/v1/files
Move True To iBTls
Move 443 To iPort
Move True To iBAutoReconnect
Get ComConnect Of hoRest "files.stripe.com" iPort iBTls iBAutoReconnect To iSuccess
If (iSuccess <> True) Begin
Get ComConnectFailReason Of hoRest To iTemp1
Showln "ConnectFailReason: " iTemp1
Get ComLastErrorText Of hoRest To sTemp1
Showln sTemp1
Procedure_Return
End
Get ComSetAuthBasic Of hoRest "STRIPE_SECRET_KEY" "" To iSuccess
Set ComPartSelector Of hoRest To "1"
Get ComAddHeader Of hoRest "Content-Disposition" 'form-data; name="purpose"' To iSuccess
Get ComSetMultipartBodyString Of hoRest "dispute_evidence" To iSuccess
Set ComPartSelector Of hoRest To "2"
Get Create (RefClass(cComChilkatStream)) To hoFileStream2
If (Not(IsComObjectCreated(hoFileStream2))) Begin
Send CreateComObject of hoFileStream2
End
Set ComSourceFile Of hoFileStream2 To "/path/to/a/file.jpg"
Get ComAddHeader Of hoRest "Content-Disposition" 'form-data; name="/path/to/a/file.jpg"; filename="/path/to/a/file.jpg"' To iSuccess
Get ComAddHeader Of hoRest "Content-Type" "image/jpeg" To iSuccess
Get pvComObject of hoFileStream2 to vFileStream2
Get ComSetMultipartBodyStream Of hoRest vFileStream2 To iSuccess
Set ComPartSelector Of hoRest To "0"
Get ComAddHeader Of hoRest "Expect" "100-continue" To iSuccess
Get ComFullRequestMultipart Of hoRest "POST" "/v1/files" To sStrResponseBody
Get ComLastMethodSuccess Of hoRest To bTemp1
If (bTemp1 <> True) Begin
Get ComLastErrorText Of hoRest To sTemp1
Showln sTemp1
Procedure_Return
End
Get Create (RefClass(cComChilkatJsonObject)) To hoJsonResponse
If (Not(IsComObjectCreated(hoJsonResponse))) Begin
Send CreateComObject of hoJsonResponse
End
Get ComLoad Of hoJsonResponse sStrResponseBody To iSuccess
Get ComStringOf Of hoJsonResponse "id" To sId
Get ComStringOf Of hoJsonResponse "object" To sObject
Get ComIntOf Of hoJsonResponse "created" To iCreated
Get ComStringOf Of hoJsonResponse "filename" To sFilename
Get ComStringOf Of hoJsonResponse "purpose" To sPurpose
Get ComIntOf Of hoJsonResponse "size" To iSize
Get ComStringOf Of hoJsonResponse "type" To sType
Get ComStringOf Of hoJsonResponse "url" To sUrl
End_Procedure
{
"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"
}