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"
CREATE PROCEDURE ChilkatSample
AS
BEGIN
DECLARE @hr int
DECLARE @iTmp0 int
DECLARE @sTmp0 nvarchar(4000)
DECLARE @rest int
EXEC @hr = sp_OACreate 'Chilkat_9_5_0.Rest', @rest OUT
IF @hr <> 0
BEGIN
PRINT 'Failed to create ActiveX component'
RETURN
END
DECLARE @success int
-- URL: https://files.stripe.com/v1/files
DECLARE @bTls int
SELECT @bTls = 1
DECLARE @port int
SELECT @port = 443
DECLARE @bAutoReconnect int
SELECT @bAutoReconnect = 1
EXEC sp_OAMethod @rest, 'Connect', @success OUT, 'files.stripe.com', STR(@port), STR(@bTls), STR(@bAutoReconnect)
IF STR(@success) <> 1
BEGIN
EXEC sp_OAGetProperty @rest, 'ConnectFailReason', @iTmp0 OUT
PRINT 'ConnectFailReason: ' + @iTmp0
EXEC sp_OAGetProperty @rest, 'LastErrorText', @sTmp0 OUT
PRINT @sTmp0
EXEC @hr = sp_OADestroy @rest
RETURN
END
EXEC sp_OAMethod @rest, 'SetAuthBasic', @success OUT, 'STRIPE_SECRET_KEY', ''
EXEC sp_OASetProperty @rest, 'PartSelector', '1'
EXEC sp_OAMethod @rest, 'AddHeader', @success OUT, 'Content-Disposition', 'form-data; name="purpose"'
EXEC sp_OAMethod @rest, 'SetMultipartBodyString', @success OUT, 'dispute_evidence'
EXEC sp_OASetProperty @rest, 'PartSelector', '2'
DECLARE @fileStream2 int
EXEC @hr = sp_OACreate 'Chilkat_9_5_0.Stream', @fileStream2 OUT
EXEC sp_OASetProperty @fileStream2, 'SourceFile', '/path/to/a/file.jpg'
EXEC sp_OAMethod @rest, 'AddHeader', @success OUT, 'Content-Disposition', 'form-data; name="/path/to/a/file.jpg"; filename="/path/to/a/file.jpg"'
EXEC sp_OAMethod @rest, 'AddHeader', @success OUT, 'Content-Type', 'image/jpeg'
EXEC sp_OAMethod @rest, 'SetMultipartBodyStream', @success OUT, STR(@fileStream2)
EXEC sp_OASetProperty @rest, 'PartSelector', '0'
EXEC sp_OAMethod @rest, 'AddHeader', @success OUT, 'Expect', '100-continue'
DECLARE @strResponseBody nvarchar(4000)
EXEC sp_OAMethod @rest, 'FullRequestMultipart', @strResponseBody OUT, 'POST', '/v1/files'
EXEC sp_OAGetProperty @rest, 'LastMethodSuccess', @iTmp0 OUT
IF @iTmp0 <> 1
BEGIN
EXEC sp_OAGetProperty @rest, 'LastErrorText', @sTmp0 OUT
PRINT @sTmp0
EXEC @hr = sp_OADestroy @rest
EXEC @hr = sp_OADestroy @fileStream2
RETURN
END
DECLARE @jsonResponse int
EXEC @hr = sp_OACreate 'Chilkat_9_5_0.JsonObject', @jsonResponse OUT
EXEC sp_OAMethod @jsonResponse, 'Load', @success OUT, @strResponseBody
DECLARE @id nvarchar(4000)
DECLARE @object nvarchar(4000)
DECLARE @created int
DECLARE @filename nvarchar(4000)
DECLARE @purpose nvarchar(4000)
DECLARE @size int
DECLARE @type nvarchar(4000)
DECLARE @url nvarchar(4000)
EXEC sp_OAMethod @jsonResponse, 'StringOf', @id OUT, 'id'
EXEC sp_OAMethod @jsonResponse, 'StringOf', @object OUT, 'object'
EXEC sp_OAMethod @jsonResponse, 'IntOf', @created OUT, 'created'
EXEC sp_OAMethod @jsonResponse, 'StringOf', @filename OUT, 'filename'
EXEC sp_OAMethod @jsonResponse, 'StringOf', @purpose OUT, 'purpose'
EXEC sp_OAMethod @jsonResponse, 'IntOf', @size OUT, 'size'
EXEC sp_OAMethod @jsonResponse, 'StringOf', @type OUT, 'type'
EXEC sp_OAMethod @jsonResponse, 'StringOf', @url OUT, 'url'
EXEC @hr = sp_OADestroy @rest
EXEC @hr = sp_OADestroy @fileStream2
EXEC @hr = sp_OADestroy @jsonResponse
END
GO
{
"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"
}