{"id":93,"date":"2015-10-22T16:09:00","date_gmt":"2015-10-22T16:09:00","guid":{"rendered":"http:\/\/zappysys.com\/blog\/?p=93"},"modified":"2019-12-07T09:04:35","modified_gmt":"2019-12-07T09:04:35","slug":"read-twitter-data-in-ssis-using-rest-api-task-json-source-oauth2","status":"publish","type":"post","link":"https:\/\/zappysys.com\/blog\/read-twitter-data-in-ssis-using-rest-api-task-json-source-oauth2\/","title":{"rendered":"How to read Twitter data in SSIS using REST API Call"},"content":{"rendered":"<h2>Introduction<\/h2>\n<p><a href=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2015\/10\/twitter-api-integration.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-1660\" src=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2015\/10\/twitter-api-integration.png\" alt=\"\" width=\"180\" height=\"146\" \/><\/a>In this article you will <em>how to Read Twitter data in SSIS<\/em> using <a href=\"\/\/zappysys.com\/products\/ssis-powerpack\/ssis-json-file-source\/\">SSIS JSON Source<\/a> and <a href=\"\/\/zappysys.com\/products\/ssis-powerpack\/ssis-rest-api-web-service-task\/\">SSIS REST API Web Service Task<\/a>. You will also learn about latest OAuth 2.0 Protocol to simplify REST API access.<\/p>\n<h2>Twitter REST API Authentication<\/h2>\n<p>In order to fetch any data from twitter using OAuth REST API calls you have to obtain two Keys (Consumer Key [Like UserID] and Consumer Secret [Like Password]). There are mainly two methods to read data from Twitter. Using <strong>Application-user authentication<\/strong> and <strong>Application Only authentication<\/strong>. Use correct method depending what type of information you want to pull from twitter. Most common method is <strong>Application-user authentication<\/strong> . If you want to read more about other methods then <a href=\"https:\/\/developer.twitter.com\/en\/docs\/basics\/authentication\/overview\" target=\"_blank\" rel=\"noopener\">click here<\/a><\/p>\n<h2>Method\u00a01 &#8211;\u00a0Read Twitter data in SSIS using Application-user authentication<\/h2>\n<p>In this method you will need twitter user account to connect Twitter API. Once first time authorization is done you don&#8217;t have to re-authenticate. Certain type of API calls only allowed by this method (such as POST new tweet using API). For any API call in Twitter very first step is create OAuth App (i.e. Register new App in Twitter developer portal).<\/p>\n<h3>Using Default OAuth App Created by ZappySys<\/h3>\n<p>To make your life easy ZappySys provides default App for certain OAuth providers (e.g. Google, Twitter). If you decide to create your own app for whatever reason then check next section on how to register twitter OAuth Application. See below screenshot how to use Twitter OAuth connection using Default App. Once you click Generate Token it will prompt you to login using Twitter account and then you can grant permission.<\/p>\n<p><strong>Step-By-Step<\/strong><\/p>\n<ol>\n<li>Download and Install <a href=\"\/\/zappysys.com\/products\/ssis-powerpack\/\" target=\"_blank\" rel=\"noopener\">SSIS PowerPack FREE Trial<\/a> from <a href=\"\/\/zappysys.com\/products\/ssis-powerpack\/download\/\" target=\"_blank\" rel=\"noopener\">this link<\/a><\/li>\n<li>Create new SSIS Project and add new package.<\/li>\n<li>Open Package. Go to control flow. Drag and drop Data Flow task from SSIS Toolbox\n<div id=\"attachment_8028\" style=\"width: 470px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2019\/02\/drag-and-drop-data-flow-task.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-8028\" class=\"size-full wp-image-8028\" src=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2019\/02\/drag-and-drop-data-flow-task.png\" alt=\"\" width=\"460\" height=\"155\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2019\/02\/drag-and-drop-data-flow-task.png 460w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2019\/02\/drag-and-drop-data-flow-task-300x101.png 300w\" sizes=\"(max-width: 460px) 100vw, 460px\" \/><\/a><p id=\"caption-attachment-8028\" class=\"wp-caption-text\">Dragging and dropping Data Flow Task into Control Flow<\/p><\/div><\/li>\n<li>Go to Data flow designer.Drag and drop ZS\u00a0JSON Source Component and double on it to configure it.\n<div id=\"attachment_3766\" style=\"width: 604px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2018\/05\/ssis-json-source-for-getting-basic-profile-from-linkedin.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-3766\" class=\"size-full wp-image-3766\" src=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2018\/05\/ssis-json-source-for-getting-basic-profile-from-linkedin.png\" alt=\"Drag and Drop JSON Source Component\" width=\"594\" height=\"268\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2018\/05\/ssis-json-source-for-getting-basic-profile-from-linkedin.png 594w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2018\/05\/ssis-json-source-for-getting-basic-profile-from-linkedin-300x135.png 300w\" sizes=\"(max-width: 594px) 100vw, 594px\" \/><\/a><p id=\"caption-attachment-3766\" class=\"wp-caption-text\">Drag and Drop JSON Source Component<\/p><\/div><\/li>\n<li>Enter any twitter API URL you want to call such as below\n<pre class=\"lang:default highlight:0 decode:true\">https:\/\/api.twitter.com\/1.1\/statuses\/user_timeline.json?screen_name=zappysys&amp;count=4<\/pre>\n<\/li>\n<li>Now check use credentials option<\/li>\n<li>Select new ZS-OAuth connection from dropdown<\/li>\n<li>When new connection dialogbox pops up select Twitter from providers dropdown. Select Default App option for now.<\/li>\n<li>Click Generate Token. It may ask you to login using your Twitter account credentials. If prompted click Approve.<\/li>\n<li>If twitter OAuth grant approved then you will see Access Token and Access Token Secret both populated<\/li>\n<li>Click Test Connection and if it works then click OK to close connection<\/li>\n<li>On JSON Source you can now click Preview to see data from Twitter<\/li>\n<li>You can optionally specify Filter expression [Click Select Filter button]\u00a0to select result from specific JSON Node. For example if you want to select all Hashtags used inside each Tweet then select Filter like <strong>$.entities.hashtags[*]<\/strong><\/li>\n<li>Click OK to close the UI<\/li>\n<li>Drag ZS Trash Destination from Toolbox (Or you can use OLEDB Destination if you want to load inside SQL Server)<\/li>\n<li>Connect JSON Source to ZS Trash Destination<\/li>\n<li>Execute SSIS package<\/li>\n<\/ol>\n<div id=\"attachment_652\" style=\"width: 710px\" class=\"wp-caption alignnone\"><a href=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2015\/10\/fetch-twitter-data-rest-api-call-ssis-oauth-connection.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-652\" class=\"wp-image-652\" src=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2015\/10\/fetch-twitter-data-rest-api-call-ssis-oauth-connection.png\" alt=\"Call Twitter REST API in SSIS - using OAuth Connection (Default App)\" width=\"700\" height=\"592\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2015\/10\/fetch-twitter-data-rest-api-call-ssis-oauth-connection.png 867w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2015\/10\/fetch-twitter-data-rest-api-call-ssis-oauth-connection-300x254.png 300w\" sizes=\"(max-width: 700px) 100vw, 700px\" \/><\/a><p id=\"caption-attachment-652\" class=\"wp-caption-text\">Call Twitter REST API in SSIS &#8211; using OAuth Connection (Default App)<\/p><\/div>\n<h3>Using\u00a0Custom OAuth App Created by you<\/h3>\n<p>For some reason if you dont want to use Default Twitter App then you can register Custom App. It requires few extra steps listed in next section but it wont take more than few minutes. In Custom App option you have to specify ClientId and Client Secret (in above screenshot). Once you click Generate Token it will prompt you to login using Twitter account and then you can grant permission.<\/p>\n<h3>Register\/Create OAuth Application\u00a0for twitter API Access<\/h3>\n<p>Now lets look at how to register OAuth Application for Twitter API access.<\/p>\n<p>Goto <a href=\"https:\/\/apps.twitter.com\/app\/new\" target=\"_blank\" rel=\"noopener\">https:\/\/apps.twitter.com\/app\/new<\/a> and create new app by providing necessary information. Don&#8217;t get confused by calling it App, its just way in twitter to create multiple API Access Keys so you can grant different level of access to different users. Once app is created you will be taken to page where your Consumer Key and Secret Key will be listed.<\/p>\n<div id=\"attachment_103\" style=\"width: 502px\" class=\"wp-caption alignnone\"><a href=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2015\/10\/create-twitter-app-access-new-consumer-key-secreat-key.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-103\" class=\"size-full wp-image-103\" src=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2015\/10\/create-twitter-app-access-new-consumer-key-secreat-key.png\" alt=\"Create Twitter Application - REST API Access for Developer\" width=\"492\" height=\"643\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2015\/10\/create-twitter-app-access-new-consumer-key-secreat-key.png 492w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2015\/10\/create-twitter-app-access-new-consumer-key-secreat-key-230x300.png 230w\" sizes=\"(max-width: 492px) 100vw, 492px\" \/><\/a><p id=\"caption-attachment-103\" class=\"wp-caption-text\">Create Twitter Application &#8211; REST API Access for Developer<\/p><\/div>\n<h3>Obtaining Consumer Key and Consumer Secret from Twitter<\/h3>\n<p>Once app is created you can go to <b>Keys and Access Tokens<\/b> tab. Here you will find Consumer Key and Consumer Secret.<br \/>\nConsumer Key can be Public but Consumer Secret must not be shared (think it like a password).<\/p>\n<div id=\"attachment_102\" style=\"width: 661px\" class=\"wp-caption alignnone\"><a href=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2015\/10\/twitter-api-consumer-key-and-access-key.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-102\" class=\"size-full wp-image-102\" src=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2015\/10\/twitter-api-consumer-key-and-access-key.png\" alt=\"Obtain Twitter API Consumer Key and Consumer Secret - REST API Access for Developer\" width=\"651\" height=\"465\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2015\/10\/twitter-api-consumer-key-and-access-key.png 651w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2015\/10\/twitter-api-consumer-key-and-access-key-300x214.png 300w\" sizes=\"(max-width: 651px) 100vw, 651px\" \/><\/a><p id=\"caption-attachment-102\" class=\"wp-caption-text\">Obtain Twitter API Consumer Key and Consumer Secret &#8211; REST API Access for Developer<\/p><\/div>\n<h2>Method\u00a02 &#8211; Read Twitter data in SSIS\u00a0&#8211; Application-only authentication<\/h2>\n<p>For some reason if you don&#8217;t want to use Twitter user account to access data (e.g. Giving access to consultant so he can access you company Twitter Account via API). In this scenario you have to use Application Only method. In this method you don&#8217;t authorize application using Login form.<\/p>\n<p>Here is our basic flow to access twitter data.<\/p>\n<ol>\n<li>Get Bearer Access Token by calling https:\/\/api.twitter.com\/oauth2\/token service (Use POST method and Pass BASE64 encoded ConsumerKey and Consumer Secret)<\/li>\n<li>Call any twitter service by passing Bearer AccessToken we retrieved in previous step.<strong>NOTE:<\/strong> Any access to twitter service is over HTTPS so automatically your tokens passed along request is encrypted before sending over wire unless someone know how to hack SSL \ud83d\ude42<\/li>\n<\/ol>\n<h3>Application Only Authentication using REST API task &#8211; Get Access Token<\/h3>\n<p>Once we create SSIS Package &#8211; First step to access any twitter data will be get Access Token. As you can see from below screenshot we have called https:\/\/api.twitter.com\/oauth2\/token service URL with POST method. Notice how we have supplied POST data and 2 headers. Authorization header contains BASE64 encoded value of <strong>YourConsumerKey:YourConsumerSecret<\/strong><\/p>\n<div id=\"attachment_107\" style=\"width: 841px\" class=\"wp-caption alignnone\"><a href=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2015\/10\/ssis-twitter-rest-api-call-get-token.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-107\" class=\"size-full wp-image-107\" src=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2015\/10\/ssis-twitter-rest-api-call-get-token.png\" alt=\"SSIS Twitter REST API Get Token\" width=\"831\" height=\"465\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2015\/10\/ssis-twitter-rest-api-call-get-token.png 831w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2015\/10\/ssis-twitter-rest-api-call-get-token-300x168.png 300w\" sizes=\"(max-width: 831px) 100vw, 831px\" \/><\/a><p id=\"caption-attachment-107\" class=\"wp-caption-text\">SSIS Twitter REST API Get Token<\/p><\/div>\n<h3>Fetch data from Twitter using JSON Source &#8211; Deformalize nested JSON<\/h3>\n<p>Once we have Authentication Token we are ready <b>pull twitter data<\/b> using JSON Source. Check below screenshot how we have supplied Token in Authorization Header. JSON Source can make your JSON look like normal table (It also de-normalize nested JSON into flat dataset. If you want to extract subset of JSON then simply specify JSON Path expression e.g. $.data.users[*]\n<div id=\"attachment_108\" style=\"width: 852px\" class=\"wp-caption alignnone\"><a href=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2015\/10\/read-twitter-data-in-ssis-json-source-rest-api.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-108\" class=\"size-full wp-image-108\" src=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2015\/10\/read-twitter-data-in-ssis-json-source-rest-api.png\" alt=\"Read JSON response of Twitter REST API in SSIS\" width=\"842\" height=\"520\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2015\/10\/read-twitter-data-in-ssis-json-source-rest-api.png 842w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2015\/10\/read-twitter-data-in-ssis-json-source-rest-api-300x185.png 300w\" sizes=\"(max-width: 842px) 100vw, 842px\" \/><\/a><p id=\"caption-attachment-108\" class=\"wp-caption-text\">Read JSON response of Twitter REST API in SSIS<\/p><\/div>\n<h3>Load Twitter JSON data to SQL Server<\/h3>\n<p>You can easily connect your <a href=\"\/\/zappysys.com\/products\/ssis-powerpack\/ssis-json-file-source\/\">SSIS JSON Source<\/a> to OLEDB Destination if you want to load Twitter Data to some RDBMS such as SQL Server, MySQL.<\/p>\n<h2>Handling paging of large REST API result set with twitter data &#8211; looping\/cursoring<\/h2>\n<p>Most of REST API limit total data sent in single response. So if you wish to get all records then you have to loop through multiple results. Twitter provides looping mechanism using Cursor<a href=\"https:\/\/dev.twitter.com\/overview\/api\/cursoring\" target=\"_blank\" rel=\"noopener\">Click here to read more<\/a><\/p>\n<p>In our case <a href=\"\/\/zappysys.com\/products\/ssis-powerpack\/ssis-json-file-source\/\">SSIS JSON Source<\/a> Supports Paging very well so we are covered. To loop through multiple result sets of twitter data simply configure following 3 properties. See below screenshot.<\/p>\n<div id=\"attachment_100\" style=\"width: 514px\" class=\"wp-caption alignnone\"><a href=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2015\/10\/loop-through-twitter-rest-api-result-cursor-paging.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-100\" class=\"size-full wp-image-100\" src=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2015\/10\/loop-through-twitter-rest-api-result-cursor-paging.png\" alt=\"Twitter REST API - Paging Example -Loop through resultset using cursor\" width=\"504\" height=\"440\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2015\/10\/loop-through-twitter-rest-api-result-cursor-paging.png 504w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2015\/10\/loop-through-twitter-rest-api-result-cursor-paging-300x262.png 300w\" sizes=\"(max-width: 504px) 100vw, 504px\" \/><\/a><p id=\"caption-attachment-100\" class=\"wp-caption-text\">Twitter REST API &#8211; Paging Example -Loop through resultset using cursor<\/p><\/div>\n<h2>Word of caution about too many requests<\/h2>\n<p>Twitter does not allow you request too much data too quickly so be careful how many requests you make :). Check their official page on twitter Rate Limit for REST API. You can add delay after each request if you doing pagination. Go to <strong>Throttling tab<\/strong> of JSON\/XML Source. You can change setting there based on API restriction. For example if API allows only\u00a030 requests per minute then adding 2 seconds delay will make sure you wont exceed\u00a030 requests in 1 minute.<\/p>\n<p>To learn more about <a href=\"https:\/\/dev.twitter.com\/rest\/public\/rate-limits\" target=\"_blank\" rel=\"noopener\">rate limit of Twitter API check this table<\/a><\/p>\n<h2>Handling Twitter API Date Format (Parse\u00a0Twitter Date\/Time)<\/h2>\n<p>Twitter returns date in the following format e.g. Fri May 03 15:22:09 +0000 2013 to parse this to correct date\/time datatype you can use Date\/Time Handling Tab of JSON\/XML Source.<\/p>\n<p>Change Custom Date Format as below and preview Twitter data.<\/p>\n<div id=\"attachment_693\" style=\"width: 821px\" class=\"wp-caption alignnone\"><a href=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2015\/10\/parse-twitter-date-time-format.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-693\" class=\"size-full wp-image-693\" src=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2015\/10\/parse-twitter-date-time-format.png\" alt=\"Parsing Twitter API date\/time format\" width=\"811\" height=\"249\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2015\/10\/parse-twitter-date-time-format.png 811w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2015\/10\/parse-twitter-date-time-format-300x92.png 300w\" sizes=\"(max-width: 811px) 100vw, 811px\" \/><\/a><p id=\"caption-attachment-693\" class=\"wp-caption-text\">Parsing Twitter API date\/time format<\/p><\/div>\n<h2>Download related files<\/h2>\n<p>Below is sample SSIS package<br \/>\n<a href=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2015\/11\/TwitterFetchDemo_2012.zip\">Twitter Demo SSIS 2012<\/a><\/p>\n<h2>Conclusion<\/h2>\n<p>So you have now seen how easy it is to access twitter data with OAuth 2.0 using <a href=\"\/\/zappysys.com\/products\/ssis-powerpack\/ssis-json-file-source\/\">SSIS JSON Source<\/a> and <a href=\"\/\/zappysys.com\/products\/ssis-powerpack\/ssis-rest-api-web-service-task\/\">SSIS REST API Web Service Task<\/a>. We have also seen how to loop through large resultset using inbuilt Paging support of JSON Source.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Introduction In this article you will how to Read Twitter data in SSIS using SSIS JSON Source and SSIS REST API Web Service Task. You will also learn about latest OAuth 2.0 Protocol to simplify REST API access. Twitter REST API Authentication In order to fetch any data from twitter using OAuth REST API calls [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":1660,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[225,10],"tags":[215,6,13,24,60,25,101,3,4,23],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v22.3 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\r\n<title>How to read Twitter data in SSIS using REST API Call | ZappySys Blog<\/title>\r\n<meta name=\"description\" content=\"Learn how to read twitter data in SSIS by calling Twitter REST API. Also learn Application-user authentication and Application-only authentication for API.\" \/>\r\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\r\n<link rel=\"canonical\" href=\"https:\/\/zappysys.com\/blog\/read-twitter-data-in-ssis-using-rest-api-task-json-source-oauth2\/\" \/>\r\n<meta property=\"og:locale\" content=\"en_US\" \/>\r\n<meta property=\"og:type\" content=\"article\" \/>\r\n<meta property=\"og:title\" content=\"How to read Twitter data in SSIS using REST API Call | ZappySys Blog\" \/>\r\n<meta property=\"og:description\" content=\"Learn how to read twitter data in SSIS by calling Twitter REST API. Also learn Application-user authentication and Application-only authentication for API.\" \/>\r\n<meta property=\"og:url\" content=\"https:\/\/zappysys.com\/blog\/read-twitter-data-in-ssis-using-rest-api-task-json-source-oauth2\/\" \/>\r\n<meta property=\"og:site_name\" content=\"ZappySys Blog\" \/>\r\n<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/ZappySys\/\" \/>\r\n<meta property=\"article:published_time\" content=\"2015-10-22T16:09:00+00:00\" \/>\r\n<meta property=\"article:modified_time\" content=\"2019-12-07T09:04:35+00:00\" \/>\r\n<meta property=\"og:image\" content=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2015\/10\/twitter-api-integration.png\" \/>\r\n\t<meta property=\"og:image:width\" content=\"249\" \/>\r\n\t<meta property=\"og:image:height\" content=\"202\" \/>\r\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\r\n<meta name=\"author\" content=\"ZappySys\" \/>\r\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\r\n<meta name=\"twitter:creator\" content=\"@https:\/\/twitter.com\/zappysys\/\" \/>\r\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"ZappySys\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutes\" \/>\r\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/zappysys.com\/blog\/read-twitter-data-in-ssis-using-rest-api-task-json-source-oauth2\/\",\"url\":\"https:\/\/zappysys.com\/blog\/read-twitter-data-in-ssis-using-rest-api-task-json-source-oauth2\/\",\"name\":\"How to read Twitter data in SSIS using REST API Call | ZappySys Blog\",\"isPartOf\":{\"@id\":\"https:\/\/zappysys.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/zappysys.com\/blog\/read-twitter-data-in-ssis-using-rest-api-task-json-source-oauth2\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/zappysys.com\/blog\/read-twitter-data-in-ssis-using-rest-api-task-json-source-oauth2\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2015\/10\/twitter-api-integration.png\",\"datePublished\":\"2015-10-22T16:09:00+00:00\",\"dateModified\":\"2019-12-07T09:04:35+00:00\",\"author\":{\"@id\":\"https:\/\/zappysys.com\/blog\/#\/schema\/person\/2756c237457fbc95d82cb38962f81f82\"},\"description\":\"Learn how to read twitter data in SSIS by calling Twitter REST API. Also learn Application-user authentication and Application-only authentication for API.\",\"breadcrumb\":{\"@id\":\"https:\/\/zappysys.com\/blog\/read-twitter-data-in-ssis-using-rest-api-task-json-source-oauth2\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/zappysys.com\/blog\/read-twitter-data-in-ssis-using-rest-api-task-json-source-oauth2\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/zappysys.com\/blog\/read-twitter-data-in-ssis-using-rest-api-task-json-source-oauth2\/#primaryimage\",\"url\":\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2015\/10\/twitter-api-integration.png\",\"contentUrl\":\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2015\/10\/twitter-api-integration.png\",\"width\":249,\"height\":202},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/zappysys.com\/blog\/read-twitter-data-in-ssis-using-rest-api-task-json-source-oauth2\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/zappysys.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How to read Twitter data in SSIS using REST API Call\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/zappysys.com\/blog\/#website\",\"url\":\"https:\/\/zappysys.com\/blog\/\",\"name\":\"ZappySys Blog\",\"description\":\"SSIS \/ ODBC Drivers \/ API Connectors for JSON, XML, Azure, Amazon AWS, Salesforce, MongoDB and more\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/zappysys.com\/blog\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/zappysys.com\/blog\/#\/schema\/person\/2756c237457fbc95d82cb38962f81f82\",\"name\":\"ZappySys\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/zappysys.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/5c9be148088ba9b8af8e955c5f7c22b5?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/5c9be148088ba9b8af8e955c5f7c22b5?s=96&d=mm&r=g\",\"caption\":\"ZappySys\"},\"sameAs\":[\"http:\/\/www.zappysys.com\/\",\"https:\/\/www.facebook.com\/ZappySys\/\",\"https:\/\/twitter.com\/https:\/\/twitter.com\/zappysys\/\"],\"url\":\"https:\/\/zappysys.com\/blog\/author\/admin\/\"}]}<\/script>\r\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"How to read Twitter data in SSIS using REST API Call | ZappySys Blog","description":"Learn how to read twitter data in SSIS by calling Twitter REST API. Also learn Application-user authentication and Application-only authentication for API.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/zappysys.com\/blog\/read-twitter-data-in-ssis-using-rest-api-task-json-source-oauth2\/","og_locale":"en_US","og_type":"article","og_title":"How to read Twitter data in SSIS using REST API Call | ZappySys Blog","og_description":"Learn how to read twitter data in SSIS by calling Twitter REST API. Also learn Application-user authentication and Application-only authentication for API.","og_url":"https:\/\/zappysys.com\/blog\/read-twitter-data-in-ssis-using-rest-api-task-json-source-oauth2\/","og_site_name":"ZappySys Blog","article_author":"https:\/\/www.facebook.com\/ZappySys\/","article_published_time":"2015-10-22T16:09:00+00:00","article_modified_time":"2019-12-07T09:04:35+00:00","og_image":[{"width":249,"height":202,"url":"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2015\/10\/twitter-api-integration.png","type":"image\/png"}],"author":"ZappySys","twitter_card":"summary_large_image","twitter_creator":"@https:\/\/twitter.com\/zappysys\/","twitter_misc":{"Written by":"ZappySys","Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/zappysys.com\/blog\/read-twitter-data-in-ssis-using-rest-api-task-json-source-oauth2\/","url":"https:\/\/zappysys.com\/blog\/read-twitter-data-in-ssis-using-rest-api-task-json-source-oauth2\/","name":"How to read Twitter data in SSIS using REST API Call | ZappySys Blog","isPartOf":{"@id":"https:\/\/zappysys.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/zappysys.com\/blog\/read-twitter-data-in-ssis-using-rest-api-task-json-source-oauth2\/#primaryimage"},"image":{"@id":"https:\/\/zappysys.com\/blog\/read-twitter-data-in-ssis-using-rest-api-task-json-source-oauth2\/#primaryimage"},"thumbnailUrl":"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2015\/10\/twitter-api-integration.png","datePublished":"2015-10-22T16:09:00+00:00","dateModified":"2019-12-07T09:04:35+00:00","author":{"@id":"https:\/\/zappysys.com\/blog\/#\/schema\/person\/2756c237457fbc95d82cb38962f81f82"},"description":"Learn how to read twitter data in SSIS by calling Twitter REST API. Also learn Application-user authentication and Application-only authentication for API.","breadcrumb":{"@id":"https:\/\/zappysys.com\/blog\/read-twitter-data-in-ssis-using-rest-api-task-json-source-oauth2\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/zappysys.com\/blog\/read-twitter-data-in-ssis-using-rest-api-task-json-source-oauth2\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/zappysys.com\/blog\/read-twitter-data-in-ssis-using-rest-api-task-json-source-oauth2\/#primaryimage","url":"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2015\/10\/twitter-api-integration.png","contentUrl":"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2015\/10\/twitter-api-integration.png","width":249,"height":202},{"@type":"BreadcrumbList","@id":"https:\/\/zappysys.com\/blog\/read-twitter-data-in-ssis-using-rest-api-task-json-source-oauth2\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/zappysys.com\/blog\/"},{"@type":"ListItem","position":2,"name":"How to read Twitter data in SSIS using REST API Call"}]},{"@type":"WebSite","@id":"https:\/\/zappysys.com\/blog\/#website","url":"https:\/\/zappysys.com\/blog\/","name":"ZappySys Blog","description":"SSIS \/ ODBC Drivers \/ API Connectors for JSON, XML, Azure, Amazon AWS, Salesforce, MongoDB and more","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/zappysys.com\/blog\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/zappysys.com\/blog\/#\/schema\/person\/2756c237457fbc95d82cb38962f81f82","name":"ZappySys","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/zappysys.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/5c9be148088ba9b8af8e955c5f7c22b5?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/5c9be148088ba9b8af8e955c5f7c22b5?s=96&d=mm&r=g","caption":"ZappySys"},"sameAs":["http:\/\/www.zappysys.com\/","https:\/\/www.facebook.com\/ZappySys\/","https:\/\/twitter.com\/https:\/\/twitter.com\/zappysys\/"],"url":"https:\/\/zappysys.com\/blog\/author\/admin\/"}]}},"_links":{"self":[{"href":"https:\/\/zappysys.com\/blog\/wp-json\/wp\/v2\/posts\/93"}],"collection":[{"href":"https:\/\/zappysys.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/zappysys.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/zappysys.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/zappysys.com\/blog\/wp-json\/wp\/v2\/comments?post=93"}],"version-history":[{"count":16,"href":"https:\/\/zappysys.com\/blog\/wp-json\/wp\/v2\/posts\/93\/revisions"}],"predecessor-version":[{"id":8458,"href":"https:\/\/zappysys.com\/blog\/wp-json\/wp\/v2\/posts\/93\/revisions\/8458"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/zappysys.com\/blog\/wp-json\/wp\/v2\/media\/1660"}],"wp:attachment":[{"href":"https:\/\/zappysys.com\/blog\/wp-json\/wp\/v2\/media?parent=93"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/zappysys.com\/blog\/wp-json\/wp\/v2\/categories?post=93"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/zappysys.com\/blog\/wp-json\/wp\/v2\/tags?post=93"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}