CKAN Data API

Access resource data via a web API with powerful query support. Further information in the main CKAN Data API and DataStore documentation.

Endpoints »

The Data API can be accessed via the following actions of the CKAN action API.

Create /datastore_create
Update / Insert /datastore_upsert
Query /datastore_search
Query (via SQL) /datastore_search_sql

OData http://data.ctdata.org/datastore/odata3.0/e5a4a5cc-13fc-440f-87db-7ed44c3d7189
Querying »
Query example (first 5 results)

/datastore_search?resource_id=e5a4a5cc-13fc-440f-87db-7ed44c3d7189&limit=5

Query example (results containing 'jones')

/datastore_search?resource_id=e5a4a5cc-13fc-440f-87db-7ed44c3d7189&q=jones

Query example (via SQL statement)

/datastore_search_sql?sql=SELECT * from "e5a4a5cc-13fc-440f-87db-7ed44c3d7189" WHERE title LIKE 'jones'

OData example (first 5 results, skip 1)

http://data.ctdata.org/datastore/odata3.0/e5a4a5cc-13fc-440f-87db-7ed44c3d7189?$top=5&$skip=1

OData example (first 5 results, return as OData JSON)

http://data.ctdata.org/datastore/odata3.0/e5a4a5cc-13fc-440f-87db-7ed44c3d7189?$top=5&$format=json

Example: Javascript »

A simple ajax (JSONP) request to the data API using jQuery.

  var data = {
    resource_id: 'e5a4a5cc-13fc-440f-87db-7ed44c3d7189', // the resource id
    limit: 5, // get 5 results
    q: 'jones' // query for 'jones'
  };
  $.ajax({
    url: '/datastore_search',
    data: data,
    dataType: 'jsonp',
    success: function(data) {
      alert('Total results found: ' + data.result.total)
    }
  });
Example: Python »
import urllib
url = '/datastore_search?limit=5&q=title:jones'
fileobj = urllib.urlopen(url)
print fileobj.read()