Het Open Archief biedt de collectiegegevens ook machineleesbaar aan: linked data (JSON-LD met schema.org) voor elk record, lijsten en zoeken als linked data, IIIF voor afbeeldingen, een GraphQL-API en GeoJSON voor de kaart. Alle paden hieronder zijn relatief aan deze website. Vervang een plaatshouder zoals {priref} door een echte waarde.
De datasetbeschrijving (/dataset) noemt alle ingangen: de lijsten van objecten, personen en onderwerpen, het zoeken en de GraphQL-API. Vraag de pagina op met de header Accept: application/ld+json voor een schema.org Dataset. De homepage bevat ook een schema.org WebSite met een SearchAction die de zoek-URL beschrijft.
Elke detailpagina is ook als JSON-LD beschikbaar. Gebruik dezelfde URL als de webpagina en stuur de header Accept: application/ld+json (of application/json) mee.
CreativeWork): /collect/{objectnummer}Place, met de begraven personen en de contour op de plattegrond): /collect/{grafnummer}Person): /person/{priref}DefinedTerm): /subject/{term}Records zijn ook op te vragen met ?priref= of ?id=, bijvoorbeeld /collect/?priref={priref}. Elk record heeft een @id (de vaste URL) en een lijst identifier-waarden: het Axiell-priref, het objectnummer, het interne Open Archive-id en bij personen de identifiers van externe bronnen zoals RKD en het Stadsarchief Amsterdam. Afbeeldingen verwijzen naar de IIIF Image API.
Voorbeeld
curl -H "Accept: application/ld+json" /person/{priref}
Om te bladeren of te zoeken zonder de paden vooraf te kennen, gebruik je de lijsten hieronder. Ze komen terug als gepagineerde Activity Streams-collecties (OrderedCollection), het formaat dat ook Linked Art en IIIF gebruiken. Elk item bevat zijn id (de URL van het volledige JSON-LD-record), het type, de naam en, als die er is, een afbeelding.
/collect, eventueel gefilterd met ?collection=graves, objects, art, extended of locations/person/subject/search?q={zoektermen}, eventueel met &scope=people, objecten_collection of subjectsDeze lijsten komen alleen terug met de header Accept: application/ld+json; zonder die header tonen dezelfde URL's de gewone webpagina's. Zonder page krijg je de collectie met totalItems en links naar de eerste (first) en laatste (last) pagina. Met ?page={n} krijg je één pagina met next en prev. Een pagina bevat 50 items; met ?per_page= tot 100.
Voorbeeld
curl -H "Accept: application/ld+json" "/search?q=rembrandt&page=1"
Het Open Archief ondersteunt de IIIF Image API en Presentation API (versie 2).
Image API
/iiif/{identifier}/info.json/iiif/{identifier}/{uitsnede}/{grootte}/{rotatie}/{kwaliteit}.{formaat}, bijvoorbeeld /iiif/{identifier}/full/400,/0/default.jpgfull, square, x,y,b,h of pct:x,y,b,h. Grootte: full, max, b,, ,h, b,h, !b,h of pct:n. Rotatie: veelvouden van 90, eventueel gespiegeld met !. Kwaliteit: default of gray. Formaat: jpg, png of webp.{identifier} van een afbeelding staat in de JSON-LD van een object of persoon, bij image → service → @id.Presentation API
/iiif/presentation/{person_id}/manifest/iiif/presentation/collect/{collect_id}/manifestHierbij zijn {person_id} en {collect_id} de interne Open Archive-id's, te vinden in de JSON-LD-identifiers oudekerk-open-archive-person-id en oudekerk-open-archive-collect-id.
Voor gestructureerde bevragingen met filters en paginering, zie de GraphQL API-documentatie. Het endpoint is /graphql.
/ajax/mapcoords.json, eventueel voor één locatie met ?location={locatie}/ajax/mapcoordslocation.jsonAfbeeldingen worden gecachet en mogen door clients 7 dagen worden bewaard. Om de dienst te beschermen zijn verzoeken per IP-adres beperkt: 120 verzoeken om beeldinformatie per minuut, 40 afbeeldingen per seconde en 1500 per minuut, waarvan 120 per minuut voor afbeeldingen die nog niet eerder zijn opgevraagd. Daarboven antwoordt de server met status 429 en een Retry-After-header. Heb je meer nodig, neem dan contact op met de Oude Kerk.