Notion کنیکٹر

مواد سے چلنے والے مارکیٹنگ ورک فلوز، CRM ڈیٹا بیس سنکرونائزیشن، اور Tajo کے ذریعے خودکار اطلاعات کے لیے اپنے Notion ورک اسپیس کو Brevo سے منسلک کریں۔

جائزہ

خاصیتقدر
پلیٹ فارمNotion
زمرہحسب ضرورت
سیٹ اپ کی پیچیدگیآسان
آفیشل انٹیگریشننہیں
سنک شدہ ڈیٹاDatabases، Pages، صارفین
API قسمREST API
توثیقInternal Integration Token / OAuth 2.0
بنیادی URLhttps://api.notion.com
API ورژن2022-06-28 (Notion-Version ہیڈر کے ذریعے)

خصوصیات

  • ڈیٹا بیس سنک - Notion ڈیٹا بیس اندراجات کو Brevo رابطوں اور فہرستوں سے سنک کریں
  • CRM برج - Brevo سے سنک شدہ ہلکے CRM کے طور پر Notion databases استعمال کریں
  • مواد اطلاعات - جب Notion pages شائع ہوں تو Brevo مہمات کو متحرک کریں
  • پراپرٹی میپنگ - Notion database خصوصیات کو Brevo رابطہ خصوصیات سے میپ کریں
  • Page مانیٹرنگ - page اپ ڈیٹس کو ٹریک کریں اور Brevo ایونٹس کے طور پر آگے بھیجیں
  • صارف ڈائریکٹری سنک - Notion ورک اسپیس ممبران کو Brevo رابطوں سے سنک کریں

ضروریات

شروع کرنے سے پہلے، یقینی بنائیں کہ آپ کے پاس ہے:

  1. ایڈمن رسائی کے ساتھ Notion ورک اسپیس
  2. Notion internal integration یا OAuth ایپ
  3. integration کے ساتھ شیئر شدہ ڈیٹا بیس پیجز
  4. API رسائی کے ساتھ Brevo اکاؤنٹ
  5. فعال سبسکرپشن کے ساتھ Tajo اکاؤنٹ

توثیق

Notion دو توثیقی طریقوں کی حمایت کرتا ہے۔

آپشن 1: Internal Integration (واحد ورک اسپیس کے لیے تجویز کردہ)

  1. notion.so/my-integrations پر جائیں
  2. New integration پر کلک کریں
  3. اسے “Tajo Integration” نام دیں
  4. اپنا ورک اسپیس منتخب کریں
  5. صلاحیتیں سیٹ کریں:
Content Capabilities:
Read content: ✓
Update content: ✓
Insert content: ✓
User Capabilities:
Read user information: ✓
  1. Internal Integration Secret کاپی کریں (ntn_ سے شروع ہوتا ہے)

Page شیئرنگ ضروری

Internal integrations صرف ان pages اور databases تک رسائی حاصل کر سکتے ہیں جو ان کے ساتھ واضح طور پر شیئر کیے گئے ہیں۔ ”…” مینو > “Connections” > اپنا integration منتخب کرنے کے ذریعے ہر ہدف ڈیٹا بیس کو اپنے integration کے ساتھ شیئر کریں۔

آپشن 2: OAuth 2.0 (عوامی integrations)

متعدد ورک اسپیسز کی خدمت کرنے والے integrations کے لیے OAuth 2.0 فلو استعمال کریں:

  1. اپنے integration کو عوامی integration کے طور پر رجسٹر کریں
  2. صارفین کو ری ڈائریکٹ کریں: https://api.notion.com/v1/oauth/authorize?client_id=...
  3. /v1/oauth/token پر کوڈ کو رسائی ٹوکن کے لیے تبدیل کریں

Tajo سے منسلک کرنا

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

کنفیگریشن

بنیادی سیٹ اپ

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

فیلڈ میپنگ

Notion database خصوصیات کو Brevo رابطہ خصوصیات سے میپ کریں:

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: TAGS

API اینڈ پوائنٹس

Tajo مندرجہ ذیل Notion API اینڈ پوائنٹس کے ساتھ انٹیگریٹ ہوتا ہے:

اینڈ پوائنٹطریقہمقصد
/v1/databases/{id}/queryPOSTڈیٹا بیس اندراجات کی استفسار
/v1/databases/{id}GETڈیٹا بیس schema حاصل کریں
/v1/pagesPOSTنیا page بنائیں
/v1/pages/{id}GETpage خصوصیات حاصل کریں
/v1/pages/{id}PATCHpage خصوصیات اپ ڈیٹ کریں
/v1/blocks/{id}/childrenGETblock children حاصل کریں
/v1/usersGETتمام ورک اسپیس صارفین کی فہرست
/v1/users/{id}GETایک صارف حاصل کریں
/v1/searchPOSTورک اسپیس میں تلاش

کوڈ مثالیں

کنیکٹر کو شروع کریں

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

ڈیٹا بیس کو Brevo سے سنک کریں

// Notion ڈیٹا بیس کو 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
// }

Query اور Filter

// Notion ڈیٹا بیس کی فلٹرز کے ساتھ استفسار کریں
const results = await tajo.connectors.query('notion', {
databaseId: 'abc123def456',
filter: {
property: 'Status',
select: { equals: 'Active' }
},
sorts: [
{ property: 'Last Contact', direction: 'descending' }
]
});

Brevo ایونٹ سے Page بنائیں

// جب Brevo رابطہ سنگ میل تک پہنچے تو Notion page بنائیں
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() } }
}
});
}
});

ریٹ کی حدود

Notion فی integration ریٹ کی حدود نافذ کرتا ہے:

حد کی قسمقدر
ریٹ کی حدفی integration 3 درخواستیں فی سیکنڈ
Burst حدمختصر بروز کی اجازت ہے، پھر throttled
صفحہ سائزفی پیجینیٹڈ درخواست زیادہ سے زیادہ 100 آئٹمز

Cursor پر مبنی پیجینیشن

Notion cursor پر مبنی پیجینیشن استعمال کرتا ہے۔ Tajo اسے خود بخود سنبھالتا ہے، has_more کے false ہونے تک next_cursor پیرامیٹر کا استعمال کرتے ہوئے تمام صفحات کے ذریعے اتریٹ کرتا ہے۔

جب ریٹ کی حدود سے تجاوز ہوتا ہے تو Notion Retry-After ہیڈر کے ساتھ 429 Too Many Requests واپس کرتا ہے۔

مسائل کا سراغ

عام مسائل

مسئلہوجہحل
401 Unauthorizedغیر معتبر یا میعاد ختم شدہ ٹوکنintegration ٹوکن دوبارہ تخلیق کریں
403 ForbiddenPage integration کے ساتھ شیئر نہیںConnections کے ذریعے page/database کو integration کے ساتھ شیئر کریں
404 Object not foundڈیٹا بیس ID غلط یا شیئر نہیںڈیٹا بیس ID اور شیئرنگ سیٹنگز کی تصدیق کریں
خصوصیات غائبSchema کا عدم مطابقتڈیٹا بیس schema کو دوبارہ سنک کریں اور فیلڈ میپنگ اپ ڈیٹ کریں
ریٹ کی حد سے تجاوزبہت زیادہ تیز درخواستیںسنک کی تعدد یا بیچ سائز کم کریں

ڈیبگ موڈ

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

کنکشن ٹیسٹ کریں

Terminal window
tajo connectors test notion
# ✓ API authentication successful
# ✓ Database access verified
# ✓ User list accessible
# ✓ Search operational
# ✓ Page creation available

بہترین طریقے

  1. Databases کو واضح طور پر شیئر کریں - Internal integrations صرف شیئر شدہ مواد دیکھتے ہیں
  2. search پر ڈیٹا بیس queries کا استعمال کریں - معلوم databases کے لیے Queries تیز اور زیادہ قابل اعتماد ہیں
  3. پراپرٹی اقسام کو احتیاط سے میپ کریں - Notion میں بہت سی پراپرٹی اقسام ہیں؛ انہیں Brevo خصوصیت اقسام سے میل کریں
  4. پیجینیشن کو ہینڈل کریں - مکمل ڈیٹا کے لیے ہمیشہ تمام cursor pages کے ذریعے اتریٹ کریں
  5. Incrementally سنک کریں - صرف تبدیل شدہ اندراجات سنک کرنے کے لیے last_edited_time فلٹرز استعمال کریں
  6. پولنگ شیڈول سیٹ اپ کریں - Notion webhooks کی مقامی حمایت نہیں کرتا؛ باقاعدہ وقفوں پر پول کریں

سیکیورٹی

  • Bearer Token توثیق - Integration secrets اور OAuth ٹوکنز
  • صرف HTTPS - تمام API مواصلات TLS 1.2+ کے ذریعے خفیہ کردہ
  • محدود رسائی - Integrations صرف واضح طور پر شیئر شدہ مواد تک رسائی حاصل کرتے ہیں
  • OAuth 2.0 - عوامی integrations کے لیے محفوظ تفویض کا فلو
  • خفیہ کردہ اسٹوریج - Tajo میں ٹوکنز آرام کی حالت میں خفیہ کردہ
  • ورک اسپیس تنہائی - ہر integration ایک واحد ورک اسپیس تک محدود ہے

متعلقہ وسائل

Subscribe to updates

developer-docs

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

auto-detect
AI معاون

السلام علیکم! دستاویزات کے بارے میں کچھ بھی پوچھیں۔