الواجهة البرمجية API لبيانات CKAN

الوصول إلى بيانات الموارد عبر واجهة الويب البرمجية API مع دعم قوي للاستعلام. مزيد من المعلومات في دليل التطبيقات البرمجية لمخزن البيانات في CKAN.

نقاط الربط لـ API »

يمكن الوصول للـ API الخاص بالبيانات عن طريق إجراءات الـ API الخاصة بـ CKAN

إنشاء https://ihp-wins.unesco.org/ar/api/3/action/datastore_create
تحديث / إدخال https://ihp-wins.unesco.org/ar/api/3/action/datastore_upsert
استعلام https://ihp-wins.unesco.org/ar/api/3/action/datastore_search
الاستعلام (من خلال SQL) https://ihp-wins.unesco.org/ar/api/3/action/datastore_search_sql
استعلام »
مثال على الاستعلام (أول 5 نتائج)

https://ihp-wins.unesco.org/ar/api/3/action/datastore_search?resource_id=8292d967-3390-4818-98c9-720ed391e4fe&limit=5

Query example (results containing 'medio-ambiente')

https://ihp-wins.unesco.org/ar/api/3/action/datastore_search?resource_id=8292d967-3390-4818-98c9-720ed391e4fe&q=medio-ambiente

مثال على الاستعلام (من خلال عبارة SQL)

https://ihp-wins.unesco.org/ar/api/3/action/datastore_search_sql?sql=SELECT * from "8292d967-3390-4818-98c9-720ed391e4fe" WHERE title LIKE 'medio-ambiente'

مثال : بايثون Python »

(ckanapi: RemoteCKAN)

مثال على الاستعلام (أول 5 نتائج)


from ckanapi import RemoteCKAN

rc = RemoteCKAN('https://ihp-wins.unesco.org/ar/', apikey=API_TOKEN)
result = rc.action.datastore_search(
    resource_id="8292d967-3390-4818-98c9-720ed391e4fe",
    limit=5,
)
print(result['record'])

            
Query example (results containing 'medio-ambiente')


from ckanapi import RemoteCKAN

rc = RemoteCKAN('https://ihp-wins.unesco.org/ar/', apikey=API_TOKEN)
result = rc.action.datastore_search(
  resource_id="8292d967-3390-4818-98c9-720ed391e4fe",
    filters={
      subject: ['medio-ambiente'],
      stage: "active",
    },
)
print(result['record'])

              
مثال على الاستعلام (من خلال عبارة SQL)

from ckanapi import RemoteCKAN

rc = RemoteCKAN('https://ihp-wins.unesco.org/ar/', apikey=API_TOKEN)
result = rc.action.datastore_search_sql(
    sql="""SELECT * from "8292d967-3390-4818-98c9-720ed391e4fe" WHERE title LIKE 'medio-ambiente'"""
)
print(result['records'])

              
مثال: Javascript »
مثال على الاستعلام (أول 5 نتائج)


const resp = await fetch(`https://ihp-wins.unesco.org/ar/api/3/action/datastore_search`, {
  method: 'POST',
  headers: {
      'content-type': 'application/json',
      authorization: API_TOKEN
  },
  body: JSON.stringify({
      resource_id: '8292d967-3390-4818-98c9-720ed391e4fe',
      limit: 5,
  })
})
await resp.json()
            
Query example (results containing 'medio-ambiente')


const resp = await fetch(`https://ihp-wins.unesco.org/ar/api/3/action/datastore_search`, {
  method: 'POST',
  headers: {
      'content-type': 'application/json',
      authorization: API_TOKEN
  },
  body: JSON.stringify({
      resource_id: '8292d967-3390-4818-98c9-720ed391e4fe',
      filters: {
          subject: ['medio-ambiente'],
          stage: 'active'
      }
  })
})
await resp.json()
                
مثال على الاستعلام (من خلال عبارة SQL)


const resp = await fetch(`https://ihp-wins.unesco.org/ar/api/3/action/datastore_search`, {
  method: 'POST',
  headers: {
      'content-type': 'application/json',
      authorization: API_TOKEN
  },
  body: JSON.stringify({
      sql: `SELECT * FROM "'8292d967-3390-4818-98c9-720ed391e4fe'" WHERE title LIKE 'medio-ambiente'`
  })
})
await resp.json()
                
Example: curl »
مثال على الاستعلام (أول 5 نتائج)

  
  curl https://ihp-wins.unesco.org/ar/api/3/action/datastore_search \
  -H"Authorization:$API_TOKEN" -d '
{
  "resource_id": "8292d967-3390-4818-98c9-720ed391e4fe",
  "limit": 5
}'
          
Query example (results containing 'medio-ambiente')


curl https://ihp-wins.unesco.org/ar/api/3/action/datastore_search \
-H"Authorization:$API_TOKEN" -d '
{
"resource_id": "8292d967-3390-4818-98c9-720ed391e4fe",
  "filters": {
    "subject": ["medio-ambiente"],
    "stage": "active"
  }
}'
              
مثال على الاستعلام (من خلال عبارة SQL)


curl https://ihp-wins.unesco.org/ar/api/3/action/datastore_search_sql \
  -H"Authorization:$API_TOKEN" -d @- <<END
{
  "sql": "SELECT * FROM \"8292d967-3390-4818-98c9-720ed391e4fe\" WHERE title LIKE 'medio-ambiente'"
}
END
              
Example: R »
مثال على الاستعلام (أول 5 نتائج)


library(httr2)

req <- request("https://ihp-wins.unesco.org/ar/api/3/action/datastore_search")
result <- req %>% 
    req_headers(Authorization = API_TOKEN) %>% 
    req_body_json(list(
        resource_id = '8292d967-3390-4818-98c9-720ed391e4fe',
        limit = 5))
    req_perform %>% 
    resp_body_json

            
Query example (results containing 'medio-ambiente')


  library(httr2)

  req <- request("https://ihp-wins.unesco.org/ar/api/3/action/datastore_search")
  result <- req %>% 
      req_headers(Authorization = API_TOKEN) %>% 
      req_body_json(list(
          resource_id = '8292d967-3390-4818-98c9-720ed391e4fe',
          filters = list('medio-ambiente'),
          stage = "active"))
      req_perform %>% 
      resp_body_json

              
مثال على الاستعلام (من خلال عبارة SQL)


library(httr2)

req <- request("https://ihp-wins.unesco.org/ar/api/3/action/datastore_search_sql")
result <- req %>% 
    req_headers(Authorization = API_TOKEN) %>% 
    req_body_json(list(
      sql="SELECT * from "8292d967-3390-4818-98c9-720ed391e4fe" WHERE title LIKE 'medio-ambiente'")
    req_perform %>% 
    resp_body_json