মূল কথা
স্ট্যান্ডার্ড SMM প্যানেল API v2-এর রিকোয়েস্ট পদ্ধতি, 6টি action, রেসপন্সের উদাহরণ, এরর মেসেজ ও রিকোয়েস্টের সীমা, রিসেলারদের জন্য সাজানো।
SMM প্যানেল API হলো অন্য প্যানেল বা নিজের তৈরি সফটওয়্যার থেকে স্বয়ংক্রিয়ভাবে অর্ডার দেওয়া ও স্ট্যাটাস দেখার সংযোগ পদ্ধতি। 1PANEL PLUS স্ট্যান্ডার্ড SMM প্যানেল API v2 ব্যবহার করে, তাই অন্য প্যানেলের সাথে আগে থেকে সংযুক্ত কোড থাকলে শুধু ঠিকানা ও কী বদলে সাথে সাথে সংযোগ করতে পারবেন। API ও ওয়েবসাইট একই সার্ভিস, প্রতি 1,000-এর একই দাম ও একই ব্যালেন্স ব্যবহার করে।
SMM প্যানেল API কারা ব্যবহার করেন?
- রিসেলার: নিজের প্যানেলে সার্ভিস তালিকাভুক্ত করে গ্রাহকের অর্ডার স্বয়ংক্রিয়ভাবে পাঠান
- এজেন্সি: অনেক চ্যানেলের অর্ডার নির্দিষ্ট সময়ে একবারে দেন
- ডেভেলপার: স্ট্রিম শুরু বা নতুন ভিডিও আপলোডের সাথে মিলিয়ে অর্ডার দেওয়ার স্ক্রিপ্ট তৈরি করেন
- অপারেটর: ব্যালেন্স ও অর্ডারের স্ট্যাটাস নিজের ড্যাশবোর্ডে একসাথে দেখান
API কী কীভাবে পাব?
প্রথম টপ আপ জমা হওয়ার পর ড্যাশবোর্ডের API কী স্ক্রিনে একটি তৈরি করুন। কী শুধু তৈরির মুহূর্তে একবারই দেখানো হয়, তাই সাথে সাথে কপি করে নিরাপদ জায়গায় রাখুন। নতুন কী তৈরি করলে পুরোনো কী সাথে সাথে কাজ করা বন্ধ করে, তাই কী ফাঁস হয়েছে মনে হলে নতুন কী তৈরি করে বদলে নিন।
API রিকোয়েস্ট কীভাবে পাঠাব?
সব রিকোয়েস্ট একটিই ঠিকানা https://1panelplus.com/api/v2-এ POST দিয়ে পাঠান। ফর্ম ফিল্ড (application/x-www-form-urlencoded বা multipart) অথবা JSON বডি (Content-Type: application/json), যেটি সুবিধাজনক সেটি ব্যবহার করুন, আর প্রতিটি রিকোয়েস্টে key ও action দিন। সব রেসপন্স JSON-এ আসে।
রিকোয়েস্টের উদাহরণ (ফর্ম ফিল্ড): key=YOUR_API_KEY&action=balance
রিকোয়েস্টের উদাহরণ (JSON): {"key": "YOUR_API_KEY", "action": "balance"}
| action | সাথে যা পাঠাবেন | যা ফেরত পাবেন |
|---|---|---|
| services | কিছু না | সার্ভিস তালিকা |
| add | service, link, quantity বা comments | order (অর্ডার ID) |
| status | একটি order বা orders (কমা দিয়ে 100টি পর্যন্ত) | charge, start_count, status, remains, currency |
| refill | order | refill (রিফিল ID) |
| refill_status | refill | status |
| balance | কিছু না | balance, currency |
- action
- services
- সাথে যা পাঠাবেন
- কিছু না
- যা ফেরত পাবেন
- সার্ভিস তালিকা
- action
- add
- সাথে যা পাঠাবেন
- service, link, quantity বা comments
- যা ফেরত পাবেন
- order (অর্ডার ID)
- action
- status
- সাথে যা পাঠাবেন
- একটি order বা orders (কমা দিয়ে 100টি পর্যন্ত)
- যা ফেরত পাবেন
- charge, start_count, status, remains, currency
- action
- refill
- সাথে যা পাঠাবেন
- order
- যা ফেরত পাবেন
- refill (রিফিল ID)
- action
- refill_status
- সাথে যা পাঠাবেন
- refill
- যা ফেরত পাবেন
- status
- action
- balance
- সাথে যা পাঠাবেন
- কিছু না
- যা ফেরত পাবেন
- balance, currency
services দিয়ে সার্ভিস তালিকা কীভাবে পাব?
action=services পাঠালে বিক্রিতে থাকা সব সার্ভিস একটি অ্যারে হিসেবে আসে। প্রতিটি সার্ভিসে service (সার্ভিস ID), name, type, category, rate, min, max, refill ও cancel থাকে। rate হলো প্রতি 1,000-এর দাম (USD), আর type যখন Package তখন এটি একটি প্যাকেজের দাম। রিফিল মেয়াদসহ সার্ভিসে refill হয় true, আর cancel সবসময় false। category-তে প্ল্যাটফর্মের নাম ও ক্যাটাগরি একসাথে লেখা থাকে, তাই নিজের প্যানেলের ক্যাটাগরি হুবহু তৈরি করতে পারেন।
রেসপন্সের উদাহরণ: [{"service": SERVICE_ID, "name": "সার্ভিসের নাম", "type": "Default", "category": "YouTube - ক্যাটাগরির নাম", "rate": "প্রতি 1,000-এর দাম", "min": "সর্বনিম্ন পরিমাণ", "max": "সর্বোচ্চ পরিমাণ", "refill": true, "cancel": false}]
দাম ও সার্ভিস বদলাতে পারে, তাই রিসেলার হলে নির্দিষ্ট ব্যবধানে আবার services নিয়ে নিজের প্যানেলের দাম এবং সর্বনিম্ন ও সর্বোচ্চ পরিমাণ মিলিয়ে রাখুন।
add দিয়ে অর্ডার কীভাবে দেব?
action=add-এর সাথে service (সার্ভিস ID), link (পাবলিক লিংক) ও quantity (পরিমাণ) পাঠালে অর্ডার গ্রহণ করা হয় এবং খরচ সাথে সাথে ব্যালেন্স থেকে কেটে নেওয়া হয়। রেসপন্সের order হলো অর্ডার ID, তাই এটি সংরক্ষণ করে status ও refill-এ ব্যবহার করুন। প্রথম টপ আপ জমা হওয়া অ্যাকাউন্ট থেকে অর্ডার দেওয়া যায়।
- সাধারণ সার্ভিস: service, link ও quantity পাঠান
- Custom Comments সার্ভিস: quantity-এর বদলে comments পাঠান। প্রতি লাইনে একটি কমেন্ট, প্রতি লাইনে 500 অক্ষর পর্যন্ত, আর লাইনের সংখ্যাই পরিমাণ
- Package সার্ভিস: কোনো পরিমাণ পাঠাতে হয় না। একটি প্যাকেজ হিসেবে অর্ডার হয়
রিকোয়েস্টের উদাহরণ: key=YOUR_API_KEY&action=add&service=SERVICE_ID&link=https://www.youtube.com/watch?v=videoid&quantity=1000
রেসপন্সের উদাহরণ: {"order": ORDER_ID}
status দিয়ে অর্ডারের স্ট্যাটাস কীভাবে দেখব?
action=status-এর সাথে order (একটি অর্ডার ID) পাঠালে সেই অর্ডারের স্ট্যাটাস আসে, আর orders-এ কমা দিয়ে অর্ডার ID জুড়ে পাঠালে একবারে 100টি পর্যন্ত দেখা যায়। অনেক অর্ডার সামলালে orders দিয়ে একসাথে দেখলে রিকোয়েস্টের সংখ্যা অনেক কমে।
রেসপন্সের উদাহরণ (একটি): {"charge": "চার্জ করা পরিমাণ", "start_count": "শুরুর সংখ্যা", "status": "In progress", "remains": "বাকি পরিমাণ", "currency": "USD"}
রেসপন্সের উদাহরণ (একাধিক): {"ORDER_ID_1": {"charge": "...", "start_count": "...", "status": "Completed", "remains": "0", "currency": "USD"}, "ORDER_ID_2": {"error": "Incorrect order ID"}}
| status-এর মান | অর্থ |
|---|---|
| Pending | গ্রহণ করা হয়েছে, শুরুর অপেক্ষায় বা প্রক্রিয়াকরণে যাচ্ছে |
| In progress | ডেলিভারি চলছে |
| Completed | সবকিছু ডেলিভারি হয়েছে |
| Partial | কিছু অংশ ডেলিভারি হয়েছে এবং বাকি টাকা ব্যালেন্সে ফিরেছে |
| Canceled | প্রক্রিয়া করা যায়নি এবং পুরো টাকা ব্যালেন্সে ফিরেছে |
- status-এর মান
- Pending
- অর্থ
- গ্রহণ করা হয়েছে, শুরুর অপেক্ষায় বা প্রক্রিয়াকরণে যাচ্ছে
- status-এর মান
- In progress
- অর্থ
- ডেলিভারি চলছে
- status-এর মান
- Completed
- অর্থ
- সবকিছু ডেলিভারি হয়েছে
- status-এর মান
- Partial
- অর্থ
- কিছু অংশ ডেলিভারি হয়েছে এবং বাকি টাকা ব্যালেন্সে ফিরেছে
- status-এর মান
- Canceled
- অর্থ
- প্রক্রিয়া করা যায়নি এবং পুরো টাকা ব্যালেন্সে ফিরেছে
charge হলো পরিশোধিত টাকা থেকে রিফান্ড বাদ দিয়ে বাকি পরিমাণ, তাই আংশিক বা বাতিল হওয়ার পর আসলে কত খরচ হয়েছে তা সাথে সাথে দেখা যায়। অর্ডারের স্ট্যাটাস প্রায় প্রতি মিনিটে স্বয়ংক্রিয়ভাবে আপডেট হয়, তাই status-ও প্রায় 1 মিনিট ব্যবধানে দেখলেই যথেষ্ট।
refill ও refill_status কীভাবে ব্যবহার করব?
action=refill-এর সাথে order পাঠালে রিফিলের অনুরোধ হয় এবং refill (রিফিল ID) ফেরত আসে। রিফিল মেয়াদসহ সার্ভিসের সম্পন্ন বা আংশিক সম্পন্ন অর্ডারে, অর্ডার শেষ হওয়ার দিন থেকে রিফিল মেয়াদের মধ্যে, কোনো রিফিল চলমান না থাকলে এবং শেষ অনুরোধের পর 24 ঘণ্টা পার হলে এটি গ্রহণ করা হয়। action=refill_status-এর সাথে refill পাঠালে Pending, In progress, Completed বা Rejected, এর যেকোনো একটি স্ট্যাটাস জানানো হয়।
রেসপন্সের উদাহরণ: {"refill": REFILL_ID} এবং {"status": "Completed"}
রিফিলের নিয়ম ওয়েবসাইটের মতোই। বিস্তারিত শর্ত আছে রিফিল মেয়াদ সম্পর্কে জানুন গাইডে।
balance দিয়ে ব্যালেন্স কীভাবে দেখব?
action=balance পাঠালে বর্তমান ব্যালেন্স ও মুদ্রা (USD) আসে। রিসেলার হলে অর্ডার পাঠানোর আগে ব্যালেন্স দেখে নিন, আর ব্যালেন্স একটি নির্দিষ্ট পরিমাণের নিচে নামলে অ্যালার্ট পাঠানোর ব্যবস্থা রাখুন, তাহলে অর্ডার বাধা ছাড়াই চলতে থাকবে।
রেসপন্সের উদাহরণ: {"balance": "বর্তমান ব্যালেন্স", "currency": "USD"}
API এরর মেসেজের অর্থ কী?
এরর আসে JSON হিসেবে, যার error ফিল্ডে একটি ইংরেজি বাক্য থাকে। প্রতিটি বাক্যের কারণ নির্দিষ্ট, তাই আপনার সফটওয়্যারে হুবহু মিলিয়ে সামলাতে পারেন।
| error-এর মান | অর্থ |
|---|---|
| Invalid API key | কী নেই বা সঠিক নয় |
| Too many requests | প্রতি মিনিটের রিকোয়েস্ট সীমা পার হয়েছে। একটু পরে আবার পাঠান |
| Add funds first | প্রথম টপ আপ জমা হওয়ার পর অর্ডার দেওয়া যায় |
| Incorrect service ID | বিক্রিতে থাকা কোনো সার্ভিসের ID নয় |
| Incorrect link | লিংকের ফরম্যাট সঠিক নয় |
| Quantity out of range | পরিমাণ সার্ভিসের সর্বনিম্ন ও সর্বোচ্চ সীমার বাইরে |
| Incorrect comments | কমেন্টের লাইন খালি বা কোনো লাইন 500 অক্ষরের বেশি |
| Not enough funds on balance | আপনার ব্যালেন্স অর্ডারের খরচের চেয়ে কম |
| Incorrect order ID | এটি এই অ্যাকাউন্টের অর্ডার ID নয় |
| Incorrect refill ID | এটি এই অ্যাকাউন্টের রিফিল ID নয় |
| Incorrect action | action-এর মান 6টির কোনোটি নয় |
- error-এর মান
- Invalid API key
- অর্থ
- কী নেই বা সঠিক নয়
- error-এর মান
- Too many requests
- অর্থ
- প্রতি মিনিটের রিকোয়েস্ট সীমা পার হয়েছে। একটু পরে আবার পাঠান
- error-এর মান
- Add funds first
- অর্থ
- প্রথম টপ আপ জমা হওয়ার পর অর্ডার দেওয়া যায়
- error-এর মান
- Incorrect service ID
- অর্থ
- বিক্রিতে থাকা কোনো সার্ভিসের ID নয়
- error-এর মান
- Incorrect link
- অর্থ
- লিংকের ফরম্যাট সঠিক নয়
- error-এর মান
- Quantity out of range
- অর্থ
- পরিমাণ সার্ভিসের সর্বনিম্ন ও সর্বোচ্চ সীমার বাইরে
- error-এর মান
- Incorrect comments
- অর্থ
- কমেন্টের লাইন খালি বা কোনো লাইন 500 অক্ষরের বেশি
- error-এর মান
- Not enough funds on balance
- অর্থ
- আপনার ব্যালেন্স অর্ডারের খরচের চেয়ে কম
- error-এর মান
- Incorrect order ID
- অর্থ
- এটি এই অ্যাকাউন্টের অর্ডার ID নয়
- error-এর মান
- Incorrect refill ID
- অর্থ
- এটি এই অ্যাকাউন্টের রিফিল ID নয়
- error-এর মান
- Incorrect action
- অর্থ
- action-এর মান 6টির কোনোটি নয়
রিফিল অনুরোধে আসতে পারে Refill is not available for this service (রিফিল মেয়াদ নেই এমন সার্ভিস), Order is not finished yet (এখনো শেষ হয়নি এমন অর্ডার), Refill period has ended (রিফিল মেয়াদ পার হওয়া অর্ডার), Refill already requested, try again later (রিফিল চলছে বা 24 ঘণ্টা পার হয়নি এমন অর্ডার)।
কতগুলো API রিকোয়েস্ট পাঠানো যায়?
প্রতিটি কী দিয়ে প্রতি মিনিটে 300টি পর্যন্ত রিকোয়েস্ট পাঠানো যায়। স্ট্যাটাস দেখার জন্য orders দিয়ে 100টি করে একসাথে দেখুন, আর সার্ভিস তালিকা শুধু দরকার হলে আবার নিন, তাহলে সীমা যথেষ্ট হবে। যেমন, 1,000টি চলমান অর্ডার থাকলে মিনিটে একবার 10টি রিকোয়েস্টেই সবগুলো দেখা যায়।
রিসেলাররা বিক্রয়মূল্য কীভাবে ঠিক করেন?
API থেকে পাওয়া rate হলো 1PANEL PLUS-এর প্রতি 1,000-এর দাম, আর নিজের প্যানেলের বিক্রয়মূল্য রিসেলার নিজেই ঠিক করেন। যেমন, rate $2.00 এমন সার্ভিসে 25% যোগ করে বিক্রি করলে প্রতি 1,000 হয় $2.50, আর গ্রাহক 4,000 অর্ডার করলে বিক্রয়মূল্য $10.00, যেখানে 1PANEL PLUS থেকে কাটা হয় $8.00। এই দাম শুধু হিসাব দেখানোর উদাহরণ।
API সংযোগ কোন ক্রমে করবেন?
- ব্যালেন্স টপ আপ করে ড্যাশবোর্ডে একটি API কী তৈরি করুন
- balance দিয়ে কী ও সংযোগ যাচাই করুন
- services দিয়ে সার্ভিস তালিকা নিয়ে নিজের প্যানেলে যোগ করুন
- সবচেয়ে ছোট পরিমাণে একবার add পাঠিয়ে একটি অর্ডার ID নিন
- status দিয়ে স্ট্যাটাস বদলাচ্ছে কি না দেখে তারপর স্বয়ংক্রিয় অর্ডার চালু করুন
curl, PHP, Python ও Node.js উদাহরণ এবং সব ফিল্ডের ব্যাখ্যা আছে API ডকুমেন্টেশন-এ, আর আরও প্রশ্নের উত্তর দেখুন সাধারণ জিজ্ঞাসা-র API অংশে।