Notion Konektor

Povežite svoj Notion radni prostor s Brevom za marketinške tijekove rada pokretane sadržajem, sinkronizaciju CRM baze podataka i automatizirane obavijesti putem Taja.

Pregled

SvojstvoVrijednost
PlatformaNotion
KategorijaPrilagođeno
Složenost postavljanjaJednostavno
Službena integracijaNe
Sinkronizirani podaciBaze podataka, Stranice, Korisnici
Vrsta API-jaREST API
AutentifikacijaInternal Integration Token / OAuth 2.0
Osnovni URLhttps://api.notion.com
Verzija API-ja2022-06-28 (putem zaglavlja Notion-Version)

Značajke

  • Sinkronizacija baze podataka - Sinkronizirajte unose Notion baze podataka s Brevo kontaktima i popisima
  • CRM most - Koristite Notion baze podataka kao lagani CRM, sinkroniziran s Brevom
  • Obavijesti o sadržaju - Pokrećite Brevo kampanje kada su Notion stranice objavljene
  • Mapiranje svojstava - Mapirajte Notion svojstva baze podataka na Brevo atribute kontakata
  • Praćenje stranica - Pratite ažuriranja stranica i prosljeđujte kao Brevo događaje
  • Sinkronizacija korisničkog direktorija - Sinkronizirajte članove Notion radnog prostora s Brevo kontaktima

Preduvjeti

Prije nego što počnete, osigurajte da imate:

  1. Notion radni prostor s administratorskim pristupom
  2. Notion internu integraciju ili OAuth aplikaciju
  3. Stranice baze podataka dijeljene s integracijom
  4. Brevo račun s API pristupom
  5. Tajo račun s aktivnom pretplatom

Autentifikacija

Notion podržava dvije metode autentifikacije.

Opcija 1: Interna integracija (Preporučeno za jedan radni prostor)

  1. Idite na notion.so/my-integrations
  2. Kliknite New integration
  3. Nazovite je “Tajo Integration”
  4. Odaberite svoj radni prostor
  5. Postavite mogućnosti:
Mogućnosti sadržaja:
Čitanje sadržaja: ✓
Ažuriranje sadržaja: ✓
Umetanje sadržaja: ✓
Mogućnosti korisnika:
Čitanje korisničkih informacija: ✓
  1. Kopirajte Internal Integration Secret (počinje s ntn_)

Dijeljenje stranica je obavezno

Interne integracije mogu pristupiti samo stranicama i bazama podataka eksplicitno dijeljenim s njima. Podijelite svaku ciljnu bazu podataka s vašom integracijom putem izbornika ”…” > “Connections” > odaberite svoju integraciju.

Opcija 2: OAuth 2.0 (Javne integracije)

Za integracije koje opslužuju više radnih prostora, koristite OAuth 2.0 tok:

  1. Registrirajte svoju integraciju kao javnu integraciju
  2. Preusmjerite korisnike na: https://api.notion.com/v1/oauth/authorize?client_id=...
  3. Zamijenite kod za token za pristup na /v1/oauth/token

Povezivanje s Tajom

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

Konfiguracija

Osnovna konfiguracija

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

Mapiranje polja

Mapirajte Notion svojstva baze podataka na Brevo atribute kontakata:

field_mapping:
# Notion svojstvo -> Brevo atribut
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

API krajnje točke

Tajo se integrira sa sljedećim Notion API krajnjim točkama:

Krajnja točkaMetodaNamjena
/v1/databases/{id}/queryPOSTUpit unosa baze podataka
/v1/databases/{id}GETDohvaćanje sheme baze podataka
/v1/pagesPOSTStvaranje nove stranice
/v1/pages/{id}GETDohvaćanje svojstava stranice
/v1/pages/{id}PATCHAžuriranje svojstava stranice
/v1/blocks/{id}/childrenGETDohvaćanje djece bloka
/v1/usersGETPopis svih korisnika radnog prostora
/v1/users/{id}GETDohvaćanje korisnika
/v1/searchPOSTPretraživanje radnog prostora

Primjeri koda

Inicijalizacija konektora

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

Sinkronizacija baze podataka s Brevom

// Sinkronizacija Notion baze podataka s Brevo popisom
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
// }

Upit i filtriranje

// Upit Notion baze podataka s filterima
const results = await tajo.connectors.query('notion', {
databaseId: 'abc123def456',
filter: {
property: 'Status',
select: { equals: 'Active' }
},
sorts: [
{ property: 'Last Contact', direction: 'descending' }
]
});

Stvaranje stranice iz Brevo događaja

// Stvaranje Notion stranice kada Brevo kontakt dostigne prekretnicu
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() } }
}
});
}
});

Ograničenja brzine

Notion primjenjuje ograničenja brzine po integraciji:

Vrsta ograničenjaVrijednost
Ograničenje brzine3 zahtjeva po sekundi po integraciji
Ograničenje naglih skokovaKratki skokovi dopušteni, zatim ograničeno
Veličina straniceMaks. 100 stavki po paginiranom zahtjevu

Paginacija temeljena na kursoru

Notion koristi paginaciju temeljenu na kursoru. Tajo to automatski rukuje, iterirajući kroz sve stranice koristeći parametar next_cursor sve dok has_more ne vrati false.

Notion vraća 429 Too Many Requests kada su prekoračena ograničenja brzine, sa zaglavljem Retry-After.

Rješavanje problema

Uobičajeni problemi

ProblemUzrokRješenje
401 UnauthorizedNevažeći ili istekli tokenRegenerirajte token integracije
403 ForbiddenStranica nije dijeljena s integracijomPodijelite stranicu/bazu podataka s integracijom putem Connections
404 Object not foundNetočan ID baze podataka ili nije dijeljenProvjerite ID baze podataka i postavke dijeljenja
Nedostaju svojstvaNepodudarnost shemePonovo sinkronizirajte shemu baze podataka i ažurirajte mapiranje polja
Prekoračeno ograničenje brzinePreviše brzih zahtjevaSmanjite učestalost sinkronizacije ili veličinu serije

Način otklanjanja grešaka

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

Testiranje veze

Terminal window
tajo connectors test notion
# ✓ API autentifikacija uspješna
# ✓ Pristup bazi podataka potvrđen
# ✓ Popis korisnika dostupan
# ✓ Pretraživanje operativno
# ✓ Stvaranje stranica dostupno

Preporučene prakse

  1. Eksplicitno dijelite baze podataka - Interne integracije vide samo dijeljeni sadržaj
  2. Koristite upite baze podataka umjesto pretraživanja - Upiti su brži i pouzdaniji za poznate baze podataka
  3. Pažljivo mapirajte vrste svojstava - Notion ima mnogo vrsta svojstava; uskladite ih s Brevo vrstama atributa
  4. Rukujte paginacijom - Uvijek iterirajte kroz sve stranice kursora za potpune podatke
  5. Sinkronizirajte inkrementalno - Koristite filtere last_edited_time za sinkronizaciju samo promijenjenih unosa
  6. Postavite raspored anketiranja - Notion nema nativnu podršku za webhookove; anktirajte u redovitim intervalima

Sigurnost

  • Autentifikacija Bearer tokenom - Tajne integracije i OAuth tokeni
  • Samo HTTPS - Sva API komunikacija šifrirana putem TLS 1.2+
  • Opsežni pristup - Integracije pristupaju samo eksplicitno dijeljenom sadržaju
  • OAuth 2.0 - Siguran tok autorizacije za javne integracije
  • Šifrirano pohranjivanje - Tokeni šifrirani u mirovanju u Taju
  • Izolacija radnog prostora - Svaka integracija je ograničena na jedan radni prostor

Povezani resursi

Subscribe to updates

developer-docs

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

auto-detect
AI asistent

Bok! Pitajte me o dokumentaciji.