API-Dokumentation

Erzeugen Sie 800×480-BMP-Bilder für E-Ink-Displays mit F1-Rennzeitplänen im 1bit-, B/W/R- oder Spectra-6-Modus.

800×480 BMP 1bit / B/W/R / B/W/R/Y / Spectra 6 E-Ink REST API
GET /calendar.bmp

Erzeugt einen F1-Kalender als BMP-Bild (800×480) für 1bit-, 4-Bit-B/W/R-, 4-Bit-B/W/R/Y- und Spectra-6-E-Ink-Displays.

Parameter

Parameter Typ Beschreibung
lang string Sprachcode für den Kalendertext
Werte: cs, de, en, es, fr, it, ja, nl, pl, pt-BR, sk, tr, zh-CN (standard: en)
year integer Saisonjahr für ein bestimmtes Rennen
optional — z. B. 2026
round integer Rundennummer (1-24) für ein bestimmtes Rennen
optional — z. B. 5
tz string Zeitzone für Zeitangaben im Zeitplan (IANA-Format)
optional — z. B. America/New_York, Europe/Prague
display string Ausgabemodus für 1bit-, B/W/R-, B/W/R/Y- oder Spectra-6-Displays
Werte: 1bit, bwr, bwry, spectra6 (standard: 1bit)
weather boolean Wetter-Overlay aktivieren oder deaktivieren
Werte: true, false
weather_type string Welche Wetterdatenvariante gerendert werden soll
Werte: race_day, current

Antwort

Content-Type image/bmp
Abmessungen 800×480
Farbtiefe 1bit / 4-bit B/W/R / 4-bit B/W/R/Y / Spectra 6
Cache 1 hour
Bild öffnen

Codebeispiele

# Download next race calendar
curl -o calendar.bmp "https://f1.inkycloud.click/calendar.bmp"

# With Czech language and timezone
curl -o calendar.bmp "https://f1.inkycloud.click/calendar.bmp?lang=cs&tz=Europe/Prague"

# Specific race (year and round)
curl -o calendar.bmp "https://f1.inkycloud.click/calendar.bmp?year=2025&round=5"

# B/W/R/Y output for four-color E-Ink
curl -o calendar.bmp "https://f1.inkycloud.click/calendar.bmp?display=bwry"
import httpx

async def get_f1_calendar(lang: str = "en", tz: str = "Europe/Prague"):
    """Download F1 calendar as BMP image."""
    async with httpx.AsyncClient() as client:
        response = await client.get(
            "https://f1.inkycloud.click/calendar.bmp",
            params={"lang": lang, "tz": tz}
        )
        response.raise_for_status()

        with open("calendar.bmp", "wb") as f:
            f.write(response.content)

        print("Calendar saved as calendar.bmp")

# Usage
import asyncio
asyncio.run(get_f1_calendar(lang="cs"))
// Fetch and display calendar
async function loadF1Calendar(lang = 'en', tz = 'Europe/Prague') {
    const url = new URL('https://f1.inkycloud.click/calendar.bmp');
    url.searchParams.set('lang', lang);
    url.searchParams.set('tz', tz);

    const response = await fetch(url);
    const blob = await response.blob();

    // Display in img element
    const img = document.getElementById('calendar');
    img.src = URL.createObjectURL(blob);
}

// Download as file
async function downloadCalendar() {
    const response = await fetch('/calendar.bmp?lang=cs');
    const blob = await response.blob();

    const link = document.createElement('a');
    link.href = URL.createObjectURL(blob);
    link.download = 'f1-calendar.bmp';
    link.click();
}

Nutzung mit E-Ink-Display

Rufen Sie /calendar.bmp ab und zeigen Sie es direkt auf Ihrem E-Ink-Display an. Empfohlenes Aktualisierungsintervall: alle 1 bis 6 Stunden. Kompatibel mit jedem 800×480-E-Ink-Display (z. B. Waveshare 7.5", LaskaKit).

Für LaskaKit / zivyobraz.eu:

  1. 1 In zivyobraz.eu als Inhaltsquelle auswählen: URL mit Bild
  2. 2 URL einfügen: https://f1.inkycloud.click/calendar.bmp?lang=cs&tz=Europe/Prague
  3. 3 Aktualisierungsintervall auf 1-6 Stunden setzen
GET /teams.bmp

Erzeugen Sie ein BMP-Bild mit allen F1-Teams inklusive Fahrern, Fotos und Meisterschaftspunkten in den Ausgabemodi 1bit, B/W/R, B/W/R/Y oder Spectra 6.

Parameter

Parameter Typ Beschreibung
lang string Sprachcode für den Kalendertext
Werte: cs, de, en, es, fr, it, ja, nl, pl, pt-BR, sk, tr, zh-CN (standard: en)
year integer Saisonjahr für Teamdaten
optional — z. B. 2026
display string Ausgabemodus des Displays
Werte: 1bit, bwr, bwry, spectra6 (standard: 1bit)

Antwort

Content-Type image/bmp
Abmessungen 800×480
Farbtiefe 1-bit / 4-bit / Spectra 6
Cache no-store
Bild öffnen

Weitere Endpoints

GET /api/teams/{year}

Alle Teams mit Fahrern und Punkten für eine Saison abrufen (JSON)

GET /api/standings/leader

Aktuelle Meisterschaftsführende abrufen (Fahrer und Konstrukteur)

GET /api/races/{year}

Liste aller Rennen einer Saison

GET /api/race/{year}/{round}

Detaillierte Renninformationen inklusive Zeitplan

GET /api/stats

Anfragestatistiken (letzte Stunde und 24h)

GET /health

Service-Statusprüfung

GET /api

JSON-API — API-Dokumentation im JSON-Format