Method: accounts.networkReport.generate

指定されたレポート仕様に基づいて AdMob ネットワーク レポートを生成します。サーバーサイド ストリーミング RPC の結果を返します。結果は一連のレスポンスで返されます。

HTTP リクエスト

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

この URL は gRPC Transcoding 構文を使用します。

パスパラメータ

パラメータ
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。各ストリーム レスポンス メッセージには、1 種類のペイロードが含まれます。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 Overview をご覧ください。

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 ~ 100,000(1 と 100,000 を含む)です。100,000 より大きい値はエラーを返します。

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_REQUESTSMATCH_RATEIMPRESSION_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 インプレッション数に対するクリック数の割合。値は倍精度(概算)の 10 進数値です。
IMPRESSION_RPM

広告の表示回数 1,000 回あたりの見積もり収益額。値はマイクロ単位です。たとえば、$1.03 は 1030000 として表されます。AdMob の管理画面の eCPM に相当します。

警告: この指標は AD_TYPE ディメンションと互換性がありません。

MATCHED_REQUESTS リクエストへのレスポンスとして広告が返される回数。値は整数です。
MATCH_RATE

広告リクエストの合計数に対する一致した広告リクエスト数の割合。値は倍精度(概算)の 10 進数値です。

警告: この指標は AD_TYPE ディメンションと互換性がありません。

SHOW_RATE 返された広告に対する表示された広告の割合(「インプレッション数÷一致したリクエスト数」)。値は倍精度(概算)の 10 進数値です。

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)

指定した指標で並べ替えます。