API টেস্টিং এবং স্যান্ডবক্স এনভায়রনমেন্ট গাইড

Smart Money API-এর সম্পূর্ণ স্যান্ডবক্স এনভায়রনমেন্ট দিয়ে টেস্টিংয়ে দক্ষ হোন। বাস্তবসম্মত টেস্ট ডেটা, নির্ধারিত রেসপন্স এবং পরীক্ষা-নিরীক্ষার জন্য উদার রেট লিমিট ব্যবহার করে ঝুঁকিমুক্তভাবে ডেভেলপ করুন।

প্রকাশিত মার্চ ২১, ২০২৬ ১৪ মিনিটের পড়া ডেভেলপমেন্ট

স্যান্ডবক্স এনভায়রনমেন্ট ওভারভিউ

Smart Money API ডেভেলপমেন্ট এবং টেস্টিংয়ের জন্য একটি সম্পূর্ণ ফিচারযুক্ত স্যান্ডবক্স এনভায়রনমেন্ট প্রদান করে। স্যান্ডবক্সটি প্রোডাকশন API স্ট্রাকচারকে মিরর করে কিন্তু সিনথেটিক ডেটা এবং উদার রেট লিমিট ব্যবহার করে, যা আপনাকে লাইভে যাওয়ার আগে আত্মবিশ্বাসের সাথে ডেভেলপ করতে দেয়।

মূল বৈশিষ্ট্যসমূহ:

  • প্রোডাকশনের সাথে অভিন্ন — একই এন্ডপয়েন্টস, অথেন্টিকেশন, রেসপন্স ফরম্যাট
  • শুধুমাত্র টেস্ট ডেটা — বাস্তব অ্যাকাউন্ট বা লাইভ মার্কেটকে প্রভাবিত করে না
  • উচ্চ রেট লিমিটস — ১০,০০০ রিকোয়েস্ট/ঘণ্টা বনাম প্রোডাকশনে ১,০০০
  • নির্ধারিত রেসপন্স — পুনরাবৃত্তিমূলক টেস্টিংয়ের জন্য সামঞ্জস্যপূর্ণ টেস্ট ফিক্সচার
  • আইসোলেটেড অ্যাকাউন্টস — প্রোডাকশন ইউজার ডেটা থেকে আলাদা

সেরা অনুশীলন: সমস্ত ডেভেলপমেন্ট, টেস্টিং এবং স্টেজিংয়ের জন্য স্যান্ডবক্স এনভায়রনমেন্ট ব্যবহার করা উচিত। সম্পূর্ণ স্যান্ডবক্স ভ্যালিডেশনের পরেই শুধুমাত্র প্রোডাকশন ব্যবহার করুন।

স্যান্ডবক্স ফিচারসমূহ

বাস্তবসম্মত টেস্ট ডেটা

স্যান্ডবক্সে বাস্তবসম্মত ক্রিপ্টোকারেন্সি মার্কেট ডেটা রয়েছে যা এলোমেলোভাবে পরিবর্তিত হয় না:

  • হিস্টোরিকাল মার্কেট ডেটা (৬ মাসের বাস্তবসম্মত OHLCV)
  • স্থির তিমি ওয়ালেট অ্যাড্রেসেস যা সামঞ্জস্যপূর্ণ মুভমেন্ট প্যাটার্ন সহ
  • স্থিতিশীল ফান্ডিং রেট যা প্রতি ঘণ্টায় রিসেট হয়
  • এজ কেস টেস্টিংয়ের জন্য নির্ধারিত লিকুইডেশন প্যাটার্ন

টেস্ট-স্পেসিফিক ফিচারসমূহ

টেস্ট ফিচারসমূহ
// নির্ধারিত টেস্ট সিম্বলস
// সমস্ত টেস্ট সিম্বল TEST_ দিয়ে শুরু হয়
TEST_BTC, TEST_ETH, TEST_SOL, ইত্যাদি।
// সিমুলেটিং সিনারিওর জন্য ম্যাজিক টাইমস্ট্যাম্পস
GET /v1/derivatives/funding-heatmap?
timestamp=1234567890000 // ফিক্সড টেস্ট ডেটা রিটার্ন করে
// এক্সেপশন হ্যান্ডলিং টেস্টিংয়ের জন্য ফোর্স এরর
X-Test-Error: rate_limit_exceeded
X-Test-Error: service_unavailable

টেস্ট ইউটিলিটিস

  • ডেটা রিসেট — সমস্ত টেস্ট অ্যাকাউন্টকে প্রাথমিক অবস্থায় রিসেট করুন
  • টাইম কন্ট্রোল — বিভিন্ন মার্কেট কন্ডিশন সিমুলেট করুন
  • এরর ইনজেকশন — নির্দিষ্ট এরর রেসপন্স ফোর্স করুন
  • রেট লিমিট টেস্টিং — রেট লিমিট রেসপন্স ট্রিগার করুন
৩০ সেকেন্ডে আপনার API কী পান

বিল্ড করতে প্রস্তুত? একটি বিনামূল্যে API কী নিন (৫০ কল/দিন, কোন কার্ড নেই) এবং লাইভ তিমি, ফান্ডিং এবং অন-চেইন ডেটা পুল করা শুরু করুন।

আপনার API কী পান →

টেস্ট ক্রেডেনশিয়ালস

টেস্ট API কীস পাওয়া

ড্যাশবোর্ডের মাধ্যমে একটি টেস্ট অ্যাকাউন্ট তৈরি করে স্যান্ডবক্স API কীস জেনারেট করুন:

টেস্ট কী ফরম্যাট
// টেস্ট কীসের আলাদা প্রিফিক্স থাকে
sk_test_1234567890abcdef // টেস্ট API কী
sk_live_1234567890abcdef // প্রোডাকশন API কী
// স্বয়ংক্রিয়ভাবে উপযুক্ত এনভায়রনমেন্টে রাউট করে
GET https://api.smartmoneyapi.com/v1/whales
-H "Authorization: Bearer sk_test_xxx"
# স্বয়ংক্রিয়ভাবে স্যান্ডবক্সে রাউট করে

প্রি-কনফিগার্ড টেস্ট কীস

দ্রুত পরীক্ষা-নিরীক্ষার জন্য এই পাবলিক টেস্ট কীস ব্যবহার করুন (রেট লিমিটেড):

কী পারমিশনস লিমিট
sk_test_demo সব পড়ুন ১০০/ঘণ্টা
sk_test_trader পড়ুন + অ্যালার্টস ৫০০/ঘণ্টা
sk_test_pro ফুল অ্যাক্সেস ৫০০০/ঘণ্টা

প্রোডাকশনে টেস্ট কীস ব্যবহার করবেন না। এগুলোর সীমিত ফাংশনালিটি এবং রেট লিমিট রয়েছে।

টেস্ট ডেটা এবং ফিক্সচারস

উপলব্ধ টেস্ট সিম্বলস

স্যান্ডবক্সে এই টেস্ট ট্রেডিং পেয়ারস রয়েছে যা বাস্তবসম্মত হিস্টোরিকাল ডেটা সহ:

টেস্ট সিম্বলস
// ক্রিপ্টোকারেন্সি পেয়ারস
TEST_BTCUSDT, TEST_ETHUSDT, TEST_BNBUSDT
TEST_SOLSDT, TEST_ARBUSDT, TEST_OPUSDT
// টেস্ট সিম্বলস কোয়েরি করুন
GET /v1/symbols?test_only=true

টেস্ট তিমি ওয়ালেটস

নির্ধারিত আচরণ সহ প্রি-কনফিগার্ড টেস্ট ওয়ালেটস:

  • অ্যাকিউমুলেটর ওয়ালেট — ধারাবাহিকভাবে কিনছে, বুলিশ টেস্টিংয়ের জন্য ভালো
  • ডিস্ট্রিবিউটর ওয়ালেট — ধারাবাহিকভাবে বিক্রি করছে, বিয়ারিশ টেস্টিংয়ের জন্য ভালো
  • অসিলেটর ওয়ালেট — ক্রয়/বিক্রয় পর্যায়ক্রমে করে, রেঞ্জ-বাউন্ড টেস্টিংয়ের জন্য ভালো
  • ভোলাটিলিটি ওয়ালেট — স্ট্রেস টেস্টিংয়ের জন্য র্যান্ডম বড় ট্রানজেকশন

টেস্ট ডেটা রিসেট করা

টেস্ট ডেটা রিসেট করুন
// সমস্ত টেস্ট অ্যাকাউন্টকে প্রাথমিক অবস্থায় রিসেট করুন
POST /v1/test/reset
-H "Authorization: Bearer sk_test_xxx"
// নির্দিষ্ট রিসোর্স রিসেট করুন
POST /v1/test/reset?resource=whales
// রেসপন্স
{
"status": "reset_complete",
"timestamp": 1709980800000
}

স্যান্ডবক্স এন্ডপয়েন্টস

বেস URL গুলি

এনভায়রনমেন্ট URL গুলি
// স্যান্ডবক্স (টেস্ট মোড)
https://api-test.smartmoney.io/v1
// অথবা ক্যোয়ারী প্যারামিটার ব্যবহার করুন
https://api.smartmoneyapi.com/v1?environment=sandbox
// প্রোডাকশন (লাইভ মোড)
https://api.smartmoneyapi.com/v1

স্যান্ডবক্স-ওনলি এন্ডপয়েন্টস

এন্ডপয়েন্ট উদ্দেশ্য
POST /test/reset টেস্ট ডেটা প্রাথমিক অবস্থায় রিসেট করুন
POST /test/inject-error টেস্টিংয়ের জন্য নির্দিষ্ট এরর ইনজেক্ট করুন
POST /test/simulate-time বিভিন্ন মার্কেট কন্ডিশন সিমুলেট করুন
GET /test/status স্যান্ডবক্স এনভায়রনমেন্টের স্বাস্থ্য পরীক্ষা করুন

রেস্পন্স মকিং

টেস্ট এরর ইনজেক্টিং

এক্সেপশন হ্যান্ডলিং টেস্টিংয়ের জন্য নির্দিষ্ট এরর রেস্পন্স ফোর্স করুন:

এরর ইনজেকশন
// টেস্ট রেট লিমিট হ্যান্ডলিং
GET /v1/whales?X-Test-Error=rate_limit_exceeded
// টেস্ট সার্ভিস আনঅ্যাভেইলাবিলিটি
GET /v1/whales?X-Test-Error=service_unavailable
// টেস্ট অথেন্টিকেশন ফেইলিউর
GET /v1/whales?X-Test-Error=invalid_key
// টেস্ট টাইমআউট
GET /v1/whales?X-Test-Error=timeout

অ্যাভেইলেবল টেস্ট এররস

এরর কোড HTTP স্ট্যাটাস ইউস কেস
invalid_key 401 অথ এরর হ্যান্ডলিং
rate_limit_exceeded 429 ব্যাকঅফ লজিক টেস্টিং
not_found 404 মিসিং রিসোর্স হ্যান্ডলিং
service_unavailable 503 রিট্রাই লজিক টেস্টিং
timeout 504 টাইমআউট হ্যান্ডলিং

স্যান্ডবক্স রেট লিমিটস

রেট লিমিট টিয়ার্স

এনভায়রনমেন্ট লিমিট/ঘন্টা বার্স্ট উদ্দেশ্য
স্যান্ডবক্স 10,000 500/মিনিট ডেভেলপমেন্ট ও টেস্টিং
প্রোডাকশন ফ্রি 1,000 50/মিনিট হবি প্রজেক্টস
প্রোডাকশন ট্রেডার 10,000 400/মিনিট প্রফেশনাল ট্রেডিং
প্রোডাকশন প্রো 50,000 1000/মিনিট হাই-ফ্রিকোয়েন্সি সিস্টেমস

টেস্টিং রেট লিমিট হ্যান্ডলিং

রেট লিমিট টেস্টিং
// স্যান্ডবক্সে রেট লিমিট রেস্পন্স ট্রিগার করুন
curl -H "X-Test-Error: rate_limit_exceeded" \
https://api-test.smartmoney.io/v1/whales
// রেস্পন্সে রিট্রাই হেডার অন্তর্ভুক্ত
HTTP/1.1 429 Too Many Requests
X-RateLimit-Limit: 10000
X-RateLimit-Remaining: 0
X-RateLimit-Reset: 1709984400
Retry-After: 3600

টেস্টিং স্ট্র্যাটেজিস

ইউনিট টেস্টিং উইথ ফিক্সচারস

পাইথন ইউনিট টেস্ট
import unittest
import requests
class TestSmartMoneyAPI(unittest.TestCase):
def setUp(self):
self.api_key = 'sk_test_demo'
self.base_url = 'https://api-test.smartmoney.io/v1'
def test_whale_tracking(self):
response = requests.get(
f'{self.base_url}/whales/TEST_BTC',
headers={'Authorization': f'Bearer {self.api_key}'}
)
self.assertEqual(response.status_code, 200)
self.assertIn('whales', response.json())

ইন্টিগ্রেশন টেস্টিং

প্রোডাকশন ডেপ্লয়মেন্টের আগে স্যান্ডবক্সে সম্পূর্ণ ওয়ার্কফ্লো টেস্ট করুন:

  1. স্টেজিংয়ে স্যান্ডবক্স ক্রেডেনশিয়ালস সহ ডেপ্লয় করুন
  2. স্যান্ডবক্সের বিরুদ্ধে সম্পূর্ণ টেস্ট স্যুট রান করুন
  3. এরর ইনজেকশন দিয়ে এরর হ্যান্ডলিং টেস্ট করুন
  4. রেট লিমিটিং বিহেভিয়ার যাচাই করুন
  5. রেস্পন্স টাইম এবং লেটেন্সি চেক করুন
  6. শুধুমাত্র তখন প্রোডাকশনে প্রমোট করুন

লোড টেস্টিং

অ্যাপাচি বেঞ্চ দিয়ে লোড টেস্ট
// স্যান্ডবক্স হাই লোড টেস্টিং অনুমোদন করে
ab -n 5000 -c 100 \
-H "Authorization: Bearer sk_test_pro" \
https://api-test.smartmoney.io/v1/whales/TEST_BTC

CI/CD ইন্টিগ্রেশন

গিটহাব অ্যাকশনস উদাহরণ

.github/workflows/test.yml
name: API Tests
on: [push, pull_request]
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- run: pip install requests pytest
- env:
SMARTMONEY_API_KEY: ${{ secrets.TEST_API_KEY }}
SMARTMONEY_ENV: sandbox
run: pytest tests/

এনভায়রনমেন্ট কনফিগারেশন

স্যান্ডবক্স এবং প্রোডাকশনের মধ্যে পরিবর্তন করতে পরিবেশ ভেরিয়েবল ব্যবহার করুন:

পরিবেশ সেটআপ
// .env.sandbox
SMARTMONEY_API_KEY=sk_test_demo
SMARTMONEY_API_URL=https://api-test.smartmoney.io/v1
SMARTMONEY_ENV=sandbox
// .env.production
SMARTMONEY_API_KEY=sk_live_xxxx
SMARTMONEY_API_URL=https://api.smartmoneyapi.com/v1
SMARTMONEY_ENV=production

সমস্যা সমাধান

সাধারণ সমস্যা

টেস্ট কী কাজ করছে না

সমস্যা: টেস্ট কী ব্যবহার করে 401 অননুমোদিত ত্রুটি পাওয়া যাচ্ছে

সমাধান:

  • নিশ্চিত করুন কীটি sk_test_ দিয়ে শুরু হয়েছে (sk_live_ নয়)
  • অনুমোদন হেডার ফরম্যাট পরীক্ষা করুন: "Bearer sk_test_xxx"
  • নিশ্চিত করুন টেস্ট এন্ডপয়েন্ট ব্যবহার করছেন: api-test.smartmoney.io
  • টেস্ট কী এর রেট লিমিট অতিক্রান্ত হতে পারে

ডাটা রিসেট হচ্ছে না

সমস্যা: POST /test/reset এর পরেও টেস্ট ডাটা রিসেট হচ্ছে না

সমাধান:

  • রিসেট হতে ৩০ সেকেন্ড পর্যন্ত সময় লাগতে পারে
  • GET /test/status দিয়ে স্যান্ডবক্স স্ট্যাটাস চেক করুন
  • সঠিক টেস্ট API কী ব্যবহার করছেন তা নিশ্চিত করুন
  • সমস্যা স্থায়ী হলে সাপোর্টে যোগাযোগ করুন

স্যান্ডবক্সে রেট লিমিট

সমস্যা: স্যান্ডবক্সে রেট লিমিট অতিক্রান্ত হচ্ছে (যা হওয়া উচিত নয়)

সমাধান:

  • নিশ্চিত করুন sk_test_pro কী ব্যবহার করছেন (১০,০০০/ঘণ্টা)
  • X-RateLimit-Remaining হেডার চেক করুন
  • এক ঘণ্টার সীমানা পর্যন্ত অপেক্ষা করুন বা অন্য টেস্ট অ্যাকাউন্ট ব্যবহার করুন
  • অস্থায়ী রেট লিমিট বৃদ্ধির জন্য সাপোর্টে যোগাযোগ করুন

আজই টেস্টিং শুরু করুন

নিরাপদ, বিচ্ছিন্ন ডেভেলপমেন্টের জন্য আমাদের সম্পূর্ণ স্যান্ডবক্স এনভায়রনমেন্ট ব্যবহার করুন। ডিটারমিনিস্টিক টেস্ট ডাটা, উচ্চ রেট লিমিট, এবং প্রোডাকশনের সাথে সম্পূর্ণ ফিচার প্যারিটি।

টেস্ট ক্রেডেনশিয়াল পান
সব প্ল্যানে স্যান্ডবক্স অ্যাক্সেস অন্তর্ভুক্ত। অতিরিক্ত খরচ নেই।

সম্পর্কিত রিসোর্স

বিনামূল্যে শুরু করুন — ৫০ কল/দিন, কার্ড প্রয়োজন নেই

একটি API থেকে ৩টি এক্সচেঞ্জের লাইভ হোয়েল ফ্লো, ফান্ডিং, ওপেন ইন্টারেস্ট এবং অন-চেইন ডাটা পান। ফ্রি টিয়ার, ক্রেডিট কার্ড না লাগে, যেকোনো সময় আপগ্রেড করুন।

বিনামূল্যে শুরু করুন →
লাইভ API কনসোল ট্রাই করুন → (অ্যাকাউন্টের প্রয়োজন নেই)