事件

关于事件和事件数据的操作。

端点

GET /api/websites/:websiteId/events
GET /api/websites/:websiteId/events/stats
GET /api/websites/:websiteId/event-data
GET /api/websites/:websiteId/event-data/:eventId
GET /api/websites/:websiteId/event-data/events
GET /api/websites/:websiteId/event-data/fields
GET /api/websites/:websiteId/event-data/properties
GET /api/websites/:websiteId/event-data/values
GET /api/websites/:websiteId/event-data/stats

过滤器

所有标记为 filters 的端点现在都可以使用以下参数进行过滤。

ParameterTypeDescription
pathstringURL 名称。
referrerstring引荐来源名称。
titlestring页面标题名称。
querystring查询参数名称。
browserstring浏览器名称。
osstring操作系统名称。
devicestring设备名称(例如:移动设备)。
countrystring国家名称。
regionstring地区/州/省名称。
citystring城市名称。
languagestring浏览器语言名称。
hostnamestring主机名名称。
tagstring标签名称。
eventstring事件名称。
distinctIdstringdistinct ID 名称。
utmSourcestringUTM 来源。
utmMediumstringUTM 媒介。
utmCampaignstringUTM 活动名称。
utmContentstringUTM 内容。
utmTermstringUTM 术语。
segmentuuid分群的 UUID。
cohortuuid队列的 UUID。

GET /api/websites/:websiteId/events

获取指定时间范围内网站事件的详细信息。

参数

ParameterTypeDescription
startAtnumber起始日期的时间戳(毫秒)。
endAtnumber结束日期的时间戳(毫秒)。
searchstring(可选)搜索文本。
pagenumber(可选,默认 1)决定页码。
pageSizenumber(可选,默认 20)决定返回结果数量。
filtersobject可接受过滤参数。

示例响应

{
  "data": [
    {
      "id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
      "websiteId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
      "sessionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
      "createdAt": "2025-10-15T16:26:28Z",
      "hostname": "umami.is",
      "urlPath": "/docs/api",
      "urlQuery": "",
      "referrerPath": "",
      "referrerQuery": "",
      "referrerDomain": "",
      "country": "US",
      "city": "Scott",
      "device": "desktop",
      "os": "Mac OS",
      "browser": "chrome",
      "pageTitle": "API – Docs - Umami",
      "eventType": 1,
      "eventName": "",
      "hasData": 0
    },
    {
      "id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
      "websiteId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
      "sessionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
      "createdAt": "2025-10-15T16:26:23Z",
      "hostname": "umami.is",
      "urlPath": "/docs/sessions",
      "urlQuery": "",
      "referrerPath": "/docs/distinct-ids",
      "referrerQuery": "",
      "referrerDomain": "umami.is",
      "country": "PL",
      "city": "Warsaw",
      "device": "desktop",
      "os": "Mac OS",
      "browser": "chrome",
      "pageTitle": "Sessions – Docs - Umami",
      "eventType": 2,
      "eventName": "login-button-header",
      "hasData": 0
    }
  ],
  "count": 2,
  "page": 1,
  "pageSize": 20
}

GET /api/websites/:websiteId/events/stats

在给定时间范围内获取聚合事件统计信息,并可选进行周期比较。

参数

ParameterTypeDescription
startAtnumber起始日期的时间戳(毫秒)。
endAtnumber结束日期的时间戳(毫秒)。
comparestring(可选)比较周期(prev | yoy)。
filtersobject(可选)可接受过滤参数。

示例响应

{
    "data": {
        "events": 753,
        "visitors": 607,
        "visits": 687,
        "uniqueEvents": 8,
        "comparison": {
            "events": 1809,
            "visitors": 1374,
            "visits": 1655,
            "uniqueEvents": 10
        }
    }
}

GET /api/websites/:websiteId/event-data

获取指定时间范围内网站的事件数据,并按事件分组。

参数

ParameterTypeDescription
startAtnumber起始日期的时间戳(毫秒)。
endAtnumber结束日期的时间戳(毫秒)。
pagenumber(可选,默认 1)决定页码。
pageSizenumber(可选,默认 20)决定返回结果数量。
filtersobject可接受过滤参数。

示例响应

{
  "data": [
    {
      "websiteId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
      "eventId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
      "eventName": "button-click",
      "eventProperties": [
        {
          "dataKey": "id",
          "stringValue": "signup-btn",
          "numberValue": null,
          "dateValue": null,
          "dataType": 1,
          "createdAt": "2025-10-15T16:26:28Z"
        },
        {
          "dataKey": "name",
          "stringValue": "Sign Up",
          "numberValue": null,
          "dateValue": null,
          "dataType": 1,
          "createdAt": "2025-10-15T16:26:28Z"
        }
      ]
    },
    {
      "websiteId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
      "eventId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
      "eventName": "revenue-demo",
      "eventProperties": [
        {
          "dataKey": "currency",
          "stringValue": "USD",
          "numberValue": null,
          "dateValue": null,
          "dataType": 1,
          "createdAt": "2025-10-10T12:31:03Z"
        },
        {
          "dataKey": "revenue",
          "stringValue": "40.0000",
          "numberValue": 40,
          "dateValue": null,
          "dataType": 2,
          "createdAt": "2025-10-10T12:31:03Z"
        }
      ]
    }
  ],
  "count": 2,
  "page": 1,
  "pageSize": 20
}

GET /api/websites/:websiteId/event-data/:eventId

获取单个事件的事件数据。

示例响应

[
  {
    "websiteId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
    "sessionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
    "eventId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
    "urlPath": "/",
    "eventName": "revenue-demo",
    "dataKey": "currency",
    "stringValue": "USD",
    "numberValue": null,
    "dateValue": null,
    "dataType": 1,
    "createdAt": "2025-10-10T12:31:03Z"
  },
  {
    "websiteId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
    "sessionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
    "eventId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
    "urlPath": "/",
    "eventName": "revenue-demo",
    "dataKey": "revenue",
    "stringValue": "40.0000",
    "numberValue": 40,
    "dateValue": null,
    "dataType": 2,
    "createdAt": "2025-10-10T12:31:03Z"
  }
]

GET /api/websites/:websiteId/event-data/events

获取事件数据的名称、属性和计数。

参数

ParameterTypeDescription
startAtnumber起始日期的时间戳(毫秒)。
endAtnumber结束日期的时间戳(毫秒)。
eventstring(可选)事件名称过滤器。
filtersobject可接受过滤参数。

示例响应

[
  {
    "eventName": "button-click",
    "propertyName": "id",
    "dataType": 1,
    "total": 4
  },
  {
    "eventName": "button-click",
    "propertyName": "name",
    "dataType": 1,
    "total": 4
  },
  {
    "eventName": "track-product",
    "propertyName": "price",
    "dataType": 2,
    "total": 2
  }
]

GET /api/websites/:websiteId/event-data/fields

获取指定时间范围内事件数据属性和值的计数。

参数

ParameterTypeDescription
startAtnumber起始日期的时间戳(毫秒)。
endAtnumber结束日期的时间戳(毫秒)。
filtersobject可接受过滤参数。

示例响应

[
  {
    "propertyName": "age",
    "dataType": 2,
    "value": "33",
    "total": 1
  },
  {
    "propertyName": "age",
    "dataType": 2,
    "value": "31",
    "total": 4
  },
  {
    "propertyName": "gender",
    "dataType": 1,
    "value": "female",
    "total": 4
  },
  {
    "propertyName": "gender",
    "dataType": 1,
    "value": "male",
    "total": 1
  }
]

GET /api/websites/:websiteId/event-data/properties

获取网站的事件名称和属性计数。

参数

ParameterTypeDescription
startAtnumber起始日期的时间戳(毫秒)。
endAtnumber结束日期的时间戳(毫秒)。
filtersobject可接受过滤参数。

示例响应

[
  {
    "eventName": "revenue-demo",
    "propertyName": "revenue",
    "total": 122
  },
  {
    "eventName": "revenue-demo",
    "propertyName": "currency",
    "total": 122
  }
]

GET /api/websites/:websiteId/event-data/values

获取指定事件及属性的事件数据计数。

参数

ParameterTypeDescription
startAtnumber起始日期的时间戳(毫秒)。
endAtnumber结束日期的时间戳(毫秒)。
eventstring事件名称。
propertyNamestring属性名称。
filtersobject可接受过滤参数。

示例响应

[
  {
    "value": "Male",
    "total": 28
  },
  {
    "value": "Female",
    "total": 26
  }
]

GET /api/websites/:websiteId/event-data/stats

获取指定时间范围内网站事件、属性和记录的汇总信息。

参数

ParameterTypeDescription
startAtnumber起始日期的时间戳(毫秒)。
endAtnumber结束日期的时间戳(毫秒)。
filtersobject可接受过滤参数。

示例响应

[
  {
    "events": 16,
    "properties": 13,
    "records": 26
  }
]