Available product filters
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
Available product filters
Options available to filter the product search, with their number of results.
GET
/
search
/
works
/
filters
Available product filters
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…"
}
Returns the values you can use in the filters of Search products.
The options and their counts depend on the filters you send: if you apply a filter, only the options that exist within that result are returned.
Query parameters
All are optional and work the same as in Search products. They accept several values separated by commas.string
Year range: minimum and maximum separated by a comma. Example:
2020,2026.string
Product types. Example:
impactu_Artículo de revista.string
Open access status. Example:
diamond,gold.string
OpenAlex topics (URL). Example:
https://openalex.org/T14483.string
Co-authors’ countries, by code. Example:
CO.string
Number of authors:
5 (exactly), 5- (5 or more), -5 (up to 5) or 5-8
(range).string
Author classification. Example:
Investigador Junior.string
Group classification. Example:
A1,A.string
Co-authors’ institution type (ROR). Example:
education,company.Response
The response is an object with one field per filter. A filter appears only if it has options within the result: if there is no data for it, the field is left out.Option lists
object[]
object[]
Research group classifications (
A1, A, B, C, Reconocido). Same
structure as authors_ranking.object[]
Countries of the authors’ affiliations.
value is the country code (for
example, CO) and label its name.object[]
Co-authors’ institution types (according to ROR):
education, funder,
healthcare, company, archive, nonprofit, government, facility and
other.Ranges
object
object
Option trees
These fields are lists of nodes withvalue, title, count and, if they group others, children.
object[]
Product types grouped by source (for example,
impactu). The value of each
child carries the source prefix: impactu_Artículo de revista.object[]
Open access status. The
open node groups diamond, green, hybrid,
gold and bronze; closed has no children.object[]
OpenAlex topics in a hierarchy (domain, field, subfield and topic). The
value of each node is its OpenAlex URL.{
"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…"
}