API de datos

Acceso al recurso de datos mediante una API web con servicio de consulta completo. Más información en la documentación del API de Datos principal y del DataStore de CKAN.

Punto de acceso API »

El API de Datos es accesible a través de las siguientes acciones de la API de acción de CKAN.

Crear https://data.dev-wins.com/es/api/3/action/datastore_create
Actualizar / Insertar https://data.dev-wins.com/es/api/3/action/datastore_upsert
Consulta https://data.dev-wins.com/es/api/3/action/datastore_search
Consulta (vía SQL) https://data.dev-wins.com/es/api/3/action/datastore_search_sql
Consulta »
Ejemplo de consulta (primeros cinco resultados)

https://data.dev-wins.com/es/api/3/action/datastore_search?resource_id=835b6c71-8004-460b-a4a8-d0676a60a106&limit=5

Consulta ejemplo (resultados que contienen 'medio-ambiente')

https://data.dev-wins.com/es/api/3/action/datastore_search?resource_id=835b6c71-8004-460b-a4a8-d0676a60a106&q=medio-ambiente

Consulta ejemplo (vía sentencia SQL)

https://data.dev-wins.com/es/api/3/action/datastore_search_sql?sql=SELECT * from "835b6c71-8004-460b-a4a8-d0676a60a106" WHERE title LIKE 'medio-ambiente'

Ejemplo: Python »

(ckanapi: RemoteCKAN)

Ejemplo de consulta (primeros cinco resultados)


from ckanapi import RemoteCKAN

rc = RemoteCKAN('https://data.dev-wins.com/es/', apikey=API_TOKEN)
result = rc.action.datastore_search(
    resource_id="835b6c71-8004-460b-a4a8-d0676a60a106",
    limit=5,
)
print(result['record'])

            
Consulta ejemplo (resultados que contienen 'medio-ambiente')


from ckanapi import RemoteCKAN

rc = RemoteCKAN('https://data.dev-wins.com/es/', apikey=API_TOKEN)
result = rc.action.datastore_search(
  resource_id="835b6c71-8004-460b-a4a8-d0676a60a106",
    filters={
      subject: ['medio-ambiente'],
      stage: "active",
    },
)
print(result['record'])

              
Consulta ejemplo (vía sentencia SQL)

from ckanapi import RemoteCKAN

rc = RemoteCKAN('https://data.dev-wins.com/es/', apikey=API_TOKEN)
result = rc.action.datastore_search_sql(
    sql="""SELECT * from "835b6c71-8004-460b-a4a8-d0676a60a106" WHERE title LIKE 'medio-ambiente'"""
)
print(result['records'])

              
Ejemplo: Javascript »
Ejemplo de consulta (primeros cinco resultados)


const resp = await fetch(`https://data.dev-wins.com/es/api/3/action/datastore_search`, {
  method: 'POST',
  headers: {
      'content-type': 'application/json',
      authorization: API_TOKEN
  },
  body: JSON.stringify({
      resource_id: '835b6c71-8004-460b-a4a8-d0676a60a106',
      limit: 5,
  })
})
await resp.json()
            
Consulta ejemplo (resultados que contienen 'medio-ambiente')


const resp = await fetch(`https://data.dev-wins.com/es/api/3/action/datastore_search`, {
  method: 'POST',
  headers: {
      'content-type': 'application/json',
      authorization: API_TOKEN
  },
  body: JSON.stringify({
      resource_id: '835b6c71-8004-460b-a4a8-d0676a60a106',
      filters: {
          subject: ['medio-ambiente'],
          stage: 'active'
      }
  })
})
await resp.json()
                
Consulta ejemplo (vía sentencia SQL)


const resp = await fetch(`https://data.dev-wins.com/es/api/3/action/datastore_search`, {
  method: 'POST',
  headers: {
      'content-type': 'application/json',
      authorization: API_TOKEN
  },
  body: JSON.stringify({
      sql: `SELECT * FROM "'835b6c71-8004-460b-a4a8-d0676a60a106'" WHERE title LIKE 'medio-ambiente'`
  })
})
await resp.json()
                
Example: curl »
Ejemplo de consulta (primeros cinco resultados)

  
  curl https://data.dev-wins.com/es/api/3/action/datastore_search \
  -H"Authorization:$API_TOKEN" -d '
{
  "resource_id": "835b6c71-8004-460b-a4a8-d0676a60a106",
  "limit": 5
}'
          
Consulta ejemplo (resultados que contienen 'medio-ambiente')


curl https://data.dev-wins.com/es/api/3/action/datastore_search \
-H"Authorization:$API_TOKEN" -d '
{
"resource_id": "835b6c71-8004-460b-a4a8-d0676a60a106",
  "filters": {
    "subject": ["medio-ambiente"],
    "stage": "active"
  }
}'
              
Consulta ejemplo (vía sentencia SQL)


curl https://data.dev-wins.com/es/api/3/action/datastore_search_sql \
  -H"Authorization:$API_TOKEN" -d @- <<END
{
  "sql": "SELECT * FROM \"835b6c71-8004-460b-a4a8-d0676a60a106\" WHERE title LIKE 'medio-ambiente'"
}
END
              
Example: R »
Ejemplo de consulta (primeros cinco resultados)


library(httr2)

req <- request("https://data.dev-wins.com/es/api/3/action/datastore_search")
result <- req %>% 
    req_headers(Authorization = API_TOKEN) %>% 
    req_body_json(list(
        resource_id = '835b6c71-8004-460b-a4a8-d0676a60a106',
        limit = 5))
    req_perform %>% 
    resp_body_json

            
Consulta ejemplo (resultados que contienen 'medio-ambiente')


  library(httr2)

  req <- request("https://data.dev-wins.com/es/api/3/action/datastore_search")
  result <- req %>% 
      req_headers(Authorization = API_TOKEN) %>% 
      req_body_json(list(
          resource_id = '835b6c71-8004-460b-a4a8-d0676a60a106',
          filters = list('medio-ambiente'),
          stage = "active"))
      req_perform %>% 
      resp_body_json

              
Consulta ejemplo (vía sentencia SQL)


library(httr2)

req <- request("https://data.dev-wins.com/es/api/3/action/datastore_search_sql")
result <- req %>% 
    req_headers(Authorization = API_TOKEN) %>% 
    req_body_json(list(
      sql="SELECT * from "835b6c71-8004-460b-a4a8-d0676a60a106" WHERE title LIKE 'medio-ambiente'")
    req_perform %>% 
    resp_body_json