ebay-sdk

eBay SDK with promise / stream interface

Usage no npm install needed!

<script type="module">
  import ebaySdk from 'https://cdn.skypack.dev/ebay-sdk';
</script>

README

Build Status

eBay SDK

API Support

  • Finding (Full)
  • Shopping (Full)

Usage:

var config = {devKey: xxxxxxx};
var ebay = require('ebay-sdk')(config);
var query = {keywords: 'iphone'};

ebay
  .findCompletedItems(query) // eBay operation

  // Promise
  .then(function(result) { /* Do Something */ });

  // Stream
  .pipe(stream);

Setup:

require('ebay-sdk')({config})

The configuration object takes in the following parameters:

  • devKey (required): ebay developer key

  • serviceVersion (optional): takes in object with api service name as key and service number as value

  • responseFormat (optional): xml or json

Call:

ebay.[api]({query})

Returns a Request object

  • api: All the supported api under the services that are supported, reference ebay api doc for exact names

  • query: api arguments in key / value pairs

var query = {

  keywords: 'iphone',

  itemFilter: [
    {name: 'Condition', value: ['New', 'Like New']} // Multiple values
    {name: 'ExcludeCategory', value: '132112112'}
  ]

}

Request:

Object returned from call. It contains the promise / stream interface to interact with results along with other methods to manipulate the request.

Note: The request is not made until it has been consumed by one of the following methods.

then

request.then([result handler])

Promise interface to interact with data

Pipe

request.pipe([stream])

Stream interface to interact with data

getAllPages

request.getAllPages([consume]).then([result handler])

Fetches all pages (up to 100) from query.

consume <boolean>: When set to false, will return an array of raw request objects.

getAllEntries

request.getAllEntries([consume]).then([result handler])

Fetches all entries from query. Any query that are bigger than the ebay return limit will be split into multiple queries with smaller time ranges.

consume <boolean>: When set to false, will return an array of raw request objects.