Skip to content

Journal Data Open API



A developer-facing journal query API, usable for Zotero plugins, OpenClaw Skills, literature management tools and other secondary development.

Provides two capabilities:

CapabilityEndpointTypical Scenario
Impact Factor / QuartilePOST /journals/dev/impact-factors/Show IF, JCR quartile, CAS quartile next to a Zotero item
Warning / Predatory Journal CheckPOST /journals/dev/warnings/Pre-submission safety check, flag warning and predatory journals in red

See the API Reference for details, or try it directly in the Playground.

Important Notes

  • JCR impact factor / quartile data is compiled from publicly available information on the internet, updated to the latest version as of June 17, 2026.
  • The warning list is published by the CAS Literature and Information Center (2025 edition, 130+ journals).
  • The predatory journal list is published by predatoryjournals.org (2025 edition, ~2800 journals).
  • A hit on either list returns is_warning: true; the specific sources are given in sources.
  • Results are kept consistent with the latest PaperPop browser extension and are updated periodically, but real-time synchronization is not guaranteed.
  • Developers should clearly inform users of the data source and nature on the interface to avoid misleading them.

Basic Information

  • Base URL: https://api.byteslink.cn/journals
  • Protocol: HTTPS, both requests and responses are JSON
  • Encoding: UTF-8

Authentication

All /dev/* endpoints use API Key authentication, carried in the request header:

X-API-Key: pp_xxxxxxxxxxxxxxxx
  • Generate it under "User Center → My API" on the website. The plaintext Key is shown only once at generation time, so keep it safe.
  • Each account has only one valid Key at a time; regenerating it rotates the Key and the old one is invalidated immediately.
  • An invalid or missing Key returns 401.

Billing

  • Billed per request: one request counts as 1 use, regardless of how many journals are queried in the batch (up to 20 per request). Tip: batch queries help save your quota. 😊
  • Each day has a free quota; once used up, paid quota is deducted. The paid quota unit price is 0.01 CNY per request, with top-up amounts ranging from 10–999 CNY (whole numbers).
  • The exact free quota amount and remaining balance are subject to the "User Center → My API" page on the website.
  • When the quota is exhausted, 402 Payment Required is returned.
  • Every successful response includes a usage field indicating the billing source and remaining quota for that request, which can be used for client-side reminders.

Rate Limiting

DimensionLimit
Per user (by Key)200 requests/minute
Per IP500 requests/minute

Exceeding the limit returns 429; clients are advised to retry based on Retry-After or with fixed backoff.

Error Codes

Status CodeMeaningDescription
400Parameter errore.g. journals is empty or exceeds 20 items
401Authentication failedKey missing or invalid
402Insufficient quotaBoth free and paid quota exhausted
429Rate limitedPlease reduce request frequency

Error responses follow the standard DRF format, for example:

json
{ "detail": "Invalid API Key" }

Journal Name Matching Rules

The server normalizes journal names for matching, for example:

  • Case-insensitive
  • Leading articles (The/A/An) are ignored
  • & and AND are treated as equivalent, / is treated as a space
  • Common journal abbreviations (e.g. J Med Chem) are automatically mapped to the full name

When there is no match, found: false (or is_warning: false, with an empty sources array) is returned, without raising an error.

PaperPop Home