Method: accounts.participationReportViews.query

特定のアカウントの参加レポートをクエリ(取得、フィルタ、セグメント化)する機能を提供します。

HTTP リクエスト

GET https://travelpartner.googleapis.com/v3/{name=accounts/*}/participationReportViews:query

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

パスパラメータ

パラメータ
name

string

クエリ対象のアカウントのリソース名。形式は accounts/{account_id} です。

クエリ パラメータ

パラメータ
filter

string

クエリ対象のアカウントの参加指標をフィルタするために使用される条件(フィールドと式)。構文では、in 演算子の前後にスペースが必要です。それ以外の場合は、スペースを省略できます。条件は AND 演算子を使用して結合できます。

重要: 複数の条件を追加する正しい構文は "?filter=<condition>=<value>%20AND%20<condition>=<value>..." です。

date フィールドは必須です。それ以外のフィールドはすべて省略可能です。

有効な条件の例を次に示します。

  • advanceBookingWindow = 2
  • advanceBookingWindow >= 0
  • advanceBookingWindow <= 5
  • checkinDate = '2020-10-01'
  • checkinDate >= '2020-10-01'
  • checkinDate <= '2020-10-01'
  • checkinDate between '2020-10-01' and '2020-10-05'
  • date = '2020-02-04'
  • date between '2020-02-04' and '2020-02-09'
  • deviceType = 'TABLET'
  • deviceType in ('MOBILE', 'TABLET')
  • hotelRegionCode = 'US'
  • hotelRegionCode in ('US', 'CA')
  • lengthOfStayDays = 2
  • lengthOfStayDays >= 0
  • lengthOfStayDays <= 5
  • occupancy = 2
  • occupancy >= 0
  • occupancy <= 5
  • occupancy between 1 and 5
  • partnerHotelId = 'AAA'
  • partnerHotelId in ('AAA', 'BBB')
  • userRegionCode = 'US'
  • userRegionCode in ('US', 'CA')
aggregateBy

string

クエリで返される指標をセグメント化する方法を指定します。たとえば、aggregateBy の値として userRegionCode が指定されている場合、participationResult はユーザーの地域別に集計された指標を提供します。

文字列値は、フィールドのカンマ区切りのリストです。有効なフィールドは、dateuserRegionCodedeviceTypepartnerHotelIdhotelRegionCodeadvanceBookingWindowlengthOfStayDayscheckinDateoccupancy です。指定されていないフィールドは ParticipationResult に含まれません。

重要: partnerHotelId 個以上の値で aggregateBy パラメータを使用すると、エラーが発生する可能性があります。partnerHotelIddate でフィルタリングして行数を減らすと、エラーの発生を防ぐことができます。

pageSize

integer

返される参加結果の最大数。サービスが返す値はこれよりも少ないことがあります。指定されていない場合、最大で 10,000 件の結果が返されます。最大値は 10,000 です。10,000 を超える値は 10,000 に強制変換されます。

pageToken

string

前回の participationReportViews.query リクエストから受け取ったページトークン。後続のページを受け取るには、これを指定します。

ページ分割を行う場合、participationReportViews.query に指定する他のすべてのパラメータは、ページトークンを提供した呼び出しと一致する必要があります。

リクエストの本文

リクエストの本文は空にする必要があります。

レスポンスの本文

ParticipationReportService.QueryParticipationReport に対するレスポンス メッセージです。

成功した場合、レスポンスの本文には次の構造のデータが含まれます。

JSON 表現
{
  "results": [
    {
      object (ParticipationResult)
    }
  ],
  "nextPageToken": string
}
フィールド
results[]

object (ParticipationResult)

クエリに一致する結果のリスト。

nextPageToken

string

結果の次のページを取得するために使用されるページ設定トークン。

認可スコープ

次の OAuth スコープが必要です。

  • https://www.googleapis.com/auth/travelpartner

詳細については、OAuth 2.0 Overview をご覧ください。

ParticipationResult

アカウントの参加統計情報をクエリした結果を表します。

JSON 表現
{
  "key": {
    object (Key)
  },
  "opportunityCount": string,
  "participationCount": string,
  "participationPercent": number,
  "missedParticipationCount": string,
  "missedParticipationCountDetails": {
    object (MissedParticipationCountDetails)
  },
  "partnerHotelDisplayName": string
}
フィールド
key

object (Key)

結果のキー。

opportunityCount

string (int64 format)

特定のホテルで利用することができた機会の合計数。機会とは、ホテルの広告をユーザーに表示することができたはずの合計回数のことです。

participationCount

string (int64 format)

Google 広告オークションに参加できた機会の総数。

participationPercent

number

参加できた機会の回数を機会の総数で割った、参加割合のパーセンテージ。たとえば、100 回の機会に対して宿泊施設が Google 広告オークションに 90 回参加できた場合、参加率は 90% となります。

missedParticipationCount

string (int64 format)

Google 広告オークションの対象とならなかった機会の総数。以下の項目で構成されます。

  • ランディング ページの不一致
  • 料金が未入力です
  • 料金に関する問題があります
  • 料金情報がありません
  • その他
missedParticipationCountDetails

object (MissedParticipationCountDetails)

入札不可になった理由(在庫なしなど)と、各理由の合計数。

partnerHotelDisplayName

string

パートナーのホテルの表示名。このフィールドは、結果が partnerHotelId で集計されている場合にのみ入力されます。

キー

結果のキー。

JSON 表現
{
  "date": {
    object (Date)
  },
  "userRegionCode": string,
  "deviceType": enum (Device),
  "partnerHotelId": string,
  "hotelRegionCode": string,
  "advanceBookingWindow": integer,
  "lengthOfStayDays": integer,
  "checkinDate": {
    object (Date)
  },
  "occupancy": integer
}
フィールド
date

object (Date)

指標をリクエストする日付。

date がリクエスト呼び出しの aggregateBy パラメータの値でない場合、date フィールドは Key で返されません。

userRegionCode

string

ユーザーの国/地域の ISO 3116 地域コード。

userRegionCode がリクエスト呼び出しの aggregateBy パラメータの値でない場合、userRegionCode フィールドは Key で返されません。

deviceType

enum (Device)

ユーザーのデバイスの種類。

deviceType がリクエスト呼び出しの aggregateBy パラメータの値でない場合、deviceType フィールドは Key で返されません。

partnerHotelId

string

パートナーのホテル ID。

partnerHotelId がリクエスト呼び出しの aggregateBy パラメータの値でない場合、partnerHotelId フィールドは Key で返されません。

hotelRegionCode

string

ホテルの国/地域に対応する CLDR 地域コード。

hotelRegionCode がリクエスト呼び出しの aggregateBy パラメータの値でない場合、hotelRegionCode フィールドは Key で返されません。

advanceBookingWindow

integer

ユーザーが予約を希望する日から宿泊希望日までの日数。

advanceBookingWindow がリクエスト呼び出しの aggregateBy パラメータの値でない場合、advanceBookingWindow フィールドは Key で返されません。

lengthOfStayDays

integer

宿泊プランの泊数。

lengthOfStayDays がリクエスト呼び出しの aggregateBy パラメータの値でない場合、lengthOfStayDays フィールドは Key で返されません。

checkinDate

object (Date)

旅行プランのチェックイン日。

checkinDate がリクエスト呼び出しの aggregateBy パラメータの値でない場合、checkinDate フィールドは Key で返されません。

occupancy

integer

旅行プランの合計宿泊数。

occupancy がリクエスト呼び出しの aggregateBy パラメータの値でない場合、occupancy フィールドは Key で返されません。

MissedParticipationCountDetails

入札不可だった回数を理由別に分類した数。

JSON 表現
{
  "noAvailabilityCount": string,
  "hotelSuspendedCount": string,
  "noTaxBreakdownCount": string,
  "noLandingPageCount": string,
  "noPriceCount": string,
  "noPriceCountDetails": {
    object (NoPriceCountDetails)
  },
  "otherReasonCount": string,
  "priceMissingCount": string,
  "priceMissingCountDetails": {
    object (PriceMissingCountDetails)
  },
  "priceProblemCount": string,
  "priceProblemCountDetails": {
    object (PriceProblemCountDetails)
  },
  "priceUnavailableCount": string,
  "priceUnavailableCountDetails": {
    object (PriceUnavailableCountDetails)
  }
}
フィールド
noAvailabilityCount
(deprecated)

string (int64 format)

ホテルと宿泊プランの組み合わせを使用できなかったために、または旅行者が料金の対象でなかったために、入札不可になった合計回数。オークションに入札するには、より詳細な料金情報を指定する必要があります。

hotelSuspendedCount
(deprecated)

string (int64 format)

料金精度違反によって 1 つ以上のホテルが掲載停止されたために入札不可になった合計回数。

noTaxBreakdownCount
(deprecated)

string (int64 format)

税金と諸費用を個別に指定していないホテルが 1 つ以上あったために入札不可になった合計回数。

noLandingPageCount

string (int64 format)

ユーザーと一致するランディング ページがありませんでした。

noPriceCount
(deprecated)

string (int64 format)

リクエストされた宿泊プランの料金が指定されていないために入札不可になった合計回数。

noPriceCountDetails
(deprecated)

object (NoPriceCountDetails)

価格なしのカウントに寄与した理由(ライブ料金が利用できないなど)と、各理由の合計カウント。

otherReasonCount

string (int64 format)

不明な理由により参加しませんでした。

priceMissingCount

string (int64 format)

料金が Google のキャッシュ内になかった、またはライブ料金へのレスポンスが成功しなかったために入札不可になった合計回数。以下の項目で構成されます。

  • 帯域幅の枯渇
  • キャッシュ ヒット率が不明
  • 宿泊プランがブロック中
  • ライブ料金が未設定
  • ライブ料金がタイムアウト
  • ライブ料金のエラー
priceMissingCountDetails

object (PriceMissingCountDetails)

価格が欠落している数に影響した理由。

priceProblemCount

string (int64 format)

宿泊プランに設定された料金の精度に関する問題のために入札不可になった合計回数。以下の項目で構成されます。

  • ホテルが掲載停止中
  • 料金が異常に高い
  • 料金が異常に安い
  • 税金と諸費用が未入力
priceProblemCountDetails

object (PriceProblemCountDetails)

価格の問題の数に影響した理由。

priceUnavailableCount

string (int64 format)

リクエストされた宿泊プランの料金が利用不可(-1)だったために参加を逃したオークションの合計回数。以下の項目で構成されます。

  • 料金情報がありません
  • 入札の可能性が低い
  • その他
priceUnavailableCountDetails

object (PriceUnavailableCountDetails)

価格が利用できない数に影響した理由。

NoPriceCountDetails

価格なしのカウントに寄与した理由と、各理由の合計カウント。

JSON 表現
{
  "livePricingTechnicalIssueCount": string,
  "livePricingNotTriggeredCount": string,
  "livePricingConfigIssueCount": string,
  "livePricingNotAvailableCount": string,
  "livePricingOtherReasonCount": string
}
フィールド
livePricingTechnicalIssueCount

string (int64 format)

次のいずれかの理由によってライブ料金に技術的な問題が発生したために入札不可になった合計回数。

  • レスポンスが遅れ、レスポンス期限(約 4,000 ミリ秒)を超えた。
  • エラーが返された。
  • レスポンス形式に誤りがあった。
livePricingNotTriggeredCount

string (int64 format)

次のいずれかの理由で、ライブ料金がトリガーされなかったために入札不可になった合計回数。

  • 入札単価を設定しなかった。
  • 有効なランディング ページを用意しなかった。
  • 必要な料金がキャッシュ内になかった。
livePricingConfigIssueCount

string (int64 format)

次のいずれかの理由で、ライブ料金がトリガーされなかったために入札不可になった合計回数。

  • これらの検索に対してライブ料金を設定しなかった。
  • 該当するホテル宿泊プランはあったが、Google からのアクセスを制限した。
livePricingNotAvailableCount

string (int64 format)

ライブ料金が利用できなかったために入札不可になった合計回数。デフォルトの宿泊プランや UI によっては、ライブ料金が発生しないことがあります。このシナリオでは、パートナーが入札するには、キャッシュされた料金が必要になります。

livePricingOtherReasonCount

string (int64 format)

ライブ料金に関するその他の問題のために入札不可になった回数。

PriceMissingCountDetails

価格が欠落した件数と、各理由の合計件数に影響した理由。

JSON 表現
{
  "cacheRateMissingCount": string,
  "itineraryBlockedCount": string,
  "livePricingNotSetupCount": string,
  "bandwidthDepletedCount": string,
  "livePricingTimeoutCount": string,
  "livePricingErrorCount": string
}
フィールド
cacheRateMissingCount

string (int64 format)

この宿泊プランの料金がキャッシュ内にありません。ページの制約により、ライブ クエリが実行されませんでした。

itineraryBlockedCount

string (int64 format)

この宿泊プランは基本的なパラメータから外れていたため、対応する料金はライブクエリからもキャッシュ フィルからも取得されませんでした。

livePricingNotSetupCount

string (int64 format)

この宿泊プランの料金はキャッシュされておらず、このアカウントにライブクエリが設定されていませんでした。

bandwidthDepletedCount

string (int64 format)

この宿泊プランの料金はキャッシュされておらず、ライブ クエリの割り当ても残っていませんでした。

livePricingTimeoutCount

string (int64 format)

この宿泊プランの料金はキャッシュされておらず、システムに送信されたライブクエリはタイムアウトしました。

livePricingErrorCount

string (int64 format)

この宿泊プランの料金はキャッシュされていませんでした。ライブクエリはタイムアウトしませんでしたが、システムからエラーが返されました。

PriceProblemCountDetails

価格の問題の件数と、各理由の合計件数。

JSON 表現
{
  "hotelSuspendedCount": string,
  "priceUnusuallyHighCount": string,
  "priceUnusuallyLowCount": string,
  "taxesAndFeesMissingCount": string,
  "basePriceViolationsCount": string,
  "priceAccuracyIssueCount": string
}
フィールド
hotelSuspendedCount

string (int64 format)

ホテルの掲載が停止されました。その理由として、税金や諸費用が不正確であるなどの問題が続いている可能性が考えられます。

priceUnusuallyHighCount

string (int64 format)

この宿泊プランの料金が、地域のトレンドと比べて不自然に高くなっていました。

priceUnusuallyLowCount

string (int64 format)

この宿泊プランの料金が、地域のトレンドと比べて不自然に低くなっていました。

taxesAndFeesMissingCount

string (int64 format)

税金と諸費用が料金に入力されていませんでした。

basePriceViolationsCount

string (int64 format)

基本価格が総額に対して低すぎる。

priceAccuracyIssueCount

string (int64 format)

料金の精度に関する問題。

PriceUnavailableCountDetails

価格が利用不可になった理由と、各理由の合計数。

JSON 表現
{
  "priceUnavailableCount": string,
  "participationNotLikelyCount": string
}
フィールド
priceUnavailableCount

string (int64 format)

宿泊プランの日付の料金情報がなかったため、参加しませんでした。

participationNotLikelyCount

string (int64 format)

この宿泊プランの料金はキャッシュされませんでした。また、ホテルが利用不可である、もしくはホテルに空室がないという情報がサーバーからよく返されるため、ライブ クエリが実行されませんでした。