303,525 datasets indexed1,419 publishers
Open Data IndexThe index of open data about the Netherlands
Sources›Heritage and culture
Rijksmuseum
Dutch source

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.

Heritage and cultureOpenAPIDownloadNetherlands · object
Up to date · updated less than an hour ago · checked 17:23
data.rijksmuseum.nl
Screenshot of data.rijksmuseum.nl

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.

Source: Rijksmuseum, Search API (data.rijksmuseum.nl, Linked Art Search) · opgehaald 25 oktober 2026 · selection: imageAvailable=true en imageAvailable=falseOpen the table Single block

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.

Source: Rijksmuseum, Search API (data.rijksmuseum.nl, Linked Art Search) · opgehaald 25 oktober 2026 · selection: type=print, photograph, drawing, letter, poster, medal, map, painting, book, coin, sculpture, album, manuscript, furniture, jewelleryOpen the table Single block

What you can build with it1

What can you do with it?4 ideas

Getting started

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.

Getting started

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.

Advanced

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.

Advanced

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

  1. 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
  2. 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
  3. 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
  4. 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

Similar sources

  • Europeana

    Europeana combines collections from thousands of European institutions, including Dutch ones, but the API requires a (free) key.

  • Register of national monuments

    Also national heritage, but buildings and archaeology on the map rather than museum objects.

  • Netwerk 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

StandardLinked Art (JSON-LD), OAI-PMH, LDES, IIIFdocs
Access no key

No key (the old API at rijksmuseum.nl/api with a key is something else). tested

Size841,378

objects in the Search API (16 Oct 2026), 735,885 of them with an image tested

Formats

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.
  • GEThttps://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.
  • GEThttps://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.

veld=waardeherhaald veld*?

Parameters 12

creatorCreator, partial match (Rembrandt finds Rembrandt van Rijn); repeatable.from the description
typeObject type, Dutch or English (painting, schilderij); partial match.from the description
titleTitle, e.g. Night Watch.from the description
objectNumberObject number with wildcards: SK-C-5* finds SK-C-5, SK-C-50 …from the description
creationDateYear or period with * and ? (16??). Note: 16?? returned 44,973 objects, 16* 103,635.experience
material / techniqueMaterial (canvas, oil paint) and technique; repeatable.from the description
descriptionWords in the description.from the description
aboutActorObjects depicting or about a person or group.from the description
imageAvailabletrue or false: only objects with (or without) a digital image.tested
memberOfSetIdObjects in a set, e.g. https://id.rijksmuseum.nl/260251.from the description
pageTokenPaging; take the full address from next.id.from the description
_profileResolver: 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

NameTypeMeaning
partOf.totalItemsgetalSearch: totaal aantal treffers
orderedItems[].iduriSearch: identifier van het object (https://id.rijksmuseum.nl/…)
next.idurlSearch: adres van de volgende pagina (met pageToken)
identified_by[].contenttekstLinked Art: objectnummer en titels (SK-C-5, De Nachtwacht)
produced_by.part[].carried_out_byuriLinked Art: maker, met equivalent naar VIAF, ULAN, Wikidata en RKD
produced_by.timespanobjectLinked Art: datering met begin_of_the_begin en end_of_the_end
classified_as[]uriLinked Art: soort object (AAT-termen)
made_of[]uriLinked Art: materialen
dimension[]objectLinked Art: afmetingen met eenheid
shows[]uriLinked Art: VisualItem (wat er te zien is) met verwijzing naar het beeld
subject_of[].digitally_carried_by[].access_pointurlLinked Art: IIIF-adres van het beeld (iiif.micr.io)
current_locationuriLinked 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.

All about Rijksmuseum

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