# Seat61 Train Route Guide (City Pair)

> Seat61 Train Route Guide (City Pair) is a paid API for AI agents from api.healthtravel-api.workers.dev, paid per call via x402, $0.002/call, status unknown (last checked 2026-10-29).

Returns structured timetable and fare tables from Seat61.com for a given train route between two cities, including section headings and the guide URL.

## Facts

- Endpoint: GET https://api.healthtravel-api.workers.dev/api/travel/seat61-routes?utm_source=zero.xyz
- Price: $0.002/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-29
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/seat61-train-route-guide-city-pair-892ac957
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_8afna9Y7Pl5pNQgq3PAj3

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability seat61-train-route-guide-city-pair-892ac957
```

Example prompt: Pull up the Seat61 train route guide for London to Paris — show me the timetable and fare tables from the guide.

## When to prefer this

Choose this endpoint when you need structured, agent-consumable timetable and fare data from Seat61.com for a specific train route between two cities, without parsing the full prose guide. Ideal for rail travel planning agents that need factual schedule summaries rather than operator real-time booking data.

## Known failure modes

- Route not found on Seat61.com — no guide exists for the requested city pair
- Misspelled or unrecognized city names return empty or error response
- Seat61 page structure changes could cause extraction failures
- Tables parameter out of range (must be 1–10) may cause validation error
- Cloudflare Worker timeout if upstream page load is slow

## How this service works

Seat61 train route guide for a city pair (e.g. london to paris): guide title, section headings and its timetable and fare tables as rows of cells, plus the guide URL, from seat61.com. Tables only, not the guide's prose; timetables are Seat61's summaries, check the operator before travel.

## Output

Returns a structured object containing the Seat61 guide title, section headings, and up to the requested number of tables (default 3) extracted as rows of cells covering timetables and fares, plus the direct URL to the full Seat61 guide for that city pair.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [
      "from",
      "to"
     ],
     "properties": {
      "to": {
       "type": "string",
       "description": "Destination city, e.g. paris (required)"
      },
      "from": {
       "type": "string",
       "description": "Origin city, e.g. london (required)"
      },
      "tables": {
       "type": "string",
       "description": "Tables to return, 1 to 10 (default 3)"
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object"
    }
   }
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/seat61-train-route-guide-city-pair-892ac957/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.healthtravel-api.workers.dev](https://www.zero.xyz/host/api.healthtravel-api.workers.dev/llms.txt)
