{"id":6963,"date":"2019-05-22T16:06:40","date_gmt":"2019-05-22T16:06:40","guid":{"rendered":"https:\/\/zappysys.com\/blog\/?p=6963"},"modified":"2023-10-10T16:01:14","modified_gmt":"2023-10-10T16:01:14","slug":"refresh-power-bi-dataset-rest-api-using-ssis","status":"publish","type":"post","link":"https:\/\/zappysys.com\/blog\/refresh-power-bi-dataset-rest-api-using-ssis\/","title":{"rendered":"How to refresh Power BI dataset with REST API using SSIS"},"content":{"rendered":"<h2>Introduction<\/h2>\n<p style=\"text-align: justify;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-3951\" src=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2018\/06\/power-bi-logo-310x310-150x150.png\" alt=\"Power BI Integration\" width=\"100\" height=\"100\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2018\/06\/power-bi-logo-310x310-150x150.png 150w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2018\/06\/power-bi-logo-310x310-300x300.png 300w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2018\/06\/power-bi-logo-310x310.png 310w\" sizes=\"(max-width: 100px) 100vw, 100px\" \/>In this article, you will learn how to refresh a\u00a0<a href=\"https:\/\/powerbi.microsoft.com\/en-us\/\" target=\"_blank\" rel=\"noopener\">Power BI<\/a>\u00a0dataset with\u00a0<a href=\"https:\/\/docs.microsoft.com\/en-us\/rest\/api\/power-bi\/\" target=\"_blank\" rel=\"noopener\">Power BI REST API<\/a>\u00a0using SSIS and\u00a0<a href=\"https:\/\/zappysys.com\/products\/ssis-powerpack\/\" target=\"_blank\" rel=\"noopener\">ZappySys SSIS PowerPack<\/a>.\u00a0Power BI is a Microsoft reporting product that can get data from virtually any source and display it nicely in a report or a dashboard. Each Power BI report contains a dataset, which can be refreshed to show relevant data in the report. Power BI also has a <em>Scheduled refresh<\/em> capability, in case you want to refresh a dataset periodically. However, you are limited to only 8 specific times per day you can refresh a dataset (as of May 23, 2019). In the Power BI Premium license you can do it 48 times per day. But what if you need to refresh it more frequently? Or if you desire to refresh it at a non-predefined time; which is not known in advance? E.g. after an ETL process has finished? Here Power BI REST API comes into rescue and lets you refresh a dataset on demand.<\/p>\n<p>Here are a few use cases when you may want to refresh a dataset from a SSIS package, using Power BI REST API:<\/p>\n<ul>\n<li>The need to refresh a dataset more often than Power BI allows.<\/li>\n<li>The requirement to refresh a dataset just after some process is finished; e.g. after an ETL process.<\/li>\n<li>The ability to have absolute control <em>when<\/em> to refresh <em>multiple<\/em> datasets. Sometimes, refreshing multiple huge datasets at once could cause memory problems in the Power BI service. So, having an orchestrated refresh would solve this problem.<\/li>\n<\/ul>\n<p>We will use these ZappySys SSIS PowerPack connectors\/connections in this article:<\/p>\n<div class=\"content_block\" id=\"custom_post_widget-6991\"><div style=\"display: table-row; background: #f7f7f7;\">\r\n<div style=\"display: table-cell; padding: 1em; border: 1px solid #ccc;\"><img loading=\"lazy\" decoding=\"async\" style=\"vertical-align: middle; width: 50px; height: 50px; max-width: 50px;\" src=\"\/\/zappysys.com\/onlinehelp\/ssis-powerpack\/scr\/images\/oauth-connection\/ssis-oauth-connection-manager.png\" alt=\"Web API Destination\" width=\"50\" height=\"50\" \/><\/div>\r\n<div style=\"display: table-cell; padding: 1em; border: 1px solid #ccc; border-left: none; width: 100%;\"><a href=\"\/\/zappysys.com\/onlinehelp\/ssis-powerpack\/index.htm#page=ssis-oauth-connection-manager.htm\" target=\"_blank\" rel=\"noopener\">OAuth Connection Manager<\/a><\/div>\r\n<\/div><\/div>\n<div class=\"content_block\" id=\"custom_post_widget-6984\"><div style=\"display: table-row; background: #f7f7f7;\">\r\n<div style=\"display: table-cell; padding: 1em; border: 1px solid #ccc;\"><img loading=\"lazy\" decoding=\"async\" style=\"vertical-align: middle; width: 50px; height: 50px; max-width: 50px;\" src=\"\/\/zappysys.com\/images\/SSIS-PowerPack\/ssis-rest-api-web-service-task.png\" alt=\"Web API Destination\" width=\"50\" height=\"50\" \/><\/div>\r\n<div style=\"display: table-cell; padding: 1em; border: 1px solid #ccc; border-left: none; width: 100%;\"><a href=\"\/\/zappysys.com\/products\/ssis-powerpack\/ssis-rest-api-web-service-task\/\" target=\"_blank\" rel=\"noopener\">REST API Task<\/a><\/div>\r\n<\/div><\/div>\n<p>Let&#8217;s begin!<\/p>\n<h2>Prerequisites<\/h2>\n<ol>\n<li>You have a Power BI account and you have basic Power BI skills.<\/li>\n<li>An uploaded Power BI report to Power BI service.<\/li>\n<li>A\u00a0<a href=\"https:\/\/azure.microsoft.com\/\" data-linktype=\"external\">Microsoft Azure<\/a>\u00a0subscription (there is a\u00a0<a href=\"https:\/\/azure.microsoft.com\/en-us\/free\/\" target=\"_blank\" rel=\"noopener\">free<\/a> option with a 200 USD credit).<\/li>\n<li><a href=\"https:\/\/azure.microsoft.com\/en-us\/services\/active-directory\/\" target=\"_blank\" rel=\"noopener\">Azure Active Directory<\/a> set up.<\/li>\n<li><abbr title=\"SQL Server Integration Services\">SSIS<\/abbr>\u00a0designer installed.\u00a0Sometimes it is referred to as\u00a0<abbr title=\"SQL Server Data Tools\">SSDT<\/abbr>\u00a0or <abbr title=\"Business Intelligence Development Studio\">BIDS<\/abbr>\u00a0(<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>\n<li>Basic knowledge of SSIS package\u00a0development using\u00a0<em>Microsoft SQL Server Integration Services<\/em>.<\/li>\n<li><a href=\"https:\/\/zappysys.com\/products\/ssis-powerpack\/\" target=\"_blank\" rel=\"noopener\">ZappySys SSIS PowerPack<\/a>\u00a0is installed (<a href=\"https:\/\/zappysys.com\/products\/ssis-powerpack\/download\/\" target=\"_blank\" rel=\"noopener\">download it<\/a>).<\/li>\n<\/ol>\n<h2>Getting started<\/h2>\n<p>Suppose you have a simple report and you want to refresh its dataset using Power BI REST API and SSIS. So far, the dataset has not been refreshed at all:<\/p>\n<div id=\"attachment_7033\" style=\"width: 573px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-7033\" class=\"wp-image-7033 size-full\" src=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2019\/05\/refresh-power-bi-dataset-using-rest-api-and-ssis-e1558968134828.png\" alt=\"Preparing to refresh Power BI dataset using SSIS and Power BI REST API.\" width=\"563\" height=\"235\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2019\/05\/refresh-power-bi-dataset-using-rest-api-and-ssis-e1558968134828.png 563w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2019\/05\/refresh-power-bi-dataset-using-rest-api-and-ssis-e1558968134828-300x125.png 300w\" sizes=\"(max-width: 563px) 100vw, 563px\" \/><p id=\"caption-attachment-7033\" class=\"wp-caption-text\">Preparing to refresh the Power BI dataset using SSIS and Power BI REST API.<\/p><\/div>\n<p>To start, create an SSIS package and follow the steps below to accomplish the goal.<\/p>\n<h2>Step By Step\u00a0&#8211; How to refresh a Power BI dataset with REST API using SSIS<\/h2>\n<h3>Create an OAuth application<\/h3>\n<div class=\"content_block\" id=\"custom_post_widget-7035\"><h4>Create an Azure Active Directory OAuth application<\/h4>\r\n<ol>\r\n \t<li>Firstly, go to <a href=\"https:\/\/portal.azure.com\/#blade\/Microsoft_AAD_IAM\/ActiveDirectoryMenuBlade\/RegisteredAppsPreview\" target=\"_blank\" rel=\"noopener\">Azure Active Directory, click App Registrations<\/a>, and then register a new application:\r\n<img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-10621\" src=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2019\/05\/20-register-azure-active-directory-application-to-use-in-ssis-or-odbc-wider.png\" alt=\"\" width=\"646\" height=\"802\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2019\/05\/20-register-azure-active-directory-application-to-use-in-ssis-or-odbc-wider.png 646w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2019\/05\/20-register-azure-active-directory-application-to-use-in-ssis-or-odbc-wider-242x300.png 242w\" sizes=\"(max-width: 646px) 100vw, 646px\" \/>Select option <em>Web<\/em> and enter this URL into the\u00a0<em>Redirect URI<\/em> field:\r\n<code>https:\/\/login.microsoftonline.com\/common\/oauth2\/nativeclient<\/code><\/li>\r\n \t<li>Once created, copy\/paste the <em>Application (client) ID<\/em>\u00a0into a notepad, we will need it later:\r\n<img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-7041 size-full\" src=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2019\/05\/21-save-client-id-of-azure-active-directory-application-to-use-from-ssis-or-odbc-e1696948772287.png\" alt=\"\" width=\"691\" height=\"164\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2019\/05\/21-save-client-id-of-azure-active-directory-application-to-use-from-ssis-or-odbc-e1696948772287.png 691w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2019\/05\/21-save-client-id-of-azure-active-directory-application-to-use-from-ssis-or-odbc-e1696948772287-300x71.png 300w\" sizes=\"(max-width: 691px) 100vw, 691px\" \/><\/li>\r\n \t<li>Next, go to <em>Certificates &amp; secrets<\/em> and create a new client secret. Copy a new client secret, we will need it later:\r\n<img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-7038 size-full\" src=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2019\/05\/40-create-a-new-client-secret-in-azure-active-directory-oauth-application-to-use-from-ssis-or-odbc-e1696949525459.png\" alt=\"\" width=\"499\" height=\"460\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2019\/05\/40-create-a-new-client-secret-in-azure-active-directory-oauth-application-to-use-from-ssis-or-odbc-e1696949525459.png 499w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2019\/05\/40-create-a-new-client-secret-in-azure-active-directory-oauth-application-to-use-from-ssis-or-odbc-e1696949525459-300x277.png 300w\" sizes=\"(max-width: 499px) 100vw, 499px\" \/><\/li>\r\n \t<li>Then go to <i>Overview\u00a0<\/i>and hit <em>Endpoints.\u00a0<\/em>Proceed by copying the\u00a0<em>Authorization<\/em> and <em>Token<\/em> URLs and paste them into a notepad; we will use them later:\r\n<img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-10616\" src=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2019\/05\/90-copy-azure-active-directory-oauth-application-authorization-and-token-endpoints-2.png\" alt=\"\" width=\"646\" height=\"621\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2019\/05\/90-copy-azure-active-directory-oauth-application-authorization-and-token-endpoints-2.png 646w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2019\/05\/90-copy-azure-active-directory-oauth-application-authorization-and-token-endpoints-2-300x288.png 300w\" sizes=\"(max-width: 646px) 100vw, 646px\" \/><\/li>\r\n<\/ol><\/div>\n<h3>Create OAuth Connection Manager in SSIS package<\/h3>\n<ol>\n<li>Drag and drop <em>REST API Task<\/em> from SSIS Toolbox, double click, select <strong>Url from connection,<\/strong> and then select <strong>&lt;New ZS-OAUTH Connection&gt;<\/strong> item:\n<div id=\"attachment_7096\" style=\"width: 604px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-7096\" class=\"wp-image-7096 size-full\" src=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2019\/05\/110-create-ssis-oauth-connection-for-powerbi-rest-api-application-1-e1559316589109.png\" alt=\"Creating OAuth Connection Manager to connect to Power BI OAuth Application from SSIS.\" width=\"594\" height=\"399\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2019\/05\/110-create-ssis-oauth-connection-for-powerbi-rest-api-application-1-e1559316589109.png 594w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2019\/05\/110-create-ssis-oauth-connection-for-powerbi-rest-api-application-1-e1559316589109-300x202.png 300w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2019\/05\/110-create-ssis-oauth-connection-for-powerbi-rest-api-application-1-e1559316589109-272x182.png 272w\" sizes=\"(max-width: 594px) 100vw, 594px\" \/><p id=\"caption-attachment-7096\" class=\"wp-caption-text\">Creating OAuth Connection Manager to connect to Power BI OAuth Application from SSIS.<\/p><\/div><\/li>\n<li>Input <strong>Client ID<\/strong> from <em>Step 2<\/em> when we were creating an Azure Active Directory OAuth Application.\n<div class=\"mceTemp\"><\/div>\n<div id=\"attachment_10630\" style=\"width: 652px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-10630\" class=\"wp-image-10630 size-full\" src=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2019\/05\/120-configure-ssis-oauth-connection-manager-for-powerbi-rest-api-application-1.png\" alt=\"\" width=\"642\" height=\"652\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2019\/05\/120-configure-ssis-oauth-connection-manager-for-powerbi-rest-api-application-1.png 642w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2019\/05\/120-configure-ssis-oauth-connection-manager-for-powerbi-rest-api-application-1-295x300.png 295w\" sizes=\"(max-width: 642px) 100vw, 642px\" \/><p id=\"caption-attachment-10630\" class=\"wp-caption-text\">Configuring OAuth Connection Manager to authenticate to Power BI OAuth Application using SSIS.<\/p><\/div><\/li>\n<li>Then proceed and input the\u00a0<em>Client Secret<\/em> from <em style=\"font-style: italic;\">Step 3, <\/em><em>Create an Azure Active Directory OAuth application<\/em> section.<\/li>\n<li>Please go on, and fill in <em>Authorization\u00a0Url <\/em>and <em>Access Token Url <\/em>properties with values we copied in <em>Step 4<\/em><em style=\"font-style: italic;\">, <\/em><em>Create an Azure Active Directory OAuth application<\/em> section.<\/li>\n<li>In <em>Scopes \/ Permissions<\/em>\u00a0field input these scopes:<br \/>\n<code>https:\/\/analysis.windows.net\/powerbi\/api\/Dataset.ReadWrite.All<br \/>\noffline_access<\/code><\/li>\n<li>Then go to the\u00a0<em>Advanced<\/em> tab and in the\u00a0<em>Callback\/Return Url<\/em>\u00a0field input this value:<br \/>\n<code>https:\/\/login.microsoftonline.com\/common\/oauth2\/nativeclient<\/code><\/p>\n<div id=\"attachment_10631\" style=\"width: 652px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-10631\" class=\"wp-image-10631 size-full\" src=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2019\/05\/130-configure-redirect-url-for-ssis-oauth-connection-manager-for-powerbi-rest-api-application-1.png\" alt=\"\" width=\"642\" height=\"384\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2019\/05\/130-configure-redirect-url-for-ssis-oauth-connection-manager-for-powerbi-rest-api-application-1.png 642w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2019\/05\/130-configure-redirect-url-for-ssis-oauth-connection-manager-for-powerbi-rest-api-application-1-300x179.png 300w\" sizes=\"(max-width: 642px) 100vw, 642px\" \/><p id=\"caption-attachment-10631\" class=\"wp-caption-text\">Setting Callback\/Return Url (Redirect URI) in OAuth Connection Manager to authenticate to Power BI OAuth Application using SSIS.<\/p><\/div><\/li>\n<li>Then go back to the tab <em>General <\/em>and click the\u00a0<em>Generate Token<\/em> button.<\/li>\n<li>Once asked for credentials, log in with your organization user; this will generate <em>Refresh<\/em> and <em>Access<\/em> tokens.<\/li>\n<\/ol>\n<h3>Retrieve the ID of the Power BI dataset you want to refresh<\/h3>\n<ol>\n<li>Go to <a href=\"https:\/\/app.powerbi.com\/groups\/me\/settings\/datasets\" target=\"_blank\" rel=\"noopener\">Power BI datasets<\/a>.<\/li>\n<li>Then click on <strong>Datasets<\/strong>.<\/li>\n<li>Proceed and click the dataset you want to refresh.<\/li>\n<li>Finally, copy the ID of the dataset from the URL, we will use it in the next section.<\/li>\n<\/ol>\n<div id=\"attachment_7114\" style=\"width: 723px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-7114\" class=\"wp-image-7114 size-full\" src=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2019\/05\/140-get-the-id-of-the-dataset-in-power-bi-to-refresh-it-using-rest-api-and-ssis-e1559663902796.png\" alt=\"Getting Power BI dataset ID to refresh it in an HTTP request to Power BI REST API.\" width=\"713\" height=\"396\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2019\/05\/140-get-the-id-of-the-dataset-in-power-bi-to-refresh-it-using-rest-api-and-ssis-e1559663902796.png 713w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2019\/05\/140-get-the-id-of-the-dataset-in-power-bi-to-refresh-it-using-rest-api-and-ssis-e1559663902796-300x167.png 300w\" sizes=\"(max-width: 713px) 100vw, 713px\" \/><p id=\"caption-attachment-7114\" class=\"wp-caption-text\">Getting Power BI dataset ID to refresh it in an HTTP request to Power BI REST API.<\/p><\/div>\n<h3>Configure REST API Task to refresh a Power BI dataset<\/h3>\n<p>We configured OAuth Connection Manager and retrieved the ID of the dataset we want to refresh, now it&#8217;s time to configure REST API Task and refresh the dataset. So do the following:<\/p>\n<ol>\n<li>Go to the\u00a0<strong>SSIS package<\/strong> and open the\u00a0<strong>REST API Task<\/strong> for configuration.<\/li>\n<li>Input <em>URL<\/em> in such a format:<br \/>\n<code><strong>https:\/\/api.powerbi.com\/v1.0\/myorg\/datasets\/DATASET-ID\/refreshes<\/strong><\/code> Replace <em>DATASET-ID<\/em>\u00a0with an actual ID of the dataset.\u00a0E.g.:<br \/>\n<code>https:\/\/api.powerbi.com\/v1.0\/myorg\/datasets\/a38c78fc-8c87-45e3-b961-6dcd3ac1eada\/refreshes<\/code> <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>NOTE<\/strong>: If your dataset resides in a Workspace, use this format instead:<br \/>\n<code><strong>https:\/\/api.powerbi.com\/v1.0\/WORKSPACE-ID\/datasets\/DATASET-ID\/refreshes<\/strong><\/code><\/div><\/div><\/li>\n<li>Then set <strong>POST<\/strong> as <em>HTTP Request Method.<\/em><\/li>\n<li>In the\u00a0<em>Body<\/em> field, input this JSON:<br \/>\n<code><strong>{ \"notifyOption\": \"MailOnFailure\" }<\/strong><\/code><\/li>\n<li>Press the\u00a0<em>Test Request\/Response<\/em> button to test the request and refresh the dataset at the same time.<\/li>\n<\/ol>\n<div id=\"attachment_7117\" style=\"width: 671px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-7117\" class=\"wp-image-7117 size-full\" src=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2019\/05\/150-configure-REST-API-Task-to-refresh-power-bi-dataset-using-rest-api-and-ssis.png\" alt=\"Configuring REST API Task to refresh Power BI dataset using Power BI REST API and SSIS.\" width=\"661\" height=\"610\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2019\/05\/150-configure-REST-API-Task-to-refresh-power-bi-dataset-using-rest-api-and-ssis.png 661w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2019\/05\/150-configure-REST-API-Task-to-refresh-power-bi-dataset-using-rest-api-and-ssis-300x277.png 300w\" sizes=\"(max-width: 661px) 100vw, 661px\" \/><p id=\"caption-attachment-7117\" class=\"wp-caption-text\">Configuring a REST API Task to refresh a Power BI dataset using Power BI REST API and SSIS.<\/p><\/div>\n<h3>Run the package<\/h3>\n<p>Hit <strong>F5<\/strong> and execute the package:<\/p>\n<div id=\"attachment_7123\" style=\"width: 297px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-7123\" class=\"wp-image-7123 size-full\" src=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2019\/05\/160-run-SSIS-package-to-refresh-power-bi-dataset-rest-api.png\" alt=\"Executing SSIS package and refreshing Power BI dataset.\" width=\"287\" height=\"147\" \/><p id=\"caption-attachment-7123\" class=\"wp-caption-text\">Executing SSIS package and refreshing Power BI dataset.<\/p><\/div>\n<h2>The Results<\/h2>\n<p>Now it&#8217;s time to check the results and see if the dataset was refreshed successfully:<\/p>\n<ol style=\"margin-left: 0;\">\n<li>Again, go to <a href=\"https:\/\/app.powerbi.com\/groups\/me\/settings\/datasets\" target=\"_blank\" rel=\"noopener\">Power BI datasets<\/a>.<\/li>\n<li>Then click on <strong>Datasets<\/strong>.<\/li>\n<li>Click the dataset you refreshed.<\/li>\n<li>Then click &#8220;Refresh history&#8221; to check the refresh history. We expect two manual refreshes to be there.<\/li>\n<\/ol>\n<div id=\"attachment_7124\" style=\"width: 667px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-7124\" class=\"wp-image-7124 size-full\" src=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2019\/05\/170-checking-the-result-of-refreshing-power-bi-dataset-using-ssis-and-rest-api.png\" alt=\"Results: Successful Power BI dataset refresh using Power BI REST API and SSIS.\" width=\"657\" height=\"234\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2019\/05\/170-checking-the-result-of-refreshing-power-bi-dataset-using-ssis-and-rest-api.png 657w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2019\/05\/170-checking-the-result-of-refreshing-power-bi-dataset-using-ssis-and-rest-api-300x107.png 300w\" sizes=\"(max-width: 657px) 100vw, 657px\" \/><p id=\"caption-attachment-7124\" class=\"wp-caption-text\">Results: Successful Power BI dataset refresh using Power BI REST API and SSIS.<\/p><\/div>\n<div class=\"content_block\" id=\"custom_post_widget-6976\"><h2>Debugging HTTP requests<\/h2>\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\r\n<\/div><\/div>\n<h2><span id=\"Deployment_to_Production\">Deployment to Production<\/span><\/h2>\n<div class=\"content_block\" id=\"custom_post_widget-1932\"><p style=\"text-align: justify;\">In SSIS package <a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/integration-services\/security\/access-control-for-sensitive-data-in-packages\" target=\"_blank\" rel=\"noopener\">sensitive data such as tokens and passwords are by default encrypted by SSIS<\/a> with your Windows account which you use to create a package.\u00a0So SSIS will fail to decrypt tokens\/passwords when you run it from another machine using another Windows account. To circumvent this when you are creating an SSIS package which uses authentication components (e.g. an <a href=\"https:\/\/zappysys.com\/onlinehelp\/ssis-powerpack\/scr\/ssis-oauth-connection-manager.htm\" target=\"_blank\" rel=\"noopener\">OAuth Connection Manager<\/a>\u00a0or an <a href=\"https:\/\/zappysys.com\/onlinehelp\/ssis-powerpack\/scr\/ssis-http-connection-manager.htm\" target=\"_blank\" rel=\"noopener\">HTTP Connection Manager<\/a> with credentials, etc.), consider using parameters\/variables to pass tokens\/passwords. In this way, you won\u2019t face authentication related errors when a package is deployed to a production server.<\/p>\r\n<p style=\"text-align: justify;\">Check our article on <a href=\"https:\/\/zappysys.com\/blog\/how-to-run-an-ssis-package-with-sensitive-data-on-sql-server\/\" target=\"_blank\" rel=\"noopener\">how to configure packages with sensitive data on your production or development server<\/a>.<\/p><\/div>\n<h2>Conclusion<\/h2>\n<p style=\"text-align: justify;\">You learned how to refresh a Power BI dataset with REST API using SSIS. To accomplish the goal, firstly, we created the Azure Active Directory application and configured OAuth Connection Manager based on it. Then we retrieved the Power BI dataset ID and used it in the ZappySys SSIS PowerPack connector REST API Task. Finally, using the same REST API Task we made the HTTP request to Power BI REST API &#8220;<em>refreshes&#8221;<\/em> method and successfully refreshed the dataset. If you need to make a call to another <a href=\"https:\/\/docs.microsoft.com\/en-us\/rest\/api\/power-bi\/\" target=\"_blank\" rel=\"noopener\">Power BI REST API<\/a>\u00a0method, then just configure the REST API Task according to the documentation (for getting data use <a href=\"https:\/\/zappysys.com\/products\/ssis-powerpack\/ssis-json-file-source\/\" target=\"_blank\" rel=\"noopener\">JSON Source<\/a>\u00a0or <a href=\"https:\/\/zappysys.com\/products\/ssis-powerpack\/ssis-web-api-destination-connector\/\" target=\"_blank\" rel=\"noopener\">Web API Destination<\/a> instead). Finally, if you make many requests to the Power BI REST API service, make sure you check its <a href=\"https:\/\/docs.microsoft.com\/en-us\/power-bi\/developer\/api-rest-api-limitations\" target=\"_blank\" rel=\"noopener\">limitations<\/a>.<\/p>\n<h2>References<\/h2>\n<p><a href=\"https:\/\/powerbi.microsoft.com\/en-us\/\" target=\"_blank\" rel=\"noopener\">https:\/\/powerbi.microsoft.com\/en-us\/<\/a><\/p>\n<p><a href=\"https:\/\/docs.microsoft.com\/en-us\/rest\/api\/power-bi\/datasets\/refreshdataset\" target=\"_blank\" rel=\"noopener\">https:\/\/docs.microsoft.com\/en-us\/rest\/api\/power-bi\/datasets\/refreshdataset<\/a><\/p>\n<p><a href=\"https:\/\/docs.microsoft.com\/en-us\/rest\/api\/power-bi\/\" target=\"_blank\" rel=\"noopener\">https:\/\/docs.microsoft.com\/en-us\/rest\/api\/power-bi\/<\/a><\/p>\n<p><a href=\"https:\/\/docs.microsoft.com\/en-us\/power-bi\/developer\/api-rest-api-limitations\" target=\"_blank\" rel=\"noopener\">https:\/\/docs.microsoft.com\/en-us\/power-bi\/developer\/api-rest-api-limitations<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Introduction In this article, you will learn how to refresh a\u00a0Power BI\u00a0dataset with\u00a0Power BI REST API\u00a0using SSIS and\u00a0ZappySys SSIS PowerPack.\u00a0Power BI is a Microsoft reporting product that can get data from virtually any source and display it nicely in a report or a dashboard. Each Power BI report contains a dataset, which can be refreshed [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":3951,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[176,225,204,205,8,10,9],"tags":[503,298,502],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v22.3 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\r\n<title>How to refresh Power BI dataset with REST API using SSIS | ZappySys Blog<\/title>\r\n<meta name=\"description\" content=\"Refresh Power BI dataset with REST API using SSIS. Learn how to connect to Power BI API using Active Directory OAuth app and refresh a dataset with SSIS.\" \/>\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\/refresh-power-bi-dataset-rest-api-using-ssis\/\" \/>\r\n<meta property=\"og:locale\" content=\"en_US\" \/>\r\n<meta property=\"og:type\" content=\"article\" \/>\r\n<meta property=\"og:title\" content=\"How to refresh Power BI dataset with REST API using SSIS | ZappySys Blog\" \/>\r\n<meta property=\"og:description\" content=\"Refresh Power BI dataset with REST API using SSIS. Learn how to connect to Power BI API using Active Directory OAuth app and refresh a dataset with SSIS.\" \/>\r\n<meta property=\"og:url\" content=\"https:\/\/zappysys.com\/blog\/refresh-power-bi-dataset-rest-api-using-ssis\/\" \/>\r\n<meta property=\"og:site_name\" content=\"ZappySys Blog\" \/>\r\n<meta property=\"article:published_time\" content=\"2019-05-22T16:06:40+00:00\" \/>\r\n<meta property=\"article:modified_time\" content=\"2023-10-10T16:01:14+00:00\" \/>\r\n<meta property=\"og:image\" content=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2018\/06\/power-bi-logo-310x310.png\" \/>\r\n\t<meta property=\"og:image:width\" content=\"310\" \/>\r\n\t<meta property=\"og:image:height\" content=\"310\" \/>\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: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=\"6 minutes\" \/>\r\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/zappysys.com\/blog\/refresh-power-bi-dataset-rest-api-using-ssis\/\",\"url\":\"https:\/\/zappysys.com\/blog\/refresh-power-bi-dataset-rest-api-using-ssis\/\",\"name\":\"How to refresh Power BI dataset with REST API using SSIS | ZappySys Blog\",\"isPartOf\":{\"@id\":\"https:\/\/zappysys.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/zappysys.com\/blog\/refresh-power-bi-dataset-rest-api-using-ssis\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/zappysys.com\/blog\/refresh-power-bi-dataset-rest-api-using-ssis\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2018\/06\/power-bi-logo-310x310.png\",\"datePublished\":\"2019-05-22T16:06:40+00:00\",\"dateModified\":\"2023-10-10T16:01:14+00:00\",\"author\":{\"@id\":\"https:\/\/zappysys.com\/blog\/#\/schema\/person\/c146068d4cb053724ae5ce85759c3ada\"},\"description\":\"Refresh Power BI dataset with REST API using SSIS. Learn how to connect to Power BI API using Active Directory OAuth app and refresh a dataset with SSIS.\",\"breadcrumb\":{\"@id\":\"https:\/\/zappysys.com\/blog\/refresh-power-bi-dataset-rest-api-using-ssis\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/zappysys.com\/blog\/refresh-power-bi-dataset-rest-api-using-ssis\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/zappysys.com\/blog\/refresh-power-bi-dataset-rest-api-using-ssis\/#primaryimage\",\"url\":\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2018\/06\/power-bi-logo-310x310.png\",\"contentUrl\":\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2018\/06\/power-bi-logo-310x310.png\",\"width\":310,\"height\":310,\"caption\":\"Power BI Integration\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/zappysys.com\/blog\/refresh-power-bi-dataset-rest-api-using-ssis\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/zappysys.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How to refresh Power BI dataset with REST API using SSIS\"}]},{\"@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\/c146068d4cb053724ae5ce85759c3ada\",\"name\":\"ZappySys\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/zappysys.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/60165d46d0b33aefb91df61a22b0e1f4?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/60165d46d0b33aefb91df61a22b0e1f4?s=96&d=mm&r=g\",\"caption\":\"ZappySys\"},\"url\":\"https:\/\/zappysys.com\/blog\/author\/gliaskus\/\"}]}<\/script>\r\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"How to refresh Power BI dataset with REST API using SSIS | ZappySys Blog","description":"Refresh Power BI dataset with REST API using SSIS. Learn how to connect to Power BI API using Active Directory OAuth app and refresh a dataset with SSIS.","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\/refresh-power-bi-dataset-rest-api-using-ssis\/","og_locale":"en_US","og_type":"article","og_title":"How to refresh Power BI dataset with REST API using SSIS | ZappySys Blog","og_description":"Refresh Power BI dataset with REST API using SSIS. Learn how to connect to Power BI API using Active Directory OAuth app and refresh a dataset with SSIS.","og_url":"https:\/\/zappysys.com\/blog\/refresh-power-bi-dataset-rest-api-using-ssis\/","og_site_name":"ZappySys Blog","article_published_time":"2019-05-22T16:06:40+00:00","article_modified_time":"2023-10-10T16:01:14+00:00","og_image":[{"width":310,"height":310,"url":"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2018\/06\/power-bi-logo-310x310.png","type":"image\/png"}],"author":"ZappySys","twitter_card":"summary_large_image","twitter_misc":{"Written by":"ZappySys","Est. reading time":"6 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/zappysys.com\/blog\/refresh-power-bi-dataset-rest-api-using-ssis\/","url":"https:\/\/zappysys.com\/blog\/refresh-power-bi-dataset-rest-api-using-ssis\/","name":"How to refresh Power BI dataset with REST API using SSIS | ZappySys Blog","isPartOf":{"@id":"https:\/\/zappysys.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/zappysys.com\/blog\/refresh-power-bi-dataset-rest-api-using-ssis\/#primaryimage"},"image":{"@id":"https:\/\/zappysys.com\/blog\/refresh-power-bi-dataset-rest-api-using-ssis\/#primaryimage"},"thumbnailUrl":"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2018\/06\/power-bi-logo-310x310.png","datePublished":"2019-05-22T16:06:40+00:00","dateModified":"2023-10-10T16:01:14+00:00","author":{"@id":"https:\/\/zappysys.com\/blog\/#\/schema\/person\/c146068d4cb053724ae5ce85759c3ada"},"description":"Refresh Power BI dataset with REST API using SSIS. Learn how to connect to Power BI API using Active Directory OAuth app and refresh a dataset with SSIS.","breadcrumb":{"@id":"https:\/\/zappysys.com\/blog\/refresh-power-bi-dataset-rest-api-using-ssis\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/zappysys.com\/blog\/refresh-power-bi-dataset-rest-api-using-ssis\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/zappysys.com\/blog\/refresh-power-bi-dataset-rest-api-using-ssis\/#primaryimage","url":"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2018\/06\/power-bi-logo-310x310.png","contentUrl":"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2018\/06\/power-bi-logo-310x310.png","width":310,"height":310,"caption":"Power BI Integration"},{"@type":"BreadcrumbList","@id":"https:\/\/zappysys.com\/blog\/refresh-power-bi-dataset-rest-api-using-ssis\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/zappysys.com\/blog\/"},{"@type":"ListItem","position":2,"name":"How to refresh Power BI dataset with REST API using SSIS"}]},{"@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\/c146068d4cb053724ae5ce85759c3ada","name":"ZappySys","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/zappysys.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/60165d46d0b33aefb91df61a22b0e1f4?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/60165d46d0b33aefb91df61a22b0e1f4?s=96&d=mm&r=g","caption":"ZappySys"},"url":"https:\/\/zappysys.com\/blog\/author\/gliaskus\/"}]}},"_links":{"self":[{"href":"https:\/\/zappysys.com\/blog\/wp-json\/wp\/v2\/posts\/6963"}],"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\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/zappysys.com\/blog\/wp-json\/wp\/v2\/comments?post=6963"}],"version-history":[{"count":39,"href":"https:\/\/zappysys.com\/blog\/wp-json\/wp\/v2\/posts\/6963\/revisions"}],"predecessor-version":[{"id":10632,"href":"https:\/\/zappysys.com\/blog\/wp-json\/wp\/v2\/posts\/6963\/revisions\/10632"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/zappysys.com\/blog\/wp-json\/wp\/v2\/media\/3951"}],"wp:attachment":[{"href":"https:\/\/zappysys.com\/blog\/wp-json\/wp\/v2\/media?parent=6963"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/zappysys.com\/blog\/wp-json\/wp\/v2\/categories?post=6963"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/zappysys.com\/blog\/wp-json\/wp\/v2\/tags?post=6963"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}