Přejít na hlavní obsah

Přehled

Twenty poskytuje pro programový import dat jak GraphQL, tak REST API. API použijte, když import CSV není vzhledem k objemu vašich dat praktický, nebo když potřebujete automatizované, opakované importy.

Kdy použít import přes API

ScénářDoporučená metoda
Méně než 10 000 záznamůImport CSV
10 000–50 000 záznamůImport CSV (rozdělený do souborů)
50 000+ záznamůImport přes API
Jednorázová migraceObojí (dle objemu)
Pravidelné importyImport přes API
Synchronizace v reálném časeImport přes API
Integrace s jinými systémyImport přes API
Pro datové sady o stovkách tisíc záznamů je API výrazně rychlejší a spolehlivější než více importů CSV.

Limity rychlosti API

Twenty uplatňuje limity rychlosti, aby zajistilo stabilitu systému:
LimitHodnota
Požadavků za minutu100
Záznamů na jedno dávkové volání60
Maximální propustnost~6 000 záznamů za minutu
Naplánujte import s ohledem na tyto limity.Pro 100 000 záznamů při maximální propustnosti počítejte s přibližně 17 minutami importu. Přidejte rezervu na zpracování chyb a opakování.

Začínáme

Krok 1: Získejte svůj klíč API

  1. Přejděte do Nastavení → Vývojáři
  2. Klikněte na + Vytvořit klíč API
  3. Dejte svému klíči API výstižný název
  4. Klíč API si ihned zkopírujte (znovu se již nezobrazí)
  5. Uložte ho bezpečně
Chraňte svůj klíč API v tajnosti.Kdokoli s vaším klíčem API může přistupovat k datům vašeho pracovního prostoru a upravovat je. Nikdy ho neukládejte do repozitářů kódu ani jej veřejně nesdílejte.

Krok 2: Vyberte si API

Twenty podporuje dva typy API:
APIVhodné proDokumentace
GraphQLFlexibilní dotazy, získávání souvisejících dat, komplexní operaceDokumentace API
RESTJednoduché CRUD operace, známé postupy RESTDokumentace API
Obě API podporují:
  • Vytváření, čtení, aktualizace a mazání záznamů
  • Dávkové operace — vytvoření nebo aktualizace až 60 záznamů na jedno volání
Pro importy používejte dávkové operace, abyste maximalizovali propustnost v rámci limitů rychlosti.

Krok 3: Naplánujte pořadí importu

Stejně jako u importů CSV na pořadí záleží kvůli vazbám:
  1. Společnosti jako první (bez závislostí)
  2. Lidé jako druzí (mohou se propojit se společnostmi)
  3. Příležitosti jako třetí (mohou se propojit se společnostmi a lidmi)
  4. Úkoly/Poznámky (mohou se propojit s kteroukoli z výše uvedených entit)
  5. Vlastní objekty (podle jejich závislostí)

Osvědčené postupy

Dávkujte své požadavky

  • Neposílejte záznamy po jednom
  • Seskupte až 60 záznamů na jedno volání API
  • Tím maximalizujete propustnost v rámci limitů rychlosti

Práce s limity rychlosti

  • Zaveďte prodlevy mezi požadavky (minimálně 600 ms pro dlouhodobé importy)
  • Při dosažení limitů použijte exponenciální backoff
  • Sledujte odpovědi 429 (Too Many Requests)

Nejprve ověřte data

  • Před importem data vyčistěte a ověřte
  • Zkontrolujte, že jsou vyplněna povinná pole
  • Ověřte, že formáty odpovídají požadavkům Twenty (viz Mapování polí)

Zaznamenávejte vše

  • Zaznamenávejte každý importovaný záznam (včetně ID)
  • Zaznamenávejte chyby s plným kontextem
  • To pomáhá při ladění problémů a ověření dokončení

Nejprve testujte

  • Testujte s malou dávkou (10–20 záznamů)
  • Ověřte, že se data v Twenty zobrazují správně
  • Poté spusťte celý import

Upsert pro zamezení duplicit

GraphQL API podporuje dávkový upsert — pokud záznam existuje, aktualizuje; pokud ne, vytvoří. To zabrání duplicitám při opakovaném spouštění importů.

Hledání názvů objektů a polí

Chcete-li zobrazit dostupné objekty a pole:
  1. Přejděte do Nastavení → API a webhooky
  2. Procházejte Metadata API
  3. Zobrazte všechny standardní i vlastní objekty s jejich poli
Dokumentace uvádí všechny standardní i vlastní objekty, jejich pole a očekávané datové typy.

Profesionální služby

S náročnými migracemi přes API mohou pomoci naši partneři:
SlužbaCo je součástí
Návrh datového modelunavrhnout optimální datovou strukturu
Migrační skriptynapsat a spustit importní skripty
Transformace datzpracovat složité mapování a čištění
Validace a QAověřit, že je migrace dokončená
Vhodné pro:
  • Migrace 100 000+ záznamů
  • Složité transformace dat
  • Napjaté časové plány
  • Týmy bez vývojářských kapacit
Kontaktujte nás na contact@twenty.com nebo prozkoumejte naše Implementační služby.

Časté dotazy

GraphQL vám umožní vyžádat si v jediném dotazu přesně ta data, která potřebujete, a je vhodnější pro složité operace. REST používá standardní metody HTTP (GET, POST, PUT, DELETE) a může vám být bližší, pokud jste pracovali s tradičními API.
Ano! Použijte aktualizační mutace (GraphQL) nebo požadavky PUT/PATCH (REST) s id záznamu.
Nejprve vyhledejte existující záznamy pomocí jedinečných identifikátorů (e-mail, doména). Pokud existuje, aktualizujte; pokud ne, vytvořte.
Ano, použijte mutace pro smazání (GraphQL) nebo požadavky DELETE (REST).
V současnosti ne, ale obě API fungují s jakýmkoli klientem HTTP v libovolném jazyce.

Dokumentace API

Úplné podrobnosti implementace, ukázky kódu a referenci schématu najdete zde: