DarhimLabs API
Migration z Intercom - data import script
Import conversations, contacts i tags z Intercom do DarhimLabs.
Migration z Intercom - data import script
Import conversations, contacts i tags z Intercom do DarhimLabs.
Kiedy tego uzyc
Uzyj tego przepisu, gdy chcesz: Przeniesc historyczne rozmowy i kontakty partiami, zachowujac external ids.
Endpoint referencyjny: POST /inbox/conversations + POST /leads.
Implementacja
Node.js
import { DarhimLabs } from "@darhimlabs/node";
const client = new DarhimLabs(process.env.DARHIMLABS_API_KEY!);
for (const item of intercomExport) await client.leads.create({ external_id: item.id, email: item.email });
Python
import os
from darhimlabs import DarhimLabs
client = DarhimLabs(api_key=os.environ["DARHIMLABS_API_KEY"])
for item in intercom_export:
client.leads.create({'external_id': item['id'], 'email': item['email']})
PHP
<?php
$client = new DarhimLabs\Client(["api_key" => $_ENV["DARHIMLABS_API_KEY"]]);
foreach ($intercomExport as $item) { $client->leads->create(['external_id' => $item['id'], 'email' => $item['email']]); }
Ruby
client = DarhimLabs::Client.new(api_key: ENV["DARHIMLABS_API_KEY"])
intercom_export.each { |item| client.leads.create(external_id: item.id, email: item.email) }
Test it
- Wykonaj request w sandboxie z kluczem
dl_test_.... - Sprawdz
X-Request-IDw odpowiedzi. - Dla webhookow uzyj Webhook Playground, zeby zobaczyc payload live.
Common pitfalls
- Importuj batchami i zapisuj checkpoint. Eksporty Intercom bywaja duze.
- Loguj
request_idievent_id, zeby support mogl odtworzyc problem. - Dla mutacji dodawaj
Idempotency-Key, szczegolnie jesli request moze byc retryowany.
Production checklist
- Dodaj retry z exponential backoff i jitterem.
- Ogranicz scopes API key do minimalnego zestawu.
- Monitoruj rate limit headers i latency P95.
- Przetestuj bledy
401,409,422i429.