Skip to main content
Published: April 18 2012, 8:15:00 PMUpdated: August 25 2022, 10:09:57 AM

 Question

 Why I am getting this error in GetUser call?

<?xml version="1.0" encoding="UTF-8"?>
<GetUserResponse 
  xmlns="urn:ebay:apis:eBLBaseComponents">
  <Timestamp>2022-08-25T17:03:29.682Z</Timestamp>
  <Ack>Failure</Ack>
  <Errors>
    <ShortMessage>No ItemId exists.</ShortMessage>
    <LongMessage>ItemId required for this Detail Level. Transactional relationship must exist between requesting and subject user.</LongMessage>
    <ErrorCode>17420</ErrorCode>
    <SeverityCode>Error</SeverityCode>
    <ErrorParameters ParamID="0">
      <Value>0</Value>
    </ErrorParameters>
    <ErrorClassification>RequestError</ErrorClassification>
  </Errors>
  <Version>1207</Version>
  <Build>E1207_CORE_APISIGNIN_19151597_R1</Build>
</GetUserResponse>

 Answer

 Detailed Description

 This error can occur when you set DetailLevel to ReturnAll  AND passed an UserID that is not the requesting user identified by the user Auth token in GetUser call as below:

  <?xml version="1.0" encoding="utf-8"?>
  <GetUserRequest xmlns="urn:ebay:apis:eBLBaseComponents">
    <Version>1207</Version>
    <RequesterCredentials>
      <eBayAuthToken>YOUR USER AUTH TOKEN</eBayAuthToken>
    </RequesterCredentials>
    <DetailLevel>ReturnAll</DetailLevel>
    <UserID>USERID for the OTHER EBAY USER</UserID>
</GetUserRequest>

 You can fix the request error by removing the  <DetailLevel>ReturnAll</DetailLevel> from the request.

 For GetUser API,   you can only use ReturnAll detail level in either of the cases below:

     1. The requester identified by the user token is retrieving his/her own data

     2. The requester has transaction relationship with the user specified  in the UserID for the listing, the ItemID is also passed into the ItemID field, in which the requestor and target user were participants.

How well did this answer your question?
Answers others found helpful