canonical: https://jentic.com/apis/harvardartmuseums.org/harvardartmuseums

# Harvard Art Museums API

The Harvard Art Museums API is a REST-style service that exposes the same collections data that powers the museums' public website, including objects, the people associated with them, exhibitions, and galleries. The API has 6 read-only endpoints covering listings and single-record lookups for objects, persons, exhibitions, and galleries. Authentication is a free API key passed as an apikey query parameter. Image and IIIF media URLs are returned alongside metadata so consumers can render artwork directly from the response.

## For AI agents

Search and retrieve Harvard Art Museums objects, people, exhibitions, and galleries with a free API key.

## Scope

Does not handle ticketing, donations, or write-back metadata edits - use for read-only Harvard Art Museums collection lookups only.

## Capabilities

- Search the Harvard Art Museums object collection with rich filters
- Fetch a single object record by ID with image and provenance data
- List people (artists, sitters, makers) and fetch a single person by ID
- List exhibitions held by the Harvard Art Museums
- List galleries within the Harvard Art Museums physical space

## Use cases

### Educational Collection Browser

Build a teaching tool that surfaces a curated subset of Harvard Art Museums objects with image, title, and credit line by querying GET /object with filters. Each object record returns IIIF image URLs that classroom apps can render directly. The API is free and requires only an apikey query parameter.

Example prompt: Query GET /object with classification 'Paintings' and century '19th' and return the first 20 objects with their primary image URL.

### Artist Lookup and Linked Records

Use GET /person to list artists, sitters, and makers in the collection, and GET /person/{id} to retrieve a full biographical record. The same person ID appears on object records, so a UI can chain object > person > other works by the same artist. Useful for biography pages and 'related works' sections.

Example prompt: Get person ID 28017 via GET /person/28017 and then query GET /object with that person's ID to list their works in the collection.

### Exhibition Programming Display

List past and current exhibitions for a public-facing exhibitions page by calling GET /exhibition. Each record returns dates, gallery, and a description, which a website or kiosk can render without scraping. Pair with GET /gallery to map exhibitions to physical spaces.

Example prompt: List recent exhibitions via GET /exhibition and pair each with its gallery from GET /gallery for a 'now showing' page.

### AI Agent Art Research Assistant

Wire an art research assistant that answers 'show me Dutch Golden Age paintings at Harvard' by calling /object with appropriate filters through Jentic. The free API key is held in your Jentic One instance, and the agent only handles structured object records, never the raw key. The API is read-only, so an agent cannot modify museum data.

Example prompt: When asked 'find Dutch Golden Age portraits', call GET /object with culture 'Dutch' and classification 'Paintings' and return titles, makers, and image URLs.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | /object | Search and list objects |
| GET | /object/{id} | Get a single object by ID |
| GET | /person | List people |
| GET | /person/{id} | Get a single person by ID |
| GET | /exhibition | List exhibitions |
| GET | /gallery | List galleries |

## Key resources

- **Object** — Artwork records with image URLs, classifications, and provenance
- **Person** — Artists, sitters, and makers associated with objects
- **Exhibition** — Past and current exhibitions
- **Gallery** — Physical galleries within the museums

## Why Jentic

- **Setup:** Wiring the Harvard Art Museums API by hand means appending its apikey query parameter to every call and building each object, person, exhibition, and gallery lookup yourself. Through Jentic you install once, import the Harvard Art Museums API from the API Directory, store the key once, and your agent calls it.
- **Permission scoping:** The Harvard Art Museums API is read-only, covering collection lookups like objects, people, exhibitions, and galleries, so scope your agent to the operations it needs, such as searching objects or reading a person by id. You choose what it may call, and there are no write operations for it to reach.
- **Credential handling:** Your Harvard Art Museums API key is stored once, encrypted, by your own Jentic One instance and appended as the apikey query parameter at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'search harvard art museums for paintings', and Jentic returns the GET /object operation with its input schema and filter parameters so the agent calls the right endpoint without crawling the api-docs repo on GitHub.

## Related APIs

- **Wikimedia** — Wikipedia and Wikimedia Commons content for adding artist context and free-license media around museum records.
- **Art Institute of Chicago** — Open-access museum collection API for cross-museum search.
- **MusicBrainz** — Cultural metadata for music when an exhibition or programme blends visual and musical works.

## FAQ

### What authentication does the Harvard Art Museums API use?

The API uses an API key passed as the apikey query parameter on every request. Keys are issued for free by the Harvard Art Museums. Through Jentic the key is stored in the encrypted vault and appended to each call, so it never enters the agent's prompt context.

### Can I retrieve full image URLs for artworks via this API?

Yes. GET /object and GET /object/{id} return primary image URLs and IIIF service URLs in each object record, so a downstream UI can render the artwork without a separate image lookup. Image rights vary per object and are reflected in the record's metadata.

### What are the rate limits for the Harvard Art Museums API?

The Harvard Art Museums applies fair-use throttling rather than a hard published quota. Their developer documentation requests considerate use and back-off on errors. Expect HTTP 429 if a client bursts well above ordinary read traffic.

### How do I search for paintings through Jentic?

Search Jentic for 'search harvard art museums objects', load the schema for GET /object, and execute with classification 'Paintings' plus any culture or century filter. Run pip install jentic and use the async client.search, client.load, and client.execute pattern.

### Does the Harvard Art Museums API support write operations like submitting metadata?

No. The API is read-only across all six endpoints. Crowdsourced metadata corrections go through a separate editorial process at the museums; this API only exposes the published, curated collection.

### Can I limit what my agent is allowed to do with the Harvard Art Museums API?

Yes. Because Jentic One is self-hosted, you write the rules that decide which operations and credentials your agent may use, so you can scope it to just the reads it needs, such as searching objects with GET /object or reading a person by ID with GET /person/{id}, while withholding exhibition or gallery lookups. The API is read-only across all six endpoints, so there are no write operations for the agent to reach even if it tried. Your free API key stays in your own Jentic One instance and is appended as the apikey query parameter at execution time, so the agent never sees the raw key.
