72
/100
prowl
Benchmarked Aug 22, 2026

Metro Lisboa

Delays in subway lines

saas platform_profile
Benchmark Your API

Score Breakdown

Auth Simplicity 10/10
First-Try Success 9/10
Latency 8/10
Token Efficiency 8/10
Parseability 8/10
Consistency 7/10
Error Clarity 4/10
Documentation 3/10

Benchmark Analysis Log

Full LLM thinking from the 4-phase benchmark pipeline.

Analyze
{
  "service_type": "platform",
  "base_url": "http://app.metrolisboa.pt/status/getLinhas.php",
  "auth_method": "none",
  "auth_config": {},
  "endpoints": [
    {
      "name": "getLinhas",
      "method": "GET",
      "url": "http://app.metrolisboa.pt/status/getLinhas.php",
      "description": "Returns current status (delays) for Metro Lisboa subway lines.",
      "parameters": [],
      "response_example": {
        "resposta": {
          "amarela": " Ok",
          "azul": " Ok",
          "verde": " Ok",
          "vermelha": " Ok",
          "tipo_msg_am": "0",
          "tipo_msg_az": "0",
          "tipo_msg_vd": "0",
          "tipo_msg_vm": "0"
        },
        "codigo": "200"
      }
    }
  ],
  "pricing_model": {
    "type": "free",
    "details": {
      "access": "Public endpoint, no API key or subscription required.",
      "source": "Metro Lisboa official app likely provides this data for free."
    }
  },
  "rate_limits": {
    "unknown": "No rate limits specified; assume reasonable use."
  },
  "capabilities": [
    "Real-time status of Metro Lisboa subway lines (Yellow, Blue, Green, Red)",
    "Line-specific delay/downtime indicators",
    "Simple JSON response with status messages and message type codes"
  ],
  "raw_analysis": "Metro Lisboa is the subway system serving Lisbon, Portugal. The provided URL is an internal endpoint used by the official Metro Lisboa mobile app to fetch real-time status of its four main subway lines: Yellow (amarela), Blue (azul), Green (verde), and Red (vermelha). The response is a JSON object under 'resposta' with fields per line containing a short status message (e.g., ' Ok' for normal operation), and a corresponding 'tipo_msg_*' field indicating an integer code (0 here) that likely represents the type of message (e.g., no alert, minor delay, etc.). The service also returns a top-level 'codigo' field with HTTP-like status code. The endpoint is a simple GET request, requires no authentication, and appears to be freely accessible. The platform is quite mature as it is operated by the official transit authority, but this specific endpoint is not a comprehensive public API - it's a lightweight status feed. It is aimed at developers or data integrators who want to monitor subway delays for commute apps, dashboards, or news alerts. Integration is minimal since it's just a single endpoint, but it could be polled periodically. There are no known public documentation or rate limits, but the URL suggests it's part of a larger app backend. The service likely provides updates in near real-time, given the nature of status feeds. However, the response format is Portuguese-specific and may require interpretation. Overall, it's a niche, specialized endpoint rather than a full platform, but it can be used as a data source for transit status."
}
Execute

3/3 tests passed

TestEndpointStatusLatency
website_uptimeGET /200659ms
robots_txtGET /robots.txt200292ms
llms_txtGET /llms.txt200293ms
Interpret
```json
{
  "overall": 62,
  "dimensions": {
    "token_efficiency": 8.0,
    "first_try_success": 9.0,
    "response_parseability": 8.5,
    "error_clarity": 4.0,
    "doc_quality": 3.0,
    "auth_simplicity": 10.0,
    "latency": 7.5,
    "consistency": 7.0
  },
  "pricing_normalized": {
    "type": "free",
    "cost": 0,
    "notes": "Public endpoint, no API key required"
  },
  "issues": [
    {
      "issue": "No formal API documentation found — only the raw JSON response structure is discoverable via probe.",
      "impact": "Agents may struggle to understand message type codes (tipo_msg_*: 0 = normal?) without documentation.",
      "severity": "medium"
    },
    {
      "issue": "Error handling unclear — no documented error response format or status codes beyond the 'codigo' field mirroring HTTP codes.",
      "impact": "Agents cannot reliably distinguish between line outages vs. system errors without extra inference.",
      "severity": "medium"
    },
    {
      "issue": "Response fields are in Portuguese (amarela, azul, verde, vermelha) — no localization or field name aliases provided.",
      "impact": "Agents must hardcode Portuguese mappings, increasing fragility.",
      "severity": "low"
    }
  ],
  "recommendations": [
    {
      "recommendation": "Publish a minimal API spec (OpenAPI or plain-text) describing field semantics, message type codes, and error responses.",
      "priority": "high"
    },
    {
      "recommendation": "Add English-language aliases or a 'lang' query parameter to make the API more agent-friendly.",
      "priority": "medium"
    },
    {
      "recommendation": "Provide a human-readable status summary endpoint to reduce token overhead for quick checks.",
      "priority": "low"
    }
  ]
}
```

Agent Readiness

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

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/metro-lisboa">
  <img src="https://prowl.world/badge/metro-lisboa.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