Intercom Connector

Poveži delovni prostor Intercom z Brevo prek Tajo za enotno sporočanje s strankami, sledenje pogovorom in marketinško avtomatizacijo na osnovi angažiranosti, ki jo napajajo tvoji podatki podpore in produkta.

Pregled

LastnostVrednost
PlatformaIntercom
KategorijaSupport
Zahtevnost nastavitveSrednja
Uradna integracijaDa
Sinhronizirani podatkiStiki, pogovori, podjetja, dogodki
Osnovni URL APIhttps://api.intercom.io

Funkcionalnosti

  • Sinhronizacija stikov – dvosmerna sinhronizacija uporabnikov in potencialnih strank Intercom s stiki Brevo
  • Sledenje pogovorom – sinhroniziraj podatke pogovorov za segmentacijo na osnovi podpore
  • Preslikava podjetij – povezi stike s podjetji za delovne tokove na osnovi računov
  • Atributi po meri – preslikaj atribute po meri Intercom v polja stikov Brevo
  • Sledenje dogodkom – sinhroniziraj dogodke po meri in aktivnosti uporabnikov za vedenjsko ciljanje
  • Sinhronizacija oznak – preslikaj oznake Intercom v članstvo v seznamih Brevo ali atribute
  • Podatki Messenger – sledi angažiranosti sporočanja v aplikaciji in interakcijam pogovora
  • Integracija agenta AI – sinhroniziraj izide pogovorov agenta AI z Brevo

Predpogoji

Preden začneš, se prepričaj, da imaš:

  1. Delovni prostor Intercom (plan Starter, Pro ali Premium)
  2. Aplikacijo Intercom z žetonom za dostop (zasebna aplikacija) ali konfigurirano OAuth (javna aplikacija)
  3. Brevo račun z dostopom do API
  4. Tajo račun

Avtentikacija

Žeton za dostop (zasebna aplikacija)

Za zasebne integracije, ki dostopajo do podatkov tvojega lastnega delovnega prostora.

  1. Pojdi na Developer Hub > Your Apps > Create new app
  2. Povezi z delovnim prostorom Intercom
  3. Kopiraj žeton za dostop
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, ki dostopajo do podatkov Intercom drugih strank.

Terminal window
# Authorization URL
https://app.intercom.com/oauth?client_id={client_id}&state={state}
# Token exchange
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

V svoje zahtevke vedno vključi glavo Intercom-Version. Tajo privzeto uporablja API različico 2.11. Preveri dnevnik sprememb Intercom za naslednje spremembe.

Konfiguracija

Osnovna nastavitev

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: 37

Preslikava polj

Preslikaj podatke stikov Intercom v atribute stikov Brevo:

Privzete preslikave

Parameter Type Description
email required
string

E-mailni naslov stika (enolični identifikator)

name optional
string

Polno ime, razdeli v FIRSTNAME/LASTNAME

phone optional
string

Preslika se v atribut SMS za WhatsApp/SMS

role optional
string

Vrsta stika: user (uporabnik) ali lead (potencialna stranka)

company.name optional
string

Ime povezanega podjetja

signed_up_at optional
timestamp

Datum registracije uporabnika

last_seen_at optional
timestamp

Časovni žig zadnje aktivnosti

custom_attributes optional
object

Pari ključ-vrednost atributov po meri

Preslikava atributov po meri

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_USAGE

Končne točke API

Contacts API

MetodaKončna točkaOpis
GET/contactsSeznam vseh stikov
POST/contactsUstvarjanje stika
PUT/contacts/{id}Posodobi stik
GET/contacts/{id}Pridobi stik
POST/contacts/searchIskanje stikov
DELETE/contacts/{id}Arhiviraj stik

Conversations API

MetodaKončna točkaOpis
GET/conversationsSeznam pogovorov
GET/conversations/{id}Pridobi pogovor
POST/conversationsUstvarjanje pogovora
POST/conversations/{id}/replyOdgovori na pogovor
POST/conversations/{id}/partsDodaj del pogovora

Companies API

MetodaKončna točkaOpis
GET/companiesSeznam podjetij
POST/companiesUstvari ali posodobi podjetje
GET/companies/{id}Pridobi podjetje
GET/companies/{id}/contactsSeznam stikov podjetja

Events API

MetodaKončna točkaOpis
POST/eventsPošlji dogodek
GET/events?type=user&intercom_user_id={id}Seznam dogodkov uporabnika

Dogodki

Dogodki pogovorov

DogodekSprožilecPrimer uporabe
conversation.createdZačet nov pogovorOpozorilo o zahtevku za podporo
conversation.closedPogovor rešenSprožitev ankete CSAT
conversation.rating.addedOddana ocenaSledenje zadovoljstvu
conversation.snoozedPogovor odloženNačrtovanje nadaljnjega ukrepanja

Dogodki stikov

DogodekSprožilecPrimer uporabe
contact.createdDodan nov stikPozdravno zaporedje
contact.updatedSpremenjeni podatki stikaSinhronizacija atributov
contact.deletedStik arhiviranČiščenje
contact.tag.createdOznaka dodana stikuPosodobitev segmenta

Dogodki uporabnikov

DogodekSprožilecPrimer uporabe
user.createdRegistriran nov uporabnikTok uvajanja
user.email.updatedSpremenjen e-mailZdruževanje stikov
user.unsubscribedOdjava od e-mailovPosodobitev nastavitev

Primeri kode

Inicializacija konektorja

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

Sinhronizacija stikov in pogovorov

// Full sync of contacts and conversation data
await tajo.connectors.sync('intercom', {
type: 'full',
resources: ['contacts', 'conversations', 'companies'],
since: '2023-01-01'
});
// Check sync status
const status = await tajo.connectors.status('intercom');
console.log(status);
// {
// connected: true,
// lastSync: '2024-01-15T10:30:00Z',
// contactsSynced: 14200,
// conversationsSynced: 28400,
// companiesSynced: 2100
// }

Obravnava webhooks Intercom

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

Omejitve hitrosti

Intercom uveljavlja omejitve hitrosti glede na tvoj plan:

PlanOmejitev hitrostiPodrobnosti
Starter20 zahtevkov/10 sekundNa aplikacijo
Pro50 zahtevkov/10 sekundNa aplikacijo
Premium100 zahtevkov/10 sekundNa aplikacijo
Končna točka iskanja1 zahtevek/sekundoNa aplikacijo
Končna točka drsenja1 zahtevek/minutoNa aplikacijo

Dodatne omejitve:

  • Množične operacije: 15 stikov na množičen zahtevek
  • Pošiljanje dogodkov: 500 dogodkov/sekundo na delovni prostor
  • Dostava webhooks: Samodejni ponovni poskus 24 ur
  • Izvoz podatkov: 1 vzporeden izvoz

Odgovor na omejitev hitrosti

Intercom vrne 429 Too Many Requests z glavo Retry-After. Implementiraj eksponentni odlog in upoštevaj okno ponovnega poskusa.

Odpravljanje težav

Pogoste težave

TežavaVzrokRešitev
401 UnauthorizedNeveljaven ali potekel žetonZnova ustvari žeton za dostop v Developer Hub
Stik ni sinhroniziranManjkajoče polje e-mailPotencialne stranke Intercom morda nimajo e-maila; filtriraj po vlogi
Podatki pogovorov prazniAplikacija nima obsega pogovoraZnova avtoriziraj z dovoljenji za branje pogovorov
Webhook ni prejetWebhook ni registriranNastavi webhooks v nastavitvah Developer Hub
Neujemanje različice APISpremembe v novi različiciPripni različico API z glavo Intercom-Version

Način odpravljanja napak

Omogoči podrobno beleženje:

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

Preizkus povezave

Terminal window
tajo connectors test intercom
# ✓ API connection successful
# ✓ Contacts readable
# ✓ Conversations readable
# ✓ Companies readable
# ✓ Webhooks registered

Najboljše prakse

  1. Pripni različico API – vedno navedi Intercom-Version, da se izogneš naslednjim spremembam
  2. Učinkovito uporabljaj Search API – za zmanjšanje prenosa podatkov uporabi filtre in paginacijo
  3. Sinhroniziraj tako uporabnike kot potencialne stranke – zajemi celoten lijak v Brevo
  4. Preslikaj oznake pogovorov – oznake pogovorov uporabi za segmente marketinga po podpori
  5. Sledi dogodkom po meri – ključne produktne dogodke pošlji v Intercom za vedenjsko ciljanje
  6. Obravnavaj združevanje stikov – implementiraj logiko združevanja za podvojene stike

Varnost

  • Žeton za dostop – avtentikacija z žetonom Bearer za zasebne aplikacije
  • OAuth 2.0 – delegirana avtorizacija za javne aplikacije s skrivnostjo odjemalca
  • Preverjanje webhooks – preverjanje podpisa HMAC SHA-1 prek X-Hub-Signature
  • TLS šifriranje – vsa komunikacija API šifrirana prek HTTPS
  • Nadzor dostopa do podatkov – granularni dostop do podatkov na konfiguracijo aplikacije

Povezani viri

Subscribe to updates

developer-docs

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

auto-detect
AI pomočnik

Živjo! Vprašajte me o dokumentaciji.