Приступите подацима ресурса путем веб API-ја са моћном подршком за упите. Додатне информације у главној CKAN документацији о податковном API-ју и складишту података.
Примјери кода:curl https://data.gov.me/cnr/api/action/datastore_search \
-H"Authorization:$API_TOKEN" -d '
{
"resource_id": "4fbdcc41-95f6-4136-b157-ebbb674271b1",
"limit": 5,
"q": "jones"
}'
const resp = await fetch(`https://data.gov.me/cnr/api/action/datastore_search`, {
method: 'POST',
headers: {
'content-type': 'application/json',
authorization: API_TOKEN
},
body: JSON.stringify({
resource_id: '4fbdcc41-95f6-4136-b157-ebbb674271b1',
limit: 5,
q: 'jones'
})
})
await resp.json()
$json = @'
{
"resource_id": "4fbdcc41-95f6-4136-b157-ebbb674271b1",
"limit": 5,
"q": "jones"
}
'@
$response = Invoke-RestMethod https://data.gov.me/cnr/api/action/datastore_search`
-Method Post -Body $json -Headers @{"Authorization"="$API_TOKEN"}
$response.result.records
(користећи ckanapi клијентску библиотеку)
from ckanapi import RemoteCKAN
rc = RemoteCKAN('https://data.gov.me/cnr/', apikey=API_TOKEN)
result = rc.action.datastore_search(
resource_id="4fbdcc41-95f6-4136-b157-ebbb674271b1",
limit=5,
q="jones",
)
print(result['records'])
library(httr2)
req <- request("https://data.gov.me/cnr/api/action/datastore_search")
result <- req %>%
req_headers(Authorization = API_TOKEN) %>%
req_body_json(list(
resource_id = '4fbdcc41-95f6-4136-b157-ebbb674271b1',
limit = 5,
q = 'jones'))
req_perform %>%
resp_body_json
Добијте резултате са "watershed" или "survey" као предметом и "active" као фазом:
curl https://data.gov.me/cnr/api/action/datastore_search \
-H"Authorization:$API_TOKEN" -d '
{
"resource_id": "4fbdcc41-95f6-4136-b157-ebbb674271b1",
"filters": {
"subject": ["watershed", "survey"],
"stage": "active"
}
}'
const resp = await fetch(`https://data.gov.me/cnr/api/action/datastore_search`, {
method: 'POST',
headers: {
'content-type': 'application/json',
authorization: API_TOKEN
},
body: JSON.stringify({resource_id: '4fbdcc41-95f6-4136-b157-ebbb674271b1', filters: {
subject: ['watershed', 'survey'],
stage: 'active'
}})})
await resp.json()
$json = @'
{
"resource_id": "4fbdcc41-95f6-4136-b157-ebbb674271b1",
"filters": {
"subject": ["watershed", "survey"],
"stage": "active"
}
}
'@
$response = Invoke-RestMethod https://data.gov.me/cnr/api/action/datastore_search`
-Method Post -Body $json -Headers @{"Authorization"="$API_TOKEN"}
$response.result.records
from ckanapi import RemoteCKAN
rc = RemoteCKAN('https://data.gov.me/cnr/', apikey=API_TOKEN)
result = rc.action.datastore_search(
resource_id="4fbdcc41-95f6-4136-b157-ebbb674271b1",
filters={
"subject": ["watershed", "survey"],
"stage": "active",
},
)
print(result['records'])
library(httr2)
req <- request("https://data.gov.me/cnr/api/action/datastore_search")
result <- req %>%
req_headers(Authorization = API_TOKEN) %>%
req_body_json(list(
resource_id='4fbdcc41-95f6-4136-b157-ebbb674271b1',
filters = list(
subject = list("watershed", "survey"),
stage = "active")))
req_perform %>%
resp_body_json
Неким API крајњим тачкама се може приступити коришћењем GET упитног низа.
Примјер упита (првих 5 резултата) Примјер упита (резултати који садрже 'ministarstvo')