```json
{
"tests": [
{
"name": "verify_symbols_list_endpoint",
"endpoint": "/v1/symbols",
"method": "GET",
"headers": {
"Authorization": "Bearer <API_KEY>"
},
"payload": {},
"expected_status": 200,
"expected_behavior": "Returns list of available symbols and trading pairs",
"metrics": ["latency", "status_code"],
"validation": {"field": "data", "type": "array", "min_length": 1}
},
{
"name": "verify_ticker_price_endpoint",
"endpoint": "/v1/pubticker/btcusd",
"method": "GET",
"headers": {
"Authorization": "Bearer <API_KEY>"
},
"payload": {},
"expected_status": 200,
"expected_behavior": "Returns price data for the BTC/USD symbol",
"metrics": ["latency", "accuracy", "status_code"],
"validation": {"field": "last_price", "type": "number", "min_value": 0}
},
{
"name": "verify_orderbook_feature_with_invalid_symbol",
"endpoint": "/v1/pubticker/invalidpair",
"method": "GET",
"headers": {
"Authorization": "Bearer <API_KEY>"
},
"payload": {},
"expected_status": 400,
"expected_behavior": "Handles incorrect trading pair with appropriate error response",
"metrics": ["status_code", "latency"],
"validation": {"field": "message", "type": "string", "should_include": "invalid symbol"}
}
],
"pricing_probes": [
{
"name": "verify_pricing_per_request",
"description": "Send a request and verify pricing response headers to check usage of request cost",
"endpoint": "/v1/symbols",
"method": "GET",
"payload": {},
"check": "response.headers['X-RateLimit-Remaining'] should be high and consistent with cost per request"
}
],
"stress_profile": {
"concurrent_requests": 5,
"duration_seconds": 10,
"ramp_up": true
}
}
```