Reenio: Napojení a nastavení
Po návštěvě rezervované přes Reenio zařadí hosta do kampaně s žádostí o recenzi.
STAV: ověření na živém účtu probíhá
Připojení
Vyžaduje tarif Reenio PREMIUM. V Nastavení → API vytvořte klíč, doporučujeme pouze pro čtení.
V Reputive otevřete Nastavení → Integrace → Reenio. Zadejte API klíč, vyberte pobočku a potvrďte oprávnění k použití kontaktů. Klikněte na Připojit Reenio.
Potvrzuji, že mohu kontakty hostů použít pro žádosti o recenzi e-mailem a SMS. Respektuji jejich odhlášení a pravidla zasílání.
Nastavení webhooku
- V Reenio vytvořte vlastní zprávu typu webhook. Zadejte URL a vlastní hlavičku x-reputive-secret s hodnotou zobrazenou po připojení.
- Pokud označujete dokončené návštěvy, zvolte „Změna stavu rezervace na: PROBĚHLA“. Jinak zvolte „Konec rezervovaného termínu (ignoruje se, pokud existuje novější rezervace zákazníka)“.
- Uložte webhook. Reenio ověří adresu prázdným požadavkem. Poté ověřte zkušební návštěvu.
Tyto údaje se zobrazují pouze nyní. Uložte je do Reenio před zavřením. Opětovné připojení vytvoří nové údaje.
Zpracování návštěv
Zrušené, neuskutečněné návštěvy, nedostavení se a náhradníci se neimportují. Anonymizovaní hosté a hosté bez e-mailu i telefonu se přeskočí. Opakované události stejné rezervace nevytvoří další zařazení.
Přijímáme události 1, 2 a 13. Stav 4 znamená dokončenou návštěvu i s budoucím časem end. Stavy 0, 1 a vlastní stavy 100–199 přijímáme pouze pro události 1 a 13 a s časem end v minulosti; událost 2 vyžaduje stav 4. Nečitelný end nebo end starší než 14 dní se přeskočí bez zařazení (200 REENIO).
Data a odpojení
Reputive čte rezervaci a kontakt hosta přes API. Do Reenio nic nezapisuje. API klíč je uložen šifrovaně. Platí stávající pravidla kampaní, odhlášení a další omezení odesílání. U Reenio se odhlášení nebo zákaz kontaktování stejného telefonu ve stejné firmě respektuje i po přidání e-mailu; nevznikne nové zařazení obcházející odhlášení.
Spustí se všechny povolené kroky kampaně včetně SMS. Host pouze s telefonem může dostat SMS žádost. API Reenio neposkytuje příznak souhlasu se SMS; konektor se spoléhá na potvrzení vlastníka. To není důkaz souhlasu hosta z API ani posouzení právní dostatečnosti.
V Nastavení → Integrace → Reenio klikněte na Odpojit. Nové návštěvy se neimportují. Webhook můžete odstranit i v Reenio.
Technické informace pro Reenio
Reenio pošle událost rezervace. Reputive ověří připojení, načte rezervaci a kontakt a zařadí hosta do kampaně vybrané pobočky. Reenio nemusí nic vyvíjet; používají se stávající API a vlastní zprávy. Před odesláním znovu načteme rezervaci a zákazníka. Stavy 2, 3, 5, 6, náhradník nebo anonymizovaný zákazník zprávu zruší. Limit stáří end se při odesílání nepoužívá. Přechodná chyba kontrolu odloží na další běh fronty, zpráva se neodešle.
Chybu kontroly před odesláním opakujeme nejdříve za hodinu. Při neúspěšné kontrole nejméně 72 hodin od první chyby zprávu zrušíme; úspěšná kontrola tuto lhůtu resetuje. Chybějící rezervace nebo zákazník (404) zprávu rovnou zruší. Neplatný klíč (401/403) označí připojení ke kontrole a zprávu odloží. Chyba jednoho připojení neblokuje ostatní. V jednom běhu kontrolujeme nejvýše 30 zpráv na připojení; další odložíme o 5 minut. Zprávy pozastaveného připojení odkládáme o hodinu bez časového limitu pro zrušení. Poslední kontrola před SMS čte pouze stav připojení z naší databáze a používá právě získaný výsledek kontroly návštěvy.
API: https://api.reenio.cz/cs/api/v1/admin/, Authorization: Bearer API_KEY. Při připojení: GET /auth/checkaccess (stav odpovědi) a GET /user/info (user.id, subject.id). Při návštěvě: GET /reservation/ID (detail.id, state, end, isAlternate, customer.id) a GET /customer/ID (detail.id, isAnonymized, firstName, lastName, email, phoneNumber). Do Reenio se nezapisuje.
POST https://app.reputive.cz/api/webhooks/reenio/TOKEN; JSON s triggerType a reservationId, hlavička x-reputive-secret. Podporované typy událostí: 1, 2, 13. Přesně prázdný JSON objekt na známé URL slouží jen k ověření a nepotřebuje tajnou hlavičku. Jakékoli neprázdné tělo vyžaduje platnou hlavičku; neznámý token je odmítnut. Tělo se nejprve načte s limitem 16 KiB. Prázdné ověření podléhá IP limitu před databázovým čtením; u neprázdného těla následuje ověření identity a až poté limit podle tokenu. Chybná autentizace čerpá IP limit, nikoli rozpočet připojení. Ověření a chybné požadavky ze společné IP stále sdílejí limit a neprázdné požadavky vyžadují databázové čtení před omezením.
Přijaté, ověřovací a záměrně přeskočené požadavky: HTTP 200, text/plain, tělo přesně REENIO. Chybná autentizace: 401; neplatný JSON: 400; tělo nad 16 KiB: 413; limit příjmu: 429; přechodná chyba: 503. API čtení mají společný limit 4 sekund.
Přechodné chyby vyžadují opakování od Reenio. Podle dodané specifikace Reenio opakuje nejméně třikrát, naposledy nejdříve 12 hodin od prvního pokusu; na živém účtu to dosud není ověřeno. Limit zpracování je 90 pokusů za pevné minutové okno na připojení, nejvýše dvě API čtení na pokus. Opakování stejné rezervace nevytváří další zařazení; zpracování se umí obnovit po přerušení. Nejde o neomezenou garanci doručení.
Ukládáme šifrovaný API klíč, identitu připojeného účtu a pobočky, hashe webhookových údajů, stav zpracování a ID rezervace, jméno, e-mail a telefon hosta. Neplatný e-mail se vynechá; platný telefon zůstává použitelný. Odpojení odstraní API klíč a zastaví nový import. Zákazníky nemaže; čekající zprávy tohoto připojení se zruší při kontrole před odesláním.