List distinct group values for a grouped leaderboard
Open Loyalty has the JWT authorization. To learn what a JSON Web Token is and how it works, check out Introduction to JSON Web Tokens https://jwt.io/introduction/
Obtain an access token
Send a request with the parameters username and password
Definition
POST /api/admin/login_check Go to definition
POST /api/{storeCode}/member/login_check Go to definition
Example
curl {HOST}/api/admin/login_check
-H 'Content-Type: application/json;charset=UTF-8'
-H 'Accept: application/json, text/plain, */*'
--data-binary '{"username":"admin","password":"password"}'
Example Response
{
"token":"eyJhbGciOiJSUzI1NiIsInR5cCI6...",
"refresh_token":"0558f8bb29948c4e54c443f..."
}
Using JSON Web Token
Add authorization header to each request
Authorization: Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6...
You can now access any API method you want under the /api prefix.
Example
curl {HOST}/api/{storeCode}/analytics/members
-H 'Accept: application/json'
-H 'Content-type: application/x-www-form-urlencoded'
-H 'Authorization: Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6...'
Refresh JSON Web Token
You can refresh token using refresh_token that was given during login.
There are two endpoints
To refresh admin token POST /api/token/refresh Go to definition
To refresh member token POST /api/{storeCode}/token/refresh Go to definition
Store code
Campaign ID
Case-insensitive, left-anchored prefix filter on the group value (matches value%). Only the startsWith operator is supported — a disallowed operator such as name[like] returns HTTP 400. The short form name=<prefix> is treated identically to name[startsWith]=<prefix>.
war1-based page index.
1Page size.
10Sort direction for the groupValue column. Only asc and desc are accepted.
ascPossible values: Distinct group values for the running iteration.
WarsawUnauthorized
Forbidden.
Not found.
GET /api/{storeCode}/campaign/{campaign}/leaderboard/group HTTP/1.1
Host: openloyalty.localhost
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"items": [
"Warsaw"
],
"total": {
"all": 4,
"filtered": 1,
"estimated": false
}
}Last updated
Was this helpful?

