RU

Тема

Цвет акцента

Тема и цвет сохранятся на satelit.md и в приложении.

Панель Выбрать тариф

Цены в магазинах

Откуда эти данные, прямо

Магазины

GET/v1/prices/stores

Магазины в API с числом товаров и датой последнего считывания.

Кредиты
1
С ключом

Параметры

Без параметров.

Возможные ошибки

Попробовать

curl "https://api.satelit.md/v1/prices/stores" \
  -H "Authorization: Bearer $SATELIT_KEY"
const res = await fetch("https://api.satelit.md/v1/prices/stores", {
  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/prices/stores",
    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/prices/stores");
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": [
    {
      "key": "george",
      "name": "George Standard",
      "domain": "ggg.md",
      "kind": "grocery",
      "products": 96,
      "updated_at": "2026-11-03"
    },
    {
      "key": "kaufland",
      "name": "Kaufland",
      "domain": "kaufland.md",
      "kind": "grocery",
      "products": 27,
      "updated_at": "2026-11-03"
    }
  ],
  "meta": {
    "credits": 1,
    "updated_at": "2026-11-02T13:05:00+02:00",
    "sources": [
      {
        "name": "George Standard",
        "license": "none: read from the shop's public pages; no agreement with the shop and no licence over its data is granted"
      },
      {
        "name": "Kaufland",
        "license": "none: read from the shop's public pages; no agreement with the shop and no licence over its data is granted"
      }
    ],
    "attribution": "Date: Satelit (satelit.md)"
  }
}

Группы товаров

GET/v1/prices/groups

Общие товары каталога, такие как молоко или хлеб, с самой низкой ценой и медианой.

Кредиты
2
С ключом

Параметры

  • categorystringнеобязательный

    Ключ категории, из /v1/news/categories.

Возможные ошибки

Попробовать

curl "https://api.satelit.md/v1/prices/groups" \
  -H "Authorization: Bearer $SATELIT_KEY"
const res = await fetch("https://api.satelit.md/v1/prices/groups", {
  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/prices/groups",
    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/prices/groups");
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": "crupe",
      "name": "Griș, arpacaș și alte crupe",
      "unit": "kg",
      "min_price": 5.95,
      "median_price": 12.24,
      "unit_min_price": 6.61,
      "price_unit": "kg",
      "stores": 6
    }
  ],
  "meta": {
    "credits": 2,
    "updated_at": "2026-11-02T13:05:00+02:00",
    "sources": [
      {
        "name": "Kaufland",
        "license": "none: read from the shop's public pages; no agreement with the shop and no licence over its data is granted"
      },
      {
        "name": "Carmez",
        "license": "none: read from the shop's public pages; no agreement with the shop and no licence over its data is granted"
      },
      {
        "name": "MegaAlina",
        "license": "none: read from the shop's public pages; no agreement with the shop and no licence over its data is granted"
      },
      {
        "name": "PandaShop",
        "license": "none: read from the shop's public pages; no agreement with the shop and no licence over its data is granted"
      }
    ],
    "attribution": "Date: Satelit (satelit.md)"
  }
}

Группа с предложениями

GET/v1/prices/groups/{id}

Группа и не более 50 предложений, самое дешёвое первым.

Кредиты
3
С ключом

Параметры

  • idstringобязательный

    Идентификатор строки.

Возможные ошибки

Попробовать

curl "https://api.satelit.md/v1/prices/groups/crupe" \
  -H "Authorization: Bearer $SATELIT_KEY"
const res = await fetch("https://api.satelit.md/v1/prices/groups/crupe", {
  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/prices/groups/crupe",
    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/prices/groups/crupe");
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": "crupe",
    "name": "Griș, arpacaș și alte crupe",
    "unit": "kg",
    "min_price": 5.95,
    "median_price": 12.24,
    "unit_min_price": 6.61,
    "price_unit": "kg",
    "stores": 6,
    "offers": [
      {
        "store": {
          "key": "kaufland",
          "name": "Kaufland"
        },
        "title": "De la bunica Arpacaș de grâu 900 g",
        "price": 5.95,
        "old_price": 6.75,
        "discount_pct": 12,
        "unit_price": 6.61,
        "unit": "kg",
        "in_stock": true,
        "url": "https://www.kaufland.md/ro/cautare.html?q=20680825",
        "last_seen": "2026-11-03T00:31:34+02:00"
      },
      {
        "store": {
          "key": "george",
          "name": "George Standard"
        },
        "title": "QUINOA biologica GAROFALO 5303, 300g",
        "price": 59,
        "old_price": null,
        "discount_pct": null,
        "unit_price": 196.67,
        "unit": "kg",
        "in_stock": true,
        "url": "https://ggg.md/ro/shop/quinoa-biologica-garofalo-5303-300g",
        "last_seen": "2026-11-03T00:35:05+02:00"
      }
    ]
  },
  "meta": {
    "credits": 3,
    "updated_at": "2026-11-02T13:05:00+02:00",
    "sources": [
      {
        "name": "Kaufland",
        "license": "none: read from the shop's public pages; no agreement with the shop and no licence over its data is granted"
      },
      {
        "name": "George Standard",
        "license": "none: read from the shop's public pages; no agreement with the shop and no licence over its data is granted"
      }
    ],
    "attribution": "Date: Satelit (satelit.md)"
  }
}

Товар с предложениями

GET/v1/prices/items/{id}

Один конкретный товар и его предложения в каждом магазине.

Кредиты
2
С ключом

Параметры

  • idintegerобязательный

    Идентификатор строки.

Возможные ошибки

Попробовать

curl "https://api.satelit.md/v1/prices/items/18342" \
  -H "Authorization: Bearer $SATELIT_KEY"
const res = await fetch("https://api.satelit.md/v1/prices/items/18342", {
  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/prices/items/18342",
    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/prices/items/18342");
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": 18342,
    "slug": "bunica-arpacas-de-grau-900g",
    "name": "bunica Arpacaș de grâu 900 g",
    "brand": "Arpacaș",
    "capacity": "900 g",
    "category": "groceries",
    "min_price": 5.95,
    "median_price": 5.95,
    "unit_min_price": 6.61,
    "price_unit": "kg",
    "stores": 1,
    "in_stock_stores": 1,
    "updated_at": "2026-11-03T00:31:34+02:00",
    "offers": [
      {
        "store": {
          "key": "kaufland",
          "name": "Kaufland"
        },
        "title": "De la bunica Arpacaș de grâu 900 g",
        "price": 5.95,
        "old_price": 6.75,
        "discount_pct": 12,
        "unit_price": 6.61,
        "unit": "kg",
        "in_stock": true,
        "url": "https://www.kaufland.md/ro/cautare.html?q=20680825",
        "last_seen": "2026-11-03T00:31:34+02:00"
      }
    ]
  },
  "meta": {
    "credits": 2,
    "updated_at": "2026-11-02T13:05:00+02:00",
    "sources": [
      {
        "name": "Kaufland",
        "license": "none: read from the shop's public pages; no agreement with the shop and no licence over its data is granted"
      }
    ],
    "attribution": "Date: Satelit (satelit.md)"
  }
}

История товара

GET/v1/prices/items/{id}/history

Цены по дням и по магазинам. Стоит 5 кредитов за каждые начатые 30 дней.

Кредиты
5 за каждые начатые 30 дн.
С ключом

Параметры

  • idintegerобязательный

    Идентификатор строки.

  • daysintegerнеобязательныйпо умолчанию 30

    Сколько дней назад. Обрезается по лимиту плана.

  • storestringнеобязательный

    Ключ магазина, из /v1/prices/stores.

Возможные ошибки

Попробовать

curl "https://api.satelit.md/v1/prices/items/18342/history?days=30" \
  -H "Authorization: Bearer $SATELIT_KEY"
const res = await fetch("https://api.satelit.md/v1/prices/items/18342/history?days=30", {
  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/prices/items/18342/history?days=30",
    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/prices/items/18342/history?days=30");
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": {
    "points": [
      {
        "date": "2026-11-02",
        "store": "kaufland",
        "price": 5.95,
        "old_price": null,
        "unit_price": 6.61,
        "in_stock": true
      },
      {
        "date": "2026-11-03",
        "store": "kaufland",
        "price": 5.95,
        "old_price": null,
        "unit_price": 6.61,
        "in_stock": true
      }
    ]
  },
  "meta": {
    "credits": 5,
    "updated_at": "2026-11-02T13:05:00+02:00",
    "sources": [
      {
        "name": "kaufland",
        "license": "none: read from the shop's public pages; no agreement with the shop and no licence over its data is granted"
      }
    ],
    "attribution": "Date: Satelit (satelit.md)"
  }
}