Difference between revisions of "APE API documentation"

From Archives Portal Europe Wiki
Jump to: navigation, search
(Request parameters)
(Versioning)
 
(33 intermediate revisions by the same user not shown)
Line 1: Line 1:
== APE API ==
 
 
The [http://www.archivesportaleurope.net/ Archives Portal Europe] helps people to search for and retrieve archival descriptions harvested from archival institutons throughout Europe. These services are available as an [https://en.wikipedia.org/wiki/Application_programming_interface Application Programming Interface (API)] as well. Request and response parameters are provided and delivered in [https://en.wikipedia.org/wiki/JSON JSON]. This enables every programmer to create an (online) user interface for searching in and retrieving of archival descriptions.
 
The [http://www.archivesportaleurope.net/ Archives Portal Europe] helps people to search for and retrieve archival descriptions harvested from archival institutons throughout Europe. These services are available as an [https://en.wikipedia.org/wiki/Application_programming_interface Application Programming Interface (API)] as well. Request and response parameters are provided and delivered in [https://en.wikipedia.org/wiki/JSON JSON]. This enables every programmer to create an (online) user interface for searching in and retrieving of archival descriptions.
  
Line 7: Line 6:
 
* have a notion about the XML-data standard [http://www.loc.gov/ead/ Encoded Archival Description (EAD) 2002]
 
* have a notion about the XML-data standard [http://www.loc.gov/ead/ Encoded Archival Description (EAD) 2002]
 
* have a notion about the way data is copied ('harvested') in EAD-format from Collection Management Systems at archival institutions
 
* have a notion about the way data is copied ('harvested') in EAD-format from Collection Management Systems at archival institutions
 
+
<div><br/>__TOC__<br/></div>
=== The services ===
+
= The services =
In the current version there are three services:
+
In the current version (v5.0.0), sixteen services are available. The endpoint of the API is [https://www.archivesportaleurope.net/ApeApi/ https://api.archivesportaleurope.net/services].
* POST request: <code>/search/ead</code>
+
You must use an [[APE_API_documentation#API_Key | API-Key]] and a [[APE_API_documentation#Versioning | special value for accept]] in the HTTP-header.
* GET request: <code>/content/{id}</code>
+
* GET request: <code>/content/descriptiveUnit/{id}</code>
+
Via [https://www.archivesportaleurope.net/ApeApi/ https://www.archivesportaleurope.net/ApeApi/] you can access the ApeApi Explorer were you can try the services and see the responses.
 
+
The current endpoint of the API is [http://www.archivesportaleurope.net/ApeApi/services http://www.archivesportaleurope.net/ApeApi/services]
+
 
+
''Note: after release of version 1.0 we want it to be: http://api.archivesportaleurope.net/services''.
+
 
+
Via this URL you can access the ApeApi Explorer were you can try the services and see the responses: [http://www.archivesportaleurope.net/ApeApi/#!/search/search http://www.archivesportaleurope.net/ApeApi/#!/search/search].
+
<br/>
+
 
+
=== Future work ===
+
In the current version search and retrieve of archival descriptions are provided. We plan to expand this functionality with searching and retrieving of:
+
* descriptions of records creators
+
* information on archival institutions
+
* person names in the archival records
+
 
+
=== API Key ===
+
In order for Archives Portal Europe to monitor the use of the API, you need to request an API-key to be able to use the API. The API-key can be requested via the option [https://www.archivesportaleurope.net/information-api API] on the homepage of the portal, or directly via this url: [https://www.archivesportaleurope.net/get-api-key https://www.archivesportaleurope.net/get-api-key].
+
 
+
''Note: you need to be a registered user of the Archives Portal Europe to be able to get an API key, so if you don't have an account for the Archives Portal Europe's My Pages functionality yet, please create one first. You can read more on the My Pages functionality over [[Using_My_Pages|here]].''
+
 
+
Using the API you need to add a parameter "APIkey" to the header of your request
+
 
+
eg.
+
<pre>
+
'APIkey' : 'put_your_personal_API-key_here'
+
</pre>
+
 
+
=== Versioning ===
+
Depending on the version of the API that you want to use, the accept parameter in the header must be set to a specific Content Type. For version 1.0 this is: application/vnd.ape-v1+json
+
 
+
eg.
+
<pre>
+
'accept' : 'application/vnd.ape-v1+json'
+
</pre>
+
 
+
== The <code>/search/ead</code> service ==
+
Request url: TODO
+
This service is a POST-request.
+
 
+
=== Request parameters ===
+
 
+
Three request parameters can be used to do a search in archival descriptions.
+
 
+
eg.
+
 
+
<pre>
+
{
+
  "query": "nepal",
+
  "count": 5,
+
  "startIndex": 0
+
}
+
</pre>
+
 
+
==== query ====
+
Containing the searchterm(s). Required.
+
 
+
==== count ====
+
The resultlist is delivered in chunks of a certain size. Request parameter "count" describes the number of results that are in one chunk. Optional. Default value is 5.
+
 
+
==== startIndex ====
+
Request parameter "startIndex" enables you to select the results that you want to have. Counting starts at zero. If "count" = 5, the second chunk starts with startIndex 5, the following at startIndex 10, etc. Optional. Default value is 0.
+
 
+
=== Response parameters ===
+
The response contains a list of the descriptions where the requested search-term(s) was/were found.
+
 
+
eg.
+
<pre>
+
{
+
  "totalResults": 1,
+
  "start": 0,
+
  "totalPages": 1,
+
  "eadSearchResults": [
+
    {
+
      "id": "C4134966",
+
      "unitId": "2.05.313 - 2.77",
+
      "unitTitle": "Nepal",
+
      "unitTitleWithHighlighting": "<em>Nepal</em>",
+
      "scopeContent": "",
+
      "scopeContentWithHighlighting": "",
+
      "fondsUnitTitle": "Inventaris van het code-archief van het Ministerie van Buitenlandse Zaken, 1965-1974",
+
      "fondsUnitId": "2.05.313",
+
      "repository": "Nationaal Archief",
+
      "country": "NETHERLANDS",
+
      "language": "",
+
      "langMaterial": "",
+
      "unitDate": "",
+
      "repositoryCode": "NL-HaNA",
+
      "hasDigitalObject": false,
+
      "docType": "Descriptive Unit"
+
    }
+
  ]
+
}
+
</pre>
+
 
+
==== totalResults ====
+
The response parameter "totalResults" gives the number of results.
+
 
+
==== start ====
+
The response parameter "start" gives the number of the chunk you requested.
+
 
+
==== totalPages ====
+
The response parameter "totalPages" gives the number of chunks.
+
 
+
==== eadSearchResults ====
+
Enumeration of the results. A result could be a holdings guide, a source guide, a finding aid, or a descriptive unit (ie. a sublevel component).
+
  
 
{| class="wikitable"
 
{| class="wikitable"
| id
+
|  
| Internal APE identifier of the result
+
! style="width: 250px;" | Description
 +
! style="width: 250px;" | EAD
 +
! style="width: 250px;" | EAC-CPF
 
|-
 
|-
| unitId
+
| style="vertical-align: top" | search (POST /GET)
| Identifier of the result provided by the repository
+
| style="vertical-align: top" | Services for searching with a term in the content and filtering on facets
 +
| style="vertical-align: top" |
 +
* [[searchEad | /search/ead]]
 +
* [[searchEadDoclist | /search/ead/docList]]
 +
* [[searchEadDescendants | /search/ead/{id}/descendants]]
 +
* [[searchEadChildren | /search/ead/{id}/children]]
 +
* [[searchEadDescendantsWithAncestors | /search/ead/{id}/descendantsWithAncestors]]
 +
* [[searchEadFindingAidNo | /search/ead/FindingAidNo]]
 +
| style="vertical-align: top" |
 +
* [[searchEac | /search/eac-cpf]]
 
|-
 
|-
| unitTitle
+
| style="vertical-align: top" | content (GET)
| Description of the result
+
| style="vertical-align: top" | Services for getting detailed information about a particular result
 +
| style="vertical-align: top" |
 +
* [[contentEadArchdesc | /content/ead/archdesc/{id}]]
 +
* [[contentEadClevel | /content/ead/clevel/{id}]]
 +
| style="vertical-align: top" |
 +
* [[contentEac-cpf | /content/eac-cpf/{id} ]]
 
|-
 
|-
| unitTitleWithHighlighting
+
| style="vertical-align: top" | hierarchy (GET)
| Description of the result, with the mark "<nowiki><em></nowiki>" to emphasize the search term that was used in the search request.
+
| style="vertical-align: top" | Services for getting detailed information about the position of a result in the hierarchy of a finding aid
 +
| style="vertical-align: top" |
 +
* [[hierarchyEadChildren | /hierarchy/ead/{id}/children]]
 +
* [[hierarchyEadAncestors | /hierarchy/ead/{id}/ancestors]]
 +
| style="vertical-align: top" |
 
|-
 
|-
| unitDate
+
| style="vertical-align: top" | download (GET)
| Date of creation of the result.
+
| style="vertical-align: top" | Services for downloading XML-files
 +
| style="vertical-align: top" |
 +
* [[downloadEad | /download/ead/{id}]]
 +
| style="vertical-align: top" |
 +
* [[downloadEac-cpf | /download/eac-cpf/{id}]]
 
|-
 
|-
| scopeContent
 
| More descriptive information about the result.
 
|-
 
| scopeContentWithHighlighting
 
| More descriptive information about the result, with the mark "<nowiki><em></nowiki>" to emphasize the search term that was used in the search request.
 
|-
 
| hasDigitalObject
 
| TRUE/FALSE
 
|-
 
| langMaterial
 
| Language in which the result is created.
 
|-
 
| language
 
| Language of the description of the result.
 
|-
 
| docType
 
| Type of the description of the result: "Descriptive Unit", "Finding Aid", "Holdings Guide" or "Source Guide"
 
|-
 
| fondsUnitId
 
| Identifier of the fonds provided by the repository.
 
|-
 
| fondsUnitTitle
 
| Title of the finding aid.
 
|-
 
| repository
 
| Name of the repository holding the fonds
 
|-
 
| repositoryCode
 
| Code of the repository holding the fonds. Preferably, but not necessarily [https://en.wikipedia.org/wiki/International_Standard_Identifier_for_Libraries_and_Related_Organizations ISIL].
 
|-
 
| country
 
| Name of the country where the repository is. In English.
 
 
|}
 
|}
  
== The <code>/content/{id}</code> service ==
+
{| class="wikitable"
Request url: TODO.
+
| style="vertical-align: top" | institute (POST / GET)
 +
| style="vertical-align: top" | Services for getting full lists
 +
|
 +
* [[getInstitutes | /institute/getInstitutes/{startIndex}/{count}]]
 +
* [[getDocs | /institute/getDocs]]
 +
|}
 +
<br/>
  
This service is a GET-request.
+
= Last additions/changes =
 +
== Version 5.0.0 ==
 +
20170830: currently the production server holds version 5.0.0 of the API, compared to version 4.0.0 two more services have been added:
 +
* [[searchEadDescendantsWithAncestors | /search/ead/{id}/descendantsWithAncestors]]
 +
* [[searchEadFindingAidNo | /search/ead/FindingAidNo]]
 +
<br/>
 +
and the following services have been improved:
 +
<br/>
 +
* [[searchEad | /search/ead]]:
 +
** added the following field to the response: parentId
 +
** in the response: changed the name of the field: "fondsUnitTitle" into: "findingAidTitle" and the field "fondsUnitId" into: "findingAidNo"
 +
* [[searchEadDoclist | /search/ead/docList]]:
 +
** in the response: changed the name of the field: "fondsUnitTitle" into: "findingAidTitle" and the field "fondsUnitId" into: "findingAidNo"
 +
* [[searchEadDescendants | /search/ead/{id}/descendants]]:
 +
** added the following to the request: filters and sortRequest
 +
** added the following field to the response: parentId
 +
** in the response: changed the name of the field: "fondsUnitTitle" into: "findingAidTitle" and the field "fondsUnitId" into: "findingAidNo"
 +
** added the following to the request: filtering (facetting) and sort options
 +
* [[searchEadChildren | /search/ead/{id}/children]]:
 +
** added the following field to the response: parentId
 +
** in the response: changed the name of the field: "fondsUnitTitle" into: "findingAidTitle" and the field "fondsUnitId" into: "findingAidNo"
 +
* [[contentEadArchdesc | /content/ead/archdesc/{id}]]
 +
** in the response: changed the name of the field: "fondsUnitTitle" into: "findingAidTitle" and the field "fondsUnitId" into: "findingAidNo"
 +
* [[contentEadClevel | /content/ead/clevel/{id}]]
 +
** in the response: changed the name of the field: "fondsUnitTitle" into: "findingAidTitle"
 +
* [[hierarchyEadChildren | /hierarchy/ead/{id}/children]]:
 +
** in the response: changed the name of the field: "fondsUnitTitle" into: "findingAidTitle" and the field "fondsUnitId" into: "findingAidNo"
 +
* [[hierarchyEadAncestors | /hierarchy/ead/{id}/ancestors]]:
 +
** in the response: changed the name of the field: "fondsUnitTitle" into: "findingAidTitle" and the field "fondsUnitId" into: "findingAidNo"
 +
* [[getDocs | /institute/getDocs]]:
 +
** added the following to the request: sortRequest
 +
** in the response: changed the name of the field: "fondsUnitTitle" into: "findingAidTitle" and the field "fondsUnitId" into: "findingAidNo"
 +
<br/>
  
=== Request parameters ===
+
= Previous additions/changes =
 +
== Version 4.0.0 ==
 +
20170531: currently the production server holds version 4.0.0 of the API, compared to version 3.0.0 these services have been improved:
  
==== id ====
+
* [[searchEad | /search/ead]]:
Internal APE identifier of a Finding Aid (id is starting with "F"), a Holdings Guide (id's  starting with "H"), a Source Guide (id is starting with "S"). Descriptive Units result in other information, so a separate request is developed, called <code>/content/descriptiveUnit</code>. In this service, if the identifier does not start with a "F", "H" or "S" you will get an error message. This parameter is required.
+
** added the following fields to the response:
 +
*** numberOfDigitalObjects
 +
*** numberOfDigitalObjectsInDescendents
 +
*** numberOfDescendents
 +
*** numberOfAncestors
  
=== Response parameters ===
+
* [[searchEadDoclist | /search/ead/docList]]:
 +
** added the following fields to the response:
 +
*** fondsUnitId
 +
*** unitDate
 +
*** scopeContent
 +
*** numberOfDigitalObjects
 +
*** numberOfDigitalObjectsInDescendents
 +
*** numberOfDescendents
 +
** added facetDateFields (fromDate and toDate) to the response
  
<pre>
+
* [[searchEadDescendants | /search/ead/{id}/descendants]]:
{
+
** added the following fields to the response:
  "id": "F883",
+
*** numberOfDigitalObjects
  "unitId": "3066",
+
*** numberOfDigitalObjectsInDescendents
  "unitTitle": "Partij van de Arbeid (P.v.d.A.), Statenfractie PvdA Gelderland",
+
*** numberOfDescendents
  "repositoryId": 363,
+
*** numberOfAncestors
  "repository": "Gelders Archief",
+
  "content": {
+
  --- skip ---
+
  }
+
}
+
</pre>
+
  
==== id ====
+
* [[searchEadChildren | /search/ead/{id}/children]]:
Internal APE identifier of the Finding Aid, Holdings Guide or Source Guide. The same as your request parameter "id".
+
** added the following fields to the response:
 +
*** numberOfDigitalObjects
 +
*** numberOfDigitalObjectsInDescendents
 +
*** numberOfDescendents
 +
*** numberOfAncestors
  
==== unitId ====
+
* [[hierarchyEadChildren | /hierarchy/ead/{id}/children]]:
Original identifier of the information provided by the repository.
+
** added the following fields to the response:
 +
*** numberOfDigitalObjects
 +
*** numberOfDigitalObjectsInDescendents
 +
*** numberOfDescendents
 +
** in the response: changed the name of the field "treeDepth" into: "ancestorLevel"
  
==== unitTitle ====
+
* [[hierarchyEadAncestors | /hierarchy/ead/{id}/ancestors]]:
Title of the information provided by the repository.
+
** added the following fields to the response:
 +
*** numberOfDigitalObjects
 +
*** numberOfDigitalObjectsInDescendents
 +
*** numberOfDescendents
 +
** in the response: changed the name of the field "treeDepth" into: "ancestorLevel"
  
==== repositoryId ====
+
* [[getInstitutes | /institute/getInstitutes/{startIndex}/{count}]]:
Internal APE identifier of the repository.
+
** in the response: changed the name of the field "numberOfFindingAids" into: "totalDocs"
  
==== repository ====
+
* [[getDocs | /institute/getDocs]]:
Name of the repository.
+
** added the following fields to the response:
 +
*** numberOfDigitalObjects
 +
*** numberOfDigitalObjectsInDescendents
 +
*** numberOfDescendents
  
==== content ====
+
== Version 3.0.0 ==
Information in EAD-format, serialized as JSON. This part could potentially contain all the elements that can be part of an EAD/XML-document.
+
20161101: currently the production server holds version 3.0.0 of the API, compared to version 2.0.0 these services/improvements have been added:
  
== The <code>/content/descriptiveUnit/{id}</code> service ==
+
* /search/ead/docList
Request url: TODO
+
* /search/ead/{id}/descendants
 +
* /search/ead/{id}/children
  
This service is a GET-request.
+
* /hierarchy/ead/{id}/children
 +
* /hierarchy/ead/{id}/ancestors
  
 +
added request or response parameters:
  
=== Request parameters ===
+
* /search/ead -> added request parameter sortFields
 +
* /content/ead/clevel -> added response parameter fondsUnitTitle
 +
<br/>
  
==== id ====
+
= API Key =
Internal APE identifier of a Descriptive Unit (id is starting with "C"). In this service, if the identifier does not start with a "C", you will get an error message. This parameter is required.
+
To enable the Archives Portal Europe team to monitor the use of the API, you need to request an API-key to be able to use the API. The API-key can be requested via the option [https://www.archivesportaleurope.net/information-api API] on the homepage of the portal, or directly via this url: [https://www.archivesportaleurope.net/get-api-key https://www.archivesportaleurope.net/get-api-key].
  
=== Response parameters ===
+
''Note: you need to be a registered user of the Archives Portal Europe to be able to get an API key, so if you don't have an account for the Archives Portal Europe's My Pages functionality yet, please create one first. You can read more on the My Pages functionality over [http://wiki.archivesportaleurope.net/index.php/Using_My_Pages here].''
  
 +
Using the API you need to add a parameter "APIkey" to the header of your request
 +
 +
eg.
 
<pre>
 
<pre>
{
+
'APIkey' : 'put_your_personal_API-key_here'
  "id": "C4134966",
+
  "unitId": "2.05.313 - 2.77",
+
  "unitTitle": "Nepal",
+
  "repositoryId": 361,
+
  "repository": "Nationaal Archief",
+
  "content": {
+
  --- skip ---
+
  }
+
}
+
 
</pre>
 
</pre>
  
==== id ====
 
Internal APE identifier of the Descriptive Unit. The same as your request parameter "id".
 
  
==== unitId ====
+
= Versioning =
Original identifier of the information provided by the repository.
+
Depending on the version of the API that you want to use, the Content-Type parameter in the header must be set to a specific Content Type. For version 5.0.0 this is: application/vnd.ape-v5+json
 
+
==== unitTitle ====
+
Title of the information provided by the repository.
+
 
+
==== repositoryId ====
+
Internal APE identifier of the repository.
+
 
+
==== repository ====
+
Name of the repository.
+
 
+
==== content ====
+
Information in EAD-format, serialized as JSON. This part could potentially contain all the elements that can be part of a Component-element (<c>) of an EAD/XML-document.
+
  
 +
eg.
 +
<pre>
 +
'Content-Type' : 'application/vnd.ape-v5+json'
 +
</pre>
  
 
[[Category:Technical_documentation]]
 
[[Category:Technical_documentation]]

Latest revision as of 09:13, 24 November 2017

The Archives Portal Europe helps people to search for and retrieve archival descriptions harvested from archival institutons throughout Europe. These services are available as an Application Programming Interface (API) as well. Request and response parameters are provided and delivered in JSON. This enables every programmer to create an (online) user interface for searching in and retrieving of archival descriptions.

We expect readers of this documentation to:

  • know how to develop with a RESTful API and JSON
  • understand the hierarchical data structures in archival descriptions
  • have a notion about the XML-data standard Encoded Archival Description (EAD) 2002
  • have a notion about the way data is copied ('harvested') in EAD-format from Collection Management Systems at archival institutions


The services

In the current version (v5.0.0), sixteen services are available. The endpoint of the API is https://api.archivesportaleurope.net/services. You must use an API-Key and a special value for accept in the HTTP-header.

Via https://www.archivesportaleurope.net/ApeApi/ you can access the ApeApi Explorer were you can try the services and see the responses.

Description EAD EAC-CPF
search (POST /GET) Services for searching with a term in the content and filtering on facets
content (GET) Services for getting detailed information about a particular result
hierarchy (GET) Services for getting detailed information about the position of a result in the hierarchy of a finding aid
download (GET) Services for downloading XML-files
institute (POST / GET) Services for getting full lists


Last additions/changes

Version 5.0.0

20170830: currently the production server holds version 5.0.0 of the API, compared to version 4.0.0 two more services have been added:


and the following services have been improved:

  • /search/ead:
    • added the following field to the response: parentId
    • in the response: changed the name of the field: "fondsUnitTitle" into: "findingAidTitle" and the field "fondsUnitId" into: "findingAidNo"
  • /search/ead/docList:
    • in the response: changed the name of the field: "fondsUnitTitle" into: "findingAidTitle" and the field "fondsUnitId" into: "findingAidNo"
  • /search/ead/{id}/descendants:
    • added the following to the request: filters and sortRequest
    • added the following field to the response: parentId
    • in the response: changed the name of the field: "fondsUnitTitle" into: "findingAidTitle" and the field "fondsUnitId" into: "findingAidNo"
    • added the following to the request: filtering (facetting) and sort options
  • /search/ead/{id}/children:
    • added the following field to the response: parentId
    • in the response: changed the name of the field: "fondsUnitTitle" into: "findingAidTitle" and the field "fondsUnitId" into: "findingAidNo"
  • /content/ead/archdesc/{id}
    • in the response: changed the name of the field: "fondsUnitTitle" into: "findingAidTitle" and the field "fondsUnitId" into: "findingAidNo"
  • /content/ead/clevel/{id}
    • in the response: changed the name of the field: "fondsUnitTitle" into: "findingAidTitle"
  • /hierarchy/ead/{id}/children:
    • in the response: changed the name of the field: "fondsUnitTitle" into: "findingAidTitle" and the field "fondsUnitId" into: "findingAidNo"
  • /hierarchy/ead/{id}/ancestors:
    • in the response: changed the name of the field: "fondsUnitTitle" into: "findingAidTitle" and the field "fondsUnitId" into: "findingAidNo"
  • /institute/getDocs:
    • added the following to the request: sortRequest
    • in the response: changed the name of the field: "fondsUnitTitle" into: "findingAidTitle" and the field "fondsUnitId" into: "findingAidNo"


Previous additions/changes

Version 4.0.0

20170531: currently the production server holds version 4.0.0 of the API, compared to version 3.0.0 these services have been improved:

  • /search/ead:
    • added the following fields to the response:
      • numberOfDigitalObjects
      • numberOfDigitalObjectsInDescendents
      • numberOfDescendents
      • numberOfAncestors
  • /search/ead/docList:
    • added the following fields to the response:
      • fondsUnitId
      • unitDate
      • scopeContent
      • numberOfDigitalObjects
      • numberOfDigitalObjectsInDescendents
      • numberOfDescendents
    • added facetDateFields (fromDate and toDate) to the response
  • /search/ead/{id}/descendants:
    • added the following fields to the response:
      • numberOfDigitalObjects
      • numberOfDigitalObjectsInDescendents
      • numberOfDescendents
      • numberOfAncestors
  • /search/ead/{id}/children:
    • added the following fields to the response:
      • numberOfDigitalObjects
      • numberOfDigitalObjectsInDescendents
      • numberOfDescendents
      • numberOfAncestors
  • /hierarchy/ead/{id}/children:
    • added the following fields to the response:
      • numberOfDigitalObjects
      • numberOfDigitalObjectsInDescendents
      • numberOfDescendents
    • in the response: changed the name of the field "treeDepth" into: "ancestorLevel"
  • /hierarchy/ead/{id}/ancestors:
    • added the following fields to the response:
      • numberOfDigitalObjects
      • numberOfDigitalObjectsInDescendents
      • numberOfDescendents
    • in the response: changed the name of the field "treeDepth" into: "ancestorLevel"
  • /institute/getDocs:
    • added the following fields to the response:
      • numberOfDigitalObjects
      • numberOfDigitalObjectsInDescendents
      • numberOfDescendents

Version 3.0.0

20161101: currently the production server holds version 3.0.0 of the API, compared to version 2.0.0 these services/improvements have been added:

  • /search/ead/docList
  • /search/ead/{id}/descendants
  • /search/ead/{id}/children
  • /hierarchy/ead/{id}/children
  • /hierarchy/ead/{id}/ancestors

added request or response parameters:

  • /search/ead -> added request parameter sortFields
  • /content/ead/clevel -> added response parameter fondsUnitTitle


API Key

To enable the Archives Portal Europe team to monitor the use of the API, you need to request an API-key to be able to use the API. The API-key can be requested via the option API on the homepage of the portal, or directly via this url: https://www.archivesportaleurope.net/get-api-key.

Note: you need to be a registered user of the Archives Portal Europe to be able to get an API key, so if you don't have an account for the Archives Portal Europe's My Pages functionality yet, please create one first. You can read more on the My Pages functionality over here.

Using the API you need to add a parameter "APIkey" to the header of your request

eg.

 	'APIkey' : 'put_your_personal_API-key_here'


Versioning

Depending on the version of the API that you want to use, the Content-Type parameter in the header must be set to a specific Content Type. For version 5.0.0 this is: application/vnd.ape-v5+json

eg.

 	'Content-Type' : 'application/vnd.ape-v5+json'