Movie information
Full LLM thinking from the 4-phase benchmark pipeline.
{
"service_type": "rest_api",
"base_url": "https://omdbapi.com",
"auth_method": "query_param",
"auth_config": {"param": "apikey"},
"endpoints": [
{
"path": "/",
"method": "GET",
"purpose": "Returns the most popular match for a given title using query parameter t",
"params": {
"t": {"type": "string", "required": true},
"y": {"type": "integer", "required": false},
"type": {"type": "string", "required": false},
"plot": {"type": "string", "required": false},
"r": {"type": "string", "required": false},
"callback": {"type": "string", "required": false}
},
"response_format": "json",
"is_primary": true
},
{
"path": "/",
"method": "GET",
"purpose": "Returns a single result based on the IMDb ID provided using query parameter i",
"params": {
"i": {"type": "string", "required": true},
"plot": {"type": "string", "required": false},
"r": {"type": "string", "required": false},
"callback": {"type": "string", "required": false}
},
"response_format": "json",
"is_primary": true
},
{
"path": "/",
"method": "GET",
"purpose": "Returns an array of results for a given title using query parameter s",
"params": {
"s": {"type": "string", "required": true},
"y": {"type": "integer", "required": false},
"type": {"type": "string", "required": false},
"r": {"type": "string", "required": false},
"callback": {"type": "string", "required": false}
},
"response_format": "json",
"is_primary": true
}
],
"pricing_model": {
"type": "subscription",
"details": {},
"free_tier": {"requests": 1000, "period": "day"},
"paid_tiers": [
{"name": "Free", "requests": 1000, "period": "day", "cost": 0},
{"name": "Patron", "requests": 100000, "period": "day", "cost": 1},
{"name": "Patron Plus", "requests": 1000000, "period": "day", "cost": 5}
]
},
"rate_limits": {"rpm": null, "tpm": null, "daily": 1000, "concurrent": null},
"capabilities": ["movie information", "series information", "IMDb ID lookup", "title search"],
"agent_readiness": {
"supports_x402": false,
"supports_streaming": false,
"has_sandbox": false,
"sdks": [],
"agent_auth_methods": ["api_key"]
}
}{
"tests": [
{
"name": "title_lookup_happy_path",
"endpoint": "/?t=The+Matrix&apikey=TEST_KEY",
"method": "GET",
"headers": {},
"payload": {},
"expected_status": 200,
"intent": "happy_path",
"expected_behavior": "Returns movie details for The Matrix",
"metrics": ["latency", "status_code"],
"validation": {"field": "Title", "type": "string", "min_length": 1}
},
{
"name": "id_lookup_happy_path",
"endpoint": "/?i=tt0133093&apikey=TEST_KEY",
"method": "GET",
"headers": {},
"payload": {},
"expected_status": 200,
"intent": "happy_path",
"expected_behavior": "Returns movie details for the given IMDb ID",
"metrics": ["latency", "status_code"],
"validation": {"field": "imdbID", "type": "string", "min_length": 1}
},
{
"name": "search_happy_path",
"endpoint": "/?s=Inception&apikey=TEST_KEY",
"method": "GET",
"headers": {},
"payload": {},
"expected_status": 200,
"intent": "happy_path",
"expected_behavior": "Returns a list of search results",
"metrics": ["latency", "status_code"],
"validation": {"field": "Search", "type": "array", "min_length": 1}
},
{
"name": "missing_api_key",
"endpoint": "/?t=The+Matrix",
"method": "GET",
"headers": {},
"payload": {},
"expected_status": 401,
"intent": "auth",
"expected_behavior": "Rejects request without API key",
"metrics": ["status_code"],
"validation": {}
},
{
"name": "invalid_api_key",
"endpoint": "/?t=The+Matrix&apikey=INVALID_KEY",
"method": "GET",
"headers": {},
"payload": {},
"expected_status": 401,
"intent": "auth",
"expected_behavior": "Rejects request with invalid API key",
"metrics": ["status_code"],
"validation": {}
},
{
"name": "missing_required_param",
"endpoint": "/?apikey=TEST_KEY",
"method": "GET",
"headers": {},
"payload": {},
"expected_status": 400,
"intent": "validation",
"expected_behavior": "Returns error indicating missing title or ID",
"metrics": ["status_code"],
"validation": {}
},
{
"name": "invalid_year_type",
"endpoint": "/?t=The+Matrix&y=notanumber&apikey=TEST_KEY",
"method": "GET",
"headers": {},
"payload": {},
"expected_status": 400,
"intent": "validation",
"expected_behavior": "Rejects non-integer year parameter",
"metrics": ["status_code"],
"validation": {}
},
{
"name": "invalid_type_param",
"endpoint": "/?t=The+Matrix&type=invalid&apikey=TEST_KEY",
"method": "GET",
"headers": {},
"payload": {},
"expected_status": 400,
"intent": "validation",
"expected_behavior": "Rejects invalid type value",
"metrics": ["status_code"],
"validation": {}
},
{
"name": "nonexistent_title",
"endpoint": "/?t=ThisMovieDoesNotExist12345&apikey=TEST_KEY",
"method": "GET",
"headers": {},
"payload": {},
"expected_status": 200,
"intent": "validation",
"expected_behavior": "Returns error response with 'Movie not found'",
"metrics": ["status_code"],
"validation": {"field": "Response", "type": "string", "min_length": 1}
},
{
"name": "search_empty_results",
"endpoint": "/?s=zzzzzzqqqqqq&apikey=TEST_KEY",
"method": "GET",
"headers": {},
"payload": {},
"expected_status": 200,
"intent": "validation",
"expected_behavior": "Returns error response with 'Movie not found'",
"metrics": ["status_code"],
"validation": {}
},
{
"name": "xml_response_format",
"endpoint": "/?t=The+Matrix&r=xml&apikey=TEST_KEY",
"method": "GET",
"headers": {},
"payload": {},
"expected_status": 200,
"intent": "happy_path",
"expected_behavior": "Returns XML response",
"metrics": ["latency", "status_code"],
"validation": {}
},
{
"name": "jsonp_callback",
"endpoint": "/?t=The+Matrix&callback=myFunc&apikey=TEST_KEY",
"method": "GET",
"headers": {},
"payload": {},
"expected_status": 200,
"intent": "happy_path",
"expected_behavior": "Returns JSONP wrapped response",
"metrics": ["latency", "status_code"],
"validation": {}
},
{
"name": "search_pagination",
"endpoint": "/?s=Matrix&page=2&apikey=TEST_KEY",
"method": "GET",
"headers": {},
"payload": {},
"expected_status": 200,
"intent": "happy_path",
"expected_behavior": "Returns second page of results",
"metrics": ["latency", "status_code"],
"validation": {"field": "Search", "type": "array", "min_length": 1}
},
{
"name": "full_plot",
"endpoint": "/?t=The+Matrix&plot=full&apikey=TEST_KEY",
14/14 tests passed
| Test | Endpoint | Status | Latency |
|---|---|---|---|
| title_lookup_happy_path | GET /?t=The+Matrix&apikey=TEST_KEY | 200 | 196ms |
| id_lookup_happy_path | GET /?i=tt0133093&apikey=TEST_KEY | 200 | 52ms |
| search_happy_path | GET /?s=Inception&apikey=TEST_KEY | 200 | 50ms |
| missing_api_key | GET /?t=The+Matrix | 200 | 55ms |
| invalid_api_key | GET /?t=The+Matrix&apikey=INVALID_KEY | 200 | 54ms |
| missing_required_param | GET /?apikey=TEST_KEY | 200 | 51ms |
| invalid_year_type | GET /?t=The+Matrix&y=notanumber&apikey=TEST_KEY | 200 | 54ms |
| invalid_type_param | GET /?t=The+Matrix&type=invalid&apikey=TEST_KEY | 200 | 50ms |
| nonexistent_title | GET /?t=ThisMovieDoesNotExist12345&apikey=TEST_KEY | 200 | 55ms |
| search_empty_results | GET /?s=zzzzzzqqqqqq&apikey=TEST_KEY | 200 | 55ms |
{"model": "deepseek", "data": {"overall": 0, "dimensions": {"token_efficiency": 2.0, "first_try_success": 0.0, "response_parseability": 1.0, "error_clarity": 1.0, "doc_quality": 3.0, "auth_simplicity": 6.0, "latency": 7.0, "consistency": 1.0}, "pricing_normalized": {"cost_per_1k_requests": null, "cost_per_1m_input_tokens": null, "cost_per_1m_output_tokens": null, "free_tier_requests": 1000, "estimated_monthly_cost_light": 0, "estimated_monthly_cost_heavy": 5}, "issues": [{"severity": "critical", "detail": "Benchmark used wrong base URL \u2014 all 14 tests returned HTML pages (Google Analytics script) instead of JSON API responses. This is a configuration error, not an API defect.", "endpoint": "/?t=The+Matrix&apikey=TEST_KEY"}], "recommendations": ["Re-run benchmark with correct API base URL from the vendor's guide (likely https://www.omdbapi.com/ or similar, not the root HTML page).", "Verify that the API key `TEST_KEY` is valid or use the documented free key.", "Ensure the caller sends requests to the actual API endpoint, not the homepage of the service."]}}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/open-movie-database">
<img src="https://prowl.world/badge/open-movie-database.svg" height="56" alt="Agent-readiness on Prowl">
</a>
See operational metrics, LLM evaluations, agent readiness, and more.
Open in Dashboard