Token Use Examples

These show the Response XML returned in various circumstances.

Register one item, immediate mode – Success

This is the result for a Registration. Everything you need is in the initial Response. Note that the RequestStatus token (the “batch token”) and the OperationStatus token are the same.

<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1329304802304006432</Token>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>1</CurrentSize>
    <TotalMatches>1</TotalMatches>
    <OperationStatus>
      <Token>1329304802304006432</Token>
      <Status>
        <Code>0</Code>
        <Type>success</Type>
      </Status>
      <ID>10.5240/6B7E-4CE9-0B43-CAB7-D8C0-2</ID>
    </OperationStatus>
  </RequestStatusResults>
</Response>

If you look up the token later with StatusLookup, you get the same thing – the operation status is Success, which is a final state.

<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1329304802304006432</Token>
    <PageNumber>1</PageNumber>
    <PageSize>100</PageSize>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>1</CurrentSize>
    <TotalMatches>1</TotalMatches>
    <OperationStatus>
      <Token>1329304802304006432</Token>
      <Status>
        <Code>0</Code>
        <Type>success</Type>
      </Status>
      <ID>10.5240/6B7E-4CE9-0B43-CAB7-D8C0-2</ID>
    </OperationStatus>
  </RequestStatusResults>
</Response>

Register one item, immediate mode – Failure

This is also for a registration, but one that fails because the system found a duplicate. (Not surprising, since it is the result of re-running the request from the previous example.) The single RequestStatusResults/OperationStatus/ID element indicates that the ID is an exact match for the attempted registration and can be used as the ID for the submitted object. The threshold information in the <Duplicate> tag shows how closely the request matched the submitted item.

<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1329305173217006434</Token>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>1</CurrentSize>
    <TotalMatches>1</TotalMatches>
    <OperationStatus>
      <Token>1329305173217006434</Token>
      <Status>
        <Code>1</Code>
        <Type>duplicate</Type>
      </Status>
      <ID>10.5240/6B7E-4CE9-0B43-CAB7-D8C0-2</ID>
      <Duplicate score="100" lowThreshold="55" highThreshold="85">
        <ID>10.5240/6B7E-4CE9-0B43-CAB7-D8C0-2</ID>
      </Duplicate>
    </OperationStatus>
  </RequestStatusResults>
</Response>

If you were to look the token up again, you would get the same result, since the operation status of duplicate is a final state.

Register one item, Non-Immediate (asynchronous) – Success

Note that the RequestStatus token (the “batch token”) and the OperationStatus token are the same.

<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1329305644949006438</Token>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>1</CurrentSize>
    <TotalMatches>1</TotalMatches>
    <BatchStatus>
      <Code>1</Code>
      <Type>batch received</Type>
    </BatchStatus>
  </RequestStatusResults>
</Response>

The OperationStatus is “batch received”, which is not a terminal state. Depending on timing and load on the Registry, this initial state will sometimes come back as already “pending”. When we query again, the OperationStatus has changed to “success”.

<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1329305644949006438</Token>
    <PageNumber>1</PageNumber>
    <PageSize>100</PageSize>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>1</CurrentSize>
    <TotalMatches>1</TotalMatches>
    <OperationStatus>
      <Token>1329305644949006438</Token>
      <Status>
        <Code>0</Code>
        <Type>success</Type>
      </Status>
      <ID>10.5240/B3EC-118C-C235-167F-40CC-L</ID>
    </OperationStatus>
  </RequestStatusResults>
</Response>

If the registration goes quickly you may see the result with Success as the first response, and never see ”batch received” or “pending“ status.

Register one item, non-immediate (asynchronous) – Failure

Here is the initial response. Note that there is a BatchStatus of “batch received”, so this token is acting like a batch token rather than an Operation token.

<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1329305993064006440</Token>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>1</CurrentSize>
    <TotalMatches>1</TotalMatches>
    <BatchStatus>
      <Code>1</Code>
      <Type>batch received</Type>
    </BatchStatus>
  </RequestStatusResults>
</Response>

A later StatusLookup gives us something that looks like it came from an Operation token, because the single-item batch has been queued and there is enough information to fill out the OperationStatus. You may not see this state if there is a sufficient length of time between the initial request and the status lookup, or you may see this as the initial response.

<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1329305993064006440</Token>
    <PageNumber>1</PageNumber>
    <PageSize>1000</PageSize>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>1</CurrentSize>
    <TotalMatches>1</TotalMatches>
    <OperationStatus>
      <Token>1329305993064006440</Token>
      <Status>
        <Code>2</Code>
        <Type>pending</Type>
      </Status>
    </OperationStatus>
  </RequestStatusResults>
</Response>

Since it was still not a final state, we look it up again later. Now the request has failed with an OperationStatus of Duplicate. The /RequestStatusResults/OperationStatus/ID field has the same meaning as before; it is a high enough match that it can be used as the ID for the attempted registration

NOTE: For non-immediate (asynchronous) requests, the attributes returned in RequestStatusResults/OperationStatus/Duplicate should not be used. They will not always be present, and when present may be incorrect.

<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1329305993064006440</Token>
    <PageNumber>1</PageNumber>
    <PageSize>100</PageSize>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>1</CurrentSize>
    <TotalMatches>1</TotalMatches>
    <OperationStatus>
      <Token>1329305993064006440</Token>
      <Status>
        <Code>1</Code>
        <Type>duplicate</Type>
      </Status>
      <ID>10.5240/B3EC-118C-C235-167F-40CC-L</ID>
      <Duplicate score="100" lowThreshold="55" highThreshold="85">
        <ID>10.5240/B3EC-118C-C235-167F-40CC-L</ID>
      </Duplicate>
    </OperationStatus>
  </RequestStatusResults>
</Response>

Register two items – Success

Since there is more than one item, this has to be non-immediate (asynchronous).

<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1329307939921006455</Token>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>1</CurrentSize>
    <TotalMatches>1</TotalMatches>
    <BatchStatus>
      <Code>1</Code>
      <Type>batch received</Type>
    </BatchStatus>
  </RequestStatusResults>
</Response>

Since “batch received” is not an end state, we have to poll (look up the token) again.

<Response xmlns="http://www.eidr.org/schema/" version="2.0">
 <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1329307939921006455</Token>
    <PageNumber>1</PageNumber>
    <PageSize>1000</PageSize>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>2</CurrentSize>
    <TotalMatches>2</TotalMatches>
    <BatchStatus>
      <Code>2</Code>
      <Type>batch queued</Type>
    </BatchStatus>
    <OperationStatus>
      <Token>1329307940251006456</Token>
      <Status>
        <Code>2</Code>
        <Type>pending</Type>
      </Status>
    </OperationStatus>
    <OperationStatus>
      <Token>1329307940252006457</Token>
      <Status>
        <Code>2</Code>
        <Type>pending</Type>
      </Status>
    </OperationStatus>
  </RequestStatusResults>
</Response>

The batch is now in a final state (“batch queued”) and there are some Operation tokens to look at. Both of them are pending, and so have to be looked up again. Here they are:

<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1329307940251006456</Token>
    <PageNumber>1</PageNumber>
    <PageSize>1000</PageSize>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>1</CurrentSize>
    <TotalMatches>1</TotalMatches>
    <OperationStatus>
      <Token>1329307940251006456</Token>
      <Status>
        <Code>2</Code>
        <Type>pending</Type>
      </Status>
    </OperationStatus>
  </RequestStatusResults>
</Response>

<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1329307940252006457</Token>
    <PageNumber>1</PageNumber>
    <PageSize>1000</PageSize>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>1</CurrentSize>
    <TotalMatches>1</TotalMatches>
    <OperationStatus>
      <Token>1329307940252006457</Token>
      <Status>
        <Code>2</Code>
        <Type>pending</Type>
      </Status>
    </OperationStatus>
  </RequestStatusResults>
</Response>

After waiting for the token to be resolved by EIDR Operations staff, polling the Operation tokens again gives a final result:

<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1329307940251006456</Token>
    <PageNumber>1</PageNumber>
    <PageSize>100</PageSize>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>1</CurrentSize>
    <TotalMatches>1</TotalMatches>
    <OperationStatus>
      <Token>1329307940251006456</Token>
      <Status>
        <Code>0</Code>
        <Type>success</Type>
      </Status>
      <ID>10.5240/B672-7FB2-7609-DBE7-7251-4</ID>
    </OperationStatus>
  </RequestStatusResults>
</Response>

<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1329307940252006457</Token>
    <PageNumber>1</PageNumber>
    <PageSize>100</PageSize>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>1</CurrentSize>
    <TotalMatches>1</TotalMatches>
    <OperationStatus>
      <Token>1329307940252006457</Token>
      <Status>
        <Code>0</Code>
        <Type>success</Type>
      </Status>
      <ID>10.5240/E671-02A8-0E11-295E-7806-0</ID>
    </OperationStatus>
  </RequestStatusResults>
</Response>

Both have succeeded. Now take a look at the batch token again.

NOTE: We can only discern the state of the individual operations from the batch token, not the details of the operations.

Register two items – Failure

This is pretty straightforward. First reply is the expected “batch received”.

<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1329309710482006471</Token>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>1</CurrentSize>
    <TotalMatches>1</TotalMatches>
    <BatchStatus>
      <Code>1</Code>
      <Type>batch received</Type>
    </BatchStatus>
  </RequestStatusResults>
</Response>

Then we poll the token again, eventually getting “batch queued”.

<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1329309710482006471</Token>
    <PageNumber>1</PageNumber>
    <PageSize>5000</PageSize>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>2</CurrentSize>
    <TotalMatches>2</TotalMatches>
    <BatchStatus>
      <Code>2</Code>
      <Type>batch queued</Type>
    </BatchStatus>
    <OperationStatus>
      <Token>1329309710886006472</Token>
      <Status>
        <Code>2</Code>
        <Type>pending</Type>
      </Status>
    </OperationStatus>
    <OperationStatus>
      <Token>1329309710886006473</Token>
      <Status>
        <Code>2</Code>
        <Type>pending</Type>
      </Status>
    </OperationStatus>
  </RequestStatusResults>
</Response>

Both Operation tokens are pending – we must be more patient next time. It may be useful to introduce a delay between token polls, particularly if the transaction has been referred to manual review.

<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1329309710886006472</Token>
    <PageNumber>1</PageNumber>
    <PageSize>5000</PageSize>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>1</CurrentSize>
    <TotalMatches>1</TotalMatches>
    <OperationStatus>
      <Token>1329309710886006472</Token>
      <Status>
        <Code>2</Code>
        <Type>pending</Type>
      </Status>
    </OperationStatus>
  </RequestStatusResults>
</Response>

<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1329309710886006473</Token>
    <PageNumber>1</PageNumber>
    <PageSize>5000</PageSize>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>1</CurrentSize>
    <TotalMatches>1</TotalMatches>
    <OperationStatus>
      <Token>1329309710886006473</Token>
      <Status>
        <Code>2</Code>
        <Type>pending</Type>
      </Status>
    </OperationStatus>
  </RequestStatusResults>
</Response>

But eventually they wend their way to a final state. All the comments about the result of a single non-immediate (asynchronous) request apply here too.

<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1329309710886006472</Token>
    <PageNumber>1</PageNumber>
    <PageSize>100</PageSize>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>1</CurrentSize>
    <TotalMatches>1</TotalMatches>
    <OperationStatus>
      <Token>1329309710886006472</Token>
      <Status>
        <Code>1</Code>
        <Type>duplicate</Type>
      </Status>
      <ID>10.5240/B672-7FB2-7609-DBE7-7251-4</ID>
      <Duplicate score="100" lowThreshold="55" highThreshold="85">
        <ID>10.5240/B672-7FB2-7609-DBE7-7251-4</ID>
      </Duplicate>
    </OperationStatus>
  </RequestStatusResults>
</Response>

<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1329309710886006473</Token>
    <PageNumber>1</PageNumber>
    <PageSize>100</PageSize>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>1</CurrentSize>
    <TotalMatches>1</TotalMatches>
    <OperationStatus>
      <Token>1329309710886006473</Token>
      <Status>
        <Code>1</Code>
        <Type>duplicate</Type>
      </Status>
      <ID>10.5240/E671-02A8-0E11-295E-7806-0</ID>
      <Duplicate score="100" lowThreshold="55" highThreshold="85">
        <ID>10.5240/E671-02A8-0E11-295E-7806-0</ID>
      </Duplicate>
    </OperationStatus>
  </RequestStatusResults>
</Response>

As with the previous non-immediate (asynchronous) batch of 2 operations, StatusLookup on the batch token just gives the OperationStatus values and no details. If you saw this result before you had looked up the OperationTokens, you would still have to look them up to get details of the Duplicate IDs.

<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1329309710482006471</Token>
    <PageNumber>1</PageNumber>
    <PageSize>100</PageSize>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>2</CurrentSize>
    <TotalMatches>2</TotalMatches>
    <BatchStatus>
      <Code>2</Code>
      <Type>batch queued</Type>
    </BatchStatus>
    <OperationStatus>
      <Token>1329309710886006472</Token>
      <Status>
        <Code>1</Code>
        <Type>duplicate</Type>
      </Status>
    </OperationStatus>
    <OperationStatus>
      <Token>1329309710886006473</Token>
      <Status>
        <Code>1</Code>
        <Type>duplicate</Type>
      </Status>
    </OperationStatus>
  </RequestStatusResults>
</Response>

Register two items – One Success, One Failure

This example builds upon the previous ones.

Initial response:

<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1329314360824006495</Token>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>1</CurrentSize>
    <TotalMatches>1</TotalMatches>
    <BatchStatus>
      <Code>1</Code>
      <Type>batch received</Type>
    </BatchStatus>
  </RequestStatusResults>
</Response>

StatusLookup on the batch token:

<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1329314360824006495</Token>
    <PageNumber>1</PageNumber>
    <PageSize>5000</PageSize>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>2</CurrentSize>
    <TotalMatches>2</TotalMatches>
    <BatchStatus>
      <Code>2</Code>
      <Type>batch queued</Type>
    </BatchStatus>
    <OperationStatus>
      <Token>1329314361468006496</Token>
      <Status>
        <Code>2</Code>
        <Type>pending</Type>
      </Status>
    </OperationStatus>
    <OperationStatus>
      <Token>1329314361469006497</Token>
      <Status>
        <Code>2</Code>
        <Type>pending</Type>
      </Status>
    </OperationStatus>
  </RequestStatusResults>
</Response>

Status lookup on the OperationTokens.

This one has failed already:

<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1329314361468006496</Token>
    <PageNumber>1</PageNumber>
    <PageSize>100</PageSize>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>1</CurrentSize>
    <TotalMatches>1</TotalMatches>
    <OperationStatus>
      <Token>1329314361468006496</Token>
      <Status>
        <Code>1</Code>
        <Type>duplicate</Type>
      </Status>
      <ID>10.5240/B672-7FB2-7609-DBE7-7251-4</ID>
      <Duplicate score="100" lowThreshold="55" highThreshold="85">
        <ID>10.5240/B672-7FB2-7609-DBE7-7251-4</ID>
      </Duplicate>
    </OperationStatus>
  </RequestStatusResults>
</Response>

But this one is still pending.

<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1329314361469006497</Token>
    <PageNumber>1</PageNumber>
    <PageSize>5000</PageSize>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>1</CurrentSize>
    <TotalMatches>1</TotalMatches>
    <OperationStatus>
      <Token>1329314361469006497</Token>
      <Status>
        <Code>2</Code>
        <Type>pending</Type>
      </Status>
    </OperationStatus>
  </RequestStatusResults>
</Response>

Trying just the pending one again, we see it has succeeded.

<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1329314361469006497</Token>
    <PageNumber>1</PageNumber>
    <PageSize>100</PageSize>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>1</CurrentSize>
    <TotalMatches>1</TotalMatches>
    <OperationStatus>
      <Token>1329314361469006497</Token>
      <Status>
        <Code>0</Code>
        <Type>success</Type>
      </Status>
      <ID>10.5240/F345-0ACE-8557-9EBE-5B68-P</ID>
    </OperationStatus>
  </RequestStatusResults>
</Response>

And see the final states in the two OperationTokens in the StatusLookup of the BatchToken.

<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1329314360824006495</Token>
    <PageNumber>1</PageNumber>
    <PageSize>100</PageSize>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>2</CurrentSize>
    <TotalMatches>2</TotalMatches>
    <BatchStatus>
      <Code>2</Code>
      <Type>batch queued</Type>
    </BatchStatus>
    <OperationStatus>
      <Token>1329314361468006496</Token>
      <Status>
        <Code>1</Code>
        <Type>duplicate</Type>
      </Status>
    </OperationStatus>
    <OperationStatus>
      <Token>1329314361469006497</Token>
      <Status>
        <Code>0</Code>
        <Type>success</Type>
      </Status>
    </OperationStatus>
  </RequestStatusResults>
</Response>

Delete single item – Success

Responses to Delete are like those for Register, but with fewer possible error conditions. This response came from a single immediate-mode request, but could just as well be the lookup of the token for a single-item batch (as was the case for Registration).

<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1325936273217005867</Token>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>1</CurrentSize>
    <TotalMatches>1</TotalMatches>
    <OperationStatus>
      <Token>1325936273217005867</Token>
      <Status>
        <Code>0</Code>
        <Type>success</Type>
      </Status>
      <ID>10.5240/B38A-47F0-786F-52E4-032E-Q</ID>
    </OperationStatus>
  </RequestStatusResults>
</Response>

Delete single item – failure

The OperationStatus <Details> field here is a little misleading – this was an attempt to Delete an already deleted item – but the structure of the response should have no surprises for the attentive reader.

<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1325936337610005869</Token>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>1</CurrentSize>
    <TotalMatches>1</TotalMatches>
    <OperationStatus>
      <Token>1325936337610005869</Token>
      <Status>
        <Code>4</Code>
        <Type>validation error</Type>
        <Details>ID must be an identifier of a valid asset</Details>
      </Status>
    </OperationStatus>
  </RequestStatusResults>
</Response>

Delete multiple – Success

This is similar to a successful multiple Registration. First the batch is received:

<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1325935799747005861</Token>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>1</CurrentSize>
    <TotalMatches>1</TotalMatches>
    <BatchStatus>
      <Code>1</Code>
      <Type>batch received</Type>
    </BatchStatus>
  </RequestStatusResults>
</Response>

Then it is queued and gives us a set of OperationTokens:

<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1325935799747005861</Token>
    <PageNumber>1</PageNumber>
    <PageSize>1000</PageSize>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>4</CurrentSize>
    <TotalMatches>4</TotalMatches>
    <BatchStatus>
      <Code>2</Code>
      <Type>batch queued</Type>
    </BatchStatus>
    <OperationStatus>
      <Token>1325935800033005862</Token>
      <Status>
        <Code>2</Code>
        <Type>pending</Type>
      </Status>
    </OperationStatus>
    <OperationStatus>
      <Token>1325935800034005863</Token>
      <Status>
        <Code>2</Code>
        <Type>pending</Type>
      </Status>
    </OperationStatus>
    <OperationStatus>
      <Token>1325935800034005864</Token>
      <Status>
        <Code>2</Code>
        <Type>pending</Type>
      </Status>
    </OperationStatus>
    <OperationStatus>
      <Token>1325935800034005865</Token>
      <Status>
        <Code>2</Code>
        <Type>pending</Type>
      </Status>
    </OperationStatus>
  </RequestStatusResults>
</Response>

Since even the most dedicated reader may be flagging by now, here is the lookup of just one of the OperationTokens:

<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1325935800033005862</Token>
    <PageNumber>1</PageNumber>
    <PageSize>1000</PageSize>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>1</CurrentSize>
    <TotalMatches>1</TotalMatches>
    <OperationStatus>
      <Token>1325935800033005862</Token>
      <Status>
        <Code>2</Code>
        <Type>pending</Type>
      </Status>
    </OperationStatus>
  </RequestStatusResults>
</Response>

Alas, still pending. Now look at the BatchToken again:

<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1325935799747005861</Token>
    <PageNumber>1</PageNumber>
    <PageSize>100</PageSize>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>4</CurrentSize>
    <TotalMatches>4</TotalMatches>
    <BatchStatus>
      <Code>2</Code>
      <Type>batch queued</Type>
    </BatchStatus>
    <OperationStatus>
      <Token>1325935800033005862</Token>
      <Status>
        <Code>0</Code>
        <Type>success</Type>
      </Status>
    </OperationStatus>
    <OperationStatus>
      <Token>1325935800034005863</Token>
      <Status>
        <Code>0</Code>
        <Type>success</Type>
      </Status>
    </OperationStatus>
    <OperationStatus>
      <Token>1325935800034005864</Token>
      <Status>
        <Code>0</Code>
        <Type>success</Type>
      </Status>
    </OperationStatus>
    <OperationStatus>
      <Token>1325935800034005865</Token>
      <Status>
        <Code>0</Code>
        <Type>success</Type>
      </Status>
    </OperationStatus>
  </RequestStatusResults>
</Response>

They have all succeeded, and here is the StatusLookup of one of them. Note that unlike the lookup of the BatchToken, it gives you the ID that was deleted as part of the OperationStatus:

<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1325935800033005862</Token>
    <PageNumber>1</PageNumber>
    <PageSize>100</PageSize>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>1</CurrentSize>
    <TotalMatches>1</TotalMatches>
    <OperationStatus>
      <Token>1325935800033005862</Token>
      <Status>
        <Code>0</Code>
        <Type>success</Type>
      </Status>
      <ID>10.5240/EA58-A374-0E79-7C7C-9110-G</ID>
    </OperationStatus>
  </RequestStatusResults>
</Response>

Delete multiple – failure

This is what happens when a batch of Delete requests fails:

<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1325935545881005856</Token>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>1</CurrentSize>
    <TotalMatches>1</TotalMatches>
    <BatchStatus>
      <Code>1</Code>
      <Type>batch received</Type>
    </BatchStatus>
  </RequestStatusResults>
</Response>

They have all gotten to an end state rather quickly – validation rule failures are faster to the finish line than full processing of a valid request.

<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1325935545881005856</Token>
    <PageNumber>1</PageNumber>
    <PageSize>1000</PageSize>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>3</CurrentSize>
    <TotalMatches>3</TotalMatches>
    <BatchStatus>
      <Code>2</Code>
      <Type>batch queued</Type>
    </BatchStatus>
    <OperationStatus>
      <Token>1325935546445005857</Token>
      <Status>
        <Code>4</Code>
        <Type>validation error</Type>
        <Details>ID must be an identifier of a valid asset</Details>
      </Status>
    </OperationStatus>
    <OperationStatus>
      <Token>1325935546446005858</Token>
      <Status>
        <Code>4</Code>
        <Type>validation error</Type>
        <Details>ID must be an identifier of a valid asset</Details>
      </Status>
    </OperationStatus>
    <OperationStatus>
      <Token>1325935546446005859</Token>
      <Status>
        <Code>4</Code>
        <Type>validation error</Type>
        <Details>ID must be an identifier of a valid asset</Details>
      </Status>
    </OperationStatus>
  </RequestStatusResults>
</Response>

Looking up one of the tokens, it looks just like the Response for the failure of a single Delete request.

<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1325935546446005858</Token>
    <PageNumber>1</PageNumber>
    <PageSize>1000</PageSize>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>1</CurrentSize>
    <TotalMatches>1</TotalMatches>
    <OperationStatus>
      <Token>1325935546446005858</Token>
      <Status>
        <Code>4</Code>
        <Type>validation error</Type>
        <Details>ID must be an identifier of a valid asset</Details>
      </Status>
    </OperationStatus>
  </RequestStatusResults>
</Response>

Delete multiple – mixed results

For completeness, here is a mixed-result batch Delete. First the “batch received” state:

<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1325936513626005875</Token>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>1</CurrentSize>
    <TotalMatches>1</TotalMatches>
    <BatchStatus>
      <Code>1</Code>
      <Type>batch received</Type>
    </BatchStatus>
  </RequestStatusResults>
</Response>

And now we get the OperationTokens once the batch is queued:

<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1325936513626005875</Token>
    <PageNumber>1</PageNumber>
    <PageSize>1000</PageSize>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>3</CurrentSize>
    <TotalMatches>3</TotalMatches>
    <BatchStatus>
      <Code>2</Code>
      <Type>batch queued</Type>
    </BatchStatus>
    <OperationStatus>
      <Token>1325936514160005876</Token>
      <Status>
        <Code>2</Code>
        <Type>pending</Type>
      </Status>
    </OperationStatus>
    <OperationStatus>
      <Token>1325936514160005877</Token>
      <Status>
        <Code>2</Code>
        <Type>pending</Type>
      </Status>
    </OperationStatus>
    <OperationStatus>
      <Token>1325936514160005878</Token>
      <Status>
        <Code>4</Code>
        <Type>validation error</Type>
        <Details>ID must be an identifier of a valid asset</Details>
      </Status>
    </OperationStatus>
  </RequestStatusResults>
</Response>

Here are all the individual tokens pending:

<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1325936514160005876</Token>
    <PageNumber>1</PageNumber>
    <PageSize>1000</PageSize>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>1</CurrentSize>
    <TotalMatches>1</TotalMatches>
    <OperationStatus>
      <Token>1325936514160005876</Token>
      <Status>
        <Code>2</Code>
        <Type>pending</Type>
      </Status>
    </OperationStatus>
  </RequestStatusResults>
</Response>
<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1325936514160005877</Token>
    <PageNumber>1</PageNumber>
    <PageSize>1000</PageSize>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>1</CurrentSize>
    <TotalMatches>1</TotalMatches>
    <OperationStatus>
      <Token>1325936514160005877</Token>
      <Status>
        <Code>2</Code>
        <Type>pending</Type>
      </Status>
    </OperationStatus>
  </RequestStatusResults>
</Response>
<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1325936514160005878</Token>
    <PageNumber>1</PageNumber>
    <PageSize>1000</PageSize>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>1</CurrentSize>
    <TotalMatches>1</TotalMatches>
    <OperationStatus>
      <Token>1325936514160005878</Token>
      <Status>
        <Code>4</Code>
        <Type>validation error</Type>
        <Details>ID must be an identifier of a valid asset</Details>
      </Status>
    </OperationStatus>
  </RequestStatusResults>
</Response>

Here is the batch when they are all in a final state:

<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1325936513626005875</Token>
    <PageNumber>1</PageNumber>
    <PageSize>100</PageSize>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>3</CurrentSize>
    <TotalMatches>3</TotalMatches>
    <BatchStatus>
      <Code>2</Code>
      <Type>batch queued</Type>
    </BatchStatus>
    <OperationStatus>
      <Token>1325936514160005876</Token>
      <Status>
        <Code>0</Code>
        <Type>success</Type>
      </Status>
    </OperationStatus>
    <OperationStatus>
      <Token>1325936514160005877</Token>
      <Status>
        <Code>0</Code>
        <Type>success</Type>
      </Status>
    </OperationStatus>
    <OperationStatus>
      <Token>1325936514160005878</Token>
      <Status>
        <Code>4</Code>
        <Type>validation error</Type>
        <Details>ID must be an identifier of a valid asset</Details>
      </Status>
    </OperationStatus>
  </RequestStatusResults>
</Response>

Here is more detail in the two successful OperationTokens:

<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1325936514160005876</Token>
    <PageNumber>1</PageNumber>
    <PageSize>100</PageSize>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>1</CurrentSize>
    <TotalMatches>1</TotalMatches>
    <OperationStatus>
      <Token>1325936514160005876</Token>
      <Status>
        <Code>0</Code>
        <Type>success</Type>
      </Status>
      <ID>10.5240/FA9C-CEEA-9DF0-0A43-DDE5-Q</ID>
    </OperationStatus>
  </RequestStatusResults>
</Response>
<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1325936514160005877</Token>
    <PageNumber>1</PageNumber>
    <PageSize>100</PageSize>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>1</CurrentSize>
    <TotalMatches>1</TotalMatches>
    <OperationStatus>
      <Token>1325936514160005877</Token>
      <Status>
        <Code>0</Code>
        <Type>success</Type>
      </Status>
      <ID>10.5240/B943-CC50-E7FC-372B-4B96-5</ID>
    </OperationStatus>
  </RequestStatusResults>
</Response>

But the OperationToken that had a validation error returns no extra information (which makes it differ slightly from a failed registration, which does provide more information.)

<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1325936514160005878</Token>
    <PageNumber>1</PageNumber>
    <PageSize>100</PageSize>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>1</CurrentSize>
    <TotalMatches>1</TotalMatches>
    <OperationStatus>
      <Token>1325936514160005878</Token>
      <Status>
        <Code>4</Code>
        <Type>validation error</Type>
        <Details>ID must be an identifier of a valid asset</Details>
      </Status>
    </OperationStatus>
  </RequestStatusResults>
</Response>

Promote single – failure

A successful Promote is just like the successful things that have been seen above. Below is an example of the result of an immediate promote of an In Development record that is an exact duplicate of something that already exists as a Valid item. The Response is the same as you would expect from an attempted Registration of the item.

<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1329315951605006516</Token>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>1</CurrentSize>
    <TotalMatches>1</TotalMatches>
    <OperationStatus>
      <Token>1329315951605006516</Token>
      <Status>
        <Code>1</Code>
        <Type>duplicate</Type>
      </Status>
      <ID>10.5240/D6CF-E235-D294-B584-4957-G</ID>
      <Duplicate score="100" lowThreshold="55" highThreshold="85">
        <ID>10.5240/D6CF-E235-D294-B584-4957-G</ID>
      </Duplicate>
    </OperationStatus>
  </RequestStatusResults>
</Response>

Promote multiple – two different kinds of failure

Here is a batch with two items to Promote. One is an “in development” record that should not be promoted because it is identical to an already existing valid item and one is an item that is already “valid”. The first one is pending at the first Response and the second is marked as a “validation error”.

<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1326042087121005921</Token>
    <PageNumber>1</PageNumber>
    <PageSize>1000</PageSize>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>2</CurrentSize>
    <TotalMatches>2</TotalMatches>
    <BatchStatus>
      <Code>2</Code>
      <Type>batch queued</Type>
    </BatchStatus>
    <OperationStatus>
      <Token>1326042087598005922</Token>
      <Status>
        <Code>2</Code>
        <Type>pending</Type>
      </Status>
    </OperationStatus>
    <OperationStatus>
      <Token>1326042087598005923</Token>
      <Status>
        <Code>4</Code>
        <Type>validation error</Type>
        <Details>Status must be "in development"</Details>
      </Status>
    </OperationStatus>
  </RequestStatusResults>
</Response>

Eventually the pending one ends up in the “duplicate” final state:

<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1326042087598005922</Token>
    <PageNumber>1</PageNumber>
    <PageSize>100</PageSize>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>1</CurrentSize>
    <TotalMatches>1</TotalMatches>
    <OperationStatus>
      <Token>1326042087598005922</Token>
      <Status>
        <Code>1</Code>
        <Type>duplicate</Type>
      </Status>
      <ID>10.5240/D6CF-E235-D294-B584-4957-G</ID>
      <Duplicate score="100" lowThreshold="55" highThreshold="85">
        <ID>10.5240/D6CF-E235-D294-B584-4957-G</ID>
      </Duplicate>
    </OperationStatus>
  </RequestStatusResults>
</Response>

After which StatusLookup on the BatchToken gives:

<Response xmlns="http://www.eidr.org/schema/" version="2.0">
  <Status>
    <Code>0</Code>
    <Type>success</Type>
  </Status>
  <RequestStatus>
    <Token>1326042087121005921</Token>
    <PageNumber>1</PageNumber>
    <PageSize>100</PageSize>
  </RequestStatus>
  <RequestStatusResults>
    <CurrentSize>2</CurrentSize>
    <TotalMatches>2</TotalMatches>
    <BatchStatus>
      <Code>2</Code>
      <Type>batch queued</Type>
    </BatchStatus>
    <OperationStatus>
      <Token>1326042087598005922</Token>
      <Status>
        <Code>1</Code>
        <Type>duplicate</Type>
      </Status>
    </OperationStatus>
    <OperationStatus>
      <Token>1326042087598005923</Token>
      <Status>
        <Code>4</Code>
        <Type>validation error</Type>
        <Details>Status must be "in development"</Details>
      </Status>
    </OperationStatus>
  </RequestStatusResults>
</Response>
Updated on April 11, 2021

Was this article helpful?

Related Articles