pythonebay-apiebay-sdk

How to search for products by UPC using python bindings for Ebay's findItemsByProduct API?


I'm trying to find products by UPC using EBay's Product Find Items by Product ID, specifically using the Python bindings.

I'm trying:

    api = Connection(
        appid='my id', config_file=None)

    response = api.execute('findItemsByProduct', {
        'productId': 820103794923,
        'itemFilter': [
            {'name': 'MinQuantity', 'value': 1},

But I get:

{'ack': 'Failure', 'errorMessage': {'error': {'errorId': '4', 'domain': 'Marketplace', 'severity': 'Error', 'category': 'Request', 'message': 'Product ID is required.', 'subdomain': 'Search'}}, 'version': '1.13.0', 'timestamp': datetime.datetime(2020, 3, 24, 21, 46, 52)}

Whats the correct argument?


Solution

  • api = Connection(config_file=yaml_path)
    response = api.execute('findItemsByProduct', 
                       '<productId type="ReferenceID">820103794923</productId><itemFilter><name>MinQuantity</name><value>1</value></itemFilter>')
    response.reply
    

    {'ack': 'Success', 'version': '1.13.0', 'timestamp': datetime.datetime(2020, 3, 26, 10, 13, 10), 'searchResult': {'_count': '0'}, 'paginationOutput': {'pageNumber': '0', 'entriesPerPage': '100', 'totalPages': '0', 'totalEntries': '0'}, 'itemSearchURL': 'https://www.ebay.com/sch/?_samilow=1&_LH_MIL=1&_ddo=1&_ipg=100&_pgn=1&_productid=820103794923'}