10
REST API File Upload using SSIS (Multi Part POST) Reach for the Clouds, Inc. Next Generation SSIS Tasks and Connectors Series AUTHOR: NAYAN PATEL | SR. ETL SSIS ARCHITECT [email protected]

Uploading Files using REST API in SSIS

Embed Size (px)

Citation preview

Page 1: Uploading Files using REST API in SSIS

REST API File Upload using SSIS (Multi Part POST)

Reach for the Clouds, Inc.Next Generation SSIS Tasks and Connectors Series

AUTHOR: NAYAN PATEL | SR. ETL SSIS ARCHITECTN PAT E L @ R FTC LO U D S . C O M

Page 2: Uploading Files using REST API in SSIS

Content

• Introduction• How to do REST API File Upload using SSIS• Understanding Multipart Upload / File Upload• Conclusion• Keywords

Page 3: Uploading Files using REST API in SSIS

Introduction • In this post you will learn how to use the SSIS REST API Task to

perform REST API File Upload (i.e. RESTful file upload) to web server. Typically to access REST API you may have to use programming language but in this post we will use visual drag and drop approach.• File upload using HTTP/HTTPS protocol sometimes also known

as multipart/form-data POST. Many REST APIs support for file upload using HTTP methods such as POST or PUT.• Real-world scenarios:• Uploading Image/media to Twitter or Facebook• Import Marketo Lead files using REST API

Page 4: Uploading Files using REST API in SSIS

How to do REST API File Upload using SSIS

1.DOWNLOAD AND INSTALL SSIS REST API TASK

2.FROM TOOLBOX OF THE SSIS DESIGNER DRAG ZS SSIS REST API TASK

3.DOUBLE CLICK REST API TASK TO CONFIGURE IT

4.SPECIFY URL WHERE YOU WISH TO POST FILE/OTHER DATA

EXAMPLE : HTTP:/ /MYSERVER/API/V1/UPLOADDATA

5.SELECT HTTP REQUEST METHOD AS POST ( MAKE SURE YOUR AP I DOCUMENTATION FOR TH IS . SOMET IMES ITS PUT RATHER

POST)

6.CHECK FILE UPLOAD OPTION NEXT TO BODY TEXT BOX !!!!THIS IS THE MOST IMPORTANT SO DON’T FORGET !!!!

Page 5: Uploading Files using REST API in SSIS

How to do REST API File Upload using SSIS

7.NOW CLICK EDIT BUTTON NEXT TO BODY TEXT BOX. YOU MAY SPECIFY FILES / FIELDS YOU WISH TO SUBMIT ALONG WITH YOUR REQUEST IN THE FOLLOWING FORMAT.  ITS KEY/VALUE PAIR SEPARATED BY NEW LINE. EACH KEY/VALUE PAIR HAS TO BE SEPARATED WITH EQUAL SIGN (=).NOTE: ANY VALUE STARTING WITH AT SYMBOL (@) IS TREATED AS FILE PATH. IF YOU DON’T WANT THAT BEHAVIOR THEN USE SLASH ALSO KNOWN AS ESCAPE SEQUENCE (E.G. SOMEFIELD3STARTSWITHAT=\@MYTWITTERHANDLE). YOU CAN DO SAME THING TO ADD NEW LINE CHARACTER IN YOUR VALUE. USE \R\N FOR NEW LINE. USE \T FOR TABALSO NOTICE NAME OF FIELD CAN BE ANYTHING UNLESS YOUR API EXPECTS IN CERTAIN WAY. EXAMPLE: TWITTER IMAGE UPLOAD API MAY EXPECT YOUR IMAGE FILE AS MEDIA FIELD IN THAT CASE YOU WOULD WRITE ….  MEDIA=@C:\DATA\SOMEIMAGE.PNG …. RATHER THAN FILE1=@C:\DATA\SOMEIMAGE.PNGFile1=@c:\data\somedata.txt

File2=@c:\data\someimage.pngSomefield1=abcdefSomefield2=123456Extrafield3WithNewLine=This is line1\r\nThis is line2 with tab\t and more \t tabSomefield3StartsWithAt=\@MyTwitterHandle

CL ICK OK TO S AVE ABOVE

Page 6: Uploading Files using REST API in SSIS

How to do REST API File Upload using SSIS

8. NOW CLICK TEST BUTTON ON UI TO MAKE SURE EVERYTHING IS LOOKING GOOD.

UPLOADING F I LES US ING REST AP I IN SS IS ( REST AP I F I LE UPLOAD US ING MULT IPART /FORM-DATA POST)

Page 7: Uploading Files using REST API in SSIS

Understanding Multipart Upload / File Upload

NOW LETS TAKE A LOOK HOW DOES IT LOOK LIKE IN FIDDLER WHEN ACTUAL MULTIPART POST REQUEST IS MADE FOR REST API FILE UPLOAD. NOTICE EACH FIELD INCLUDED IN OUT HTTP POST REQUEST IS SEPARATED BY SOME RANDOM BOUNDARY. THIS BOUNDARY IS AUTOMATICALLY GENERATED BY REST API TASK. IF YOU POST IMAGE THEN YOU WILL SEE BINARY DATA RATHER THAN TEXT FOR FILE CONTENT.

SEE IMAGE ON NEXT SLIDE

Page 8: Uploading Files using REST API in SSIS

HTTTP MULTIPART POST – FILE UPLOAD EXAMPLE – CHECK FIDDLER REQUEST

Page 9: Uploading Files using REST API in SSIS

Conclusion

IF YOU HAVE NEED TO PERFORM REST API FILE UPLOAD / REST API INTEGRATION WITHOUT LEARNING COMPLEX APIS AND PROGRAMMING LANGUAGES (E.G. PYTHON, JAVA, C#) THEN SSIS REST API TASK PROVIDES PERFECT WAY TO DO REST API INTEGRATION WITH YOUR EXISTING SYSTEM. YOU CAN UNCOVER ENDLESS POSSIBILITIES WITH DRAG AND DROP APPROACH WHICH IS NOT ONLY SIMPLE TO USE BUT INCLUDES MANY OPTIONS FOR COMPLEX SCENARIOS TOO.

Page 10: Uploading Files using REST API in SSIS

Keywords

HOW TO PERFORM REST API FILE UPLOAD | HOW TO DO RESTFUL FILE UPLOAD IN C# | HOW TO DO MULTIPART FILE UPLOAD WITHOUT CURL | HOW TO UPLOAD MULTIPLE FILES USING HTTP MULTI PART FORMS | REST CLIENT UPLOAD FILE | C# REST API UPLOAD FILE | REST API UPLOAD IMAGE | REST API UPLOAD FILE