Search code examples
pythonebay-api

Ebay API findItemsAdvanced Unable to create xml stream


Hi I just can't figure out what is wrong.

If I use itemFilter with two values (0,1) everything is ok but if I uncomment(3,4 and ++) I get response with 5006 error from server. Problem is not with values I changed them still same.

ebay_parameters = {
    "OPERATION-NAME":"findItemsAdvanced",
    #"SERVICE-VERSION":"1.13.0",
    "SECURITY-APPNAME":ebay_appID,
    "RESPONSE-DATA-FORMAT":"JSON",
    "keywords":keywords,
    "itemFilter(0).name":"Seller",
    "itemFilter(0).value(0)":"william_sales",
    "itemFilter(0).value(1)":"d$dparts",
    "itemFilter(0).value(2)":"motodocparts",
    "itemFilter(0).value(3)":"suncoastcyclesports",
    "itemFilter(0).value(4)":"salvagedcycleparts",
    "itemFilter(0).value(5)":"bnr_cycles",
    "itemFilter(0).value(6)":"az_cycle_parts_phx",
    "itemFilter(0).value(7)":"rubbersideupllc"
}

r = requests.get("http://svcs.ebay.com/services/search/FindingService/v1", params=payload).json()

Response error:

GET /services/search/FindingService/v1?SECURITY-APPNAME=XXXX-XXXX-PRD-XXXX-6dac998d&RESPONSE-DATA-FORMAT=JSON&OPERATION-NAME=findItemsAdvanced&itemFilter%280%29.value%282%29=motodocparts&itemFilter%280%29.value%283%29=suncoastcyclesports&keywords=14+636+gauge&itemFilter%280%29.name=Seller&keywords=14+636+rear+shock HTTP/1.1

Response success:

GET /services/search/FindingService/v1?SECURITY-APPNAME=XXXX-XXXX-PRD-XXXX-6dac998d&RESPONSE-DATA-FORMAT=JSON&OPERATION-NAME=findItemsAdvanced&keywords=14+636+gauge&itemFilter%280%29.name=Seller&itemFilter%280%29.value%280%29=william_sales&itemFilter%280%29.value%281%29=d%24dparts HTTP/1.1

Response: enter image description here

One thing I notice that sequence in url is diferent but I don't thin that can be a problem. Any Idea?


Solution

  • Using list of tuples solved the problem.