Dokümantasyon

Relay rotaları

Tek bir router bağlayın; tarayıcı SDK'sının (@touchque/web) çağırdığı tüm rotalar hazır olsun: iki aşamalı POST /login, kayıt, çevrimdışı kodlar ve passkey işlemleri. Her sunucu SDK'sında var: Node (touchqueRouter), Python (Flask / FastAPI / Django), PHP (Laravel ya da tek başına RelayHandler), Go (net/http), .NET (MapTouchqueRelay), Java (Spring Boot starter) ve Ruby (Rails ve Rack için Touchque::Rack::Relay).

Login user seçeneğini (şifre adımını geçen kullanıcı) mutlaka verin. Verilmezse kullanıcı adı istek gövdesinden alınır ve çevrimdışı rotalar kapalı kalır (403).
RotaNot
POST /loginOnaylanana kadar 202 + adım + token
/enroll/start, /enroll/statusOturum açmış kullanıcı; bağlı telefonu asla değiştirmez (409)
/offline/*Yalnız login user seçeneğiyle
/passkey/*Şifresiz giriş, passkey ile onay, passkey yönetimi

Kimlik öncesi rotalar varsayılan olarak IP başına (20/dk) ve kullanıcı adı başına (5/dk) sınırlıdır.

Relay'i bağlayın
const { Touchque, touchqueRouter } = require('@touchque/node');
const tq = new Touchque(); // TQ_API_KEY / TQ_API_SECRET

app.use('/touchque', touchqueRouter(tq, {
  getUserId: (req) => req.session.user,                    // oturum açmış kullanıcı
  getLoginUser: (req) => req.session.passwordVerifiedUser, // şifre adımını geçen kullanıcı
  onAuthenticated: (req, res, info) => { req.session.user = info.externalUsername; },
}));