Sessioni
Le sessioni ti consentono di accedere come utente al tuo back office. Senza una sessione valida, un utente non può accedere al back office.
Composizione
Una sessione è definita da un indirizzo IP, un dispositivo e un utente. Questi attributi sono di sola lettura.
Utilizzo
Per effettuare richieste alla tua API di back office, puoi utilizzare le chiavi API o accedere come utente. Per fare ciò, è necessario effettuare una richiesta all'API sessioni con la tua email e password.
Ecco un esempio di richiesta CURL per ottenere un token di accesso:
curl https://demo.back-office.pro/sessioni \
-X 'POST' \
-H 'Accept: application/json' \
-d '{"session":{"email":"[email protected]","password":"******"}}'
Ed ecco un esempio di un payload che otterrai con questa richiesta:
{
"token_type": "Bearer",
"expires_in": 600,
"access_token": "eyJfcmFpbHMiOnsiZGF0YSI6IjQxZmE5NWU5LWFjO*********",
"refresh_token": "eyJfcmFpbHMiOnsiZGF0YSI6IjQxZmE5NWU5LWFjO*********"
}
È quindi possibile, ad esempio, riutilizzare il token access_token per effettuare una nuova richiesta API per ottenere l'elenco degli utenti. Il token deve essere inserito nell'intestazione HTTP Authorization con il prefisso Bearer.
Ecco un esempio di richiesta CURL che ti consente di ottenere un elenco di utenti:
curl https://demo.back-office.pro/utenti \
-H 'Authorization: Bearer eyJfcmFpbHMiOnsiZGF0YSI6IjQxZmE5NWU5LWFjO*********' \
-H 'Accept: application/json'
Si noti inoltre che si otterrà l'elenco degli utenti solo se l'utente associato al token dispone dei diritti per farlo. In caso contrario, riceverai un errore 403.
Sicurezza
Per motivi di sicurezza, è necessario aggiornare il token. Un token è valido solo per 10 minuti. A tale scopo, è necessario effettuare una richiesta all'API tokens specificando il token refresh_token ottenuto tramite l'API sessions.
Di seguito è riportato un esempio di richiesta CURL che consente di aggiornare un token di accesso:
curl https://demo.back-office.pro/tokens \
-X 'POST' \
-H 'Authorization: Bearer eyJfcmFpbHMiOnsiZGF0YSI6IjQxZmE5NWU5LWFjO*********' \
-H 'Accept: application/json' \
-d '{"refresh_token":"eyJfcmFpbHMiOnsiZGF0YSI6IjQxZmE5NWU5LWFjO*********"}'
Ed ecco un esempio di un payload che otterrai con questa richiesta:
{
"token_type": "Bearer",
"expires_in": 600,
"access_token": "eyJfcmFpbHMiOnsiZGF0YSI6IjQxZmE5NWU5LWFjO*********",
"refresh_token": "eyJfcmFpbHMiOnsiZGF0YSI6IjQxZmE5NWU5LWFjO*********"
}
È quindi possibile riutilizzare il nuovo token access_token per richieste future.