{"id":9624,"date":"2022-04-28T18:38:33","date_gmt":"2022-04-28T18:38:33","guid":{"rendered":"https:\/\/zappysys.com\/blog\/?p=9624"},"modified":"2025-03-19T12:56:14","modified_gmt":"2025-03-19T12:56:14","slug":"read-write-manageengine-servicedesk-data-ssis-zoho-api","status":"publish","type":"post","link":"https:\/\/zappysys.com\/blog\/read-write-manageengine-servicedesk-data-ssis-zoho-api\/","title":{"rendered":"Read\/Write ManageEngine ServiceDesk Data in SSIS (Zoho API)"},"content":{"rendered":"<h2>Introduction<\/h2>\n<div class=\"su-note\"  style=\"border-color:#e5de9d;border-radius:3px;-moz-border-radius:3px;-webkit-border-radius:3px;\"><div class=\"su-note-inner su-u-clearfix su-u-trim\" style=\"background-color:#FFF8B7;border-color:#ffffff;color:#333333;border-radius:3px;-moz-border-radius:3px;-webkit-border-radius:3px;\"><strong>UPDATE:<\/strong>\u00a0ZappySys has released a brand new <a href=\"https:\/\/zappysys.com\/api\/integration-hub\/zoho-managedengine-service-desk-plus-connector\/\">API Connector for Zoho \/ ManageEngine ServiceDesk Pro OnDemand (Cloud Version)<\/a>\u00a0which makes it much simpler to\u00a0<strong>Read\/Write ServiceDesk Data in SSIS<\/strong> compared to the steps listed in this article. You can still use steps from this article but if you are new to API or want to avoid learning curve with API then use newer approach.<\/p>\n<p>Please visit <a href=\"https:\/\/zappysys.com\/api\/integration-hub\/\">this page to see all<\/a>\u00a0Pre-Configured ready to use API connectors which you can use in <a href=\"https:\/\/zappysys.com\/products\/ssis-powerpack\/ssis-api-source\/\">SSIS API Source<\/a> \/ <a href=\"https:\/\/zappysys.com\/products\/ssis-powerpack\/ssis-api-destination\/\">SSIS API Destination<\/a> OR\u00a0<a href=\"https:\/\/zappysys.com\/products\/odbc-powerpack\/odbc-api-driver\/\">API ODBC Driver<\/a> (for non-SSIS Apps such as Excel, Power BI, Informatica).<\/p>\n<\/div><\/div>\n<p>In this post, you will learn how to read \/ write ManageEngine ServiceDesk data in SSIS (Drag and drop approach without any coding).\u00a0 We will use\u00a0<a href=\"https:\/\/zappysys.com\/products\/ssis-powerpack\/ssis-json-file-source\/\" target=\"_blank\" rel=\"noopener\">SSIS JSON\/ REST API Source<\/a>\u00a0to extract data from Servicedesk API and use\u00a0<a href=\"https:\/\/zappysys.com\/products\/ssis-powerpack\/ssis-web-api-destination-connector\/\" target=\"_blank\" rel=\"noopener\">SSIS Web API Destination<\/a>\u00a0to write data to Zoho.<\/p>\n<p>We will look at step-by-step instructions to read ServiceDesk\u00a0 data (e.g. Request, Problems, Contacts) and load into SQL Server Database Table.<\/p>\n<div class=\"content_block\" id=\"custom_post_widget-2523\"><h2><span id=\"Prerequisites\">Prerequisites<\/span><\/h2>\r\nBefore we perform the steps listed in this article, you will need to make sure the following prerequisites are met:\r\n<ol style=\"margin-left: 1.5em;\">\r\n \t<li><abbr title=\"SQL Server Integration Services\">SSIS<\/abbr> designer installed.\u00a0Sometimes it is referred to as <abbr title=\"Business Intelligence Development Studio\">BIDS<\/abbr> or <abbr title=\"SQL Server Data Tools\">SSDT<\/abbr> (<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/ssdt\/download-sql-server-data-tools-ssdt\" target=\"_blank\" rel=\"noopener\">download it from the Microsoft site<\/a>).<\/li>\r\n \t<li>Basic knowledge of SSIS package\u00a0development using\u00a0<em>Microsoft SQL Server Integration Services<\/em>.<\/li>\r\n \t<li>Make sure\u00a0<span style=\"text-decoration: underline;\"><a href=\"https:\/\/zappysys.com\/products\/ssis-powerpack\/\" target=\"_blank\" rel=\"noopener\">ZappySys SSIS PowerPack<\/a><\/span>\u00a0is installed (<a href=\"https:\/\/zappysys.com\/products\/ssis-powerpack\/download\/\" target=\"_blank\" rel=\"noopener\">download it<\/a>, if you haven't already).<\/li>\r\n \t<li>(<em>Optional step<\/em>)<em>.<\/em>\u00a0<a href=\"https:\/\/zappysys.zendesk.com\/hc\/en-us\/articles\/360035974593\" target=\"_blank\" rel=\"noopener\">Read this article<\/a>, if you are planning to deploy packages to a server and schedule their execution later.<\/li>\r\n<\/ol><\/div>\n<h2>Authentication ServiceDesk REST API in SSIS (Use OAuth 2.0)<\/h2>\n<p>Very first step to call ServiceDesk API is you need to register OAuth App in Zoho Portal. Don&#8217;t get confused if you see Zoho Portal for ServiceDesk a Product from ManageEngine is in fact Zoho subsidiary (in other words Zoho is the parent company). ServiceDesk has On-Premises version too but this article is only about Cloud version.<\/p>\n<h3>Register Zoho OAuth App and get ClientID\/ Secret (*** MUST READ ***)<\/h3>\n<p><a href=\"https:\/\/zappysys.com\/blog\/register-oauth-app-zoho-api\/\" target=\"_blank\" rel=\"noopener\">Check this article<\/a> to register your OAuth App and obtain Client ID\u00a0 \/Client Secret<\/p>\n<h3>Create ServiceDesk API Connection in SSIS<\/h3>\n<p>Once you create Zoho OAuth App now its time to call some Zoho API. Let&#8217;s create the OAuth Connection first. In the next section we will see how to load data in SQL Server.<\/p>\n<ol>\n<li>Right click on Connection Panel and choose Choose &#8220;New Connection..&#8221;. Select <strong>ZS-OAUTH<\/strong> type\n<div id=\"attachment_1569\" style=\"width: 687px\" class=\"wp-caption alignnone\"><a href=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/07\/ssis-oauth-create-new-connection.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-1569\" class=\"size-full wp-image-1569\" src=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/07\/ssis-oauth-create-new-connection.png\" alt=\"Create new SSIS OAuth API Connection Manager\" width=\"677\" height=\"220\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/07\/ssis-oauth-create-new-connection.png 677w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/07\/ssis-oauth-create-new-connection-300x97.png 300w\" sizes=\"(max-width: 677px) 100vw, 677px\" \/><\/a><p id=\"caption-attachment-1569\" class=\"wp-caption-text\">Create new SSIS OAuth API Connection Manager<\/p><\/div><\/li>\n<li>Configure your OAuth connection General Tab as below<\/li>\n<li>OAuth Provider: <strong>Custom<\/strong><\/li>\n<li>OAuth Version: <strong>OAuth2<\/strong><\/li>\n<li><strong>Client Id<\/strong> , <strong>Client Secret <\/strong><\/li>\n<li>Enter One Scope Per Line (For more info on scope <a href=\"https:\/\/www.manageengine.com\/products\/service-desk\/sdpod-v3-api\/getting-started\/oauth-2.0.html#scopes\" target=\"_blank\" rel=\"noopener\">read here<\/a>) . For write you can change READ to WRITE or use ALL as per the help link.\n<pre class=\"lang:default decode:true\">SDPOnDemand.requests.READ<\/pre>\n<\/li>\n<li>Auth URL :\u00a0<strong>https:\/\/accounts.zoho.com\/oauth\/v2\/auth<\/strong><\/li>\n<li>Token URL:\u00a0\u00a0<strong><strong>https:\/\/accounts.zoho.com\/oauth\/v2\/token<\/strong><\/strong><a href=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2022\/04\/zoho-api-configure-oauth-token-url-scopes.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-9617\" src=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2022\/04\/zoho-api-configure-oauth-token-url-scopes.png\" alt=\"\" width=\"577\" height=\"328\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2022\/04\/zoho-api-configure-oauth-token-url-scopes.png 577w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2022\/04\/zoho-api-configure-oauth-token-url-scopes-300x171.png 300w\" sizes=\"(max-width: 577px) 100vw, 577px\" \/><\/a><\/li>\n<li>Configure Advanced tab as below<\/li>\n<li>Enter Callback URL :\u00a0<strong>https:\/\/zappysys.com\/oauth<\/strong><\/li>\n<li>Enter Extra Attribute for \/Auth :\u00a0<strong>access_type=offline&amp;prompt=consent<\/strong><br \/>\nThis is needed to obtain refresh_token (if you ommit this then only access_token returned which cannot be renewed once expired after 1hr)<\/p>\n<div class=\"mceTemp\"><\/div>\n<p><a href=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2022\/04\/zoho-api-oauth-redirect-callback-url.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-9618\" src=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2022\/04\/zoho-api-oauth-redirect-callback-url.png\" alt=\"\" width=\"551\" height=\"320\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2022\/04\/zoho-api-oauth-redirect-callback-url.png 551w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2022\/04\/zoho-api-oauth-redirect-callback-url-300x174.png 300w\" sizes=\"(max-width: 551px) 100vw, 551px\" \/><\/a><\/li>\n<li>Now go back to general tab and <strong>Click Generate Token<\/strong>. Close the Popup and use Full browser instead if you see prompt.<\/li>\n<li>Click OK to save the connection UI<\/li>\n<\/ol>\n<h2>Read data from ServiceDesk API in SSIS JSON Source<\/h2>\n<p>In this section we will learn how to read data from ServiceDesk using SSIS JSON Source. We will use OAuth connection created in earlier section.<\/p>\n<p>Now lets look at step by step example of reading ManageEngine ServiceDesk data using SSIS (e.g. Requests).<\/p>\n<p>ManageEngine provides JSON API for read action so we will Use <a href=\"https:\/\/zappysys.com\/products\/ssis-powerpack\/ssis-json-file-source\/\" target=\"_blank\" rel=\"noopener\">SSIS JSON Source<\/a> for this purpose.<\/p>\n<h3>Configure JSON Source<\/h3>\n<p>So below steps shows example of reading from ManageEngine Requests API<\/p>\n<ol>\n<li>Open SSIS Package<\/li>\n<li>Drag data flow task from Control flow SSIS Toolbox\n<div style=\"width: 470px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full\" src=\"https:\/\/zappysys.com\/onlinehelp\/ssis-powerpack\/scr\/images\/drag-and-drop-data-flow-task.png\" alt=\"Drag data flow from SSIS Toolbox\" width=\"460\" height=\"155\" \/><p class=\"wp-caption-text\">Drag data flow from SSIS Toolbox<\/p><\/div><\/li>\n<li>Go to data flow and drag <a href=\"https:\/\/zappysys.com\/products\/ssis-powerpack\/ssis-json-file-source\/\" target=\"_blank\" rel=\"noopener\">ZS JSON Source<\/a> from SSIS Toolbox\n<div style=\"width: 551px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full\" src=\"https:\/\/zappysys.com\/onlinehelp\/ssis-powerpack\/scr\/images\/json-source\/ssis-json-source-adapter-drag.png\" alt=\"Drag and drop SSIS JSON Source (REST API or File)\" width=\"541\" height=\"144\" \/><p class=\"wp-caption-text\">Drag and drop SSIS JSON Source (REST API or File)<\/p><\/div><\/li>\n<li>Double click JSON Source to configure.\u00a0Enter URL as below. You can supply few more parameters.\u00a0<a href=\"https:\/\/www.zoho.com\/crm\/developer\/docs\/api\/get-records.html\" target=\"_blank\" rel=\"noopener\">Click Here to get full list of parameters and usage<\/a>. In below example we are reading records from Leads Module but you can replace Leads to something else (e.g. Accounts). Refer to above help link for available Modules.\n<pre class=\"lang:default highlight:0 decode:true\">https:\/\/sdpondemand.manageengine.com\/api\/v3\/requests<\/pre>\n<\/li>\n<li>Check Use Credentials. Select OAuth connection manager we created in the previous section.<\/li>\n<li>Add the Accept header in HTTP Headers.\n<pre class=\"lang:default highlight:0 decode:true\">Accept: application\/vnd.manageengine.sdp.v3+json<\/pre>\n<\/li>\n<li>Under filter options tab, enter <strong>Array Filter<\/strong> as\u00a0\u00a0<span class=\"lang:default highlight:0 decode:true crayon-inline\">$.requests[*]<\/span><\/li>\n<li>Now click Preview to see your data<\/li>\n<li>Click OK to save UI. In the next section, we will see how to setup pagination and incremental extract of Servicedesk records. After that we will see how to load data into SQL Server Table.<\/li>\n<\/ol>\n<div id=\"attachment_9626\" style=\"width: 961px\" class=\"wp-caption alignnone\"><a href=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2022\/04\/ssis-read-manageengine-servicedesk-data-api.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-9626\" class=\"size-full wp-image-9626\" src=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2022\/04\/ssis-read-manageengine-servicedesk-data-api.png\" alt=\"Read ManageEngine ServiceDesk Plus data in SSIS (Cloud Version) - Zoho API\" width=\"951\" height=\"909\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2022\/04\/ssis-read-manageengine-servicedesk-data-api.png 951w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2022\/04\/ssis-read-manageengine-servicedesk-data-api-300x287.png 300w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2022\/04\/ssis-read-manageengine-servicedesk-data-api-768x734.png 768w\" sizes=\"(max-width: 951px) 100vw, 951px\" \/><\/a><p id=\"caption-attachment-9626\" class=\"wp-caption-text\">Read ManageEngine ServiceDesk Plus data in SSIS (Cloud Version) &#8211; Zoho API<\/p><\/div>\n<h3>ServiceDesk API Pagination (Read all Requests)<\/h3>\n<p>Just like most API ServiceDesk also uses pagination. See below to learn how to configure pagination in JSON Source for ServiceDesk API.<\/p>\n<ol>\n<li>Double click JSON Source<\/li>\n<li>Change URL to include two things (Page size (how many rows per page and start row). Note &lt;%page%&gt; must match with\u00a0<strong>Page Num Indicator <\/strong>you going enter in the next screen\n<pre class=\"lang:default highlight:0 decode:true \">https:\/\/sdpondemand.manageengine.com\/api\/v3\/requests?input_data={\"list_info\":{\"row_count\":100,\"start_index\":&lt;%page%&gt;}}<\/pre>\n<\/li>\n<li>Go to <strong>Pagination<\/strong> Tab and select <strong>URL Path Mode<\/strong><\/li>\n<li>For <strong>Page Num Indicator<\/strong>\u00a0: Enter <span class=\"lang:default decode:true crayon-inline\">&lt;%page%&gt;<\/span><\/li>\n<li>For <strong>Increment By<\/strong>\u00a0: Enter <span class=\"lang:default decode:true crayon-inline\">100<\/span><\/li>\n<li>Page Start Number select New variable call it StartIndex and start default value <strong>1<\/strong><\/li>\n<\/ol>\n<p>Once you configure this way now your API will return all records until last page is detected. For more information on pagination <a href=\"https:\/\/zappysys.com\/blog\/ssis-rest-api-looping-until-no-more-pages-found\/\" target=\"_blank\" rel=\"noopener\">check this article<\/a><\/p>\n<div id=\"attachment_9628\" style=\"width: 1043px\" class=\"wp-caption alignnone\"><a href=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2022\/04\/ssis-read-manageengine-servicedesk-api-pagination.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-9628\" class=\"size-full wp-image-9628\" src=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2022\/04\/ssis-read-manageengine-servicedesk-api-pagination.png\" alt=\"How to paginate ManageEngine ServiceDesk API\" width=\"1033\" height=\"1006\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2022\/04\/ssis-read-manageengine-servicedesk-api-pagination.png 1033w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2022\/04\/ssis-read-manageengine-servicedesk-api-pagination-300x292.png 300w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2022\/04\/ssis-read-manageengine-servicedesk-api-pagination-768x748.png 768w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2022\/04\/ssis-read-manageengine-servicedesk-api-pagination-1024x997.png 1024w\" sizes=\"(max-width: 1033px) 100vw, 1033px\" \/><\/a><p id=\"caption-attachment-9628\" class=\"wp-caption-text\">How to paginate ManageEngine ServiceDesk API<\/p><\/div>\n<h3>Loading ServiceDesk data into SQL Server Table \/ Other Target<\/h3>\n<div class=\"content_block\" id=\"custom_post_widget-5617\"><p>ZappySys SSIS PowerPack makes it easy to load data from various sources such as REST, SOAP, JSON, XML, CSV or from other source into SQL Server, or PostgreSQL, or Amazon Redshift, or other  targets. The <strong>Upsert Destination<\/strong> component allows you to automatically insert new records and update existing ones based on key columns. Below are the detailed steps to configure it.<\/p>\r\n<h3>Step 1: Add Upsert Destination to Data Flow<\/h3>\r\n<ol>\r\n<li>Drag and drop the <strong>Upsert Destination<\/strong> component from the SSIS Toolbox.<\/li>\r\n<li>Connect your source component (e.g., JSON \/ REST \/ Other Source) to the Upsert Destination.<\/li>\r\n<\/ol>\r\n<div class=\"wp-caption aligncenter\">\r\n<a href=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/08\/ssis-data-flow-drag-drop-upsert-destination.png\">\r\n<img loading=\"lazy\" decoding=\"async\" class=\"size-full\" alt=\"\" src=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/08\/ssis-data-flow-drag-drop-upsert-destination.png\" \/><\/a>\r\n<p class=\"wp-caption-text\">SSIS - Data Flow - Drang and Drop Upsert Destination Component<\/p>\r\n<\/div>\r\n<h3>Step 2: Configure Target Connection<\/h3>\r\n<ol>\r\n<li>Double-click the <strong>Upsert Destination<\/strong> component to open the configuration window.<\/li>\r\n<li>Under <strong>Connection<\/strong>, select an existing target connection or click <strong>NEW<\/strong> to create a new connection.\r\n<ul>\r\n<li>Example: SQL Server, or PostgreSQL, or Amazon Redshift.<\/li>\r\n<\/ul>\r\n<\/li>\r\n<\/ol>\r\n<h3>Step 3: Select or Create Target Table<\/h3>\r\n<ol>\r\n<li>In the <strong>Target Table<\/strong> dropdown, select the table where you want to load data.<\/li>\r\n<li>Optionally, click <strong>NEW<\/strong> to create a new table based on the source columns.<\/li>\r\n<\/ol>\r\n<div class=\"wp-caption aligncenter\">\r\n<a href=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2020\/09\/upsert-destination-configuration.png\">\r\n<img loading=\"lazy\" decoding=\"async\" class=\"size-full\" alt=\"\" src=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2020\/09\/upsert-destination-configuration.png\" \/><\/a>\r\n<p class=\"wp-caption-text\">Configure SSIS Upsert Destination Connection - Loading data (REST \/ SOAP \/ JSON \/ XML \/CSV) into SQL Server or other target using SSIS<\/p>\r\n<\/div>\r\n<h3>Step 4: Map Columns<\/h3>\r\n<ol>\r\n<li>Go to the <strong>Mappings<\/strong> tab.<\/li>\r\n<li>Click <strong>Auto Map<\/strong> to map source columns to target columns by name.<\/li>\r\n<li>Ensure you <strong>check the Primary key column(s)<\/strong> that will determine whether a record is inserted or updated.<\/li>\r\n<li>You can manually adjust the mappings if necessary.<\/li>\r\n<\/ol>\r\n <div class=\"wp-caption aligncenter\">\r\n<a href=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2020\/09\/upsert-destination-key.png\">\r\n<img loading=\"lazy\" decoding=\"async\" class=\"size-full\" alt=\"\" src=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2020\/09\/upsert-destination-key.png\" \/><\/a>\r\n<p class=\"wp-caption-text\">SSIS Upsert Destination - Columns Mappings<\/p>\r\n<\/div>\r\n<h3>Step 5: Save Settings<\/h3>\r\n<ul>\r\n<li>Click <strong>OK<\/strong> to save the Upsert Destination configuration.<\/li>\r\n<\/ul>\r\n<h3>Step 6: Optional: Add Logging or Analysis<\/h3>\r\n<ul>\r\n<li>You may add extra destination components to log the number of inserted vs. updated records for monitoring or auditing purposes.<\/li>\r\n<\/ul>\r\n<h3>Step 7: Execute the Package<\/h3>\r\n<ul>\r\n<li>Run your SSIS package and verify that the data is correctly inserted and updated in the target table.<\/li>\r\n<\/ul>\r\n<div class=\"wp-caption aligncenter\">\r\n<a href=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2018\/12\/ssis-upsert-destination-execute.png\">\r\n<img loading=\"lazy\" decoding=\"async\" class=\"size-full\" alt=\"\" src=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2018\/12\/ssis-upsert-destination-execute.png\" \/><\/a>\r\n<p class=\"wp-caption-text\">SSIS Upsert Destination Execution<\/p>\r\n<\/div><\/div>\n<h3>Write data to ServiceDesk using OAuth 2.0<\/h3>\n<p>If you like to load data from any source (i.e. SQL Server) to Zoho CRM then you can use <a href=\"https:\/\/www.zoho.com\/crm\/developer\/docs\/api\/insert-records.html\" target=\"_blank\" rel=\"noopener\">Records API (POST)<\/a>. Use a combination of the following Transforms\u00a0 \/ Components. Later in this article we have some more examples (Older API) which may give you one more ways to load data into Zoho (Use of Template Transform).<\/p>\n<p>Basically you have to build POST Body using JSON Generator Transform or Template Transform and then use that data in Web API Destination to call POST API request to push data to ServiceDesk. Basically screnshot below is just an example using some other Zoho API but you get the idea.<\/p>\n<div class=\"su-table su-table-alternate\">\n<table>\n<tbody>\n<tr class=\"su-even\">\n<td width=\"36\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/zappysys.com\/images\/ssis-powerpack\/ssis-rest-api-web-service-task.png?w=32&amp;ssl=1\" alt=\"Custom SSIS Tasks - Call REST API Webservice (GET, POST, DELETE etc)\" width=\"32\" height=\"32\" \/><\/td>\n<td><u><a href=\"https:\/\/zappysys.com\/products\/ssis-powerpack\/ssis-web-api-destination-connector\/\" target=\"_blank\" rel=\"noopener\">Web API Destination<\/a><\/u><\/td>\n<\/tr>\n<tr>\n<td width=\"36\" height=\"36\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone\" src=\"https:\/\/zappysys.com\/images\/SSIS-PowerPack\/ssis-json-generator-transform.png\" alt=\"JSON Generator Transform\" width=\"32\" height=\"32\" \/><\/td>\n<td><a href=\"https:\/\/zappysys.com\/products\/ssis-powerpack\/ssis-json-generator-transform\/\" target=\"_blank\" rel=\"noopener\">JSON Generator Transform<\/a><\/td>\n<\/tr>\n<tr class=\"su-even\">\n<td width=\"36\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone\" src=\"https:\/\/zappysys.com\/onlinehelp\/ssis-powerpack\/scr\/images\/json-parser-transform\/ssis-json-parser-transform.png\" alt=\"XML Parser Transform\" width=\"32\" height=\"32\" \/><\/td>\n<td><a href=\"https:\/\/zappysys.com\/products\/ssis-powerpack\/ssis-json-parser-transform\/\" target=\"_blank\" rel=\"noopener\">JSON Parser Transform<\/a><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<div id=\"attachment_8312\" style=\"width: 678px\" class=\"wp-caption alignnone\"><a href=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2018\/02\/ssis-json-generator-single-dataset-zoho-write.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-8312\" class=\"size-full wp-image-8312\" src=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2018\/02\/ssis-json-generator-single-dataset-zoho-write.png\" alt=\"Create JSON for POST request (Single dataset pattern)\" width=\"668\" height=\"730\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2018\/02\/ssis-json-generator-single-dataset-zoho-write.png 668w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2018\/02\/ssis-json-generator-single-dataset-zoho-write-275x300.png 275w\" sizes=\"(max-width: 668px) 100vw, 668px\" \/><\/a><p id=\"caption-attachment-8312\" class=\"wp-caption-text\">Create JSON for POST request (Single dataset pattern)<\/p><\/div>\n<p>&nbsp;<\/p>\n<div id=\"attachment_8313\" style=\"width: 757px\" class=\"wp-caption alignnone\"><a href=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2018\/02\/ssis-zoho-write-data-bulk-insert-leads-accounts.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-8313\" class=\"size-full wp-image-8313\" src=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2018\/02\/ssis-zoho-write-data-bulk-insert-leads-accounts.png\" alt=\"Insert data to Zoho Table using SSIS (Lead, Account Modules) - Bulk Load using POST API call\" width=\"747\" height=\"630\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2018\/02\/ssis-zoho-write-data-bulk-insert-leads-accounts.png 747w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2018\/02\/ssis-zoho-write-data-bulk-insert-leads-accounts-300x253.png 300w\" sizes=\"(max-width: 747px) 100vw, 747px\" \/><\/a><p id=\"caption-attachment-8313\" class=\"wp-caption-text\">Insert data to Zoho Table using SSIS (Lead, Account Modules) &#8211; Bulk Load using POST API call<\/p><\/div>\n<h2>Write data to ServiceDesk using SSIS (Import SQL Server Table to ServiceDesk)<\/h2>\n<p>Now you know how to read data from Zoho CRM using JSON API Source next step is to load data to Zoho CRM. For writing data we will use following three components<\/p>\n<div class=\"su-table su-table-alternate\">\n<table>\n<tbody>\n<tr class=\"su-even\">\n<td width=\"36\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/zappysys.com\/images\/ssis-powerpack\/ssis-rest-api-web-service-task.png?w=32&amp;ssl=1\" alt=\"Custom SSIS Tasks - Call REST API Webservice (GET, POST, DELETE etc)\" width=\"32\" height=\"32\" \/><\/td>\n<td><u><a href=\"https:\/\/zappysys.com\/products\/ssis-powerpack\/ssis-web-api-destination-connector\/\" target=\"_blank\" rel=\"noopener\">Web API Destination<\/a><\/u><\/td>\n<\/tr>\n<tr>\n<td width=\"36\" height=\"36\"><\/td>\n<td>Template Transform<\/td>\n<\/tr>\n<tr class=\"su-even\">\n<td width=\"36\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone\" src=\"\/\/zappysys.com\/onlinehelp\/ssis-powerpack\/scr\/images\/xml-parser-transform\/ssis-xml-parser-transform.png\" alt=\"XML Parser Transform\" width=\"32\" height=\"32\" \/><\/td>\n<td><a href=\"https:\/\/zappysys.com\/products\/ssis-powerpack\/ssis-xml-parser-transform\/\" target=\"_blank\" rel=\"noopener\">XML Parser Transform<\/a><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<div class=\"mceTemp\"><\/div>\n<div class=\"content_block\" id=\"custom_post_widget-1887\"><h3>Truncation related error<\/h3>\r\n<p style=\"text-align: justify;\">The most common error you may face when you run an SSIS package is truncation error. During the design time only 300 rows are scanned from a source (a file or a REST API call response) to detect datatypes but at runtime, it is likely you will retrieve far more records. So it is possible that you will get longer strings than initially expected.\u00a0For detailed instructions on how to fix common metadata related errors read an article \"<a href=\"\/\/zappysys.com\/blog\/handling-ssis-component-metadata-issues\/\" target=\"_blank\" rel=\"noopener\">How to handle SSIS errors (truncation, metadata issues)<\/a>\".<\/p>\r\n\r\n<h3>Authentication related error<\/h3>\r\nAnother frequent error you may get is an authentication error, which happens when you deploy\/copy a package to another machine and run it there. Check <a href=\"#Deployment_to_Production\">the paragraph below<\/a>\u00a0to see why it happens and how to solve this problem.<\/div>\n<div class=\"content_block\" id=\"custom_post_widget-2021\"><h2>Things have gone bad: Error handling &amp; debugging<\/h2>\r\n<p style=\"text-align: justify;\">Incidentally, bad things can happen<i>. <\/i>A remote server may go offline or your server may go out of memory. In any case, you may want to know when that happens and take actions accordingly. For that purpose, you have to redirect bad rows to some other destination. For this example, we will take and use <em>Web API Destination<\/em>, but basically, you can use any SSIS component:<\/p>\r\n\r\n<h3>Handling errors<\/h3>\r\n<ol style=\"margin-left: 0;\">\r\n \t<li>Add a <em>Derived Column<\/em>\u00a0above <em>Web API Destination<\/em> with expression\u00a0<strong>\"(DT_WSTR,4000)ZS_JSON_OUT\"<\/strong>\u00a0and name it <strong>\"JsonAsString\"<\/strong>. This will let you see what JSON you are actually passing.<\/li>\r\n \t<li>Then add a database or file destination or use another\u00a0<em>Trash Destination<\/em>\u00a0for debugging purposes and redirect the bad rows (<span style=\"color: #d66565;\">red arrow<\/span>) from <em><em>Web API Destination <\/em><\/em>into it<em><em>. <\/em><\/em>Don't forget to set <span class=\"lang:default decode:true crayon-inline\">Redirect row<\/span>\u00a0option for both, <em>Error<\/em> and <em>Truncation<\/em> columns:<em><em>\r\n<\/em><\/em>\r\n<div class=\"wp-caption\">\r\n\r\n<a href=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/ssis-sql-server-to-elasticsearch-error-handling-redirecting-bad-rows.png\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1487 size-full\" src=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/ssis-sql-server-to-elasticsearch-error-handling-redirecting-bad-rows.png\" alt=\"Redirect bad rows from &lt;em&gt;Web API Destination&lt;\/em&gt; to &lt;em&gt;Trash Destination&lt;\/em&gt; when load from SQL Server to Elasticsearch is failing. Add derived column JsonAsString to be able to read JSON you are using.\" width=\"739\" height=\"267\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/ssis-sql-server-to-elasticsearch-error-handling-redirecting-bad-rows.png 739w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/ssis-sql-server-to-elasticsearch-error-handling-redirecting-bad-rows-300x108.png 300w\" sizes=\"(max-width: 739px) 100vw, 739px\" \/><\/a>\r\n<p class=\"wp-caption-text\">Redirected failed requests from <em>Web API Destination<\/em> to a desired destination when loading from SQL Server to REST API Service is failing. Derived Column <em>JsonAsString<\/em> added to be able to read JSON which was passed to Elasticsearch<\/p>\r\n\r\n<\/div><\/li>\r\n \t<li>Finally, add a\u00a0<a href=\"https:\/\/technet.microsoft.com\/en-us\/library\/ms140318%28v=sql.90%29.aspx?f=255&amp;MSPPError=-2147217396\" target=\"_blank\" rel=\"noopener\"><em>Data Viewer<\/em><\/a> for the red path, if you want to debug the flow. You will be able to see URL, JSON and the error message for each record. You may want to copy-paste <em>ErrorMessage<\/em>\u00a0to <em>Notepad <\/em>if you want it to be more readable:\r\n<div class=\"wp-caption\">\r\n\r\n<a href=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/ssis-sql-server-to-elasticsearch-error-handling.png\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1494 size-full\" src=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/ssis-sql-server-to-elasticsearch-error-handling.png\" alt=\"Use Data Viewer to view HTTP requests that failed to be fulfilled in Elasticsearch\" width=\"752\" height=\"280\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/ssis-sql-server-to-elasticsearch-error-handling.png 752w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/ssis-sql-server-to-elasticsearch-error-handling-300x112.png 300w\" sizes=\"(max-width: 752px) 100vw, 752px\" \/><\/a>\r\n<p class=\"wp-caption-text\">Use Data Viewer to view HTTP requests that failed to be fulfilled.<\/p>\r\n\r\n<\/div><\/li>\r\n<\/ol>\r\n<div class=\"su-note\" style=\"border-color: #e5dea5; border-radius: 3px; -moz-border-radius: 3px; -webkit-border-radius: 3px;\">\r\n<div class=\"su-note-inner su-clearfix\" style=\"background-color: #fff7b7; border-color: #fffdf1; color: #333333; border-radius: 3px; -moz-border-radius: 3px; -webkit-border-radius: 3px;\"><strong>NOTE<\/strong>: You can read more about redirecting rows in <a href=\"\/\/zappysys.com\/blog\/ssis-error-handling-in-data-flow-redirect-bad-rows\/\" target=\"_blank\" rel=\"noopener\">SSIS Error Handling (Redirect bad rows)<\/a> article.<\/div>\r\n<\/div>\r\n<h3>Debugging HTTP requests<\/h3>\r\n<p style=\"text-align: justify;\">A common thing you have to do when working with HTTP requests is to debug those requests; e.g. to check what headers, body or URL was passed.\u00a0<span id=\"Debug_Web_API_call_using_Fiddler\"><\/span>To test how things look behind the scenes we strongly suggest to use <a href=\"https:\/\/zappysys.com\/blog\/how-to-use-fiddler-to-analyze-http-web-requests\/\" target=\"_blank\" rel=\"noopener\">Fiddler<\/a>\u00a0- a popular web debugging tool.<\/p>\r\n<p style=\"text-align: justify;\">Inside it, you can double-click the URL entry (Right side) to see Request and Response Panels. The top panel is Request (URL, Headers, Body) and Bottom Panel is Response. For https:\/\/ (secure URL) make sure you enable HTTPS option in Fiddler (Tools &gt; Options &gt; HTTPS &gt; Check Decrypt https request):<\/p>\r\n\r\n<div id=\"attachment_2344\" class=\"wp-caption alignnone\">\r\n\r\n<a href=\"https:\/\/i1.wp.com\/zappysys.com\/blog\/wp-content\/uploads\/2016\/05\/ssis-rest-api-call-debug-via-fiddler.png?ssl=1\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-2344 size-full\" style=\"border: 0px; max-width: 100%; height: auto; box-shadow: rgba(0, 0, 0, 0.176) 0px 1px 2px;\" src=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2016\/05\/ssis-rest-api-call-debug-via-fiddler.png\" alt=\"Debugging Web API call using Fiddler in SSIS\" width=\"1287\" height=\"564\" data-attachment-id=\"2344\" data-permalink=\"https:\/\/zappysys.com\/blog\/pass-authorization-header-redirected-location\/ssis-rest-api-call-debug-via-fiddler\/#main\" data-orig-file=\"https:\/\/i1.wp.com\/zappysys.com\/blog\/wp-content\/uploads\/2016\/05\/ssis-rest-api-call-debug-via-fiddler.png?fit=1287%2C564&amp;ssl=1\" data-orig-size=\"1287,564\" data-comments-opened=\"0\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"ssis-rest-api-call-debug-via-fiddler\" data-image-description=\"&lt;p&gt;Debugging Web API call using Fiddler in SSIS&lt;\/p&gt; \" data-medium-file=\"https:\/\/i1.wp.com\/zappysys.com\/blog\/wp-content\/uploads\/2016\/05\/ssis-rest-api-call-debug-via-fiddler.png?fit=300%2C131&amp;ssl=1\" data-large-file=\"https:\/\/i1.wp.com\/zappysys.com\/blog\/wp-content\/uploads\/2016\/05\/ssis-rest-api-call-debug-via-fiddler.png?fit=720%2C316&amp;ssl=1\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2016\/05\/ssis-rest-api-call-debug-via-fiddler.png 1287w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2016\/05\/ssis-rest-api-call-debug-via-fiddler-300x131.png 300w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2016\/05\/ssis-rest-api-call-debug-via-fiddler-768x337.png 768w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2016\/05\/ssis-rest-api-call-debug-via-fiddler-1024x449.png 1024w\" sizes=\"(max-width: 1287px) 100vw, 1287px\" \/><\/a>\r\n<p class=\"wp-caption-text\">Debugging Web API call using Fiddler in SSIS<\/p>\r\n\r\n<\/div><\/div>\n<p>&nbsp;<\/p>\n<h2>Conclusion<\/h2>\n<p>Manageengine\u00a0 Servicedesk API provides a great way to automate data read\/write operations. However, to call Service API \u00a0you have to use SDK \/ coding approach (e.g. C#, Java, Python, Ruby). Luckily ZappySys\u00a0<a href=\"https:\/\/zappysys.com\/products\/ssis-powerpack\/\" target=\"_blank\" rel=\"noopener\">SSIS PowerPack<\/a>\u00a0provides a great way to integrate any Servicedesk API call via a\u00a0 simple drag and drop approach without coding. Try \u00a0<a href=\"https:\/\/zappysys.com\/products\/ssis-powerpack\/\" target=\"_blank\" rel=\"noopener\">SSIS PowerPack<\/a>\u00a0for free and call virtually any REST API in a few clicks.<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Introduction In this post, you will learn how to read \/ write ManageEngine ServiceDesk data in SSIS (Drag and drop approach without any coding).\u00a0 We will use\u00a0SSIS JSON\/ REST API Source\u00a0to extract data from Servicedesk API and use\u00a0SSIS Web API Destination\u00a0to write data to Zoho. We will look at step-by-step instructions to read ServiceDesk\u00a0 data [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":1569,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[17,205],"tags":[593,60,160,3,594,269],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v22.3 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\r\n<title>Read\/Write ManageEngine ServiceDesk Data in SSIS (Zoho API) | ZappySys Blog<\/title>\r\n<meta name=\"description\" content=\"Read\/Write ManageEngine ServiceDesk Data in SSIS (Zoho API) - ZappySys Blog\" \/>\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-write-manageengine-servicedesk-data-ssis-zoho-api\/\" \/>\r\n<meta property=\"og:locale\" content=\"en_US\" \/>\r\n<meta property=\"og:type\" content=\"article\" \/>\r\n<meta property=\"og:title\" content=\"Read\/Write ManageEngine ServiceDesk Data in SSIS (Zoho API) | ZappySys Blog\" \/>\r\n<meta property=\"og:description\" content=\"Read\/Write ManageEngine ServiceDesk Data in SSIS (Zoho API) - ZappySys Blog\" \/>\r\n<meta property=\"og:url\" content=\"https:\/\/zappysys.com\/blog\/read-write-manageengine-servicedesk-data-ssis-zoho-api\/\" \/>\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=\"2022-04-28T18:38:33+00:00\" \/>\r\n<meta property=\"article:modified_time\" content=\"2025-03-19T12:56:14+00:00\" \/>\r\n<meta property=\"og:image\" content=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/07\/ssis-oauth-create-new-connection.png\" \/>\r\n\t<meta property=\"og:image:width\" content=\"677\" \/>\r\n\t<meta property=\"og:image:height\" content=\"220\" \/>\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=\"9 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-write-manageengine-servicedesk-data-ssis-zoho-api\/\",\"url\":\"https:\/\/zappysys.com\/blog\/read-write-manageengine-servicedesk-data-ssis-zoho-api\/\",\"name\":\"Read\/Write ManageEngine ServiceDesk Data in SSIS (Zoho API) | ZappySys Blog\",\"isPartOf\":{\"@id\":\"https:\/\/zappysys.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/zappysys.com\/blog\/read-write-manageengine-servicedesk-data-ssis-zoho-api\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/zappysys.com\/blog\/read-write-manageengine-servicedesk-data-ssis-zoho-api\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/07\/ssis-oauth-create-new-connection.png\",\"datePublished\":\"2022-04-28T18:38:33+00:00\",\"dateModified\":\"2025-03-19T12:56:14+00:00\",\"author\":{\"@id\":\"https:\/\/zappysys.com\/blog\/#\/schema\/person\/2756c237457fbc95d82cb38962f81f82\"},\"description\":\"Read\/Write ManageEngine ServiceDesk Data in SSIS (Zoho API) - ZappySys Blog\",\"breadcrumb\":{\"@id\":\"https:\/\/zappysys.com\/blog\/read-write-manageengine-servicedesk-data-ssis-zoho-api\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/zappysys.com\/blog\/read-write-manageengine-servicedesk-data-ssis-zoho-api\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/zappysys.com\/blog\/read-write-manageengine-servicedesk-data-ssis-zoho-api\/#primaryimage\",\"url\":\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/07\/ssis-oauth-create-new-connection.png\",\"contentUrl\":\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/07\/ssis-oauth-create-new-connection.png\",\"width\":677,\"height\":220,\"caption\":\"Create new SSIS OAuth API Connection Manager\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/zappysys.com\/blog\/read-write-manageengine-servicedesk-data-ssis-zoho-api\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/zappysys.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Read\/Write ManageEngine ServiceDesk Data in SSIS (Zoho API)\"}]},{\"@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":"Read\/Write ManageEngine ServiceDesk Data in SSIS (Zoho API) | ZappySys Blog","description":"Read\/Write ManageEngine ServiceDesk Data in SSIS (Zoho API) - ZappySys Blog","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-write-manageengine-servicedesk-data-ssis-zoho-api\/","og_locale":"en_US","og_type":"article","og_title":"Read\/Write ManageEngine ServiceDesk Data in SSIS (Zoho API) | ZappySys Blog","og_description":"Read\/Write ManageEngine ServiceDesk Data in SSIS (Zoho API) - ZappySys Blog","og_url":"https:\/\/zappysys.com\/blog\/read-write-manageengine-servicedesk-data-ssis-zoho-api\/","og_site_name":"ZappySys Blog","article_author":"https:\/\/www.facebook.com\/ZappySys\/","article_published_time":"2022-04-28T18:38:33+00:00","article_modified_time":"2025-03-19T12:56:14+00:00","og_image":[{"width":677,"height":220,"url":"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/07\/ssis-oauth-create-new-connection.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":"9 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/zappysys.com\/blog\/read-write-manageengine-servicedesk-data-ssis-zoho-api\/","url":"https:\/\/zappysys.com\/blog\/read-write-manageengine-servicedesk-data-ssis-zoho-api\/","name":"Read\/Write ManageEngine ServiceDesk Data in SSIS (Zoho API) | ZappySys Blog","isPartOf":{"@id":"https:\/\/zappysys.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/zappysys.com\/blog\/read-write-manageengine-servicedesk-data-ssis-zoho-api\/#primaryimage"},"image":{"@id":"https:\/\/zappysys.com\/blog\/read-write-manageengine-servicedesk-data-ssis-zoho-api\/#primaryimage"},"thumbnailUrl":"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/07\/ssis-oauth-create-new-connection.png","datePublished":"2022-04-28T18:38:33+00:00","dateModified":"2025-03-19T12:56:14+00:00","author":{"@id":"https:\/\/zappysys.com\/blog\/#\/schema\/person\/2756c237457fbc95d82cb38962f81f82"},"description":"Read\/Write ManageEngine ServiceDesk Data in SSIS (Zoho API) - ZappySys Blog","breadcrumb":{"@id":"https:\/\/zappysys.com\/blog\/read-write-manageengine-servicedesk-data-ssis-zoho-api\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/zappysys.com\/blog\/read-write-manageengine-servicedesk-data-ssis-zoho-api\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/zappysys.com\/blog\/read-write-manageengine-servicedesk-data-ssis-zoho-api\/#primaryimage","url":"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/07\/ssis-oauth-create-new-connection.png","contentUrl":"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/07\/ssis-oauth-create-new-connection.png","width":677,"height":220,"caption":"Create new SSIS OAuth API Connection Manager"},{"@type":"BreadcrumbList","@id":"https:\/\/zappysys.com\/blog\/read-write-manageengine-servicedesk-data-ssis-zoho-api\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/zappysys.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Read\/Write ManageEngine ServiceDesk Data in SSIS (Zoho API)"}]},{"@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\/9624"}],"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=9624"}],"version-history":[{"count":12,"href":"https:\/\/zappysys.com\/blog\/wp-json\/wp\/v2\/posts\/9624\/revisions"}],"predecessor-version":[{"id":11261,"href":"https:\/\/zappysys.com\/blog\/wp-json\/wp\/v2\/posts\/9624\/revisions\/11261"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/zappysys.com\/blog\/wp-json\/wp\/v2\/media\/1569"}],"wp:attachment":[{"href":"https:\/\/zappysys.com\/blog\/wp-json\/wp\/v2\/media?parent=9624"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/zappysys.com\/blog\/wp-json\/wp\/v2\/categories?post=9624"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/zappysys.com\/blog\/wp-json\/wp\/v2\/tags?post=9624"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}