CKAN Data API

Sisällöt on saatavilla myös kyselyrajapinnan (API) kautta. Lisätietoa CKAN:in Data API ja DataStore -päädokumentaatiossa.

Päätepisteet »

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

Lisää uusi https://data.santamonica.gov/fi/api/3/action/datastore_create
Päivitä / Lisää https://data.santamonica.gov/fi/api/3/action/datastore_upsert
Haku https://data.santamonica.gov/fi/api/3/action/datastore_search
SQL-haku https://data.santamonica.gov/fi/api/3/action/datastore_search_sql

OData https://data.santamonica.gov/id/datastore/odata3.0/0225fe6e-d420-4a24-850b-6fdfc1059ebd
Hakeminen »
Hakuesimerkki (ensimmäiset 5 tulosta)

https://data.santamonica.gov/fi/api/3/action/datastore_search?resource_id=0225fe6e-d420-4a24-850b-6fdfc1059ebd&limit=5

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

https://data.santamonica.gov/fi/api/3/action/datastore_search?resource_id=0225fe6e-d420-4a24-850b-6fdfc1059ebd&q=jones

Kyselyesimerkki (SQL-haun kautta)

https://data.santamonica.gov/fi/api/3/action/datastore_search_sql?sql=SELECT * from "0225fe6e-d420-4a24-850b-6fdfc1059ebd" WHERE "title" LIKE 'jones'

OData example (first 5 results, skip 1)

https://data.santamonica.gov/id/datastore/odata3.0/0225fe6e-d420-4a24-850b-6fdfc1059ebd?$top=5&$skip=1

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

https://data.santamonica.gov/id/datastore/odata3.0/0225fe6e-d420-4a24-850b-6fdfc1059ebd?$top=5&$format=json

Esimerkki: Javascript »

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

var data = {
  resource_id: '0225fe6e-d420-4a24-850b-6fdfc1059ebd', // the resource id
  limit: 5, // get 5 results
  q: 'jones' // query for 'jones'
};
$.ajax({
  url: 'https://data.santamonica.gov/fi/api/3/action/datastore_search',
  data: data,
  dataType: 'jsonp',
  success: function(data) {
    alert('Total results found: ' + data.result.total)
  }
});
              
Esimerkki: Python »
import json
import urllib.request
url = 'https://data.santamonica.gov/fi/api/3/action/datastore_search?resource_id=0225fe6e-d420-4a24-850b-6fdfc1059ebd&limit=5&q=title:jones'  
fileobj = urllib.request.urlopen(url)
response_dict = json.loads(fileobj.read())
print(response_dict)