Affiliation product filters
curl --request GET \
--url https://api.dev.impactu.colav.co/affiliation/{affiliation_type}/{affiliation_id}/research/products/filtersimport requests
url = "https://api.dev.impactu.colav.co/affiliation/{affiliation_type}/{affiliation_id}/research/products/filters"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.dev.impactu.colav.co/affiliation/{affiliation_type}/{affiliation_id}/research/products/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/affiliation/{affiliation_type}/{affiliation_id}/research/products/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/affiliation/{affiliation_type}/{affiliation_id}/research/products/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/affiliation/{affiliation_type}/{affiliation_id}/research/products/filters")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.dev.impactu.colav.co/affiliation/{affiliation_type}/{affiliation_id}/research/products/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": 4952, "min_authors": 1},
"authors_ranking": [{"count": 258060, "label": "Investigador Junior", "value": "Investigador Junior"}],
"countries": [{"count": 135358, "label": "Colombia", "value": "CO"}],
"groups_ranking": [{"count": 43165, "label": "A1", "value": "A1"}],
"institutions_type": [{"count": 135364, "label": "Instituciones académicas", "value": "education"}],
"product_types": [
{
"children": [{"count": 72533, "title": "Artículo de revista", "value": "impactu_Artículo de revista"}],
"title": "ImpactU",
"value": "impactu"
}
],
"status": [
{
"children": [{"count": 18011, "title": "Diamante", "value": "diamond"}],
"count": 36755,
"title": "Abierto",
"value": "open"
}
],
"topics": [
{
"children": [
{
"children": [
{
"children": [{"count": 841, "title": "Education and Teacher Training", "value": "https://openalex.org/T14483"}],
"count": 4534,
"title": "Education",
"value": "https://openalex.org/subfields/3304"
}
],
"count": 17360,
"title": "Social Sciences",
"value": "https://openalex.org/fields/33"
}
],
"count": 27852,
"title": "Social Sciences",
"value": "https://openalex.org/domains/2"
}
],
"years": {"max_year": 2027, "min_year": 25}
}
{
"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…"
}
Affiliation
Affiliation product filters
Options available to filter an affiliation’s products, with their number of results.
GET
/
affiliation
/
{affiliation_type}
/
{affiliation_id}
/
research
/
products
/
filters
Affiliation product filters
curl --request GET \
--url https://api.dev.impactu.colav.co/affiliation/{affiliation_type}/{affiliation_id}/research/products/filtersimport requests
url = "https://api.dev.impactu.colav.co/affiliation/{affiliation_type}/{affiliation_id}/research/products/filters"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.dev.impactu.colav.co/affiliation/{affiliation_type}/{affiliation_id}/research/products/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/affiliation/{affiliation_type}/{affiliation_id}/research/products/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/affiliation/{affiliation_type}/{affiliation_id}/research/products/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/affiliation/{affiliation_type}/{affiliation_id}/research/products/filters")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.dev.impactu.colav.co/affiliation/{affiliation_type}/{affiliation_id}/research/products/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": 4952, "min_authors": 1},
"authors_ranking": [{"count": 258060, "label": "Investigador Junior", "value": "Investigador Junior"}],
"countries": [{"count": 135358, "label": "Colombia", "value": "CO"}],
"groups_ranking": [{"count": 43165, "label": "A1", "value": "A1"}],
"institutions_type": [{"count": 135364, "label": "Instituciones académicas", "value": "education"}],
"product_types": [
{
"children": [{"count": 72533, "title": "Artículo de revista", "value": "impactu_Artículo de revista"}],
"title": "ImpactU",
"value": "impactu"
}
],
"status": [
{
"children": [{"count": 18011, "title": "Diamante", "value": "diamond"}],
"count": 36755,
"title": "Abierto",
"value": "open"
}
],
"topics": [
{
"children": [
{
"children": [
{
"children": [{"count": 841, "title": "Education and Teacher Training", "value": "https://openalex.org/T14483"}],
"count": 4534,
"title": "Education",
"value": "https://openalex.org/subfields/3304"
}
],
"count": 17360,
"title": "Social Sciences",
"value": "https://openalex.org/fields/33"
}
],
"count": 27852,
"title": "Social Sciences",
"value": "https://openalex.org/domains/2"
}
],
"years": {"max_year": 2027, "min_year": 25}
}
{
"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 Affiliation products. They are the same filters as Search products, but computed only over the products of the given affiliation.
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.
Path parameters
string
required
Affiliation type:
institution, faculty, department or group.string
required
Affiliation identifier. Examples:
03bp5hc83 (institution),
03bp5hc83_20 (faculty).Query parameters
All are optional. 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": 4952, "min_authors": 1},
"authors_ranking": [{"count": 258060, "label": "Investigador Junior", "value": "Investigador Junior"}],
"countries": [{"count": 135358, "label": "Colombia", "value": "CO"}],
"groups_ranking": [{"count": 43165, "label": "A1", "value": "A1"}],
"institutions_type": [{"count": 135364, "label": "Instituciones académicas", "value": "education"}],
"product_types": [
{
"children": [{"count": 72533, "title": "Artículo de revista", "value": "impactu_Artículo de revista"}],
"title": "ImpactU",
"value": "impactu"
}
],
"status": [
{
"children": [{"count": 18011, "title": "Diamante", "value": "diamond"}],
"count": 36755,
"title": "Abierto",
"value": "open"
}
],
"topics": [
{
"children": [
{
"children": [
{
"children": [{"count": 841, "title": "Education and Teacher Training", "value": "https://openalex.org/T14483"}],
"count": 4534,
"title": "Education",
"value": "https://openalex.org/subfields/3304"
}
],
"count": 17360,
"title": "Social Sciences",
"value": "https://openalex.org/fields/33"
}
],
"count": 27852,
"title": "Social Sciences",
"value": "https://openalex.org/domains/2"
}
],
"years": {"max_year": 2027, "min_year": 25}
}
{
"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…"
}