1. Home
  2. Programming
  3. EIDR REST API
  4. REST API – Public Services API

REST API – Public Services API

This section defines the actual HTTP headers, parameters, and data transmitted for each of the services.

All services except resolutions and virtual fields retrievals are supported using HTTP POST. Resolutions and virtual fields retrievals are supported using HTTP GET only. Simple Status checks are supported using HTTP GET, while more complex queries require HTTP POST.

Resolution service

This service resolves IDs the EIDR content database.

Name

Value                    

URL

One of the following:

https://<host>.eidr.org/EIDR/object/<asset ID>
https://<host>.eidr.org/EIDR/object/?altId=<alternate ID>

Method

HTTP GET

Encoding

None

HTTP Headers

Name

Type

Notes

Accept

  See section “HTTP Request Headers”.

Authorization

  See section “HTTP Request Headers”.

HTTP Parameters

Name

Type

Notes

type

Enumeration: Full, SelfDefined, Inherited, Simple, Provenance, DOIKernel, AlternateID, LinkedAlternateID

Required. Refer to the EIDR Registry Technical Overview for complete details.

followAlias

true or false

Required. Refer to the Registry Technical Overview for complete details.

altId

  Optional. Alternate ID. If there are multiple matches, an “invalid” request is returned[2] with the number of matches. If there are no matches, a bad ID error is returned.

NOTE: This requests that the record search be based on Alternate IDs, rather than EIDR IDs.

altIdType

Enumeration: See the schema for details.

Optional. Alternate ID type. Used to filter which Alternate IDs are returned. By default all are returned.

NOTE: This is only valid if “altId” has been specified.

altIdDomain

A domain such as studio.com

Optional. Alternate ID domain. Used to filter which AlternateIDs are returned. By default all are returned. The parameter value "null" will indicate to return AlternateIDs where the attribute is missing.

NOTE: This is only valid if “altId” has been specified.

altIdRelation

Enumeration: See the schema for details.

Optional. Alternate ID relation. The parameter value "null" will indicate to return AlternateIDs where the attribute is missing. By default relation must be missing or IsSameAs; altIdRelation=all will indicate to try to resolve assets with that altId with any relation.

NOTE: This is only valid if “altId” has been specified.

Resolution Service Request

HTTP Headers
NameTypeNotes
Content-type See section “NOTE: Under special circumstances (brought about by an internal registry communications issue), records submitted as synchronous (immediate mode) may be unilaterally converted by the registry into asynchronous (non-immediate mode) transactions. In this case, instead of responding to the synchronous transaction with the applicable EIDR ID, the registry returns a system-generated transaction Token and the message “system busy, request has been converted to asynchronous”. HTTP Response Headers”
Data
ResultsXMLRefer to schema for XML.
Resolution Service Response

An example of a resolution request is as follows:

GET https://<host>.eidr.org/EIDR/object/10.5240/<asset ID suffix>?type=Full
&followAlias=false HTTP/1.1
Accept: text/xml
Authorization: Eidr 10.5238/john.doe:10.5237/A929-C667:PtEdr8lBQ45IbT1bZIkrOQ==

An example of the response to a resolution request is as follows:

HTTP/1.1 200 OK
Content-Type: text/xml; charset=UTF-8

<Response XML goes here>

Here is a sample XML response to a resolution request for the Simple view of a root object:

<?xml version="1.0" encoding="UTF-8"?>
<SimpleMetadata xmlns="http://www.eidr.org/schema">
 <ID>10.5240/C840-E543-A58F-5C59-1B1C-T</ID>
 <StructuralType>Performance</StructuralType>
 <ReferentType>Movie</ReferentType>
 <ResourceName titleClass="release" lang="en">Avatar</ResourceName>
 <OriginalLanguage mode="Audio" type="primary">en</OriginalLanguage> 
 <ReleaseDate>2009</ReleaseDate>
 <Status>valid</Status>
</SimpleMetadata>

Here is a sample XML response to a resolution request for the Provenance view[2] of an object:

<ProvenanceMetadata>
 <ID>10.5240/C44C-4039-2C9C-5D75-2174-D</ID>
 <IssueNumber>15</IssueNumber>
 <Status>valid</Status>
 <Administrators>
  <Registrant>10.5237/superparty</Registrant>
 </Administrators>
 <CreationDate>2010-12-17T07:23:23Z</CreationDate>
 <LastModificationDate>2016-10-11T18:34:24Z</LastModificationDate>
 <PublicationDate>2016-10-11T21:39:15.162Z</PublicationDate>
</ProvenanceMetadata>

Here is a sample XML response to a resolution request for the DOIKernel view of a root object:

<?xml version="1.0" encoding="UTF-8"?>
<kernelMetadata xmlns="http://www.doi.org/2010/DOISchema">
 <referentDoiName>10.5240/4DDF-A111-8543-E67B-58F6-2</referentDoiName>
 <primaryReferentType>Creation</primaryReferentType>
 <registrationAgencyDoiName>10.1000/ra-5</registrationAgencyDoiName>
 <issueDate>2013-10-03</issueDate>
 <issueNumber>8</issueNumber>
 <referentCreation>
  <name primaryLanguage="en"><value>Ben-Hur</value><type>Title</type></name>
  <identifier>
   <nonUriValue>10.5240/4DDF-A111-8543-E67B-58F6-2</nonUriValue>
   <uri returnType="text/html">https://ui.eidr.org/view/content?id=10.5240/4DDF-A111-8543-E67B-58F6-2</uri>
   <uri returnType="application/xml">https://doi.org/10.5240/4DDF-A111-8543-E67B-58F6-2</uri>
   <type>EidrContentID</type>
  </identifier>
  <identifier>
   <nonUriValue>0000-0002-E823-0000-0-0000-0000-3</nonUriValue>
   <uri returnType="text/html">http://www.isan.org/lookup/0000-0002-E823-0000-0-0000-0000-3</uri>
   <type>ISAN</type></identifier>
  <identifier>
   <nonUriValue>2009218</nonUriValue>
   <type validNamespace="warnerbros.com/MPM">ProprietaryIdentifier</type>
  </identifier>
 <structuralType>Abstraction</structuralType>
 <mode>Audio</mode><mode>Visual</mode>
 <character>Language</character>
 <character>Image</character>
 <type>Film</type>
 <principalAgent>
   <name><value>Metro-Goldwyn-Mayer</value><type>Name</type></name>
   <identifier>
    <value>10.5237/169B-EDEB</value><type>EIDRPartyID</type>
   </identifier>
   <role>CorporateCreator</role>
 </principalAgent>
 <principalAgent>
  <name><value>sam zimbalist</value><type>Name</type></name>
  <identifier>
   <value>10.5237/03E2-6787</value>
   <type>EIDRPartyID</type>
  </identifier>
  <role>CorporateCreator</role>
 </principalAgent>
 <principalAgent>
  <name><value>William Wyler</value><type>Name</type></name>
  <role>Director</role>
 </principalAgent>
 <principalAgent>
  <name><value>Charlton Heston</value>
  <type>Name</type></name>
  <role>Actor</role>
 </principalAgent>
 <principalAgent>
  <name><value>Jack Hawkins</value>
  <type>Name</type></name>
  <role>Actor</role>
 </principalAgent>
 <linkedCreation>
  <identifier>
   <nonUriValue>10.5240/6FC2-CD1E-EA8B-A2DC-BE36-O</nonUriValue>
   <uri returnType="text/html">https://ui.eidr.org/view/content?id=10.5240/6FC2-CD1E-EA8B-A2DC-BE36-O</uri>
   <uri returnType="application/xml">https://doi.org/10.5240/6FC2-CD1E-EA8B-A2DC-BE36-O</uri>
   <type>EidrContentID</type>
  </identifier>
  <linkedCreationRole>Edit</linkedCreationRole>
 </linkedCreation>
 <linkedCreation>
  <identifier>
   <nonUriValue>10.5240/4BED-FDFC-C469-C7F7-1A05-2</nonUriValue>
   <uri returnType="text/html">https://ui.eidr.org/view/content?id=10.5240/4BED-FDFC-C469-C7F7-1A05-2</uri>
   <uri returnType="application/xml">https://doi.org/10.5240/4BED-FDFC-C469-C7F7-1A05-2</uri>
   <type>EidrContentID</type>
  </identifier>
  <linkedCreationRole>Edit</linkedCreationRole>
 </linkedCreation>
 </referentCreation>
</kernelMetadata>

Here is a sample XML response to a resolution request for the SelfDefined view of a child object (Season):

<?xml version="1.0" encoding="UTF-8"?>
<SelfDefinedMetadata xmlns="http://www.eidr.org/schema" xmlns:md="http://www.movielabs.com/schema/md/v2.8/md" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
 <BaseObjectData>
  <ID>10.5240/C44C-4039-2C9C-5D75-2174-D</ID>
  <StructuralType>Abstraction</StructuralType>
  <ReferentType>Season</ReferentType>
  <ResourceName lang="en" systemGenerated="true" titleClass="series numeric">Seinfeld: Season 9</ResourceName>
  <AssociatedOrg idType="EIDRPartyID" organizationID="10.5237/FBF8-C3CD" role="producer">
   <md:DisplayName>Castle Rock Entertainment</md:DisplayName>       <md:AlternateName>Castle Rock</md:AlternateName>
  </AssociatedOrg>
  <ReleaseDate>1997-09-25</ReleaseDate>
  <Status>valid</Status>
  <ApproximateLength>PT30M</ApproximateLength>
  <AlternateID xsi:type="IVA">358632</AlternateID>
  <AlternateID domain="spe.sony.com/MPM" xsi:type="Proprietary">T5004198000</AlternateID>
  <AlternateID domain="spe.sony.com/ProductID" xsi:type="Proprietary">20148</AlternateID>
  <AlternateID domain="nbcuni.com/sgenno" xsi:type="Proprietary">359644</AlternateID>
  <Administrators>
   <Registrant>10.5237/superparty</Registrant>
  </Administrators>
 </BaseObjectData>
 <ExtraObjectMetadata>
  <SeasonInfo>
   <Parent>10.5240/301C-0DFA-B184-5448-BB3E-I</Parent>
   <EndDate>1998-05-14</EndDate>
   <NumberRequired>true</NumberRequired>
   <DateRequired>false</DateRequired>
   <OriginalTitleRequired>true</OriginalTitleRequired>
   <SequenceNumber>9</SequenceNumber>
  </SeasonInfo>
  </ExtraObjectMetadata>
</SelfDefinedMetadata>

Here is a sample XML response to a resolution request for the Inherited view of the above child object (Season):

<InheritedMetadata>
 <BaseObjectData><ID>10.5240/C44C-4039-2C9C-5D75-2174-D</ID>
  <Mode>AudioVisual</Mode>
  <OriginalLanguage mode="Audio" type="primary">en</OriginalLanguage>
  <CountryOfOrigin>US</CountryOfOrigin>
  <Credits>
   <Actor><md:DisplayName>Jerry Seinfeld</md:DisplayName></Actor>
   <Actor><md:DisplayName>Jason Alexander</md:DisplayName></Actor>
   <Actor><md:DisplayName>Julia Louis-Dreyfus</md:DisplayName></Actor>
   <Actor><md:DisplayName>Michael Richards</md:DisplayName></Actor>
  </Credits>
 </BaseObjectData>
</InheritedMetadata>

Here is a sample XML response to a resolution request for the LinkedAlternateID view:

<AlternateIDs xmlns="http://www.eidr.org/schema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <ID>10.5240/C44C-4039-2C9C-5D75-2174-D</ID>
  <AlternateID xsi:type="IVA">358632</AlternateID>
  <AlternateID domain="spe.sony.com/MPM" xsi:type="Proprietary">T5004198000</AlternateID>
  <AlternateID domain="spe.sony.com/ProductID" xsi:type="Proprietary">20148</AlternateID>
  <AlternateID domain="nbcuni.com/sgenno" xsi:type="Proprietary">359644</AlternateID>
</AlternateIDs>

Query service

This service queries the EIDR content database.

NameValue
URLhttps://<host>.eidr.org/EIDR/query/
MethodHTTP POST
Encodingtext/xml or multipart/form-data
HTTP Parameters
NameTypeNotes
typeEnumeration: ID
simple (or SimpleMetadata)
Optional. ID returns only the ID of the content record. If not provided then the default is SimpleMetadata. See examples below.
HTTP Headers
NameTypeNotes
Accept See section “HTTP Request Headers”.
Accept-Encoding See section “HTTP Request Headers”.
Authorization See section “HTTP Request Headers”.
HTTP POST Parameters
NameTypeNotes
queryXMLRefer to schema for XML.
Query Service Request
HTTP Headers
NameTypeNotes
Content-typeInternet Media Type (MIME)See section “NOTE: Under special circumstances (brought about by an internal registry communications issue), records submitted as synchronous (immediate mode) may be unilaterally converted by the registry into asynchronous (non-immediate mode) transactions. In this case, instead of responding to the synchronous transaction with the applicable EIDR ID, the registry returns a system-generated transaction Token and the message “system busy, request has been converted to asynchronous”. HTTP Response Headers”
Data
QueryresultsXMLRefer to schema for XML.
Query Service Response

An example of a query request using multipart/form-data is as follows:

POST https://<host>.eidr.org/EIDR/query/ HTTP/1.1
Accept: text/xml
Authorization: Eidr 10.5238/john.doe:10.5237/A929-C667:PtEdr8lBQ45IbT1bZIkrOQ==
Content-Type: multipart/form-data; boundary=---314159
---314159
Content-Disposition: form-data; name=query
Content-Transfer-Encoding: binary
<Request XML goes here>
---314159--

A format of the response to a query request is as follows:

HTTP/1.1 200 OK
Content-Type: text/xml; charset=UTF-8

<Response XML goes here>

Query expressions are used when making a query with the POST method. Refer to the EIDR Registry Technical Overview for the query expression grammar.

Here is a sample XML for a content record query:

<?xml version="1.0" encoding="UTF-8"?>
<Request xmlns="http://www.eidr.org/schema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
 <Operation>
  <Query>
   <Expression>(/FullMetadata/BaseObjectData/ResourceName IS "Fight Club")</Expression>
   <PageNumber>1</PageNumber>
   <PageSize>3</PageSize>
  </Query>
 </Operation>
</Request>

An example of the response XML to a default (SimpleMetadata) query request is as follows:

<?xml version="1.0" encoding="UTF-8"?>
<Response xmlns="http://www.eidr.org/schema" xmlns:md="http://www.movielabs.com/schema/md/v2.8/md" xmlns:doi="http://www.doi.org/2010/DOISchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.0">
 <Status>
  <Code>0</Code>
  <Type>success</Type>
 </Status>
 <Query>
  <Expression>(/FullMetadata/BaseObjectData/ResourceName "II") AND /FullMetadata/BaseObjectData/ReferentType "movie"</Expression>
  <PageNumber>1</PageNumber>
  <PageSize>20</PageSize>
 </Query>
 <QueryResults>
  <CurrentSize>20</CurrentSize>
  <TotalMatches>230</TotalMatches>
  <SimpleMetadata>
   <ID>10.5240/0B20-3C24-2838-91EB-08CC-N</ID>
   <StructuralType>Performance</StructuralType>
   <ReferentType>Movie</ReferentType>
   <ResourceName titleClass="release" lang="en">Young and Dangerous II</ResourceName>
   <OriginalLanguage mode="Audio" type="primary">en</OriginalLanguage>
   <ReleaseDate>1996</ReleaseDate>
   <Status>valid</Status>
  </SimpleMetadata
…  [2 other results]
 </QueryResults>
</Response>

An example of the response XML to a query request with type=id is as follows:

<?xml version="1.0" encoding="UTF-8"?><Response xmlns="http://www.eidr.org/schema" version="2.0.5"><Status><Code>0</Code><Type>success</Type></Status>
 <Query><Expression>/FullMetadata/BaseObjectData/ResourceName IS "Fight Club"</Expression>
 <PageNumber>1</PageNumber><PageSize>10</PageSize></Query>
 <QueryResults><CurrentSize>8</CurrentSize><TotalMatches>8</TotalMatches>
  <ID>10.5240/F19F-D2DB-43F5-9B97-ED62-S</ID>
  <ID>10.5240/6865-ACEF-7D09-DAD3-7B5A-F</ID>
  <ID>10.5240/5CC7-E9D7-C6FC-991A-AE44-0</ID>
  <ID>10.5240/BE8F-D145-42D7-1E9B-E670-L</ID>
  <ID>10.5240/0517-8D84-F801-2128-2995-K</ID>
  <ID>10.5240/1FA1-D212-2A2A-0247-4735-H</ID>
  <ID>10.5240/E570-FE04-F9E5-3BB4-89A9-Y</ID>
  <ID>10.5240/333B-2034-D88E-E735-69E0-A</ID>
 </QueryResults>
</Response>

Registration service

This service is used for all read and write operations to the content database.

NameValue
URLhttps://<host>.eidr.org/EIDR/register/
MethodHTTP POST
Encodingtext/xml or multipart/form-data
HTTP Headers
NameTypeNotes
Accept See section “HTTP Request Headers”.
Authorization See section “HTTP Request Headers”.
Immediate-Response See section “HTTP Request Headers”.
HTTP POST Parameters
NameTypeNotes
batchXMLRefer to schema for XML.
Registration Service Request
HTTP Headers
NameTypeNotes
Content-type See section “NOTE: Under special circumstances (brought about by an internal registry communications issue), records submitted as synchronous (immediate mode) may be unilaterally converted by the registry into asynchronous (non-immediate mode) transactions. In this case, instead of responding to the synchronous transaction with the applicable EIDR ID, the registry returns a system-generated transaction Token and the message “system busy, request has been converted to asynchronous”. HTTP Response Headers”
Data
ResponseXMLRefer to schema for XML.
Registration Service Response

The format of a registration request using multipart/form-data is as follows:

POST https://<host>.eidr.org/EIDR/register/ HTTP/1.1
Authorization: Eidr 10.5238/john.doe:10.5237/A929-C667:PtEdr8lBQ45IbT1bZIkrOQ==
Immediate-Response: true
Content-Type: multipart/form-data; boundary=---314159
---314159
Content-Disposition: form-data; name=batch
Content-Transfer-Encoding: binary
<Request XML goes here>
---314159--

Each EIDR record references a different Creation Type, based on the fundamental nature of the record, that must be referenced in the Type attribute of the Create tag.

  • CreateBasic
  • CreateSeries
  • CreateSeason
  • CreateEpisode
  • CreateCompilation
  • CreateClip
  • CreateEdit
  • CreateManifestation

Sample XML of a registration request to Create (an Episode in this case) is as follows:

<?xml version="1.0" encoding="UTF-8"?>
<Request xmlns="http://www.eidr.org/schema" xmlns:doi="http://www.doi.org/2010/DOISchema" xmlns:md="http://www.movielabs.com/schema/md/v2.8/md" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
 <Operation>
  <Create type="CreateEpisode">
   <Episode>
    <BaseObjectData>
     <StructuralType>Abstraction</StructuralType>
     <AssociatedOrg idType="EIDRPartyID" organizationID="10.5237/62B6-3532" role="producer">
     </AssociatedOrg>
     <ReleaseDate>2011-11-01</ReleaseDate>
     <Status>valid</Status>
     <ApproximateLength>PT45M</ApproximateLength>
     <Administrators>
      <Registrant>10.5237/superparty</Registrant>
     </Administrators>
    </BaseObjectData>
    <ExtraObjectMetadata>
     <Parent>10.5240/9BCE-B814-BE24-6A85-AB05-Z</Parent>
     <SequenceInfo>
      <md:DistributionNumber domain="eidr.org">4</md:DistributionNumber>
      <md:HouseSequence domain="eidr.org">704</md:HouseSequence></SequenceInfo>
     </SequenceInfo>
    </ExtraObjectMetadata>
   </Episode>
  </Create>
 </Operation>
</Request>

The above is all that is needed with a Request with Content-type of text/xml.

Sample XML of a successful Registration Response for an immediate response is as follows:

<?xml version="1.0" encoding="UTF-8"?>
<Response xmlns="http://www.eidr.org/schema" version="2.0">
 <Status><Code>0</Code><Type>success</Type></Status>
 <RequestStatus>
  <Token>1375551600399000001</Token>
 </RequestStatus>
 <RequestStatusResults>
  <CurrentSize>1</CurrentSize>
  <TotalMatches>1</TotalMatches>
  <OperationStatus>
   <Token>1375551600399000001</Token><Status><Code>0</Code>
   <Type>success</Type></Status><ID>10.5240/EAFE-C1E8-F6F5-FA04-D85B-Q</ID>
  </OperationStatus>
 </RequestStatusResults>
</Response>

NOTE that the new content ID is returned in the above response.

Sample XML of a Registration response to a non-immediate request:

<?xml version="1.0" encoding="UTF-8"?>
<Response xmlns="http://www.eidr.org/schema" version="2.0">
 <Status><Code>0</Code><Type>success</Type></Status>
 <RequestStatus><Token>1330466364470000009</Token></RequestStatus>
 <RequestStatusResults>
  <CurrentSize>1</CurrentSize><TotalMatches>1</TotalMatches>
  <BatchStatus><Code>1</Code><Type>batch received</Type></BatchStatus>
 </RequestStatusResults>
</Response>

Sample XML of a Registration request to Add a Lightweight Relationship (in this case a Promotion) to a record:

<?xml version="1.0" encoding="UTF-8"?>
<Request xmlns="http://www.eidr.org/schema" xmlns:doi="http://www.doi.org/2010/DOISchema" xmlns:md="http://www.movielabs.com/schema/md/v2.8/md" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
 <Operation>
  <AddRelationship type="PromotionalRelationship">
   <ID>10.5240/4ED7-DCD7-4AF1-5545-64D5-6</ID>
   <PromotionInfo>
    <ID>10.5240/0F75-E736-22B5-562E-1867-S</ID>
    <PromotionClass>Infomercial</PromotionClass>
    </PromotionInfo>
  </AddRelationship>
 </Operation>
</Request>

Sample XML of a Registration request to Alias a record:

<?xml version="1.0" encoding="UTF-8"?>
<Request xmlns="http://www.eidr.org/schema" xmlns:doi="http://www.doi.org/2010/DOISchema" xmlns:md="http://www.movielabs.com/schema/md/v2.8/md" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
 <Operation>
  <Alias>
   <ID>10.5240/A868-A057-CA54-B31E-DEDE-8</ID>
   <TargetID>10.5240/5364-C582-B6EA-25C4-AE37-E</TargetID>
  </Alias>
 </Operation>
</Request>

Sample XML of a Registration request to Delete a record (which is the same as aliasing it to the EIDR tombstone object):

<?xml version="1.0" encoding="UTF-8"?>
<Request xmlns="http://www.eidr.org/schema" xmlns:doi="http://www.doi.org/2010/DOISchema" xmlns:md="http://www.movielabs.com/schema/md/v2.8/md" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
 <Operation>
  <Delete>
   <ID>10.5240/4ED7-DCD7-4AF1-5545-64D5-6</ID>
  </Delete>
 </Operation>
</Request>

Status Lookup service

This API allows you to look up registration tokens associated with your User or Party.

NOTE: The Token history is only retained for one year.

The following describes the GET method:

NameValue
URLOne of the following: https://<host>.eidr.org/EIDR/status/token/<token> https://<host>.eidr.org/EIDR/status/user/<user ID> https://<host>.eidr.org/EIDR/status/registrant/<Party ID>
MethodHTTP GET
EncodingNone
HTTP Headers
NameTypeNotes
Accept See section “HTTP Request Headers”.
Authorization See section “HTTP Request Headers”.
HTTP GET Parameters
NameTypeNotes
pageNumberPositive integerRequired. Specifies the current page number among the many pages the response could span. Also see pageSize parameter.
pageSizePositive integerRequired. Specifies the number of records per page that the response is divided into.
Status Lookup Service Request

The following describes the POST method, which supports filters for token status and times:

NameValue
URLhttps://<host>.eidr.org/EIDR/status/
MethodHTTP POST
Encodingtext/xml or multipart/form-data
HTTP Headers
NameTypeNotes
Accept See section “HTTP Request Headers”.
Authorization See section “HTTP Request Headers”.
HTTP POST Parameters
NameTypeNotes
statusrequestXMLRefer to schema for XML.
Status Lookup Service Request
HTTP Headers
NameTypeNotes
Content-type See section “NOTE: Under special circumstances (brought about by an internal registry communications issue), records submitted as synchronous (immediate mode) may be unilaterally converted by the registry into asynchronous (non-immediate mode) transactions. In this case, instead of responding to the synchronous transaction with the applicable EIDR ID, the registry returns a system-generated transaction Token and the message “system busy, request has been converted to asynchronous”. HTTP Response Headers”
Data
statusXMLRefer to schema for XML.
: Status Lookup Service Response

An example of a status lookup GET request is as follows:

GET https://<host>.eidr.org/EIDR/status/token/11986584321?pageNumber=1
&pageSize=25 HTTP/1.1
Accept: text/xml
Authorization: Eidr 10.5238/john.doe:10.5237/A929-C667:PtEdr8lBQ45IbT1bZIkrOQ==

An example of the response to a status lookup request is as follows:

HTTP/1.1 200 OK
Content-Type: text/xml; charset=UTF-8

<Response XML goes here>

Here is a sample XML response to a token status request for a single immediate-response operation that resulted in a duplicate that is not considered a perfect match:

<?xml version="1.0" encoding="UTF-8"?>
<Response xmlns="http://www.eidr.org/schema" version="2.0">
 <Status><Code>0</Code><Type>success</Type></Status>
 <RequestStatus><Token>1304620782671001023</Token></RequestStatus>
 <RequestStatusResults><CurrentSize>1</CurrentSize>
  <TotalMatches>1</TotalMatches>
  <OperationStatus>
   <Token>1304620782671001023</Token>
   <Status><Code>1</Code><Type>duplicate</Type></Status>
   <Duplicate><ID>10.5240/FB0D-0A93-CAD6-8E8D-80C2-4</ID></Duplicate>
  </OperationStatus>
 </RequestStatusResults>
</Response>

If, upon further inspection, this does not appear to be a duplicate then this operation could be resubmitted in non-immediate mode to generate a manual review that would permit this registration. (Alternatively, the request could be resubmitted with more optional metadata provided that might better distinguish it.)

Here is a sample XML response to a batch token status request with two successful registration operations:

<?xml version="1.0" encoding="UTF-8"?>
<Response xmlns="http://www.eidr.org/schema" version="2.0">
 <Status><Code>0</Code><Type>success</Type></Status>
 <RequestStatus><Token>1326853306619001323</Token></RequestStatus>
 <RequestStatusResults>
 <CurrentSize>2</CurrentSize><TotalMatches>2</TotalMatches>
 <BatchStatus><Code>2</Code><Type>batch queued</Type></BatchStatus>
 <OperationStatus><Token>1326853306929001324</Token>
  <Status><Code>0</Code><Type>success</Type></Status>
 </OperationStatus>
 <OperationStatus><Token>1326853306930001325</Token>
  <Status><Code>0</Code><Type>success</Type></Status></OperationStatus>
 </RequestStatusResults>
</Response>

Here is a sample POST XML request for all tokens for successful registrations for a Party after a certain date:

<?xml version="1.0" encoding="UTF-8"?>
<Request xmlns="http://www.eidr.org/schema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Operation>
  <StatusRequest>
   <Registrant>10.5237/F012-89FD</Registrant>
   <Status>success</Status>
   <After>2013-02-08T00:00:00</After>
   <PageNumber>1</PageNumber><PageSize>2</PageSize>
  </StatusRequest>
 </Operation>
</Request>

Here is the XML response for the request:

<?xml version="1.0" encoding="UTF-8"?>
<Response xmlns="http://www.eidr.org/schema" version="2.0">
 <Status><Code>0</Code><Type>success</Type></Status>
 <RequestStatus>
  <Registrant>10.5237/superparty</Registrant>
  <Status>success</Status><After>2013-02-08T00:00:00Z</After>
  <PageNumber>1</PageNumber><PageSize>2</PageSize>
 </RequestStatus>
 <RequestStatusResults>
  <CurrentSize>2</CurrentSize>
  <TotalMatches>1955</TotalMatches>
  <OperationStatus>
   <Token>1360398065568701737</Token>
   <Status><Code>0</Code><Type>success</Type></Status>
   <ID>10.5240/FCE4-98F2-29EA-CE47-90BF-O</ID>
   </OperationStatus>
  <OperationStatus>
   <Token>1360398065574701738</Token>
   <Status><Code>0</Code><Type>success</Type></Status>
   <ID>10.5240/C4FC-B2AE-8C0B-B251-B4F3-0</ID>
  </OperationStatus>
 </RequestStatusResults>
</Response>

Match Service

This service is used to find content matches prior to registration using the proposed registration data as a kind of query.

NOTE that fields that are not used to distinguish records during de-duplication are ignored in the query.

NameValue
URLhttps://<host>.eidr.org/EIDR/match/
MethodHTTP POST
Encodingtext/xml or multipart/form-data
HTTP Headers
NameTypeNotes
Accept See section “HTTP Request Headers”.
Authorization The Party used must have a Registrant role. See section “HTTP Request Headers” for details.
Immediate-Response Must be “true”. See section “HTTP Request Headers” for details.
HTTP POST Parameters
NameTypeNotes
batchXMLRefer to schema for XML.
Match Service Request
HTTP Headers
NameTypeNotes
Content-typeInternet Media Type (MIME)See section “NOTE: Under special circumstances (brought about by an internal registry communications issue), records submitted as synchronous (immediate mode) may be unilaterally converted by the registry into asynchronous (non-immediate mode) transactions. In this case, instead of responding to the synchronous transaction with the applicable EIDR ID, the registry returns a system-generated transaction Token and the message “system busy, request has been converted to asynchronous”. HTTP Response Headers”
Data
ResponseXMLRefer to schema for XML.
Match Service Response

An example of a match request is as follows:

POST https://<host>.eidr.org/EIDR/match/ HTTP/1.1
Accept: text/xml
Authorization: Eidr 10.5238/john.doe:10.5237/A929-C667:PtEdr8lBQ45IbT1bZIkrOQ==
Immediate-Response: true
Content-Type: multipart/form-data; boundary=---314159
---314159
Content-Disposition: form-data; name=batch
Content-Transfer-Encoding: binary
<Request XML goes here>
---314159--

The format of the response to a match request is as follows:

HTTP/1.1 200 OK
Content-Type: text/xml; charset=UTF-8

<Response XML goes here>

The request is identical to a Registration. For details see “Registration Service.”

The response is a modified version of the Registration Response that is more like a query. The differences are as follows:

  • There is no “duplicate” Operation Status Code. An Operation Status of “success” indicates that there are match results.
  • There is no repetition of the ID in the case of perfect duplicates. Therefore de-duplication scores are always returned. A perfect duplicate would be a single duplicate with a score that is greater than or equal to the high threshold for the object type. One or more low threshold duplicates would go to manual de-duplication. More than one high duplicates also go through manual de-duplication. No duplicates indicates the registration would succeed (assuming no changes in the database related to this record).
  • The data validation rule that disallows duplicate episode numbers is not enforced so that matches may be identified.

An example of the response XML to a match request for a non-Series Base object (such as a Movie or OTO) that is identical to an existing record is as follows:

<?xml version="1.0" encoding="UTF-8"?>
<Response xmlns="http://www.eidr.org/schema" version="2.0">
 <Status><Code>0</Code><Type>success</Type></Status>
 <RequestStatus><Token>1341261868856000456</Token></RequestStatus>
<RequestStatusResults>
<CurrentSize>1</CurrentSize><TotalMatches>1</TotalMatches>
  <OperationStatus><Token>1341261868856000456</Token>
   <Status><Code>0</Code><Type>success</Type></Status>
   <Duplicate score="100" lowThreshold="55" highThreshold="85">
    <ID>10.5240/826B-820C-28CF-2019-43FD-Q</ID>
   </Duplicate>
  </OperationStatus>
 </RequestStatusResults>
</Response>

An example of the response XML to a match request for a record that has no duplicates objects according to the de-duplication system:

<?xml version="1.0" encoding="UTF-8"?>
<Response xmlns="http://www.eidr.org/schema" version="2.0.1">
<Status><Code>0</Code><Type>success</Type></Status>
<RequestStatus>
 <Token>1387248226268022164</Token>
</RequestStatus>
<RequestStatusResults>
 <CurrentSize>1</CurrentSize>
 <TotalMatches>1</TotalMatches>
 <OperationStatus><Token>1387248226268022164</Token>
  <Status><Code>0</Code>
   <Type>success</Type>
  </Status>
 </OperationStatus>
 </RequestStatusResults>
</Response>

This indicates that this is a gap record and would create a new record if registered.

Graph traversal service

This service gets information for the inheritance hierarchy of an ID the EIDR content database.

NameValue
URLhttps://<host>.eidr.org/EIDR/object/graph/
MethodHTTP POST
Encodingtext/xml or multipart/form-data
HTTP Headers
NameTypeNotes
Accept See section “HTTP Request Headers”.
Authorization See section “HTTP Request Headers”.
HTTP Parameters
NameTypeNotes
extendedFamilyBooleanOptional. When true, traversals will include “dependents” of descendants as well as the ordinary descendants. Default is “false”.
HTTP POST Parameters
NameTypeNotes
graphrequestXMLThe available options include:
Graph Traversal Service Request
HTTP Headers
NameTypeNotes
Content-type See section “NOTE: Under special circumstances (brought about by an internal registry communications issue), records submitted as synchronous (immediate mode) may be unilaterally converted by the registry into asynchronous (non-immediate mode) transactions. In this case, instead of responding to the synchronous transaction with the applicable EIDR ID, the registry returns a system-generated transaction Token and the message “system busy, request has been converted to asynchronous”. HTTP Response Headers”
Data
GraphXMLRefer to schema for XML.
Graph Traversal Service Response

The format of a graph traversal request using multipart/form-data is as follows:

POST https://<host>.eidr.org/EIDR/object/graph/ HTTP/1.1
Accept: text/xml
Authorization: Eidr 10.5238/john.doe:10.5237/A929-C667:PtEdr8lBQ45IbT1bZIkrOQ==
Immediate-Response: true
Content-Type: multipart/form-data; boundary=---314159
---314159
Content-Disposition: form-data; name=graphrequest
Content-Transfer-Encoding: binary
<Request XML goes here>
---314159--

The format of the response to a traversal request is as follows:

HTTP/1.1 200 OK
Content-Type: text/xml; charset=UTF-8

<Response XML goes here>

An example of the request XML for a graph traversal is as follows:

<?xml version="1.0" encoding="UTF-8"?>
<Request xmlns="http://www.eidr.org/schema"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
 <Operation>
  <GetRemotestAncestor>
   <ID>10.5240/8B55-F9AA-007F-B18E-C000-6</ID>
  </GetRemotestAncestor>
 </Operation>
</Request>

An example of the response XML to a graph traversal request is as follows:

<?xml version="1.0" encoding="UTF-8"?>
<Response xmlns="http://www.eidr.org/schema" version="2.0.9">
 <Status><Code>0</Code><Type>success</Type></Status>
 <SimpleMetadata>
  <ID>10.5240/FB0D-0A93-CAD6-8E8D-80C2-4</ID>
  <StructuralType>Abstraction</StructuralType>
  <ReferentType>Movie</ReferentType>
  <ResourceName titleClass="release" lang="en">Gone with the Wind</ResourceName>
  <OriginalLanguage mode="Audio" type="primary">en</OriginalLanguage>
  <ReleaseDate>1939-12-15</ReleaseDate>
  <Status>valid</Status>
 </SimpleMetadata>
 <GenerationsAbove>1</GenerationsAbove>
</Response>

Modification Base service

This service reads the Modification Base for IDs the EIDR content database.

NameValue                    
URLhttps://<host>.eidr.org/EIDR/object/modificationbase/
MethodHTTP GET
EncodingNone
HTTP Headers
NameTypeNotes
Accept See section “HTTP Request Headers”.
Authorization See section “HTTP Request Headers”.
HTTP GET Parameters
NameTypeNotes
typeControlled vocabulary: CreateBasic, CreateSeries, CreateSeason, CreateEpisode, CreateClip, CreateCompilation, CreateEdit, CreateManifestation  Required, of type eidr:creationType. See the common.xsd schema for details.
Modification Base Service Request
HTTP Headers
NameTypeNotes
Content-type See section “NOTE: Under special circumstances (brought about by an internal registry communications issue), records submitted as synchronous (immediate mode) may be unilaterally converted by the registry into asynchronous (non-immediate mode) transactions. In this case, instead of responding to the synchronous transaction with the applicable EIDR ID, the registry returns a system-generated transaction Token and the message “system busy, request has been converted to asynchronous”. HTTP Response Headers”
Data
ResultsXMLRefer to schema for XML.
Modification Base Service Response

An example of a Modification Base request is as follows:

GET https://<host>.eidr.org/EIDR/object/modificationbase/10.5240/<asset ID suffix>?type=CreateBasic
HTTP/1.1
Accept: text/xml
Authorization: Eidr 10.5238/john.doe:10.5237/A929-C667:PtEdr8lBQ45IbT1bZIkrOQ==

An example of the response to a Modification Base request is as follows:

HTTP/1.1 200 OK
Content-Type: text/xml; charset=UTF-8
<Response XML goes here>

An example of the response XML to a Modification Base request is as follows:

<?xml version="1.0" encoding="UTF-8"?>
<Response xmlns="http://www.eidr.org/schema" xmlns:md="http://www.movielabs.com/schema/md/v2.8/md" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.0">
 <Status><Code>0</Code><Type>success</Type></Status>
 <Basic>
  <BaseObjectData>
   <StructuralType>Performance</StructuralType><Mode>AudioVisual</Mode>
   <ReferentType>Movie</ReferentType>
   <ResourceName titleClass="release" lang="en">Ben-Hur</ResourceName>
   <OriginalLanguage mode="Audio" type="primary">en</OriginalLanguage>
   <AssociatedOrg idType="EIDRPartyID" organizationID="10.5237/169B-EDEB" role="producer">
    <md:DisplayName>Metro-Goldwyn-Mayer</md:DisplayName>
    <md:AlternateName>MGM</md:AlternateName>
   </AssociatedOrg>
   <AssociatedOrg idType="EIDRPartyID" organizationID="10.5237/03E2-6787" role="producer">
    <md:DisplayName>sam zimbalist</md:DisplayName>
   </AssociatedOrg>
   <ReleaseDate>1959</ReleaseDate>
   <CountryOfOrigin>US</CountryOfOrigin>
   <Status>valid</Status>
   <ApproximateLength>PT3H32M</ApproximateLength>
   <AlternateID xsi:type="ISAN">0000-0002-E823-0000-0-0000-0000-3</AlternateID>
   <Administrators>
    <Registrant>10.5237/superparty</Registrant>
   </Administrators>
   <Credits>
    <Director><md:DisplayName>William Wyler</md:DisplayName></Director>
    <Actor><md:DisplayName>Charlton Heston</md:DisplayName></Actor>
    <Actor><md:DisplayName>Jack Hawkins </md:DisplayName></Actor>
   </Credits>
  </BaseObjectData>
 </Basic>
</Response>

For details on using the feature see the EIDR Registry Technical Overview.

Permissions Service

The following section describes the interfaces to read asset permissions.

NameValue                    
URLhttps://registry1.eidr.org/EIDR/permissions/read/{assetID}?aclType={aclType}
MethodHTTP GET
Permissions Service Request
Data
ResponseXMLAn instance of the eidr:AdminResponse or eidr:PartyIDList.
Permissions Service Response

Video Service Resolve Service

NameValue                    
URLhttps://registry1.eidr.org/EIDR/service/resolve/{servicedoi}?type= [doi|full]&followAlias=[true|false]
MethodHTTP GET
ResolveService Request
Data
responseXMLAn instance of the eidr:Service or eidr:ServiceAliasContinuation or doi:kernelMetadata XML schema
ResolveService  Response

The “type” query parameter is either “full” or “doi”, and defaults to “full” if missing.  “Full” requests eidr:Service XML, and “doi” requests doi:kernelMetadata XML. 

The “followAlias” query parameter defaults to “true” if missing, and determines whether to follow aliases when resolving.

Video Service Tree Traversal Services

1.1.1.1    GetServiceParent

NameValue                    
URLhttps://registry1.eidr.org/EIDR/service/parent/{servicedoi}
MethodHTTP GET
GetServiceParent Request
Data
responseXMLAn instance of the eidr:Party or eidr:Service XML schema
GetServiceParent Response

1.1.1.2    GetServiceChildren

NameValue                    
URLhttps://registry1.eidr.org/EIDR/service/children/{servicedoi}? all=[true|false]
MethodHTTP GET
GetServiceChildren Request
Data
responseXMLAn instance of the eidr:ServiceQueryResults XML schema
GetServiceChildren Response

The “all” query parameter defaults to “false” if missing, and determines whether to retrieve all children, or only active children.

Video Service Query Services

NameValue                    
URLhttps://registry1.eidr.org/EIDR/service/query
MethodHTTP POST
Request Content-Typemultipart/form-data or text/xml
HTTP POST Parameters
NameTypeNotes
serviceQueryXMLAn instance of the eidr:FindServices, eidr:FindServicesByName, or eidr:FindServicesFromCatalog XML schema
QueryServices Request
Data
responseXMLAn instance of the eidr:ServiceQueryResults XML schema
QueryServices Response

Video Service Registration service

NameValue                    
URLhttps://registry1.eidr.org/EIDR/service/create
MethodHTTP POST
Request Content-Typemultipart/form-data or text/xml
HTTP POST Parameters
NameTypeNotes
serviceXMLAn instance of eidr:CreateService XML
CreateService Request
Data
responseXMLAn instance of eidr:AdminResponse XML schema
CreateService Response

Video Service Modification Service

NameValue                    
URLhttps://registry1.eidr.org/EIDR/service/modify/
MethodHTTP POST
Request Content-Typemultipart/form-data or text/xml
HTTP POST Parameters
NameTypeNotes
serviceXMLAn instance of the eidr:Service XML schema
ModifyService Request
Data
responseXMLAn instance of the eidr:AdminResponse XML schema
ModifyService Response

Party Resolution Service

This service performs resolutions of IDs in the EIDR Party database.

NameValue
URLhttps://<host>.eidr.org/EIDR/party/resolve/?type=[doi | full]
MethodHTTP GET
HTTP Headers
NameTypeNotes
Accept See section “HTTP Request Headers”.
Authorization See section “HTTP Request Headers”.
Resolve Party Request
HTTP Headers
NameTypeNotes
Content-type See section “NOTE: Under special circumstances (brought about by an internal registry communications issue), records submitted as synchronous (immediate mode) may be unilaterally converted by the registry into asynchronous (non-immediate mode) transactions. In this case, instead of responding to the synchronous transaction with the applicable EIDR ID, the registry returns a system-generated transaction Token and the message “system busy, request has been converted to asynchronous”. HTTP Response Headers”
Data
ResponseXML  An instance of the eidr:AdminResponse XML schema in case of error, or the DOI Kernel Metadata for parties if the type specified is “doiKernel”, or an instance of eidr:Party XML the type specified is “full”
HTTP GET Parameters
NameTypeNotes
typeEnumeration: fullRequired.
Resolve Party Response

An example of a Party resolution request is as follows:

GET https://<host>.eidr.org/EIDR/party/resolve/10.5237/<Party ID suffix>?type=full HTTP/1.1
Accept: text/xml
Authorization: Eidr 
10.5238/john.doe:10.5237/A929-C667:PtEdr8lBQ45IbT1bZIkrOQ==

An example of resolve Party response is as follows:

HTTP/1.1 200 OK
Content-Type: text/xml; charset=UTF-8

<eidr:Party XML>

An example of the XML of a Party full resolution request is as follows:

<?xml version="1.0" encoding="UTF-8"?>
<Party xmlns="http://www.eidr.org/schema" xmlns:md="http://www.movielabs.com/schema/md/v2.8/md">
 <ID>10.5237/53C2-B532</ID>
 <PartyName organizationID="Principal Agent">
  <md:DisplayName>Republic Pictures</md:DisplayName>
 </PartyName>
 <ContactInfo>
  <md:Name>Republic Pictures</md:Name>
  <md:PrimaryEmail>[email protected]</md:PrimaryEmail>
 </ContactInfo>
 <Active>true</Active>
 <PartyAccountName>53C2-B532</PartyAccountName>
 <AllowedRoles>PrincipalAgent</AllowedRoles>
</Party>

An example of the XML of a Party doi resolution request is as follows:

<?xml version="1.0" encoding="UTF-8"?>
<kernelMetadata xmlns='http://www.doi.org/2010/DOISchema'>
 <referentDoiName>10.5237/AD45-F060</referentDoiName>
 <primaryReferentType>Party</primaryReferentType>
 <registrationAgencyDoiName>10.1000/ra-5</registrationAgencyDoiName>
 <issueDate>0001-01-01</issueDate>
 <issueNumber>0</issueNumber>
 <referentParty>
 <name>
  <value>Walt Disney Studios Home Entertainment</value>
  <type>PrincipalName</type>
 </name>
 <structuralType>Organization</structuralType>
 <associatedPartyRole>CorporateCreator</associatedPartyRole>
 </referentParty>
</kernelMetadata>

Party Query Service

This service queries the EIDR Party database.

NameValue
URLhttps://<host>.eidr.org/EIDR/party/query?type={ID | full}
MethodHTTP POST
Encodingtext/xml or multipart/form-data
HTTP Headers
NameTypeNotes
Accept See section “HTTP Request Headers”.
Authorization See section “HTTP Request Headers”.
HTTP POST Parameters
NameTypeNotes
partyQueryXMLAn instance of one of the following XML elements:
eidr:FindParties
eidr:FindPartiesByName
eidr:FindPartiesFromCatalog
type ID = Party IDs only full = full party resolution data
Query Parties Request
HTTP Headers
NameTypeNotes
Content-type See section “NOTE: Under special circumstances (brought about by an internal registry communications issue), records submitted as synchronous (immediate mode) may be unilaterally converted by the registry into asynchronous (non-immediate mode) transactions. In this case, instead of responding to the synchronous transaction with the applicable EIDR ID, the registry returns a system-generated transaction Token and the message “system busy, request has been converted to asynchronous”. HTTP Response Headers”
Data
responseXMLAn instance of the eidr:PartyQueryResults or eidr:AdminReponse in case of failure
Query Parties Response

An example of a Party query request is as follows:

POST https://<host>.eidr.org/EIDR/party/query/ HTTP/1.1
Accept: text/xml
Authorization: Eidr 10.5238/john.doe:10.5237/A929-C667:PtEdr8lBQ45IbT1bZIkrOQ==
Content-Type: multipart/form-data; boundary=---314159
---314159
Content-Disposition: form-data; name=partyQuery
Content-Transfer-Encoding: binary
<eidr:FindPartiesFromCatalog XML goes here>
---314159--

An example of a Party query response is as follows:

HTTP/1.1 200 OK
Content-Type: text/xml; charset=UTF-8

<eidr:PartyQueryResults instance goes here>

Here is a sample XML for a Party query:

<?xml version="1.0" encoding="UTF-8"?>
<FindPartiesFromCatalog xmlns='http://www.eidr.org/schema'>
 <PartyName>viacom</PartyName>
 <ActiveFilter/>
 <PageNumber>0</PageNumber>
 <PageSize>0</PageSize>
</FindPartiesFromCatalog>

An example of the XML of a Party query response is as follows:

<?xml version="1.0" encoding="UTF-8"?>
<PartyQueryResults xmlns="http://www.eidr.org/schema">
 <CurrentSize>4</CurrentSize>
 <TotalMatches>4</TotalMatches>
 <PartyID>10.5237/31DE-E215</PartyID>
 <PartyID>10.5237/8364-9A32</PartyID>
 <PartyID>10.5237/F1C4-FCB1</PartyID>
 <PartyID>10.5237/A59E-CC68</PartyID>
</PartyQueryResults>

User Resolution Service

NameValue                    
URLhttps://registry1.eidr.org/EIDR/user/resolve/{userdoi}?type=[doi  | full]
MethodHTTP GET
Resolve User Request
Data
ResponseXML  DOI entity Kernel Metadata if type is “DOI”or an instance of the  eidr:User schema if the type is “full” or eidr:AdminResponse
Resolve User Response

User Password Service

NameValue                    
URLhttps://registry1.eidr.org/EIDR/user/password/{userdoi}?password={newpassword}
MethodHTTP POST
Request Content-TypeNone
Change User Password Request
Data
responseXMLAn instance of the eidr:AdminResponse XML schema
Change User Password Response

Cancellation service

This service cancels a prior service request, identified by the request’s Token ID. It is only intended to be used when a user accidentally submits a very large data set that is generating a high volume of manual review requests without coordinating in advance with EIDR Operations.

NOTE: This will only cancel transactions that are queued in the registry awaiting their turn for de-duplication. As a result, this can only be applied to:

  • Tokens submitted by the User’s Party.
  • Asynchronous Create or Modify transactions.
  • Tokens that are still in “pending” status.
  • Transactions that are part of very large data sets

The latter requirement applies because transactions in small data sets will be sent to de-duplication quickly, without allowing time to cancel them first. The registry’s round-robin queueing system will also ensure that a small transaction set from one Party is not held up by a large transaction set from another Party, so the likelihood that a user’s transaction will remain queued in the registry long enough to be cancelled is negligible unless it is part of a very large number of transactions from the same Party.

NameValue
URLhttps://<host>.eidr.org/EIDR/status/
MethodHTTP POST
Encodingtext/xml or multipart/form-data
HTTP Headers
NameTypeNotes
Accept See section “HTTP Request Headers”.
Authorization See section “HTTP Request Headers”.
HTTP POST Parameters
NameTypeNotes
statusrequestXMLRefer to schema for XML.
Cancellation Service Request

This is essentially a Status Service Request, but the XML payload is different:

<Request xmlns="http://www.eidr.org/schema">
    <Operation>
        <TokenCancellationRequest>
            <Token>...</Token>
            <Token>...</Token>
        </TokenCancellationRequest>
    </Operation>
</Request>

The Tokens included in a Cancellation service request may be:

  • Operation or Batch Tokens
  • System- or User-generated

When cancelling a Batch Token, all of the included Operation transactions will also be cancelled.

Cancellation transactions always return a success (the request was processed successfully), but this does not guarantee that all of the included Tokens will actually be cancelled. Instead, the registry reports back a list of those Tokens that were successfully cancelled. It is up to the user to compare the request to the response to determine which transactions were processed and which were cancelled.

<Response xmlns="http://www.eidr.org/schema">
    <Status>
        <Code>0</Code>
        <Type>success</Type>
    </Status>
    <TokenCancellationResults>
        <CancelledTokenCount>1</CancelledTokenCount>
        <CancelledToken>...</CancelledToken>
    </TokenCancellationResults>
</Response>

See Also


[1] The request is “invalid” because the Resolution service was designed to return a single value, based on an EIDR ID. Alternate IDs must allow for the possibility that different ID systems may issue the same ID value.

[2] If the user’s Party is on the Read ACL (Access Control List) for the record, then CreatedBy and LastModifiedBy values will also be included.

Updated on April 9, 2021

Was this article helpful?

Related Articles