
Rijksmuseum collection
The Rijksmuseum shares its collection data through six services without a key (plus the deprecated SRU): a search API, a resolver for its persistent identifiers (Linked Art), OAI-PMH, a change stream (LDES), IIIF for images and data dumps. On 16 October 2026 the search API counted 841,378 objects, 735,784 of them with a digital image, 425,961 under prints and 5,337 paintings.

Rijksmuseum objects with and without a digital image (figures from the Rijksmuseum API): with an image is the largest part, 87% in October 2026
Breakdown in October 2026: with an image 87%, without an image 13%. Total: 841,378 objects.
Objects in the Rijksmuseum collection by type: most prints (425,961 objects), then photographs and drawings
Objects in the Rijksmuseum collection by type, October 2026, in objects. Total: 841,378; the largest 12 of 15 categories are shown. Prints is 51% of the total. Counted with the API's type search field (English terms). It is a partial match: prints include photomechanical prints, and an object can fall under more than one type. Library and archive records are not in the search API.
What you can build with it1
What can you do with it?4 ideas
All paintings by one artist
Combine creator and type: Rembrandt van Rijn with type painting returns 25 paintings. Fetch each object's data through the resolver and put them on a timeline.
Images for an infographic
735,784 objects have a digital image. With IIIF you request exactly the size you need, for example The Night Watch at 800 pixels wide. Check the rights per object.
What changes in the collection?
The LDES stream lists per day which objects were created, updated or deleted. Follow new acquisitions or improved descriptions without downloading everything again.
A century in prints and photographs
Search with creationDate and a wildcard (19??) plus a type, for example photograph. Compare the counts with 19*: they differ a lot (see limitations), so state which query you used.
How to process it4 steps
Search and count
The search API returns 100 identifiers per page and the total in partOf.totalItems. Filters: creator, type, material, technique, title, objectNumber, creationDate, description, aboutActor and imageAvailable. Dutch and English terms both work.
https://data.rijksmuseum.nl/search/collection?creator=Rembrandt%20van%20Rijn&type=painting
Data for one object
Look up the object by number (SK-C-5 is The Night Watch) and request the identifier with _profile=la-framed for Linked Art as JSON-LD. Without a profile a browser is redirected to the collection website.
https://id.rijksmuseum.nl/200107928?_profile=la-framed
The image via IIIF
The Linked Art data contains a IIIF address (iiif.micr.io). Replace full/max with full/800, for an image 800 pixels wide; info.json gives the dimensions.
https://iiif.micr.io/PJEZO/full/800,/0/default.jpg
Everything or just the changes
For the whole collection: OAI-PMH (formats edm and oai_dc) or the data dumps. For keeping up: the LDES stream, organised by year, month and day.
https://data.rijksmuseum.nl/ldes/collection.json
Interesting combinations

How does this object appear in Europeana?
The Rijksmuseum also offers its data in the Europeana Data Model (EDM, via OAI-PMH and the resolver). Search Europeana by title or object number to place an object next to similar ones from other countries.


What was printed when this print was made?
Put 17th and 18th century prints next to the titles the STCN lists for the same year or printer.
Similar sources
- Europeana
Europeana combines collections from thousands of European institutions, including Dutch ones, but the API requires a (free) key.
Register of national monumentsAlso national heritage, but buildings and archaeology on the map rather than museum objects.
- NDNetwerk Digitaal Erfgoed, Datasetregister not in the index yet
Catalogue of over 3,400 heritage datasets from Dutch museums and archives; it lists collections not in this index.
What to watch out for
- Types overlap
The type search field is a partial match: print also finds photomechanical print, and schilderij (4,893) gives different counts than painting (5,337). Count per term and say which term you used.
- Library and archive not in the search API
The search API covers museum objects only. Data from the museum library are in the data dumps, including 321,354 bibliographic works (work.tar.gz).
- Rights per object
Most data and images are public domain or CC0, but works still under copyright carry CC BY 4.0 or a restriction. This is stated per object on the collection website.
- Dates are text
creationDate with 16?? finds 44,973 objects, 16* finds 103,635. The documentation does not say how date ranges are matched. For real dating use begin_of_the_begin and end_of_the_end in the Linked Art data.
- Old API with a key
Many examples online use the old Rijksmuseum API at rijksmuseum.nl/api with a key. The services on data.rijksmuseum.nl work without a key and use different identifiers.
APILinked Art (JSON-LD), OAI-PMH, LDES, IIIF · read 16 Oct 2026
No key (the old API at rijksmuseum.nl/api with a key is something else). tested
objects in the Search API (16 Oct 2026), 735,885 of them with an image tested
json-ldjsonxmlRDF/XML (EDM)n-triplesjpeg
Base URL
https://data.rijksmuseum.nl
Endpoints 7
- GET
/search/collectionSearch the museum collection; 100 identifiers per page, total in partOf.totalItems, next page in next.id. - GET
https://id.rijksmuseum.nl/{nummer}?_profile=la-framedResolver: all data on an object, person, place … as Linked Art JSON-LD. Without _profile a browser is redirected to the collection website. - GET
/{nummer}The same data on data.rijksmuseum.nl, always as data (not the canonical URI). - GET
/oai?verb=…OAI-PMH: Identify, ListMetadataFormats (edm, oai_dc), ListSets, ListIdentifiers, ListRecords, GetRecord. Museum objects only. - GET
/ldes/collection.jsonLDES change stream (Create, Update, Delete), organised by year, month and day via tree:relation; also per dataset: /ldes/dataset/{number}/collection.json. - GET
/cd/collection.jsonIIIF Change Discovery: Activity Streams of changes, start at the last page. - GET
https://iiif.micr.io/{id}/full/{breedte},/0/default.jpgIIIF Image API: an image at any size; info.json gives the dimensions, /manifest the IIIF Presentation manifest.
Filtering from the description
Query parameters, combinable (AND); creator, material, technique and aboutActor are repeatable. Partial matching on text, wildcards * and ? only for objectNumber and creationDate.
Parameters 12
creator | Creator, partial match (Rembrandt finds Rembrandt van Rijn); repeatable. | from the description |
type | Object type, Dutch or English (painting, schilderij); partial match. | from the description |
title | Title, e.g. Night Watch. | from the description |
objectNumber | Object number with wildcards: SK-C-5* finds SK-C-5, SK-C-50 … | from the description |
creationDate | Year or period with * and ? (16??). Note: 16?? returned 44,973 objects, 16* 103,635. | experience |
material / technique | Material (canvas, oil paint) and technique; repeatable. | from the description |
description | Words in the description. | from the description |
aboutActor | Objects depicting or about a person or group. | from the description |
imageAvailable | true or false: only objects with (or without) a digital image. | tested |
memberOfSetId | Objects in a set, e.g. https://id.rijksmuseum.nl/260251. | from the description |
pageToken | Paging; take the full address from next.id. | from the description |
_profile | Resolver: la-framed (Linked Art), * (default) or other profiles such as EDM; also via the Accept-Profile header. | from the description |
Fields in Search and Linked Art (selection) 12
| Name | Type | Meaning |
|---|---|---|
partOf.totalItems | getal | Search: totaal aantal treffers |
orderedItems[].id | uri | Search: identifier van het object (https://id.rijksmuseum.nl/…) |
next.id | url | Search: adres van de volgende pagina (met pageToken) |
identified_by[].content | tekst | Linked Art: objectnummer en titels (SK-C-5, De Nachtwacht) |
produced_by.part[].carried_out_by | uri | Linked Art: maker, met equivalent naar VIAF, ULAN, Wikidata en RKD |
produced_by.timespan | object | Linked Art: datering met begin_of_the_begin en end_of_the_end |
classified_as[] | uri | Linked Art: soort object (AAT-termen) |
made_of[] | uri | Linked Art: materialen |
dimension[] | object | Linked Art: afmetingen met eenheid |
shows[] | uri | Linked Art: VisualItem (wat er te zien is) met verwijzing naar het beeld |
subject_of[].digitally_carried_by[].access_point | url | Linked Art: IIIF-adres van het beeld (iiif.micr.io) |
current_location | uri | Linked Art: waar het object staat |
Limits and pitfalls
- Search: always 100 results per page; no limit on the number of pages (according to the documentation). from the description
- No documented rate limit. data.rijksmuseum.nl has no robots.txt (404); iiif.micr.io does have Disallow: / for all bots: fetch images for display, not in automated bulk. tested
- type is a partial match: print also finds photomechanical print, schilderij and painting return different counts. State the term you used. experience
- OAI-PMH ListSets returned 'An unhandled exception occurred.' on 16 Oct 2026; ListIdentifiers with metadataPrefix=edm worked (completeListSize 846,804). tested
- Since 11 June 2026 the EDM in OAI-PMH strictly follows Europeana's schemas; anyone parsing the XML directly should check this. from the description
- Library and archive are not in Search and OAI-PMH. Library data are in the LDES stream and the data dumps (including 321,354 bibliographic works in work.tar.gz). from the description
Try it HTTP 200 · 310 ms · 16 Oct
https://data.rijksmuseum.nl/search/collection?creator=Rembrandt van Rijn&type=painting
{
"@context": "https://linked.art/ns/v1/search.json",
"id": "https://data.rijksmuseum.nl/search/collection?creator=Rembrandt%20van%20Rijn&type=painting",
"type": "OrderedCollectionPage",
"partOf": {
"id": "https://data.rijksmuseum.nl/search/collection?creator=Rembrandt+van+Rijn&type=painting",
"type": "OrderedCollection",
"totalItems": 25,
"first": {
"id": "https://data.rijksmuseum.nl/search/collection?creator=Rembrandt+van+Rijn&type=painting",
"type": "OrderedCollectionPage"
},
"last": {
"id": "https://data.rijksmuseum.nl/search/collection?creator=Rembrandt+van+Rijn&type=painting",
"type": "OrderedCollectionPage"
}
},
"orderedItems": [
{
"id": "https://id.rijksmuseum.nl/200106038",
"type": "HumanMadeObject"
},
{
"id": "https://id.rijksmuseum.nl/200107928",
"type": "HumanMadeObject"
}
]
}Shortened response, saved at harvest time. Click the URL for the real, current response.
Read from Search API: parameters, wildcards, paging · Persistent identifier resolver, content negotiation with _profile · OAI-PMH: verbs, formats edm and oai_dc · Linked Data Event Stream (changes) · IIIF Image API (Micrio) · Data dumps per domain (N-Triples). Labels: from the description stated in what the api itself publishes. tested from our own small call. platform applies to every api on this platform, per its documentation. experience learned while building open data index.
How to fetch it
curl "https://data.rijksmuseum.nl/search/collection?creator=Rembrandt%20van%20Rijn&type=painting"
More from Rijksmuseum in our index
1 datasets in data.overheid.nl. These changed most recently.
- Rijksmuseum API2022-04-16
More in this topic
See how this page is built
bron: rijksmuseum
blokken: []
secties:
- ideeen
- verwerken
- koppelingen
- vergelijkbaar
- beperkingen
- code
cache:
tag: bron:rijksmuseum
ververs: na statuscheck, als de bron nieuwer is
statuscheck:
methode: "LDES-wijzigingsstroom: tijdstip van de nieuwste wijziging (jaar,
maand, dag, dan de nieuwste pagina)"
verwacht: dagelijks
Source: content/bronnen/rijksmuseum.yaml · Markdown



