Merge pull request 'Add Graph API docs' (#77) from graph-api-docs into main

Reviewed-on: #77
This commit is contained in:
Serafeim Chatzopoulos 2024-07-12 16:54:32 +02:00
commit a55323382a
8 changed files with 453 additions and 4 deletions

View File

@ -0,0 +1,50 @@
# Getting a single entity
This is a guide on how to retrieve detailed information on a single entity using the OpenAIRE Graph API.
## Endpoints
Currently, the Graph API supports the following entity types:
- Research products - endpoint: `GET /researchProducts/{id}`
- Organizations - endpoint: `GET /organizations/{id}`
- Data sources - endpoint: `GET /dataSources/{id}`
- Projects - endpoint: `GET /projects/{id}`
You can retrieve the data of a single entity by providing the entity's OpenAIRE identifier (id) in the corresponding endpoint.
The OpenAIRE id is the primary key of an entity in the OpenAIRE Graph.
:::note
Note that if you want to retrieve multiple entities based on their OpenAIRE ids, you can use the [search endpoints and filter](./searching-entities/filtering-search-results.md#or-operator) by the `id` field using `OR`.
:::
## Response
The response of the Graph API is a [Research product](../../data-model/entities/research-product.md), [Organization](../../data-model/entities/organization.md), [Data Source](../../data-model/entities/data-source.md), or [Project](../../data-model/entities/project.md), depending on the endpoint used.
## Example
In order to retrieve the research product with OpenAIRE id: `doi_dedup___::2b3cb7130c506d1c3a05e9160b2c4108`,
you have to perform the following API call:
[https://api-beta.openaire.eu/graph/researchProducts/doi_dedup___::a55b42c0d32a4a24cf99e621623d110e](https://api-beta.openaire.eu/graph/researchProducts/doi_dedup___::a55b42c0d32a4a24cf99e621623d110e)
This will return all the data of the research product with the provided identifier:
```json
{
id: "doi_dedup___::a55b42c0d32a4a24cf99e621623d110e",
mainTitle: "OpenAIRE Graph Dataset",
description: [
"The OpenAIRE Graph is exported as several dataseta, so you can download the parts you are interested into. <strong>publication_[part].tar</strong>: metadata records about research literature (includes types of publications listed here)<br> <strong>dataset_[part].tar</strong>: metadata records about research data (includes the subtypes listed here) <br> <strong>software.tar</strong>: metadata records about research software (includes the subtypes listed here)<br> <strong>otherresearchproduct_[part].tar</strong>: metadata records about research products that cannot be classified as research literature, data or software (includes types of products listed here)<br> <strong>organization.tar</strong>: metadata records about organizations involved in the research life-cycle, such as universities, research organizations, funders.<br> <strong>datasource.tar</strong>: metadata records about data sources whose content is available in the OpenAIRE Graph. They include institutional and thematic repositories, journals, aggregators, funders' databases.<br> <strong>project.tar</strong>: metadata records about project grants.<br> <strong>relation_[part].tar</strong>: metadata records about relations between entities in the graph.<br> <strong>communities_infrastructures.tar</strong>: metadata records about research communities and research infrastructures Each file is a tar archive containing gz files, each with one json per line. Each json is compliant to the schema available at http://doi.org/10.5281/zenodo.8238874. The documentation for the model is available at https://graph.openaire.eu/docs/data-model/ Learn more about the OpenAIRE Graph at https://graph.openaire.eu. Discover the graph's content on OpenAIRE EXPLORE and our API for developers."
],
type: "dataset",
publicationDate: "2023-08-08",
publisher: "Zenodo",
id: [
{
scheme: "Digital Object Identifier",
value: "10.5281/zenodo.8217359"
}
],
// for brevity, the rest of the fields are omitted
}
```

View File

@ -0,0 +1,31 @@
# Graph API <span class="theme-doc-version-badge badge badge--secondary">beta</span>
The OpenAIRE Graph API provides a comprehensive way for developers to explore the [OpenAIRE Graph](https://graph.openaire.eu/), a vast interconnected dataset that aggregates metadata from a wide range of scholarly resources.
The Graph API offers endpoints for accessing and querying this interconnected dataset, enabling users to retrieve detailed information on research products, data sources, organizations, and projects.
## Base URL and Swagger documentation
The base URL of the Graph API is:
```
https://api-beta.openaire.eu/graph/
```
You can access the API Swagger documentation in [https://api-beta.openaire.eu/graph/swagger-ui/index.html#/](https://api-beta.openaire.eu/graph/swagger-ui/index.html#/).
## Notes
Please note that the Graph API:
- is intended for data discovery and exploration; if you are interested in downloading the full OpenAIRE Graph dataset, please navigate [here](../../downloads/full-graph.md).
- adhers to the [terms of use](../terms.md) of the OpenAIRE public APIs - certain (rate limit) restrictions apply.
## Learn more
Please use the following links to learn more about the Graph API:
- [Getting a single entity](./getting-a-single-entity.md) - Retrieve detailed information on a single entity.
- [Searching entities](./searching-entities/searching-entities.md) - Retrieve a list of entities based on specific search criteria.
- [Filtering results](./searching-entities/filtering-search-results.md) - Filter search results based on specific criteria.
- [Sorting results](./searching-entities/sorting-and-paging.md#sorting) - Sort search results based on specific criteria.
- [Paging](./searching-entities/sorting-and-paging.md#paging) - Retrieve a subset of search results.
- [Making requests](./making-requests.md) - Learn how to make requests with different programming languages.

View File

@ -0,0 +1,41 @@
# Making requests
This guide provides examples of how to make requests to the OpenAIRE Graph API using different programming languages.
## Using `curl`
```bash
curl -X GET "https://api-beta.openaire.eu/graph/researchProducts?search=OpenAIRE%20Graph&type=publication&page=1&pageSize=10&sortBy=relevance%20DESC" -H "accept: application/json"
```
## Using Python (with `requests` library)
```python
import requests
url = "https://api-beta.openaire.eu/graph/researchProducts"
params = {
"search": "OpenAIRE Graph",
"type": "publication",
"page": 1,
"pageSize": 10,
"sortBy": "relevance DESC"
}
headers = {
"accept": "application/json"
}
response = requests.get(url, headers=headers, params=params)
if response.status_code == 200:
data = response.json()
print(data)
else:
print(f"Failed to retrieve data: {response.status_code}")
```
:::note
Note that when using `curl` you should ensure that the URL is properly encoded, especially when using special characters or spaces in the query parameters. On the contrary, the `requests` library in Python takes care of URL encoding automatically.
:::

View File

@ -0,0 +1,218 @@
# Filtering search results
Filters can be used to narrow down the search results based on specific criteria.
Filters are provided as query parameters in the request URL (see [here](./searching-entities.md) for the available search entpoints).
Multiple filters can be provided in a single request; they should be formatted as follows:
`param1=value1&param2=value2&...&paramN=valueN`.
:::note
Filters are combined using the logical `AND` operator.
If a filter is provided multiple times, its values are combined using the logical `OR` operator.
For more information on how to use logical operators when searching and filtering, see [Using logical operators](#using-logical-operators).
:::
Examples:
- Get all research products that contain the word `"covid"`, sorted by popularity in descending order:
[https://api-beta.openaire.eu/graph/researchProducts?search=covid&sortBy=popularity DESC](https://api-beta.openaire.eu/graph/researchProducts?search=covid&sortBy=popularity%20DESC)
- Get all publications that are published after `2019-01-01`:
[https://api-beta.openaire.eu/graph/researchProducts?type=publication&fromPublicationDate=2019-01-01](https://api-beta.openaire.eu/graph/researchProducts?type=publication&fromPublicationDate=2019-01-01)
- Get the organization with the ROR id `https://ror.org/0576by029`:
[https://api-beta.openaire.eu/graph/organizations?pid=https://ror.org/0576by029](https://api-beta.openaire.eu/graph/organizations?pid=https://ror.org/0576by029)
## Available parameters
This section provides an overview of the available parameters for each entity type.
### Research products
The following query parameters are available for research products:
| **Parameter** | **Description** |
|-------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **search** | Search in the content of the research product. |
| **mainTitle** | Search in the research product's main title. |
| **description** | Search in the research product's description. |
| **id** | The OpenAIRE id of the research product. |
| **pid** | The persistent identifier of the research product. |
| **originalId** | The identifier of the record at the original sources. |
| **type** | The type of the research product. One of `publication`, `dataset`, `software`, or `other` |
| **fromPublicationDate** | Gets the research products whose publication date is greater than or equal to the given date. A date formatted as `YYYY-MM-DD` |
| **toPublicationDate** | Gets the research products whose publication date is less than or equal to the given date. A date formatted as `YYYY-MM-DD` |
| **subjects** | List of subjects associated to the research product. |
| **countryCode** | The country code for the country associated with the research product. |
| **authorFullName** | The full name of the authors involved in producing this research product. |
| **authorOrcid** | The ORCiD of the authors involved in producing this research product. |
| **publisher** | The name of the entity that holds, archives, publishes prints, distributes, releases, issues, or produces the resource.
| **bestOpenAccessRightLabel** | The best open access rights among the research product's instances. One of `OPEN SOURCE`, `OPEN`, `EMBARGO`, `RESTRICTED`, `CLOSED`, `UNKNOWN` |
| **influenceClass** | Citation-based indicator that reflects the overall impact of a research product. Please, choose a class among `C1`, `C2`, `C3`, `C4`, or `C5` for top 0.01%, top 0.1%, top 1%, top 10%, and average in terms of influence respectively. |
| **impulseClass** | Citation-based indicator that reflects the initial momentum of a research product directly after its publication. Please, choose a class among `C1`, `C2`, `C3`, `C4`, or `C5` for top 0.01%, top 0.1%, top 1%, top 10%, and average in terms of impulse respectively
| **popularityClass** | Citation-based indicator that reflects current impact or attention of a research product. Please, choose a class among `C1`, `C2`, `C3`, `C4`, or `C5` for top 0.01%, top 0.1%, top 1%, top 10%, and average in terms of popularity respectively.
| **citationCountClass** | Citation-based indicator that reflects the overall impact of a research product by summing all its citations. Please, choose a class among `C1`, `C2`, `C3`, `C4`, or `C5` for top 0.01%, top 0.1%, top 1%, top 10%, and average in terms of citation count respectively.
| **instanceType** `[Only for publications]` | Retrieve publications of the given instance type. Check [here](http://api.openaire.eu/vocabularies/dnet:publication_resource) for all possible instance type values. |
| **sdg** `[Only for publications]` | Retrieves publications classified with the respective Sustainable Development Goal number. Integer in the range [1, 17] |
| **fos** `[Only for publications]` | Retrieves publications classified with a given Field of Science (FOS). A FOS classification identifier (see [here](https://explore.openaire.eu/assets/common-assets/vocabulary/fos.json) for details). |
| **isPeerReviewed** `[Only for publications]` | Indicates whether the publications are peerReviewed or not. (Boolean) |
| **isInDiamondJournal** `[Only for publications]` | Indicates whether the publication was published in a diamond journal or not. (Boolean) |
| **isPubliclyFunded** `[Only for publications]` | Indicates whether the publication was publicly funded or not. (Boolean) |
| **isGreen** `[Only for publications]` | Indicates whether the publication was published following the green open access model. (Boolean) |
| **openAccessColor** `[Only for publications]` | Specifies the Open Access color of the publication. One of `bronze`, `gold`, or `hybrid` |
| **relOrganizationId** | Retrieve research products connected to the organization (with OpenAIRE id). |
| **relCommunityId** | Retrieve research products connected to the community (with OpenAIRE id). |
| **relProjectId** | Retrieve research products connected to the project (with OpenAIRE id). |
| **relProjectCode** | Retrieve research products connected to the project with code. |
| **hasProjectRel** | Retrieve research products that are connected to a project. (Boolean) |
| **relProjectFundingShortName**| Retrieve research products connected to a project that has a funder with the given short name. |
| **relProjectFundingStreamId** | Retrieve research products connected to a project that has the given funding identifier. |
| **relHostingDataSourceId** | Retrieve research products hosted by the data source (with OpenAIRE id). |
| **relCollectedFromDatasourceId**| Retrieve research products collected from the data source (with OpenAIRE id). |
| **debugQuery** | Retrieve debug information for the search query. (Boolean) |
| **page** | Page number of the results. (Integer) |
| **pageSize** | Number of results per page. Integer in the range [1, 100] |
| **sortBy** | The field to set the sorting order of the results. Should be provided in the format `fieldname sortDirection`, where the `sortDirection` can be either `ASC` for ascending order or `DESC` for descending order and `fielaname` is one of `relevance`, `publicationDate`, `dateOfCollection`, `influence`, `popularity`, `citationCount`, `impulse`. Multiple sorting parameters should be comma-separated. |
### Organizations
The following query parameters are available for organizations:
| **Parameter** | **Description** |
|----------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|**search** | Search in the content of the organization. |
|**legalName** |The legal name of the organization. |
|**legalShortName** |The legal name of the organization in short form. |
|**id** |The OpenAIRE id of the organization. |
|**pid** |The persistent identifier of the organization. |
|**countryCode** |The country code of the organization. |
|**relCommunityId** |Retrieve organizations connected to the community (with OpenAIRE id). |
|**relCollectedFromDatasourceId**|Retrieve organizations collected from the data source (with OpenAIRE id). |
|**debugQuery** |Retrieve debug information for the search query. |
|**page** |Page number of the results. |
|**pageSize** |Number of results per page. |
|**sortBy** |The field to set the sorting order of the results. Should be provided in the format `fieldname sortDirection`, where the `sortDirection` can be either `ASC` for ascending order or `DESC` for descending order - organizations can only be sorted by `relevance`.|
### Data sources
The following query parameters are available for data sources:
| **Parameter** | **Description** |
|----------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|**search** | Search in the content of the data source. |
|**officialName** |The official name of the data source. |
|**englishName** |The English name of the data source. |
|**legalShortName** |The legal name of the organization in short form. |
|**id** |The OpenAIRE id of the data source. |
|**pid** |The persistent identifier of the data source. |
|**subjects** |List of subjects associated to the datasource. |
|**dataSourceTypeName** |The data source type; see all possible values <a href='https://api.openaire.eu/vocabularies/dnet:datasource_typologies' target='_blank'>here</a> . |
|**contentTypes** |Types of content in the data source, as defined by OpenDOAR. |
|**relOrganizationId** |Retrieve data sources connected to the organization (with OpenAIRE id). |
|**relCommunityId** |Retrieve data sources connected to the community (with OpenAIRE id). |
|**relCollectedFromDatasourceId**|Retrieve data sources collected from the data source (with OpenAIRE id). |
|**debugQuery** |Retrieve debug information for the search query. |
|**page** |Page number of the results. |
|**pageSize** |Number of results per page. |
|**sortBy** |The field to set the sorting order of the results. Should be provided in the format `fieldname sortDirection`, where the `sortDirection` can be either `ASC` for ascending order or `DESC` for descending order - data sources can only be sorted by `relevance`.|
### Projects
The following query parameters are available for projects:
| **Parameter** | **Description** |
|----------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|**search** | Search in the content of the projects. |
|**title** |Search in the project's title. |
|**keywords** |The project's keywords. |
|**id** |The OpenAIRE id of the project. |
|**code** |The grant agreement (GA) code of the project. |
|**acronym** |Project's acronym. |
|**callIdentifier** |The identifier of the research call. |
|**fundingShortName** |The short name of the funder. |
|**fundingStreamId** |The identifier of the funding stream. |
|**fromStartDate** |Gets the projects with start date greater than or equal to the given date. Please provide a date formatted as `YYYY-MM-DD`. |
|**toStartDate** |Gets the projects with start date less than or equal to the given date. Please provide a date formatted as `YYYY-MM-DD`. |
|**fromEndDate** |Gets the projects with end date greater than or equal to the given date. Please provide a date formatted as `YYYY-MM-DD`. |
|**toEndDate** |Gets the projects with end date less than or equal to the given date. Please provide a date formatted as `YYYY-MM-DD`. |
|**relOrganizationName** |The name or short name of the related organization. |
|**relOrganizationId** |The organization identifier of the related organization. |
|**relCommunityId** |Retrieve projects connected to the community (with OpenAIRE id). |
|**relOrganizationCountryCode** |The country code of the related organizations. |
|**relCollectedFromDatasourceId**|Retrieve projects collected from the data source (with OpenAIRE id). |
|**debugQuery** |Retrieve debug information for the search query. |
|**page** |Page number of the results. |
|**pageSize** |Number of results per page. |
|**sortBy** |The field to set the sorting order of the results. Should be provided in the format `fieldname sortDirection`, where the `sortDirection` can be either `ASC` for ascending order or `DESC` for descending order and `fielaname` is one of `relevance`, `startDate`, `endDate`. Multiple sorting parameters should be comma-separated.|
## Using logical operators
The API supports the use of logical operators `AND`, `OR`, and `NOT` to refine your search queries.
These operators help you combine or exclude one or more values for a specific filter.
### `AND` operator
Use the `AND` operator to retrieve results that include all specified values. This narrows your search.
Examples:
- Get research products that contain both `"climate"` and `"change"`:
[https://api-beta.openaire.eu/graph/researchProducts?search=climate AND change](https://api-beta.openaire.eu/graph/researchProducts?search=climate%20AND%20change)
- Get research products that are classified with both Fields of Study (FOS) `"03 medical and health sciences"` and `"0502 economics and business"`:
[https://api-beta.openaire.eu/graph/researchProducts?fos="03 medical and health sciences" AND "0502 economics and business"](https://api-beta.openaire.eu/graph/researchProducts?fos=%2203%20medical%20and%20health%20sciences%22%20AND%20%220502%20economics%20and%20business%22)
:::note
Note that when multiple tokens denote a single filter value, you should enclose them in double quotes, as in the FOS example above.
:::
### `OR` operator
Use the `OR` operator to retrieve results that include any of the specified terms. This broadens your search.
The same functionality can be achieved by providing multiple times the same query parameter or using a comma to separate the values.
Examples:
- Get research products with the OpenAIRE ids `doi_dedup___::2b3cb7130c506d1c3a05e9160b2c4108` or `pmid_dedup__::1591ebf0e0698ed4a99455ff2ba4adc0`:
[https://api-beta.openaire.eu/graph/researchProducts?id=r3730f562f9e::539da48b3796663b17e6166bb966e5b1 OR pmid_dedup__::1591ebf0e0698ed4a99455ff2ba4adc0](https://api-beta.openaire.eu/graph/researchProducts?id=r3730f562f9e::539da48b3796663b17e6166bb966e5b1%20OR%20pmid_dedup__::1591ebf0e0698ed4a99455ff2ba4adc0)
- Get projects that are connected to organizations in the US or Greece:
[https://api-beta.openaire.eu/graph/projects?relOrganizationCountryCode=US OR GR](https://api-beta.openaire.eu/graph/projects?relOrganizationCountryCode=US%20OR%20GR)
or by using the same query parameter multiple times: [https://api-beta.openaire.eu/graph/projects?relOrganizationCountryCode=US&relOrganizationCountryCode=GR](https://api-beta.openaire.eu/graph/projects?relOrganizationCountryCode=US&relOrganizationCountryCode=GR)
or just using comma: [https://api-beta.openaire.eu/graph/projects?relOrganizationCountryCode=US,GR](https://api-beta.openaire.eu/graph/projects?relOrganizationCountryCode=US,GR)
### `NOT` operator
Use the `NOT` operator to exclude specific terms from your search results. This refines your search by filtering out unwanted results.
Examples:
- Get research products that contain `"semantic"` but not `"web"`:
[https://api-beta.openaire.eu/graph/researchProducts?search=semantic NOT web](https://api-beta.openaire.eu/graph/researchProducts?search=semantic%20NOT%20web)
- Get all data sources that are not journals:
[https://api-beta.openaire.eu/graph/dataSources?dataSourceTypeName=NOT Journal](https://api-beta.openaire.eu/graph/dataSources?dataSourceTypeName=NOT%20Journal)
:::note
All the above operators can be combined, along with parentheses, and quotes to create more complex queries.
For example, to get research products that contain the phrase "semantic web" but not "ontology" or "linked data":
[https://api-beta.openaire.eu/graph/researchProducts?search="semantic web" AND NOT (ontology OR "linked data")](https://api-beta.openaire.eu/graph/researchProducts?search=%22semantic%20web%22%20AND%20NOT%20(ontology%20OR%20%22linked%20data%22))
:::

View File

@ -0,0 +1,44 @@
# Searching entities
This is a guide on how to search for specific entities using the OpenAIRE Graph API.
## Endpoints
Currently, the Graph API supports the following entity types:
* Research products - endpoint: [`GET /researchProducts`](https://api-beta.openaire.eu/graph/researchProducts)
* Organizations - endpoint: [`GET /organizations`](https://api-beta.openaire.eu/graph/organizations)
* Data sources - endpoint: [`GET /dataSources`](https://api-beta.openaire.eu/graph/dataSources)
* Projects - endpoint: [`GET /projects`](https://api-beta.openaire.eu/graph/projects)
Each of these endpoints can be used to list all entities of the corresponding type.
Listing such entities can be more useful when using the [filtering](./filtering-search-results.md),
[sorting](./sorting-and-paging.md#sorting), and [paging](./sorting-and-paging.md#paging) capabilities of the Graph API.
## Response
The response of the aforementioned endpoints is an object of the following type:
```json
{
header: {
numFound: 36818386,
maxScore: 1,
queryTime: 21,
page: 1,
pageSize: 10
},
results: [
...
]
}
```
It contains a `header` object with the following fields:
- `numFound`: the total number of entities found
- `maxScore`: the maximum relevance score of the search results
- `queryTime`: the time in milliseconds that the search took
- `page`: the current page of the search results
- `pageSize`: the number of entities per page
Finally, the `results` field contains an array of entities of the corresponding type (i.e., [Research product](../../../data-model/entities/research-product.md), [Organization](../../../data-model/entities/organization.md), [Data Source](../../../data-model/entities/data-source.md), or [Project](../../../data-model/entities/project.md)).

View File

@ -0,0 +1,46 @@
# Sorting and paging
The OpenAIRE Graph API allows you to sort and page through the results of your search queries.
This enables you to retrieve the most relevant results and manage large result sets more effectively.
## Sorting
Sorting based on specific fields, helps to retrieve data in the preferred order.
Sorting is achieved using the `sortBy` parameter, which specifies the field and the direction (ascending or descending) for sorting.
* `sortBy`: Defines the field and the sort direction. The format should be `fieldname sortDirection`, where the `sortDirection` can be either `ASC` for ascending order or `DESC` for descending order.
The field names that can be used for sorting are specific to each entity type and can be found in the `sortBy` field values of the [available paremeters](../searching-entities/filtering-search-results.md#available-parameters).
Note that the default sorting is based on the `relevance` score of the search results.
Examples:
- Get research products published after `2020-01-01` and sort them by the publication date in descending order:
[https://api-beta.openaire.eu/graph/researchProducts?fromPublicationDate=2020-01-01&sortBy=publicationDate DESC](https://api-beta.openaire.eu/graph/researchProducts?fromPublicationDate=2020-01-01&sortBy=publicationDate%20DESC)
- Get research products with the keyword `"COVID-19"` and sort them by their (citation-based) popularity:
[https://api-beta.openaire.eu/graph/researchProducts?search=COVID-19&sortBy=popularity DESC](https://api-beta.openaire.eu/graph/researchProducts?search=COVID-19&sortBy=popularity%20DESC)
Note that you can combine multiple sorting conditions by separating them with a comma.
Example:
- Get research products with the keyword `"COVID-19"` and sort them by their publication date in ascending order and then by their popularity in descending order:
[https://api-beta.openaire.eu/graph/researchProducts?search=COVID-19&sortBy=publicationDate ASC,popularity DESC](https://api-beta.openaire.eu/graph/researchProducts?search=COVID-19&sortBy=publicationDate%20ASC,popularity%20DESC)
## Paging
The OpenAIRE Graph API supports paging through the use of `page` and `pageSize` parameters, enabling you to specify which part of the result set to retrieve and how many results per page.
* `page`: Specifies the page number of the results you want to retrieve. Page numbering starts from 1.
* `pageSize`: Defines the number of results to be returned per page. This helps limit the amount of data returned in a single request, making it easier to process.
Example:
- Get the top 10 most influential research products that contain the phrase "knowledge graphs":
[https://api-beta.openaire.eu/graph/researchProducts?search="knowledge graphs"&page=1&pageSize=10&sortBy=influence DESC](https://api-beta.openaire.eu/graph/researchProducts?search=%22knowledge%20graphs%22&page=1&pageSize=10&sortBy=influence%20DESC)

View File

@ -1,9 +1,10 @@
# Public APIs
The OpenAIRE Graph data are accessible through various public APIs. More specifically, the following APIs are currently provided:
* [Search API](./search-api/search-api.md) (an API to search for research products and projects)
* [ScholeXplorer API](https://api.scholexplorer.openaire.eu/swagger-ui/index.html?urls.primaryName=Scholexplorer%20API%20V2.0) (an API offering dataset-publication & dataset-dataset links)
* [DSpace & EPrints API](./dspace-eprints-api.md) (an API to offer custom access to metadata for projects funded by a selection of international funders for DSpace and EPrints platforms)
* [Broker API](./broker-api.md) (an API to enrich metadata for repositories, publishers, and aggregators)
* [Graph API](./graph-api/graph-api.md) - an API to explore the OpenAIRE Graph
* [Search API](./search-api/search-api.md) - an API to search for research products and projects
* [ScholeXplorer API](https://api.scholexplorer.openaire.eu/swagger-ui/index.html?urls.primaryName=Scholexplorer%20API%20V2.0) - an API offering dataset-publication & dataset-dataset links
* [DSpace & EPrints API](./dspace-eprints-api.md) - an API to offer custom access to metadata for projects funded by a selection of international funders for DSpace and EPrints platforms
* [Broker API](./broker-api.md) - an API to enrich metadata for repositories, publishers, and aggregators
It is also worth mentioning that, between 2015 and 2023 a LOD API was being provided but the respective service has been discontinued. Old LOD datasets can be found on Zenodo [here](https://zenodo.org/records/4587369).

View File

@ -58,6 +58,24 @@ const sidebars = {
label: "Public APIs",
link: {type: 'doc', id: 'apis/home'},
items: [
{
type: 'category',
label: "Graph API",
link: { type: 'doc', id: 'apis/graph-api/graph-api' },
items: [
{ type: 'doc', id: 'apis/graph-api/getting-a-single-entity' },
{
type: 'category',
label: "Searching entities",
link: { type: 'doc', id: 'apis/graph-api/searching-entities/searching-entities' },
items: [
{ type: 'doc', id: 'apis/graph-api/searching-entities/filtering-search-results' },
{ type: 'doc', id: 'apis/graph-api/searching-entities/sorting-and-paging' },
]
},
{ type: 'doc', id: 'apis/graph-api/making-requests' },
]
},
{
type: 'category',
label: "Search API",