Crossref · Schema

Crossref Work

Schema for a Crossref Work record returned by /works endpoints, capturing the core scholarly metadata fields.

CitationsDOIFundersIdentifiersJournalsLicensesMembersMetadataOpen AccessORCIDPrefixesPublishersReference LinkingRORScholarlyResearch DataOAI-PMHScholarly Publishing

Properties

Name Type Description
DOI string Digital Object Identifier of the work.
URL string Resolvable URL for the DOI.
type string Crossref work type ID such as journal-article, book-chapter, dataset, preprint.
title array
subtitle array
container-title array
short-container-title array
publisher string
publisher-location string
ISSN array
ISBN array
issue string
volume string
page string
article-number string
abstract string
subject array
author array
editor array
translator array
issued object
published object
published-print object
published-online object
created object
deposited object
indexed object
reference-count integer
references-count integer
is-referenced-by-count integer
score number
member string
prefix string
license array
funder array
link array
reference array
relation object
View JSON Schema on GitHub

JSON Schema

crossref-work-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://api-evangelist.github.io/crossref/json-schema/crossref-work-schema.json",
  "title": "Crossref Work",
  "description": "Schema for a Crossref Work record returned by /works endpoints, capturing the core scholarly metadata fields.",
  "type": "object",
  "required": ["DOI", "type"],
  "properties": {
    "DOI": {
      "type": "string",
      "description": "Digital Object Identifier of the work.",
      "pattern": "^10\\."
    },
    "URL": {
      "type": "string",
      "format": "uri",
      "description": "Resolvable URL for the DOI."
    },
    "type": {
      "type": "string",
      "description": "Crossref work type ID such as journal-article, book-chapter, dataset, preprint."
    },
    "title": {
      "type": "array",
      "items": { "type": "string" }
    },
    "subtitle": {
      "type": "array",
      "items": { "type": "string" }
    },
    "container-title": {
      "type": "array",
      "items": { "type": "string" }
    },
    "short-container-title": {
      "type": "array",
      "items": { "type": "string" }
    },
    "publisher": { "type": "string" },
    "publisher-location": { "type": "string" },
    "ISSN": {
      "type": "array",
      "items": { "type": "string" }
    },
    "ISBN": {
      "type": "array",
      "items": { "type": "string" }
    },
    "issue": { "type": "string" },
    "volume": { "type": "string" },
    "page": { "type": "string" },
    "article-number": { "type": "string" },
    "abstract": { "type": "string" },
    "subject": {
      "type": "array",
      "items": { "type": "string" }
    },
    "author": {
      "type": "array",
      "items": { "$ref": "#/$defs/Contributor" }
    },
    "editor": {
      "type": "array",
      "items": { "$ref": "#/$defs/Contributor" }
    },
    "translator": {
      "type": "array",
      "items": { "$ref": "#/$defs/Contributor" }
    },
    "issued": { "$ref": "#/$defs/PartialDate" },
    "published": { "$ref": "#/$defs/PartialDate" },
    "published-print": { "$ref": "#/$defs/PartialDate" },
    "published-online": { "$ref": "#/$defs/PartialDate" },
    "created": { "$ref": "#/$defs/Timestamp" },
    "deposited": { "$ref": "#/$defs/Timestamp" },
    "indexed": { "$ref": "#/$defs/Timestamp" },
    "reference-count": { "type": "integer" },
    "references-count": { "type": "integer" },
    "is-referenced-by-count": { "type": "integer" },
    "score": { "type": "number" },
    "member": { "type": "string" },
    "prefix": { "type": "string" },
    "license": {
      "type": "array",
      "items": { "$ref": "#/$defs/License" }
    },
    "funder": {
      "type": "array",
      "items": { "$ref": "#/$defs/Funder" }
    },
    "link": {
      "type": "array",
      "items": { "$ref": "#/$defs/ResourceLink" }
    },
    "reference": {
      "type": "array",
      "items": { "$ref": "#/$defs/Reference" }
    },
    "relation": {
      "type": "object",
      "additionalProperties": true
    }
  },
  "$defs": {
    "Contributor": {
      "type": "object",
      "properties": {
        "given": { "type": "string" },
        "family": { "type": "string" },
        "name": { "type": "string" },
        "ORCID": { "type": "string", "format": "uri" },
        "authenticated-orcid": { "type": "boolean" },
        "affiliation": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "name": { "type": "string" },
              "id": {
                "type": "array",
                "items": { "type": "object" }
              }
            }
          }
        },
        "sequence": {
          "type": "string",
          "enum": ["first", "additional"]
        }
      }
    },
    "PartialDate": {
      "type": "object",
      "properties": {
        "date-parts": {
          "type": "array",
          "items": {
            "type": "array",
            "items": { "type": "integer" },
            "minItems": 1,
            "maxItems": 3
          }
        },
        "date-time": { "type": "string", "format": "date-time" },
        "timestamp": { "type": "integer" }
      }
    },
    "Timestamp": {
      "type": "object",
      "properties": {
        "date-parts": {
          "type": "array",
          "items": {
            "type": "array",
            "items": { "type": "integer" }
          }
        },
        "date-time": { "type": "string", "format": "date-time" },
        "timestamp": { "type": "integer" }
      }
    },
    "License": {
      "type": "object",
      "properties": {
        "URL": { "type": "string", "format": "uri" },
        "start": { "$ref": "#/$defs/PartialDate" },
        "delay-in-days": { "type": "integer" },
        "content-version": { "type": "string" }
      }
    },
    "Funder": {
      "type": "object",
      "properties": {
        "name": { "type": "string" },
        "DOI": { "type": "string" },
        "doi-asserted-by": { "type": "string" },
        "award": {
          "type": "array",
          "items": { "type": "string" }
        }
      }
    },
    "ResourceLink": {
      "type": "object",
      "properties": {
        "URL": { "type": "string", "format": "uri" },
        "content-type": { "type": "string" },
        "content-version": { "type": "string" },
        "intended-application": { "type": "string" }
      }
    },
    "Reference": {
      "type": "object",
      "properties": {
        "key": { "type": "string" },
        "DOI": { "type": "string" },
        "doi-asserted-by": { "type": "string" },
        "article-title": { "type": "string" },
        "journal-title": { "type": "string" },
        "volume": { "type": "string" },
        "first-page": { "type": "string" },
        "year": { "type": "string" },
        "author": { "type": "string" },
        "unstructured": { "type": "string" }
      }
    }
  }
}

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/crossref-work"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.