API ドキュメント
1bit、B/W/R、または Spectra 6 モードで F1 レース日程を表示する E-Ink ディスプレイ向けに、800×480 の BMP 画像を生成します。
800×480
BMP
1bit / B/W/R / B/W/R/Y / Spectra 6
E-Ink
REST API
GET
/calendar.bmp
F1 カレンダーを BMP 画像 (800×480) として生成し、1bit、4-bit B/W/R、4-bit B/W/R/Y、Spectra 6 の E-Ink ディスプレイに対応します。
パラメータ
| Parameter | 型 | 説明 |
|---|---|---|
| lang | string |
カレンダーテキスト用の言語コード
値: cs, de, en, es, fr, it, ja, nl, pl, pt-BR, sk, tr, zh-CN (デフォルト:
en)
|
| year | integer |
特定レース用のシーズン年
任意 — 例 2026
|
| round | integer |
特定レース用のラウンド番号 (1-24)
任意 — 例 5
|
| tz | string |
スケジュール時刻用のタイムゾーン (IANA 形式)
任意 — 例 America/New_York,
Europe/Prague
|
| display | string |
1bit、B/W/R、B/W/R/Y、Spectra 6 ディスプレイ用の出力モード
値: 1bit,
bwr,
bwry,
spectra6 (デフォルト:
1bit)
|
| weather | boolean |
天気オーバーレイの有効化または無効化
値: true,
false
|
| weather_type | string |
描画する天気データの種類
値: race_day,
current
|
レスポンス
Content-Type
image/bmp
サイズ
800×480
色深度
1bit / 4-bit B/W/R / 4-bit B/W/R/Y / Spectra 6
Cache
1 hour
コード例
# Download next race calendar
curl -o calendar.bmp "https://f1.rhiz3k.freeddns.org/calendar.bmp"
# With Czech language and timezone
curl -o calendar.bmp "https://f1.rhiz3k.freeddns.org/calendar.bmp?lang=cs&tz=Europe/Prague"
# Specific race (year and round)
curl -o calendar.bmp "https://f1.rhiz3k.freeddns.org/calendar.bmp?year=2025&round=5"
# B/W/R/Y output for four-color E-Ink
curl -o calendar.bmp "https://f1.rhiz3k.freeddns.org/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.rhiz3k.freeddns.org/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.rhiz3k.freeddns.org/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();
}
E-Ink ディスプレイでの使用
/calendar.bmp を取得して、そのまま E-Ink ディスプレイに表示できます。推奨更新間隔は 1〜6 時間です。800×480 の E-Ink ディスプレイ(例: Waveshare 7.5", LaskaKit)で利用できます。
LaskaKit / zivyobraz.eu 向け:
- 1 zivyobraz.eu でコンテンツソースとして画像 URL を選択
-
2
URL を貼り付け:
https://f1.rhiz3k.freeddns.org/calendar.bmp?lang=cs&tz=Europe/Prague - 3 更新間隔を 1〜6 時間に設定
GET
/teams.bmp
1bit、B/W/R、B/W/R/Y、または Spectra 6 出力モードで、すべての F1 チーム、ドライバー、写真、チャンピオンシップポイントを表示する BMP 画像を生成します。
パラメータ
| Parameter | 型 | 説明 |
|---|---|---|
| lang | string |
カレンダーテキスト用の言語コード
値: cs, de, en, es, fr, it, ja, nl, pl, pt-BR, sk, tr, zh-CN (デフォルト:
en)
|
| year | integer |
チームデータのシーズン年
任意 — 例 2026
|
| display | string |
ディスプレイ出力モード
値: 1bit,
bwr,
bwry,
spectra6 (デフォルト:
1bit)
|
レスポンス
Content-Type
image/bmp
サイズ
800×480
色深度
1-bit / 4-bit / Spectra 6
Cache
no-store
その他のエンドポイント
GET
/api/teams/{year}
シーズンの全チーム・ドライバー・ポイントを取得(JSON)
GET
/api/standings/leader
現在のチャンピオンシップ首位(ドライバーとコンストラクター)を取得
GET
/api/races/{year}
指定シーズンの全レース一覧
GET
/api/race/{year}/{round}
スケジュールを含む詳細なレース情報
GET
/api/stats
リクエスト統計 (直近1時間と24時間)
GET
/health
サービス稼働状況チェック