<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Reporting - MicroStrategy Archives | ZappySys Blog</title>
	<atom:link href="https://zappysys.com/blog/category/odbc-powerpack/odbc-app-integration/bi-reporting-microstrategy/feed/" rel="self" type="application/rss+xml" />
	<link>https://zappysys.com/blog/category/odbc-powerpack/odbc-app-integration/bi-reporting-microstrategy/</link>
	<description>SSIS / ODBC Drivers / API Connectors for JSON, XML, Azure, Amazon AWS, Salesforce, MongoDB and more</description>
	<lastBuildDate>Wed, 07 Nov 2018 17:23:32 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.4.4</generator>

<image>
	<url>https://zappysys.com/blog/wp-content/uploads/2023/01/cropped-zappysys-symbol-large-32x32.png</url>
	<title>Reporting - MicroStrategy Archives | ZappySys Blog</title>
	<link>https://zappysys.com/blog/category/odbc-powerpack/odbc-app-integration/bi-reporting-microstrategy/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>How to call REST API in MicroStrategy (JSON / XML SOAP)</title>
		<link>https://zappysys.com/blog/call-rest-api-in-microstrategy-json-soap-xml/</link>
		
		<dc:creator><![CDATA[ZappySys Team]]></dc:creator>
		<pubDate>Sat, 13 Oct 2018 21:19:14 +0000</pubDate>
				<category><![CDATA[JSON File / REST API Driver]]></category>
		<category><![CDATA[ODBC PowerPack]]></category>
		<category><![CDATA[Reporting - MicroStrategy]]></category>
		<category><![CDATA[REST API]]></category>
		<category><![CDATA[REST API Integration]]></category>
		<category><![CDATA[XML File / SOAP API Driver]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[MicroStrategy]]></category>
		<category><![CDATA[odbc]]></category>
		<category><![CDATA[rest]]></category>
		<guid isPermaLink="false">https://zappysys.com/blog/?p=5181</guid>

					<description><![CDATA[<p> Introduction In this new article, we will show how to call REST API in MicroStrategy. MicroStrategy is a Business Intelligence company that provides powerful software to create nice charts, reports to take decisions. It started in 1993 and now it is one of the most popular Business Intelligence tools in the world because it is simple, intuitive and friendly. [&#8230;]</p>
<p>The post <a href="https://zappysys.com/blog/call-rest-api-in-microstrategy-json-soap-xml/">How to call REST API in MicroStrategy (JSON / XML SOAP)</a> appeared first on <a href="https://zappysys.com/blog">ZappySys Blog</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h2> Introduction</h2>
<p><a href="https://zappysys.com/blog/wp-content/uploads/2018/10/microstrategy-logo.png"><img decoding="async" class=" wp-image-5187 alignleft" src="https://zappysys.com/blog/wp-content/uploads/2018/10/microstrategy-logo.png" alt="MicroStrategy logo" width="86" height="86" srcset="https://zappysys.com/blog/wp-content/uploads/2018/10/microstrategy-logo.png 225w, https://zappysys.com/blog/wp-content/uploads/2018/10/microstrategy-logo-150x150.png 150w" sizes="(max-width: 86px) 100vw, 86px" /></a>In this new article, we will show how to call REST API in MicroStrategy. MicroStrategy is a Business Intelligence company that provides powerful software to create nice charts, reports to take decisions. It started in 1993 and now it is one of the most popular Business Intelligence tools in the world because it is simple, intuitive and friendly. Also, It can connect to almost any database. We will use ZappySys ODBC PowerPack. Zappysys ODBC is a pretty nice software used to connect to REST API.  ZappySys ODBC is an excellent plugin for MicroStrategy, because, with this plugin, you can connect to almost any application that supports REST API.</p>
<h2>Requirements</h2>
<ol>
<li>First of all, we will need <a href="https://www.microstrategy.com/us/get-started/desktop" target="_blank" rel="noopener">MicroStrategy Desktop</a> installed.</li>
<li>Secondly, you will require <a href="https://zappysys.com/products/odbc-powerpack/download/" target="_blank" rel="noopener">ZappySys PowerPack for ODBC</a> installed.</li>
</ol>
<h2>Getting started</h2>
<p>First of all, we will need to configure the ODBC ZappySys to connect to REST API. Once the ODBC connection is created, we will invoke the ODBC connection in Microstrategy.</p>
<h3>Configuring the ODBC Zappysys</h3>
<ol>
<li>Search &#8220;odbc&#8221; in start menu and select <strong>ODBC Data sources (64-bit)</strong></li>
<li>First of all, we will open the ODBC Data Source Administrator in the <strong>System DSN</strong> and press Add:
<div id="attachment_5190" style="width: 599px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/10/ODBC-Data-source-add-data-source.jpg"><img fetchpriority="high" decoding="async" aria-describedby="caption-attachment-5190" class="size-full wp-image-5190" src="https://zappysys.com/blog/wp-content/uploads/2018/10/ODBC-Data-source-add-data-source.jpg" alt="Driver to connect to REST API" width="589" height="319" srcset="https://zappysys.com/blog/wp-content/uploads/2018/10/ODBC-Data-source-add-data-source.jpg 589w, https://zappysys.com/blog/wp-content/uploads/2018/10/ODBC-Data-source-add-data-source-300x162.jpg 300w" sizes="(max-width: 589px) 100vw, 589px" /></a><p id="caption-attachment-5190" class="wp-caption-text">ODBC Connect to REST API</p></div>
<div class="su-note"  style="border-color:#e5da9d;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:#fff4b7;border-color:#ffffff;color:#333333;border-radius:3px;-moz-border-radius:3px;-webkit-border-radius:3px;">Use 64 bits if your machine supports it.</div></div></li>
<li>Secondly, add a new ZappySys JSON Driver:
<div id="attachment_5191" style="width: 473px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/10/select-zappysys-json-driver-data-source.jpg"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5191" class="size-full wp-image-5191" src="https://zappysys.com/blog/wp-content/uploads/2018/10/select-zappysys-json-driver-data-source.jpg" alt="ODBC driver list" width="463" height="350" srcset="https://zappysys.com/blog/wp-content/uploads/2018/10/select-zappysys-json-driver-data-source.jpg 463w, https://zappysys.com/blog/wp-content/uploads/2018/10/select-zappysys-json-driver-data-source-300x227.jpg 300w" sizes="(max-width: 463px) 100vw, 463px" /></a><p id="caption-attachment-5191" class="wp-caption-text">List of drivers supported</p></div></li>
<li>Also, we will add the following URL to the Simple View:<br />
<pre class="crayon-plain-tag">https://services.odata.org/V3/Northwind/Northwind.svc/Invoices?$format=json</pre>
<div id="attachment_5193" style="width: 805px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/10/odbc-url-configuration.jpg"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5193" class="size-full wp-image-5193" src="https://zappysys.com/blog/wp-content/uploads/2018/10/odbc-url-configuration.jpg" alt="Configuration to connect to REST" width="795" height="619" srcset="https://zappysys.com/blog/wp-content/uploads/2018/10/odbc-url-configuration.jpg 795w, https://zappysys.com/blog/wp-content/uploads/2018/10/odbc-url-configuration-300x234.jpg 300w, https://zappysys.com/blog/wp-content/uploads/2018/10/odbc-url-configuration-768x598.jpg 768w" sizes="(max-width: 795px) 100vw, 795px" /></a><p id="caption-attachment-5193" class="wp-caption-text">ODBC configuration to connect to REST API</p></div></li>
</ol>
<h3>Configuring MicroStrategy</h3>
<ol>
<li>In MicroStrategy Desktop, press the <strong>New Dossier</strong> button:
<div id="attachment_5194" style="width: 1101px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/10/new-dossier.jpg"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5194" class="size-full wp-image-5194" src="https://zappysys.com/blog/wp-content/uploads/2018/10/new-dossier.jpg" alt="call REST API in Microstrategy" width="1091" height="427" srcset="https://zappysys.com/blog/wp-content/uploads/2018/10/new-dossier.jpg 1091w, https://zappysys.com/blog/wp-content/uploads/2018/10/new-dossier-300x117.jpg 300w, https://zappysys.com/blog/wp-content/uploads/2018/10/new-dossier-768x301.jpg 768w, https://zappysys.com/blog/wp-content/uploads/2018/10/new-dossier-1024x401.jpg 1024w" sizes="(max-width: 1091px) 100vw, 1091px" /></a><p id="caption-attachment-5194" class="wp-caption-text">Create a new dossier in MicroStrategy</p></div></li>
<li>Secondly, in the Dossier, press the <strong>New Data</strong> button:
<div id="attachment_5195" style="width: 1098px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/10/microstrategy-new-data.jpg"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5195" class="size-full wp-image-5195" src="https://zappysys.com/blog/wp-content/uploads/2018/10/microstrategy-new-data.jpg" alt="Use MicroStrategy to add new data" width="1088" height="506" srcset="https://zappysys.com/blog/wp-content/uploads/2018/10/microstrategy-new-data.jpg 1088w, https://zappysys.com/blog/wp-content/uploads/2018/10/microstrategy-new-data-300x140.jpg 300w, https://zappysys.com/blog/wp-content/uploads/2018/10/microstrategy-new-data-768x357.jpg 768w, https://zappysys.com/blog/wp-content/uploads/2018/10/microstrategy-new-data-1024x476.jpg 1024w" sizes="(max-width: 1088px) 100vw, 1088px" /></a><p id="caption-attachment-5195" class="wp-caption-text">Add new data in Microstrategy</p></div></li>
<li>Also, in Data Sources select <strong>Databases</strong>:
<div class="mceTemp"></div>
<div id="attachment_5198" style="width: 1010px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/10/microstratege-data-sources-databases.jpg"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5198" class="size-full wp-image-5198" src="https://zappysys.com/blog/wp-content/uploads/2018/10/microstratege-data-sources-databases.jpg" alt="Use MicroStrategy to connect to Databases" width="1000" height="445" srcset="https://zappysys.com/blog/wp-content/uploads/2018/10/microstratege-data-sources-databases.jpg 1000w, https://zappysys.com/blog/wp-content/uploads/2018/10/microstratege-data-sources-databases-300x134.jpg 300w, https://zappysys.com/blog/wp-content/uploads/2018/10/microstratege-data-sources-databases-768x342.jpg 768w" sizes="(max-width: 1000px) 100vw, 1000px" /></a><p id="caption-attachment-5198" class="wp-caption-text">Select the option to connect to Databases in Microstrategy</p></div></li>
<li>In addition, select the option to <strong>Type a Query</strong>:
<div id="attachment_5197" style="width: 517px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/10/microstrategy-type-a-query.jpg"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5197" class="size-full wp-image-5197" src="https://zappysys.com/blog/wp-content/uploads/2018/10/microstrategy-type-a-query.jpg" alt="MicroStrategy query" width="507" height="388" srcset="https://zappysys.com/blog/wp-content/uploads/2018/10/microstrategy-type-a-query.jpg 507w, https://zappysys.com/blog/wp-content/uploads/2018/10/microstrategy-type-a-query-300x230.jpg 300w" sizes="(max-width: 507px) 100vw, 507px" /></a><p id="caption-attachment-5197" class="wp-caption-text">Create a query to get Database data</p></div></li>
<li>Next, in Data Sources press the <strong>+</strong> icon:
<div id="attachment_5199" style="width: 336px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/10/microstrategy-data-sources.jpg"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5199" class="size-full wp-image-5199" src="https://zappysys.com/blog/wp-content/uploads/2018/10/microstrategy-data-sources.jpg" alt="Data sources in MicroStrategy" width="326" height="73" srcset="https://zappysys.com/blog/wp-content/uploads/2018/10/microstrategy-data-sources.jpg 326w, https://zappysys.com/blog/wp-content/uploads/2018/10/microstrategy-data-sources-300x67.jpg 300w" sizes="(max-width: 326px) 100vw, 326px" /></a><p id="caption-attachment-5199" class="wp-caption-text">Add Data Source in MicroStrategy</p></div></li>
<li>Finally, in Data Source, select DSN Data Sources and select the data source created in the previous section using the ZappySys ODBC Driver. In version, select <strong>Generic DBMS</strong> and write any username and password:
<div id="attachment_5201" style="width: 539px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/10/select-data-source.jpg"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5201" class="size-full wp-image-5201" src="https://zappysys.com/blog/wp-content/uploads/2018/10/select-data-source.jpg" alt="Select DSN and type of connection" width="529" height="346" srcset="https://zappysys.com/blog/wp-content/uploads/2018/10/select-data-source.jpg 529w, https://zappysys.com/blog/wp-content/uploads/2018/10/select-data-source-300x196.jpg 300w" sizes="(max-width: 529px) 100vw, 529px" /></a><p id="caption-attachment-5201" class="wp-caption-text">Select DSN, version</p></div></li>
</ol>
<h3>Call REST API in MicroStrategy</h3>
<ol>
<li>You can write different queries using the ZappySys ODBC Driver. The driver supports SQL queries to REST API data including WHERE clauses, GROUP BY, HAVING, ORDER BY, LIMIT WITH:<br />
<pre class="crayon-plain-tag">SELECT ShipName FROM value  
WHERE ShipName="Around the Horn"</pre>
<div id="attachment_5203" style="width: 925px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/10/microstrategy-query-tables-tables.jpg"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5203" class="size-full wp-image-5203" src="https://zappysys.com/blog/wp-content/uploads/2018/10/microstrategy-query-tables-tables.jpg" alt="Call REST API in MicroStrategy" width="915" height="464" srcset="https://zappysys.com/blog/wp-content/uploads/2018/10/microstrategy-query-tables-tables.jpg 915w, https://zappysys.com/blog/wp-content/uploads/2018/10/microstrategy-query-tables-tables-300x152.jpg 300w, https://zappysys.com/blog/wp-content/uploads/2018/10/microstrategy-query-tables-tables-768x389.jpg 768w" sizes="(max-width: 915px) 100vw, 915px" /></a><p id="caption-attachment-5203" class="wp-caption-text">Query to REST API using MicroStrategy</p></div></li>
<li>Secondly, you can connect online (Live) or use an in-memory Dataset:
<div id="attachment_5204" style="width: 471px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/10/connect-live-import-in-memory-microstrategy.jpg"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5204" class="size-full wp-image-5204" src="https://zappysys.com/blog/wp-content/uploads/2018/10/connect-live-import-in-memory-microstrategy.jpg" alt="Connect in MicroStrategy live or in-memory dataset" width="461" height="346" srcset="https://zappysys.com/blog/wp-content/uploads/2018/10/connect-live-import-in-memory-microstrategy.jpg 461w, https://zappysys.com/blog/wp-content/uploads/2018/10/connect-live-import-in-memory-microstrategy-300x225.jpg 300w" sizes="(max-width: 461px) 100vw, 461px" /></a><p id="caption-attachment-5204" class="wp-caption-text">MicroStrategy connect Live</p></div></li>
<li>Finally, you can use the data for your MicroStrategy reports:
<div id="attachment_5206" style="width: 1095px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/10/microsoft-report-created.jpg"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5206" class="size-full wp-image-5206" src="https://zappysys.com/blog/wp-content/uploads/2018/10/microsoft-report-created.jpg" alt="REST API data extracted to get areport" width="1085" height="428" srcset="https://zappysys.com/blog/wp-content/uploads/2018/10/microsoft-report-created.jpg 1085w, https://zappysys.com/blog/wp-content/uploads/2018/10/microsoft-report-created-300x118.jpg 300w, https://zappysys.com/blog/wp-content/uploads/2018/10/microsoft-report-created-768x303.jpg 768w, https://zappysys.com/blog/wp-content/uploads/2018/10/microsoft-report-created-1024x404.jpg 1024w" sizes="(max-width: 1085px) 100vw, 1085px" /></a><p id="caption-attachment-5206" class="wp-caption-text">MicroStrategy report created</p></div></li>
</ol>
<h3>Invoking a JSON file in MicroStrategy using ODBC</h3>
<p>With ZappySys PowerPack, you can not only CALL REST API in Microstrategy, but you can also create queries to plain JSON files stored locally or in a web address. We will use the following JSON file to test:</p>
<ol>
<li>First of all, in order to connect, you will need to specify on the ZappySys JSON Driver the path of the local JSON file:
<div id="attachment_5214" style="width: 809px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/10/microstrategy-connect-to-json-file.jpg"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5214" class="size-full wp-image-5214" src="https://zappysys.com/blog/wp-content/uploads/2018/10/microstrategy-connect-to-json-file.jpg" alt="ODBC connection to a JSON file" width="799" height="376" srcset="https://zappysys.com/blog/wp-content/uploads/2018/10/microstrategy-connect-to-json-file.jpg 799w, https://zappysys.com/blog/wp-content/uploads/2018/10/microstrategy-connect-to-json-file-300x141.jpg 300w, https://zappysys.com/blog/wp-content/uploads/2018/10/microstrategy-connect-to-json-file-768x361.jpg 768w" sizes="(max-width: 799px) 100vw, 799px" /></a><p id="caption-attachment-5214" class="wp-caption-text">Configure a JSON file connection with ODBC</p></div></li>
<li>Secondly, you can create queries in MicroStrategy in the same way that we did in the Call REST API in MicroStrategy section:
<div id="attachment_5215" style="width: 1046px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/10/microstrategy-query-to-json-file.jpg"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5215" class="size-full wp-image-5215" src="https://zappysys.com/blog/wp-content/uploads/2018/10/microstrategy-query-to-json-file.jpg" alt="Connection to a local JSON file in MicroStrategy" width="1036" height="464" srcset="https://zappysys.com/blog/wp-content/uploads/2018/10/microstrategy-query-to-json-file.jpg 1036w, https://zappysys.com/blog/wp-content/uploads/2018/10/microstrategy-query-to-json-file-300x134.jpg 300w, https://zappysys.com/blog/wp-content/uploads/2018/10/microstrategy-query-to-json-file-768x344.jpg 768w, https://zappysys.com/blog/wp-content/uploads/2018/10/microstrategy-query-to-json-file-1024x459.jpg 1024w" sizes="(max-width: 1036px) 100vw, 1036px" /></a><p id="caption-attachment-5215" class="wp-caption-text">Query to JSON file in MicroStrategy</p></div></li>
</ol>
<h3>Call REST API in MicroStrategy to get Gmail information</h3>
<p>It is also possible to invoke and query Gmail data using REST API in MicroStrategy using ZappySys ODBC PowerPack. With the ODBC PowerPack, you can write SQL queries and call REST API in MicroStrategy using OAuth or HTTP<br />
connections.</p>
<ol>
<li>First of all, in the ZappySys ODBC JSON driver, write the following URL:<br />
<pre class="crayon-plain-tag">https://www.googleapis.com/gmail/v1/users/me/messages/</pre>
</li>
<li>Secondly, in connection type select <strong>OAuth Provider</strong>.</li>
<li>Also, in the OAuth Parameter in OAuth Provider, select Google and in scope <a href="https://mail.google.com">https://mail.google.com</a> and press generate token button and specify your credentials:
<div id="attachment_5217" style="width: 788px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/10/gmail-oauth-configuration.jpg"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5217" class="size-full wp-image-5217" src="https://zappysys.com/blog/wp-content/uploads/2018/10/gmail-oauth-configuration.jpg" alt="Get Gmail data in MicroStrategy" width="778" height="632" srcset="https://zappysys.com/blog/wp-content/uploads/2018/10/gmail-oauth-configuration.jpg 778w, https://zappysys.com/blog/wp-content/uploads/2018/10/gmail-oauth-configuration-300x244.jpg 300w, https://zappysys.com/blog/wp-content/uploads/2018/10/gmail-oauth-configuration-768x624.jpg 768w" sizes="(max-width: 778px) 100vw, 778px" /></a><p id="caption-attachment-5217" class="wp-caption-text">Configuration to connect MicroStrategy with Gmail</p></div></li>
<li>Additionally, in Zappysys you can write queries in MicroStrategy as we did with other REST API URLs:<br />
<pre class="crayon-plain-tag">SELECT * FROM messages</pre>
<div id="attachment_5218" style="width: 1031px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/10/microstrategy-gmail-report.jpg"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5218" class="size-full wp-image-5218" src="https://zappysys.com/blog/wp-content/uploads/2018/10/microstrategy-gmail-report.jpg" alt="Get Gmail information in Microstrategy" width="1021" height="444" srcset="https://zappysys.com/blog/wp-content/uploads/2018/10/microstrategy-gmail-report.jpg 1021w, https://zappysys.com/blog/wp-content/uploads/2018/10/microstrategy-gmail-report-300x130.jpg 300w, https://zappysys.com/blog/wp-content/uploads/2018/10/microstrategy-gmail-report-768x334.jpg 768w" sizes="(max-width: 1021px) 100vw, 1021px" /></a><p id="caption-attachment-5218" class="wp-caption-text">Query to Gmail information in MicroStrategy</p></div></li>
</ol>
<h3>Problems with the boolean data type in MicroStrategy</h3>
<p>In addition, there is known issue related to boolean data in Microstrategy:</p>
<p>Error in accessing information from the external data source. Database Instance: (DataImport) Error Fetch Failed Error type: Invalid operation. Data of a string cell was truncated.</p>
<p><a href="https://community.microstrategy.com/s/article/KB20514-How-to-map-a-boolean-datatype-as-integer-with-PostgreSQL" rel="noreferrer">https://community.microstrategy.com/s/article/KB20514-How-to-map-a-boolean-datatype-as-integer-with-PostgreSQL</a></p>
<p>We have a workaround for this situation.</p>
<ol>
<li>First of all, you will need to change the metadata. The following article shows how to change the metadata:<a href="https://zappysys.com/blog/metadata-odbc-api-drivers-query/" rel="noreferrer">https://zappysys.com/blog/metadata-odbc-api-drivers-query/</a>Also, in order to fix, save your current metadata:
<div id="attachment_5229" style="width: 553px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/10/odbc-driver-generate-metadata-1.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5229" class="size-full wp-image-5229" src="https://zappysys.com/blog/wp-content/uploads/2018/10/odbc-driver-generate-metadata-1.png" alt="generate metadata" width="543" height="526" srcset="https://zappysys.com/blog/wp-content/uploads/2018/10/odbc-driver-generate-metadata-1.png 543w, https://zappysys.com/blog/wp-content/uploads/2018/10/odbc-driver-generate-metadata-1-300x291.png 300w" sizes="(max-width: 543px) 100vw, 543px" /></a><p id="caption-attachment-5229" class="wp-caption-text">Driver ODBC metadata</p></div></li>
<li>Additionally, modify your data from Boolean to String:
<div id="attachment_5230" style="width: 317px" class="wp-caption aligncenter"><a href="https://zappysys.com/blog/wp-content/uploads/2018/10/metadata.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5230" class="size-full wp-image-5230" src="https://zappysys.com/blog/wp-content/uploads/2018/10/metadata.png" alt="change metadata microstrategy" width="307" height="101" srcset="https://zappysys.com/blog/wp-content/uploads/2018/10/metadata.png 307w, https://zappysys.com/blog/wp-content/uploads/2018/10/metadata-300x99.png 300w" sizes="(max-width: 307px) 100vw, 307px" /></a><p id="caption-attachment-5230" class="wp-caption-text">MicroStrategy boolean to string metadata</p></div></li>
</ol>
<p>&nbsp;</p>
<h2>REST API / SOAP API Pagination Settings for MicroStrategy</h2>
<div class="content_block" id="custom_post_widget-3892"><div style="margin-bottom: 1em;">Even we set up ODBC Data Source to get the data, it may not be enough. Usually, if you are getting a huge data set from API provider, it won't give it to you in one HTTP response. Instead, it gives back only a subset of data and provides a mechanism for data pagination. The good news is that <em>ZappySys ODBC Driver</em> includes many options to cover virtually any pagination method.</div>
<div><span style="font-size: 16px;">Below you will find a few examples of API pagination. If you need something more sophisticated check the below link (the article was written for SSIS PowerPack but UI options and concepts apply to ODBC Driver too):</span></div>
<div style="margin-bottom: 1em;"><a href="https://zappysys.com/blog/ssis-rest-api-looping-until-no-more-pages-found/" target="_blank" rel="noopener">https://zappysys.com/blog/ssis-rest-api-looping-until-no-more-pages-found/</a></div>
<h3>Paginate by Response Attribute</h3>
This example shows how to paginate API calls where you need to paginate until the last page detected. In this example, next page is indicated by some attribute called nextlink (found in response). If this attribute is missing or null then it stops fetching the next page.
<pre class="lang:tsql decode:true codeblock">SELECT * FROM $
WITH(
SRC=@'https://zappysys.com/downloads/files/test/pagination_nextlink_inarray_1.json'
,NextUrlAttributeOrExpr = '$.nextlink'  --keep reading until this attribute is missing. If attribute name contains dot then use brackets like this $.['my.attr.name']
)</pre>
<h3>Paginate by URL Parameter (Loop until certain StatusCode)</h3>
This example shows how to paginate API calls where you need to pass page number via URL. The driver keeps incrementing page number and calls next URL until the last page detected (401 error). There are few ways to indicate the last page (e.g. By status code, By row count, By response size). If you don't specify end detection then it will use the default (i.e. No records found).
<pre class="lang:tsql decode:true codeblock">SELECT * FROM $
WITH (
SRC=@'https://zappysys.com/downloads/files/test/page-xml.aspx?page=1&amp;mode=DetectBasedOnResponseStatusCode'
,PagingMode='ByUrlParameter'
,PagingByUrlAttributeName='page'
,PagingByUrlEndStrategy='DetectBasedOnResponseStatusCode'
,PagingByUrlCheckResponseStatusCode=401
,IncrementBy=1
)</pre>
<h3>Paginate by URL Path (Loop until no record)</h3>
This example shows how to paginate API calls where you need to pass page number via URL Path. The driver keeps incrementing page number and calls next URL until the last page is detected. There are few ways to indicate the last page (e.g. By status code, By row count, By response size). If you don't specify end detection then it will use the default (i.e. No records found).
<pre class="lang:tsql decode:true codeblock">SELECT * FROM $
WITH (
SRC=@'https://zappysys.com/downloads/files/test/cust-&lt;%page%&gt;.xml'
,PagingMode='ByUrlPath'
,PagingByUrlAttributeName='&lt;%page%&gt;'
,PagingByUrlEndStrategy='DetectBasedOnRecordCount'
,IncrementBy=1
)</pre>
<h3>Paginate by Header Link (RFC 5988)</h3>
API like GitHub / Wordpress use Next link in Headers (<a href="https://tools.ietf.org/html/rfc5988" target="_blank" rel="noopener">RFC 5988</a>)
<pre class="lang:default decode:true ">SELECT * FROM $
LIMIT 25
WITH(
	 Src='https://wordpress.org/news/wp-json/wp/v2/categories?per_page=10'
	,PagingMode='ByResponseHeaderRfc5988'
	,WaitTimeMs='200' --//wait 200 ms after each request
)</pre>
&nbsp;</div>
<h2>REST API / SOAP Web Service Connection Settings for MicroStrategy</h2>
<div class="content_block" id="custom_post_widget-3896"><div style="margin-bottom: 1em;">If you need to authenticate or authorize your user to access a web resource, you will need to use one of the <em>Connections:</em></div>
<ul>
 	<li>HTTP</li>
 	<li>OAuth</li>
</ul>
<img loading="lazy" decoding="async" class="wp-image-4078 size-full" src="https://zappysys.com/blog/wp-content/uploads/2018/06/odbc-powerpack-authentication-authorization-e1529337108252.png" alt="ZappySys XML Driver - HTTP and OAuth Connection Types" width="577" height="302" srcset="https://zappysys.com/blog/wp-content/uploads/2018/06/odbc-powerpack-authentication-authorization-e1529337108252.png 577w, https://zappysys.com/blog/wp-content/uploads/2018/06/odbc-powerpack-authentication-authorization-e1529337108252-300x157.png 300w" sizes="(max-width: 577px) 100vw, 577px" />
<h3>HTTP Connection</h3>
<div style="margin-bottom: 1em;">Use <em>HTTP Connection</em> for simple Windows, Basic, NTLM or Kerberos authentication. Just fill in a username and a password and you are good to go!</div>
<div style="margin-bottom: 1em;">You can also use <em>HTTP Connection</em> for more sophisticated authentication like:</div>
<ul>
 	<li><strong>SOAP WSS</strong> (when accessing a SOAP WebService)</li>
 	<li><strong>Static Token / API Key</strong> (when need to pass an API key in HTTP header)</li>
 	<li><strong>Dynamic Token</strong> (same as Static Token method except that each time you need to log in and retrieve a fresh API key)</li>
 	<li><strong>JWT Token</strong> (As per RFC 7519)</li>
</ul>
<img loading="lazy" decoding="async" class="alignnone wp-image-4091 size-full" src="https://zappysys.com/blog/wp-content/uploads/2018/06/odbc-api-connection-type-1.png" alt="" width="622" height="570" />
<h3>OAuth</h3>
If you are trying to access REST API resource, it is a huge chance, you will need to use <em>OAuth Connection</em>. <a href="https://zappysys.com/blog/rest-api-authentication-with-oauth-2-0-using-ssis/" target="_blank" rel="noopener">Read this article</a> to understand how OAuth authentication and authorization works and how to use it (article originally was written for <a href="https://zappysys.com/products/ssis-powerpack/" target="_blank" rel="noopener">SSIS PowerPack</a>, but the concepts and UI stay the same): <br/>
<a href="https://zappysys.com/blog/rest-api-authentication-with-oauth-2-0-using-ssis/" target="_blank" rel="noopener">https://zappysys.com/blog/rest-api-authentication-with-oauth-2-0-using-ssis/</a>
<img loading="lazy" decoding="async" class="alignnone size-full" src="https://zappysys.com/blog/wp-content/uploads/2018/06/odbc-api-connection-type-2.png" width="721" height="708" /></div>
<h2>Other settings for REST API / SOAP XML Call in MicroStrategy</h2>
<div class="content_block" id="custom_post_widget-3901">There are few settings you can coder while calling Web API
<h3><strong>API Limit / Throttling</strong></h3>
While calling public API or other external web services one important aspect you have to check,  how many requests are allowed by your API. Especially when you use API pagination options to pull many records you have to slow down based on API limits. For example, your API may allow you only 5 requests per second. Use Throttling Tab on Driver UI to set delay after each request.
<h3><strong>2D Array Transformation</strong></h3>
If you are using JSON or XML API Driver then possible you may have to transform your data using 2D array transformation feature. <a href="https://zappysys.com/blog/parse-multi-dimensional-json-array-ssis/" target="_blank" rel="noopener">Check this link</a> for more information.

&nbsp;</div>
<h2>REST API / XML SOAP Performance Tips for MicroStrategy</h2>
<div class="content_block" id="custom_post_widget-4455">While calling APIs you may face some performance issues. There are a few tips you can consider to speed up things.
<h4><span style="font-size: 14pt;"><strong>Use Server-side filtering if possible in URL or Body Parameters</strong></span></h4>
Many API supports filtering your data by URL parameters or via Body. Whenever possible try to use such features.  Here is an example of <a href="http://www.odata.org/getting-started/basic-tutorial/" target="_blank" rel="noopener">odata API</a>, In the below query the first query is faster than the second query because in the first query we filter at the server.
<pre class="lang:tsql decode:true">SELECT * FROM value
WITH(
	 Src='https://services.odata.org/V3/Northwind/Northwind.svc/Customers?$format=json&amp;$filter=Country eq ''USA'''
	,DataFormat='Odata'
)

-- Slow query - Client-side filtering
SELECT * FROM value
WHERE Country ='USA'
WITH(
	 Src='https://services.odata.org/V3/Northwind/Northwind.svc/Customers?$format=json'
	,DataFormat='Odata'
)</pre>
<h4><span style="font-size: 14pt;"><strong>Avoid Special features in SQL Query (e.g. WHERE, Group By, Order By)</strong></span></h4>
ZappySys API engine triggers client-side processing if special features are used in Query. Following SQL Features will trigger Client-Side processing which is several times slower than server-side processing. So always try to use simple query (Select col1, col2 .... from mytable )
<ul>
 	<li>WHERE Clause</li>
 	<li>GROUP BY Clause</li>
 	<li>HAVING Clause</li>
 	<li>ORDER BY</li>
 	<li>FUNCTIONS (e.g. Math, String, DateTime, Regex... )</li>
</ul>
LIMIT clause does not trigger client-side processing.
<h4><span style="font-size: 14pt;"><strong>Consider using pre-generated Metadata / Cache File</strong></span></h4>
Use META option in WITH Clause to use static metadata (Pre-Generated)There are two more options to speedup query processing time. Check <a href="https://zappysys.com/blog/caching-metadata-odbc-drivers-performance/" target="_blank" rel="noopener">this article</a> for details.
<ol>
 	<li>
<pre class="lang:default decode:true">select * from value WITH( meta='c:\temp\meta.txt' )
--OR--
select * from value WITH( meta='my-meta-name' )
--OR--
select * from value WITH( meta='[ {"Name": "col1",&amp;nbsp;"Type": "String", Length: 100},&amp;nbsp;{"Name": "col2",&amp;nbsp;"Type": "Int32"} ...... ]' )</pre>
</li>
 	<li>Enable Data Caching Options (Found on <strong>Property Grid</strong> &gt; <strong>Advanced</strong> Mode Only )</li>
</ol>
<h4><span style="font-size: 14pt;"><strong>Consider using Metadata / Data Caching Option</strong></span></h4>
ZappySys API drivers support Caching Metadata and Data rows to speed up query processing. If your data doesn't change often then you can enable this option to speed up processing significantly.

Check <a href="https://zappysys.com/blog/caching-metadata-odbc-drivers-performance/" target="_blank" rel="noopener">this article</a> for details how to enable Data cache / metadata cache feature for datasource level or query level.

To define cache option at query level you can use like below.
<pre class="">SELECT * FROM $
WITH 
(  SRC='https://myhost.com/some-api'
  ,CachingMode='All'  --cache metadata and data rows both
  ,CacheStorage='File' --or Memory
  ,CacheFileLocation='c:\temp\myquery.cache'
  ,CacheEntryTtl=300 --cache for 300 seconds
)
</pre>
&nbsp;

&nbsp;
<h4><strong><span style="font-size: 14pt;">Use --FAST Option to enable Stream Mode</span></strong></h4>
ZappySys JSON / XML drivers support <strong>--FAST</strong> suffix for Filter. By using this suffix after Filter driver enables Stream Mode, <a href="https://zappysys.com/blog/caching-metadata-odbc-drivers-performance/#Reading_Large_Files_Streaming_Mode_for_XML_JSON" target="_blank" rel="noopener">Read this article</a> to understand how this works.
<pre class="lang:default decode:true">SELECT * FROM $ 
LIMIT 10 --//add this just to test how fast you can get 10 rows
WITH(
  Filter='$.LargeArray[*]--FAST' --//Adding --FAST option turn on STREAM mode (large files)
 ,SRC='https://zappysys.com/downloads/files/test/large_file_100k_largearray_prop.json.gz'
 --,SRC='c:\data\large_file.json.gz'
 ,IncludeParentColumns='False'  --//This Must be OFF for STREAM mode (read very large files)
 ,FileCompressionType='GZip' --Zip or None (Zip format only available for Local files)
)</pre>
&nbsp;</div>
<h2>Calling SOAP Web Service in MicroStrategy</h2>
<div class="content_block" id="custom_post_widget-3870">To call SOAP API you need to know Request XML Body Structure. If you are not sure how to create SOAP Request body then no worries. <a href="https://zappysys.com/blog/calling-soap-web-service-in-ssis-xml-source/" target="_blank" rel="noopener">Check this article</a> to learn how to generate SOAP Request body using the Free tool <a href="https://www.soapui.org/downloads/latest-release.html" target="_blank" rel="noopener">SoapUI</a>. Basically, you have to use SoapUI to generate Request XML and after that, you can replace parameters as needed in the generated body.
<h3>What is SOAP Web Service?</h3>
If you are new to SOAP Web Service sometimes referred as XML Web Service then please read some concept about SOAP Web service standard <a href="https://msdn.microsoft.com/en-us/library/ms996507.aspx?f=255&amp;MSPPError=-2147217396" target="_blank" rel="noopener">from this link</a>

There are two important aspects in SOAP Web service.
<ol>
 	<li>Getting WSDL file or URL</li>
 	<li>Knowing exact Web Service URL</li>
</ol>
<h3>What is WSDL</h3>
In very simple term WSDL (often pronounced as whiz-dull) is nothing but a document which describes Service metadata (e.g. Functions you can call, Request parameters, response structure etc). Some service simply give you WSDL as xml file you can download on local machine and then analyze or sometimes you may get direct URL (e.g. http://api.mycompany.com/hr-soap-service/?wsdl )
<h3>Example SQL Query for SOAP API call using ZappySys XML Driver</h3>
Here is an example SQL query you can write to call SOAP API. If you not sure about many details then check next few sections on how to use XML Driver User Interface to build desired SQL query to POST data to XML SOAP Web Service without any coding.
<pre class="lang:tsql decode:true">SELECT * FROM $
WITH(
	 Src='http://www.holidaywebservice.com/HolidayService_v2/HolidayService2.asmx'
	,DataConnectionType='HTTP'
	,CredentialType='Basic' --OR SoapWss
	,SoapWssPasswordType='PasswordText'
	,UserName='myuser'
	,Password='pass$$w123'
	,Filter='$.soap:Envelope.soap:Body.GetHolidaysAvailableResponse.GetHolidaysAvailableResult.HolidayCode[*]'
	,ElementsToTreatAsArray='HolidayCode'	
	,RequestMethod='POST'	
	,Header='Content-Type: text/xml;charset=UTF-8 || SOAPAction: "http://www.holidaywebservice.com/HolidayService_v2/GetHolidaysAvailable"'
	,RequestData='
&lt;soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:hol="http://www.holidaywebservice.com/HolidayService_v2/"&gt;
   &lt;soapenv:Header/&gt;
   &lt;soapenv:Body&gt;
      &lt;hol:GetHolidaysAvailable&gt;
         &lt;!--type: Country - enumeration: [Canada,GreatBritain,IrelandNorthern,IrelandRepublicOf,Scotland,UnitedStates]--&gt;
         &lt;hol:countryCode&gt;UnitedStates&lt;/hol:countryCode&gt;
      &lt;/hol:GetHolidaysAvailable&gt;
   &lt;/soapenv:Body&gt;
&lt;/soapenv:Envelope&gt;'
)</pre>
Now let's look at steps to create SQL query to call SOAP API. Later we will see how to generate code for your desired programming language (e.g. C# or SQL Server)
<h3>Video Tutorial - Introduction to SOAP Web Service and SoapUI tool</h3>
Before we dive into details about calling SOAP API using ZappySys XML Driver, lets first understand what is SOAP API and how to create SOAP requests using SoapUI tool. You will learn more about this process in the later section. The video contains some fragment about using SOAP API in SSIS but just ignore that part because we will be calling Soap API using ZappySys ODBC Driver rather than SSIS Components.

&nbsp;

<iframe loading="lazy" width="560" height="315" src="https://www.youtube.com/embed/d_x5bgGjg0Y?rel=0&amp;showinfo=0" frameborder="0" allow="autoplay; encrypted-media" allowfullscreen="allowfullscreen" data-mce-fragment="1"></iframe>
<h3>Using SoapUI to test SOAP API call / Create Request Body XML</h3>
Assuming you have downloaded and installed <a href="https://www.soapui.org/downloads/latest-release.html" target="_blank" rel="noopener">SoapUI from here</a>, now we are ready to use WSDL for your SOAP Web Service Calls. If you do not have WSDL file or URL handy then contact your API provider (sometimes you just have to add <strong>?wsdl </strong>at the end of your Service URL to get WSDL so try that. Example: http://mycompany/myservice?wsdl ).

If you don't know what is WSDL then in short, WSDL is <strong>Web service Description Language</strong> (i.e. XML file which describes your SOAP Service). WSDL helps to craft SOAP API request Body for ZappySys XML Driver. So Let's get started.
<ol>
 	<li>Open SoapUI and click SOAP button to create new SOAP Project</li>
 	<li>Enter WSDL URL or File Path of WSDLFor example WSDL for our sample service can be accessed via this URL
<pre class="lang:default highlight:0 decode:true">http://www.dneonline.com/calculator.asmx?wsdl</pre>
<a href="https://zappysys.com/blog/wp-content/uploads/2018/06/calling-soap-api-import-wsdl-new-soapui-project.png"><img loading="lazy" decoding="async" class="size-full wp-image-3871" src="https://zappysys.com/blog/wp-content/uploads/2018/06/odbc-call-soap-api-14.png" alt="Create new SOAP API Project in SoapUI tool for SOAP API Testing" width="486" height="349" /></a>
<div style="margin-bottom: 1em;">Create new SOAP API Project in SoapUI tool for SOAP API Testing</div></li>
 	<li>Once WSDL is loaded you will see possible operations you can call for your SOAP Web Service.</li>
 	<li>If your web service requires credentials then you have to configure it. There are two common credential types for public services (<strong>SOAP WSS</strong> or <strong>BASIC</strong> )
<ol>
 	<li>
<div style="margin-bottom: 1em;">To use <strong>SOAP WSS Credentials</strong> select request node and enter UserId, Password, and <strong>WSS-PasswordType</strong> (PasswordText or PasswordHash)</div>
<a href="https://zappysys.com/blog/wp-content/uploads/2018/06/calling-soap-api-pass-soap-wss-credentials-userid-password.png"><img loading="lazy" decoding="async" class="size-full wp-image-3872 alignnone" src="https://zappysys.com/blog/wp-content/uploads/2018/06/odbc-call-soap-api-2.png" alt="Configure SOAP WSS Credentials for SoapUI (SOAP API Testing Tool)" width="294" height="544" /></a>
<div style="display: block;">Configure SOAP WSS Credentials for SoapUI (SOAP API Testing Tool)</div></li>
 	<li>To use <strong>BASIC Auth</strong> Credentials select request node and double-click it. At the bottom click on Auth (Basic) and From Authorization dropdown click Add New and Select Basic.<a href="https://zappysys.com/blog/wp-content/uploads/2018/06/calling-soap-api-pass-basic-authentication-userid-password.png"><img loading="lazy" decoding="async" class="size-full wp-image-3873" src="https://zappysys.com/blog/wp-content/uploads/2018/06/odbc-call-soap-api-2.png" alt="Configure Basic Authorization for SoapUI (SOAP API Testing Tool)" width="616" height="653" /></a>
<div style="margin-bottom: 1em;">Configure Basic Authorization for SoapUI (SOAP API Testing Tool)</div></li>
</ol>
</li>
 	<li>Now you can test your request first Double-click on the request node to open request editor.</li>
 	<li>Change necessary parameters, remove optional or unwanted parameters. If you want to regenerate request you can click on <strong>Recreate default request toolbar icon</strong>.
<a href="https://zappysys.com/blog/wp-content/uploads/2016/06/create-soap-request-with-optional-parameters-soapui.png"><img loading="lazy" decoding="async" class="size-full wp-image-2812" src="https://zappysys.com/blog/wp-content/uploads/2018/06/odbc-call-soap-api-4.png" alt="Create SOAP Request XML (With Optional Parameters)" width="807" height="315" /></a>
<div style="margin-bottom: 1em;">Create SOAP Request XML (With Optional Parameters)</div></li>
 	<li>Once your SOAP Request XML is ready, <strong>Click the Play button</strong> in the toolbar to execute SOAP API Request and Response will appear in Right side panel.
<a href="https://zappysys.com/blog/wp-content/uploads/2018/06/soapui-test-soap-api-request-response-edit-xml-body.png"><img loading="lazy" decoding="async" class="size-full wp-image-3874" src="https://zappysys.com/blog/wp-content/uploads/2018/06/odbc-call-soap-api-5.png" alt="Test SOAP API using SoapUI Tool (Change Default XML Body / Parameters, Execute and See Response)" width="1216" height="511" /></a>
Test SOAP API using SoapUI Tool (Change Default XML Body / Parameters, Execute and See Response)</li>
</ol>
<h3>Create DSN using ZappySys XML Driver to call SOAP API</h3>
Once you have tested your SOAP API in SoapUI tool, we are ready to use ZappySys XML driver to call SOAP API in your preferred BI tool or Programming language.
<ol>
 	<li>First open <strong>ODBC Data Sources</strong> (search ODBC in your start menu or go under ZappySys &gt; ODBC PowerPack &gt; <strong>ODBC 64 bit</strong>)</li>
 	<li>Goto <strong>System DSN</strong> Tab (or User DSN which is not used by Service account)</li>
 	<li>Click <strong>Add</strong> and Select ZappySys XML Driver
<a href="https://zappysys.com/blog/wp-content/uploads/2018/06/zappysys-odbc-xml-soap-api-driver.png"><img loading="lazy" decoding="async" class="size-full wp-image-3875" src="https://zappysys.com/blog/wp-content/uploads/2018/06/odbc-call-soap-api-6.png" alt="ZappySys ODBC Driver for XML / SOAP API" width="593" height="459" /></a>
ZappySys ODBC Driver for XML / SOAP API</li>
 	<li>Configure API URL, Request Method and Request Body as below
<a href="https://zappysys.com/blog/wp-content/uploads/2018/06/calling-soap-web-service-zappysys-xml-driver.png"><img loading="lazy" decoding="async" class="size-full wp-image-3876" src="https://zappysys.com/blog/wp-content/uploads/2018/06/odbc-call-soap-api-7.png" alt="ZappySys XML Driver - Calling SOAP API - Configure URL, Method, Body" width="916" height="874" /></a>
ZappySys XML Driver - Calling SOAP API - Configure URL, Method, Body</li>
 	<li><strong>(This step is Optional)</strong> If your SOAP API requires credentials then Select Connection Type to HTTP and configure as below.
<a href="https://zappysys.com/blog/wp-content/uploads/2018/06/soap-api-call-credential-basic-soap-wss-zappysys-xml-driver.png"><img loading="lazy" decoding="async" class="size-full wp-image-3877" src="https://zappysys.com/blog/wp-content/uploads/2018/06/odbc-call-soap-api-8.png" alt="ZappySys XML Driver - Configure SOAP WSS Credentials or Basic Authorization (Userid, Password)" width="564" height="483" /></a>
<div style="display: block;">ZappySys XML Driver - Configure SOAP WSS Credentials or Basic Authorization (Userid, Password)</div></li>
 	<li>Configure-Request Headers as below (You can get it from Request &gt; Raw tab from SoapUI after you test the request by clicking the Play button)
<a href="https://zappysys.com/blog/wp-content/uploads/2018/06/set-soap-api-request-headers-zappysys-xml-driver.png"><img loading="lazy" decoding="async" class="size-full wp-image-3881" src="https://zappysys.com/blog/wp-content/uploads/2018/06/odbc-call-soap-api-9.png" alt="Configure SOAP API Request Headers - ZappySys XML Driver" width="1009" height="747" /></a>
Configure SOAP API Request Headers - ZappySys XML Driver</li>
 	<li>Once credentials entered you can select Filter to extract data from the desired node. Make sure to select array node (see special icon) or select the node which contains all necessary columns if you don't have array node.
<a href="https://zappysys.com/blog/wp-content/uploads/2018/06/soap-api-query-select-filter-zappysys-xml-driver.png"><img loading="lazy" decoding="async" class="size-full wp-image-3882" src="https://zappysys.com/blog/wp-content/uploads/2018/06/odbc-call-soap-api-10.png" alt="Select Filter - Extract data from nested XML / SOAP API Response (Denormalize Hierarchy)" width="809" height="594" /></a>
Select Filter - Extract data from nested XML / SOAP API Response (Denormalize Hierarchy)</li>
 	<li>If prompted select yes to treat selected node as Array (This is helpful when you expect one or more record for selected node)
<a href="https://zappysys.com/blog/wp-content/uploads/2018/06/xml-api-array-handling-zappysys-xml-driver.png"><img loading="lazy" decoding="async" class="size-full wp-image-3883" src="https://zappysys.com/blog/wp-content/uploads/2018/06/odbc-call-soap-api-11.png" alt="Treat selected node as XML Array Option for SOAP API Response XML" width="655" height="572" /></a>
Treat selected node as XML Array Option for SOAP API Response XML</li>
</ol>
<h3>Preview SOAP API Response / Generate SQL Code for SOAP API Call</h3>
Once you configure settings for XML Driver now you can preview data or generate example code for desired language (e.g. C#, Python, Java, SQL Server).

Go to Preview tab and you will see default query generated based on settings you entered in previous sections. Attributes listed in WITH clause are optional. If you omit attribute in WITH clause it will use it from Properties tab.
<h3>Preview Data</h3>
<a href="https://zappysys.com/blog/wp-content/uploads/2018/06/calling-soap-web-service-zappysys-xml-api-driver.png"><img loading="lazy" decoding="async" class="size-full wp-image-3884" src="https://zappysys.com/blog/wp-content/uploads/2018/06/odbc-call-soap-api-12.png" alt="Preview SOAP API Response in ZappySys XML Driver" width="808" height="780" /></a>
Preview SOAP API Response in ZappySys XML Driver
<h3>Generate Code Option</h3>
<a href="https://zappysys.com/blog/wp-content/uploads/2018/06/zappysys-driver-code-generator.png"><img loading="lazy" decoding="async" class="size-full wp-image-3885" src="https://zappysys.com/blog/wp-content/uploads/2018/06/odbc-call-soap-api-13.png" alt="Generate Example Code for ZappySys Driver" width="572" height="618" /></a>
<div style="display: block;">Generate Example Code for ZappySys Driver</div></div>
<h2>Conclusion</h2>
<p>To conclude, we can say that the process to call REST API in MicroStrategy using ZappySys ODBC PowerPack is straightforward. With the REST API and Web service support, Microstrategy can connect to almost any source. If you liked this article and you want to try our product, you can download it <a href="https://zappysys.com/products/odbc-powerpack/download/" target="_blank" rel="noopener">here</a>.</p>
<h2>References</h2>
<p>Finally, if you need more information about the process to call REST API in MicroStrategy, refer to the following links:</p>
<ul>
<li><a href="https://zappysys.com/products/odbc-powerpack/" target="_blank" rel="noopener">ODBC PowerPack – Drivers for REST API, JSON, XML, SOAP</a></li>
<li><a href="https://www.microstrategy.com/us/get-started/desktop" target="_blank" rel="noopener">Get started with MicroStrategy Desktop</a></li>
<li><a href="https://zappysys.com/onlinehelp/odbc-powerpack/scr/json-odbc-driver-sql-query-examples.htm" target="_blank" rel="noopener">SQL Query Examples with ODBC ZappySys PowerPack</a></li>
</ul>
<p>The post <a href="https://zappysys.com/blog/call-rest-api-in-microstrategy-json-soap-xml/">How to call REST API in MicroStrategy (JSON / XML SOAP)</a> appeared first on <a href="https://zappysys.com/blog">ZappySys Blog</a>.</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
