API Testing and Sandbox Environment Guide

เชี่ยวชาญการทดสอบด้วยสภาพแวดล้อม Sandbox ที่ครอบคลุมของ Smart Money API พัฒนาโดยปราศจากความเสี่ยงด้วยข้อมูลทดสอบที่สมจริง การตอบสนองที่แน่นอน และข้อจำกัดอัตราที่เอื้อต่อการทดลอง

เผยแพร่เมื่อ 21 มีนาคม 2026 อ่าน 14 นาที การพัฒนา

ภาพรวมสภาพแวดล้อม Sandbox

Smart Money API จัดเตรียมสภาพแวดล้อม Sandbox ที่มีคุณสมบัติครบถ้วนสำหรับการพัฒนาและทดสอบ Sandbox สะท้อนโครงสร้าง API ของการผลิต แต่ใช้ข้อมูลสังเคราะห์และข้อจำกัดอัตราที่เอื้อต่อการพัฒนา ทำให้คุณสามารถพัฒนาอย่างมั่นใจก่อนที่จะใช้งานจริง

ลักษณะสำคัญ:

  • เหมือนกับการผลิต — จุดปลายทางเดียวกัน การตรวจสอบสิทธิ์ รูปแบบการตอบสนอง
  • ข้อมูลทดสอบเท่านั้น — ไม่มีผลกระทบต่อบัญชีจริงหรือตลาดสด
  • ข้อจำกัดอัตราสูง — 10,000 คำขอ/ชั่วโมง เทียบกับ 1,000 ในการผลิต
  • การตอบสนองที่แน่นอน — ชุดทดสอบที่สม่ำเสมอสำหรับการทดสอบที่ทำซ้ำได้
  • บัญชีที่แยกออก — แยกจากข้อมูลผู้ใช้ในการผลิต

แนวปฏิบัติที่ดีที่สุด: การพัฒนา การทดสอบ และการเตรียมการทั้งหมดควรใช้สภาพแวดล้อม Sandbox ใช้การผลิตเฉพาะหลังจากตรวจสอบ Sandbox อย่างละเอียด

คุณสมบัติของ Sandbox

ข้อมูลทดสอบที่สมจริง

Sandbox มีข้อมูลตลาด cryptocurrency ที่สมจริงซึ่งไม่เปลี่ยนแปลงแบบสุ่ม:

  • ข้อมูลตลาดในอดีต (6 เดือนของ OHLCV ที่สมจริง)
  • ที่อยู่กระเป๋าเงิน whale ที่คงที่พร้อมรูปแบบการเคลื่อนไหวที่สม่ำเสมอ
  • อัตราการให้ทุนที่คงที่ซึ่งรีเซ็ตทุกชั่วโมง
  • รูปแบบการชำระบัญชีที่แน่นอนสำหรับการทดสอบกรณีขอบ

คุณสมบัติเฉพาะการทดสอบ

คุณสมบัติการทดสอบ
// สัญลักษณ์ทดสอบที่แน่นอน
// สัญลักษณ์ทดสอบทั้งหมดเริ่มต้นด้วย TEST_
TEST_BTC, TEST_ETH, TEST_SOL, etc.
// เวลาที่กำหนดสำหรับการจำลองสถานการณ์
GET /v1/derivatives/funding-heatmap?
timestamp=1234567890000 // ส่งคืนข้อมูลทดสอบที่กำหนด
// บังคับให้เกิดข้อผิดพลาดสำหรับการทดสอบการจัดการข้อยกเว้น
X-Test-Error: rate_limit_exceeded
X-Test-Error: service_unavailable

เครื่องมือทดสอบ

  • รีเซ็ตข้อมูล — รีเซ็ตบัญชีทดสอบทั้งหมดไปยังสถานะเริ่มต้น
  • ควบคุมเวลา — จำลองสภาพตลาดที่แตกต่างกัน
  • การฉีดข้อผิดพลาด — บังคับให้เกิดการตอบสนองข้อผิดพลาดเฉพาะ
  • การทดสอบข้อจำกัดอัตรา — กระตุ้นการตอบสนองข้อจำกัดอัตรา
รับคีย์ API ของคุณใน 30 วินาที

พร้อมที่จะสร้างหรือยัง? รับคีย์ API ฟรี (50 ครั้ง/วัน ไม่ต้องใช้บัตร) และเริ่มดึงข้อมูล whale การให้ทุน และข้อมูลบน-chain แบบสด

รับคีย์ API ของคุณ →

ข้อมูลทดสอบ

การรับคีย์ API ทดสอบ

สร้างบัญชีทดสอบผ่านแดชบอร์ดเพื่อสร้างคีย์ API Sandbox:

รูปแบบคีย์ทดสอบ
// คีย์ทดสอบมีคำนำหน้าที่แตกต่างกัน
sk_test_1234567890abcdef // คีย์ API ทดสอบ
sk_live_1234567890abcdef // คีย์ API การผลิต
// นำทางไปยังสภาพแวดล้อมที่เหมาะสมโดยอัตโนมัติ
GET https://api.smartmoneyapi.com/v1/whales
-H "Authorization: Bearer sk_test_xxx"
# นำทางไปยัง Sandbox โดยอัตโนมัติ

คีย์ทดสอบที่กำหนดไว้ล่วงหน้า

ใช้คีย์ทดสอบสาธารณะเหล่านี้สำหรับการทดลองอย่างรวดเร็ว (จำกัดอัตรา):

คีย์ สิทธิ์ ข้อจำกัด
sk_test_demo อ่านทั้งหมด 100/ชั่วโมง
sk_test_trader อ่าน + การแจ้งเตือน 500/ชั่วโมง
sk_test_pro เข้าถึงเต็มที่ 5000/ชั่วโมง

ห้ามใช้คีย์ทดสอบในการผลิต พวกเขามีฟังก์ชันการทำงานและข้อจำกัดอัตราที่จำกัด

ข้อมูลทดสอบและชุดทดสอบ

สัญลักษณ์ทดสอบที่มีอยู่

Sandbox รวมคู่การซื้อขายทดสอบเหล่านี้พร้อมข้อมูลในอดีตที่สมจริง:

สัญลักษณ์ทดสอบ
// คู่ cryptocurrency
TEST_BTCUSDT, TEST_ETHUSDT, TEST_BNBUSDT
TEST_SOLSDT, TEST_ARBUSDT, TEST_OPUSDT
// ค้นหาสัญลักษณ์ทดสอบ
GET /v1/symbols?test_only=true

กระเป๋าเงิน whale ทดสอบ

กระเป๋าเงินทดสอบที่กำหนดไว้ล่วงหน้าพร้อมพฤติกรรมที่แน่นอน:

  • กระเป๋าเงินสะสม — ซื้ออย่างสม่ำเสมอ เหมาะสำหรับการทดสอบขาขึ้น
  • กระเป๋าเงินกระจาย — ขายอย่างสม่ำเสมอ เหมาะสำหรับการทดสอบขาลง
  • กระเป๋าเงินออสซิลเลเตอร์ — สลับการซื้อ/ขาย เหมาะสำหรับการทดสอบช่วง
  • กระเป๋าเงินความผันผวน — ธุรกรรมขนาดใหญ่แบบสุ่มสำหรับการทดสอบความเครียด

รีเซ็ตข้อมูลทดสอบ

รีเซ็ตข้อมูลทดสอบ
// รีเซ็ตบัญชีทดสอบทั้งหมดไปยังสถานะเริ่มต้น
POST /v1/test/reset
-H "Authorization: Bearer sk_test_xxx"
// รีเซ็ตทรัพยากรเฉพาะ
POST /v1/test/reset?resource=whales
// การตอบสนอง
{
"status": "reset_complete",
"timestamp": 1709980800000
}

Sandbox Endpoints

Base URLs

Environment URLs
// Sandbox (test mode)
https://api-test.smartmoney.io/v1
// Or use query parameter
https://api.smartmoneyapi.com/v1?environment=sandbox
// Production (live mode)
https://api.smartmoneyapi.com/v1

Sandbox-Only Endpoints

Endpoint Purpose
POST /test/reset รีเซ็ตข้อมูลทดสอบกลับสู่สถานะเริ่มต้น
POST /test/inject-error สร้างข้อผิดพลาดเฉพาะสำหรับการทดสอบ
POST /test/simulate-time จำลองสภาพตลาดที่แตกต่างกัน
GET /test/status ตรวจสอบสภาพแวดล้อมของ Sandbox

Response Mocking

Injecting Test Errors

บังคับให้เกิดข้อผิดพลาดเฉพาะสำหรับการทดสอบการจัดการข้อยกเว้น:

Error Injection
// ทดสอบการจัดการ rate limit
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

Available Test Errors

Error Code HTTP Status Use Case
invalid_key 401 การจัดการข้อผิดพลาดการยืนยันตัวตน
rate_limit_exceeded 429 การทดสอบลอจิก backoff
not_found 404 การจัดการทรัพยากรที่หายไป
service_unavailable 503 การทดสอบลอจิกการลองใหม่
timeout 504 การจัดการการหมดเวลา

Sandbox Rate Limits

Rate Limit Tiers

Environment Limit/Hour Burst Purpose
Sandbox 10,000 500/min การพัฒนาและการทดสอบ
Production Free 1,000 50/min โครงการส่วนตัว
Production Trader 10,000 400/min การเทรดระดับมืออาชีพ
Production Pro 50,000 1000/min ระบบความถี่สูง

Testing Rate Limit Handling

Rate Limit Testing
// กระตุ้นการตอบสนอง rate limit ใน sandbox
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

Testing Strategies

Unit Testing with Fixtures

Python Unit Test
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())

Integration Testing

ทดสอบเวิร์กโฟลว์ทั้งหมดใน sandbox ก่อนการใช้งานจริง:

  1. ปรับใช้ในสภาพแวดล้อม staging ด้วยข้อมูลรับรอง sandbox
  2. รันชุดทดสอบทั้งหมดกับ sandbox
  3. ทดสอบการจัดการข้อผิดพลาดด้วยการ inject error
  4. ตรวจสอบพฤติกรรมการจำกัด rate
  5. ตรวจสอบเวลาในการตอบสนองและความล่าช้า
  6. จากนั้นจึงย้ายไปยัง production

Load Testing

Load Test with Apache Bench
// Sandbox อนุญาตให้ทดสอบภาระงานสูง
ab -n 5000 -c 100 \
-H "Authorization: Bearer sk_test_pro" \
https://api-test.smartmoney.io/v1/whales/TEST_BTC

CI/CD Integration

GitHub Actions Example

.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/

Environment Configuration

ใช้ตัวแปรสภาพแวดล้อมเพื่อสลับระหว่าง sandbox และ production:

การตั้งค่าสภาพแวดล้อม
// .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 Unauthorized กับคีย์ทดสอบ

วิธีแก้ไข:

  • ตรวจสอบว่าคีย์ขึ้นต้นด้วย sk_test_ (ไม่ใช่ sk_live_)
  • ตรวจสอบรูปแบบหัวข้อ Authorization: "Bearer sk_test_xxx"
  • ตรวจสอบว่าใช้ endpoint ทดสอบ: api-test.smartmoney.io
  • คีย์ทดสอบอาจเกินขีดจำกัดการใช้งาน

ข้อมูลไม่รีเซ็ต

ปัญหา: ข้อมูลทดสอบไม่รีเซ็ตหลังเรียก POST /test/reset

วิธีแก้ไข:

  • การรีเซ็ตอาจใช้เวลาถึง 30 วินาทีในการประมวลผล
  • ตรวจสอบสถานะ sandbox ด้วย GET /test/status
  • ตรวจสอบว่าคีย์ทดสอบที่ใช้ถูกต้อง
  • ติดต่อฝ่ายสนับสนุนหากปัญหายังคงอยู่

ขีดจำกัดการใช้งานใน Sandbox

ปัญหา: พบขีดจำกัดการใช้งานใน sandbox (ไม่ควรเกิดขึ้น)

วิธีแก้ไข:

  • ตรวจสอบว่าคีย์ที่ใช้เป็น sk_test_pro (10,000 ครั้ง/ชั่วโมง)
  • ตรวจสอบหัวข้อ X-RateLimit-Remaining
  • รอจนถึงช่วงเริ่มต้นชั่วโมงใหม่หรือใช้บัญชีทดสอบอื่น
  • ติดต่อฝ่ายสนับสนุนเพื่อเพิ่มขีดจำกัดชั่วคราว

เริ่มทดสอบวันนี้

ใช้สภาพแวดล้อม sandbox ที่ครอบคลุมของเราสำหรับการพัฒนาที่ปลอดภัยและแยกออกจากระบบจริง ข้อมูลทดสอบที่แน่นอน, ขีดจำกัดการใช้งานสูง, และความสามารถครบถ้วนเทียบเท่ากับระบบ production

รับข้อมูลเข้าทดสอบ
ทุกแผนการใช้งานรวมถึงการเข้าถึง sandbox ไม่มีค่าใช้จ่ายเพิ่มเติม

แหล่งข้อมูลที่เกี่ยวข้อง

เริ่มต้นฟรี — 50 ครั้ง/วัน, ไม่ต้องใช้บัตร

รับข้อมูลการไหลของวาฬ, เงินทุน, open interest และข้อมูล on-chain จาก 3 exchange ผ่าน API เดียว ระดับฟรี, ไม่ต้องใช้บัตรเครดิต, อัปเกรดได้ตลอดเวลา

เริ่มต้นฟรี →
ลองใช้คอนโซล API แบบสด → (ไม่จำเป็นต้องมีบัญชี)