curl -X GET "https://staging-api.loyalty.lt/en/shop/coupons?shop_id=1&status=active&per_page=10" \
-H "X-API-Key: your_api_key" \
-H "X-API-Secret: your_api_secret"
import { LoyaltySDK } from '@loyaltylt/sdk';
const sdk = new LoyaltySDK({
apiKey: 'your_api_key',
apiSecret: 'your_api_secret',
environment: 'staging'
});
const result = await sdk.listCoupons({
shop_id: 1,
status: 'active',
per_page: 10
});
console.log(`Found ${result.pagination.total} coupons`);
result.coupons.forEach(coupon => {
console.log(`- ${coupon.code}: ${coupon.offer?.title}`);
});
{
"success": true,
"message": "Coupons retrieved successfully",
"data": {
"coupons": [
{
"id": 123,
"code": "K1234567890",
"qr_code": "uuid-1234-5678",
"status": "active",
"expires_at": "2025-01-31T23:59:59Z",
"is_used": false,
"is_pending": false,
"offer": {
"id": 456,
"title": "Free Coffee",
"description": "Reward for completing stamp card",
"discount_type": "game_reward",
"reward_type": "free_product",
"reward_details": "Free medium coffee"
},
"game": {
"id": 789,
"name": "Coffee Stamp Card",
"type": "stamps",
"reward_description": "Collect 10 stamps for a free coffee"
},
"user": {
"id": 100,
"name": "Jonas Jonaitis",
"email": "jonas@example.com"
},
"products": [],
"categories": [],
"requires_product_selection": false
}
],
"pagination": {
"current_page": 1,
"per_page": 10,
"total": 25,
"last_page": 3
}
}
}
Coupons
List Coupons
List coupons for a shop or customer (Partner API)
GET
/
{locale}
/
shop
/
coupons
curl -X GET "https://staging-api.loyalty.lt/en/shop/coupons?shop_id=1&status=active&per_page=10" \
-H "X-API-Key: your_api_key" \
-H "X-API-Secret: your_api_secret"
import { LoyaltySDK } from '@loyaltylt/sdk';
const sdk = new LoyaltySDK({
apiKey: 'your_api_key',
apiSecret: 'your_api_secret',
environment: 'staging'
});
const result = await sdk.listCoupons({
shop_id: 1,
status: 'active',
per_page: 10
});
console.log(`Found ${result.pagination.total} coupons`);
result.coupons.forEach(coupon => {
console.log(`- ${coupon.code}: ${coupon.offer?.title}`);
});
{
"success": true,
"message": "Coupons retrieved successfully",
"data": {
"coupons": [
{
"id": 123,
"code": "K1234567890",
"qr_code": "uuid-1234-5678",
"status": "active",
"expires_at": "2025-01-31T23:59:59Z",
"is_used": false,
"is_pending": false,
"offer": {
"id": 456,
"title": "Free Coffee",
"description": "Reward for completing stamp card",
"discount_type": "game_reward",
"reward_type": "free_product",
"reward_details": "Free medium coffee"
},
"game": {
"id": 789,
"name": "Coffee Stamp Card",
"type": "stamps",
"reward_description": "Collect 10 stamps for a free coffee"
},
"user": {
"id": 100,
"name": "Jonas Jonaitis",
"email": "jonas@example.com"
},
"products": [],
"categories": [],
"requires_product_selection": false
}
],
"pagination": {
"current_page": 1,
"per_page": 10,
"total": 25,
"last_page": 3
}
}
}
List Coupons
Get a paginated list of coupons. Filter by shop, customer, or status.This endpoint uses Partner API authentication (X-API-Key and X-API-Secret headers).
Query Parameters
Filter coupons valid for this shop
Filter by customer user ID
Filter by loyalty card ID (alternative to user_id)
Filter by status:
active, used, expired, allPage number for pagination
Items per page (max 100)
Response
Indicates successful retrieval
curl -X GET "https://staging-api.loyalty.lt/en/shop/coupons?shop_id=1&status=active&per_page=10" \
-H "X-API-Key: your_api_key" \
-H "X-API-Secret: your_api_secret"
import { LoyaltySDK } from '@loyaltylt/sdk';
const sdk = new LoyaltySDK({
apiKey: 'your_api_key',
apiSecret: 'your_api_secret',
environment: 'staging'
});
const result = await sdk.listCoupons({
shop_id: 1,
status: 'active',
per_page: 10
});
console.log(`Found ${result.pagination.total} coupons`);
result.coupons.forEach(coupon => {
console.log(`- ${coupon.code}: ${coupon.offer?.title}`);
});
{
"success": true,
"message": "Coupons retrieved successfully",
"data": {
"coupons": [
{
"id": 123,
"code": "K1234567890",
"qr_code": "uuid-1234-5678",
"status": "active",
"expires_at": "2025-01-31T23:59:59Z",
"is_used": false,
"is_pending": false,
"offer": {
"id": 456,
"title": "Free Coffee",
"description": "Reward for completing stamp card",
"discount_type": "game_reward",
"reward_type": "free_product",
"reward_details": "Free medium coffee"
},
"game": {
"id": 789,
"name": "Coffee Stamp Card",
"type": "stamps",
"reward_description": "Collect 10 stamps for a free coffee"
},
"user": {
"id": 100,
"name": "Jonas Jonaitis",
"email": "jonas@example.com"
},
"products": [],
"categories": [],
"requires_product_selection": false
}
],
"pagination": {
"current_page": 1,
"per_page": 10,
"total": 25,
"last_page": 3
}
}
}
Related Endpoints
Card Coupons
Get coupons for a specific customer
Verify Coupon
Verify a scanned coupon
⌘I