Prowl
65/100
prowl
Benchmarked Oct 07, 2026

Vicentealonsosm975-hub API Verified

Auto-registered via benchmark URL submission.

auth api_benchmark public
Benchmark Your API

Score Breakdown

Latency10/10
Auth Simplicity9/10
Consistency8/10
Documentation7/10
Token Efficiency7/10
Parseability7/10
First-Try Success6/10
Error Clarity3/10

Benchmark Analysis Log

Full LLM thinking from the 4-phase benchmark pipeline.

Analyze
{
  "service_type": "rest_api",
  "base_url": "https://vicentealonsosm975-hub.github.io",
  "auth_method": "none",
  "auth_config": {},
  "endpoints": [
    {
      "path": "/openapi.json",
      "method": "GET",
      "purpose": "Muestra la interfaz principal de la tienda y el carrito de compras",
      "params": {},
      "response_format": "json",
      "is_primary": true
    }
  ],
  "pricing_model": {
    "type": "unknown",
    "details": {},
    "free_tier": null,
    "paid_tiers": []
  },
  "rate_limits": {
    "rpm": 60,
    "tpm": null,
    "daily": null,
    "concurrent": null
  },
  "capabilities": [
    "public_index",
    "ecommerce_storefront"
  ],
  "agent_readiness": {
    "supports_x402": false,
    "supports_streaming": false,
    "has_sandbox": false,
    "sdks": [],
    "agent_auth_methods": [
      "public"
    ]
  }
}
Plan
{
  "tests": [
    {
      "name": "fetch_openapi_spec",
      "endpoint": "/openapi.json",
      "method": "GET",
      "headers": {},
      "payload": {},
      "expected_status": 200,
      "intent": "happy_path",
      "expected_behavior": "Returns the OpenAPI JSON specification document",
      "metrics": ["latency", "status_code", "accuracy"],
      "validation": {
        "field": "openapi",
        "type": "string",
        "min_length": 1
      }
    },
    {
      "name": "openapi_spec_content_type",
      "endpoint": "/openapi.json",
      "method": "GET",
      "headers": {},
      "payload": {},
      "expected_status": 200,
      "intent": "happy_path",
      "expected_behavior": "Content contains paths object describing available endpoints",
      "metrics": ["accuracy"],
      "validation": {
        "field": "paths",
        "type": "object",
        "min_length": 1
      }
    },
    {
      "name": "missing_resource_returns_404",
      "endpoint": "/nonexistent-resource-xyz.json",
      "method": "GET",
      "headers": {},
      "payload": {},
      "expected_status": 404,
      "intent": "validation",
      "expected_behavior": "GitHub Pages returns a 404 page for unknown paths",
      "metrics": ["status_code"],
      "validation": {
        "field": "status",
        "type": "number",
        "equals": 404
      }
    },
    {
      "name": "wrong_method_returns_405_or_404",
      "endpoint": "/openapi.json",
      "method": "POST",
      "headers": {},
      "payload": {},
      "expected_status": 405,
      "intent": "validation",
      "expected_behavior": "Static hosting rejects non-GET methods on static asset",
      "metrics": ["status_code"],
      "validation": {
        "field": "status",
        "type": "number"
      }
    },
    {
      "name": "auth_header_ignored_on_public",
      "endpoint": "/openapi.json",
      "method": "GET",
      "headers": {"X-API-Key": "invalid-dummy-key-12345"},
      "payload": {},
      "expected_status": 200,
      "intent": "auth",
      "expected_behavior": "Public endpoint serves content regardless of spurious auth header",
      "metrics": ["status_code"],
      "validation": {
        "field": "status",
        "type": "number",
        "equals": 200
      }
    },
    {
      "name": "stress_sustained_fetch",
      "endpoint": "/openapi.json",
      "method": "GET",
      "headers": {},
      "payload": {},
      "expected_status": 200,
      "intent": "stress",
      "expected_behavior": "CDN serves static file reliably under concurrent load within rate limits",
      "metrics": ["latency", "status_code"],
      "validation": {
        "field": "status",
        "type": "number",
        "equals": 200
      }
    }
  ],
  "pricing_probes": [
    {
      "name": "verify_no_pricing_metadata",
      "description": "Static GitHub Pages site exposes no usage/token headers; confirm no billing endpoints present",
      "endpoint": "/openapi.json",
      "method": "GET",
      "payload": {},
      "check": "response headers should NOT contain x-ratelimit-remaining or usage fields; pricing model is effectively free/public"
    }
  ],
  "stress_profile": {
    "concurrent_requests": 3,
    "duration_seconds": 10,
    "ramp_up": true
  }
}
Execute

4/6 tests passed

TestEndpointStatusLatency
fetch_openapi_specGET /openapi.json20044ms
openapi_spec_content_typeGET /openapi.json20020ms
missing_resource_returns_404GET /nonexistent-resource-xyz.json40485ms
wrong_method_returns_405_or_404POST /openapi.json40523ms
auth_header_ignored_on_publicGET /openapi.json20068ms
stress_sustained_fetchGET /openapi.json20032ms
Interpret
{"model": "deepseek", "data": {"overall": 62, "dimensions": {"token_efficiency": 7.0, "first_try_success": 6.0, "response_parseability": 7.0, "error_clarity": 3.0, "doc_quality": 7.0, "auth_simplicity": 9.0, "latency": 10.0, "consistency": 8.0}, "pricing_normalized": {"cost_per_1k_requests": null, "cost_per_1m_input_tokens": null, "cost_per_1m_output_tokens": null, "free_tier_requests": null, "estimated_monthly_cost_light": null, "estimated_monthly_cost_heavy": null}, "issues": [{"severity": "high", "detail": "404 errors return an HTML 'Page not found' page (GitHub Pages default) instead of a structured JSON error body \u2014 agents cannot parse the failure.", "endpoint": "/nonexistent-resource-xyz.json"}, {"severity": "medium", "detail": "405 Not Allowed returns an HTML page (nginx-style) rather than structured JSON error.", "endpoint": "/openapi.json"}, {"severity": "medium", "detail": "OpenAPI spec declares server URL 'https://github.io' which is a placeholder, not a real host. The spec is served from GitHub Pages, so actual API base is ambiguous \u2014 agents cannot resolve real endpoints.", "endpoint": "/openapi.json"}, {"severity": "low", "detail": "No pricing information or free-tier details in the spec/marketing.", "endpoint": "/openapi.json"}], "recommendations": ["Return structured JSON error bodies (with `error` and `message` fields) for 4xx/5xx responses instead of default HTML error pages.", "Fix the OpenAPI `servers` entry to point to a real, resolvable API base URL rather than the placeholder 'https://github.io'.", "Document authentication requirements (currently auth appears ignored/public) and supported auth schemes explicitly.", "Add pricing/free-tier metadata to the spec or docs so agents can estimate cost.", "Add request/response JSON schema examples for each endpoint to improve first-try success."]}}

Agent Readiness

x402 Payments
Not supported
Streaming
No
Sandbox
None
Agent Auth
public
SDKs
None listed
MCP Support
No

Vendor Profile

API de tienda online para desarrolladores. Permite listar productos, gestionar el carrito de compras, controlar el inventario y validar el inicio de sesión de clientes de manera rápida y segura.

Features

HTML5 UIMódulo de LoginCarrito de compras dinámico

Embed your Prowl badge

Show your live agent-readiness score on your own site. Free, no auth — it updates as your score changes.

Prowl agent-readiness badge
<a href="https://prowl.world/service/vicentealonsosm975-hub-api">
  <img src="https://prowl.world/badge/vicentealonsosm975-hub-api.svg" height="56" alt="Agent-readiness on Prowl">
</a>

Options: ?style=light|dark · ?size=sm|md · ?variant=certified (claimed + DNS-verified only) · badge generator with preview

Want the full interactive view?

See operational metrics, LLM evaluations, agent readiness, and more.

Open in Dashboard