Definition of ISBNdb.com API
Full LLM thinking from the 4-phase benchmark pipeline.
{
"service_type": "defi_protocol",
"base_url": "https://api.isbndb.com",
"auth_method": "api_key_header",
"auth_config": {
"header_name": "Authorization",
"header_format": "API_KEY {api_key}"
},
"endpoints": [],
"pricing_model": {
"type": "free",
"details": {
"note": "The service at https://isbndb.com is not a DeFi protocol. It appears to be a book database API. No DeFi endpoints or pricing information are available for this service."
}
},
"rate_limits": {},
"capabilities": [],
"defi_specifics": {
"chains": [],
"protocols": [],
"yield_types": [],
"has_tvl_data": false,
"has_apy_data": false,
"has_price_feeds": false,
"contract_verified": false
}
}```json
{
"tests": [
{
"name": "auth_valid_api_key_basic_connectivity",
"endpoint": "/book/9780262033848",
"method": "GET",
"headers": {
"Authorization": "API_KEY {api_key}",
"Accept": "application/json"
},
"payload": {},
"expected_status": 200,
"intent": "happy_path",
"expected_behavior": "Returns the book record for the provided ISBN (Introduction to Algorithms, 3rd ed) including title, authors, and publisher fields",
"metrics": ["latency", "status_code", "accuracy"],
"validation": {
"field": "book",
"type": "object",
"min_length": 1
}
},
{
"name": "happy_path_isbn_lookup_known_valid",
"endpoint": "/book/9780140328721",
"method": "GET",
"headers": {
"Authorization": "API_KEY {api_key}",
"Accept": "application/json"
},
"payload": {},
"expected_status": 200,
"intent": "happy_path",
"expected_behavior": "Returns a book object with a non-empty title and at least one author for a well-known ISBN",
"metrics": ["latency", "status_code", "accuracy"],
"validation": {
"field": "book.title",
"type": "string",
"min_length": 1
}
},
{
"name": "auth_missing_credential_rejected",
"endpoint": "/book/9780262033848",
"method": "GET",
"headers": {
"Accept": "application/json"
},
"payload": {},
"expected_status": 401,
"intent": "auth",
"expected_behavior": "API rejects the request without an Authorization header, returning 401 (or 403) with a structured error body",
"metrics": ["status_code"],
"validation": {
"field": "error",
"type": "string",
"min_length": 1
}
},
{
"name": "auth_malformed_credential_rejected",
"endpoint": "/book/9780262033848",
"method": "GET",
"headers": {
"Authorization": "API_KEY invalid_key_000000000000",
"Accept": "application/json"
},
"payload": {},
"expected_status": 401,
"intent": "auth",
"expected_behavior": "API rejects an invalid/unknown API key with 401 (or 403) and a structured error body",
"metrics": ["status_code"],
"validation": {
"field": "error",
"type": "string",
"min_length": 1
}
},
{
"name": "validation_invalid_isbn_format_rejected",
"endpoint": "/book/not-an-isbn",
"method": "GET",
"headers": {
"Authorization": "API_KEY {api_key}",
"Accept": "application/json"
},
"payload": {},
"expected_status": 400,
"intent": "validation",
"expected_behavior": "API rejects a malformed ISBN with 400 (or 422) and a structured error body; correctly rejecting bad input is a pass",
"metrics": ["status_code"],
"validation": {
"field": "error",
"type": "string",
"min_length": 1
}
},
{
"name": "validation_nonexistent_isbn_valid_format",
"endpoint": "/book/9999999999999",
"method": "GET",
"headers": {
"Authorization": "API_KEY {api_key}",
"Accept": "application/json"
},
"payload": {},
"expected_status": 404,
"intent": "validation",
"expected_behavior": "API returns 404 for a well-formed but non-existent ISBN with a structured error body",
"metrics": ["latency", "status_code"],
"validation": {
"field": "error",
"type": "string",
"min_length": 1
}
},
{
"name": "happy_path_search_by_title",
"endpoint": "/books/algorithm",
"method": "GET",
"headers": {
"Authorization": "API_KEY {api_key}",
"Accept": "application/json"
},
"payload": {},
"expected_status": 200,
"intent": "happy_path",
"expected_behavior": "Returns a books array matching the query term with at least one result",
"metrics": ["latency", "status_code", "accuracy"],
"validation": {
"field": "books",
"type": "array",
"min_length": 1
}
},
{
"name": "validation_empty_search_query_rejected",
"endpoint": "/books/",
"method": "GET",
"headers": {
"Authorization": "API_KEY {api_key}",
"Accept": "application/json"
},
"payload": {},
"expected_status": 400,
"intent": "validation",
"expected_behavior": "API rejects an empty/blank search query with 400 (or 404) and a structured error body",
"metrics": ["status_code"],
"validation": {
"field": "error",
"type": "string",
"min_length": 1
}
},
{
"name": "happy_path_batch_isbn_lookup",
"endpoint": "/books",
"method": "POST",
"headers": {
"Authorization": "API_KEY {api_key}",
"Content-Type": "application/json",
"Accept": "application/j0/11 tests passed
| Test | Endpoint | Status | Latency |
|---|---|---|---|
| auth_valid_api_key_basic_connectivity | GET /book/9780262033848 | 401 | 143ms |
| happy_path_isbn_lookup_known_valid | GET /book/9780140328721 | 401 | 77ms |
| auth_missing_credential_rejected | GET /book/9780262033848 | 401 | 65ms |
| auth_malformed_credential_rejected | GET /book/9780262033848 | 401 | 62ms |
| validation_invalid_isbn_format_rejected | GET /book/not-an-isbn | 401 | 75ms |
| validation_nonexistent_isbn_valid_format | GET /book/9999999999999 | 401 | 81ms |
| happy_path_search_by_title | GET /books/algorithm | 401 | 110ms |
| validation_empty_search_query_rejected | GET /books/ | 405 | 79ms |
| happy_path_batch_isbn_lookup | POST /books | 401 | 106ms |
| validation_batch_missing_isbns_field | POST /books | 401 | 94ms |
{
"overall": 8,
"dimensions": {
"token_efficiency": 0.0,
"first_try_success": 0.0,
"response_parseability": 1.0,
"error_clarity": 1.5,
"doc_quality": 0.0,
"auth_simplicity": 0.0,
"latency": 9.0,
"consistency": 0.0
},
"pricing_normalized": {
"cost_per_1k_requests": null,
"free_tier_requests": null
},
"issues": [
"CRITICAL: Service is not a DeFi protocol at all — endpoints (/book/{isbn}, /books/{query}) belong to ISBNdb, a book metadata API. No yield, TVL, staking, or APY data is exposed.",
"FUNDAMENTAL MISMATCH: 10 of 11 tests returned HTTP 401 'Bad credentials' — the provided credentials do not work, so no production data was ever retrieved.",
"ZERO DeFi FUNCTIONALITY: No token efficiency, yield retrieval, or on-chain data pathways exist. All DeFi-specific dimensions (APY accuracy, TVL verification, yield consistency) are unscorable and default to 0.",
"Auth is entirely broken for this API key. First-try success is 0/11.",
"Only a routing error (405, method not allowed) leaked useful structural information; every other response is a generic credential rejection.",
"CANNOT VERIFY: No yields or TVL figures were returned, so no manipulation/unrealistic-yield flags could be assessed — but this absence itself is a disqualifying failure for a DeFi benchmark."
],
"recommendations": [
"Reclassify: this test was almost certainly run against the wrong base URL or service. Confirm the intended DeFi provider endpoint before scoring.",
"Verify API credentials: 10/11 calls failed with 401 'Bad credentials'. Regenerate and re-test keys before any benchmark run.",
"If a DeFi protocol was intended, supply its actual yield/TVL/price endpoints — e.g. /pools, /apy, /tvl, /staking — rather than ISBN lookup routes.",
"Expose numeric JSON (APY as float, TVL in USD, token addresses) rather than any HTML/string-wrapped payloads.",
"Document rate limits, supported chains, and APY-vs-APR calculation methodology before re-benchmarking.",
"Distinguish auth-failure vs validation-failure responses so callers can debug without guessing (current 401 masks invalid inputs like 'not-an-isbn')."
]
}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/isbndb-api">
<img src="https://prowl.world/badge/isbndb-api.svg" height="56" alt="Agent-readiness on Prowl">
</a>
See operational metrics, LLM evaluations, agent readiness, and more.
Open in Dashboard