<docbook><section><title>VirtOAuthTestToolExampleCalendar</title><title>Calendar OAuth REST API Example performed with the Virtuoso OAuth Testing Tool</title>Calendar OAuth REST API Example performed with the Virtuoso OAuth Testing Tool
<para>The following example demonstrates adding and getting event details by the ODS REST APIs <emphasis>calendar.event.new</emphasis> and <emphasis>calendar.get</emphasis> using the OAuth Test Tool.
 Full list of the ODS REST APIs for ODS Calendar you can find <ulink url="VirtuosoOdsControllersCalendar">here</ulink>.</para>
<orderedlist spacing="compact"><listitem>Go to <ulink url="http://demo.openlinksw.com/ods">http://demo.openlinksw.com/ods</ulink> </listitem>
<listitem>Log in as user demo with password demo </listitem>
<listitem>Go to Settings-&gt;OAuth Keys <itemizedlist mark="bullet" spacing="compact"><listitem><figure><graphic fileref="VirtOAuthTestToolExampleCalendar/o1.png" /></figure> </listitem>
</itemizedlist></listitem>
<listitem>Copy the Token value for an Calendar instance or create such in not existing.
 For ex.: dffa13c301c5915a4fb9c8c1ee7c69e2fad88454 </listitem>
<listitem>Go to <ulink url="http://demo.openlinksw.com/ods/oauth_test.vsp">http://demo.openlinksw.com/ods/oauth_test.vsp</ulink> </listitem>
<listitem>In the shown form enter for: <orderedlist spacing="compact"><listitem> <emphasis>Server</emphasis>: <ulink url="http://demo.openlinksw.com/ods/api">http://demo.openlinksw.com/ods/api</ulink> </listitem>
<listitem> <emphasis>Consumer Key</emphasis>: dffa13c301c5915a4fb9c8c1ee7c69e2fad88454 </listitem>
<listitem> <emphasis>API method</emphasis>: calendar.event.new </listitem>
<listitem> <emphasis>API parameters</emphasis>: <programlisting>inst_id=59&amp;subject=test event&amp;eventStart=2008.11.17T12:00&amp;eventEnd=2008.11.17T14:00
</programlisting><itemizedlist mark="bullet" spacing="compact"><listitem>An easy way to get the instance id is using the <ulink url="VirtuosoOdsControllers">ODS Framework Controller</ulink>  <emphasis>instance.get.id</emphasis>: <programlisting>$ curl -i &quot;http://demo.openlinksw.com/ods/api/instance.get.id?user_name=demo&amp;password_hash=4627dhe23cb53f522eag32e09gs7fceaw2c523449bdfdf&amp;instanceName=mycalendar&quot;
HTTP/1.1 200 OK
Server: Virtuoso/06.03.3131 (Linux) x86_64-generic-linux-glibc25-64  VDB
Connection: Keep-Alive
Date: Sun, 05 Feb 2012 21:01:20 GMT
Accept-Ranges: bytes
Content-Type: text/xml; charset=&quot;UTF-8&quot;
Content-Length: 58

&lt;result&gt;
  &lt;code&gt;59&lt;/code&gt;
  &lt;message&gt;Success&lt;/message&gt;
&lt;/result&gt;
</programlisting></listitem>
<listitem>You can also get the instance id using the <ulink url="VirtuosoOdsUbiquity">ODS Ubiquity commands</ulink> sequence: <programlisting>ods-host http://demo.openlinksw.com/ods
ods-set-mode sid
ods-authenticate-user demo password demo
ods-get-instance-id mycalendar
</programlisting></listitem>
</itemizedlist></listitem>
<listitem>Select for <emphasis>Query options</emphasis>: &quot;Generate URI and Submit&quot;.
</listitem>
</orderedlist><itemizedlist mark="bullet" spacing="compact"><listitem><figure><graphic fileref="VirtOAuthTestToolExampleCalendar/oc1.png" /></figure> </listitem>
</itemizedlist></listitem>
<listitem>Click the &quot;Execute&quot; button.
</listitem>
<listitem>Enter the password for user demo and click the &quot;Login&quot; button.
</listitem>
<listitem>In the shown authorization form click the &quot;Authorize&quot; button.
<itemizedlist mark="bullet" spacing="compact"><listitem><figure><graphic fileref="VirtOAuthTestToolExampleCalendar/oc2.png" /></figure> </listitem>
</itemizedlist></listitem>
<listitem>As result will be shown the generated URI and the output message of executing the ODS REST API.
 In our case, the id of the new created event will be: 1683 <itemizedlist mark="bullet" spacing="compact"><listitem><figure><graphic fileref="VirtOAuthTestToolExampleCalendar/oc3.png" /></figure> </listitem>
</itemizedlist></listitem>
<listitem>Now lets get the data for the created event.
 In the form enter: <orderedlist spacing="compact"><listitem> <emphasis>API method</emphasis>: calendar.get </listitem>
<listitem> <emphasis>API parameters</emphasis>: event_id=1683 </listitem>
<listitem>Select for <emphasis>Query options</emphasis>: &quot;Generate URI and Submit&quot;.
</listitem>
</orderedlist></listitem>
<listitem>Click the &quot;Execute&quot; button.
</listitem>
<listitem>As result in the &quot;Response Body&quot; text-area will be shown the retrieved details for the event with the given above id.
<itemizedlist mark="bullet" spacing="compact"><listitem><figure><graphic fileref="VirtOAuthTestToolExampleCalendar/oc4.png" /></figure></listitem>
</itemizedlist></listitem>
</orderedlist><bridgehead class="http://www.w3.org/1999/xhtml:h2">Related</bridgehead>
<itemizedlist mark="bullet" spacing="compact"><listitem><ulink url="VirtuosoOdsControllersCalendar">Calendar REST Controllers</ulink> </listitem>
<listitem><ulink url="VirtOAuthTestTool">OAuth Test Tool for ODS Controllers</ulink> - Examples: <itemizedlist mark="bullet" spacing="compact"><listitem><ulink url="VirtOAuthTestToolExampleBriefcase">ODS Briefcase</ulink> </listitem>
<listitem><ulink url="VirtOAuthTestToolExampleWeblog">ODS Weblog</ulink> </listitem>
<listitem><ulink url="VirtOAuthTestToolExampleAddressbook">ODS Addressbook</ulink> </listitem>
<listitem><ulink url="VirtOAuthTestToolExampleBookmarks">ODS Bookmarks</ulink> </listitem>
<listitem><ulink url="VirtOAuthTestToolExamplePolls">ODS Polls</ulink> </listitem>
<listitem><ulink url="VirtOAuthTestToolExampleFeeds">ODS Feed Manager</ulink> </listitem>
</itemizedlist></listitem>
<listitem><ulink url="http://virtuoso.openlinksw.com/wiki/main/Main/OAuth">OpenLink&#39;s explanation of OAuth</ulink> </listitem>
<listitem><ulink url="http://virtuoso.openlinksw.com/wiki/main/Main/VirtuosoOAuthServer">Virtuoso OAuth server</ulink> </listitem>
<listitem><ulink url="VirtOAuthControllers">Using OAuth with ODS</ulink> </listitem>
<listitem><ulink url="VirtuosoOdsUbiquity">ODS Ubiquity Commands</ulink> </listitem>
<listitem><ulink url="http://virtuoso.openlinksw.com/wiki/main/Main/VirtOAuth">Virtuoso OAuth Implementation</ulink> </listitem>
<listitem><ulink url="VirtuosoOdsControllers">ODS Controllers</ulink> </listitem>
<listitem><ulink url="VirtODSOAuthQA">Testing Virtuoso OAuth with 3rd Party OAuth Clients</ulink> </listitem>
<listitem><ulink url="VirtuosoOdsUbiquityTutorialsOAuth">OAuth Ubiquity Tutorial</ulink> </listitem>
<listitem><ulink url="http://virtuoso.openlinksw.com/wiki/main/Main/VirtOAuthSPARQL">Virtuoso SPARQL OAuth Tutorial</ulink> </listitem>
<listitem><ulink url="VirtuosoOdsUbiquityTutorials">ODS Ubiquity Tutorials</ulink> </listitem>
<listitem><ulink url="VirtOAuthExamples">OAuth Applications Authentication examples</ulink> </listitem>
<listitem><ulink url="http://oauth.net/core/1.0/">OAuth API</ulink></listitem>
</itemizedlist><para><ulink url="CategoryCalendar">CategoryCalendar</ulink> <ulink url="CategoryODS">CategoryODS</ulink> </para>
</section></docbook>