diff --git a/api_names_out.yaml b/api_names_out.yaml index 423fc7844..b713c6d6a 100644 --- a/api_names_out.yaml +++ b/api_names_out.yaml @@ -4436,6 +4436,150 @@ "/admob:v1/fields": fields "/admob:v1/key": key "/admob:v1/quotaUser": quota_user +"/admob:v1beta/AdUnit": ad_unit +"/admob:v1beta/AdUnit/adFormat": ad_format +"/admob:v1beta/AdUnit/adTypes": ad_types +"/admob:v1beta/AdUnit/adTypes/ad_type": ad_type +"/admob:v1beta/AdUnit/adUnitId": ad_unit_id +"/admob:v1beta/AdUnit/appId": app_id +"/admob:v1beta/AdUnit/displayName": display_name +"/admob:v1beta/AdUnit/name": name +"/admob:v1beta/App": app +"/admob:v1beta/App/appId": app_id +"/admob:v1beta/App/linkedAppInfo": linked_app_info +"/admob:v1beta/App/manualAppInfo": manual_app_info +"/admob:v1beta/App/name": name +"/admob:v1beta/App/platform": platform +"/admob:v1beta/AppLinkedAppInfo": app_linked_app_info +"/admob:v1beta/AppLinkedAppInfo/appStoreId": app_store_id +"/admob:v1beta/AppLinkedAppInfo/displayName": display_name +"/admob:v1beta/AppManualAppInfo": app_manual_app_info +"/admob:v1beta/AppManualAppInfo/displayName": display_name +"/admob:v1beta/Date": date +"/admob:v1beta/Date/day": day +"/admob:v1beta/Date/month": month +"/admob:v1beta/Date/year": year +"/admob:v1beta/DateRange": date_range +"/admob:v1beta/DateRange/endDate": end_date +"/admob:v1beta/DateRange/startDate": start_date +"/admob:v1beta/GenerateMediationReportRequest": generate_mediation_report_request +"/admob:v1beta/GenerateMediationReportRequest/reportSpec": report_spec +"/admob:v1beta/GenerateMediationReportResponse": generate_mediation_report_response +"/admob:v1beta/GenerateMediationReportResponse/footer": footer +"/admob:v1beta/GenerateMediationReportResponse/header": header +"/admob:v1beta/GenerateMediationReportResponse/row": row +"/admob:v1beta/GenerateNetworkReportRequest": generate_network_report_request +"/admob:v1beta/GenerateNetworkReportRequest/reportSpec": report_spec +"/admob:v1beta/GenerateNetworkReportResponse": generate_network_report_response +"/admob:v1beta/GenerateNetworkReportResponse/footer": footer +"/admob:v1beta/GenerateNetworkReportResponse/header": header +"/admob:v1beta/GenerateNetworkReportResponse/row": row +"/admob:v1beta/ListAdUnitsResponse": list_ad_units_response +"/admob:v1beta/ListAdUnitsResponse/adUnits": ad_units +"/admob:v1beta/ListAdUnitsResponse/adUnits/ad_unit": ad_unit +"/admob:v1beta/ListAdUnitsResponse/nextPageToken": next_page_token +"/admob:v1beta/ListAppsResponse": list_apps_response +"/admob:v1beta/ListAppsResponse/apps": apps +"/admob:v1beta/ListAppsResponse/apps/app": app +"/admob:v1beta/ListAppsResponse/nextPageToken": next_page_token +"/admob:v1beta/ListPublisherAccountsResponse": list_publisher_accounts_response +"/admob:v1beta/ListPublisherAccountsResponse/account": account +"/admob:v1beta/ListPublisherAccountsResponse/account/account": account +"/admob:v1beta/ListPublisherAccountsResponse/nextPageToken": next_page_token +"/admob:v1beta/LocalizationSettings": localization_settings +"/admob:v1beta/LocalizationSettings/currencyCode": currency_code +"/admob:v1beta/LocalizationSettings/languageCode": language_code +"/admob:v1beta/MediationReportSpec": mediation_report_spec +"/admob:v1beta/MediationReportSpec/dateRange": date_range +"/admob:v1beta/MediationReportSpec/dimensionFilters": dimension_filters +"/admob:v1beta/MediationReportSpec/dimensionFilters/dimension_filter": dimension_filter +"/admob:v1beta/MediationReportSpec/dimensions": dimensions +"/admob:v1beta/MediationReportSpec/dimensions/dimension": dimension +"/admob:v1beta/MediationReportSpec/localizationSettings": localization_settings +"/admob:v1beta/MediationReportSpec/maxReportRows": max_report_rows +"/admob:v1beta/MediationReportSpec/metrics": metrics +"/admob:v1beta/MediationReportSpec/metrics/metric": metric +"/admob:v1beta/MediationReportSpec/sortConditions": sort_conditions +"/admob:v1beta/MediationReportSpec/sortConditions/sort_condition": sort_condition +"/admob:v1beta/MediationReportSpec/timeZone": time_zone +"/admob:v1beta/MediationReportSpecDimensionFilter": mediation_report_spec_dimension_filter +"/admob:v1beta/MediationReportSpecDimensionFilter/dimension": dimension +"/admob:v1beta/MediationReportSpecDimensionFilter/matchesAny": matches_any +"/admob:v1beta/MediationReportSpecSortCondition": mediation_report_spec_sort_condition +"/admob:v1beta/MediationReportSpecSortCondition/dimension": dimension +"/admob:v1beta/MediationReportSpecSortCondition/metric": metric +"/admob:v1beta/MediationReportSpecSortCondition/order": order +"/admob:v1beta/NetworkReportSpec": network_report_spec +"/admob:v1beta/NetworkReportSpec/dateRange": date_range +"/admob:v1beta/NetworkReportSpec/dimensionFilters": dimension_filters +"/admob:v1beta/NetworkReportSpec/dimensionFilters/dimension_filter": dimension_filter +"/admob:v1beta/NetworkReportSpec/dimensions": dimensions +"/admob:v1beta/NetworkReportSpec/dimensions/dimension": dimension +"/admob:v1beta/NetworkReportSpec/localizationSettings": localization_settings +"/admob:v1beta/NetworkReportSpec/maxReportRows": max_report_rows +"/admob:v1beta/NetworkReportSpec/metrics": metrics +"/admob:v1beta/NetworkReportSpec/metrics/metric": metric +"/admob:v1beta/NetworkReportSpec/sortConditions": sort_conditions +"/admob:v1beta/NetworkReportSpec/sortConditions/sort_condition": sort_condition +"/admob:v1beta/NetworkReportSpec/timeZone": time_zone +"/admob:v1beta/NetworkReportSpecDimensionFilter": network_report_spec_dimension_filter +"/admob:v1beta/NetworkReportSpecDimensionFilter/dimension": dimension +"/admob:v1beta/NetworkReportSpecDimensionFilter/matchesAny": matches_any +"/admob:v1beta/NetworkReportSpecSortCondition": network_report_spec_sort_condition +"/admob:v1beta/NetworkReportSpecSortCondition/dimension": dimension +"/admob:v1beta/NetworkReportSpecSortCondition/metric": metric +"/admob:v1beta/NetworkReportSpecSortCondition/order": order +"/admob:v1beta/PublisherAccount": publisher_account +"/admob:v1beta/PublisherAccount/currencyCode": currency_code +"/admob:v1beta/PublisherAccount/name": name +"/admob:v1beta/PublisherAccount/publisherId": publisher_id +"/admob:v1beta/PublisherAccount/reportingTimeZone": reporting_time_zone +"/admob:v1beta/ReportFooter": report_footer +"/admob:v1beta/ReportFooter/matchingRowCount": matching_row_count +"/admob:v1beta/ReportFooter/warnings": warnings +"/admob:v1beta/ReportFooter/warnings/warning": warning +"/admob:v1beta/ReportHeader": report_header +"/admob:v1beta/ReportHeader/dateRange": date_range +"/admob:v1beta/ReportHeader/localizationSettings": localization_settings +"/admob:v1beta/ReportHeader/reportingTimeZone": reporting_time_zone +"/admob:v1beta/ReportRow": report_row +"/admob:v1beta/ReportRow/dimensionValues": dimension_values +"/admob:v1beta/ReportRow/dimensionValues/dimension_value": dimension_value +"/admob:v1beta/ReportRow/metricValues": metric_values +"/admob:v1beta/ReportRow/metricValues/metric_value": metric_value +"/admob:v1beta/ReportRowDimensionValue": report_row_dimension_value +"/admob:v1beta/ReportRowDimensionValue/displayLabel": display_label +"/admob:v1beta/ReportRowDimensionValue/value": value +"/admob:v1beta/ReportRowMetricValue": report_row_metric_value +"/admob:v1beta/ReportRowMetricValue/doubleValue": double_value +"/admob:v1beta/ReportRowMetricValue/integerValue": integer_value +"/admob:v1beta/ReportRowMetricValue/microsValue": micros_value +"/admob:v1beta/ReportWarning": report_warning +"/admob:v1beta/ReportWarning/description": description +"/admob:v1beta/ReportWarning/type": type +"/admob:v1beta/StringList": string_list +"/admob:v1beta/StringList/values": values +"/admob:v1beta/StringList/values/value": value +"/admob:v1beta/admob.accounts.adUnits.list": list_account_ad_units +"/admob:v1beta/admob.accounts.adUnits.list/pageSize": page_size +"/admob:v1beta/admob.accounts.adUnits.list/pageToken": page_token +"/admob:v1beta/admob.accounts.adUnits.list/parent": parent +"/admob:v1beta/admob.accounts.apps.list": list_account_apps +"/admob:v1beta/admob.accounts.apps.list/pageSize": page_size +"/admob:v1beta/admob.accounts.apps.list/pageToken": page_token +"/admob:v1beta/admob.accounts.apps.list/parent": parent +"/admob:v1beta/admob.accounts.get": get_account +"/admob:v1beta/admob.accounts.get/name": name +"/admob:v1beta/admob.accounts.list": list_accounts +"/admob:v1beta/admob.accounts.list/pageSize": page_size +"/admob:v1beta/admob.accounts.list/pageToken": page_token +"/admob:v1beta/admob.accounts.mediationReport.generate": generate_mediation_report +"/admob:v1beta/admob.accounts.mediationReport.generate/parent": parent +"/admob:v1beta/admob.accounts.networkReport.generate": generate_network_report +"/admob:v1beta/admob.accounts.networkReport.generate/parent": parent +"/admob:v1beta/fields": fields +"/admob:v1beta/key": key +"/admob:v1beta/quotaUser": quota_user "/adsense:v1.4/Account": account "/adsense:v1.4/Account/creation_time": creation_time "/adsense:v1.4/Account/id": id diff --git a/generated/google/apis/admob_v1beta.rb b/generated/google/apis/admob_v1beta.rb new file mode 100644 index 000000000..98c2b56f5 --- /dev/null +++ b/generated/google/apis/admob_v1beta.rb @@ -0,0 +1,38 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/admob_v1beta/service.rb' +require 'google/apis/admob_v1beta/classes.rb' +require 'google/apis/admob_v1beta/representations.rb' + +module Google + module Apis + # AdMob API + # + # The AdMob API allows publishers to programmatically get information about + # their AdMob account. + # + # @see https://developers.google.com/admob/api/ + module AdmobV1beta + VERSION = 'V1beta' + REVISION = '20201110' + + # See your AdMob data + AUTH_ADMOB_READONLY = 'https://www.googleapis.com/auth/admob.readonly' + + # See your AdMob data + AUTH_ADMOB_REPORT = 'https://www.googleapis.com/auth/admob.report' + end + end +end diff --git a/generated/google/apis/admob_v1beta/classes.rb b/generated/google/apis/admob_v1beta/classes.rb new file mode 100644 index 000000000..73dc7a5f9 --- /dev/null +++ b/generated/google/apis/admob_v1beta/classes.rb @@ -0,0 +1,1035 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module AdmobV1beta + + # Describes an AdMob ad unit. + class AdUnit + include Google::Apis::Core::Hashable + + # AdFormat of the ad unit. Possible values are as follows: "BANNER" - Banner ad + # format. "BANNER_INTERSTITIAL" - Legacy format that can be used as either + # banner or interstitial. This format can no longer be created but can be + # targeted by mediation groups. "INTERSTITIAL" - A full screen ad. Supported ad + # types are "RICH_MEDIA" and "VIDEO". "NATIVE" - Native ad format. "REWARDED" - + # An ad that, once viewed, gets a callback verifying the view so that a reward + # can be given to the user. Supported ad types are "RICH_MEDIA" (interactive) + # and video where video can not be excluded. + # Corresponds to the JSON property `adFormat` + # @return [String] + attr_accessor :ad_format + + # Ad media type supported by this ad unit. Possible values as follows: " + # RICH_MEDIA" - Text, image, and other non-video media. "VIDEO" - Video media. + # Corresponds to the JSON property `adTypes` + # @return [Array] + attr_accessor :ad_types + + # The externally visible ID of the ad unit which can be used to integrate with + # the AdMob SDK. This is a read only property. Example: ca-app-pub- + # 9876543210987654/0123456789 + # Corresponds to the JSON property `adUnitId` + # @return [String] + attr_accessor :ad_unit_id + + # The externally visible ID of the app this ad unit is associated with. Example: + # ca-app-pub-9876543210987654~0123456789 + # Corresponds to the JSON property `appId` + # @return [String] + attr_accessor :app_id + + # The display name of the ad unit as shown in the AdMob UI, which is provided by + # the user. The maximum length allowed is 80 characters. + # Corresponds to the JSON property `displayName` + # @return [String] + attr_accessor :display_name + + # Resource name for this ad unit. Format is accounts/`publisher_id`/adUnits/` + # ad_unit_id_fragment` Example: accounts/pub-9876543210987654/adUnits/0123456789 + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @ad_format = args[:ad_format] if args.key?(:ad_format) + @ad_types = args[:ad_types] if args.key?(:ad_types) + @ad_unit_id = args[:ad_unit_id] if args.key?(:ad_unit_id) + @app_id = args[:app_id] if args.key?(:app_id) + @display_name = args[:display_name] if args.key?(:display_name) + @name = args[:name] if args.key?(:name) + end + end + + # Describes an AdMob app for a specific platform (For example: Android or iOS). + class App + include Google::Apis::Core::Hashable + + # The externally visible ID of the app which can be used to integrate with the + # AdMob SDK. This is a read only property. Example: ca-app-pub-9876543210987654~ + # 0123456789 + # Corresponds to the JSON property `appId` + # @return [String] + attr_accessor :app_id + + # Information from the app store if the app is linked to an app store. + # Corresponds to the JSON property `linkedAppInfo` + # @return [Google::Apis::AdmobV1beta::AppLinkedAppInfo] + attr_accessor :linked_app_info + + # Information provided for manual apps which are not linked to an application + # store (Example: Google Play, App Store). + # Corresponds to the JSON property `manualAppInfo` + # @return [Google::Apis::AdmobV1beta::AppManualAppInfo] + attr_accessor :manual_app_info + + # Resource name for this app. Format is accounts/`publisher_id`/apps/` + # app_id_fragment` Example: accounts/pub-9876543210987654/apps/0123456789 + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Describes the platform of the app. Limited to "IOS" and "ANDROID". + # Corresponds to the JSON property `platform` + # @return [String] + attr_accessor :platform + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @app_id = args[:app_id] if args.key?(:app_id) + @linked_app_info = args[:linked_app_info] if args.key?(:linked_app_info) + @manual_app_info = args[:manual_app_info] if args.key?(:manual_app_info) + @name = args[:name] if args.key?(:name) + @platform = args[:platform] if args.key?(:platform) + end + end + + # Information from the app store if the app is linked to an app store. + class AppLinkedAppInfo + include Google::Apis::Core::Hashable + + # The app store ID of the app; present if and only if the app is linked to an + # app store. If the app is added to the Google Play store, it will be the + # application ID of the app. For example: "com.example.myapp". See https:// + # developer.android.com/studio/build/application-id. If the app is added to the + # Apple App Store, it will be app store ID. For example "105169111". Note that + # setting the app store id is considered an irreversible action. Once an app is + # linked, it cannot be unlinked. + # Corresponds to the JSON property `appStoreId` + # @return [String] + attr_accessor :app_store_id + + # Output only. Display name of the app as it appears in the app store. This is + # an output-only field, and may be empty if the app cannot be found in the store. + # Corresponds to the JSON property `displayName` + # @return [String] + attr_accessor :display_name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @app_store_id = args[:app_store_id] if args.key?(:app_store_id) + @display_name = args[:display_name] if args.key?(:display_name) + end + end + + # Information provided for manual apps which are not linked to an application + # store (Example: Google Play, App Store). + class AppManualAppInfo + include Google::Apis::Core::Hashable + + # The display name of the app as shown in the AdMob UI, which is provided by the + # user. The maximum length allowed is 80 characters. + # Corresponds to the JSON property `displayName` + # @return [String] + attr_accessor :display_name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @display_name = args[:display_name] if args.key?(:display_name) + end + end + + # Represents a whole or partial calendar date, such as a birthday. The time of + # day and time zone are either specified elsewhere or are insignificant. The + # date is relative to the Gregorian Calendar. This can represent one of the + # following: * A full date, with non-zero year, month, and day values * A month + # and day value, with a zero year, such as an anniversary * A year on its own, + # with zero month and day values * A year and month value, with a zero day, such + # as a credit card expiration date Related types are google.type.TimeOfDay and ` + # google.protobuf.Timestamp`. + class Date + include Google::Apis::Core::Hashable + + # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to + # specify a year by itself or a year and month where the day isn't significant. + # Corresponds to the JSON property `day` + # @return [Fixnum] + attr_accessor :day + + # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month + # and day. + # Corresponds to the JSON property `month` + # @return [Fixnum] + attr_accessor :month + + # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a + # year. + # Corresponds to the JSON property `year` + # @return [Fixnum] + attr_accessor :year + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @day = args[:day] if args.key?(:day) + @month = args[:month] if args.key?(:month) + @year = args[:year] if args.key?(:year) + end + end + + # Specification of a single date range. Both dates are inclusive. + class DateRange + include Google::Apis::Core::Hashable + + # Represents a whole or partial calendar date, such as a birthday. The time of + # day and time zone are either specified elsewhere or are insignificant. The + # date is relative to the Gregorian Calendar. This can represent one of the + # following: * A full date, with non-zero year, month, and day values * A month + # and day value, with a zero year, such as an anniversary * A year on its own, + # with zero month and day values * A year and month value, with a zero day, such + # as a credit card expiration date Related types are google.type.TimeOfDay and ` + # google.protobuf.Timestamp`. + # Corresponds to the JSON property `endDate` + # @return [Google::Apis::AdmobV1beta::Date] + attr_accessor :end_date + + # Represents a whole or partial calendar date, such as a birthday. The time of + # day and time zone are either specified elsewhere or are insignificant. The + # date is relative to the Gregorian Calendar. This can represent one of the + # following: * A full date, with non-zero year, month, and day values * A month + # and day value, with a zero year, such as an anniversary * A year on its own, + # with zero month and day values * A year and month value, with a zero day, such + # as a credit card expiration date Related types are google.type.TimeOfDay and ` + # google.protobuf.Timestamp`. + # Corresponds to the JSON property `startDate` + # @return [Google::Apis::AdmobV1beta::Date] + attr_accessor :start_date + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @end_date = args[:end_date] if args.key?(:end_date) + @start_date = args[:start_date] if args.key?(:start_date) + end + end + + # Request to generate an AdMob Mediation report. + class GenerateMediationReportRequest + include Google::Apis::Core::Hashable + + # The specification for generating an AdMob Mediation report. For example, the + # specification to get observed ECPM sliced by ad source and app for the 'US' + # and 'CN' countries can look like the following example: ` "date_range": ` " + # start_date": `"year": 2018, "month": 9, "day": 1`, "end_date": `"year": 2018, " + # month": 9, "day": 30` `, "dimensions": ["AD_SOURCE", "APP", "COUNTRY"], " + # metrics": ["OBSERVED_ECPM"], "dimension_filters": [ ` "dimension": "COUNTRY", " + # matches_any": `"values": [`"value": "US", "value": "CN"`]` ` ], " + # sort_conditions": [ `"dimension":"APP", order: "ASCENDING"` ], " + # localization_settings": ` "currency_code": "USD", "language_code": "en-US" ` ` + # For a better understanding, you can treat the preceding specification like the + # following pseudo SQL: SELECT AD_SOURCE, APP, COUNTRY, OBSERVED_ECPM FROM + # MEDIATION_REPORT WHERE DATE >= '2018-09-01' AND DATE <= '2018-09-30' AND + # COUNTRY IN ('US', 'CN') GROUP BY AD_SOURCE, APP, COUNTRY ORDER BY APP ASC; + # Corresponds to the JSON property `reportSpec` + # @return [Google::Apis::AdmobV1beta::MediationReportSpec] + attr_accessor :report_spec + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @report_spec = args[:report_spec] if args.key?(:report_spec) + end + end + + # The streaming response for the AdMob Mediation report where the first response + # contains the report header, then a stream of row responses, and finally a + # footer as the last response message. For example: [` "header": ` "date_range": + # ` "start_date": `"year": 2018, "month": 9, "day": 1`, "end_date": `"year": + # 2018, "month": 9, "day": 1` `, "localization_settings": ` "currency_code": " + # USD", "language_code": "en-US" ` ` `, ` "row": ` "dimension_values": ` "DATE": + # `"value": "20180918"`, "APP": ` "value": "ca-app-pub-8123415297019784~ + # 1001342552", "display_label": "My app name!" ` `, "metric_values": ` " + # ESTIMATED_EARNINGS": `"decimal_value": "1324746"` ` ` `, ` "footer": `" + # matching_row_count": 1` `] + class GenerateMediationReportResponse + include Google::Apis::Core::Hashable + + # Groups data available after report generation, for example, warnings and row + # counts. Always sent as the last message in the stream response. + # Corresponds to the JSON property `footer` + # @return [Google::Apis::AdmobV1beta::ReportFooter] + attr_accessor :footer + + # Groups data helps to treat the generated report. Always sent as a first + # message in the stream response. + # Corresponds to the JSON property `header` + # @return [Google::Apis::AdmobV1beta::ReportHeader] + attr_accessor :header + + # A row of the returning report. + # Corresponds to the JSON property `row` + # @return [Google::Apis::AdmobV1beta::ReportRow] + attr_accessor :row + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @footer = args[:footer] if args.key?(:footer) + @header = args[:header] if args.key?(:header) + @row = args[:row] if args.key?(:row) + end + end + + # Request to generate an AdMob Network report. + class GenerateNetworkReportRequest + include Google::Apis::Core::Hashable + + # The specification for generating an AdMob Network report. For example, the + # specification to get clicks and estimated earnings for only the 'US' and 'CN' + # countries can look like the following example: ` 'date_range': ` 'start_date': + # `'year': 2018, 'month': 9, 'day': 1`, 'end_date': `'year': 2018, 'month': 9, ' + # day': 30` `, 'dimensions': ['DATE', 'APP', 'COUNTRY'], 'metrics': ['CLICKS', ' + # ESTIMATED_EARNINGS'], 'dimension_filters': [ ` 'dimension': 'COUNTRY', ' + # matches_any': `'values': [`'value': 'US', 'value': 'CN'`]` ` ], ' + # sort_conditions': [ `'dimension':'APP', order: 'ASCENDING'`, `'metric':'CLICKS' + # , order: 'DESCENDING'` ], 'localization_settings': ` 'currency_code': 'USD', ' + # language_code': 'en-US' ` ` For a better understanding, you can treat the + # preceding specification like the following pseudo SQL: SELECT DATE, APP, + # COUNTRY, CLICKS, ESTIMATED_EARNINGS FROM NETWORK_REPORT WHERE DATE >= '2018-09- + # 01' AND DATE <= '2018-09-30' AND COUNTRY IN ('US', 'CN') GROUP BY DATE, APP, + # COUNTRY ORDER BY APP ASC, CLICKS DESC; + # Corresponds to the JSON property `reportSpec` + # @return [Google::Apis::AdmobV1beta::NetworkReportSpec] + attr_accessor :report_spec + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @report_spec = args[:report_spec] if args.key?(:report_spec) + end + end + + # The streaming response for the AdMob Network report where the first response + # contains the report header, then a stream of row responses, and finally a + # footer as the last response message. For example: [` "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` `] + class GenerateNetworkReportResponse + include Google::Apis::Core::Hashable + + # Groups data available after report generation, for example, warnings and row + # counts. Always sent as the last message in the stream response. + # Corresponds to the JSON property `footer` + # @return [Google::Apis::AdmobV1beta::ReportFooter] + attr_accessor :footer + + # Groups data helps to treat the generated report. Always sent as a first + # message in the stream response. + # Corresponds to the JSON property `header` + # @return [Google::Apis::AdmobV1beta::ReportHeader] + attr_accessor :header + + # A row of the returning report. + # Corresponds to the JSON property `row` + # @return [Google::Apis::AdmobV1beta::ReportRow] + attr_accessor :row + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @footer = args[:footer] if args.key?(:footer) + @header = args[:header] if args.key?(:header) + @row = args[:row] if args.key?(:row) + end + end + + # Response for the ad units list request. + class ListAdUnitsResponse + include Google::Apis::Core::Hashable + + # The resulting ad units for the requested account. + # Corresponds to the JSON property `adUnits` + # @return [Array] + attr_accessor :ad_units + + # If not empty, indicates that there may be more ad units for the request; this + # value should be passed in a new `ListAdUnitsRequest`. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @ad_units = args[:ad_units] if args.key?(:ad_units) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # Response for the apps list request. + class ListAppsResponse + include Google::Apis::Core::Hashable + + # The resulting apps for the requested account. + # Corresponds to the JSON property `apps` + # @return [Array] + attr_accessor :apps + + # If not empty, indicates that there may be more apps for the request; this + # value should be passed in a new `ListAppsRequest`. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @apps = args[:apps] if args.key?(:apps) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # Response for the publisher account list request. + class ListPublisherAccountsResponse + include Google::Apis::Core::Hashable + + # Publisher that the client credentials can access. + # Corresponds to the JSON property `account` + # @return [Array] + attr_accessor :account + + # If not empty, indicates that there might be more accounts for the request; you + # must pass this value in a new `ListPublisherAccountsRequest`. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @account = args[:account] if args.key?(:account) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # Localization settings for reports, such as currency and language. It affects + # how metrics are calculated. + class LocalizationSettings + include Google::Apis::Core::Hashable + + # Currency code of the earning related metrics, which is the 3-letter code + # defined in ISO 4217. The daily average rate is used for the currency + # conversion. Defaults to the account currency code if unspecified. + # Corresponds to the JSON property `currencyCode` + # @return [String] + attr_accessor :currency_code + + # Language used for any localized text, such as some dimension value display + # labels. The language tag defined in the IETF BCP47. Defaults to 'en-US' if + # unspecified. + # Corresponds to the JSON property `languageCode` + # @return [String] + attr_accessor :language_code + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @currency_code = args[:currency_code] if args.key?(:currency_code) + @language_code = args[:language_code] if args.key?(:language_code) + end + end + + # The specification for generating an AdMob Mediation report. For example, the + # specification to get observed ECPM sliced by ad source and app for the 'US' + # and 'CN' countries can look like the following example: ` "date_range": ` " + # start_date": `"year": 2018, "month": 9, "day": 1`, "end_date": `"year": 2018, " + # month": 9, "day": 30` `, "dimensions": ["AD_SOURCE", "APP", "COUNTRY"], " + # metrics": ["OBSERVED_ECPM"], "dimension_filters": [ ` "dimension": "COUNTRY", " + # matches_any": `"values": [`"value": "US", "value": "CN"`]` ` ], " + # sort_conditions": [ `"dimension":"APP", order: "ASCENDING"` ], " + # localization_settings": ` "currency_code": "USD", "language_code": "en-US" ` ` + # For a better understanding, you can treat the preceding specification like the + # following pseudo SQL: SELECT AD_SOURCE, APP, COUNTRY, OBSERVED_ECPM FROM + # MEDIATION_REPORT WHERE DATE >= '2018-09-01' AND DATE <= '2018-09-30' AND + # COUNTRY IN ('US', 'CN') GROUP BY AD_SOURCE, APP, COUNTRY ORDER BY APP ASC; + class MediationReportSpec + include Google::Apis::Core::Hashable + + # Specification of a single date range. Both dates are inclusive. + # Corresponds to the JSON property `dateRange` + # @return [Google::Apis::AdmobV1beta::DateRange] + attr_accessor :date_range + + # Describes which report rows to match based on their dimension values. + # Corresponds to the JSON property `dimensionFilters` + # @return [Array] + attr_accessor :dimension_filters + + # List of dimensions of the report. The value combination of these dimensions + # determines the row of the report. If no dimensions are specified, the report + # returns a single row of requested metrics for the entire account. + # Corresponds to the JSON property `dimensions` + # @return [Array] + attr_accessor :dimensions + + # Localization settings for reports, such as currency and language. It affects + # how metrics are calculated. + # Corresponds to the JSON property `localizationSettings` + # @return [Google::Apis::AdmobV1beta::LocalizationSettings] + attr_accessor :localization_settings + + # Maximum number of report data rows to return. If the value is not set, the API + # returns as many rows as possible, up to 100000. Acceptable values are 1-100000, + # inclusive. Values larger than 100000 return an error. + # Corresponds to the JSON property `maxReportRows` + # @return [Fixnum] + attr_accessor :max_report_rows + + # List of metrics of the report. A report must specify at least one metric. + # Corresponds to the JSON property `metrics` + # @return [Array] + attr_accessor :metrics + + # Describes the sorting of report rows. The order of the condition in the list + # defines its precedence; the earlier the condition, the higher its precedence. + # If no sort conditions are specified, the row ordering is undefined. + # Corresponds to the JSON property `sortConditions` + # @return [Array] + attr_accessor :sort_conditions + + # A report time zone. Accepts an IANA TZ name values, such as "America/ + # Los_Angeles." If no time zone is defined, the account default takes effect. + # Check default value by the get account action. **Warning:** The "America/ + # Los_Angeles" is the only supported value at the moment. + # Corresponds to the JSON property `timeZone` + # @return [String] + attr_accessor :time_zone + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @date_range = args[:date_range] if args.key?(:date_range) + @dimension_filters = args[:dimension_filters] if args.key?(:dimension_filters) + @dimensions = args[:dimensions] if args.key?(:dimensions) + @localization_settings = args[:localization_settings] if args.key?(:localization_settings) + @max_report_rows = args[:max_report_rows] if args.key?(:max_report_rows) + @metrics = args[:metrics] if args.key?(:metrics) + @sort_conditions = args[:sort_conditions] if args.key?(:sort_conditions) + @time_zone = args[:time_zone] if args.key?(:time_zone) + end + end + + # Describes which report rows to match based on their dimension values. + class MediationReportSpecDimensionFilter + include Google::Apis::Core::Hashable + + # Applies the filter criterion to the specified dimension. + # Corresponds to the JSON property `dimension` + # @return [String] + attr_accessor :dimension + + # List of string values. + # Corresponds to the JSON property `matchesAny` + # @return [Google::Apis::AdmobV1beta::StringList] + attr_accessor :matches_any + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @dimension = args[:dimension] if args.key?(:dimension) + @matches_any = args[:matches_any] if args.key?(:matches_any) + end + end + + # Sorting direction to be applied on a dimension or a metric. + class MediationReportSpecSortCondition + include Google::Apis::Core::Hashable + + # Sort by the specified dimension. + # Corresponds to the JSON property `dimension` + # @return [String] + attr_accessor :dimension + + # Sort by the specified metric. + # Corresponds to the JSON property `metric` + # @return [String] + attr_accessor :metric + + # Sorting order of the dimension or metric. + # Corresponds to the JSON property `order` + # @return [String] + attr_accessor :order + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @dimension = args[:dimension] if args.key?(:dimension) + @metric = args[:metric] if args.key?(:metric) + @order = args[:order] if args.key?(:order) + end + end + + # The specification for generating an AdMob Network report. For example, the + # specification to get clicks and estimated earnings for only the 'US' and 'CN' + # countries can look like the following example: ` 'date_range': ` 'start_date': + # `'year': 2018, 'month': 9, 'day': 1`, 'end_date': `'year': 2018, 'month': 9, ' + # day': 30` `, 'dimensions': ['DATE', 'APP', 'COUNTRY'], 'metrics': ['CLICKS', ' + # ESTIMATED_EARNINGS'], 'dimension_filters': [ ` 'dimension': 'COUNTRY', ' + # matches_any': `'values': [`'value': 'US', 'value': 'CN'`]` ` ], ' + # sort_conditions': [ `'dimension':'APP', order: 'ASCENDING'`, `'metric':'CLICKS' + # , order: 'DESCENDING'` ], 'localization_settings': ` 'currency_code': 'USD', ' + # language_code': 'en-US' ` ` For a better understanding, you can treat the + # preceding specification like the following pseudo SQL: SELECT DATE, APP, + # COUNTRY, CLICKS, ESTIMATED_EARNINGS FROM NETWORK_REPORT WHERE DATE >= '2018-09- + # 01' AND DATE <= '2018-09-30' AND COUNTRY IN ('US', 'CN') GROUP BY DATE, APP, + # COUNTRY ORDER BY APP ASC, CLICKS DESC; + class NetworkReportSpec + include Google::Apis::Core::Hashable + + # Specification of a single date range. Both dates are inclusive. + # Corresponds to the JSON property `dateRange` + # @return [Google::Apis::AdmobV1beta::DateRange] + attr_accessor :date_range + + # Describes which report rows to match based on their dimension values. + # Corresponds to the JSON property `dimensionFilters` + # @return [Array] + attr_accessor :dimension_filters + + # List of dimensions of the report. The value combination of these dimensions + # determines the row of the report. If no dimensions are specified, the report + # returns a single row of requested metrics for the entire account. + # Corresponds to the JSON property `dimensions` + # @return [Array] + attr_accessor :dimensions + + # Localization settings for reports, such as currency and language. It affects + # how metrics are calculated. + # Corresponds to the JSON property `localizationSettings` + # @return [Google::Apis::AdmobV1beta::LocalizationSettings] + attr_accessor :localization_settings + + # Maximum number of report data rows to return. If the value is not set, the API + # returns as many rows as possible, up to 100000. Acceptable values are 1-100000, + # inclusive. Values larger than 100000 return an error. + # Corresponds to the JSON property `maxReportRows` + # @return [Fixnum] + attr_accessor :max_report_rows + + # List of metrics of the report. A report must specify at least one metric. + # Corresponds to the JSON property `metrics` + # @return [Array] + attr_accessor :metrics + + # Describes the sorting of report rows. The order of the condition in the list + # defines its precedence; the earlier the condition, the higher its precedence. + # If no sort conditions are specified, the row ordering is undefined. + # Corresponds to the JSON property `sortConditions` + # @return [Array] + attr_accessor :sort_conditions + + # A report time zone. Accepts an IANA TZ name values, such as "America/ + # Los_Angeles." If no time zone is defined, the account default takes effect. + # Check default value by the get account action. **Warning:** The "America/ + # Los_Angeles" is the only supported value at the moment. + # Corresponds to the JSON property `timeZone` + # @return [String] + attr_accessor :time_zone + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @date_range = args[:date_range] if args.key?(:date_range) + @dimension_filters = args[:dimension_filters] if args.key?(:dimension_filters) + @dimensions = args[:dimensions] if args.key?(:dimensions) + @localization_settings = args[:localization_settings] if args.key?(:localization_settings) + @max_report_rows = args[:max_report_rows] if args.key?(:max_report_rows) + @metrics = args[:metrics] if args.key?(:metrics) + @sort_conditions = args[:sort_conditions] if args.key?(:sort_conditions) + @time_zone = args[:time_zone] if args.key?(:time_zone) + end + end + + # Describes which report rows to match based on their dimension values. + class NetworkReportSpecDimensionFilter + include Google::Apis::Core::Hashable + + # Applies the filter criterion to the specified dimension. + # Corresponds to the JSON property `dimension` + # @return [String] + attr_accessor :dimension + + # List of string values. + # Corresponds to the JSON property `matchesAny` + # @return [Google::Apis::AdmobV1beta::StringList] + attr_accessor :matches_any + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @dimension = args[:dimension] if args.key?(:dimension) + @matches_any = args[:matches_any] if args.key?(:matches_any) + end + end + + # Sorting direction to be applied on a dimension or a metric. + class NetworkReportSpecSortCondition + include Google::Apis::Core::Hashable + + # Sort by the specified dimension. + # Corresponds to the JSON property `dimension` + # @return [String] + attr_accessor :dimension + + # Sort by the specified metric. + # Corresponds to the JSON property `metric` + # @return [String] + attr_accessor :metric + + # Sorting order of the dimension or metric. + # Corresponds to the JSON property `order` + # @return [String] + attr_accessor :order + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @dimension = args[:dimension] if args.key?(:dimension) + @metric = args[:metric] if args.key?(:metric) + @order = args[:order] if args.key?(:order) + end + end + + # A publisher account contains information relevant to the use of this API, such + # as the time zone used for the reports. + class PublisherAccount + include Google::Apis::Core::Hashable + + # Currency code of the earning-related metrics, which is the 3-letter code + # defined in ISO 4217. The daily average rate is used for the currency + # conversion. + # Corresponds to the JSON property `currencyCode` + # @return [String] + attr_accessor :currency_code + + # Resource name of this account. Format is accounts/`publisher_id`. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The unique ID by which this publisher account can be identified in the API + # requests (for example, pub-1234567890). + # Corresponds to the JSON property `publisherId` + # @return [String] + attr_accessor :publisher_id + + # The time zone that is used in reports that are generated for this account. The + # value is a time-zone ID as specified by the CLDR project, for example, " + # America/Los_Angeles". + # Corresponds to the JSON property `reportingTimeZone` + # @return [String] + attr_accessor :reporting_time_zone + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @currency_code = args[:currency_code] if args.key?(:currency_code) + @name = args[:name] if args.key?(:name) + @publisher_id = args[:publisher_id] if args.key?(:publisher_id) + @reporting_time_zone = args[:reporting_time_zone] if args.key?(:reporting_time_zone) + end + end + + # Groups data available after report generation, for example, warnings and row + # counts. Always sent as the last message in the stream response. + class ReportFooter + include Google::Apis::Core::Hashable + + # Total number of rows that matched the request. Warning: This count does NOT + # always match the number of rows in the response. Do not make that assumption + # when processing the response. + # Corresponds to the JSON property `matchingRowCount` + # @return [Fixnum] + attr_accessor :matching_row_count + + # Warnings associated with generation of the report. + # Corresponds to the JSON property `warnings` + # @return [Array] + attr_accessor :warnings + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @matching_row_count = args[:matching_row_count] if args.key?(:matching_row_count) + @warnings = args[:warnings] if args.key?(:warnings) + end + end + + # Groups data helps to treat the generated report. Always sent as a first + # message in the stream response. + class ReportHeader + include Google::Apis::Core::Hashable + + # Specification of a single date range. Both dates are inclusive. + # Corresponds to the JSON property `dateRange` + # @return [Google::Apis::AdmobV1beta::DateRange] + attr_accessor :date_range + + # Localization settings for reports, such as currency and language. It affects + # how metrics are calculated. + # Corresponds to the JSON property `localizationSettings` + # @return [Google::Apis::AdmobV1beta::LocalizationSettings] + attr_accessor :localization_settings + + # The report time zone. The value is a time-zone ID as specified by the CLDR + # project, for example, "America/Los_Angeles". + # Corresponds to the JSON property `reportingTimeZone` + # @return [String] + attr_accessor :reporting_time_zone + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @date_range = args[:date_range] if args.key?(:date_range) + @localization_settings = args[:localization_settings] if args.key?(:localization_settings) + @reporting_time_zone = args[:reporting_time_zone] if args.key?(:reporting_time_zone) + end + end + + # A row of the returning report. + class ReportRow + include Google::Apis::Core::Hashable + + # Map of dimension values in a row, with keys as enum name of the dimensions. + # Corresponds to the JSON property `dimensionValues` + # @return [Hash] + attr_accessor :dimension_values + + # Map of metric values in a row, with keys as enum name of the metrics. If a + # metric being requested has no value returned, the map will not include it. + # Corresponds to the JSON property `metricValues` + # @return [Hash] + attr_accessor :metric_values + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @dimension_values = args[:dimension_values] if args.key?(:dimension_values) + @metric_values = args[:metric_values] if args.key?(:metric_values) + end + end + + # Representation of a dimension value. + class ReportRowDimensionValue + include Google::Apis::Core::Hashable + + # The localized string representation of the value. If unspecified, the display + # label should be derived from the value. + # Corresponds to the JSON property `displayLabel` + # @return [String] + attr_accessor :display_label + + # Dimension value in the format specified in the report's spec Dimension enum. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @display_label = args[:display_label] if args.key?(:display_label) + @value = args[:value] if args.key?(:value) + end + end + + # Representation of a metric value. + class ReportRowMetricValue + include Google::Apis::Core::Hashable + + # Double precision (approximate) decimal values. Rates are from 0 to 1. + # Corresponds to the JSON property `doubleValue` + # @return [Float] + attr_accessor :double_value + + # Metric integer value. + # Corresponds to the JSON property `integerValue` + # @return [Fixnum] + attr_accessor :integer_value + + # Amount in micros. One million is equivalent to one unit. Currency value is in + # the unit (USD, EUR or other) specified by the request. For example, $6.50 + # whould be represented as 6500000 micros. + # Corresponds to the JSON property `microsValue` + # @return [Fixnum] + attr_accessor :micros_value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @double_value = args[:double_value] if args.key?(:double_value) + @integer_value = args[:integer_value] if args.key?(:integer_value) + @micros_value = args[:micros_value] if args.key?(:micros_value) + end + end + + # Warnings associated with generation of the report. + class ReportWarning + include Google::Apis::Core::Hashable + + # Describes the details of the warning message, in English. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # Type of the warning. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @description = args[:description] if args.key?(:description) + @type = args[:type] if args.key?(:type) + end + end + + # List of string values. + class StringList + include Google::Apis::Core::Hashable + + # The string values. + # Corresponds to the JSON property `values` + # @return [Array] + attr_accessor :values + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @values = args[:values] if args.key?(:values) + end + end + end + end +end diff --git a/generated/google/apis/admob_v1beta/representations.rb b/generated/google/apis/admob_v1beta/representations.rb new file mode 100644 index 000000000..2563c0422 --- /dev/null +++ b/generated/google/apis/admob_v1beta/representations.rb @@ -0,0 +1,472 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module AdmobV1beta + + class AdUnit + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class App + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AppLinkedAppInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AppManualAppInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Date + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DateRange + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GenerateMediationReportRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GenerateMediationReportResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GenerateNetworkReportRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GenerateNetworkReportResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListAdUnitsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListAppsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListPublisherAccountsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LocalizationSettings + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class MediationReportSpec + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class MediationReportSpecDimensionFilter + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class MediationReportSpecSortCondition + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class NetworkReportSpec + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class NetworkReportSpecDimensionFilter + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class NetworkReportSpecSortCondition + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PublisherAccount + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ReportFooter + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ReportHeader + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ReportRow + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ReportRowDimensionValue + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ReportRowMetricValue + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ReportWarning + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class StringList + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AdUnit + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :ad_format, as: 'adFormat' + collection :ad_types, as: 'adTypes' + property :ad_unit_id, as: 'adUnitId' + property :app_id, as: 'appId' + property :display_name, as: 'displayName' + property :name, as: 'name' + end + end + + class App + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :app_id, as: 'appId' + property :linked_app_info, as: 'linkedAppInfo', class: Google::Apis::AdmobV1beta::AppLinkedAppInfo, decorator: Google::Apis::AdmobV1beta::AppLinkedAppInfo::Representation + + property :manual_app_info, as: 'manualAppInfo', class: Google::Apis::AdmobV1beta::AppManualAppInfo, decorator: Google::Apis::AdmobV1beta::AppManualAppInfo::Representation + + property :name, as: 'name' + property :platform, as: 'platform' + end + end + + class AppLinkedAppInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :app_store_id, as: 'appStoreId' + property :display_name, as: 'displayName' + end + end + + class AppManualAppInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :display_name, as: 'displayName' + end + end + + class Date + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :day, as: 'day' + property :month, as: 'month' + property :year, as: 'year' + end + end + + class DateRange + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :end_date, as: 'endDate', class: Google::Apis::AdmobV1beta::Date, decorator: Google::Apis::AdmobV1beta::Date::Representation + + property :start_date, as: 'startDate', class: Google::Apis::AdmobV1beta::Date, decorator: Google::Apis::AdmobV1beta::Date::Representation + + end + end + + class GenerateMediationReportRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :report_spec, as: 'reportSpec', class: Google::Apis::AdmobV1beta::MediationReportSpec, decorator: Google::Apis::AdmobV1beta::MediationReportSpec::Representation + + end + end + + class GenerateMediationReportResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :footer, as: 'footer', class: Google::Apis::AdmobV1beta::ReportFooter, decorator: Google::Apis::AdmobV1beta::ReportFooter::Representation + + property :header, as: 'header', class: Google::Apis::AdmobV1beta::ReportHeader, decorator: Google::Apis::AdmobV1beta::ReportHeader::Representation + + property :row, as: 'row', class: Google::Apis::AdmobV1beta::ReportRow, decorator: Google::Apis::AdmobV1beta::ReportRow::Representation + + end + end + + class GenerateNetworkReportRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :report_spec, as: 'reportSpec', class: Google::Apis::AdmobV1beta::NetworkReportSpec, decorator: Google::Apis::AdmobV1beta::NetworkReportSpec::Representation + + end + end + + class GenerateNetworkReportResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :footer, as: 'footer', class: Google::Apis::AdmobV1beta::ReportFooter, decorator: Google::Apis::AdmobV1beta::ReportFooter::Representation + + property :header, as: 'header', class: Google::Apis::AdmobV1beta::ReportHeader, decorator: Google::Apis::AdmobV1beta::ReportHeader::Representation + + property :row, as: 'row', class: Google::Apis::AdmobV1beta::ReportRow, decorator: Google::Apis::AdmobV1beta::ReportRow::Representation + + end + end + + class ListAdUnitsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :ad_units, as: 'adUnits', class: Google::Apis::AdmobV1beta::AdUnit, decorator: Google::Apis::AdmobV1beta::AdUnit::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class ListAppsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :apps, as: 'apps', class: Google::Apis::AdmobV1beta::App, decorator: Google::Apis::AdmobV1beta::App::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class ListPublisherAccountsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :account, as: 'account', class: Google::Apis::AdmobV1beta::PublisherAccount, decorator: Google::Apis::AdmobV1beta::PublisherAccount::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class LocalizationSettings + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :currency_code, as: 'currencyCode' + property :language_code, as: 'languageCode' + end + end + + class MediationReportSpec + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :date_range, as: 'dateRange', class: Google::Apis::AdmobV1beta::DateRange, decorator: Google::Apis::AdmobV1beta::DateRange::Representation + + collection :dimension_filters, as: 'dimensionFilters', class: Google::Apis::AdmobV1beta::MediationReportSpecDimensionFilter, decorator: Google::Apis::AdmobV1beta::MediationReportSpecDimensionFilter::Representation + + collection :dimensions, as: 'dimensions' + property :localization_settings, as: 'localizationSettings', class: Google::Apis::AdmobV1beta::LocalizationSettings, decorator: Google::Apis::AdmobV1beta::LocalizationSettings::Representation + + property :max_report_rows, as: 'maxReportRows' + collection :metrics, as: 'metrics' + collection :sort_conditions, as: 'sortConditions', class: Google::Apis::AdmobV1beta::MediationReportSpecSortCondition, decorator: Google::Apis::AdmobV1beta::MediationReportSpecSortCondition::Representation + + property :time_zone, as: 'timeZone' + end + end + + class MediationReportSpecDimensionFilter + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :dimension, as: 'dimension' + property :matches_any, as: 'matchesAny', class: Google::Apis::AdmobV1beta::StringList, decorator: Google::Apis::AdmobV1beta::StringList::Representation + + end + end + + class MediationReportSpecSortCondition + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :dimension, as: 'dimension' + property :metric, as: 'metric' + property :order, as: 'order' + end + end + + class NetworkReportSpec + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :date_range, as: 'dateRange', class: Google::Apis::AdmobV1beta::DateRange, decorator: Google::Apis::AdmobV1beta::DateRange::Representation + + collection :dimension_filters, as: 'dimensionFilters', class: Google::Apis::AdmobV1beta::NetworkReportSpecDimensionFilter, decorator: Google::Apis::AdmobV1beta::NetworkReportSpecDimensionFilter::Representation + + collection :dimensions, as: 'dimensions' + property :localization_settings, as: 'localizationSettings', class: Google::Apis::AdmobV1beta::LocalizationSettings, decorator: Google::Apis::AdmobV1beta::LocalizationSettings::Representation + + property :max_report_rows, as: 'maxReportRows' + collection :metrics, as: 'metrics' + collection :sort_conditions, as: 'sortConditions', class: Google::Apis::AdmobV1beta::NetworkReportSpecSortCondition, decorator: Google::Apis::AdmobV1beta::NetworkReportSpecSortCondition::Representation + + property :time_zone, as: 'timeZone' + end + end + + class NetworkReportSpecDimensionFilter + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :dimension, as: 'dimension' + property :matches_any, as: 'matchesAny', class: Google::Apis::AdmobV1beta::StringList, decorator: Google::Apis::AdmobV1beta::StringList::Representation + + end + end + + class NetworkReportSpecSortCondition + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :dimension, as: 'dimension' + property :metric, as: 'metric' + property :order, as: 'order' + end + end + + class PublisherAccount + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :currency_code, as: 'currencyCode' + property :name, as: 'name' + property :publisher_id, as: 'publisherId' + property :reporting_time_zone, as: 'reportingTimeZone' + end + end + + class ReportFooter + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :matching_row_count, :numeric_string => true, as: 'matchingRowCount' + collection :warnings, as: 'warnings', class: Google::Apis::AdmobV1beta::ReportWarning, decorator: Google::Apis::AdmobV1beta::ReportWarning::Representation + + end + end + + class ReportHeader + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :date_range, as: 'dateRange', class: Google::Apis::AdmobV1beta::DateRange, decorator: Google::Apis::AdmobV1beta::DateRange::Representation + + property :localization_settings, as: 'localizationSettings', class: Google::Apis::AdmobV1beta::LocalizationSettings, decorator: Google::Apis::AdmobV1beta::LocalizationSettings::Representation + + property :reporting_time_zone, as: 'reportingTimeZone' + end + end + + class ReportRow + # @private + class Representation < Google::Apis::Core::JsonRepresentation + hash :dimension_values, as: 'dimensionValues', class: Google::Apis::AdmobV1beta::ReportRowDimensionValue, decorator: Google::Apis::AdmobV1beta::ReportRowDimensionValue::Representation + + hash :metric_values, as: 'metricValues', class: Google::Apis::AdmobV1beta::ReportRowMetricValue, decorator: Google::Apis::AdmobV1beta::ReportRowMetricValue::Representation + + end + end + + class ReportRowDimensionValue + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :display_label, as: 'displayLabel' + property :value, as: 'value' + end + end + + class ReportRowMetricValue + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :double_value, as: 'doubleValue' + property :integer_value, :numeric_string => true, as: 'integerValue' + property :micros_value, :numeric_string => true, as: 'microsValue' + end + end + + class ReportWarning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :description, as: 'description' + property :type, as: 'type' + end + end + + class StringList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :values, as: 'values' + end + end + end + end +end diff --git a/generated/google/apis/admob_v1beta/service.rb b/generated/google/apis/admob_v1beta/service.rb new file mode 100644 index 000000000..d2a0d93c6 --- /dev/null +++ b/generated/google/apis/admob_v1beta/service.rb @@ -0,0 +1,279 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module AdmobV1beta + # AdMob API + # + # The AdMob API allows publishers to programmatically get information about + # their AdMob account. + # + # @example + # require 'google/apis/admob_v1beta' + # + # Admob = Google::Apis::AdmobV1beta # Alias the module + # service = Admob::AdMobService.new + # + # @see https://developers.google.com/admob/api/ + class AdMobService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + attr_accessor :quota_user + + def initialize + super('https://admob.googleapis.com/', '') + @batch_path = 'batch' + end + + # Gets information about the specified AdMob publisher account. + # @param [String] name + # Resource name of the publisher account to retrieve. Example: accounts/pub- + # 9876543210987654 + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdmobV1beta::PublisherAccount] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdmobV1beta::PublisherAccount] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_account(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta/{+name}', options) + command.response_representation = Google::Apis::AdmobV1beta::PublisherAccount::Representation + command.response_class = Google::Apis::AdmobV1beta::PublisherAccount + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists the AdMob publisher account accessible with the client credential. + # Currently, all credentials have access to at most one AdMob account. + # @param [Fixnum] page_size + # Maximum number of accounts to return. + # @param [String] page_token + # The value returned by the last `ListPublisherAccountsResponse`; indicates that + # this is a continuation of a prior `ListPublisherAccounts` call, and that the + # system should return the next page of data. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdmobV1beta::ListPublisherAccountsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdmobV1beta::ListPublisherAccountsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_accounts(page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta/accounts', options) + command.response_representation = Google::Apis::AdmobV1beta::ListPublisherAccountsResponse::Representation + command.response_class = Google::Apis::AdmobV1beta::ListPublisherAccountsResponse + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # List the ad units under the specified AdMob account. + # @param [String] parent + # Required. Resource name of the account to list ad units for. Example: accounts/ + # pub-9876543210987654 + # @param [Fixnum] page_size + # The maximum number of ad units to return. + # @param [String] page_token + # The value returned by the last `ListAdUnitsResponse`; indicates that this is a + # continuation of a prior `ListAdUnits` call, and that the system should return + # the next page of data. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdmobV1beta::ListAdUnitsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdmobV1beta::ListAdUnitsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_account_ad_units(parent, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta/{+parent}/adUnits', options) + command.response_representation = Google::Apis::AdmobV1beta::ListAdUnitsResponse::Representation + command.response_class = Google::Apis::AdmobV1beta::ListAdUnitsResponse + command.params['parent'] = parent unless parent.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # List the apps under the specified AdMob account. + # @param [String] parent + # Required. Resource name of the account to list apps for. Example: accounts/pub- + # 9876543210987654 + # @param [Fixnum] page_size + # The maximum number of apps to return. If unspecified or 0, at most 1000 apps + # will be returned. The maximum value is 10,000; values above 10,000 will be + # coerced to 10,000. + # @param [String] page_token + # The value returned by the last `ListAppsResponse`; indicates that this is a + # continuation of a prior `ListApps` call, and that the system should return the + # next page of data. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdmobV1beta::ListAppsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdmobV1beta::ListAppsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_account_apps(parent, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta/{+parent}/apps', options) + command.response_representation = Google::Apis::AdmobV1beta::ListAppsResponse::Representation + command.response_class = Google::Apis::AdmobV1beta::ListAppsResponse + command.params['parent'] = parent unless parent.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Generates an AdMob Mediation report based on the provided report specification. + # Returns result of a server-side streaming RPC. The result is returned in a + # sequence of responses. + # @param [String] parent + # Resource name of the account to generate the report for. Example: accounts/pub- + # 9876543210987654 + # @param [Google::Apis::AdmobV1beta::GenerateMediationReportRequest] generate_mediation_report_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdmobV1beta::GenerateMediationReportResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdmobV1beta::GenerateMediationReportResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def generate_mediation_report(parent, generate_mediation_report_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta/{+parent}/mediationReport:generate', options) + command.request_representation = Google::Apis::AdmobV1beta::GenerateMediationReportRequest::Representation + command.request_object = generate_mediation_report_request_object + command.response_representation = Google::Apis::AdmobV1beta::GenerateMediationReportResponse::Representation + command.response_class = Google::Apis::AdmobV1beta::GenerateMediationReportResponse + command.params['parent'] = parent unless parent.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Generates an AdMob Network report based on the provided report specification. + # Returns result of a server-side streaming RPC. The result is returned in a + # sequence of responses. + # @param [String] parent + # Resource name of the account to generate the report for. Example: accounts/pub- + # 9876543210987654 + # @param [Google::Apis::AdmobV1beta::GenerateNetworkReportRequest] generate_network_report_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdmobV1beta::GenerateNetworkReportResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdmobV1beta::GenerateNetworkReportResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def generate_network_report(parent, generate_network_report_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta/{+parent}/networkReport:generate', options) + command.request_representation = Google::Apis::AdmobV1beta::GenerateNetworkReportRequest::Representation + command.request_object = generate_network_report_request_object + command.response_representation = Google::Apis::AdmobV1beta::GenerateNetworkReportResponse::Representation + command.response_class = Google::Apis::AdmobV1beta::GenerateNetworkReportResponse + command.params['parent'] = parent unless parent.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + end + end + end + end +end diff --git a/generated/google/apis/admob_v1beta/synth.metadata b/generated/google/apis/admob_v1beta/synth.metadata new file mode 100644 index 000000000..987eaa381 --- /dev/null +++ b/generated/google/apis/admob_v1beta/synth.metadata @@ -0,0 +1,11 @@ +{ + "sources": [ + { + "git": { + "name": ".", + "remote": "https://github.com/googleapis/google-api-ruby-client.git", + "sha": "579321fd4114f939376f4fb72f0379f19400ae53" + } + } + ] +} \ No newline at end of file