Skip to content

Teams and roles

Tokens-এ team organization খোলা, member invite করা, প্রত্যেককে role আর মাসিক spending cap দেওয়া, organization বদলানো আর member সরানো। সঙ্গে প্রতিটা role কী করতে পারে আর team-এর মধ্যে কী ভাগ হয়।

Markdown-এ দেখুন
এই পাতায়

Organization থাকলে কয়েকজন মিলে একটা Tokens অ্যাকাউন্টে কাজ করতে পারেন: key আর usage report সবাই ভাগ করে নেয়, প্রত্যেকের একটা role থাকে, আর প্রতি member-এর জন্য মাসিক spending cap ঠিক করা যায়। এই পেজে আছে team বানানো, মানুষ invite করা, প্রতিটা role কী করতে পারে, spending cap, organization বদলানো আর member সরানো।

আপনার অ্যাকাউন্টে team চালু নাও থাকতে পারে

Team এমন একটা feature, যা Tokens প্রতিটা deployment-এ আলাদা করে চালু করে। বন্ধ থাকলে Dashboard-এর sidebar-এ Team & members আইটেম থাকে না, আর organization switcher-ও লুকানো থাকে। তবু /dashboard/team খুললে লেখা আসে "Teams and collaborative workspaces are coming soon." দরকার হলে support-কে জিজ্ঞেস করুন।

Personal আর team organization#

প্রতিটা অ্যাকাউন্টে একটা Personal organization নিজে থেকেই তৈরি হয়। Team না বানানো পর্যন্ত আপনার key, plan আর Wallet এখানেই থাকে। Personal organization-এ invite করার মতো কোনো member নেই: Invite Member শুধু team organization-এ দেখা যায়।

Team organization আপনি নিজে বানান, আর তার owner হন আপনিই। নিচের সবকিছু ঘটে switcher-এ যে organization active আছে সেখানে। তাই key বানানো বা কাউকে invite করার আগে top bar-এ নাম আর Team বা Personal ট্যাগটা দেখে নিন।

Team বানান#

  1. Dashboard-এর top bar-এ organization switcher খুলুন।
  2. Create Team Organization চাপুন।
  3. Team / Organization Name লিখে Create Team চাপুন।

Dashboard নতুন করে লোড হবে, নতুন team active থাকবে আর আপনি হবেন তার owner। Team সামলাতে /dashboard/team খুলুন। Owner আর admin সেখানে Org Settings খুলে Organization Name, Billing Email (Receipts), Company / Legal Name আর BIN / VAT / Tax ID বদলাতে পারেন।

Member invite করুন#

Invitation আসলে একটা link। Tokens সেটা ইমেইলে পাঠায় না, আপনাকেই পাঠাতে হবে।

  1. Team organization-এ /dashboard/team খুলে Invite Member চাপুন।
  2. Email Address লিখুন, একটা Role বাছুন, আর চাইলে Monthly Spend Cap (Optional USD) দিন।
  3. Generate Invitation চাপুন।
  4. Invitation Link (valid for 7 days) copy করে মানুষটাকে নিজেই পাঠিয়ে দিন।

যাকে invite করা হয়েছে, তিনি এমন একটা Tokens অ্যাকাউন্টে Sign in করা অবস্থায় link-টা খুলবেন, যেটার ইমেইল ওই একই ঠিকানা। তারপর Accept and join organization চাপবেন। এক ঠিকানার জন্য বানানো link অন্য ঠিকানায় চলে না: error message-এ লেখা থাকে invitation কোন ঠিকানার জন্য ছিল। Join করার পর তিনি organization switcher খুলে team-টা বেছে নিলেই সেখানে কাজ শুরু করতে পারবেন।

যেসব কারণে invitation আটকে যেতে পারে:

  • Seat limit। Member কতজন হতে পারবে তা ঠিক হয় organization-এর active plan থেকে। Plan না থাকলে সীমা 1, মানে শুধু owner। সীমা পার হলে আসে "Organization has reached its plan seat limit of N members. Upgrade your plan to invite more team members." যে invitation এখনো accept বা expire হয়নি, সেটাও সীমার হিসাবে ধরা হয়।
  • আগে থেকেই member। "This user is already a member of the organization"।
  • Link-এর মেয়াদ শেষ, অথবা আগেই ব্যবহার হয়ে গেছে। নতুন করে invitation বানান।

Tip

Member join করার পর members table-এ গিয়ে তার spending cap ঠিক করুন, আর সেখানে cap-টা দেখাচ্ছে কি না মিলিয়ে নিন। নিচে "প্রতি member-এর spending cap" অংশটা দেখুন।

Role আর কে কী করতে পারে#

Role পাঁচটা। প্রথম চারটা invite করার সময় বা role বদলানোর সময় বেছে নেওয়া যায়; owner হলেন যিনি team-টা বানিয়েছেন।

ActionOwnerAdminBillingDeveloperViewer
See the member listহ্যাঁহ্যাঁহ্যাঁহ্যাঁহ্যাঁ
See the usage table for all membersহ্যাঁহ্যাঁহ্যাঁশুধু নিজের সারিহ্যাঁ
Create API keysহ্যাঁহ্যাঁনাহ্যাঁনা
See keys in the organizationসবসবএকটাও নানিজের keyএকটাও না
Rotate or revoke keysযেকোনোযেকোনোনানিজের keyনা
Invite members, change roles, set capsহ্যাঁহ্যাঁনানানা
Remove membersহ্যাঁহ্যাঁনানানা
Edit Org Settingsহ্যাঁহ্যাঁনানানা

Invitation-এর form-এ role-গুলোর বর্ণনা এভাবে দেওয়া:

  • Developer, form-এ লেখা: "Create & manage own keys, view own usage"।
  • Admin, form-এ লেখা: "Manage members, keys, view all usage"।
  • Billing, form-এ লেখা: "Manage subscription & top-ups, invoices"।
  • Viewer, form-এ লেখা: "View org usage & models, read-only"।

Admin-এর ওপর কিছু সীমা আছে:

  • এক admin অন্য admin-এর role বদলাতে পারেন না, আর অন্য admin-কে সরাতেও পারেন না।
  • Admin নিজের জন্য বা owner-এর জন্য spending cap ঠিক করতে পারেন না।
  • Dashboard থেকে কেউ owner-কে demote বা remove করতে পারে না। কোনো member-এর role তালিকায় শুধু Admin, Billing, Developer আর Viewer থাকে।

Billing আর viewer member key বানাতে পারেন না, কোনো key দেখতেও পান না। তাই team-এ তাঁরা request চালাতে পারেন না। Playground-এ team-এর জন্য তাঁদের সামনে আসে "No active API keys found"।

প্রতি member-এর spending cap#

Cap দিয়ে ঠিক করা হয় এক ক্যালেন্ডার মাসে একজন member-এর request সর্বোচ্চ কত খরচ করতে পারবে। Members table-এর Monthly Spend Cap কলামে ডলারে সেটা লিখুন, আর cap না চাইলে ঘর ফাঁকা রাখুন। ঘর থেকে বেরিয়ে এলে table নিজেই সেভ করে নেয়।

এটা কীভাবে কার্যকর হয়:

  • Tokens হিসাব করে: ওই member মাসের শুরু থেকে এই team-এ কত খরচ করেছেন, তার সঙ্গে এখনো চলছে এমন request-এর খরচ, আর নতুন request-টায় সর্বোচ্চ কত খরচ হতে পারে। মোট যদি cap ছাড়িয়ে যায়, request model-এ পৌঁছানোর আগেই ফিরিয়ে দেওয়া হয়।
  • ফিরিয়ে দিলে আসে 402 member_cap_reached। Message-এ member-কে বলা থাকে limit বাড়ানোর জন্য organization administrator-কে বলতে। এটা Errors-এর তালিকায় আছে।
  • Cap মানুষের ওপর বসে, key-র ওপর নয়। আলাদা key-র নিজস্ব মাসিক cap-ও থাকতে পারে; দুটোই যাচাই হয়। দেখুন API keys।
  • Cap 0 দিলে সেটাকে cap না থাকা হিসেবেই ধরা হয়। কোনো member-কে আটকাতে চাইলে ছোট একটা ধনাত্মক সংখ্যা দিন।

একই পেজের Usage by Member (Current Month) table-এ প্রতিটা member-এর request, মোট token, ডলারে এই মাসের খরচ আর cap দেখা যায়।

Organization বদলানো#

Top bar-এর organization switcher ব্যবহার করুন। আপনি যে যে organization-এর member, সবগুলো সেখানে তালিকায় থাকে, আর active-টার পাশে check চিহ্ন। অন্যটা বাছলে Dashboard নতুন করে লোড হয়। আপনার বানানো key, দেখা usage আর team পেজ, সবই active organization-এর সঙ্গে বদলে যায়।

একসঙ্গে একাধিক team-এর member হওয়া যায়, আর Personal organization-ও থাকে।

কী ভাগ হয়, কী হয় না#

প্রতিটা organization-এ তার member-রা যা ভাগ করে নেয়:

  • API key। Key সেই organization-এরই, যেখানে সেটা বানানো হয়েছে। কোন কোন key আপনি দেখতে পাবেন তা role-এর ওপর নির্ভর করে (ওপরের table দেখুন)।
  • Usage record। প্রতিটা request লেখা হয় organization আর যে member পাঠিয়েছেন তাঁর নামে। Team পেজের usage-by-member table এখান থেকেই পড়ে।
  • টাকার উৎস। Team key দিয়ে করা request-এর খরচ কাটে ওই key যে organization-এর, তার Wallet আর plan থেকে। Invitation পেজেও লেখা আছে member-রা key পান "funded by the organization's credit pool"।

যা ভাগ হয় না:

  • আপনার Personal organization। তার key, plan আর Wallet আপনারই থাকে, team সেগুলো দেখতে পায় না।
  • আপনার profile, ইমেইল আর Sign in। সহকর্মীরা member list-এ শুধু আপনার নাম আর ইমেইল দেখেন, আর কিছু না।
  • Referral-এর আয়। এটা আপনার নিজের Wallet-এ জমা হয়। দেখুন Referrals।

পুরো team-কে নামানোর আগে টাকার উৎস যাচাই করুন

Seat limit আর team-এর টাকার উৎস আসে team organization-এর plan আর Wallet থেকে, আপনার ব্যক্তিগতগুলো থেকে নয়। পুরো team-কে invite করার আগে একটা team key দিয়ে test request পাঠিয়ে দেখে নিন খরচ আপনি যেমন ভেবেছেন তেমনই কাটছে কি না। অথবা support-কে জিজ্ঞেস করুন আপনার team-এর খরচ কোথা থেকে মেটে।

Member সরানো#

Owner আর admin যেকোনো member-এর সারিতে Remove চাপতে পারেন। তখন "Remove Team Member" নামের একটা confirmation dialog এসে সতর্ক করে: "All API keys created by this member will be permanently revoked immediately." এগোতে চাইলে Confirm & Revoke Keys চাপুন।

কাউকে সরালে যা হয়:

  • এই organization-এ তাঁর বানানো প্রতিটা active key সঙ্গে সঙ্গে revoke হয়ে যায়। ওই key ব্যবহার করা tool-গুলো পরের request-এই 401 invalid_api_key পাবে।
  • Team-এর key, usage আর সেটিংসে তাঁর আর কোনো access থাকে না।
  • তাঁর নিজের অ্যাকাউন্ট আর Personal organization যেমন ছিল তেমনই থাকে। যে team থেকে সরানো হলো সেটা যদি তাঁর active organization হয়ে থাকে, তাঁকে Personal-এ ফিরিয়ে দেওয়া হয়।

কোনো member-এর বানানো key রেখে দিতে চাইলে আগে নিজে একটা নতুন key বানিয়ে tool-গুলো সেটাতে সরিয়ে নিন। Revoke হয়ে যাওয়া key আর ফেরত আনা যায় না।

এই পাতাটা কি কাজে লেগেছে?

এখনো আটকে আছেন? Support ticket খুলুন

আপনার agent set up করতে সাহায্য লাগবে?

Connection tester দিয়ে সংযোগ পরীক্ষা করে নিন, অথবা একটা API key তৈরি করুন।