The EIDR Registry Technical Overview is primarily intended for developers who are undertaking an EIDR system integration directly via the EIDR HTTP API, using one of the provided EIDR SDKs, or by leveraging the EIDR Command-Line Tools. Other EIDR users with a technical background may also find it helpful in orienting them to the EIDR registry.
EIDR recommends that you also read the following documents, which contain more detailed information about the topics covered in this guide:
- Introduction to the EIDR Data Model
- Programmers Guide
- Best Practices and Use Cases for Abstraction Records
- Data Fields Reference
- REST API Reference
- Schema Documents
- EIDR: ID Format
This document describes the usage of the EIDR Registry for technical users and developers, including how to read, create, and modify Content ID records, how to perform operations on Parties, and how to perform operations on Video Service identifiers. In addition, reference information for the HTTP API validation rules is included. For information on the Digital Object Identifier (DOI) Proxy, please see EIDR and the DOI Proxy.
This diagram illustrates the EIDR system architecture:
Each object in the Registry is assigned a unique, universal, persistent identifier, or EIDR ID. The identifier is a Digital Object Identifier (DOI), a type of Handle conforming to ISO 26324 (for example, 10.5240/0000-0000-0000-0000-0000-X). The EIDR ID is composed of a prefix, which indicates the resolution system (in this case 10.5240 for the EIDR Content ID Registry), and a suffix (in this case 0000-0000-0000-0000-0000-X) identifying an object within that system, separated by a slash (/). For more information, see EIDR: ID Format.
The EIDR Registry principally identifies commercial audiovisual content. It also identifies important corporate entities in the ecosystem, such as production companies (Parties) and distribution channels (Video Services).
The EIDR system consists of the following modules:
Core Registry: This module is a customization and configuration of the Corporation for National Research Initiatives (CNRI) Digital Object Repository. It performs various functions including registration, generation of unique identifiers, indexing, object storage management, and access control. Each object is assigned a unique ID upon registration.
Repository: This stores and provides access to registered objects; for EIDR, these objects are collections of metadata, not the media assets themselves. The metadata includes standard object information, relationships, and access control settings.
De-Duplication: This module is called by the Core Registry to check for uniqueness of a newly created or modified object. For more information, see “De-Duplication” below.
REST API: An HTTP interface that provides access to the full set of non-administrative registry features. Using these calls, third-party services can perform all registry functions, including ID resolution, query, registration, and modification. Java and .NET SDKs built upon the REST API are available for application and service developers. The SDKs are available at https://members.eidr.org/ (a password is required to access them).
Command-Line Tools: The command-line tools are fairly simple applications, built on the SDKs, each of which provides a single function. They act as fully-commented source code examples and useful programs in their own right. A full set of command-line tools comes bundled with each SDK.
Web User Interface: EIDR provides a Web-based user interface primarily for metadata-based search and ID-based resolution. The UI also supports the more common workflows for registration and modification. The Web UI is built with the REST API. See https://ui.eidr.org/.
Bulk Registration Service: This application accepts any number of match, register, or modify requests and manages submitting them to the registry. It accepts both flat datasets and ones that have internal hierarchies (such as seasons, series, and episodes). This is one of several mechanisms for registering large catalogs after matching has been completed. For more information, see “Catalog Matching and Registration” below.
Handle System: The DOI ecosystem is an application of the Handle system, in the same way that HTTP is built on top of TCP/IP. The Handle system provides distributed lookup and resolution services. The worldwide DOI system is implemented using the Handle system from Corporation for National Research Initiatives (CNRI).
You can access the EIDR Registry through its user interfaces, SDKs, and applications such as the bulk registration service and command-line tools. The following sections briefly describe these various forms of support.
There are two instances of the EIDR Registry: Production and Sandbox. The Production system is the official site, where all officially registered EIDR IDs exist.
The Sandbox is a development and test site where new users can start their practice registration efforts. Its data will generally not match the production data exactly, and the EIDR IDs do not necessarily match those in the Production system.
Do not assume that the records from the Sandbox are correct, as some of its data are transient. In addition, the Sandbox system is periodically wiped clean and replaced with a copy of the production system as a new starting point, deleting all practice efforts and corresponding EIDR IDs.
The EIDR Production Registry Web UI is available at https:// ui.eidr.org.
The EIDR Sandbox Web UI is available at https://sandboxui.eidr.org.
The user interface is identical between the Production and Sandbox systems, so it is important that you use the correct one for your work. The Production masthead (below) is blue, while the Sandbox masthead is green.
In addition, you will find the linked registry name and version number in the lower right corner of the screen. This will generally be one of:
- registry1.eidr.org – The EIDR production primary (read/write) registry
- resolve.eidr.org – The EIDR read-only mirror registry
- sandbox1.eidr.org – The EIDR Sandbox registry
Through the user interface you can:
- Perform metadata-based searches
- Perform ID-based resolutions
- Look up the status of asynchronous requests using tokens returned by the requests
- Initiated by specific users
- Initiated by registrants
- Create new records
- Modify existing records
- Access the EIDR Support network
With the command-line tools you can perform every public registry function, including:
- Resolve EIDR IDs
- Examine the object hierarchy
- Make queries about Content records, Parties, and Video Services
- Create and modify objects (singly and in bulk)
- Manage relationships
- Promote objects
- Delete objects
- Alias objects
With the SDK you can create Java and .NET applications that make use of Registry services and perform Registry operations. If necessary, you can use the HTTP API directly, but this is not recommended.