// REST API

REST API ডকুমেন্টেশন

টুলের এন্ডপয়েন্টগুলো GET ব্যবহার করে এবং { "status": "success", "data": … } আকারে JSON ফেরত দেয়। সাইন ইন করার পর API Docs পেজ থেকে পাওয়া ?api_key= প্যারামিটার দিয়ে যাচাই করুন।

এন্ডপয়েন্ট

বেস URL: https://mailsmmo.com

GET/api/v1/services

সার্ভিস — দাম ও স্টক

?service= ছাড়া পুরো তালিকা ফেরত দেয়। ?service= দিলে একটি সার্ভিসের দাম ও স্টক ফেরত দেয়। API key লাগে না।

প্রমাণীকরণ নেই

  • service (ঐচ্ছিক) — পুরো তালিকার জন্য খালি রাখুন; একটি কোড দিলে একটি সার্ভিস ফেরত আসে (facebook-এর মতো সাধারণ কোডও গ্রহণযোগ্য)

সফল

{ "status": "success", "data": { "services": [
    { "code": "otp_gmail_facebook", "name": "Facebook", "price": 5000, "stock": 42 }
  ] } }

GET/api/v1/me

অ্যাকাউন্ট তথ্য

কল করা API key-এর ID, ইমেইল ও ব্যালেন্স।

API key প্রয়োজন

সফল

{ "status": "success", "data": { "id": "b7e5...-uuid", "email": "demo@mailsmmo.com", "balance": 1000000, "created_at": "2026-01-15T08:30:00Z" } }

GET/api/v1/orders

অর্ডার তৈরি

দুটোর জন্য একটিই endpoint: Gmail OTP কোড (otp_gmail_*) একটি OTP মেইলবক্স দেয়; স্টক পণ্য কোড (hotmail_*…) পরিমাণ অনুযায়ী কেনে। তালিকাভুক্ত দামে ব্যালেন্স থেকে চার্জ হয়।

API key প্রয়োজন

  • service — OTP সার্ভিস কোড (otp_gmail_*) বা স্টক পণ্য কোড (যেমন hotmail_imap_12m_36m)
  • quantity (ঐচ্ছিক) — শুধু একবারে বিক্রি হওয়া ইমেইলের জন্য — পরিমাণ (ডিফল্ট 1)
  • unique_key (ঐচ্ছিক) — নিজে তৈরি UUID — আবার পাঠালে দুবার তৈরি বা চার্জ হবে না

সফল

{ "status": "success", "data": {
    "id": "b7e5a1c2-3d4e-4f60-8a91-2c3d4e5f6a7b", "email": "zurhansuzu@gmail.com",
    "service": "otp_gmail_facebook", "amount": 5000
  } }

GET/api/v1/orders/otp

অর্ডার দিয়ে OTP নিন

একটি অর্ডারের OTP পড়ে। API key লাগে না — অর্ডার কোড (order_id)-ই অ্যাক্সেস কী।

প্রমাণীকরণ নেই

  • order_id — অর্ডার কোড (অর্ডার তৈরির সময় ফেরত আসে)
  • unique_key (ঐচ্ছিক) — প্রতিটি কলের জন্য নিজে তৈরি নতুন UUID
  • from (ঐচ্ছিক) — Unix সেকেন্ড — নতুন কোড না থাকলে otp/received_at বাদ দেওয়া হয়

সফল

{ "status": "success", "data": {
    "otp": "481253", "amount": 5000, "received_at": 1732000000,
    "from": "security@facebookmail.com", "otp_history": [
      { "value": "481253", "received_at": 1732000000 }
    ] } }

GET/api/v1/otp/orders

OTP অর্ডার তালিকা

ভাড়া নেওয়া Gmail OTP অর্ডার, পৃষ্ঠা অনুযায়ী, প্রতিটি অর্ডারের সর্বশেষ OTP সহ।

API key প্রয়োজন

  • page (ঐচ্ছিক) — পৃষ্ঠা (ডিফল্ট 1)
  • page_size (ঐচ্ছিক) — প্রতি পৃষ্ঠায় সারি (ডিফল্ট 20, সর্বোচ্চ 200)

সফল

{ "status": "success", "data": { "orders": [
    { "id": "b7e5a1c2-3d4e-4f60-8a91-2c3d4e5f6a7b", "email": "...", "service": "otp_gmail_facebook",
      "latest_otp": "481253", "latest_link": null }
  ], "page": 1, "page_size": 20, "total": 137 } }

GET/api/v1/mail

সব বার্তা পড়ুন

একটি মেইলবক্সের সব বার্তা, বের করা OTP/লিংক সহ।

API key প্রয়োজন

  • order_id — অর্ডার কোড

সফল

{ "status": "success", "data": { "count": 1, "messages": [
    { "id": 88, "from": "...", "subject": "...", "otp": "481253", "received_at": "..." }
  ] } }

সাধারণ ত্রুটি কোড

{ "status": "error", "message": "out_of_stock", "retryable": true }
  • unauthorized — API key অবৈধ বা নেই (HTTP 401)
  • invalid_request — অনুরোধের প্যারামিটার অবৈধ (HTTP 400)
  • not_found — সার্ভিস, অর্ডার বা endpoint পাওয়া যায়নি (HTTP 404)
  • insufficient_balance — ব্যালেন্স অপর্যাপ্ত (HTTP 402)
  • out_of_stock — স্টক শেষ (HTTP 409) — Gmail OTP: retryable, কয়েক সেকেন্ড পর আবার চেষ্টা করুন; একবারে বিক্রির ইমেইল: রিস্টকের অপেক্ষা করুন
  • service_unavailable — সার্ভার এই মুহূর্তে অর্ডার সম্পন্ন করতে পারেনি — একই unique_key দিয়ে আবার চেষ্টা করুন (HTTP 503, retryable)
  • in_progress — অর্ডার চূড়ান্ত হচ্ছে বা প্রদানকারীর কাছে ইতিমধ্যে থাকতে পারে — একই unique_key দিয়ে আবার চেষ্টা করুন (HTTP 409, retryable)
  • forbidden — এই রিসোর্সে অনুমতি নেই (HTTP 403)
  • idempotency_mismatch — unique_key অন্য একটি অনুরোধে ব্যবহৃত হয়েছে — নতুন unique_key ব্যবহার করুন (HTTP 422)
  • order_cancelled — চার্জ হওয়ার আগেই অর্ডার ছেড়ে দেওয়া হয়েছে, কিছু কাটা হয়নি — আবার চেষ্টা করুন (HTTP 409, retryable)
  • too_many_requests — অনেক বেশি অনুরোধ — অপেক্ষা করে আবার চেষ্টা করুন (HTTP 429, retryable)
  • auth_unavailable — এই মুহূর্তে API key যাচাই করা যায়নি, key ঠিক আছে — আবার চেষ্টা করুন (HTTP 503, retryable)
  • shutting_down — সার্ভার রিস্টার্ট হচ্ছে — কয়েক সেকেন্ড পর আবার চেষ্টা করুন (HTTP 503, retryable)
  • payload_too_large — অনুরোধের body অনেক বড় (HTTP 413)
  • internal_server_error — সার্ভার ত্রুটি, পরে আবার চেষ্টা করুন (HTTP 500)

AI ও টুলের জন্য ডকুমেন্টেশন

Markdown-এ সম্পূর্ণ ডকুমেন্টেশন আছে https://mailsmmo.com/llms.txt-এ — ইন্টিগ্রেশন কোড তৈরি করতে Cursor, Claude বা ChatGPT-তে পেস্ট করুন।

unique_key দিয়ে নিরাপদে আবার চেষ্টা

প্রতিটি অর্ডারের সাথে একটি unique_key (নিজে তৈরি করা UUID) পাঠান। নেটওয়ার্ক বিচ্ছিন্ন হলে একই unique_key দিয়ে আবার চেষ্টা করুন: আগের অর্ডারটাই ফেরত পাবেন, নতুন অর্ডার হবে না এবং দ্বিতীয়বার চার্জও হবে না।

এররের ফরম্যাট

এরর হলে রেসপন্সে শুধু status, message (একটি snake_case এরর কোড) এবং retryable থাকে, যা জানায় আবার চেষ্টা করা উচিত কি না।

MailSMMO দিয়ে শুরু করুন

বিনামূল্যে সাইন আপ করুন, ওয়ালেটে টপ আপ করুন আর কয়েক মিনিটেই প্রথম মেইল ভাড়া নিন।

অ্যাকাউন্ট খুলুন →