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

可选。切换是否返回此 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)

用于过滤列表中的值的过滤条件。

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_name”和“item_category”等字段。

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

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

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

object (StringFilter)

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

inListFilter

object (InListFilter)

用于过滤列表中的值的过滤条件。

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 以及大多数网页 / 屏幕维度,例如 pageTitlepagePathnextActionDimension 不能是维度表达式。

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. 细分受众群”“2. 细分受众群”等)。

联合字段 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)

如果用户同时符合所有 andConditionGroups 和所有 andSequenceGroups,则符合此条件。如果指定了 andSequenceGroups,则 andConditionGroups 可以为空。

andSequenceGroups[]

object (UserSegmentSequenceGroup)

如果用户同时符合所有 andSequenceGroups 和所有 andConditionGroups,则符合此条件。如果指定了 andConditionGroups,则 andSequenceGroups 可以为空。

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)

用于过滤列表中的值的过滤条件。

numericFilter

object (NumericFilter)

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

betweenFilter

object (BetweenFilter)

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

SegmentFilterScoping

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

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

boolean

如果 atAnyPointInTime 为 true,则当此过滤条件对请求日期范围内的任何事件的评估结果为 true 时,对所有事件的评估结果都为 true。

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

只有在条件范围为 ACROSS_ALL_SESSIONS 时才能指定此 atAnyPointInTime,并且无法在序列中指定此 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_name”和“item_category”等字段。

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

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

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

object (StringFilter)

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

inListFilter

object (InListFilter)

用于过滤列表中的值的过滤条件。

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-01 至 2021-11-01、2021-11-01 至 2021-11-02、2021-11-01 至 2021-11-03 和 2021-11-02 至 2021-11-04。

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,则用户必须在一个会话内完成此序列中的所有步骤,才能与该序列匹配。仅当 stepScoping = ACROSS_ALL_SESSIONS 时才允许 sequenceScoping = 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 对应于请求中指定的日期范围(按日期范围在请求中指定的顺序)。

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