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。在網址路徑中指定,而非在內容中指定。詳情請參閱「如何查看資源 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)

選用設定。區隔的設定。區隔是資源資料的子集。在含有區隔的漏斗報表中,系統會針對每個區隔評估漏斗。

這項要求中指定的每個區隔都會在回應中產生一個獨立的資料列;在回應中,每個區隔都會以其名稱標示。

區隔參數為選用參數。要求的區隔數量上限為 4 個。

limit

string (int64 format)

選用設定。代表要傳回的列數。如未指定,系統會傳回 10,000 列。無論您要求多少資料列,API 每項要求最多會傳回 250,000 列。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)

這項 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 為選用項目,如未指定,步驟之間的時間間隔可為任何時間長度。

時間長度以秒為單位,最多可有 9 個小數位數,並應以「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。上限必須大於零,且不得超過 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。上限必須大於零,且不得超過 5。

FunnelVisualizationType

控制漏斗視覺化子報表回應中的維度。

列舉
FUNNEL_VISUALIZATION_TYPE_UNSPECIFIED 未指定的類型。
STANDARD_FUNNEL 標準 (階梯圖) 漏斗。回應中的漏斗視覺化子報表不會包含日期。
TRENDED_FUNNEL 趨勢 (折線圖) 漏斗。回應中的漏斗視覺化子報表會包含日期維度。

區隔

區隔是 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 維度傳回的字串值。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)

如果使用者符合下列每個 andConditionGroupsandSequenceGroups,就符合此條件。如果指定 andSequenceGroupsandConditionGroups 可能會為空白。

andSequenceGroups[]

object (UserSegmentSequenceGroup)

如果使用者符合下列每個 andSequenceGroupsandConditionGroups,就符合此條件。如果指定 andConditionGroupsandSequenceGroups 可能會為空白。

UserSegmentConditionGroup

條件可用來指定 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

如果條件範圍為 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 參數為「event_count」,且 Filter 的條件大於 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-01 到 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 是選用項目,如果未指定,序列可在任何時間範圍內完成。

時間長度以秒為單位,最多可有 9 個小數位數,並應以「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

條件可用來指定 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

條件可用來指定 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 都會對應到要求中指定的日期範圍。

不過,如果結果未經過取樣,這個欄位就不會定義。