Method: userActivity.search

사용자 활동 데이터를 반환합니다.

HTTP 요청

POST https://analyticsreporting.googleapis.com/v4/userActivity:search

URL은 gRPC 트랜스코딩 구문을 사용합니다.

요청 본문

요청 본문에는 다음과 같은 구조의 데이터가 포함됩니다.

JSON 표현
{
  "dateRange": {
    object(DateRange)
  },
  "viewId": string,
  "user": {
    object(User)
  },
  "activityTypes": [
    enum(ActivityType)
  ],
  "pageSize": number,
  "pageToken": string
}
입력란
dateRange

object(DateRange)

사용자 활동을 검색할 기간입니다. 기간을 제공하지 않으면 기본 기간은 (startDate: 현재 날짜 - 7일, endDate: 현재 날짜 - 1일)입니다.

viewId

string

필수 항목입니다. 데이터를 검색할 애널리틱스 보기 ID입니다. 모든 SearchUserActivityRequest에는 viewId가 포함되어야 합니다.

user

object(User)

필수 항목입니다. 쿼리할 고유 사용자 ID입니다. 모든 SearchUserActivityRequest에 이 필드가 포함되어야 합니다.

activityTypes[]

enum(ActivityType)

요청 중인 모든 활동 유형의 집합입니다. 이러한 유형과 일치하는 활동만 응답에서 반환됩니다. 비어 있으면 모든 활동이 반환됩니다.

pageSize

number

페이지 크기는 페이징용이며 반환되는 최대 행 수를 지정합니다. 페이지 크기는 0보다 커야 합니다. 값이 0이거나 필드가 지정되지 않으면 요청에서 기본값인 페이지당 1, 000개의 행을 반환합니다.

pageToken

string

결과의 다음 페이지를 가져오는 연속 토큰입니다. 이 속성을 요청에 추가하면 pageToken 다음에 오는 행이 반환됩니다. pageToken은 SearchUserActivityRequest 요청에 대한 응답에서 nextPageToken 매개변수에 반환된 값이어야 합니다.

응답 본문

성공할 경우 응답 본문에 다음 구조의 데이터가 포함됩니다.

userActivity:get 호출의 응답입니다.

JSON 표현
{
  "sessions": [
    {
      object(UserActivitySession)
    }
  ],
  "totalRows": number,
  "nextPageToken": string,
  "sampleRate": number
}
입력란
sessions[]

object(UserActivitySession)

각 레코드는 세션 (기기 세부정보, 시간 등)을 나타냅니다.

totalRows

number

여러 페이지에서 이 쿼리에서 반환된 총 행 수입니다.

nextPageToken

string

다음 페이지를 검색하려면 이 토큰을 SearchUserActivityRequest에 전달해야 합니다.

sampleRate

number

이 필드는 특정 요청의 샘플링 레이트를 나타내며 0.0에서 1.0 사이의 숫자입니다. 자세한 내용은 개발자 가이드를 참고하세요.

승인 범위

다음 OAuth 범위 중 하나가 필요합니다.

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

사용자

특정 사용자를 고유하게 식별하기 위한 정보를 포함합니다.

JSON 표현
{
  "type": enum(UserIdType),
  "userId": string
}
입력란
type

enum(UserIdType)

요청의 사용자 유형입니다. userId 필드가 이 유형과 연결되어 있습니다.

userId

string

데이터가 요청되는 사용자의 고유 ID입니다.

UserIdType

사용 가능한 다양한 유형의 사용자 ID를 나타냅니다.

열거형
USER_ID_TYPE_UNSPECIFIED 사용자 ID 유형을 지정하지 않은 경우 사용되는 기본 유형은 CLIENT_ID입니다.
USER_ID 단일 사용자(예: 1개 이상의 기기 및 브라우저 인스턴스에서 콘텐츠와 상호작용할 수 있는 로그인된 사용자 계정)입니다.
CLIENT_ID 애널리틱스에 할당된 clientId입니다.

ActivityType

열거형
ACTIVITY_TYPE_UNSPECIFIED ActivityType은 응답에 이 값을 포함하지 않습니다. 요청에서 이 유형을 사용하면 오류가 발생합니다.
PAGEVIEW 방문자가 페이지를 본 결과로 발생한 경우 사용됩니다.
SCREENVIEW 방문자가 휴대기기에서 애플리케이션을 사용한 결과로 발생한 활동입니다.
GOAL 목표 유형 활동을 나타내는 데 사용됩니다.
ECOMMERCE 해당 페이지에서 방문자가 전자상거래 거래를 수행했습니다.
EVENT 활동이 이벤트일 때 사용됩니다.

UserActivitySession

이는 일정 기간 동안 특정 시간에 특정 기기에서 수행된 사용자 세션을 나타냅니다.

JSON 표현
{
  "sessionId": string,
  "deviceCategory": string,
  "platform": string,
  "dataSource": string,
  "activities": [
    {
      object(Activity)
    }
  ],
  "sessionDate": string
}
입력란
sessionId

string

세션의 고유 ID입니다.

deviceCategory

string

사용된 기기의 유형: '모바일', '태블릿' 등

platform

string

활동이 발생한 플랫폼: 'android', 'ios' 등

dataSource

string

조회의 데이터 소스입니다. 기본적으로 analytics.js에서 전송된 조회는 '웹'으로 보고되고, 모바일 SDK에서 전송된 조회는 '앱'으로 보고됩니다. 이러한 값은 측정 프로토콜에서 재정의할 수 있습니다.

activities[]

object(Activity)

이 세션의 각 활동에 대한 자세한 뷰를 나타냅니다.

sessionDate

string

ISO-8601 형식의 이 세션 날짜입니다.

활동

Activity는 사용자 활동에 관한 데이터를 나타냅니다. 활동은 조회와 다릅니다. 조회 1회에서 여러 활동이 발생할 수 있습니다. 예를 들어 조회에 거래와 목표 달성 1개가 포함된 경우 이 조회에 대해 ECOMMERCE와 GOAL에 대한 활동 프로토콜 2개가 생성됩니다. 반대로 조회가 여러 번 발생해도 활동 1개가 생성될 수 있습니다. 기존 전자상거래에서는 한 거래에 대한 데이터가 여러 건의 조회를 통해 전송될 수 있습니다. 이러한 조회는 하나의 ECOMMERCE 활동으로 병합됩니다.

JSON 표현
{
  "activityTime": string,
  "source": string,
  "medium": string,
  "channelGrouping": string,
  "campaign": string,
  "keyword": string,
  "hostname": string,
  "landingPagePath": string,
  "activityType": enum(ActivityType),
  "customDimension": [
    {
      object(CustomDimension)
    }
  ],

  // Union field activity_details can be only one of the following:
  "pageview": {
    object(PageviewData)
  },
  "appview": {
    object(ScreenviewData)
  },
  "ecommerce": {
    object(EcommerceData)
  },
  "goals": {
    object(GoalSetData)
  },
  "event": {
    object(EventData)
  }
  // End of list of possible types for union field activity_details.
}
입력란
activityTime

string (Timestamp format)

활동의 타임스탬프입니다.

RFC3339 UTC 'Zulu' 형식의 타임스탬프로 정밀도는 나노초 수준입니다. 예: "2014-10-02T15:01:23.045123456Z"

source

string

추천 소스입니다. 수동 캠페인 추적의 경우 utm_source 캠페인 추적 매개변수의 값입니다. 애드워즈 자동 태그 추가의 경우 google입니다. 둘 다 사용하지 않으면 사용자를 추천한 소스 도메인 (예: document.referrer)이 됩니다. 포트 주소가 포함될 수도 있습니다. 사용자가 리퍼러 없이 사이트를 방문한 경우 값은 (직접)입니다.

medium

string

추천 유형입니다. 수동 캠페인 추적의 경우 utm_medium 캠페인 추적 매개변수의 값입니다. 애드워즈 자동 태그 추가의 경우 CPC입니다. Google 애널리틱스에서 감지한 검색엔진을 통해 유입된 사용자는 자연 검색입니다. 리퍼러가 검색엔진이 아니면 추천입니다. 사용자가 해당 속성으로 직접 이동했고 document.referrer가 비어 있는 경우 값은 (none)입니다.

channelGrouping

string

이 보기의 최종 사용자 세션과 연결된 채널 그룹 (보기의 채널 그룹에 의해 정의됨)입니다.

campaign

string

수동 캠페인 추적의 경우 utm_campaign 캠페인 추적 매개변수의 값입니다. 애드워즈 자동 태그 추가의 경우 이 속성은 속성에 사용하는 온라인 광고 캠페인의 이름입니다. 둘 다 사용하지 않으면 값은 (not set)입니다.

keyword

string

수동 캠페인 추적의 경우 utm_term 캠페인 추적 매개변수의 값입니다. 애드워즈 트래픽의 경우 가장 일치하는 타겟팅 기준이 포함됩니다. 여러 타겟팅 기준으로 인해 광고가 표시될 수 있는 디스플레이 네트워크의 경우 Google Ads에서 선택한 것과 가장 일치하는 타겟팅 기준을 반환합니다. 디스플레이 키워드, 사이트 게재위치, boomuserlist, user_interest, age 또는 gender가 될 수 있습니다. 그렇지 않으면 값이 (not set)입니다.

hostname

string

추적 요청이 이루어진 호스트 이름입니다.

landingPagePath

string

사용자 세션의 첫 번째 페이지 또는 방문 페이지입니다.

activityType

enum(ActivityType)

이 활동의 유형입니다.

customDimension[]

object(CustomDimension)

이 활동과 연결된 모든 맞춤 측정기준의 목록입니다.

통합 필드 activity_details. activity_type에 따라 다음 필드 중 하나만 설정됩니다. activity_details은 다음 중 하나여야 합니다.
pageview

object(PageviewData)

activityTypePAGEVIEW와 같으면 설정됩니다. 이 필드에는 방문자 및 방문한 페이지에 대한 모든 세부정보가 포함됩니다.

appview

object(ScreenviewData)

activityTypeSCREEN_VIEW와 같으면 설정됩니다.

ecommerce

object(EcommerceData)

activityTypeECOMMERCE와 같으면 설정됩니다.

goals

object(GoalSetData)

이 필드에는 activityTypeGOAL일 때 이 활동에서 도달한 모든 목표의 목록이 포함됩니다.

event

object(EventData)

이 필드에는 이벤트와 관련된 모든 세부정보가 포함되며 activityTypeEVENT와 같으면 설정됩니다.

CustomDimension

맞춤 측정기준

JSON 표현
{
  "index": number,
  "value": string
}
입력란
index

number

맞춤 측정기준의 슬롯 번호입니다.

value

string

맞춤 측정기준의 값입니다. 기본값 (빈 문자열)은 세션/방문자 범위 맞춤 측정기준 값 삭제를 나타냅니다.

PageviewData

방문자가 페이지를 볼 때 수집된 세부정보를 나타냅니다.

JSON 표현
{
  "pagePath": string,
  "pageTitle": string
}
입력란
pagePath

string

방문자가 본 페이지의 URL입니다.

pageTitle

string

방문자가 본 페이지의 제목입니다.

ScreenviewData

JSON 표현
{
  "screenName": string,
  "mobileDeviceBranding": string,
  "mobileDeviceModel": string,
  "appName": string
}
입력란
screenName

string

화면 이름입니다.

mobileDeviceBranding

string

휴대기기 제조업체 또는 브랜드 이름 예: 'Google', 'Apple' 등

mobileDeviceModel

string

휴대기기 모델입니다. 예: 'Pixel', 'iPhone' 등

appName

string

애플리케이션의 이름입니다.

EcommerceData

사용자 활동과 연결된 전자상거래 세부정보입니다.

JSON 표현
{
  "actionType": enum(ECommerceAction),
  "transaction": {
    object(TransactionData)
  },
  "products": [
    {
      object(ProductData)
    }
  ],
  "ecommerceType": enum(EcommerceType)
}
입력란
actionType

enum(ECommerceAction)

이 전자상거래 액션과 연결된 액션입니다.

transaction

object(TransactionData)

이 전자상거래 액션의 거래 세부정보입니다.

products[]

object(ProductData)

이 거래에 포함된 제품의 세부정보입니다.

ecommerceType

enum(EcommerceType)

전자상거래 활동의 유형입니다.

ECommerceAction

전자상거래 액션과 관련된 모든 액션의 집합입니다.

열거형
UNKNOWN 작업 유형을 알 수 없습니다.
CLICK 제품 목록을 클릭연결합니다.
DETAILS_VIEW 제품 세부정보 조회수입니다.
ADD_TO_CART 장바구니에 제품을 추가합니다.
REMOVE_FROM_CART 장바구니에서 제품을 삭제합니다.
CHECKOUT 결제를 합니다.
PAYMENT 구매를 완료했습니다.
REFUND 구매 환불
CHECKOUT_OPTION 결제 옵션

TransactionData

방문자가 페이지에서 거래를 수행할 때 수집되는 세부정보를 나타냅니다.

JSON 표현
{
  "transactionId": string,
  "transactionRevenue": number,
  "transactionTax": number,
  "transactionShipping": number
}
입력란
transactionId

string

장바구니에서의 구매에 대해 전자상거래 추적 방법에서 제공하는 거래 ID입니다.

transactionRevenue

number

거래의 총 판매 수익 (배송비 및 세금 제외)입니다.

transactionTax

number

거래에 대한 총 세금입니다.

transactionShipping

number

총 배송비입니다.

ProductData

전자상거래의 제품 세부정보입니다.

JSON 표현
{
  "productSku": string,
  "productName": string,
  "itemRevenue": number,
  "productQuantity": string
}
입력란
productSku

string

제품을 나타내는 고유 코드입니다.

productName

string

구매한 상품에 대해 전자상거래 추적 애플리케이션에서 제공하는 제품 이름입니다.

itemRevenue

number

구매한 제품 항목에서 발생한 총 수익입니다.

productQuantity

string (int64 format)

거래에서 이 제품 단위의 총 개수입니다.

EcommerceType

반환되는 전자상거래 데이터의 유형을 나타냅니다.

열거형
ECOMMERCE_TYPE_UNSPECIFIED 전자상거래 활동 유형이 지정되지 않은 경우에 사용됩니다.
CLASSIC 활동에 기존 (향상되지 않은) 전자상거래 정보가 있는 경우 사용됩니다.
ENHANCED 활동에 향상된 전자상거래 정보가 있는 경우 사용됩니다.

GoalSetData

활동에서 도달한 목표의 집합을 나타냅니다.

JSON 표현
{
  "goals": [
    {
      object(GoalData)
    }
  ]
}
입력란
goals[]

object(GoalData)

현재 활동에서 도달한 모든 목표입니다.

GoalData

목표와 관련된 모든 세부정보를 나타냅니다.

JSON 표현
{
  "goalIndex": number,
  "goalCompletions": string,
  "goalValue": number,
  "goalCompletionLocation": string,
  "goalPreviousStep1": string,
  "goalPreviousStep2": string,
  "goalPreviousStep3": string,
  "goalName": string
}
입력란
goalIndex

number

이렇게 하면 프로필에 설정된 목표를 식별할 수 있습니다.

goalCompletions

string (int64 format)

이 활동에서 발생한 총 목표 달성 횟수입니다.

goalValue

number

이 목표의 값입니다.

goalCompletionLocation

string

이 목표가 달성된 페이지의 URL입니다.

goalPreviousStep1

string

목표 달성 1단계 전 페이지의 URL

goalPreviousStep2

string

목표 달성 2단계 전 페이지의 URL

goalPreviousStep3

string

목표 달성 3단계 전 페이지의 URL입니다.

goalName

string

목표의 이름입니다.

EventData

이벤트와 관련된 모든 세부정보를 나타냅니다.

JSON 표현
{
  "eventCategory": string,
  "eventAction": string,
  "eventLabel": string,
  "eventValue": string,
  "eventCount": string
}
입력란
eventCategory

string

상호작용한 페이지의 개체입니다. (예: '동영상')

eventAction

string

객체와의 상호작용 유형입니다. 예: 'play'.

eventLabel

string

이벤트와 함께 첨부된 라벨입니다.

eventValue

string (int64 format)

이벤트와 연결된 숫자 값입니다.

eventCount

string (int64 format)

이 활동에서 이러한 이벤트의 수입니다.

사용해 보기