Merry
Merry

Reputation: 55

eBay API GeteBayDetails request returns 'no password and no token' error

I am trying to make a GeteBayDetails request to the Trading API so that I can find the acceptable values fields in an bulk AddFixedPriceItem call using the lms. I am doing a HTTP Post request using curl.

So I am sending the request to the following URL

https://api.sandbox.ebay.com/ws/api.dll

Headers that I am using are :

X-EBAY-API-COMPATIBILITY-LEVEL: 800
X-EBAY-API-SITEID: 3
X-EBAY-API-DEV-NAME: dev_key_here
X-EBAY-API-APP-NAME: App_key_here
X-EBAY-API-CERT-NAME: Cert_name_here
X-EBAY-API-CALL-NAME: GeteBayDetails
X-EBAY-API-DETAIL-LEVEL: 0

Request body

<?xml version="1.0" encoding="utf-8"?>
<GeteBayDetailsRequest xmlns="urn:ebay:apis:eBLBaseComponents">
<RequestToken>My_Sandbox_user_token</RequestToken>
<RequestPassword>my_sandbox_user_password</RequestPassword>
<DetailName>ShippingServiceDetails</DetailName></GeteBayDetailsRequest>

Response

<?xml version="1.0" encoding="UTF-8"?>
<GeteBayDetailsResponse xmlns="urn:ebay:apis:eBLBaseComponents">
<Timestamp>2014-02-14T14:15:50.792Z</Timestamp>
<Ack>Failure</Ack>
<Errors><ShortMessage>No password and no token.</ShortMessage>
<LongMessage>No XML &lt;RequestPassword&gt; or &lt;RequestToken&gt; was found in XML Request.</LongMessage>
<ErrorCode>930</ErrorCode>
<SeverityCode>Error</SeverityCode>
<ErrorClassification>RequestError</ErrorClassification>
</Errors>
<Version>855</Version>
<Build>E855_INTL_API_16631620_R1</Build>
</GeteBayDetailsResponse>

I dont understand why its asking for a RequestPassword and RequestToken. I added these into the body, but the API seems to ignore them.

Also API's documentation doesn't seem to suggest that I need to use them and I'm not asking for user specific details. Anyone know what's going on? Any suggestions are welcome.

Thank you

Upvotes: 4

Views: 3298

Answers (2)

Ticdoc
Ticdoc

Reputation: 268

I believe you can also omit the

<RequesterCredentials>
<eBayAuthToken> Your token here </eBayAuthToken>
</RequesterCredentials>

from the body/content of the request and instead put

"X-EBAY-API-IAF-TOKEN": "Y0uRAcCe$$T0k3n"

in the request header.

Upvotes: 1

Meep3D
Meep3D

Reputation: 3756

You want to enclose your sandbox token in eBayAuthToken tags within the RequesterCredentials XML tags. So like this

<RequesterCredentials>
<eBayAuthToken> Your token here </eBayAuthToken>
</RequesterCredentials>

That should fix your problem. Make sure you remove the authorisation tags you have that are not working

Upvotes: 8

Related Questions