HTTP を話せるすべてのもののための iOS ライブアクティビティ API
PushWard は Apple のライブアクティビティのための API です。HTTP リクエストを 1 つ送るだけで、iPhone のロック画面と Dynamic Island にライブで表示され、リアルタイムに更新され、タスクが終われば自動で消えます。ActivityKit のコードも、Xcode も、あなた側での App Store 審査も不要です。
ライブアクティビティとは?
ライブアクティビティは、ロック画面、Dynamic Island、スタンバイにライブで一目で分かる情報を表示する iOS の機能で、受信者がアプリを開く必要はありません。一度表示されてリストに埋もれていくプッシュ通知と違い、ライブアクティビティは固定されたままリアルタイムに更新されます。ステップを進むビルド、カウントダウンするタイマー、近づいてくる配達。PushWard は 1 つの HTTP リクエストをそれに変えます。
Apple のライブアクティビティを、ActivityKit なしで
ライブアクティビティは iOS 16.1 で導入された Apple の iOS 機能で、ロック画面と Dynamic Island に固定される、一目で分かるリアルタイムの表示面です。通常これを作るには、ActivityKit のウィジェット拡張を含む自前の iOS アプリを出荷し、push-to-start トークンを要求し、自分で APNs とやり取りする必要があります。PushWard はそのすべてを 1 つの REST API に置き換えます。PushWard アプリがあなたのライブアクティビティを描画し、1 つの HTTP リクエストで開始・更新・終了できます。
API の仕組み
アクティビティの作成、開始、更新、終了 — すべて統合キーを使って PushWard の REST API から行えます。HTTP リクエストを送れるサービスなら何でも、人々が一目で見る情報を動かせます。APNs 証明書も書くべきクライアントコードもありません。配信は PushWard が Apple Push Notification service 経由で担います。
# 1. Create an activity
curl -X POST https://api.pushward.app/activities \
-H "Authorization: Bearer hlk_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{ "slug": "deploy", "name": "Deploy to production" }'
# 2. Start the Live Activity on the Lock Screen
curl -X PATCH https://api.pushward.app/activities/deploy \
-H "Authorization: Bearer hlk_YOUR_KEY" \
-H "Content-Type: application/merge-patch+json" \
-d '{ "state": "ongoing", "content": {
"template": "generic", "progress": 0.2,
"state": "Building...", "accent_color": "cyan"
} }'
# 3. End it when the task is done
curl -X PATCH https://api.pushward.app/activities/deploy \
-H "Authorization: Bearer hlk_YOUR_KEY" \
-H "Content-Type: application/merge-patch+json" \
-d '{ "state": "ended", "content": {
"template": "generic", "progress": 1, "state": "Deployed"
} }'あらゆる更新に合うテンプレート
用途別に作られたライブアクティビティ テンプレートから選べます — 汎用のプログレスバー、カウントダウン、ステップシーケンス、アラート、ゲージ、タイムラインのスパークライン、タイルのボード、ライブイベントログ、再生ボタン付きのメディアプレーヤー。それぞれロック画面と Dynamic Island に合わせて調整されたレイアウトを備えています。
あなたのスタックで動く
すでに運用しているツールから直接ライブアクティビティを送信。既製のブリッジとホスト型の webhook relay が、Grafana のアラート、Home Assistant のオートメーション、GitHub Actions、SABnzbd のダウンロード、Bambu Lab のプリント、ArgoCD の同期、そして JSON を送れるあらゆるものをカバーします。
よくある質問
これは Apple 公式のライブアクティビティ API ですか?
いいえ。Apple の公式フレームワークは ActivityKit で、自前の iOS アプリを開発して出荷する必要があります。PushWard は独立した iOS ライブアクティビティ API です。あなたの更新を Apple Push Notification service 経由で PushWard アプリに配信し、アプリがロック画面と Dynamic Island に描画します。
サーバーからライブアクティビティを開始できますか?
はい — それこそが目的です。HTTP リクエストを送れるサーバー、スクリプト、自動化なら何でも、ライブアクティビティを作成・開始・更新・終了できます。Apple の push-to-start フローは PushWard が代行するので、受信者がアプリを開かなくてもアクティビティが表示されます。
受信者はアプリのインストールが必要ですか?
はい — 無料の PushWard iOS アプリがライブアクティビティを描画します。あなたが開発・署名・App Store 提出をするものは何もありません。受信者は PushWard を一度インストールするだけで、あなたのリクエストが受信者のロック画面を動かします。
どの iPhone がライブアクティビティに対応していますか?
PushWard アプリには iOS 26 以降が必要です。Dynamic Island 搭載の iPhone ではライブアクティビティがアイランドに収まり、非搭載のモデルではロック画面とスタンバイに表示されます。
iOS ライブアクティビティ API を試す
playground でシミュレートされた iPhone にライブアクティビティが届く様子を見るか、入門ガイドを読んで数分で最初の 1 つを curl で送ってみましょう。