<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://www.i2rest.com/index.php?action=history&amp;feed=atom&amp;title=I2Rest_Server_CookBook_DataArea</id>
	<title>I2Rest Server CookBook DataArea - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://www.i2rest.com/index.php?action=history&amp;feed=atom&amp;title=I2Rest_Server_CookBook_DataArea"/>
	<link rel="alternate" type="text/html" href="https://www.i2rest.com/index.php?title=I2Rest_Server_CookBook_DataArea&amp;action=history"/>
	<updated>2026-05-05T10:25:06Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.31.6</generator>
	<entry>
		<id>https://www.i2rest.com/index.php?title=I2Rest_Server_CookBook_DataArea&amp;diff=1746&amp;oldid=prev</id>
		<title>Pavel.lobko at 11:42, 28 July 2020</title>
		<link rel="alternate" type="text/html" href="https://www.i2rest.com/index.php?title=I2Rest_Server_CookBook_DataArea&amp;diff=1746&amp;oldid=prev"/>
		<updated>2020-07-28T11:42:15Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 11:42, 28 July 2020&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l55&quot; &gt;Line 55:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 55:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;4. Restart i2Rest Server instance&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;4. Restart i2Rest Server instance&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;5. Time to test! You can use any test client, some examples described [[I2Rest_Basic_Test|here]]. We'll show Soap UI screen as an example:&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;5. Time to test! You can use any test client, some examples described [[I2Rest_Basic_Test|here]]. We'll show Soap UI screen as an example:&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;br&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[File:QWCRDTAA.PNG]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[File:QWCRDTAA.PNG]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key mediawiki:diff::1.12:old-1745:rev-1746 --&gt;
&lt;/table&gt;</summary>
		<author><name>Pavel.lobko</name></author>
		
	</entry>
	<entry>
		<id>https://www.i2rest.com/index.php?title=I2Rest_Server_CookBook_DataArea&amp;diff=1745&amp;oldid=prev</id>
		<title>Alexei.baranov: /* How to use authorized access to Data Area */</title>
		<link rel="alternate" type="text/html" href="https://www.i2rest.com/index.php?title=I2Rest_Server_CookBook_DataArea&amp;diff=1745&amp;oldid=prev"/>
		<updated>2020-07-25T11:04:40Z</updated>

		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;How to use authorized access to Data Area&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 11:04, 25 July 2020&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l91&quot; &gt;Line 91:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 91:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=How to use authorized access to Data Area=&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=How to use authorized access to Data Area=&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The above scenario describes an anonymous access to data area. If you need authorized access to data, you &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;need to &lt;/del&gt;configure OAuth2 parameters. &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;See &lt;/del&gt;[[Configuring_OAuth2_authorization|here&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;]] &lt;/del&gt;how to do it&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The above scenario describes an anonymous access to data area. If you need authorized access to data, you &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;must &lt;/ins&gt;configure OAuth2 parameters &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;of your i2Rest Server instance&lt;/ins&gt;. &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Look &lt;/ins&gt;[[Configuring_OAuth2_authorization|here how to do it&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;]]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:API CookBook|Data Area API]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:API CookBook|Data Area API]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key mediawiki:diff::1.12:old-1744:rev-1745 --&gt;
&lt;/table&gt;</summary>
		<author><name>Alexei.baranov</name></author>
		
	</entry>
	<entry>
		<id>https://www.i2rest.com/index.php?title=I2Rest_Server_CookBook_DataArea&amp;diff=1744&amp;oldid=prev</id>
		<title>Alexei.baranov: /* How to create API to access specific *DTAARA object */</title>
		<link rel="alternate" type="text/html" href="https://www.i2rest.com/index.php?title=I2Rest_Server_CookBook_DataArea&amp;diff=1744&amp;oldid=prev"/>
		<updated>2020-07-25T11:02:52Z</updated>

		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;How to create API to access specific *DTAARA object&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 11:02, 25 July 2020&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l59&quot; &gt;Line 59:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 59:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=How to create API to access specific *DTAARA object=&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=How to create API to access specific *DTAARA object=&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The above example allows you to access any data area - just specify the object name. This scenario is not always valid from a security reasons. It is often necessary to get data from a specific data area, without the possibility of specifying its name in the request. To do this, you need to make small changes in the PCML file - you &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;need to &lt;/del&gt;specify the name of the data area and remove this parameter from the input parameters. Look at the example, pay attention to initial values in qualifiedName structure and to &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;noname &lt;/del&gt;parameter at third position in the parameter list:&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The above example allows you to access any data area - just specify the object name. This scenario is not always valid from a security reasons. It is often necessary to get data from a specific data area, without the possibility of specifying its name in the request. To do this, you need to make small changes in the PCML file - you &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;must &lt;/ins&gt;specify the name of the data area and remove this parameter from the input parameters. Look at the example, pay attention to initial values in qualifiedName structure and to &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;anonymous &lt;/ins&gt;parameter at third position in the parameter list:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160; &amp;lt;nowiki&amp;gt;&amp;lt;pcml version=&amp;quot;1.0&amp;quot;&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160; &amp;lt;nowiki&amp;gt;&amp;lt;pcml version=&amp;quot;1.0&amp;quot;&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160; &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160; &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key mediawiki:diff::1.12:old-1743:rev-1744 --&gt;
&lt;/table&gt;</summary>
		<author><name>Alexei.baranov</name></author>
		
	</entry>
	<entry>
		<id>https://www.i2rest.com/index.php?title=I2Rest_Server_CookBook_DataArea&amp;diff=1743&amp;oldid=prev</id>
		<title>Alexei.baranov at 10:51, 25 July 2020</title>
		<link rel="alternate" type="text/html" href="https://www.i2rest.com/index.php?title=I2Rest_Server_CookBook_DataArea&amp;diff=1743&amp;oldid=prev"/>
		<updated>2020-07-25T10:51:58Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 10:51, 25 July 2020&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l90&quot; &gt;Line 90:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 90:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[File:QWCRDTAA noname.PNG]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[File:QWCRDTAA noname.PNG]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;=How to use authorized access to Data Area=&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;The above scenario describes an anonymous access to data area. If you need authorized access to data, you need to configure OAuth2 parameters. See [[Configuring_OAuth2_authorization|here]] how to do it&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:API CookBook|Data Area API]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:API CookBook|Data Area API]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key mediawiki:diff::1.12:old-1740:rev-1743 --&gt;
&lt;/table&gt;</summary>
		<author><name>Alexei.baranov</name></author>
		
	</entry>
	<entry>
		<id>https://www.i2rest.com/index.php?title=I2Rest_Server_CookBook_DataArea&amp;diff=1740&amp;oldid=prev</id>
		<title>Alexei.baranov: Created page with &quot;{{DISPLAYTITLE:Working with Data Areas}} Data areas on IBMi are typically used to store application settings, counter values, and other commonly used parameters. There are sev...&quot;</title>
		<link rel="alternate" type="text/html" href="https://www.i2rest.com/index.php?title=I2Rest_Server_CookBook_DataArea&amp;diff=1740&amp;oldid=prev"/>
		<updated>2020-07-25T10:45:23Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;{{DISPLAYTITLE:Working with Data Areas}} Data areas on IBMi are typically used to store application settings, counter values, and other commonly used parameters. There are sev...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{DISPLAYTITLE:Working with Data Areas}}&lt;br /&gt;
Data areas on IBMi are typically used to store application settings, counter values, and other commonly used parameters. There are several IBM i API for working with data areas:&lt;br /&gt;
* [https://www.ibm.com/support/knowledgecenter/en/ssw_ibm_i_71/apis/qwcrdtaa.htm QWCRDTAA - Retrieve Data Area]&lt;br /&gt;
* [https://www.ibm.com/support/knowledgecenter/ssw_ibm_i_71/rtref/qxxchgd.htm QXXCHGDA - Change Data Area]&lt;br /&gt;
&lt;br /&gt;
We'll demonstrate here how to wrap Retrieve Data Area API to OpenAPI. &lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
=Basic scenario=&lt;br /&gt;
We will use [[I2Rest_quick_config|basic setup]] as a starting point of this scenario.&lt;br /&gt;
&lt;br /&gt;
1. Create demo *DTAARA object:&lt;br /&gt;
 CRTDTAARA DTAARA(QGPL/DEMODATA) TYPE(*CHAR) LEN(100) VALUE('Demo data')&lt;br /&gt;
&lt;br /&gt;
2. Create text file on IFS file system, for example /usr/PCML/DataArea.pcml and enter following text:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&amp;lt;pcml version=&amp;quot;1.0&amp;quot;&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
   &amp;lt;nowiki&amp;gt;&amp;lt;struct name=&amp;quot;qualifiedName&amp;quot;&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
      &amp;lt;nowiki&amp;gt;&amp;lt;data name=&amp;quot;name&amp;quot;            type=&amp;quot;char&amp;quot; length=&amp;quot;10&amp;quot; /&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
      &amp;lt;nowiki&amp;gt;&amp;lt;data name=&amp;quot;library&amp;quot;         type=&amp;quot;char&amp;quot; length=&amp;quot;10&amp;quot; /&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
   &amp;lt;nowiki&amp;gt;&amp;lt;/struct&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
   &amp;lt;nowiki&amp;gt;&amp;lt;struct name=&amp;quot;dataReturned&amp;quot;&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
      &amp;lt;nowiki&amp;gt;&amp;lt;data name=&amp;quot;bytesAvailable&amp;quot;          type=&amp;quot;int&amp;quot;  length=&amp;quot;4&amp;quot; /&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
      &amp;lt;nowiki&amp;gt;&amp;lt;data name=&amp;quot;bytesReturned&amp;quot;           type=&amp;quot;int&amp;quot;  length=&amp;quot;4&amp;quot; /&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
      &amp;lt;nowiki&amp;gt;&amp;lt;data name=&amp;quot;typeValueReturned&amp;quot;       type=&amp;quot;char&amp;quot; length=&amp;quot;10&amp;quot; /&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
      &amp;lt;nowiki&amp;gt;&amp;lt;data name=&amp;quot;libraryName&amp;quot;             type=&amp;quot;char&amp;quot; length=&amp;quot;10&amp;quot; /&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
      &amp;lt;nowiki&amp;gt;&amp;lt;data name=&amp;quot;lengthValueReturned&amp;quot;     type=&amp;quot;int&amp;quot;  length=&amp;quot;4&amp;quot; /&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
      &amp;lt;nowiki&amp;gt;&amp;lt;data name=&amp;quot;numberDecimalPositions&amp;quot;  type=&amp;quot;int&amp;quot;  length=&amp;quot;4&amp;quot; /&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
      &amp;lt;nowiki&amp;gt;&amp;lt;data name=&amp;quot;data&amp;quot;                    type=&amp;quot;char&amp;quot; length=&amp;quot;lengthValueReturned&amp;quot; /&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
   &amp;lt;nowiki&amp;gt;&amp;lt;/struct&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
   &amp;lt;nowiki&amp;gt;&amp;lt;program name=&amp;quot;QWCRDTAA&amp;quot; path=&amp;quot;/QSYS.LIB/%LIBL%.LIB/QWCRDTAA.PGM&amp;quot;&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
      &amp;lt;nowiki&amp;gt;&amp;lt;data name=&amp;quot;outputData&amp;quot;        usage=&amp;quot;output&amp;quot;   type=&amp;quot;struct&amp;quot; struct=&amp;quot;dataReturned&amp;quot; outputsize=&amp;quot;9999&amp;quot;/&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
      &amp;lt;nowiki&amp;gt;&amp;lt;data name=&amp;quot;outputDataLength&amp;quot;  usage=&amp;quot;input&amp;quot;    type=&amp;quot;int&amp;quot;    length=&amp;quot;4&amp;quot;  init=&amp;quot;9999&amp;quot;/&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
      &amp;lt;nowiki&amp;gt;&amp;lt;data name=&amp;quot;dataArea&amp;quot;          usage=&amp;quot;input&amp;quot;    type=&amp;quot;struct&amp;quot; struct=&amp;quot;qualifiedName&amp;quot;/&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
      &amp;lt;nowiki&amp;gt;&amp;lt;data name=&amp;quot;startingPosition&amp;quot;  usage=&amp;quot;input&amp;quot;    type=&amp;quot;int&amp;quot;    length=&amp;quot;4&amp;quot;/&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
      &amp;lt;nowiki&amp;gt;&amp;lt;data name=&amp;quot;dataLength&amp;quot;        usage=&amp;quot;input&amp;quot;    type=&amp;quot;int&amp;quot;    length=&amp;quot;4&amp;quot;/&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
      &amp;lt;nowiki&amp;gt;&amp;lt;data                          usage=&amp;quot;input&amp;quot;    type=&amp;quot;int&amp;quot;    length=&amp;quot;4&amp;quot; init=&amp;quot;0&amp;quot;/&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
   &amp;lt;nowiki&amp;gt;&amp;lt;/program&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&amp;lt;/pcml&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
3. Add following setting to your i2Rest Server configuration json:&lt;br /&gt;
    &amp;quot;pcmls&amp;quot;:&lt;br /&gt;
    [&lt;br /&gt;
       ...,&lt;br /&gt;
       {&lt;br /&gt;
          &amp;quot;pcml_mount&amp;quot;         : &amp;quot;dataarea&amp;quot;,&lt;br /&gt;
          &amp;quot;pcml_file&amp;quot;          : &amp;quot;/usr/PCML/DataArea.pcml&amp;quot;, &lt;br /&gt;
          &amp;quot;valid_in_anonymous&amp;quot; : true&lt;br /&gt;
       }&lt;br /&gt;
    ]&lt;br /&gt;
&lt;br /&gt;
4. Restart i2Rest Server instance&lt;br /&gt;
&lt;br /&gt;
5. Time to test! You can use any test client, some examples described [[I2Rest_Basic_Test|here]]. We'll show Soap UI screen as an example:&lt;br /&gt;
[[File:QWCRDTAA.PNG]]&lt;br /&gt;
&lt;br /&gt;
=How to create API to access specific *DTAARA object=&lt;br /&gt;
The above example allows you to access any data area - just specify the object name. This scenario is not always valid from a security reasons. It is often necessary to get data from a specific data area, without the possibility of specifying its name in the request. To do this, you need to make small changes in the PCML file - you need to specify the name of the data area and remove this parameter from the input parameters. Look at the example, pay attention to initial values in qualifiedName structure and to noname parameter at third position in the parameter list:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&amp;lt;pcml version=&amp;quot;1.0&amp;quot;&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
   &amp;lt;nowiki&amp;gt;&amp;lt;struct name=&amp;quot;qualifiedName&amp;quot;&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
      &amp;lt;nowiki&amp;gt;&amp;lt;data name=&amp;quot;name&amp;quot;            type=&amp;quot;char&amp;quot; length=&amp;quot;10&amp;quot; init=&amp;quot;DEMODATA&amp;quot;/&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
      &amp;lt;nowiki&amp;gt;&amp;lt;data name=&amp;quot;library&amp;quot;         type=&amp;quot;char&amp;quot; length=&amp;quot;10&amp;quot; init=&amp;quot;QGPL&amp;quot;/&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
   &amp;lt;nowiki&amp;gt;&amp;lt;/struct&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
   &amp;lt;nowiki&amp;gt;&amp;lt;struct name=&amp;quot;dataReturned&amp;quot;&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
      &amp;lt;nowiki&amp;gt;&amp;lt;data name=&amp;quot;bytesAvailable&amp;quot;          type=&amp;quot;int&amp;quot;  length=&amp;quot;4&amp;quot; /&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
      &amp;lt;nowiki&amp;gt;&amp;lt;data name=&amp;quot;bytesReturned&amp;quot;           type=&amp;quot;int&amp;quot;  length=&amp;quot;4&amp;quot; /&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
      &amp;lt;nowiki&amp;gt;&amp;lt;data name=&amp;quot;typeValueReturned&amp;quot;       type=&amp;quot;char&amp;quot; length=&amp;quot;10&amp;quot; /&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
      &amp;lt;nowiki&amp;gt;&amp;lt;data name=&amp;quot;libraryName&amp;quot;             type=&amp;quot;char&amp;quot; length=&amp;quot;10&amp;quot; /&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
      &amp;lt;nowiki&amp;gt;&amp;lt;data name=&amp;quot;lengthValueReturned&amp;quot;     type=&amp;quot;int&amp;quot;  length=&amp;quot;4&amp;quot; /&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
      &amp;lt;nowiki&amp;gt;&amp;lt;data name=&amp;quot;numberDecimalPositions&amp;quot;  type=&amp;quot;int&amp;quot;  length=&amp;quot;4&amp;quot; /&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
      &amp;lt;nowiki&amp;gt;&amp;lt;data name=&amp;quot;data&amp;quot;                    type=&amp;quot;char&amp;quot; length=&amp;quot;lengthValueReturned&amp;quot; /&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
   &amp;lt;nowiki&amp;gt;&amp;lt;/struct&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
   &amp;lt;nowiki&amp;gt;&amp;lt;program name=&amp;quot;QWCRDTAA&amp;quot; path=&amp;quot;/QSYS.LIB/%LIBL%.LIB/QWCRDTAA.PGM&amp;quot;&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
      &amp;lt;nowiki&amp;gt;&amp;lt;data name=&amp;quot;outputData&amp;quot;        usage=&amp;quot;output&amp;quot;   type=&amp;quot;struct&amp;quot; struct=&amp;quot;dataReturned&amp;quot; outputsize=&amp;quot;9999&amp;quot;/&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
      &amp;lt;nowiki&amp;gt;&amp;lt;data name=&amp;quot;outputDataLength&amp;quot;  usage=&amp;quot;input&amp;quot;    type=&amp;quot;int&amp;quot;    length=&amp;quot;4&amp;quot;  init=&amp;quot;9999&amp;quot;/&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
      &amp;lt;nowiki&amp;gt;&amp;lt;data                          usage=&amp;quot;input&amp;quot;    type=&amp;quot;struct&amp;quot; struct=&amp;quot;qualifiedName&amp;quot;/&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
      &amp;lt;nowiki&amp;gt;&amp;lt;data name=&amp;quot;startingPosition&amp;quot;  usage=&amp;quot;input&amp;quot;    type=&amp;quot;int&amp;quot;    length=&amp;quot;4&amp;quot;/&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
      &amp;lt;nowiki&amp;gt;&amp;lt;data name=&amp;quot;dataLength&amp;quot;        usage=&amp;quot;input&amp;quot;    type=&amp;quot;int&amp;quot;    length=&amp;quot;4&amp;quot;/&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
      &amp;lt;nowiki&amp;gt;&amp;lt;data                          usage=&amp;quot;input&amp;quot;    type=&amp;quot;int&amp;quot;    length=&amp;quot;4&amp;quot; init=&amp;quot;0&amp;quot;/&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
   &amp;lt;nowiki&amp;gt;&amp;lt;/program&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&amp;lt;/pcml&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
Test in SoapUI looks as follows:&amp;lt;br/&amp;gt;&lt;br /&gt;
[[File:QWCRDTAA noname.PNG]]&lt;br /&gt;
&lt;br /&gt;
[[Category:API CookBook|Data Area API]]&lt;/div&gt;</summary>
		<author><name>Alexei.baranov</name></author>
		
	</entry>
</feed>