Filtros disponibles de productos
curl --request GET \
--url https://api.dev.impactu.colav.co/search/works/filtersimport requests
url = "https://api.dev.impactu.colav.co/search/works/filters"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.dev.impactu.colav.co/search/works/filters', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.dev.impactu.colav.co/search/works/filters",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.dev.impactu.colav.co/search/works/filters"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.dev.impactu.colav.co/search/works/filters")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.dev.impactu.colav.co/search/works/filters")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"authors_count": {"max_authors": 5002, "min_authors": 0},
"authors_ranking": [{"count": 2459197, "label": "Investigador Junior", "value": "Investigador Junior"}],
"countries": [{"count": 1787541, "label": "Colombia", "value": "CO"}],
"groups_ranking": [{"count": 352352, "label": "A1", "value": "A1"}],
"institutions_type": [{"count": 1573150, "label": "Instituciones académicas", "value": "education"}],
"product_types": [
{
"children": [{"count": 978455, "title": "Artículo de revista", "value": "impactu_Artículo de revista"}],
"title": "ImpactU",
"value": "impactu"
}
],
"status": [
{
"children": [{"count": 290071, "title": "Diamante", "value": "diamond"}],
"count": 549211,
"title": "Abierto",
"value": "open"
}
],
"topics": [
{
"children": [
{
"children": [
{
"children": [{"count": 22593, "title": "Education and Teacher Training", "value": "https://openalex.org/T14483"}],
"count": 102372,
"title": "Education",
"value": "https://openalex.org/subfields/3304"
}
],
"count": 453028,
"title": "Social Sciences",
"value": "https://openalex.org/fields/33"
}
],
"count": 810297,
"title": "Social Sciences",
"value": "https://openalex.org/domains/2"
}
],
"years": {"max_year": 4439, "min_year": 0}
}
{
"error": "1 validation error for QueryParams\nmax\n Input should be greater than or equal to 1 [type=greater_than_equal, input_value='0', input_type=str]\n For further i…"
}
Search
Filtros disponibles de productos
Opciones disponibles para filtrar la búsqueda de productos, con su cantidad de resultados.
GET
/
search
/
works
/
filters
Filtros disponibles de productos
curl --request GET \
--url https://api.dev.impactu.colav.co/search/works/filtersimport requests
url = "https://api.dev.impactu.colav.co/search/works/filters"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.dev.impactu.colav.co/search/works/filters', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.dev.impactu.colav.co/search/works/filters",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.dev.impactu.colav.co/search/works/filters"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.dev.impactu.colav.co/search/works/filters")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.dev.impactu.colav.co/search/works/filters")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"authors_count": {"max_authors": 5002, "min_authors": 0},
"authors_ranking": [{"count": 2459197, "label": "Investigador Junior", "value": "Investigador Junior"}],
"countries": [{"count": 1787541, "label": "Colombia", "value": "CO"}],
"groups_ranking": [{"count": 352352, "label": "A1", "value": "A1"}],
"institutions_type": [{"count": 1573150, "label": "Instituciones académicas", "value": "education"}],
"product_types": [
{
"children": [{"count": 978455, "title": "Artículo de revista", "value": "impactu_Artículo de revista"}],
"title": "ImpactU",
"value": "impactu"
}
],
"status": [
{
"children": [{"count": 290071, "title": "Diamante", "value": "diamond"}],
"count": 549211,
"title": "Abierto",
"value": "open"
}
],
"topics": [
{
"children": [
{
"children": [
{
"children": [{"count": 22593, "title": "Education and Teacher Training", "value": "https://openalex.org/T14483"}],
"count": 102372,
"title": "Education",
"value": "https://openalex.org/subfields/3304"
}
],
"count": 453028,
"title": "Social Sciences",
"value": "https://openalex.org/fields/33"
}
],
"count": 810297,
"title": "Social Sciences",
"value": "https://openalex.org/domains/2"
}
],
"years": {"max_year": 4439, "min_year": 0}
}
{
"error": "1 validation error for QueryParams\nmax\n Input should be greater than or equal to 1 [type=greater_than_equal, input_value='0', input_type=str]\n For further i…"
}
Devuelve los valores que puedes usar en los filtros de Buscar productos.
Las opciones y sus conteos dependen de los filtros que envíes: si aplicas un filtro, solo se devuelven las opciones que existen dentro de ese resultado.
Parámetros de consulta
Todos son opcionales y funcionan igual que en Buscar productos. Aceptan varios valores separados por coma.string
Rango de años: mínimo y máximo separados por coma. Ejemplo:
2020,2026.string
Tipos de producto. Ejemplo:
impactu_Artículo de revista.string
Estado de acceso abierto. Ejemplo:
diamond,gold.string
Tópicos de OpenAlex (URL). Ejemplo:
https://openalex.org/T14483.string
Países de los coautores, por código. Ejemplo:
CO.string
Cantidad de autores:
5 (exacto), 5- (5 o más), -5 (hasta 5) o 5-8
(rango).string
Clasificación de los autores. Ejemplo:
Investigador Junior.string
Clasificación de los grupos. Ejemplo:
A1,A.string
Tipo de institución de los coautores (ROR). Ejemplo:
education,company.Respuesta
La respuesta es un objeto con un campo por filtro. Un filtro solo aparece si tiene opciones dentro del resultado: si no hay datos para él, el campo no se incluye.Listas de opciones
object[]
object[]
Clasificaciones de grupos de investigación (
A1, A, B, C,
Reconocido). Misma estructura que authors_ranking.object[]
Países de las afiliaciones de los autores.
value es el código del país (por
ejemplo, CO) y label su nombre.object[]
Tipos de institución de los coautores (según ROR):
education, funder,
healthcare, company, archive, nonprofit, government, facility y
other.Rangos
object
object
Árboles de opciones
Estos campos son listas de nodos convalue, title, count y, si agrupan otros, children.
object[]
Tipos de producto agrupados por fuente (por ejemplo,
impactu). El value de
cada hijo lleva el prefijo de la fuente: impactu_Artículo de revista.object[]
Estado de acceso abierto. El nodo
open agrupa diamond, green, hybrid,
gold y bronze; closed no tiene hijos.object[]
Tópicos de OpenAlex en jerarquía (dominio, campo, subcampo y tópico). El
value de cada nodo es su URL de OpenAlex.{
"authors_count": {"max_authors": 5002, "min_authors": 0},
"authors_ranking": [{"count": 2459197, "label": "Investigador Junior", "value": "Investigador Junior"}],
"countries": [{"count": 1787541, "label": "Colombia", "value": "CO"}],
"groups_ranking": [{"count": 352352, "label": "A1", "value": "A1"}],
"institutions_type": [{"count": 1573150, "label": "Instituciones académicas", "value": "education"}],
"product_types": [
{
"children": [{"count": 978455, "title": "Artículo de revista", "value": "impactu_Artículo de revista"}],
"title": "ImpactU",
"value": "impactu"
}
],
"status": [
{
"children": [{"count": 290071, "title": "Diamante", "value": "diamond"}],
"count": 549211,
"title": "Abierto",
"value": "open"
}
],
"topics": [
{
"children": [
{
"children": [
{
"children": [{"count": 22593, "title": "Education and Teacher Training", "value": "https://openalex.org/T14483"}],
"count": 102372,
"title": "Education",
"value": "https://openalex.org/subfields/3304"
}
],
"count": 453028,
"title": "Social Sciences",
"value": "https://openalex.org/fields/33"
}
],
"count": 810297,
"title": "Social Sciences",
"value": "https://openalex.org/domains/2"
}
],
"years": {"max_year": 4439, "min_year": 0}
}
{
"error": "1 validation error for QueryParams\nmax\n Input should be greater than or equal to 1 [type=greater_than_equal, input_value='0', input_type=str]\n For further i…"
}