Next free-source hunt
We check for new free data every weekday.
Datasets / Research & Grey Literature
graph.openaire.eu/

OpenAIRE Graph API

Freeauth: none (60 requests/hour); free account token for up to 7,200/hourProvider terms#research-grey-literature#papers#citations#historical-data✓ verified Nov 3, 2026

OpenAIRE Graph API

The OpenAIRE Graph API queries the OpenAIRE Graph, which aggregates metadata from a wide range of scholarly resources into linked records for research products (such as publications), data sources, organizations, projects and persons. Parameter-based and filter-based query styles return JSON with paging, and the filter-based style adds faceted counts and field selection. Unauthenticated requests are allowed.

Required Attribution:

Acknowledge OpenAIRE as the data source.

Coverage

Metadata aggregated from "a wide range of scholarly resources"; the full OpenAIRE Graph can also be downloaded in bulk. Offset paging stops at 10,000 results per query, so use cursor paging or the bulk dump for more. Publication delay: Not stated.

Verdict

Use it to link research products to the projects, organizations and funders behind them and to check access rights across sources. OpenAIRE says records may be reused by commercial and non-commercial users under CC BY as long as OpenAIRE is acknowledged as a data source. Unauthenticated requests are limited to 60 an hour, so register for a personal access token (used for up to one hour at a time, up to 7,200 requests an hour) for anything beyond a few queries.

Get the free weekly email

Free weekly email of newly verified free data. Unsubscribe by emailing us.

Use in your agent

Load OpenAIRE research products for a search into pandas and Parquet. Checked against the provider's documentation on Nov 3, 2026.

Raw skill file (/skills/openaire-graph-api.md)Also in our MCP server: call get_ingestion_skill with {"slug": "openaire-graph-api"}.

Access

  • No key for up to 60 requests an hour; register for a personal access token (valid for one hour at a time) for up to 7,200 an hour.
  • Base URL https://api.openaire.eu/graph/; research products are at v1/researchProducts with search, type, date and paging parameters.

Request

bash
curl 'https://api.openaire.eu/graph/v1/researchProducts?search=sovereign%20debt&type=publication&fromPublicationDate=2025-01-01&pageSize=100&page=1'

Format

JSON with header (numFound, page, pageSize, nextCursor) and results; each research product has id, mainTitle, publicationDate, type, bestAccessRight, pids (scheme and value, such as doi), authors and descriptions.

Load into pandas and Parquet

Needs Python 3 with requests, pandas and pyarrow.

python
"""OpenAIRE Graph research products -> pandas -> Parquet. Unauthenticated: up to 60 requests an hour."""
import requests
import pandas as pd

params = {"search": "sovereign debt", "type": "publication", "pageSize": 100, "page": 1,
          "fromPublicationDate": "2025-01-01"}
r = requests.get("https://api.openaire.eu/graph/v1/researchProducts", params=params, timeout=90)
r.raise_for_status()
js = r.json()
rows = [{
    "openaire_id": p.get("id"),
    "title": p.get("mainTitle"),
    "publication_date": p.get("publicationDate"),
    "type": p.get("type"),
    "best_access_right": (p.get("bestAccessRight") or {}).get("label"),
    "doi": next((pid.get("value") for pid in (p.get("pids") or []) if pid.get("scheme") == "doi"), None),
} for p in js["results"]]
df = pd.DataFrame(rows)
df.to_parquet("openaire_products.parquet", index=False)
print(len(df), "research products on this page of", js["header"]["numFound"], "matches")

Run by us on 2026-11-03 (python 3.13.5 | pandas 3.1.0 | pyarrow 26.0.0 | requests 2.34.2). Result: 100 research products on this page of 1556 matches

Limits

  • 60 requests per hour without a token; up to 7,200 per hour with one.
  • Offset paging stops at 10,000 results per query; use cursor paging or the bulk graph download for more.

Quirks

  • Records are deduplicated across sources, so ids can look like doi_dedup___::... rather than a DOI.
  • bestAccessRight can be missing; treat it as unknown, not closed.

Terms and attribution

  • Records may be reused commercially and non-commercially under CC BY, with OpenAIRE acknowledged as the data source.

Sources

Information and education only. Not financial, investment, legal or tax advice. Listings can be inaccurate, incomplete or out of date and are provided "as is". Free tiers, limits and licenses belong to each provider and can change, so check the provider's own terms before you rely on them. Terms & Disclaimer