Skip to content

Oxton Research Identifier · persistent identifiers and open metadata for scholarly publications

ORI — Oxton Research Identifier Oxton Research Identifier
Menu

Documentation

Technical documentation for journals, developers and integrators: how to connect your editorial platform, the identifier format, the metadata ORI accepts, the public and write APIs, and the policies that apply to every record.

Start here

Choose your path

Identifier format

ORI:institution/year.number

ORI:10001/2026.0001
  • Institution code: 5 or more digits, one per organization. Number: at least 4 digits, per institution and year, never reused.
  • Permanent address and API path without the prefix: /10001/2026.0001.
  • Look-ups accept "ori:", spaces and the full link, and convert them to the canonical form.
  • Regular expression: ORI:[1-9][0-9]{4,8}/[0-9]{4}\.[0-9]{4,9}
  • Earlier identifiers (ORI-XXXXXXXXXXXX, regular expression ORI-[0-9A-HJKMNP-TV-Z]{12}) remain valid at /ORI-XXXXXXXXXXXX.

Resolution and public API

Addresses and endpoints

Open data, no key needed. The public API answers JSON and allows 120 requests per minute per address.

  • https://oriregistry.org/ORI-7K4M9Q2XT8RBPublic page of the record (HTML), with metadata, citations and history.
  • https://oriregistry.org/ORI-7K4M9Q2XT8RB?redirect=1Redirects to the article on the journal website.
  • https://oriregistry.org/ORI-7K4M9Q2XT8RB?format=jsonRecord download: format=json, format=bibtex or format=ris.
  • https://oriregistry.org/wp-json/ori/v1/resolve/ORI-7K4M9Q2XT8RBResolution: identifier, status, record URL, article URL and DOI.
  • https://oriregistry.org/wp-json/ori/v1/records/ORI-7K4M9Q2XT8RBComplete public record as JSON.
  • https://oriregistry.org/wp-json/ori/v1/search?q=sleep&journal=1&per_page=20Search with filters (journal, year, status, language, type) and sorting.
  • https://oriregistry.org/wp-json/ori/v1/journalsParticipating journals.
  • https://oriregistry.org/oai?verb=ListRecords&metadataPrefix=oai_dcOAI-PMH harvesting (Dublin Core), with sets per journal and type.

Request

curl https://oriregistry.org/wp-json/ori/v1/resolve/ORI-7K4M9Q2XT8RB

Response

{
  "identifier": "ORI-7K4M9Q2XT8RB",
  "status": "published",
  "record_url": "https://oriregistry.org/ORI-7K4M9Q2XT8RB",
  "article_url": "https://journal.example.org/article/1",
  "doi": null
}

Write API

For journals and their systems

Authenticated with a journal credential (Authorization: Bearer …) issued in the dashboard, with scopes. Every call is validated and audited, and issuing identifiers follows the plan of the organization.

  • POST/wp-json/ori/v1/recordsCreate a record (draft, reserved or published).
  • PATCH/wp-json/ori/v1/records/{ORI}Update metadata (If-Match with the version).
  • POST/wp-json/ori/v1/records/{ORI}/statusChange status (reserve or publish); withdrawals and retractions are made in the dashboard.
  • POST/wp-json/ori/v1/records/{ORI}/filesDeposit the full text (PDF) in the repository.
  • POST/wp-json/ori/v1/registrationsRegistration request (Idempotency-Key header).
  • GET/wp-json/ori/v1/meThe credential: journal, scopes and plan entitlement.

Module APIs

Available on this registry

  • GET/wp-json/ori-citation/v1/record/{ORI}?style=chicagoCitation in Chicago, Harvard, MLA, IEEE or CSL-JSON (ORI Citation Studio).
  • GET/wp-json/ori-discover/v1/related/{ORI}Related reading across journals (ORI Discover).
  • GET/wp-json/ori-graph/v1/record/{ORI}Connections: researchers, institutions, funders, topics, citations (ORI Research Graph).
  • GET/wp-json/ori-integrity/v1/record/{ORI}Integrity notices of a record (ORI Integrity).

Module data is available for records of organizations whose plan includes the module.

Policies and service

The rules behind every record

Need help with an integration?

The ORI team can help you connect your editorial platform.