Skip to content

Data APIs

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

  • 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

  • Query example (first 5 results)

    /datastore_search?resource_id=ed98626f-adcd-4651-901e-f1deea72f4cb&limit=5

    Query example (results containing 'jones')

    /datastore_search?resource_id=ed98626f-adcd-4651-901e-f1deea72f4cb&q=jones

    Query example (via SQL statement)

    /datastore_search_sql?sql=SELECT * from "ed98626f-adcd-4651-901e-f1deea72f4cb" WHERE title LIKE 'jones'

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

        var data = {
            resource_id: 'ed98626f-adcd-4651-901e-f1deea72f4cb', // 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)
            }
        });
    						
  •     import urllib
        url = '/datastore_search?resource_id=ed98626f-adcd-4651-901e-f1deea72f4cb&limit=5&q=title:jones'
        fileobj = urllib.urlopen(url)
        print fileobj.read()