Intercom Konektor

Povežite vaš Intercom radni prostor s Brevom putem Taja za ujedinjeno korisničko dopisivanje, praćenje razgovora i marketinšku automatizaciju vođenu angažmanom na temelju vaših podataka o podršci i proizvodu.

Pregled

SvojstvoVrijednost
PlatformaIntercom
KategorijaPodrška
Složenost postavljanjaSrednje
Službena integracijaDa
Sinkronizirani podaciKontakti, Razgovori, Tvrtke, Događaji
Osnovni URL API-jahttps://api.intercom.io

Značajke

  • Sinkronizacija kontakata - Dvosmjerna sinkronizacija Intercom korisnika i potencijalnih klijenata s Brevo kontaktima
  • Praćenje razgovora - Sinkronizacija podataka o razgovorima za segmentaciju vođenu podrškom
  • Mapiranje tvrtki - Povezivanje kontakata s tvrtkama za tijekove rada temeljene na računima
  • Prilagođeni atributi - Mapiranje Intercom prilagođenih atributa na Brevo polja kontakata
  • Praćenje događaja - Sinkronizacija prilagođenih događaja i aktivnosti korisnika za bihevioralno ciljanje
  • Sinkronizacija oznaka - Mapiranje Intercom oznaka na Brevo članstva na popisu ili atribute
  • Podaci Messengera - Praćenje angažmana u aplikacijskom dopisivanju i chat interakcija
  • Integracija AI agenta - Sinkronizacija ishoda razgovora s AI agentom s Brevom

Preduvjeti

Prije nego što počnete, osigurajte da imate:

  1. Intercom radni prostor (Starter, Pro ili Premium plan)
  2. Intercom aplikaciju s pristupnim tokenom (privatna aplikacija) ili konfiguriran OAuth (javna aplikacija)
  3. Brevo račun s API pristupom
  4. Tajo račun

Autentifikacija

Pristupni token (privatna aplikacija)

Za privatne integracije koje pristupaju podacima vašeg radnog prostora.

  1. Idite na Developer Hub > Vaše aplikacije > Kreiraj novu aplikaciju
  2. Povežite s vašim Intercom radnim prostorom
  3. Kopirajte pristupni token
Terminal window
curl https://api.intercom.io/contacts \
-H "Authorization: Bearer {access_token}" \
-H "Content-Type: application/json" \
-H "Intercom-Version: 2.11"

OAuth 2.0 (javna aplikacija)

Za integracije koje pristupaju Intercom podacima других kupaca.

Terminal window
# URL za autorizaciju
https://app.intercom.com/oauth?client_id={client_id}&state={state}
# Razmjena tokena
curl -X POST https://api.intercom.io/auth/eagle/token \
-d "client_id={client_id}" \
-d "client_secret={client_secret}" \
-d "code={auth_code}"

Verzioniranje API-ja

Uvijek uključite zaglavlje Intercom-Version u vaše zahtjeve. Tajo po zadanom koristi API verziju 2.11. Provjerite Intercom dnevnik promjena za lomljive promjene.

Konfiguracija

Osnovna konfiguracija

connectors:
intercom:
enabled: true
access_token: "${INTERCOM_ACCESS_TOKEN}"
api_version: "2.11"
# Opcije sinkronizacije podataka
sync:
contacts: true
conversations: true
companies: true
events: true
tags: true
# Smjer sinkronizacije
direction: intercom_to_brevo
# Dodjela Brevo popisa
lists:
all_users: 35
active_conversations: 36
leads: 37

Mapiranje polja

Mapirajte podatke Intercom kontakata na Brevo atribute kontakata:

Zadana mapiranja

Parameter Type Description
email required
string

E-mail adresa kontakta (jedinstveni identifikator)

name optional
string

Puno ime, podijeljeno na FIRSTNAME/LASTNAME

phone optional
string

Mapira se na SMS atribut za WhatsApp/SMS

role optional
string

Vrsta kontakta: korisnik ili potencijalni klijent

company.name optional
string

Naziv povezane tvrtke

signed_up_at optional
timestamp

Datum registracije korisnika

last_seen_at optional
timestamp

Vremenska oznaka zadnje aktivnosti

custom_attributes optional
object

Parovi ključ-vrijednost prilagođenih atributa

Mapiranje prilagođenih atributa

field_mapping:
# Standardna polja
email: email
name: FULLNAME
phone: SMS
# Polja angažmana
signed_up_at: SIGNUP_DATE
last_seen_at: LAST_ACTIVE
session_count: SESSION_COUNT
unsubscribed_from_emails: UNSUBSCRIBED
# Polja tvrtke
company.name: COMPANY_NAME
company.plan: COMPANY_PLAN
company.size: COMPANY_SIZE
# Prilagođeni atributi
custom_attributes.plan_tier: PLAN_TIER
custom_attributes.feature_usage: FEATURE_USAGE

API krajnje točke

API kontakata

MetodaKrajnja točkaOpis
GET/contactsPopis svih kontakata
POST/contactsKreiraj kontakt
PUT/contacts/{id}Ažuriraj kontakt
GET/contacts/{id}Dohvati kontakt
POST/contacts/searchPretraži kontakte
DELETE/contacts/{id}Arhiviraj kontakt

API razgovora

MetodaKrajnja točkaOpis
GET/conversationsPopis razgovora
GET/conversations/{id}Dohvati razgovor
POST/conversationsKreiraj razgovor
POST/conversations/{id}/replyOdgovori na razgovor
POST/conversations/{id}/partsDodaj dio razgovora

API tvrtki

MetodaKrajnja točkaOpis
GET/companiesPopis tvrtki
POST/companiesKreiraj ili ažuriraj tvrtku
GET/companies/{id}Dohvati tvrtku
GET/companies/{id}/contactsPopis kontakata tvrtke

API događaja

MetodaKrajnja točkaOpis
POST/eventsPošalji događaj
GET/events?type=user&intercom_user_id={id}Popis korisničkih događaja

Događaji

Događaji razgovora

DogađajOkidačSlučaj upotrebe
conversation.createdPokrenut novi razgovorUpozorenje za zahtjev podrške
conversation.closedRazgovor riješenOkidač CSAT ankete
conversation.rating.addedDostavljeno ocjenjivanjePraćenje zadovoljstva
conversation.snoozedRazgovor odgođenZakazivanje praćenja

Događaji kontakata

DogađajOkidačSlučaj upotrebe
contact.createdDodan novi kontaktSekvenca dobrodošlice
contact.updatedPromijenjeni podaci kontaktaSinkronizacija atributa
contact.deletedArhiviran kontaktČišćenje
contact.tag.createdOznaka dodana kontaktuAžuriranje segmenta

Korisnički događaji

DogađajOkidačSlučaj upotrebe
user.createdNovi korisnik registriranTijek onboardinga
user.email.updatedE-mail promijenjenSpajanje kontakta
user.unsubscribedOdjavio se od e-mailovaAžuriranje preferencija

Primjeri koda

Inicijalizacija konektora

import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({
apiKey: process.env.TAJO_API_KEY,
brevoApiKey: process.env.BREVO_API_KEY
});
// Povežite Intercom
await tajo.connectors.connect('intercom', {
accessToken: process.env.INTERCOM_ACCESS_TOKEN,
apiVersion: '2.11'
});

Sinkronizacija kontakata i razgovora

// Potpuna sinkronizacija kontakata i podataka o razgovorima
await tajo.connectors.sync('intercom', {
type: 'full',
resources: ['contacts', 'conversations', 'companies'],
since: '2023-01-01'
});
// Provjera statusa sinkronizacije
const status = await tajo.connectors.status('intercom');
console.log(status);
// {
// connected: true,
// lastSync: '2024-01-15T10:30:00Z',
// contactsSynced: 14200,
// conversationsSynced: 28400,
// companiesSynced: 2100
// }

Rukovanje Intercom webhookovima

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');
});

Ograničenja brzine

Intercom primjenjuje ograničenja brzine na temelju vašeg plana:

PlanOgraničenje brzineDetalji
Starter20 zahtjeva/10 sekundiPo aplikaciji
Pro50 zahtjeva/10 sekundiPo aplikaciji
Premium100 zahtjeva/10 sekundiPo aplikaciji
Krajnja točka za pretraživanje1 zahtjev/sekundaPo aplikaciji
Krajnja točka za pomicanje1 zahtjev/minutaPo aplikaciji

Dodatna ograničenja:

  • Skupne operacije: 15 kontakata po skupnom zahtjevu
  • Slanje događaja: 500 događaja/sekundi po radnom prostoru
  • Dostava webhookova: Automatski ponovni pokušaj 24 sata
  • Izvoz podataka: 1 istovremeni izvoz

Odgovor na ograničenje brzine

Intercom vraća 429 Too Many Requests sa zaglavljem Retry-After. Implementirajte eksponencijalni povratak i poštujte prozor ponovnog pokušaja.

Rješavanje problema

Uobičajeni problemi

ProblemUzrokRješenje
401 UnauthorizedNevažeći ili istekli tokenRegenerirajte pristupni token u Developer Hubu
Kontakt nije sinkroniziranNedostaje polje e-mailaIntercom potencijalni klijenti mogu nemati e-mail; filtrirajte po ulozi
Podaci o razgovorima prazniAplikacija nema opseg razgovoraReautorizirajte s dozvolama čitanja razgovora
Webhook nije primljenWebhook nije registriranKonfigurirajte webhookove u postavkama Developer Huba
Nepodudaranje verzije API-jaLomljive promjene u novoj verzijiZaključajte verziju API-ja zaglavljem Intercom-Version

Način otklanjanja grešaka

Omogućite detaljno zapisivanje:

connectors:
intercom:
debug: true
log_level: verbose
log_webhooks: true

Testiranje veze

Terminal window
tajo connectors test intercom
# ✓ API veza uspješna
# ✓ Kontakti čitljivi
# ✓ Razgovori čitljivi
# ✓ Tvrtke čitljive
# ✓ Webhookovi registrirani

Preporučene prakse

  1. Zaključajte verziju API-ja - Uvijek navedite Intercom-Version kako biste izbjegli lomljive promjene
  2. Učinkovito koristite Search API - Koristite filtre i paginaciju za smanjenje prijenosa podataka
  3. Sinkronizirajte i korisnike i potencijalne klijente - Snimite cijeli lijevak u Brevo
  4. Mapirajte oznake razgovora - Koristite oznake razgovora za segmente post-podrške marketinga
  5. Pratite prilagođene događaje - Pošaljite ključne događaje proizvoda Intercomu za bihevioralno ciljanje
  6. Rukujte spajanjima kontakata - Implementirajte logiku spajanja za duplikat kontakte

Sigurnost

  • Pristupni token - Bearer token autentifikacija za privatne aplikacije
  • OAuth 2.0 - Delegirana autorizacija za javne aplikacije s tajnom klijenta
  • Verifikacija webhookova - HMAC SHA-1 provjera potpisa putem X-Hub-Signature
  • TLS šifriranje - Sva API komunikacija šifrirana putem HTTPS-a
  • Kontrole pristupa podacima - Granularni pristup podacima po konfiguraciji aplikacije

Povezani resursi

Subscribe to updates

developer-docs

Drop your email or phone number — we'll send you what matters next.

auto-detect
AI asistent

Bok! Pitajte me o dokumentaciji.