Konektor Notion

Propojte svůj pracovní prostor Notion s Brevo pro marketingové pracovní toky řízené obsahem, synchronizaci CRM databází a automatizovaná oznámení přes Tajo.

Přehled

VlastnostHodnota
PlatformaNotion
KategorieVlastní
Složitost nastaveníSnadná
Oficiální integraceNe
Synchronizovaná dataDatabáze, Stránky, Uživatelé
Typ APIREST API
OvěřeníToken interní integrace / OAuth 2.0
Základní URLhttps://api.notion.com
Verze API2022-06-28 (přes hlavičku Notion-Version)

Funkce

  • Synchronizace databází – Synchronizujte záznamy databází Notion do kontaktů a seznamů Brevo
  • CRM most – Používejte databáze Notion jako lehký CRM synchronizovaný s Brevo
  • Notifikace o obsahu – Spouštějte kampaně Brevo při publikaci stránek Notion
  • Mapování vlastností – Mapujte vlastnosti databáze Notion na atributy kontaktů Brevo
  • Monitorování stránek – Sledujte aktualizace stránek a přeposílejte je jako události Brevo
  • Synchronizace uživatelského adresáře – Synchronizujte členy pracovního prostoru Notion do kontaktů Brevo

Předpoklady

Než začnete, ujistěte se, že máte:

  1. Pracovní prostor Notion s administrátorským přístupem
  2. Interní integraci Notion nebo OAuth aplikaci
  3. Databázové stránky sdílené s integrací
  4. Účet Brevo s přístupem k API
  5. Účet Tajo s aktivním předplatným

Ověření

Notion podporuje dvě metody ověřování.

Možnost 1: Interní integrace (doporučeno pro jeden pracovní prostor)

  1. Přejděte na notion.so/my-integrations
  2. Klikněte na New integration
  3. Pojmenujte ji “Tajo Integration”
  4. Vyberte svůj pracovní prostor
  5. Nastavte oprávnění:
Oprávnění obsahu:
Čtení obsahu: ✓
Aktualizace obsahu: ✓
Vkládání obsahu: ✓
Uživatelská oprávnění:
Čtení informací o uživatelích: ✓
  1. Zkopírujte Tajný klíč interní integrace (začíná ntn_)

Vyžadováno sdílení stránek

Interní integrace mají přístup pouze ke stránkám a databázím, které jsou s nimi explicitně sdíleny. Sdílejte každou cílovou databázi se svou integrací přes nabídku „…” > „Connections” > vyberte svou integraci.

Možnost 2: OAuth 2.0 (Veřejné integrace)

Pro integrace obsluhující více pracovních prostorů použijte flow OAuth 2.0:

  1. Zaregistrujte svou integraci jako veřejnou integraci
  2. Přesměrujte uživatele na: https://api.notion.com/v1/oauth/authorize?client_id=...
  3. Vyměňte kód za přístupový token na /v1/oauth/token

Připojení k Tajo

Terminal window
tajo connectors install notion \
--token $NOTION_TOKEN

Konfigurace

Základní nastavení

connectors:
notion:
enabled: true
api_version: "2022-06-28"
sync:
databases: true
pages: false
users: true
databases:
- id: "abc123def456"
name: "Customers"
sync_to_list: 25
- id: "ghi789jkl012"
name: "Leads"
sync_to_list: 26

Mapování polí

Mapujte vlastnosti databáze Notion na atributy kontaktů Brevo:

field_mapping:
# Vlastnost Notion -> Atribut Brevo
Name:
type: title
target: FIRSTNAME
Email:
type: email
target: email
Phone:
type: phone_number
target: SMS
Company:
type: rich_text
target: COMPANY
Status:
type: select
target: LEAD_STATUS
Deal Value:
type: number
target: DEAL_VALUE
Last Contact:
type: date
target: LAST_CONTACT_DATE
Tags:
type: multi_select
target: TAGS

Koncové body API

Tajo se integruje s následujícími koncovými body Notion API:

Koncový bodMetodaÚčel
/v1/databases/{id}/queryPOSTDotaz na záznamy databáze
/v1/databases/{id}GETNačtení schématu databáze
/v1/pagesPOSTVytvoření nové stránky
/v1/pages/{id}GETNačtení vlastností stránky
/v1/pages/{id}PATCHAktualizace vlastností stránky
/v1/blocks/{id}/childrenGETNačtení podřízených bloků
/v1/usersGETVýpis všech uživatelů pracovního prostoru
/v1/users/{id}GETNačtení uživatele
/v1/searchPOSTVyhledávání napříč pracovním prostorem

Příklady kódu

Inicializace konektoru

import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({
apiKey: process.env.TAJO_API_KEY,
brevoApiKey: process.env.BREVO_API_KEY
});
await tajo.connectors.connect('notion', {
token: process.env.NOTION_TOKEN
});

Synchronizace databáze do Brevo

// Synchronizace databáze Notion do seznamu Brevo
await tajo.connectors.sync('notion', {
type: 'full',
resources: ['databases'],
databaseId: 'abc123def456',
targetList: 25
});
const status = await tajo.connectors.status('notion');
console.log(status);
// {
// connected: true,
// lastSync: '2024-03-15T14:30:00Z',
// databasesSynced: 2,
// pagesTracked: 1450,
// usersCount: 32
// }

Dotaz a filtrování

// Dotaz na databázi Notion s filtry
const results = await tajo.connectors.query('notion', {
databaseId: 'abc123def456',
filter: {
property: 'Status',
select: { equals: 'Active' }
},
sorts: [
{ property: 'Last Contact', direction: 'descending' }
]
});

Vytvoření stránky z události Brevo

// Vytvoření stránky Notion, když kontakt Brevo dosáhne milníku
tajo.events.on('contact.attribute_updated', async (event) => {
if (event.attribute === 'LIFECYCLE_STAGE' && event.value === 'customer') {
await tajo.connectors.create('notion', {
databaseId: 'ghi789jkl012',
properties: {
Name: { title: [{ text: { content: event.contact.name } }] },
Email: { email: event.contact.email },
'Converted Date': { date: { start: new Date().toISOString() } }
}
});
}
});

Omezení rychlosti

Notion aplikuje omezení rychlosti na integraci:

Typ limituHodnota
Limit rychlosti3 požadavky za sekundu na integraci
Burstový limitKrátké bursts povoleny, poté omezeno
Velikost stránkyMax 100 položek na stránkovaný požadavek

Stránkování na základě kurzoru

Notion používá stránkování na základě kurzoru. Tajo to zpracovává automaticky, iteruje přes všechny stránky pomocí parametru next_cursor, dokud has_more nevrátí false.

Notion vrací 429 Too Many Requests, když jsou překročeny limity rychlosti, s hlavičkou Retry-After.

Řešení problémů

Časté problémy

ProblémPříčinaŘešení
401 UnauthorizedNeplatný nebo vypršelý tokenObnovte token integrace
403 ForbiddenStránka není sdílena s integracíSdílejte stránku/databázi s integrací přes Connections
404 Object not foundNesprávné ID databáze nebo není sdílenaOvěřte ID databáze a nastavení sdílení
Chybějící vlastnostiNeshoda schématuZnovu synchronizujte schéma databáze a aktualizujte mapování polí
Překročen limit rychlostiPříliš mnoho rychlých požadavkůSnižte frekvenci synchronizace nebo velikost dávky

Režim ladění

connectors:
notion:
debug: true
log_level: verbose
log_api_calls: true

Test připojení

Terminal window
tajo connectors test notion
# ✓ Ověření API úspěšné
# ✓ Přístup k databázi ověřen
# ✓ Seznam uživatelů přístupný
# ✓ Vyhledávání funkční
# ✓ Vytváření stránek dostupné

Osvědčené postupy

  1. Explicitně sdílejte databáze – Interní integrace vidí pouze sdílený obsah
  2. Používejte databázové dotazy místo vyhledávání – Dotazy jsou rychlejší a spolehlivější pro známé databáze
  3. Pečlivě mapujte typy vlastností – Notion má mnoho typů vlastností; slaďte je s typy atributů Brevo
  4. Zpracovávejte stránkování – Vždy iterujte přes všechny stránky kurzoru pro úplná data
  5. Synchronizujte přírůstkově – Používejte filtry last_edited_time pro synchronizaci pouze změněných záznamů
  6. Nastavte polling podle plánu – Notion nativně nepodporuje webhooky; pollujte v pravidelných intervalech

Zabezpečení

  • Ověření Bearer tokenem – Tajné klíče integrace a OAuth tokeny
  • Pouze HTTPS – Veškerá komunikace API šifrována přes TLS 1.2+
  • Rozsahový přístup – Integrace mají přístup pouze k explicitně sdílenému obsahu
  • OAuth 2.0 – Bezpečný autorizační flow pro veřejné integrace
  • Šifrované úložiště – Tokeny šifrované v klidu v Tajo
  • Izolace pracovního prostoru – Každá integrace je omezena na jeden pracovní prostor

Související zdroje

Subscribe to updates

developer-docs

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

auto-detect
AI asistent

Ahoj! Zeptejte se mě na dokumentaci.