ডেভেলপার API দ্রুত শুরু
নিজের সফটওয়্যার থেকে নম্বর কিনুন ও কোড পড়ুন। কী তৈরি করুন, দাম দেখুন, নম্বর কিনুন, SMS-এর অপেক্ষা করুন এবং শেষ করুন, ধাপে ধাপে।
এই পেজে
SmsGrab ডেভেলপার API আপনার সফটওয়্যারকে অ্যাপের মতোই নম্বর দেয়, JSON ব্যবহার করা একটি REST API-এর মাধ্যমে। এটি একটি পেইড পণ্য, যার নিজস্ব ডেভেলপার দাম আছে, আপনার সাধারণ SmsGrab ব্যালান্স থেকে পরিশোধ হয় এবং একই স্বয়ংক্রিয় ফেরতের আওতায় থাকে।
কারা ব্যবহার করতে পারেন
- নিশ্চিত ঠিকানাসহ ইমেল অ্যাকাউন্ট। অতিথি অ্যাকাউন্ট কী তৈরি করতে পারে না।
- বিধিনিষেধ ছাড়া অ্যাকাউন্ট।
১. API কী তৈরি করুন
ওয়েবসাইটে অ্যাকাউন্ট > ডেভেলপার বা অ্যাপে সেটিংস > ডেভেলপার API খুলে একটি কী তৈরি করুন। নিরাপত্তার জন্য পাসওয়ার্ড দিয়ে, আর দুই-ধাপের যাচাই চালু থাকলে তার কোড দিয়েও নিশ্চিত করেন। শুধু পড়ার টুলের জন্য read স্কোপ, বা নম্বর কেনার জন্য read ও purchase বাছুন।
কী sgk_ দিয়ে শুরু হয় এবং শুধু একবার দেখানো হয়। এটি আপনার সার্ভারের গোপন স্টোরেজে রাখুন। দেখুন API কী ও নিরাপত্তা।
২. প্রমাণীকরণ
বেস URL হলো https://smsgrab.com/api/dev/v1। কী bearer টোকেন হিসেবে বা X-Api-Key হেডারে পাঠান:
GET /api/dev/v1/balance HTTP/1.1
Host: smsgrab.com
Authorization: Bearer sgk_your_key_here
কী সার্ভারেই থাকা উচিত। কখনো ওয়েবসাইট, ব্রাউজার এক্সটেনশন বা অন্যকে দেওয়া অ্যাপে কী রাখবেন না।
৩. ব্যালান্স ও দাম দেখুন
export SMSGRAB_KEY="sgk_your_key_here"
curl -s https://smsgrab.com/api/dev/v1/balance \
-H "Authorization: Bearer $SMSGRAB_KEY"
curl -s "https://smsgrab.com/api/dev/v1/prices?service=whatsapp&country=indonesia" \
-H "Authorization: Bearer $SMSGRAB_KEY"
টাকা সবসময় USD-এর ক্ষুদ্রতম এককে দেওয়া হয়, তাই 18 মানে 0.18 USD। price_minor আপনার ডেভেলপার দাম এবং retail_price_minor অ্যাপের দাম।
{ "currency": "USD", "markup_percent": 80,
"items": [ { "service_id": "whatsapp", "country_id": "indonesia", "price_minor": 18,
"retail_price_minor": 25, "available_numbers": 30412 } ] }
৪. নম্বর কিনুন
curl -s -X POST https://smsgrab.com/api/dev/v1/activations \
-H "Authorization: Bearer $SMSGRAB_KEY" \
-H "Idempotency-Key: order-7f3c2a" \
-H "Content-Type: application/json" \
-d '{"service":"whatsapp","country":"indonesia","max_price_minor":20}'
serviceওcountryআমাদের আইডি নেয়, যেমনwhatsappওindonesia। দেশের জন্যID-এর মতো ISO কোডও চলে।max_price_minorআপনাকে রক্ষা করে: দাম বেড়ে গেলে কিছু কাটা হয় না এবং আপনি409 PRICE_CHANGEDপান।Idempotency-Keyপুনরায় চেষ্টা নিরাপদ করে। একই কী দিয়ে অনুরোধ আবার পাঠালে দুবার কেনার বদলে প্রথম ফলাফল ফেরত আসে।
উত্তর হলো অ্যাক্টিভেশনসহ 201 Created:
{ "id": "5c1d0c2e-8a41-4f7e-9d7a-2f1d9f1b8c11", "compat_id": 100000123, "status": "WAITING_SMS",
"service_id": "whatsapp", "country_id": "indonesia", "phone_number": "+6281234567890",
"price_minor": 18, "currency": "USD",
"created_at": "2026-09-27T10:05:00.000Z", "expires_at": "2026-09-27T10:25:00.000Z",
"refunded": false, "refund_minor": 0, "sms": [] }
৫. SMS-এর অপেক্ষা করুন
ঘন লুপে বারবার জিজ্ঞেস না করে, কিছু বদলানো পর্যন্ত API-কে অনুরোধটি ৩০ সেকেন্ড পর্যন্ত ধরে রাখতে দিন:
curl -s "https://smsgrab.com/api/dev/v1/activations/100000123?wait=25" \
-H "Authorization: Bearer $SMSGRAB_KEY"
বার্তা এলে status হয়ে যায় CODE_RECEIVED এবং sms-এ এ পর্যন্ত আসা সব বার্তা থাকে:
{ "status": "CODE_RECEIVED",
"sms": [ { "code": "482913", "text": "Your WhatsApp code is 482-913", "sender": "WhatsApp",
"received_at": "2026-09-27T10:06:12.004Z" } ] }
বারবার জিজ্ঞেসের বদলে পুশ চান? ওয়েবহুক সেট করুন।
৬. শেষ করুন বা বাতিল করুন
curl -s -X POST https://smsgrab.com/api/dev/v1/activations/100000123/finish \
-H "Authorization: Bearer $SMSGRAB_KEY"
curl -s -X POST https://smsgrab.com/api/dev/v1/activations/100000123/cancel \
-H "Authorization: Bearer $SMSGRAB_KEY"
- কোড ব্যবহারের পর finish। কোড আসার পরেই এটি গ্রহণ করা হয়।
- প্রথম কোডের অপেক্ষায় থাকাকালীন cancel। পুরো দাম ফেরত আসে।
- কিছু না করলে কোড ছাড়া নম্বর ২০ মিনিট পর মেয়াদোত্তীর্ণ হয় এবং স্বয়ংক্রিয়ভাবে টাকা ফেরত আসে।
অবস্থার মান
| অবস্থা | মানে |
|---|---|
WAITING_SMS |
কেনা হয়েছে, প্রথম বার্তার অপেক্ষা |
CODE_RECEIVED |
অন্তত একটি বার্তা এসেছে |
COMPLETED |
আপনি শেষ করেছেন, বা কোডের পর সময় শেষ হয়েছে |
CANCELLED |
কোডের আগে বাতিল, টাকা ফেরত |
EXPIRED |
২০ মিনিটে কোনো কোড নেই, টাকা ফেরত |
ত্রুটি
প্রতিটি ত্রুটির আকার একই। code ও reason অনুযায়ী কাজ করুন, আর যেসব কারণ এখনও জানেন না সেগুলো উপেক্ষা করুন:
{ "code": "NO_NUMBERS_AVAILABLE", "message": "No numbers available for this service and country", "reason": "OUT_OF_STOCK" }
সাধারণ ক্ষেত্রগুলো হলো 402 INSUFFICIENT_BALANCE, 409 NO_NUMBERS_AVAILABLE, 409 PRICE_CHANGED, ACTIVATION_LIMIT_REACHED-সহ 422 (প্রতি অ্যাকাউন্টে একসাথে সর্বোচ্চ ১০০টি নম্বর অপেক্ষা করতে পারে) এবং Retry-After হেডারসহ 429 RATE_LIMITED।
পূর্ণ রেফারেন্স ডেভেলপার ডকুমেন্টেশনে আছে।
এই নিবন্ধটি কি কাজে এসেছে?
ধন্যবাদ! কাজে এসেছে জেনে ভালো লাগল।