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

# identify()

> Associate your user ID with Encore

Links your user ID to the SDK's anonymous ID for cross-device entitlement tracking and attribution. Call this after a successful login to sync the user's entitlements across devices.

## Signature

```tsx theme={null}
identify(userId: string, attributes?: UserAttributes): Promise<{ success: boolean }>
```

## Parameters

| Name         | Type                                | Description                                         |
| ------------ | ----------------------------------- | --------------------------------------------------- |
| `userId`     | string                              | Your user's unique identifier from your auth system |
| `attributes` | [UserAttributes](./user-attributes) | Optional structured attributes to set in one call   |

## Usage

### Basic identification

```tsx theme={null}
await Encore.identify(user.id);
```

### With attributes

```tsx theme={null}
await Encore.identify(user.id, {
  email: user.email,
  subscriptionTier: user.plan,
  monthsSubscribed: String(user.monthsActive),
});
```

<Tip>
  Call `identify()` after a successful login. On logout, call [`reset()`](./reset) to clear the user ID and cached entitlements.
</Tip>
