Connectors
আপনার অ্যাপকে Slack, Resend এবং ElevenLabs-এর মতো থার্ড-পার্টি সার্ভিসের সাথে সংযুক্ত করুন। Credentials এনক্রিপ্টেড এবং actions আগে থেকেই authenticated।
Connectors-এর মাধ্যমে তুমি কোডে raw API key ম্যানেজ না করেই বাহ্যিক সার্ভিস অ্যাপে যুক্ত করতে পারো। একবার একটি connection সেট আপ করো, সেটি তোমার প্রজেক্টে bind করো, এবং অ্যাপ থেকে pre-built actions কল করো। Credentials rest-এ এনক্রিপ্টেড থাকে এবং কখনো তোমার frontend কোডে expose হয় না।
উপলব্ধ connectors
Section titled “উপলব্ধ connectors”| Connector | বিভাগ | Auth type | যা করে |
|---|---|---|---|
| Resend | Communications | API key | Transactional email পাঠানো, batch email পাঠানো, verified domain তালিকা দেখা |
| Slack | Communications | OAuth | Message পোস্ট করা, channel ও user তালিকা দেখা, message-এ react করা, thread পড়া |
| ElevenLabs | AI | API key | Text-to-speech, উপলব্ধ voice তালিকা দেখা, sound effect তৈরি করা |
নিয়মিত আরও connectors যোগ করা হচ্ছে।
Connectors কীভাবে কাজ করে
Section titled “Connectors কীভাবে কাজ করে”- তুমি একটি connection তৈরি করো — credentials দাও (একটি API key অথবা OAuth-এর মাধ্যমে সাইন ইন করো)
- Connection-টি একটি প্রজেক্টে bind করো — এটি প্রজেক্টকে সেই credentials ব্যবহারের অনুমতি দেয়
- অ্যাপ actions কল করে — request টি Proyecta Cloud-এর মাধ্যমে যায়, যা server-side-এ credentials inject করে
তোমার অ্যাপ কোড কখনো raw API key বা OAuth token স্পর্শ করে না। Connector সিস্টেম authentication, rate limiting এবং audit logging সামলায়।
একটি connector সেট আপ করো
Section titled “একটি connector সেট আপ করো”- builder-এ তোমার প্রজেক্ট খোলো
- Settings > Connectors-এ যাও
- Catalog থেকে একটি connector-এ ক্লিক করো (যেমন, Resend)
- তোমার credentials দাও:
- API key connectors (Resend, ElevenLabs): তোমার secret key paste করো
- OAuth connectors (Slack): সাইন ইন করো এবং access অনুমোদন করো
- Connection-এর একটি নাম দাও (যেমন, “Production Resend”)
- Connection স্বয়ংক্রিয়ভাবে পরীক্ষা করা হয় এবং বৈধ হলে Active চিহ্নিত হয়
অ্যাপ থেকে connector-এর মাধ্যমে পড়া
Section titled “অ্যাপ থেকে connector-এর মাধ্যমে পড়া”তোমার অ্যাপ সরাসরি ব্রাউজার থেকেই একটি থার্ড-পার্টি API পড়তে পারে, অথচ API key কখনো bundle-এ পৌঁছায় না। Credential টি platform-এ এনক্রিপ্টেড অবস্থায় থাকে; তোমার অ্যাপ শুধু connector, action এবং একটি typed input-এর নাম দেয়, আর platform তোমার হয়ে call টি করে।
import { useConnectorData, useHttpRead } from '@/hooks/useConnector.ts';
// A connector's own read action, as a cached queryconst { data, isLoading, error } = useConnectorData('eleven-labs', 'listVoices');
// The generic HTTP-read connector, by endpoint nameconst { data: feed } = useHttpRead('news-feed', { limit: 10 });দুটি guardrail জেনে রাখা ভালো, কারণ এগুলো ইচ্ছাকৃত:
- শুধু পড়া। platform যেসব action-কে browser-safe হিসেবে চিহ্নিত করেছে কেবল সেগুলোই পৌঁছানো যায় — বাকি সব
403ফেরত দেয়। লেখা (Slack-এ পোস্ট করা, মেইল পাঠানো, কার্ড চার্জ করা) কখনোই ব্রাউজার থেকে পৌঁছানো যায় না। - তুমি কোনো URL বা host পাঠাতে পারবে না। সাধারণ
http-readconnector-এর input হলো{ endpointKey, params }, আরendpointKey-এর পেছনের URL কনফিগার করো তুমি, অ্যাপের মালিক — অ্যাপের কোড নয়। Response গুলো server-side-এ cache করা হয় এবং rate limit করা হয়, কারণ থার্ড-পার্টি key-গুলো quota-নির্ভর।
404 মানে মালিক এখনো সেই connector যুক্ত করেননি — UI-তে এই কেসটিই সামলানোর মতো।
AI দিয়ে wire করো
Section titled “AI দিয়ে wire করো”তোমাকে নিজে হাতে connector কোড লিখতে হবে না। AI builder জানে কোন connectors তোমার প্রজেক্টে bound আছে এবং তোমার হয়ে integration তৈরি করে দিতে পারে:
"Send a welcome email when users sign up"— Resend connector ব্যবহার করে"Post a Slack message when a new order comes in"— Slack connector ব্যবহার করে"Play audio narration on the article page"— ElevenLabs connector ব্যবহার করে
Connector actions রেফারেন্স
Section titled “Connector actions রেফারেন্স”Resend (connectorId: 'resend')
Section titled “Resend (connectorId: 'resend')”| Action | Side effects | বিবরণ |
|---|---|---|
sendEmail |
write | একটি single transactional email পাঠাও |
sendBatch |
write | একসাথে একাধিক email পাঠাও |
listDomains |
read | Verified sending domain তালিকা দেখো |
Slack (connectorId: 'slack')
Section titled “Slack (connectorId: 'slack')”| Action | Side effects | বিবরণ |
|---|---|---|
postMessage |
write | একটি channel-এ message পোস্ট করো |
listChannels |
read | Workspace-এ channel তালিকা দেখো |
listUsers |
read | Workspace member তালিকা দেখো |
reactToMessage |
write | একটি emoji reaction যোগ করো |
getThread |
read | Thread-এ replies দেখো |
ElevenLabs (connectorId: 'eleven-labs')
Section titled “ElevenLabs (connectorId: 'eleven-labs')”| Action | Side effects | বিবরণ |
|---|---|---|
textToSpeech |
write | Text কে speech audio-তে রূপান্তর করো |
listVoices |
read | উপলব্ধ voice তালিকা দেখো |
generateSoundEffect |
write | একটি AI sound effect তৈরি করো |
Connection স্ট্যাটাস
Section titled “Connection স্ট্যাটাস”| Status | অর্থ |
|---|---|
| Active | Credentials বৈধ এবং connection ব্যবহারের জন্য প্রস্তুত |
| Broken | Credentials মেয়াদ শেষ হয়েছে বা বাতিল হয়েছে — পুনরুদ্ধারের জন্য আপডেট করো |
নিরাপত্তা
Section titled “নিরাপত্তা”- Credentials rest-এ AES-256-GCM দিয়ে এনক্রিপ্ট করা হয়
- Actions প্রতি প্রজেক্টে প্রতি connector-এ প্রতি মিনিটে ১,০০০ request-এ rate-limited
- প্রতিটি action call একটি audit trail সহ লগ করা হয় (connection, action, duration, status)
- Connection সম্পূর্ণ workspace-এর মধ্যে scoped
সাধারণ প্রশ্ন
Section titled “সাধারণ প্রশ্ন”একই connection কি একাধিক প্রজেক্টে ব্যবহার করা যাবে?
হ্যাঁ। একবার connection তৈরি করো এবং একই workspace-এর যেকোনো সংখ্যক প্রজেক্টে bind করো।
আমার API key মেয়াদ শেষ হয়ে গেলে বা বাতিল হলে কী হবে?
Connection স্ট্যাটাস Broken-এ পরিবর্তিত হয়। পুনরুদ্ধার করতে Settings > Connectors-এ credentials আপডেট করো।
Frontend থেকে কি connector actions কল করা যাবে?
তোমার অ্যাপ কখনো credentials ধরে রাখে না। Browser-safe read action গুলো Proyecta Cloud-এর মাধ্যমে proxy করা হয়, যা server-side-এ credentials inject করে — তাই key কখনো তোমার bundle-এ থাকে না। Write action গুলো ব্রাউজার থেকে আদৌ পৌঁছানো যায় না।
আমি কি নিজের custom connector যোগ করতে পারব?
এখনো না। Custom connector definitions roadmap-এ আছে।
###近শীঘ্রই আসছে
- অতিরিক্ত connectors (Google, Twilio, SendGrid এবং আরও অনেক)
- Custom connector definitions — নিজের API নিয়ে এসো
- সংযুক্ত সার্ভিস থেকে incoming events-এর জন্য Webhook ingestion
- OAuth gateway — client-initiated flow-এর ক্ষেত্রেও token server-side-এ রাখো