> ## Documentation Index
> Fetch the complete documentation index at: https://docs.hightouch.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Eagle Eye

> Eagle Eye's AI-powered platform unifies loyalty management and 1-to-1 personalization. Capture first-party data, deliver personalized experiences at scale, and measure results.

## Supported syncing

| Sync Type | Description | Supported Sync Modes | API Reference |
| - | - | - | - |
| [**Campaigns**](#campaigns) | Issue coupons for an Eagle Eye campaign to audience members' wallets | Add, Remove | [Create coupon →](https://developer.eagleeye.com/eagleeye-developer/reference/createwalletcampaignaccount) |

For more information about sync modes, refer to the [sync modes](https://docs.hightouch.com/syncs/types-and-modes.md#sync-modes) docs.

## Connect to Eagle Eye

Go to the [**Destinations** overview page](https://app.hightouch.com/destinations?from=docs) and click the **Add destination** button. Select **Eagle Eye** and click **Continue**. You can then authenticate Hightouch to **Eagle Eye**.

Enter the following fields into Hightouch:

* **Client ID**: your Eagle Eye API client ID.
* **Client secret**: your Eagle Eye API client secret. Hightouch uses it to sign every API request with Eagle Eye's SHA-256 hash authentication.
* **Region**: the region your Eagle Eye account is hosted in: `us`, `us2`, `uk`, `au`, or `sandbox.uk`. Hightouch uses the region to build the API URL, for example `https://wallet.us.eagleeye.com`.

To get your client ID and client secret, contact your Eagle Eye account team.

## Sync configuration

Once you've set up your Eagle Eye destination and have a [model](https://docs.hightouch.com/getting-started/concepts.md#models) to pull data from, you can set up your sync configuration to begin syncing data. Go to the [**Syncs** overview page](https://app.hightouch.com/syncs?from=docs) and click the **Add sync** button to begin. Then, select the relevant model and the Eagle Eye destination you want to sync to.

### Campaigns

Syncing to Eagle Eye issues coupons for a campaign you select. When a member enters the audience, Hightouch creates a coupon account for the campaign in the member's Eagle Eye wallet. When a member leaves the audience, Hightouch can optionally cancel the coupons that the member hasn't activated yet.

Select the Eagle Eye campaign to issue coupons for. The dropdown lists campaigns from your Eagle Eye account that are in `ACTIVE`, `PENDING`, `DRAFT`, or `READY` status. You can't create campaigns from Hightouch, so create the campaign in Eagle Eye first.

Each sync issues coupons for one campaign. To give the same audience multiple offers, create one sync per campaign from the same audience.

> [!NOTE]
>
> Eagle Eye coupons have a state that controls whether they apply at checkout:
> `UNLOADED` coupons are issued but not yet activated by the member, and
> `LOADED` coupons are activated. The state a coupon starts in is configured on
> the campaign in Eagle Eye. Hightouch doesn't set or change coupon states.

#### Configure record matching

To match rows from your model to wallets in Eagle Eye, select the model column that contains the member's Eagle Eye **Wallet ID**. Eagle Eye coupons are issued directly to wallets, so every row must include a wallet ID. Hightouch rejects rows with a missing or empty wallet ID.

Refer to the [record matching docs](https://docs.hightouch.com/syncs/record-matching.md) for more information.

#### Configure delete behavior

When a member leaves the audience, you can choose how Hightouch handles their coupons:

| Behavior | Description |
| - | - |
| **Keep all coupons** | Leave all of the member's coupons in place. This is the default. |
| **Cancel unloaded coupons** | Cancel the member's unactivated (`UNLOADED`) coupons for this campaign. Coupons the member has activated (`LOADED`) are never canceled. |

> [!WARNING]
>
> Canceling a coupon is irreversible. If a member re-enters the audience later,
> Hightouch issues a new coupon.

## Tips and troubleshooting

To see the exact API requests and responses from each sync run, use the [live debugger](https://docs.hightouch.com/syncs/debugger.md). To get notified by Slack, PagerDuty, SMS, or email when a sync fails, set up [sync alerts](https://docs.hightouch.com/syncs/alerting.md). If you run into an issue this page doesn't cover, [contact support](#pylon-chat).

> [!NOTE]
>
> For Hightouch platform error codes related to Eagle Eye, see [Error codes:
> Other destinations](https://docs.hightouch.com/developer-tools/error-codes.md#other-destinations).

When Eagle Eye rejects a coupon issuance, Hightouch rejects the row and includes the error code and message returned by Eagle Eye. Refer to [Eagle Eye's API documentation](https://developer.eagleeye.com/eagleeye-developer/reference/createwalletcampaignaccount) for details on specific error codes.
