Az új programozói interfész (rest API) működése

A rest API json formátumban adja vissza a kért objektumokat. BluePrint dokumentációja az alábbi linken vagy az apiary.io oldalán érhető el markdown szintaxisban. Az apiary.io oldalon egyelőre nem publikus, kérd a supportot a hozzáférés biztosításához, vagy töltsd le az alábbi linkről:

Rest API doksi

Az API a https://listamester.hu/restApi/pub root alatt érhető el.

Autentikáció

Az autentikáció az "Authorization" nevű http request header segítségével történik. Értéke két paraméterből tevődik össze, kettőspont (":") karakterrel elválasztva: a fiók felhasználójának ID-ja (ez egy decimális numerikus érték), és az api kulcs értékből (ez egy speciális karaktereket nem tartalmazó alfanumerikus karakterkeből álló string). Az api kulcs a beállítások - API menüpontban bármikor módosítható ill. inaktiválható. Ugyanitt látható a fiókhoz tartozó user ID is.

Parancssorból is hívható az api a curl segítségével az alábbi módon:

curl -H "Authorization: apikey $UID:$APIKEY" https://listamester.hu/restApi/pub/Emails

Tehát egy konkrét példa valahogy így néz ki:

curl -H "Authorization: apikey 12342:aFmvpV13qqYuUDCX" https://listamester.hu/restApi/pub/Emails

Egyéb fontos tudnivalók

DoS támadás elleni védelem

A ListaMester szerverét túlterheléses támadás elleni modul védi, ami bizonyos esetekben akadályozhatja az API kliensek munkáját. Ha sok API hívást szeretnél hívni, akkor ügyelj arra, hogy a másodpercenkénti kérések száma 1 IP címről max. néhány legyen (<10), mert ennél magasabb hívásgyakoriság mellett bekapcsolhat a védőmodul és 403-as hibakóddal blokkolhatja a hívásokat.

Érdemes tehát kerülni pl. a tagok egyenkénti felvételét ciklusba írva, szünet nélkül futtatva, és helyette az import funkciót használni. Ha szükséges, IP alapú fehérlistára tudjuk tenni a klienseket. Ha ezt szeretnéd, keresd a supportot.

Spam botok elleni védelem

A /restApi/pub/SubscribeToGroup/{groupId} végpont alapbeállítások szerint tartalmaz egy szűrést. Ez a beállítások - API menüpontban kikapcsolható, de alaphelyzetben bekapcsolt, hogy szűrje a captcha nélküli űrlapokból API segítségével bejövő jelentkezőket.

A ListaMester feliratkozási motorjában egy heurisztikus spam szűrő van, hogy a honlapokba ágyazott űrlapokról tájékozódó spam botoknak valamennyire ellenálljon. Ez a szűrő ellenőrzi a feliratkozó (azaz új tag) nevét, és ha valami nagyon nem névszerű dolgot lát ott, akkor nem fogadja el a feliratkozást. Például nem szereti a szűrő, ha sok mássalhangzó van egymás mellett, meg sok idegen karakter (x,y,w...) van a névben.

A spam szűrő úgy is kikapcsolható, ha csoporton be van állítva a captcha szűrés. A csoport szerkesztésénél az űrlapoknál lehet captchát beállítani. Ez csoport szintű kapcsoló, tehát minden űrlapra érvényes a hatása. Továbbá ha a csoporton captcha szűrés van, akkor az API sem futtatja a heurisztikus szűrést, és nem várja el, hogy captcha rejtvényt oldjon meg az API kliens, azaz nem kér be captcha adatokat.