Tour packages
Offers
GET/v1/tours
Tour packages, with filters. 3 credits per 50 rows. Stops at page 5.
Parameters
-
countrystringoptionalThe country, in Romanian: Turcia, Egipt.
-
fromstringoptionalDeparture from this date.
-
tostringoptionalDeparture until this date.
-
nights_minintegeroptionalAt least this many nights.
-
nights_maxintegeroptionalAt most this many nights.
-
boardstringoptionalBoard: AI, BB and others.
-
agencystringoptionalThe agency's name.
-
sortstring: price, dateoptionaldefault priceprice or date.
-
pageintegeroptionaldefault 1The page, from 1 to 5.
Possible errors
curl "https://api.satelit.md/v1/tours?country=Bulgaria&sort=price" \
-H "Authorization: Bearer $SATELIT_KEY" const res = await fetch("https://api.satelit.md/v1/tours?country=Bulgaria&sort=price", {
headers: { Authorization: `Bearer ${process.env.SATELIT_KEY}` },
});
const { data, meta } = await res.json();
console.log(data, meta.credits); import json, os, urllib.request
req = urllib.request.Request(
"https://api.satelit.md/v1/tours?country=Bulgaria&sort=price",
headers={"Authorization": f"Bearer {os.environ['SATELIT_KEY']}"},
)
with urllib.request.urlopen(req) as res:
body = json.load(res)
print(body["data"], body["meta"]["credits"]) <?php
$ch = curl_init("https://api.satelit.md/v1/tours?country=Bulgaria&sort=price");
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ["Authorization: Bearer " . getenv("SATELIT_KEY")],
]);
$body = json_decode(curl_exec($ch), true);
curl_close($ch);
print_r($body["data"]); {
"data": [
{
"id": 1226,
"agency": "Admiral Travel",
"title": "Olymp",
"country": "Bulgaria",
"resort": "Bansko",
"hotel": "Olymp",
"stars": 3,
"board": "BB",
"room": "DBL Standard",
"nights": 5,
"date_from": "2026-11-08",
"adults": 2,
"price": 143,
"currency": "EUR",
"price_mdl": 2885.17,
"price_per": "person",
"price_pp_mdl": 2885.17,
"departure": null,
"transport": "none",
"url": "https://admiral.travel/ro/countries/bulgaria/bansko/olymp----?item_id=677",
"hot": false,
"last_seen": "2026-11-03T07:35:08+02:00"
}
],
"meta": {
"credits": 3,
"updated_at": "2026-11-02T13:05:00+02:00",
"sources": [
{
"name": "Admiral Travel",
"license": "none: read from the source's public pages; no agreement with the source and no licence over its data is granted"
}
],
"attribution": "Date: Satelit (satelit.md)",
"page": {
"page": 1,
"per": 50,
"total": 10943,
"pages": 219
}
}
}Countries
GET/v1/tours/countries
Countries, with the number of offers and agencies and the lowest price.
Parameters
No parameters.
Possible errors
curl "https://api.satelit.md/v1/tours/countries" \
-H "Authorization: Bearer $SATELIT_KEY" const res = await fetch("https://api.satelit.md/v1/tours/countries", {
headers: { Authorization: `Bearer ${process.env.SATELIT_KEY}` },
});
const { data, meta } = await res.json();
console.log(data, meta.credits); import json, os, urllib.request
req = urllib.request.Request(
"https://api.satelit.md/v1/tours/countries",
headers={"Authorization": f"Bearer {os.environ['SATELIT_KEY']}"},
)
with urllib.request.urlopen(req) as res:
body = json.load(res)
print(body["data"], body["meta"]["credits"]) <?php
$ch = curl_init("https://api.satelit.md/v1/tours/countries");
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ["Authorization: Bearer " . getenv("SATELIT_KEY")],
]);
$body = json_decode(curl_exec($ch), true);
curl_close($ch);
print_r($body["data"]); {
"data": [
{
"country": "Egipt",
"offers": 4672,
"min_price_mdl": 8332.69,
"min_price_pp_mdl": 4771.62,
"agencies": 5
},
{
"country": "Turcia",
"offers": 1026,
"min_price_mdl": 5669.46,
"min_price_pp_mdl": 5669.46,
"agencies": 5
}
],
"meta": {
"credits": 1,
"updated_at": "2026-11-02T13:05:00+02:00",
"sources": [
{
"name": "travel agencies",
"license": "none: read from the source's public pages; no agreement with the source and no licence over its data is granted"
}
],
"attribution": "Date: Satelit (satelit.md)"
}
}One offer
GET/v1/tours/{id}
The offer and its price history.
Parameters
-
idintegerrequiredThe row identifier.
Possible errors
curl "https://api.satelit.md/v1/tours/1226" \
-H "Authorization: Bearer $SATELIT_KEY" const res = await fetch("https://api.satelit.md/v1/tours/1226", {
headers: { Authorization: `Bearer ${process.env.SATELIT_KEY}` },
});
const { data, meta } = await res.json();
console.log(data, meta.credits); import json, os, urllib.request
req = urllib.request.Request(
"https://api.satelit.md/v1/tours/1226",
headers={"Authorization": f"Bearer {os.environ['SATELIT_KEY']}"},
)
with urllib.request.urlopen(req) as res:
body = json.load(res)
print(body["data"], body["meta"]["credits"]) <?php
$ch = curl_init("https://api.satelit.md/v1/tours/1226");
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ["Authorization: Bearer " . getenv("SATELIT_KEY")],
]);
$body = json_decode(curl_exec($ch), true);
curl_close($ch);
print_r($body["data"]); {
"data": {
"id": 1226,
"agency": "Admiral Travel",
"title": "Olymp",
"country": "Bulgaria",
"resort": "Bansko",
"hotel": "Olymp",
"stars": 3,
"board": "BB",
"room": "DBL Standard",
"nights": 5,
"date_from": "2026-11-08",
"adults": 2,
"price": 143,
"currency": "EUR",
"price_mdl": 2885.17,
"price_per": "person",
"price_pp_mdl": 2885.17,
"departure": null,
"transport": "none",
"url": "https://admiral.travel/ro/countries/bulgaria/bansko/olymp----?item_id=677",
"hot": false,
"last_seen": "2026-11-03T07:35:08+02:00",
"history": [
{
"date": "2026-10-30",
"price": 143,
"currency": "EUR",
"price_mdl": 2885.17
}
]
},
"meta": {
"credits": 2,
"updated_at": "2026-11-02T13:05:00+02:00",
"sources": [
{
"name": "Admiral Travel",
"license": "none: read from the source's public pages; no agreement with the source and no licence over its data is granted"
}
],
"attribution": "Date: Satelit (satelit.md)"
}
}