Find an API

Search public APIs with auth details & Postman guides

← All APIs

Deal API

ebay · Commerce

Commerce No Auth Free & Open ecommerce

Note: This is a (Limited Release) API available only to select developers approved by business units. This API allows third-party developers to search for and retrieve details about eBay deals and events, as well as the items as

Authentication

No authentication requiredFree to use with no key needed.

Sample Requests

GET getDealItems

This method retrieves a paginated set of deal items. The result set contains all deal items associated with the specified search criteria and marketplace ID. Request headers This method uses the X-EBAY-C-ENDUSERCTX request header to support revenue sharing for eBay Partner Networks and to improve th

https://api.apis.guru/v2/specs/ebay.com/buy-deal/v1.3.0/deal_item?limit=10&offset=0&category_ids=example&commissionable=example&delivery_country=example

Hover any highlighted part to learn what it does

Headers — extra info sent with the request
X-EBAY-C-MARKETPLACE-ID example
curl -X GET "https://api.apis.guru/v2/specs/ebay.com/buy-deal/v1.3.0/deal_item?limit=10&offset=0&category_ids=example&commissionable=example&delivery_country=example" \
  -H "X-EBAY-C-MARKETPLACE-ID: example"
import requests
params = {
    "limit": "10",
    "offset": "0",
    "category_ids": "example",
    "commissionable": "example",
    "delivery_country": "example"
}
headers = {
    "X-EBAY-C-MARKETPLACE-ID": "example"
}
response = requests.get(
    "https://api.apis.guru/v2/specs/ebay.com/buy-deal/v1.3.0/deal_item",
    params=params,
    headers=headers,
)
print(response.json())
const url = new URL('https://api.apis.guru/v2/specs/ebay.com/buy-deal/v1.3.0/deal_item');
url.searchParams.set('limit', '10');
url.searchParams.set('offset', '0');
url.searchParams.set('category_ids', 'example');
url.searchParams.set('commissionable', 'example');
url.searchParams.set('delivery_country', 'example');

const response = await fetch(url, {
  headers: {
    'X-EBAY-C-MARKETPLACE-ID': 'example'
  },
}); 
const data = await response.json();
console.log(data);
package main

import (
	"fmt"
	"io"
	"net/http"
	"net/url"
)

func main() {
	baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/ebay.com/buy-deal/v1.3.0/deal_item")
	q := baseURL.Query()
	q.Set("limit", "10")
	q.Set("offset", "0")
	q.Set("category_ids", "example")
	q.Set("commissionable", "example")
	q.Set("delivery_country", "example")
	baseURL.RawQuery = q.Encode()
	targetURL := baseURL.String()
	req, _ := http.NewRequest("GET", targetURL, nil)
	req.Header.Set("X-EBAY-C-MARKETPLACE-ID", "example")

	client := &http.Client{}
	resp, _ := client.Do(req)
	defer resp.Body.Close()
	body, _ := io.ReadAll(resp.Body)
	fmt.Println(string(body))
}
require "net/http"
require "json"

uri = URI("https://api.apis.guru/v2/specs/ebay.com/buy-deal/v1.3.0/deal_item")
uri.query = URI.encode_www_form({
  "limit" => "10",
  "offset" => "0",
  "category_ids" => "example",
  "commissionable" => "example",
  "delivery_country" => "example"
})

http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"

req = Net::HTTP::Get.new(uri)
req["X-EBAY-C-MARKETPLACE-ID"] = "example"

res = http.request(req)
puts JSON.parse(res.body)
<?php
$url = "https://api.apis.guru/v2/specs/ebay.com/buy-deal/v1.3.0/deal_item?" . http_build_query([
    "limit" => "10",
    "offset" => "0",
    "category_ids" => "example",
    "commissionable" => "example",
    "delivery_country" => "example"
]);
$opts = ["http" => [
    "method" => "GET",
    "header" => implode("\r\n", [
        "X-EBAY-C-MARKETPLACE-ID: example"
    ]),
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));
GET getEvents

This method returns paginated results containing all eBay events for the specified marketplace. Request headers This method uses the X-EBAY-C-ENDUSERCTX request header to support revenue sharing for eBay Partner Networks and to improve the accuracy of shipping and delivery time estimations. For deta

https://api.apis.guru/v2/specs/ebay.com/buy-deal/v1.3.0/event?limit=10&offset=0

Hover any highlighted part to learn what it does

Headers — extra info sent with the request
X-EBAY-C-MARKETPLACE-ID example
curl -X GET "https://api.apis.guru/v2/specs/ebay.com/buy-deal/v1.3.0/event?limit=10&offset=0" \
  -H "X-EBAY-C-MARKETPLACE-ID: example"
import requests
params = {
    "limit": "10",
    "offset": "0"
}
headers = {
    "X-EBAY-C-MARKETPLACE-ID": "example"
}
response = requests.get(
    "https://api.apis.guru/v2/specs/ebay.com/buy-deal/v1.3.0/event",
    params=params,
    headers=headers,
)
print(response.json())
const url = new URL('https://api.apis.guru/v2/specs/ebay.com/buy-deal/v1.3.0/event');
url.searchParams.set('limit', '10');
url.searchParams.set('offset', '0');

const response = await fetch(url, {
  headers: {
    'X-EBAY-C-MARKETPLACE-ID': 'example'
  },
}); 
const data = await response.json();
console.log(data);
package main

import (
	"fmt"
	"io"
	"net/http"
	"net/url"
)

func main() {
	baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/ebay.com/buy-deal/v1.3.0/event")
	q := baseURL.Query()
	q.Set("limit", "10")
	q.Set("offset", "0")
	baseURL.RawQuery = q.Encode()
	targetURL := baseURL.String()
	req, _ := http.NewRequest("GET", targetURL, nil)
	req.Header.Set("X-EBAY-C-MARKETPLACE-ID", "example")

	client := &http.Client{}
	resp, _ := client.Do(req)
	defer resp.Body.Close()
	body, _ := io.ReadAll(resp.Body)
	fmt.Println(string(body))
}
require "net/http"
require "json"

uri = URI("https://api.apis.guru/v2/specs/ebay.com/buy-deal/v1.3.0/event")
uri.query = URI.encode_www_form({
  "limit" => "10",
  "offset" => "0"
})

http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"

req = Net::HTTP::Get.new(uri)
req["X-EBAY-C-MARKETPLACE-ID"] = "example"

res = http.request(req)
puts JSON.parse(res.body)
<?php
$url = "https://api.apis.guru/v2/specs/ebay.com/buy-deal/v1.3.0/event?" . http_build_query([
    "limit" => "10",
    "offset" => "0"
]);
$opts = ["http" => [
    "method" => "GET",
    "header" => implode("\r\n", [
        "X-EBAY-C-MARKETPLACE-ID: example"
    ]),
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));
GET getEventItems

This method returns a paginated set of event items. The result set contains all event items associated with the specified search criteria and marketplace ID. Request headers This method uses the X-EBAY-C-ENDUSERCTX request header to support revenue sharing for eBay Partner Networks and to improve th

https://api.apis.guru/v2/specs/ebay.com/buy-deal/v1.3.0/event_item?limit=10&offset=0&event_ids=example&category_ids=example&delivery_country=example

Hover any highlighted part to learn what it does

Headers — extra info sent with the request
X-EBAY-C-MARKETPLACE-ID example
curl -X GET "https://api.apis.guru/v2/specs/ebay.com/buy-deal/v1.3.0/event_item?limit=10&offset=0&event_ids=example&category_ids=example&delivery_country=example" \
  -H "X-EBAY-C-MARKETPLACE-ID: example"
import requests
params = {
    "limit": "10",
    "offset": "0",
    "event_ids": "example",
    "category_ids": "example",
    "delivery_country": "example"
}
headers = {
    "X-EBAY-C-MARKETPLACE-ID": "example"
}
response = requests.get(
    "https://api.apis.guru/v2/specs/ebay.com/buy-deal/v1.3.0/event_item",
    params=params,
    headers=headers,
)
print(response.json())
const url = new URL('https://api.apis.guru/v2/specs/ebay.com/buy-deal/v1.3.0/event_item');
url.searchParams.set('limit', '10');
url.searchParams.set('offset', '0');
url.searchParams.set('event_ids', 'example');
url.searchParams.set('category_ids', 'example');
url.searchParams.set('delivery_country', 'example');

const response = await fetch(url, {
  headers: {
    'X-EBAY-C-MARKETPLACE-ID': 'example'
  },
}); 
const data = await response.json();
console.log(data);
package main

import (
	"fmt"
	"io"
	"net/http"
	"net/url"
)

func main() {
	baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/ebay.com/buy-deal/v1.3.0/event_item")
	q := baseURL.Query()
	q.Set("limit", "10")
	q.Set("offset", "0")
	q.Set("event_ids", "example")
	q.Set("category_ids", "example")
	q.Set("delivery_country", "example")
	baseURL.RawQuery = q.Encode()
	targetURL := baseURL.String()
	req, _ := http.NewRequest("GET", targetURL, nil)
	req.Header.Set("X-EBAY-C-MARKETPLACE-ID", "example")

	client := &http.Client{}
	resp, _ := client.Do(req)
	defer resp.Body.Close()
	body, _ := io.ReadAll(resp.Body)
	fmt.Println(string(body))
}
require "net/http"
require "json"

uri = URI("https://api.apis.guru/v2/specs/ebay.com/buy-deal/v1.3.0/event_item")
uri.query = URI.encode_www_form({
  "limit" => "10",
  "offset" => "0",
  "event_ids" => "example",
  "category_ids" => "example",
  "delivery_country" => "example"
})

http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"

req = Net::HTTP::Get.new(uri)
req["X-EBAY-C-MARKETPLACE-ID"] = "example"

res = http.request(req)
puts JSON.parse(res.body)
<?php
$url = "https://api.apis.guru/v2/specs/ebay.com/buy-deal/v1.3.0/event_item?" . http_build_query([
    "limit" => "10",
    "offset" => "0",
    "event_ids" => "example",
    "category_ids" => "example",
    "delivery_country" => "example"
]);
$opts = ["http" => [
    "method" => "GET",
    "header" => implode("\r\n", [
        "X-EBAY-C-MARKETPLACE-ID: example"
    ]),
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));

Postman Setup Guide

Get Postman ↗
  1. See official documentation for authentication and setup.

What can you build with Deal API?

Deal API is a Commerce API. Developers commonly use commerce APIs for:

  • syncing product catalogues and inventory levels
  • building price comparison and deal-finder tools
  • processing orders and tracking shipments
  • managing customer wishlists and reviews
  • automating abandoned-cart and promotional emails

No authentication required. This API is open — no signup or key needed. Ideal for quick prototypes and public-facing features. Deal API is free to use, making it a low-risk choice to experiment with.

New to APIs? Read our beginner's guide · Learn about API keys · What is REST?

Open documentation ↗