Skip to main content
Published: January 17 2007, 1:57:00 PMUpdated: August 05 2022, 5:26:11 AM

Question: I have the following XML Schema request:

<?xml version="1.0" encoding="utf-8"?>
<GeteBayOfficialTimeRequest xmlns="urn:ebay:apis:eBLBaseComponents">
<Version>967</Version>
<RequesterCredentials>
<eBayAuthToken>XXXX</eBayAuthToken>
</RequesterCredentials>
</GeteBayOfficialTimeRequest>

The request is correct, so why I am still getting this error?
 

<?xml version="1.0" encoding="UTF-8" ?>
<GeteBayOfficialTimesResponse 
  xmlns="urn:ebay:apis:eBLBaseComponents">
  <Timestamp>2022-08-05 12:19:12</Timestamp>
  <Ack>Failure</Ack>
  <Errors>
    <ShortMessage>Unsupported API call.</ShortMessage>
    <LongMessage>The API call "GeteBayOfficialTimes" is invalid or not supported in this release.</LongMessage>
    <ErrorCode>2</ErrorCode>
    <SeverityCode>Error</SeverityCode>
    <ErrorClassification>RequestError</ErrorClassification>
  </Errors>
  <Version>967</Version>
  <Build>19110890</Build>
</GeteBayOfficialTimesResponse>


Summary

Answer: Apart from ensuring that the body of the request is correct, you need to ensure that the headers are also set correctly.  One common gotcha is that in the header you need to specify the name of the call minus the "Request" phrase.  For example, to get the eBay official time, you need to set the header to "GeteBayOfficialTime" and in the request body, the root element needs to be GeteBayOfficialTimeRequest.  If you set the header to GeteBayOfficialTimeRequest, you will get the Unsupported API call.
 

 


 

Detailed Description

You need to set the following information in your request header:
  • Content-Type
  • Version
  • DevID
  • AppID
  • CertID
  • CallName
  • SiteID

Here is an example of setting the Headers for GeteBayOfficialTime using Javascript:

xmlHttpReq = new XMLHttpRequest();
xmlHttpReq.setRequestHeader('Content-Type','text/xml');
xmlHttpReq.setRequestHeader('X-EBAY-API-COMPATIBILITY-LEVEL','967');
xmlHttpReq.setRequestHeader('X-EBAY-API-DEV-NAME','devid');
.xmlHttpReq.setRequestHeader('X-EBAY-API-APP-NAME','appid');
xmlHttpReq.setRequestHeader('X-EBAY-API-CERT-NAME','certid');
xmlHttpReq.setRequestHeader('X-EBAY-API-CALL-NAME','GeteBayOfficialTime');
xmlHttpReq.setRequestHeader('X-EBAY-API-SITEID','0');
 


Version Info

The code example above was based on the versions specified below:

API Schema Version967

 

 

 

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

Got thoughts? Click the feedback button – your insights help us improve!