API Dokumentation
author: Peter Stadler
language: de; en
availability: Creative Commons Attribution 4.0 International (CC BY 4.0) (http://creativecommons.org/licenses/by/4.0/)

https

Die Seiten von Henze-Digital werden nur über verschlüsseltes https ausgeliefert. Anfragen via http werden nach https umgeleitet. Die folgenden URL-Beispiele gelten somit immer für beide Protokolle.

http/https

The Henze-Digital webpages are served only through encrypted https. Requests made via http are redirected to https. Hence, the following URLs in the examples are compatible with both protocols.

Ausgabeformate und Content Negotiation

Via Content Negotiation lassen sich zu einer Ressource verschiedene Ausgabeformate wählen. Aktuell werden HTML, TEI-XML, JSON-LD und Plain Text unterstützt, wobei das gewünschte Ausgabeformat entweder über ein Suffix oder über den HTTP Accept Header angegeben werden kann. Wird beides angegeben, hat das Suffix Vorrang. NB: Die Plain-Text-Ausgabe ist als experimentelles Feature zu verstehen!

Format	Suffix	Accept Header
HTML	.html, .htm	text/html, application/xhtml+xml
TEI XML	.tei, .xml	application/xml, application/tei+xml
Plain Text	.txt	text/plain
JSON-LD	.jsonld	application/ld+json

Die persistente URL jeder Ressource setzt sich dabei aus der Domäne henze-digital.zenmem.de und der ID zusammen.

Beispiele mit curl # curl -L https://henze-digital.zenmem.de/A042B70F.xml # curl -L https://henze-digital.zenmem.de/A042B70F.html # curl -L -H "Accept: text/html" https://henze-digital.zenmem.de/A042B70F # curl -L -H "Accept: application/xml" https://henze-digital.zenmem.de/A042B70F

Bitte beachten Sie, dass der Parameter -L hier benötigt wird, da ggf. eine Weiterleitung erfolgt und dass zwingend die Angabe des gewünschten Ausgabeformats (via Suffixnotation oder HTTP Accept Header) erforderlich ist.

Output Formats and Content Negotiation

Several output formats are made available for every resource via content negotiation. At present, HTML, TEI-XML, JSON-LD and Plain Text are supported and you can request the desired format by either adding the appropriate file extension or by specifying the HTTP Accept Header. If both are given, the suffix takes precedence. NB: The plain text output is considered an experimental feature!

Format	Suffix	Accept Header
HTML	.html, .htm	text/html, application/xhtml+xml
TEI XML	.tei, .xml	application/xml, application/tei+xml
Plain Text	.txt	text/plain
JSON-LD	.jsonld	application/ld+json

The persistent URL of every resource is composed of the domain henze-digital.zenmem.de and its ID.

Examples with curl # curl -L https://henze-digital.zenmem.de/A042B70F.xml # curl -L https://henze-digital.zenmem.de/A042B70F.html # curl -L -H "Accept: text/html" https://henze-digital.zenmem.de/A042B70F # curl -L -H "Accept: application/xml" https://henze-digital.zenmem.de/A042B70F

Please note that you'll need the -L switch since most requests will be redirected and that the indication of the output format (via suffix notation or HTTP Accept Header) is mandatory.

TEI-Ausgabeformate

Wird eine TEI-Datei abgerufen (siehe Content Negotiation), so wird diese standardmäßig im HenDi-TEI-Format ausgeliefert. Dieses Format ist eine TEI-Customization und dokumentiert unter https://github.com/Henze-Digital/HenDi-ODD. Alternativ kann über den URL-Parameter format auch eine Ausgabe kompatibel zu TEI all (format=tei_all) oder TEI simplePrint (format=tei_simplePrint) gewählt werden.

Beispiele mit curl # curl -L "https://henze-digital.zenmem.de/A042B70F.xml?format=tei_all" # curl -L -H "Accept: application/xml" "https://henze-digital.zenmem.de/A042B70F?format=tei_simplePrint"

Siehe auch die News vom 29. November 2017 zu alternativen TEI-Ausgabeformaten.

TEI Output Formats

When requesting a TEI XML document (see Content Negotiation above) the default output format is our HenDi TEI format. This format is a TEI-Customization and documented at https://github.com/Henze-Digital/HenDi-ODD. Alternatively, you can request more standard formats via the URL parameter format; at present, TEI all (format=tei_all) and TEI simplePrint (format=tei_simplePrint) are supported.

Examples with curl # curl -L "https://henze-digital.zenmem.de/A042B70F.xml?format=tei_all" # curl -L -H "Accept: application/xml" "https://henze-digital.zenmem.de/A042B70F?format=tei_simplePrint"

Sprachauswahl

Die HTML-Ausgabe der Ressourcen kann in mehreren Sprachen (Aktuell Deutsch und Englisch) erfolgen. Dabei werden allerdings nur die Navigations- und Menüelemente übersetzt, nicht jedoch die eigentlichen Texte! Die Sprachwahl erfolgt über eine URL-Pfadkomponente, de für Deutsch und en für Englisch.

Beispiele mit curl # curl -L https://henze-digital.zenmem.de/de/A042B70F.html # curl -L -H "Accept: text/html" https://henze-digital.zenmem.de/en/A042B70F

Abfragen von GND IDs

Von der API werden aktuell GNDs vom Typ Person (früher PND), Organisation/Körperschaft (früher GKD), sowie Werk unterstützt, welche über BEACON-Dateien zur Verfügung gestellt werden. Die Adressen der BEACON-Dateien sind https://henze-digital.zenmem.de/pnd_beacon.txt, https://henze-digital.zenmem.de/gkd_beacon.txt, bzw. https://henze-digital.zenmem.de/works_beacon.txt. Abfragen können durch Anhängen einer gültigen GND an die Adresse https://henze-digital.zenmem.de/de/gnd/ gemacht werden. (Zur Sprachwahl siehe oben.)

Beispiele mit curl # curl -L -H "Accept: application/tei+xml" https://henze-digital.zenmem.de/de/gnd/118549383 # curl -L https://henze-digital.zenmem.de/de/gnd/118549383.jsonld

Bitte beachten Sie, dass der Parameter -L hier zwingend benötigt wird, da eine Weiterleitung erfolgt und dass ebenfalls die Angabe des gewünschten Ausgabeformats (via Suffixnotation oder HTTP Accept Header) erforderlich ist.

Detaillierte Informationen zum BEACON-Format finden sich unter https://de.wikipedia.org/wiki/Wikipedia:BEACON.

Requesting GND IDs

The HenDi API supports requests made via GND IDs for the types Person (formerly PND), Organisation/Institution (formerly GKD), and Work. Additionally, BEACON files are provided for these types at https://henze-digital.zenmem.de/pnd_beacon.txt, https://henze-digital.zenmem.de/gkd_beacon.txt, and https://henze-digital.zenmem.de/works_beacon.txt. Requests can be made by appending a valid GND ID to the base address at https://henze-digital.zenmem.de/en/gnd/.

Examples with curl # curl -L -H "Accept: application/tei+xml" https://henze-digital.zenmem.de/en/gnd/118549383 # curl -L https://henze-digital.zenmem.de/en/gnd/118549383.jsonld

Please note that you'll need the -L switch since the requests will be redirected and that the indication of the output format (via suffix notation or HTTP Accept Header) is mandatory.

Detailed information about the BEACON format can be found at https://meta.wikimedia.org/wiki/Dynamic_links_to_external_resources.

Swagger OpenAPI

Henze-Digital bietet unter https://henze-digital.zenmem.de/api/v1/ ebenfalls eine REST-Schnittstelle nach der Swagger OpenAPI Spezifikation 3.0 an. Diese Schnittstelle soll ein schnelles und komfortables Auffinden von Dokumenten aus der digitalen Edition ermöglichen.

Swagger OpenAPI

Henze-Digital offers a dedicated RESTful interface at https://henze-digital.zenmem.de/api/v1/ in compliance with the Swagger OpenAPI Specification 3.0. This interface shall provide for fast and comfortable discovery of documents from the digital edition.