Shoptet API 2026: praktický průvodce s příklady kódu a limity (REST + Webhooks)
Krátká odpověď: Shoptet API je REST rozhraní s OAuth 2 autentizací, dostupné od tarifu Profi výš. Umožňuje plnou synchronizaci produktů, objednávek, skladu a zákazníků. Limity: ~600 requestů/min, doporučujeme batch operace a webhook namísto pollingu.
Co Shoptet API umí (a co ne)
Shoptet API pokrývá většinu domén potřebných pro automatizaci a integraci s ERP, CRM, marketingovými nástroji a třetími stranami:
- Produkty – CRUD, varianty, kategorie, ceny, dostupnost, obrázky
- Sklad – aktuální stavy, pohyby, rezervace
- Objednávky – vytváření, čtení, změna stavu, faktury
- Zákazníci – CRUD, skupiny, věrnostní body
- Webhooks – push notifikace pro klíčové události (nová objednávka, změna stavu)
- Marketing – výběr produktů na základě filtrů, slevy
Co API neumí: přímý přístup k databázi, custom SQL queries, manipulaci se šablonou nebo s designem.
Jak získat API klíč
- Přihlaste se do administrace Shoptetu
- Jděte na Nastavení → Doplňky → API
- Klikněte na „Vytvořit nový API klíč"
- Vyberte oprávnění (read/write pro každou doménu zvlášť) – princip nejmenšího privilegia
- Zkopírujte si klíč – už ho podruhé neuvidíte
Tip: Pro každou integraci vytvořte samostatný klíč. Když integrace skončí nebo dojde k úniku, snadno klíč zneškodníte bez dopadu na ostatní.
Příklad v Pythonu: stáhnout všechny produkty
Minimalistický příklad pomocí requests:
import requests
API_KEY = "vas-shoptet-api-klic"
BASE_URL = "https://api.myshoptet.com/api"
headers = {
"Shoptet-Access-Token": API_KEY,
"Content-Type": "application/json",
}
# Stahnout prvni stranku produktu
response = requests.get(
f"{BASE_URL}/products",
headers=headers,
params={"itemsPerPage": 100, "page": 1},
)
response.raise_for_status()
data = response.json()
for product in data["data"]["products"]:
print(product["code"], "-", product["name"])
Pokročilejší: vytvořit objednávku
order_payload = {
"data": {
"billingAddress": {
"fullName": "Jan Novák",
"email": "[email protected]",
"phone": "+420777123456",
"street": "Vodičkova 1",
"city": "Praha",
"zip": "11000",
"country": "CZ",
},
"items": [
{"code": "PRODUKT-001", "amount": 2},
],
"paymentMethod": "comgate",
"shippingMethod": "zasilkovna",
}
}
resp = requests.post(
f"{BASE_URL}/orders",
headers=headers,
json=order_payload,
)
resp.raise_for_status()
print("Order:", resp.json()["data"]["code"])
Limity API a co s nimi
| Limit | Hodnota (orientačně) | Co s tím |
|---|---|---|
| Requests/min | ~600 | Batch + cache |
| Items per page | max 100 | Paginate cez page |
| Concurrent connections | ~5 | Synchronní zpracování |
| Webhook timeout | 30 s | Asynchronně (queue) |
Pravidlo: nikdy neprovozujte poll loop kratší než 60 s. Místo toho použijte webhooks pro událostmi řízené operace (nová objednávka, změna stavu).
Use cases v praxi
1. Synchronizace skladu z ERP
Většinou cron job 1× za 5–15 minut čte ERP a updatuje Shoptet skladové stavy. Pozor: rezervace v Shoptetu (v košíku) nesmíte přepsat. Použijte rozdílovou synchronizaci.
2. Automatický export objednávek
Webhook order.create trigger → API call → ERP. Typický scénář pro Pohodu, Money S5 nebo ABRA.
3. Batch update produktů
Pokud měníte ceny u 1000+ produktů, použijte PATCH /products/bulk místo 1000 jednotlivých requestů.
4. Marketing automation
Načtení produktů s nízkou marží/skladem → reklamní kampaň. Přes API to jde živě, ne jen z exportu.
📊 Co říkají reálná data o použití API
Z 347 analyzovaných eshopů vidíme, že 40 Premium eshopů má v průměru 10,2 doplňků – mnohé z nich (Ecomail, Leadhub, Foxentry, Luigi's Box) komunikují právě přes API. Eshopy s aktivně používaným API mají v průměru o 50 % víc napojených marketingových nástrojů než eshopy bez integrací.
Časté chyby při práci se Shoptet API
- Polling místo webhook – zbytečné requesty, dosáhnete limitu
- Neúplné chybové stavy – API vrací 4xx/5xx s detaily, ale mnoho integrací je ignoruje
- Synchronizace bez dedup – pokud ERP a Shoptet posílají oba update, vznikne duplicita
- Hardcoded URL – pro Shoptet Premium může být URL trochu jiná
- Obejití rate limitu retryem – exponenciální backoff je nutnost
Časté otázky
Je Shoptet API zdarma?
API je dostupné od tarifu Profi výš. Free a Basic mají buď omezené nebo žádné API. Detailní limity najdete v developers.shoptet.com.
Jaký formát API používá – REST nebo GraphQL?
REST s JSON payloadem. Žádný GraphQL.
Existuje Shoptet API SDK pro Python/PHP?
Oficiální SDK Shoptet neudržuje. Komunitních knihoven je víc – pro Python jsou na PyPI, pro PHP na Packagistu. Standard-library HTTP klient stačí pro většinu use case.
Jak se autentizuje?
Header Shoptet-Access-Token s vaším API klíčem. OAuth 2 flow je dostupný pro veřejné aplikace v marketplace.
Co když potřebuji integraci, ale nemám vývojáře?
iPaaS služby (Make, Zapier, n8n) umí Shoptet jako konektor. Pro běžné scénáře (sklad, objednávky, e-mail marketing) stačí.
Závěr
Shoptet API je solidní REST rozhraní s rozumnými limity. Pro typickou ERP integraci nebo automatizaci marketingu funguje bez problémů. Pokud řešíte něco speciálního (B2B logika, dynamic pricing), vyzkoušejte si limity v sandbox prostředí dřív, než začnete platit Premium tarif jen kvůli vyšším API limitům.
Analyzovat eshop a zjistit, jaká API integrace tam běží →
Související články
Zjistěte, jak si váš e-shop stojí
AI analýza SEO, doplňků a technologií vašeho Shoptet e-shopu. Zdarma, bez registrace.
Analyzovat e-shop →