画面 × API マップ(全 25 画面) Screen × API map (all 25 screens)

SDUI Level 3 前提で、各画面が叩く View endpoint(画面入口)Action endpoint(ユーザー操作)Telemetry endpoint(fire-and-forget)を網羅した一覧です。 パス・契約は api/src/routes-manifest.tsViewEnvelope 仕様が SSoT。

Under SDUI Level 3, this page enumerates every View endpoint (screen entry), Action endpoint (user mutation), and Telemetry endpoint (fire-and-forget) that each screen touches. Paths and contracts are owned by api/src/routes-manifest.ts and the ViewEnvelope spec.

読み方: How to read:
  • ViewGET /v1/mobile/views/*)=画面を開いた瞬間に 1 回叩く。ViewEnvelope(data/ui_config/navigation/validation/states/fallback_behavior/meta)で返る
  • View (GET /v1/mobile/views/*) — fired once when the screen is opened. Returns a ViewEnvelope (data/ui_config/navigation/validation/states/fallback_behavior/meta)
  • ActionPOST /v1/mobile/actions/*)=ボタンタップ等のユーザー操作。ActionEnvelope(result + navigation + toast)で返る
  • Action (POST /v1/mobile/actions/*) — user gestures (button taps etc.). Returns an ActionEnvelope (result + navigation + toast)
  • TelemetryPOST /v1/mobile/telemetry/*)=計測・記録系、結果は無視可
  • Telemetry (POST /v1/mobile/telemetry/*) — analytics / logging; fire-and-forget

画面一覧と叩く endpoint Screens and the endpoints they hit

01 スプラッシュSplash

KindEndpointトリガ / 用途Trigger / purpose
ViewGET /v1/mobile/views/boot起動時 1 回。コードマスタ・強制更新判定・feature flag を取得Fired once on launch. Pulls code-master, force-update check, feature flags
Supabase Auth getSession()SDK 直接。JWT の有効性確認SDK direct. Checks JWT validity

02 オンボーディングOnboarding

KindEndpointトリガ / 用途Trigger / purpose
(API 呼び出しなし。静的スライド)(No API. Static slides)
TelemetryPOST /v1/mobile/telemetryスライド閲覧・完了イベントSlide view / completion events

03 認証Auth

KindEndpointトリガ / 用途Trigger / purpose
ViewGET /v1/mobile/views/auth-config画面起動時。プロバイダ有効化・文言・同意文取得(認証不要)On screen open. Fetches enabled providers, copy, consent text (no auth required)
ActionPOST /v1/mobile/actions/auth/request-otp「メールで OTP を送る」ボタン"Send OTP by email" button
ActionPOST /v1/mobile/actions/auth/verify-otpOTP 入力確定OTP entry submit
ActionPOST /v1/mobile/actions/auth/sign-upサインアップ確定Sign-up submit
ActionPOST /v1/mobile/actions/auth/sign-outサインアウトSign-out
Supabase Auth (SDK)password / social 系の JWT 取得は SDK 直接Password / social sign-in runs against the SDK directly to obtain the JWT

04 ホーム(Map)Home (Map)

KindEndpointトリガ / 用途Trigger / purpose
ViewGET /v1/mobile/views/home-feed画面起動時・pull-to-refresh。ピン・ボトムシート item・アクティブセッション・広告の集約On open / pull-to-refresh. Aggregates pins, bottom-sheet items, active session, ads
ViewGET /v1/mobile/views/search-results?bbox=...地図パン/ズーム後に 250 ms デバウンスで再検索Re-queried 250 ms after pan / zoom
TelemetryPOST /v1/mobile/telemetryピンタップ・map_moved・bottom_sheet_expand 等Pin taps, map_moved, bottom_sheet_expand, etc.

05 検索絞り込みSearch filter modal

KindEndpointトリガ / 用途Trigger / purpose
モーダル内はローカル状態のみ。適用時に 04/06 を再フェッチLocal state only inside the modal. Applying triggers a refetch of 04 / 06

06 検索結果一覧Search results

KindEndpointトリガ / 用途Trigger / purpose
ViewGET /v1/mobile/views/search-results初期表示 / フィルタ変更 / 並び替え変更Initial render, filter change, sort change

06a AI 検索AI search

KindEndpointトリガ / 用途Trigger / purpose
ViewGET /v1/mobile/views/ai-search画面起動時。サジェスト例・直近クエリOn open. Suggestion chips and recent queries
ActionPOST /v1/mobile/actions/ai-search/query「検索する」ボタン。自然言語 → 構造化クエリ → 結果"Search" button. NL → structured query → results
ActionPOST /v1/mobile/actions/search-presets「この条件をプリセット保存」"Save as preset"

06b プリセット選択シートPreset picker sheet

KindEndpointトリガ / 用途Trigger / purpose
ViewGET /v1/mobile/views/search-presetsシート展開時に 1 回取得Fetched once when the sheet opens

06c プリセット管理Preset management

KindEndpointトリガ / 用途Trigger / purpose
ViewGET /v1/mobile/views/search-presets画面起動時On open
ActionPOST /v1/mobile/actions/search-presets「作成」ボタン"Create" button
ActionPATCH /v1/mobile/actions/search-presets/:id/update「保存」ボタン"Save" button
ActionPOST /v1/mobile/actions/search-presets/:id/delete「削除」ボタン"Delete" button
ActionPOST /v1/mobile/actions/search-presets/:id/set-default「デフォルトにする」"Set as default"

07 駐車場詳細Parking lot detail

KindEndpointトリガ / 用途Trigger / purpose
ViewGET /v1/mobile/views/lot-detail/:id画面起動時。基本情報・料金・レビュー・画像を 1 本で集約On open. Single aggregate of basics / pricing / reviews / images
ActionPOST /v1/mobile/actions/lots/:id/toggle-saveハートアイコンHeart icon tap
ActionPOST /v1/mobile/actions/lots/:id/report-incorrect「誤情報を報告」"Report incorrect info"
ActionPOST /v1/mobile/actions/sessions/start「駐車開始」ボタン(モーダル確定後)"Start parking" (after the modal confirms)

08 駐車開始モーダルStart parking modal

KindEndpointトリガ / 用途Trigger / purpose
ActionPOST /v1/mobile/actions/sessions/start「駐車開始」確定。ActionEnvelope の navigation で 10 へ"Start parking" submit. ActionEnvelope navigation routes to 10

09 駐車管理(セッション一覧)Parking management (sessions list)

KindEndpointトリガ / 用途Trigger / purpose
ViewGET /v1/mobile/views/parking-sessions画面起動時・pull-to-refreshOn open / pull-to-refresh

10 駐車詳細(駐車中)Parking detail (active)

KindEndpointトリガ / 用途Trigger / purpose
ViewGET /v1/mobile/views/parking-session/:id画面起動時。料金ルール・累計料金・アラート設定を集約On open. Aggregates pricing rules, running fare, alert config
TelemetryPOST /v1/mobile/telemetrygeofence 離脱・位置サンプルGeofence exit, location samples

11 駐車終了フローEnd parking flow

KindEndpointトリガ / 用途Trigger / purpose
ActionPOST /v1/mobile/actions/sessions/:id/finalize「駐車終了」確定。最終料金決定 + Good/Bad 記録"End parking" submit. Locks fare + records Good/Bad
ActionPOST /v1/mobile/actions/sessions/:id/cancel「キャンセル」(誤タップ救済)"Cancel" (mis-tap recovery)

12 レビュー投稿Review compose

KindEndpointトリガ / 用途Trigger / purpose
ViewGET /v1/mobile/views/review-compose/:lot_id画面起動時。対象駐車場概要・既存自分レビュー・validation ルールOn open. Target lot summary, existing own review, validation rules
ActionPOST /v1/mobile/actions/reviews/create「投稿」ボタン"Post" button

13 駐車履歴Parking history

KindEndpointトリガ / 用途Trigger / purpose
ViewGET /v1/mobile/views/parking-history画面起動時。月グループ・フィルタ・ページングOn open. Month grouping, filters, pagination

14 メディア一覧Media list

KindEndpointトリガ / 用途Trigger / purpose
ViewGET /v1/mobile/views/media-list画面起動時(認証不要)On open (no auth required)

15 記事詳細Article detail

KindEndpointトリガ / 用途Trigger / purpose
ViewGET /v1/mobile/views/article-detail/:slug画面起動時(認証不要)On open (no auth required)

16 Saved(お気に入り)Saved

KindEndpointトリガ / 用途Trigger / purpose
ViewGET /v1/mobile/views/saved画面起動時・pull-to-refreshOn open / pull-to-refresh
ActionPOST /v1/mobile/actions/saved/:lot_id/removeスワイプ / 削除ボタンSwipe / delete button

17 通知一覧 / 通知設定Notifications list / settings

KindEndpointトリガ / 用途Trigger / purpose
ViewGET /v1/mobile/views/notifications通知一覧画面Notifications list
ViewGET /v1/mobile/views/notifications/preferences通知設定画面Preferences screen
ActionPOST /v1/mobile/actions/notifications/mark-read既読化(個別 / 一括)Mark as read (single / bulk)
ActionPATCH /v1/mobile/actions/notifications/preferences/update設定保存Save preferences

18 プロフィール(タブトップ)Profile (tab root)

KindEndpointトリガ / 用途Trigger / purpose
ViewGET /v1/mobile/views/profile画面起動時。プロフィール要約・レベル・契約ステータス等On open. Profile summary, level, subscription status
ActionPATCH /v1/mobile/actions/profile/update表示名・bio 保存Save display name / bio
ActionPOST /v1/mobile/actions/profile/avatar-uploadアバター更新(presigned URL 発行)Update avatar (issues presigned URL)
ActionPOST /v1/mobile/actions/profile/request-data-exportデータエクスポート依頼Request data export
ActionPOST /v1/mobile/actions/profile/delete-account退会Delete account

18a 車両管理Vehicle management

KindEndpointトリガ / 用途Trigger / purpose
ViewGET /v1/mobile/views/profile/vehicles一覧取得List fetch
ActionPOST /v1/mobile/actions/profile/vehicles/add車両追加Add vehicle
ActionPATCH /v1/mobile/actions/profile/vehicles/:id/update車両更新Update vehicle
ActionPOST /v1/mobile/actions/profile/vehicles/:id/delete車両削除Delete vehicle
ActionPOST /v1/mobile/actions/profile/vehicles/:id/set-defaultデフォルト車両Set default vehicle

18b 紹介コードReferrals

KindEndpointトリガ / 用途Trigger / purpose
ViewGET /v1/mobile/views/profile/referrals紹介コード・実績Referral code and stats

18c ゲーミフィケーションGamification

KindEndpointトリガ / 用途Trigger / purpose
ViewGET /v1/mobile/views/profile/gamificationEXP / badges / 進捗EXP / badges / progress

18d 設定Settings

KindEndpointトリガ / 用途Trigger / purpose
ViewGET /v1/mobile/views/profile/settings言語・単位・地図スタイル・privacyLanguage / units / map style / privacy
ActionPATCH /v1/mobile/actions/profile/update設定保存Save settings
Supabase Auth (SDK)パスワード変更・メール変更は SDK 直接Password / email change runs against the SDK directly

19 駐車場登録申請Lot registration

KindEndpointトリガ / 用途Trigger / purpose
ViewGET /v1/mobile/views/lot-registrationフォーム起動時(タグ候補・料金ルールテンプレート等)On open. Tag candidates, pricing-rule templates
ActionPOST /v1/mobile/actions/lot-registration/submit「申請する」ボタン"Submit application" button

20 プレミアムプランPremium plan

KindEndpointトリガ / 用途Trigger / purpose
ViewGET /v1/mobile/views/premium画面起動時。プラン比較・契約状況・特商法リンクOn open. Plan compare, current status, required disclosures
ActionPOST /v1/mobile/actions/premium/verify-iapStoreKit / Play Billing のレシート検証Validate StoreKit / Play Billing receipt
ActionPOST /v1/mobile/actions/premium/cancel契約キャンセルCancel subscription
ActionPOST /v1/mobile/actions/premium/apply-couponクーポン適用Apply coupon

21 サポートSupport

KindEndpointトリガ / 用途Trigger / purpose
ViewGET /v1/mobile/views/support画面起動時。FAQ・既存ticket 一覧On open. FAQ plus existing tickets
ActionPOST /v1/mobile/actions/support/submit-ticket「問い合わせを送る」"Submit inquiry"

22 ポリシー / 規約Policies / terms

KindEndpointトリガ / 用途Trigger / purpose
ViewGET /v1/mobile/views/policies画面起動時(認証不要)。終了通告・同意履歴を含むOn open (no auth). Includes termination notices and consent history

23 検索履歴Search history

KindEndpointトリガ / 用途Trigger / purpose
ViewGET /v1/mobile/views/search-history画面起動時(optional user)On open (optional user)
ActionPOST /v1/mobile/actions/search-history/clear「履歴をクリア」"Clear history"
ActionPOST /v1/mobile/actions/search/save-history検索実行時に履歴保存(04/06 から呼ばれる)Saves search history when a search runs (invoked from 04 / 06)

24 権限リクエストPermission request

KindEndpointトリガ / 用途Trigger / purpose
ViewGET /v1/mobile/views/permissions画面起動時。対象権限・説明文・fallback_behaviorOn open. Target permissions, rationale copy, fallback_behavior
ActionPOST /v1/mobile/actions/permissions/recordOS ダイアログ結果の記録(granted / denied)Record OS dialog result (granted / denied)

25 エラー / フォールバックError / fallback

KindEndpointトリガ / 用途Trigger / purpose
ViewGET /v1/mobile/views/error-fallback致命エラー時の画面(認証不要)Fatal-error screen (no auth)
ActionPOST /v1/mobile/actions/error/report「詳細を送信」"Send details"

サポート系(画面横断) Cross-screen auxiliaries

KindEndpointトリガ / 用途Trigger / purpose
TelemetryPOST /v1/mobile/telemetry画面横断の analytics / geofence / push 受信 / 位置サンプルCross-screen analytics, geofence, push receipt, location samples
ActionPOST /v1/mobile/actions/push-tokens/registerdevice token 登録(サインイン後 / token rotation 時)Register device token (after sign-in / on rotation)

関連ドキュメント Related docs