<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Create SAS VA report using REST API or CLI in Administration and Deployment</title>
    <link>https://communities.sas.com/t5/Administration-and-Deployment/Create-SAS-VA-report-using-REST-API-or-CLI/m-p/711399#M21221</link>
    <description>Thank you so much.  &lt;BR /&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/100082"&gt;@CindyWong&lt;/a&gt;  &lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/214450"&gt;@joeFurbee&lt;/a&gt; you made my day.</description>
    <pubDate>Thu, 14 Jan 2021 10:33:06 GMT</pubDate>
    <dc:creator>idziemianczyk</dc:creator>
    <dc:date>2021-01-14T10:33:06Z</dc:date>
    <item>
      <title>Create SAS VA report using REST API or CLI</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/Create-SAS-VA-report-using-REST-API-or-CLI/m-p/710814#M21205</link>
      <description>&lt;P&gt;In the &lt;A href="https://developer.sas.com/apis/rest/Visualization/#create-report" target="_blank"&gt;Create report&lt;/A&gt; document there is an example of creation VA report. I tested this piece of code and the creation of the report is not complete. I can’t open the report created by this code in SAS VA(so I can’t apply modifications using Ctrl+Alt+B XML code or any other way).&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;My questions are:&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;Do I need extra parameters in BODY_IN or Headers to allow SAS VA to open the file? In the documentation we see exactly this example and no more options.&lt;/LI&gt;
&lt;LI&gt;Do we have any other way to &lt;STRONG&gt;create a new report&lt;/STRONG&gt; or &lt;STRONG&gt;create copy existing report&lt;/STRONG&gt; using REST API or CLI?&lt;/LI&gt;
&lt;/OL&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;%let folder_uri=/folders/folders/6bcef06c-554c-4ac8-8790-d921977f9933;&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;%let BASE_URI=%sysfunc(getoption(servicesbaseurl));&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;filename rep_id temp;&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;filename body_in temp;&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;&amp;nbsp;&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;data _null_;&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; file body_in;&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; put '{&amp;nbsp; "name": "test_report",';&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; put '"description": "testdescription"}';&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;run;&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;&amp;nbsp;&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;proc http url="&amp;amp;BASE_URI.reports/reports?parentFolderUri=&amp;amp;folder_uri"&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; method='post'&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; oauth_bearer=sas_services&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; in = body_in&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; out=rep_id;&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; headers "Content-Type"="application/vnd.sas.report+json"&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "Accept"="application/vnd.sas.report+json";&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;run;&lt;/EM&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 12 Jan 2021 14:57:33 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/Create-SAS-VA-report-using-REST-API-or-CLI/m-p/710814#M21205</guid>
      <dc:creator>idziemianczyk</dc:creator>
      <dc:date>2021-01-12T14:57:33Z</dc:date>
    </item>
    <item>
      <title>Re: Create SAS VA report using REST API or CLI</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/Create-SAS-VA-report-using-REST-API-or-CLI/m-p/711080#M21211</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/54649"&gt;@idziemianczyk&lt;/a&gt;,&lt;/P&gt;
&lt;P&gt;My colleague&amp;nbsp;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/100082"&gt;@CindyWong&lt;/a&gt;&amp;nbsp;attempted to reply to your inquiry, but experienced technical issues. She forwarded me her response in the meantime and I'll place it below.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;The codes you pasted are only to create a report object. In order to open the report in VA, you need to create the report content object ahead, and hook the two together. About the relationship between report object and the report content object, please see the chart in the composition of a report object in &lt;A href="https://blogs.sas.com/content/sgf/2020/08/20/discover-visual-analytics-report-paths-with-rest-apis/" target="_blank"&gt;Discover Visual Analytics Report Paths with REST APIs - SAS Users&lt;/A&gt;.&lt;/LI&gt;
&lt;/OL&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;OL start="2"&gt;
&lt;LI&gt;We can &lt;STRONG&gt;create a new report&lt;/STRONG&gt;&amp;nbsp;or&amp;nbsp;&lt;STRONG&gt;create copy existing report&lt;/STRONG&gt;&amp;nbsp;using REST API. Below codes for your reference:&lt;/LI&gt;
&lt;/OL&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;/* retrieve the report content object&amp;nbsp; from an existing report */&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;%let BASE_URI=%sysfunc(getoption(SERVICESBASEURL));&lt;/P&gt;
&lt;P&gt;FILENAME rContent TEMP ENCODING='UTF-8';&lt;/P&gt;
&lt;P&gt;PROC HTTP METHOD="GET" oauth_bearer=sas_services OUT= rContent&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; URL = "&amp;amp;BASE_URI/reports/reports/ffb113b7-9cfa-434b-99f1-9b3fe5a9f340/content";&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; HEADERS "Accept" = "application/vnd.sas.report.content+json";&lt;/P&gt;
&lt;P&gt;RUN;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;/* create a new report object in a folder&amp;nbsp; */&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;FILENAME tReport TEMP ENCODING='UTF-8';&lt;/P&gt;
&lt;P&gt;FILENAME hdrout TEMP ENCODING='UTF-8';&lt;/P&gt;
&lt;P&gt;PROC HTTP METHOD = "POST"&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;URL = "&amp;amp;BASE_URI/reports/reports?parentFolderUri=/folders/folders/dbbc365c-69dc-4e3f-97c9-49818029fde1"&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; OUT = tReport HEADEROUT=hdrout&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;OAUTH_BEARER = SAS_SERVICES&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; IN = '{&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "name": "Report by API",&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "description": "Create Report from REST API"&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }' ;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HEADERS "Accept" = "application/vnd.sas.report+json"&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;"Content-Type" = "application/vnd.sas.report+json" ;&lt;/P&gt;
&lt;P&gt;RUN;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;/* print the response header, and get the value of 'ETag' and 'Last-Modified' */&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;data&amp;nbsp; _null_;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; infile hdrout;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; input;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; put _infile_;&lt;/P&gt;
&lt;P&gt;run;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;/* save the retrieved report content object to the newly created report */&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;/* need to replace the IF-MATCH value with the value of ‘ETag’ from previous response header */&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;/* need to replace the IF-UNMODIFIED-SINCE value with the value of ‘Last-Modified’ from previous response header */&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;PROC HTTP METHOD = "PUT"&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;URL = "&amp;amp;BASE_URI.&amp;amp;rptid/content"&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; OAUTH_BEARER = SAS_SERVICES&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;IN = rContent ;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HEADERS "Accept" = "*/*"&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "Content-Type" = "application/vnd.sas.report.content+json"&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "IF-MATCH" = """kjv0va4n"""&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "IF-UNMODIFIED-SINCE" = "Wed, 13 Jan 2021 06:07:37 GMT"&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;&lt;/P&gt;
&lt;P&gt;RUN;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&amp;nbsp;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;/* Now you should be able to open the new report in VA&amp;nbsp;&amp;nbsp; */&lt;/STRONG&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 13 Jan 2021 13:35:26 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/Create-SAS-VA-report-using-REST-API-or-CLI/m-p/711080#M21211</guid>
      <dc:creator>joeFurbee</dc:creator>
      <dc:date>2021-01-13T13:35:26Z</dc:date>
    </item>
    <item>
      <title>Re: Create SAS VA report using REST API or CLI</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/Create-SAS-VA-report-using-REST-API-or-CLI/m-p/711399#M21221</link>
      <description>Thank you so much.  &lt;BR /&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/100082"&gt;@CindyWong&lt;/a&gt;  &lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/214450"&gt;@joeFurbee&lt;/a&gt; you made my day.</description>
      <pubDate>Thu, 14 Jan 2021 10:33:06 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/Create-SAS-VA-report-using-REST-API-or-CLI/m-p/711399#M21221</guid>
      <dc:creator>idziemianczyk</dc:creator>
      <dc:date>2021-01-14T10:33:06Z</dc:date>
    </item>
  </channel>
</rss>

