# Connecting Intercom

> Pull tagged Intercom conversations into the feedback Inbox. One-way (Intercom → ProductOS) only.

Source: https://productos.ca/documentation/guides/integrations/intercom (last reviewed 2026-09-22)

The Intercom integration is **one-way**: ProductOS pulls Intercom conversations into your feedback Inbox. There is no write-back, no auto-reply, no tag-mapping UI, and no auto-resolution loop. Only the one-way import exists.

## What it does

- **Tagged conversations → feedback rows.** Each conversation carrying the configured tag becomes one feedback row, tagged `source: Intercom`.
- **Contact capture.** The first contact's email lands on `metadata.intercom.contact_email`.
- **Conversation reference.** `metadata.intercom.conversation_id`, the Intercom URL and the conversation state are preserved so you can jump back to the original Intercom conversation.

## Connecting

1. In Intercom: **Settings → Developers → New app**, then copy the access token. (`Read` scopes on conversations + tags are sufficient, no write scopes required.)
2. In ProductOS: **Settings → Integrations → Intercom → Connect.** Paste the access token.
3. Configure options:
   - **Tag**: only conversations carrying this tag are imported. Default `feedback`. Empty means all conversations (large workspaces beware).
   - **Max pages per sync**: Intercom returns 50 conversations per page; the default of 5 caps each run at 250 conversations.
4. **Connect & test** confirms the connection by calling Intercom's `/me` and reading back the admin name and email.

## What's pulled per conversation

- **Title**: the conversation subject, or the first ~80 chars of the source message when there is none
- **Description**: the conversation's source message, HTML stripped
- **Source**: `Intercom`
- **Status**: `addressed` if the conversation is closed, otherwise `under-review`
- **Tags**: Intercom conversation tags are kept under `metadata.intercom.tags`; they are not applied as ProductOS tags
- **Contact**: the first contact's email on `metadata.intercom.contact_email`
- **Conversation reference**: `metadata.intercom.conversation_id`, URL, state, updated timestamp

## Changing import scope

Open **Configure** on the Intercom card to change the tag or the page cap, then **Sync now**. Each run pulls up to Max pages × 50 conversations and updates rows it has seen before. Rows are dedup'd against `metadata.intercom.conversation_id`, so a re-import won't duplicate.

## Disconnecting

**Settings → Integrations → Intercom → Disconnect.** No-op on the Intercom side. Historical feedback rows retain `source = Intercom` and the `metadata.intercom.conversation_id` reference (useful for re-importing later).

## Privacy

- ProductOS only requests Read scopes, it cannot modify Intercom conversations, contacts, or companies.
- Imported conversation content lives alongside the rest of your feedback.

## Next

- [Feedback triage workflow](https://productos.ca/documentation/guides/workflows/feedback-triage): the daily loop your Intercom inflow feeds.
