
## points.loyalty
A profile’s loyalty point number increased.  
This event includes the parameters of the [`transaction.charge` event](/docs/assets/events/event-reference/items#transactioncharge) which generated the points.

**Default retention**: 30 days  
**Recommended retention**: infinite

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| Base parameters | various | n/a | [Parameters that may exist in all events](/docs/assets/events/event-reference/common-parameters#base-parameters) |
| points | string | `52` | The number of assigned points |
| $orderID | string | `13045a77-5230-481f-8f10-50d867c8d930` | Unique ID of the transaction |


## client.removePoints
A profile's loyalty points were decreased.

**Default retention**: 30 days 


| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| Base parameters | various | n/a | [Parameters that may exist in all events](/docs/assets/events/event-reference/common-parameters#base-parameters) |
| promotionCode | string | `0000080596` | Code of the promotion |
| promotionName | string | `Free fries` | Display name of the promotion |
| promotionUuid | string | `7810c17f-9e77-4053-a291-1db9d1d486f8` | UUID of the promotion |
| points | integer | `1000` | Total number of removed points |
| singleValue | integer | `500` | Points removed for one redemption |
| value | integer | `1000` | Total number of removed points |
| quantity | number | `2` | The number of times a promotion was redeemed |
| date | integer | `1679512628953` | Unix timestamp of the event |
| beneficiaryClientUuid | string | `81ac2d89-a488-4106-94cf-9a1d45e66e87` | UUID of the end-user who redeemed the voucher code from a promotion <br> Useful when [the **Allow voucher transfer** option in a promotion configuration is enabled](/docs/ai-hub/promotions/creating-promotions#add-voucher-codes). |


## points.sent
Loyalty points were sent to a different profile.

**Default retention**: 30 days 


| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| Base parameters | various | n/a | [Parameters that may exist in all events](/docs/assets/events/event-reference/common-parameters#base-parameters) |
| points | integer | `200` | The amount of transferred points |
| recipient | string | `Bob` | The name of the recipient, provided by the sender |
| recipientClientId | integer | `54689894` | The profile ID of the recipient |
| message | string | `Have a snack` | Message added to the transfer, provided by the sender |
| lockIdentifier | string | `d2307965-2aba-43d3-889f-cc362a1c9d07.1681561293278` | Identifier of the point lock which will be released once the points are transferred |


## points.received
Loyalty points were received from a different profile.

**Default retention**: 30 days 


| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| Base parameters | various | n/a | [Parameters that may exist in all events](/docs/assets/events/event-reference/common-parameters#base-parameters) |
| points | integer | `200` | The amount of transferred points |
| sender | string | `Mike` | The name of the sender, provided by the sender |
| senderClientId | integer | `54688644` | The profile ID of the sender |
| message | string | `Have a snack` | Message added to the transfer, provided by the sender |

## client.activatePromotion

This event is generated when a [mobile SDK](/developers/mobile-sdk/loyalty#working-with-single-promotions) or [API](https://developers.synerise.com/LoyaltyandEngagement/LoyaltyandEngagement.html#tag/Promotions) method activates a promotion.

**Default retention**: 30 days
| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| Base parameters | various | n/a | [Parameters that may exist in all events](/docs/assets/events/event-reference/common-parameters#base-parameters) |
| promotionCode | string | `0000080596` | Code of the promotion |
| promotionUuid | string | `7810c17f-9e77-4053-a291-1db9d1d486f8` | UUID of the promotion |
| promotionName | string | `Free fries` | Display name of the promotion |
| promotionType | string | `GENERAL` | Promotion type |
| promotionDiscountType | string | `AMOUNT` | Type of the discount |
| promotionRedeemQuantityPerActivation | integer | `3` | How many times per activation a multibuy promotion can be redeemed. `0` means no limit. |
| promotionRequireRedeemedPoints | integer | `10` | How many loyalty points are needed to activate the promotion |
| lastingAt | string | `2023-08-24T14:15:22Z` | Time when promotion expires for the profile. If the promotion doesn't expire, the value is `null`. |
| date | integer | `1694777235525` | Time when the event occurred (Unix timestamp) |

## client.deactivatePromotion

This event is generated when a [mobile SDK](/developers/mobile-sdk/loyalty#working-with-single-promotions) or [API](https://developers.synerise.com/LoyaltyandEngagement/LoyaltyandEngagement.html#tag/Promotions) method deactivates a promotion.

**Default retention**: 30 days
| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| Base parameters | various | n/a | [Parameters that may exist in all events](/docs/assets/events/event-reference/common-parameters#base-parameters) |
| promotionCode | string | `0000080596` | Code of the promotion |
| promotionUuid | string | `7810c17f-9e77-4053-a291-1db9d1d486f8` | UUID of the promotion |
| promotionName | string | `Free fries` | Display name of the promotion |
| promotionType | string | `GENERAL` | Promotion type |
| promotionDiscountType | string | `AMOUNT` | Type of the discount |
| promotionRedeemQuantityPerActivation | integer | `3` | How many times per activation a multibuy promotion can be redeemed. `0` means no limit. |
| promotionRequireRedeemedPoints | integer | `10` | How many loyalty points are needed to activate the promotion |
| lastingAt | string | `2023-08-24T14:15:22Z` | Time when promotion expires for the profile. If the promotion doesn't expire, the value is `null`. |
| date | integer | `1694777235525` | Time when the event occurred (Unix timestamp) |

## client.promotionExpire

A promotion expired for a profile (according to the `lastingAt` parameter).

**Default retention**: 30 days

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| Base parameters | various | n/a | [Parameters that may exist in all events](/docs/assets/events/event-reference/common-parameters#base-parameters) |
| promotionCode | string | `0000080596` | Code of the promotion |
| promotionUuid | string | `7810c17f-9e77-4053-a291-1db9d1d486f8` | UUID of the promotion |
| promotionName | string | `Free fries` | Display name of the promotion |
| promotionType | string | `GENERAL` | Promotion type |
| currentRedeemedQuantity | integer | `6` | The number of times this promotion was redeemed by the profile. |
| promotionDiscountType | string | `AMOUNT` | Type of the discount |
| promotionRequireRedeemedPoints | integer | `10` | How many loyalty points are needed to activate the promotion |
| promotionRedeemQuantityPerActivation | integer | `3` | How many times per activation a multibuy promotion can be redeemed. `0` means no limit. |
| date | integer | `1694777235525` | Time when the event occurred (Unix timestamp) |

## client.promotionRequest

This event is generated for each request made to [`/v4/promotions/promotion/get-for-client-by-custom-settings/{identifierType}/{identifierValue}`](https://developers.synerise.com/LoyaltyandEngagement/LoyaltyandEngagement.html#operation/GetClientPromotionsByACustomFilter).

**Default retention**: 30 days

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| Base parameters | various | n/a | [Parameters that may exist in all events](/docs/assets/events/event-reference/common-parameters#base-parameters) |
| promotions | array of strings | `["1234","5678"]` | A list of promotions (promotion codes) that were returned in the response. |
| date | integer | `1694777235525` | Time when the event occurred (Unix timestamp) |

## client.promotionActivationLimitReached


This event is generated when a [mobile SDK](/developers/mobile-sdk/loyalty#working-with-single-promotions) or [API](https://developers.synerise.com/LoyaltyandEngagement/LoyaltyandEngagement.html#tag/Promotions) method is used to try activating a promotion that reached its global limit.


**Default retention**: 30 days

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| Base parameters | various | n/a | [Parameters that may exist in all events](/docs/assets/events/event-reference/common-parameters#base-parameters) |
| promotionCode | string | `0000080596` | Code of the promotion |
| promotionUuid | string | `7810c17f-9e77-4053-a291-1db9d1d486f8` | UUID of the promotion |
| promotionName | string | `Free fries` | Display name of the promotion |
| promotionType | string | `GENERAL` | Promotion type |
| promotionDiscountType | string | `AMOUNT` | Type of the discount |
| promotionRedeemQuantityPerActivation | integer | `3` | How many times per activation a multibuy promotion can be redeemed. `0` means no limit. |
| promotionRequireRedeemedPoints | integer | `10` | How many loyalty points are needed to activate the promotion |
| activationLimitGlobal | integer | `100` |  How many times the promotion can be activated, regardless of individual usage per profile. |
| lastingAt | string | `2023-08-24T14:15:22Z` | Time when promotion expires for the profile. If the promotion doesn't expire, the value is `null`. |
| date | integer | `1694777235525` | Time when the event occurred (Unix timestamp) |


## handbill.assign
Promotions from a personalized promotion were assigned to a profile.  
- If the same personalized promotion is requested multiple again before the generated promotion set expires, the event isn't generated.
- If the same personalized promotion is requested again after the expiration and a new promotion set is generated, a new event is generated too.

**Default retention**: 30 days


<div class="admonition admonition-note"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" /></svg></div><div class="admonition-body"><div class="admonition-content">

Some parameters in the table apply only to certain personalized promotion types and configurations.

</div></div></div>

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| Base parameters | various | n/a | [Parameters that may exist in all events](/docs/assets/events/event-reference/common-parameters#base-parameters) |
| date | integer | `1694777235525` | Time when the event occurred (Unix timestamp) |
| lastingAt | string | `2023-08-24T14:15:22Z` | Time when promotion expires for the profile. If the promotion doesn't expire, the value is `null`. |









## voucherCode.assigned
A [voucher](/docs/assets/code-pools) was assigned to a profile.

**Default retention**: 30 days


<details class="accordion"><summary>Sources of this event</summary><div class="accordion-content"><ul> <li><a href="/developers/mobile-sdk/loyalty#vouchers">Assigning vouchers in Mobile SDK</a></li> <li><a href="/developers/inserts/insert-usage#code-pools">Assigning vouchers in inserts</a></li> <li>API methods:<br> NOTE: API methods can also be called by SDKs and <a href="/docs/automation/actions/webhook-node">outgoing integrations</a>.<ul> <li><a href="https://developers.synerise.com/LoyaltyandEngagement/LoyaltyandEngagement.html#operation/AssignAVoucherFromAPoolToAClient"><code>/v4/vouchers/item/assign</code></a></li> <li><a href="https://developers.synerise.com/LoyaltyandEngagement/LoyaltyandEngagement.html#operation/GetOrAssignAndGetVoucherAsClient"><code>/v4/vouchers/item/get-or-assign</code></a></li> <li><a href="https://developers.synerise.com/LoyaltyandEngagement/LoyaltyandEngagement.html#operation/AssignAVoucherToAClient"><code>/v4/vouchers/item/assign-for-client</code></a></li> <li><a href="https://developers.synerise.com/LoyaltyandEngagement/LoyaltyandEngagement.html#operation/GetOrAssignAndGetVoucherByIdentifierAsBusinessProfile"><code>/v4/vouchers/item/get-or-assign-for-client/by-identifier</code></a></li> </ul> </li> </ul></div></details>


| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| Base parameters | various | n/a | [Parameters that may exist in all events](/docs/assets/events/event-reference/common-parameters#base-parameters) |
| poolUUID | string | `add2c522-2ee5-4438-9e3e-153fb0b1f28c` | Unique identifier of the voucher pool |
| poolName | string | `Example promo vouchers` | Name of the voucher pool |
| voucherUUID | string | `8fed24da-a32b-487d-b5af-78781f4e4cd9` | Unique identifier of the voucher |
| voucherCode | string | `14EDA294` | Code of the voucher |
| expireIn | integer | `1700917039` | Date when the voucher expires (Unix timestamp in seconds). If the voucher never expires, the value is null. |
| assignedAt | integer | `1698242239` | Date of assigning the voucher (Unix timestamp in seconds) |

## voucherCode.redeemed
A [voucher](/docs/assets/code-pools) was redeemed.

**Default retention**: 30 days


<details class="accordion"><summary>Sources of this event</summary><div class="accordion-content"><p><a href="https://developers.synerise.com/LoyaltyandEngagement/LoyaltyandEngagement.html#operation/RedeemAVoucher"><code>/v4/vouchers/item/redeem</code> API method</a><br>NOTE: API methods can also be called by SDKs and <a href="/docs/automation/actions/webhook-node">outgoing integrations</a>.</p></div></details>


| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| Base parameters | various | n/a | [Parameters that may exist in all events](/docs/assets/events/event-reference/common-parameters#base-parameters) |
| poolUUID | string | `add2c522-2ee5-4438-9e3e-153fb0b1f28c` | Unique identifier of the voucher pool |
| poolName | string | `Example promo vouchers` | Name of the voucher pool |
| voucherUUID | string | `8fed24da-a32b-487d-b5af-78781f4e4cd9` | Unique identifier of the voucher |
| voucherCode | string | `14EDA294` | Code of the voucher |
| redeemedAt | integer | `1700139439` | Date of redeeming the voucher (Unix timestamp in seconds) |





