✓ Verified 🛒 E-commerce ✓ Enhanced Data

Db Travel

Plan journeys across Germany and Europe using the Deutsche Bahn API (v6.db.transport.rest)

Rating
4.6 (468 reviews)
Downloads
1,148 downloads
Version
1.0.0

Overview

Plan journeys across Germany and Europe using the Deutsche Bahn API (v6.db.transport.rest)

Complete Documentation

View Source →

DB Travel

Plan journeys across Germany and Europe via the Deutsche Bahn REST API. Covers ICE, IC/EC, regional trains, S-Bahn, U-Bahn, trams, buses, and ferries — with real-time delays.

No API key required. Free public API. Rate limit: 100 req/min.

Script

scripts/db-travel.py — standalone Python 3 CLI, no dependencies beyond stdlib.

Commands

bash
# Search for stations/stops
python3 scripts/db-travel.py search "Berlin Hbf"

# Plan a trip (place names auto-resolve)
python3 scripts/db-travel.py trip "Berlin Hbf" "Munich Hbf"

# Depart at specific time
python3 scripts/db-travel.py trip "Berlin Hbf" "Flughafen BER" --time "2025-03-01T10:00:00+01:00"

# Arrive by a specific time
python3 scripts/db-travel.py trip "Hamburg" "Berlin" --time "2025-03-01T14:00:00" --arrive

# Departure board
python3 scripts/db-travel.py departures 8011160 --limit 10

# Arrival board
python3 scripts/db-travel.py arrivals 8011160 --duration 60

# Station details
python3 scripts/db-travel.py stop 8011160

All output is JSON.

Common Station IDs

Use search to find IDs. Some common ones:

  • Berlin Hbf: 8011160
  • München Hbf: 8000261
  • Hamburg Hbf: 8002549
  • Frankfurt (Main) Hbf: 8000105
  • Köln Hbf: 8000207
  • Flughafen BER: 8089110

Products

The API returns product types: nationalExpress (ICE), national (IC/EC), regionalExpress, regional, suburban (S-Bahn), subway (U-Bahn), tram, bus, ferry, taxi.

Presenting Results

When presenting trip results to users:

  • Show times in HH:MM local format, not ISO
  • Summarize legs concisely: "🚄 ICE 507 Berlin Hbf → München Hbf (10:29–14:25, platform 3)"
  • Flag delays: if delay_min > 0, mention it
  • For departure boards, filter to relevant modes (skip trams if user asked about long-distance)
  • Walking legs can usually be omitted unless distance is significant

Limitations

  • Primarily Germany, but includes international trains (IC/EC to neighboring countries)
  • Rate limited to 100 req/min — don't hammer it
  • No ticket purchasing
  • For Norway, use the entur-travel skill instead

Installation

Terminal bash

openclaw install db-travel
    
Copied!

💻Code Examples

example.sh
# Search for stations/stops
python3 scripts/db-travel.py search "Berlin Hbf"

# Plan a trip (place names auto-resolve)
python3 scripts/db-travel.py trip "Berlin Hbf" "Munich Hbf"

# Depart at specific time
python3 scripts/db-travel.py trip "Berlin Hbf" "Flughafen BER" --time "2025-03-01T10:00:00+01:00"

# Arrive by a specific time
python3 scripts/db-travel.py trip "Hamburg" "Berlin" --time "2025-03-01T14:00:00" --arrive

# Departure board
python3 scripts/db-travel.py departures 8011160 --limit 10

# Arrival board
python3 scripts/db-travel.py arrivals 8011160 --duration 60

# Station details
python3 scripts/db-travel.py stop 8011160

Tags

#transportation #api

Quick Info

Category E-commerce
Model Claude 3.5
Complexity One-Click
Author mmichelli
Last Updated 3/10/2026
🚀
Optimized for
Claude 3.5
🧠

Ready to Install?

Get started with this skill in seconds

openclaw install db-travel