☰ Meniu · Chei și permisiuni
Chei și permisiuni
Fiecare cerere poartă o cheie secretă în antetul Authorization. O cheie aparține unui singur local și poate fi limitată la ce are nevoie integrarea.
curl https://loyaltyfy.io/api/v1/account \
-H "Authorization: Bearer sk_test_4eC39HqLyjWDarjtT1zdp7dc"Trimite cheia ca Authorization: Bearer <key>. Cererile fără cheie, cu o cheie necunoscută sau revocată primesc 401.
Chei de test și chei live
Cheile încep cu sk_test_ sau sk_live_. Ambele lucrează cu același local și aceleași date. Diferența este indicatorul livemode de pe tot ce creează cheia, astfel încât rapoartele și webhook-urile pot separa traficul de test. Folosește chei de test cât timp dezvolți și treci pe o cheie live la primul schimb real.
Permisiuni
O cheie poate fi limitată la anumite permisiuni. Un apel care cere o permisiune pe care cheia nu o are primește 403 cu codul missing_scope. O cheie creată fără permisiuni are acces complet; recomandăm asta doar pentru scripturile proprii ale localului.
| Permisiune | Permite |
|---|---|
| members:read | Căutarea și listarea membrilor, citirea istoricului, scanarea codurilor. |
| members:write | Înscrierea membrilor, actualizarea profilurilor, atașarea numerelor de card. |
| members:adjust | Adăugarea sau scăderea manuală a cashback-ului, cu un motiv, dacă localul permite asta. |
| transactions:write | Aplicarea și anularea bonurilor, înregistrarea vizitelor, acordarea recompenselor, listarea tranzacțiilor. |
| menu:read | Citirea meniului și a preparatelor. |
| menu:write | Crearea preparatelor, schimbarea prețurilor, gestionarea stop-listului. |
| orders:read | Citirea comenzilor de la masă. |
| orders:write | Acceptarea, respingerea și trecerea comenzilor prin statusuri. |
| devices:write | Setul pentru chioșcuri și scanere: scanări, vizite, înscriere și acordarea recompenselor, fără acces la lista de membri sau la bonuri. |
| catalog:read | Citirea produselor și a regulilor categoriilor. |
| catalog:write | Încărcarea produselor și denumirea categoriilor. Regulile de bani ale categoriilor rămân la proprietar. |
| webhooks:write | Gestionarea endpointurilor de webhook. |
Seturi uzuale: o casă de marcat are nevoie de members:read, members:write, transactions:write. Un scaner la intrare are nevoie doar de devices:write. Sincronizarea meniului cere menu:read și menu:write; adaugă orders:read și orders:write dacă POS-ul preia comenzi de la masă.
Păstrarea cheilor în siguranță
- Cheile sunt secrete. Apelează API-ul de pe serverul tău sau din back office-ul casei, niciodată dintr-un browser sau dintr-o aplicație mobilă publică.
- Păstrăm doar un hash al fiecărei chei. Dacă pierzi o cheie, revoc-o în panou și creează una nouă; schimbarea se aplică imediat.
- Când se poate, folosește câte o cheie pentru fiecare instalare (fiecare casă, fiecare chioșc). Astfel, revocarea uneia nu le oprește pe celelalte, iar Ultima utilizare din panou îți arată ce dispozitiv face apelurile.