Create Campaign
Campaigns are the core of your loyalty program. See the sample example of how this can be configured. Links to more detailed instructions can be found at the end of the article.
How this example works
OpenLoyalty allows you to create various types of campaigns to engage and reward your customers. You can set up point-based campaigns, referral campaigns, or even time-based promotions.
Creating campaigns is a complex process, but using the admin panel can simplify it.
In this example, we will create a campaign that rewards a member with 100 points for each transaction.
Try yourself
Create a campaign Endpoint:
POST /api/{storeCode}/campaign{ "campaign": { "type": "direct", "trigger": "transaction", "translations": { "en": { "name": "Get 100 points for any transaction", "description": "" } }, "activity": { "startsAt": "2024-01-01 00:00+00:00", "endsAt": null }, "rules": [ { "effects": [ { "effect": "give_points", "pointsRule": "100", "walletCode": "default" } ] } ], "labels": [], "limits": {}, "active": true } }
Endpoints used
This method allows creating a new Campaign.
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
Return created campaign ID.
Bad request.
Forbidden.
Not found.
More resources
For a detailed overview and description of the campaign creation and management, please refer to these series of articles:
CampaignsLast updated
Was this helpful?

