Full LLM thinking from the 4-phase benchmark pipeline.
```json
{
"service_type": "crypto_app",
"base_url": "https://api.bitfinex.com",
"auth_method": "api_key_header",
"auth_config": {},
"endpoints": [
{"path": "/v1/symbols", "method": "GET", "purpose": "list available symbols and trading pairs"},
{"path": "/v1/pubticker/:symbol", "method": "GET", "purpose": "ticker price data for a symbol"}
],
"pricing_model": {"type": "per_request", "details": {"cost_per_request": "0.002 BFX"}},
"rate_limits": {"rpm": 90},
"capabilities": ["spot_trading", "futures", "staking"],
"crypto_specifics": {
"supported_chains": ["ethereum", "bitcoin", "litecoin"],
"token_count": 350,
"has_websocket": true,
"has_orderbook": true,
"fee_structure": "maker/taker",
"security_features": ["2fa", "ip_whitelist", "cold_storage"]
}
}
``````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
}
}
```2/3 tests passed
| Test | Endpoint | Status | Latency |
|---|---|---|---|
| verify_symbols_list_endpoint | GET /v1/symbols | 200 | 50ms |
| verify_ticker_price_endpoint | GET /v1/pubticker/btcusd | 200 | 22ms |
| verify_orderbook_feature_with_invalid_symbol | GET /v1/pubticker/invalidpair | 400 | 148ms |
```json
{
"overall": 78,
"dimensions": {
"token_efficiency": 9.0,
"first_try_success": 8.5,
"response_parseability": 7.0,
"error_clarity": 8.0,
"doc_quality": 6.0,
"auth_simplicity": 10.0,
"latency": 8.0,
"consistency": 9.0
},
"pricing_normalized": {
"maker_fee_bps": null,
"taker_fee_bps": null,
"withdrawal_fee_usd": null,
"free_tier_requests": null
},
"issues": [],
"recommendations": []
}
```Show your live agent-readiness score on your own site. Free, no auth — it updates as your score changes.
<a href="https://prowl.world/service/bitfinex">
<img src="https://prowl.world/badge/bitfinex.svg" height="56" alt="Agent-readiness on Prowl">
</a>
See operational metrics, LLM evaluations, agent readiness, and more.
Open in Dashboard