Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

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

Tags:

php

curl

ebay-api

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

like image 891
Merry Avatar asked Sep 06 '25 19:09

Merry


2 Answers

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

like image 110
Meep3D Avatar answered Sep 08 '25 12:09

Meep3D


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.

like image 24
Ticdoc Avatar answered Sep 08 '25 12:09

Ticdoc