Přeskočit obsah
P
API pro partnery
Napojení vlastní aplikace — přístup, autentizace a endpointy
Reference endpointů / Inzerce

Bazaar — inzerce#

Každý zdroj nabízí standardní sadu akcí

get, get-by, get-all, save, update-columns, delete, delete-all — není-li u něj uvedeno jinak. Podrobně CRUD vzor.

Zdroje#

Zdroj Poznámka
advert inzerát — vlastník, událost
advert-follower sledování
advert-report nahlášení
advert-statistics statistiky zhlédnutí
category kategorie — strom, veřejné
parameter parametr — strom, veřejné
parameter-group skupina parametrů
parameter-rule pravidlo zobrazení
category-parameter-rel cílení parametru na kategorii
response odpověď na inzerát — vlastník, příjemce, událost
watchdog hlídací pes — vlastník, událost
tariff tarif
payment-item platební položka

🔴 Inzerát nemá pevná pole#

Název, popis a cena jsou parametry, ne sloupce

Zápis inzerátu tedy neposílá data[name], ale hodnoty parametrů. Které parametry kategorie vyžaduje, zjistíte z category-parameter-rel.

Vyhrazené klíče parametrů: name, price, email, regionId.

Kategorie a parametry jsou stromy#

Obojí. Volby výběrového parametru jsou jeho potomci.

delete-node smaže celý podstrom

U parametru včetně všech jeho voleb — a s nimi hodnoty ve všech inzerátech.

Viditelnost inzerátu#

Inzerát je aktivní, jen když je schválený, zaplacený a není blokovaný, smazaný, deaktivovaný ani prodaný.

Příznak aktivity se nedá zapsat

Je počítaný z uvedených šesti. Zápis se zamítne.

Co vrací čtení#

Externí volající bez administrátorské role dostane z advert (get, get-by, get-all, search) jen inzeráty, které web zobrazuje: aktivní a neprošlé (expirationDate je dnes nebo později) — a navíc vlastní inzeráty přihlášeného uživatele (insertUserId = uživatel z tokenu), i neaktivní nebo prošlé. Z category dostane jen aktivní kategorie.

Volající Co vidí
host (jen klíč aplikace) aktivní a neprošlé inzeráty, aktivní kategorie
přihlášený uživatel totéž + své vlastní inzeráty v jakémkoli stavu
administrátor (role admin) vše, bez filtru

Skrytý inzerát zmizí beze stopy

Ve výpisu chybí i se svými vazbami (parametry, kategorie, obrázky, soubory, texty) a get skrytého inzerátu vypadá stejně jako neexistující záznam. Stránka výpisu proto může mít méně záznamů než limit a totalCount je jen horní odhad — odečte jen skryté záznamy z vrácené stránky.

Odpověď na inzerát#

Zdroj response rozlišuje dvě strany:

Strana Role Co smí
odesílatel odpovědi owner upravit a smazat vlastní odpověď
majitel inzerátu owner i receiver upravit a smazat odpověď na svůj inzerát; get přečte detail; označí ji za přečtenou (read)
držitel hesla k inzerátu receiver totéž jako majitel, bez přihlášení
administrátor admin vše

Odpověď má v databázi pole readKey — náhodný tajný klíč, který web vkládá do odkazu Označit jako přečtené v e-mailu. Nastavuje ho server při založení a zvenčí se nezapisuje.

readKey přes HTTP nedostanete

Klíč zná jen web uvnitř serveru. V odpovědi API ho nenajde nikdo — ani příjemce, ani administrátor s tokenem.

Označení přes klíč má jen vnitřní cestu

Akce mark-read-by-key slouží webu a nemá HTTP obal. Z externího klienta označíte odpověď jen jako přihlášený příjemce, zápisem sloupce read.

Cena a měna odpovědi (price, currencyId): měna je povinná jen s cenou a smí být jen veřejná peněžní měna; měna bez ceny se zahodí. Chybný zápis vrací success: false, code: 2, viz Změny API. Totéž platí pro odpovědi katalogu firem.

Na prodaný inzerát odpověď neprojde: code: 607, data.errorCode: advertSold. Odpověď s e-mailem, telefonem nebo IP adresou na blacklistu vrací code: 615, data.errorCode: blacklisted.

Zápis inzerátu#

Neprivilegovaného volajícího (host, přihlášený uživatel, vlastník) API kontroluje stejně jako formulář webu. Odmítnutí vrací success: false, HTTP 200 a v data.errorCode důvod — viz Chybové kódy.

Kontrola code errorCode
hodnota parametru delší než jeho limit 2 parameterTooLong
odkaz v parametru, který odkazy zakazuje 2 parameterUrlNotAllowed
aktivní zakázané slovo v jazyce stránky požadavku 2 parameterBlacklistedWord
chybí povinný parametr podle pravidel parametrů 2 parameterRequired
volba výběrového parametru, kterou formulář při ostatních hodnotách nenabízí 2 parameterOptionNotAllowed
kategorie je vypnutá (i přes vypnutého rodiče) nebo jen pro administrátora 615 advertCategoryNotAllowed
e-mail nebo IP adresa nového inzerátu je na blacklistu 615 blacklisted

Povinnost řídí pravidla parametrů

Povinný parametr může být povinný jen za podmínky — např. cena a měna jen u některého typu ceny. Pravidla čtěte z parameter-rule. Povinnost se kontroluje při vložení nového inzerátu; nahrávání souborů a skrytá pole se nekontrolují.

Obrázky nad limit velikosti#

Nový obrázek větší než limit se neuloží, zbytek zápisu projde. Odpověď je úspěšná a v saveInfo.rejectedUploads uvádí odmítnuté soubory s důvodem size:

{"success":true,"code":0,"message":"","data":{…},"saveInfo":{"rejectedUploads":[{"name":"foto.jpg","reason":"size"}]}}

Limit: max_size parametru pro nahrání obrázků, jinak nastavení webu maxImageSize, jinak 50 MB.

Prodloužení platnosti#

Akce extend-expiration (advertId) v placené kategorii neprivilegovanému volajícímu neprojde: code: 607, data: null. Prodloužení v placené kategorii se platí na webu. Administrátor prodlužuje zdarma.

Hlídací pes#

Vyžaduje kategorii i region. Spouští se jen při vložení nového inzerátu.

Cena#

Ceny v různých měnách se nepřepočítávají

Řazení podle ceny míchá měny. Chcete-li srovnatelné výsledky, filtrujte podle měny.

Nastavení cookies