google-apis-realtimebidding_v1 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.yardopts +13 -0
- data/CHANGELOG.md +7 -0
- data/LICENSE.md +202 -0
- data/OVERVIEW.md +96 -0
- data/lib/google-apis-realtimebidding_v1.rb +15 -0
- data/lib/google/apis/realtimebidding_v1.rb +39 -0
- data/lib/google/apis/realtimebidding_v1/classes.rb +1849 -0
- data/lib/google/apis/realtimebidding_v1/gem_version.rb +28 -0
- data/lib/google/apis/realtimebidding_v1/representations.rb +783 -0
- data/lib/google/apis/realtimebidding_v1/service.rb +1079 -0
- metadata +76 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 79c40f1bbb70b0938f3d110a18010bd53903f3b53737b8a2047af2ae95d4a3e5
|
4
|
+
data.tar.gz: 7996370439c0a75e04c127854555f5cfa3f6730abe5057fa8fc3f35b01e215bb
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: eb58e4581b0e1b1eab2835d43d0c44d88e1970fb2a0aa7a381fe11399d5600d2b8dd7c5545743092c7ac6d82c9647b3e4c64227cdfba3350621b81420f43801d
|
7
|
+
data.tar.gz: 23e71d03801ef8fed1a006f7ac1ce0eaf0216ca39a567c0db72f7defe51ec97b4261bbc9e8f2474ec5ce75d90a492951c4f6852f9cdc0b3474a715e306e0a867
|
data/.yardopts
ADDED
@@ -0,0 +1,13 @@
|
|
1
|
+
--hide-void-return
|
2
|
+
--no-private
|
3
|
+
--verbose
|
4
|
+
--title=google-apis-realtimebidding_v1
|
5
|
+
--markup-provider=redcarpet
|
6
|
+
--markup=markdown
|
7
|
+
--main OVERVIEW.md
|
8
|
+
lib/google/apis/realtimebidding_v1/*.rb
|
9
|
+
lib/google/apis/realtimebidding_v1.rb
|
10
|
+
-
|
11
|
+
OVERVIEW.md
|
12
|
+
CHANGELOG.md
|
13
|
+
LICENSE.md
|
data/CHANGELOG.md
ADDED
data/LICENSE.md
ADDED
@@ -0,0 +1,202 @@
|
|
1
|
+
|
2
|
+
Apache License
|
3
|
+
Version 2.0, January 2004
|
4
|
+
http://www.apache.org/licenses/
|
5
|
+
|
6
|
+
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
7
|
+
|
8
|
+
1. Definitions.
|
9
|
+
|
10
|
+
"License" shall mean the terms and conditions for use, reproduction,
|
11
|
+
and distribution as defined by Sections 1 through 9 of this document.
|
12
|
+
|
13
|
+
"Licensor" shall mean the copyright owner or entity authorized by
|
14
|
+
the copyright owner that is granting the License.
|
15
|
+
|
16
|
+
"Legal Entity" shall mean the union of the acting entity and all
|
17
|
+
other entities that control, are controlled by, or are under common
|
18
|
+
control with that entity. For the purposes of this definition,
|
19
|
+
"control" means (i) the power, direct or indirect, to cause the
|
20
|
+
direction or management of such entity, whether by contract or
|
21
|
+
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
22
|
+
outstanding shares, or (iii) beneficial ownership of such entity.
|
23
|
+
|
24
|
+
"You" (or "Your") shall mean an individual or Legal Entity
|
25
|
+
exercising permissions granted by this License.
|
26
|
+
|
27
|
+
"Source" form shall mean the preferred form for making modifications,
|
28
|
+
including but not limited to software source code, documentation
|
29
|
+
source, and configuration files.
|
30
|
+
|
31
|
+
"Object" form shall mean any form resulting from mechanical
|
32
|
+
transformation or translation of a Source form, including but
|
33
|
+
not limited to compiled object code, generated documentation,
|
34
|
+
and conversions to other media types.
|
35
|
+
|
36
|
+
"Work" shall mean the work of authorship, whether in Source or
|
37
|
+
Object form, made available under the License, as indicated by a
|
38
|
+
copyright notice that is included in or attached to the work
|
39
|
+
(an example is provided in the Appendix below).
|
40
|
+
|
41
|
+
"Derivative Works" shall mean any work, whether in Source or Object
|
42
|
+
form, that is based on (or derived from) the Work and for which the
|
43
|
+
editorial revisions, annotations, elaborations, or other modifications
|
44
|
+
represent, as a whole, an original work of authorship. For the purposes
|
45
|
+
of this License, Derivative Works shall not include works that remain
|
46
|
+
separable from, or merely link (or bind by name) to the interfaces of,
|
47
|
+
the Work and Derivative Works thereof.
|
48
|
+
|
49
|
+
"Contribution" shall mean any work of authorship, including
|
50
|
+
the original version of the Work and any modifications or additions
|
51
|
+
to that Work or Derivative Works thereof, that is intentionally
|
52
|
+
submitted to Licensor for inclusion in the Work by the copyright owner
|
53
|
+
or by an individual or Legal Entity authorized to submit on behalf of
|
54
|
+
the copyright owner. For the purposes of this definition, "submitted"
|
55
|
+
means any form of electronic, verbal, or written communication sent
|
56
|
+
to the Licensor or its representatives, including but not limited to
|
57
|
+
communication on electronic mailing lists, source code control systems,
|
58
|
+
and issue tracking systems that are managed by, or on behalf of, the
|
59
|
+
Licensor for the purpose of discussing and improving the Work, but
|
60
|
+
excluding communication that is conspicuously marked or otherwise
|
61
|
+
designated in writing by the copyright owner as "Not a Contribution."
|
62
|
+
|
63
|
+
"Contributor" shall mean Licensor and any individual or Legal Entity
|
64
|
+
on behalf of whom a Contribution has been received by Licensor and
|
65
|
+
subsequently incorporated within the Work.
|
66
|
+
|
67
|
+
2. Grant of Copyright License. Subject to the terms and conditions of
|
68
|
+
this License, each Contributor hereby grants to You a perpetual,
|
69
|
+
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
70
|
+
copyright license to reproduce, prepare Derivative Works of,
|
71
|
+
publicly display, publicly perform, sublicense, and distribute the
|
72
|
+
Work and such Derivative Works in Source or Object form.
|
73
|
+
|
74
|
+
3. Grant of Patent License. Subject to the terms and conditions of
|
75
|
+
this License, each Contributor hereby grants to You a perpetual,
|
76
|
+
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
77
|
+
(except as stated in this section) patent license to make, have made,
|
78
|
+
use, offer to sell, sell, import, and otherwise transfer the Work,
|
79
|
+
where such license applies only to those patent claims licensable
|
80
|
+
by such Contributor that are necessarily infringed by their
|
81
|
+
Contribution(s) alone or by combination of their Contribution(s)
|
82
|
+
with the Work to which such Contribution(s) was submitted. If You
|
83
|
+
institute patent litigation against any entity (including a
|
84
|
+
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
85
|
+
or a Contribution incorporated within the Work constitutes direct
|
86
|
+
or contributory patent infringement, then any patent licenses
|
87
|
+
granted to You under this License for that Work shall terminate
|
88
|
+
as of the date such litigation is filed.
|
89
|
+
|
90
|
+
4. Redistribution. You may reproduce and distribute copies of the
|
91
|
+
Work or Derivative Works thereof in any medium, with or without
|
92
|
+
modifications, and in Source or Object form, provided that You
|
93
|
+
meet the following conditions:
|
94
|
+
|
95
|
+
(a) You must give any other recipients of the Work or
|
96
|
+
Derivative Works a copy of this License; and
|
97
|
+
|
98
|
+
(b) You must cause any modified files to carry prominent notices
|
99
|
+
stating that You changed the files; and
|
100
|
+
|
101
|
+
(c) You must retain, in the Source form of any Derivative Works
|
102
|
+
that You distribute, all copyright, patent, trademark, and
|
103
|
+
attribution notices from the Source form of the Work,
|
104
|
+
excluding those notices that do not pertain to any part of
|
105
|
+
the Derivative Works; and
|
106
|
+
|
107
|
+
(d) If the Work includes a "NOTICE" text file as part of its
|
108
|
+
distribution, then any Derivative Works that You distribute must
|
109
|
+
include a readable copy of the attribution notices contained
|
110
|
+
within such NOTICE file, excluding those notices that do not
|
111
|
+
pertain to any part of the Derivative Works, in at least one
|
112
|
+
of the following places: within a NOTICE text file distributed
|
113
|
+
as part of the Derivative Works; within the Source form or
|
114
|
+
documentation, if provided along with the Derivative Works; or,
|
115
|
+
within a display generated by the Derivative Works, if and
|
116
|
+
wherever such third-party notices normally appear. The contents
|
117
|
+
of the NOTICE file are for informational purposes only and
|
118
|
+
do not modify the License. You may add Your own attribution
|
119
|
+
notices within Derivative Works that You distribute, alongside
|
120
|
+
or as an addendum to the NOTICE text from the Work, provided
|
121
|
+
that such additional attribution notices cannot be construed
|
122
|
+
as modifying the License.
|
123
|
+
|
124
|
+
You may add Your own copyright statement to Your modifications and
|
125
|
+
may provide additional or different license terms and conditions
|
126
|
+
for use, reproduction, or distribution of Your modifications, or
|
127
|
+
for any such Derivative Works as a whole, provided Your use,
|
128
|
+
reproduction, and distribution of the Work otherwise complies with
|
129
|
+
the conditions stated in this License.
|
130
|
+
|
131
|
+
5. Submission of Contributions. Unless You explicitly state otherwise,
|
132
|
+
any Contribution intentionally submitted for inclusion in the Work
|
133
|
+
by You to the Licensor shall be under the terms and conditions of
|
134
|
+
this License, without any additional terms or conditions.
|
135
|
+
Notwithstanding the above, nothing herein shall supersede or modify
|
136
|
+
the terms of any separate license agreement you may have executed
|
137
|
+
with Licensor regarding such Contributions.
|
138
|
+
|
139
|
+
6. Trademarks. This License does not grant permission to use the trade
|
140
|
+
names, trademarks, service marks, or product names of the Licensor,
|
141
|
+
except as required for reasonable and customary use in describing the
|
142
|
+
origin of the Work and reproducing the content of the NOTICE file.
|
143
|
+
|
144
|
+
7. Disclaimer of Warranty. Unless required by applicable law or
|
145
|
+
agreed to in writing, Licensor provides the Work (and each
|
146
|
+
Contributor provides its Contributions) on an "AS IS" BASIS,
|
147
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
148
|
+
implied, including, without limitation, any warranties or conditions
|
149
|
+
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
150
|
+
PARTICULAR PURPOSE. You are solely responsible for determining the
|
151
|
+
appropriateness of using or redistributing the Work and assume any
|
152
|
+
risks associated with Your exercise of permissions under this License.
|
153
|
+
|
154
|
+
8. Limitation of Liability. In no event and under no legal theory,
|
155
|
+
whether in tort (including negligence), contract, or otherwise,
|
156
|
+
unless required by applicable law (such as deliberate and grossly
|
157
|
+
negligent acts) or agreed to in writing, shall any Contributor be
|
158
|
+
liable to You for damages, including any direct, indirect, special,
|
159
|
+
incidental, or consequential damages of any character arising as a
|
160
|
+
result of this License or out of the use or inability to use the
|
161
|
+
Work (including but not limited to damages for loss of goodwill,
|
162
|
+
work stoppage, computer failure or malfunction, or any and all
|
163
|
+
other commercial damages or losses), even if such Contributor
|
164
|
+
has been advised of the possibility of such damages.
|
165
|
+
|
166
|
+
9. Accepting Warranty or Additional Liability. While redistributing
|
167
|
+
the Work or Derivative Works thereof, You may choose to offer,
|
168
|
+
and charge a fee for, acceptance of support, warranty, indemnity,
|
169
|
+
or other liability obligations and/or rights consistent with this
|
170
|
+
License. However, in accepting such obligations, You may act only
|
171
|
+
on Your own behalf and on Your sole responsibility, not on behalf
|
172
|
+
of any other Contributor, and only if You agree to indemnify,
|
173
|
+
defend, and hold each Contributor harmless for any liability
|
174
|
+
incurred by, or claims asserted against, such Contributor by reason
|
175
|
+
of your accepting any such warranty or additional liability.
|
176
|
+
|
177
|
+
END OF TERMS AND CONDITIONS
|
178
|
+
|
179
|
+
APPENDIX: How to apply the Apache License to your work.
|
180
|
+
|
181
|
+
To apply the Apache License to your work, attach the following
|
182
|
+
boilerplate notice, with the fields enclosed by brackets "[]"
|
183
|
+
replaced with your own identifying information. (Don't include
|
184
|
+
the brackets!) The text should be enclosed in the appropriate
|
185
|
+
comment syntax for the file format. We also recommend that a
|
186
|
+
file or class name and description of purpose be included on the
|
187
|
+
same "printed page" as the copyright notice for easier
|
188
|
+
identification within third-party archives.
|
189
|
+
|
190
|
+
Copyright [yyyy] [name of copyright owner]
|
191
|
+
|
192
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
193
|
+
you may not use this file except in compliance with the License.
|
194
|
+
You may obtain a copy of the License at
|
195
|
+
|
196
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
197
|
+
|
198
|
+
Unless required by applicable law or agreed to in writing, software
|
199
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
200
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
201
|
+
See the License for the specific language governing permissions and
|
202
|
+
limitations under the License.
|
data/OVERVIEW.md
ADDED
@@ -0,0 +1,96 @@
|
|
1
|
+
# Simple REST client for version V1 of the Real-time Bidding API
|
2
|
+
|
3
|
+
This is a simple client library for version V1 of the Real-time Bidding API. It provides:
|
4
|
+
|
5
|
+
* A client object that connects to the HTTP/JSON REST endpoint for the service.
|
6
|
+
* Ruby objects for data structures related to the service.
|
7
|
+
* Integration with the googleauth gem for authentication using OAuth, API keys, and service accounts.
|
8
|
+
* Control of retry, pagination, and timeouts.
|
9
|
+
|
10
|
+
Note that although this client library is supported and will continue to be updated to track changes to the service, it is otherwise considered complete and not under active development. Many Google services, especially Google Cloud Platform services, may provide a more modern client that is under more active development and improvement. See the section below titled *Which client should I use?* for more information.
|
11
|
+
|
12
|
+
## Getting started
|
13
|
+
|
14
|
+
### Before you begin
|
15
|
+
|
16
|
+
There are a few setup steps you need to complete before you can use this library:
|
17
|
+
|
18
|
+
1. If you don't already have a Google account, [sign up](https://www.google.com/accounts).
|
19
|
+
2. If you have never created a Google APIs Console project, read about [Managing Projects](https://cloud.google.com/resource-manager/docs/creating-managing-projects) and create a project in the [Google API Console](https://console.cloud.google.com/).
|
20
|
+
3. Most APIs need to be enabled for your project. [Enable it](https://console.cloud.google.com/apis/library/realtimebidding.googleapis.com) in the console.
|
21
|
+
|
22
|
+
### Installation
|
23
|
+
|
24
|
+
Add this line to your application's Gemfile:
|
25
|
+
|
26
|
+
```ruby
|
27
|
+
gem 'google-apis-realtimebidding_v1', '~> 0.1'
|
28
|
+
```
|
29
|
+
|
30
|
+
And then execute:
|
31
|
+
|
32
|
+
```
|
33
|
+
$ bundle
|
34
|
+
```
|
35
|
+
|
36
|
+
Or install it yourself as:
|
37
|
+
|
38
|
+
```
|
39
|
+
$ gem install google-apis-realtimebidding_v1
|
40
|
+
```
|
41
|
+
|
42
|
+
### Creating a client object
|
43
|
+
|
44
|
+
Once the gem is installed, you can load the client code and instantiate a client.
|
45
|
+
|
46
|
+
```ruby
|
47
|
+
# Load the client
|
48
|
+
require "google/apis/realtimebidding_v1"
|
49
|
+
|
50
|
+
# Create a client object
|
51
|
+
client = Google::Apis::RealtimebiddingV1::RealtimeBiddingService.new
|
52
|
+
|
53
|
+
# Authenticate calls
|
54
|
+
client.authentication = # ... use the googleauth gem to create credentials
|
55
|
+
```
|
56
|
+
|
57
|
+
See the class reference docs for information on the methods you can call from a client.
|
58
|
+
|
59
|
+
## Documentation
|
60
|
+
|
61
|
+
More detailed descriptions of the Google simple REST clients are available in two documents.
|
62
|
+
|
63
|
+
* The [Usage Guide](https://github.com/googleapis/google-api-ruby-client/blob/master/docs/usage-guide.md) discusses how to make API calls, how to use the provided data structures, and how to work the various features of the client library, including media upload and download, error handling, retries, pagination, and logging.
|
64
|
+
* The [Auth Guide](https://github.com/googleapis/google-api-ruby-client/blob/master/docs/auth-guide.md) discusses authentication in the client libraries, including API keys, OAuth 2.0, service accounts, and environment variables.
|
65
|
+
|
66
|
+
(Note: the above documents are written for the simple REST clients in general, and their examples may not reflect the Realtimebidding service in particular.)
|
67
|
+
|
68
|
+
For reference information on specific calls in the Real-time Bidding API, see the {Google::Apis::RealtimebiddingV1::RealtimeBiddingService class reference docs}.
|
69
|
+
|
70
|
+
## Which client should I use?
|
71
|
+
|
72
|
+
Google provides two types of Ruby API client libraries: **simple REST clients** and **modern clients**.
|
73
|
+
|
74
|
+
This library, `google-apis-realtimebidding_v1`, is a simple REST client. You can identify these clients by their gem names, which are always in the form `google-apis-<servicename>_<serviceversion>`. The simple REST clients connect to HTTP/JSON REST endpoints and are automatically generated from service discovery documents. They support most API functionality, but their class interfaces are sometimes awkward.
|
75
|
+
|
76
|
+
Modern clients are produced by a modern code generator, sometimes combined with hand-crafted functionality. Most modern clients connect to high-performance gRPC endpoints, although a few are backed by REST services. Modern clients are available for many Google services, especially Google Cloud Platform services, but do not yet support all the services covered by the simple clients.
|
77
|
+
|
78
|
+
Gem names for modern clients are often of the form `google-cloud-<service_name>`. (For example, [google-cloud-pubsub](https://rubygems.org/gems/google-cloud-pubsub).) Note that most modern clients also have corresponding "versioned" gems with names like `google-cloud-<service_name>-<version>`. (For example, [google-cloud-pubsub-v1](https://rubygems.org/gems/google-cloud-pubsub-v1).) The "versioned" gems can be used directly, but often provide lower-level interfaces. In most cases, the main gem is recommended.
|
79
|
+
|
80
|
+
**For most users, we recommend the modern client, if one is available.** Compared with simple clients, modern clients are generally much easier to use and more Ruby-like, support more advanced features such as streaming and long-running operations, and often provide much better performance. You may consider using a simple client instead, if a modern client is not yet available for the service you want to use, or if you are not able to use gRPC on your infrastructure.
|
81
|
+
|
82
|
+
The [product documentation](https://developers.google.com/authorized-buyers/apis/realtimebidding/reference/rest/) may provide guidance regarding the preferred client library to use.
|
83
|
+
|
84
|
+
## Supported Ruby versions
|
85
|
+
|
86
|
+
This library is supported on Ruby 2.5+.
|
87
|
+
|
88
|
+
Google provides official support for Ruby versions that are actively supported by Ruby Core -- that is, Ruby versions that are either in normal maintenance or in security maintenance, and not end of life. Currently, this means Ruby 2.5 and later. Older versions of Ruby _may_ still work, but are unsupported and not recommended. See https://www.ruby-lang.org/en/downloads/branches/ for details about the Ruby support schedule.
|
89
|
+
|
90
|
+
## License
|
91
|
+
|
92
|
+
This library is licensed under Apache 2.0. Full license text is available in the {file:LICENSE.md LICENSE}.
|
93
|
+
|
94
|
+
## Support
|
95
|
+
|
96
|
+
Please [report bugs at the project on Github](https://github.com/google/google-api-ruby-client/issues). Don't hesitate to [ask questions](http://stackoverflow.com/questions/tagged/google-api-ruby-client) about the client or APIs on [StackOverflow](http://stackoverflow.com).
|
@@ -0,0 +1,15 @@
|
|
1
|
+
# Copyright 2020 Google LLC
|
2
|
+
#
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
+
# you may not use this file except in compliance with the License.
|
5
|
+
# You may obtain a copy of the License at
|
6
|
+
#
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
8
|
+
#
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
+
# See the License for the specific language governing permissions and
|
13
|
+
# limitations under the License.
|
14
|
+
|
15
|
+
require "google/apis/realtimebidding_v1"
|
@@ -0,0 +1,39 @@
|
|
1
|
+
# Copyright 2020 Google LLC
|
2
|
+
#
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
+
# you may not use this file except in compliance with the License.
|
5
|
+
# You may obtain a copy of the License at
|
6
|
+
#
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
8
|
+
#
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
+
# See the License for the specific language governing permissions and
|
13
|
+
# limitations under the License.
|
14
|
+
|
15
|
+
require 'google/apis/realtimebidding_v1/service.rb'
|
16
|
+
require 'google/apis/realtimebidding_v1/classes.rb'
|
17
|
+
require 'google/apis/realtimebidding_v1/representations.rb'
|
18
|
+
require 'google/apis/realtimebidding_v1/gem_version.rb'
|
19
|
+
|
20
|
+
module Google
|
21
|
+
module Apis
|
22
|
+
# Real-time Bidding API
|
23
|
+
#
|
24
|
+
# Allows external bidders to manage their RTB integration with Google. This
|
25
|
+
# includes managing bidder endpoints, QPS quotas, configuring what ad inventory
|
26
|
+
# to receive via pretargeting, submitting creatives for verification, and
|
27
|
+
# accessing creative metadata such as approval status.
|
28
|
+
#
|
29
|
+
# @see https://developers.google.com/authorized-buyers/apis/realtimebidding/reference/rest/
|
30
|
+
module RealtimebiddingV1
|
31
|
+
# Version of the Real-time Bidding API this client connects to.
|
32
|
+
# This is NOT the gem version.
|
33
|
+
VERSION = 'V1'
|
34
|
+
|
35
|
+
# See, create, edit, and delete your Authorized Buyers and Open Bidding account entities
|
36
|
+
AUTH_REALTIME_BIDDING = 'https://www.googleapis.com/auth/realtime-bidding'
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
@@ -0,0 +1,1849 @@
|
|
1
|
+
# Copyright 2020 Google LLC
|
2
|
+
#
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
+
# you may not use this file except in compliance with the License.
|
5
|
+
# You may obtain a copy of the License at
|
6
|
+
#
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
8
|
+
#
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
+
# See the License for the specific language governing permissions and
|
13
|
+
# limitations under the License.
|
14
|
+
|
15
|
+
require 'date'
|
16
|
+
require 'google/apis/core/base_service'
|
17
|
+
require 'google/apis/core/json_representation'
|
18
|
+
require 'google/apis/core/hashable'
|
19
|
+
require 'google/apis/errors'
|
20
|
+
|
21
|
+
module Google
|
22
|
+
module Apis
|
23
|
+
module RealtimebiddingV1
|
24
|
+
|
25
|
+
# A request to activate a pretargeting configuration. Sets the configuration's
|
26
|
+
# state to ACTIVE.
|
27
|
+
class ActivatePretargetingConfigRequest
|
28
|
+
include Google::Apis::Core::Hashable
|
29
|
+
|
30
|
+
def initialize(**args)
|
31
|
+
update!(**args)
|
32
|
+
end
|
33
|
+
|
34
|
+
# Update properties of this object
|
35
|
+
def update!(**args)
|
36
|
+
end
|
37
|
+
end
|
38
|
+
|
39
|
+
# A request to start targeting the provided app IDs in a specific pretargeting
|
40
|
+
# configuration. The pretargeting configuration itself specifies how these apps
|
41
|
+
# are targeted. in PretargetingConfig.appTargeting.mobileAppTargeting.
|
42
|
+
class AddTargetedAppsRequest
|
43
|
+
include Google::Apis::Core::Hashable
|
44
|
+
|
45
|
+
# A list of app IDs to target in the pretargeting configuration. These values
|
46
|
+
# will be added to the list of targeted app IDs in PretargetingConfig.
|
47
|
+
# appTargeting.mobileAppTargeting.values.
|
48
|
+
# Corresponds to the JSON property `appIds`
|
49
|
+
# @return [Array<String>]
|
50
|
+
attr_accessor :app_ids
|
51
|
+
|
52
|
+
# Required. The targeting mode that should be applied to the list of app IDs. If
|
53
|
+
# there are existing targeted app IDs, must be equal to the existing
|
54
|
+
# PretargetingConfig.appTargeting.mobileAppTargeting.targetingMode or a 400 bad
|
55
|
+
# request error will be returned.
|
56
|
+
# Corresponds to the JSON property `targetingMode`
|
57
|
+
# @return [String]
|
58
|
+
attr_accessor :targeting_mode
|
59
|
+
|
60
|
+
def initialize(**args)
|
61
|
+
update!(**args)
|
62
|
+
end
|
63
|
+
|
64
|
+
# Update properties of this object
|
65
|
+
def update!(**args)
|
66
|
+
@app_ids = args[:app_ids] if args.key?(:app_ids)
|
67
|
+
@targeting_mode = args[:targeting_mode] if args.key?(:targeting_mode)
|
68
|
+
end
|
69
|
+
end
|
70
|
+
|
71
|
+
# A request to start targeting the provided publishers in a specific
|
72
|
+
# pretargeting configuration. The pretargeting configuration itself specifies
|
73
|
+
# how these publishers are targeted in PretargetingConfig.publisherTargeting.
|
74
|
+
class AddTargetedPublishersRequest
|
75
|
+
include Google::Apis::Core::Hashable
|
76
|
+
|
77
|
+
# A list of publisher IDs to target in the pretargeting configuration. These
|
78
|
+
# values will be added to the list of targeted publisher IDs in
|
79
|
+
# PretargetingConfig.publisherTargeting.values. Publishers are identified by
|
80
|
+
# their publisher ID from ads.txt / app-ads.txt. See https://iabtechlab.com/ads-
|
81
|
+
# txt/ and https://iabtechlab.com/app-ads-txt/ for more details.
|
82
|
+
# Corresponds to the JSON property `publisherIds`
|
83
|
+
# @return [Array<String>]
|
84
|
+
attr_accessor :publisher_ids
|
85
|
+
|
86
|
+
# Required. The targeting mode that should be applied to the list of publisher
|
87
|
+
# IDs. If are existing publisher IDs, must be equal to the existing
|
88
|
+
# PretargetingConfig.publisherTargeting.targetingMode or a 400 bad request error
|
89
|
+
# will be returned.
|
90
|
+
# Corresponds to the JSON property `targetingMode`
|
91
|
+
# @return [String]
|
92
|
+
attr_accessor :targeting_mode
|
93
|
+
|
94
|
+
def initialize(**args)
|
95
|
+
update!(**args)
|
96
|
+
end
|
97
|
+
|
98
|
+
# Update properties of this object
|
99
|
+
def update!(**args)
|
100
|
+
@publisher_ids = args[:publisher_ids] if args.key?(:publisher_ids)
|
101
|
+
@targeting_mode = args[:targeting_mode] if args.key?(:targeting_mode)
|
102
|
+
end
|
103
|
+
end
|
104
|
+
|
105
|
+
# A request to start targeting the provided sites in a specific pretargeting
|
106
|
+
# configuration. The pretargeting configuration itself specifies how these sites
|
107
|
+
# are targeted in PretargetingConfig.webTargeting.
|
108
|
+
class AddTargetedSitesRequest
|
109
|
+
include Google::Apis::Core::Hashable
|
110
|
+
|
111
|
+
# A list of site URLs to target in the pretargeting configuration. These values
|
112
|
+
# will be added to the list of targeted URLs in PretargetingConfig.webTargeting.
|
113
|
+
# values.
|
114
|
+
# Corresponds to the JSON property `sites`
|
115
|
+
# @return [Array<String>]
|
116
|
+
attr_accessor :sites
|
117
|
+
|
118
|
+
# Required. The targeting mode that should be applied to the list of site URLs.
|
119
|
+
# If there are existing targeted sites, must be equal to the existing
|
120
|
+
# PretargetingConfig.webTargeting.targetingMode or a 400 bad request error will
|
121
|
+
# be returned.
|
122
|
+
# Corresponds to the JSON property `targetingMode`
|
123
|
+
# @return [String]
|
124
|
+
attr_accessor :targeting_mode
|
125
|
+
|
126
|
+
def initialize(**args)
|
127
|
+
update!(**args)
|
128
|
+
end
|
129
|
+
|
130
|
+
# Update properties of this object
|
131
|
+
def update!(**args)
|
132
|
+
@sites = args[:sites] if args.key?(:sites)
|
133
|
+
@targeting_mode = args[:targeting_mode] if args.key?(:targeting_mode)
|
134
|
+
end
|
135
|
+
end
|
136
|
+
|
137
|
+
# Detected advertiser and brand information.
|
138
|
+
class AdvertiserAndBrand
|
139
|
+
include Google::Apis::Core::Hashable
|
140
|
+
|
141
|
+
# See https://storage.googleapis.com/adx-rtb-dictionaries/advertisers.txt for
|
142
|
+
# the list of possible values. Can be used to filter the response of the
|
143
|
+
# creatives.list method.
|
144
|
+
# Corresponds to the JSON property `advertiserId`
|
145
|
+
# @return [Fixnum]
|
146
|
+
attr_accessor :advertiser_id
|
147
|
+
|
148
|
+
# Advertiser name. Can be used to filter the response of the creatives.list
|
149
|
+
# method.
|
150
|
+
# Corresponds to the JSON property `advertiserName`
|
151
|
+
# @return [String]
|
152
|
+
attr_accessor :advertiser_name
|
153
|
+
|
154
|
+
# Detected brand ID or zero if no brand has been detected. See https://storage.
|
155
|
+
# googleapis.com/adx-rtb-dictionaries/brands.txt for the list of possible values.
|
156
|
+
# Can be used to filter the response of the creatives.list method.
|
157
|
+
# Corresponds to the JSON property `brandId`
|
158
|
+
# @return [Fixnum]
|
159
|
+
attr_accessor :brand_id
|
160
|
+
|
161
|
+
# Brand name. Can be used to filter the response of the creatives.list method.
|
162
|
+
# Corresponds to the JSON property `brandName`
|
163
|
+
# @return [String]
|
164
|
+
attr_accessor :brand_name
|
165
|
+
|
166
|
+
def initialize(**args)
|
167
|
+
update!(**args)
|
168
|
+
end
|
169
|
+
|
170
|
+
# Update properties of this object
|
171
|
+
def update!(**args)
|
172
|
+
@advertiser_id = args[:advertiser_id] if args.key?(:advertiser_id)
|
173
|
+
@advertiser_name = args[:advertiser_name] if args.key?(:advertiser_name)
|
174
|
+
@brand_id = args[:brand_id] if args.key?(:brand_id)
|
175
|
+
@brand_name = args[:brand_name] if args.key?(:brand_name)
|
176
|
+
end
|
177
|
+
end
|
178
|
+
|
179
|
+
# A subset of app inventory to target. Bid requests that match criteria in at
|
180
|
+
# least one of the specified dimensions will be sent.
|
181
|
+
class AppTargeting
|
182
|
+
include Google::Apis::Core::Hashable
|
183
|
+
|
184
|
+
# Generic targeting used for targeting dimensions that contain a list of
|
185
|
+
# included and excluded numeric IDs used in app, user list, geo, and vertical id
|
186
|
+
# targeting.
|
187
|
+
# Corresponds to the JSON property `mobileAppCategoryTargeting`
|
188
|
+
# @return [Google::Apis::RealtimebiddingV1::NumericTargetingDimension]
|
189
|
+
attr_accessor :mobile_app_category_targeting
|
190
|
+
|
191
|
+
# Generic targeting with string values used in app, website and publisher
|
192
|
+
# targeting.
|
193
|
+
# Corresponds to the JSON property `mobileAppTargeting`
|
194
|
+
# @return [Google::Apis::RealtimebiddingV1::StringTargetingDimension]
|
195
|
+
attr_accessor :mobile_app_targeting
|
196
|
+
|
197
|
+
def initialize(**args)
|
198
|
+
update!(**args)
|
199
|
+
end
|
200
|
+
|
201
|
+
# Update properties of this object
|
202
|
+
def update!(**args)
|
203
|
+
@mobile_app_category_targeting = args[:mobile_app_category_targeting] if args.key?(:mobile_app_category_targeting)
|
204
|
+
@mobile_app_targeting = args[:mobile_app_targeting] if args.key?(:mobile_app_targeting)
|
205
|
+
end
|
206
|
+
end
|
207
|
+
|
208
|
+
# A request to close a specified user list.
|
209
|
+
class CloseUserListRequest
|
210
|
+
include Google::Apis::Core::Hashable
|
211
|
+
|
212
|
+
def initialize(**args)
|
213
|
+
update!(**args)
|
214
|
+
end
|
215
|
+
|
216
|
+
# Update properties of this object
|
217
|
+
def update!(**args)
|
218
|
+
end
|
219
|
+
end
|
220
|
+
|
221
|
+
# A creative and its classification data.
|
222
|
+
class Creative
|
223
|
+
include Google::Apis::Core::Hashable
|
224
|
+
|
225
|
+
# Output only. ID of the buyer account that this creative is owned by. Can be
|
226
|
+
# used to filter the response of the creatives.list method with equality and
|
227
|
+
# inequality check.
|
228
|
+
# Corresponds to the JSON property `accountId`
|
229
|
+
# @return [Fixnum]
|
230
|
+
attr_accessor :account_id
|
231
|
+
|
232
|
+
# The link to AdChoices destination page. This is only supported for native ads.
|
233
|
+
# Corresponds to the JSON property `adChoicesDestinationUrl`
|
234
|
+
# @return [String]
|
235
|
+
attr_accessor :ad_choices_destination_url
|
236
|
+
|
237
|
+
# The name of the company being advertised in the creative. Can be used to
|
238
|
+
# filter the response of the creatives.list method.
|
239
|
+
# Corresponds to the JSON property `advertiserName`
|
240
|
+
# @return [String]
|
241
|
+
attr_accessor :advertiser_name
|
242
|
+
|
243
|
+
# The agency ID for this creative.
|
244
|
+
# Corresponds to the JSON property `agencyId`
|
245
|
+
# @return [Fixnum]
|
246
|
+
attr_accessor :agency_id
|
247
|
+
|
248
|
+
# Output only. The last update timestamp of the creative via API.
|
249
|
+
# Corresponds to the JSON property `apiUpdateTime`
|
250
|
+
# @return [String]
|
251
|
+
attr_accessor :api_update_time
|
252
|
+
|
253
|
+
# Output only. The format of this creative. Can be used to filter the response
|
254
|
+
# of the creatives.list method.
|
255
|
+
# Corresponds to the JSON property `creativeFormat`
|
256
|
+
# @return [String]
|
257
|
+
attr_accessor :creative_format
|
258
|
+
|
259
|
+
# Buyer-specific creative ID that references this creative in bid responses.
|
260
|
+
# This field is Ignored in update operations. Can be used to filter the response
|
261
|
+
# of the creatives.list method. The maximum length of the creative ID is 128
|
262
|
+
# bytes.
|
263
|
+
# Corresponds to the JSON property `creativeId`
|
264
|
+
# @return [String]
|
265
|
+
attr_accessor :creative_id
|
266
|
+
|
267
|
+
# Top level status and detected attributes of a creative.
|
268
|
+
# Corresponds to the JSON property `creativeServingDecision`
|
269
|
+
# @return [Google::Apis::RealtimebiddingV1::CreativeServingDecision]
|
270
|
+
attr_accessor :creative_serving_decision
|
271
|
+
|
272
|
+
# Output only. IDs of all of the deals with which this creative has been used in
|
273
|
+
# bidding. Can be used to filter the response of the creatives.list method.
|
274
|
+
# Corresponds to the JSON property `dealIds`
|
275
|
+
# @return [Array<String>]
|
276
|
+
attr_accessor :deal_ids
|
277
|
+
|
278
|
+
# All declared attributes for the ads that may be shown from this creative. Can
|
279
|
+
# be used to filter the response of the creatives.list method. If the `
|
280
|
+
# excluded_attribute` field of a [bid request](https://developers.google.com/
|
281
|
+
# authorized-buyers/rtb/downloads/realtime-bidding-proto") contains one of the
|
282
|
+
# attributes that were declared or detected for a given creative, and a bid is
|
283
|
+
# submitted with that creative, the bid will be filtered before the auction.
|
284
|
+
# Corresponds to the JSON property `declaredAttributes`
|
285
|
+
# @return [Array<String>]
|
286
|
+
attr_accessor :declared_attributes
|
287
|
+
|
288
|
+
# The set of declared destination URLs for the creative. Can be used to filter
|
289
|
+
# the response of the creatives.list method.
|
290
|
+
# Corresponds to the JSON property `declaredClickThroughUrls`
|
291
|
+
# @return [Array<String>]
|
292
|
+
attr_accessor :declared_click_through_urls
|
293
|
+
|
294
|
+
# All declared restricted categories for the ads that may be shown from this
|
295
|
+
# creative. Can be used to filter the response of the creatives.list method.
|
296
|
+
# Corresponds to the JSON property `declaredRestrictedCategories`
|
297
|
+
# @return [Array<String>]
|
298
|
+
attr_accessor :declared_restricted_categories
|
299
|
+
|
300
|
+
# IDs for the declared ad technology vendors that may be used by this creative.
|
301
|
+
# See https://storage.googleapis.com/adx-rtb-dictionaries/vendors.txt for
|
302
|
+
# possible values. Can be used to filter the response of the creatives.list
|
303
|
+
# method.
|
304
|
+
# Corresponds to the JSON property `declaredVendorIds`
|
305
|
+
# @return [Array<Fixnum>]
|
306
|
+
attr_accessor :declared_vendor_ids
|
307
|
+
|
308
|
+
# HTML content for a creative.
|
309
|
+
# Corresponds to the JSON property `html`
|
310
|
+
# @return [Google::Apis::RealtimebiddingV1::HtmlContent]
|
311
|
+
attr_accessor :html
|
312
|
+
|
313
|
+
# The set of URLs to be called to record an impression.
|
314
|
+
# Corresponds to the JSON property `impressionTrackingUrls`
|
315
|
+
# @return [Array<String>]
|
316
|
+
attr_accessor :impression_tracking_urls
|
317
|
+
|
318
|
+
# Output only. Name of the creative. Follows the pattern `buyers/`buyer`/
|
319
|
+
# creatives/`creative``, where ``buyer`` represents the account ID of the buyer
|
320
|
+
# who owns the creative, and ``creative`` is the buyer-specific creative ID that
|
321
|
+
# references this creative in the bid response.
|
322
|
+
# Corresponds to the JSON property `name`
|
323
|
+
# @return [String]
|
324
|
+
attr_accessor :name
|
325
|
+
|
326
|
+
# Native content for a creative.
|
327
|
+
# Corresponds to the JSON property `native`
|
328
|
+
# @return [Google::Apis::RealtimebiddingV1::NativeContent]
|
329
|
+
attr_accessor :native
|
330
|
+
|
331
|
+
# All restricted categories for the ads that may be shown from this creative.
|
332
|
+
# Corresponds to the JSON property `restrictedCategories`
|
333
|
+
# @return [Array<String>]
|
334
|
+
attr_accessor :restricted_categories
|
335
|
+
|
336
|
+
# Output only. The version of this creative. Version for a new creative is 1 and
|
337
|
+
# it increments during subsequent creative updates.
|
338
|
+
# Corresponds to the JSON property `version`
|
339
|
+
# @return [Fixnum]
|
340
|
+
attr_accessor :version
|
341
|
+
|
342
|
+
# Video content for a creative.
|
343
|
+
# Corresponds to the JSON property `video`
|
344
|
+
# @return [Google::Apis::RealtimebiddingV1::VideoContent]
|
345
|
+
attr_accessor :video
|
346
|
+
|
347
|
+
def initialize(**args)
|
348
|
+
update!(**args)
|
349
|
+
end
|
350
|
+
|
351
|
+
# Update properties of this object
|
352
|
+
def update!(**args)
|
353
|
+
@account_id = args[:account_id] if args.key?(:account_id)
|
354
|
+
@ad_choices_destination_url = args[:ad_choices_destination_url] if args.key?(:ad_choices_destination_url)
|
355
|
+
@advertiser_name = args[:advertiser_name] if args.key?(:advertiser_name)
|
356
|
+
@agency_id = args[:agency_id] if args.key?(:agency_id)
|
357
|
+
@api_update_time = args[:api_update_time] if args.key?(:api_update_time)
|
358
|
+
@creative_format = args[:creative_format] if args.key?(:creative_format)
|
359
|
+
@creative_id = args[:creative_id] if args.key?(:creative_id)
|
360
|
+
@creative_serving_decision = args[:creative_serving_decision] if args.key?(:creative_serving_decision)
|
361
|
+
@deal_ids = args[:deal_ids] if args.key?(:deal_ids)
|
362
|
+
@declared_attributes = args[:declared_attributes] if args.key?(:declared_attributes)
|
363
|
+
@declared_click_through_urls = args[:declared_click_through_urls] if args.key?(:declared_click_through_urls)
|
364
|
+
@declared_restricted_categories = args[:declared_restricted_categories] if args.key?(:declared_restricted_categories)
|
365
|
+
@declared_vendor_ids = args[:declared_vendor_ids] if args.key?(:declared_vendor_ids)
|
366
|
+
@html = args[:html] if args.key?(:html)
|
367
|
+
@impression_tracking_urls = args[:impression_tracking_urls] if args.key?(:impression_tracking_urls)
|
368
|
+
@name = args[:name] if args.key?(:name)
|
369
|
+
@native = args[:native] if args.key?(:native)
|
370
|
+
@restricted_categories = args[:restricted_categories] if args.key?(:restricted_categories)
|
371
|
+
@version = args[:version] if args.key?(:version)
|
372
|
+
@video = args[:video] if args.key?(:video)
|
373
|
+
end
|
374
|
+
end
|
375
|
+
|
376
|
+
# The dimensions of a creative. This applies to only HTML and Native creatives.
|
377
|
+
class CreativeDimensions
|
378
|
+
include Google::Apis::Core::Hashable
|
379
|
+
|
380
|
+
# The height of the creative in pixels.
|
381
|
+
# Corresponds to the JSON property `height`
|
382
|
+
# @return [Fixnum]
|
383
|
+
attr_accessor :height
|
384
|
+
|
385
|
+
# The width of the creative in pixels.
|
386
|
+
# Corresponds to the JSON property `width`
|
387
|
+
# @return [Fixnum]
|
388
|
+
attr_accessor :width
|
389
|
+
|
390
|
+
def initialize(**args)
|
391
|
+
update!(**args)
|
392
|
+
end
|
393
|
+
|
394
|
+
# Update properties of this object
|
395
|
+
def update!(**args)
|
396
|
+
@height = args[:height] if args.key?(:height)
|
397
|
+
@width = args[:width] if args.key?(:width)
|
398
|
+
end
|
399
|
+
end
|
400
|
+
|
401
|
+
# Top level status and detected attributes of a creative.
|
402
|
+
class CreativeServingDecision
|
403
|
+
include Google::Apis::Core::Hashable
|
404
|
+
|
405
|
+
# Policy compliance of the creative for a transaction type or a region.
|
406
|
+
# Corresponds to the JSON property `chinaPolicyCompliance`
|
407
|
+
# @return [Google::Apis::RealtimebiddingV1::PolicyCompliance]
|
408
|
+
attr_accessor :china_policy_compliance
|
409
|
+
|
410
|
+
# Policy compliance of the creative for a transaction type or a region.
|
411
|
+
# Corresponds to the JSON property `dealsPolicyCompliance`
|
412
|
+
# @return [Google::Apis::RealtimebiddingV1::PolicyCompliance]
|
413
|
+
attr_accessor :deals_policy_compliance
|
414
|
+
|
415
|
+
# Detected advertisers and brands.
|
416
|
+
# Corresponds to the JSON property `detectedAdvertisers`
|
417
|
+
# @return [Array<Google::Apis::RealtimebiddingV1::AdvertiserAndBrand>]
|
418
|
+
attr_accessor :detected_advertisers
|
419
|
+
|
420
|
+
# Publisher-excludable attributes that were detected for this creative. Can be
|
421
|
+
# used to filter the response of the creatives.list method. If the `
|
422
|
+
# excluded_attribute` field of a [bid request](https://developers.google.com/
|
423
|
+
# authorized-buyers/rtb/downloads/realtime-bidding-proto) contains one of the
|
424
|
+
# attributes that were declared or detected for a given creative, and a bid is
|
425
|
+
# submitted with that creative, the bid will be filtered before the auction.
|
426
|
+
# Corresponds to the JSON property `detectedAttributes`
|
427
|
+
# @return [Array<String>]
|
428
|
+
attr_accessor :detected_attributes
|
429
|
+
|
430
|
+
# The set of detected destination URLs for the creative. Can be used to filter
|
431
|
+
# the response of the creatives.list method.
|
432
|
+
# Corresponds to the JSON property `detectedClickThroughUrls`
|
433
|
+
# @return [Array<String>]
|
434
|
+
attr_accessor :detected_click_through_urls
|
435
|
+
|
436
|
+
# The detected domains for this creative.
|
437
|
+
# Corresponds to the JSON property `detectedDomains`
|
438
|
+
# @return [Array<String>]
|
439
|
+
attr_accessor :detected_domains
|
440
|
+
|
441
|
+
# The detected languages for this creative. The order is arbitrary. The codes
|
442
|
+
# are 2 or 5 characters and are documented at https://developers.google.com/
|
443
|
+
# adwords/api/docs/appendix/languagecodes. Can be used to filter the response of
|
444
|
+
# the creatives.list method.
|
445
|
+
# Corresponds to the JSON property `detectedLanguages`
|
446
|
+
# @return [Array<String>]
|
447
|
+
attr_accessor :detected_languages
|
448
|
+
|
449
|
+
# Detected product categories, if any. See the ad-product-categories.txt file in
|
450
|
+
# the technical documentation for a list of IDs. Can be used to filter the
|
451
|
+
# response of the creatives.list method.
|
452
|
+
# Corresponds to the JSON property `detectedProductCategories`
|
453
|
+
# @return [Array<Fixnum>]
|
454
|
+
attr_accessor :detected_product_categories
|
455
|
+
|
456
|
+
# Detected sensitive categories, if any. Can be used to filter the response of
|
457
|
+
# the creatives.list method. See the ad-sensitive-categories.txt file in the
|
458
|
+
# technical documentation for a list of IDs. You should use these IDs along with
|
459
|
+
# the excluded-sensitive-category field in the bid request to filter your bids.
|
460
|
+
# Corresponds to the JSON property `detectedSensitiveCategories`
|
461
|
+
# @return [Array<Fixnum>]
|
462
|
+
attr_accessor :detected_sensitive_categories
|
463
|
+
|
464
|
+
# IDs of the ad technology vendors that were detected to be used by this
|
465
|
+
# creative. See https://storage.googleapis.com/adx-rtb-dictionaries/vendors.txt
|
466
|
+
# for possible values. Can be used to filter the response of the creatives.list
|
467
|
+
# method. If the `allowed_vendor_type` field of a [bid request](https://
|
468
|
+
# developers.google.com/authorized-buyers/rtb/downloads/realtime-bidding-proto)
|
469
|
+
# does not contain one of the vendor type IDs that were declared or detected for
|
470
|
+
# a given creative, and a bid is submitted with that creative, the bid will be
|
471
|
+
# filtered before the auction.
|
472
|
+
# Corresponds to the JSON property `detectedVendorIds`
|
473
|
+
# @return [Array<Fixnum>]
|
474
|
+
attr_accessor :detected_vendor_ids
|
475
|
+
|
476
|
+
# The last time the creative status was updated. Can be used to filter the
|
477
|
+
# response of the creatives.list method.
|
478
|
+
# Corresponds to the JSON property `lastStatusUpdate`
|
479
|
+
# @return [String]
|
480
|
+
attr_accessor :last_status_update
|
481
|
+
|
482
|
+
# Policy compliance of the creative for a transaction type or a region.
|
483
|
+
# Corresponds to the JSON property `networkPolicyCompliance`
|
484
|
+
# @return [Google::Apis::RealtimebiddingV1::PolicyCompliance]
|
485
|
+
attr_accessor :network_policy_compliance
|
486
|
+
|
487
|
+
# Policy compliance of the creative for a transaction type or a region.
|
488
|
+
# Corresponds to the JSON property `platformPolicyCompliance`
|
489
|
+
# @return [Google::Apis::RealtimebiddingV1::PolicyCompliance]
|
490
|
+
attr_accessor :platform_policy_compliance
|
491
|
+
|
492
|
+
# Policy compliance of the creative for a transaction type or a region.
|
493
|
+
# Corresponds to the JSON property `russiaPolicyCompliance`
|
494
|
+
# @return [Google::Apis::RealtimebiddingV1::PolicyCompliance]
|
495
|
+
attr_accessor :russia_policy_compliance
|
496
|
+
|
497
|
+
def initialize(**args)
|
498
|
+
update!(**args)
|
499
|
+
end
|
500
|
+
|
501
|
+
# Update properties of this object
|
502
|
+
def update!(**args)
|
503
|
+
@china_policy_compliance = args[:china_policy_compliance] if args.key?(:china_policy_compliance)
|
504
|
+
@deals_policy_compliance = args[:deals_policy_compliance] if args.key?(:deals_policy_compliance)
|
505
|
+
@detected_advertisers = args[:detected_advertisers] if args.key?(:detected_advertisers)
|
506
|
+
@detected_attributes = args[:detected_attributes] if args.key?(:detected_attributes)
|
507
|
+
@detected_click_through_urls = args[:detected_click_through_urls] if args.key?(:detected_click_through_urls)
|
508
|
+
@detected_domains = args[:detected_domains] if args.key?(:detected_domains)
|
509
|
+
@detected_languages = args[:detected_languages] if args.key?(:detected_languages)
|
510
|
+
@detected_product_categories = args[:detected_product_categories] if args.key?(:detected_product_categories)
|
511
|
+
@detected_sensitive_categories = args[:detected_sensitive_categories] if args.key?(:detected_sensitive_categories)
|
512
|
+
@detected_vendor_ids = args[:detected_vendor_ids] if args.key?(:detected_vendor_ids)
|
513
|
+
@last_status_update = args[:last_status_update] if args.key?(:last_status_update)
|
514
|
+
@network_policy_compliance = args[:network_policy_compliance] if args.key?(:network_policy_compliance)
|
515
|
+
@platform_policy_compliance = args[:platform_policy_compliance] if args.key?(:platform_policy_compliance)
|
516
|
+
@russia_policy_compliance = args[:russia_policy_compliance] if args.key?(:russia_policy_compliance)
|
517
|
+
end
|
518
|
+
end
|
519
|
+
|
520
|
+
# Represents a whole or partial calendar date, such as a birthday. The time of
|
521
|
+
# day and time zone are either specified elsewhere or are insignificant. The
|
522
|
+
# date is relative to the Gregorian Calendar. This can represent one of the
|
523
|
+
# following: * A full date, with non-zero year, month, and day values * A month
|
524
|
+
# and day value, with a zero year, such as an anniversary * A year on its own,
|
525
|
+
# with zero month and day values * A year and month value, with a zero day, such
|
526
|
+
# as a credit card expiration date Related types are google.type.TimeOfDay and `
|
527
|
+
# google.protobuf.Timestamp`.
|
528
|
+
class Date
|
529
|
+
include Google::Apis::Core::Hashable
|
530
|
+
|
531
|
+
# Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to
|
532
|
+
# specify a year by itself or a year and month where the day isn't significant.
|
533
|
+
# Corresponds to the JSON property `day`
|
534
|
+
# @return [Fixnum]
|
535
|
+
attr_accessor :day
|
536
|
+
|
537
|
+
# Month of a year. Must be from 1 to 12, or 0 to specify a year without a month
|
538
|
+
# and day.
|
539
|
+
# Corresponds to the JSON property `month`
|
540
|
+
# @return [Fixnum]
|
541
|
+
attr_accessor :month
|
542
|
+
|
543
|
+
# Year of the date. Must be from 1 to 9999, or 0 to specify a date without a
|
544
|
+
# year.
|
545
|
+
# Corresponds to the JSON property `year`
|
546
|
+
# @return [Fixnum]
|
547
|
+
attr_accessor :year
|
548
|
+
|
549
|
+
def initialize(**args)
|
550
|
+
update!(**args)
|
551
|
+
end
|
552
|
+
|
553
|
+
# Update properties of this object
|
554
|
+
def update!(**args)
|
555
|
+
@day = args[:day] if args.key?(:day)
|
556
|
+
@month = args[:month] if args.key?(:month)
|
557
|
+
@year = args[:year] if args.key?(:year)
|
558
|
+
end
|
559
|
+
end
|
560
|
+
|
561
|
+
# Evidence that the creative's destination URL was not crawlable by Google.
|
562
|
+
class DestinationNotCrawlableEvidence
|
563
|
+
include Google::Apis::Core::Hashable
|
564
|
+
|
565
|
+
# Approximate time of the crawl.
|
566
|
+
# Corresponds to the JSON property `crawlTime`
|
567
|
+
# @return [String]
|
568
|
+
attr_accessor :crawl_time
|
569
|
+
|
570
|
+
# Destination URL that was attempted to be crawled.
|
571
|
+
# Corresponds to the JSON property `crawledUrl`
|
572
|
+
# @return [String]
|
573
|
+
attr_accessor :crawled_url
|
574
|
+
|
575
|
+
# Reason of destination not crawlable.
|
576
|
+
# Corresponds to the JSON property `reason`
|
577
|
+
# @return [String]
|
578
|
+
attr_accessor :reason
|
579
|
+
|
580
|
+
def initialize(**args)
|
581
|
+
update!(**args)
|
582
|
+
end
|
583
|
+
|
584
|
+
# Update properties of this object
|
585
|
+
def update!(**args)
|
586
|
+
@crawl_time = args[:crawl_time] if args.key?(:crawl_time)
|
587
|
+
@crawled_url = args[:crawled_url] if args.key?(:crawled_url)
|
588
|
+
@reason = args[:reason] if args.key?(:reason)
|
589
|
+
end
|
590
|
+
end
|
591
|
+
|
592
|
+
# Evidence of the creative's destination URL not functioning properly or having
|
593
|
+
# been incorrectly set up.
|
594
|
+
class DestinationNotWorkingEvidence
|
595
|
+
include Google::Apis::Core::Hashable
|
596
|
+
|
597
|
+
# DNS lookup errors.
|
598
|
+
# Corresponds to the JSON property `dnsError`
|
599
|
+
# @return [String]
|
600
|
+
attr_accessor :dns_error
|
601
|
+
|
602
|
+
# The full non-working URL.
|
603
|
+
# Corresponds to the JSON property `expandedUrl`
|
604
|
+
# @return [String]
|
605
|
+
attr_accessor :expanded_url
|
606
|
+
|
607
|
+
# HTTP error code (e.g. 404 or 5xx)
|
608
|
+
# Corresponds to the JSON property `httpError`
|
609
|
+
# @return [Fixnum]
|
610
|
+
attr_accessor :http_error
|
611
|
+
|
612
|
+
# Page was crawled successfully, but was detected as either a page with no
|
613
|
+
# content or an error page.
|
614
|
+
# Corresponds to the JSON property `invalidPage`
|
615
|
+
# @return [String]
|
616
|
+
attr_accessor :invalid_page
|
617
|
+
|
618
|
+
# Approximate time when the ad destination was last checked.
|
619
|
+
# Corresponds to the JSON property `lastCheckTime`
|
620
|
+
# @return [String]
|
621
|
+
attr_accessor :last_check_time
|
622
|
+
|
623
|
+
# Platform of the non-working URL.
|
624
|
+
# Corresponds to the JSON property `platform`
|
625
|
+
# @return [String]
|
626
|
+
attr_accessor :platform
|
627
|
+
|
628
|
+
# HTTP redirect chain error.
|
629
|
+
# Corresponds to the JSON property `redirectionError`
|
630
|
+
# @return [String]
|
631
|
+
attr_accessor :redirection_error
|
632
|
+
|
633
|
+
# Rejected because of malformed URLs or invalid requests.
|
634
|
+
# Corresponds to the JSON property `urlRejected`
|
635
|
+
# @return [String]
|
636
|
+
attr_accessor :url_rejected
|
637
|
+
|
638
|
+
def initialize(**args)
|
639
|
+
update!(**args)
|
640
|
+
end
|
641
|
+
|
642
|
+
# Update properties of this object
|
643
|
+
def update!(**args)
|
644
|
+
@dns_error = args[:dns_error] if args.key?(:dns_error)
|
645
|
+
@expanded_url = args[:expanded_url] if args.key?(:expanded_url)
|
646
|
+
@http_error = args[:http_error] if args.key?(:http_error)
|
647
|
+
@invalid_page = args[:invalid_page] if args.key?(:invalid_page)
|
648
|
+
@last_check_time = args[:last_check_time] if args.key?(:last_check_time)
|
649
|
+
@platform = args[:platform] if args.key?(:platform)
|
650
|
+
@redirection_error = args[:redirection_error] if args.key?(:redirection_error)
|
651
|
+
@url_rejected = args[:url_rejected] if args.key?(:url_rejected)
|
652
|
+
end
|
653
|
+
end
|
654
|
+
|
655
|
+
# The full landing page URL of the destination.
|
656
|
+
class DestinationUrlEvidence
|
657
|
+
include Google::Apis::Core::Hashable
|
658
|
+
|
659
|
+
# The full landing page URL of the destination.
|
660
|
+
# Corresponds to the JSON property `destinationUrl`
|
661
|
+
# @return [String]
|
662
|
+
attr_accessor :destination_url
|
663
|
+
|
664
|
+
def initialize(**args)
|
665
|
+
update!(**args)
|
666
|
+
end
|
667
|
+
|
668
|
+
# Update properties of this object
|
669
|
+
def update!(**args)
|
670
|
+
@destination_url = args[:destination_url] if args.key?(:destination_url)
|
671
|
+
end
|
672
|
+
end
|
673
|
+
|
674
|
+
# Number of HTTP calls made by a creative, broken down by domain.
|
675
|
+
class DomainCallEvidence
|
676
|
+
include Google::Apis::Core::Hashable
|
677
|
+
|
678
|
+
# Breakdown of the most frequent domains called via HTTP by the creative.
|
679
|
+
# Corresponds to the JSON property `topHttpCallDomains`
|
680
|
+
# @return [Array<Google::Apis::RealtimebiddingV1::DomainCalls>]
|
681
|
+
attr_accessor :top_http_call_domains
|
682
|
+
|
683
|
+
# The total number of HTTP calls made by the creative, including but not limited
|
684
|
+
# to the number of calls in the top_http_call_domains.
|
685
|
+
# Corresponds to the JSON property `totalHttpCallCount`
|
686
|
+
# @return [Fixnum]
|
687
|
+
attr_accessor :total_http_call_count
|
688
|
+
|
689
|
+
def initialize(**args)
|
690
|
+
update!(**args)
|
691
|
+
end
|
692
|
+
|
693
|
+
# Update properties of this object
|
694
|
+
def update!(**args)
|
695
|
+
@top_http_call_domains = args[:top_http_call_domains] if args.key?(:top_http_call_domains)
|
696
|
+
@total_http_call_count = args[:total_http_call_count] if args.key?(:total_http_call_count)
|
697
|
+
end
|
698
|
+
end
|
699
|
+
|
700
|
+
# The number of HTTP calls made to the given domain.
|
701
|
+
class DomainCalls
|
702
|
+
include Google::Apis::Core::Hashable
|
703
|
+
|
704
|
+
# The domain name.
|
705
|
+
# Corresponds to the JSON property `domain`
|
706
|
+
# @return [String]
|
707
|
+
attr_accessor :domain
|
708
|
+
|
709
|
+
# Number of HTTP calls made to the domain.
|
710
|
+
# Corresponds to the JSON property `httpCallCount`
|
711
|
+
# @return [Fixnum]
|
712
|
+
attr_accessor :http_call_count
|
713
|
+
|
714
|
+
def initialize(**args)
|
715
|
+
update!(**args)
|
716
|
+
end
|
717
|
+
|
718
|
+
# Update properties of this object
|
719
|
+
def update!(**args)
|
720
|
+
@domain = args[:domain] if args.key?(:domain)
|
721
|
+
@http_call_count = args[:http_call_count] if args.key?(:http_call_count)
|
722
|
+
end
|
723
|
+
end
|
724
|
+
|
725
|
+
# Total download size and URL-level download size breakdown for resources in a
|
726
|
+
# creative.
|
727
|
+
class DownloadSizeEvidence
|
728
|
+
include Google::Apis::Core::Hashable
|
729
|
+
|
730
|
+
# Download size broken down by URLs with the top download size.
|
731
|
+
# Corresponds to the JSON property `topUrlDownloadSizeBreakdowns`
|
732
|
+
# @return [Array<Google::Apis::RealtimebiddingV1::UrlDownloadSize>]
|
733
|
+
attr_accessor :top_url_download_size_breakdowns
|
734
|
+
|
735
|
+
# Total download size (in kilobytes) for all the resources in the creative.
|
736
|
+
# Corresponds to the JSON property `totalDownloadSizeKb`
|
737
|
+
# @return [Fixnum]
|
738
|
+
attr_accessor :total_download_size_kb
|
739
|
+
|
740
|
+
def initialize(**args)
|
741
|
+
update!(**args)
|
742
|
+
end
|
743
|
+
|
744
|
+
# Update properties of this object
|
745
|
+
def update!(**args)
|
746
|
+
@top_url_download_size_breakdowns = args[:top_url_download_size_breakdowns] if args.key?(:top_url_download_size_breakdowns)
|
747
|
+
@total_download_size_kb = args[:total_download_size_kb] if args.key?(:total_download_size_kb)
|
748
|
+
end
|
749
|
+
end
|
750
|
+
|
751
|
+
# A generic empty message that you can re-use to avoid defining duplicated empty
|
752
|
+
# messages in your APIs. A typical example is to use it as the request or the
|
753
|
+
# response type of an API method. For instance: service Foo ` rpc Bar(google.
|
754
|
+
# protobuf.Empty) returns (google.protobuf.Empty); ` The JSON representation for
|
755
|
+
# `Empty` is empty JSON object ````.
|
756
|
+
class Empty
|
757
|
+
include Google::Apis::Core::Hashable
|
758
|
+
|
759
|
+
def initialize(**args)
|
760
|
+
update!(**args)
|
761
|
+
end
|
762
|
+
|
763
|
+
# Update properties of this object
|
764
|
+
def update!(**args)
|
765
|
+
end
|
766
|
+
end
|
767
|
+
|
768
|
+
# Response for a request to get remarketing tag.
|
769
|
+
class GetRemarketingTagResponse
|
770
|
+
include Google::Apis::Core::Hashable
|
771
|
+
|
772
|
+
# A HTML tag that can be placed on the advertiser's page to add users to a user
|
773
|
+
# list. For more information and code samples on using snippet on your website
|
774
|
+
# refer to [Tag your site for remarketing]( https://support.google.com/google-
|
775
|
+
# ads/answer/2476688).
|
776
|
+
# Corresponds to the JSON property `snippet`
|
777
|
+
# @return [String]
|
778
|
+
attr_accessor :snippet
|
779
|
+
|
780
|
+
def initialize(**args)
|
781
|
+
update!(**args)
|
782
|
+
end
|
783
|
+
|
784
|
+
# Update properties of this object
|
785
|
+
def update!(**args)
|
786
|
+
@snippet = args[:snippet] if args.key?(:snippet)
|
787
|
+
end
|
788
|
+
end
|
789
|
+
|
790
|
+
# HTML content for a creative.
|
791
|
+
class HtmlContent
|
792
|
+
include Google::Apis::Core::Hashable
|
793
|
+
|
794
|
+
# The height of the HTML snippet in pixels. Can be used to filter the response
|
795
|
+
# of the creatives.list method.
|
796
|
+
# Corresponds to the JSON property `height`
|
797
|
+
# @return [Fixnum]
|
798
|
+
attr_accessor :height
|
799
|
+
|
800
|
+
# The HTML snippet that displays the ad when inserted in the web page.
|
801
|
+
# Corresponds to the JSON property `snippet`
|
802
|
+
# @return [String]
|
803
|
+
attr_accessor :snippet
|
804
|
+
|
805
|
+
# The width of the HTML snippet in pixels. Can be used to filter the response of
|
806
|
+
# the creatives.list method.
|
807
|
+
# Corresponds to the JSON property `width`
|
808
|
+
# @return [Fixnum]
|
809
|
+
attr_accessor :width
|
810
|
+
|
811
|
+
def initialize(**args)
|
812
|
+
update!(**args)
|
813
|
+
end
|
814
|
+
|
815
|
+
# Update properties of this object
|
816
|
+
def update!(**args)
|
817
|
+
@height = args[:height] if args.key?(:height)
|
818
|
+
@snippet = args[:snippet] if args.key?(:snippet)
|
819
|
+
@width = args[:width] if args.key?(:width)
|
820
|
+
end
|
821
|
+
end
|
822
|
+
|
823
|
+
# HTTP calls made by a creative that resulted in policy violations.
|
824
|
+
class HttpCallEvidence
|
825
|
+
include Google::Apis::Core::Hashable
|
826
|
+
|
827
|
+
# URLs of HTTP calls made by the creative.
|
828
|
+
# Corresponds to the JSON property `urls`
|
829
|
+
# @return [Array<String>]
|
830
|
+
attr_accessor :urls
|
831
|
+
|
832
|
+
def initialize(**args)
|
833
|
+
update!(**args)
|
834
|
+
end
|
835
|
+
|
836
|
+
# Update properties of this object
|
837
|
+
def update!(**args)
|
838
|
+
@urls = args[:urls] if args.key?(:urls)
|
839
|
+
end
|
840
|
+
end
|
841
|
+
|
842
|
+
# Evidence for HTTP cookie-related policy violations.
|
843
|
+
class HttpCookieEvidence
|
844
|
+
include Google::Apis::Core::Hashable
|
845
|
+
|
846
|
+
# Names of cookies that violate Google policies. For TOO_MANY_COOKIES policy,
|
847
|
+
# this will be the cookie names of top domains with the largest number of
|
848
|
+
# cookies. For other policies, this will be all the cookie names that violate
|
849
|
+
# the policy.
|
850
|
+
# Corresponds to the JSON property `cookieNames`
|
851
|
+
# @return [Array<String>]
|
852
|
+
attr_accessor :cookie_names
|
853
|
+
|
854
|
+
# The largest number of cookies set by a creative. If this field is set,
|
855
|
+
# cookie_names above will be set to the cookie names of top domains with the
|
856
|
+
# largest number of cookies. This field will only be set for TOO_MANY_COOKIES
|
857
|
+
# policy.
|
858
|
+
# Corresponds to the JSON property `maxCookieCount`
|
859
|
+
# @return [Fixnum]
|
860
|
+
attr_accessor :max_cookie_count
|
861
|
+
|
862
|
+
def initialize(**args)
|
863
|
+
update!(**args)
|
864
|
+
end
|
865
|
+
|
866
|
+
# Update properties of this object
|
867
|
+
def update!(**args)
|
868
|
+
@cookie_names = args[:cookie_names] if args.key?(:cookie_names)
|
869
|
+
@max_cookie_count = args[:max_cookie_count] if args.key?(:max_cookie_count)
|
870
|
+
end
|
871
|
+
end
|
872
|
+
|
873
|
+
# An image resource. You may provide a larger image than was requested, so long
|
874
|
+
# as the aspect ratio is preserved.
|
875
|
+
class Image
|
876
|
+
include Google::Apis::Core::Hashable
|
877
|
+
|
878
|
+
# Image height in pixels.
|
879
|
+
# Corresponds to the JSON property `height`
|
880
|
+
# @return [Fixnum]
|
881
|
+
attr_accessor :height
|
882
|
+
|
883
|
+
# The URL of the image.
|
884
|
+
# Corresponds to the JSON property `url`
|
885
|
+
# @return [String]
|
886
|
+
attr_accessor :url
|
887
|
+
|
888
|
+
# Image width in pixels.
|
889
|
+
# Corresponds to the JSON property `width`
|
890
|
+
# @return [Fixnum]
|
891
|
+
attr_accessor :width
|
892
|
+
|
893
|
+
def initialize(**args)
|
894
|
+
update!(**args)
|
895
|
+
end
|
896
|
+
|
897
|
+
# Update properties of this object
|
898
|
+
def update!(**args)
|
899
|
+
@height = args[:height] if args.key?(:height)
|
900
|
+
@url = args[:url] if args.key?(:url)
|
901
|
+
@width = args[:width] if args.key?(:width)
|
902
|
+
end
|
903
|
+
end
|
904
|
+
|
905
|
+
# A response for listing creatives.
|
906
|
+
class ListCreativesResponse
|
907
|
+
include Google::Apis::Core::Hashable
|
908
|
+
|
909
|
+
# The list of creatives.
|
910
|
+
# Corresponds to the JSON property `creatives`
|
911
|
+
# @return [Array<Google::Apis::RealtimebiddingV1::Creative>]
|
912
|
+
attr_accessor :creatives
|
913
|
+
|
914
|
+
# A token to retrieve the next page of results. Pass this value in the
|
915
|
+
# ListCreativesRequest.pageToken field in the subsequent call to the `
|
916
|
+
# ListCreatives` method to retrieve the next page of results.
|
917
|
+
# Corresponds to the JSON property `nextPageToken`
|
918
|
+
# @return [String]
|
919
|
+
attr_accessor :next_page_token
|
920
|
+
|
921
|
+
def initialize(**args)
|
922
|
+
update!(**args)
|
923
|
+
end
|
924
|
+
|
925
|
+
# Update properties of this object
|
926
|
+
def update!(**args)
|
927
|
+
@creatives = args[:creatives] if args.key?(:creatives)
|
928
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
929
|
+
end
|
930
|
+
end
|
931
|
+
|
932
|
+
# A response containing pretargeting configurations.
|
933
|
+
class ListPretargetingConfigsResponse
|
934
|
+
include Google::Apis::Core::Hashable
|
935
|
+
|
936
|
+
# A token which can be passed to a subsequent call to the `
|
937
|
+
# ListPretargetingConfigs` method to retrieve the next page of results in
|
938
|
+
# ListPretargetingConfigsRequest.pageToken.
|
939
|
+
# Corresponds to the JSON property `nextPageToken`
|
940
|
+
# @return [String]
|
941
|
+
attr_accessor :next_page_token
|
942
|
+
|
943
|
+
# List of pretargeting configurations.
|
944
|
+
# Corresponds to the JSON property `pretargetingConfigs`
|
945
|
+
# @return [Array<Google::Apis::RealtimebiddingV1::PretargetingConfig>]
|
946
|
+
attr_accessor :pretargeting_configs
|
947
|
+
|
948
|
+
def initialize(**args)
|
949
|
+
update!(**args)
|
950
|
+
end
|
951
|
+
|
952
|
+
# Update properties of this object
|
953
|
+
def update!(**args)
|
954
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
955
|
+
@pretargeting_configs = args[:pretargeting_configs] if args.key?(:pretargeting_configs)
|
956
|
+
end
|
957
|
+
end
|
958
|
+
|
959
|
+
# The list user list response.
|
960
|
+
class ListUserListsResponse
|
961
|
+
include Google::Apis::Core::Hashable
|
962
|
+
|
963
|
+
# The continuation page token to send back to the server in a subsequent request.
|
964
|
+
# Due to a currently known issue, it is recommended that the caller keep
|
965
|
+
# invoking the list method till the time a next page token is not returned (even
|
966
|
+
# if the result set is empty).
|
967
|
+
# Corresponds to the JSON property `nextPageToken`
|
968
|
+
# @return [String]
|
969
|
+
attr_accessor :next_page_token
|
970
|
+
|
971
|
+
# List of user lists from the search.
|
972
|
+
# Corresponds to the JSON property `userLists`
|
973
|
+
# @return [Array<Google::Apis::RealtimebiddingV1::UserList>]
|
974
|
+
attr_accessor :user_lists
|
975
|
+
|
976
|
+
def initialize(**args)
|
977
|
+
update!(**args)
|
978
|
+
end
|
979
|
+
|
980
|
+
# Update properties of this object
|
981
|
+
def update!(**args)
|
982
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
983
|
+
@user_lists = args[:user_lists] if args.key?(:user_lists)
|
984
|
+
end
|
985
|
+
end
|
986
|
+
|
987
|
+
# Information about each media file in the VAST.
|
988
|
+
class MediaFile
|
989
|
+
include Google::Apis::Core::Hashable
|
990
|
+
|
991
|
+
# Bitrate of the video file, in Kbps. Can be used to filter the response of the
|
992
|
+
# creatives.list method.
|
993
|
+
# Corresponds to the JSON property `bitrate`
|
994
|
+
# @return [Fixnum]
|
995
|
+
attr_accessor :bitrate
|
996
|
+
|
997
|
+
# The MIME type of this media file. Can be used to filter the response of the
|
998
|
+
# creatives.list method.
|
999
|
+
# Corresponds to the JSON property `mimeType`
|
1000
|
+
# @return [String]
|
1001
|
+
attr_accessor :mime_type
|
1002
|
+
|
1003
|
+
def initialize(**args)
|
1004
|
+
update!(**args)
|
1005
|
+
end
|
1006
|
+
|
1007
|
+
# Update properties of this object
|
1008
|
+
def update!(**args)
|
1009
|
+
@bitrate = args[:bitrate] if args.key?(:bitrate)
|
1010
|
+
@mime_type = args[:mime_type] if args.key?(:mime_type)
|
1011
|
+
end
|
1012
|
+
end
|
1013
|
+
|
1014
|
+
# Native content for a creative.
|
1015
|
+
class NativeContent
|
1016
|
+
include Google::Apis::Core::Hashable
|
1017
|
+
|
1018
|
+
# The name of the advertiser or sponsor, to be displayed in the ad creative.
|
1019
|
+
# Corresponds to the JSON property `advertiserName`
|
1020
|
+
# @return [String]
|
1021
|
+
attr_accessor :advertiser_name
|
1022
|
+
|
1023
|
+
# An image resource. You may provide a larger image than was requested, so long
|
1024
|
+
# as the aspect ratio is preserved.
|
1025
|
+
# Corresponds to the JSON property `appIcon`
|
1026
|
+
# @return [Google::Apis::RealtimebiddingV1::Image]
|
1027
|
+
attr_accessor :app_icon
|
1028
|
+
|
1029
|
+
# A long description of the ad.
|
1030
|
+
# Corresponds to the JSON property `body`
|
1031
|
+
# @return [String]
|
1032
|
+
attr_accessor :body
|
1033
|
+
|
1034
|
+
# A label for the button that the user is supposed to click.
|
1035
|
+
# Corresponds to the JSON property `callToAction`
|
1036
|
+
# @return [String]
|
1037
|
+
attr_accessor :call_to_action
|
1038
|
+
|
1039
|
+
# The URL that the browser/SDK will load when the user clicks the ad.
|
1040
|
+
# Corresponds to the JSON property `clickLinkUrl`
|
1041
|
+
# @return [String]
|
1042
|
+
attr_accessor :click_link_url
|
1043
|
+
|
1044
|
+
# The URL to use for click tracking.
|
1045
|
+
# Corresponds to the JSON property `clickTrackingUrl`
|
1046
|
+
# @return [String]
|
1047
|
+
attr_accessor :click_tracking_url
|
1048
|
+
|
1049
|
+
# A short title for the ad.
|
1050
|
+
# Corresponds to the JSON property `headline`
|
1051
|
+
# @return [String]
|
1052
|
+
attr_accessor :headline
|
1053
|
+
|
1054
|
+
# An image resource. You may provide a larger image than was requested, so long
|
1055
|
+
# as the aspect ratio is preserved.
|
1056
|
+
# Corresponds to the JSON property `image`
|
1057
|
+
# @return [Google::Apis::RealtimebiddingV1::Image]
|
1058
|
+
attr_accessor :image
|
1059
|
+
|
1060
|
+
# An image resource. You may provide a larger image than was requested, so long
|
1061
|
+
# as the aspect ratio is preserved.
|
1062
|
+
# Corresponds to the JSON property `logo`
|
1063
|
+
# @return [Google::Apis::RealtimebiddingV1::Image]
|
1064
|
+
attr_accessor :logo
|
1065
|
+
|
1066
|
+
# The price of the promoted app including currency info.
|
1067
|
+
# Corresponds to the JSON property `priceDisplayText`
|
1068
|
+
# @return [String]
|
1069
|
+
attr_accessor :price_display_text
|
1070
|
+
|
1071
|
+
# The app rating in the app store. Must be in the range [0-5].
|
1072
|
+
# Corresponds to the JSON property `starRating`
|
1073
|
+
# @return [Float]
|
1074
|
+
attr_accessor :star_rating
|
1075
|
+
|
1076
|
+
# The URL to fetch a native video ad.
|
1077
|
+
# Corresponds to the JSON property `videoUrl`
|
1078
|
+
# @return [String]
|
1079
|
+
attr_accessor :video_url
|
1080
|
+
|
1081
|
+
def initialize(**args)
|
1082
|
+
update!(**args)
|
1083
|
+
end
|
1084
|
+
|
1085
|
+
# Update properties of this object
|
1086
|
+
def update!(**args)
|
1087
|
+
@advertiser_name = args[:advertiser_name] if args.key?(:advertiser_name)
|
1088
|
+
@app_icon = args[:app_icon] if args.key?(:app_icon)
|
1089
|
+
@body = args[:body] if args.key?(:body)
|
1090
|
+
@call_to_action = args[:call_to_action] if args.key?(:call_to_action)
|
1091
|
+
@click_link_url = args[:click_link_url] if args.key?(:click_link_url)
|
1092
|
+
@click_tracking_url = args[:click_tracking_url] if args.key?(:click_tracking_url)
|
1093
|
+
@headline = args[:headline] if args.key?(:headline)
|
1094
|
+
@image = args[:image] if args.key?(:image)
|
1095
|
+
@logo = args[:logo] if args.key?(:logo)
|
1096
|
+
@price_display_text = args[:price_display_text] if args.key?(:price_display_text)
|
1097
|
+
@star_rating = args[:star_rating] if args.key?(:star_rating)
|
1098
|
+
@video_url = args[:video_url] if args.key?(:video_url)
|
1099
|
+
end
|
1100
|
+
end
|
1101
|
+
|
1102
|
+
# Generic targeting used for targeting dimensions that contain a list of
|
1103
|
+
# included and excluded numeric IDs used in app, user list, geo, and vertical id
|
1104
|
+
# targeting.
|
1105
|
+
class NumericTargetingDimension
|
1106
|
+
include Google::Apis::Core::Hashable
|
1107
|
+
|
1108
|
+
# The IDs excluded in a configuration.
|
1109
|
+
# Corresponds to the JSON property `excludedIds`
|
1110
|
+
# @return [Array<Fixnum>]
|
1111
|
+
attr_accessor :excluded_ids
|
1112
|
+
|
1113
|
+
# The IDs included in a configuration.
|
1114
|
+
# Corresponds to the JSON property `includedIds`
|
1115
|
+
# @return [Array<Fixnum>]
|
1116
|
+
attr_accessor :included_ids
|
1117
|
+
|
1118
|
+
def initialize(**args)
|
1119
|
+
update!(**args)
|
1120
|
+
end
|
1121
|
+
|
1122
|
+
# Update properties of this object
|
1123
|
+
def update!(**args)
|
1124
|
+
@excluded_ids = args[:excluded_ids] if args.key?(:excluded_ids)
|
1125
|
+
@included_ids = args[:included_ids] if args.key?(:included_ids)
|
1126
|
+
end
|
1127
|
+
end
|
1128
|
+
|
1129
|
+
# A request to open a specified user list.
|
1130
|
+
class OpenUserListRequest
|
1131
|
+
include Google::Apis::Core::Hashable
|
1132
|
+
|
1133
|
+
def initialize(**args)
|
1134
|
+
update!(**args)
|
1135
|
+
end
|
1136
|
+
|
1137
|
+
# Update properties of this object
|
1138
|
+
def update!(**args)
|
1139
|
+
end
|
1140
|
+
end
|
1141
|
+
|
1142
|
+
# Policy compliance of the creative for a transaction type or a region.
|
1143
|
+
class PolicyCompliance
|
1144
|
+
include Google::Apis::Core::Hashable
|
1145
|
+
|
1146
|
+
# Serving status for the given transaction type (e.g., open auction, deals) or
|
1147
|
+
# region (e.g., China, Russia). Can be used to filter the response of the
|
1148
|
+
# creatives.list method.
|
1149
|
+
# Corresponds to the JSON property `status`
|
1150
|
+
# @return [String]
|
1151
|
+
attr_accessor :status
|
1152
|
+
|
1153
|
+
# Topics related to the policy compliance for this transaction type (e.g., open
|
1154
|
+
# auction, deals) or region (e.g., China, Russia). Topics may be present only if
|
1155
|
+
# status is DISAPPROVED.
|
1156
|
+
# Corresponds to the JSON property `topics`
|
1157
|
+
# @return [Array<Google::Apis::RealtimebiddingV1::PolicyTopicEntry>]
|
1158
|
+
attr_accessor :topics
|
1159
|
+
|
1160
|
+
def initialize(**args)
|
1161
|
+
update!(**args)
|
1162
|
+
end
|
1163
|
+
|
1164
|
+
# Update properties of this object
|
1165
|
+
def update!(**args)
|
1166
|
+
@status = args[:status] if args.key?(:status)
|
1167
|
+
@topics = args[:topics] if args.key?(:topics)
|
1168
|
+
end
|
1169
|
+
end
|
1170
|
+
|
1171
|
+
# Each policy topic entry will represent a violation of a policy topic for a
|
1172
|
+
# creative, with the policy topic information and optional evidence for the
|
1173
|
+
# policy violation.
|
1174
|
+
class PolicyTopicEntry
|
1175
|
+
include Google::Apis::Core::Hashable
|
1176
|
+
|
1177
|
+
# Pieces of evidence associated with this policy topic entry.
|
1178
|
+
# Corresponds to the JSON property `evidences`
|
1179
|
+
# @return [Array<Google::Apis::RealtimebiddingV1::PolicyTopicEvidence>]
|
1180
|
+
attr_accessor :evidences
|
1181
|
+
|
1182
|
+
# URL of the help center article describing this policy topic.
|
1183
|
+
# Corresponds to the JSON property `helpCenterUrl`
|
1184
|
+
# @return [String]
|
1185
|
+
attr_accessor :help_center_url
|
1186
|
+
|
1187
|
+
# Policy topic this entry refers to. For example, "ALCOHOL", "
|
1188
|
+
# TRADEMARKS_IN_AD_TEXT", or "DESTINATION_NOT_WORKING". The set of possible
|
1189
|
+
# policy topics is not fixed for a particular API version and may change at any
|
1190
|
+
# time. Can be used to filter the response of the creatives.list method
|
1191
|
+
# Corresponds to the JSON property `policyTopic`
|
1192
|
+
# @return [String]
|
1193
|
+
attr_accessor :policy_topic
|
1194
|
+
|
1195
|
+
def initialize(**args)
|
1196
|
+
update!(**args)
|
1197
|
+
end
|
1198
|
+
|
1199
|
+
# Update properties of this object
|
1200
|
+
def update!(**args)
|
1201
|
+
@evidences = args[:evidences] if args.key?(:evidences)
|
1202
|
+
@help_center_url = args[:help_center_url] if args.key?(:help_center_url)
|
1203
|
+
@policy_topic = args[:policy_topic] if args.key?(:policy_topic)
|
1204
|
+
end
|
1205
|
+
end
|
1206
|
+
|
1207
|
+
# Evidence associated with a policy topic entry.
|
1208
|
+
class PolicyTopicEvidence
|
1209
|
+
include Google::Apis::Core::Hashable
|
1210
|
+
|
1211
|
+
# Evidence that the creative's destination URL was not crawlable by Google.
|
1212
|
+
# Corresponds to the JSON property `destinationNotCrawlable`
|
1213
|
+
# @return [Google::Apis::RealtimebiddingV1::DestinationNotCrawlableEvidence]
|
1214
|
+
attr_accessor :destination_not_crawlable
|
1215
|
+
|
1216
|
+
# Evidence of the creative's destination URL not functioning properly or having
|
1217
|
+
# been incorrectly set up.
|
1218
|
+
# Corresponds to the JSON property `destinationNotWorking`
|
1219
|
+
# @return [Google::Apis::RealtimebiddingV1::DestinationNotWorkingEvidence]
|
1220
|
+
attr_accessor :destination_not_working
|
1221
|
+
|
1222
|
+
# The full landing page URL of the destination.
|
1223
|
+
# Corresponds to the JSON property `destinationUrl`
|
1224
|
+
# @return [Google::Apis::RealtimebiddingV1::DestinationUrlEvidence]
|
1225
|
+
attr_accessor :destination_url
|
1226
|
+
|
1227
|
+
# Number of HTTP calls made by a creative, broken down by domain.
|
1228
|
+
# Corresponds to the JSON property `domainCall`
|
1229
|
+
# @return [Google::Apis::RealtimebiddingV1::DomainCallEvidence]
|
1230
|
+
attr_accessor :domain_call
|
1231
|
+
|
1232
|
+
# Total download size and URL-level download size breakdown for resources in a
|
1233
|
+
# creative.
|
1234
|
+
# Corresponds to the JSON property `downloadSize`
|
1235
|
+
# @return [Google::Apis::RealtimebiddingV1::DownloadSizeEvidence]
|
1236
|
+
attr_accessor :download_size
|
1237
|
+
|
1238
|
+
# HTTP calls made by a creative that resulted in policy violations.
|
1239
|
+
# Corresponds to the JSON property `httpCall`
|
1240
|
+
# @return [Google::Apis::RealtimebiddingV1::HttpCallEvidence]
|
1241
|
+
attr_accessor :http_call
|
1242
|
+
|
1243
|
+
# Evidence for HTTP cookie-related policy violations.
|
1244
|
+
# Corresponds to the JSON property `httpCookie`
|
1245
|
+
# @return [Google::Apis::RealtimebiddingV1::HttpCookieEvidence]
|
1246
|
+
attr_accessor :http_cookie
|
1247
|
+
|
1248
|
+
def initialize(**args)
|
1249
|
+
update!(**args)
|
1250
|
+
end
|
1251
|
+
|
1252
|
+
# Update properties of this object
|
1253
|
+
def update!(**args)
|
1254
|
+
@destination_not_crawlable = args[:destination_not_crawlable] if args.key?(:destination_not_crawlable)
|
1255
|
+
@destination_not_working = args[:destination_not_working] if args.key?(:destination_not_working)
|
1256
|
+
@destination_url = args[:destination_url] if args.key?(:destination_url)
|
1257
|
+
@domain_call = args[:domain_call] if args.key?(:domain_call)
|
1258
|
+
@download_size = args[:download_size] if args.key?(:download_size)
|
1259
|
+
@http_call = args[:http_call] if args.key?(:http_call)
|
1260
|
+
@http_cookie = args[:http_cookie] if args.key?(:http_cookie)
|
1261
|
+
end
|
1262
|
+
end
|
1263
|
+
|
1264
|
+
# Pretargeting configuration: a set of targeting dimensions applied at the
|
1265
|
+
# pretargeting stage of the RTB funnel. These control which inventory a bidder
|
1266
|
+
# will receive bid requests for.
|
1267
|
+
class PretargetingConfig
|
1268
|
+
include Google::Apis::Core::Hashable
|
1269
|
+
|
1270
|
+
# Targeting modes included by this configuration. A bid request must allow all
|
1271
|
+
# the specified targeting modes. An unset value allows all bid requests to be
|
1272
|
+
# sent, regardless of which targeting modes they allow.
|
1273
|
+
# Corresponds to the JSON property `allowedUserTargetingModes`
|
1274
|
+
# @return [Array<String>]
|
1275
|
+
attr_accessor :allowed_user_targeting_modes
|
1276
|
+
|
1277
|
+
# A subset of app inventory to target. Bid requests that match criteria in at
|
1278
|
+
# least one of the specified dimensions will be sent.
|
1279
|
+
# Corresponds to the JSON property `appTargeting`
|
1280
|
+
# @return [Google::Apis::RealtimebiddingV1::AppTargeting]
|
1281
|
+
attr_accessor :app_targeting
|
1282
|
+
|
1283
|
+
# Output only. The identifier that corresponds to this pretargeting
|
1284
|
+
# configuration that helps buyers track and attribute their spend across their
|
1285
|
+
# own arbitrary divisions. If a bid request matches more than one configuration,
|
1286
|
+
# the buyer chooses which billing_id to attribute each of their bids.
|
1287
|
+
# Corresponds to the JSON property `billingId`
|
1288
|
+
# @return [Fixnum]
|
1289
|
+
attr_accessor :billing_id
|
1290
|
+
|
1291
|
+
# The diplay name associated with this configuration. This name must be unique
|
1292
|
+
# among all the pretargeting configurations a bidder has.
|
1293
|
+
# Corresponds to the JSON property `displayName`
|
1294
|
+
# @return [String]
|
1295
|
+
attr_accessor :display_name
|
1296
|
+
|
1297
|
+
# The sensitive content category label IDs excluded in this configuration. Bid
|
1298
|
+
# requests for inventory with any of the specified content label IDs will not be
|
1299
|
+
# sent. Refer to this file https://storage.googleapis.com/adx-rtb-dictionaries/
|
1300
|
+
# content-labels.txt for category IDs.
|
1301
|
+
# Corresponds to the JSON property `excludedContentLabelIds`
|
1302
|
+
# @return [Array<Fixnum>]
|
1303
|
+
attr_accessor :excluded_content_label_ids
|
1304
|
+
|
1305
|
+
# Generic targeting used for targeting dimensions that contain a list of
|
1306
|
+
# included and excluded numeric IDs used in app, user list, geo, and vertical id
|
1307
|
+
# targeting.
|
1308
|
+
# Corresponds to the JSON property `geoTargeting`
|
1309
|
+
# @return [Google::Apis::RealtimebiddingV1::NumericTargetingDimension]
|
1310
|
+
attr_accessor :geo_targeting
|
1311
|
+
|
1312
|
+
# Creative dimensions included by this configuration. Only bid requests eligible
|
1313
|
+
# for at least one of the specified creative dimensions will be sent. An unset
|
1314
|
+
# value allows all bid requests to be sent, regardless of creative dimension.
|
1315
|
+
# Corresponds to the JSON property `includedCreativeDimensions`
|
1316
|
+
# @return [Array<Google::Apis::RealtimebiddingV1::CreativeDimensions>]
|
1317
|
+
attr_accessor :included_creative_dimensions
|
1318
|
+
|
1319
|
+
# Environments that are being included. Bid requests will not be sent for a
|
1320
|
+
# given environment if it is not included. Further restrictions can be applied
|
1321
|
+
# to included environments to target only a subset of its inventory. An unset
|
1322
|
+
# value includes all environments.
|
1323
|
+
# Corresponds to the JSON property `includedEnvironments`
|
1324
|
+
# @return [Array<String>]
|
1325
|
+
attr_accessor :included_environments
|
1326
|
+
|
1327
|
+
# Creative formats included by this configuration. Only bid requests eligible
|
1328
|
+
# for at least one of the specified creative formats will be sent. An unset
|
1329
|
+
# value will allow all bid requests to be sent, regardless of format.
|
1330
|
+
# Corresponds to the JSON property `includedFormats`
|
1331
|
+
# @return [Array<String>]
|
1332
|
+
attr_accessor :included_formats
|
1333
|
+
|
1334
|
+
# The languages included in this configuration, represented by their language
|
1335
|
+
# code. See https://developers.google.com/adwords/api/docs/appendix/
|
1336
|
+
# languagecodes.
|
1337
|
+
# Corresponds to the JSON property `includedLanguages`
|
1338
|
+
# @return [Array<String>]
|
1339
|
+
attr_accessor :included_languages
|
1340
|
+
|
1341
|
+
# The mobile operating systems included in this configuration as defined in
|
1342
|
+
# https://storage.googleapis.com/adx-rtb-dictionaries/mobile-os.csv
|
1343
|
+
# Corresponds to the JSON property `includedMobileOperatingSystemIds`
|
1344
|
+
# @return [Array<Fixnum>]
|
1345
|
+
attr_accessor :included_mobile_operating_system_ids
|
1346
|
+
|
1347
|
+
# The platforms included by this configration. Bid requests for devices with the
|
1348
|
+
# specified platform types will be sent. An unset value allows all bid requests
|
1349
|
+
# to be sent, regardless of platform.
|
1350
|
+
# Corresponds to the JSON property `includedPlatforms`
|
1351
|
+
# @return [Array<String>]
|
1352
|
+
attr_accessor :included_platforms
|
1353
|
+
|
1354
|
+
# User identifier types included in this configuration. At least one of the user
|
1355
|
+
# identifier types specified in this list must be available for the bid request
|
1356
|
+
# to be sent.
|
1357
|
+
# Corresponds to the JSON property `includedUserIdTypes`
|
1358
|
+
# @return [Array<String>]
|
1359
|
+
attr_accessor :included_user_id_types
|
1360
|
+
|
1361
|
+
# The interstitial targeting specified for this configuration. The unset value
|
1362
|
+
# will allow bid requests to be sent regardless of whether they are for
|
1363
|
+
# interstitials or not.
|
1364
|
+
# Corresponds to the JSON property `interstitialTargeting`
|
1365
|
+
# @return [String]
|
1366
|
+
attr_accessor :interstitial_targeting
|
1367
|
+
|
1368
|
+
# Output only. Existing included or excluded geos that are invalid. Previously
|
1369
|
+
# targeted geos may become invalid due to privacy restrictions.
|
1370
|
+
# Corresponds to the JSON property `invalidGeoIds`
|
1371
|
+
# @return [Array<Fixnum>]
|
1372
|
+
attr_accessor :invalid_geo_ids
|
1373
|
+
|
1374
|
+
# The maximum QPS threshold for this configuration. The bidder should receive no
|
1375
|
+
# more than this number of bid requests matching this configuration per second
|
1376
|
+
# across all their bidding endpoints among all trading locations. Further
|
1377
|
+
# information available at https://developers.google.com/authorized-buyers/rtb/
|
1378
|
+
# peer-guide
|
1379
|
+
# Corresponds to the JSON property `maximumQps`
|
1380
|
+
# @return [Fixnum]
|
1381
|
+
attr_accessor :maximum_qps
|
1382
|
+
|
1383
|
+
# The targeted minimum viewability decile, ranging in values [0, 10]. A value of
|
1384
|
+
# 5 means that the configuration will only match adslots for which we predict at
|
1385
|
+
# least 50% viewability. Values > 10 will be rounded down to 10. An unset value
|
1386
|
+
# or a value of 0 indicates that bid requests will be sent regardless of
|
1387
|
+
# viewability.
|
1388
|
+
# Corresponds to the JSON property `minimumViewabilityDecile`
|
1389
|
+
# @return [Fixnum]
|
1390
|
+
attr_accessor :minimum_viewability_decile
|
1391
|
+
|
1392
|
+
# Output only. Name of the pretargeting configuration that must follow the
|
1393
|
+
# pattern `bidders/`bidder_account_id`/pretargetingConfigs/`config_id``
|
1394
|
+
# Corresponds to the JSON property `name`
|
1395
|
+
# @return [String]
|
1396
|
+
attr_accessor :name
|
1397
|
+
|
1398
|
+
# Generic targeting with string values used in app, website and publisher
|
1399
|
+
# targeting.
|
1400
|
+
# Corresponds to the JSON property `publisherTargeting`
|
1401
|
+
# @return [Google::Apis::RealtimebiddingV1::StringTargetingDimension]
|
1402
|
+
attr_accessor :publisher_targeting
|
1403
|
+
|
1404
|
+
# Output only. The state of this pretargeting configuration.
|
1405
|
+
# Corresponds to the JSON property `state`
|
1406
|
+
# @return [String]
|
1407
|
+
attr_accessor :state
|
1408
|
+
|
1409
|
+
# Generic targeting used for targeting dimensions that contain a list of
|
1410
|
+
# included and excluded numeric IDs used in app, user list, geo, and vertical id
|
1411
|
+
# targeting.
|
1412
|
+
# Corresponds to the JSON property `userListTargeting`
|
1413
|
+
# @return [Google::Apis::RealtimebiddingV1::NumericTargetingDimension]
|
1414
|
+
attr_accessor :user_list_targeting
|
1415
|
+
|
1416
|
+
# Generic targeting used for targeting dimensions that contain a list of
|
1417
|
+
# included and excluded numeric IDs used in app, user list, geo, and vertical id
|
1418
|
+
# targeting.
|
1419
|
+
# Corresponds to the JSON property `verticalTargeting`
|
1420
|
+
# @return [Google::Apis::RealtimebiddingV1::NumericTargetingDimension]
|
1421
|
+
attr_accessor :vertical_targeting
|
1422
|
+
|
1423
|
+
# Generic targeting with string values used in app, website and publisher
|
1424
|
+
# targeting.
|
1425
|
+
# Corresponds to the JSON property `webTargeting`
|
1426
|
+
# @return [Google::Apis::RealtimebiddingV1::StringTargetingDimension]
|
1427
|
+
attr_accessor :web_targeting
|
1428
|
+
|
1429
|
+
def initialize(**args)
|
1430
|
+
update!(**args)
|
1431
|
+
end
|
1432
|
+
|
1433
|
+
# Update properties of this object
|
1434
|
+
def update!(**args)
|
1435
|
+
@allowed_user_targeting_modes = args[:allowed_user_targeting_modes] if args.key?(:allowed_user_targeting_modes)
|
1436
|
+
@app_targeting = args[:app_targeting] if args.key?(:app_targeting)
|
1437
|
+
@billing_id = args[:billing_id] if args.key?(:billing_id)
|
1438
|
+
@display_name = args[:display_name] if args.key?(:display_name)
|
1439
|
+
@excluded_content_label_ids = args[:excluded_content_label_ids] if args.key?(:excluded_content_label_ids)
|
1440
|
+
@geo_targeting = args[:geo_targeting] if args.key?(:geo_targeting)
|
1441
|
+
@included_creative_dimensions = args[:included_creative_dimensions] if args.key?(:included_creative_dimensions)
|
1442
|
+
@included_environments = args[:included_environments] if args.key?(:included_environments)
|
1443
|
+
@included_formats = args[:included_formats] if args.key?(:included_formats)
|
1444
|
+
@included_languages = args[:included_languages] if args.key?(:included_languages)
|
1445
|
+
@included_mobile_operating_system_ids = args[:included_mobile_operating_system_ids] if args.key?(:included_mobile_operating_system_ids)
|
1446
|
+
@included_platforms = args[:included_platforms] if args.key?(:included_platforms)
|
1447
|
+
@included_user_id_types = args[:included_user_id_types] if args.key?(:included_user_id_types)
|
1448
|
+
@interstitial_targeting = args[:interstitial_targeting] if args.key?(:interstitial_targeting)
|
1449
|
+
@invalid_geo_ids = args[:invalid_geo_ids] if args.key?(:invalid_geo_ids)
|
1450
|
+
@maximum_qps = args[:maximum_qps] if args.key?(:maximum_qps)
|
1451
|
+
@minimum_viewability_decile = args[:minimum_viewability_decile] if args.key?(:minimum_viewability_decile)
|
1452
|
+
@name = args[:name] if args.key?(:name)
|
1453
|
+
@publisher_targeting = args[:publisher_targeting] if args.key?(:publisher_targeting)
|
1454
|
+
@state = args[:state] if args.key?(:state)
|
1455
|
+
@user_list_targeting = args[:user_list_targeting] if args.key?(:user_list_targeting)
|
1456
|
+
@vertical_targeting = args[:vertical_targeting] if args.key?(:vertical_targeting)
|
1457
|
+
@web_targeting = args[:web_targeting] if args.key?(:web_targeting)
|
1458
|
+
end
|
1459
|
+
end
|
1460
|
+
|
1461
|
+
# A request to stop targeting the provided apps in a specific pretargeting
|
1462
|
+
# configuration. The pretargeting configuration itself specifies how these apps
|
1463
|
+
# are targeted. in PretargetingConfig.appTargeting.mobileAppTargeting.
|
1464
|
+
class RemoveTargetedAppsRequest
|
1465
|
+
include Google::Apis::Core::Hashable
|
1466
|
+
|
1467
|
+
# A list of app IDs to stop targeting in the pretargeting configuration. These
|
1468
|
+
# values will be removed from the list of targeted app IDs in PretargetingConfig.
|
1469
|
+
# appTargeting.mobileAppTargeting.values.
|
1470
|
+
# Corresponds to the JSON property `appIds`
|
1471
|
+
# @return [Array<String>]
|
1472
|
+
attr_accessor :app_ids
|
1473
|
+
|
1474
|
+
def initialize(**args)
|
1475
|
+
update!(**args)
|
1476
|
+
end
|
1477
|
+
|
1478
|
+
# Update properties of this object
|
1479
|
+
def update!(**args)
|
1480
|
+
@app_ids = args[:app_ids] if args.key?(:app_ids)
|
1481
|
+
end
|
1482
|
+
end
|
1483
|
+
|
1484
|
+
# A request to stop targeting publishers in a specific configuration. The
|
1485
|
+
# pretargeting configuration itself specifies how these publishers are targeted
|
1486
|
+
# in PretargetingConfig.publisherTargeting.
|
1487
|
+
class RemoveTargetedPublishersRequest
|
1488
|
+
include Google::Apis::Core::Hashable
|
1489
|
+
|
1490
|
+
# A list of publisher IDs to stop targeting in the pretargeting configuration.
|
1491
|
+
# These values will be removed from the list of targeted publisher IDs in
|
1492
|
+
# PretargetingConfig.publisherTargeting.values. Publishers are identified by
|
1493
|
+
# their publisher ID from ads.txt / app-ads.txt. See https://iabtechlab.com/ads-
|
1494
|
+
# txt/ and https://iabtechlab.com/app-ads-txt/ for more details.
|
1495
|
+
# Corresponds to the JSON property `publisherIds`
|
1496
|
+
# @return [Array<String>]
|
1497
|
+
attr_accessor :publisher_ids
|
1498
|
+
|
1499
|
+
def initialize(**args)
|
1500
|
+
update!(**args)
|
1501
|
+
end
|
1502
|
+
|
1503
|
+
# Update properties of this object
|
1504
|
+
def update!(**args)
|
1505
|
+
@publisher_ids = args[:publisher_ids] if args.key?(:publisher_ids)
|
1506
|
+
end
|
1507
|
+
end
|
1508
|
+
|
1509
|
+
# A request to stop targeting sites in a specific pretargeting configuration.
|
1510
|
+
# The pretargeting configuration itself specifies how these sites are targeted
|
1511
|
+
# in PretargetingConfig.webTargeting.
|
1512
|
+
class RemoveTargetedSitesRequest
|
1513
|
+
include Google::Apis::Core::Hashable
|
1514
|
+
|
1515
|
+
# A list of site URLs to stop targeting in the pretargeting configuration. These
|
1516
|
+
# values will be removed from the list of targeted URLs in PretargetingConfig.
|
1517
|
+
# webTargeting.values.
|
1518
|
+
# Corresponds to the JSON property `sites`
|
1519
|
+
# @return [Array<String>]
|
1520
|
+
attr_accessor :sites
|
1521
|
+
|
1522
|
+
def initialize(**args)
|
1523
|
+
update!(**args)
|
1524
|
+
end
|
1525
|
+
|
1526
|
+
# Update properties of this object
|
1527
|
+
def update!(**args)
|
1528
|
+
@sites = args[:sites] if args.key?(:sites)
|
1529
|
+
end
|
1530
|
+
end
|
1531
|
+
|
1532
|
+
# Generic targeting with string values used in app, website and publisher
|
1533
|
+
# targeting.
|
1534
|
+
class StringTargetingDimension
|
1535
|
+
include Google::Apis::Core::Hashable
|
1536
|
+
|
1537
|
+
# How the items in this list should be targeted.
|
1538
|
+
# Corresponds to the JSON property `targetingMode`
|
1539
|
+
# @return [String]
|
1540
|
+
attr_accessor :targeting_mode
|
1541
|
+
|
1542
|
+
# The values specified.
|
1543
|
+
# Corresponds to the JSON property `values`
|
1544
|
+
# @return [Array<String>]
|
1545
|
+
attr_accessor :values
|
1546
|
+
|
1547
|
+
def initialize(**args)
|
1548
|
+
update!(**args)
|
1549
|
+
end
|
1550
|
+
|
1551
|
+
# Update properties of this object
|
1552
|
+
def update!(**args)
|
1553
|
+
@targeting_mode = args[:targeting_mode] if args.key?(:targeting_mode)
|
1554
|
+
@values = args[:values] if args.key?(:values)
|
1555
|
+
end
|
1556
|
+
end
|
1557
|
+
|
1558
|
+
# A request to suspend a pretargeting configuration. Sets the configuration's
|
1559
|
+
# state to SUSPENDED.
|
1560
|
+
class SuspendPretargetingConfigRequest
|
1561
|
+
include Google::Apis::Core::Hashable
|
1562
|
+
|
1563
|
+
def initialize(**args)
|
1564
|
+
update!(**args)
|
1565
|
+
end
|
1566
|
+
|
1567
|
+
# Update properties of this object
|
1568
|
+
def update!(**args)
|
1569
|
+
end
|
1570
|
+
end
|
1571
|
+
|
1572
|
+
# The URL-level breakdown for the download size.
|
1573
|
+
class UrlDownloadSize
|
1574
|
+
include Google::Apis::Core::Hashable
|
1575
|
+
|
1576
|
+
# Download size of the URL in kilobytes.
|
1577
|
+
# Corresponds to the JSON property `downloadSizeKb`
|
1578
|
+
# @return [Fixnum]
|
1579
|
+
attr_accessor :download_size_kb
|
1580
|
+
|
1581
|
+
# The normalized URL with query parameters and fragment removed.
|
1582
|
+
# Corresponds to the JSON property `normalizedUrl`
|
1583
|
+
# @return [String]
|
1584
|
+
attr_accessor :normalized_url
|
1585
|
+
|
1586
|
+
def initialize(**args)
|
1587
|
+
update!(**args)
|
1588
|
+
end
|
1589
|
+
|
1590
|
+
# Update properties of this object
|
1591
|
+
def update!(**args)
|
1592
|
+
@download_size_kb = args[:download_size_kb] if args.key?(:download_size_kb)
|
1593
|
+
@normalized_url = args[:normalized_url] if args.key?(:normalized_url)
|
1594
|
+
end
|
1595
|
+
end
|
1596
|
+
|
1597
|
+
# Represents the URL restriction (for the URL captured by the pixel callback)
|
1598
|
+
# for a user list.
|
1599
|
+
class UrlRestriction
|
1600
|
+
include Google::Apis::Core::Hashable
|
1601
|
+
|
1602
|
+
# Represents a whole or partial calendar date, such as a birthday. The time of
|
1603
|
+
# day and time zone are either specified elsewhere or are insignificant. The
|
1604
|
+
# date is relative to the Gregorian Calendar. This can represent one of the
|
1605
|
+
# following: * A full date, with non-zero year, month, and day values * A month
|
1606
|
+
# and day value, with a zero year, such as an anniversary * A year on its own,
|
1607
|
+
# with zero month and day values * A year and month value, with a zero day, such
|
1608
|
+
# as a credit card expiration date Related types are google.type.TimeOfDay and `
|
1609
|
+
# google.protobuf.Timestamp`.
|
1610
|
+
# Corresponds to the JSON property `endDate`
|
1611
|
+
# @return [Google::Apis::RealtimebiddingV1::Date]
|
1612
|
+
attr_accessor :end_date
|
1613
|
+
|
1614
|
+
# The restriction type for the specified URL.
|
1615
|
+
# Corresponds to the JSON property `restrictionType`
|
1616
|
+
# @return [String]
|
1617
|
+
attr_accessor :restriction_type
|
1618
|
+
|
1619
|
+
# Represents a whole or partial calendar date, such as a birthday. The time of
|
1620
|
+
# day and time zone are either specified elsewhere or are insignificant. The
|
1621
|
+
# date is relative to the Gregorian Calendar. This can represent one of the
|
1622
|
+
# following: * A full date, with non-zero year, month, and day values * A month
|
1623
|
+
# and day value, with a zero year, such as an anniversary * A year on its own,
|
1624
|
+
# with zero month and day values * A year and month value, with a zero day, such
|
1625
|
+
# as a credit card expiration date Related types are google.type.TimeOfDay and `
|
1626
|
+
# google.protobuf.Timestamp`.
|
1627
|
+
# Corresponds to the JSON property `startDate`
|
1628
|
+
# @return [Google::Apis::RealtimebiddingV1::Date]
|
1629
|
+
attr_accessor :start_date
|
1630
|
+
|
1631
|
+
# Required. The URL to use for applying the restriction on the user list.
|
1632
|
+
# Corresponds to the JSON property `url`
|
1633
|
+
# @return [String]
|
1634
|
+
attr_accessor :url
|
1635
|
+
|
1636
|
+
def initialize(**args)
|
1637
|
+
update!(**args)
|
1638
|
+
end
|
1639
|
+
|
1640
|
+
# Update properties of this object
|
1641
|
+
def update!(**args)
|
1642
|
+
@end_date = args[:end_date] if args.key?(:end_date)
|
1643
|
+
@restriction_type = args[:restriction_type] if args.key?(:restriction_type)
|
1644
|
+
@start_date = args[:start_date] if args.key?(:start_date)
|
1645
|
+
@url = args[:url] if args.key?(:url)
|
1646
|
+
end
|
1647
|
+
end
|
1648
|
+
|
1649
|
+
# Represents an Authorized Buyers user list. Authorized Buyers can create/update/
|
1650
|
+
# list user lists. Once a user list is created in the system, Authorized Buyers
|
1651
|
+
# can add users to the user list using the bulk uploader API. Alternatively,
|
1652
|
+
# users can be added by hosting a tag on the advertiser's page.
|
1653
|
+
class UserList
|
1654
|
+
include Google::Apis::Core::Hashable
|
1655
|
+
|
1656
|
+
# The description for the user list.
|
1657
|
+
# Corresponds to the JSON property `description`
|
1658
|
+
# @return [String]
|
1659
|
+
attr_accessor :description
|
1660
|
+
|
1661
|
+
# Required. Display name of the user list. This must be unique across all user
|
1662
|
+
# lists for a given account.
|
1663
|
+
# Corresponds to the JSON property `displayName`
|
1664
|
+
# @return [String]
|
1665
|
+
attr_accessor :display_name
|
1666
|
+
|
1667
|
+
# Required. The number of days a user's cookie stays on the user list. The field
|
1668
|
+
# must be between 0 and 540 inclusive.
|
1669
|
+
# Corresponds to the JSON property `membershipDurationDays`
|
1670
|
+
# @return [Fixnum]
|
1671
|
+
attr_accessor :membership_duration_days
|
1672
|
+
|
1673
|
+
# Output only. Name of the user list that must follow the pattern `buyers/`buyer`
|
1674
|
+
# /userLists/`user_list``, where ``buyer`` represents the account ID of the
|
1675
|
+
# buyer who owns the user list. For a bidder accessing user lists on behalf of a
|
1676
|
+
# child seat buyer, ``buyer`` represents the account ID of the child seat buyer.
|
1677
|
+
# ``user_list`` is an int64 identifier assigned by Google to uniquely identify a
|
1678
|
+
# user list.
|
1679
|
+
# Corresponds to the JSON property `name`
|
1680
|
+
# @return [String]
|
1681
|
+
attr_accessor :name
|
1682
|
+
|
1683
|
+
# Output only. The status of the user list. A new user list starts out as open.
|
1684
|
+
# Corresponds to the JSON property `status`
|
1685
|
+
# @return [String]
|
1686
|
+
attr_accessor :status
|
1687
|
+
|
1688
|
+
# Represents the URL restriction (for the URL captured by the pixel callback)
|
1689
|
+
# for a user list.
|
1690
|
+
# Corresponds to the JSON property `urlRestriction`
|
1691
|
+
# @return [Google::Apis::RealtimebiddingV1::UrlRestriction]
|
1692
|
+
attr_accessor :url_restriction
|
1693
|
+
|
1694
|
+
def initialize(**args)
|
1695
|
+
update!(**args)
|
1696
|
+
end
|
1697
|
+
|
1698
|
+
# Update properties of this object
|
1699
|
+
def update!(**args)
|
1700
|
+
@description = args[:description] if args.key?(:description)
|
1701
|
+
@display_name = args[:display_name] if args.key?(:display_name)
|
1702
|
+
@membership_duration_days = args[:membership_duration_days] if args.key?(:membership_duration_days)
|
1703
|
+
@name = args[:name] if args.key?(:name)
|
1704
|
+
@status = args[:status] if args.key?(:status)
|
1705
|
+
@url_restriction = args[:url_restriction] if args.key?(:url_restriction)
|
1706
|
+
end
|
1707
|
+
end
|
1708
|
+
|
1709
|
+
# Video content for a creative.
|
1710
|
+
class VideoContent
|
1711
|
+
include Google::Apis::Core::Hashable
|
1712
|
+
|
1713
|
+
# Video metadata for a creative.
|
1714
|
+
# Corresponds to the JSON property `videoMetadata`
|
1715
|
+
# @return [Google::Apis::RealtimebiddingV1::VideoMetadata]
|
1716
|
+
attr_accessor :video_metadata
|
1717
|
+
|
1718
|
+
# The URL to fetch a video ad.
|
1719
|
+
# Corresponds to the JSON property `videoUrl`
|
1720
|
+
# @return [String]
|
1721
|
+
attr_accessor :video_url
|
1722
|
+
|
1723
|
+
# The contents of a VAST document for a video ad. This document should conform
|
1724
|
+
# to the VAST 2.0 or 3.0 standard.
|
1725
|
+
# Corresponds to the JSON property `videoVastXml`
|
1726
|
+
# @return [String]
|
1727
|
+
attr_accessor :video_vast_xml
|
1728
|
+
|
1729
|
+
def initialize(**args)
|
1730
|
+
update!(**args)
|
1731
|
+
end
|
1732
|
+
|
1733
|
+
# Update properties of this object
|
1734
|
+
def update!(**args)
|
1735
|
+
@video_metadata = args[:video_metadata] if args.key?(:video_metadata)
|
1736
|
+
@video_url = args[:video_url] if args.key?(:video_url)
|
1737
|
+
@video_vast_xml = args[:video_vast_xml] if args.key?(:video_vast_xml)
|
1738
|
+
end
|
1739
|
+
end
|
1740
|
+
|
1741
|
+
# Video metadata for a creative.
|
1742
|
+
class VideoMetadata
|
1743
|
+
include Google::Apis::Core::Hashable
|
1744
|
+
|
1745
|
+
# The duration of the ad. Can be used to filter the response of the creatives.
|
1746
|
+
# list method.
|
1747
|
+
# Corresponds to the JSON property `duration`
|
1748
|
+
# @return [String]
|
1749
|
+
attr_accessor :duration
|
1750
|
+
|
1751
|
+
# Is this a valid VAST ad? Can be used to filter the response of the creatives.
|
1752
|
+
# list method.
|
1753
|
+
# Corresponds to the JSON property `isValidVast`
|
1754
|
+
# @return [Boolean]
|
1755
|
+
attr_accessor :is_valid_vast
|
1756
|
+
alias_method :is_valid_vast?, :is_valid_vast
|
1757
|
+
|
1758
|
+
# Is this a VPAID ad? Can be used to filter the response of the creatives.list
|
1759
|
+
# method.
|
1760
|
+
# Corresponds to the JSON property `isVpaid`
|
1761
|
+
# @return [Boolean]
|
1762
|
+
attr_accessor :is_vpaid
|
1763
|
+
alias_method :is_vpaid?, :is_vpaid
|
1764
|
+
|
1765
|
+
# The list of all media files declared in the VAST. If there are multiple VASTs
|
1766
|
+
# in a wrapper chain, this includes the media files from the deepest one in the
|
1767
|
+
# chain.
|
1768
|
+
# Corresponds to the JSON property `mediaFiles`
|
1769
|
+
# @return [Array<Google::Apis::RealtimebiddingV1::MediaFile>]
|
1770
|
+
attr_accessor :media_files
|
1771
|
+
|
1772
|
+
# The minimum duration that the user has to watch before being able to skip this
|
1773
|
+
# ad. If the field is not set, the ad is not skippable. If the field is set, the
|
1774
|
+
# ad is skippable. Can be used to filter the response of the creatives.list
|
1775
|
+
# method.
|
1776
|
+
# Corresponds to the JSON property `skipOffset`
|
1777
|
+
# @return [String]
|
1778
|
+
attr_accessor :skip_offset
|
1779
|
+
|
1780
|
+
# The maximum VAST version across all wrapped VAST documents. Can be used to
|
1781
|
+
# filter the response of the creatives.list method.
|
1782
|
+
# Corresponds to the JSON property `vastVersion`
|
1783
|
+
# @return [String]
|
1784
|
+
attr_accessor :vast_version
|
1785
|
+
|
1786
|
+
def initialize(**args)
|
1787
|
+
update!(**args)
|
1788
|
+
end
|
1789
|
+
|
1790
|
+
# Update properties of this object
|
1791
|
+
def update!(**args)
|
1792
|
+
@duration = args[:duration] if args.key?(:duration)
|
1793
|
+
@is_valid_vast = args[:is_valid_vast] if args.key?(:is_valid_vast)
|
1794
|
+
@is_vpaid = args[:is_vpaid] if args.key?(:is_vpaid)
|
1795
|
+
@media_files = args[:media_files] if args.key?(:media_files)
|
1796
|
+
@skip_offset = args[:skip_offset] if args.key?(:skip_offset)
|
1797
|
+
@vast_version = args[:vast_version] if args.key?(:vast_version)
|
1798
|
+
end
|
1799
|
+
end
|
1800
|
+
|
1801
|
+
# A request to receive push notifications when any of the creatives belonging to
|
1802
|
+
# the bidder changes status.
|
1803
|
+
class WatchCreativesRequest
|
1804
|
+
include Google::Apis::Core::Hashable
|
1805
|
+
|
1806
|
+
def initialize(**args)
|
1807
|
+
update!(**args)
|
1808
|
+
end
|
1809
|
+
|
1810
|
+
# Update properties of this object
|
1811
|
+
def update!(**args)
|
1812
|
+
end
|
1813
|
+
end
|
1814
|
+
|
1815
|
+
# A response for the request to receive push notification when a bidder's
|
1816
|
+
# creatives change status.
|
1817
|
+
class WatchCreativesResponse
|
1818
|
+
include Google::Apis::Core::Hashable
|
1819
|
+
|
1820
|
+
# The Pub/Sub subscription that can be used to pull creative status
|
1821
|
+
# notifications. This would be of the format `projects/`project_id`/
|
1822
|
+
# subscriptions/`subscription_id``. Subscription is created with pull delivery.
|
1823
|
+
# All service accounts belonging to the bidder will have read access to this
|
1824
|
+
# subscription. Subscriptions that are inactive for more than 90 days will be
|
1825
|
+
# disabled. Please use watchCreatives to re-enable the subscription.
|
1826
|
+
# Corresponds to the JSON property `subscription`
|
1827
|
+
# @return [String]
|
1828
|
+
attr_accessor :subscription
|
1829
|
+
|
1830
|
+
# The Pub/Sub topic that will be used to publish creative serving status
|
1831
|
+
# notifications. This would be of the format `projects/`project_id`/topics/`
|
1832
|
+
# topic_id``.
|
1833
|
+
# Corresponds to the JSON property `topic`
|
1834
|
+
# @return [String]
|
1835
|
+
attr_accessor :topic
|
1836
|
+
|
1837
|
+
def initialize(**args)
|
1838
|
+
update!(**args)
|
1839
|
+
end
|
1840
|
+
|
1841
|
+
# Update properties of this object
|
1842
|
+
def update!(**args)
|
1843
|
+
@subscription = args[:subscription] if args.key?(:subscription)
|
1844
|
+
@topic = args[:topic] if args.key?(:topic)
|
1845
|
+
end
|
1846
|
+
end
|
1847
|
+
end
|
1848
|
+
end
|
1849
|
+
end
|