Method: properties.runFunnelReport

返回包含 Google Analytics 事件数据的自定义漏斗报告。从 API 返回的数据以表格的形式显示,其中包含请求的维度和指标对应的列。

漏斗探索可以直观呈现用户为完成任务而采取的步骤,并让您迅速了解用户在每个步骤上的成功或失败情况。例如,潜在客户是如何一步步提高购买意向并最终出手购买的?一次性买家是如何成为回头客的?根据这些信息,您可以改进低效或被用户放弃的客户转化历程。如需了解详情,请参阅 GA4 漏斗探索

此方法是在 Alpha 版稳定性阶段推出的,目的是在进入 Beta 版之前收集有关语法和功能的反馈。如需提供您对此 API 的反馈,请填写 Google Analytics Data API 漏斗报告反馈

HTTP 请求

POST https://analyticsdata.googleapis.com/v1alpha/{property=properties/*}:runFunnelReport

网址采用 gRPC 转码语法。

路径参数

参数
property

string

可选。要跟踪事件的 Google Analytics 媒体资源标识符。在网址路径中指定,而不是在正文中指定。如需了解详情,请参阅如何查找媒体资源 ID。在批量请求中,此属性应未指定或与批量级属性一致。

示例:properties/1234

请求正文

请求正文中包含结构如下的数据:

JSON 表示法
{
  "dateRanges": [
    {
      object (DateRange)
    }
  ],
  "funnel": {
    object (Funnel)
  },
  "funnelBreakdown": {
    object (FunnelBreakdown)
  },
  "funnelNextAction": {
    object (FunnelNextAction)
  },
  "funnelVisualizationType": enum (FunnelVisualizationType),
  "segments": [
    {
      object (Segment)
    }
  ],
  "limit": string,
  "dimensionFilter": {
    object (FilterExpression)
  },
  "returnPropertyQuota": boolean
}
字段
dateRanges[]

object (DateRange)

可选。要读取的数据的日期范围。如果请求多个日期范围,则每个响应行都将包含从零开始的日期范围编号。如果两个日期范围重叠,则重叠天数的事件数据会包含在两个日期范围的响应行中。

funnel

object (Funnel)

可选。此请求漏斗的配置。此漏斗配置是必需的。

funnelBreakdown

object (FunnelBreakdown)

可选。如果指定,此细分将向漏斗表格子报告响应中添加一个维度。此细分维度会将每个漏斗步骤展开为细分维度的唯一值。例如,按 deviceCategory 维度进行细分会为 mobiletabletdesktop 和总计创建行。

funnelNextAction

object (FunnelNextAction)

可选。如果指定,则“后续操作”会向漏斗可视化子报告响应添加一个维度。此“后续操作”维度会将每个漏斗步骤展开为后续操作的唯一值。例如,eventName 维度的“后续操作”将为多个事件(例如 session_startclick)以及总计创建行。

“后续操作”仅支持 eventName 以及大多数网页 / 屏幕维度,例如 pageTitlepagePath

funnelVisualizationType

enum (FunnelVisualizationType)

可选。漏斗可视化图表类型用于控制漏斗可视化子报告响应中显示的维度。如果未指定,则系统会使用 STANDARD_FUNNEL

segments[]

object (Segment)

可选。细分配置。细分是媒体资源数据的子集。在包含细分的漏斗报告中,系统会对每个细分中的漏斗进行评估。

此请求中指定的每个细分受众群都会在响应中生成一行;在响应中,每个细分受众群都由其名称标识。

segments 参数是可选的。请求不得超过 4 个细分。

limit

string (int64 format)

可选。要返回的行数。如果未指定,则返回 10,000 行。无论您请求多少行,该 API 每个请求最多只会返回 25 万行。limit 必须为正数。

如果维度值的数量不如 limit 多,API 返回的行数也可能少于请求的 limit

dimensionFilter

object (FilterExpression)

可选。借助维度过滤条件,您可以要求报告中仅显示特定维度值。如需了解详情,请参阅创建报告:维度过滤条件,查看相关示例。此过滤条件不支持使用指标。

returnPropertyQuota

boolean

可选。切换是否返回此 Google Analytics 媒体资源配额的当前状态。配额会在 PropertyQuota 中返回。

响应正文

漏斗报告响应包含两个子报告。这两个子报告是维度和指标的不同组合。

如果成功,响应正文将包含结构如下的数据:

JSON 表示法
{
  "funnelTable": {
    object (FunnelSubReport)
  },
  "funnelVisualization": {
    object (FunnelSubReport)
  },
  "propertyQuota": {
    object (PropertyQuota)
  },
  "kind": string
}
字段
funnelTable

object (FunnelSubReport)

漏斗表格是一个报告,其中包含漏斗步骤、细分、细分维度、活跃用户数、完成率、放弃情况和放弃率。

只有在请求了细分时,此响应中才会包含细分维度。只有在请求了细分维度时,此响应中才会显示该维度。

funnelVisualization

object (FunnelSubReport)

“渠道可视化”报告包含渠道步骤、细分、日期、后续操作维度和活跃用户数。

只有在请求了细分时,此响应中才会包含细分维度。只有在通过 TRENDED_FUNNEL 漏斗类型请求日期维度时,此响应中才会显示日期维度。只有在请求了“后续操作”维度时,响应中才会显示该维度。

propertyQuota

object (PropertyQuota)

此 Google Analytics 媒体资源的配额状态,包括此请求。

kind

string

指明此消息是哪类资源。此 kind 始终为固定字符串“analyticsData#runFunnelReport”。有助于区分 JSON 中的响应类型。

授权范围

需要以下 OAuth 范围之一:

  • https://www.googleapis.com/auth/analytics.readonly
  • https://www.googleapis.com/auth/analytics

漏斗图

在漏斗报告请求中配置漏斗。渠道报告会跟踪用户完成一系列步骤的情况。

漏斗探索可以直观呈现用户为完成任务而采取的步骤,并让您迅速了解用户在每个步骤上的成功或失败情况。例如,潜在客户是如何一步步提高购买意向并最终出手购买的?一次性买家是如何成为回头客的?根据这些信息,您可以改进低效或被用户放弃的客户转化历程。

JSON 表示法
{
  "isOpenFunnel": boolean,
  "steps": [
    {
      object (FunnelStep)
    }
  ]
}
字段
isOpenFunnel

boolean

在开放漏斗中,用户可以在任何步骤进入漏斗;在封闭漏斗中,用户必须在第一个步骤进入漏斗。可选。如果未指定,则使用封闭漏斗。

steps[]

object (FunnelStep)

此漏斗的顺序步骤。

FunnelStep

步骤用于界定您要衡量的用户历程。步骤包含一项或多项条件,用户必须满足所添加的条件才能被纳入到漏斗历程的相应步骤中。

JSON 表示法
{
  "name": string,
  "isDirectlyFollowedBy": boolean,
  "filterExpression": {
    object (FunnelFilterExpression)
  },
  "withinDurationFromPriorStep": string
}
字段
name

string

此步骤的独特名称。如果未指定,步骤将采用从 1 开始的编号名称(例如“0. ", "1. 等)。此名称用于定义 funnelStepName 维度返回的字符串值。例如,在请求的第三个漏斗步骤中指定 name = Purchase 会在漏斗报告响应中生成 3. Purchase

isDirectlyFollowedBy

boolean

如果为 true,则此步骤必须紧跟在上一步之后发生。如果为 false,则上一步和此步骤之间可以有事件。如果未指定,则 isDirectlyFollowedBy 会被视为 false。

filterExpression

object (FunnelFilterExpression)

用户必须满足所添加的条件才能被纳入到漏斗历程的相应步骤中。

withinDurationFromPriorStep

string (Duration format)

如果指定了此值,则此步骤必须在完成上一步骤后此时段内完成。withinDurationFromPriorStep 以微秒为单位,包含端点。例如,时长为 5 秒的动作可以在 4.9 秒或 5.0 秒完成,但不能在 5 秒 1 微秒完成。

withinDurationFromPriorStep 是可选项,如果未指定,步骤可以由任意时长分隔。

该时长以秒为单位,最多包含九个小数位,以“s”结尾。示例:"3.5s"

FunnelFilterExpression

表示漏斗过滤条件的组合。

JSON 表示法
{

  // Union field expr can be only one of the following:
  "andGroup": {
    object (FunnelFilterExpressionList)
  },
  "orGroup": {
    object (FunnelFilterExpressionList)
  },
  "notExpression": {
    object (FunnelFilterExpression)
  },
  "funnelFieldFilter": {
    object (FunnelFieldFilter)
  },
  "funnelEventFilter": {
    object (FunnelEventFilter)
  }
  // End of list of possible types for union field expr.
}
字段
联合字段 expr。为 FunnelFilterExpression 指定一种过滤器类型。expr 只能是下列其中一项:
andGroup

object (FunnelFilterExpressionList)

andGroup 中的 FunnelFilterExpression 具有 AND 关系。

orGroup

object (FunnelFilterExpressionList)

orGroup 中的 FunnelFilterExpression 具有 OR 关系。

notExpression

object (FunnelFilterExpression)

FunnelFilterExpression 不是 notExpression

funnelFieldFilter

object (FunnelFieldFilter)

维度或指标的漏斗过滤条件。

funnelEventFilter

object (FunnelEventFilter)

创建一个与单个事件名称的事件匹配的过滤条件。如果指定了参数过滤表达式,则只有同时与单个事件名称和参数过滤表达式匹配的事件子集才会与此事件过滤器匹配。

FunnelFilterExpressionList

漏斗过滤条件表达式列表。

JSON 表示法
{
  "expressions": [
    {
      object (FunnelFilterExpression)
    }
  ]
}
字段
expressions[]

object (FunnelFilterExpression)

漏斗过滤条件表达式列表。

FunnelFieldFilter

用于过滤维度或指标值的表达式。

JSON 表示法
{
  "fieldName": string,

  // Union field one_filter can be only one of the following:
  "stringFilter": {
    object (StringFilter)
  },
  "inListFilter": {
    object (InListFilter)
  },
  "numericFilter": {
    object (NumericFilter)
  },
  "betweenFilter": {
    object (BetweenFilter)
  }
  // End of list of possible types for union field one_filter.
}
字段
fieldName

string

维度名称或指标名称。

联合字段 one_filter。指定一种过滤器类型。one_filter 只能是下列其中一项:
stringFilter

object (StringFilter)

与字符串相关的过滤条件。

inListFilter

object (InListFilter)

用于过滤“in”列表值的过滤条件。

numericFilter

object (NumericFilter)

用于过滤数字或日期值的过滤条件。

betweenFilter

object (BetweenFilter)

用于过滤介于两个值之间的数据的过滤条件。

FunnelEventFilter

创建一个与单个事件名称的事件匹配的过滤条件。如果指定了参数过滤表达式,则只有同时与单个事件名称和参数过滤表达式匹配的事件子集才会与此事件过滤器匹配。

JSON 表示法
{
  "eventName": string,
  "funnelParameterFilterExpression": {
    object (FunnelParameterFilterExpression)
  }
}
字段
eventName

string

此过滤条件会匹配具有此单个事件名称的事件。必须提供事件名称。

funnelParameterFilterExpression

object (FunnelParameterFilterExpression)

如果指定,此过滤条件会与同时与单个事件名称和参数过滤表达式匹配的事件匹配。

在参数过滤条件表达式中,仅可使用参数过滤条件。

FunnelParameterFilterExpression

表示参数的漏斗过滤条件组合。

JSON 表示法
{

  // Union field expr can be only one of the following:
  "andGroup": {
    object (FunnelParameterFilterExpressionList)
  },
  "orGroup": {
    object (FunnelParameterFilterExpressionList)
  },
  "notExpression": {
    object (FunnelParameterFilterExpression)
  },
  "funnelParameterFilter": {
    object (FunnelParameterFilter)
  }
  // End of list of possible types for union field expr.
}
字段
联合字段 expr。为 FunnelParameterFilterExpression 指定一种过滤器类型。expr 只能是下列其中一项:
andGroup

object (FunnelParameterFilterExpressionList)

andGroup 中的 FunnelParameterFilterExpression 具有 AND 关系。

orGroup

object (FunnelParameterFilterExpressionList)

orGroup 中的 FunnelParameterFilterExpression 具有 OR 关系。

notExpression

object (FunnelParameterFilterExpression)

FunnelParameterFilterExpression 不是 notExpression

funnelParameterFilter

object (FunnelParameterFilter)

基本漏斗参数过滤器。

FunnelParameterFilterExpressionList

漏斗参数过滤条件表达式列表。

JSON 表示法
{
  "expressions": [
    {
      object (FunnelParameterFilterExpression)
    }
  ]
}
字段
expressions[]

object (FunnelParameterFilterExpression)

漏斗参数过滤表达式列表。

FunnelParameterFilter

用于过滤漏斗中参数值的表达式。

JSON 表示法
{

  // Union field one_parameter can be only one of the following:
  "eventParameterName": string,
  "itemParameterName": string
  // End of list of possible types for union field one_parameter.

  // Union field one_filter can be only one of the following:
  "stringFilter": {
    object (StringFilter)
  },
  "inListFilter": {
    object (InListFilter)
  },
  "numericFilter": {
    object (NumericFilter)
  },
  "betweenFilter": {
    object (BetweenFilter)
  }
  // End of list of possible types for union field one_filter.
}
字段
联合字段 one_parameter。要过滤的字段。one_parameter 只能是下列其中一项:
eventParameterName

string

系统将对指定的事件参数评估此过滤器。事件参数会作为事件的参数记录下来。事件参数包括“firebase_screen”和“currency”等字段。

事件参数只能在细分受众群和漏斗中使用,并且只能在 EventFilter 的后代过滤条件中使用。在 EventFilter 的子过滤器中,应使用事件参数或项参数。

itemParameterName

string

系统将对指定的 item 参数进行此过滤器的评估。商品参数会作为 items 数组中的参数记录下来。商品参数包括“item_name”和“item_category”等字段。

商品参数只能在细分受众群和漏斗中使用,并且只能在 EventFilter 的后代过滤条件中使用。在 EventFilter 的子过滤器中,应使用事件参数或项参数。

商品参数仅适用于电子商务事件。如需详细了解电子商务事件,请参阅衡量电子商务指南。

联合字段 one_filter。指定一种过滤器类型。one_filter 只能是下列其中一项:
stringFilter

object (StringFilter)

与字符串相关的过滤条件。

inListFilter

object (InListFilter)

用于过滤“in”列表值的过滤条件。

numericFilter

object (NumericFilter)

用于过滤数字或日期值的过滤条件。

betweenFilter

object (BetweenFilter)

用于过滤介于两个值之间的数据的过滤条件。

FunnelBreakdown

细分会向漏斗表格子报告响应添加维度。

JSON 表示法
{
  "breakdownDimension": {
    object (Dimension)
  },
  "limit": string
}
字段
breakdownDimension

object (Dimension)

向漏斗表格子报告响应中添加了维度列。细分维度用于对每个漏斗步骤进行细分。如果指定了 funnelBreakdown,则必须指定有效的 breakdownDimension

limit

string (int64 format)

响应中可返回的分解维度不重复值的数量上限。如果未指定限制,则使用 5limit。上限必须大于 0 且不能超过 15。

FunnelNextAction

“后续操作”用于指明用户完成某个步骤但尚未完成下一步骤时某个维度的值。例如,如果 nextActionDimensioneventName,则第 i 个漏斗步骤行中的 nextActionDimension 将返回在用户达到第 i 个漏斗步骤但未达到第 i+1 个漏斗步骤之前的第一个事件。

JSON 表示法
{
  "nextActionDimension": {
    object (Dimension)
  },
  "limit": string
}
字段
nextActionDimension

object (Dimension)

添加到漏斗可视化子报告响应的维度列。“下一步骤”维度会在用户达到第 i 个漏斗步骤后,返回此维度的下一个维度值。

nextActionDimension 目前仅支持 eventName 以及 pageTitlepagePath 等大多数网页 / 屏幕维度。nextActionDimension 不能是维度表达式。

limit

string (int64 format)

响应中可返回的分解维度不重复值的数量上限。如果未指定限制,则使用 5limit。上限必须大于 0,且不得超过 5。

FunnelVisualizationType

用于控制漏斗可视化子报告响应中显示的维度。

枚举
FUNNEL_VISUALIZATION_TYPE_UNSPECIFIED 未指定类型。
STANDARD_FUNNEL 标准漏斗(阶梯图)。响应中的漏斗可视化子报告不会包含日期。
TRENDED_FUNNEL 显示有趋势的漏斗(折线图)。响应中的漏斗可视化子报告将包含日期维度。

Segment

“细分”是指您的一部分 Google Analytics 数据。例如,在您的整个用户群中,您可使用一个细分来指定来自特定国家/地区或城市的用户,您还可以使用另一个细分来指定购买特定产品系列、访问网站上特定部分或触发应用中某些事件的用户。

如需了解详情,请参阅细分生成工具

JSON 表示法
{
  "name": string,

  // Union field one_segment_scope can be only one of the following:
  "userSegment": {
    object (UserSegment)
  },
  "sessionSegment": {
    object (SessionSegment)
  },
  "eventSegment": {
    object (EventSegment)
  }
  // End of list of possible types for union field one_segment_scope.
}
字段
name

string

此细分的名称。如果未指定,则将相应路段命名为“路段”。此名称用于定义 segment 维度返回的字符串值。segment 维度会在分段名称前面加上请求中相应分段的编号(从 1 开始,例如“1. Segment", "2. Segment”等)。

联合字段 one_segment_scope。一个片段在一个范围内指定。one_segment_scope 只能是下列其中一项:
userSegment

object (UserSegment)

用户细分是指与您的网站或应用互动过的用户的子集。

sessionSegment

object (SessionSegment)

会话细分是在您的网站或应用上发生的一部分会话。

eventSegment

object (EventSegment)

事件细分是在您的网站或应用上触发的一部分事件。

UserSegment

用户细分是与您的网站或应用进行了互动的一部分用户,例如:之前有过购买行为的用户;向购物车添加了商品但未完成购买的用户。

JSON 表示法
{
  "userInclusionCriteria": {
    object (UserSegmentCriteria)
  },
  "exclusion": {
    object (UserSegmentExclusion)
  }
}
字段
userInclusionCriteria

object (UserSegmentCriteria)

定义要纳入此细分的用户。可选。

exclusion

object (UserSegmentExclusion)

定义要从此细分受众群体中排除的用户。可选。

UserSegmentCriteria

如果用户的事件符合条件,则该用户就符合相应条件。

JSON 表示法
{
  "andConditionGroups": [
    {
      object (UserSegmentConditionGroup)
    }
  ],
  "andSequenceGroups": [
    {
      object (UserSegmentSequenceGroup)
    }
  ]
}
字段
andConditionGroups[]

object (UserSegmentConditionGroup)

如果用户与这 4 个 andConditionGroups 和这 4 个 andSequenceGroups 都匹配,则表示用户符合此条件。如果指定了 andSequenceGroupsandConditionGroups 可以为空。

andSequenceGroups[]

object (UserSegmentSequenceGroup)

如果用户与这 4 个 andSequenceGroups 和这 4 个 andConditionGroups 都匹配,则表示用户符合此条件。如果指定了 andConditionGroupsandSequenceGroups 可以为空。

UserSegmentConditionGroup

条件用于指示 Google Analytics 要在细分中包含或排除哪些数据。

JSON 表示法
{
  "conditionScoping": enum (UserCriteriaScoping),
  "segmentFilterExpression": {
    object (SegmentFilterExpression)
  }
}
字段
conditionScoping

enum (UserCriteriaScoping)

系统会根据数据是否与条件组匹配来决定将其包含或排除在细分中。此范围定义了在确定条件组是否匹配之前,系统要评估多少个事件。segmentFilterExpression例如,如果为 conditionScoping = USER_CRITERIA_WITHIN_SAME_SESSION,系统会对会话中的所有事件求值,然后确定此用户是否与条件组匹配。例如,如果为 conditionScoping = USER_CRITERIA_WITHIN_SAME_EVENT,系统会对单个事件求值,然后确定此用户是否与条件组匹配。

可选。如果未指定,则系统会使用 conditionScoping = ACROSS_ALL_SESSIONS

segmentFilterExpression

object (SegmentFilterExpression)

系统会根据数据是否与此表达式匹配,决定将其包含或排除在细分中。表达式用于表达维度、指标和/或参数的条件。

UserCriteriaScoping

范围限定用于指定在评估用户是否符合条件时要考虑哪些事件。

枚举
USER_CRITERIA_SCOPING_UNSPECIFIED 未指定条件范围。不指定。
USER_CRITERIA_WITHIN_SAME_EVENT 如果用户在某个事件中满足条件,则表示该用户符合条件。
USER_CRITERIA_WITHIN_SAME_SESSION 如果用户在一个会话内满足条件,则表示该用户符合条件。
USER_CRITERIA_ACROSS_ALL_SESSIONS 如果用户的任何事件都满足条件,则该用户符合条件。

SegmentFilterExpression

表示细分受众群过滤条件的组合。

JSON 表示法
{

  // Union field expr can be only one of the following:
  "andGroup": {
    object (SegmentFilterExpressionList)
  },
  "orGroup": {
    object (SegmentFilterExpressionList)
  },
  "notExpression": {
    object (SegmentFilterExpression)
  },
  "segmentFilter": {
    object (SegmentFilter)
  },
  "segmentEventFilter": {
    object (SegmentEventFilter)
  }
  // End of list of possible types for union field expr.
}
字段
联合字段 expr。为 SegmentFilterExpression 指定一种过滤器类型。expr 只能是下列其中一项:
andGroup

object (SegmentFilterExpressionList)

andGroup 中的 SegmentFilterExpression 具有 AND 关系。

orGroup

object (SegmentFilterExpressionList)

orGroup 中的 SegmentFilterExpression 具有 OR 关系。

notExpression

object (SegmentFilterExpression)

SegmentFilterExpression 不是 notExpression

segmentFilter

object (SegmentFilter)

基元细分过滤器。

segmentEventFilter

object (SegmentEventFilter)

创建一个与单个事件名称的事件匹配的过滤条件。如果指定了参数过滤表达式,则只有同时与单个事件名称和参数过滤表达式匹配的事件子集才会与此事件过滤器匹配。

SegmentFilterExpressionList

细分过滤条件表达式列表。

JSON 表示法
{
  "expressions": [
    {
      object (SegmentFilterExpression)
    }
  ]
}
字段
expressions[]

object (SegmentFilterExpression)

细分过滤条件表达式列表

SegmentFilter

用于过滤维度或指标值的表达式。

JSON 表示法
{
  "fieldName": string,
  "filterScoping": {
    object (SegmentFilterScoping)
  },

  // Union field one_filter can be only one of the following:
  "stringFilter": {
    object (StringFilter)
  },
  "inListFilter": {
    object (InListFilter)
  },
  "numericFilter": {
    object (NumericFilter)
  },
  "betweenFilter": {
    object (BetweenFilter)
  }
  // End of list of possible types for union field one_filter.
}
字段
fieldName

string

维度名称或指标名称。

filterScoping

object (SegmentFilterScoping)

指定过滤条件的范围。

联合字段 one_filter。为 Filter 指定一种过滤器类型。one_filter 只能是下列其中一项:
stringFilter

object (StringFilter)

与字符串相关的过滤条件。

inListFilter

object (InListFilter)

用于过滤“in”列表值的过滤条件。

numericFilter

object (NumericFilter)

用于过滤数字或日期值的过滤条件。

betweenFilter

object (BetweenFilter)

用于过滤介于两个值之间的数据的过滤条件。

SegmentFilterScoping

范围用于指定在评估细分过滤条件时应如何考虑多个事件的维度和指标。

JSON 表示法
{
  "atAnyPointInTime": boolean
}
字段
atAnyPointInTime

boolean

如果 atAnyPointInTime 为 true,则如果请求日期范围内的任何事件对此过滤器的计算结果为 true,则所有事件对此过滤器的计算结果也为 true。

atAnyPointInTime 参数不会延长报告中事件的日期范围。如果 atAnyPointInTime 为 true,则在评估此过滤条件时,系统仅会考虑报告的日期范围内的事件。

只有在条件范围为 ACROSS_ALL_SESSIONS 时才能指定此 atAnyPointInTime,无法在序列中指定。

如果条件范围为 ACROSS_ALL_SESSIONS,则在未指定的情况下,系统会使用 atAnyPointInTime = false。

SegmentEventFilter

创建一个与单个事件名称的事件匹配的过滤条件。如果指定了参数过滤表达式,则只有同时与单个事件名称和参数过滤表达式匹配的事件子集才会与此事件过滤器匹配。

JSON 表示法
{
  "eventName": string,
  "segmentParameterFilterExpression": {
    object (SegmentParameterFilterExpression)
  }
}
字段
eventName

string

此过滤条件会匹配具有此单个事件名称的事件。必须提供事件名称。

segmentParameterFilterExpression

object (SegmentParameterFilterExpression)

如果指定,此过滤条件会与同时与单个事件名称和参数过滤表达式匹配的事件匹配。

在参数过滤条件表达式中,仅可使用参数过滤条件。

SegmentParameterFilterExpression

表示参数的细分过滤条件组合。

JSON 表示法
{

  // Union field expr can be only one of the following:
  "andGroup": {
    object (SegmentParameterFilterExpressionList)
  },
  "orGroup": {
    object (SegmentParameterFilterExpressionList)
  },
  "notExpression": {
    object (SegmentParameterFilterExpression)
  },
  "segmentParameterFilter": {
    object (SegmentParameterFilter)
  }
  // End of list of possible types for union field expr.
}
字段
联合字段 expr。为 SegmentParameterFilterExpression 指定一种过滤器类型。expr 只能是下列其中一项:
andGroup

object (SegmentParameterFilterExpressionList)

andGroup 中的 SegmentParameterFilterExpression 具有 AND 关系。

orGroup

object (SegmentParameterFilterExpressionList)

orGroup 中的 SegmentParameterFilterExpression 具有 OR 关系。

notExpression

object (SegmentParameterFilterExpression)

SegmentParameterFilterExpression 不是 notExpression

segmentParameterFilter

object (SegmentParameterFilter)

基元细分参数过滤器。

SegmentParameterFilterExpressionList

细分参数过滤表达式列表。

JSON 表示法
{
  "expressions": [
    {
      object (SegmentParameterFilterExpression)
    }
  ]
}
字段
expressions[]

object (SegmentParameterFilterExpression)

细分参数过滤表达式列表。

SegmentParameterFilter

用于过滤细分中的参数值的表达式。

JSON 表示法
{
  "filterScoping": {
    object (SegmentParameterFilterScoping)
  },

  // Union field one_parameter can be only one of the following:
  "eventParameterName": string,
  "itemParameterName": string
  // End of list of possible types for union field one_parameter.

  // Union field one_filter can be only one of the following:
  "stringFilter": {
    object (StringFilter)
  },
  "inListFilter": {
    object (InListFilter)
  },
  "numericFilter": {
    object (NumericFilter)
  },
  "betweenFilter": {
    object (BetweenFilter)
  }
  // End of list of possible types for union field one_filter.
}
字段
filterScoping

object (SegmentParameterFilterScoping)

指定过滤条件的范围。

联合字段 one_parameter。要过滤的字段。one_parameter 只能是下列其中一项:
eventParameterName

string

系统将对指定的事件参数评估此过滤器。事件参数会作为事件的参数记录下来。事件参数包括“firebase_screen”和“currency”等字段。

事件参数只能在细分受众群和漏斗中使用,并且只能在 EventFilter 的后代过滤条件中使用。在 EventFilter 的子过滤器中,应使用事件参数或项参数。

itemParameterName

string

系统将对指定的 item 参数进行此过滤器的评估。商品参数会作为 items 数组中的参数记录下来。商品参数包括“item_name”和“item_category”等字段。

商品参数只能在细分受众群和漏斗中使用,并且只能在 EventFilter 的后代过滤条件中使用。在 EventFilter 的子过滤器中,应使用事件参数或项参数。

商品参数仅适用于电子商务事件。如需详细了解电子商务事件,请参阅衡量电子商务指南。

联合字段 one_filter。指定一种过滤器类型。one_filter 只能是下列其中一项:
stringFilter

object (StringFilter)

与字符串相关的过滤条件。

inListFilter

object (InListFilter)

用于过滤“in”列表值的过滤条件。

numericFilter

object (NumericFilter)

用于过滤数字或日期值的过滤条件。

betweenFilter

object (BetweenFilter)

用于过滤介于两个值之间的数据的过滤条件。

SegmentParameterFilterScoping

范围用于指定在评估细分参数过滤条件时应如何考虑多个事件。

JSON 表示法
{
  "inAnyNDayPeriod": string
}
字段
inAnyNDayPeriod

string (int64 format)

在应用过滤条件之前,累积指定天数内的参数。仅当条件范围为 ACROSS_ALL_SESSIONSWITHIN_SAME_SESSION 时才受支持。仅当参数为 event_count 时才受支持。

例如,如果 inAnyNDayPeriod 为 3、eventName 为“purchase”“event_count”为事件参数,并且过滤条件的条件值大于 5,则此过滤条件将累计报告日期范围内每连续 3 天内的购买事件的事件数;如果用户在任意连续 3 天内的购买事件数超过 5 次,则会满足此过滤条件的条件,并包含在此细分受众群体中。例如,系统会考虑 2021-11-01 至 2021-11-03、2021-11-02 至 2021-11-04、2021-11-03 至 2021-11-05 等时间段。

日期范围不会延长,以便在日期范围的开头附近有完整的 N 天时间范围。例如,如果报告的时间范围为 2021 年 11 月 1 日至 2021 年 11 月 10 日,且 inAnyNDayPeriod = 3,则前两天的时段将被有效缩短,因为系统不会读取报告日期范围之外的事件数据。例如,前四个周期实际上分别为:2021 年 11 月 1 日至 2021 年 11 月 1 日、2021 年 11 月 1 日至 2021 年 11 月 2 日、2021 年 11 月 1 日至 2021 年 11 月 3 日,以及 2021 年 11 月 2 日至 2021 年 11 月 4 日。

inAnyNDayPeriod 为可选项。如果未指定,系统会分别将 segmentParameterFilter 应用于每个事件。

UserSegmentSequenceGroup

定义用户必须按特定顺序满足的条件,才能成为细分用户群的成员。

JSON 表示法
{
  "sequenceScoping": enum (UserCriteriaScoping),
  "sequenceMaximumDuration": string,
  "userSequenceSteps": [
    {
      object (UserSequenceStep)
    }
  ]
}
字段
sequenceScoping

enum (UserCriteriaScoping)

用户必须满足范围限定中的所有序列步骤,才能与序列匹配。例如,如果为 sequenceScoping = USER_CRITERIA_WITHIN_SAME_SESSION,则所有序列步骤都必须在一个会话中完成,用户才能匹配该序列。不支持 sequenceScoping = USER_CRITERIA_WITHIN_SAME_EVENT

可选。如果未指定,则系统会使用 conditionScoping = ACROSS_ALL_SESSIONS

sequenceMaximumDuration

string (Duration format)

指定整个序列必须在多长时间内完成;例如 30 分钟。sequenceMaximumDuration 以微秒为单位,包含端点。例如,时长上限为 5 秒的序列可以在 4.9 秒或 5.0 秒完成,但不能在 5 秒 1 微秒完成。

sequenceMaximumDuration 是可选的,如果未指定,序列可以在任何时间段内完成。

该时长以秒为单位,最多包含九个小数位,以“s”结尾。示例:"3.5s"

userSequenceSteps[]

object (UserSequenceStep)

一系列有序的条件步骤。用户的事件必须完成每个步骤,用户才能与 UserSegmentSequenceGroup 匹配。

UserSequenceStep

此用户必须满足的条件,且该条件必须按指定的步骤顺序发生,才能与此序列相匹配。

JSON 表示法
{
  "isDirectlyFollowedBy": boolean,
  "stepScoping": enum (UserCriteriaScoping),
  "segmentFilterExpression": {
    object (SegmentFilterExpression)
  }
}
字段
isDirectlyFollowedBy

boolean

如果为 true,则满足此步骤的事件必须是满足上一步骤的事件的紧随其后的事件。如果为 false,则此步骤间接后跟上一步;例如,上一步和此步骤之间可能有事件。对于第一步,isDirectlyFollowedBy 必须为 false。

stepScoping

enum (UserCriteriaScoping)

在限定范围时,必须满足此序列步骤,用户才能与序列匹配。例如,如果为 sequenceScoping = WITHIN_SAME_SESSION,则此序列步骤必须在一个会话内完成,用户才能匹配该序列。仅当 sequenceScoping = ACROSS_ALL_SESSIONS 时才允许使用 stepScoping = ACROSS_ALL_SESSIONS

可选。如果未指定,stepScoping 会使用与 sequenceScoping 相同的 UserCriteriaScoping

segmentFilterExpression

object (SegmentFilterExpression)

如果用户的事件与此表达式匹配,则表示用户与此序列步骤匹配。表达式用于表达维度、指标和/或参数的条件。

UserSegmentExclusion

指定要从此细分受众群中排除的用户。

JSON 表示法
{
  "userExclusionDuration": enum (UserExclusionDuration),
  "userExclusionCriteria": {
    object (UserSegmentCriteria)
  }
}
字段
userExclusionDuration

enum (UserExclusionDuration)

指定如果用户与 userExclusionCriteria 匹配,排除项将持续多长时间。

可选。如果未指定,则使用 USER_EXCLUSION_TEMPORARYuserExclusionDuration

userExclusionCriteria

object (UserSegmentCriteria)

如果用户满足此条件,系统会将其从 userExclusionDuration 的细分受众群体中排除。

UserExclusionDuration

枚举了在用户与 userExclusionCriteria 匹配时排除项的有效期选项。

枚举
USER_EXCLUSION_DURATION_UNSPECIFIED 未指定排除时长。不指定。
USER_EXCLUSION_TEMPORARY 在用户符合 userExclusionCriteria 条件的时段内,从细分中暂时排除用户。
USER_EXCLUSION_PERMANENT 如果用户曾满足 userExclusionCriteria 条件,则从细分中永久排除该用户。

SessionSegment

会话细分是在您的网站或应用上发生的一部分会话,例如:源自特定广告系列的所有会话。

JSON 表示法
{
  "sessionInclusionCriteria": {
    object (SessionSegmentCriteria)
  },
  "exclusion": {
    object (SessionSegmentExclusion)
  }
}
字段
sessionInclusionCriteria

object (SessionSegmentCriteria)

定义此细分中包含哪些会话。可选。

exclusion

object (SessionSegmentExclusion)

定义要从此细分中排除哪些会话。可选。

SessionSegmentCriteria

如果会话的事件符合条件,则会话与条件匹配。

JSON 表示法
{
  "andConditionGroups": [
    {
      object (SessionSegmentConditionGroup)
    }
  ]
}
字段
andConditionGroups[]

object (SessionSegmentConditionGroup)

如果会话与以下每个 andConditionGroups 匹配,则会话符合此条件。

SessionSegmentConditionGroup

条件用于指示 Google Analytics 要在细分中包含或排除哪些数据。

JSON 表示法
{
  "conditionScoping": enum (SessionCriteriaScoping),
  "segmentFilterExpression": {
    object (SegmentFilterExpression)
  }
}
字段
conditionScoping

enum (SessionCriteriaScoping)

系统会根据数据是否与条件组匹配来决定将其包含或排除在细分中。此范围定义了在确定条件组是否匹配之前,系统要评估多少个事件。segmentFilterExpression例如,如果为 conditionScoping = SESSION_CRITERIA_WITHIN_SAME_SESSION,系统会对会话中的所有事件评估表达式,然后确定条件组是否与此会话匹配。例如,如果为 conditionScoping = SESSION_CRITERIA_WITHIN_SAME_EVENT,系统会针对单个事件评估表达式,然后确定此会话是否与条件组匹配。

可选。如果未指定,则使用 WITHIN_SAME_SESSIONconditionScoping

segmentFilterExpression

object (SegmentFilterExpression)

系统会根据数据是否与此表达式匹配,决定将其包含或排除在细分中。表达式用于表达维度、指标和/或参数的条件。

SessionCriteriaScoping

范围限定用于指定在评估会话是否符合条件时要考虑哪些事件。

枚举
SESSION_CRITERIA_SCOPING_UNSPECIFIED 未指定条件范围。不指定。
SESSION_CRITERIA_WITHIN_SAME_EVENT 如果在一个事件中满足条件,则会话就符合条件。
SESSION_CRITERIA_WITHIN_SAME_SESSION 如果在一个会话内满足该条件,则该会话与该条件匹配。

SessionSegmentExclusion

指定要在此细分中排除哪些会话。

JSON 表示法
{
  "sessionExclusionDuration": enum (SessionExclusionDuration),
  "sessionExclusionCriteria": {
    object (SessionSegmentCriteria)
  }
}
字段
sessionExclusionDuration

enum (SessionExclusionDuration)

指定如果会话与 sessionExclusionCriteria 匹配,排除项将持续多长时间。

可选。如果未指定,则使用 SESSION_EXCLUSION_TEMPORARYsessionExclusionDuration

sessionExclusionCriteria

object (SessionSegmentCriteria)

如果会话符合此条件,则会被排除在 sessionExclusionDuration 的细分受众群成员资格之外。

SessionExclusionDuration

枚举了在会话与 sessionExclusionCriteria 匹配时排除项的持续时间选项。

枚举
SESSION_EXCLUSION_DURATION_UNSPECIFIED 未指定排除时长。不指定。
SESSION_EXCLUSION_TEMPORARY 在会话满足 sessionExclusionCriteria 条件的期间,从细分中暂时排除会话。
SESSION_EXCLUSION_PERMANENT 如果会话曾满足 sessionExclusionCriteria 条件,则从细分中永久排除该会话。

EventSegment

事件细分是在您的网站或应用上触发的一部分事件,例如:在特定位置发生的所有购买事件;在特定操作系统上发生的 app_exception 事件。

JSON 表示法
{
  "eventInclusionCriteria": {
    object (EventSegmentCriteria)
  },
  "exclusion": {
    object (EventSegmentExclusion)
  }
}
字段
eventInclusionCriteria

object (EventSegmentCriteria)

定义此细分中包含的事件。可选。

exclusion

object (EventSegmentExclusion)

定义要在此细分中排除哪些事件。可选。

EventSegmentCriteria

如果事件符合条件,则与条件匹配。

JSON 表示法
{
  "andConditionGroups": [
    {
      object (EventSegmentConditionGroup)
    }
  ]
}
字段
andConditionGroups[]

object (EventSegmentConditionGroup)

如果事件与以下每个 andConditionGroups 匹配,则该事件与此条件匹配。

EventSegmentConditionGroup

条件用于指示 Google Analytics 要在细分中包含或排除哪些数据。

JSON 表示法
{
  "conditionScoping": enum (EventCriteriaScoping),
  "segmentFilterExpression": {
    object (SegmentFilterExpression)
  }
}
字段
conditionScoping

enum (EventCriteriaScoping)

conditionScoping 应始终为 EVENT_CRITERIA_WITHIN_SAME_EVENT

可选。如果未指定,则使用 EVENT_CRITERIA_WITHIN_SAME_EVENTconditionScoping

segmentFilterExpression

object (SegmentFilterExpression)

系统会根据数据是否与此表达式匹配,决定将其包含或排除在细分中。表达式用于表达维度、指标和/或参数的条件。

EventCriteriaScoping

范围限定用于指定在评估事件是否符合条件时要考虑哪些事件。

枚举
EVENT_CRITERIA_SCOPING_UNSPECIFIED 未指定条件范围。不指定。
EVENT_CRITERIA_WITHIN_SAME_EVENT 如果某个事件满足条件,则该事件与条件相匹配。

EventSegmentExclusion

指定要在此细分中排除哪些事件。

JSON 表示法
{
  "eventExclusionDuration": enum (EventExclusionDuration),
  "eventExclusionCriteria": {
    object (EventSegmentCriteria)
  }
}
字段
eventExclusionDuration

enum (EventExclusionDuration)

eventExclusionDuration 应始终为 PERMANENTLY_EXCLUDE

可选。如果未指定,则使用 EVENT_EXCLUSION_PERMANENTeventExclusionDuration

eventExclusionCriteria

object (EventSegmentCriteria)

如果某个事件满足此条件,则该事件将被排除在 eventExclusionDuration 的细分受众群体之外。

EventExclusionDuration

枚举了以下选项,用于指定如果事件与 eventExclusionCriteria 匹配,排除项将持续多长时间。

枚举
EVENT_EXCLUSION_DURATION_UNSPECIFIED 未指定排除时长。不指定。
EVENT_EXCLUSION_PERMANENT 如果事件曾满足 eventExclusionCriteria 条件,则从细分中永久排除该事件。

FunnelSubReport

漏斗子报告包含维度和指标数据值。例如,有 12 位用户到达了漏斗的第二步。

JSON 表示法
{
  "dimensionHeaders": [
    {
      object (DimensionHeader)
    }
  ],
  "metricHeaders": [
    {
      object (MetricHeader)
    }
  ],
  "rows": [
    {
      object (Row)
    }
  ],
  "metadata": {
    object (FunnelResponseMetadata)
  }
}
字段
dimensionHeaders[]

object (DimensionHeader)

描述维度列。漏斗报告始终会在子报告响应中包含漏斗步骤维度。如有请求,响应中可能会包含其他维度,例如细分、日期和后续措施。

metricHeaders[]

object (MetricHeader)

介绍指标列。漏斗报告始终会在子报告响应中包含活跃用户数。漏斗表格包含完成率、放弃情况和放弃率等其他指标。

rows[]

object (Row)

报告中包含维度值组合和指标值的行。

metadata

object (FunnelResponseMetadata)

漏斗报告的元数据。

FunnelResponseMetadata

漏斗报告的响应元数据包含有关漏斗报告的其他信息。

JSON 表示法
{
  "samplingMetadatas": [
    {
      object (SamplingMetadata)
    }
  ]
}
字段
samplingMetadatas[]

object (SamplingMetadata)

如果漏斗报告结果是抽样的,则此值表示此漏斗报告中所用事件所占的百分比。系统会为每个日期范围填充一个 samplingMetadatas。每个 samplingMetadatas 都对应于一个日期范围,以便在请求中指定日期范围。

不过,如果未对结果进行抽样,则不会定义此字段。