Intercom Connector
Connectorstatus: Planlagt Ikke bygget endnu. Tajo kører ikke denne connector i dag.
Illustration · eksempeldata
Eksempel på synkronisering
Kilde
Intercom
Connectorstatus: Planlagt
Destination
Dit andet værktøj
Connectorstatus: Eget værktøj
Feltmapping
| Kildefelt | Destinationsfelt | Eksempelværdi |
|---|---|---|
record.id | source_id | record_1042 |
record.updated_at | updated_at | 2026-10-18T08:00:00Z |
record.value | value | sample_value |
- Udkast
- Gennemse én post
- Godkend denne version
Status gælder den enkelte connector og garanterer ikke, at denne synkronisering er klar. Felterne er illustrative. Tjek det faktiske skema og tilladelser før en synkronisering.
Forbind dit Intercom-workspace til Brevo via Tajo for forenet kundekommunikation, samtalesporing og engagementdrevet marketingautomatisering drevet af dine support- og produktdata.
Oversigt
| Egenskab | Værdi |
|---|---|
| Platform | Intercom |
| Kategori | Support |
| Opsætningskompleksitet | Mellem |
| Officiel integration | Nej |
| Synkroniserede data | Kontakter, samtaler, virksomheder, hændelser |
| API-base-URL | https://api.intercom.io |
Funktioner
- Kontaktsynkronisering - Tovejssynkronisering af Intercom-brugere og -leads med Brevo-kontakter
- Samtalesporing - Synkronisér samtaledata til supportdrevet segmentering
- Virksomhedsmapping - Knyt kontakter til virksomheder til account-based workflows
- Brugerdefinerede attributter - Knyt Intercom-brugerdefinerede attributter til Brevo-kontaktfelter
- Hændelsessporing - Synkronisér brugerdefinerede hændelser og brugeraktiviteter til adfærdsmålretning
- Tag-synkronisering - Knyt Intercom-tags til Brevo-listemedlemskab eller attributter
- Messenger-data - Spor in-app-beskedengagement og chatinteraktioner
- AI-agent-integration - Synkronisér resultater fra AI-agentsamtaler med Brevo
Forudsætninger
Før du begynder, skal du sikre dig, at du har:
- Et Intercom-workspace (Starter-, Pro- eller Premium-plan)
- En Intercom-app med adgangstoken (privat app) eller OAuth konfigureret (offentlig app)
- En Brevo-konto med API-adgang
- En Tajo-konto
Autentifikation
Adgangstoken (privat app)
Til private integrationer, der tilgår dit eget workspaces data.
- Gå til Developer Hub > Your Apps > Create new app
- Knyt til dit Intercom-workspace
- Kopiér adgangstokenet
curl https://api.intercom.io/contacts \ -H "Authorization: Bearer {access_token}" \ -H "Content-Type: application/json" \ -H "Intercom-Version: 2.11"OAuth 2.0 (offentlig app)
Til integrationer, der tilgår andre kunders Intercom-data.
# Authorization URLhttps://app.intercom.com/oauth?client_id={client_id}&state={state}
# Token exchangecurl -X POST https://api.intercom.io/auth/eagle/token \ -d "client_id={client_id}" \ -d "client_secret={client_secret}" \ -d "code={auth_code}"API-versionering
Inkludér altid Intercom-Version-headeren i dine forespørgsler. Tajo bruger som standard API-version 2.11. Tjek Intercoms changelog for breaking changes.
Konfiguration
Grundlæggende opsætning
connectors: intercom: enabled: true access_token: "${INTERCOM_ACCESS_TOKEN}" api_version: "2.11"
# Data sync options sync: contacts: true conversations: true companies: true events: true tags: true
# Sync direction direction: intercom_to_brevo
# Brevo list assignment lists: all_users: 35 active_conversations: 36 leads: 37Feltmapping
Knyt Intercom-kontaktdata til Brevo-kontaktattributter:
Standardmappings
| Parameter | Type | Description |
|---|---|---|
email required | string | Kontaktens e-mailadresse (unik identifikator) |
name optional | string | Fulde navn, opdelt i FIRSTNAME/LASTNAME |
phone optional | string | Mapper til SMS-attribut for WhatsApp/SMS |
role optional | string | Kontakttype: user eller lead |
company.name optional | string | Tilknyttet virksomhedsnavn |
signed_up_at optional | timestamp | Brugerens tilmeldingsdato |
last_seen_at optional | timestamp | Tidsstempel for seneste aktivitet |
custom_attributes optional | object | Nøgleværdipar for brugerdefinerede attributter |
Brugerdefineret attributmapping
field_mapping: # Standard fields email: email name: FULLNAME phone: SMS
# Engagement fields signed_up_at: SIGNUP_DATE last_seen_at: LAST_ACTIVE session_count: SESSION_COUNT unsubscribed_from_emails: UNSUBSCRIBED
# Company fields company.name: COMPANY_NAME company.plan: COMPANY_PLAN company.size: COMPANY_SIZE
# Custom attributes custom_attributes.plan_tier: PLAN_TIER custom_attributes.feature_usage: FEATURE_USAGEAPI-endpoints
Contacts API
| Metode | Endpoint | Beskrivelse |
|---|---|---|
GET | /contacts | Vis alle kontakter |
POST | /contacts | Opret en kontakt |
PUT | /contacts/{id} | Opdatér en kontakt |
GET | /contacts/{id} | Hent en kontakt |
POST | /contacts/search | Søg kontakter |
DELETE | /contacts/{id} | Arkivér en kontakt |
Conversations API
| Metode | Endpoint | Beskrivelse |
|---|---|---|
GET | /conversations | Vis samtaler |
GET | /conversations/{id} | Hent en samtale |
POST | /conversations | Opret en samtale |
POST | /conversations/{id}/reply | Svar på en samtale |
POST | /conversations/{id}/parts | Tilføj samtaledel |
Companies API
| Metode | Endpoint | Beskrivelse |
|---|---|---|
GET | /companies | Vis virksomheder |
POST | /companies | Opret eller opdatér en virksomhed |
GET | /companies/{id} | Hent en virksomhed |
GET | /companies/{id}/contacts | Vis virksomhedens kontakter |
Events API
| Metode | Endpoint | Beskrivelse |
|---|---|---|
POST | /events | Indsend en hændelse |
GET | /events?type=user&intercom_user_id={id} | Vis brugerhændelser |
Hændelser
Samtalehændelser
| Hændelse | Trigger | Anvendelse |
|---|---|---|
conversation.created | Ny samtale startet | Supportsagsadvarsel |
conversation.closed | Samtale løst | CSAT-undersøgelsestrigger |
conversation.rating.added | Rating indsendt | Tilfredshedssporing |
conversation.snoozed | Samtale snoozet | Opfølgningsplanlægning |
Kontakthændelser
| Hændelse | Trigger | Anvendelse |
|---|---|---|
contact.created | Ny kontakt tilføjet | Velkomstsekvens |
contact.updated | Kontaktdata ændret | Attributsynkronisering |
contact.deleted | Kontakt arkiveret | Oprydning |
contact.tag.created | Tag tilføjet kontakt | Segmentopdatering |
Brugerhændelser
| Hændelse | Trigger | Anvendelse |
|---|---|---|
user.created | Ny bruger tilmeldt | Onboarding-flow |
user.email.updated | E-mail ændret | Kontaktflet |
user.unsubscribed | Afmeldt e-mails | Præferenceopdatering |
Kodeeksempler
Initialisér konnektor
import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({ apiKey: process.env.TAJO_API_KEY, brevoApiKey: process.env.BREVO_API_KEY});
// Connect Intercomawait tajo.connectors.connect('intercom', { accessToken: process.env.INTERCOM_ACCESS_TOKEN, apiVersion: '2.11'});Synkronisér kontakter og samtaler
// Full sync of contacts and conversation dataawait tajo.connectors.sync('intercom', { type: 'full', resources: ['contacts', 'conversations', 'companies'], since: '2023-01-01'});
// Check sync statusconst status = await tajo.connectors.status('intercom');console.log(status);// {// connected: true,// lastSync: '2024-01-15T10:30:00Z',// contactsSynced: 14200,// conversationsSynced: 28400,// companiesSynced: 2100// }Håndtér Intercom-webhooks
import crypto from 'crypto';
app.post('/webhooks/intercom', async (req, res) => { const signature = req.get('X-Hub-Signature'); const expectedSig = 'sha1=' + crypto .createHmac('sha1', process.env.INTERCOM_CLIENT_SECRET) .update(JSON.stringify(req.body)) .digest('hex');
if (signature !== expectedSig) { return res.status(401).send('Unauthorized'); }
await tajo.connectors.handleWebhook('intercom', { topic: req.body.topic, data: req.body.data });
res.status(200).send('OK');});Ratebegrænsninger
Intercom anvender ratebegrænsninger baseret på din plan:
| Plan | Ratebegrænsning | Detaljer |
|---|---|---|
| Starter | 20 forespørgsler/10 sekunder | Per app |
| Pro | 50 forespørgsler/10 sekunder | Per app |
| Premium | 100 forespørgsler/10 sekunder | Per app |
| Search-endpoint | 1 forespørgsel/sekund | Per app |
| Scroll-endpoint | 1 forespørgsel/minut | Per app |
Yderligere grænser:
- Bulk-operationer: 15 kontakter per bulk-forespørgsel
- Hændelsesindsendelser: 500 hændelser/sekund per workspace
- Webhook-levering: Automatisk retry i 24 timer
- Dataeksport: 1 samtidig eksport
Svar ved ratebegrænsning
Intercom returnerer 429 Too Many Requests med en Retry-After-header. Implementér eksponentiel backoff, og respektér retry-vinduet.
Fejlfinding
Almindelige problemer
| Problem | Årsag | Løsning |
|---|---|---|
| 401 Unauthorized | Ugyldigt eller udløbet token | Regenerér adgangstoken i Developer Hub |
| Kontakt ikke synkroniseret | Manglende e-mailfelt | Intercom-leads kan mangle e-mail; filtrér efter rolle |
| Samtaledata tomme | App mangler conversation scope | Re-autorisér med conversation read-rettigheder |
| Webhook ikke modtaget | Webhook ikke registreret | Konfigurér webhooks i Developer Hub-indstillinger |
| API-version matcher ikke | Breaking changes i ny version | Fastlås API-version med Intercom-Version-header |
Fejlfindingstilstand
Aktivér udførlig logning:
connectors: intercom: debug: true log_level: verbose log_webhooks: trueTest forbindelse
tajo connectors test intercom# ✓ API connection successful# ✓ Contacts readable# ✓ Conversations readable# ✓ Companies readable# ✓ Webhooks registeredBest practices
- Fastlås API-version - Angiv altid
Intercom-Versionfor at undgå breaking changes - Brug search-API effektivt - Brug filtre og paginering for at reducere dataoverførsel
- Synkronisér både brugere og leads - Fang hele funnel’en i Brevo
- Map samtaletags - Brug samtaletags til marketingsegmenter efter support
- Spor brugerdefinerede hændelser - Indsend centrale produkthændelser til Intercom til adfærdsmålretning
- Håndtér kontaktfletninger - Implementér flet-logik for duplikerede kontakter
Sikkerhed
- Adgangstoken - Bearer-token-autentifikation til private apps
- OAuth 2.0 - Delegeret autorisation til offentlige apps med client secret
- Webhook-verifikation - HMAC SHA-1-signaturvalidering via
X-Hub-Signature - TLS-kryptering - Al API-kommunikation krypteret via HTTPS
- Dataadgangskontroller - Granulær dataadgang per app-konfiguration