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

# Embed Project Echo in your product (My app / identify users)

> Identify users with My app embed keys, member tokens, and pe_token portal links.

**My app** connects your product to Project Echo so end-users are identified as portal members. You install an embed script, pass user attributes from your backend-rendered page, and open the feedback portal with a `pe_token` when needed.

## Open My app

1. Go to **Integrations** in the Workspace nav.
2. Select **My app**.
3. Create an embed key with a label and allowed origins (your app’s HTTPS origins).
4. Copy the embed token when shown — it is revealed once.

## Install the embed snippet

Paste the snippet from **Integrations → My app** into pages where users should be identified. Replace placeholders **server-side** with the signed-in user’s id, email, and profile fields.

```html theme={null}
<script
  async
  defer
  src="https://app.projectecho.io/embed/v1/pe-embed.js"
  data-pe-api-base="https://app.projectecho.io"
  data-pe-embed-key-id="YOUR_EMBED_KEY_ID"
  data-pe-embed-token="YOUR_EMBED_TOKEN"
  data-pe-subdomain="YOURSUBDOMAIN"
  data-pe-portal-base-url="https://YOURSUBDOMAIN.projectecho.io"
  data-pe-external-user-id="{{END_USER_ID}}"
  data-pe-email="{{OPTIONAL_EMAIL}}"
></script>
<a data-pe-portal-link href="https://YOURSUBDOMAIN.projectecho.io" target="_blank" rel="noopener noreferrer">
  Give feedback
</a>
```

Typical attributes include external user id (required), email/name/avatar, and optional company external id. Identify runs quietly on load. `data-pe-portal-link` merges `?pe_token=` when users open the portal.

If you use a **verified custom domain** (Pro), point `data-pe-portal-base-url` and portal `href`s at that same origin everywhere.

## Member tokens and pe\_token

The embed flow mints short-lived member tokens so the portal knows who is signed in. Links that include `pe_token` keep member-only portal behavior (submit feedback, vote, etc.) aligned with your product’s user.

## Checklist

* Serve the snippet only from allowed origins you configured.
* Never expose embed secrets in a public git repo.
* After changing custom domain settings, update deployed embed attributes so origins match.

CDN / embed script details are shown live on **Integrations → My app**. Support: [support@projectecho.io](mailto:support@projectecho.io) · [Help Center](https://docs.projectecho.io/).


## Related topics

- [Use the Project Echo REST API](/api-mcp-and-embed/use-rest-api.md)
- [Integrations overview](/integrations/integrations-overview.md)
- [Security basics for API keys, embed tokens, and webhooks](/api-mcp-and-embed/security-api-keys-tokens-webhooks.md)
- [Browse portal members and their activity](/team-and-members/browse-portal-members.md)
- [What is Project Echo?](/getting-started/what-is-project-echo.md)
