AGENT 接続
HOTMOTO をあなたの Agent に
MCP、RSS、API の3 通りの方法は、どれも同じデータを読みます:厳選、話題、日報、週報、月報。使うツールに合わせて 1 つ選ぶだけです。すべて匿名・読み取り専用で、登録も API キーも不要です。
サービス正常バージョン 4.0.0匿名・読み取り専用 · キー不要
REST API · 4.0.0
匿名の GET で、すぐに使える
トークンは不要です。ブラウザからのクロスオリジン、curl、各言語の標準の HTTP クライアントから直接呼べます。パスは /api/v1 で、項目とエラーコードは OpenAPI が正です。
最初のリクエスト
curl --compressed 'https://hotmoto.cc/api/v1/items?mode=selected&window=24h&limit=20'軽く、速く使う
- 01圧縮を有効に
curl なら
--compressedを付け、ほかのクライアントは gzip か br を有効にしてください。JSON は圧縮で元の 1/4〜1/8 になります。 - 02ETag を付ける
レスポンスの ETag を保存し、次回は
If-None-Matchを付けてください。内容が変わっていなければ 304 が返り、本文は送られません。 - 03間隔を守る
ニュースと話題は最短で 1 分に 1 回。日報は毎日 08:00 の後に 1 回、週報と月報は発行後に 1 回取ってください。ページを遡るときは、手元にある項目に着いたら止めてください。
内容の変わる頻度:新しいニュースは一日中少しずつ入り、厳選は 1 日に数回から数十回変わります。日報は毎日 08:00、週報は毎週月曜 10:00、月報は毎月 1 日 10:30(日本時間)にそれぞれ 1 号です。
インターフェース一覧
| パス | 用途 | 取得の頻度 |
|---|---|---|
| ニュース | ||
/api/v1/items | 厳選か直近 7 日のすべてのニュース。カテゴリ、期間、キーワードで絞り込める | 最短 1 分に 1 回 |
| 話題と出来事 | ||
/api/v1/hot-topics | いまのホットランキング Top 10 | 最短 1 分に 1 回 |
/api/v1/stories/{publicId} | 出来事 1 件の報道の時系列、AI のまとめ、関連する出来事 | 必要なとき |
| 日報 | ||
/api/v1/dailies/latest | 最新号の日報 | 毎日 08:00 の後に 1 回 |
/api/v1/dailies/{date} | 指定した日付の日報。取り下げで引用が消えることがある | キャッシュが切れた後、使う前に ETag で検証 |
/api/v1/dailies | 日報の日付の索引 | 1 日に 1 回 |
| 週報と月報 | ||
/api/v1/weeklies/latest | 最新号の週報:トップ、総括、欄ごとに分けた 1 週間の重点 | 毎週月曜 10:00 の後に 1 回 |
/api/v1/weeklies/{week} | 指定した週(ISO 週。例:2026-W39)。取り下げで引用が消えることがある | キャッシュが切れた後、使う前に ETag で検証 |
/api/v1/weeklies | 週報の索引 | 1 週に 1 回 |
/api/v1/monthlies/latest | 最新号の月報 | 毎月 1 日 10:30 の後に 1 回 |
/api/v1/monthlies/{month} | 指定した月(例:2026-09) | キャッシュが切れた後、使う前に ETag で検証 |
/api/v1/monthlies | 月報の索引 | 1 か月に 1 回 |
| AI アシスタント向け | ||
/api/v1/agent | Agent 向けの利用説明。挙げたアドレスは整理済みの日本語 Markdown を返す | 必要なとき |
| 厳選の完全な同期 | ||
/api/v1/selected/snapshot | いまの厳選すべて。ページ送りで一度に取り切る | 最初の 1 回だけ |
/api/v1/selected/changes | その後の追加、変更、厳選からの除外 | 数分に 1 回 |
よくある使い方
bash
# 初回:レスポンスヘッダーの ETag を保存する
curl --compressed -i 'https://hotmoto.cc/api/v1/items?mode=selected&window=24h&limit=20'
# 以後は最短で 1 分に 1 回、ETag を付ける。304 なら変化なし
curl --compressed -i -H 'If-None-Match: <前回の ETag>' 'https://hotmoto.cc/api/v1/items?mode=selected&window=24h&limit=20'ページを遡るときは、page.nextCursor を cursor として渡し、手元にある項目に着いたら止めてください。毎回 7 日分を読み直さないでください。
エラーのとき
- 400
- 引数が正しくありません:OpenAPI と返ってきた code に従って直し、自動でより広い検索に変えないでください。cursor が無効か期間外なら invalid_cursor が返るので、最初のページからやり直してください。
- 409
- snapshot_required:差分を安全に続けられないので、完全なスナップショットを取り直してください。
- 429
- リクエストが多すぎます:Retry-After のとおり待ち、並列で再試行しないでください。
- 5xx
- 指数バックオフで再試行し、それまでは前回成功した結果を使ってください。公開サービスは SLA を約束しません。
匿名で呼べても、すべての用途が許可されているわけではありません。詳しくは利用規約を参照してください。