Full LLM thinking from the 4-phase benchmark pipeline.
```json
{
"service_type": "crypto_app",
"base_url": "https://1inch.io/api",
"auth_method": "none",
"auth_config": {},
"endpoints": [
{"path": "/v1.1/healthcheck", "method": "GET", "purpose": "service health status"},
{"path": "/v1.1/quote", "method": "GET", "purpose": "get exchange rate for token swaps"},
{"path": "/v1.1/swap", "method": "POST", "purpose": "execute token swap"},
{"path": "/v1.1/tokens", "method": "GET", "purpose": "get list of available tokens"}
],
"pricing_model": {"type": "free", "details": {}},
"rate_limits": {"rpm": 60},
"capabilities": ["swaps", "dex_aggregator"],
"crypto_specifics": {
"supported_chains": ["ethereum", "binance_smart_chain", "polygon"],
"token_count": 1000,
"has_websocket": false,
"has_orderbook": false,
"fee_structure": "dynamic_fee",
"security_features": ["smart_contract_audit", "open_source"]
}
}
``````json
{
"tests": [
{
"name": "healthcheck_endpoint_test",
"endpoint": "/v1.1/healthcheck",
"method": "GET",
"headers": {},
"payload": {},
"expected_status": 200,
"expected_behavior": "Returns service health status",
"metrics": ["latency", "status_code"],
"validation": {"field": "status", "type": "string", "min_length": 1}
},
{
"name": "quote_endpoint_basic_test",
"endpoint": "/v1.1/quote",
"method": "GET",
"headers": {},
"payload": {"fromTokenSymbol": "ETH", "toTokenSymbol": "DAI", "amount": "1000000000000000000"},
"expected_status": 200,
"expected_behavior": "Returns exchange rate for token swap",
"metrics": ["latency", "accuracy", "status_code"],
"validation": {"field": "toTokenAmount", "type": "string", "min_length": 1}
},
{
"name": "swap_endpoint_test_valid_payload",
"endpoint": "/v1.1/swap",
"method": "POST",
"headers": {},
"payload": {"fromTokenSymbol": "ETH", "toTokenSymbol": "DAI", "fromAddress": "0x0000000000000000000000000000000000000000", "amount": "100000000000000", "slippage": 1},
"expected_status": 200,
"expected_behavior": "Executes token swap",
"metrics": ["latency", "status_code"],
"validation": {"field": "transaction", "type": "object", "min_length": 1}
},
{
"name": "tokens_list_test",
"endpoint": "/v1.1/tokens",
"method": "GET",
"headers": {},
"payload": {},
"expected_status": 200,
"expected_behavior": "Returns list of available tokens",
"metrics": ["latency", "accuracy", "status_code"],
"validation": {"field": "tokens", "type": "array", "min_length": 1}
},
{
"name": "error_handling_test_invalid_pair",
"endpoint": "/v1.1/quote",
"method": "GET",
"headers": {},
"payload": {"fromTokenSymbol": "INVALID", "toTokenSymbol": "INVALID", "amount": "1000000000000000000"},
"expected_status": 400,
"expected_behavior": "Returns error for invalid token pair",
"metrics": ["status_code"],
"validation": {"field": "error", "type": "string", "min_length": 1}
}
],
"pricing_probes": [],
"stress_profile": {
"concurrent_requests": 5,
"duration_seconds": 10,
"ramp_up": true
}
}
```0/5 tests passed
| Test | Endpoint | Status | Latency |
|---|---|---|---|
| healthcheck_endpoint_test | GET /v1.1/healthcheck | 301 | 55ms |
| quote_endpoint_basic_test | GET /v1.1/quote | 301 | 17ms |
| swap_endpoint_test_valid_payload | POST /v1.1/swap | 301 | 17ms |
| tokens_list_test | GET /v1.1/tokens | 301 | 18ms |
| error_handling_test_invalid_pair | GET /v1.1/quote | 301 | 17ms |
```json
{
"overall": 52,
"dimensions": {
"token_efficiency": 7.5,
"first_try_success": 0.0,
"response_parseability": 0.0,
"error_clarity": 0.0,
"doc_quality": 5.0,
"auth_simplicity": 10.0,
"latency": 8.0,
"consistency": 5.0
},
"pricing_normalized": {
"maker_fee_bps": null,
"taker_fee_bps": null,
"withdrawal_fee_usd": null,
"free_tier_requests": null
},
"issues": [
"All endpoint requests returned status code 301, indicating permanent redirection which might affect data retrieval.",
"No response preview or error messages were provided, impacting the ability to parse response content and assess error clarity.",
"Security headers are missing, suggesting potential security vulnerabilities."
],
"recommendations": [
"Ensure endpoints provide correct and successful responses (e.g., status code 200) to improve first try success rates.",
"Implement proper error handling to provide clear and informative error messages for invalid requests.",
"Include security headers in responses to protect against common web vulnerabilities.",
"Provide detailed and clear API documentation with examples, especially illustrating successful and failure scenarios for endpoints."
]
}
```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/1inch">
<img src="https://prowl.world/badge/1inch.svg" height="56" alt="Agent-readiness on Prowl">
</a>
See operational metrics, LLM evaluations, agent readiness, and more.
Open in Dashboard