/isthereanydeal/bundles
curl --request POST \
--url https://api.anysite.io/api/isthereanydeal/bundles \
--header 'Content-Type: application/json' \
--header 'access-token: <api-key>' \
--data '
{
"count": 2,
"timeout": 300,
"tab": "live",
"keyword": "<string>",
"sort": "featured",
"country": "US",
"currency": "USD",
"show_mature": false
}
'import requests
url = "https://api.anysite.io/api/isthereanydeal/bundles"
payload = {
"count": 2,
"timeout": 300,
"tab": "live",
"keyword": "<string>",
"sort": "featured",
"country": "US",
"currency": "USD",
"show_mature": False
}
headers = {
"access-token": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'access-token': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
count: 2,
timeout: 300,
tab: 'live',
keyword: '<string>',
sort: 'featured',
country: 'US',
currency: 'USD',
show_mature: false
})
};
fetch('https://api.anysite.io/api/isthereanydeal/bundles', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.anysite.io/api/isthereanydeal/bundles",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'count' => 2,
'timeout' => 300,
'tab' => 'live',
'keyword' => '<string>',
'sort' => 'featured',
'country' => 'US',
'currency' => 'USD',
'show_mature' => false
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"access-token: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.anysite.io/api/isthereanydeal/bundles"
payload := strings.NewReader("{\n \"count\": 2,\n \"timeout\": 300,\n \"tab\": \"live\",\n \"keyword\": \"<string>\",\n \"sort\": \"featured\",\n \"country\": \"US\",\n \"currency\": \"USD\",\n \"show_mature\": false\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("access-token", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.anysite.io/api/isthereanydeal/bundles")
.header("access-token", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"count\": 2,\n \"timeout\": 300,\n \"tab\": \"live\",\n \"keyword\": \"<string>\",\n \"sort\": \"featured\",\n \"country\": \"US\",\n \"currency\": \"USD\",\n \"show_mature\": false\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.anysite.io/api/isthereanydeal/bundles")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["access-token"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"count\": 2,\n \"timeout\": 300,\n \"tab\": \"live\",\n \"keyword\": \"<string>\",\n \"sort\": \"featured\",\n \"country\": \"US\",\n \"currency\": \"USD\",\n \"show_mature\": false\n}"
response = http.request(request)
puts response.read_body[
{
"id": 123,
"@type": "ItadBundle",
"bundle_title": "<string>",
"shop": "<string>",
"shop_id": 123,
"url": "<string>",
"is_mature": false,
"is_pending": false,
"is_byob": false,
"start_at": 123,
"expiry_at": 123,
"game_count": 123,
"media_count": 123,
"waitlist_count": 123,
"collection_count": 123,
"comment_count": 123,
"tiers": []
}
]{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}/isthereanydeal
/isthereanydeal/bundles
List game bundles aggregated by IsThereAnyDeal across stores (Humble, Fanatical, IndieGala and more): live, expired or pending bundles with their store, URL, start and expiry, game and media counts, and price tiers listing the included games.
Price: 10 credits per 30 results
POST
/
api
/
isthereanydeal
/
bundles
/isthereanydeal/bundles
curl --request POST \
--url https://api.anysite.io/api/isthereanydeal/bundles \
--header 'Content-Type: application/json' \
--header 'access-token: <api-key>' \
--data '
{
"count": 2,
"timeout": 300,
"tab": "live",
"keyword": "<string>",
"sort": "featured",
"country": "US",
"currency": "USD",
"show_mature": false
}
'import requests
url = "https://api.anysite.io/api/isthereanydeal/bundles"
payload = {
"count": 2,
"timeout": 300,
"tab": "live",
"keyword": "<string>",
"sort": "featured",
"country": "US",
"currency": "USD",
"show_mature": False
}
headers = {
"access-token": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'access-token': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
count: 2,
timeout: 300,
tab: 'live',
keyword: '<string>',
sort: 'featured',
country: 'US',
currency: 'USD',
show_mature: false
})
};
fetch('https://api.anysite.io/api/isthereanydeal/bundles', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.anysite.io/api/isthereanydeal/bundles",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'count' => 2,
'timeout' => 300,
'tab' => 'live',
'keyword' => '<string>',
'sort' => 'featured',
'country' => 'US',
'currency' => 'USD',
'show_mature' => false
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"access-token: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.anysite.io/api/isthereanydeal/bundles"
payload := strings.NewReader("{\n \"count\": 2,\n \"timeout\": 300,\n \"tab\": \"live\",\n \"keyword\": \"<string>\",\n \"sort\": \"featured\",\n \"country\": \"US\",\n \"currency\": \"USD\",\n \"show_mature\": false\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("access-token", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.anysite.io/api/isthereanydeal/bundles")
.header("access-token", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"count\": 2,\n \"timeout\": 300,\n \"tab\": \"live\",\n \"keyword\": \"<string>\",\n \"sort\": \"featured\",\n \"country\": \"US\",\n \"currency\": \"USD\",\n \"show_mature\": false\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.anysite.io/api/isthereanydeal/bundles")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["access-token"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"count\": 2,\n \"timeout\": 300,\n \"tab\": \"live\",\n \"keyword\": \"<string>\",\n \"sort\": \"featured\",\n \"country\": \"US\",\n \"currency\": \"USD\",\n \"show_mature\": false\n}"
response = http.request(request)
puts response.read_body[
{
"id": 123,
"@type": "ItadBundle",
"bundle_title": "<string>",
"shop": "<string>",
"shop_id": 123,
"url": "<string>",
"is_mature": false,
"is_pending": false,
"is_byob": false,
"start_at": 123,
"expiry_at": 123,
"game_count": 123,
"media_count": 123,
"waitlist_count": 123,
"collection_count": 123,
"comment_count": 123,
"tiers": []
}
]{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Authorizations
API token from the dashboard
Headers
Body
application/json
Required range:
x >= 1Required range:
20 <= x <= 1500Available options:
live, expired, pending Available options:
featured, -expiry, -update Available options:
AD, AE, AF, AG, AI, AL, AM, AO, AR, AT, AU, AW, AZ, BA, BB, BD, BE, BF, BG, BH, BI, BJ, BM, BN, BO, BR, BS, BT, BW, BY, BZ, CA, CD, CG, CH, CI, CL, CM, CN, CO, CR, CV, CY, CZ, DE, DJ, DK, DM, DO, DZ, EC, EE, EG, ER, ES, ET, FI, FJ, FR, GA, GB, GD, GE, GH, GM, GN, GR, GT, GW, GY, HK, HN, HR, HT, HU, ID, IE, IL, IN, IQ, IS, IT, JM, JO, JP, KE, KG, KH, KM, KN, KR, KW, KY, KZ, LA, LB, LC, LI, LK, LR, LS, LT, LU, LV, LY, MA, MC, MD, ME, MG, MK, ML, MM, MN, MO, MR, MT, MU, MV, MW, MX, MY, MZ, NA, NE, NG, NI, NL, NO, NP, NZ, OM, PA, PE, PG, PH, PK, PL, PT, PY, QA, RO, RS, RU, RW, SA, SB, SC, SD, SE, SG, SI, SK, SL, SN, SR, ST, SV, SZ, TC, TD, TG, TH, TJ, TL, TM, TN, TO, TR, TT, TW, TZ, UA, UG, US, UY, UZ, VC, VE, VN, VU, WS, YE, ZA, ZM, ZW Available options:
AED, ARS, AUD, BGN, BRL, CAD, CHF, CLP, CNY, COP, CRC, CZK, DKK, EUR, GBP, HKD, HUF, IDR, ILS, INR, JPY, KRW, KWD, KZT, MXN, MYR, NOK, NZD, PEN, PHP, PLN, QAR, RON, RUB, SAR, SEK, SGD, THB, TRY, TWD, UAH, USD, UYU, VND, ZAR Response
Successful Response
Show child attributes
Show child attributes