Full LLM thinking from the 4-phase benchmark pipeline.
```json
{
"service_type": "crypto_app",
"base_url": "https://docs.kraken.com/rest",
"auth_method": "api_key_header",
"auth_config": {},
"endpoints": [
{"path": "/0/public/AssetPairs", "method": "GET", "purpose": "list trading pairs"},
{"path": "/0/public/Ticker", "method": "GET", "purpose": "price data"}
],
"pricing_model": {"type": "free", "details": {}},
"rate_limits": {"rpm": 60},
"capabilities": ["spot_trading", "futures", "staking"],
"crypto_specifics": {
"supported_chains": ["ethereum", "bitcoin"],
"token_count": 160,
"has_websocket": true,
"has_orderbook": true,
"fee_structure": "maker/taker",
"security_features": ["2fa", "withdrawal_whitelist", "cold_storage"]
}
}
``````json
{
"tests": [
{
"name": "connectivity_and_authentication",
"endpoint": "/0/public/AssetPairs",
"method": "GET",
"headers": {"Authorization": "Bearer YOUR_API_KEY"},
"payload": {},
"expected_status": 200,
"expected_behavior": "Returns list of trading pairs",
"metrics": ["latency", "status_code"],
"validation": {"field": "result", "type": "object", "min_length": 1}
},
{
"name": "fetch_price_data",
"endpoint": "/0/public/Ticker",
"method": "GET",
"headers": {"Authorization": "Bearer YOUR_API_KEY"},
"payload": {"pair": "XXBTZUSD"},
"expected_status": 200,
"expected_behavior": "Returns price data for specified pair",
"metrics": ["latency", "status_code", "accuracy"],
"validation": {"field": "result.XXBTZUSD.a", "type": "array", "min_length": 1}
},
{
"name": "invalid_trading_pair_error_handling",
"endpoint": "/0/public/Ticker",
"method": "GET",
"headers": {"Authorization": "Bearer YOUR_API_KEY"},
"payload": {"pair": "INVALID_PAIR"},
"expected_status": 400,
"expected_behavior": "Returns error for invalid trading pair",
"metrics": ["latency", "status_code"],
"validation": {"field": "error", "type": "array", "min_length": 1}
},
{
"name": "rate_limit_header_check",
"endpoint": "/0/public/Ticker",
"method": "GET",
"headers": {"Authorization": "Bearer YOUR_API_KEY"},
"payload": {"pair": "XXBTZUSD"},
"expected_status": 200,
"expected_behavior": "Responses should include rate limit headers",
"metrics": ["status_code"],
"validation": {"field": "headers.Ratelimit-Remaining", "type": "string", "min_length": 1}
},
{
"name": "validate_fee_structure",
"endpoint": "/0/public/AssetPairs",
"method": "GET",
"headers": {"Authorization": "Bearer YOUR_API_KEY"},
"payload": {},
"expected_status": 200,
"expected_behavior": "Validate response contains fee structure (maker/taker)",
"metrics": ["latency", "status_code"],
"validation": {"field": "result.*.fees", "type": "array", "min_length": 1, "subfield_type": "array", "subfield_length": 2}
}
],
"pricing_probes": [],
"stress_profile": {
"concurrent_requests": 5,
"duration_seconds": 10,
"ramp_up": true
}
}
```0/5 tests passed
| Test | Endpoint | Status | Latency |
|---|---|---|---|
| connectivity_and_authentication | GET /0/public/AssetPairs | 302 | 69ms |
| fetch_price_data | GET /0/public/Ticker | 302 | 14ms |
| invalid_trading_pair_error_handling | GET /0/public/Ticker | 302 | 14ms |
| rate_limit_header_check | GET /0/public/Ticker | 302 | 14ms |
| validate_fee_structure | GET /0/public/AssetPairs | 302 | 14ms |
```json
{
"overall": 25,
"dimensions": {
"token_efficiency": 3.0,
"first_try_success": 0.0,
"response_parseability": 0.0,
"error_clarity": 0.0,
"doc_quality": 2.0,
"auth_simplicity": 10.0,
"latency": 8.0,
"consistency": 0.0
},
"pricing_normalized": {
"maker_fee_bps": null,
"taker_fee_bps": null,
"withdrawal_fee_usd": null,
"free_tier_requests": null
},
"issues": [],
"recommendations": [
"Investigate why all requests result in a 302 status code and resolve the issue to ensure correct response data.",
"Enhance response error clarity to include explanations for errors like invalid trading pairs or rate limits.",
"Improve documentation to ensure that all endpoints and error scenarios are well covered.",
"Ensure that response data is easily parseable and in numeric JSON format for prices and volumes.",
"Check the cause of inconsistent data retrieval leading to unexpected responses."
]
}
```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/kraken">
<img src="https://prowl.world/badge/kraken.svg" height="56" alt="Agent-readiness on Prowl">
</a>
See operational metrics, LLM evaluations, agent readiness, and more.
Open in Dashboard