For the complete documentation index, see llms.txt. This page is also available as Markdown.

Get member’s details

Integration This method returns details related to a specific Member account.

get
Authorizations
AuthorizationstringRequired

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

Path parameters
memberstringRequiredPattern: [0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}|email=[a-zA-Z0-9!#$%&'\.*+\-@=?^_`{|}~;]+|phone=[0-9+]+|loyaltyCardNumber=[0-9a-zA-Z\._-]+
storeCodestringRequired

Store code

Query parameters
customFieldsstringOptional

Comma-separated list of custom field group names to include in the response. If omitted, all custom fields are returned.

Example: group1,group2
Responses
200

Member details

application/json
customerIdstring · uuidOptional
registeredAtstring · date-timeOptional
activebooleanOptional
channelIdstring · uuidOptional
firstNamestringOptional
lastNamestringOptional
genderstringOptional
emailstringOptional
phonestringOptional
birthDatestring · date-timeOptional
lastLevelRecalculationstring · date-timeOptional
loyaltyCardNumberstringOptional
createdAtstring · date-timeOptional
updatedAtstring · date-timeOptional
agreement1booleanOptional
agreement2booleanOptional
agreement3booleanOptional
transactionsCountintegerOptional
returnTransactionsCountintegerOptional
transactionsAmountnumber · floatOptional
returnTransactionsAmountnumber · floatOptional
transactionsAmountWithoutDeliveryCostsnumber · floatOptional
amountExcludedForLevelnumber · floatOptional
averageTransactionAmountnumber · floatOptional
averageReturnTransactionAmountnumber · floatOptional
lastTransactionDatestring · date-timeOptional
firstTransactionDatestring · date-timeOptional
levelAchievementDatestring · date-timeOptional
anonymizedbooleanOptional
referralTokenstringOptional
currencystringOptional
storeCodestringOptional
segmentsstring · uuid[]Optional
channelIdentifierstringOptional
get/api/{storeCode}/member/{member}
GET /api/{storeCode}/member/{member} HTTP/1.1
Host: openloyalty.localhost
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "customerId": "123e4567-e89b-12d3-a456-426614174000",
  "registeredAt": "2026-01-01T00:00:00.000Z",
  "active": true,
  "channelId": "123e4567-e89b-12d3-a456-426614174000",
  "firstName": "text",
  "lastName": "text",
  "gender": "text",
  "email": "text",
  "phone": "text",
  "birthDate": "2026-01-01T00:00:00.000Z",
  "lastLevelRecalculation": "2026-01-01T00:00:00.000Z",
  "address": {
    "street": "text",
    "address1": "text",
    "address2": "text",
    "province": "text",
    "city": "text",
    "postal": "text",
    "country": "text"
  },
  "loyaltyCardNumber": "text",
  "createdAt": "2026-01-01T00:00:00.000Z",
  "updatedAt": "2026-01-01T00:00:00.000Z",
  "agreement1": true,
  "agreement2": true,
  "agreement3": true,
  "company": {
    "name": "text",
    "nip": "text"
  },
  "transactionsCount": 1,
  "returnTransactionsCount": 1,
  "transactionsAmount": 1,
  "returnTransactionsAmount": 1,
  "transactionsAmountWithoutDeliveryCosts": 1,
  "amountExcludedForLevel": 1,
  "averageTransactionAmount": 1,
  "averageReturnTransactionAmount": 1,
  "lastTransactionDate": "2026-01-01T00:00:00.000Z",
  "firstTransactionDate": "2026-01-01T00:00:00.000Z",
  "levelAchievementDate": "2026-01-01T00:00:00.000Z",
  "anonymized": true,
  "referralToken": "text",
  "defaultAccount": {
    "accountId": "text",
    "activePoints": 1,
    "transferredPoints": 1,
    "lockedPoints": 1,
    "expiredPoints": 1,
    "spentPoints": 1,
    "earnedPoints": 1,
    "blockedPoints": 1
  },
  "customFieldsData": [
    {
      "customFieldSchemaId": "123e4567-e89b-12d3-a456-426614174000",
      "customFieldName": "text",
      "customFieldType": "text",
      "value": "text"
    }
  ],
  "customFields": {
    "group_1": {
      "field_1": "orange",
      "field_2": 48,
      "field_3": 3.5,
      "field_4": true,
      "field_5": "1990-05-12",
      "field_6": "2024-01-15 10:30:00.000000",
      "field_7": null,
      "field_8": "red",
      "field_9": [
        "red",
        "blue"
      ],
      "subgroup_1": [
        {
          "field_name1": 1,
          "field_name2": 92.5,
          "field_name3": true
        }
      ]
    }
  },
  "labels": [
    {
      "key": "text",
      "value": "text"
    }
  ],
  "currency": "text",
  "storeCode": "text",
  "segments": [
    "123e4567-e89b-12d3-a456-426614174000"
  ],
  "channelIdentifier": "text",
  "currentLevel": {
    "levelId": "123e4567-e89b-12d3-a456-426614174000",
    "name": "text",
    "description": "text",
    "translations": {
      "en": {
        "name": "text",
        "description": "text"
      },
      "pl": {
        "name": "text",
        "description": "text"
      }
    }
  }
}

Last updated

Was this helpful?