Skip to article frontmatterSkip to article content

Lesson 7. Crossref

The Ohio State University Libraries

Crossref is a nonprofit organization that manages a registry of Digital Object Identifiers (DOIs). Publishers collaborate with Crossref to assign a unique DOI to each journal article, book, conference paper, or dataset they publish. This DOI acts like a permanent web address, enabling seamless linking between references, citations, research outputs, funding information, and more.

The Crossref REST API offers free access to the nonprofit’s metadata. This tutorial introduces two useful tools: JSON, a simple data format that resembles Python dictionaries and is easy to read and use, and Python’s built-in logging module.

Data skills | concepts

  • APIs
  • logging
  • JSON data

Learning objectives

  1. Interpret documentation and apply concepts to write functional code.
  2. Extract and work with JSON data using Python’s built-in tools.
  3. Use Python’s logging module to capture and report errors that interrupt code execution.

This tutorial is designed to support multi-session workshops hosted by The Ohio State University Libraries Research Commons. It assumes you already have a basic understanding of Python, including how to iterate through lists and dictionaries to extract data using a for loop. To learn basic Python concepts visit the Python - Mastering the Basics tutorial.

LESSON 7

Crossref

Crossref provides detailed documentation and a wide range of robust learning resources to help users effectively work with its REST API.

JSON

Crossref queries return data in JSON format, which is easy to read and looks similar to Python dictionaries. You can work with JSON data by looping through its key-value pairs to access the information you need.

Logging

APIs sometimes return error codes which interrupt our program’s execution. Logging tells Python how to handle these errors. It can also help to identify issues with your code.