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 B40 action API.

Query https://opendata.b40cities.org/en/api/3/action/datastore_search
Query (via SQL) https://opendata.b40cities.org/en/api/3/action/datastore_search_sql
OData https://opendata.b40cities.org/en/datastore/odata3.0/ff372db9-2dbf-4c2f-a034-f960c66b07cd
Querying »
Query example (first 5 results)

https://opendata.b40cities.org/en/api/3/action/datastore_search?limit=5&resource_id=ff372db9-2dbf-4c2f-a034-f960c66b07cd

Query example (results containing 'jones')

https://opendata.b40cities.org/en/api/3/action/datastore_search?q=jones&resource_id=ff372db9-2dbf-4c2f-a034-f960c66b07cd

Query example (via SQL statement)

https://opendata.b40cities.org/en/api/3/action/datastore_search_sql?sql=SELECT * from "ff372db9-2dbf-4c2f-a034-f960c66b07cd" WHERE title LIKE 'jones'

OData example (first 5 results, skip 1)

https://opendata.b40cities.org/en/datastore/odata3.0/ff372db9-2dbf-4c2f-a034-f960c66b07cd?$top=5&$skip=1

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

https://opendata.b40cities.org/en/datastore/odata3.0/ff372db9-2dbf-4c2f-a034-f960c66b07cd?$top=5&$format=json

Example: Javascript »

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

        var data = {
          resource_id: 'ff372db9-2dbf-4c2f-a034-f960c66b07cd', // the resource id
          limit: 5, // get 5 results
          q: 'jones' // query for 'jones'
        };
        $.ajax({
          url: 'https://opendata.b40cities.org/en/api/3/action/datastore_search',
          data: data,
          dataType: 'jsonp',
          success: function(data) {
            alert('Total results found: ' + data.result.total)
          }
        });
Example: Python »
      import urllib
      url = 'https://opendata.b40cities.org/en/api/3/action/datastore_search?limit=5&resource_id=ff372db9-2dbf-4c2f-a034-f960c66b07cd&q=title:jones'  
      fileobj = urllib.urlopen(url)
      print fileobj.read()