Method: accounts.networkReport.generate

제공된 보고서 사양을 기반으로 AdMob 네트워크 보고서를 생성합니다. 서버 측 스트리밍 RPC 결과를 반환합니다. 결과는 일련의 응답으로 반환됩니다.

HTTP 요청

POST https://admob.googleapis.com/v1/{parent=accounts/*}/networkReport:generate

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

경로 매개변수

매개변수
parent

string

보고서를 생성할 계정의 리소스 이름입니다. 예: accounts/pub-9876543210987654

요청 본문

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

JSON 표현
{
  "reportSpec": {
    object (NetworkReportSpec)
  }
}
필드
reportSpec

object (NetworkReportSpec)

네트워크 보고서 사양입니다.

응답 본문

AdMob 네트워크 보고서의 스트리밍 응답입니다. 첫 번째 응답에는 보고서 헤더, 행 응답 스트림, 마지막 응답 메시지로 바닥글이 포함됩니다.

예를 들면 다음과 같습니다.

[{
  "header": {
    "dateRange": {
      "startDate": {"year": 2018, "month": 9, "day": 1},
      "endDate": {"year": 2018, "month": 9, "day": 1}
    },
    "localizationSettings": {
      "currencyCode": "USD",
      "languageCode": "en-US"
    }
  }
},
{
  "row": {
    "dimensionValues": {
      "DATE": {"value": "20180918"},
      "APP": {
        "value": "ca-app-pub-8123415297019784~1001342552",
         displayLabel: "My app name!"
      }
    },
    "metricValues": {
      "ESTIMATED_EARNINGS": {"microsValue": 6500000}
    }
  }
},
{
  "footer": {"matchingRowCount": 1}
}]

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

JSON 표현
{

  // Union field payload can be only one of the following:
  "header": {
    object (ReportHeader)
  },
  "row": {
    object (ReportRow)
  },
  "footer": {
    object (ReportFooter)
  }
  // End of list of possible types for union field payload.
}
필드
통합 필드 payload. 각 스트림 응답 메시지에는 한 가지 유형의 페이로드가 포함됩니다. payload은 다음 중 하나여야 합니다.
header

object (ReportHeader)

보고서 콘텐츠를 설명하는 보고서 생성 설정입니다(예: 보고서 기간, 현지화 설정).

row

object (ReportRow)

실제 보고서 데이터입니다.

footer

object (ReportFooter)

생성된 보고서에 대한 추가 정보입니다(예: 데이터에 대한 경고).

승인 범위

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

  • https://www.googleapis.com/auth/admob.readonly
  • https://www.googleapis.com/auth/admob.report

자세한 내용은 OAuth 2.0 개요를 참고하세요.

NetworkReportSpec

AdMob 네트워크 보고서 생성을 위한 사양입니다. 예를 들어 'US' 및 'CN' 국가에 대해서만 클릭수와 예상 수입을 가져오기 위한 사양은 다음과 같습니다.

{
  'dateRange': {
    'startDate': {'year': 2021, 'month': 9, 'day': 1},
    'endDate': {'year': 2021, 'month': 9, 'day': 30}
  },
  'dimensions': ['DATE', 'APP', 'COUNTRY'],
  'metrics': ['CLICKS', 'ESTIMATED_EARNINGS'],
  'dimensionFilters': [
    {
      'dimension': 'COUNTRY',
      'matchesAny': {'values': [{'value': 'US', 'value': 'CN'}]}
    }
  ],
  'sortConditions': [
    {'dimension':'APP', order: 'ASCENDING'},
    {'metric':'CLICKS', order: 'DESCENDING'}
  ],
  'localizationSettings': {
    'currencyCode': 'USD',
    'languageCode': 'en-US'
  }
}

이해를 돕기 위해 위의 사양을 다음의 의사 SQL처럼 처리하면 됩니다.

SELECT DATE, APP, COUNTRY, CLICKS, ESTIMATED_EARNINGS
FROM NETWORK_REPORT
WHERE DATE >= '2021-09-01' AND DATE <= '2021-09-30'
    AND COUNTRY IN ('US', 'CN')
GROUP BY DATE, APP, COUNTRY
ORDER BY APP ASC, CLICKS DESC;
JSON 표현
{
  "dateRange": {
    object (DateRange)
  },
  "dimensions": [
    enum (Dimension)
  ],
  "metrics": [
    enum (Metric)
  ],
  "dimensionFilters": [
    {
      object (DimensionFilter)
    }
  ],
  "sortConditions": [
    {
      object (SortCondition)
    }
  ],
  "localizationSettings": {
    object (LocalizationSettings)
  },
  "maxReportRows": integer,
  "timeZone": string
}
필드
dateRange

object (DateRange)

보고서가 생성되는 기간입니다.

dimensions[]

enum (Dimension)

보고서의 측정기준 목록입니다. 이러한 측정기준의 값 조합에 따라 보고서의 행이 결정됩니다. 측정기준을 지정하지 않으면 보고서는 계정 전체에 대해 요청된 측정항목의 단일 행을 반환합니다.

metrics[]

enum (Metric)

보고서의 측정항목 목록입니다. 보고서에서는 측정항목을 1개 이상 지정해야 합니다.

dimensionFilters[]

object (DimensionFilter)

측정기준 값을 기준으로 일치시킬 보고서 행을 설명합니다.

sortConditions[]

object (SortCondition)

보고서 행의 정렬을 설명합니다. 목록의 조건 순서에 따라 우선순위가 정의됩니다. 즉, 조건이 먼저일수록 우선순위가 높습니다. 정렬 조건을 지정하지 않으면 행 순서가 정의되지 않습니다.

localizationSettings

object (LocalizationSettings)

보고서의 현지화 설정입니다.

maxReportRows

integer

반환할 보고서 데이터의 최대 행 수입니다. 값이 설정되지 않으면 API는 최대 100,000행까지 가능한 한 많은 행을 반환합니다. 사용 가능한 값: 1~100000 값이 100000보다 크면 오류가 반환됩니다.

timeZone

string

보고서 시간대입니다. 'America/Los_Angeles' 같은 IANA TZ 이름 값을 허용합니다. 시간대를 지정하지 않으면 계정 기본값이 적용됩니다. 계정 가져오기 작업으로 기본값을 확인합니다.

경고: 현재 지원되는 유일한 값은 'America/Los_Angeles'입니다.

측정기준

네트워크 보고서의 측정기준입니다. 측정기준은 광고 형식이나 광고가 조회된 플랫폼과 같은 특정 속성을 기준으로 양적 측정치 (측정항목)를 분류하거나 미세 조정하기 위한 데이터 속성입니다.

열거형
DIMENSION_UNSPECIFIED 설정되지 않은 필드의 기본값입니다. 사용하지 않습니다.
DATE YYYYMMDD 형식의 날짜입니다 (예: '20210701'). 요청에서 최대 1개의 시간 측정기준을 지정할 수 있습니다.
MONTH YYYYMM 형식의 월입니다 (예: '202107'). 요청에서 최대 1개의 시간 측정기준을 지정할 수 있습니다.
WEEK 한 주의 첫 번째 요일 날짜로 YYYYMMDD 형식으로 표시됩니다 (예: '20210701'). 요청에서 최대 1개의 시간 측정기준을 지정할 수 있습니다.
AD_UNIT 광고 단위의 고유 ID입니다 (예: 'ca-app-pub-1234/1234'). AD_UNIT 측정기준이 지정되면 APP가 자동으로 포함됩니다.
APP 모바일 애플리케이션의 고유 ID입니다 (예: 'ca-app-pub-1234~1234').
AD_TYPE

광고 유형 (예: '텍스트' 또는 '이미지')이며 광고 게재 측정기준입니다.

경고: 이 측정기준은 AD_REQUESTS, MATCH_RATE, IMPRESSION_RPM 측정항목과 호환되지 않습니다.

COUNTRY 광고 조회/클릭이 발생한 장소의 CLDR 국가 코드입니다 (예: 'US' 또는 'FR'). 지역 측정기준입니다.
FORMAT 광고 단위의 형식 (예: '배너', '네이티브')이며 광고 게재 측정기준입니다.
PLATFORM 앱의 모바일 OS 플랫폼입니다 (예: 'Android' 또는 'iOS').
MOBILE_OS_VERSION 모바일 운영체제 버전입니다(예: 'iOS 13.5.1').
GMA_SDK_VERSION GMA SDK 버전(예: 'iOS 7.62.0')입니다.
APP_VERSION_NAME Android의 경우 앱 버전 이름은 PackageInfo의 versionName에서 확인할 수 있습니다. iOS의 경우 앱 버전 이름은 CFBundleShortVersionString에서 확인할 수 있습니다.
SERVING_RESTRICTION 광고 게재를 위한 제한 모드 (예: '개인 맞춤이 아닌 광고')

측정항목

네트워크 보고서의 측정항목입니다. 측정항목은 게시자 비즈니스의 실적을 나타내는 정량적 측정 요소입니다. 개별 광고 이벤트에서 집계되며 보고서 측정기준별로 그룹화됩니다. 측정항목 값은 정수 또는 십진수 (반올림 없음)입니다.

열거형
METRIC_UNSPECIFIED 설정되지 않은 필드의 기본값입니다. 사용하지 않습니다.
AD_REQUESTS

광고 요청 수입니다. 이 값은 정수입니다.

경고: 이 측정항목은 AD_TYPE 측정기준과 호환되지 않습니다.

CLICKS 사용자가 광고를 클릭한 횟수입니다. 이 값은 정수입니다.
ESTIMATED_EARNINGS AdMob 게시자의 예상 수입입니다. 수익 측정항목의 통화 단위 (USD, EUR 등)는 통화의 현지화 설정에 따라 결정됩니다. 마이크로 단위의 금액입니다. 예를 들어 $6.50는 6500000으로 표시됩니다.
IMPRESSIONS 사용자에게 광고가 게재되는 총 횟수입니다. 이 값은 정수입니다.
IMPRESSION_CTR 노출수 대비 클릭수의 비율입니다. 배정밀도 (근사치) 십진수 값입니다.
IMPRESSION_RPM

1,000회 광고 노출당 예상 수입입니다. 마이크로 단위의 값입니다. 예를 들어 $1.03은 1030000으로 표시됩니다. AdMob UI의 eCPM과 같습니다.

경고: 이 측정항목은 AD_TYPE 측정기준과 호환되지 않습니다.

MATCHED_REQUESTS 요청에 대한 응답으로 광고가 반환된 횟수입니다. 이 값은 정수입니다.
MATCH_RATE

총 광고 요청 수 대비 게재된 광고 요청수의 비율입니다. 배정밀도 (근사치) 십진수 값입니다.

경고: 이 측정항목은 AD_TYPE 측정기준과 호환되지 않습니다.

SHOW_RATE 반환된 광고 대비 게재된 광고의 비율(노출수 / 일치 요청수로 정의) 배정밀도 (근사치) 십진수 값입니다.

DimensionFilter

측정기준 값을 기준으로 일치시킬 보고서 행을 설명합니다.

JSON 표현
{
  "dimension": enum (Dimension),

  // Union field operator can be only one of the following:
  "matchesAny": {
    object (StringList)
  }
  // End of list of possible types for union field operator.
}
필드
dimension

enum (Dimension)

지정된 측정기준에 필터 기준을 적용합니다.

통합 필드 operator. 적용할 필터 연산자입니다. operator은 다음 중 하나여야 합니다.
matchesAny

object (StringList)

지정된 측정기준의 값이 이 조건에 지정된 값 중 하나에 있으면 행과 일치합니다.

SortCondition

측정기준 또는 측정항목에 적용할 정렬 방향입니다.

JSON 표현
{
  "order": enum (SortOrder),

  // Union field sort_on can be only one of the following:
  "dimension": enum (Dimension),
  "metric": enum (Metric)
  // End of list of possible types for union field sort_on.
}
필드
order

enum (SortOrder)

측정기준 또는 측정항목의 정렬 순서입니다.

통합 필드 sort_on. 정렬할 값을 식별합니다. sort_on은 다음 중 하나여야 합니다.
dimension

enum (Dimension)

지정된 측정기준을 기준으로 정렬합니다.

metric

enum (Metric)

지정된 측정항목을 기준으로 정렬합니다.