投稿: Umami を通じて API 訪問者データを取得する

公開日: 2026-04-06 08:36 992文字 5 min read

Umami API を使ってウェブサイトの訪問者データを取得する方法を詳細に説明します。これはUmami Cloudとローカルホスト版のAPIキーの取得、共有リンクTokenの認証方法、および/api/websites/:websiteId/statsインターフェースの呼び出し、パラメータフィルタリング、新しいバージョンと古いバージョンのデータ構造の違いを含み、ページビュー、独立訪問者などのデータをプログラム化して取得する方法を完全に実装します。

AIモデル Qwen/Qwen3-8B による翻訳。

原文言語:Simplified Chinese、翻訳先言語:japanese、翻訳時間:2026-05-01 04:31

AI 翻訳は参考に限り、内容の完全な正確性を保証できません。原文をご参照ください。

認証

Umami API は認証が必要で、ユーザーの API キーを使用するか、またはウェブサイト共有の API キー x-umami-share-token を使用することができます。

ユーザーの API キーの取得

Umami Cloud ユーザーによる API キーの取得

Umami Cloud ユーザーの場合、Umami Cloud コントロールパネルで API キーを生成する必要があります。

Umami Cloud API キーのドキュメント

Umami Self-Hosted ユーザーによる API キーの取得

ウェブサイトが公開されている場合、推奨はウェブサイトをチームに移行し、アクセス権のみを持つユーザーを作成して、そのユーザーの Token を使用して認証することです。

Umami Self-Hosted ユーザーの場合、以下のリクエストボディを POST /api/auth/login に送信してください、

{
  "username": "your-username",
  "password": "your-password"
}

認証が成功した場合、以下のような応答を受けるはずです。token を記録してください。

{
  "token": "eyTMjU2IiwiY...4Q0JDLUhWxnIjoiUE_A",
  "user": {
    "id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
    "username": "admin",
    "role": "admin",
    "createdAt": "2000-00-00T00:00:00.000Z",
    "isAdmin": true
  }
}

シェアリンクの API キーの取得

ウェブサイトをシェアリンクで共有すると、以下のようなリンクを受けるはずです。

https://u.ksable.top/share/gR1PdRDiutFusWn6

このリンクの pathname の前に api を追加します。

https://u.ksable.top/api/share/gR1PdRDiutFusWn6

それを開くと、以下のような応答を受けるはずです。token を記録してください。

{
  "websiteId": "a-b-c-d",
  "token": "a.b.c"
}

API に認証を追加する

API に認証を追加するには、リクエストヘッダーに authorization フィールドを追加し、値を Bearer {token} とします。

GET /api/*
Authorization: Bearer a.b.c

シェアリンクから取得した token を使用する場合、リクエストヘッダーに x-umami-share-token フィールドを追加し、値を token とします。

GET /api/*
x-umami-share-token: a.b.c

ブラウザデータの取得

API エンドポイント

GET /api/websites/:websiteId/stats

パラメータ

パラメータパラメータタイプ説明
startAtnumber開始時間(ミリ秒単位)
endAtnumber終了時間(ミリ秒単位)
filtersobjectフィルタパラメータ

例:

GET /api/websites/:websiteId/stats
Authorization: Bearer a.b.c

以下のような応答を受けるはずです、

{
  "pageviews": 15171,
  "visitors": 4415,
  "visits": 5680,
  "bounces": 3567,
  "totaltime": 809968,
  "comparison": {
    "pageviews": 38675,
    "visitors": 10568,
    "visits": 14595,
    "bounces": 9364,
    "totaltime": 2182387
  }
}

ここで pageviews はページビュー数、visitors は独立ユーザー数を表します。通常はこの2つの指標のみを使用します。

いくつかのフィールドの説明は以下の通りです:

フィールド説明
pageviewsページビュー数
visitors独立ユーザー数
visits独立訪問回数
bounces単一ページのみを訪れたユーザー数
totaltimeウェブサイトで費やす時間
注意:Umami の旧バージョンを使用している場合、返されるデータ構造は新しいバージョンと異なります

旧バージョンの Umami が返すデータ構造は以下の通りです:

{
  "pageviews": {
    "value": 15171
  },
  "visitors": {
    "value": 4415
  },
  "visits": {
    "value": 5680
  },
  "bounces": {
    "value": 3567
  },
  "totaltime": {
    "value": 809968
  }
}

必要に応じて、filters パラメータを追加してデータをフィルタリングできます。例えば path=/post/bian-jian-tong-guo-api-huo-qu-umami-fang-ke-shu-ju

GET /api/websites/:websiteId/stats?path=/post/bian-jian-tong-guo-api-huo-qu-umami-fang-ke-shu-ju

は、path/post/bian-jian-tong-guo-api-huo-qu-umami-fang-ke-shu-ju の訪問データを返します。

いくつかのフィルタパラメータ
パラメータタイプ説明
pathstringURL パス
referrerstringおすすめ元
titlestringページタイトル
querystringクエリパラメータ
browserstringブラウザ
osstringOS
devicestringデバイス名(例:モバイル)
countrystring
regionstring地域/州/県
citystring
languagestringブラウザの言語
hostnamestringホスト名
tagstringタグ
eventstringイベント
distinctIdstring独特 ID
utmSourcestringUTM ソース
utmMediumstringUTM メディア
utmCampaignstringUTM キャンペーン名
utmContentstringUTM コンテンツ
utmTermstringUTM キーワード
segmentuuidセグメントUUID
cohortuuidクリックUUID

他の API については Umami API ドキュメント を参照してください。

参考

気に入ったならばコメントを残してくださいね~