CKAN Data API

You can access resource data via a web API with powerful query support. Lisätietoa CKAN:in Data API ja DataStore -päädokumentaatiossa.

Data API:a voidaan käyttää seuraavilla CKAN action API:n toiminnoilla.

Lisää uusi https://data.wprdc.org/fi/api/3/action/datastore_create
Päivitä / Lisää https://data.wprdc.org/fi/api/3/action/datastore_upsert
Haku https://data.wprdc.org/fi/api/3/action/datastore_search
SQL-haku https://data.wprdc.org/fi/api/3/action/datastore_search_sql
OData https://data.wprdc.org/de/datastore/odata3.0/56fb7a63-7a97-4c23-9ffb-666651546381

Hakuesimerkki (ensimmäiset 5 tulosta)

https://data.wprdc.org/fi/api/3/action/datastore_search?resource_id=56fb7a63-7a97-4c23-9ffb-666651546381&limit=5

Kyselyesimerkki (tulokset sisältäen 'jones')

https://data.wprdc.org/fi/api/3/action/datastore_search?resource_id=56fb7a63-7a97-4c23-9ffb-666651546381&q=jones

Kyselyesimerkki (SQL-haun kautta)

https://data.wprdc.org/fi/api/3/action/datastore_search_sql?sql=SELECT * from "56fb7a63-7a97-4c23-9ffb-666651546381" WHERE title LIKE 'jones'

OData example (first 5 results, skip 1)

https://data.wprdc.org/de/datastore/odata3.0/56fb7a63-7a97-4c23-9ffb-666651546381?$top=5&$skip=1

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

https://data.wprdc.org/de/datastore/odata3.0/56fb7a63-7a97-4c23-9ffb-666651546381?$top=5&$format=json

Yksinkertainen ajax (JSONP) -kysely data-API:iin käyttäen jQuery-kutsua.

          var data = {
            resource_id: '56fb7a63-7a97-4c23-9ffb-666651546381', // the resource id
            limit: 5, // get 5 results
            q: 'jones' // query for 'jones'
          };
          $.ajax({
            url: 'https://data.wprdc.org/fi/api/3/action/datastore_search',
            data: data,
            dataType: 'jsonp',
            success: function(data) {
              alert('Total results found: ' + data.result.total)
            }
          });
        import urllib.request
        url = 'https://data.wprdc.org/fi/api/3/action/datastore_search?resource_id=56fb7a63-7a97-4c23-9ffb-666651546381&limit=5&q=title:jones'  
        fileobj = urllib.request.urlopen(url)
        print(fileobj.read())