Notion konnektor
Csatlakoztasd a Notion munkaterületedet a Brevóhoz tartalomalapú marketing munkafolyamatokhoz, CRM adatbázis-szinkronizáláshoz és automatizált értesítésekhez a Tajo segítségével.
Áttekintés
| Tulajdonság | Érték |
|---|---|
| Platform | Notion |
| Kategória | Egyéni |
| Telepítés bonyolultsága | Könnyű |
| Hivatalos integráció | Nem |
| Szinkronizált adatok | Adatbázisok, Oldalak, Felhasználók |
| API típus | REST API |
| Hitelesítés | Belső integrációs token / OAuth 2.0 |
| Alap URL | https://api.notion.com |
| API verzió | 2022-06-28 (a Notion-Version fejléc alapján) |
Funkciók
- Adatbázis-szinkronizáció – Notion adatbázis-bejegyzések szinkronizálása Brevo kapcsolatokba és listákba
- CRM híd – Notion adatbázisok könnyű CRM-ként való használata, szinkronizálva a Brevóval
- Tartalom-értesítések – Brevo kampányok indítása Notion oldalak közzétételekor
- Tulajdonság-leképezés – Notion adatbázis-tulajdonságok leképezése Brevo kapcsolat-attribútumokhoz
- Oldal-figyelés – Oldalfrissítések követése és továbbítása Brevo eseményekként
- Felhasználói könyvtár-szinkronizáció – Notion munkaterület tagok szinkronizálása Brevo kapcsolatokba
Előfeltételek
Mielőtt elkezdenéd, győződj meg róla, hogy rendelkezel:
- Egy Notion munkaterülettel adminisztrátori hozzáféréssel
- Egy Notion belső integrációval vagy OAuth alkalmazással
- Az integrációval megosztott adatbázis-oldalakkal
- Egy Brevo fiókkal API-hozzáféréssel
- Egy Tajo fiókkal aktív előfizetéssel
Hitelesítés
A Notion két hitelesítési módszert támogat.
1. lehetőség: Belső integráció (egyetlen munkaterülethez ajánlott)
- Menj a notion.so/my-integrations oldalra
- Kattints a New integration gombra
- Nevezd el „Tajo Integration”-nek
- Válaszd ki a munkaterületedet
- Állítsd be a képességeket:
Content Capabilities: Read content: ✓ Update content: ✓ Insert content: ✓
User Capabilities: Read user information: ✓- Másold ki a Internal Integration Secret kódot (ntn_-nel kezdődik)
Oldal megosztás szükséges
A belső integrációk csak az azokkal explicit módon megosztott oldalakhoz és adatbázisokhoz férhetnek hozzá. Oszd meg minden célzott adatbázist az integrációddal a ”…” menü > “Connections” > integráció kiválasztása útján.
2. lehetőség: OAuth 2.0 (nyilvános integrációk)
Több munkaterületet kiszolgáló integrációkhoz használd az OAuth 2.0 folyamot:
- Regisztráld az integrációdat nyilvános integrációként
- Irányítsd a felhasználókat ide:
https://api.notion.com/v1/oauth/authorize?client_id=... - Cseréld ki a kódot hozzáférési tokenre a
/v1/oauth/tokenvégponton
Csatlakozás a Tajóhoz
tajo connectors install notion \ --token $NOTION_TOKENKonfiguráció
Alapbeállítás
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: 26Mezőleképezés
Képezd le a Notion adatbázis-tulajdonságokat Brevo kapcsolat-attribútumokhoz:
field_mapping: # Notion property -> Brevo attribute 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: TAGSAPI végpontok
A Tajo az alábbi Notion API végpontokkal integrálódik:
| Végpont | Módszer | Cél |
|---|---|---|
/v1/databases/{id}/query | POST | Adatbázis-bejegyzések lekérdezése |
/v1/databases/{id} | GET | Adatbázis-séma lekérése |
/v1/pages | POST | Új oldal létrehozása |
/v1/pages/{id} | GET | Oldal tulajdonságainak lekérése |
/v1/pages/{id} | PATCH | Oldal tulajdonságainak frissítése |
/v1/blocks/{id}/children | GET | Blokk gyermekek lekérése |
/v1/users | GET | Az összes munkaterület-felhasználó listázása |
/v1/users/{id} | GET | Felhasználó lekérése |
/v1/search | POST | Keresés a munkaterületen |
Kódpéldák
A konnektor inicializálása
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});Adatbázis szinkronizálása a Brevóba
// Sync a Notion database to a Brevo listawait 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// }Lekérdezés és szűrés
// Query Notion database with filtersconst results = await tajo.connectors.query('notion', { databaseId: 'abc123def456', filter: { property: 'Status', select: { equals: 'Active' } }, sorts: [ { property: 'Last Contact', direction: 'descending' } ]});Oldal létrehozása Brevo eseményből
// Create a Notion page when a Brevo contact reaches a milestonetajo.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() } } } }); }});Ráta-korlátok
A Notion integrációnként alkalmaz ráta-korlátokat:
| Korlát típusa | Érték |
|---|---|
| Ráta-korlát | 3 kérés/másodperc integrációnként |
| Burst korlát | Rövid burst megengedett, majd szabályozás |
| Oldal mérete | Max. 100 elem oldalazott kérésenként |
Kurzor alapú oldalazás
A Notion kurzor alapú oldalazást használ. A Tajo ezt automatikusan kezeli, iterálva az összes oldalon a next_cursor paraméter segítségével, amíg a has_more hamis értéket nem ad vissza.
A Notion 429 Too Many Requests választ ad vissza a ráta-korlátok túllépésekor, a Retry-After fejléccel.
Hibaelhárítás
Gyakori problémák
| Probléma | Ok | Megoldás |
|---|---|---|
| 401 Unauthorized | Érvénytelen vagy lejárt token | Generáld újra az integrációs tokent |
| 403 Forbidden | Az oldal nincs megosztva az integrációval | Oszd meg az oldalt/adatbázist az integrációval a Connections menüponton keresztül |
| 404 Object not found | Helytelen adatbázis azonosító vagy nincs megosztva | Ellenőrizd az adatbázis azonosítót és a megosztási beállításokat |
| Hiányzó tulajdonságok | Séma eltérés | Szinkronizáld újra az adatbázis-sémát és frissítsd a mezőleképezést |
| Ráta-korlát túllépve | Túl sok gyors kérés | Csökkentsd a szinkronizálás gyakoriságát vagy a köteg méretét |
Hibakeresési mód
connectors: notion: debug: true log_level: verbose log_api_calls: trueKapcsolat tesztelése
tajo connectors test notion# ✓ API authentication successful# ✓ Database access verified# ✓ User list accessible# ✓ Search operational# ✓ Page creation availableLegjobb gyakorlatok
- Oszd meg explicit módon az adatbázisokat – A belső integrációk csak a megosztott tartalmakat látják
- Adatbázis lekérdezéseket használj keresés helyett – Az ismert adatbázisokhoz a lekérdezések gyorsabbak és megbízhatóbbak
- Gondosan képezd le a tulajdonság típusokat – A Notionnak sok tulajdonság típusa van; illesszd össze ezeket a Brevo attribútum típusokkal
- Kezelj oldalazást – Mindig iterálj az összes kurzoros oldalon a teljes adatokért
- Szinkronizálj növekményesen – Csak a módosított bejegyzések szinkronizálásához használj
last_edited_timeszűrőket - Állíts be lekérdezési ütemezést – A Notion nem támogatja natívan a webhookokat; rendszeres időközönként kérdezz le
Biztonság
- Bearer Token hitelesítés – Integrációs titkok és OAuth tokenek
- Csak HTTPS – Minden API kommunikáció TLS 1.2+-on keresztül titkosítva
- Hatókörrel korlátozott hozzáférés – Az integrációk csak az explicit módon megosztott tartalmakhoz férnek hozzá
- OAuth 2.0 – Biztonságos engedélyezési folyam nyilvános integrációkhoz
- Titkosított tárolás – A tokenek titkosítva tárolódnak a Tajóban
- Munkaterület izoláció – Minden integráció egyetlen munkaterületre korlátozott