diff options
Diffstat (limited to 'third_party/googleapis/google/ads/admob')
7 files changed, 0 insertions, 1386 deletions
diff --git a/third_party/googleapis/google/ads/admob/BUILD.bazel b/third_party/googleapis/google/ads/admob/BUILD.bazel deleted file mode 100644 index 499991b..0000000 --- a/third_party/googleapis/google/ads/admob/BUILD.bazel +++ /dev/null @@ -1 +0,0 @@ -exports_files(["admob_grpc_service_config.json"] + glob(["*.yaml"])) diff --git a/third_party/googleapis/google/ads/admob/admob_grpc_service_config.json b/third_party/googleapis/google/ads/admob/admob_grpc_service_config.json deleted file mode 100644 index 02bafa6..0000000 --- a/third_party/googleapis/google/ads/admob/admob_grpc_service_config.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "methodConfig": [{ - "name": [ - { "service": "google.ads.admob.v1.AdMobApi" } - ], - "timeout": "120s", - "retryPolicy": { - "maxAttempts": 5, - "initialBackoff": "1s", - "maxBackoff": "10s", - "backoffMultiplier": 1.3, - "retryableStatusCodes": ["UNAVAILABLE"] - } - }] -} diff --git a/third_party/googleapis/google/ads/admob/admob_v1.yaml b/third_party/googleapis/google/ads/admob/admob_v1.yaml deleted file mode 100644 index 681ee39..0000000 --- a/third_party/googleapis/google/ads/admob/admob_v1.yaml +++ /dev/null @@ -1,23 +0,0 @@ -type: google.api.Service -config_version: 3 -name: admob.googleapis.com -title: AdMob API - -apis: -- name: google.ads.admob.v1.AdMobApi - -documentation: - summary: The AdMob API allows publishers to programmatically get information about their AdMob - account. - -backend: - rules: - - selector: 'google.ads.admob.v1.AdMobApi.*' - deadline: 120.0 - -authentication: - rules: - - selector: 'google.ads.admob.v1.AdMobApi.*' - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/admob.report diff --git a/third_party/googleapis/google/ads/admob/v1/BUILD.bazel b/third_party/googleapis/google/ads/admob/v1/BUILD.bazel deleted file mode 100644 index b3adf28..0000000 --- a/third_party/googleapis/google/ads/admob/v1/BUILD.bazel +++ /dev/null @@ -1,363 +0,0 @@ -# This file was automatically generated by BuildFileGenerator -# https://github.com/googleapis/gapic-generator/tree/master/rules_gapic/bazel - -# Most of the manual changes to this file will be overwritten. -# It's **only** allowed to change the following rule attribute values: -# - names of *_gapic_assembly_* rules -# - certain parameters of *_gapic_library rules, including but not limited to: -# * extra_protoc_parameters -# * extra_protoc_file_parameters -# The complete list of preserved parameters can be found in the source code. - -# This is an API workspace, having public visibility by default makes perfect sense. -package(default_visibility = ["//visibility:public"]) - -############################################################################## -# Common -############################################################################## -load("@rules_proto//proto:defs.bzl", "proto_library") -load("@com_google_googleapis_imports//:imports.bzl", "proto_library_with_info") - -proto_library( - name = "admob_proto", - srcs = [ - "admob_api.proto", - "admob_resources.proto", - ], - deps = [ - "//google/api:annotations_proto", - "//google/api:client_proto", - "//google/api:field_behavior_proto", - "//google/api:resource_proto", - "//google/cloud:common_resources_proto", - "//google/type:date_proto", - ], -) - -proto_library_with_info( - name = "admob_proto_with_info", - deps = [ - ":admob_proto", - ], -) - -############################################################################## -# Java -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "java_gapic_assembly_gradle_pkg", - "java_gapic_library", - "java_gapic_test", - "java_grpc_library", - "java_proto_library", -) - -java_proto_library( - name = "admob_java_proto", - deps = [":admob_proto"], -) - -java_grpc_library( - name = "admob_java_grpc", - srcs = [":admob_proto"], - deps = [":admob_java_proto"], -) - -java_gapic_library( - name = "admob_java_gapic", - srcs = [ - ":admob_proto_with_info", - ], - gapic_yaml = "admob_gapic.yaml", - grpc_service_config = "//google/ads/admob:admob_grpc_service_config.json", - test_deps = [ - ":admob_java_grpc", - ], - transport = "rest", - deps = [ - ":admob_java_proto", - ], -) - -java_gapic_test( - name = "admob_java_gapic_test_suite", - test_classes = [ - "com.google.ads.admob.v1.AdMobApiClientTest", - ], - runtime_deps = [":admob_java_gapic_test"], -) - -# Open Source Packages -java_gapic_assembly_gradle_pkg( - name = "google-ads-admob-v1-java", - transport = "grpc+rest", - deps = [ - ":admob_java_gapic", - ":admob_java_grpc", - ":admob_java_proto", - ":admob_proto", - ], -) - -############################################################################## -# Go -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "go_gapic_assembly_pkg", - "go_gapic_library", - "go_proto_library", - "go_test", -) - -go_proto_library( - name = "admob_go_proto", - compilers = ["@io_bazel_rules_go//proto:go_grpc"], - importpath = "google.golang.org/genproto/googleapis/ads/admob/v1", - protos = [":admob_proto"], - deps = [ - "//google/api:annotations_go_proto", - "//google/type:date_go_proto", - ], -) - -go_gapic_library( - name = "admob_go_gapic", - srcs = [":admob_proto_with_info"], - grpc_service_config = None, - importpath = "google.golang.org/google/ads/admob/v1;admob", - service_yaml = "//google/ads/admob:admob_v1.yaml", - transport = "grpc+rest", - deps = [ - ":admob_go_proto", - ], -) - -go_test( - name = "admob_go_gapic_test", - srcs = [":admob_go_gapic_srcjar_test"], - embed = [":admob_go_gapic"], - importpath = "google.golang.org/google/ads/admob/v1", -) - -# Open Source Packages -go_gapic_assembly_pkg( - name = "gapi-ads-admob-v1-go", - deps = [ - ":admob_go_gapic", - ":admob_go_gapic_srcjar-test.srcjar", - ":admob_go_proto", - ], -) - -############################################################################## -# Python -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "py_gapic_assembly_pkg", - "py_gapic_library", - "py_test", - "py_grpc_library", - "py_proto_library", -) - -py_proto_library( - name = "admob_py_proto", - deps = [":admob_proto"], -) - -py_grpc_library( - name = "admob_py_grpc", - srcs = [":admob_proto"], - deps = [":admob_py_proto"], -) - -py_gapic_library( - name = "admob_py_gapic", - srcs = [ - ":admob_proto_with_info", - ], -) - -py_test( - name = "admob_py_gapic_test", - srcs = [ - "admob_py_gapic_pytest.py", - "admob_py_gapic_test.py", - ], - legacy_create_init = False, - deps = [":admob_py_gapic"], -) - -# Open Source Packages -py_gapic_assembly_pkg( - name = "ads-admob-v1-py", - deps = [ - ":admob_py_gapic", - ":admob_py_grpc", - ":admob_py_proto", - ], -) - -############################################################################## -# PHP -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "php_gapic_assembly_pkg", - "php_gapic_library", - "php_grpc_library", - "php_proto_library", -) - -php_proto_library( - name = "admob_php_proto", - deps = [":admob_proto"], -) - -php_grpc_library( - name = "admob_php_grpc", - srcs = [":admob_proto"], - deps = [":admob_php_proto"], -) - -php_gapic_library( - name = "admob_php_gapic", - srcs = [":admob_proto"], - gapic_yaml = "admob_gapic.yaml", - grpc_service_config = None, - service_yaml = "//google/ads/admob:admob_v1.yaml", - deps = [ - ":admob_php_grpc", - ":admob_php_proto", - ], -) - -# Open Source Packages -php_gapic_assembly_pkg( - name = "google-ads-admob-v1-php", - deps = [ - ":admob_php_gapic", - ":admob_php_grpc", - ":admob_php_proto", - ], -) - -############################################################################## -# Node.js -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "nodejs_gapic_assembly_pkg", - "nodejs_gapic_library", -) - -nodejs_gapic_library( - name = "admob_nodejs_gapic", - src = ":admob_proto_with_info", - extra_protoc_parameters = ["metadata"], - grpc_service_config = None, - package = "google.ads.admob.v1", - service_yaml = "//google/ads/admob:admob_v1.yaml", - deps = [], -) - -nodejs_gapic_assembly_pkg( - name = "ads-admob-v1-nodejs", - deps = [ - ":admob_nodejs_gapic", - ":admob_proto", - ], -) - -############################################################################## -# Ruby -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "ruby_cloud_gapic_library", - "ruby_gapic_assembly_pkg", - "ruby_grpc_library", - "ruby_proto_library", -) - -ruby_proto_library( - name = "admob_ruby_proto", - deps = [":admob_proto"], -) - -ruby_grpc_library( - name = "admob_ruby_grpc", - srcs = [":admob_proto"], - deps = [":admob_ruby_proto"], -) - -ruby_cloud_gapic_library( - name = "admob_ruby_gapic", - srcs = [":admob_proto_with_info"], - extra_protoc_parameters = ["ruby-cloud-gem-name=google-cloud-admob-v1"], - grpc_service_config = None, - deps = [ - ":admob_ruby_grpc", - ":admob_ruby_proto", - ], -) - -# Open Source Packages -ruby_gapic_assembly_pkg( - name = "google-ads-admob-v1-ruby", - deps = [ - ":admob_ruby_gapic", - ":admob_ruby_grpc", - ":admob_ruby_proto", - ], -) - -############################################################################## -# C# -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "csharp_gapic_assembly_pkg", - "csharp_gapic_library", - "csharp_grpc_library", - "csharp_proto_library", -) - -csharp_proto_library( - name = "admob_csharp_proto", - deps = [":admob_proto"], -) - -csharp_grpc_library( - name = "admob_csharp_grpc", - srcs = [":admob_proto"], - deps = [":admob_csharp_proto"], -) - -csharp_gapic_library( - name = "admob_csharp_gapic", - srcs = [":admob_proto_with_info"], - common_resources_config = "@gax_dotnet//:Google.Api.Gax/ResourceNames/CommonResourcesConfig.json", - deps = [ - ":admob_csharp_grpc", - ":admob_csharp_proto", - ], -) - -# Open Source Packages -csharp_gapic_assembly_pkg( - name = "google-ads-admob-v1-csharp", - deps = [ - ":admob_csharp_gapic", - ":admob_csharp_grpc", - ":admob_csharp_proto", - ], -) - -############################################################################## -# C++ -############################################################################## -# Put your C++ rules here diff --git a/third_party/googleapis/google/ads/admob/v1/admob_api.proto b/third_party/googleapis/google/ads/admob/v1/admob_api.proto deleted file mode 100644 index 14a0fe2..0000000 --- a/third_party/googleapis/google/ads/admob/v1/admob_api.proto +++ /dev/null @@ -1,224 +0,0 @@ -// Copyright 2020 Google LLC -// -// 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. - -syntax = "proto3"; - -package google.ads.admob.v1; - -import "google/ads/admob/v1/admob_resources.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option go_package = "google.golang.org/genproto/googleapis/ads/admob/v1;admob"; -option java_outer_classname = "AdMobApiProto"; -option java_package = "com.google.ads.admob.v1"; - -// The AdMob API allows AdMob publishers programmatically get information about -// their AdMob account. -service AdMobApi { - option (google.api.default_host) = "admob.googleapis.com"; - option (google.api.oauth_scopes) = - "https://www.googleapis.com/auth/admob.report"; - - // Gets information about the specified AdMob publisher account. - rpc GetPublisherAccount(GetPublisherAccountRequest) - returns (PublisherAccount) { - option (google.api.http) = { - get: "/v1/{name=accounts/*}" - }; - option (google.api.method_signature) = "name"; - } - - // Lists the AdMob publisher account accessible with the client credential. - // Currently, all credentials have access to at most one AdMob account. - rpc ListPublisherAccounts(ListPublisherAccountsRequest) - returns (ListPublisherAccountsResponse) { - option (google.api.http) = { - get: "/v1/accounts" - }; - } - - // Generates an AdMob Network report based on the provided report - // specification. - rpc GenerateNetworkReport(GenerateNetworkReportRequest) - returns (stream GenerateNetworkReportResponse) { - option (google.api.http) = { - post: "/v1/{parent=accounts/*}/networkReport:generate" - body: "*" - }; - } - - // Generates an AdMob Mediation report based on the provided report - // specification. - rpc GenerateMediationReport(GenerateMediationReportRequest) - returns (stream GenerateMediationReportResponse) { - option (google.api.http) = { - post: "/v1/{parent=accounts/*}/mediationReport:generate" - body: "*" - }; - } -} - -// Request to retrieve the specified publisher account. -message GetPublisherAccountRequest { - // Resource name of the publisher account to retrieve. - // Example: accounts/pub-9876543210987654 - string name = 1; -} - -// Request to retrieve the AdMob publisher account accessible with the client -// credential. Currently all credentials have access to at most 1 account. -message ListPublisherAccountsRequest { - // Maximum number of accounts to return. - int32 page_size = 1; - - // 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. - string page_token = 2; -} - -// Response for the publisher account list request. -message ListPublisherAccountsResponse { - // Publisher that the client credentials can access. - repeated PublisherAccount account = 1; - - // If not empty, indicates that there might be more accounts for the request; - // you must pass this value in a new `ListPublisherAccountsRequest`. - string next_page_token = 2; -} - -// Request to generate an AdMob Mediation report. -message GenerateMediationReportRequest { - // Resource name of the account to generate the report for. - // Example: accounts/pub-9876543210987654 - string parent = 1; - - // Network report specification. - MediationReportSpec report_spec = 2; -} - -// 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} -// }] -message GenerateMediationReportResponse { - // Each stream response message contains one type of payload. - oneof payload { - // Report generation settings that describes the report contents, such as - // the report date range and localization settings. - ReportHeader header = 1; - - // Actual report data. - ReportRow row = 2; - - // Additional information about the generated report, such as warnings about - // the data. - ReportFooter footer = 3; - } -} - -// Request to generate an AdMob Network report. -message GenerateNetworkReportRequest { - // Resource name of the account to generate the report for. - // Example: accounts/pub-9876543210987654 - string parent = 1; - - // Network report specification. - NetworkReportSpec report_spec = 2; -} - -// 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} -// }] -message GenerateNetworkReportResponse { - // Each stream response message contains one type of payload. - oneof payload { - // Report generation settings that describes the report contents, such as - // the report date range and localization settings. - ReportHeader header = 1; - - // Actual report data. - ReportRow row = 2; - - // Additional information about the generated report, such as warnings about - // the data. - ReportFooter footer = 3; - } -} diff --git a/third_party/googleapis/google/ads/admob/v1/admob_gapic.yaml b/third_party/googleapis/google/ads/admob/v1/admob_gapic.yaml deleted file mode 100644 index 727dc59..0000000 --- a/third_party/googleapis/google/ads/admob/v1/admob_gapic.yaml +++ /dev/null @@ -1,150 +0,0 @@ -type: com.google.api.codegen.ConfigProto -config_schema_version: 1.0.0 -# The settings of generated code in a specific language. -language_settings: - java: - package_name: com.google.ads.admob.v1 - python: - package_name: google.ads.admob_v1.gapic - go: - package_name: google.golang.org/api/admob/v1 - csharp: - package_name: Google.Ads.Admob.V1 - ruby: - package_name: Google::Ads::Admob::V1 - php: - package_name: Google\Ads\Admob\V1 - nodejs: - package_name: admob.v1 -# A list of API interface configurations. -interfaces: -# The fully qualified name of the API interface. -- name: google.ads.admob.v1.AdMobApi - # A list of resource collection configurations. - # Consists of a name_pattern and an entity_name. - # The name_pattern is a pattern to describe the names of the resources of this - # collection, using the platform's conventions for URI patterns. A generator - # may use this to generate methods to compose and decompose such names. The - # pattern should use named placeholders as in `shelves/{shelf}/books/{book}`; - # those will be taken as hints for the parameter names of the generated - # methods. If empty, no name methods are generated. - # The entity_name is the name to be used as a basis for generated methods and - # classes. - collections: - - name_pattern: accounts/{account} - entity_name: account - # Definition for retryable codes. - retry_codes_def: - - name: idempotent - retry_codes: - - DEADLINE_EXCEEDED - - UNAVAILABLE - - name: non_idempotent - retry_codes: [] - # Definition for retry/backoff parameters. - retry_params_def: - - name: default - initial_retry_delay_millis: 100 - retry_delay_multiplier: 1.3 - max_retry_delay_millis: 60000 - initial_rpc_timeout_millis: 20000 - rpc_timeout_multiplier: 1 - max_rpc_timeout_millis: 20000 - total_timeout_millis: 600000 - # A list of method configurations. - # Common properties: - # - # name - The simple name of the method. - # - # flattening - Specifies the configuration for parameter flattening. - # Describes the parameter groups for which a generator should produce method - # overloads which allow a client to directly pass request message fields as - # method parameters. This information may or may not be used, depending on - # the target language. - # Consists of groups, which each represent a list of parameters to be - # flattened. Each parameter listed must be a field of the request message. - # - # required_fields - Fields that are always required for a request to be - # valid. - # - # page_streaming - Specifies the configuration for paging. - # Describes information for generating a method which transforms a paging - # list RPC into a stream of resources. - # Consists of a request and a response. - # The request specifies request information of the list method. It defines - # which fields match the paging pattern in the request. The request consists - # of a page_size_field and a token_field. The page_size_field is the name of - # the optional field specifying the maximum number of elements to be - # returned in the response. The token_field is the name of the field in the - # request containing the page token. - # The response specifies response information of the list method. It defines - # which fields match the paging pattern in the response. The response - # consists of a token_field and a resources_field. The token_field is the - # name of the field in the response containing the next page token. The - # resources_field is the name of the field in the response containing the - # list of resources belonging to the page. - # - # retry_codes_name - Specifies the configuration for retryable codes. The - # name must be defined in interfaces.retry_codes_def. - # - # retry_params_name - Specifies the configuration for retry/backoff - # parameters. The name must be defined in interfaces.retry_params_def. - # - # field_name_patterns - Maps the field name of the request type to - # entity_name of interfaces.collections. - # Specifies the string pattern that the field must follow. - # - # timeout_millis - Specifies the default timeout for a non-retrying call. If - # the call is retrying, refer to retry_params_name instead. - methods: - - name: GetPublisherAccount - flattening: - groups: - - parameters: - - name - required_fields: - - name - retry_codes_name: idempotent - retry_params_name: default - field_name_patterns: - name: account - timeout_millis: 60000 - - name: ListPublisherAccounts - page_streaming: - request: - page_size_field: page_size - token_field: page_token - response: - token_field: next_page_token - resources_field: account - retry_codes_name: idempotent - retry_params_name: default - timeout_millis: 60000 - - name: GenerateNetworkReport - flattening: - groups: - - parameters: - - parent - - report_spec - required_fields: - - parent - - report_spec - retry_codes_name: non_idempotent - retry_params_name: default - field_name_patterns: - parent: account - timeout_millis: 60000 - - name: GenerateMediationReport - flattening: - groups: - - parameters: - - parent - - report_spec - required_fields: - - parent - - report_spec - retry_codes_name: non_idempotent - retry_params_name: default - field_name_patterns: - parent: account - timeout_millis: 60000 diff --git a/third_party/googleapis/google/ads/admob/v1/admob_resources.proto b/third_party/googleapis/google/ads/admob/v1/admob_resources.proto deleted file mode 100644 index d9cc428..0000000 --- a/third_party/googleapis/google/ads/admob/v1/admob_resources.proto +++ /dev/null @@ -1,610 +0,0 @@ -// Copyright 2020 Google LLC -// -// 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. - -syntax = "proto3"; - -package google.ads.admob.v1; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/type/date.proto"; - -option go_package = "google.golang.org/genproto/googleapis/ads/admob/v1;admob"; -option java_outer_classname = "AdMobResourcesProto"; -option java_package = "com.google.ads.admob.v1"; - -// The sorting order. -enum SortOrder { - // Default value for an unset field. Do not use. - SORT_ORDER_UNSPECIFIED = 0; - - // Sort dimension value or metric value in ascending order. - ASCENDING = 1; - - // Sort dimension value or metric value in descending order. - DESCENDING = 2; -} - -// A publisher account contains information relevant to the use of this API, -// such as the time zone used for the reports. -message PublisherAccount { - option (google.api.resource) = { - type: "admob.googleapis.com/PublisherAccount" - pattern: "accounts/{publisher}" - }; - - // Resource name of this account. - // Format is accounts/{publisher_id}. - string name = 1; - - // The unique ID by which this publisher account can be identified - // in the API requests (for example, pub-1234567890). - string publisher_id = 2; - - // 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". - string reporting_time_zone = 3; - - // 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. - string currency_code = 4; -} - -// 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; -message NetworkReportSpec { - // Describes which report rows to match based on their dimension values. - message DimensionFilter { - // Filter operator to be applied. - oneof operator { - // Matches a row if its value for the specified dimension is in one of the - // values specified in this condition. - StringList matches_any = 2; - } - - // Applies the filter criterion to the specified dimension. - Dimension dimension = 1; - } - - // Sorting direction to be applied on a dimension or a metric. - message SortCondition { - // Identifies which values to sort on. - oneof sort_on { - // Sort by the specified dimension. - Dimension dimension = 1; - - // Sort by the specified metric. - Metric metric = 2; - } - - // Sorting order of the dimension or metric. - SortOrder order = 3; - } - - // The dimensions of the network report. Dimensions are data attributes to - // break down or refine the quantitative measurements (metrics) by certain - // attributes, such as the ad format or the platform an ad was viewed on. - enum Dimension { - // Default value for an unset field. Do not use. - DIMENSION_UNSPECIFIED = 0; - - // A date in the YYYY-MM-DD format (for example, "2018-12-21"). Requests can - // specify at most one time dimension. - DATE = 1; - - // A month in the YYYY-MM format (for example, "2018-12"). Requests can - // specify at most one time dimension. - MONTH = 2; - - // The date of the first day of a week in the YYYY-MM-DD format - // (for example, "2018-12-21"). Requests can specify at most one time - // dimension. - WEEK = 3; - - // The unique ID of the ad unit (for example, "ca-app-pub-1234/1234"). - // If AD_UNIT dimension is specified, then APP is included automatically. - AD_UNIT = 4; - - // The unique ID of the mobile application (for example, - // "ca-app-pub-1234~1234"). - APP = 5; - - // Type of the ad (for example, "text" or "image"), an ad delivery - // dimension. - // - // **Warning:** The dimension is incompatible with - // [AD_REQUESTS](#Metric.ENUM_VALUES.AD_REQUESTS), - // [MATCH_RATE](#Metric.ENUM_VALUES.MATCH_RATE) and - // [IMPRESSION_RPM](#Metric.ENUM_VALUES.IMPRESSION_RPM) metrics. - AD_TYPE = 6; - - // CLDR country code of the place where the ad views/clicks occur (for - // example, "US" or "FR"). This is a geography dimension. - COUNTRY = 7; - - // Format of the ad unit (for example, "banner", "native"), an ad delivery - // dimension. - FORMAT = 8; - - // Mobile OS platform of the app (for example, "Android" or "iOS"). - PLATFORM = 9; - } - - // The metrics of the network report. Metrics are quantitative measurements - // indicating how the publisher business is performing. They are aggregated - // from the individual ad events and grouped by the report dimensions. The - // metric value is either integer, or decimal (without rounding). - enum Metric { - // Default value for an unset field. Do not use. - METRIC_UNSPECIFIED = 0; - - // The number of ad requests. The value is an integer. - // - // **Warning:** The metric is incompatible with - // [AD_TYPE](#Dimension.ENUM_VALUES.AD_TYPE) dimension. - AD_REQUESTS = 1; - - // The number of times a user clicks an ad. The value is an integer. - CLICKS = 2; - - // The estimated earnings of the AdMob publisher. The currency unit (USD, - // EUR, or other) of the earning metrics are determined by the localization - // setting for currency. The amount is in micros. For example, $6.50 would - // be represented as 6500000. - ESTIMATED_EARNINGS = 3; - - // The total number of ads shown to users. The value is an integer. - IMPRESSIONS = 4; - - // The ratio of clicks over impressions. The value is a double precision - // (approximate) decimal value. - IMPRESSION_CTR = 5; - - // The estimated earnings per thousand ad impressions. The value is in - // micros. For example, $1.03 would be represented as 1030000. - // - // **Warning:** The metric is incompatible with - // [AD_TYPE](#Dimension.ENUM_VALUES.AD_TYPE) dimension. - IMPRESSION_RPM = 6; - - // The number of times ads are returned in response to a request. The value - // is an integer. - MATCHED_REQUESTS = 7; - - // The ratio of matched ad requests over the total ad requests. The value is - // a double precision (approximate) decimal value. - // - // **Warning:** The metric is incompatible with - // [AD_TYPE](#Dimension.ENUM_VALUES.AD_TYPE) dimension. - MATCH_RATE = 8; - - // The ratio of ads that are displayed over ads that are returned, defined - // as impressions / matched requests. The value is a double precision - // (approximate) decimal value. - SHOW_RATE = 9; - } - - // The date range for which the report is generated. - DateRange date_range = 1; - - // 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. - repeated Dimension dimensions = 2; - - // List of metrics of the report. A report must specify at least one metric. - repeated Metric metrics = 3; - - // Describes which report rows to match based on their dimension values. - repeated DimensionFilter dimension_filters = 4; - - // 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. - repeated SortCondition sort_conditions = 5; - - // Localization settings of the report. - LocalizationSettings localization_settings = 6; - - // 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. Any other values are treated as 100000. - int32 max_report_rows = 7; - - // 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. - string time_zone = 8; -} - -// 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; -message MediationReportSpec { - // Describes which report rows to match based on their dimension values. - message DimensionFilter { - // Filter operator to be applied. - oneof operator { - // Matches a row if its value for the specified dimension is in one of the - // values specified in this condition. - StringList matches_any = 2; - } - - // Applies the filter criterion to the specified dimension. - Dimension dimension = 1; - } - - // Sorting direction to be applied on a dimension or a metric. - message SortCondition { - // Identifies which values to sort on. - oneof sort_on { - // Sort by the specified dimension. - Dimension dimension = 1; - - // Sort by the specified metric. - Metric metric = 2; - } - - // Sorting order of the dimension or metric. - SortOrder order = 3; - } - - // The dimensions of the mediation report. Dimensions are data attributes to - // break down or refine the quantitative measurements (metrics) by certain - // attributes, such as the ad format or the platform an ad was viewed on. - enum Dimension { - // Default value for an unset field. Do not use. - DIMENSION_UNSPECIFIED = 0; - - // A date in the YYYY-MM-DD format (for example, "2018-12-21"). Requests can - // specify at most one time dimension. - DATE = 1; - - // A month in the YYYY-MM format (for example, "2018-12"). Requests can - // specify at most one time dimension. - MONTH = 2; - - // The date of the first day of a week in the YYYY-MM-DD format - // (for example, "2018-12-21"). Requests can specify at most one time - // dimension. - WEEK = 3; - - // The [unique ID of the ad source](/admob/api/v1/ad_sources) (for example, - // "5450213213286189855" and "AdMob Network" as label value). - AD_SOURCE = 4; - - // The unique ID of the ad source instance (for example, - // "ca-app-pub-1234#5678" and "AdMob (default)" as label value). - AD_SOURCE_INSTANCE = 5; - - // The unique ID of the ad unit (for example, "ca-app-pub-1234/8790"). - // If AD_UNIT dimension is specified, then APP is included automatically. - AD_UNIT = 6; - - // The unique ID of the mobile application (for example, - // "ca-app-pub-1234~1234"). - APP = 7; - - // The unique ID of the mediation group (for example, - // "ca-app-pub-1234:mg:1234" and "AdMob (default)" as label value). - MEDIATION_GROUP = 11; - - // CLDR country code of the place where the ad views/clicks occur (for - // example, "US" or "FR"). This is a geography dimension. - COUNTRY = 8; - - // Format of the ad unit (for example, "banner", "native"), an ad delivery - // dimension. - FORMAT = 9; - - // Mobile OS platform of the app (for example, "Android" or "iOS"). - PLATFORM = 10; - } - - // The metrics of the mediation report. Metrics are quantitative measurements - // indicating how the publisher business is performing. They are aggregated - // from the individual ad events and grouped by the report dimensions. The - // metric value is either integer, or decimal (without rounding). - enum Metric { - // Default value for an unset field. Do not use. - METRIC_UNSPECIFIED = 0; - - // The number of requests. The value is an integer. - AD_REQUESTS = 1; - - // The number of times a user clicks an ad. The value is an integer. - CLICKS = 2; - - // The estimated earnings of the AdMob publisher. The currency unit (USD, - // EUR, or other) of the earning metrics are determined by the localization - // setting for currency. The amount is in micros. For example, $6.50 would - // be represented as 6500000. - // - // Estimated earnings per mediation group and per ad source instance level - // is supported dating back to October 20, 2019. Third-party estimated - // earnings will show 0 for dates prior to October 20, 2019. - ESTIMATED_EARNINGS = 3; - - // The total number of ads shown to users. The value is an integer. - IMPRESSIONS = 4; - - // The ratio of clicks over impressions. The value is a double precision - // (approximate) decimal value. - IMPRESSION_CTR = 5; - - // The number of times ads are returned in response to a request. The value - // is an integer. - MATCHED_REQUESTS = 6; - - // The ratio of matched ad requests over the total ad requests. The value is - // a double precision (approximate) decimal value. - MATCH_RATE = 7; - - // The third-party ad network's estimated average eCPM. The currency unit - // (USD, EUR, or other) of the earning metrics are determined by the - // localization setting for currency. The amount is in micros. For example, - // $2.30 would be represented as 2300000. - // - // The estimated average eCPM per mediation group and per ad source instance - // level is supported dating back to October 20, 2019. Third-party estimated - // average eCPM will show 0 for dates prior to October 20, 2019. - OBSERVED_ECPM = 8; - } - - // The date range for which the report is generated. - DateRange date_range = 1; - - // 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. - repeated Dimension dimensions = 2; - - // List of metrics of the report. A report must specify at least one metric. - repeated Metric metrics = 3; - - // Describes which report rows to match based on their dimension values. - repeated DimensionFilter dimension_filters = 4; - - // 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. - repeated SortCondition sort_conditions = 5; - - // Localization settings of the report. - LocalizationSettings localization_settings = 6; - - // 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. Any other values are treated as 100000. - int32 max_report_rows = 7; - - // 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. - string time_zone = 8; -} - -// A row of the returning report. -message ReportRow { - // Representation of a dimension value. - message DimensionValue { - // Dimension value in the format specified in the report's spec Dimension - // enum. - string value = 1; - - // The localized string representation of the value. If unspecified, the - // display label should be derived from the value. - string display_label = 2; - } - - // Representation of a metric value. - message MetricValue { - // Metric value in the format specified in the report's spec Metric enum - // name. - oneof value { - // Metric integer value. - int64 integer_value = 1; - - // Double precision (approximate) decimal values. Rates are from 0 to 1. - double double_value = 2; - - // 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. - int64 micros_value = 3; - } - } - - // Map of dimension values in a row, with keys as enum name of the dimensions. - map<string, DimensionValue> dimension_values = 1; - - // 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. - map<string, MetricValue> metric_values = 2; -} - -// Warnings associated with generation of the report. -message ReportWarning { - // Warning type. - enum Type { - // Default value for an unset field. Do not use. - TYPE_UNSPECIFIED = 0; - - // Some data in this report is aggregated based on a time zone different - // from the requested time zone. This could happen if a local time-zone - // report has the start time before the last time this time zone changed. - // The description field will contain the date of the last time zone - // change. - DATA_BEFORE_ACCOUNT_TIMEZONE_CHANGE = 1; - - // There is an unusual delay in processing the source data for the - // requested date range. The report results might be less up to date than - // usual. AdMob is aware of the issue and is actively working to resolve - // it. - DATA_DELAYED = 2; - - // Warnings that are exposed without a specific type. Useful when new - // warning types are added but the API is not changed yet. - OTHER = 3; - - // The currency being requested is not the account currency. The earning - // metrics will be based on the requested currency, and thus not a good - // estimation of the final payment anymore, due to the currency rate - // fluctuation. - REPORT_CURRENCY_NOT_ACCOUNT_CURRENCY = 4; - } - - // Type of the warning. - Type type = 1; - - // Describes the details of the warning message, in English. - string description = 2; -} - -// Groups data helps to treat the generated report. Always sent as a first -// message in the stream response. -message ReportHeader { - // The date range for which the report is generated. This is identical to the - // range specified in the report request. - DateRange date_range = 1; - - // Localization settings of the report. This is identical to the settings - // in the report request. - LocalizationSettings localization_settings = 2; - - // The report time zone. The value is a time-zone ID as specified by the CLDR - // project, for example, "America/Los_Angeles". - string reporting_time_zone = 3; -} - -// Groups data available after report generation, for example, warnings and row -// counts. Always sent as the last message in the stream response. -message ReportFooter { - // Warnings associated with generation of the report. - repeated ReportWarning warnings = 1; - - // 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. - int64 matching_row_count = 2; -} - -// Specification of a single date range. Both dates are inclusive. -message DateRange { - // Start date of the date range, inclusive. Must be less than or equal to the - // end date. - google.type.Date start_date = 1; - - // End date of the date range, inclusive. Must be greater than or equal to the - // start date. - google.type.Date end_date = 2; -} - -// Localization settings for reports, such as currency and language. It affects -// how metrics are calculated. -message LocalizationSettings { - // 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. - string currency_code = 1; - - // 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. - string language_code = 2; -} - -// List of string values. -message StringList { - // The string values. - repeated string values = 1; -} |
