認証
Statnive の REST API は標準の WordPress REST 認証を使用します。アプリケーションパスワード、cookie ベースの認証 (ログイン中のユーザー向け)、または WordPress REST API と統合する任意の認証 plugin で認証できます。読み取りエンドポイントは manage_options 権限を必要とします。トラッカーが投稿できるよう、公開コレクションエンドポイント (/hit、/event、/engagement) は未認証の訪問者に対して開放されています。
ベース URL
すべてのエンドポイントは statnive/v1 名前空間の下に登録されます。
https://yoursite.com/wp-json/statnive/v1/
利用可能なエンドポイント
レポーティング (manage_options が必要)
GET /summary
指定された日付範囲における主要メトリクスのサマリーを返します。
パラメーター:
from(string, required) — 開始日 (YYYY-MM-DD形式)。to(string, required) — 終了日 (YYYY-MM-DD形式)。
GET /sources
チャネル別のトラフィックソースの内訳を返します。
GET /pages
ページビュー数で並べ替えられたページレベルのアナリティクスを返します。
GET /pages/entry
指定された日付範囲のトップエントリー (ランディング) ページを返します。
GET /pages/exit
指定された日付範囲のトップ離脱ページを返します。
GET /realtime
現在のアクティブな訪問者数と最近のページビューフィードを返します。
GET /utm
指定された日付範囲の UTM パラメーター別の集計内訳を返します。
GET /events
指定された日付範囲のカスタムイベントの集計件数を返します。
GET /events/{name}
指定した名前のイベント単体の詳細を返します。
GET /dimensions/{type}
単一のディメンションについての集計内訳を返します ({type} はサポートされているディメンション種別のいずれか。例: country、device、browser、language)。
WooCommerce Revenue (v1.0.0+、manage_options が必要)
すべての売上エンドポイントは from + to の日付範囲 (YYYY-MM-DD) を受け付けます。ページネーション対応のエンドポイントはさらに limit (1〜200、デフォルト 25。products のみデフォルト 10、最大 100) を受け取ります。
GET /revenue/wc-status
WooCommerce の有効化状態、HPOS ステータス、アトリビューションステータス、バックフィルの進捗を返します。
POST /revenue/backfill
Action Scheduler (もしくは WP-cron フォールバック) 経由で過去注文の非同期インポートをトリガーします。
GET /revenue/summary
5 つの KPI を返します:注文数、総売上、純売上、平均注文単価、返金合計+率、税+送料。日付バケット化には COALESCE(date_paid_gmt, date_created_gmt) (v1.1.0+) を使用するため、サブスクリプションの更新や決済が遅延した注文は、支払いが完了した日に集計されます。
GET /revenue/timeseries
期間内の日次売上と注文数を返します。
GET /revenue/by-channel
Statnive の 8 つのトラフィックチャネル (Direct、AI Assistants、Organic Search、Social Media、Email、Referral、Paid Search、Paid Social) に分解した注文数、売上、AOV を返します。
GET /revenue/by-utm
utm_source、utm_medium、utm_campaign で分解した売上を返します (ページネーション対応)。
GET /revenue/by-landing
エントリーランディングページで分解した売上を返します (ページネーション対応)。
GET /revenue/products
販売数および売上による売上トップ商品を返します。返金を反映し、バリエーションは親商品の下にグループ化します (ページネーション対応、デフォルト limit=10)。
GET /revenue/funnel
4 ステージのカートから購入までのファネル (商品閲覧 → カートに追加 → チェックアウト開始 → 購入完了) を返します。v1.1.0+ ではステップ別コンバージョン率を表示し、全体 % は最広段の分母で計算されます。
GET /revenue/refunds
返金率の推移と返金トップ商品を返します。
GET /revenue/coupons
クーポンの利用状況を返します:コード、利用回数、割引総額、割引後の純売上 (ページネーション対応)。
Ask me! アドバイザー (v1.1.0+、manage_options が必要)
GET /advisor/questions
Ask me! の質問インベントリ全体 (116 問 × 10 カテゴリー) を、翻訳済みカテゴリーラベル、プランマーカー (free / paid)、viz_hint、バイリンガルの searchable[] 配列とともに返します。
POST /advisor/answers
質問 ID のバッチを現在のサイトデータで解決します。ボディ:{ "ids": ["q2","q41",…], "from": "YYYY-MM-DD", "to": "YYYY-MM-DD" }。ID ごとに 1 つの回答エンベロープを返します (viz ペイロードを持つ ok、coming_soon、または error)。
GET /advisor/preferences
現在のユーザーが wp_usermeta に固定した質問 ID を返します (未設定の場合のデフォルト 5 件:q2, q41, q23, q72, q81)。
PUT /advisor/preferences
現在のユーザーが固定する質問 ID を更新します。未知の ID は破棄され、MAX_PINS = 10 の上限が適用されます。
設定 (manage_options が必要)
GET /settings
現在の plugin 設定を返します。
PUT /settings
plugin 設定を更新します。許可されたキーの JSON ボディを受け取ります (tracking_enabled、respect_dnt、respect_gpc、consent_mode、retention_days、retention_mode、excluded_ips、excluded_roles、geoip_enabled、maxmind_license_key)。
GET /diagnostics
plugin の健全性 (DB テーブル、GeoIP ステータス、cron スケジュール、環境) のスナップショットを返します。
POST /self-test
プロセス内のセルフテストスイートを実行します。
POST /cron/run
Statnive のスケジュールされた cron ジョブを手動でトリガーします。
POST /diagnostics/enable-dbip-city
GeoIP ルックアップ用の DB-IP City フォールバックを有効化します。
GET /privacy-audit
プライバシー監査のサマリーを返します。
トラッカーコレクション (公開)
これらのエンドポイントは同梱のトラッカーから書き込まれ、未認証の訪問者がページビューとイベントを投稿できるよう意図的に開放されています。
POST /hit
ページビューのヒットを記録します。
POST /event
カスタムイベントを記録します。
POST /engagement
セッションエンゲージメントの更新 (スクロール深度、ページ滞在時間) を記録します。
レート制限
トラッカーコレクションエンドポイント (/hit、/event、/engagement) には、不正なクライアントに対するアプリケーションレベルのスロットリングが施されています。レポーティングエンドポイントは標準の WordPress REST の挙動に依存します — 自動化された大量のポーリングを行う場合は、独自のキャッシュ層でラップしてください。