Intercom-kobling
Koble Intercom-arbeidsområdet ditt til Brevo via Tajo for enhetlig kundemeldinger, samtalesporing og engasjementsdrevet markedsføringsautomatisering drevet av support- og produktdata.
Oversikt
| Egenskap | Verdi |
|---|---|
| Plattform | Intercom |
| Kategori | Support |
| Oppsettskompleksitet | Moderat |
| Offisiell integrasjon | Ja |
| Synkroniserte data | Kontakter, samtaler, selskaper, hendelser |
| API Base URL | https://api.intercom.io |
Funksjoner
- Kontaktsynkronisering - Toveis synkronisering av Intercom-brukere og leads med Brevo-kontakter
- Samtalesporing - Synkroniser samtaledata for supportdrevet segmentering
- Selskapsmapping - Knytt kontakter til selskaper for kontobaserte arbeidsflyter
- Egendefinerte attributter - Mapp Intercom egendefinerte attributter til Brevo-kontaktfelt
- Hendelsessporing - Synkroniser egendefinerte hendelser og brukeraktiviteter for atferdsmålretting
- Tag-synkronisering - Mapp Intercom-tagger til Brevo-listemedlemskap eller -attributter
- Messenger-data - Spor engasjement i in-app-meldinger og chat-interaksjoner
- AI-agentintegrasjon - Synkroniser AI-agent-samtaleresultater med Brevo
Forutsetninger
Før du begynner, sørg for at du har:
- Et Intercom-arbeidsområde (Starter-, Pro- eller Premium-plan)
- En Intercom-app med tilgangstoken (privat app) eller OAuth konfigurert (offentlig app)
- En Brevo-konto med API-tilgang
- En Tajo-konto
Autentisering
Tilgangstoken (privat app)
For private integrasjoner som får tilgang til data i ditt eget arbeidsområde.
- Gå til Developer Hub > Your Apps > Create new app
- Knytt den til Intercom-arbeidsområdet ditt
- Kopier tilgangstokenet
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)
For integrasjoner som får tilgang til andre kunders Intercom-data.
# Autorisasjons-URLhttps://app.intercom.com/oauth?client_id={client_id}&state={state}
# Token-utvekslingcurl -X POST https://api.intercom.io/auth/eagle/token \ -d "client_id={client_id}" \ -d "client_secret={client_secret}" \ -d "code={auth_code}"API-versjonering
Inkluder alltid Intercom-Version-headeren i forespørslene dine. Tajo bruker API-versjon 2.11 som standard. Sjekk Intercom-endringsloggen for bruddendringer.
Konfigurasjon
Grunnleggende oppsett
connectors: intercom: enabled: true access_token: "${INTERCOM_ACCESS_TOKEN}" api_version: "2.11"
# Synkroniseringsalternativer sync: contacts: true conversations: true companies: true events: true tags: true
# Synkroniseringsretning direction: intercom_to_brevo
# Tildeling av Brevo-lister lists: all_users: 35 active_conversations: 36 leads: 37Feltmapping
Mapp Intercom-kontaktdata til Brevo-kontaktattributter:
Standardmappinger
| Parameter | Type | Description |
|---|---|---|
email required | string | Kontaktens e-postadresse (unik identifikator) |
name optional | string | Fullt navn, delt i FIRSTNAME/LASTNAME |
phone optional | string | Mappes til SMS-attributt for WhatsApp/SMS |
role optional | string | Kontakttype: user eller lead |
company.name optional | string | Tilknyttet selskapsnavn |
signed_up_at optional | timestamp | Brukerens registreringsdato |
last_seen_at optional | timestamp | Siste aktivitetstidsstempel |
custom_attributes optional | object | Nøkkel-verdi-par for egendefinerte attributter |
Mapping av egendefinerte attributter
field_mapping: # Standardfelt email: email name: FULLNAME phone: SMS
# Engasjementsfelt signed_up_at: SIGNUP_DATE last_seen_at: LAST_ACTIVE session_count: SESSION_COUNT unsubscribed_from_emails: UNSUBSCRIBED
# Selskapsfelt company.name: COMPANY_NAME company.plan: COMPANY_PLAN company.size: COMPANY_SIZE
# Egendefinerte attributter custom_attributes.plan_tier: PLAN_TIER custom_attributes.feature_usage: FEATURE_USAGEAPI-endepunkter
Contacts API
| Metode | Endepunkt | Beskrivelse |
|---|---|---|
GET | /contacts | List alle kontakter |
POST | /contacts | Opprett en kontakt |
PUT | /contacts/{id} | Oppdater en kontakt |
GET | /contacts/{id} | Hent en kontakt |
POST | /contacts/search | Søk etter kontakter |
DELETE | /contacts/{id} | Arkiver en kontakt |
Conversations API
| Metode | Endepunkt | Beskrivelse |
|---|---|---|
GET | /conversations | List samtaler |
GET | /conversations/{id} | Hent en samtale |
POST | /conversations | Opprett en samtale |
POST | /conversations/{id}/reply | Svar på en samtale |
POST | /conversations/{id}/parts | Legg til samtaledel |
Companies API
| Metode | Endepunkt | Beskrivelse |
|---|---|---|
GET | /companies | List selskaper |
POST | /companies | Opprett eller oppdater et selskap |
GET | /companies/{id} | Hent et selskap |
GET | /companies/{id}/contacts | List selskapets kontakter |
Events API
| Metode | Endepunkt | Beskrivelse |
|---|---|---|
POST | /events | Send inn en hendelse |
GET | /events?type=user&intercom_user_id={id} | List brukerhendelser |
Hendelser
Samtalehendelser
| Hendelse | Utløser | Bruksområde |
|---|---|---|
conversation.created | Ny samtale startet | Varsel om supportsak |
conversation.closed | Samtale løst | Utløser for CSAT-undersøkelse |
conversation.rating.added | Vurdering sendt inn | Tilfredshetssporing |
conversation.snoozed | Samtale utsatt | Oppfølgingsplanlegging |
Kontakthendelser
| Hendelse | Utløser | Bruksområde |
|---|---|---|
contact.created | Ny kontakt lagt til | Velkomstsekvens |
contact.updated | Kontaktdata endret | Attributtsynkronisering |
contact.deleted | Kontakt arkivert | Opprydning |
contact.tag.created | Tagg lagt til kontakt | Segmentoppdatering |
Brukerhendelser
| Hendelse | Utløser | Bruksområde |
|---|---|---|
user.created | Ny bruker registrert | Onboarding-flyt |
user.email.updated | E-post endret | Kontaktsammenslåing |
user.unsubscribed | Meldte seg av e-poster | Preferanseoppdatering |
Kodeeksempler
Initialiser kobling
import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({ apiKey: process.env.TAJO_API_KEY, brevoApiKey: process.env.BREVO_API_KEY});
// Koble til Intercomawait tajo.connectors.connect('intercom', { accessToken: process.env.INTERCOM_ACCESS_TOKEN, apiVersion: '2.11'});Synkroniser kontakter og samtaler
// Full synkronisering av kontakt- og samtaledataawait tajo.connectors.sync('intercom', { type: 'full', resources: ['contacts', 'conversations', 'companies'], since: '2023-01-01'});
// Sjekk synkroniseringsstatusconst status = await tajo.connectors.status('intercom');console.log(status);// {// connected: true,// lastSync: '2024-01-15T10:30:00Z',// contactsSynced: 14200,// conversationsSynced: 28400,// companiesSynced: 2100// }Håndter 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');});Ratebegrensninger
Intercom anvender ratebegrensninger basert på planen din:
| Plan | Ratebegrensning | Detaljer |
|---|---|---|
| Starter | 20 forespørsler/10 sekunder | Per app |
| Pro | 50 forespørsler/10 sekunder | Per app |
| Premium | 100 forespørsler/10 sekunder | Per app |
| Søkeendepunkt | 1 forespørsel/sekund | Per app |
| Scroll-endepunkt | 1 forespørsel/minutt | Per app |
Ytterligere grenser:
- Bulkoperasjoner: 15 kontakter per bulkforespørsel
- Hendelsesinnsending: 500 hendelser/sekund per arbeidsområde
- Webhook-levering: Automatisk retry i 24 timer
- Dataeksport: 1 samtidig eksport
Ratebegrensningsrespons
Intercom returnerer 429 Too Many Requests med en Retry-After-header. Implementer eksponentiell backoff og respekter retry-vinduet.
Feilsøking
Vanlige problemer
| Problem | Årsak | Løsning |
|---|---|---|
| 401 Unauthorized | Ugyldig eller utløpt token | Regenerer tilgangstoken i Developer Hub |
| Kontakt ikke synkronisert | Manglende e-postfelt | Intercom-leads kan mangle e-post; filtrer etter rolle |
| Samtaledata tomme | Appen mangler samtale-scope | Reautoriser med leserettigheter for samtaler |
| Webhook ikke mottatt | Webhook ikke registrert | Konfigurer webhooks i Developer Hub-innstillinger |
| API-versjons-ulikhet | Bruddendringer i ny versjon | Lås API-versjon med Intercom-Version-header |
Feilsøkingsmodus
Aktiver utvidet logging:
connectors: intercom: debug: true log_level: verbose log_webhooks: trueTest tilkobling
tajo connectors test intercom# ✓ API-tilkobling vellykket# ✓ Kontakter lesbare# ✓ Samtaler lesbare# ✓ Selskaper lesbare# ✓ Webhooks registrertBeste praksis
- Lås API-versjon - Spesifiser alltid
Intercom-Versionfor å unngå bruddendringer - Bruk search API effektivt - Bruk filtre og paginering for å redusere dataoverføring
- Synkroniser både brukere og leads - Fang hele trakten i Brevo
- Mapp samtaletagger - Bruk samtaletagger for markedsføringssegmenter etter support
- Spor egendefinerte hendelser - Send viktige produkthendelser til Intercom for atferdsmålretting
- Håndter kontaktsammenslåinger - Implementer sammenslåingslogikk for duplikatkontakter
Sikkerhet
- Tilgangstoken - Bearer-tokenautentisering for private apper
- OAuth 2.0 - Delegert autorisasjon for offentlige apper med client secret
- Webhook-verifisering - HMAC SHA-1-signaturvalidering via
X-Hub-Signature - TLS-kryptering - All API-kommunikasjon kryptert via HTTPS
- Datatilgangskontroll - Granulær datatilgang per app-konfigurasjon