Admin Token
Securing your application with OpenLoyalty starts with a robust authentication flow. OpenLoyalty leverages JSON Web Tokens (JWT) to ensure that requests to its API are authorized.
Initial Admin Login
When an admin attempts to log in for the first time:
Send a
POST
request to the/api/admin/login_check
endpoint with the admin's credentials as a JSON payload.
Upon successful authentication, OpenLoyalty will return a response containing a JWT token and a refresh token:
This JWT token is critical as it must be included in the Authorization
header as a Bearer token for all subsequent requests to the API.
Maintaining Authentication State
The JWT token has a validity period of 24 hours. To continue interacting with the API beyond this period without requiring the admin to log in again, you will need to refresh the token.
To ensure optimal performance of your environment, it's crucial to avoid frequent requests for JWT tokens, as this can significantly impact system efficiency.
The /api/admin/login_check
and /api/token/refresh
endpoints are limited to 20 requests per minute (RPM).
Send a
POST
request to the/api/token/refresh
endpoint with the refresh token before the JWT token expires:
If the refresh token is valid, OpenLoyalty will issue a new JWT token along with a new refresh token.
Replace the old JWT token with the new one in the Authorization
header for all future requests.
Best Practices
Token Storage: Store the JWT and refresh tokens securely, and never expose them to unauthorized entities.
Error Handling: Implement error handling for scenarios where the token refresh fails, prompting to re-authenticate if necessary.
By following these steps and best practices, you can integrate OpenLoyalty's authentication flow into your application, ensuring secure and seamless access to its API.
For additional details and best practices, you should consult the official OpenLoyalty API documentation (https://apidocs.openloyalty.io/), as it will provide the most accurate and up-to-date information, including any recent changes to the API, security advisories, and detailed endpoint descriptions.
Last updated