403 lines
14 KiB
JSON
403 lines
14 KiB
JSON
{
|
|
"success": true,
|
|
"message": "Get all promotions successfully.",
|
|
"data": {
|
|
"customerId": "80010991",
|
|
"eligiblePromotionList": [
|
|
{
|
|
"awardUsedLimit": 0,
|
|
"awardsCount": 0,
|
|
"awardsEligible": 1,
|
|
"awardsEntitled": 1,
|
|
"awardsRedeemLimit": 1,
|
|
"earnedPoints": 5,
|
|
"isDirectOffer": false,
|
|
"isEligible": true,
|
|
"isEntitled": true,
|
|
"isOptIn": false,
|
|
"isOptedInByPlayer": false,
|
|
"isRedeemCompleted": false,
|
|
"maxOutcome": 1,
|
|
"minOutcome": 1,
|
|
"startDate": "2026-01-01T00:00",
|
|
"endDate": "2036-01-01T00:00",
|
|
"id": 10991,
|
|
"code": "LP-MOCK-REPRINT-CHAIN",
|
|
"name": "Mock Promotion Reprint Chain",
|
|
"ruleId": 1099101,
|
|
"ruleName": "Mock-5pts-$20 GLP F&B voucher",
|
|
"ruleNameDesc": "Mock-5pts-$20 GLP F&B voucher",
|
|
"toEarn1Unit": 5,
|
|
"isRedeemAll": false,
|
|
"outcomeList": [
|
|
{
|
|
"key": 10991011,
|
|
"value": "lp-ee-nsuwr-5pts-20-fb",
|
|
"isInventoryCheck": null,
|
|
"qtyOnHand": null,
|
|
"prize": {
|
|
"correlationId": null,
|
|
"prizeCode": "lp-ee-nsuwr-5pts-20-fb",
|
|
"behaviorProfileCode": "FNB_OPEN_ITEM",
|
|
"name": "NSUWR-5PTS-$20 GLP F&B voucher",
|
|
"description": "NSUWR-5PTS-$20 GLP F&B voucher",
|
|
"source": "INTERNAL",
|
|
"isVoidable": true,
|
|
"isEnabled": true,
|
|
"imageUrl": null,
|
|
"prizeValue": 20.0,
|
|
"expiryConfig": {
|
|
"strategy": "MIN",
|
|
"rules": [
|
|
{
|
|
"type": "ROLLING_DURATION",
|
|
"value": "P90D"
|
|
}
|
|
],
|
|
"isEnabled": false
|
|
},
|
|
"prizeCategory": "FnB",
|
|
"usageBehavior": "TARGET_ONLY",
|
|
"deliveryMode": "USER_CHOICE",
|
|
"allowNegativeBalance": false,
|
|
"createdAt": "2026-03-21T12:40:00+08:00",
|
|
"createdBy": "mock-gateway",
|
|
"createdByEmployeeId": null,
|
|
"updatedAt": "2026-03-21T12:40:00+08:00",
|
|
"updatedBy": "mock-gateway",
|
|
"updatedByEmployeeId": null,
|
|
"tags": null,
|
|
"behaviorProfile": {
|
|
"profileCode": "FNB_OPEN_ITEM",
|
|
"profileName": "FnB (Open Item)",
|
|
"prizeCategory": "FnB",
|
|
"usageBehavior": "TARGET_ONLY",
|
|
"deliveryMode": "USER_CHOICE",
|
|
"description": "Food and Beverage target-only item, user choice delivery",
|
|
"isActive": true,
|
|
"allowNegativeBalance": false,
|
|
"isBucket": false,
|
|
"isEbonus": false
|
|
},
|
|
"localizations": null,
|
|
"messages": null,
|
|
"isPrintVoucher": null,
|
|
"isExcludeGlobalMessages": null,
|
|
"effectiveFrom": null,
|
|
"effectiveTo": null,
|
|
"bucketPrices": {
|
|
"d-comp": 20.0,
|
|
"m-comp": 20.0
|
|
},
|
|
"compValue": 20.0,
|
|
"note": "Dedicated mock fixture for promotion redeem -> history -> reprint chain",
|
|
"uniqueCodeRequirement": "NONE"
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"awardUsedLimit": 0,
|
|
"awardsCount": 0,
|
|
"awardsEligible": 1,
|
|
"awardsEntitled": 1,
|
|
"awardsRedeemLimit": 1,
|
|
"earnedPoints": 1,
|
|
"isDirectOffer": false,
|
|
"isEligible": true,
|
|
"isEntitled": true,
|
|
"isOptIn": false,
|
|
"isOptedInByPlayer": false,
|
|
"isRedeemCompleted": false,
|
|
"maxOutcome": 1,
|
|
"minOutcome": 1,
|
|
"startDate": "2026-01-01T00:00",
|
|
"endDate": "2036-01-01T00:00",
|
|
"id": 11225,
|
|
"code": "LP-MOCK-AUTOSETTLE-CHECK",
|
|
"name": "Mock Promotion AutoSettle Check",
|
|
"ruleId": 1122502,
|
|
"ruleName": "Mock-1pt-qa-ebonus-auto",
|
|
"ruleNameDesc": "Mock-1pt-qa-ebonus-auto",
|
|
"toEarn1Unit": 1,
|
|
"isRedeemAll": false,
|
|
"outcomeList": [
|
|
{
|
|
"key": 11225021,
|
|
"value": "qa-ebonus-auto",
|
|
"isInventoryCheck": null,
|
|
"qtyOnHand": null,
|
|
"prize": {
|
|
"correlationId": null,
|
|
"prizeCode": "qa-ebonus-auto",
|
|
"behaviorProfileCode": "EBONUS_AUTOSETTLE",
|
|
"name": "qa-ebonus-auto",
|
|
"description": "for automation testing",
|
|
"source": "INTERNAL",
|
|
"isVoidable": true,
|
|
"isEnabled": true,
|
|
"imageUrl": null,
|
|
"prizeValue": 1.0,
|
|
"expiryConfig": {
|
|
"strategy": "MIN",
|
|
"rules": [
|
|
{
|
|
"type": "ROLLING_DURATION",
|
|
"value": "P90D"
|
|
}
|
|
],
|
|
"isEnabled": false
|
|
},
|
|
"prizeCategory": "eBonus",
|
|
"usageBehavior": "TARGET_ONLY",
|
|
"deliveryMode": "EXTERNAL_ONLY",
|
|
"allowNegativeBalance": false,
|
|
"createdAt": "2026-01-16T11:32:27.761213+08:00",
|
|
"createdBy": "qa-henrylai",
|
|
"createdByEmployeeId": null,
|
|
"updatedAt": "2026-01-16T11:32:27.761213+08:00",
|
|
"updatedBy": "qa-henrylai",
|
|
"updatedByEmployeeId": null,
|
|
"tags": [],
|
|
"behaviorProfile": {
|
|
"profileCode": "EBONUS_AUTOSETTLE",
|
|
"profileName": "eBonus (AutoSettle)",
|
|
"prizeCategory": "eBonus",
|
|
"usageBehavior": "TARGET_ONLY",
|
|
"deliveryMode": "EXTERNAL_ONLY",
|
|
"description": "eBonus target-only item auto-settled externally",
|
|
"isActive": true,
|
|
"allowNegativeBalance": false,
|
|
"isBucket": false,
|
|
"isEbonus": true
|
|
},
|
|
"localizations": null,
|
|
"messages": null,
|
|
"isPrintVoucher": false,
|
|
"isExcludeGlobalMessages": null,
|
|
"effectiveFrom": "2026-01-16T11:32:27.555+08:00",
|
|
"effectiveTo": "2036-01-16T11:32:27.562+08:00",
|
|
"bucketPrices": {},
|
|
"compValue": null,
|
|
"note": null,
|
|
"uniqueCodeRequirement": "NONE"
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"awardUsedLimit": 0,
|
|
"awardsCount": 0,
|
|
"awardsEligible": 3,
|
|
"awardsEntitled": 3,
|
|
"awardsRedeemLimit": 3,
|
|
"earnedPoints": 100,
|
|
"isDirectOffer": false,
|
|
"isEligible": true,
|
|
"isEntitled": true,
|
|
"isOptIn": false,
|
|
"isOptedInByPlayer": false,
|
|
"isRedeemCompleted": false,
|
|
"maxOutcome": 3,
|
|
"minOutcome": 1,
|
|
"startDate": "2026-01-01T00:00",
|
|
"endDate": "2036-01-01T00:00",
|
|
"id": 11330,
|
|
"code": "LP-MOCK-USER-CHOICE-3-OUTCOMES",
|
|
"name": "Mock Promotion 3 User Choice Outcomes",
|
|
"ruleId": 1133001,
|
|
"ruleName": "Mock-3-user-choice-prizes",
|
|
"ruleNameDesc": "Mock-3-user-choice-prizes",
|
|
"toEarn1Unit": 1,
|
|
"isRedeemAll": false,
|
|
"outcomeList": [
|
|
{
|
|
"key": 11330011,
|
|
"value": "it-test-fb-$1",
|
|
"isInventoryCheck": null,
|
|
"qtyOnHand": null,
|
|
"prize": {
|
|
"correlationId": null,
|
|
"prizeCode": "it-test-fb-$1",
|
|
"behaviorProfileCode": "FNB_OPEN_ITEM",
|
|
"name": "IT-TEST-FB-$1",
|
|
"description": "IT-TEST-FB-$1",
|
|
"source": "INTERNAL",
|
|
"isVoidable": true,
|
|
"isEnabled": true,
|
|
"imageUrl": null,
|
|
"prizeValue": 1.0,
|
|
"expiryConfig": {
|
|
"strategy": "MIN",
|
|
"rules": [
|
|
{
|
|
"type": "ROLLING_DURATION",
|
|
"value": "P3D"
|
|
}
|
|
],
|
|
"isEnabled": true
|
|
},
|
|
"prizeCategory": "FnB",
|
|
"usageBehavior": "TARGET_ONLY",
|
|
"deliveryMode": "USER_CHOICE",
|
|
"allowNegativeBalance": false,
|
|
"createdAt": "2025-11-04T11:00:53.232361+08:00",
|
|
"createdBy": "qa-nicolefeng",
|
|
"createdByEmployeeId": "173094",
|
|
"updatedAt": "2026-02-04T18:04:07.911273+08:00",
|
|
"updatedBy": "qa-randyng",
|
|
"updatedByEmployeeId": "171853",
|
|
"tags": null,
|
|
"behaviorProfile": {
|
|
"profileCode": "FNB_OPEN_ITEM",
|
|
"profileName": "FnB (Open Item)",
|
|
"prizeCategory": "FnB",
|
|
"usageBehavior": "TARGET_ONLY",
|
|
"deliveryMode": "USER_CHOICE",
|
|
"description": "Food and Beverage target-only item, user choice delivery",
|
|
"isActive": true,
|
|
"allowNegativeBalance": false,
|
|
"isBucket": false,
|
|
"isEbonus": false
|
|
},
|
|
"localizations": null,
|
|
"messages": null,
|
|
"isPrintVoucher": null,
|
|
"isExcludeGlobalMessages": null,
|
|
"effectiveFrom": null,
|
|
"effectiveTo": null,
|
|
"bucketPrices": {},
|
|
"compValue": null,
|
|
"note": "Dedicated mock fixture for 3 USER_CHOICE promotion redeem testing",
|
|
"uniqueCodeRequirement": "NONE"
|
|
}
|
|
},
|
|
{
|
|
"key": 11330012,
|
|
"value": "it-test-nnpc-$1",
|
|
"isInventoryCheck": null,
|
|
"qtyOnHand": null,
|
|
"prize": {
|
|
"correlationId": null,
|
|
"prizeCode": "it-test-nnpc-$1",
|
|
"behaviorProfileCode": "NNPC_OPEN_ITEM",
|
|
"name": "it-test-nnpc-$1",
|
|
"description": "test nnpc",
|
|
"source": "INTERNAL",
|
|
"isVoidable": true,
|
|
"isEnabled": true,
|
|
"imageUrl": null,
|
|
"prizeValue": 1.0,
|
|
"expiryConfig": {
|
|
"strategy": "MIN",
|
|
"rules": [
|
|
{
|
|
"type": "ROLLING_DURATION",
|
|
"value": "P90D"
|
|
}
|
|
],
|
|
"isEnabled": true
|
|
},
|
|
"prizeCategory": "NNPC",
|
|
"usageBehavior": "TARGET_ONLY",
|
|
"deliveryMode": "USER_CHOICE",
|
|
"allowNegativeBalance": false,
|
|
"createdAt": "2025-12-01T16:33:18.420102+08:00",
|
|
"createdBy": "qa-henrylai",
|
|
"createdByEmployeeId": "165114",
|
|
"updatedAt": "2025-12-18T17:56:51.783392+08:00",
|
|
"updatedBy": "qa-henrylai",
|
|
"updatedByEmployeeId": "165114",
|
|
"tags": null,
|
|
"behaviorProfile": {
|
|
"profileCode": "NNPC_OPEN_ITEM",
|
|
"profileName": "NNPC (Open Item)",
|
|
"prizeCategory": "NNPC",
|
|
"usageBehavior": "TARGET_ONLY",
|
|
"deliveryMode": "USER_CHOICE",
|
|
"description": "NNPC target-only item, user chooses wallet or external",
|
|
"isActive": true,
|
|
"allowNegativeBalance": false,
|
|
"isBucket": false,
|
|
"isEbonus": false
|
|
},
|
|
"localizations": null,
|
|
"messages": null,
|
|
"isPrintVoucher": null,
|
|
"isExcludeGlobalMessages": null,
|
|
"effectiveFrom": null,
|
|
"effectiveTo": null,
|
|
"bucketPrices": null,
|
|
"compValue": null,
|
|
"note": null,
|
|
"uniqueCodeRequirement": "NONE"
|
|
}
|
|
},
|
|
{
|
|
"key": 11330013,
|
|
"value": "it-test-ebo-$1",
|
|
"isInventoryCheck": null,
|
|
"qtyOnHand": null,
|
|
"prize": {
|
|
"correlationId": null,
|
|
"prizeCode": "it-test-ebo-$1",
|
|
"behaviorProfileCode": "EBONUS_OPEN_ITEM",
|
|
"name": "IT-TEST-EBO-$1",
|
|
"description": "IT-TEST-EBO-$1",
|
|
"source": "INTERNAL",
|
|
"isVoidable": true,
|
|
"isEnabled": true,
|
|
"imageUrl": null,
|
|
"prizeValue": 1.0,
|
|
"expiryConfig": {
|
|
"strategy": "MIN",
|
|
"rules": [
|
|
{
|
|
"type": "ROLLING_DURATION",
|
|
"value": "P7D"
|
|
}
|
|
],
|
|
"isEnabled": true
|
|
},
|
|
"prizeCategory": "eBonus",
|
|
"usageBehavior": "TARGET_ONLY",
|
|
"deliveryMode": "USER_CHOICE",
|
|
"allowNegativeBalance": false,
|
|
"createdAt": "2025-11-04T09:48:33.139099+08:00",
|
|
"createdBy": "qa-nicolefeng",
|
|
"createdByEmployeeId": "173094",
|
|
"updatedAt": "2025-12-26T15:20:31.57588+08:00",
|
|
"updatedBy": "qa-issaclo",
|
|
"updatedByEmployeeId": "165148",
|
|
"tags": null,
|
|
"behaviorProfile": {
|
|
"profileCode": "EBONUS_OPEN_ITEM",
|
|
"profileName": "eBonus (Open Item)",
|
|
"prizeCategory": "eBonus",
|
|
"usageBehavior": "TARGET_ONLY",
|
|
"deliveryMode": "USER_CHOICE",
|
|
"description": "eBonus target-only item, user chooses wallet or external",
|
|
"isActive": true,
|
|
"allowNegativeBalance": false,
|
|
"isBucket": false,
|
|
"isEbonus": true
|
|
},
|
|
"localizations": null,
|
|
"messages": null,
|
|
"isPrintVoucher": null,
|
|
"isExcludeGlobalMessages": null,
|
|
"effectiveFrom": null,
|
|
"effectiveTo": null,
|
|
"bucketPrices": null,
|
|
"compValue": null,
|
|
"note": null,
|
|
"uniqueCodeRequirement": "NONE"
|
|
}
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"entitledPromotionList": []
|
|
}
|
|
}
|