Přeskočit na hlavní obsah

Odhlašování uživatelů v REST API

Jak odhlásit uživatele přes REST API

Autor: Petr Pech

Po úspěšném přihlášení uživatele do ABRA Flexi vzniká autentizační sezení. Po výběru firmy si systém navíc ke každému uživateli zakládá kontextové informace o připojení k dané firmě — základní měnu, nastavení firmy nebo oprávnění uživatele. Případná změna těchto údajů ovlivní jen nové přihlášení, takže dlouhodobě přihlášený uživatel by o ní nevěděl. Řešením je vynutit ukončení jeho sezení.


Volání služby

POST https://demo.flexibee.eu/status/user/{přihlašovací jméno}/logout

⚠️ Stejná metoda se používá i pro webové rozhraní. V případě API proto požadujte formát JSON nebo XML — zabráníte tím finálnímu přesměrování.

Ukončovat lze sezení uživatelů přihlášených přes webové rozhraní a API sezení vytvořená JSON autentizací. Pro API požadavky, které používají HTTP autentizaci, žádné sezení nevzniká.


Dvě možnosti použití

Co chcete

Jak volat

Následek

Odhlásit uživatele ze všech firem

Bez dalších parametrů.

Zruší se všechna autentizační sezení uživatele.

Odhlásit uživatele z konkrétní firmy

Doplňte parametr company={databázové jméno firmy}.

Autentizační sezení zůstávají v platnosti, zahodí se jen kontextové informace.

K obnovení kontextu a jeho opětovnému nakešování dojde automaticky s příštím požadavkem uživatele.


Příklady

Odhlášení uživatele novak ze všech firem a ukončení platnosti autentizace:

POST https://demo.flexibee.eu/status/user/novak/logout

Odhlášení uživatele franta z firmy nejlepsi_firma_a_s_ bez zrušení autentizace:

POST https://demo.flexibee.eu/status/user/franta/logout?company=nejlepsi_firma_a_s_


Návratové stavy

Stav

Kdy nastane

200

Úspěšné volání přes API. Tělo odpovědi je prázdné.

303

Úspěšné volání z webového rozhraní — přesměrování na /status/user.

404

Uživatel není přihlášen; v těle je hlášení User '…' is not logged in. Stejný stav nastane, i když se kontextové informace zahodily, ale žádné autentizační sezení neexistovalo — typicky u API volání s HTTP autentizací.

💡 Nechcete-li chybu 404 u uživatele, který není přihlášen, připojte parametr ?ignore-not-found=true. Volání pak vrátí 200 i tehdy, když nebylo co odhlašovat — pro dávkové odhlašování je to praktičtější.

POST https://demo.flexibee.eu/status/user/novak/logout?ignore-not-found=true


Kdo službu může použít

  • Uživatel s právem přístupu do všech firem a současně s právem spravovat licenci.

  • Uživatel sám sebe.


Související

Dostali jste odpověď na svou otázku?