Files
2025-11-30 08:35:12 +08:00

2.8 KiB

CBDB API Reference

API Endpoint

Base URL: https://cbdb.fas.harvard.edu/cbdbapi/person.php

Query Parameters

Required (one of the following)

  • id - CBDB person ID (integer)
  • name - Person's name in Chinese characters, Pinyin, or other romanization

Optional

  • o - Output format (default: HTML)
    • xml - XML format
    • json - JSON format
    • (no parameter) - HTML format

Query Examples

Query by CBDB ID

https://cbdb.fas.harvard.edu/cbdbapi/person.php?id=1762

Returns data for person with CBDB ID 1762 (Wang Anshi) in HTML format.

Query by Chinese Name

https://cbdb.fas.harvard.edu/cbdbapi/person.php?name=王安石

Returns data for person named 王安石 in HTML format.

Query by Pinyin Name

https://cbdb.fas.harvard.edu/cbdbapi/person.php?name=Wang%20Anshi

Returns data for person named Wang Anshi in HTML format. Note: URL encoding required for spaces (%20).

Query with XML Output

https://cbdb.fas.harvard.edu/cbdbapi/person.php?id=1762&o=xml

Returns XML-formatted data for person with CBDB ID 1762.

Query with JSON Output

https://cbdb.fas.harvard.edu/cbdbapi/person.php?name=王安石&o=json

Returns JSON-formatted data for person named 王安石.

Response Data

The API returns comprehensive biographical data including:

  • Basic information (name, alternative names, gender, dynasty)
  • Birth and death dates/locations
  • Biographical notes and historical context
  • Social relationships and associations
  • Official positions and titles
  • Literary works and writings
  • Geographic locations associated with the person
  • References to source materials

Output Formats

HTML

The default format provides a formatted web page suitable for direct viewing in a browser.

XML

Structured XML output following CBDB's schema, providing maximum flexibility for data extraction and transformation.

JSON

JavaScript Object Notation format for easy integration with modern web applications and APIs.

Best Practices

  1. URL Encoding: Always URL-encode query parameters, especially for:

    • Chinese characters
    • Spaces in Pinyin names
    • Special characters
  2. Output Format Selection:

    • Use JSON for programmatic data extraction and processing
    • Use XML for structured data interchange with other systems
    • Use HTML for direct display to users
  3. Name Queries: When searching by name:

    • Chinese characters often yield most accurate results
    • Pinyin may return multiple matches if names are similar
    • Consider trying both Chinese and Pinyin if initial query returns no results
  4. ID Queries: When CBDB ID is known, always prefer ID-based queries as they are:

    • More precise (single person guaranteed)
    • Faster to process
    • Less ambiguous than name-based queries