Mendeley Data API Issue Report [closed]

1 week ago 13
ARTICLE AD BOX

Dear Mendeley Data Support Team,

I am writing to report a critical issue with the Mendeley Data public API (data.mendeley.com) that is preventing me from programmatically accessing datasets.

Issue Description

The Mendeley Data API endpoints are not returning correct data. Specifically:

Problem 1: Search API Returns Irrelevant Results

Request:

GET https://data.mendeley.com/api/datasets?search=USDA&limit=100

Expected Result: Datasets containing "USDA" in their metadata.

Actual Result: The API returns datasets that have no relation to the search term "USDA". For example, we receive datasets about "Paleomagnetic studies in Mexico", "Diabetes research", "Gender-based violence statistics", etc. None of these contain "USDA" anywhere in their metadata.

Problem 2: Direct Dataset ID Lookup Returns Wrong Data

Request:

GET https://data.mendeley.com/api/datasets/pgjvbwznk5/1

Expected Result: The specific dataset "A Bills of Materials Dataset for Buildings Made of Mass Timber, Structural Steel, and Reinforced Concrete" from USDA Forest Products Laboratory (DOI: 10.17632/pgjvbwznk5.1).

Actual Result: The API returns a JSON response with {"data": {"results": [...]}} containing 10 random datasets, none of which are the requested dataset.

Problem 3: API Ignores URL Parameters

Both versioned and unversioned URLs return the same incorrect paginated list:

GET /api/datasets/pgjvbwznk5 → Returns random datasets

GET /api/datasets/pgjvbwznk5/1 → Returns same random datasets

The dataset ID in the URL appears to be completely ignored.

Confirmed Datasets That Should Be Retrievable

I have verified (via web browser and Google search) that the following USDA-related datasets exist on Mendeley Data:

Dataset IDDOITitlePublishedpgjvbwznk510.17632/pgjvbwznk5.1Bills of Materials Dataset - USDA Forest Products Laboratory2024-01-18xwwsmncckr10.17632/xwwsmncckr.4USDA FoodData Central Protein Data2024-08-05g26btxwxz910.17632/g26btxwxz9.1USDA Foods Programs Nutritional Data2023-03-03ky83vw36t510.17632/ky83vw36t5.1USDA POX C samples2020-05-04

These datasets are accessible via the web interface at https://data.mendeley.com/datasets/{id}/{version} but cannot be retrieved via the API.

Test Code

Here is a simple Python script that demonstrates the issue:

python

import requests # Test 1: Search for USDA response = requests.get( "https://data.mendeley.com/api/datasets", params={"search": "USDA", "limit": 10}, headers={"Accept": "application/json"} ) data = response.json() results = data.get("data", {}).get("results", []) print("Search for 'USDA' returned:") for r in results[:5]: print(f" - {r.get('name', 'Unknown')}") print(f" ID: {r.get('id')}") # Test 2: Direct ID lookup response = requests.get( "https://data.mendeley.com/api/datasets/pgjvbwznk5/1", headers={"Accept": "application/json"} ) data = response.json() print(f"\nDirect lookup of pgjvbwznk5/1:") print(f" Response keys: {data.keys()}")

Questions

Is there a known issue with the Mendeley Data API that we should be aware of?

Is there an alternative API endpoint we should be using?

Is there a specific authentication method required even for public datasets?

Is there an estimated timeline for when this might be fixed?

Thank you very much!

Billy

Read Entire Article