Entity API Documentation

The Entity API allows you to search for or retrieve information about entities that are referred to by items available in Europeana. It presently offers 3 methods:

  1. Retrieval of the complete metadata set associated with an Entity

  2. A way to suggest entities based on a string

  3. a lookup method for resolving external URIs.

About the Europeana Entity collection

An entity relates to information about people (agents) such as Leonardo da Vinci, topics (concepts) such as Art Nouveau, places such as Amsterdam and time periods such as 21st Century, that help contextualize the object and relate it to others that share the same entities in common. By exploiting these rich relations, the Europeana Website is able to offer users a way to organically navigate through the items and discover other items in the Europeana collection.

This is made possible via the Europeana Entity Collection, a collection of entities in the context of Europeana which metadata is collected from and linked to external data sources and controlled vocabularies, such as ​Wikidata, AAT, VIAF, ULAN, Geonames, etc. This collection is then used to establish new or normalise existing references from cultural heritage objects to the collection so that they can be further exploited.

This collection is regularly updated and consolidated from external data sources so that the metadata is kept as fresh as possible.

Identifiers for entities

As linked open data resources, all Europeana entities are identified using URIs defined under the data.europeana.eu namespace. This means that such identifiers are content negotiable to either the Europeana Website or APIs depending on the format requested via the Accept header.

Syntax for URIs:

http://data.europeana.eu/[ENTITY_TYPE]/[ENTITY_ID]

Example:

http://data.europeana.eu/agent/59904

Internal view of an entity

The metadata that is made available for an entity is typically obtained from external data sources such as Wikidata. This data can also be complemented or changed to better fit the context in which they are used in Europeana. All this information is kept internally apart with its own provenance information for transparency and to facilitate its maintenance and management.

 

Field

Datatype

Description

Field

Datatype

Description

Entity

id

String (URI)

The unique identifier of the Entity.

… all metadata fields depending on the entity class …

proxies

Array (Object (Proxy))

The proxies represent a snapshot of the metadata that was aggregated from source and which will be consolidated into the main entity.

Proxy

id

String (URI)

The unique identifier of the Entity.

type

String

The type of the resource. Always set to "Proxy".

… all metadata fields obtained from the data source depending on the entity class …

proxyFor

String (URI)

A reference to the entity that this Proxy corresponds to

proxyIn

Object (Proxy Aggregation)

Represents the result of the aggregation of metadata of this entity from a specific data source.

Proxy Aggregation

id

String (URI)

The unique identifier of the aggregation corresponding to the associated Proxy.

type

String

The type of the resource. Always set to "Aggregation".

created

String (Datetime)

The time at which the metadata was obtained from the source.

The value must be a Literal expressed as xsd:dateTime with the UTC timezone expressed as 'Z'.

modified

String (Datetime)

The time at which the metadata was modified from the source, after creation.

The value must be a Literal expressed as xsd:dateTime with the UTC timezone expressed as 'Z'.

rights

String (URI)

The uri of the rights statement that indicates the copyright, usage and access rights of the metadata of the entity.

source

String (URI)

The URI of the source vocabulary where the metadata for the entity was obtained from.

Supported classes of entities

There are five classes of entities supported by this API, namely: Agent, Place, Concept, TimeSpan and Organisation. The following subsection describe the metadata fields used to describe the entities.

Agent

The Agent entity comprises people, either individually or in groups, who have the potential to perform intentional actions for which they can be held responsible.

Field

Datatype

Description

Field

Datatype

Description

Agent

id

String (URI)

The unique identifier of the Agent.

type

String

The type of the entity. Always set to "Agent" for agents.

depiction

Object (Web Resource)

A image resource where the entity is shown.

isShownBy

Object (Web Resource)

A image resource related to the entity.

prefLabel

Object (LangMap)

The preferred form of the name of the entity.

altLabel

Object (LangMap)

Alternative forms of the name of the entity.

dateOfBirth

String

The date the agent (person) was born.

dateOfEstablishment

String

The date on which the agent (corporate body) was established or founded.

dateOfDeath

String

The date the agent (person) died.

dateOfTermination

String

The date on which the agent (corporate body) was terminated or dissolved.

date

String

A significant date associated with the agent.

placeOfBirth

String (URI)

The town, city, province, state, and/or country in which a person was born.

placeOfDeath

String (URI)

The town, city, province, state, and/or country in which a person died.

gender

String

The gender with which the agent identifies.

professionOrOccupation

Array (String (URI))

The profession or occupation in which the agent works or has worked.

biographicalInformation

Object (LangMap)

Information pertaining to the life or history of the agent.

note

Object (LangMap)

Information related to the entity.

isPartOf

Array (String (URI))

Reference to an agent that the described agent is part of.

hasPart

Array (String (URI))

Reference to an Agent that is part of the Agent being described (e.g. part of a corporation).

hasMet

Array (String (URI))

Reference to another entity which the Agent has “met” in a broad sense. For example a reference to a Place.

isRelatedTo

Array(String(URI))

Reference to other entities, particularly other agents, with whom the agent is related in a generic sense.

identifier

String

An identifier for the entity.

sameAs

Array (String (URI))

URI of an equivalent entity in other vocabulary.

inScheme

Array (String (URI))

The concept scheme(s) that this entity belongs to.

isAggregatedBy

Object (Aggregation)

Represents the results of consolidating into a single representation the metadata obtained from different data sources.

Place

A physical location associated to a cultural heritage object. Presently, covers European countries and the most relevant places.

Field

Datatype

Description

Field

Datatype

Description

Place

id

String (URI)

The unique identifier of the Place.

type

String

The type of the entity. Always set to "Place" for places.

depiction

Object (Web Resource)

A image resource where the entity is shown.

isShownBy

Object (Web Resource)

A image resource related to the entity.

prefLabel

Object (LangMap)

The preferred form of the name of the entity.

altLabel

Object (LangMap)

Alternative forms of the name of the entity.

lat

Number

The latitude coordinate of the Place.

long

Number

The longitude coordinate of the Place.

alt

Number

The altitude of the Place.

note

Object (LangMap)

Information related to the entity.

hasPart

Array (String (URI))

Reference to an agent that the described agent is part of.

isPartOf

Array (String (URI))

Reference to an Agent that is part of the Agent being described (e.g. part of a corporation).

isNextInSequence

Array (String (URI))

Used to represent a sequence of Place entities over time e.g. the historical layers of the city of Troy.

sameAs

Array(String(URI))

URI of an equivalent entity in other vocabulary.

inScheme

Array(String(URI))

The concept scheme(s) that this entity belongs to.

isAggregatedBy

Object (Aggregation)

Represents the results of consolidating into a single representation the metadata obtained from different data sources.

Time Span

A period of time having a beginning, an end and a duration. Presently, only centuries AD are available in the Entity Collection.

Field

Datatype

Description

Field

Datatype

Description

Time Span

id

String (URI)

The unique identifier of the Time Span.

type

String

The type of the entity. Always set to "TimeSpan".

depiction

Object (Web Resource)

A image resource where the entity is shown.

isShownBy

Object (Web Resource)

A image resource related to the entity.

prefLabel

Object (LangMap)

The preferred form of the name of the entity.

altLabel

Object (LangMap)

Alternative forms of the name of the entity.

begin

String

The date the timespan started, represented in the form of an ISO 8601 date starting with the year and with hyphens (YYYY-MM-DD).

end

String

The date the timespan finshed represented in the form of an ISO 8601 date starting with the year and with hyphens (YYYY-MM-DD).

note

Object (LangMap)

Information related to the entity.

isPartOf

Array (String (URI))

Reference to a timespan of which the described timespan is a part.

hasPart

Array (String (URI))

Reference to a timespan which is part of the described Timespan.

isNextInSequence

Array (String (URI))

Can be used to represent a sequence of periods of time.

sameAs

Array(String(URI))

URI of an equivalent entity in other vocabulary.

inScheme

Array(String(URI))

The concept scheme(s) that this entity belongs to.

isAggregatedBy

Object (Aggregation)

Represents the results of consolidating into a single representation the metadata obtained from different data sources.

Concept

A Concept is defined as a unit of thought or meaning that comes from an organised knowledge base (such as subject terms from a thesaurus or controlled vocabulary) where URIs or local identifiers have been created to represent each concept.

Field

Datatype

Description

Field

Datatype

Description

Concept

id

String (URI)

The unique identifier of the Concept.

type

String

The type of the entity. Always set to "Concept".

depiction

Object (Web Resource)

A image resource where the Conceptis shown.

isShownBy

Object (Web Resource)

A image resource related to the Concept.

prefLabel

Object (LangMap)

The preferred form of the name of the Concept.

altLabel

Object (LangMap)

Alternative forms of the name of the Concept.

note

Object (LangMap)

Information related to the Concept.

notation

Array (Datatype Object)

The notation in which the Concept is represented.

broader

Array(String(URI))

A broader concept in the same thesaurus or controlled vocabulary.

narrower

Array(String(URI))

A narrower concept in the same thesaurus or controlled vocabulary.

related

Array(String(URI))

A related concept in the same thesaurus or controlled vocabulary.

broadMatch

Array(String(URI))

A broader matching concept from another thesaurus or controlled vocabulary.

narrowMatch

Array(String(URI))

A narrower matching concept from another thesaurus or controlled vocabulary.

relatedMatch

Array(String(URI))

A related matching concept from another thesaurus or controlled vocabulary.

closeMatch

Array(String(URI))

A close matching concept from another thesaurus or controlled vocabulary.

exactMatch

Array(String(URI))

URI of an equivalent Concept in other vocabulary.

inScheme

Array(String(URI))

The concept scheme(s) that this Concept belongs to.

isAggregatedBy

Object (Aggregation)

Represents the results of consolidating into a single representation the metadata obtained from different data sources.

proxies

Array (Object (Proxy))

The proxies represent a snapshot of the metadata that was aggregated from source and which will be consolidated into the main entity.

Organisation

The organisation providing data directly or via an aggregator.

Other classes of resources that are common to all entities

 

Getting Started

What you need to know about this API:

  • Adopts linked open data standards

  • Supports JSON-LD and RDF/XML (only for retrieving entity data)

  • Requires read access

Retrieving an Entity

Retrieves all metadata available for a specific entity. This includes all labels (preferred, alternative or others when applicable), descriptive and contextual information such as references to other entities and also references to external data sources (ie. correferencing). For a full list of data fields, please see the Supported classes of entities section.

Request

https://api.europeana.eu/entity/[TYPE]/[IDENTIFIER] Accept: [ACCEPT]

Parameter

Location

Description

Parameter

Location

Description

TYPE

path

The type of the entity. One of: “agent“, “place“, “concept“, “timespan“, “organization“

IDENTIFIER

path

The local identifier of the entity.

ACCEPT

header

Indicates the preferred format(s) via which the entity is to be represented if the format is accepted by the service. Both JSON-LD and RDF/XML are supported.

FORMAT

path

Convenience method where the format is indicated as a path parameter instead of via the Accept header.

profile

query

A parameter used to define the extent of the response. Two profiles are supported, “internal“ and “external“ (default).

  • internal: Presents the available metadata for an entity and associated administrative information. The metadata available for each entity is described in the Supported classes of entities section.

  • external: Presents the internal view of metadata as described in Internal view of an entity section, in addition to the information present in the external profile.

Response

Resolving an entity by using an external URI

The resolve method was designed to search for entities in the Entity Collection that match a given identifier used by an external source. The response redirects you to the corresponding Europeana Entity through its URI. In case there is no equivalent Entity in Europeana, an HTTP 404 is returned. This method makes use of the co-reference information typically present within owl:sameAs properties (or skos:exactMatch in the case of entities of type skos:Concept) for the lookup.

Request

Parameter

Location

Description

Parameter

Location

Description

URI

query

The external URI being used for entity lookup.

ACCEPT

header

Indicates the preferred format(s) which will be used by content negotiation to redirect to either the Europeana website for display formats or this API for machine readable formats.

Response

On success, the method returns an HTTP 301 with the Europeana URI within the Location Header field.

Search for an entity

Search for entities in the Entity Collection based on a given selection criteria.

Request

Parameter

Location

Description

Parameter

Location

Description

query (required)

query

The text or search criteria to be used for searching.

qf

query

A search query filter, ie. a filter is applied on the result list to remove unwanted results and therefore has no effect on ranking. This parameter can be used multiple types if more than one query filter is needed.

type

query

Used to restrict matching to a specific entity class, or otherwise match all entity classes if either 'all' or no type is indicated.

scope

query

Used to restrict matching to a specific scope of entities. The only possible value for the moment is 'europeana' to limit results to entities that are referenced in the main Europeana database.

lang

query

A two letter ISO639 code of the language used for searching the text against. It also determines the data that will be returned for the entity description by keeping only the data that is qualifed with the requested language.

Available values : en, nl, fr, de, es, sv, it, fi, da, el, cs, sk, sl, pt, hu, lt, pl, ro, bg, hr, lv, ga, mt, et, no, ca, ru, eu

profile

query

A parameter used to define the extent of the response. Only one profile is supported, namely “facets“.

  • facets: Performs the faceting on the selected fields and presents the counts from the top most frequent value for a field to the lowest.

page

query

The number of the page (defaults to 1).

pageSize

query

The number of items to retrieve, maximum is 100, defaults to 10.

sort

query

A comma separated list of fields used for sorting the results. The field can be suffixed with the order in which the results are sorted, either 'asc' or 'desc' by the following: <field_name>+<sort_order>. The special keyword 'score' can be used to order by the ranking as determined by the search engine (which is the default).

facet

query

A comma separated list of fields to be returned as facets for the given query.

Response

Console

Roadmap and Changelog

The current version of the Entities API is 0.10.3 (December 2021) which has support for suggest, retrieval and resolution by external identifier. It is currently available as a Public Alpha, which is the first public version released primarily to get feedback from you. Do note that this means that changes can be introduced which could break backwards compatibility. It also means that to use this API you need a separate API key than for the other Europeana APIs. To see the changes made for the current version and also all previous releases, see the API changelog in the project GitHub.