<?xml version="1.0"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0">
  <channel>
    <title>CKAN: Ticket #1208: Webstore: a datastore with web API</title>
    <link>http://localhost/ticket/1208</link>
    <description>&lt;ul&gt;&lt;li&gt;SQLite based
&lt;/li&gt;&lt;li&gt;Use Cyclone for async http server on top with auth
&lt;/li&gt;&lt;li&gt;Designed to not be specific to CKAN or anything else
&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;
Current code is here: &lt;a class="ext-link" href="https://github.com/okfn/webstore"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;https://github.com/okfn/webstore&lt;/a&gt;.
&lt;/p&gt;
&lt;h2 id="APISpec"&gt;API Spec&lt;/h2&gt;
&lt;h4 id="Read"&gt;Read&lt;/h4&gt;
&lt;p&gt;
Two basic ways to query::
&lt;/p&gt;
&lt;pre class="wiki"&gt;    GET: /{owner}/{db-name}/?sql=...
    GET: /{owner}/{db-name}/?table=...&amp;amp;attr=value&amp;amp;attr=value&amp;amp;limit=...
&lt;/pre&gt;&lt;p&gt;
Returns::
&lt;/p&gt;
&lt;pre class="wiki"&gt;  {
      u'keys': [u'id', u'name'],
      u'data': [
          [1, u'jones'],
          [u'aaa', u'jones']
          ]
  }
&lt;/pre&gt;&lt;h4 id="Write"&gt;Write&lt;/h4&gt;
&lt;p&gt;
POST to::
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;
/{owner/{database}/{table}
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
Payload is json data structured as follows::
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;
{
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;
unique_keys: [list of key attributes]
data: {dict of values}
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
}
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 id="AuthenticationandAuthorization"&gt;Authentication and Authorization&lt;/h3&gt;
&lt;p&gt;
Authentication: use basic auth header.
&lt;/p&gt;
&lt;p&gt;
Authorization:
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;Default: all read, owner can write
&lt;/li&gt;&lt;li&gt;Restricted: owner can read and write, everyone can do nothing
&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;
Possible future: config file can specify a python method (TODO: method
signature)
&lt;/p&gt;
&lt;h3 id="IntegrationwithOtherSystems"&gt;Integration with Other Systems&lt;/h3&gt;
&lt;p&gt;
TODO: Specify how to delegate authenatication to user database in some other system.
&lt;/p&gt;
</description>
    <language>en-us</language>
    <image>
      <title>CKAN</title>
      <url>http://assets.okfn.org/p/ckan/img/ckan_logo_shortname.png</url>
      <link>http://localhost/ticket/1208</link>
    </image>
    <generator>Trac 0.12.3</generator>
    <item>
      
        <dc:creator>thejimmyg</dc:creator>

      <pubDate>Fri, 08 Jul 2011 11:29:59 GMT</pubDate>
      <title>milestone changed</title>
      <link>http://localhost/ticket/1208#comment:1</link>
      <guid isPermaLink="false">http://localhost/ticket/1208#comment:1</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;milestone&lt;/strong&gt;
                changed from &lt;em&gt;ckan-v1.5-sprint-4&lt;/em&gt; to &lt;em&gt;ckan-current-sprint&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;p&gt;
Rufus and Friedrich are working on this at the moment so putting into the current sprint. I'm considering this as preliminary investigation to inform the wider project that David Raznick is leading on.
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>rgrp</dc:creator>

      <pubDate>Sun, 24 Jul 2011 16:35:06 GMT</pubDate>
      <title></title>
      <link>http://localhost/ticket/1208#comment:2</link>
      <guid isPermaLink="false">http://localhost/ticket/1208#comment:2</guid>
      <description>
        &lt;p&gt;
Propose this ticket can be closed as webstore is now functional and being used. Can open new tickets for specific improvements / adaptations as the need arises.
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>pudo</dc:creator>

      <pubDate>Mon, 01 Aug 2011 09:40:46 GMT</pubDate>
      <title>status changed; resolution set</title>
      <link>http://localhost/ticket/1208#comment:3</link>
      <guid isPermaLink="false">http://localhost/ticket/1208#comment:3</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;status&lt;/strong&gt;
                changed from &lt;em&gt;new&lt;/em&gt; to &lt;em&gt;closed&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;resolution&lt;/strong&gt;
                set to &lt;em&gt;fixed&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;p&gt;
This should be closed:
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;&lt;a class="ext-link" href="https://github.com/okfn/webstore"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;https://github.com/okfn/webstore&lt;/a&gt; - See README for details
&lt;/li&gt;&lt;li&gt;Python client lib: &lt;a class="ext-link" href="https://github.com/okfn/webstore-client"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;https://github.com/okfn/webstore-client&lt;/a&gt;
&lt;/li&gt;&lt;li&gt;&lt;a class="ext-link" href="http://webstore.thedatahub.org/"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://webstore.thedatahub.org/&lt;/a&gt; - Demo install
&lt;/li&gt;&lt;li&gt;&lt;a class="ext-link" href="http://wiki.ckan.net/Webstore"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://wiki.ckan.net/Webstore&lt;/a&gt; - Overview
&lt;/li&gt;&lt;/ul&gt;
      </description>
      <category>Ticket</category>
    </item>
 </channel>
</rss>