---
"@context": https://schema.org
"@type": TechArticle
"@id": https://www.twilio.com/docs/segment/unify/identity-resolution/identity-warehouse#article
headline: Identity Warehouse (Limited Availability)
description: The Engage Identity Warehouse exports all identifiers associated with a user to your data warehouse. Learn the table schema and example SQL queries.
url: https://www.twilio.com/docs/segment/unify/identity-resolution/identity-warehouse
inLanguage: en
dateModified: 2026-06-26T20:05:21.000Z
author:
  "@type": Organization
  name: Twilio Developer Education Team
publisher:
  "@type": Organization
  name: Twilio
---

# Identity Warehouse (Limited Availability)

* FREE: x
* TEAM: x
* BUSINESS: ✓
* ADDON: ✓

Unify requires a Business tier account and is included with Engage.

See the [available plans](https://segment.com/pricing), or [contact Support](https://segment.com/help/contact/)

> \[!WARNING]
>
> **Note:** The Identity warehouse has limited availability and does not support GDPR deletion requests. Contact your Segment customer success manager to enable this feature.

The Engage Identity Warehouse allows customers to export all identifiers associated with any one user.

When enabled, customers see a source called Engage Identities `<space_name>`. This automatically synchronizes to warehouses in a customer's workspace. To disable, use Selective Sync.

To query the underlying data, customers can query:

```sql
SELECT * FROM engage_<space_name>_identities.users_identities
```

The columns in the tables are:

| Name                | Metadata                                                                     |
| ------------------- | ---------------------------------------------------------------------------- |
| created\_source     | the source key that sent the message containing the external\_id to Engage   |
| external\_id\_type  | the type of external\_id (email, user\_id, cross\_domain\_id, etc)           |
| external\_id\_value | the value of the external\_id                                                |
| merged\_at          | the timestamp of when this profile was merged                                |
| merged\_from        | the previous segment\_id that this external\_id belonged to before the merge |
| segment\_id         | the index of the user profile                                                |
| synced\_at          | when the data was synced to the Identities source                            |
| created\_at         | when the mapping or merging was created                                      |

## Example queries

Use these queries to retrieve all identifiers associated with a user. To see all identifiers associated with a certain user, first look up the `segment_id` associated with the `external_id_value`. Then, query all `external_id_value`'s associated with the `segment_id`.

```sql
 with t1 AS
  (SELECT segment_id
   FROM engage_identities.users_identities
   WHERE external_id_value = 'jane.doe@example1.com')
SELECT u.segment_id, created_source, external_id_type, external_id_value
FROM engage_identities.users_identities u
JOIN t1 on u.segment_id = t1.segment_id
```

\| segment\_id         | created\_source    | external\_id\_type| external\_id\_value |
\| ----------------- | -------------------------------------------------------------------------- |
\| use\_abc123         | 640YebQ2Ri    | email|   [jane.doe@example1.com](mailto:jane.doe@example1.com) |
\| use\_abc123         | fHz4PsaUf8    | email|   [jane.doe@example2.com](mailto:jane.doe@example2.com) |
\| use\_abc123         | fHz4PsaUf8    | anonymous\_id| feaa68e5-1057-4e32-8702-a2462b454474 |
\| use\_abc123         | fHz4PsaUf8    | user\_id| 0P1Qls5jrj |
\| use\_abc123         | 640YebQ2Ri    | android.id | 4f0bf0e9-44db-4127-8c0c-90f8b261b08e|
\| use\_abc123         | 640YebQ2Ri    | ios.id | 0440f065-9291-4601-aabe-218620e3c69d|
