
Zad Top হলো রিসেলার, দোকান, প্যানেল এবং কাস্টম বটের জন্য একটি স্বতন্ত্র Telegram বট ও HTTP API। এটি Free Fire, PUBG Mobile, Yalla Ludo, Jawaker, iTunes এবং Razer Gold-এর জন্য কোড রিডিম, কার্ড যাচাই, প্লেয়ার খোঁজা, স্টক রিডিম এবং অর্ডারের স্ক্রিনশটসহ বিভিন্ন সেবা প্রদান করে।
রিপোজিটরিটি বটের সোর্স কোড নয়, বরং ডেভেলপারদের জন্য একটি পাবলিক হাব। লাইভ API ডকুমেন্টেশন পাওয়া যাবে api.zadtop.com/docs-এ। এখানে একটি ইন্টার্যাক্টিভ Swagger ইন্টারফেস এবং একটি OpenAPI ডকুমেন্টও রয়েছে।

আপনি যা তৈরি করতে পারবেন
Zad Top ব্যবহার করে এমন একটি রিসেলার ওয়ার্কফ্লো তৈরি করতে পারবেন, যা প্লেয়ার আইডিতে ডিজিটাল কোড পাঠায়, রিডিমের আগে সমর্থিত কার্ড যাচাই করে, গেমের ভেতরের প্লেয়ারের নাম ও অঞ্চল সংগ্রহ করে এবং সংরক্ষিত স্টক থেকে পণ্য রিডিম করে। সফল রিডিমের পর দোকানের অর্ডারের ছবি চাওয়াও সম্ভব।
- Free Fire, PUBG Mobile UC, Yalla Ludo Diamonds ও Gold এবং Jawaker টোকেন রিডিম করুন।
- সমর্থিত Free Fire, PUBG, Yalla Ludo Diamonds, iTunes এবং Razer Gold কার্ড যাচাই করুন।
- নিজের ওয়ালেটে একটি Razer Gold PIN রিচার্জ করুন।
- কোড খরচ করার আগে প্লেয়ারের গেমের নাম ও অঞ্চল খুঁজে দেখুন।
- বটে কোড সংরক্ষণ করুন এবং আলাদা আলাদা কোড জমা দেওয়ার বদলে স্টক প্যাক রিডিম করুন।
- দোকানের ওয়ার্কফ্লোর জন্য অর্ডারের স্ক্রিনশট সংগ্রহ করুন।

অ্যাক্সেস ও অথেন্টিকেশন প্রস্তুত করুন
HTTP API ব্যবহার করতে Telegram-এ @ZadTopBot খুলে Subscription নির্বাচন করুন, তারপর HTTP API বেছে নিন। আপনার একটি সক্রিয় প্ল্যান এবং HTTP API অ্যাড-অন প্রয়োজন। README-তে অ্যাড-অনটির মূল্য 30 দিনের জন্য 15 USDT উল্লেখ করা হয়েছে। আলাদা Code checking subscription নিজস্বভাবে check রুটগুলো ব্যবহার করতে পারে।
API key পাওয়ার পর প্রতিটি অথেন্টিকেটেড অনুরোধে X-API-Key হেডারে এটি পাঠান:
X-API-Key: pk_YOUR_KEY
নতুন key তৈরি করলে আগের key বাতিল হয়ে যায়। তাই ক্রেডেনশিয়াল পরিবর্তন করার সময় আপনার অ্যাপ্লিকেশনের কনফিগারেশনও আপডেট করুন। key-টি সার্ভারে রাখুন এবং ব্রাউজার-সাইড কোড বা পাবলিক রিপোজিটরিতে প্রকাশ করবেন না।
আপনার প্রথম তাৎক্ষণিক রিডিম করুন
POST /v1/jobs/instant-redeem রুটটি একটি প্লেয়ার আইডির জন্য এক বা একাধিক কোড রিডিম করে। অনুরোধটি JSON ব্যবহার করে এবং API key ও content type হেডার প্রয়োজন।
curl -sS -X POST https://api.zadtop.com/v1/jobs/instant-redeem \
-H "X-API-Key: pk_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{"player_id":"2186053213","codes":["4233939008625064"],"game":"freefire"}'এই উদাহরণে game-এর মান হলো freefire। অন্যান্য সমর্থিত মানের মধ্যে রয়েছে pubg, ludo, ludogold, jawaker, razer_recharge এবং API ডকুমেন্টেশনে বর্ণিত অন্যান্য সেবা-নির্দিষ্ট মান।
রিডিম অনুরোধগুলো job হিসেবে পরিচালিত হয়। কোনো job-এর অবস্থা done হলে বোঝায় যে প্রসেসিং শেষ হয়েছে, কিন্তু জমা দেওয়া প্রতিটি কোডের নিজস্ব success ফলাফল এবং প্রযোজ্য ক্ষেত্রে err_code থাকে। সম্পন্ন job দেখেই ধরে নেবেন না যে প্রতিটি কোড সফল হয়েছে।

Job ও ফলাফল ট্র্যাক করুন
কোনো job-এর অবস্থা ও ফলাফল পেতে GET /v1/jobs/{id} ব্যবহার করুন। অবিলম্বে polling না করে নির্দিষ্ট সময় পর্যন্ত অপেক্ষা করতে ?wait=25 যোগ করতে পারেন।
curl -sS "https://api.zadtop.com/v1/jobs/JOB_ID?wait=25" \
-H "X-API-Key: pk_YOUR_KEY"
একটি কার্যকর ইন্টিগ্রেশনে job ID সংরক্ষণ করুন, job-এর ফলাফল অনুরোধ করুন এবং এরপর প্রতিটি কোডের ফলাফল আলাদাভাবে পরীক্ষা করুন। গ্রাহক বা রিসেলার ড্যাশবোর্ডে সফল ও ব্যর্থ কোড আলাদা করে দেখান।
রিডিমের আগে কোড যাচাই করুন
POST /v1/codes/check রুটটি রিডিম না করেই সর্বোচ্চ 20টি কার্ড যাচাই করে। বড় ব্যাচের জন্য POST /v1/jobs/code-check ব্যবহার করুন, যা job হিসেবে সর্বোচ্চ 10,000টি কার্ড সমর্থন করে।

গেমভেদে সমর্থিত ফলাফল ভিন্ন হয়। Free Fire অব্যবহৃত, ব্যবহৃত বা অবৈধ অবস্থা জানাতে পারে এবং এতে প্যাকের তথ্য থাকতে পারে। PUBG অব্যবহৃত, ব্যবহৃত, মেয়াদোত্তীর্ণ বা অবৈধ অবস্থা জানাতে পারে এবং দোকানটি জানলে মূল্যও থাকতে পারে। Yalla Ludo Diamonds যাচাই করা যায়, কিন্তু Gold-এর জন্য কোনো check রুট নেই। Diamonds checker-এ পাঠানো Gold কোড খরচ হয়ে যেতে পারে, তাই জমা দেওয়ার আগে পণ্যের ধরন যাচাই করুন।
iTunes check একটি ডলারের ব্যালেন্স ফেরত দেয়। দীর্ঘ বিরতির পর প্রথমবার পড়তে এক মিনিট পর্যন্ত সময় লাগতে পারে। Razer Gold check PIN খরচ না করেই live, ব্যবহৃত বা অবৈধ অবস্থা ফেরত দেয়, তবে README অনুযায়ী প্রতি PIN-এ পাঁচটি অনুরোধের সীমা রয়েছে।
প্রথমে প্লেয়ার খুঁজে দেখুন
রিডিম করার আগে গেমের ভেতরের নাম ও অঞ্চল পেতে GET /v1/player/lookup কল করুন। এতে ভুল প্লেয়ার আইডিতে বৈধ কোড পাঠানোর ঝুঁকি কমে।
curl -sS "https://api.zadtop.com/v1/player/lookup?player_id=2186053213&game=freefire" \
-H "X-API-Key: pk_YOUR_KEY"আপনার ইউজার ইন্টারফেসে নিশ্চিতকরণের ধাপ হিসেবে ফেরত পাওয়া পরিচয়-সংক্রান্ত তথ্য ব্যবহার করুন। README-তে বলা হয়েছে, আপনার বেছে নেওয়া প্লেয়ার ID-এর জন্য আপনি দায়ী, এবং দোকানের সঙ্গে প্রথম সফল যোগাযোগ থেকে পাঠানো অ্যাকাউন্টে একটি বৈধ কোডের ক্রেডিট যোগ হয়।

স্টক থেকে রিডিম ব্যবহার করুন
আপনি যদি Zad Top-এ ইনভেন্টরি পরিচালনা করেন, তাহলে প্রতিটি অর্ডারে কোড পেস্ট না করে সংরক্ষিত স্টক থেকে রিডিম করতে POST /v1/jobs/stock-redeem ব্যবহার করুন। GET /v1/stock/summary রুটটি গেম ও প্যাক অনুযায়ী স্টকের তথ্য দেয়।
curl -sS https://api.zadtop.com/v1/stock/summary \
-H "X-API-Key: pk_YOUR_KEY"স্টক রিডিমের সঠিক ফিল্ড ও প্যাক শনাক্তকারী লাইভ রেফারেন্স বা রিপোজিটরির endpoint guide থেকে নেওয়া উচিত। এতে উপলভ্য স্টক ক্যাটাগরি সম্পর্কে অনুমান হার্ড-কোড করা এড়ানো যায়।
গেমভিত্তিক বিবেচনা
- Free Fire: রিডিম ও যাচাই সমর্থন করে।
- PUBG Mobile: UC রিডিম ও যাচাই সমর্থন করে।
- Yalla Ludo: প্রয়োজন অনুযায়ী
ludoবাludogoldব্যবহার করুন। রিডিমের জন্যtierপ্রয়োজন। Diamonds যাচাই করা যায়, কিন্তু Gold যায় না। - Jawaker: রিডিম সমর্থন করে, তবে এর ১২ অক্ষরের PIN-এর জন্য আলাদা যাচাই নেই।
- iTunes: তালিকাভুক্ত সার্ভিসের মাধ্যমে শুধু ব্যালান্স যাচাই সমর্থন করে; নিষ্ক্রিয়তার পর প্রথম অনুরোধে এক মিনিট পর্যন্ত সময় লাগতে পারে।
- Razer Gold: PIN খরচ না করেই PIN যাচাই সমর্থন করে।
razer_rechargeঅপারেশনটি একটি PIN আপনার ওয়ালেটে ক্রেডিট করে এবং একটি ইমেইল ঠিকানা ও পাসওয়ার্ড প্রয়োজন। পাসওয়ার্ড সংরক্ষণ করা হয় না।
অ্যাকাউন্ট ও দোকানের অপারেশন যোগ করুন
API-টি অ্যাকাউন্ট ও রিসেলার-কেন্দ্রিক রুটও প্রদান করে:
- অ্যাকাউন্টের তথ্যের জন্য
GET /v1/me। - অ্যালাওয়েন্সের তথ্যের জন্য
GET /v1/quota। - অপারেশনের ইতিহাসের জন্য
GET /v1/history। - সংরক্ষিত প্লেয়ারদের জন্য
GET /v1/players। - সফল রিডিমের পর দোকানের অর্ডারের ছবি পাওয়ার জন্য
POST /v1/order/screenshot।

এই রুটগুলো একটি প্রশাসনিক ড্যাশবোর্ডে সহায়তা করতে পারে, আর job ও lookup রুটগুলো গ্রাহকমুখী অর্ডার ফ্লো চালাতে পারে।
সীমা ও ব্যবহারের খরচ বুঝুন
README অনুযায়ী, একটি কোড রিডিম করতে প্রতি কোডে একটি অনুরোধ, একটি কার্ড যাচাই করতে প্রতি কার্ডে একটি অনুরোধ এবং Razer Gold যাচাই করতে প্রতি PIN-এ পাঁচটি অনুরোধ খরচ হয়। একটি প্লেয়ার lookup-এর খরচ 0.25 অনুরোধ। দোকানের প্রত্যাখ্যান এবং ফলাফল ফেরত আসার আগে ঘটে যাওয়া ব্যর্থতাও নথিভুক্ত ব্যবহারের নিয়ম অনুযায়ী গণনা হয়।
দৈনিক সীমা UTC মধ্যরাতে রিসেট হয় এবং প্ল্যানের গেমগুলো, Telegram bot ও API-এর মধ্যে ভাগ করা থাকে। নতুন অ্যাকাউন্টে 10টি বিনামূল্যের রিডিম পাওয়া যায়। প্ল্যানের দাম ও প্রাপ্যতা পরিবর্তিত হতে পারে, তাই বিলিং ফ্লো তৈরি করার আগে bot বা অফিসিয়াল সাইটের মাধ্যমে বর্তমান শর্ত নিশ্চিত করুন।
প্রস্তাবিত ইন্টিগ্রেশন ফ্লো
- প্লেয়ারের গেম, player ID, পণ্য ও কোড সংগ্রহ করুন।
- প্লেয়ার lookup endpoint-এ কল করে নিশ্চিতকরণের জন্য ফেরত পাওয়া নাম ও অঞ্চল দেখান।
- সমর্থিত পণ্যের ক্ষেত্রে রিডিমের আগে কোড যাচাই করুন।
- তাৎক্ষণিক রিডিম বা স্টক রিডিম job জমা দিন।
/v1/jobs/{id}পোল করুন অথবাwaitপ্যারামিটার ব্যবহার করুন।- সামগ্রিক job state এবং প্রতিটি কোডের
successওerr_codeফিল্ড পরীক্ষা করুন। - গ্রাহককে পরিষ্কার ফলাফল দেখান এবং চাইলে অর্ডারের স্ক্রিনশটের অনুরোধ করুন।
উন্নত বাস্তবায়ন টিপস
ক্রেডেনশিয়াল সুরক্ষিত রাখুন
API key সার্ভার-সাইড environment variable বা secrets manager-এ সংরক্ষণ করুন। এটি মোবাইল অ্যাপ্লিকেশন, frontend JavaScript, লগ বা সাপোর্টের স্ক্রিনশটে রাখবেন না।

অ্যাসিঙ্ক্রোনাস প্রসেসিংয়ের জন্য নকশা করুন
রিডিম ও batch-check অপারেশনগুলো job হিসেবে চলে। job identifier সংরক্ষণ করুন, নিরাপদ status read-এর জন্য retry সমর্থন করুন এবং transport error-কে code-level failure থেকে আলাদা করুন। কোনো job-এর done state থাকলেও পৃথক ফলাফল পরীক্ষা করা প্রয়োজন।
পণ্য ও গেমের সমন্বয় যাচাই করুন
আপনার অ্যাপ্লিকেশনে একটি স্পষ্ট product mapping ব্যবহার করুন, যাতে Diamonds, Gold, UC ও অন্যান্য পণ্য ভুল করে ভুল route বা checker-এ পাঠানো না হয়। Yalla Ludo-এর ক্ষেত্রে এটি বিশেষভাবে গুরুত্বপূর্ণ, কারণ Gold-এর জন্য কোনো check নেই এবং অনুপযুক্ত check request-এর মাধ্যমে তা খরচ হয়ে যেতে পারে।
বিলম্ব ও কোটা বিবেচনায় রাখুন
iTunes ব্যালান্স পড়া ও batch job-এর জন্য অতিরিক্ত সময় রাখুন। স্থানীয়ভাবে quota usage ট্র্যাক করুন, বিশেষ করে Razer check-এর ক্ষেত্রে, কারণ একটি PIN পাঁচটি অনুরোধ খরচ করতে পারে। bot ও API কার্যক্রমের মধ্যে ভাগ করা দৈনিক অ্যালাওয়েন্সও হিসাব করুন।
উপসংহার
Zad Top ডিজিটাল-গেম ও gift-card রিসেলার ওয়ার্কফ্লোর জন্য একটি কেন্দ্রীভূত API প্রদান করে। API access ও X-API-Key header দিয়ে শুরু করুন, প্লেয়ারের পরিচয় যাচাই করুন, যেখানে সমর্থিত সেখানে check ব্যবহার করুন, redemption job জমা দিন এবং প্রতিটি code-level result মূল্যায়ন করুন। endpoint-এর বিবরণ ও বর্তমান সার্ভিস আচরণের জন্য HTML API reference, Swagger documentation এবং প্রকল্পের GitHub repository দেখুন।
Zad Top একটি স্বতন্ত্র সার্ভিস এবং Garena, Krafton, Tencent, Yalla Games, Apple, Razer বা Jawaker-এর সঙ্গে এর কোনো সম্পর্ক নেই।
