on develop help sign in
.gitignore+1
since splitsnapshots
unifiedsplit
@@ -15,6 +15,7 @@ vendor
15.vagrant.d
15.vagrant.d
16.stack-work
16.stack-work
17bin
17bin
18+/doc
18
19
19# CTAGS
20# CTAGS
20TAGS
21TAGS
.travis.yml+390−190
@@ -1,14 +1,15 @@
1sudo: false
1sudo: false
2−
2+language: c
3−env:
4− global:
5− - DOC_REF: github.com/brendanhay/gogol-doc.git
6− - secure: fxJPfu/icH+3w9nRcedFtqNumnpmo1vWAA7HBaeeCF0vnzTHBbD2ej3olyaDmFoJ9PaW84q5UKX3iU6BBXLmlestOZCcfQ9nDvVuIVpimIovO7QuZhnRYea0SaSRcXEgNE+nWEcsiiKWuVUnDEXAUQRCs04YQpAvgsUjMcZgXQw=
7−
8cache:
3cache:
9 apt: true
4 apt: true
10 directories:
5 directories:
6+ - $HOME/.ghc
7+ - $HOME/.cabal
11− - ~/.stack
8+ - $HOME/.stack
9+
10+env:
11+ global:
12+ - secure: 'ewXPUNd7qcveZrgQdpX1edCRIrvZjkfKKP/CphCcEdbh2A/u9hw5U8O8vDs9baxgakriOTFKW3eDKPL0rF6I84GK7HdXiqugKIn26/H0gH5776PP+70t2y047xZPnrjFh37mnKSbY8xg/nUYq3Iw7R2ltY7+rpEJ4GkW6kg+x6oww44DmfiAw74hqNoRAxIj5jZWGw1CC5rn7y8DBo9AQ/p74M6RGsP6A94qpOnvVghg/OnhVVKLv1w3dRhuY5fmOC7SsNVLq44MDjDBpJ4GdSUbyR7tpD1rR4CoIxa5F6/zuNGE9zpToLkiToqO83dkthG1dlnMYmv8iAF1/yjxFNvCEtoOs+sFhQSomYaypwE9Gx3U/u8B0ohZp5AI09i3FoVVYI+ioXxeUL/WDtjwMTRS/Yt799kuxAw45zqbR5Pm0SKHtL6LN0qnpVaqU7R2X0glvie/3MNf5usagahsebm0sfl/78rJXSOGQkbo2YBiAb8lAREfZ6hQpXNH4W8b6xumO4DKwd9pycCdz63XYPj9XiJdboFeEMhz0nHdEe2SLdiOE5e7Ab6H8KK78uxJ8dbno4EfLqoiU0s6A5SSzvQG1oFvfwWp2QICfV3j937ZxOqS7tD3/EfpTaOOLZCK3k/LeWkk2+r11uMwNAHaHU9bReFaIPJU60mf212A2l8='
12
13
13branches:
14branches:
14 only:
15 only:
@@ -29,194 +30,393 @@ script:
29matrix:
30matrix:
30 fast_finish: true
31 fast_finish: true
31 include:
32 include:
32− # Below is auto-generated by ./scripts/travis-matrix >> .travis.yml
33+# GENERATED
33
34
34 # Documentation
35 # Documentation
35− - env: GHCVER=7.10.2 LIBRARY=documentation
36+ - env: GHCVER=8.2.2 LIBRARY=documentation
36− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
37+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
37
38
38 # Core
39 # Core
39− - env: GHCVER=7.10.2 LIBRARY=gogol-core
40+ - env: GHCVER=8.6.3 LIBRARY=gogol-core
40− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
41+ addons: { apt: { packages: [ghc-8.6.3], sources: [hvr-ghc] } }
41− - env: GHCVER=7.8.4 LIBRARY=gogol-core
42+ - env: GHCVER=8.4.4 LIBRARY=gogol-core
42− addons: { apt: { packages: [ghc-7.8.4], sources: [hvr-ghc] } }
43+ addons: { apt: { packages: [ghc-8.4.4], sources: [hvr-ghc] } }
43− - env: GHCVER=7.10.2 LIBRARY=gogol
44+ - env: GHCVER=8.2.2 LIBRARY=gogol-core
44− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
45+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
46+ - env: GHCVER=8.6.3 LIBRARY=gogol
47+ addons: { apt: { packages: [ghc-8.6.3], sources: [hvr-ghc] } }
45− - env: GHCVER=7.8.4 LIBRARY=gogol
48+ - env: GHCVER=8.4.4 LIBRARY=gogol
46− addons: { apt: { packages: [ghc-7.8.4], sources: [hvr-ghc] } }
49+ addons: { apt: { packages: [ghc-8.4.4], sources: [hvr-ghc] } }
50+ - env: GHCVER=8.2.2 LIBRARY=gogol
51+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
47
52
48 # Priority
53 # Priority
54+ - env: GHCVER=8.6.3 LIBRARY=gogol-compute
55+ addons: { apt: { packages: [ghc-8.6.3], sources: [hvr-ghc] } }
56+ - env: GHCVER=8.4.4 LIBRARY=gogol-compute
57+ addons: { apt: { packages: [ghc-8.4.4], sources: [hvr-ghc] } }
49− - env: GHCVER=7.10.2 LIBRARY=gogol-compute
58+ - env: GHCVER=8.2.2 LIBRARY=gogol-compute
50− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
59+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
60+ - env: GHCVER=8.6.3 LIBRARY=gogol-drive
61+ addons: { apt: { packages: [ghc-8.6.3], sources: [hvr-ghc] } }
51− - env: GHCVER=7.8.4 LIBRARY=gogol-compute
62+ - env: GHCVER=8.4.4 LIBRARY=gogol-drive
52− addons: { apt: { packages: [ghc-7.8.4], sources: [hvr-ghc] } }
63+ addons: { apt: { packages: [ghc-8.4.4], sources: [hvr-ghc] } }
53− - env: GHCVER=7.10.2 LIBRARY=gogol-drive
64+ - env: GHCVER=8.2.2 LIBRARY=gogol-drive
54− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
65+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
55− - env: GHCVER=7.8.4 LIBRARY=gogol-drive
66+ - env: GHCVER=8.6.3 LIBRARY=gogol-appengine
56− addons: { apt: { packages: [ghc-7.8.4], sources: [hvr-ghc] } }
67+ addons: { apt: { packages: [ghc-8.6.3], sources: [hvr-ghc] } }
68+ - env: GHCVER=8.4.4 LIBRARY=gogol-appengine
69+ addons: { apt: { packages: [ghc-8.4.4], sources: [hvr-ghc] } }
70+ - env: GHCVER=8.2.2 LIBRARY=gogol-appengine
71+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
72+ - env: GHCVER=8.6.3 LIBRARY=gogol-storage
73+ addons: { apt: { packages: [ghc-8.6.3], sources: [hvr-ghc] } }
74+ - env: GHCVER=8.4.4 LIBRARY=gogol-storage
75+ addons: { apt: { packages: [ghc-8.4.4], sources: [hvr-ghc] } }
76+ - env: GHCVER=8.2.2 LIBRARY=gogol-storage
77+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
78+ - env: GHCVER=8.6.3 LIBRARY=gogol-oauth2
79+ addons: { apt: { packages: [ghc-8.6.3], sources: [hvr-ghc] } }
80+ - env: GHCVER=8.4.4 LIBRARY=gogol-oauth2
81+ addons: { apt: { packages: [ghc-8.4.4], sources: [hvr-ghc] } }
82+ - env: GHCVER=8.2.2 LIBRARY=gogol-oauth2
83+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
84+ - env: GHCVER=8.6.3 LIBRARY=gogol-gmail
85+ addons: { apt: { packages: [ghc-8.6.3], sources: [hvr-ghc] } }
86+ - env: GHCVER=8.4.4 LIBRARY=gogol-gmail
87+ addons: { apt: { packages: [ghc-8.4.4], sources: [hvr-ghc] } }
88+ - env: GHCVER=8.2.2 LIBRARY=gogol-gmail
89+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
57
90
58 # Remainder
91 # Remainder
59− - env: GHCVER=7.10.2 LIBRARY=gogol-adexchange-buyer
92+ - env: GHCVER=8.2.2 LIBRARY=gogol-abusiveexperiencereport
60− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
93+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
61− - env: GHCVER=7.10.2 LIBRARY=gogol-adexchange-seller
94+ - env: GHCVER=8.2.2 LIBRARY=gogol-acceleratedmobilepageurl
62− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
95+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
63− - env: GHCVER=7.10.2 LIBRARY=gogol-admin-datatransfer
96+ - env: GHCVER=8.2.2 LIBRARY=gogol-accessapproval
64− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
97+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
65− - env: GHCVER=7.10.2 LIBRARY=gogol-admin-directory
98+ - env: GHCVER=8.2.2 LIBRARY=gogol-accesscontextmanager
66− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
99+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
67− - env: GHCVER=7.10.2 LIBRARY=gogol-admin-emailmigration
100+ - env: GHCVER=8.2.2 LIBRARY=gogol-adexchange-buyer
68− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
101+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
69− - env: GHCVER=7.10.2 LIBRARY=gogol-admin-reports
102+ - env: GHCVER=8.2.2 LIBRARY=gogol-adexchangebuyer2
70− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
103+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
71− - env: GHCVER=7.10.2 LIBRARY=gogol-adsense
104+ - env: GHCVER=8.2.2 LIBRARY=gogol-adexchange-seller
72− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
105+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
73− - env: GHCVER=7.10.2 LIBRARY=gogol-adsense-host
106+ - env: GHCVER=8.2.2 LIBRARY=gogol-adexperiencereport
74− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
107+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
75− - env: GHCVER=7.10.2 LIBRARY=gogol-affiliates
108+ - env: GHCVER=8.2.2 LIBRARY=gogol-admin-datatransfer
76− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
109+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
77− - env: GHCVER=7.10.2 LIBRARY=gogol-analytics
110+ - env: GHCVER=8.2.2 LIBRARY=gogol-admin-directory
78− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
111+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
79− - env: GHCVER=7.10.2 LIBRARY=gogol-appengine
112+ - env: GHCVER=8.2.2 LIBRARY=gogol-admin-reports
80− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
113+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
81− - env: GHCVER=7.10.2 LIBRARY=gogol-appengine-taskqueue
114+ - env: GHCVER=8.2.2 LIBRARY=gogol-adsense
82− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
115+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
83− - env: GHCVER=7.10.2 LIBRARY=gogol-apps-activity
116+ - env: GHCVER=8.2.2 LIBRARY=gogol-adsense-host
84− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
117+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
85− - env: GHCVER=7.10.2 LIBRARY=gogol-apps-calendar
118+ - env: GHCVER=8.2.2 LIBRARY=gogol-alertcenter
86− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
119+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
87− - env: GHCVER=7.10.2 LIBRARY=gogol-apps-licensing
120+ - env: GHCVER=8.2.2 LIBRARY=gogol-analytics
88− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
121+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
89− - env: GHCVER=7.10.2 LIBRARY=gogol-apps-reseller
122+ - env: GHCVER=8.2.2 LIBRARY=gogol-analyticsreporting
90− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
123+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
91− - env: GHCVER=7.10.2 LIBRARY=gogol-apps-tasks
124+ - env: GHCVER=8.2.2 LIBRARY=gogol-androiddeviceprovisioning
92− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
125+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
93− - env: GHCVER=7.10.2 LIBRARY=gogol-bigquery
126+ - env: GHCVER=8.2.2 LIBRARY=gogol-android-enterprise
94− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
127+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
95− - env: GHCVER=7.10.2 LIBRARY=gogol-billing
128+ - env: GHCVER=8.2.2 LIBRARY=gogol-androidmanagement
96− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
129+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
97− - env: GHCVER=7.10.2 LIBRARY=gogol-blogger
130+ - env: GHCVER=8.2.2 LIBRARY=gogol-android-publisher
98− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
131+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
99− - env: GHCVER=7.10.2 LIBRARY=gogol-books
132+ - env: GHCVER=8.2.2 LIBRARY=gogol-apps-activity
100− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
133+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
101− - env: GHCVER=7.10.2 LIBRARY=gogol-civicinfo
134+ - env: GHCVER=8.2.2 LIBRARY=gogol-apps-calendar
102− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
135+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
103− - env: GHCVER=7.10.2 LIBRARY=gogol-classroom
136+ - env: GHCVER=8.2.2 LIBRARY=gogol-apps-licensing
104− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
137+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
105− - env: GHCVER=7.10.2 LIBRARY=gogol-compute-autoscaler
138+ - env: GHCVER=8.2.2 LIBRARY=gogol-apps-reseller
106− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
139+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
107− - env: GHCVER=7.10.2 LIBRARY=gogol-compute-useraccounts
140+ - env: GHCVER=8.2.2 LIBRARY=gogol-apps-tasks
108− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
141+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
109− - env: GHCVER=7.10.2 LIBRARY=gogol-container
142+ - env: GHCVER=8.2.2 LIBRARY=gogol-appstate
110− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
143+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
111− - env: GHCVER=7.10.2 LIBRARY=gogol-customsearch
144+ - env: GHCVER=8.2.2 LIBRARY=gogol-bigquery
112− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
145+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
113− - env: GHCVER=7.10.2 LIBRARY=gogol-dataflow
146+ - env: GHCVER=8.2.2 LIBRARY=gogol-bigquerydatatransfer
114− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
147+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
115− - env: GHCVER=7.10.2 LIBRARY=gogol-datastore
148+ - env: GHCVER=8.2.2 LIBRARY=gogol-bigtableadmin
116− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
149+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
117− - env: GHCVER=7.10.2 LIBRARY=gogol-debugger
150+ - env: GHCVER=8.2.2 LIBRARY=gogol-billing
118− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
151+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
119− - env: GHCVER=7.10.2 LIBRARY=gogol-deploymentmanager
152+ - env: GHCVER=8.2.2 LIBRARY=gogol-binaryauthorization
120− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
153+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
121− - env: GHCVER=7.10.2 LIBRARY=gogol-dfareporting
154+ - env: GHCVER=8.2.2 LIBRARY=gogol-blogger
122− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
155+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
123− - env: GHCVER=7.10.2 LIBRARY=gogol-discovery
156+ - env: GHCVER=8.2.2 LIBRARY=gogol-books
124− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
157+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
125− - env: GHCVER=7.10.2 LIBRARY=gogol-dns
158+ - env: GHCVER=8.2.2 LIBRARY=gogol-chat
126− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
159+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
127− - env: GHCVER=7.10.2 LIBRARY=gogol-doubleclick-bids
160+ - env: GHCVER=8.2.2 LIBRARY=gogol-civicinfo
128− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
161+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
129− - env: GHCVER=7.10.2 LIBRARY=gogol-doubleclick-search
162+ - env: GHCVER=8.2.2 LIBRARY=gogol-classroom
130− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
163+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
131− - env: GHCVER=7.10.2 LIBRARY=gogol-fitness
164+ - env: GHCVER=8.2.2 LIBRARY=gogol-cloudasset
132− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
165+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
133− - env: GHCVER=7.10.2 LIBRARY=gogol-fonts
166+ - env: GHCVER=8.2.2 LIBRARY=gogol-clouderrorreporting
134− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
167+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
135− - env: GHCVER=7.10.2 LIBRARY=gogol-freebasesearch
168+ - env: GHCVER=8.2.2 LIBRARY=gogol-cloudfunctions
136− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
169+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
137− - env: GHCVER=7.10.2 LIBRARY=gogol-fusiontables
170+ - env: GHCVER=8.2.2 LIBRARY=gogol-cloudidentity
138− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
171+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
139− - env: GHCVER=7.10.2 LIBRARY=gogol-games
172+ - env: GHCVER=8.2.2 LIBRARY=gogol-cloudiot
140− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
173+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
141− - env: GHCVER=7.10.2 LIBRARY=gogol-games-appstate
174+ - env: GHCVER=8.2.2 LIBRARY=gogol-cloudkms
142− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
175+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
143− - env: GHCVER=7.10.2 LIBRARY=gogol-games-configuration
176+ - env: GHCVER=8.2.2 LIBRARY=gogol-cloudprivatecatalog
144− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
177+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
145− - env: GHCVER=7.10.2 LIBRARY=gogol-games-management
178+ - env: GHCVER=8.2.2 LIBRARY=gogol-cloudprivatecatalogproducer
146− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
179+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
147− - env: GHCVER=7.10.2 LIBRARY=gogol-genomics
180+ - env: GHCVER=8.2.2 LIBRARY=gogol-cloudprofiler
148− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
181+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
149− - env: GHCVER=7.10.2 LIBRARY=gogol-gmail
182+ - env: GHCVER=8.2.2 LIBRARY=gogol-cloudscheduler
150− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
183+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
151− - env: GHCVER=7.10.2 LIBRARY=gogol-groups-migration
184+ - env: GHCVER=8.2.2 LIBRARY=gogol-cloudsearch
152− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
185+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
153− - env: GHCVER=7.10.2 LIBRARY=gogol-identity-toolkit
186+ - env: GHCVER=8.2.2 LIBRARY=gogol-cloudshell
154− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
187+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
155− - env: GHCVER=7.10.2 LIBRARY=gogol-instancegroups
188+ - env: GHCVER=8.2.2 LIBRARY=gogol-cloudtasks
156− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
189+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
157− - env: GHCVER=7.10.2 LIBRARY=gogol-instancegroups-manager
190+ - env: GHCVER=8.2.2 LIBRARY=gogol-cloudtrace
158− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
191+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
159− - env: GHCVER=7.10.2 LIBRARY=gogol-instancegroups-updater
192+ - env: GHCVER=8.2.2 LIBRARY=gogol-commentanalyzer
160− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
193+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
161− - env: GHCVER=7.10.2 LIBRARY=gogol-latencytest
194+ - env: GHCVER=8.2.2 LIBRARY=gogol-composer
162− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
195+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
163− - env: GHCVER=7.10.2 LIBRARY=gogol-logging
196+ - env: GHCVER=8.2.2 LIBRARY=gogol-consumersurveys
164− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
197+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
165− - env: GHCVER=7.10.2 LIBRARY=gogol-maps-coordinate
198+ - env: GHCVER=8.2.2 LIBRARY=gogol-container
166− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
199+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
167− - env: GHCVER=7.10.2 LIBRARY=gogol-maps-engine
200+ - env: GHCVER=8.2.2 LIBRARY=gogol-containeranalysis
168− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
201+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
169− - env: GHCVER=7.10.2 LIBRARY=gogol-mirror
202+ - env: GHCVER=8.2.2 LIBRARY=gogol-containerbuilder
170− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
203+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
171− - env: GHCVER=7.10.2 LIBRARY=gogol-monitoring
204+ - env: GHCVER=8.2.2 LIBRARY=gogol-customsearch
172− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
205+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
173− - env: GHCVER=7.10.2 LIBRARY=gogol-oauth2
206+ - env: GHCVER=8.2.2 LIBRARY=gogol-dataflow
174− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
207+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
175− - env: GHCVER=7.10.2 LIBRARY=gogol-pagespeed
208+ - env: GHCVER=8.2.2 LIBRARY=gogol-datafusion
176− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
209+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
177− - env: GHCVER=7.10.2 LIBRARY=gogol-partners
210+ - env: GHCVER=8.2.2 LIBRARY=gogol-dataproc
178− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
211+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
179− - env: GHCVER=7.10.2 LIBRARY=gogol-play-developer
212+ - env: GHCVER=8.2.2 LIBRARY=gogol-datastore
180− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
213+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
181− - env: GHCVER=7.10.2 LIBRARY=gogol-play-enterprise
214+ - env: GHCVER=8.2.2 LIBRARY=gogol-debugger
182− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
215+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
183− - env: GHCVER=7.10.2 LIBRARY=gogol-play-moviespartner
216+ - env: GHCVER=8.2.2 LIBRARY=gogol-deploymentmanager
184− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
217+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
185− - env: GHCVER=7.10.2 LIBRARY=gogol-plus
218+ - env: GHCVER=8.2.2 LIBRARY=gogol-dfareporting
186− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
219+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
187− - env: GHCVER=7.10.2 LIBRARY=gogol-plus-domains
220+ - env: GHCVER=8.2.2 LIBRARY=gogol-dialogflow
188− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
221+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
189− - env: GHCVER=7.10.2 LIBRARY=gogol-prediction
222+ - env: GHCVER=8.2.2 LIBRARY=gogol-digitalassetlinks
190− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
223+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
191− - env: GHCVER=7.10.2 LIBRARY=gogol-proximitybeacon
224+ - env: GHCVER=8.2.2 LIBRARY=gogol-discovery
192− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
225+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
193− - env: GHCVER=7.10.2 LIBRARY=gogol-pubsub
226+ - env: GHCVER=8.2.2 LIBRARY=gogol-dlp
194− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
227+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
195− - env: GHCVER=7.10.2 LIBRARY=gogol-qpxexpress
228+ - env: GHCVER=8.2.2 LIBRARY=gogol-dns
196− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
229+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
197− - env: GHCVER=7.10.2 LIBRARY=gogol-resourcemanager
230+ - env: GHCVER=8.2.2 LIBRARY=gogol-docs
198− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
231+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
199− - env: GHCVER=7.10.2 LIBRARY=gogol-shopping-content
232+ - env: GHCVER=8.2.2 LIBRARY=gogol-doubleclick-bids
200− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
233+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
201− - env: GHCVER=7.10.2 LIBRARY=gogol-siteverification
234+ - env: GHCVER=8.2.2 LIBRARY=gogol-doubleclick-search
202− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
235+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
203− - env: GHCVER=7.10.2 LIBRARY=gogol-spectrum
236+ - env: GHCVER=8.2.2 LIBRARY=gogol-driveactivity
204− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
237+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
205− - env: GHCVER=7.10.2 LIBRARY=gogol-sqladmin
238+ - env: GHCVER=8.2.2 LIBRARY=gogol-factchecktools
206− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
239+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
207− - env: GHCVER=7.10.2 LIBRARY=gogol-storage
240+ - env: GHCVER=8.2.2 LIBRARY=gogol-file
208− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
241+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
209− - env: GHCVER=7.10.2 LIBRARY=gogol-storage-transfer
242+ - env: GHCVER=8.2.2 LIBRARY=gogol-firebase-dynamiclinks
210− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
243+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
211− - env: GHCVER=7.10.2 LIBRARY=gogol-tagmanager
244+ - env: GHCVER=8.2.2 LIBRARY=gogol-firebasehosting
212− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
245+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
213− - env: GHCVER=7.10.2 LIBRARY=gogol-translate
246+ - env: GHCVER=8.2.2 LIBRARY=gogol-firebaseremoteconfig
214− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
247+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
215− - env: GHCVER=7.10.2 LIBRARY=gogol-urlshortener
248+ - env: GHCVER=8.2.2 LIBRARY=gogol-firebase-rules
216− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
249+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
217− - env: GHCVER=7.10.2 LIBRARY=gogol-webmaster-tools
250+ - env: GHCVER=8.2.2 LIBRARY=gogol-firestore
218− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
251+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
219− - env: GHCVER=7.10.2 LIBRARY=gogol-youtube
252+ - env: GHCVER=8.2.2 LIBRARY=gogol-fitness
220− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
253+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
221− - env: GHCVER=7.10.2 LIBRARY=gogol-youtube-analytics
254+ - env: GHCVER=8.2.2 LIBRARY=gogol-fonts
222− addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
255+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
256+ - env: GHCVER=8.2.2 LIBRARY=gogol-fusiontables
257+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
258+ - env: GHCVER=8.2.2 LIBRARY=gogol-games
259+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
260+ - env: GHCVER=8.2.2 LIBRARY=gogol-games-configuration
261+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
262+ - env: GHCVER=8.2.2 LIBRARY=gogol-games-management
263+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
264+ - env: GHCVER=8.2.2 LIBRARY=gogol-genomics
265+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
266+ - env: GHCVER=8.2.2 LIBRARY=gogol-groups-migration
267+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
268+ - env: GHCVER=8.2.2 LIBRARY=gogol-groups-settings
269+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
270+ - env: GHCVER=8.2.2 LIBRARY=gogol-healthcare
271+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
272+ - env: GHCVER=8.2.2 LIBRARY=gogol-iam
273+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
274+ - env: GHCVER=8.2.2 LIBRARY=gogol-iamcredentials
275+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
276+ - env: GHCVER=8.2.2 LIBRARY=gogol-iap
277+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
278+ - env: GHCVER=8.2.2 LIBRARY=gogol-identity-toolkit
279+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
280+ - env: GHCVER=8.2.2 LIBRARY=gogol-indexing
281+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
282+ - env: GHCVER=8.2.2 LIBRARY=gogol-jobs
283+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
284+ - env: GHCVER=8.2.2 LIBRARY=gogol-kgsearch
285+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
286+ - env: GHCVER=8.2.2 LIBRARY=gogol-language
287+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
288+ - env: GHCVER=8.2.2 LIBRARY=gogol-libraryagent
289+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
290+ - env: GHCVER=8.2.2 LIBRARY=gogol-logging
291+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
292+ - env: GHCVER=8.2.2 LIBRARY=gogol-manufacturers
293+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
294+ - env: GHCVER=8.2.2 LIBRARY=gogol-mirror
295+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
296+ - env: GHCVER=8.2.2 LIBRARY=gogol-ml
297+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
298+ - env: GHCVER=8.2.2 LIBRARY=gogol-monitoring
299+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
300+ - env: GHCVER=8.2.2 LIBRARY=gogol-oslogin
301+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
302+ - env: GHCVER=8.2.2 LIBRARY=gogol-pagespeed
303+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
304+ - env: GHCVER=8.2.2 LIBRARY=gogol-partners
305+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
306+ - env: GHCVER=8.2.2 LIBRARY=gogol-people
307+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
308+ - env: GHCVER=8.2.2 LIBRARY=gogol-playcustomapp
309+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
310+ - env: GHCVER=8.2.2 LIBRARY=gogol-play-moviespartner
311+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
312+ - env: GHCVER=8.2.2 LIBRARY=gogol-plus
313+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
314+ - env: GHCVER=8.2.2 LIBRARY=gogol-plus-domains
315+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
316+ - env: GHCVER=8.2.2 LIBRARY=gogol-poly
317+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
318+ - env: GHCVER=8.2.2 LIBRARY=gogol-prediction
319+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
320+ - env: GHCVER=8.2.2 LIBRARY=gogol-proximitybeacon
321+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
322+ - env: GHCVER=8.2.2 LIBRARY=gogol-pubsub
323+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
324+ - env: GHCVER=8.2.2 LIBRARY=gogol-qpxexpress
325+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
326+ - env: GHCVER=8.2.2 LIBRARY=gogol-redis
327+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
328+ - env: GHCVER=8.2.2 LIBRARY=gogol-remotebuildexecution
329+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
330+ - env: GHCVER=8.2.2 LIBRARY=gogol-replicapool
331+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
332+ - env: GHCVER=8.2.2 LIBRARY=gogol-replicapool-updater
333+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
334+ - env: GHCVER=8.2.2 LIBRARY=gogol-resourcemanager
335+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
336+ - env: GHCVER=8.2.2 LIBRARY=gogol-run
337+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
338+ - env: GHCVER=8.2.2 LIBRARY=gogol-runtimeconfig
339+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
340+ - env: GHCVER=8.2.2 LIBRARY=gogol-safebrowsing
341+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
342+ - env: GHCVER=8.2.2 LIBRARY=gogol-script
343+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
344+ - env: GHCVER=8.2.2 LIBRARY=gogol-searchconsole
345+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
346+ - env: GHCVER=8.2.2 LIBRARY=gogol-securitycenter
347+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
348+ - env: GHCVER=8.2.2 LIBRARY=gogol-servicebroker
349+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
350+ - env: GHCVER=8.2.2 LIBRARY=gogol-serviceconsumermanagement
351+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
352+ - env: GHCVER=8.2.2 LIBRARY=gogol-servicecontrol
353+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
354+ - env: GHCVER=8.2.2 LIBRARY=gogol-servicemanagement
355+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
356+ - env: GHCVER=8.2.2 LIBRARY=gogol-servicenetworking
357+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
358+ - env: GHCVER=8.2.2 LIBRARY=gogol-serviceusage
359+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
360+ - env: GHCVER=8.2.2 LIBRARY=gogol-serviceuser
361+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
362+ - env: GHCVER=8.2.2 LIBRARY=gogol-sheets
363+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
364+ - env: GHCVER=8.2.2 LIBRARY=gogol-shopping-content
365+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
366+ - env: GHCVER=8.2.2 LIBRARY=gogol-siteverification
367+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
368+ - env: GHCVER=8.2.2 LIBRARY=gogol-slides
369+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
370+ - env: GHCVER=8.2.2 LIBRARY=gogol-sourcerepo
371+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
372+ - env: GHCVER=8.2.2 LIBRARY=gogol-spanner
373+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
374+ - env: GHCVER=8.2.2 LIBRARY=gogol-spectrum
375+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
376+ - env: GHCVER=8.2.2 LIBRARY=gogol-speech
377+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
378+ - env: GHCVER=8.2.2 LIBRARY=gogol-sqladmin
379+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
380+ - env: GHCVER=8.2.2 LIBRARY=gogol-storage-transfer
381+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
382+ - env: GHCVER=8.2.2 LIBRARY=gogol-streetviewpublish
383+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
384+ - env: GHCVER=8.2.2 LIBRARY=gogol-surveys
385+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
386+ - env: GHCVER=8.2.2 LIBRARY=gogol-tagmanager
387+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
388+ - env: GHCVER=8.2.2 LIBRARY=gogol-testing
389+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
390+ - env: GHCVER=8.2.2 LIBRARY=gogol-texttospeech
391+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
392+ - env: GHCVER=8.2.2 LIBRARY=gogol-toolresults
393+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
394+ - env: GHCVER=8.2.2 LIBRARY=gogol-tpu
395+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
396+ - env: GHCVER=8.2.2 LIBRARY=gogol-tracing
397+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
398+ - env: GHCVER=8.2.2 LIBRARY=gogol-translate
399+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
400+ - env: GHCVER=8.2.2 LIBRARY=gogol-urlshortener
401+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
402+ - env: GHCVER=8.2.2 LIBRARY=gogol-vault
403+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
404+ - env: GHCVER=8.2.2 LIBRARY=gogol-videointelligence
405+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
406+ - env: GHCVER=8.2.2 LIBRARY=gogol-vision
407+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
408+ - env: GHCVER=8.2.2 LIBRARY=gogol-webmaster-tools
409+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
410+ - env: GHCVER=8.2.2 LIBRARY=gogol-websecurityscanner
411+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
412+ - env: GHCVER=8.2.2 LIBRARY=gogol-youtube
413+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
414+ - env: GHCVER=8.2.2 LIBRARY=gogol-youtube-analytics
415+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
416+ - env: GHCVER=8.2.2 LIBRARY=gogol-youtube-reporting
417+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
418+
419+ # Examples
420+ - env: GHCVER=8.2.2 LIBRARY=gogol-examples
421+ addons: { apt: { packages: [ghc-8.2.2], sources: [hvr-ghc] } }
422+# END GENERATED
CONTRIBUTORSnew file+19
@@ -0,0 +1,19 @@
1+Aleksey Makarov
2+Alex Babkin
3+Benjamin Summers
4+Brendan Hay
5+Cthulhu Den
6+David Tulig
7+Eugene Smolanka
8+Grigory Bordyugov
9+Markus Schirp
10+Trayton White
11+Tsai Chia-Chi
12+Koray Al
13+Michael Xavier
14+miladz68
15+Steven Shaw
16+Karshan Sharma
17+Julian Arni
18+Benjamin Smith
19+Julian Ospald
LICENSE−6
@@ -365,9 +365,3 @@ file in a relevant directory) where a recipient would be likely to look
365for such a notice.
365for such a notice.
366
366
367You may add additional accurate notices of copyright ownership.
367You may add additional accurate notices of copyright ownership.
368−
369−Exhibit B - "Incompatible With Secondary Licenses" Notice
370−---------------------------------------------------------
371−
372− This Source Code Form is "Incompatible With Secondary Licenses", as
373− defined by the Mozilla Public License, v. 2.0.
Makefile+5−5
@@ -1,9 +1,9 @@
1SERVICES ?= $(wildcard gogol-*)
1SERVICES ?= $(wildcard gogol-*)
2LIBRARIES ?= core gogol $(SERVICES)
2LIBRARIES ?= core gogol $(SERVICES)
3−FORWARD := sdist upload candidate
3+FORWARD := sdist upload upload-docs
4
4
5build:
5build:
6− stack build
6+ stack build --fast
7
7
8clean:
8clean:
9 stack clean
9 stack clean
@@ -22,10 +22,10 @@ $(foreach c,$(FORWARD),$(eval $(call forward, $c)))
22.PHONY: $(LIBRARIES)
22.PHONY: $(LIBRARIES)
23
23
24gogol:
24gogol:
25− stack build gogol
25+ stack build --fast gogol
26
26
27core:
27core:
28− stack build gogol-core
28+ stack build --fast gogol-core
29
29
30$(SERVICES):
30$(SERVICES):
31− stack build $@
31+ stack build --fast $@
README.md+43
@@ -3,8 +3,15 @@
3**Warning:** This is an experimental prototype/preview release which is still
3**Warning:** This is an experimental prototype/preview release which is still
4under heavy development and not intended for public consumption, caveat emptor!
4under heavy development and not intended for public consumption, caveat emptor!
5
5
6+[![Build Status](https://img.shields.io/travis/brendanhay/gogol/develop.svg?maxAge=2592000)](https://travis-ci.org/brendanhay/gogol)
7+[![Hackage Version](https://img.shields.io/hackage/v/gogol.svg)](http://hackage.haskell.org/package/gogol)
8+[![Gitter Chat](https://img.shields.io/gitter/room/brendanhay/gogol.js.svg?maxAge=2592000)](https://gitter.im/brendanhay/gogol)
9+
6
10
7* [Description](#description)
11* [Description](#description)
12+* [Documentation](#documentation)
13+* [Organisation](#organisation)
14+* [Change Log](#change-log)
8* [Contribute](#contribute)
15* [Contribute](#contribute)
9* [Licence](#licence)
16* [Licence](#licence)
10
17
@@ -14,6 +21,39 @@ under heavy development and not intended for public consumption, caveat emptor!
14<img alt="Гоголь-моголь" height="261px;" src="https://upload.wikimedia.org/wikipedia/commons/c/c7/Kogel_mogel.JPG">
21<img alt="Гоголь-моголь" height="261px;" src="https://upload.wikimedia.org/wikipedia/commons/c/c7/Kogel_mogel.JPG">
15<img alt="Мико́ла Васи́льович Го́голь" height="261px" src="https://upload.wikimedia.org/wikipedia/commons/3/31/NV_Gogol.png">
22<img alt="Мико́ла Васи́льович Го́голь" height="261px" src="https://upload.wikimedia.org/wikipedia/commons/3/31/NV_Gogol.png">
16
23
24+A comprehensive Google Services SDK for Haskell supporting all of the publicly
25+available services.
26+
27+An introductory blog post detailing the motivation can be found [here](http://brendanhay.nz/gogol-comprehensive-haskell-google-client).
28+
29+## Documentation
30+
31+You can find the latest stable release documentation for each respective library
32+on Hackage under the [Google section](http://hackage.haskell.org/packages/#cat:Google).
33+
34+Haddock documentation which is built by CI from the `develop` branch
35+can be found [here](http://brendanhay.nz/gogol-doc).
36+
37+
38+## Organisation
39+
40+This repository is organised into the following directory structure:
41+
42+* [`gogol`](gogol): Actual operational logic, you'll need to import this to send requests etc.
43+* `gogol-*`: Data types for each of the individual Google Compute Engine Service libraries.
44+* [`core`](core): The `gogol-core` library upon which each of the services depends.
45+* [`examples`](examples): A currently sparse collection of examples for the various services.
46+* [`gen`](gen): The code generation binary, along with configuration, templates, and assets.
47+* [`script`](script): CI scripts to manage the release lifecycle of the service libraries.
48+* [`share`](share): Makefile plumbing common to all service libraries
49+
50+> See the `./gen` subdirectory for further details about generating an API client/SDK.
51+
52+
53+## Change Log
54+
55+A change log for the entire project can be found under [`gogol/CHANGELOG.md`](gogol/CHANGELOG.md).
56+
17
57
18## Contribute
58## Contribute
19
59
@@ -23,3 +63,6 @@ For any problems, comments, or feedback please create an issue [here on GitHub](
23## Licence
63## Licence
24
64
25Gogol is released under the [Mozilla Public License Version 2.0](http://www.mozilla.org/MPL/).
65Gogol is released under the [Mozilla Public License Version 2.0](http://www.mozilla.org/MPL/).
66+
67+Parts of the code are derived from Google Compute Engine service descriptions, licensed under Apache 2.0.
68+Source files subject to this contain an additional licensing clause in their header.
core/LICENSE−6
@@ -365,9 +365,3 @@ file in a relevant directory) where a recipient would be likely to look
365for such a notice.
365for such a notice.
366
366
367You may add additional accurate notices of copyright ownership.
367You may add additional accurate notices of copyright ownership.
368−
369−Exhibit B - "Incompatible With Secondary Licenses" Notice
370−---------------------------------------------------------
371−
372− This Source Code Form is "Incompatible With Secondary Licenses", as
373− defined by the Mozilla Public License, v. 2.0.
core/gogol-core.cabal+43−16
@@ -1,5 +1,5 @@
1name: gogol-core
1name: gogol-core
2−version: 0.0.1
2+version: 0.5.0
3synopsis: Core data types and functionality for Gogol libraries.
3synopsis: Core data types and functionality for Gogol libraries.
4homepage: https://github.com/brendanhay/gogol
4homepage: https://github.com/brendanhay/gogol
5bug-reports: https://github.com/brendanhay/gogol/issues
5bug-reports: https://github.com/brendanhay/gogol/issues
@@ -7,7 +7,7 @@ license: OtherLicense
7license-file: LICENSE
7license-file: LICENSE
8author: Brendan Hay
8author: Brendan Hay
9maintainer: Brendan Hay <brendan.g.hay@gmail.com>
9maintainer: Brendan Hay <brendan.g.hay@gmail.com>
10−copyright: Copyright (c) 2015 Brendan Hay
10+copyright: Copyright (c) 2015-2016 Brendan Hay
11category: Network, Google, Cloud
11category: Network, Google, Cloud
12build-type: Simple
12build-type: Simple
13extra-source-files: README.md
13extra-source-files: README.md
@@ -36,22 +36,34 @@ library
36 ghc-options: -Wall
36 ghc-options: -Wall
37
37
38 exposed-modules:
38 exposed-modules:
39− Network.Google.Prelude
39+ Network.Google.Data.Bytes
40−
41− other-modules:
42− Network.Google.Data.JSON
40+ , Network.Google.Data.JSON
43 , Network.Google.Data.Numeric
41 , Network.Google.Data.Numeric
42+ , Network.Google.Data.Time
43+ , Network.Google.Prelude
44+ , Network.Google.Types
44
45
45 build-depends:
46 build-depends:
46− aeson >= 0.8
47+ aeson >= 0.8
48+ , attoparsec >= 0.11.3
47− , base >= 4.7 && < 5
49+ , base >= 4.7 && < 5
50+ , bifunctors >= 0.1
51+ , bytestring >= 0.9
52+ , case-insensitive >= 1.2
53+ , conduit >= 1.3
54+ , dlist >= 0.7
55+ , exceptions >= 0.6
48− , hashable >= 1.2
56+ , hashable >= 1.2
49− , lens >= 4.4
57+ , http-api-data >= 0.2
50− , servant >= 0.4.4
51− , servant-client
58+ , http-client >= 0.5 && < 1
52− , text >= 1.1
59+ , http-media >= 0.6
53− , either
60+ , http-types >= 0.8.6
61+ , lens >= 4.4
62+ , resourcet >= 1.1
54− , scientific >= 0.3
63+ , scientific >= 0.3
64+ , servant >= 0.14.1
65+ , text >= 1.1
66+ , unordered-containers >= 0.2.5
55
67
56 if !impl(ghc>=7.9)
68 if !impl(ghc>=7.9)
57 build-depends:
69 build-depends:
@@ -63,4 +75,19 @@ library
63 , time >= 1.2 && < 1.5
75 , time >= 1.2 && < 1.5
64 else
76 else
65 build-depends:
77 build-depends:
66− time >= 1.5 && < 1.6
78+ time >= 1.5
79+
80+test-suite tests
81+ type: exitcode-stdio-1.0
82+ default-language: Haskell2010
83+ hs-source-dirs: test
84+ main-is: Main.hs
85+
86+ ghc-options: -Wall -threaded
87+
88+ other-modules:
89+
90+ build-depends:
91+ gogol-core
92+ , base
93+ , tasty
core/src/Network/Google/Data/Bytes.hsnew file+49
@@ -0,0 +1,49 @@
1+{-# LANGUAGE DeriveDataTypeable #-}
2+{-# LANGUAGE DeriveGeneric #-}
3+{-# LANGUAGE GeneralizedNewtypeDeriving #-}
4+
5+-- |
6+-- Module : Network.Google.Data.Bytes
7+-- Copyright : (c) 2013-2016 Brendan Hay
8+-- License : Mozilla Public License, v. 2.0.
9+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>
10+-- Stability : provisional
11+-- Portability : non-portable (GHC extensions)
12+--
13+module Network.Google.Data.Bytes
14+ ( Bytes (..)
15+ , _Bytes
16+ ) where
17+
18+import Control.Lens (Iso', iso)
19+import Data.Aeson (FromJSON (..), ToJSON (..))
20+import Data.ByteString (ByteString)
21+import Data.Data (Data, Typeable)
22+import Data.Hashable
23+import qualified Data.Text.Encoding as Text
24+import GHC.Generics (Generic)
25+import Network.Google.Data.JSON (parseJSONText, toJSONText)
26+import Web.HttpApiData (FromHttpApiData (..),
27+ ToHttpApiData (..))
28+-- | Binary data.
29+--
30+-- This data is passed to/from the serialisation routines as-is, and any
31+-- particular encoding or decoding (say, base64) is left up to the caller.
32+newtype Bytes = Bytes { unBytes :: ByteString }
33+ deriving (Eq, Show, Read, Ord, Data, Typeable, Generic)
34+
35+instance Hashable Bytes
36+
37+_Bytes :: Iso' Bytes ByteString
38+_Bytes = iso unBytes Bytes
39+
40+instance ToHttpApiData Bytes where
41+ toQueryParam = Text.decodeUtf8 . unBytes
42+ toHeader = unBytes
43+
44+instance FromHttpApiData Bytes where
45+ parseQueryParam = pure . Bytes . Text.encodeUtf8
46+ parseHeader = pure . Bytes
47+
48+instance FromJSON Bytes where parseJSON = parseJSONText "Bytes"
49+instance ToJSON Bytes where toJSON = toJSONText
core/src/Network/Google/Data/JSON.hs+59−8
@@ -4,21 +4,72 @@
4
4
5-- |
5-- |
6-- Module : Network.Google.Data.JSON
6-- Module : Network.Google.Data.JSON
7−-- Copyright : (c) 2015 Brendan Hay <brendan.g.hay@gmail.com>
7+-- Copyright : (c) 2015-2016 Brendan Hay <brendan.g.hay@gmail.com>
8-- License : Mozilla Public License, v. 2.0.
8-- License : Mozilla Public License, v. 2.0.
9-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>
9-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>
10-- Stability : provisional
10-- Stability : provisional
11-- Portability : non-portable (GHC extensions)
11-- Portability : non-portable (GHC extensions)
12--
12--
13−module Network.Google.Data.JSON where
13+module Network.Google.Data.JSON
14+ ( JSONValue
15+ , Textual (..)
16+ , parseJSONObject
17+ , parseJSONText
18+ , toJSONText
19+
20+ -- * Re-exports
21+ , FromJSON (..)
22+ , ToJSON (..)
23+
24+ , withObject
25+ , emptyObject
26+ , object
27+
28+ , (.=)
29+ , (.:)
30+ , (.:?)
31+ , (.!=)
32+ ) where
14
33
15−import Control.Lens
16import Data.Aeson
34import Data.Aeson
17import Data.Aeson.Types
35import Data.Aeson.Types
18−import Servant.API
36+import Data.Data
37+import Data.HashMap.Strict (HashMap)
38+import Data.Text (Text)
39+import qualified Data.Text as Text
40+import Web.HttpApiData (FromHttpApiData (..), ToHttpApiData (..))
41+
42+type JSONValue = Value
43+
44+newtype Textual a = Textual a
45+ deriving
46+ ( Eq
47+ , Ord
48+ , Read
49+ , Show
50+ , Num
51+ , Fractional
52+ , Data
53+ , Typeable
54+ , ToHttpApiData
55+ , FromHttpApiData
56+ )
57+
58+instance (FromJSON a, FromHttpApiData a) => FromJSON (Textual a) where
59+ parseJSON (String s) =
60+ either (fail . Text.unpack) (pure . Textual) (parseQueryParam s)
61+ parseJSON o = Textual <$> parseJSON o
62+
63+instance ToHttpApiData a => ToJSON (Textual a) where
64+ toJSON (Textual x) = String (toQueryParam x)
65+
66+parseJSONObject :: FromJSON a => HashMap Text Value -> Parser a
67+parseJSONObject = parseJSON . Object
19
68
20−parseJSONText :: FromText a => String -> Value -> Parser a
69+parseJSONText :: FromHttpApiData a => String -> Value -> Parser a
21−parseJSONText n = withText n (maybe (fail n) pure . fromText)
70+parseJSONText n = withText n (either (fail . f) pure . parseQueryParam)
71+ where
72+ f x = n ++ " - " ++ Text.unpack x
22
73
23−toJSONText :: ToText a => a -> Value
74+toJSONText :: ToHttpApiData a => a -> Value
24−toJSONText = String . toText
75+toJSONText = String . toQueryParam
core/src/Network/Google/Data/Numeric.hs+9−12
@@ -1,10 +1,11 @@
1{-# LANGUAGE DeriveDataTypeable #-}
1{-# LANGUAGE DeriveDataTypeable #-}
2{-# LANGUAGE GeneralizedNewtypeDeriving #-}
2{-# LANGUAGE GeneralizedNewtypeDeriving #-}
3+{-# LANGUAGE OverloadedStrings #-}
3{-# LANGUAGE ScopedTypeVariables #-}
4{-# LANGUAGE ScopedTypeVariables #-}
4
5
5-- |
6-- |
6-- Module : Network.Google.Data.Numeric
7-- Module : Network.Google.Data.Numeric
7−-- Copyright : (c) 2015 Brendan Hay <brendan.g.hay@gmail.com>
8+-- Copyright : (c) 2015-2016 Brendan Hay <brendan.g.hay@gmail.com>
8-- License : Mozilla Public License, v. 2.0.
9-- License : Mozilla Public License, v. 2.0.
9-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>
10-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>
10-- Stability : provisional
11-- Stability : provisional
@@ -12,13 +13,12 @@
12--
13--
13module Network.Google.Data.Numeric
14module Network.Google.Data.Numeric
14 ( Nat (..)
15 ( Nat (..)
15− , _Nat
16 ) where
16 ) where
17
17
18−import Control.Lens
19import Control.Monad
18import Control.Monad
20import Data.Aeson
19import Data.Aeson
21import Data.Data
20import Data.Data
21+import Data.Monoid ((<>))
22import Data.Scientific
22import Data.Scientific
23import Data.Text (Text)
23import Data.Text (Text)
24import qualified Data.Text as Text
24import qualified Data.Text as Text
@@ -33,9 +33,6 @@ import Servant.API
33newtype Nat = Nat { unNat :: Natural }
33newtype Nat = Nat { unNat :: Natural }
34 deriving (Eq, Ord, Enum, Show, Read, Num, Real, Integral, Data, Typeable)
34 deriving (Eq, Ord, Enum, Show, Read, Num, Real, Integral, Data, Typeable)
35
35
36−_Nat :: Iso' Nat Natural
37−_Nat = iso unNat Nat
38−
39instance FromJSON Nat where
36instance FromJSON Nat where
40 parseJSON = parseJSON >=> go
37 parseJSON = parseJSON >=> go
41 where
38 where
@@ -51,15 +48,15 @@ instance FromJSON Nat where
51instance ToJSON Nat where
48instance ToJSON Nat where
52 toJSON = Number . flip scientific 0 . toInteger . unNat
49 toJSON = Number . flip scientific 0 . toInteger . unNat
53
50
54−instance ToText Nat where
51+instance ToHttpApiData Nat where
55− toText = shortText . Build.decimal
52+ toQueryParam = shortText . Build.decimal
56
53
57−instance FromText Nat where
54+instance FromHttpApiData Nat where
58− fromText t =
55+ parseQueryParam t =
59 case Read.decimal t of
56 case Read.decimal t of
60 Right (x, r) | Text.null r
57 Right (x, r) | Text.null r
61− -> Just x
58+ -> Right x
62− _ -> Nothing
59+ _ -> Left ("Unable to parse natural from: " <> t)
63
60
64shortText :: Builder -> Text
61shortText :: Builder -> Text
65shortText = LText.toStrict . Build.toLazyTextWith 32
62shortText = LText.toStrict . Build.toLazyTextWith 32
core/src/Network/Google/Data/Time.hsnew file+152
@@ -0,0 +1,152 @@
1+{-# LANGUAGE OverloadedStrings #-}
2+{-# LANGUAGE DeriveDataTypeable #-}
3+{-# LANGUAGE DeriveGeneric #-}
4+{-# LANGUAGE GeneralizedNewtypeDeriving #-}
5+
6+-- |
7+-- Module : Network.Google.Data.Time
8+-- Copyright : (c) 2015-2016 Brendan Hay <brendan.g.hay@gmail.com>
9+-- License : Mozilla Public License, v. 2.0.
10+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>
11+-- Stability : provisional
12+-- Portability : non-portable (GHC extensions)
13+--
14+module Network.Google.Data.Time
15+ ( Time'
16+ , Date'
17+ , DateTime' (..)
18+ , GDuration
19+
20+ , _Time
21+ , _Date
22+ , _DateTime
23+ , _GDuration
24+ ) where
25+
26+import Data.Monoid ((<>))
27+import Control.Lens
28+import Data.Aeson
29+import qualified Data.Aeson.Types as Aeson
30+import Data.Attoparsec.Text
31+import Data.Bifunctor (first, second)
32+import Data.Bits ((.&.))
33+import Data.Char (ord)
34+import Data.Data (Data, Typeable)
35+import Data.Scientific (Scientific)
36+import qualified Data.Scientific as Sci
37+import Data.Text (Text)
38+import qualified Data.Text as Text
39+import qualified Data.Text.Lazy as LText
40+import qualified Data.Text.Lazy.Builder as Build
41+import qualified Data.Text.Lazy.Builder.Scientific as Sci
42+import Data.Time
43+import GHC.Generics
44+import Web.HttpApiData (FromHttpApiData (..),
45+ ToHttpApiData (..))
46+
47+-- | This SHOULD be a time in the format of hh:mm:ss. It is
48+-- recommended that you use the "date-time" format instead of "time"
49+-- unless you need to transfer only the time part.
50+newtype Time' = Time' { unTime :: TimeOfDay }
51+ deriving (Eq, Ord, Show, Read, Generic, Data, Typeable)
52+
53+_Time :: Iso' Time' TimeOfDay
54+_Time = iso unTime Time'
55+
56+instance ToHttpApiData Time' where
57+ toQueryParam = Text.pack . show . unTime
58+
59+instance FromHttpApiData Time' where
60+ parseQueryParam = second Time' . parseText timeParser
61+
62+-- | This SHOULD be a date in the format of YYYY-MM-DD. It is
63+-- recommended that you use the "date-time" format instead of "date"
64+-- unless you need to transfer only the date part.
65+newtype Date' = Date' { unDate :: Day }
66+ deriving (Eq, Ord, Show, Read, Generic, Data, Typeable, ToHttpApiData, FromHttpApiData)
67+
68+_Date :: Iso' Date' Day
69+_Date = iso unDate Date'
70+
71+-- | This SHOULD be a date in ISO 8601 format of YYYY-MM-
72+-- DDThh:mm:ssZ in UTC time. This is the recommended form of date/timestamp.
73+newtype DateTime' = DateTime' { unDateTime :: UTCTime }
74+ deriving (Eq, Ord, Show, Read, Generic, Data, Typeable, ToHttpApiData, FromHttpApiData)
75+
76+_DateTime :: Iso' DateTime' UTCTime
77+_DateTime = iso unDateTime DateTime'
78+
79+-- | A duration in seconds with up to nine fractional digits, terminated by 's'.
80+--
81+-- /Example/: @"3.5s"@.
82+newtype GDuration = GDuration { unGDuration :: Scientific }
83+ deriving (Eq, Ord, Show, Read, Generic, Data, Typeable)
84+
85+_GDuration :: Iso' GDuration Scientific
86+_GDuration = iso unGDuration GDuration
87+
88+instance ToHttpApiData GDuration where
89+ toQueryParam =
90+ LText.toStrict
91+ . (\seconds -> Build.toLazyText seconds <> "s")
92+ . Sci.formatScientificBuilder Sci.Fixed (Just 9)
93+ . unGDuration
94+
95+instance FromHttpApiData GDuration where
96+ parseQueryParam = second GDuration . parseText durationParser
97+
98+instance ToJSON Time' where toJSON = String . toQueryParam
99+instance ToJSON Date' where toJSON = String . toQueryParam
100+instance ToJSON DateTime' where toJSON = toJSON . unDateTime
101+instance ToJSON GDuration where toJSON = String . toQueryParam
102+
103+instance FromJSON Time' where
104+ parseJSON = fmap Time' . withText "time" (run timeParser)
105+
106+instance FromJSON Date' where
107+ parseJSON = fmap Date' . withText "date" (run dayParser)
108+
109+instance FromJSON DateTime' where
110+ parseJSON = fmap DateTime' . parseJSON
111+
112+instance FromJSON GDuration where
113+ parseJSON = fmap GDuration . withText "duration" (run durationParser)
114+
115+parseText :: Parser a -> Text -> Either Text a
116+parseText p = first Text.pack . parseOnly p
117+
118+-- | Parse a time of the form @HH:MM:SS@.
119+timeParser :: Parser TimeOfDay
120+timeParser = do
121+ h <- twoDigits <* char ':'
122+ m <- twoDigits <* char ':'
123+ s <- twoDigits <&> fromIntegral
124+ if h < 24 && m < 60 && s < 61
125+ then pure (TimeOfDay h m s)
126+ else fail "invalid time"
127+
128+-- | Parse a date of the form @YYYY-MM-DD@.
129+dayParser :: Parser Day
130+dayParser = do
131+ y <- decimal <* char '-'
132+ m <- twoDigits <* char '-'
133+ d <- twoDigits
134+ maybe (fail "invalid date") pure (fromGregorianValid y m d)
135+
136+durationParser :: Parser Scientific
137+durationParser = Sci.fromFloatDigits <$> (double <* char 's')
138+
139+-- | Parse a two-digit integer (e.g. day of month, hour).
140+twoDigits :: Parser Int
141+twoDigits = do
142+ a <- digit
143+ b <- digit
144+ let c2d c = ord c .&. 15
145+ pure $! c2d a * 10 + c2d b
146+
147+-- | Run an attoparsec parser as an aeson parser.
148+run :: Parser a -> Text -> Aeson.Parser a
149+run p t =
150+ case parseOnly (p <* endOfInput) t of
151+ Left err -> fail $ "could not parse date: " ++ err
152+ Right r -> pure r
core/src/Network/Google/Prelude.hs+26−45
@@ -1,12 +1,6 @@
1−{-# LANGUAGE DataKinds #-}
2−{-# LANGUAGE FlexibleContexts #-}
3−{-# LANGUAGE TypeFamilies #-}
4−{-# LANGUAGE TypeOperators #-}
5−{-# LANGUAGE UndecidableInstances #-}
6−
7-- |
1-- |
8-- Module : Network.Google.Prelude
2-- Module : Network.Google.Prelude
9−-- Copyright : (c) 2015 Brendan Hay <brendan.g.hay@gmail.com>
3+-- Copyright : (c) 2015-2016 Brendan Hay <brendan.g.hay@gmail.com>
10-- License : Mozilla Public License, v. 2.0.
4-- License : Mozilla Public License, v. 2.0.
11-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>
5-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>
12-- Stability : provisional
6-- Stability : provisional
@@ -14,44 +8,31 @@
14--
8--
15module Network.Google.Prelude
9module Network.Google.Prelude
16 ( module Export
10 ( module Export
17− , module Network.Google.Prelude
18 ) where
11 ) where
19
12
20−import Control.Lens as Export (Lens', lens, mapping)
13+import Control.Lens as Export (Lens', lens, mapping, ( # ), (^.), _Just)
21−import Control.Lens hiding (coerce)
14+import Data.ByteString as Export (ByteString)
22−import Control.Monad.Trans.Either as Export (EitherT)
23−import Data.Aeson as Export
24−import Data.Coerce
25−import Data.Data as Export (Data, Typeable)
15+import Data.Data as Export (Data, Typeable)
26−import Data.Hashable as Export
16+import Data.Hashable as Export (Hashable, hashWithSalt)
17+import Data.HashMap.Strict as Export (HashMap)
27−import Data.Int as Export (Int32, Int64)
18+import Data.Int as Export (Int32, Int64)
28−import Data.Maybe as Export
19+import Data.Maybe as Export
29−import Data.Proxy as Export
20+import Data.Monoid as Export (mempty, (<>))
21+import Data.Proxy as Export
22+import Data.Scientific as Export (Scientific)
30−import Data.Text as Export (Text)
23+import Data.Text as Export (Text)
31−import Data.Time as Export (UTCTime)
24+import Data.Time as Export (Day, TimeOfDay, UTCTime)
32−import Data.Word as Export (Word32, Word64, Word8)
25+import Data.Word as Export (Word32, Word64, Word8)
33−import GHC.Generics as Export (Generic)
26+import GHC.Generics as Export (Generic)
34−import Network.Google.Data.JSON as Export
27+import Network.HTTP.Client as Export (RequestBody)
35−import Network.Google.Data.Numeric as Export
28+import Numeric.Natural as Export (Natural)
36−import Numeric.Natural as Export (Natural)
29+import Prelude as Export hiding (product, span, any, Word)
37−import Servant.API as Export
30+import Servant.API as Export hiding (Headers, Link, getResponse, Stream, ResponseHeader, Header, header)
38−import Servant.Client as Export
39−import Servant.Common.Req as Export (Req, defReq)
40−import Servant.Utils.Links as Export
31+import Servant.Links as Export hiding (Link)
41−
32+import Web.HttpApiData as Export (FromHttpApiData (..), ToHttpApiData (..))
42−class GoogleRequest a where
43− type Rs a :: *
44−
45− requestWithRoute :: Req -> BaseUrl -> a -> EitherT ServantError IO (Rs a)
46− request :: a -> EitherT ServantError IO (Rs a)
47−
48−_Coerce :: (Coercible a b, Coercible b a) => Iso' a b
49−_Coerce = iso coerce coerce
50
33
51−-- | Invalid Iso, should be a Prism but exists for ease of composition
34+import Network.Google.Data.Bytes as Export
52−-- with the current 'Lens . Iso' chaining to hide internal types from the user.
35+import Network.Google.Data.JSON as Export
53−_Default :: Monoid a => Iso' (Maybe a) a
36+import Network.Google.Data.Numeric as Export
54−_Default = iso f Just
37+import Network.Google.Data.Time as Export
55− where
38+import Network.Google.Types as Export
56− f (Just x) = x
57− f Nothing = mempty
core/src/Network/Google/Types.hsnew file+660
@@ -0,0 +1,660 @@
1+{-# LANGUAGE DataKinds #-}
2+{-# LANGUAGE DeriveDataTypeable #-}
3+{-# LANGUAGE DeriveGeneric #-}
4+{-# LANGUAGE FlexibleInstances #-}
5+{-# LANGUAGE GeneralizedNewtypeDeriving #-}
6+{-# LANGUAGE KindSignatures #-}
7+{-# LANGUAGE LambdaCase #-}
8+{-# LANGUAGE MultiParamTypeClasses #-}
9+{-# LANGUAGE OverloadedStrings #-}
10+{-# LANGUAGE RecordWildCards #-}
11+{-# LANGUAGE ScopedTypeVariables #-}
12+{-# LANGUAGE TupleSections #-}
13+{-# LANGUAGE TypeFamilies #-}
14+{-# LANGUAGE TypeOperators #-}
15+{-# LANGUAGE UndecidableInstances #-}
16+
17+-- |
18+-- Module : Network.Google.Types
19+-- Copyright : (c) 2015-2016 Brendan Hay <brendan.g.hay@gmail.com>
20+-- License : Mozilla Public License, v. 2.0.
21+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>
22+-- Stability : provisional
23+-- Portability : non-portable (GHC extensions)
24+--
25+module Network.Google.Types where
26+
27+import Control.Exception.Lens (exception)
28+import Control.Lens
29+import Control.Monad.Catch
30+import Control.Monad.Trans.Resource
31+
32+import Data.Aeson
33+import Data.ByteString (ByteString)
34+import Data.Coerce
35+import Data.Conduit
36+import Data.Data
37+import Data.DList (DList)
38+import Data.Foldable (foldMap, foldl')
39+import Data.String
40+import Data.Semigroup
41+import Data.Text (Text)
42+import Data.Text.Lazy.Builder (Builder)
43+
44+import GHC.Generics
45+import GHC.TypeLits
46+
47+import Network.HTTP.Client (HttpException, RequestBody (..))
48+import Network.HTTP.Media hiding (Accept)
49+import Network.HTTP.Types hiding (Header)
50+
51+import Servant.API hiding (Stream)
52+
53+import qualified Data.ByteString.Char8 as BS8
54+import qualified Data.ByteString.Lazy as LBS
55+import qualified Data.CaseInsensitive as CI
56+import qualified Data.Conduit.Combinators as Conduit
57+import qualified Data.DList as DList
58+import qualified Data.Text.Encoding as Text
59+import qualified Data.Text.Lazy.Builder as Build
60+import qualified Network.HTTP.Types as HTTP
61+
62+data AltJSON = AltJSON deriving (Eq, Ord, Show, Read, Generic, Typeable)
63+data AltMedia = AltMedia deriving (Eq, Ord, Show, Read, Generic, Typeable)
64+data Multipart = Multipart deriving (Eq, Ord, Show, Read, Generic, Typeable)
65+
66+instance ToHttpApiData AltJSON where toQueryParam = const "json"
67+instance ToHttpApiData AltMedia where toQueryParam = const "media"
68+instance ToHttpApiData Multipart where toQueryParam = const "multipart"
69+
70+-- | An OAuth2 scope.
71+newtype OAuthScope = OAuthScope Text
72+ deriving
73+ ( Eq
74+ , Ord
75+ , Show
76+ , Read
77+ , IsString
78+ , Generic
79+ , Typeable
80+ , FromHttpApiData
81+ , ToHttpApiData
82+ , FromJSON
83+ , ToJSON
84+ )
85+
86+-- | An OAuth2 access token.
87+newtype AccessToken = AccessToken Text
88+ deriving
89+ ( Eq
90+ , Ord
91+ , Show
92+ , Read
93+ , IsString
94+ , Generic
95+ , Typeable
96+ , FromHttpApiData
97+ , ToHttpApiData
98+ , FromJSON
99+ , ToJSON
100+ )
101+
102+-- | An OAuth2 refresh token.
103+newtype RefreshToken = RefreshToken Text
104+ deriving
105+ ( Eq
106+ , Ord
107+ , Show
108+ , Read
109+ , IsString
110+ , Generic
111+ , Typeable
112+ , FromHttpApiData
113+ , ToHttpApiData
114+ , FromJSON
115+ , ToJSON
116+ )
117+
118+-- | A client identifier.
119+newtype ClientId = ClientId Text
120+ deriving
121+ ( Eq
122+ , Ord
123+ , Show
124+ , Read
125+ , IsString
126+ , Generic
127+ , Typeable
128+ , FromHttpApiData
129+ , ToHttpApiData
130+ , FromJSON
131+ , ToJSON
132+ )
133+
134+-- | A service identifier.
135+newtype ServiceId = ServiceId Text
136+ deriving
137+ ( Eq
138+ , Ord
139+ , Show
140+ , Read
141+ , IsString
142+ , Generic
143+ , Typeable
144+ , FromHttpApiData
145+ , ToHttpApiData
146+ , FromJSON
147+ , ToJSON
148+ )
149+
150+-- | An opaque client secret.
151+newtype GSecret = GSecret Text
152+ deriving
153+ ( Eq
154+ , Ord
155+ , Read
156+ , IsString
157+ , Generic
158+ , Typeable
159+ , FromHttpApiData
160+ , ToHttpApiData
161+ , FromJSON
162+ , ToJSON
163+ )
164+
165+instance Show GSecret where
166+ show = const "*****"
167+
168+newtype MediaDownload a = MediaDownload a
169+
170+data MediaUpload a = MediaUpload a GBody
171+
172+_Coerce :: (Coercible a b, Coercible b a) => Iso' a b
173+_Coerce = iso coerce coerce
174+
175+-- | Invalid Iso, exists for ease of composition with the current 'Lens . Iso'
176+-- chaining to hide internal types from the user.
177+_Default :: Monoid a => Iso' (Maybe a) a
178+_Default = iso f Just
179+ where
180+ f (Just x) = x
181+ f Nothing = mempty
182+
183+type Stream = ConduitM () ByteString (ResourceT IO) ()
184+
185+data Error
186+ = TransportError HttpException
187+ | SerializeError SerializeError
188+ | ServiceError ServiceError
189+ deriving (Show, Typeable)
190+
191+instance Exception Error
192+
193+data SerializeError = SerializeError'
194+ { _serializeId :: !ServiceId
195+ , _serializeHeaders :: [HTTP.Header]
196+ , _serializeStatus :: !Status
197+ , _serializeMessage :: !String
198+ , _serializeBody :: !(Maybe LBS.ByteString)
199+ } deriving (Eq, Show, Typeable)
200+
201+data ServiceError = ServiceError'
202+ { _serviceId :: !ServiceId
203+ , _serviceStatus :: !Status
204+ , _serviceHeaders :: ![HTTP.Header]
205+ , _serviceBody :: !(Maybe LBS.ByteString)
206+ } deriving (Eq, Show, Typeable)
207+
208+class AsError a where
209+ -- | A general Amazonka error.
210+ _Error :: Prism' a Error
211+ {-# MINIMAL _Error #-}
212+
213+ -- | An error occured while communicating over HTTP with a remote service.
214+ _TransportError :: Prism' a HttpException
215+
216+ -- | A serialisation error occured when attempting to deserialise a response.
217+ _SerializeError :: Prism' a SerializeError
218+
219+ -- | A service specific error returned by the remote service.
220+ _ServiceError :: Prism' a ServiceError
221+
222+ _TransportError = _Error . _TransportError
223+ _SerializeError = _Error . _SerializeError
224+ _ServiceError = _Error . _ServiceError
225+
226+instance AsError SomeException where
227+ _Error = exception
228+
229+instance AsError Error where
230+ _Error = id
231+
232+ _TransportError = prism TransportError $ \case
233+ TransportError e -> Right e
234+ x -> Left x
235+
236+ _SerializeError = prism SerializeError $ \case
237+ SerializeError e -> Right e
238+ x -> Left x
239+
240+ _ServiceError = prism ServiceError $ \case
241+ ServiceError e -> Right e
242+ x -> Left x
243+
244+data ServiceConfig = ServiceConfig
245+ { _svcId :: !ServiceId
246+ , _svcHost :: !ByteString
247+ , _svcPath :: !Builder
248+ , _svcPort :: !Int
249+ , _svcSecure :: !Bool
250+ , _svcTimeout :: !(Maybe Seconds)
251+ }
252+
253+defaultService :: ServiceId -> ByteString -> ServiceConfig
254+defaultService i h = ServiceConfig
255+ { _svcId = i
256+ , _svcHost = h
257+ , _svcPath = mempty
258+ , _svcPort = 443
259+ , _svcSecure = True
260+ , _svcTimeout = Just 70
261+ }
262+
263+-- | The remote host name, used for both the IP address to connect to and the
264+-- host request header.
265+serviceHost :: Lens' ServiceConfig ByteString
266+serviceHost = lens _svcHost (\s a -> s { _svcHost = a })
267+
268+-- | The remote port to connect to.
269+--
270+-- Defaults to @443@.
271+servicePort :: Lens' ServiceConfig Int
272+servicePort = lens _svcPort (\s a -> s { _svcPort = a })
273+
274+-- | A path prefix that is prepended to any sent HTTP request.
275+--
276+-- Defaults to @mempty@.
277+servicePath :: Lens' ServiceConfig Builder
278+servicePath = lens _svcPath (\s a -> s { _svcPath = a })
279+
280+-- | Whether to use HTTPS/SSL.
281+--
282+-- Defaults to @True@.
283+serviceSecure :: Lens' ServiceConfig Bool
284+serviceSecure = lens _svcSecure (\s a -> s { _svcSecure = a })
285+
286+-- | Number of seconds to wait for a response.
287+serviceTimeout :: Lens' ServiceConfig (Maybe Seconds)
288+serviceTimeout = lens _svcTimeout (\s a -> s { _svcTimeout = a })
289+
290+-- | A single part of a (potentially multipart) request body.
291+--
292+-- /Note:/ The 'IsString' instance defaults to a @text/plain@ MIME type.
293+data GBody = GBody !MediaType !RequestBody
294+
295+instance IsString GBody where
296+ fromString = GBody ("text" // "plain") . fromString
297+
298+-- | A lens into the 'MediaType' of a request 'Body'.
299+bodyContentType :: Lens' GBody MediaType
300+bodyContentType = lens (\(GBody m _) -> m) (\(GBody _ b) m -> GBody m b)
301+
302+-- | An intermediary request builder.
303+data Request = Request
304+ { _rqPath :: !Builder
305+ , _rqQuery :: !(DList (ByteString, Maybe ByteString))
306+ , _rqHeaders :: !(DList (HeaderName, ByteString))
307+ , _rqBody :: ![GBody]
308+ }
309+
310+instance Monoid Request where
311+ mempty = Request mempty mempty mempty mempty
312+ mappend = (<>)
313+
314+instance Semigroup Request where
315+ a <> b = Request
316+ (_rqPath a <> "/" <> _rqPath b)
317+ (_rqQuery a <> _rqQuery b)
318+ (_rqHeaders a <> _rqHeaders b)
319+ (_rqBody b <> _rqBody a)
320+
321+appendPath :: Request -> Builder -> Request
322+appendPath rq x = rq { _rqPath = _rqPath rq <> "/" <> x }
323+
324+appendPaths :: ToHttpApiData a => Request -> [a] -> Request
325+appendPaths rq = appendPath rq . foldMap (mappend "/" . buildText)
326+
327+appendQuery :: Request -> ByteString -> Maybe Text -> Request
328+appendQuery rq k v = rq
329+ { _rqQuery = DList.snoc (_rqQuery rq) (k, Text.encodeUtf8 <$> v)
330+ }
331+
332+appendHeader :: Request -> HeaderName -> Maybe Text -> Request
333+appendHeader rq _ Nothing = rq
334+appendHeader rq k (Just v) = rq
335+ { _rqHeaders = DList.snoc (_rqHeaders rq) (k, Text.encodeUtf8 v)
336+ }
337+
338+setBody :: Request -> [GBody] -> Request
339+setBody rq bs = rq { _rqBody = bs }
340+
341+-- | A materialised 'http-client' request and associated response parser.
342+data GClient a = GClient
343+ { _cliAccept :: !(Maybe MediaType)
344+ , _cliMethod :: !Method
345+ , _cliCheck :: !(Status -> Bool)
346+ , _cliService :: !ServiceConfig
347+ , _cliRequest :: !Request
348+ , _cliResponse :: !(Stream -> ResourceT IO (Either (String, LBS.ByteString) a))
349+ }
350+
351+clientService :: Lens' (GClient a) ServiceConfig
352+clientService = lens _cliService (\s a -> s { _cliService = a })
353+
354+mime :: FromStream c a
355+ => Proxy c
356+ -> Method
357+ -> [Int]
358+ -> Request
359+ -> ServiceConfig
360+ -> GClient a
361+mime p = gClient (fromStream p) (Just (contentType p))
362+
363+discard :: Method
364+ -> [Int]
365+ -> Request
366+ -> ServiceConfig
367+ -> GClient ()
368+discard = gClient (\b -> runConduit (b .| Conduit.sinkNull) >> pure (Right ())) Nothing
369+
370+gClient :: (Stream -> ResourceT IO (Either (String, LBS.ByteString) a))
371+ -> Maybe MediaType
372+ -> Method
373+ -> [Int]
374+ -> Request
375+ -> ServiceConfig
376+ -> GClient a
377+gClient f cs m statuses rq s = GClient
378+ { _cliAccept = cs
379+ , _cliMethod = m
380+ , _cliCheck = \status -> fromEnum status `elem` statuses
381+ , _cliService = s
382+ , _cliRequest = rq
383+ , _cliResponse = f
384+ }
385+
386+class Accept c => ToBody c a where
387+ toBody :: Proxy c -> a -> GBody
388+
389+instance ToBody OctetStream ByteString where
390+ toBody p = GBody (contentType p) . RequestBodyBS
391+
392+instance ToBody OctetStream LBS.ByteString where
393+ toBody p = GBody (contentType p) . RequestBodyLBS
394+
395+instance ToBody PlainText ByteString where
396+ toBody p = GBody (contentType p) . RequestBodyBS
397+
398+instance ToBody PlainText LBS.ByteString where
399+ toBody p = GBody (contentType p) . RequestBodyLBS
400+
401+instance ToJSON a => ToBody JSON a where
402+ toBody p = GBody (contentType p) . RequestBodyLBS . encode
403+
404+class Accept c => FromStream c a where
405+ fromStream :: Proxy c
406+ -> Stream
407+ -> ResourceT IO (Either (String, LBS.ByteString) a)
408+
409+instance FromStream OctetStream Stream where
410+ fromStream Proxy = pure . Right
411+
412+instance FromJSON a => FromStream JSON a where
413+ fromStream Proxy s = do
414+ bs <- sinkLBS s
415+ case eitherDecode bs of
416+ Left e -> pure $! Left (e, bs)
417+ Right x -> pure $! Right x
418+
419+class GoogleRequest a where
420+ type Rs a :: *
421+ type Scopes a :: [Symbol]
422+
423+ requestClient :: a -> GClient (Rs a)
424+
425+class GoogleClient fn where
426+ type Fn fn :: *
427+
428+ buildClient :: Proxy fn -> Request -> Fn fn
429+
430+-- | Multiple path captures, with @[xs]@ forming @/<x1>/<x2>/<x2>/...@.
431+data Captures (s :: Symbol) a
432+ deriving (Typeable)
433+
434+-- | Form a Google style sub-resource, such as @/<capture>:<mode>@.
435+data CaptureMode (s :: Symbol) (m :: Symbol) a
436+ deriving (Typeable)
437+
438+data MultipartRelated (cs :: [*]) m
439+ deriving (Typeable)
440+
441+instance ( ToBody c m
442+ , GoogleClient fn
443+ ) => GoogleClient (MultipartRelated (c ': cs) m :> fn) where
444+ type Fn (MultipartRelated (c ': cs) m :> fn) = m -> GBody -> Fn fn
445+
446+ buildClient Proxy rq m b =
447+ buildClient (Proxy :: Proxy fn) $
448+ setBody rq [toBody (Proxy :: Proxy c) m, b]
449+
450+instance GoogleClient fn => GoogleClient (AltMedia :> fn) where
451+ type Fn (AltMedia :> fn) = GBody -> Fn fn
452+
453+ buildClient Proxy rq b =
454+ buildClient (Proxy :: Proxy fn) $
455+ setBody rq [b]
456+
457+instance (KnownSymbol s, GoogleClient fn) => GoogleClient (s :> fn) where
458+ type Fn (s :> fn) = Fn fn
459+
460+ buildClient Proxy rq = buildClient (Proxy :: Proxy fn) $
461+ appendPath rq (buildSymbol (Proxy :: Proxy s))
462+
463+instance (GoogleClient a, GoogleClient b) => GoogleClient (a :<|> b) where
464+ type Fn (a :<|> b) = Fn a :<|> Fn b
465+
466+ buildClient Proxy rq =
467+ buildClient (Proxy :: Proxy a) rq
468+ :<|> buildClient (Proxy :: Proxy b) rq
469+
470+instance ( KnownSymbol s
471+ , ToHttpApiData a
472+ , GoogleClient fn
473+ ) => GoogleClient (Capture s a :> fn) where
474+ type Fn (Capture s a :> fn) = a -> Fn fn
475+
476+ buildClient Proxy rq = buildClient (Proxy :: Proxy fn)
477+ . appendPath rq
478+ . buildText
479+
480+instance ( KnownSymbol s
481+ , ToHttpApiData a
482+ , GoogleClient fn
483+ ) => GoogleClient (Captures s a :> fn) where
484+ type Fn (Captures s a :> fn) = [a] -> Fn fn
485+
486+ buildClient Proxy rq = buildClient (Proxy :: Proxy fn)
487+ . appendPaths rq
488+
489+instance ( KnownSymbol s
490+ , KnownSymbol m
491+ , ToHttpApiData a
492+ , GoogleClient fn
493+ ) => GoogleClient (CaptureMode s m a :> fn) where
494+ type Fn (CaptureMode s m a :> fn) = a -> Fn fn
495+
496+ buildClient Proxy rq x = buildClient (Proxy :: Proxy fn)
497+ . appendPath rq
498+ $ buildText x <> ":" <> buildSymbol (Proxy :: Proxy m)
499+
500+instance ( KnownSymbol s
501+ , ToHttpApiData a
502+ , GoogleClient fn
503+ ) => GoogleClient (QueryParam s a :> fn) where
504+ type Fn (QueryParam s a :> fn) = Maybe a -> Fn fn
505+
506+ buildClient Proxy rq mx = buildClient (Proxy :: Proxy fn) $
507+ case mx of
508+ Nothing -> rq
509+ Just x -> appendQuery rq k v
510+ where
511+ k = byteSymbol (Proxy :: Proxy s)
512+ v = Just (toQueryParam x)
513+
514+instance ( KnownSymbol s
515+ , ToHttpApiData a
516+ , GoogleClient fn
517+ ) => GoogleClient (QueryParams s a :> fn) where
518+ type Fn (QueryParams s a :> fn) = [a] -> Fn fn
519+
520+ buildClient Proxy rq = buildClient (Proxy :: Proxy fn) . foldl' go rq
521+ where
522+ go r = appendQuery r k . Just . toQueryParam
523+
524+ k = byteSymbol (Proxy :: Proxy s)
525+
526+instance ( KnownSymbol s
527+ , ToHttpApiData a
528+ , GoogleClient fn
529+ ) => GoogleClient (Header s a :> fn) where
530+ type Fn (Header s a :> fn) = Maybe a -> Fn fn
531+
532+ buildClient Proxy rq mx = buildClient (Proxy :: Proxy fn) $
533+ case mx of
534+ Nothing -> rq
535+ Just x -> appendHeader rq (CI.mk k) v
536+ where
537+ k = byteSymbol (Proxy :: Proxy s)
538+ v = Just (toQueryParam x)
539+
540+instance ( ToBody c a
541+ , GoogleClient fn
542+ ) => GoogleClient (ReqBody (c ': cs) a :> fn) where
543+ type Fn (ReqBody (c ': cs) a :> fn) = a -> Fn fn
544+
545+ buildClient Proxy rq x =
546+ buildClient (Proxy :: Proxy fn) $
547+ setBody rq [toBody (Proxy :: Proxy c) x]
548+
549+instance {-# OVERLAPPABLE #-}
550+ FromStream c a => GoogleClient (Get (c ': cs) a) where
551+ type Fn (Get (c ': cs) a) = ServiceConfig -> GClient a
552+
553+ buildClient Proxy = mime (Proxy :: Proxy c) methodGet [200, 203]
554+
555+instance {-# OVERLAPPING #-}
556+ GoogleClient (Get (c ': cs) ()) where
557+ type Fn (Get (c ': cs) ()) = ServiceConfig -> GClient ()
558+
559+ buildClient Proxy = discard methodGet [204]
560+
561+instance {-# OVERLAPPABLE #-}
562+ (FromStream c a, cs' ~ (c ': cs)) => GoogleClient (Post cs' a) where
563+ type Fn (Post cs' a) = ServiceConfig -> GClient a
564+
565+ buildClient Proxy = mime (Proxy :: Proxy c) methodPost [200, 201]
566+
567+instance {-# OVERLAPPING #-}
568+ GoogleClient (Post cs ()) where
569+ type Fn (Post cs ()) = ServiceConfig -> GClient ()
570+
571+ buildClient Proxy = discard methodPost [204]
572+
573+instance {-# OVERLAPPABLE #-}
574+ FromStream c a => GoogleClient (Put (c ': cs) a) where
575+ type Fn (Put (c ': cs) a) = ServiceConfig -> GClient a
576+
577+ buildClient Proxy = mime (Proxy :: Proxy c) methodPut [200, 201]
578+
579+instance {-# OVERLAPPING #-}
580+ GoogleClient (Put (c ': cs) ()) where
581+ type Fn (Put (c ': cs) ()) = ServiceConfig -> GClient ()
582+
583+ buildClient Proxy = discard methodPut [204]
584+
585+instance {-# OVERLAPPABLE #-}
586+ FromStream c a => GoogleClient (Patch (c ': cs) a) where
587+ type Fn (Patch (c ': cs) a) = ServiceConfig -> GClient a
588+
589+ buildClient Proxy = mime (Proxy :: Proxy c) methodPatch [200, 201]
590+
591+instance {-# OVERLAPPING #-}
592+ GoogleClient (Patch (c ': cs) ()) where
593+ type Fn (Patch (c ': cs) ()) = ServiceConfig -> GClient ()
594+
595+ buildClient Proxy = discard methodPatch [204]
596+
597+instance {-# OVERLAPPABLE #-}
598+ FromStream c a => GoogleClient (Delete (c ': cs) a) where
599+ type Fn (Delete (c ': cs) a) = ServiceConfig -> GClient a
600+
601+ buildClient Proxy = mime (Proxy :: Proxy c) methodDelete [200, 202]
602+
603+instance {-# OVERLAPPING #-}
604+ GoogleClient (Delete (c ': cs) ()) where
605+ type Fn (Delete (c ': cs) ()) = ServiceConfig -> GClient ()
606+
607+ buildClient Proxy = discard methodDelete [204]
608+
609+sinkLBS :: Stream -> ResourceT IO LBS.ByteString
610+sinkLBS = runConduit . (.| Conduit.sinkLazy)
611+
612+buildText :: ToHttpApiData a => a -> Builder
613+buildText = Build.fromText . toQueryParam
614+
615+buildSymbol :: forall n proxy. KnownSymbol n => proxy n -> Builder
616+buildSymbol = Build.fromString . symbolVal
617+
618+byteSymbol :: forall n proxy. KnownSymbol n => proxy n -> ByteString
619+byteSymbol = BS8.pack . symbolVal
620+
621+-- | An integral value representing seconds.
622+newtype Seconds = Seconds Int
623+ deriving
624+ ( Eq
625+ , Ord
626+ , Read
627+ , Show
628+ , Enum
629+ , Num
630+ , Bounded
631+ , Integral
632+ , Real
633+ , Data
634+ , Typeable
635+ , Generic
636+ )
637+
638+seconds :: Seconds -> Int
639+seconds (Seconds n)
640+ | n < 0 = 0
641+ | otherwise = n
642+
643+microseconds :: Seconds -> Int
644+microseconds = (1000000 *) . seconds
645+
646+newtype GFieldMask = GFieldMask Text
647+ deriving
648+ ( Eq
649+ , Ord
650+ , Show
651+ , Read
652+ , IsString
653+ , Generic
654+ , Data
655+ , Typeable
656+ , FromHttpApiData
657+ , ToHttpApiData
658+ , FromJSON
659+ , ToJSON
660+ )
core/test/Main.hsnew file+16
@@ -0,0 +1,16 @@
1+-- Module : Main
2+-- Copyright : (c) 2015-2016 Brendan Hay
3+-- License : Mozilla Public License, v. 2.0.
4+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>
5+-- Stability : experimental
6+-- Portability : non-portable (GHC extensions)
7+
8+module Main (main) where
9+
10+import Test.Tasty
11+
12+main :: IO ()
13+main = defaultMain $
14+ testGroup "gogol"
15+ [
16+ ]
examples/LICENSEnew file+367
@@ -0,0 +1,367 @@
1+Mozilla Public License Version 2.0
2+==================================
3+
4+1. Definitions
5+--------------
6+
7+1.1. "Contributor"
8+ means each individual or legal entity that creates, contributes to
9+ the creation of, or owns Covered Software.
10+
11+1.2. "Contributor Version"
12+ means the combination of the Contributions of others (if any) used
13+ by a Contributor and that particular Contributor's Contribution.
14+
15+1.3. "Contribution"
16+ means Covered Software of a particular Contributor.
17+
18+1.4. "Covered Software"
19+ means Source Code Form to which the initial Contributor has attached
20+ the notice in Exhibit A, the Executable Form of such Source Code
21+ Form, and Modifications of such Source Code Form, in each case
22+ including portions thereof.
23+
24+1.5. "Incompatible With Secondary Licenses"
25+ means
26+
27+ (a) that the initial Contributor has attached the notice described
28+ in Exhibit B to the Covered Software; or
29+
30+ (b) that the Covered Software was made available under the terms of
31+ version 1.1 or earlier of the License, but not also under the
32+ terms of a Secondary License.
33+
34+1.6. "Executable Form"
35+ means any form of the work other than Source Code Form.
36+
37+1.7. "Larger Work"
38+ means a work that combines Covered Software with other material, in
39+ a separate file or files, that is not Covered Software.
40+
41+1.8. "License"
42+ means this document.
43+
44+1.9. "Licensable"
45+ means having the right to grant, to the maximum extent possible,
46+ whether at the time of the initial grant or subsequently, any and
47+ all of the rights conveyed by this License.
48+
49+1.10. "Modifications"
50+ means any of the following:
51+
52+ (a) any file in Source Code Form that results from an addition to,
53+ deletion from, or modification of the contents of Covered
54+ Software; or
55+
56+ (b) any new file in Source Code Form that contains any Covered
57+ Software.
58+
59+1.11. "Patent Claims" of a Contributor
60+ means any patent claim(s), including without limitation, method,
61+ process, and apparatus claims, in any patent Licensable by such
62+ Contributor that would be infringed, but for the grant of the
63+ License, by the making, using, selling, offering for sale, having
64+ made, import, or transfer of either its Contributions or its
65+ Contributor Version.
66+
67+1.12. "Secondary License"
68+ means either the GNU General Public License, Version 2.0, the GNU
69+ Lesser General Public License, Version 2.1, the GNU Affero General
70+ Public License, Version 3.0, or any later versions of those
71+ licenses.
72+
73+1.13. "Source Code Form"
74+ means the form of the work preferred for making modifications.
75+
76+1.14. "You" (or "Your")
77+ means an individual or a legal entity exercising rights under this
78+ License. For legal entities, "You" includes any entity that
79+ controls, is controlled by, or is under common control with You. For
80+ purposes of this definition, "control" means (a) the power, direct
81+ or indirect, to cause the direction or management of such entity,
82+ whether by contract or otherwise, or (b) ownership of more than
83+ fifty percent (50%) of the outstanding shares or beneficial
84+ ownership of such entity.
85+
86+2. License Grants and Conditions
87+--------------------------------
88+
89+2.1. Grants
90+
91+Each Contributor hereby grants You a world-wide, royalty-free,
92+non-exclusive license:
93+
94+(a) under intellectual property rights (other than patent or trademark)
95+ Licensable by such Contributor to use, reproduce, make available,
96+ modify, display, perform, distribute, and otherwise exploit its
97+ Contributions, either on an unmodified basis, with Modifications, or
98+ as part of a Larger Work; and
99+
100+(b) under Patent Claims of such Contributor to make, use, sell, offer
101+ for sale, have made, import, and otherwise transfer either its
102+ Contributions or its Contributor Version.
103+
104+2.2. Effective Date
105+
106+The licenses granted in Section 2.1 with respect to any Contribution
107+become effective for each Contribution on the date the Contributor first
108+distributes such Contribution.
109+
110+2.3. Limitations on Grant Scope
111+
112+The licenses granted in this Section 2 are the only rights granted under
113+this License. No additional rights or licenses will be implied from the
114+distribution or licensing of Covered Software under this License.
115+Notwithstanding Section 2.1(b) above, no patent license is granted by a
116+Contributor:
117+
118+(a) for any code that a Contributor has removed from Covered Software;
119+ or
120+
121+(b) for infringements caused by: (i) Your and any other third party's
122+ modifications of Covered Software, or (ii) the combination of its
123+ Contributions with other software (except as part of its Contributor
124+ Version); or
125+
126+(c) under Patent Claims infringed by Covered Software in the absence of
127+ its Contributions.
128+
129+This License does not grant any rights in the trademarks, service marks,
130+or logos of any Contributor (except as may be necessary to comply with
131+the notice requirements in Section 3.4).
132+
133+2.4. Subsequent Licenses
134+
135+No Contributor makes additional grants as a result of Your choice to
136+distribute the Covered Software under a subsequent version of this
137+License (see Section 10.2) or under the terms of a Secondary License (if
138+permitted under the terms of Section 3.3).
139+
140+2.5. Representation
141+
142+Each Contributor represents that the Contributor believes its
143+Contributions are its original creation(s) or it has sufficient rights
144+to grant the rights to its Contributions conveyed by this License.
145+
146+2.6. Fair Use
147+
148+This License is not intended to limit any rights You have under
149+applicable copyright doctrines of fair use, fair dealing, or other
150+equivalents.
151+
152+2.7. Conditions
153+
154+Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted
155+in Section 2.1.
156+
157+3. Responsibilities
158+-------------------
159+
160+3.1. Distribution of Source Form
161+
162+All distribution of Covered Software in Source Code Form, including any
163+Modifications that You create or to which You contribute, must be under
164+the terms of this License. You must inform recipients that the Source
165+Code Form of the Covered Software is governed by the terms of this
166+License, and how they can obtain a copy of this License. You may not
167+attempt to alter or restrict the recipients' rights in the Source Code
168+Form.
169+
170+3.2. Distribution of Executable Form
171+
172+If You distribute Covered Software in Executable Form then:
173+
174+(a) such Covered Software must also be made available in Source Code
175+ Form, as described in Section 3.1, and You must inform recipients of
176+ the Executable Form how they can obtain a copy of such Source Code
177+ Form by reasonable means in a timely manner, at a charge no more
178+ than the cost of distribution to the recipient; and
179+
180+(b) You may distribute such Executable Form under the terms of this
181+ License, or sublicense it under different terms, provided that the
182+ license for the Executable Form does not attempt to limit or alter
183+ the recipients' rights in the Source Code Form under this License.
184+
185+3.3. Distribution of a Larger Work
186+
187+You may create and distribute a Larger Work under terms of Your choice,
188+provided that You also comply with the requirements of this License for
189+the Covered Software. If the Larger Work is a combination of Covered
190+Software with a work governed by one or more Secondary Licenses, and the
191+Covered Software is not Incompatible With Secondary Licenses, this
192+License permits You to additionally distribute such Covered Software
193+under the terms of such Secondary License(s), so that the recipient of
194+the Larger Work may, at their option, further distribute the Covered
195+Software under the terms of either this License or such Secondary
196+License(s).
197+
198+3.4. Notices
199+
200+You may not remove or alter the substance of any license notices
201+(including copyright notices, patent notices, disclaimers of warranty,
202+or limitations of liability) contained within the Source Code Form of
203+the Covered Software, except that You may alter any license notices to
204+the extent required to remedy known factual inaccuracies.
205+
206+3.5. Application of Additional Terms
207+
208+You may choose to offer, and to charge a fee for, warranty, support,
209+indemnity or liability obligations to one or more recipients of Covered
210+Software. However, You may do so only on Your own behalf, and not on
211+behalf of any Contributor. You must make it absolutely clear that any
212+such warranty, support, indemnity, or liability obligation is offered by
213+You alone, and You hereby agree to indemnify every Contributor for any
214+liability incurred by such Contributor as a result of warranty, support,
215+indemnity or liability terms You offer. You may include additional
216+disclaimers of warranty and limitations of liability specific to any
217+jurisdiction.
218+
219+4. Inability to Comply Due to Statute or Regulation
220+---------------------------------------------------
221+
222+If it is impossible for You to comply with any of the terms of this
223+License with respect to some or all of the Covered Software due to
224+statute, judicial order, or regulation then You must: (a) comply with
225+the terms of this License to the maximum extent possible; and (b)
226+describe the limitations and the code they affect. Such description must
227+be placed in a text file included with all distributions of the Covered
228+Software under this License. Except to the extent prohibited by statute
229+or regulation, such description must be sufficiently detailed for a
230+recipient of ordinary skill to be able to understand it.
231+
232+5. Termination
233+--------------
234+
235+5.1. The rights granted under this License will terminate automatically
236+if You fail to comply with any of its terms. However, if You become
237+compliant, then the rights granted under this License from a particular
238+Contributor are reinstated (a) provisionally, unless and until such
239+Contributor explicitly and finally terminates Your grants, and (b) on an
240+ongoing basis, if such Contributor fails to notify You of the
241+non-compliance by some reasonable means prior to 60 days after You have
242+come back into compliance. Moreover, Your grants from a particular
243+Contributor are reinstated on an ongoing basis if such Contributor
244+notifies You of the non-compliance by some reasonable means, this is the
245+first time You have received notice of non-compliance with this License
246+from such Contributor, and You become compliant prior to 30 days after
247+Your receipt of the notice.
248+
249+5.2. If You initiate litigation against any entity by asserting a patent
250+infringement claim (excluding declaratory judgment actions,
251+counter-claims, and cross-claims) alleging that a Contributor Version
252+directly or indirectly infringes any patent, then the rights granted to
253+You by any and all Contributors for the Covered Software under Section
254+2.1 of this License shall terminate.
255+
256+5.3. In the event of termination under Sections 5.1 or 5.2 above, all
257+end user license agreements (excluding distributors and resellers) which
258+have been validly granted by You or Your distributors under this License
259+prior to termination shall survive termination.
260+
261+************************************************************************
262+* *
263+* 6. Disclaimer of Warranty *
264+* ------------------------- *
265+* *
266+* Covered Software is provided under this License on an "as is" *
267+* basis, without warranty of any kind, either expressed, implied, or *
268+* statutory, including, without limitation, warranties that the *
269+* Covered Software is free of defects, merchantable, fit for a *
270+* particular purpose or non-infringing. The entire risk as to the *
271+* quality and performance of the Covered Software is with You. *
272+* Should any Covered Software prove defective in any respect, You *
273+* (not any Contributor) assume the cost of any necessary servicing, *
274+* repair, or correction. This disclaimer of warranty constitutes an *
275+* essential part of this License. No use of any Covered Software is *
276+* authorized under this License except under this disclaimer. *
277+* *
278+************************************************************************
279+
280+************************************************************************
281+* *
282+* 7. Limitation of Liability *
283+* -------------------------- *
284+* *
285+* Under no circumstances and under no legal theory, whether tort *
286+* (including negligence), contract, or otherwise, shall any *
287+* Contributor, or anyone who distributes Covered Software as *
288+* permitted above, be liable to You for any direct, indirect, *
289+* special, incidental, or consequential damages of any character *
290+* including, without limitation, damages for lost profits, loss of *
291+* goodwill, work stoppage, computer failure or malfunction, or any *
292+* and all other commercial damages or losses, even if such party *
293+* shall have been informed of the possibility of such damages. This *
294+* limitation of liability shall not apply to liability for death or *
295+* personal injury resulting from such party's negligence to the *
296+* extent applicable law prohibits such limitation. Some *
297+* jurisdictions do not allow the exclusion or limitation of *
298+* incidental or consequential damages, so this exclusion and *
299+* limitation may not apply to You. *
300+* *
301+************************************************************************
302+
303+8. Litigation
304+-------------
305+
306+Any litigation relating to this License may be brought only in the
307+courts of a jurisdiction where the defendant maintains its principal
308+place of business and such litigation shall be governed by laws of that
309+jurisdiction, without reference to its conflict-of-law provisions.
310+Nothing in this Section shall prevent a party's ability to bring
311+cross-claims or counter-claims.
312+
313+9. Miscellaneous
314+----------------
315+
316+This License represents the complete agreement concerning the subject
317+matter hereof. If any provision of this License is held to be
318+unenforceable, such provision shall be reformed only to the extent
319+necessary to make it enforceable. Any law or regulation which provides
320+that the language of a contract shall be construed against the drafter
321+shall not be used to construe this License against a Contributor.
322+
323+10. Versions of the License
324+---------------------------
325+
326+10.1. New Versions
327+
328+Mozilla Foundation is the license steward. Except as provided in Section
329+10.3, no one other than the license steward has the right to modify or
330+publish new versions of this License. Each version will be given a
331+distinguishing version number.
332+
333+10.2. Effect of New Versions
334+
335+You may distribute the Covered Software under the terms of the version
336+of the License under which You originally received the Covered Software,
337+or under the terms of any subsequent version published by the license
338+steward.
339+
340+10.3. Modified Versions
341+
342+If you create software not governed by this License, and you want to
343+create a new license for such software, you may create and use a
344+modified version of this License if you rename the license and remove
345+any references to the name of the license steward (except to note that
346+such modified license differs from this License).
347+
348+10.4. Distributing Source Code Form that is Incompatible With Secondary
349+Licenses
350+
351+If You choose to distribute Source Code Form that is Incompatible With
352+Secondary Licenses under the terms of this version of the License, the
353+notice described in Exhibit B of this License must be attached.
354+
355+Exhibit A - Source Code Form License Notice
356+-------------------------------------------
357+
358+ This Source Code Form is subject to the terms of the Mozilla Public
359+ License, v. 2.0. If a copy of the MPL was not distributed with this
360+ file, You can obtain one at http://mozilla.org/MPL/2.0/.
361+
362+If it is not possible or desirable to put the notice in a particular
363+file, then You may include the notice in a location (such as a LICENSE
364+file in a relevant directory) where a recipient would be likely to look
365+for such a notice.
366+
367+You may add additional accurate notices of copyright ownership.
examples/README.mdnew file+23
@@ -0,0 +1,23 @@
1+# Gogol Examples
2+
3+* [Description](#description)
4+* [Contribute](#contribute)
5+* [Licence](#licence)
6+
7+
8+## Description
9+
10+An organically grown collection of examples for the various Gogol libraries.
11+
12+To run, invoke `stack ghci gogol-examples` from the gogol project root
13+and load the desired examples module. For example `:l Example.Compute`.
14+
15+
16+## Contribute
17+
18+For any problems, comments, or feedback please create an issue [here on GitHub](https://github.com/brendanhay/gogol/issues).
19+
20+
21+## Licence
22+
23+`gogol-examples` are released under the [Mozilla Public License Version 2.0](http://www.mozilla.org/MPL/).
examples/Setup.hsnew file+2
@@ -0,0 +1,2 @@
1+import Distribution.Simple
2+main = defaultMain
examples/gogol-examples.cabalnew file+36
@@ -0,0 +1,36 @@
1+name: gogol-examples
2+version: 0.5.0
3+synopsis: Basic examples for various gogol libraries.
4+homepage: https://github.com/brendanhay/gogol
5+license: OtherLicense
6+license-file: LICENSE
7+author: Brendan Hay
8+maintainer: Brendan Hay <brendan.g.hay@gmail.com>
9+copyright: Copyright (c) 2015-2016 Brendan Hay
10+build-type: Simple
11+extra-source-files: README.md
12+cabal-version: >= 1.10
13+
14+library
15+ default-language: Haskell2010
16+ hs-source-dirs: src
17+
18+ ghc-options: -Wall
19+
20+ exposed-modules:
21+ Example.Storage
22+ , Example.Sheets
23+
24+ build-depends:
25+ base >= 4.7
26+ , bytestring
27+ , conduit
28+ , conduit-extra
29+ , gogol == 0.5.0.*
30+ , gogol-core
31+ , gogol-storage
32+ , gogol-sheets
33+ , lens
34+ , resourcet
35+ , text
36+ , aeson
examples/src/Example/Sheets.hsnew file+54
@@ -0,0 +1,54 @@
1+{-# LANGUAGE OverloadedStrings #-}
2+
3+module Example.Sheets where
4+
5+---------------------------------------------------------------------------------
6+import Network.Google.Resource.Sheets.Spreadsheets.Get
7+import Network.Google.Sheets
8+import Network.Google
9+
10+import Control.Lens ((.~), (<&>))
11+import Data.Text (Text)
12+import System.IO (stdout)
13+import Data.Aeson.Types
14+
15+---------------------------------------------------------------------------------
16+
17+-- |
18+-- This gets the Information about an spreadsheet.
19+-- In order to be able to run these examples you need to
20+-- create a service acount from google's developers console
21+-- and copy the dowloaded json file to ~/.config/gcloud/application_default_credentials.json.
22+--
23+-- you must also share with your service the spreadsheet that you want to get the info of.
24+-- In order to do this you must share the sheet with the email address of your service
25+-- which is in your downloaded service config file.
26+--
27+-- after doing above step just pass the sreadsheet id to the function.
28+exampleGetSheet :: Text -> IO Spreadsheet
29+exampleGetSheet sheetID = do
30+ lgr <- newLogger Debug stdout
31+ env <- newEnv <&> (envLogger .~ lgr) . (envScopes .~ spreadsheetsScope)
32+ runResourceT . runGoogle env $
33+ send (spreadsheetsGet sheetID )
34+
35+-- |
36+-- you pass the sheet id and a range (eg. "sheet1!A1:C3") in that sheet
37+-- and it retreives the values in the specified range
38+exampleGetValue :: Text -> Text -> IO ValueRange
39+exampleGetValue sheetID range = do
40+ lgr <- newLogger Debug stdout
41+ env <- newEnv <&> (envLogger .~ lgr) . (envScopes .~ spreadsheetsScope)
42+ runResourceT . runGoogle env $
43+ send (spreadsheetsValuesGet sheetID range )
44+
45+
46+exampleAppendValue :: Text -> Text -> [[Value]] -> IO AppendValuesResponse
47+exampleAppendValue sheetID range val = do
48+ lgr <- newLogger Debug stdout
49+ env <- newEnv <&> (envLogger .~ lgr) . (envScopes .~ spreadsheetsScope)
50+ runResourceT . runGoogle env $
51+ send (svaValueInputOption .~ Just "USER_ENTERED" $ spreadsheetsValuesAppend
52+ sheetID
53+ ( vrMajorDimension .~ Just VRMDRows $ vrValues .~ val $ vrRange .~ Just range $ valueRange)
54+ range )
examples/src/Example/Storage.hsnew file+68
@@ -0,0 +1,68 @@
1+{-# LANGUAGE FlexibleContexts #-}
2+{-# LANGUAGE OverloadedStrings #-}
3+{-# LANGUAGE ScopedTypeVariables #-}
4+
5+-- |
6+-- Module : Example.Storage
7+-- Copyright : (c) 2015-2016 Brendan Hay
8+-- License : Mozilla Public License, v. 2.0.
9+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>
10+-- Stability : provisional
11+-- Portability : non-portable (GHC extensions)
12+--
13+module Example.Storage where
14+
15+import Control.Lens ((&), (.~), (<&>), (?~))
16+import Control.Monad.Trans.Resource (liftResourceT, runResourceT)
17+
18+import Data.Conduit (runConduit, (.|))
19+import Data.Text (Text)
20+
21+import System.IO (stdout)
22+
23+import qualified Data.Conduit.Binary as Conduit
24+import qualified Data.Text as Text
25+import qualified Network.Google as Google
26+import qualified Network.Google.Storage as Storage
27+
28+
29+-- This will calculate the MIME type (and therefore Content-Type) of
30+-- the stored object based on the file extension.
31+--
32+-- You can explicitly set the desired MIME type by using:
33+-- {-
34+-- import Network.HTTP.Media ((//))
35+----
36+-- b <- sourceBody f <&> bodyContentType .~ "application" // "json"
37+-- ...
38+--
39+-- -}
40+--example :: Text -> FilePath -> IO ()
41+example bucket input output = do
42+ -- Setup a logger to emit 'Debug' (or higher) log statements to 'stdout':
43+ lgr <- Google.newLogger Google.Debug stdout
44+
45+ -- Create a new environment which will discover the appropriate
46+ -- AuthN/AuthZ credentials, and explicitly state the OAuth scopes
47+ -- we will be using below, which will be enforced by the compiler:
48+ env <- Google.newEnv <&>
49+ (Google.envLogger .~ lgr)
50+ . (Google.envScopes .~ Storage.storageReadWriteScope)
51+
52+ -- Create a streaming 'Conduit' source of the input file contents:
53+ body <- Google.sourceBody input
54+
55+ let key = Text.pack input
56+
57+ runResourceT . Google.runGoogle env $ do
58+ -- Upload the 'input' file contents to the specified bucket, using
59+ -- the file path as the key:
60+ _ <- Google.upload (Storage.objectsInsert bucket Storage.object' & Storage.oiName ?~ key) body
61+
62+ -- Download from the bucket/key and create a source of the HTTP stream:
63+ stream <- Google.download (Storage.objectsGet bucket key)
64+
65+ -- 'Conduit' actions such as '.|' need to be lifted into the 'Google'
66+ -- monad using 'liftResourceT', this will stream the received bytes
67+ -- into the 'output' file:
68+ liftResourceT (runConduit (stream .| Conduit.sinkFile output))
gen/.ghcinew file+3
@@ -0,0 +1,3 @@
1+:set -XOverloadedStrings
2+
3+:set prompt "> "
gen/.stylish-haskell.yaml+7−3
@@ -4,12 +4,16 @@ steps:
4 - language_pragmas:
4 - language_pragmas:
5 style: vertical
5 style: vertical
6 remove_redundant: true
6 remove_redundant: true
7+ - simple_align:
8+ cases: true
9+ top_level_patterns: true
7− - records: {}
10+ records: true
8 - trailing_whitespace: {}
11 - trailing_whitespace: {}
9
12
10−columns: 80
13+# In recent stylish-haskell versions, record fields do not get aligned at all if any one of the fields length exceeds columns, so we pad it out from 80.
14+columns: 140
11
15
12language_extensions:
16language_extensions:
13 - MultiParamTypeClasses
17 - MultiParamTypeClasses
14 - TypeOperators
18 - TypeOperators
15− - DataKinds
19+ - DataKinds
gen/LICENSE−6
@@ -365,9 +365,3 @@ file in a relevant directory) where a recipient would be likely to look
365for such a notice.
365for such a notice.
366
366
367You may add additional accurate notices of copyright ownership.
367You may add additional accurate notices of copyright ownership.
368−
369−Exhibit B - "Incompatible With Secondary Licenses" Notice
370−---------------------------------------------------------
371−
372− This Source Code Form is "Incompatible With Secondary Licenses", as
373− defined by the Mozilla Public License, v. 2.0.
gen/Makefile+10−2
@@ -38,7 +38,7 @@ format:
38 -exec stylish-haskell -i {} \;
38 -exec stylish-haskell -i {} \;
39
39
40$(BIN)/gogol-gen: $(BIN)
40$(BIN)/gogol-gen: $(BIN)
41− stack build gogol-gen --copy-bins --local-bin-path $(BIN)
41+ stack build gogol-gen --nix --copy-bins --local-bin-path $(BIN)
42
42
43$(BIN):
43$(BIN):
44 mkdir $@
44 mkdir $@
@@ -54,4 +54,12 @@ $(MODEL_DIR): vendor/google-api-go-client
54 @./script/copy-models $< $@
54 @./script/copy-models $< $@
55
55
56vendor/google-api-go-client:
56vendor/google-api-go-client:
57− git clone git@github.com:google/google-api-go-client $@
57+ git clone https://github.com/google/google-api-go-client $@
58+
59+.PHONY: audit
60+
61+ACTUAL = $(addsuffix \\n,$(sort $(notdir $(MODELS))))
62+EXPECT = $(addsuffix -api.json\\n,$(sort $(notdir $(basename $(wildcard annex/*.json)))))
63+
64+audit: $(MODEL_DIR)
65+ @diff -B -y <(echo -e $(ACTUAL)) <(echo -e $(EXPECT))
gen/README.mdnew file+52
@@ -0,0 +1,52 @@
1+# gogol-gen
2+
3+For pull requests which affect generated output, please _do not include_ the
4+actual regenerated service code, only commit the updates to the generator,
5+config and annex connection.
6+
7+This ensures the Continuous Integration process is the single source of truth
8+for generated code changes, and keeps pull requests readable and focused on
9+actual generator code/logic changes.
10+
11+## Generating
12+
13+The configuration for the generation step of each individual service endpoint lives
14+under `./annex`. The naming matches the Google Discovery Service naming of endpoints,
15+which are vendored under `./model`.
16+
17+Rather than actually crawling the Discovery Service, the [Google API Go Client](https://www.github.com/google/google-api-go-client)
18+is vendored under `./vendor`, and the JSON service definitions are copied to `./model`
19+to ensure reproducibility of the generation steps and the abilitry to diff across versions.
20+
21+### Example: Cloud Dataproc
22+
23+To add a new endpoint, first create the related JSON configuration in the `./annex` directory.
24+
25+Since the Cloud Dataproc API is called `dataproc-api.json` in the Google Discovery API,
26+you would create the configuration `./annex/dataproc.json` with the following contents:
27+
28+```
29+{
30+ "library": "dataproc",
31+ "canonicalName": "Dataproc"
32+}
33+```
34+
35+Then, the `Makefile` is used:
36+
37+```
38+make clean
39+make
40+```
41+
42+This will build the `./bin/gogol-gen` binary, and will generate a Haskell library
43+for each API that has matching `./annex/*.json` configuration.
44+
45+For the above example, the result would be a `../gogol-dataproc` directory at the
46+top-level of the project containing the generated API client.
47+
48+> `make full-clean` can be used to cause a complete re-download of all (including new)
49+service models.
50+
51+> Individual clients/SDKs can be generated by passing a specific `MODELS` environment
52+variable to the `make` command, for example: `MODELS=model/admin/directory/v1/admin-api.json make`
gen/annex/abusiveexperiencereport.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "abusiveexperiencereport",
3+ "canonicalName": "AbusiveExperienceReport"
4+}
gen/annex/acceleratedmobilepageurl.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "acceleratedmobilepageurl",
3+ "canonicalName": "AcceleratedMobilePageUrl"
4+}
gen/annex/accessapproval.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "accessapproval",
3+ "canonicalName": "AccessApproval"
4+}
gen/annex/accesscontextmanager.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "accesscontextmanager",
3+ "canonicalName": "AccessContextManager"
4+}
gen/annex/adexchangebuyer.json−1
@@ -2,4 +2,3 @@
2 "library": "adexchange-buyer",
2 "library": "adexchange-buyer",
3 "canonicalName": "AdExchangeBuyer"
3 "canonicalName": "AdExchangeBuyer"
4}
4}
5−
gen/annex/adexchangebuyer2.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "adexchangebuyer2",
3+ "canonicalName": "AdExchangeBuyer2"
4+}
gen/annex/adexchangeseller.json−1
@@ -2,4 +2,3 @@
2 "library": "adexchange-seller",
2 "library": "adexchange-seller",
3 "canonicalName": "AdExchangeSeller"
3 "canonicalName": "AdExchangeSeller"
4}
4}
5−
gen/annex/adexperiencereport.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "adexperiencereport",
3+ "canonicalName": "AdExperienceReport"
4+}
gen/annex/admin/datatransfer.json+1−1
@@ -1,5 +1,5 @@
1{
1{
2 "library": "admin-datatransfer",
2 "library": "admin-datatransfer",
3− "canonicalName": "Admin.DataTransfer"
3+ "canonicalName": "DataTransfer"
4}
4}
5
5
gen/annex/admin/directory.json+1−1
@@ -1,5 +1,5 @@
1{
1{
2 "library": "admin-directory",
2 "library": "admin-directory",
3− "canonicalName": "Admin.Directory"
3+ "canonicalName": "Directory"
4}
4}
5
5
gen/annex/admin/email_migration.json+1−1
@@ -1,5 +1,5 @@
1{
1{
2 "library": "admin-emailmigration",
2 "library": "admin-emailmigration",
3− "canonicalName": "Admin.EmailMigration"
3+ "canonicalName": "EmailMigration"
4}
4}
5
5
gen/annex/admin/reports.json+1−1
@@ -1,5 +1,5 @@
1{
1{
2 "library": "admin-reports",
2 "library": "admin-reports",
3− "canonicalName": "Admin.Reports"
3+ "canonicalName": "Reports"
4}
4}
5
5
gen/annex/adsensehost.json+1−1
@@ -1,5 +1,5 @@
1{
1{
2 "library": "adsense-host",
2 "library": "adsense-host",
3− "canonicalName": "AdSense.Host"
3+ "canonicalName": "AdSenseHost"
4}
4}
5
5
gen/annex/alertcenter.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "alertcenter",
3+ "canonicalName": "AlertCenter"
4+}
gen/annex/analyticsreporting.jsonnew file+17
@@ -0,0 +1,17 @@
1+{
2+ "library": "analyticsreporting",
3+ "canonicalName": "AnalyticsReporting",
4+ "schemas": {
5+ "User": {
6+ "properties": {
7+ "type": {
8+ "enum": [
9+ "USER_ID_TYPE_UNSPECIFIED",
10+ "USER_ID_TYPE_USER_ID",
11+ "USER_ID_TYPE_CLIENT_ID"
12+ ]
13+ }
14+ }
15+ }
16+ }
17+}
gen/annex/androiddeviceprovisioning.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "androiddeviceprovisioning",
3+ "canonicalName": "AndroidDeviceProvisioning"
4+}
gen/annex/androidenterprise.json+2−2
@@ -1,5 +1,5 @@
1{
1{
2− "library": "play-enterprise",
2+ "library": "android-enterprise",
3− "canonicalName": "Play.Enterprise"
3+ "canonicalName": "AndroidEnterprise"
4}
4}
5
5
gen/annex/androidmanagement.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "androidmanagement",
3+ "canonicalName": "AndroidManagement"
4+}
gen/annex/androidpublisher.json+2−2
@@ -1,5 +1,5 @@
1{
1{
2− "library": "play-developer",
2+ "library": "android-publisher",
3− "canonicalName": "Play.Developer"
3+ "canonicalName": "AndroidPublisher"
4}
4}
5
5
gen/annex/appsactivity.json+1−1
@@ -1,5 +1,5 @@
1{
1{
2 "library": "apps-activity",
2 "library": "apps-activity",
3− "canonicalName": "Apps.Activity"
3+ "canonicalName": "AppsActivity"
4}
4}
5
5
gen/annex/appstate.json+2−2
@@ -1,5 +1,5 @@
1{
1{
2− "library": "games-appstate",
2+ "library": "appstate",
3− "canonicalName": "Games.AppState"
3+ "canonicalName": "AppState"
4}
4}
5
5
gen/annex/autoscaler.json+2−2
@@ -1,5 +1,5 @@
1{
1{
2− "library": "compute-autoscaler",
2+ "library": "autoscaler",
3− "canonicalName": "Compute.Autoscaler"
3+ "canonicalName": "Autoscaler"
4}
4}
5
5
gen/annex/bigquery.json+18−2
@@ -1,5 +1,21 @@
1{
1{
2 "library": "bigquery",
2 "library": "bigquery",
3− "canonicalName": "BigQuery"
3+ "canonicalName": "BigQuery",
4+ "schemas": {
5+ "JobConfigurationLoad": {
6+ "properties": {
7+ "quote": {
8+ "default": null
9+ }
10+ }
11+ },
12+ "Table": {
13+ "properties": {
14+ "requirePartitionFilter": {
15+ "default": null
16+ }
17+ }
4−}
18+ }
5
19
20+ }
21+}
gen/annex/bigquerydatatransfer.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "bigquerydatatransfer",
3+ "canonicalName": "BigQueryDataTransfer"
4+}
gen/annex/bigtableadmin.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "bigtableadmin",
3+ "canonicalName": "BigtableAdmin"
4+}
gen/annex/binaryauthorization.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "binaryauthorization",
3+ "canonicalName": "BinaryAuthorization"
4+}
gen/annex/calendar.json+1−1
@@ -1,5 +1,5 @@
1{
1{
2 "library": "apps-calendar",
2 "library": "apps-calendar",
3− "canonicalName": "Apps.Calendar"
3+ "canonicalName": "AppsCalendar"
4}
4}
5
5
gen/annex/chat.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "chat",
3+ "canonicalName": "Chat"
4+}
gen/annex/cloudasset.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "cloudasset",
3+ "canonicalName": "CloudAsset"
4+}
gen/annex/cloudbuild.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "containerbuilder",
3+ "canonicalName": "ContainerBuilder"
4+}
gen/annex/clouderrorreporting.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "clouderrorreporting",
3+ "canonicalName": "CloudErrorReporting"
4+}
gen/annex/cloudfunctions.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "cloudfunctions",
3+ "canonicalName": "CloudFunctions"
4+}
gen/annex/cloudidentity.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "cloudidentity",
3+ "canonicalName": "CloudIdentity"
4+}
gen/annex/cloudiot.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "cloudiot",
3+ "canonicalName": "CloudIOT"
4+}
gen/annex/cloudkms.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "cloudkms",
3+ "canonicalName": "CloudKMS"
4+}
gen/annex/cloudmonitoring.json+2−2
@@ -1,5 +1,5 @@
1{
1{
2− "library": "monitoring",
2+ "library": "cloudmonitoring",
3− "canonicalName": "Monitoring"
3+ "canonicalName": "CloudMonitoring"
4}
4}
5
5
gen/annex/cloudprivatecatalog.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "cloudprivatecatalog",
3+ "canonicalName": "CloudPrivateCatalog"
4+}
gen/annex/cloudprivatecatalogproducer.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "cloudprivatecatalogproducer",
3+ "canonicalName": "CloudPrivateCatalogProducer"
4+}
gen/annex/cloudprofiler.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "cloudprofiler",
3+ "canonicalName": "CloudProfiler"
4+}
gen/annex/cloudscheduler.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "cloudscheduler",
3+ "canonicalName": "CloudScheduler"
4+}
gen/annex/cloudsearch.jsonnew file+24
@@ -0,0 +1,24 @@
1+{
2+ "library": "cloudsearch",
3+ "canonicalName": "CloudSearch",
4+ "resources": {
5+ "media": {
6+ "methods": {
7+ "upload": {
8+ "mediaUpload": {
9+ "protocols": {
10+ "resumable": {
11+ "multipart": true,
12+ "path": "/resumable/upload/v1/media/{+resourceName}"
13+ },
14+ "simple": {
15+ "multipart": true,
16+ "path": "/upload/v1/media/{+resourceName}"
17+ }
18+ }
19+ }
20+ }
21+ }
22+ }
23+ }
24+}
gen/annex/cloudshell.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "cloudshell",
3+ "canonicalName": "CloudShell"
4+}
gen/annex/cloudtasks.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "cloudtasks",
3+ "canonicalName": "CloudTasks"
4+}
gen/annex/cloudtrace.jsonnew file+5
@@ -0,0 +1,5 @@
1+{
2+ "library": "cloudtrace",
3+ "canonicalName": "CloudTrace"
4+}
5+
gen/annex/clouduseraccounts.json+2−2
@@ -1,5 +1,5 @@
1{
1{
2− "library": "compute-useraccounts",
2+ "library": "useraccounts",
3− "canonicalName": "Compute.UserAccounts"
3+ "canonicalName": "UserAccounts"
4}
4}
5
5
gen/annex/commentanalyzer.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "commentanalyzer",
3+ "canonicalName": "CommentAnalyzer"
4+}
gen/annex/composer.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "composer",
3+ "canonicalName": "Composer"
4+}
gen/annex/consumersurveys.jsonnew file+5
@@ -0,0 +1,5 @@
1+{
2+ "library": "consumersurveys",
3+ "canonicalName": "ConsumerSurveys",
4+ "documentationLink": "https://developers.google.com/surveys/"
5+}
gen/annex/containeranalysis.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "containeranalysis",
3+ "canonicalName": "ContainerAnalysis"
4+}
gen/annex/content.json+1−1
@@ -1,5 +1,5 @@
1{
1{
2 "library": "shopping-content",
2 "library": "shopping-content",
3− "canonicalName": "Shopping.Content"
3+ "canonicalName": "ShoppingContent"
4}
4}
5
5
gen/annex/coordinate.json+1−1
@@ -1,5 +1,5 @@
1{
1{
2 "library": "maps-coordinate",
2 "library": "maps-coordinate",
3− "canonicalName": "Maps.Coordinate"
3+ "canonicalName": "MapsCoordinate"
4}
4}
5
5
gen/annex/datafusion.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "datafusion",
3+ "canonicalName": "DataFusion"
4+}
gen/annex/dataproc.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "dataproc",
3+ "canonicalName": "Dataproc"
4+}
gen/annex/datastore.json+7−2
@@ -1,5 +1,10 @@
1{
1{
2 "library": "datastore",
2 "library": "datastore",
3− "canonicalName": "Datastore"
3+ "canonicalName": "Datastore",
4−}
4+ "parameters": {
5+ "alt": {
6+ "default": "json"
5
7
8+ }
9+ }
10+}
gen/annex/dialogflow.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "dialogflow",
3+ "canonicalName": "DialogFlow"
4+}
gen/annex/digitalassetlinks.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "digitalassetlinks",
3+ "canonicalName": "DigitalAssetLinks"
4+}
gen/annex/dlp.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "dlp",
3+ "canonicalName": "DLP"
4+}
gen/annex/dns.json−1
@@ -2,4 +2,3 @@
2 "library": "dns",
2 "library": "dns",
3 "canonicalName": "DNS"
3 "canonicalName": "DNS"
4}
4}
5−
gen/annex/docs.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "docs",
3+ "canonicalName": "Docs"
4+}
gen/annex/doubleclickbidmanager.json+1−1
@@ -1,5 +1,5 @@
1{
1{
2 "library": "doubleclick-bids",
2 "library": "doubleclick-bids",
3− "canonicalName": "DoubleClick.Bids"
3+ "canonicalName": "DoubleClickBids"
4}
4}
5
5
gen/annex/doubleclicksearch.json+1−1
@@ -1,5 +1,5 @@
1{
1{
2 "library": "doubleclick-search",
2 "library": "doubleclick-search",
3− "canonicalName": "DoubleClick.Search"
3+ "canonicalName": "DoubleClickSearch"
4}
4}
5
5
gen/annex/driveactivity.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "driveactivity",
3+ "canonicalName": "DriveActivity"
4+}
gen/annex/factchecktools.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "factchecktools",
3+ "canonicalName": "FactCheckTools"
4+}
gen/annex/file.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "file",
3+ "canonicalName": "File"
4+}
gen/annex/firebasedynamiclinks.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "firebase-dynamiclinks",
3+ "canonicalName": "FirebaseDynamicLinks"
4+}
gen/annex/firebasehosting.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "firebasehosting",
3+ "canonicalName": "FirebaseHosting"
4+}
gen/annex/firebaseremoteconfig.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "firebaseremoteconfig",
3+ "canonicalName": "FirebaseRemoteConfig"
4+}
gen/annex/firebaserules.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "firebase-rules",
3+ "canonicalName": "FirebaseRules"
4+}
gen/annex/firestore.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "firestore",
3+ "canonicalName": "FireStore"
4+}
gen/annex/freebase.json+1−1
@@ -1,5 +1,5 @@
1{
1{
2 "library": "freebasesearch",
2 "library": "freebasesearch",
3− "canonicalName": "Freebase.Search"
3+ "canonicalName": "FreebaseSearch"
4}
4}
5
5
gen/annex/games.json+19−1
@@ -1,5 +1,23 @@
1{
1{
2 "library": "games",
2 "library": "games",
3− "canonicalName": "Games"
3+ "canonicalName": "Games",
4+ "resources": {
5+ "players": {
6+ "methods": {
7+ "list": {
8+ "parameters": {
9+ "collection": {
10+ "enum": [
11+ "played_with"
12+ ],
13+ "enumDescriptions": [
14+ "Retrieve a list of players you have played a multiplayer game (realtime or turn-based) with recently."
15+ ]
16+ }
17+ }
18+ }
19+ }
20+ }
21+ }
4}
22}
5
23
gen/annex/gamesconfiguration.json+1−1
@@ -1,5 +1,5 @@
1{
1{
2 "library": "games-configuration",
2 "library": "games-configuration",
3− "canonicalName": "Games.Configuration"
3+ "canonicalName": "GamesConfiguration"
4}
4}
5
5
gen/annex/gamesmanagement.json+1−1
@@ -1,5 +1,5 @@
1{
1{
2 "library": "games-management",
2 "library": "games-management",
3− "canonicalName": "Games.Management"
3+ "canonicalName": "GamesManagement"
4}
4}
5
5
gen/annex/groupsmigration.json+7−2
@@ -1,5 +1,10 @@
1{
1{
2 "library": "groups-migration",
2 "library": "groups-migration",
3− "canonicalName": "Groups.Migration"
3+ "canonicalName": "GroupsMigration",
4−}
4+ "parameters": {
5+ "alt": {
6+ "default": "json"
5
7
8+ }
9+ }
10+}
gen/annex/groupssettings.json+8−3
@@ -1,5 +1,10 @@
1{
1{
2− "library": "groups-migration",
2+ "library": "groups-settings",
3− "canonicalName": "Groups.Settings"
3+ "canonicalName": "GroupsSettings",
4−}
4+ "parameters": {
5+ "alt": {
6+ "default": "json"
5
7
8+ }
9+ }
10+}
gen/annex/healthcare.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "healthcare",
3+ "canonicalName": "Healthcare"
4+}
gen/annex/iam.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "iam",
3+ "canonicalName": "IAM"
4+}
gen/annex/iamcredentials.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "iamcredentials",
3+ "canonicalName": "IAMCredentials"
4+}
gen/annex/iap.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "iap",
3+ "canonicalName": "IAP"
4+}
gen/annex/identitytoolkit.json−1
@@ -2,4 +2,3 @@
2 "library": "identity-toolkit",
2 "library": "identity-toolkit",
3 "canonicalName": "IdentityToolkit"
3 "canonicalName": "IdentityToolkit"
4}
4}
5−
gen/annex/indexing.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "indexing",
3+ "canonicalName": "Indexing"
4+}
gen/annex/jobs.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "jobs",
3+ "canonicalName": "Jobs"
4+}
gen/annex/kgsearch.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "kgsearch",
3+ "canonicalName": "KnowledgeGraphSearch"
4+}
gen/annex/language.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "language",
3+ "canonicalName": "Language"
4+}
gen/annex/libraryagent.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "libraryagent",
3+ "canonicalName": "LibraryAgent"
4+}
gen/annex/licensing.json+1−1
@@ -1,5 +1,5 @@
1{
1{
2 "library": "apps-licensing",
2 "library": "apps-licensing",
3− "canonicalName": "Apps.Licensing"
3+ "canonicalName": "AppsLicensing"
4}
4}
5
5
gen/annex/manufacturers.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "manufacturers",
3+ "canonicalName": "Manufacturers"
4+}
gen/annex/mapsengine.json+1−1
@@ -1,5 +1,5 @@
1{
1{
2 "library": "maps-engine",
2 "library": "maps-engine",
3− "canonicalName": "Map.Engine"
3+ "canonicalName": "MapsEngine"
4}
4}
5
5
gen/annex/ml.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "ml",
3+ "canonicalName": "MachineLearning"
4+}
gen/annex/monitoring.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "monitoring",
3+ "canonicalName": "Monitoring"
4+}
gen/annex/oslogin.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "oslogin",
3+ "canonicalName": "OSLogin"
4+}
gen/annex/people.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "people",
3+ "canonicalName": "People"
4+}
gen/annex/photoslibrary.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "photoslibrary",
3+ "canonicalName": "PhotosLibrary"
4+}
gen/annex/playcustomapp.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "playcustomapp",
3+ "canonicalName": "PlayCustomApp"
4+}
gen/annex/playmoviespartner.json+1−1
@@ -1,5 +1,5 @@
1{
1{
2 "library": "play-moviespartner",
2 "library": "play-moviespartner",
3− "canonicalName": "Play.Movies.Partner"
3+ "canonicalName": "PlayMoviesPartner"
4}
4}
5
5
gen/annex/poly.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "poly",
3+ "canonicalName": "Poly"
4+}
gen/annex/redis.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "redis",
3+ "canonicalName": "Redis"
4+}
gen/annex/remotebuildexecution.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "remotebuildexecution",
3+ "canonicalName": "RemoteBuildExecution"
4+}
gen/annex/replicapool.json+1−1
@@ -1,4 +1,4 @@
1{
1{
2 "library": "replicapool",
2 "library": "replicapool",
3− "canonicalName": "InstanceGroups.Manager"
3+ "canonicalName": "ReplicaPool"
4}
4}
gen/annex/replicapoolupdater.json+1−1
@@ -1,5 +1,5 @@
1{
1{
2 "library": "replicapool-updater",
2 "library": "replicapool-updater",
3− "canonicalName": "InstanceGroups.Updater"
3+ "canonicalName": "ReplicaPoolUpdater"
4}
4}
5
5
gen/annex/reseller.json+1−1
@@ -1,4 +1,4 @@
1{
1{
2 "library": "apps-reseller",
2 "library": "apps-reseller",
3− "canonicalName": "Apps.Reseller"
3+ "canonicalName": "AppsReseller"
4}
4}
gen/annex/resourceviews.json+1−1
@@ -1,5 +1,5 @@
1{
1{
2 "library": "resourceviews",
2 "library": "resourceviews",
3− "canonicalName": "InstanceGroups"
3+ "canonicalName": "ResourceViews"
4}
4}
5
5
gen/annex/run.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "run",
3+ "canonicalName": "Run"
4+}
gen/annex/runtimeconfig.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "runtimeconfig",
3+ "canonicalName": "RuntimeConfig"
4+}
gen/annex/safebrowsing.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "safebrowsing",
3+ "canonicalName": "SafeBrowsing"
4+}
gen/annex/script.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "script",
3+ "canonicalName": "Script"
4+}
gen/annex/searchconsole.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "searchconsole",
3+ "canonicalName": "SearchConsole"
4+}
gen/annex/securitycenter.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "securitycenter",
3+ "canonicalName": "SecurityCenter"
4+}
gen/annex/servicebroker.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "servicebroker",
3+ "canonicalName": "ServiceBroker"
4+}
gen/annex/serviceconsumermanagement.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "serviceconsumermanagement",
3+ "canonicalName": "ServiceConsumerManagement"
4+}
gen/annex/servicecontrol.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "servicecontrol",
3+ "canonicalName": "ServiceControl"
4+}
gen/annex/servicemanagement.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "servicemanagement",
3+ "canonicalName": "ServiceManagement"
4+}
gen/annex/servicenetworking.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "servicenetworking",
3+ "canonicalName": "ServiceNetworking"
4+}
gen/annex/serviceusage.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "serviceusage",
3+ "canonicalName": "ServiceUsage"
4+}
gen/annex/serviceuser.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "serviceuser",
3+ "canonicalName": "ServiceUser"
4+}
gen/annex/sheets.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "sheets",
3+ "canonicalName": "Sheets"
4+}
gen/annex/slides.jsonnew file+5
@@ -0,0 +1,5 @@
1+{
2+ "library": "slides",
3+ "canonicalName": "Slides"
4+}
5+
gen/annex/sourcerepo.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "sourcerepo",
3+ "canonicalName": "SourceRepo"
4+}
gen/annex/spanner.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "spanner",
3+ "canonicalName": "Spanner"
4+}
gen/annex/speech.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "speech",
3+ "canonicalName": "Speech"
4+}
gen/annex/storagetransfer.json+1−1
@@ -1,5 +1,5 @@
1{
1{
2 "library": "storage-transfer",
2 "library": "storage-transfer",
3− "canonicalName": "Storage.Transfer"
3+ "canonicalName": "StorageTransfer"
4}
4}
5
5
gen/annex/streetviewpublish.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "streetviewpublish",
3+ "canonicalName": "StreetViewPublish"
4+}
gen/annex/surveys.jsonnew file+5
@@ -0,0 +1,5 @@
1+{
2+ "library": "surveys",
3+ "canonicalName": "Surveys",
4+ "documentationLink": "https://developers.google.com/surveys/"
5+}
gen/annex/taskqueue.json+2−2
@@ -1,5 +1,5 @@
1{
1{
2− "library": "appengine-taskqueue",
2+ "library": "taskqueue",
3− "canonicalName": "AppEngine.TaskQueue"
3+ "canonicalName": "TaskQueue"
4}
4}
5
5
gen/annex/tasks.json+1−1
@@ -1,5 +1,5 @@
1{
1{
2 "library": "apps-tasks",
2 "library": "apps-tasks",
3− "canonicalName": "Apps.Tasks"
3+ "canonicalName": "AppsTasks"
4}
4}
5
5
gen/annex/testing.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "testing",
3+ "canonicalName": "Testing"
4+}
gen/annex/texttospeech.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "texttospeech",
3+ "canonicalName": "TextToSpeech"
4+}
gen/annex/toolresults.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "toolresults",
3+ "canonicalName": "ToolResults"
4+}
gen/annex/tpu.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "tpu",
3+ "canonicalName": "TPU"
4+}
gen/annex/tracing.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "tracing",
3+ "canonicalName": "Tracing"
4+}
gen/annex/vault.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "vault",
3+ "canonicalName": "Vault"
4+}
gen/annex/videointelligence.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "videointelligence",
3+ "canonicalName": "VideoIntelligence"
4+}
gen/annex/vision.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "vision",
3+ "canonicalName": "Vision"
4+}
gen/annex/webmasters.json+1−1
@@ -1,5 +1,5 @@
1{
1{
2 "library": "webmaster-tools",
2 "library": "webmaster-tools",
3− "canonicalName": "Webmaster.Tools"
3+ "canonicalName": "WebmasterTools"
4}
4}
5
5
gen/annex/websecurityscanner.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "websecurityscanner",
3+ "canonicalName": "WebSecurityScanner"
4+}
gen/annex/youtube.json+75−2
@@ -1,5 +1,78 @@
1{
1{
2 "library": "youtube",
2 "library": "youtube",
3− "canonicalName": "YouTube"
3+ "canonicalName": "YouTube",
4+ "resources": {
5+ "subscriptions": {
6+ "methods": {
7+ "list": {
8+ "parameters": {
9+ "order": {
10+ "default": "relevance"
11+ }
12+ }
13+ }
14+ }
15+ },
16+ "search": {
17+ "methods": {
18+ "list": {
19+ "parameters": {
20+ "order": {
21+ "default": "relevance"
22+ }
23+ }
24+ }
25+ }
26+ },
27+ "comments": {
28+ "methods": {
29+ "list": {
30+ "parameters": {
31+ "textFormat": {
32+ "default": "html"
33+ }
34+ }
35+ }
36+ }
37+ },
38+ "commentThreads": {
39+ "methods": {
40+ "list": {
41+ "parameters": {
42+ "moderationStatus": {
43+ "default": "published"
44+ },
45+ "order": {
46+ "default": "time"
47+ },
48+ "textFormat": {
49+ "default": "html"
50+ }
51+ }
52+ }
53+ }
54+ },
55+ "liveBroadcasts": {
56+ "methods": {
57+ "list": {
58+ "parameters": {
59+ "broadcastType": {
60+ "default": "event"
61+ }
62+ }
63+ }
64+ }
65+ },
66+ "sponsors": {
67+ "methods": {
68+ "list": {
69+ "parameters": {
70+ "filter": {
71+ "default": "newest"
72+ }
73+ }
74+ }
75+ }
76+ }
77+ }
4}
78}
5−
gen/annex/youtubeanalytics.json−1
@@ -2,4 +2,3 @@
2 "library": "youtube-analytics",
2 "library": "youtube-analytics",
3 "canonicalName": "YouTubeAnalytics"
3 "canonicalName": "YouTubeAnalytics"
4}
4}
5−
gen/annex/youtubereporting.jsonnew file+4
@@ -0,0 +1,4 @@
1+{
2+ "library": "youtube-reporting",
3+ "canonicalName": "YouTubeReporting"
4+}
gen/gogol-gen.cabal+7−6
@@ -1,5 +1,5 @@
1name: gogol-gen
1name: gogol-gen
2−version: 0.0.1
2+version: 0.5.0
3synopsis: Gogol Code Generator
3synopsis: Gogol Code Generator
4homepage: https://github.com/brendanhay/gogol
4homepage: https://github.com/brendanhay/gogol
5license: OtherLicense
5license: OtherLicense
@@ -44,19 +44,19 @@ executable gogol-gen
44 ghc-options: -Wall -threaded
44 ghc-options: -Wall -threaded
45
45
46 build-depends:
46 build-depends:
47− aeson
47+ aeson >= 1
48 , attoparsec
48 , attoparsec
49− , base == 4.8.*
49+ , base >= 4.8
50 , bifunctors
50 , bifunctors
51 , bytestring
51 , bytestring
52 , case-insensitive
52 , case-insensitive
53 , directory-tree
53 , directory-tree
54 , ede
54 , ede
55− , errors
55+ , errors >= 2.1.2
56 , formatting
56 , formatting
57 , hashable
57 , hashable
58− , haskell-src-exts
58+ , haskell-src-exts == 1.20.3
59− , hindent
59+ , hindent == 5.2.7
60 , lens
60 , lens
61 , mtl
61 , mtl
62 , optparse-applicative
62 , optparse-applicative
@@ -69,4 +69,5 @@ executable gogol-gen
69 , text-icu
69 , text-icu
70 , text-manipulate
70 , text-manipulate
71 , text-regex-replace
71 , text-regex-replace
72+ , unexceptionalio
72 , unordered-containers
73 , unordered-containers
gen/model/abusiveexperiencereport/v1/abusiveexperiencereport-api.jsonnew file+239
@@ -0,0 +1,239 @@
1+{
2+ "auth": {
3+ "oauth2": {
4+ "scopes": {
5+ "https://www.googleapis.com/auth/xapi.zoo": {
6+ "description": "Test scope for access to the Zoo service"
7+ }
8+ }
9+ }
10+ },
11+ "basePath": "",
12+ "baseUrl": "https://abusiveexperiencereport.googleapis.com/",
13+ "batchPath": "batch",
14+ "canonicalName": "Abusive Experience Report",
15+ "description": "Views Abusive Experience Report data, and gets a list of sites that have a significant number of abusive experiences.",
16+ "discoveryVersion": "v1",
17+ "documentationLink": "https://developers.google.com/abusive-experience-report/",
18+ "fullyEncodeReservedExpansion": true,
19+ "icons": {
20+ "x16": "http://www.google.com/images/icons/product/search-16.gif",
21+ "x32": "http://www.google.com/images/icons/product/search-32.gif"
22+ },
23+ "id": "abusiveexperiencereport:v1",
24+ "kind": "discovery#restDescription",
25+ "name": "abusiveexperiencereport",
26+ "ownerDomain": "google.com",
27+ "ownerName": "Google",
28+ "parameters": {
29+ "$.xgafv": {
30+ "description": "V1 error format.",
31+ "enum": [
32+ "1",
33+ "2"
34+ ],
35+ "enumDescriptions": [
36+ "v1 error format",
37+ "v2 error format"
38+ ],
39+ "location": "query",
40+ "type": "string"
41+ },
42+ "access_token": {
43+ "description": "OAuth access token.",
44+ "location": "query",
45+ "type": "string"
46+ },
47+ "alt": {
48+ "default": "json",
49+ "description": "Data format for response.",
50+ "enum": [
51+ "json",
52+ "media",
53+ "proto"
54+ ],
55+ "enumDescriptions": [
56+ "Responses with Content-Type of application/json",
57+ "Media download with context-dependent Content-Type",
58+ "Responses with Content-Type of application/x-protobuf"
59+ ],
60+ "location": "query",
61+ "type": "string"
62+ },
63+ "callback": {
64+ "description": "JSONP",
65+ "location": "query",
66+ "type": "string"
67+ },
68+ "fields": {
69+ "description": "Selector specifying which fields to include in a partial response.",
70+ "location": "query",
71+ "type": "string"
72+ },
73+ "key": {
74+ "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
75+ "location": "query",
76+ "type": "string"
77+ },
78+ "oauth_token": {
79+ "description": "OAuth 2.0 token for the current user.",
80+ "location": "query",
81+ "type": "string"
82+ },
83+ "prettyPrint": {
84+ "default": "true",
85+ "description": "Returns response with indentations and line breaks.",
86+ "location": "query",
87+ "type": "boolean"
88+ },
89+ "quotaUser": {
90+ "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.",
91+ "location": "query",
92+ "type": "string"
93+ },
94+ "uploadType": {
95+ "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
96+ "location": "query",
97+ "type": "string"
98+ },
99+ "upload_protocol": {
100+ "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
101+ "location": "query",
102+ "type": "string"
103+ }
104+ },
105+ "protocol": "rest",
106+ "resources": {
107+ "sites": {
108+ "methods": {
109+ "get": {
110+ "description": "Gets a summary of the abusive experience rating of a site.",
111+ "flatPath": "v1/sites/{sitesId}",
112+ "httpMethod": "GET",
113+ "id": "abusiveexperiencereport.sites.get",
114+ "parameterOrder": [
115+ "name"
116+ ],
117+ "parameters": {
118+ "name": {
119+ "description": "The required site name. This is the site property whose abusive\nexperiences have been reviewed, and it must be URL-encoded. For example,\nsites/https%3A%2F%2Fwww.google.com. The server will return an error of\nBAD_REQUEST if this field is not filled in. Note that if the site property\nis not yet verified in Search Console, the reportUrl field\nreturned by the API will lead to the verification page, prompting the user\nto go through that process before they can gain access to the Abusive\nExperience Report.",
120+ "location": "path",
121+ "pattern": "^sites/[^/]+$",
122+ "required": true,
123+ "type": "string"
124+ }
125+ },
126+ "path": "v1/{+name}",
127+ "response": {
128+ "$ref": "SiteSummaryResponse"
129+ },
130+ "scopes": [
131+ "https://www.googleapis.com/auth/xapi.zoo"
132+ ]
133+ }
134+ }
135+ },
136+ "violatingSites": {
137+ "methods": {
138+ "list": {
139+ "description": "Lists sites with Abusive Experience Report statuses of \"Failing\".",
140+ "flatPath": "v1/violatingSites",
141+ "httpMethod": "GET",
142+ "id": "abusiveexperiencereport.violatingSites.list",
143+ "parameterOrder": [],
144+ "parameters": {},
145+ "path": "v1/violatingSites",
146+ "response": {
147+ "$ref": "ViolatingSitesResponse"
148+ },
149+ "scopes": [
150+ "https://www.googleapis.com/auth/xapi.zoo"
151+ ]
152+ }
153+ }
154+ }
155+ },
156+ "revision": "20181017",
157+ "rootUrl": "https://abusiveexperiencereport.googleapis.com/",
158+ "schemas": {
159+ "SiteSummaryResponse": {
160+ "description": "Response message for GetSiteSummary.",
161+ "id": "SiteSummaryResponse",
162+ "properties": {
163+ "abusiveStatus": {
164+ "description": "The status of the site reviewed for the abusive experiences.",
165+ "enum": [
166+ "UNKNOWN",
167+ "PASSING",
168+ "FAILING"
169+ ],
170+ "enumDescriptions": [
171+ "Not reviewed.",
172+ "Passing.",
173+ "Failing."
174+ ],
175+ "type": "string"
176+ },
177+ "enforcementTime": {
178+ "description": "The date on which enforcement begins.",
179+ "format": "google-datetime",
180+ "type": "string"
181+ },
182+ "filterStatus": {
183+ "description": "The abusive experience enforcement status of the site.",
184+ "enum": [
185+ "UNKNOWN",
186+ "ON",
187+ "OFF",
188+ "PAUSED",
189+ "PENDING"
190+ ],
191+ "enumDescriptions": [
192+ "N/A.",
193+ "Ad filtering is on.",
194+ "Ad filtering is off.",
195+ "Ad filtering is paused.",
196+ "Ad filtering is pending."
197+ ],
198+ "type": "string"
199+ },
200+ "lastChangeTime": {
201+ "description": "The last time that the site changed status.",
202+ "format": "google-datetime",
203+ "type": "string"
204+ },
205+ "reportUrl": {
206+ "description": "A link that leads to a full abusive experience report.",
207+ "type": "string"
208+ },
209+ "reviewedSite": {
210+ "description": "The name of the site reviewed.",
211+ "type": "string"
212+ },
213+ "underReview": {
214+ "description": "Whether the site is currently under review.",
215+ "type": "boolean"
216+ }
217+ },
218+ "type": "object"
219+ },
220+ "ViolatingSitesResponse": {
221+ "description": "Response message for ListViolatingSites.",
222+ "id": "ViolatingSitesResponse",
223+ "properties": {
224+ "violatingSites": {
225+ "description": "A list of summaries of violating sites.",
226+ "items": {
227+ "$ref": "SiteSummaryResponse"
228+ },
229+ "type": "array"
230+ }
231+ },
232+ "type": "object"
233+ }
234+ },
235+ "servicePath": "",
236+ "title": "Abusive Experience Report API",
237+ "version": "v1",
238+ "version_module": true
239+}
gen/model/acceleratedmobilepageurl/v1/acceleratedmobilepageurl-api.jsonnew file+225
@@ -0,0 +1,225 @@
1+{
2+ "basePath": "",
3+ "baseUrl": "https://acceleratedmobilepageurl.googleapis.com/",
4+ "batchPath": "batch",
5+ "description": "Retrieves the list of AMP URLs (and equivalent AMP Cache URLs) for a given list of public URL(s).\n",
6+ "discoveryVersion": "v1",
7+ "documentationLink": "https://developers.google.com/amp/cache/",
8+ "icons": {
9+ "x16": "http://www.google.com/images/icons/product/search-16.gif",
10+ "x32": "http://www.google.com/images/icons/product/search-32.gif"
11+ },
12+ "id": "acceleratedmobilepageurl:v1",
13+ "kind": "discovery#restDescription",
14+ "name": "acceleratedmobilepageurl",
15+ "ownerDomain": "google.com",
16+ "ownerName": "Google",
17+ "parameters": {
18+ "$.xgafv": {
19+ "description": "V1 error format.",
20+ "enum": [
21+ "1",
22+ "2"
23+ ],
24+ "enumDescriptions": [
25+ "v1 error format",
26+ "v2 error format"
27+ ],
28+ "location": "query",
29+ "type": "string"
30+ },
31+ "access_token": {
32+ "description": "OAuth access token.",
33+ "location": "query",
34+ "type": "string"
35+ },
36+ "alt": {
37+ "default": "json",
38+ "description": "Data format for response.",
39+ "enum": [
40+ "json",
41+ "media",
42+ "proto"
43+ ],
44+ "enumDescriptions": [
45+ "Responses with Content-Type of application/json",
46+ "Media download with context-dependent Content-Type",
47+ "Responses with Content-Type of application/x-protobuf"
48+ ],
49+ "location": "query",
50+ "type": "string"
51+ },
52+ "callback": {
53+ "description": "JSONP",
54+ "location": "query",
55+ "type": "string"
56+ },
57+ "fields": {
58+ "description": "Selector specifying which fields to include in a partial response.",
59+ "location": "query",
60+ "type": "string"
61+ },
62+ "key": {
63+ "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
64+ "location": "query",
65+ "type": "string"
66+ },
67+ "oauth_token": {
68+ "description": "OAuth 2.0 token for the current user.",
69+ "location": "query",
70+ "type": "string"
71+ },
72+ "prettyPrint": {
73+ "default": "true",
74+ "description": "Returns response with indentations and line breaks.",
75+ "location": "query",
76+ "type": "boolean"
77+ },
78+ "quotaUser": {
79+ "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.",
80+ "location": "query",
81+ "type": "string"
82+ },
83+ "uploadType": {
84+ "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
85+ "location": "query",
86+ "type": "string"
87+ },
88+ "upload_protocol": {
89+ "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
90+ "location": "query",
91+ "type": "string"
92+ }
93+ },
94+ "protocol": "rest",
95+ "resources": {
96+ "ampUrls": {
97+ "methods": {
98+ "batchGet": {
99+ "description": "Returns AMP URL(s) and equivalent\n[AMP Cache URL(s)](/amp/cache/overview#amp-cache-url-format).",
100+ "flatPath": "v1/ampUrls:batchGet",
101+ "httpMethod": "POST",
102+ "id": "acceleratedmobilepageurl.ampUrls.batchGet",
103+ "parameterOrder": [],
104+ "parameters": {},
105+ "path": "v1/ampUrls:batchGet",
106+ "request": {
107+ "$ref": "BatchGetAmpUrlsRequest"
108+ },
109+ "response": {
110+ "$ref": "BatchGetAmpUrlsResponse"
111+ }
112+ }
113+ }
114+ }
115+ },
116+ "revision": "20180612",
117+ "rootUrl": "https://acceleratedmobilepageurl.googleapis.com/",
118+ "schemas": {
119+ "AmpUrl": {
120+ "description": "AMP URL response for a requested URL.",
121+ "id": "AmpUrl",
122+ "properties": {
123+ "ampUrl": {
124+ "description": "The AMP URL pointing to the publisher's web server.",
125+ "type": "string"
126+ },
127+ "cdnAmpUrl": {
128+ "description": "The [AMP Cache URL](/amp/cache/overview#amp-cache-url-format) pointing to\nthe cached document in the Google AMP Cache.",
129+ "type": "string"
130+ },
131+ "originalUrl": {
132+ "description": "The original non-AMP URL.",
133+ "type": "string"
134+ }
135+ },
136+ "type": "object"
137+ },
138+ "AmpUrlError": {
139+ "description": "AMP URL Error resource for a requested URL that couldn't be found.",
140+ "id": "AmpUrlError",
141+ "properties": {
142+ "errorCode": {
143+ "description": "The error code of an API call.",
144+ "enum": [
145+ "ERROR_CODE_UNSPECIFIED",
146+ "INPUT_URL_NOT_FOUND",
147+ "NO_AMP_URL",
148+ "APPLICATION_ERROR",
149+ "URL_IS_VALID_AMP",
150+ "URL_IS_INVALID_AMP"
151+ ],
152+ "enumDescriptions": [
153+ "Not specified error.",
154+ "Indicates the requested URL is not found in the index, possibly because\nit's unable to be found, not able to be accessed by Googlebot, or some\nother error.",
155+ "Indicates no AMP URL has been found that corresponds to the requested\nURL.",
156+ "Indicates some kind of application error occurred at the server.\nClient advised to retry.",
157+ "DEPRECATED: Indicates the requested URL is a valid AMP URL. This is a\nnon-error state, should not be relied upon as a sign of success or\nfailure. It will be removed in future versions of the API.",
158+ "Indicates that an AMP URL has been found that corresponds to the request\nURL, but it is not valid AMP HTML."
159+ ],
160+ "type": "string"
161+ },
162+ "errorMessage": {
163+ "description": "An optional descriptive error message.",
164+ "type": "string"
165+ },
166+ "originalUrl": {
167+ "description": "The original non-AMP URL.",
168+ "type": "string"
169+ }
170+ },
171+ "type": "object"
172+ },
173+ "BatchGetAmpUrlsRequest": {
174+ "description": "AMP URL request for a batch of URLs.",
175+ "id": "BatchGetAmpUrlsRequest",
176+ "properties": {
177+ "lookupStrategy": {
178+ "description": "The lookup_strategy being requested.",
179+ "enum": [
180+ "FETCH_LIVE_DOC",
181+ "IN_INDEX_DOC"
182+ ],
183+ "enumDescriptions": [
184+ "FETCH_LIVE_DOC strategy involves live document fetch of URLs not found in\nthe index. Any request URL not found in the index is crawled in realtime\nto validate if there is a corresponding AMP URL. This strategy has higher\ncoverage but with extra latency introduced by realtime crawling. This is\nthe default strategy. Applications using this strategy should set higher\nHTTP timeouts of the API calls.",
185+ "IN_INDEX_DOC strategy skips fetching live documents of URL(s) not found\nin index. For applications which need low latency use of IN_INDEX_DOC\nstrategy is recommended."
186+ ],
187+ "type": "string"
188+ },
189+ "urls": {
190+ "description": "List of URLs to look up for the paired AMP URLs.\nThe URLs are case-sensitive. Up to 50 URLs per lookup\n(see [Usage Limits](/amp/cache/reference/limits)).",
191+ "items": {
192+ "type": "string"
193+ },
194+ "type": "array"
195+ }
196+ },
197+ "type": "object"
198+ },
199+ "BatchGetAmpUrlsResponse": {
200+ "description": "Batch AMP URL response.",
201+ "id": "BatchGetAmpUrlsResponse",
202+ "properties": {
203+ "ampUrls": {
204+ "description": "For each URL in BatchAmpUrlsRequest, the URL response. The response might\nnot be in the same order as URLs in the batch request.\nIf BatchAmpUrlsRequest contains duplicate URLs, AmpUrl is generated\nonly once.",
205+ "items": {
206+ "$ref": "AmpUrl"
207+ },
208+ "type": "array"
209+ },
210+ "urlErrors": {
211+ "description": "The errors for requested URLs that have no AMP URL.",
212+ "items": {
213+ "$ref": "AmpUrlError"
214+ },
215+ "type": "array"
216+ }
217+ },
218+ "type": "object"
219+ }
220+ },
221+ "servicePath": "",
222+ "title": "Accelerated Mobile Pages (AMP) URL API",
223+ "version": "v1",
224+ "version_module": true
225+}
gen/model/accessapproval/v1beta1/accessapproval-api.jsonnew file+836
@@ -0,0 +1,836 @@
1+{
2+ "auth": {
3+ "oauth2": {
4+ "scopes": {
5+ "https://www.googleapis.com/auth/cloud-platform": {
6+ "description": "View and manage your data across Google Cloud Platform services"
7+ }
8+ }
9+ }
10+ },
11+ "basePath": "",
12+ "baseUrl": "https://accessapproval.googleapis.com/",
13+ "batchPath": "batch",
14+ "canonicalName": "Access Approval",
15+ "description": "An API for controlling access to data by Google personnel.",
16+ "discoveryVersion": "v1",
17+ "documentationLink": "https://cloud.google.com/access-approval/docs",
18+ "fullyEncodeReservedExpansion": true,
19+ "icons": {
20+ "x16": "http://www.google.com/images/icons/product/search-16.gif",
21+ "x32": "http://www.google.com/images/icons/product/search-32.gif"
22+ },
23+ "id": "accessapproval:v1beta1",
24+ "kind": "discovery#restDescription",
25+ "name": "accessapproval",
26+ "ownerDomain": "google.com",
27+ "ownerName": "Google",
28+ "parameters": {
29+ "$.xgafv": {
30+ "description": "V1 error format.",
31+ "enum": [
32+ "1",
33+ "2"
34+ ],
35+ "enumDescriptions": [
36+ "v1 error format",
37+ "v2 error format"
38+ ],
39+ "location": "query",
40+ "type": "string"
41+ },
42+ "access_token": {
43+ "description": "OAuth access token.",
44+ "location": "query",
45+ "type": "string"
46+ },
47+ "alt": {
48+ "default": "json",
49+ "description": "Data format for response.",
50+ "enum": [
51+ "json",
52+ "media",
53+ "proto"
54+ ],
55+ "enumDescriptions": [
56+ "Responses with Content-Type of application/json",
57+ "Media download with context-dependent Content-Type",
58+ "Responses with Content-Type of application/x-protobuf"
59+ ],
60+ "location": "query",
61+ "type": "string"
62+ },
63+ "callback": {
64+ "description": "JSONP",
65+ "location": "query",
66+ "type": "string"
67+ },
68+ "fields": {
69+ "description": "Selector specifying which fields to include in a partial response.",
70+ "location": "query",
71+ "type": "string"
72+ },
73+ "key": {
74+ "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
75+ "location": "query",
76+ "type": "string"
77+ },
78+ "oauth_token": {
79+ "description": "OAuth 2.0 token for the current user.",
80+ "location": "query",
81+ "type": "string"
82+ },
83+ "prettyPrint": {
84+ "default": "true",
85+ "description": "Returns response with indentations and line breaks.",
86+ "location": "query",
87+ "type": "boolean"
88+ },
89+ "quotaUser": {
90+ "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.",
91+ "location": "query",
92+ "type": "string"
93+ },
94+ "uploadType": {
95+ "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
96+ "location": "query",
97+ "type": "string"
98+ },
99+ "upload_protocol": {
100+ "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
101+ "location": "query",
102+ "type": "string"
103+ }
104+ },
105+ "protocol": "rest",
106+ "resources": {
107+ "folders": {
108+ "methods": {
109+ "getAccessApprovalSettings": {
110+ "description": "Gets the settings associated with a project, folder, or organization.",
111+ "flatPath": "v1beta1/folders/{foldersId}/accessApprovalSettings",
112+ "httpMethod": "GET",
113+ "id": "accessapproval.folders.getAccessApprovalSettings",
114+ "parameterOrder": [
115+ "name"
116+ ],
117+ "parameters": {
118+ "name": {
119+ "description": "Name of the AccessApprovalSettings to retrieve.",
120+ "location": "path",
121+ "pattern": "^folders/[^/]+/accessApprovalSettings$",
122+ "required": true,
123+ "type": "string"
124+ }
125+ },
126+ "path": "v1beta1/{+name}",
127+ "response": {
128+ "$ref": "AccessApprovalSettings"
129+ },
130+ "scopes": [
131+ "https://www.googleapis.com/auth/cloud-platform"
132+ ]
133+ },
134+ "updateAccessApprovalSettings": {
135+ "description": "Updates the settings associated with a project, folder, or organization.\nCompletely replaces the existing settings.",
136+ "flatPath": "v1beta1/folders/{foldersId}/accessApprovalSettings",
137+ "httpMethod": "PATCH",
138+ "id": "accessapproval.folders.updateAccessApprovalSettings",
139+ "parameterOrder": [
140+ "name"
141+ ],
142+ "parameters": {
143+ "name": {
144+ "description": "The resource name of the settings. Format is one of:\n\u003col\u003e\n \u003cli\u003e\"projects/{project_id}/accessApprovalSettings\"\u003c/li\u003e\n \u003cli\u003e\"folders/{folder_id}/accessApprovalSettings\"\u003c/li\u003e\n \u003cli\u003e\"organizations/{organization_id}/accessApprovalSettings\"\u003c/li\u003e\n\u003col\u003e",
145+ "location": "path",
146+ "pattern": "^folders/[^/]+/accessApprovalSettings$",
147+ "required": true,
148+ "type": "string"
149+ }
150+ },
151+ "path": "v1beta1/{+name}",
152+ "request": {
153+ "$ref": "AccessApprovalSettings"
154+ },
155+ "response": {
156+ "$ref": "AccessApprovalSettings"
157+ },
158+ "scopes": [
159+ "https://www.googleapis.com/auth/cloud-platform"
160+ ]
161+ }
162+ },
163+ "resources": {
164+ "approvalRequests": {
165+ "methods": {
166+ "approve": {
167+ "description": "Approves a request and returns the updated ApprovalRequest.\n\nReturns NOT_FOUND if the request does not exist. Returns\nFAILED_PRECONDITION if the request exists but is not in a pending state.",
168+ "flatPath": "v1beta1/folders/{foldersId}/approvalRequests/{approvalRequestsId}:approve",
169+ "httpMethod": "POST",
170+ "id": "accessapproval.folders.approvalRequests.approve",
171+ "parameterOrder": [
172+ "name"
173+ ],
174+ "parameters": {
175+ "name": {
176+ "description": "Name of the approval request to approve.",
177+ "location": "path",
178+ "pattern": "^folders/[^/]+/approvalRequests/[^/]+$",
179+ "required": true,
180+ "type": "string"
181+ }
182+ },
183+ "path": "v1beta1/{+name}:approve",
184+ "request": {
185+ "$ref": "ApproveApprovalRequestMessage"
186+ },
187+ "response": {
188+ "$ref": "ApprovalRequest"
189+ },
190+ "scopes": [
191+ "https://www.googleapis.com/auth/cloud-platform"
192+ ]
193+ },
194+ "dismiss": {
195+ "description": "Dismisses a request. Returns the updated ApprovalRequest.\n\nNOTE: This does not deny access to the resource if another request has been\nmade and approved. It is equivalent in effect to ignoring the request\naltogether.\n\nReturns NOT_FOUND if the request does not exist.\n\nReturns FAILED_PRECONDITION if the request exists but is not in a pending\nstate.",
196+ "flatPath": "v1beta1/folders/{foldersId}/approvalRequests/{approvalRequestsId}:dismiss",
197+ "httpMethod": "POST",
198+ "id": "accessapproval.folders.approvalRequests.dismiss",
199+ "parameterOrder": [
200+ "name"
201+ ],
202+ "parameters": {
203+ "name": {
204+ "description": "Name of the ApprovalRequest to dismiss.",
205+ "location": "path",
206+ "pattern": "^folders/[^/]+/approvalRequests/[^/]+$",
207+ "required": true,
208+ "type": "string"
209+ }
210+ },
211+ "path": "v1beta1/{+name}:dismiss",
212+ "request": {
213+ "$ref": "DismissApprovalRequestMessage"
214+ },
215+ "response": {
216+ "$ref": "ApprovalRequest"
217+ },
218+ "scopes": [
219+ "https://www.googleapis.com/auth/cloud-platform"
220+ ]
221+ },
222+ "get": {
223+ "description": "Gets an approval request. Returns NOT_FOUND if the request does not exist.",
224+ "flatPath": "v1beta1/folders/{foldersId}/approvalRequests/{approvalRequestsId}",
225+ "httpMethod": "GET",
226+ "id": "accessapproval.folders.approvalRequests.get",
227+ "parameterOrder": [
228+ "name"
229+ ],
230+ "parameters": {
231+ "name": {
232+ "description": "Name of the approval request to retrieve.",
233+ "location": "path",
234+ "pattern": "^folders/[^/]+/approvalRequests/[^/]+$",
235+ "required": true,
236+ "type": "string"
237+ }
238+ },
239+ "path": "v1beta1/{+name}",
240+ "response": {
241+ "$ref": "ApprovalRequest"
242+ },
243+ "scopes": [
244+ "https://www.googleapis.com/auth/cloud-platform"
245+ ]
246+ },
247+ "list": {
248+ "description": "Lists approval requests associated with a project, folder, or organization.\nApproval requests can be filtered by state (pending, active, dismissed).\nThe order is reverse chronological.",
249+ "flatPath": "v1beta1/folders/{foldersId}/approvalRequests",
250+ "httpMethod": "GET",
251+ "id": "accessapproval.folders.approvalRequests.list",
252+ "parameterOrder": [
253+ "parent"
254+ ],
255+ "parameters": {
256+ "filter": {
257+ "description": "A filter on the type of approval requests to retrieve. Must be one of the\nfollowing values:\n\u003col\u003e\n \u003cli\u003e[not set]: Requests that are pending or have active approvals.\u003c/li\u003e\n \u003cli\u003eALL: All requests.\u003c/li\u003e\n \u003cli\u003ePENDING: Only pending requests.\u003c/li\u003e\n \u003cli\u003eACTIVE: Only active (i.e. currently approved) requests.\u003c/li\u003e\n \u003cli\u003eDISMISSED: Only dismissed (including expired) requests.\u003c/li\u003e\n\u003c/ol\u003e",
258+ "location": "query",
259+ "type": "string"
260+ },
261+ "pageSize": {
262+ "description": "Requested page size.",
263+ "format": "int32",
264+ "location": "query",
265+ "type": "integer"
266+ },
267+ "pageToken": {
268+ "description": "A token identifying the page of results to return.",
269+ "location": "query",
270+ "type": "string"
271+ },
272+ "parent": {
273+ "description": "The parent resource. This may be \"projects/{project_id}\",\n\"folders/{folder_id}\", or \"organizations/{organization_id}\".",
274+ "location": "path",
275+ "pattern": "^folders/[^/]+$",
276+ "required": true,
277+ "type": "string"
278+ }
279+ },
280+ "path": "v1beta1/{+parent}/approvalRequests",
281+ "response": {
282+ "$ref": "ListApprovalRequestsResponse"
283+ },
284+ "scopes": [
285+ "https://www.googleapis.com/auth/cloud-platform"
286+ ]
287+ }
288+ }
289+ }
290+ }
291+ },
292+ "organizations": {
293+ "methods": {
294+ "getAccessApprovalSettings": {
295+ "description": "Gets the settings associated with a project, folder, or organization.",
296+ "flatPath": "v1beta1/organizations/{organizationsId}/accessApprovalSettings",
297+ "httpMethod": "GET",
298+ "id": "accessapproval.organizations.getAccessApprovalSettings",
299+ "parameterOrder": [
300+ "name"
301+ ],
302+ "parameters": {
303+ "name": {
304+ "description": "Name of the AccessApprovalSettings to retrieve.",
305+ "location": "path",
306+ "pattern": "^organizations/[^/]+/accessApprovalSettings$",
307+ "required": true,
308+ "type": "string"
309+ }
310+ },
311+ "path": "v1beta1/{+name}",
312+ "response": {
313+ "$ref": "AccessApprovalSettings"
314+ },
315+ "scopes": [
316+ "https://www.googleapis.com/auth/cloud-platform"
317+ ]
318+ },
319+ "updateAccessApprovalSettings": {
320+ "description": "Updates the settings associated with a project, folder, or organization.\nCompletely replaces the existing settings.",
321+ "flatPath": "v1beta1/organizations/{organizationsId}/accessApprovalSettings",
322+ "httpMethod": "PATCH",
323+ "id": "accessapproval.organizations.updateAccessApprovalSettings",
324+ "parameterOrder": [
325+ "name"
326+ ],
327+ "parameters": {
328+ "name": {
329+ "description": "The resource name of the settings. Format is one of:\n\u003col\u003e\n \u003cli\u003e\"projects/{project_id}/accessApprovalSettings\"\u003c/li\u003e\n \u003cli\u003e\"folders/{folder_id}/accessApprovalSettings\"\u003c/li\u003e\n \u003cli\u003e\"organizations/{organization_id}/accessApprovalSettings\"\u003c/li\u003e\n\u003col\u003e",
330+ "location": "path",
331+ "pattern": "^organizations/[^/]+/accessApprovalSettings$",
332+ "required": true,
333+ "type": "string"
334+ }
335+ },
336+ "path": "v1beta1/{+name}",
337+ "request": {
338+ "$ref": "AccessApprovalSettings"
339+ },
340+ "response": {
341+ "$ref": "AccessApprovalSettings"
342+ },
343+ "scopes": [
344+ "https://www.googleapis.com/auth/cloud-platform"
345+ ]
346+ }
347+ },
348+ "resources": {
349+ "approvalRequests": {
350+ "methods": {
351+ "approve": {
352+ "description": "Approves a request and returns the updated ApprovalRequest.\n\nReturns NOT_FOUND if the request does not exist. Returns\nFAILED_PRECONDITION if the request exists but is not in a pending state.",
353+ "flatPath": "v1beta1/organizations/{organizationsId}/approvalRequests/{approvalRequestsId}:approve",
354+ "httpMethod": "POST",
355+ "id": "accessapproval.organizations.approvalRequests.approve",
356+ "parameterOrder": [
357+ "name"
358+ ],
359+ "parameters": {
360+ "name": {
361+ "description": "Name of the approval request to approve.",
362+ "location": "path",
363+ "pattern": "^organizations/[^/]+/approvalRequests/[^/]+$",
364+ "required": true,
365+ "type": "string"
366+ }
367+ },
368+ "path": "v1beta1/{+name}:approve",
369+ "request": {
370+ "$ref": "ApproveApprovalRequestMessage"
371+ },
372+ "response": {
373+ "$ref": "ApprovalRequest"
374+ },
375+ "scopes": [
376+ "https://www.googleapis.com/auth/cloud-platform"
377+ ]
378+ },
379+ "dismiss": {
380+ "description": "Dismisses a request. Returns the updated ApprovalRequest.\n\nNOTE: This does not deny access to the resource if another request has been\nmade and approved. It is equivalent in effect to ignoring the request\naltogether.\n\nReturns NOT_FOUND if the request does not exist.\n\nReturns FAILED_PRECONDITION if the request exists but is not in a pending\nstate.",
381+ "flatPath": "v1beta1/organizations/{organizationsId}/approvalRequests/{approvalRequestsId}:dismiss",
382+ "httpMethod": "POST",
383+ "id": "accessapproval.organizations.approvalRequests.dismiss",
384+ "parameterOrder": [
385+ "name"
386+ ],
387+ "parameters": {
388+ "name": {
389+ "description": "Name of the ApprovalRequest to dismiss.",
390+ "location": "path",
391+ "pattern": "^organizations/[^/]+/approvalRequests/[^/]+$",
392+ "required": true,
393+ "type": "string"
394+ }
395+ },
396+ "path": "v1beta1/{+name}:dismiss",
397+ "request": {
398+ "$ref": "DismissApprovalRequestMessage"
399+ },
400+ "response": {
401+ "$ref": "ApprovalRequest"
402+ },
403+ "scopes": [
404+ "https://www.googleapis.com/auth/cloud-platform"
405+ ]
406+ },
407+ "get": {
408+ "description": "Gets an approval request. Returns NOT_FOUND if the request does not exist.",
409+ "flatPath": "v1beta1/organizations/{organizationsId}/approvalRequests/{approvalRequestsId}",
410+ "httpMethod": "GET",
411+ "id": "accessapproval.organizations.approvalRequests.get",
412+ "parameterOrder": [
413+ "name"
414+ ],
415+ "parameters": {
416+ "name": {
417+ "description": "Name of the approval request to retrieve.",
418+ "location": "path",
419+ "pattern": "^organizations/[^/]+/approvalRequests/[^/]+$",
420+ "required": true,
421+ "type": "string"
422+ }
423+ },
424+ "path": "v1beta1/{+name}",
425+ "response": {
426+ "$ref": "ApprovalRequest"
427+ },
428+ "scopes": [
429+ "https://www.googleapis.com/auth/cloud-platform"
430+ ]
431+ },
432+ "list": {
433+ "description": "Lists approval requests associated with a project, folder, or organization.\nApproval requests can be filtered by state (pending, active, dismissed).\nThe order is reverse chronological.",
434+ "flatPath": "v1beta1/organizations/{organizationsId}/approvalRequests",
435+ "httpMethod": "GET",
436+ "id": "accessapproval.organizations.approvalRequests.list",
437+ "parameterOrder": [
438+ "parent"
439+ ],
440+ "parameters": {
441+ "filter": {
442+ "description": "A filter on the type of approval requests to retrieve. Must be one of the\nfollowing values:\n\u003col\u003e\n \u003cli\u003e[not set]: Requests that are pending or have active approvals.\u003c/li\u003e\n \u003cli\u003eALL: All requests.\u003c/li\u003e\n \u003cli\u003ePENDING: Only pending requests.\u003c/li\u003e\n \u003cli\u003eACTIVE: Only active (i.e. currently approved) requests.\u003c/li\u003e\n \u003cli\u003eDISMISSED: Only dismissed (including expired) requests.\u003c/li\u003e\n\u003c/ol\u003e",
443+ "location": "query",
444+ "type": "string"
445+ },
446+ "pageSize": {
447+ "description": "Requested page size.",
448+ "format": "int32",
449+ "location": "query",
450+ "type": "integer"
451+ },
452+ "pageToken": {
453+ "description": "A token identifying the page of results to return.",
454+ "location": "query",
455+ "type": "string"
456+ },
457+ "parent": {
458+ "description": "The parent resource. This may be \"projects/{project_id}\",\n\"folders/{folder_id}\", or \"organizations/{organization_id}\".",
459+ "location": "path",
460+ "pattern": "^organizations/[^/]+$",
461+ "required": true,
462+ "type": "string"
463+ }
464+ },
465+ "path": "v1beta1/{+parent}/approvalRequests",
466+ "response": {
467+ "$ref": "ListApprovalRequestsResponse"
468+ },
469+ "scopes": [
470+ "https://www.googleapis.com/auth/cloud-platform"
471+ ]
472+ }
473+ }
474+ }
475+ }
476+ },
477+ "projects": {
478+ "methods": {
479+ "getAccessApprovalSettings": {
480+ "description": "Gets the settings associated with a project, folder, or organization.",
481+ "flatPath": "v1beta1/projects/{projectsId}/accessApprovalSettings",
482+ "httpMethod": "GET",
483+ "id": "accessapproval.projects.getAccessApprovalSettings",
484+ "parameterOrder": [
485+ "name"
486+ ],
487+ "parameters": {
488+ "name": {
489+ "description": "Name of the AccessApprovalSettings to retrieve.",
490+ "location": "path",
491+ "pattern": "^projects/[^/]+/accessApprovalSettings$",
492+ "required": true,
493+ "type": "string"
494+ }
495+ },
496+ "path": "v1beta1/{+name}",
497+ "response": {
498+ "$ref": "AccessApprovalSettings"
499+ },
500+ "scopes": [
501+ "https://www.googleapis.com/auth/cloud-platform"
502+ ]
503+ },
504+ "updateAccessApprovalSettings": {
505+ "description": "Updates the settings associated with a project, folder, or organization.\nCompletely replaces the existing settings.",
506+ "flatPath": "v1beta1/projects/{projectsId}/accessApprovalSettings",
507+ "httpMethod": "PATCH",
508+ "id": "accessapproval.projects.updateAccessApprovalSettings",
509+ "parameterOrder": [
510+ "name"
511+ ],
512+ "parameters": {
513+ "name": {
514+ "description": "The resource name of the settings. Format is one of:\n\u003col\u003e\n \u003cli\u003e\"projects/{project_id}/accessApprovalSettings\"\u003c/li\u003e\n \u003cli\u003e\"folders/{folder_id}/accessApprovalSettings\"\u003c/li\u003e\n \u003cli\u003e\"organizations/{organization_id}/accessApprovalSettings\"\u003c/li\u003e\n\u003col\u003e",
515+ "location": "path",
516+ "pattern": "^projects/[^/]+/accessApprovalSettings$",
517+ "required": true,
518+ "type": "string"
519+ }
520+ },
521+ "path": "v1beta1/{+name}",
522+ "request": {
523+ "$ref": "AccessApprovalSettings"
524+ },
525+ "response": {
526+ "$ref": "AccessApprovalSettings"
527+ },
528+ "scopes": [
529+ "https://www.googleapis.com/auth/cloud-platform"
530+ ]
531+ }
532+ },
533+ "resources": {
534+ "approvalRequests": {
535+ "methods": {
536+ "approve": {
537+ "description": "Approves a request and returns the updated ApprovalRequest.\n\nReturns NOT_FOUND if the request does not exist. Returns\nFAILED_PRECONDITION if the request exists but is not in a pending state.",
538+ "flatPath": "v1beta1/projects/{projectsId}/approvalRequests/{approvalRequestsId}:approve",
539+ "httpMethod": "POST",
540+ "id": "accessapproval.projects.approvalRequests.approve",
541+ "parameterOrder": [
542+ "name"
543+ ],
544+ "parameters": {
545+ "name": {
546+ "description": "Name of the approval request to approve.",
547+ "location": "path",
548+ "pattern": "^projects/[^/]+/approvalRequests/[^/]+$",
549+ "required": true,
550+ "type": "string"
551+ }
552+ },
553+ "path": "v1beta1/{+name}:approve",
554+ "request": {
555+ "$ref": "ApproveApprovalRequestMessage"
556+ },
557+ "response": {
558+ "$ref": "ApprovalRequest"
559+ },
560+ "scopes": [
561+ "https://www.googleapis.com/auth/cloud-platform"
562+ ]
563+ },
564+ "dismiss": {
565+ "description": "Dismisses a request. Returns the updated ApprovalRequest.\n\nNOTE: This does not deny access to the resource if another request has been\nmade and approved. It is equivalent in effect to ignoring the request\naltogether.\n\nReturns NOT_FOUND if the request does not exist.\n\nReturns FAILED_PRECONDITION if the request exists but is not in a pending\nstate.",
566+ "flatPath": "v1beta1/projects/{projectsId}/approvalRequests/{approvalRequestsId}:dismiss",
567+ "httpMethod": "POST",
568+ "id": "accessapproval.projects.approvalRequests.dismiss",
569+ "parameterOrder": [
570+ "name"
571+ ],
572+ "parameters": {
573+ "name": {
574+ "description": "Name of the ApprovalRequest to dismiss.",
575+ "location": "path",
576+ "pattern": "^projects/[^/]+/approvalRequests/[^/]+$",
577+ "required": true,
578+ "type": "string"
579+ }
580+ },
581+ "path": "v1beta1/{+name}:dismiss",
582+ "request": {
583+ "$ref": "DismissApprovalRequestMessage"
584+ },
585+ "response": {
586+ "$ref": "ApprovalRequest"
587+ },
588+ "scopes": [
589+ "https://www.googleapis.com/auth/cloud-platform"
590+ ]
591+ },
592+ "get": {
593+ "description": "Gets an approval request. Returns NOT_FOUND if the request does not exist.",
594+ "flatPath": "v1beta1/projects/{projectsId}/approvalRequests/{approvalRequestsId}",
595+ "httpMethod": "GET",
596+ "id": "accessapproval.projects.approvalRequests.get",
597+ "parameterOrder": [
598+ "name"
599+ ],
600+ "parameters": {
601+ "name": {
602+ "description": "Name of the approval request to retrieve.",
603+ "location": "path",
604+ "pattern": "^projects/[^/]+/approvalRequests/[^/]+$",
605+ "required": true,
606+ "type": "string"
607+ }
608+ },
609+ "path": "v1beta1/{+name}",
610+ "response": {
611+ "$ref": "ApprovalRequest"
612+ },
613+ "scopes": [
614+ "https://www.googleapis.com/auth/cloud-platform"
615+ ]
616+ },
617+ "list": {
618+ "description": "Lists approval requests associated with a project, folder, or organization.\nApproval requests can be filtered by state (pending, active, dismissed).\nThe order is reverse chronological.",
619+ "flatPath": "v1beta1/projects/{projectsId}/approvalRequests",
620+ "httpMethod": "GET",
621+ "id": "accessapproval.projects.approvalRequests.list",
622+ "parameterOrder": [
623+ "parent"
624+ ],
625+ "parameters": {
626+ "filter": {
627+ "description": "A filter on the type of approval requests to retrieve. Must be one of the\nfollowing values:\n\u003col\u003e\n \u003cli\u003e[not set]: Requests that are pending or have active approvals.\u003c/li\u003e\n \u003cli\u003eALL: All requests.\u003c/li\u003e\n \u003cli\u003ePENDING: Only pending requests.\u003c/li\u003e\n \u003cli\u003eACTIVE: Only active (i.e. currently approved) requests.\u003c/li\u003e\n \u003cli\u003eDISMISSED: Only dismissed (including expired) requests.\u003c/li\u003e\n\u003c/ol\u003e",
628+ "location": "query",
629+ "type": "string"
630+ },
631+ "pageSize": {
632+ "description": "Requested page size.",
633+ "format": "int32",
634+ "location": "query",
635+ "type": "integer"
636+ },
637+ "pageToken": {
638+ "description": "A token identifying the page of results to return.",
639+ "location": "query",
640+ "type": "string"
641+ },
642+ "parent": {
643+ "description": "The parent resource. This may be \"projects/{project_id}\",\n\"folders/{folder_id}\", or \"organizations/{organization_id}\".",
644+ "location": "path",
645+ "pattern": "^projects/[^/]+$",
646+ "required": true,
647+ "type": "string"
648+ }
649+ },
650+ "path": "v1beta1/{+parent}/approvalRequests",
651+ "response": {
652+ "$ref": "ListApprovalRequestsResponse"
653+ },
654+ "scopes": [
655+ "https://www.googleapis.com/auth/cloud-platform"
656+ ]
657+ }
658+ }
659+ }
660+ }
661+ }
662+ },
663+ "revision": "20190412",
664+ "rootUrl": "https://accessapproval.googleapis.com/",
665+ "schemas": {
666+ "AccessApprovalSettings": {
667+ "description": "Settings on a Project/Folder/Organization related to Access Approval.",
668+ "id": "AccessApprovalSettings",
669+ "properties": {
670+ "name": {
671+ "description": "The resource name of the settings. Format is one of:\n\u003col\u003e\n \u003cli\u003e\"projects/{project_id}/accessApprovalSettings\"\u003c/li\u003e\n \u003cli\u003e\"folders/{folder_id}/accessApprovalSettings\"\u003c/li\u003e\n \u003cli\u003e\"organizations/{organization_id}/accessApprovalSettings\"\u003c/li\u003e\n\u003col\u003e",
672+ "type": "string"
673+ },
674+ "notificationEmails": {
675+ "description": "A list of email addresses to which notifications relating to approval\nrequests should be sent. Notifications relating to a resource will be sent\nto all emails in the settings of ancestor resources of that resource.",
676+ "items": {
677+ "type": "string"
678+ },
679+ "type": "array"
680+ }
681+ },
682+ "type": "object"
683+ },
684+ "AccessLocations": {
685+ "description": "Home office and physical location of the principal.",
686+ "id": "AccessLocations",
687+ "properties": {
688+ "principalOfficeCountry": {
689+ "description": "The \"home office\" location of the principal. A two-letter country code\n(ISO 3166-1 alpha-2), such as \"US\", \"DE\" or \"GB\" or a region code. In some\nlimited situations Google systems may refer refer to a region code instead\nof a country code.\nPossible Region Codes:\n\u003col\u003e\n \u003cli\u003eASI: Asia\u003c/li\u003e\n \u003cli\u003eEUR: Europe\u003c/li\u003e\n \u003cli\u003eOCE: Oceania\u003c/li\u003e\n \u003cli\u003eAFR: Africa\u003c/li\u003e\n \u003cli\u003eNAM: North America\u003c/li\u003e\n \u003cli\u003eSAM: South America\u003c/li\u003e\n \u003cli\u003eANT: Antarctica\u003c/li\u003e\n \u003cli\u003eANY: Any location\u003c/li\u003e\n\u003c/ol\u003e",
690+ "type": "string"
691+ },
692+ "principalPhysicalLocationCountry": {
693+ "description": "Physical location of the principal at the time of the access. A\ntwo-letter country code (ISO 3166-1 alpha-2), such as \"US\", \"DE\" or \"GB\" or\na region code. In some limited situations Google systems may refer refer to\na region code instead of a country code.\nPossible Region Codes:\n\u003col\u003e\n \u003cli\u003eASI: Asia\u003c/li\u003e\n \u003cli\u003eEUR: Europe\u003c/li\u003e\n \u003cli\u003eOCE: Oceania\u003c/li\u003e\n \u003cli\u003eAFR: Africa\u003c/li\u003e\n \u003cli\u003eNAM: North America\u003c/li\u003e\n \u003cli\u003eSAM: South America\u003c/li\u003e\n \u003cli\u003eANT: Antarctica\u003c/li\u003e\n \u003cli\u003eANY: Any location\u003c/li\u003e\n\u003c/ol\u003e",
694+ "type": "string"
695+ }
696+ },
697+ "type": "object"
698+ },
699+ "AccessReason": {
700+ "id": "AccessReason",
701+ "properties": {
702+ "detail": {
703+ "description": "More detail about certain reason types. See comments for each type above.",
704+ "type": "string"
705+ },
706+ "type": {
707+ "description": "Type of access justification.",
708+ "enum": [
709+ "TYPE_UNSPECIFIED",
710+ "CUSTOMER_INITIATED_SUPPORT",
711+ "GOOGLE_INITIATED_SERVICE",
712+ "GOOGLE_INITIATED_REVIEW"
713+ ],
714+ "enumDescriptions": [
715+ "Default value for proto, shouldn't be used.",
716+ "Customer made a request or raised an issue that required the principal to\naccess customer data. `detail` is of the form (\"#####\" is the issue ID):\n\u003col\u003e\n \u003cli\u003e\"Feedback Report: #####\"\u003c/li\u003e\n \u003cli\u003e\"Case Number: #####\"\u003c/li\u003e\n \u003cli\u003e\"Case ID: #####\"\u003c/li\u003e\n \u003cli\u003e\"E-PIN Reference: #####\"\u003c/li\u003e\n \u003cli\u003e\"Google-#####\"\u003c/li\u003e\n \u003cli\u003e\"T-#####\"\u003c/li\u003e\n\u003c/ol\u003e",
717+ "The principal accessed customer data in order to diagnose or resolve a\nsuspected issue in services or a known outage. Often this access is used\nto confirm that customers are not affected by a suspected service issue\nor to remediate a reversible system issue.",
718+ "Google initiated service for security, fraud, abuse, or compliance\npurposes."
719+ ],
720+ "type": "string"
721+ }
722+ },
723+ "type": "object"
724+ },
725+ "ApprovalRequest": {
726+ "description": "A request for the customer to approve access to a resource.",
727+ "id": "ApprovalRequest",
728+ "properties": {
729+ "approve": {
730+ "$ref": "ApproveDecision",
731+ "description": "Access was approved."
732+ },
733+ "dismiss": {
734+ "$ref": "DismissDecision",
735+ "description": "The request was dismissed."
736+ },
737+ "name": {
738+ "description": "The resource name of the request. Format is\n\"{projects|folders|organizations}/{id}/approvalRequests/{approval_request_id}\".",
739+ "type": "string"
740+ },
741+ "requestTime": {
742+ "description": "The time at which approval was requested.",
743+ "format": "google-datetime",
744+ "type": "string"
745+ },
746+ "requestedExpiration": {
747+ "description": "The requested expiration for the approval. If the request is approved,\naccess will be granted from the time of approval until the expiration time.",
748+ "format": "google-datetime",
749+ "type": "string"
750+ },
751+ "requestedLocations": {
752+ "$ref": "AccessLocations",
753+ "description": "The locations for which approval is being requested."
754+ },
755+ "requestedReason": {
756+ "$ref": "AccessReason",
757+ "description": "The justification for which approval is being requested."
758+ },
759+ "requestedResourceName": {
760+ "description": "The resource for which approval is being requested. The format of the\nresource name is defined at\nhttps://cloud.google.com/apis/design/resource_names. The resource name here\nmay either be a \"full\" resource name (e.g.\n\"//library.googleapis.com/shelves/shelf1/books/book2\") or a \"relative\"\nresource name (e.g. \"shelves/shelf1/books/book2\") as described in the\nresource name specification.",
761+ "type": "string"
762+ }
763+ },
764+ "type": "object"
765+ },
766+ "ApproveApprovalRequestMessage": {
767+ "description": "Request to approve an ApprovalRequest.",
768+ "id": "ApproveApprovalRequestMessage",
769+ "properties": {
770+ "expireTime": {
771+ "description": "The expiration time of this approval.",
772+ "format": "google-datetime",
773+ "type": "string"
774+ }
775+ },
776+ "type": "object"
777+ },
778+ "ApproveDecision": {
779+ "description": "A decision that has been made to approve access to a resource.",
780+ "id": "ApproveDecision",
781+ "properties": {
782+ "approveTime": {
783+ "description": "The time at which approval was granted.",
784+ "format": "google-datetime",
785+ "type": "string"
786+ },
787+ "expireTime": {
788+ "description": "The time at which the approval expires.",
789+ "format": "google-datetime",
790+ "type": "string"
791+ }
792+ },
793+ "type": "object"
794+ },
795+ "DismissApprovalRequestMessage": {
796+ "description": "Request to dismiss an approval request.",
797+ "id": "DismissApprovalRequestMessage",
798+ "properties": {},
799+ "type": "object"
800+ },
801+ "DismissDecision": {
802+ "description": "A decision that has been made to dismiss an approval request.",
803+ "id": "DismissDecision",
804+ "properties": {
805+ "dismissTime": {
806+ "description": "The time at which the approval request was dismissed.",
807+ "format": "google-datetime",
808+ "type": "string"
809+ }
810+ },
811+ "type": "object"
812+ },
813+ "ListApprovalRequestsResponse": {
814+ "description": "Response to listing of ApprovalRequest objects.",
815+ "id": "ListApprovalRequestsResponse",
816+ "properties": {
817+ "approvalRequests": {
818+ "description": "Approval request details.",
819+ "items": {
820+ "$ref": "ApprovalRequest"
821+ },
822+ "type": "array"
823+ },
824+ "nextPageToken": {
825+ "description": "Token to retrieve the next page of results, or empty if there are no more.",
826+ "type": "string"
827+ }
828+ },
829+ "type": "object"
830+ }
831+ },
832+ "servicePath": "",
833+ "title": "Access Approval API",
834+ "version": "v1beta1",
835+ "version_module": true
836+}
gen/model/accesscontextmanager/v1/accesscontextmanager-api.jsonnew file+1150
@@ -0,0 +1,1150 @@
1+{
2+ "auth": {
3+ "oauth2": {
4+ "scopes": {
5+ "https://www.googleapis.com/auth/cloud-platform": {
6+ "description": "View and manage your data across Google Cloud Platform services"
7+ }
8+ }
9+ }
10+ },
11+ "basePath": "",
12+ "baseUrl": "https://accesscontextmanager.googleapis.com/",
13+ "batchPath": "batch",
14+ "canonicalName": "Access Context Manager",
15+ "description": "An API for setting attribute based access control to requests to GCP services.",
16+ "discoveryVersion": "v1",
17+ "documentationLink": "https://cloud.google.com/access-context-manager/docs/reference/rest/",
18+ "fullyEncodeReservedExpansion": true,
19+ "icons": {
20+ "x16": "http://www.google.com/images/icons/product/search-16.gif",
21+ "x32": "http://www.google.com/images/icons/product/search-32.gif"
22+ },
23+ "id": "accesscontextmanager:v1",
24+ "kind": "discovery#restDescription",
25+ "name": "accesscontextmanager",
26+ "ownerDomain": "google.com",
27+ "ownerName": "Google",
28+ "parameters": {
29+ "$.xgafv": {
30+ "description": "V1 error format.",
31+ "enum": [
32+ "1",
33+ "2"
34+ ],
35+ "enumDescriptions": [
36+ "v1 error format",
37+ "v2 error format"
38+ ],
39+ "location": "query",
40+ "type": "string"
41+ },
42+ "access_token": {
43+ "description": "OAuth access token.",
44+ "location": "query",
45+ "type": "string"
46+ },
47+ "alt": {
48+ "default": "json",
49+ "description": "Data format for response.",
50+ "enum": [
51+ "json",
52+ "media",
53+ "proto"
54+ ],
55+ "enumDescriptions": [
56+ "Responses with Content-Type of application/json",
57+ "Media download with context-dependent Content-Type",
58+ "Responses with Content-Type of application/x-protobuf"
59+ ],
60+ "location": "query",
61+ "type": "string"
62+ },
63+ "callback": {
64+ "description": "JSONP",
65+ "location": "query",
66+ "type": "string"
67+ },
68+ "fields": {
69+ "description": "Selector specifying which fields to include in a partial response.",
70+ "location": "query",
71+ "type": "string"
72+ },
73+ "key": {
74+ "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
75+ "location": "query",
76+ "type": "string"
77+ },
78+ "oauth_token": {
79+ "description": "OAuth 2.0 token for the current user.",
80+ "location": "query",
81+ "type": "string"
82+ },
83+ "prettyPrint": {
84+ "default": "true",
85+ "description": "Returns response with indentations and line breaks.",
86+ "location": "query",
87+ "type": "boolean"
88+ },
89+ "quotaUser": {
90+ "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.",
91+ "location": "query",
92+ "type": "string"
93+ },
94+ "uploadType": {
95+ "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
96+ "location": "query",
97+ "type": "string"
98+ },
99+ "upload_protocol": {
100+ "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
101+ "location": "query",
102+ "type": "string"
103+ }
104+ },
105+ "protocol": "rest",
106+ "resources": {
107+ "accessPolicies": {
108+ "methods": {
109+ "create": {
110+ "description": "Create an `AccessPolicy`. Fails if this organization already has a\n`AccessPolicy`. The longrunning Operation will have a successful status\nonce the `AccessPolicy` has propagated to long-lasting storage.\nSyntactic and basic semantic errors will be returned in `metadata` as a\nBadRequest proto.",
111+ "flatPath": "v1/accessPolicies",
112+ "httpMethod": "POST",
113+ "id": "accesscontextmanager.accessPolicies.create",
114+ "parameterOrder": [],
115+ "parameters": {},
116+ "path": "v1/accessPolicies",
117+ "request": {
118+ "$ref": "AccessPolicy"
119+ },
120+ "response": {
121+ "$ref": "Operation"
122+ },
123+ "scopes": [
124+ "https://www.googleapis.com/auth/cloud-platform"
125+ ]
126+ },
127+ "delete": {
128+ "description": "Delete an AccessPolicy by resource\nname. The longrunning Operation will have a successful status once the\nAccessPolicy\nhas been removed from long-lasting storage.",
129+ "flatPath": "v1/accessPolicies/{accessPoliciesId}",
130+ "httpMethod": "DELETE",
131+ "id": "accesscontextmanager.accessPolicies.delete",
132+ "parameterOrder": [
133+ "name"
134+ ],
135+ "parameters": {
136+ "name": {
137+ "description": "Required. Resource name for the access policy to delete.\n\nFormat `accessPolicies/{policy_id}`",
138+ "location": "path",
139+ "pattern": "^accessPolicies/[^/]+$",
140+ "required": true,
141+ "type": "string"
142+ }
143+ },
144+ "path": "v1/{+name}",
145+ "response": {
146+ "$ref": "Operation"
147+ },
148+ "scopes": [
149+ "https://www.googleapis.com/auth/cloud-platform"
150+ ]
151+ },
152+ "get": {
153+ "description": "Get an AccessPolicy by name.",
154+ "flatPath": "v1/accessPolicies/{accessPoliciesId}",
155+ "httpMethod": "GET",
156+ "id": "accesscontextmanager.accessPolicies.get",
157+ "parameterOrder": [
158+ "name"
159+ ],
160+ "parameters": {
161+ "name": {
162+ "description": "Required. Resource name for the access policy to get.\n\nFormat `accessPolicies/{policy_id}`",
163+ "location": "path",
164+ "pattern": "^accessPolicies/[^/]+$",
165+ "required": true,
166+ "type": "string"
167+ }
168+ },
169+ "path": "v1/{+name}",
170+ "response": {
171+ "$ref": "AccessPolicy"
172+ },
173+ "scopes": [
174+ "https://www.googleapis.com/auth/cloud-platform"
175+ ]
176+ },
177+ "list": {
178+ "description": "List all AccessPolicies under a\ncontainer.",
179+ "flatPath": "v1/accessPolicies",
180+ "httpMethod": "GET",
181+ "id": "accesscontextmanager.accessPolicies.list",
182+ "parameterOrder": [],
183+ "parameters": {
184+ "pageSize": {
185+ "description": "Number of AccessPolicy instances to include in the list. Default 100.",
186+ "format": "int32",
187+ "location": "query",
188+ "type": "integer"
189+ },
190+ "pageToken": {
191+ "description": "Next page token for the next batch of AccessPolicy instances. Defaults to\nthe first page of results.",
192+ "location": "query",
193+ "type": "string"
194+ },
195+ "parent": {
196+ "description": "Required. Resource name for the container to list AccessPolicy instances\nfrom.\n\nFormat:\n`organizations/{org_id}`",
197+ "location": "query",
198+ "type": "string"
199+ }
200+ },
201+ "path": "v1/accessPolicies",
202+ "response": {
203+ "$ref": "ListAccessPoliciesResponse"
204+ },
205+ "scopes": [
206+ "https://www.googleapis.com/auth/cloud-platform"
207+ ]
208+ },
209+ "patch": {
210+ "description": "Update an AccessPolicy. The\nlongrunning Operation from this RPC will have a successful status once the\nchanges to the AccessPolicy have propagated\nto long-lasting storage. Syntactic and basic semantic errors will be\nreturned in `metadata` as a BadRequest proto.",
211+ "flatPath": "v1/accessPolicies/{accessPoliciesId}",
212+ "httpMethod": "PATCH",
213+ "id": "accesscontextmanager.accessPolicies.patch",
214+ "parameterOrder": [
215+ "name"
216+ ],
217+ "parameters": {
218+ "name": {
219+ "description": "Output only. Resource name of the `AccessPolicy`. Format:\n`accessPolicies/{policy_id}`",
220+ "location": "path",
221+ "pattern": "^accessPolicies/[^/]+$",
222+ "required": true,
223+ "type": "string"
224+ },
225+ "updateMask": {
226+ "description": "Required. Mask to control which fields get updated. Must be non-empty.",
227+ "format": "google-fieldmask",
228+ "location": "query",
229+ "type": "string"
230+ }
231+ },
232+ "path": "v1/{+name}",
233+ "request": {
234+ "$ref": "AccessPolicy"
235+ },
236+ "response": {
237+ "$ref": "Operation"
238+ },
239+ "scopes": [
240+ "https://www.googleapis.com/auth/cloud-platform"
241+ ]
242+ }
243+ },
244+ "resources": {
245+ "accessLevels": {
246+ "methods": {
247+ "create": {
248+ "description": "Create an Access Level. The longrunning\noperation from this RPC will have a successful status once the Access\nLevel has\npropagated to long-lasting storage. Access Levels containing\nerrors will result in an error response for the first error encountered.",
249+ "flatPath": "v1/accessPolicies/{accessPoliciesId}/accessLevels",
250+ "httpMethod": "POST",
251+ "id": "accesscontextmanager.accessPolicies.accessLevels.create",
252+ "parameterOrder": [
253+ "parent"
254+ ],
255+ "parameters": {
256+ "parent": {
257+ "description": "Required. Resource name for the access policy which owns this Access\nLevel.\n\nFormat: `accessPolicies/{policy_id}`",
258+ "location": "path",
259+ "pattern": "^accessPolicies/[^/]+$",
260+ "required": true,
261+ "type": "string"
262+ }
263+ },
264+ "path": "v1/{+parent}/accessLevels",
265+ "request": {
266+ "$ref": "AccessLevel"
267+ },
268+ "response": {
269+ "$ref": "Operation"
270+ },
271+ "scopes": [
272+ "https://www.googleapis.com/auth/cloud-platform"
273+ ]
274+ },
275+ "delete": {
276+ "description": "Delete an Access Level by resource\nname. The longrunning operation from this RPC will have a successful status\nonce the Access Level has been removed\nfrom long-lasting storage.",
277+ "flatPath": "v1/accessPolicies/{accessPoliciesId}/accessLevels/{accessLevelsId}",
278+ "httpMethod": "DELETE",
279+ "id": "accesscontextmanager.accessPolicies.accessLevels.delete",
280+ "parameterOrder": [
281+ "name"
282+ ],
283+ "parameters": {
284+ "name": {
285+ "description": "Required. Resource name for the Access Level.\n\nFormat:\n`accessPolicies/{policy_id}/accessLevels/{access_level_id}`",
286+ "location": "path",
287+ "pattern": "^accessPolicies/[^/]+/accessLevels/[^/]+$",
288+ "required": true,
289+ "type": "string"
290+ }
291+ },
292+ "path": "v1/{+name}",
293+ "response": {
294+ "$ref": "Operation"
295+ },
296+ "scopes": [
297+ "https://www.googleapis.com/auth/cloud-platform"
298+ ]
299+ },
300+ "get": {
301+ "description": "Get an Access Level by resource\nname.",
302+ "flatPath": "v1/accessPolicies/{accessPoliciesId}/accessLevels/{accessLevelsId}",
303+ "httpMethod": "GET",
304+ "id": "accesscontextmanager.accessPolicies.accessLevels.get",
305+ "parameterOrder": [
306+ "name"
307+ ],
308+ "parameters": {
309+ "accessLevelFormat": {
310+ "description": "Whether to return `BasicLevels` in the Cloud Common Expression\nLanguage rather than as `BasicLevels`. Defaults to AS_DEFINED, where\nAccess Levels\nare returned as `BasicLevels` or `CustomLevels` based on how they were\ncreated. If set to CEL, all Access Levels are returned as\n`CustomLevels`. In the CEL case, `BasicLevels` are translated to equivalent\n`CustomLevels`.",
311+ "enum": [
312+ "LEVEL_FORMAT_UNSPECIFIED",
313+ "AS_DEFINED",
314+ "CEL"
315+ ],
316+ "location": "query",
317+ "type": "string"
318+ },
319+ "name": {
320+ "description": "Required. Resource name for the Access Level.\n\nFormat:\n`accessPolicies/{policy_id}/accessLevels/{access_level_id}`",
321+ "location": "path",
322+ "pattern": "^accessPolicies/[^/]+/accessLevels/[^/]+$",
323+ "required": true,
324+ "type": "string"
325+ }
326+ },
327+ "path": "v1/{+name}",
328+ "response": {
329+ "$ref": "AccessLevel"
330+ },
331+ "scopes": [
332+ "https://www.googleapis.com/auth/cloud-platform"
333+ ]
334+ },
335+ "list": {
336+ "description": "List all Access Levels for an access\npolicy.",
337+ "flatPath": "v1/accessPolicies/{accessPoliciesId}/accessLevels",
338+ "httpMethod": "GET",
339+ "id": "accesscontextmanager.accessPolicies.accessLevels.list",
340+ "parameterOrder": [
341+ "parent"
342+ ],
343+ "parameters": {
344+ "accessLevelFormat": {
345+ "description": "Whether to return `BasicLevels` in the Cloud Common Expression language, as\n`CustomLevels`, rather than as `BasicLevels`. Defaults to returning\n`AccessLevels` in the format they were defined.",
346+ "enum": [
347+ "LEVEL_FORMAT_UNSPECIFIED",
348+ "AS_DEFINED",
349+ "CEL"
350+ ],
351+ "location": "query",
352+ "type": "string"
353+ },
354+ "pageSize": {
355+ "description": "Number of Access Levels to include in\nthe list. Default 100.",
356+ "format": "int32",
357+ "location": "query",
358+ "type": "integer"
359+ },
360+ "pageToken": {
361+ "description": "Next page token for the next batch of Access Level instances.\nDefaults to the first page of results.",
362+ "location": "query",
363+ "type": "string"
364+ },
365+ "parent": {
366+ "description": "Required. Resource name for the access policy to list Access Levels from.\n\nFormat:\n`accessPolicies/{policy_id}`",
367+ "location": "path",
368+ "pattern": "^accessPolicies/[^/]+$",
369+ "required": true,
370+ "type": "string"
371+ }
372+ },
373+ "path": "v1/{+parent}/accessLevels",
374+ "response": {
375+ "$ref": "ListAccessLevelsResponse"
376+ },
377+ "scopes": [
378+ "https://www.googleapis.com/auth/cloud-platform"
379+ ]
380+ },
381+ "patch": {
382+ "description": "Update an Access Level. The longrunning\noperation from this RPC will have a successful status once the changes to\nthe Access Level have propagated\nto long-lasting storage. Access Levels containing\nerrors will result in an error response for the first error encountered.",
383+ "flatPath": "v1/accessPolicies/{accessPoliciesId}/accessLevels/{accessLevelsId}",
384+ "httpMethod": "PATCH",
385+ "id": "accesscontextmanager.accessPolicies.accessLevels.patch",
386+ "parameterOrder": [
387+ "name"
388+ ],
389+ "parameters": {
390+ "name": {
391+ "description": "Required. Resource name for the Access Level. The `short_name` component\nmust begin with a letter and only include alphanumeric and '_'. Format:\n`accessPolicies/{policy_id}/accessLevels/{short_name}`",
392+ "location": "path",
393+ "pattern": "^accessPolicies/[^/]+/accessLevels/[^/]+$",
394+ "required": true,
395+ "type": "string"
396+ },
397+ "updateMask": {
398+ "description": "Required. Mask to control which fields get updated. Must be non-empty.",
399+ "format": "google-fieldmask",
400+ "location": "query",
401+ "type": "string"
402+ }
403+ },
404+ "path": "v1/{+name}",
405+ "request": {
406+ "$ref": "AccessLevel"
407+ },
408+ "response": {
409+ "$ref": "Operation"
410+ },
411+ "scopes": [
412+ "https://www.googleapis.com/auth/cloud-platform"
413+ ]
414+ }
415+ }
416+ },
417+ "servicePerimeters": {
418+ "methods": {
419+ "create": {
420+ "description": "Create an Service Perimeter. The\nlongrunning operation from this RPC will have a successful status once the\nService Perimeter has\npropagated to long-lasting storage. Service Perimeters containing\nerrors will result in an error response for the first error encountered.",
421+ "flatPath": "v1/accessPolicies/{accessPoliciesId}/servicePerimeters",
422+ "httpMethod": "POST",
423+ "id": "accesscontextmanager.accessPolicies.servicePerimeters.create",
424+ "parameterOrder": [
425+ "parent"
426+ ],
427+ "parameters": {
428+ "parent": {
429+ "description": "Required. Resource name for the access policy which owns this Service\nPerimeter.\n\nFormat: `accessPolicies/{policy_id}`",
430+ "location": "path",
431+ "pattern": "^accessPolicies/[^/]+$",
432+ "required": true,
433+ "type": "string"
434+ }
435+ },
436+ "path": "v1/{+parent}/servicePerimeters",
437+ "request": {
438+ "$ref": "ServicePerimeter"
439+ },
440+ "response": {
441+ "$ref": "Operation"
442+ },
443+ "scopes": [
444+ "https://www.googleapis.com/auth/cloud-platform"
445+ ]
446+ },
447+ "delete": {
448+ "description": "Delete an Service Perimeter by resource\nname. The longrunning operation from this RPC will have a successful status\nonce the Service Perimeter has been\nremoved from long-lasting storage.",
449+ "flatPath": "v1/accessPolicies/{accessPoliciesId}/servicePerimeters/{servicePerimetersId}",
450+ "httpMethod": "DELETE",
451+ "id": "accesscontextmanager.accessPolicies.servicePerimeters.delete",
452+ "parameterOrder": [
453+ "name"
454+ ],
455+ "parameters": {
456+ "name": {
457+ "description": "Required. Resource name for the Service Perimeter.\n\nFormat:\n`accessPolicies/{policy_id}/servicePerimeters/{service_perimeter_id}`",
458+ "location": "path",
459+ "pattern": "^accessPolicies/[^/]+/servicePerimeters/[^/]+$",
460+ "required": true,
461+ "type": "string"
462+ }
463+ },
464+ "path": "v1/{+name}",
465+ "response": {
466+ "$ref": "Operation"
467+ },
468+ "scopes": [
469+ "https://www.googleapis.com/auth/cloud-platform"
470+ ]
471+ },
472+ "get": {
473+ "description": "Get an Service Perimeter by resource\nname.",
474+ "flatPath": "v1/accessPolicies/{accessPoliciesId}/servicePerimeters/{servicePerimetersId}",
475+ "httpMethod": "GET",
476+ "id": "accesscontextmanager.accessPolicies.servicePerimeters.get",
477+ "parameterOrder": [
478+ "name"
479+ ],
480+ "parameters": {
481+ "name": {
482+ "description": "Required. Resource name for the Service Perimeter.\n\nFormat:\n`accessPolicies/{policy_id}/servicePerimeters/{service_perimeters_id}`",
483+ "location": "path",
484+ "pattern": "^accessPolicies/[^/]+/servicePerimeters/[^/]+$",
485+ "required": true,
486+ "type": "string"
487+ }
488+ },
489+ "path": "v1/{+name}",
490+ "response": {
491+ "$ref": "ServicePerimeter"
492+ },
493+ "scopes": [
494+ "https://www.googleapis.com/auth/cloud-platform"
495+ ]
496+ },
497+ "list": {
498+ "description": "List all Service Perimeters for an\naccess policy.",
499+ "flatPath": "v1/accessPolicies/{accessPoliciesId}/servicePerimeters",
500+ "httpMethod": "GET",
501+ "id": "accesscontextmanager.accessPolicies.servicePerimeters.list",
502+ "parameterOrder": [
503+ "parent"
504+ ],
505+ "parameters": {
506+ "pageSize": {
507+ "description": "Number of Service Perimeters to include\nin the list. Default 100.",
508+ "format": "int32",
509+ "location": "query",
510+ "type": "integer"
511+ },
512+ "pageToken": {
513+ "description": "Next page token for the next batch of Service Perimeter instances.\nDefaults to the first page of results.",
514+ "location": "query",
515+ "type": "string"
516+ },
517+ "parent": {
518+ "description": "Required. Resource name for the access policy to list Service Perimeters from.\n\nFormat:\n`accessPolicies/{policy_id}`",
519+ "location": "path",
520+ "pattern": "^accessPolicies/[^/]+$",
521+ "required": true,
522+ "type": "string"
523+ }
524+ },
525+ "path": "v1/{+parent}/servicePerimeters",
526+ "response": {
527+ "$ref": "ListServicePerimetersResponse"
528+ },
529+ "scopes": [
530+ "https://www.googleapis.com/auth/cloud-platform"
531+ ]
532+ },
533+ "patch": {
534+ "description": "Update an Service Perimeter. The\nlongrunning operation from this RPC will have a successful status once the\nchanges to the Service Perimeter have\npropagated to long-lasting storage. Service Perimeter containing\nerrors will result in an error response for the first error encountered.",
535+ "flatPath": "v1/accessPolicies/{accessPoliciesId}/servicePerimeters/{servicePerimetersId}",
536+ "httpMethod": "PATCH",
537+ "id": "accesscontextmanager.accessPolicies.servicePerimeters.patch",
538+ "parameterOrder": [
539+ "name"
540+ ],
541+ "parameters": {
542+ "name": {
543+ "description": "Required. Resource name for the ServicePerimeter. The `short_name`\ncomponent must begin with a letter and only include alphanumeric and '_'.\nFormat: `accessPolicies/{policy_id}/servicePerimeters/{short_name}`",
544+ "location": "path",
545+ "pattern": "^accessPolicies/[^/]+/servicePerimeters/[^/]+$",
546+ "required": true,
547+ "type": "string"
548+ },
549+ "updateMask": {
550+ "description": "Required. Mask to control which fields get updated. Must be non-empty.",
551+ "format": "google-fieldmask",
552+ "location": "query",
553+ "type": "string"
554+ }
555+ },
556+ "path": "v1/{+name}",
557+ "request": {
558+ "$ref": "ServicePerimeter"
559+ },
560+ "response": {
561+ "$ref": "Operation"
562+ },
563+ "scopes": [
564+ "https://www.googleapis.com/auth/cloud-platform"
565+ ]
566+ }
567+ }
568+ }
569+ }
570+ },
571+ "operations": {
572+ "methods": {
573+ "cancel": {
574+ "description": "Starts asynchronous cancellation on a long-running operation. The server\nmakes a best effort to cancel the operation, but success is not\nguaranteed. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`. Clients can use\nOperations.GetOperation or\nother methods to check whether the cancellation succeeded or whether the\noperation completed despite cancellation. On successful cancellation,\nthe operation is not deleted; instead, it becomes an operation with\nan Operation.error value with a google.rpc.Status.code of 1,\ncorresponding to `Code.CANCELLED`.",
575+ "flatPath": "v1/operations/{operationsId}:cancel",
576+ "httpMethod": "POST",
577+ "id": "accesscontextmanager.operations.cancel",
578+ "parameterOrder": [
579+ "name"
580+ ],
581+ "parameters": {
582+ "name": {
583+ "description": "The name of the operation resource to be cancelled.",
584+ "location": "path",
585+ "pattern": "^operations/.+$",
586+ "required": true,
587+ "type": "string"
588+ }
589+ },
590+ "path": "v1/{+name}:cancel",
591+ "request": {
592+ "$ref": "CancelOperationRequest"
593+ },
594+ "response": {
595+ "$ref": "Empty"
596+ },
597+ "scopes": [
598+ "https://www.googleapis.com/auth/cloud-platform"
599+ ]
600+ },
601+ "delete": {
602+ "description": "Deletes a long-running operation. This method indicates that the client is\nno longer interested in the operation result. It does not cancel the\noperation. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`.",
603+ "flatPath": "v1/operations/{operationsId}",
604+ "httpMethod": "DELETE",
605+ "id": "accesscontextmanager.operations.delete",
606+ "parameterOrder": [
607+ "name"
608+ ],
609+ "parameters": {
610+ "name": {
611+ "description": "The name of the operation resource to be deleted.",
612+ "location": "path",
613+ "pattern": "^operations/.+$",
614+ "required": true,
615+ "type": "string"
616+ }
617+ },
618+ "path": "v1/{+name}",
619+ "response": {
620+ "$ref": "Empty"
621+ },
622+ "scopes": [
623+ "https://www.googleapis.com/auth/cloud-platform"
624+ ]
625+ },
626+ "get": {
627+ "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.",
628+ "flatPath": "v1/operations/{operationsId}",
629+ "httpMethod": "GET",
630+ "id": "accesscontextmanager.operations.get",
631+ "parameterOrder": [
632+ "name"
633+ ],
634+ "parameters": {
635+ "name": {
636+ "description": "The name of the operation resource.",
637+ "location": "path",
638+ "pattern": "^operations/.+$",
639+ "required": true,
640+ "type": "string"
641+ }
642+ },
643+ "path": "v1/{+name}",
644+ "response": {
645+ "$ref": "Operation"
646+ },
647+ "scopes": [
648+ "https://www.googleapis.com/auth/cloud-platform"
649+ ]
650+ },
651+ "list": {
652+ "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id.",
653+ "flatPath": "v1/operations",
654+ "httpMethod": "GET",
655+ "id": "accesscontextmanager.operations.list",
656+ "parameterOrder": [
657+ "name"
658+ ],
659+ "parameters": {
660+ "filter": {
661+ "description": "The standard list filter.",
662+ "location": "query",
663+ "type": "string"
664+ },
665+ "name": {
666+ "description": "The name of the operation's parent resource.",
667+ "location": "path",
668+ "pattern": "^operations$",
669+ "required": true,
670+ "type": "string"
671+ },
672+ "pageSize": {
673+ "description": "The standard list page size.",
674+ "format": "int32",
675+ "location": "query",
676+ "type": "integer"
677+ },
678+ "pageToken": {
679+ "description": "The standard list page token.",
680+ "location": "query",
681+ "type": "string"
682+ }
683+ },
684+ "path": "v1/{+name}",
685+ "response": {
686+ "$ref": "ListOperationsResponse"
687+ },
688+ "scopes": [
689+ "https://www.googleapis.com/auth/cloud-platform"
690+ ]
691+ }
692+ }
693+ }
694+ },
695+ "revision": "20190307",
696+ "rootUrl": "https://accesscontextmanager.googleapis.com/",
697+ "schemas": {
698+ "AccessLevel": {
699+ "description": "An `AccessLevel` is a label that can be applied to requests to GCP services,\nalong with a list of requirements necessary for the label to be applied.",
700+ "id": "AccessLevel",
701+ "properties": {
702+ "basic": {
703+ "$ref": "BasicLevel",
704+ "description": "A `BasicLevel` composed of `Conditions`."
705+ },
706+ "createTime": {
707+ "description": "Output only. Time the `AccessLevel` was created in UTC.",
708+ "format": "google-datetime",
709+ "type": "string"
710+ },
711+ "description": {
712+ "description": "Description of the `AccessLevel` and its use. Does not affect behavior.",
713+ "type": "string"
714+ },
715+ "name": {
716+ "description": "Required. Resource name for the Access Level. The `short_name` component\nmust begin with a letter and only include alphanumeric and '_'. Format:\n`accessPolicies/{policy_id}/accessLevels/{short_name}`",
717+ "type": "string"
718+ },
719+ "title": {
720+ "description": "Human readable title. Must be unique within the Policy.",
721+ "type": "string"
722+ },
723+ "updateTime": {
724+ "description": "Output only. Time the `AccessLevel` was updated in UTC.",
725+ "format": "google-datetime",
726+ "type": "string"
727+ }
728+ },
729+ "type": "object"
730+ },
731+ "AccessPolicy": {
732+ "description": "`AccessPolicy` is a container for `AccessLevels` (which define the necessary\nattributes to use GCP services) and `ServicePerimeters` (which define regions\nof services able to freely pass data within a perimeter). An access policy is\nglobally visible within an organization, and the restrictions it specifies\napply to all projects within an organization.",
733+ "id": "AccessPolicy",
734+ "properties": {
735+ "createTime": {
736+ "description": "Output only. Time the `AccessPolicy` was created in UTC.",
737+ "format": "google-datetime",
738+ "type": "string"
739+ },
740+ "name": {
741+ "description": "Output only. Resource name of the `AccessPolicy`. Format:\n`accessPolicies/{policy_id}`",
742+ "type": "string"
743+ },
744+ "parent": {
745+ "description": "Required. The parent of this `AccessPolicy` in the Cloud Resource\nHierarchy. Currently immutable once created. Format:\n`organizations/{organization_id}`",
746+ "type": "string"
747+ },
748+ "title": {
749+ "description": "Required. Human readable title. Does not affect behavior.",
750+ "type": "string"
751+ },
752+ "updateTime": {
753+ "description": "Output only. Time the `AccessPolicy` was updated in UTC.",
754+ "format": "google-datetime",
755+ "type": "string"
756+ }
757+ },
758+ "type": "object"
759+ },
760+ "BasicLevel": {
761+ "description": "`BasicLevel` is an `AccessLevel` using a set of recommended features.",
762+ "id": "BasicLevel",
763+ "properties": {
764+ "combiningFunction": {
765+ "description": "How the `conditions` list should be combined to determine if a request is\ngranted this `AccessLevel`. If AND is used, each `Condition` in\n`conditions` must be satisfied for the `AccessLevel` to be applied. If OR\nis used, at least one `Condition` in `conditions` must be satisfied for the\n`AccessLevel` to be applied. Default behavior is AND.",
766+ "enum": [
767+ "AND",
768+ "OR"
769+ ],
770+ "enumDescriptions": [
771+ "All `Conditions` must be true for the `BasicLevel` to be true.",
772+ "If at least one `Condition` is true, then the `BasicLevel` is true."
773+ ],
774+ "type": "string"
775+ },
776+ "conditions": {
777+ "description": "Required. A list of requirements for the `AccessLevel` to be granted.",
778+ "items": {
779+ "$ref": "Condition"
780+ },
781+ "type": "array"
782+ }
783+ },
784+ "type": "object"
785+ },
786+ "CancelOperationRequest": {
787+ "description": "The request message for Operations.CancelOperation.",
788+ "id": "CancelOperationRequest",
789+ "properties": {},
790+ "type": "object"
791+ },
792+ "Condition": {
793+ "description": "A condition necessary for an `AccessLevel` to be granted. The Condition is an\nAND over its fields. So a Condition is true if: 1) the request IP is from one\nof the listed subnetworks AND 2) the originating device complies with the\nlisted device policy AND 3) all listed access levels are granted AND 4) the\nrequest was sent at a time allowed by the DateTimeRestriction.",
794+ "id": "Condition",
795+ "properties": {
796+ "devicePolicy": {
797+ "$ref": "DevicePolicy",
798+ "description": "Device specific restrictions, all restrictions must hold for the\nCondition to be true. If not specified, all devices are allowed."
799+ },
800+ "ipSubnetworks": {
801+ "description": "CIDR block IP subnetwork specification. May be IPv4 or IPv6. Note that for\na CIDR IP address block, the specified IP address portion must be properly\ntruncated (i.e. all the host bits must be zero) or the input is considered\nmalformed. For example, \"192.0.2.0/24\" is accepted but \"192.0.2.1/24\" is\nnot. Similarly, for IPv6, \"2001:db8::/32\" is accepted whereas\n\"2001:db8::1/32\" is not. The originating IP of a request must be in one of\nthe listed subnets in order for this Condition to be true. If empty, all IP\naddresses are allowed.",
802+ "items": {
803+ "type": "string"
804+ },
805+ "type": "array"
806+ },
807+ "members": {
808+ "description": "The request must be made by one of the provided user or service\naccounts. Groups are not supported.\nSyntax:\n`user:{emailid}`\n`serviceAccount:{emailid}`\nIf not specified, a request may come from any user.",
809+ "items": {
810+ "type": "string"
811+ },
812+ "type": "array"
813+ },
814+ "negate": {
815+ "description": "Whether to negate the Condition. If true, the Condition becomes a NAND over\nits non-empty fields, each field must be false for the Condition overall to\nbe satisfied. Defaults to false.",
816+ "type": "boolean"
817+ },
818+ "regions": {
819+ "description": "The request must originate from one of the provided countries/regions.\nMust be valid ISO 3166-1 alpha-2 codes.",
820+ "items": {
821+ "type": "string"
822+ },
823+ "type": "array"
824+ },
825+ "requiredAccessLevels": {
826+ "description": "A list of other access levels defined in the same `Policy`, referenced by\nresource name. Referencing an `AccessLevel` which does not exist is an\nerror. All access levels listed must be granted for the Condition\nto be true. Example:\n\"`accessPolicies/MY_POLICY/accessLevels/LEVEL_NAME\"`",
827+ "items": {
828+ "type": "string"
829+ },
830+ "type": "array"
831+ }
832+ },
833+ "type": "object"
834+ },
835+ "DevicePolicy": {
836+ "description": "`DevicePolicy` specifies device specific restrictions necessary to acquire a\ngiven access level. A `DevicePolicy` specifies requirements for requests from\ndevices to be granted access levels, it does not do any enforcement on the\ndevice. `DevicePolicy` acts as an AND over all specified fields, and each\nrepeated field is an OR over its elements. Any unset fields are ignored. For\nexample, if the proto is { os_type : DESKTOP_WINDOWS, os_type :\nDESKTOP_LINUX, encryption_status: ENCRYPTED}, then the DevicePolicy will be\ntrue for requests originating from encrypted Linux desktops and encrypted\nWindows desktops.",
837+ "id": "DevicePolicy",
838+ "properties": {
839+ "allowedDeviceManagementLevels": {
840+ "description": "Allowed device management levels, an empty list allows all management\nlevels.",
841+ "enumDescriptions": [
842+ "The device's management level is not specified or not known.",
843+ "The device is not managed.",
844+ "Basic management is enabled, which is generally limited to monitoring and\nwiping the corporate account.",
845+ "Complete device management. This includes more thorough monitoring and the\nability to directly manage the device (such as remote wiping). This can be\nenabled through the Android Enterprise Platform."
846+ ],
847+ "items": {
848+ "enum": [
849+ "MANAGEMENT_UNSPECIFIED",
850+ "NONE",
851+ "BASIC",
852+ "COMPLETE"
853+ ],
854+ "type": "string"
855+ },
856+ "type": "array"
857+ },
858+ "allowedEncryptionStatuses": {
859+ "description": "Allowed encryptions statuses, an empty list allows all statuses.",
860+ "enumDescriptions": [
861+ "The encryption status of the device is not specified or not known.",
862+ "The device does not support encryption.",
863+ "The device supports encryption, but is currently unencrypted.",
864+ "The device is encrypted."
865+ ],
866+ "items": {
867+ "enum": [
868+ "ENCRYPTION_UNSPECIFIED",
869+ "ENCRYPTION_UNSUPPORTED",
870+ "UNENCRYPTED",
871+ "ENCRYPTED"
872+ ],
873+ "type": "string"
874+ },
875+ "type": "array"
876+ },
877+ "osConstraints": {
878+ "description": "Allowed OS versions, an empty list allows all types and all versions.",
879+ "items": {
880+ "$ref": "OsConstraint"
881+ },
882+ "type": "array"
883+ },
884+ "requireAdminApproval": {
885+ "description": "Whether the device needs to be approved by the customer admin.",
886+ "type": "boolean"
887+ },
888+ "requireCorpOwned": {
889+ "description": "Whether the device needs to be corp owned.",
890+ "type": "boolean"
891+ },
892+ "requireScreenlock": {
893+ "description": "Whether or not screenlock is required for the DevicePolicy to be true.\nDefaults to `false`.",
894+ "type": "boolean"
895+ }
896+ },
897+ "type": "object"
898+ },
899+ "Empty": {
900+ "description": "A generic empty message that you can re-use to avoid defining duplicated\nempty messages in your APIs. A typical example is to use it as the request\nor the response type of an API method. For instance:\n\n service Foo {\n rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n }\n\nThe JSON representation for `Empty` is empty JSON object `{}`.",
901+ "id": "Empty",
902+ "properties": {},
903+ "type": "object"
904+ },
905+ "ListAccessLevelsResponse": {
906+ "description": "A response to `ListAccessLevelsRequest`.",
907+ "id": "ListAccessLevelsResponse",
908+ "properties": {
909+ "accessLevels": {
910+ "description": "List of the Access Level instances.",
911+ "items": {
912+ "$ref": "AccessLevel"
913+ },
914+ "type": "array"
915+ },
916+ "nextPageToken": {
917+ "description": "The pagination token to retrieve the next page of results. If the value is\nempty, no further results remain.",
918+ "type": "string"
919+ }
920+ },
921+ "type": "object"
922+ },
923+ "ListAccessPoliciesResponse": {
924+ "description": "A response to `ListAccessPoliciesRequest`.",
925+ "id": "ListAccessPoliciesResponse",
926+ "properties": {
927+ "accessPolicies": {
928+ "description": "List of the AccessPolicy instances.",
929+ "items": {
930+ "$ref": "AccessPolicy"
931+ },
932+ "type": "array"
933+ },
934+ "nextPageToken": {
935+ "description": "The pagination token to retrieve the next page of results. If the value is\nempty, no further results remain.",
936+ "type": "string"
937+ }
938+ },
939+ "type": "object"
940+ },
941+ "ListOperationsResponse": {
942+ "description": "The response message for Operations.ListOperations.",
943+ "id": "ListOperationsResponse",
944+ "properties": {
945+ "nextPageToken": {
946+ "description": "The standard List next-page token.",
947+ "type": "string"
948+ },
949+ "operations": {
950+ "description": "A list of operations that matches the specified filter in the request.",
951+ "items": {
952+ "$ref": "Operation"
953+ },
954+ "type": "array"
955+ }
956+ },
957+ "type": "object"
958+ },
959+ "ListServicePerimetersResponse": {
960+ "description": "A response to `ListServicePerimetersRequest`.",
961+ "id": "ListServicePerimetersResponse",
962+ "properties": {
963+ "nextPageToken": {
964+ "description": "The pagination token to retrieve the next page of results. If the value is\nempty, no further results remain.",
965+ "type": "string"
966+ },
967+ "servicePerimeters": {
968+ "description": "List of the Service Perimeter instances.",
969+ "items": {
970+ "$ref": "ServicePerimeter"
971+ },
972+ "type": "array"
973+ }
974+ },
975+ "type": "object"
976+ },
977+ "Operation": {
978+ "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.",
979+ "id": "Operation",
980+ "properties": {
981+ "done": {
982+ "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.",
983+ "type": "boolean"
984+ },
985+ "error": {
986+ "$ref": "Status",
987+ "description": "The error result of the operation in case of failure or cancellation."
988+ },
989+ "metadata": {
990+ "additionalProperties": {
991+ "description": "Properties of the object. Contains field @type with type URL.",
992+ "type": "any"
993+ },
994+ "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.",
995+ "type": "object"
996+ },
997+ "name": {
998+ "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.",
999+ "type": "string"
1000+ },
1001+ "response": {
1002+ "additionalProperties": {
1003+ "description": "Properties of the object. Contains field @type with type URL.",
1004+ "type": "any"
1005+ },
1006+ "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.",
1007+ "type": "object"
1008+ }
1009+ },
1010+ "type": "object"
1011+ },
1012+ "OsConstraint": {
1013+ "description": "A restriction on the OS type and version of devices making requests.",
1014+ "id": "OsConstraint",
1015+ "properties": {
1016+ "minimumVersion": {
1017+ "description": "The minimum allowed OS version. If not set, any version of this OS\nsatisfies the constraint. Format: `\"major.minor.patch\"`.\nExamples: `\"10.5.301\"`, `\"9.2.1\"`.",
1018+ "type": "string"
1019+ },
1020+ "osType": {
1021+ "description": "Required. The allowed OS type.",
1022+ "enum": [
1023+ "OS_UNSPECIFIED",
1024+ "DESKTOP_MAC",
1025+ "DESKTOP_WINDOWS",
1026+ "DESKTOP_LINUX",
1027+ "DESKTOP_CHROME_OS"
1028+ ],
1029+ "enumDescriptions": [
1030+ "The operating system of the device is not specified or not known.",
1031+ "A desktop Mac operating system.",
1032+ "A desktop Windows operating system.",
1033+ "A desktop Linux operating system.",
1034+ "A desktop ChromeOS operating system."
1035+ ],
1036+ "type": "string"
1037+ },
1038+ "requireVerifiedChromeOs": {
1039+ "description": "Only allows requests from devices with a verified Chrome OS.\nVerifications includes requirements that the device is enterprise-managed,\nconformant to Dasher domain policies, and the caller has permission to call\nthe API targeted by the request.",
1040+ "type": "boolean"
1041+ }
1042+ },
1043+ "type": "object"
1044+ },
1045+ "ServicePerimeter": {
1046+ "description": "`ServicePerimeter` describes a set of GCP resources which can freely import\nand export data amongst themselves, but not export outside of the\n`ServicePerimeter`. If a request with a source within this `ServicePerimeter`\nhas a target outside of the `ServicePerimeter`, the request will be blocked.\nOtherwise the request is allowed. There are two types of Service Perimeter -\nRegular and Bridge. Regular Service Perimeters cannot overlap, a single GCP\nproject can only belong to a single regular Service Perimeter. Service\nPerimeter Bridges can contain only GCP projects as members, a single GCP\nproject may belong to multiple Service Perimeter Bridges.",
1047+ "id": "ServicePerimeter",
1048+ "properties": {
1049+ "createTime": {
1050+ "description": "Output only. Time the `ServicePerimeter` was created in UTC.",
1051+ "format": "google-datetime",
1052+ "type": "string"
1053+ },
1054+ "description": {
1055+ "description": "Description of the `ServicePerimeter` and its use. Does not affect\nbehavior.",
1056+ "type": "string"
1057+ },
1058+ "name": {
1059+ "description": "Required. Resource name for the ServicePerimeter. The `short_name`\ncomponent must begin with a letter and only include alphanumeric and '_'.\nFormat: `accessPolicies/{policy_id}/servicePerimeters/{short_name}`",
1060+ "type": "string"
1061+ },
1062+ "perimeterType": {
1063+ "description": "Perimeter type indicator. A single project is\nallowed to be a member of single regular perimeter, but multiple service\nperimeter bridges. A project cannot be a included in a perimeter bridge\nwithout being included in regular perimeter. For perimeter bridges,\nthe restricted service list as well as access level lists must be\nempty.",
1064+ "enum": [
1065+ "PERIMETER_TYPE_REGULAR",
1066+ "PERIMETER_TYPE_BRIDGE"
1067+ ],
1068+ "enumDescriptions": [
1069+ "Regular Perimeter.",
1070+ "Perimeter Bridge."
1071+ ],
1072+ "type": "string"
1073+ },
1074+ "status": {
1075+ "$ref": "ServicePerimeterConfig",
1076+ "description": "Current ServicePerimeter configuration. Specifies sets of resources,\nrestricted services and access levels that determine perimeter\ncontent and boundaries."
1077+ },
1078+ "title": {
1079+ "description": "Human readable title. Must be unique within the Policy.",
1080+ "type": "string"
1081+ },
1082+ "updateTime": {
1083+ "description": "Output only. Time the `ServicePerimeter` was updated in UTC.",
1084+ "format": "google-datetime",
1085+ "type": "string"
1086+ }
1087+ },
1088+ "type": "object"
1089+ },
1090+ "ServicePerimeterConfig": {
1091+ "description": "`ServicePerimeterConfig` specifies a set of GCP resources that describe\nspecific Service Perimeter configuration.",
1092+ "id": "ServicePerimeterConfig",
1093+ "properties": {
1094+ "accessLevels": {
1095+ "description": "A list of `AccessLevel` resource names that allow resources within the\n`ServicePerimeter` to be accessed from the internet. `AccessLevels` listed\nmust be in the same policy as this `ServicePerimeter`. Referencing a\nnonexistent `AccessLevel` is a syntax error. If no `AccessLevel` names are\nlisted, resources within the perimeter can only be accessed via GCP calls\nwith request origins within the perimeter. Example:\n`\"accessPolicies/MY_POLICY/accessLevels/MY_LEVEL\"`.\nFor Service Perimeter Bridge, must be empty.",
1096+ "items": {
1097+ "type": "string"
1098+ },
1099+ "type": "array"
1100+ },
1101+ "resources": {
1102+ "description": "A list of GCP resources that are inside of the service perimeter.\nCurrently only projects are allowed. Format: `projects/{project_number}`",
1103+ "items": {
1104+ "type": "string"
1105+ },
1106+ "type": "array"
1107+ },
1108+ "restrictedServices": {
1109+ "description": "GCP services that are subject to the Service Perimeter restrictions. For\nexample, if `storage.googleapis.com` is specified, access to the storage\nbuckets inside the perimeter must meet the perimeter's access restrictions.",
1110+ "items": {
1111+ "type": "string"
1112+ },
1113+ "type": "array"
1114+ }
1115+ },
1116+ "type": "object"
1117+ },
1118+ "Status": {
1119+ "description": "The `Status` type defines a logical error model that is suitable for\ndifferent programming environments, including REST APIs and RPC APIs. It is\nused by [gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error\nmessage, and error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.",
1120+ "id": "Status",
1121+ "properties": {
1122+ "code": {
1123+ "description": "The status code, which should be an enum value of google.rpc.Code.",
1124+ "format": "int32",
1125+ "type": "integer"
1126+ },
1127+ "details": {
1128+ "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.",
1129+ "items": {
1130+ "additionalProperties": {
1131+ "description": "Properties of the object. Contains field @type with type URL.",
1132+ "type": "any"
1133+ },
1134+ "type": "object"
1135+ },
1136+ "type": "array"
1137+ },
1138+ "message": {
1139+ "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.",
1140+ "type": "string"
1141+ }
1142+ },
1143+ "type": "object"
1144+ }
1145+ },
1146+ "servicePath": "",
1147+ "title": "Access Context Manager API",
1148+ "version": "v1",
1149+ "version_module": true
1150+}
gen/model/accesscontextmanager/v1beta/accesscontextmanager-api.jsonnew file+1033
@@ -0,0 +1,1033 @@
1+{
2+ "auth": {
3+ "oauth2": {
4+ "scopes": {
5+ "https://www.googleapis.com/auth/cloud-platform": {
6+ "description": "View and manage your data across Google Cloud Platform services"
7+ }
8+ }
9+ }
10+ },
11+ "basePath": "",
12+ "baseUrl": "https://accesscontextmanager.googleapis.com/",
13+ "batchPath": "batch",
14+ "canonicalName": "Access Context Manager",
15+ "description": "An API for setting attribute based access control to requests to GCP services.",
16+ "discoveryVersion": "v1",
17+ "documentationLink": "https://cloud.google.com/access-context-manager/docs/reference/rest/",
18+ "fullyEncodeReservedExpansion": true,
19+ "icons": {
20+ "x16": "http://www.google.com/images/icons/product/search-16.gif",
21+ "x32": "http://www.google.com/images/icons/product/search-32.gif"
22+ },
23+ "id": "accesscontextmanager:v1beta",
24+ "kind": "discovery#restDescription",
25+ "name": "accesscontextmanager",
26+ "ownerDomain": "google.com",
27+ "ownerName": "Google",
28+ "parameters": {
29+ "$.xgafv": {
30+ "description": "V1 error format.",
31+ "enum": [
32+ "1",
33+ "2"
34+ ],
35+ "enumDescriptions": [
36+ "v1 error format",
37+ "v2 error format"
38+ ],
39+ "location": "query",
40+ "type": "string"
41+ },
42+ "access_token": {
43+ "description": "OAuth access token.",
44+ "location": "query",
45+ "type": "string"
46+ },
47+ "alt": {
48+ "default": "json",
49+ "description": "Data format for response.",
50+ "enum": [
51+ "json",
52+ "media",
53+ "proto"
54+ ],
55+ "enumDescriptions": [
56+ "Responses with Content-Type of application/json",
57+ "Media download with context-dependent Content-Type",
58+ "Responses with Content-Type of application/x-protobuf"
59+ ],
60+ "location": "query",
61+ "type": "string"
62+ },
63+ "callback": {
64+ "description": "JSONP",
65+ "location": "query",
66+ "type": "string"
67+ },
68+ "fields": {
69+ "description": "Selector specifying which fields to include in a partial response.",
70+ "location": "query",
71+ "type": "string"
72+ },
73+ "key": {
74+ "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
75+ "location": "query",
76+ "type": "string"
77+ },
78+ "oauth_token": {
79+ "description": "OAuth 2.0 token for the current user.",
80+ "location": "query",
81+ "type": "string"
82+ },
83+ "prettyPrint": {
84+ "default": "true",
85+ "description": "Returns response with indentations and line breaks.",
86+ "location": "query",
87+ "type": "boolean"
88+ },
89+ "quotaUser": {
90+ "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.",
91+ "location": "query",
92+ "type": "string"
93+ },
94+ "uploadType": {
95+ "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
96+ "location": "query",
97+ "type": "string"
98+ },
99+ "upload_protocol": {
100+ "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
101+ "location": "query",
102+ "type": "string"
103+ }
104+ },
105+ "protocol": "rest",
106+ "resources": {
107+ "accessPolicies": {
108+ "methods": {
109+ "create": {
110+ "description": "Create an `AccessPolicy`. Fails if this organization already has a\n`AccessPolicy`. The longrunning Operation will have a successful status\nonce the `AccessPolicy` has propagated to long-lasting storage.\nSyntactic and basic semantic errors will be returned in `metadata` as a\nBadRequest proto.",
111+ "flatPath": "v1beta/accessPolicies",
112+ "httpMethod": "POST",
113+ "id": "accesscontextmanager.accessPolicies.create",
114+ "parameterOrder": [],
115+ "parameters": {},
116+ "path": "v1beta/accessPolicies",
117+ "request": {
118+ "$ref": "AccessPolicy"
119+ },
120+ "response": {
121+ "$ref": "Operation"
122+ },
123+ "scopes": [
124+ "https://www.googleapis.com/auth/cloud-platform"
125+ ]
126+ },
127+ "delete": {
128+ "description": "Delete an AccessPolicy by resource\nname. The longrunning Operation will have a successful status once the\nAccessPolicy\nhas been removed from long-lasting storage.",
129+ "flatPath": "v1beta/accessPolicies/{accessPoliciesId}",
130+ "httpMethod": "DELETE",
131+ "id": "accesscontextmanager.accessPolicies.delete",
132+ "parameterOrder": [
133+ "name"
134+ ],
135+ "parameters": {
136+ "name": {
137+ "description": "Required. Resource name for the access policy to delete.\n\nFormat `accessPolicies/{policy_id}`",
138+ "location": "path",
139+ "pattern": "^accessPolicies/[^/]+$",
140+ "required": true,
141+ "type": "string"
142+ }
143+ },
144+ "path": "v1beta/{+name}",
145+ "response": {
146+ "$ref": "Operation"
147+ },
148+ "scopes": [
149+ "https://www.googleapis.com/auth/cloud-platform"
150+ ]
151+ },
152+ "get": {
153+ "description": "Get an AccessPolicy by name.",
154+ "flatPath": "v1beta/accessPolicies/{accessPoliciesId}",
155+ "httpMethod": "GET",
156+ "id": "accesscontextmanager.accessPolicies.get",
157+ "parameterOrder": [
158+ "name"
159+ ],
160+ "parameters": {
161+ "name": {
162+ "description": "Required. Resource name for the access policy to get.\n\nFormat `accessPolicies/{policy_id}`",
163+ "location": "path",
164+ "pattern": "^accessPolicies/[^/]+$",
165+ "required": true,
166+ "type": "string"
167+ }
168+ },
169+ "path": "v1beta/{+name}",
170+ "response": {
171+ "$ref": "AccessPolicy"
172+ },
173+ "scopes": [
174+ "https://www.googleapis.com/auth/cloud-platform"
175+ ]
176+ },
177+ "list": {
178+ "description": "List all AccessPolicies under a\ncontainer.",
179+ "flatPath": "v1beta/accessPolicies",
180+ "httpMethod": "GET",
181+ "id": "accesscontextmanager.accessPolicies.list",
182+ "parameterOrder": [],
183+ "parameters": {
184+ "pageSize": {
185+ "description": "Number of AccessPolicy instances to include in the list. Default 100.",
186+ "format": "int32",
187+ "location": "query",
188+ "type": "integer"
189+ },
190+ "pageToken": {
191+ "description": "Next page token for the next batch of AccessPolicy instances. Defaults to\nthe first page of results.",
192+ "location": "query",
193+ "type": "string"
194+ },
195+ "parent": {
196+ "description": "Required. Resource name for the container to list AccessPolicy instances\nfrom.\n\nFormat:\n`organizations/{org_id}`",
197+ "location": "query",
198+ "type": "string"
199+ }
200+ },
201+ "path": "v1beta/accessPolicies",
202+ "response": {
203+ "$ref": "ListAccessPoliciesResponse"
204+ },
205+ "scopes": [
206+ "https://www.googleapis.com/auth/cloud-platform"
207+ ]
208+ },
209+ "patch": {
210+ "description": "Update an AccessPolicy. The\nlongrunning Operation from this RPC will have a successful status once the\nchanges to the AccessPolicy have propagated\nto long-lasting storage. Syntactic and basic semantic errors will be\nreturned in `metadata` as a BadRequest proto.",
211+ "flatPath": "v1beta/accessPolicies/{accessPoliciesId}",
212+ "httpMethod": "PATCH",
213+ "id": "accesscontextmanager.accessPolicies.patch",
214+ "parameterOrder": [
215+ "name"
216+ ],
217+ "parameters": {
218+ "name": {
219+ "description": "Output only. Resource name of the `AccessPolicy`. Format:\n`accessPolicies/{policy_id}`",
220+ "location": "path",
221+ "pattern": "^accessPolicies/[^/]+$",
222+ "required": true,
223+ "type": "string"
224+ },
225+ "updateMask": {
226+ "description": "Required. Mask to control which fields get updated. Must be non-empty.",
227+ "format": "google-fieldmask",
228+ "location": "query",
229+ "type": "string"
230+ }
231+ },
232+ "path": "v1beta/{+name}",
233+ "request": {
234+ "$ref": "AccessPolicy"
235+ },
236+ "response": {
237+ "$ref": "Operation"
238+ },
239+ "scopes": [
240+ "https://www.googleapis.com/auth/cloud-platform"
241+ ]
242+ }
243+ },
244+ "resources": {
245+ "accessLevels": {
246+ "methods": {
247+ "create": {
248+ "description": "Create an Access Level. The longrunning\noperation from this RPC will have a successful status once the Access\nLevel has\npropagated to long-lasting storage. Access Levels containing\nerrors will result in an error response for the first error encountered.",
249+ "flatPath": "v1beta/accessPolicies/{accessPoliciesId}/accessLevels",
250+ "httpMethod": "POST",
251+ "id": "accesscontextmanager.accessPolicies.accessLevels.create",
252+ "parameterOrder": [
253+ "parent"
254+ ],
255+ "parameters": {
256+ "parent": {
257+ "description": "Required. Resource name for the access policy which owns this Access\nLevel.\n\nFormat: `accessPolicies/{policy_id}`",
258+ "location": "path",
259+ "pattern": "^accessPolicies/[^/]+$",
260+ "required": true,
261+ "type": "string"
262+ }
263+ },
264+ "path": "v1beta/{+parent}/accessLevels",
265+ "request": {
266+ "$ref": "AccessLevel"
267+ },
268+ "response": {
269+ "$ref": "Operation"
270+ },
271+ "scopes": [
272+ "https://www.googleapis.com/auth/cloud-platform"
273+ ]
274+ },
275+ "delete": {
276+ "description": "Delete an Access Level by resource\nname. The longrunning operation from this RPC will have a successful status\nonce the Access Level has been removed\nfrom long-lasting storage.",
277+ "flatPath": "v1beta/accessPolicies/{accessPoliciesId}/accessLevels/{accessLevelsId}",
278+ "httpMethod": "DELETE",
279+ "id": "accesscontextmanager.accessPolicies.accessLevels.delete",
280+ "parameterOrder": [
281+ "name"
282+ ],
283+ "parameters": {
284+ "name": {
285+ "description": "Required. Resource name for the Access Level.\n\nFormat:\n`accessPolicies/{policy_id}/accessLevels/{access_level_id}`",
286+ "location": "path",
287+ "pattern": "^accessPolicies/[^/]+/accessLevels/[^/]+$",
288+ "required": true,
289+ "type": "string"
290+ }
291+ },
292+ "path": "v1beta/{+name}",
293+ "response": {
294+ "$ref": "Operation"
295+ },
296+ "scopes": [
297+ "https://www.googleapis.com/auth/cloud-platform"
298+ ]
299+ },
300+ "get": {
301+ "description": "Get an Access Level by resource\nname.",
302+ "flatPath": "v1beta/accessPolicies/{accessPoliciesId}/accessLevels/{accessLevelsId}",
303+ "httpMethod": "GET",
304+ "id": "accesscontextmanager.accessPolicies.accessLevels.get",
305+ "parameterOrder": [
306+ "name"
307+ ],
308+ "parameters": {
309+ "accessLevelFormat": {
310+ "description": "Whether to return `BasicLevels` in the Cloud Common Expression\nLanguage rather than as `BasicLevels`. Defaults to AS_DEFINED, where\nAccess Levels\nare returned as `BasicLevels` or `CustomLevels` based on how they were\ncreated. If set to CEL, all Access Levels are returned as\n`CustomLevels`. In the CEL case, `BasicLevels` are translated to equivalent\n`CustomLevels`.",
311+ "enum": [
312+ "LEVEL_FORMAT_UNSPECIFIED",
313+ "AS_DEFINED",
314+ "CEL"
315+ ],
316+ "location": "query",
317+ "type": "string"
318+ },
319+ "name": {
320+ "description": "Required. Resource name for the Access Level.\n\nFormat:\n`accessPolicies/{policy_id}/accessLevels/{access_level_id}`",
321+ "location": "path",
322+ "pattern": "^accessPolicies/[^/]+/accessLevels/[^/]+$",
323+ "required": true,
324+ "type": "string"
325+ }
326+ },
327+ "path": "v1beta/{+name}",
328+ "response": {
329+ "$ref": "AccessLevel"
330+ },
331+ "scopes": [
332+ "https://www.googleapis.com/auth/cloud-platform"
333+ ]
334+ },
335+ "list": {
336+ "description": "List all Access Levels for an access\npolicy.",
337+ "flatPath": "v1beta/accessPolicies/{accessPoliciesId}/accessLevels",
338+ "httpMethod": "GET",
339+ "id": "accesscontextmanager.accessPolicies.accessLevels.list",
340+ "parameterOrder": [
341+ "parent"
342+ ],
343+ "parameters": {
344+ "accessLevelFormat": {
345+ "description": "Whether to return `BasicLevels` in the Cloud Common Expression language, as\n`CustomLevels`, rather than as `BasicLevels`. Defaults to returning\n`AccessLevels` in the format they were defined.",
346+ "enum": [
347+ "LEVEL_FORMAT_UNSPECIFIED",
348+ "AS_DEFINED",
349+ "CEL"
350+ ],
351+ "location": "query",
352+ "type": "string"
353+ },
354+ "pageSize": {
355+ "description": "Number of Access Levels to include in\nthe list. Default 100.",
356+ "format": "int32",
357+ "location": "query",
358+ "type": "integer"
359+ },
360+ "pageToken": {
361+ "description": "Next page token for the next batch of Access Level instances.\nDefaults to the first page of results.",
362+ "location": "query",
363+ "type": "string"
364+ },
365+ "parent": {
366+ "description": "Required. Resource name for the access policy to list Access Levels from.\n\nFormat:\n`accessPolicies/{policy_id}`",
367+ "location": "path",
368+ "pattern": "^accessPolicies/[^/]+$",
369+ "required": true,
370+ "type": "string"
371+ }
372+ },
373+ "path": "v1beta/{+parent}/accessLevels",
374+ "response": {
375+ "$ref": "ListAccessLevelsResponse"
376+ },
377+ "scopes": [
378+ "https://www.googleapis.com/auth/cloud-platform"
379+ ]
380+ },
381+ "patch": {
382+ "description": "Update an Access Level. The longrunning\noperation from this RPC will have a successful status once the changes to\nthe Access Level have propagated\nto long-lasting storage. Access Levels containing\nerrors will result in an error response for the first error encountered.",
383+ "flatPath": "v1beta/accessPolicies/{accessPoliciesId}/accessLevels/{accessLevelsId}",
384+ "httpMethod": "PATCH",
385+ "id": "accesscontextmanager.accessPolicies.accessLevels.patch",
386+ "parameterOrder": [
387+ "name"
388+ ],
389+ "parameters": {
390+ "name": {
391+ "description": "Required. Resource name for the Access Level. The `short_name` component\nmust begin with a letter and only include alphanumeric and '_'. Format:\n`accessPolicies/{policy_id}/accessLevels/{short_name}`",
392+ "location": "path",
393+ "pattern": "^accessPolicies/[^/]+/accessLevels/[^/]+$",
394+ "required": true,
395+ "type": "string"
396+ },
397+ "updateMask": {
398+ "description": "Required. Mask to control which fields get updated. Must be non-empty.",
399+ "format": "google-fieldmask",
400+ "location": "query",
401+ "type": "string"
402+ }
403+ },
404+ "path": "v1beta/{+name}",
405+ "request": {
406+ "$ref": "AccessLevel"
407+ },
408+ "response": {
409+ "$ref": "Operation"
410+ },
411+ "scopes": [
412+ "https://www.googleapis.com/auth/cloud-platform"
413+ ]
414+ }
415+ }
416+ },
417+ "servicePerimeters": {
418+ "methods": {
419+ "create": {
420+ "description": "Create an Service Perimeter. The\nlongrunning operation from this RPC will have a successful status once the\nService Perimeter has\npropagated to long-lasting storage. Service Perimeters containing\nerrors will result in an error response for the first error encountered.",
421+ "flatPath": "v1beta/accessPolicies/{accessPoliciesId}/servicePerimeters",
422+ "httpMethod": "POST",
423+ "id": "accesscontextmanager.accessPolicies.servicePerimeters.create",
424+ "parameterOrder": [
425+ "parent"
426+ ],
427+ "parameters": {
428+ "parent": {
429+ "description": "Required. Resource name for the access policy which owns this Service\nPerimeter.\n\nFormat: `accessPolicies/{policy_id}`",
430+ "location": "path",
431+ "pattern": "^accessPolicies/[^/]+$",
432+ "required": true,
433+ "type": "string"
434+ }
435+ },
436+ "path": "v1beta/{+parent}/servicePerimeters",
437+ "request": {
438+ "$ref": "ServicePerimeter"
439+ },
440+ "response": {
441+ "$ref": "Operation"
442+ },
443+ "scopes": [
444+ "https://www.googleapis.com/auth/cloud-platform"
445+ ]
446+ },
447+ "delete": {
448+ "description": "Delete an Service Perimeter by resource\nname. The longrunning operation from this RPC will have a successful status\nonce the Service Perimeter has been\nremoved from long-lasting storage.",
449+ "flatPath": "v1beta/accessPolicies/{accessPoliciesId}/servicePerimeters/{servicePerimetersId}",
450+ "httpMethod": "DELETE",
451+ "id": "accesscontextmanager.accessPolicies.servicePerimeters.delete",
452+ "parameterOrder": [
453+ "name"
454+ ],
455+ "parameters": {
456+ "name": {
457+ "description": "Required. Resource name for the Service Perimeter.\n\nFormat:\n`accessPolicies/{policy_id}/servicePerimeters/{service_perimeter_id}`",
458+ "location": "path",
459+ "pattern": "^accessPolicies/[^/]+/servicePerimeters/[^/]+$",
460+ "required": true,
461+ "type": "string"
462+ }
463+ },
464+ "path": "v1beta/{+name}",
465+ "response": {
466+ "$ref": "Operation"
467+ },
468+ "scopes": [
469+ "https://www.googleapis.com/auth/cloud-platform"
470+ ]
471+ },
472+ "get": {
473+ "description": "Get an Service Perimeter by resource\nname.",
474+ "flatPath": "v1beta/accessPolicies/{accessPoliciesId}/servicePerimeters/{servicePerimetersId}",
475+ "httpMethod": "GET",
476+ "id": "accesscontextmanager.accessPolicies.servicePerimeters.get",
477+ "parameterOrder": [
478+ "name"
479+ ],
480+ "parameters": {
481+ "name": {
482+ "description": "Required. Resource name for the Service Perimeter.\n\nFormat:\n`accessPolicies/{policy_id}/servicePerimeters/{service_perimeters_id}`",
483+ "location": "path",
484+ "pattern": "^accessPolicies/[^/]+/servicePerimeters/[^/]+$",
485+ "required": true,
486+ "type": "string"
487+ }
488+ },
489+ "path": "v1beta/{+name}",
490+ "response": {
491+ "$ref": "ServicePerimeter"
492+ },
493+ "scopes": [
494+ "https://www.googleapis.com/auth/cloud-platform"
495+ ]
496+ },
497+ "list": {
498+ "description": "List all Service Perimeters for an\naccess policy.",
499+ "flatPath": "v1beta/accessPolicies/{accessPoliciesId}/servicePerimeters",
500+ "httpMethod": "GET",
501+ "id": "accesscontextmanager.accessPolicies.servicePerimeters.list",
502+ "parameterOrder": [
503+ "parent"
504+ ],
505+ "parameters": {
506+ "pageSize": {
507+ "description": "Number of Service Perimeters to include\nin the list. Default 100.",
508+ "format": "int32",
509+ "location": "query",
510+ "type": "integer"
511+ },
512+ "pageToken": {
513+ "description": "Next page token for the next batch of Service Perimeter instances.\nDefaults to the first page of results.",
514+ "location": "query",
515+ "type": "string"
516+ },
517+ "parent": {
518+ "description": "Required. Resource name for the access policy to list Service Perimeters from.\n\nFormat:\n`accessPolicies/{policy_id}`",
519+ "location": "path",
520+ "pattern": "^accessPolicies/[^/]+$",
521+ "required": true,
522+ "type": "string"
523+ }
524+ },
525+ "path": "v1beta/{+parent}/servicePerimeters",
526+ "response": {
527+ "$ref": "ListServicePerimetersResponse"
528+ },
529+ "scopes": [
530+ "https://www.googleapis.com/auth/cloud-platform"
531+ ]
532+ },
533+ "patch": {
534+ "description": "Update an Service Perimeter. The\nlongrunning operation from this RPC will have a successful status once the\nchanges to the Service Perimeter have\npropagated to long-lasting storage. Service Perimeter containing\nerrors will result in an error response for the first error encountered.",
535+ "flatPath": "v1beta/accessPolicies/{accessPoliciesId}/servicePerimeters/{servicePerimetersId}",
536+ "httpMethod": "PATCH",
537+ "id": "accesscontextmanager.accessPolicies.servicePerimeters.patch",
538+ "parameterOrder": [
539+ "name"
540+ ],
541+ "parameters": {
542+ "name": {
543+ "description": "Required. Resource name for the ServicePerimeter. The `short_name`\ncomponent must begin with a letter and only include alphanumeric and '_'.\nFormat: `accessPolicies/{policy_id}/servicePerimeters/{short_name}`",
544+ "location": "path",
545+ "pattern": "^accessPolicies/[^/]+/servicePerimeters/[^/]+$",
546+ "required": true,
547+ "type": "string"
548+ },
549+ "updateMask": {
550+ "description": "Required. Mask to control which fields get updated. Must be non-empty.",
551+ "format": "google-fieldmask",
552+ "location": "query",
553+ "type": "string"
554+ }
555+ },
556+ "path": "v1beta/{+name}",
557+ "request": {
558+ "$ref": "ServicePerimeter"
559+ },
560+ "response": {
561+ "$ref": "Operation"
562+ },
563+ "scopes": [
564+ "https://www.googleapis.com/auth/cloud-platform"
565+ ]
566+ }
567+ }
568+ }
569+ }
570+ },
571+ "operations": {
572+ "methods": {
573+ "get": {
574+ "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.",
575+ "flatPath": "v1beta/operations/{operationsId}",
576+ "httpMethod": "GET",
577+ "id": "accesscontextmanager.operations.get",
578+ "parameterOrder": [
579+ "name"
580+ ],
581+ "parameters": {
582+ "name": {
583+ "description": "The name of the operation resource.",
584+ "location": "path",
585+ "pattern": "^operations/.+$",
586+ "required": true,
587+ "type": "string"
588+ }
589+ },
590+ "path": "v1beta/{+name}",
591+ "response": {
592+ "$ref": "Operation"
593+ },
594+ "scopes": [
595+ "https://www.googleapis.com/auth/cloud-platform"
596+ ]
597+ }
598+ }
599+ }
600+ },
601+ "revision": "20190307",
602+ "rootUrl": "https://accesscontextmanager.googleapis.com/",
603+ "schemas": {
604+ "AccessLevel": {
605+ "description": "An `AccessLevel` is a label that can be applied to requests to GCP services,\nalong with a list of requirements necessary for the label to be applied.",
606+ "id": "AccessLevel",
607+ "properties": {
608+ "basic": {
609+ "$ref": "BasicLevel",
610+ "description": "A `BasicLevel` composed of `Conditions`."
611+ },
612+ "createTime": {
613+ "description": "Output only. Time the `AccessLevel` was created in UTC.",
614+ "format": "google-datetime",
615+ "type": "string"
616+ },
617+ "description": {
618+ "description": "Description of the `AccessLevel` and its use. Does not affect behavior.",
619+ "type": "string"
620+ },
621+ "name": {
622+ "description": "Required. Resource name for the Access Level. The `short_name` component\nmust begin with a letter and only include alphanumeric and '_'. Format:\n`accessPolicies/{policy_id}/accessLevels/{short_name}`",
623+ "type": "string"
624+ },
625+ "title": {
626+ "description": "Human readable title. Must be unique within the Policy.",
627+ "type": "string"
628+ },
629+ "updateTime": {
630+ "description": "Output only. Time the `AccessLevel` was updated in UTC.",
631+ "format": "google-datetime",
632+ "type": "string"
633+ }
634+ },
635+ "type": "object"
636+ },
637+ "AccessPolicy": {
638+ "description": "`AccessPolicy` is a container for `AccessLevels` (which define the necessary\nattributes to use GCP services) and `ServicePerimeters` (which define regions\nof services able to freely pass data within a perimeter). An access policy is\nglobally visible within an organization, and the restrictions it specifies\napply to all projects within an organization.",
639+ "id": "AccessPolicy",
640+ "properties": {
641+ "createTime": {
642+ "description": "Output only. Time the `AccessPolicy` was created in UTC.",
643+ "format": "google-datetime",
644+ "type": "string"
645+ },
646+ "name": {
647+ "description": "Output only. Resource name of the `AccessPolicy`. Format:\n`accessPolicies/{policy_id}`",
648+ "type": "string"
649+ },
650+ "parent": {
651+ "description": "Required. The parent of this `AccessPolicy` in the Cloud Resource\nHierarchy. Currently immutable once created. Format:\n`organizations/{organization_id}`",
652+ "type": "string"
653+ },
654+ "title": {
655+ "description": "Required. Human readable title. Does not affect behavior.",
656+ "type": "string"
657+ },
658+ "updateTime": {
659+ "description": "Output only. Time the `AccessPolicy` was updated in UTC.",
660+ "format": "google-datetime",
661+ "type": "string"
662+ }
663+ },
664+ "type": "object"
665+ },
666+ "BasicLevel": {
667+ "description": "`BasicLevel` is an `AccessLevel` using a set of recommended features.",
668+ "id": "BasicLevel",
669+ "properties": {
670+ "combiningFunction": {
671+ "description": "How the `conditions` list should be combined to determine if a request is\ngranted this `AccessLevel`. If AND is used, each `Condition` in\n`conditions` must be satisfied for the `AccessLevel` to be applied. If OR\nis used, at least one `Condition` in `conditions` must be satisfied for the\n`AccessLevel` to be applied. Default behavior is AND.",
672+ "enum": [
673+ "AND",
674+ "OR"
675+ ],
676+ "enumDescriptions": [
677+ "All `Conditions` must be true for the `BasicLevel` to be true.",
678+ "If at least one `Condition` is true, then the `BasicLevel` is true."
679+ ],
680+ "type": "string"
681+ },
682+ "conditions": {
683+ "description": "Required. A list of requirements for the `AccessLevel` to be granted.",
684+ "items": {
685+ "$ref": "Condition"
686+ },
687+ "type": "array"
688+ }
689+ },
690+ "type": "object"
691+ },
692+ "Condition": {
693+ "description": "A condition necessary for an `AccessLevel` to be granted. The Condition is an\nAND over its fields. So a Condition is true if: 1) the request IP is from one\nof the listed subnetworks AND 2) the originating device complies with the\nlisted device policy AND 3) all listed access levels are granted AND 4) the\nrequest was sent at a time allowed by the DateTimeRestriction.",
694+ "id": "Condition",
695+ "properties": {
696+ "devicePolicy": {
697+ "$ref": "DevicePolicy",
698+ "description": "Device specific restrictions, all restrictions must hold for the\nCondition to be true. If not specified, all devices are allowed."
699+ },
700+ "ipSubnetworks": {
701+ "description": "CIDR block IP subnetwork specification. May be IPv4 or IPv6. Note that for\na CIDR IP address block, the specified IP address portion must be properly\ntruncated (i.e. all the host bits must be zero) or the input is considered\nmalformed. For example, \"192.0.2.0/24\" is accepted but \"192.0.2.1/24\" is\nnot. Similarly, for IPv6, \"2001:db8::/32\" is accepted whereas\n\"2001:db8::1/32\" is not. The originating IP of a request must be in one of\nthe listed subnets in order for this Condition to be true. If empty, all IP\naddresses are allowed.",
702+ "items": {
703+ "type": "string"
704+ },
705+ "type": "array"
706+ },
707+ "members": {
708+ "description": "The request must be made by one of the provided user or service\naccounts. Groups are not supported.\nSyntax:\n`user:{emailid}`\n`serviceAccount:{emailid}`\nIf not specified, a request may come from any user.",
709+ "items": {
710+ "type": "string"
711+ },
712+ "type": "array"
713+ },
714+ "negate": {
715+ "description": "Whether to negate the Condition. If true, the Condition becomes a NAND over\nits non-empty fields, each field must be false for the Condition overall to\nbe satisfied. Defaults to false.",
716+ "type": "boolean"
717+ },
718+ "regions": {
719+ "description": "The request must originate from one of the provided countries/regions.\nMust be valid ISO 3166-1 alpha-2 codes.",
720+ "items": {
721+ "type": "string"
722+ },
723+ "type": "array"
724+ },
725+ "requiredAccessLevels": {
726+ "description": "A list of other access levels defined in the same `Policy`, referenced by\nresource name. Referencing an `AccessLevel` which does not exist is an\nerror. All access levels listed must be granted for the Condition\nto be true. Example:\n\"`accessPolicies/MY_POLICY/accessLevels/LEVEL_NAME\"`",
727+ "items": {
728+ "type": "string"
729+ },
730+ "type": "array"
731+ }
732+ },
733+ "type": "object"
734+ },
735+ "DevicePolicy": {
736+ "description": "`DevicePolicy` specifies device specific restrictions necessary to acquire a\ngiven access level. A `DevicePolicy` specifies requirements for requests from\ndevices to be granted access levels, it does not do any enforcement on the\ndevice. `DevicePolicy` acts as an AND over all specified fields, and each\nrepeated field is an OR over its elements. Any unset fields are ignored. For\nexample, if the proto is { os_type : DESKTOP_WINDOWS, os_type :\nDESKTOP_LINUX, encryption_status: ENCRYPTED}, then the DevicePolicy will be\ntrue for requests originating from encrypted Linux desktops and encrypted\nWindows desktops.",
737+ "id": "DevicePolicy",
738+ "properties": {
739+ "allowedDeviceManagementLevels": {
740+ "description": "Allowed device management levels, an empty list allows all management\nlevels.",
741+ "enumDescriptions": [
742+ "The device's management level is not specified or not known.",
743+ "The device is not managed.",
744+ "Basic management is enabled, which is generally limited to monitoring and\nwiping the corporate account.",
745+ "Complete device management. This includes more thorough monitoring and the\nability to directly manage the device (such as remote wiping). This can be\nenabled through the Android Enterprise Platform."
746+ ],
747+ "items": {
748+ "enum": [
749+ "MANAGEMENT_UNSPECIFIED",
750+ "NONE",
751+ "BASIC",
752+ "COMPLETE"
753+ ],
754+ "type": "string"
755+ },
756+ "type": "array"
757+ },
758+ "allowedEncryptionStatuses": {
759+ "description": "Allowed encryptions statuses, an empty list allows all statuses.",
760+ "enumDescriptions": [
761+ "The encryption status of the device is not specified or not known.",
762+ "The device does not support encryption.",
763+ "The device supports encryption, but is currently unencrypted.",
764+ "The device is encrypted."
765+ ],
766+ "items": {
767+ "enum": [
768+ "ENCRYPTION_UNSPECIFIED",
769+ "ENCRYPTION_UNSUPPORTED",
770+ "UNENCRYPTED",
771+ "ENCRYPTED"
772+ ],
773+ "type": "string"
774+ },
775+ "type": "array"
776+ },
777+ "osConstraints": {
778+ "description": "Allowed OS versions, an empty list allows all types and all versions.",
779+ "items": {
780+ "$ref": "OsConstraint"
781+ },
782+ "type": "array"
783+ },
784+ "requireAdminApproval": {
785+ "description": "Whether the device needs to be approved by the customer admin.",
786+ "type": "boolean"
787+ },
788+ "requireCorpOwned": {
789+ "description": "Whether the device needs to be corp owned.",
790+ "type": "boolean"
791+ },
792+ "requireScreenlock": {
793+ "description": "Whether or not screenlock is required for the DevicePolicy to be true.\nDefaults to `false`.",
794+ "type": "boolean"
795+ }
796+ },
797+ "type": "object"
798+ },
799+ "ListAccessLevelsResponse": {
800+ "description": "A response to `ListAccessLevelsRequest`.",
801+ "id": "ListAccessLevelsResponse",
802+ "properties": {
803+ "accessLevels": {
804+ "description": "List of the Access Level instances.",
805+ "items": {
806+ "$ref": "AccessLevel"
807+ },
808+ "type": "array"
809+ },
810+ "nextPageToken": {
811+ "description": "The pagination token to retrieve the next page of results. If the value is\nempty, no further results remain.",
812+ "type": "string"
813+ }
814+ },
815+ "type": "object"
816+ },
817+ "ListAccessPoliciesResponse": {
818+ "description": "A response to `ListAccessPoliciesRequest`.",
819+ "id": "ListAccessPoliciesResponse",
820+ "properties": {
821+ "accessPolicies": {
822+ "description": "List of the AccessPolicy instances.",
823+ "items": {
824+ "$ref": "AccessPolicy"
825+ },
826+ "type": "array"
827+ },
828+ "nextPageToken": {
829+ "description": "The pagination token to retrieve the next page of results. If the value is\nempty, no further results remain.",
830+ "type": "string"
831+ }
832+ },
833+ "type": "object"
834+ },
835+ "ListServicePerimetersResponse": {
836+ "description": "A response to `ListServicePerimetersRequest`.",
837+ "id": "ListServicePerimetersResponse",
838+ "properties": {
839+ "nextPageToken": {
840+ "description": "The pagination token to retrieve the next page of results. If the value is\nempty, no further results remain.",
841+ "type": "string"
842+ },
843+ "servicePerimeters": {
844+ "description": "List of the Service Perimeter instances.",
845+ "items": {
846+ "$ref": "ServicePerimeter"
847+ },
848+ "type": "array"
849+ }
850+ },
851+ "type": "object"
852+ },
853+ "Operation": {
854+ "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.",
855+ "id": "Operation",
856+ "properties": {
857+ "done": {
858+ "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.",
859+ "type": "boolean"
860+ },
861+ "error": {
862+ "$ref": "Status",
863+ "description": "The error result of the operation in case of failure or cancellation."
864+ },
865+ "metadata": {
866+ "additionalProperties": {
867+ "description": "Properties of the object. Contains field @type with type URL.",
868+ "type": "any"
869+ },
870+ "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.",
871+ "type": "object"
872+ },
873+ "name": {
874+ "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.",
875+ "type": "string"
876+ },
877+ "response": {
878+ "additionalProperties": {
879+ "description": "Properties of the object. Contains field @type with type URL.",
880+ "type": "any"
881+ },
882+ "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.",
883+ "type": "object"
884+ }
885+ },
886+ "type": "object"
887+ },
888+ "OsConstraint": {
889+ "description": "A restriction on the OS type and version of devices making requests.",
890+ "id": "OsConstraint",
891+ "properties": {
892+ "minimumVersion": {
893+ "description": "The minimum allowed OS version. If not set, any version of this OS\nsatisfies the constraint. Format: `\"major.minor.patch\"`.\nExamples: `\"10.5.301\"`, `\"9.2.1\"`.",
894+ "type": "string"
895+ },
896+ "osType": {
897+ "description": "Required. The allowed OS type.",
898+ "enum": [
899+ "OS_UNSPECIFIED",
900+ "DESKTOP_MAC",
901+ "DESKTOP_WINDOWS",
902+ "DESKTOP_LINUX",
903+ "DESKTOP_CHROME_OS"
904+ ],
905+ "enumDescriptions": [
906+ "The operating system of the device is not specified or not known.",
907+ "A desktop Mac operating system.",
908+ "A desktop Windows operating system.",
909+ "A desktop Linux operating system.",
910+ "A desktop ChromeOS operating system."
911+ ],
912+ "type": "string"
913+ },
914+ "requireVerifiedChromeOs": {
915+ "description": "Only allows requests from devices with a verified Chrome OS.\nVerifications includes requirements that the device is enterprise-managed,\nconformant to Dasher domain policies, and the caller has permission to call\nthe API targeted by the request.",
916+ "type": "boolean"
917+ }
918+ },
919+ "type": "object"
920+ },
921+ "ServicePerimeter": {
922+ "description": "`ServicePerimeter` describes a set of GCP resources which can freely import\nand export data amongst themselves, but not export outside of the\n`ServicePerimeter`. If a request with a source within this `ServicePerimeter`\nhas a target outside of the `ServicePerimeter`, the request will be blocked.\nOtherwise the request is allowed. There are two types of Service Perimeter -\nRegular and Bridge. Regular Service Perimeters cannot overlap, a single GCP\nproject can only belong to a single regular Service Perimeter. Service\nPerimeter Bridges can contain only GCP projects as members, a single GCP\nproject may belong to multiple Service Perimeter Bridges.",
923+ "id": "ServicePerimeter",
924+ "properties": {
925+ "createTime": {
926+ "description": "Output only. Time the `ServicePerimeter` was created in UTC.",
927+ "format": "google-datetime",
928+ "type": "string"
929+ },
930+ "description": {
931+ "description": "Description of the `ServicePerimeter` and its use. Does not affect\nbehavior.",
932+ "type": "string"
933+ },
934+ "name": {
935+ "description": "Required. Resource name for the ServicePerimeter. The `short_name`\ncomponent must begin with a letter and only include alphanumeric and '_'.\nFormat: `accessPolicies/{policy_id}/servicePerimeters/{short_name}`",
936+ "type": "string"
937+ },
938+ "perimeterType": {
939+ "description": "Perimeter type indicator. A single project is\nallowed to be a member of single regular perimeter, but multiple service\nperimeter bridges. A project cannot be a included in a perimeter bridge\nwithout being included in regular perimeter. For perimeter bridges,\nrestricted/unrestricted service lists as well as access lists must be\nempty.",
940+ "enum": [
941+ "PERIMETER_TYPE_REGULAR",
942+ "PERIMETER_TYPE_BRIDGE"
943+ ],
944+ "enumDescriptions": [
945+ "Regular Perimeter.",
946+ "Perimeter Bridge."
947+ ],
948+ "type": "string"
949+ },
950+ "status": {
951+ "$ref": "ServicePerimeterConfig",
952+ "description": "Current ServicePerimeter configuration. Specifies sets of resources,\nrestricted/unrestricted services and access levels that determine perimeter\ncontent and boundaries."
953+ },
954+ "title": {
955+ "description": "Human readable title. Must be unique within the Policy.",
956+ "type": "string"
957+ },
958+ "updateTime": {
959+ "description": "Output only. Time the `ServicePerimeter` was updated in UTC.",
960+ "format": "google-datetime",
961+ "type": "string"
962+ }
963+ },
964+ "type": "object"
965+ },
966+ "ServicePerimeterConfig": {
967+ "description": "`ServicePerimeterConfig` specifies a set of GCP resources that describe\nspecific Service Perimeter configuration.",
968+ "id": "ServicePerimeterConfig",
969+ "properties": {
970+ "accessLevels": {
971+ "description": "A list of `AccessLevel` resource names that allow resources within the\n`ServicePerimeter` to be accessed from the internet. `AccessLevels` listed\nmust be in the same policy as this `ServicePerimeter`. Referencing a\nnonexistent `AccessLevel` is a syntax error. If no `AccessLevel` names are\nlisted, resources within the perimeter can only be accessed via GCP calls\nwith request origins within the perimeter. Example:\n`\"accessPolicies/MY_POLICY/accessLevels/MY_LEVEL\"`.\nFor Service Perimeter Bridge, must be empty.",
972+ "items": {
973+ "type": "string"
974+ },
975+ "type": "array"
976+ },
977+ "resources": {
978+ "description": "A list of GCP resources that are inside of the service perimeter.\nCurrently only projects are allowed. Format: `projects/{project_number}`",
979+ "items": {
980+ "type": "string"
981+ },
982+ "type": "array"
983+ },
984+ "restrictedServices": {
985+ "description": "GCP services that are subject to the Service Perimeter restrictions. Must\ncontain a list of services. For example, if\n`storage.googleapis.com` is specified, access to the storage buckets\ninside the perimeter must meet the perimeter's access restrictions.",
986+ "items": {
987+ "type": "string"
988+ },
989+ "type": "array"
990+ },
991+ "unrestrictedServices": {
992+ "description": "GCP services that are not subject to the Service Perimeter\nrestrictions. Deprecated. Must be set to a single wildcard \"*\".\n\nThe wildcard means that unless explicitly specified by\n\"restricted_services\" list, any service is treated as unrestricted.",
993+ "items": {
994+ "type": "string"
995+ },
996+ "type": "array"
997+ }
998+ },
999+ "type": "object"
1000+ },
1001+ "Status": {
1002+ "description": "The `Status` type defines a logical error model that is suitable for\ndifferent programming environments, including REST APIs and RPC APIs. It is\nused by [gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error\nmessage, and error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.",
1003+ "id": "Status",
1004+ "properties": {
1005+ "code": {
1006+ "description": "The status code, which should be an enum value of google.rpc.Code.",
1007+ "format": "int32",
1008+ "type": "integer"
1009+ },
1010+ "details": {
1011+ "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.",
1012+ "items": {
1013+ "additionalProperties": {
1014+ "description": "Properties of the object. Contains field @type with type URL.",
1015+ "type": "any"
1016+ },
1017+ "type": "object"
1018+ },
1019+ "type": "array"
1020+ },
1021+ "message": {
1022+ "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.",
1023+ "type": "string"
1024+ }
1025+ },
1026+ "type": "object"
1027+ }
1028+ },
1029+ "servicePath": "",
1030+ "title": "Access Context Manager API",
1031+ "version": "v1beta",
1032+ "version_module": true
1033+}
gen/model/adexchangebuyer/v1.2/adexchangebuyer-api.json+570−570
@@ -1,596 +1,596 @@
1{
1{
2− "kind": "discovery#restDescription",
2+ "auth": {
3− "etag": "\"ye6orv2F-1npMW3u9suM3a7C5Bo/NUnz0H_oWow0qcTRC55iG-5RpbM\"",
4− "discoveryVersion": "v1",
5− "id": "adexchangebuyer:v1.2",
6− "name": "adexchangebuyer",
7− "canonicalName": "Ad Exchange Buyer",
8− "version": "v1.2",
9− "revision": "20150909",
10− "title": "Ad Exchange Buyer API",
11− "description": "Accesses your bidding-account information, submits creatives for validation, finds available direct deals, and retrieves performance reports.",
12− "ownerDomain": "google.com",
13− "ownerName": "Google",
14− "icons": {
15− "x16": "https://www.google.com/images/icons/product/doubleclick-16.gif",
16− "x32": "https://www.google.com/images/icons/product/doubleclick-32.gif"
17− },
18− "documentationLink": "https://developers.google.com/ad-exchange/buyer-rest",
19− "protocol": "rest",
20− "baseUrl": "https://www.googleapis.com/adexchangebuyer/v1.2/",
21− "basePath": "/adexchangebuyer/v1.2/",
22− "rootUrl": "https://www.googleapis.com/",
23− "servicePath": "adexchangebuyer/v1.2/",
24− "batchPath": "batch",
25− "parameters": {
26− "alt": {
27− "type": "string",
28− "description": "Data format for the response.",
29− "default": "json",
30− "enum": [
31− "json"
32− ],
33− "enumDescriptions": [
34− "Responses with Content-Type of application/json"
35− ],
36− "location": "query"
37− },
38− "fields": {
39− "type": "string",
40− "description": "Selector specifying which fields to include in a partial response.",
41− "location": "query"
42− },
43− "key": {
44− "type": "string",
45− "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
46− "location": "query"
47− },
48− "oauth_token": {
49− "type": "string",
50− "description": "OAuth 2.0 token for the current user.",
51− "location": "query"
52− },
53− "prettyPrint": {
54− "type": "boolean",
55− "description": "Returns response with indentations and line breaks.",
56− "default": "true",
57− "location": "query"
58− },
59− "quotaUser": {
60− "type": "string",
61− "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.",
62− "location": "query"
63− },
64− "userIp": {
65− "type": "string",
66− "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.",
67− "location": "query"
68− }
69− },
70− "auth": {
71− "oauth2": {
3+ "oauth2": {
72− "scopes": {
4+ "scopes": {
73− "https://www.googleapis.com/auth/adexchange.buyer": {
5+ "https://www.googleapis.com/auth/adexchange.buyer": {
74− "description": "Manage your Ad Exchange buyer account configuration"
6+ "description": "Manage your Ad Exchange buyer account configuration"
75− }
76− }
77− }
78− },
79− "schemas": {
80− "Account": {
81− "id": "Account",
82− "type": "object",
83− "description": "Configuration data for an Ad Exchange buyer account.",
84− "properties": {
85− "bidderLocation": {
86− "type": "array",
87− "description": "Your bidder locations that have distinct URLs.",
88− "items": {
89− "type": "object",
90− "properties": {
91− "maximumQps": {
92− "type": "integer",
93− "description": "The maximum queries per second the Ad Exchange will send.",
94− "format": "int32"
95− },
96− "region": {
97− "type": "string",
98− "description": "The geographical region the Ad Exchange should send requests from. Only used by some quota systems, but always setting the value is recommended. Allowed values: \n- ASIA \n- EUROPE \n- US_EAST \n- US_WEST"
99− },
100− "url": {
101− "type": "string",
102− "description": "The URL to which the Ad Exchange will send bid requests."
103− }
7+ }
104 }
8 }
105− }
106− },
107− "cookieMatchingNid": {
108− "type": "string",
109− "description": "The nid parameter value used in cookie match requests. Please contact your technical account manager if you need to change this."
110− },
111− "cookieMatchingUrl": {
112− "type": "string",
113− "description": "The base URL used in cookie match requests."
114− },
115− "id": {
116− "type": "integer",
117− "description": "Account id.",
118− "format": "int32"
119− },
120− "kind": {
121− "type": "string",
122− "description": "Resource type.",
123− "default": "adexchangebuyer#account"
124− },
125− "maximumActiveCreatives": {
126− "type": "integer",
127− "description": "The maximum number of active creatives that an account can have, where a creative is active if it was inserted or bid with in the last 30 days. Please contact your technical account manager if you need to change this.",
128− "format": "int32"
129− },
130− "maximumTotalQps": {
131− "type": "integer",
132− "description": "The sum of all bidderLocation.maximumQps values cannot exceed this. Please contact your technical account manager if you need to change this.",
133− "format": "int32"
134− },
135− "numberActiveCreatives": {
136− "type": "integer",
137− "description": "The number of creatives that this account inserted or bid with in the last 30 days.",
138− "format": "int32"
139 }
9 }
140− }
141 },
10 },
142− "AccountsList": {
11+ "basePath": "/adexchangebuyer/v1.2/",
143− "id": "AccountsList",
12+ "baseUrl": "https://www.googleapis.com/adexchangebuyer/v1.2/",
144− "type": "object",
13+ "batchPath": "batch/adexchangebuyer/v1.2",
145− "description": "An account feed lists Ad Exchange buyer accounts that the user has access to. Each entry in the feed corresponds to a single buyer account.",
14+ "canonicalName": "Ad Exchange Buyer",
146− "properties": {
15+ "description": "Accesses your bidding-account information, submits creatives for validation, finds available direct deals, and retrieves performance reports.",
147− "items": {
16+ "discoveryVersion": "v1",
148− "type": "array",
17+ "documentationLink": "https://developers.google.com/ad-exchange/buyer-rest",
149− "description": "A list of accounts.",
18+ "etag": "\"Zkyw9ACJZUvcYmlFaKGChzhmtnE/F_9WJQnvLgGfABacvXvQLtkcuXw\"",
150− "items": {
19+ "icons": {
151− "$ref": "Account"
20+ "x16": "https://www.google.com/images/icons/product/doubleclick-16.gif",
152− }
21+ "x32": "https://www.google.com/images/icons/product/doubleclick-32.gif"
153− },
154− "kind": {
155− "type": "string",
156− "description": "Resource type.",
157− "default": "adexchangebuyer#accountsList"
158− }
159− }
160 },
22 },
161− "Creative": {
162− "id": "Creative",
163− "type": "object",
164− "description": "A creative and its classification data.",
165− "properties": {
166− "HTMLSnippet": {
167− "type": "string",
168− "description": "The HTML snippet that displays the ad when inserted in the web page. If set, videoURL should not be set."
169− },
170− "accountId": {
171− "type": "integer",
172− "description": "Account id.",
173− "format": "int32",
174− "annotations": {
175− "required": [
176− "adexchangebuyer.creatives.insert"
23+ "id": "adexchangebuyer:v1.2",
177− ]
24+ "kind": "discovery#restDescription",
178− }
179− },
180− "advertiserId": {
181− "type": "array",
182− "description": "Detected advertiser id, if any. Read-only. This field should not be set in requests.",
183− "items": {
184− "type": "string",
185− "format": "int64"
186− }
187− },
188− "advertiserName": {
189− "type": "string",
190− "description": "The name of the company being advertised in the creative.",
191− "annotations": {
192− "required": [
193− "adexchangebuyer.creatives.insert"
25+ "name": "adexchangebuyer",
194− ]
26+ "ownerDomain": "google.com",
195− }
27+ "ownerName": "Google",
196− },
28+ "parameters": {
197− "agencyId": {
29+ "alt": {
198− "type": "string",
30+ "default": "json",
199− "description": "The agency id for this creative.",
31+ "description": "Data format for the response.",
200− "format": "int64"
32+ "enum": [
201− },
33+ "json"
202− "api_upload_timestamp": {
203− "type": "string",
204− "description": "The last upload timestamp of this creative if it was uploaded via API. Read-only. The value of this field is generated, and will be ignored for uploads. (formatted RFC 3339 timestamp).",
205− "format": "date-time"
206− },
207− "attribute": {
208− "type": "array",
209− "description": "All attributes for the ads that may be shown from this snippet.",
210− "items": {
211− "type": "integer",
212− "format": "int32"
213− }
214− },
34+ ],
215− "buyerCreativeId": {
35+ "enumDescriptions": [
216− "type": "string",
36+ "Responses with Content-Type of application/json"
217− "description": "A buyer-specific id identifying the creative in this ad.",
218− "annotations": {
219− "required": [
220− "adexchangebuyer.creatives.insert"
221− ]
37+ ],
222− }
38+ "location": "query",
223− },
224− "clickThroughUrl": {
225− "type": "array",
226− "description": "The set of destination urls for the snippet.",
227− "items": {
228 "type": "string"
39 "type": "string"
229− },
230− "annotations": {
231− "required": [
232− "adexchangebuyer.creatives.insert"
233− ]
234− }
235− },
236− "corrections": {
237− "type": "array",
238− "description": "Shows any corrections that were applied to this creative. Read-only. This field should not be set in requests.",
239− "items": {
240− "type": "object",
241− "properties": {
242− "details": {
243− "type": "array",
244− "description": "Additional details about the correction.",
245− "items": {
246− "type": "string"
247− }
248− },
249− "reason": {
250− "type": "string",
251− "description": "The type of correction that was applied to the creative."
252− }
253− }
254− }
255− },
256− "disapprovalReasons": {
257− "type": "array",
258− "description": "The reasons for disapproval, if any. Note that not all disapproval reasons may be categorized, so it is possible for the creative to have a status of DISAPPROVED with an empty list for disapproval_reasons. In this case, please reach out to your TAM to help debug the issue. Read-only. This field should not be set in requests.",
259− "items": {
260− "type": "object",
261− "properties": {
262− "details": {
263− "type": "array",
264− "description": "Additional details about the reason for disapproval.",
265− "items": {
266− "type": "string"
267− }
268− },
269− "reason": {
270− "type": "string",
271− "description": "The categorized reason for disapproval."
272− }
273− }
274− }
275 },
40 },
276− "filteringReasons": {
41+ "fields": {
277− "type": "object",
42+ "description": "Selector specifying which fields to include in a partial response.",
278− "description": "The filtering reasons for the creative. Read-only. This field should not be set in requests.",
43+ "location": "query",
279− "properties": {
280− "date": {
281− "type": "string",
282− "description": "The date in ISO 8601 format for the data. The data is collected from 00:00:00 to 23:59:59 in PST."
283− },
284− "reasons": {
285− "type": "array",
286− "description": "The filtering reasons.",
287− "items": {
288− "type": "object",
289− "properties": {
290− "filteringCount": {
291− "type": "string",
292− "description": "The number of times the creative was filtered for the status. The count is aggregated across all publishers on the exchange.",
293− "format": "int64"
294− },
295− "filteringStatus": {
296− "type": "integer",
297− "description": "The filtering status code. Please refer to the creative-status-codes.txt file for different statuses.",
298− "format": "int32"
299− }
300− }
301− }
302− }
303− }
304− },
305− "height": {
306− "type": "integer",
307− "description": "Ad height.",
308− "format": "int32",
309− "annotations": {
310− "required": [
311− "adexchangebuyer.creatives.insert"
312− ]
313− }
314− },
315− "impressionTrackingUrl": {
316− "type": "array",
317− "description": "The set of urls to be called to record an impression.",
318− "items": {
319 "type": "string"
44 "type": "string"
320− }
321− },
322− "kind": {
323− "type": "string",
324− "description": "Resource type.",
325− "default": "adexchangebuyer#creative"
326− },
327− "productCategories": {
328− "type": "array",
329− "description": "Detected product categories, if any. Read-only. This field should not be set in requests.",
330− "items": {
331− "type": "integer",
332− "format": "int32"
333− }
334− },
335− "restrictedCategories": {
336− "type": "array",
337− "description": "All restricted categories for the ads that may be shown from this snippet.",
338− "items": {
339− "type": "integer",
340− "format": "int32"
341− }
342− },
343− "sensitiveCategories": {
344− "type": "array",
345− "description": "Detected sensitive categories, if any. Read-only. This field should not be set in requests.",
346− "items": {
347− "type": "integer",
348− "format": "int32"
349− }
350 },
45 },
351− "status": {
46+ "key": {
47+ "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
48+ "location": "query",
352− "type": "string",
49+ "type": "string"
353− "description": "Creative serving status. Read-only. This field should not be set in requests."
354 },
50 },
355− "vendorType": {
51+ "oauth_token": {
356− "type": "array",
52+ "description": "OAuth 2.0 token for the current user.",
357− "description": "All vendor types for the ads that may be shown from this snippet.",
53+ "location": "query",
358− "items": {
54+ "type": "string"
359− "type": "integer",
360− "format": "int32"
361− }
362 },
55 },
363− "version": {
56+ "prettyPrint": {
364− "type": "integer",
57+ "default": "true",
365− "description": "The version for this creative. Read-only. This field should not be set in requests.",
58+ "description": "Returns response with indentations and line breaks.",
366− "format": "int32"
59+ "location": "query",
60+ "type": "boolean"
367 },
61 },
368− "videoURL": {
62+ "quotaUser": {
369− "type": "string",
63+ "description": "An opaque string that represents a user for quota purposes. Must not exceed 40 characters.",
370− "description": "The url to fetch a video ad. If set, HTMLSnippet should not be set."
64+ "location": "query",
65+ "type": "string"
371 },
66 },
372− "width": {
67+ "userIp": {
373− "type": "integer",
68+ "description": "Deprecated. Please use quotaUser instead.",
374− "description": "Ad width.",
69+ "location": "query",
375− "format": "int32",
70+ "type": "string"
376− "annotations": {
377− "required": [
378− "adexchangebuyer.creatives.insert"
379− ]
380− }
381 }
71 }
382− }
383 },
72 },
384− "CreativesList": {
73+ "protocol": "rest",
385− "id": "CreativesList",
386− "type": "object",
387− "description": "The creatives feed lists the active creatives for the Ad Exchange buyer accounts that the user has access to. Each entry in the feed corresponds to a single creative.",
388− "properties": {
389− "items": {
390− "type": "array",
391− "description": "A list of creatives.",
392− "items": {
393− "$ref": "Creative"
394− }
395− },
396− "kind": {
397− "type": "string",
398− "description": "Resource type.",
399− "default": "adexchangebuyer#creativesList"
400− },
401− "nextPageToken": {
402− "type": "string",
403− "description": "Continuation token used to page through creatives. To retrieve the next page of results, set the next request's \"pageToken\" value to this."
404− }
405− }
406− }
407− },
408− "resources": {
74+ "resources": {
409− "accounts": {
75+ "accounts": {
410− "methods": {
76+ "methods": {
411− "get": {
77+ "get": {
412− "id": "adexchangebuyer.accounts.get",
413− "path": "accounts/{id}",
414− "httpMethod": "GET",
415− "description": "Gets one account by ID.",
78+ "description": "Gets one account by ID.",
416− "parameters": {
79+ "httpMethod": "GET",
417− "id": {
80+ "id": "adexchangebuyer.accounts.get",
418− "type": "integer",
81+ "parameterOrder": [
82+ "id"
83+ ],
84+ "parameters": {
85+ "id": {
419− "description": "The account id",
86+ "description": "The account id",
420− "required": true,
87+ "format": "int32",
421− "format": "int32",
88+ "location": "path",
422− "location": "path"
89+ "required": true,
90+ "type": "integer"
423− }
91+ }
424− },
92+ },
425− "parameterOrder": [
93+ "path": "accounts/{id}",
426− "id"
427− ],
428− "response": {
94+ "response": {
429− "$ref": "Account"
95+ "$ref": "Account"
430− },
96+ },
431− "scopes": [
97+ "scopes": [
432− "https://www.googleapis.com/auth/adexchange.buyer"
98+ "https://www.googleapis.com/auth/adexchange.buyer"
433− ]
99+ ]
434− },
100+ },
435− "list": {
101+ "list": {
436− "id": "adexchangebuyer.accounts.list",
437− "path": "accounts",
438− "httpMethod": "GET",
439− "description": "Retrieves the authenticated user's list of accounts.",
102+ "description": "Retrieves the authenticated user's list of accounts.",
103+ "httpMethod": "GET",
104+ "id": "adexchangebuyer.accounts.list",
105+ "path": "accounts",
440− "response": {
106+ "response": {
441− "$ref": "AccountsList"
107+ "$ref": "AccountsList"
442− },
108+ },
443− "scopes": [
109+ "scopes": [
444− "https://www.googleapis.com/auth/adexchange.buyer"
110+ "https://www.googleapis.com/auth/adexchange.buyer"
445− ]
111+ ]
446− },
112+ },
447− "patch": {
113+ "patch": {
448− "id": "adexchangebuyer.accounts.patch",
449− "path": "accounts/{id}",
450− "httpMethod": "PATCH",
451− "description": "Updates an existing account. This method supports patch semantics.",
114+ "description": "Updates an existing account. This method supports patch semantics.",
115+ "httpMethod": "PATCH",
116+ "id": "adexchangebuyer.accounts.patch",
117+ "parameterOrder": [
118+ "id"
119+ ],
452− "parameters": {
120+ "parameters": {
453− "id": {
121+ "id": {
122+ "description": "The account id",
123+ "format": "int32",
124+ "location": "path",
125+ "required": true,
454− "type": "integer",
126+ "type": "integer"
127+ }
128+ },
129+ "path": "accounts/{id}",
130+ "request": {
131+ "$ref": "Account"
132+ },
133+ "response": {
134+ "$ref": "Account"
135+ },
136+ "scopes": [
137+ "https://www.googleapis.com/auth/adexchange.buyer"
138+ ]
139+ },
140+ "update": {
455− "description": "The account id",
141+ "description": "Updates an existing account.",
456− "required": true,
142+ "httpMethod": "PUT",
143+ "id": "adexchangebuyer.accounts.update",
144+ "parameterOrder": [
145+ "id"
146+ ],
147+ "parameters": {
148+ "id": {
149+ "description": "The account id",
457− "format": "int32",
150+ "format": "int32",
458− "location": "path"
151+ "location": "path",
152+ "required": true,
153+ "type": "integer"
154+ }
155+ },
156+ "path": "accounts/{id}",
157+ "request": {
158+ "$ref": "Account"
159+ },
160+ "response": {
161+ "$ref": "Account"
162+ },
163+ "scopes": [
164+ "https://www.googleapis.com/auth/adexchange.buyer"
165+ ]
166+ }
459 }
167 }
460− },
461− "parameterOrder": [
462− "id"
463− ],
464− "request": {
465− "$ref": "Account"
466− },
467− "response": {
468− "$ref": "Account"
469− },
470− "scopes": [
471− "https://www.googleapis.com/auth/adexchange.buyer"
472− ]
473 },
168 },
474− "update": {
169+ "creatives": {
475− "id": "adexchangebuyer.accounts.update",
170+ "methods": {
476− "path": "accounts/{id}",
171+ "get": {
477− "httpMethod": "PUT",
172+ "description": "Gets the status for a single creative. A creative will be available 30-40 minutes after submission.",
478− "description": "Updates an existing account.",
173+ "httpMethod": "GET",
479− "parameters": {
174+ "id": "adexchangebuyer.creatives.get",
480− "id": {
175+ "parameterOrder": [
481− "type": "integer",
176+ "accountId",
482− "description": "The account id",
177+ "buyerCreativeId"
483− "required": true,
178+ ],
179+ "parameters": {
180+ "accountId": {
181+ "description": "The id for the account that will serve this creative.",
484− "format": "int32",
182+ "format": "int32",
485− "location": "path"
183+ "location": "path",
184+ "required": true,
185+ "type": "integer"
186+ },
187+ "buyerCreativeId": {
188+ "description": "The buyer-specific id for this creative.",
189+ "location": "path",
190+ "required": true,
191+ "type": "string"
192+ }
193+ },
194+ "path": "creatives/{accountId}/{buyerCreativeId}",
195+ "response": {
196+ "$ref": "Creative"
197+ },
198+ "scopes": [
199+ "https://www.googleapis.com/auth/adexchange.buyer"
200+ ]
201+ },
202+ "insert": {
203+ "description": "Submit a new creative.",
204+ "httpMethod": "POST",
205+ "id": "adexchangebuyer.creatives.insert",
206+ "path": "creatives",
207+ "request": {
208+ "$ref": "Creative"
209+ },
210+ "response": {
211+ "$ref": "Creative"
212+ },
213+ "scopes": [
214+ "https://www.googleapis.com/auth/adexchange.buyer"
215+ ]
216+ },
217+ "list": {
218+ "description": "Retrieves a list of the authenticated user's active creatives. A creative will be available 30-40 minutes after submission.",
219+ "httpMethod": "GET",
220+ "id": "adexchangebuyer.creatives.list",
221+ "parameters": {
222+ "maxResults": {
223+ "description": "Maximum number of entries returned on one result page. If not set, the default is 100. Optional.",
224+ "format": "uint32",
225+ "location": "query",
226+ "maximum": "1000",
227+ "minimum": "1",
228+ "type": "integer"
229+ },
230+ "pageToken": {
231+ "description": "A continuation token, used to page through ad clients. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response. Optional.",
232+ "location": "query",
233+ "type": "string"
234+ },
235+ "statusFilter": {
236+ "description": "When specified, only creatives having the given status are returned.",
237+ "enum": [
238+ "approved",
239+ "disapproved",
240+ "not_checked"
241+ ],
242+ "enumDescriptions": [
243+ "Creatives which have been approved.",
244+ "Creatives which have been disapproved.",
245+ "Creatives whose status is not yet checked."
246+ ],
247+ "location": "query",
248+ "type": "string"
249+ }
250+ },
251+ "path": "creatives",
252+ "response": {
253+ "$ref": "CreativesList"
254+ },
255+ "scopes": [
256+ "https://www.googleapis.com/auth/adexchange.buyer"
257+ ]
258+ }
486 }
259 }
487− },
488− "parameterOrder": [
489− "id"
490− ],
491− "request": {
492− "$ref": "Account"
493− },
494− "response": {
495− "$ref": "Account"
496− },
497− "scopes": [
498− "https://www.googleapis.com/auth/adexchange.buyer"
499− ]
500 }
260 }
501− }
502 },
261 },
503− "creatives": {
262+ "revision": "20180222",
504− "methods": {
263+ "rootUrl": "https://www.googleapis.com/",
505− "get": {
264+ "schemas": {
265+ "Account": {
266+ "description": "Configuration data for an Ad Exchange buyer account.",
267+ "id": "Account",
268+ "properties": {
269+ "bidderLocation": {
270+ "description": "Your bidder locations that have distinct URLs.",
271+ "items": {
272+ "properties": {
273+ "maximumQps": {
274+ "description": "The maximum queries per second the Ad Exchange will send.",
275+ "format": "int32",
276+ "type": "integer"
277+ },
278+ "region": {
279+ "description": "The geographical region the Ad Exchange should send requests from. Only used by some quota systems, but always setting the value is recommended. Allowed values: \n- ASIA \n- EUROPE \n- US_EAST \n- US_WEST",
280+ "type": "string"
281+ },
282+ "url": {
283+ "description": "The URL to which the Ad Exchange will send bid requests.",
284+ "type": "string"
285+ }
286+ },
287+ "type": "object"
288+ },
289+ "type": "array"
290+ },
291+ "cookieMatchingNid": {
292+ "description": "The nid parameter value used in cookie match requests. Please contact your technical account manager if you need to change this.",
293+ "type": "string"
294+ },
295+ "cookieMatchingUrl": {
296+ "description": "The base URL used in cookie match requests.",
297+ "type": "string"
298+ },
299+ "id": {
300+ "description": "Account id.",
301+ "format": "int32",
302+ "type": "integer"
303+ },
304+ "kind": {
506− "id": "adexchangebuyer.creatives.get",
305+ "default": "adexchangebuyer#account",
507− "path": "creatives/{accountId}/{buyerCreativeId}",
306+ "description": "Resource type.",
508− "httpMethod": "GET",
307+ "type": "string"
509− "description": "Gets the status for a single creative. A creative will be available 30-40 minutes after submission.",
308+ },
510− "parameters": {
309+ "maximumActiveCreatives": {
511− "accountId": {
310+ "description": "The maximum number of active creatives that an account can have, where a creative is active if it was inserted or bid with in the last 30 days. Please contact your technical account manager if you need to change this.",
311+ "format": "int32",
512− "type": "integer",
312+ "type": "integer"
513− "description": "The id for the account that will serve this creative.",
313+ },
514− "required": true,
314+ "maximumTotalQps": {
315+ "description": "The sum of all bidderLocation.maximumQps values cannot exceed this. Please contact your technical account manager if you need to change this.",
316+ "format": "int32",
317+ "type": "integer"
318+ },
319+ "numberActiveCreatives": {
320+ "description": "The number of creatives that this account inserted or bid with in the last 30 days.",
515− "format": "int32",
321+ "format": "int32",
516− "location": "path"
322+ "type": "integer"
323+ }
517 },
324 },
518− "buyerCreativeId": {
519− "type": "string",
325+ "type": "object"
520− "description": "The buyer-specific id for this creative.",
521− "required": true,
522− "location": "path"
523− }
524− },
525− "parameterOrder": [
526− "accountId",
527− "buyerCreativeId"
528− ],
529− "response": {
530− "$ref": "Creative"
531− },
532− "scopes": [
533− "https://www.googleapis.com/auth/adexchange.buyer"
534− ]
535 },
326 },
536− "insert": {
327+ "AccountsList": {
328+ "description": "An account feed lists Ad Exchange buyer accounts that the user has access to. Each entry in the feed corresponds to a single buyer account.",
329+ "id": "AccountsList",
330+ "properties": {
331+ "items": {
332+ "description": "A list of accounts.",
333+ "items": {
334+ "$ref": "Account"
335+ },
336+ "type": "array"
337+ },
338+ "kind": {
537− "id": "adexchangebuyer.creatives.insert",
339+ "default": "adexchangebuyer#accountsList",
538− "path": "creatives",
539− "httpMethod": "POST",
540− "description": "Submit a new creative.",
340+ "description": "Resource type.",
541− "request": {
341+ "type": "string"
542− "$ref": "Creative"
543− },
342+ }
544− "response": {
545− "$ref": "Creative"
546− },
343+ },
547− "scopes": [
344+ "type": "object"
548− "https://www.googleapis.com/auth/adexchange.buyer"
549− ]
550 },
345 },
551− "list": {
346+ "Creative": {
347+ "description": "A creative and its classification data.",
348+ "id": "Creative",
349+ "properties": {
350+ "HTMLSnippet": {
351+ "description": "The HTML snippet that displays the ad when inserted in the web page. If set, videoURL should not be set.",
352+ "type": "string"
353+ },
354+ "accountId": {
355+ "annotations": {
356+ "required": [
552− "id": "adexchangebuyer.creatives.list",
357+ "adexchangebuyer.creatives.insert"
553− "path": "creatives",
358+ ]
554− "httpMethod": "GET",
359+ },
555− "description": "Retrieves a list of the authenticated user's active creatives. A creative will be available 30-40 minutes after submission.",
360+ "description": "Account id.",
556− "parameters": {
361+ "format": "int32",
557− "maxResults": {
362+ "type": "integer"
363+ },
364+ "advertiserId": {
365+ "description": "Detected advertiser id, if any. Read-only. This field should not be set in requests.",
366+ "items": {
367+ "format": "int64",
368+ "type": "string"
369+ },
370+ "type": "array"
371+ },
372+ "advertiserName": {
373+ "annotations": {
374+ "required": [
375+ "adexchangebuyer.creatives.insert"
376+ ]
377+ },
378+ "description": "The name of the company being advertised in the creative.",
379+ "type": "string"
380+ },
381+ "agencyId": {
382+ "description": "The agency id for this creative.",
383+ "format": "int64",
384+ "type": "string"
385+ },
386+ "apiUploadTimestamp": {
387+ "description": "The last upload timestamp of this creative if it was uploaded via API. Read-only. The value of this field is generated, and will be ignored for uploads. (formatted RFC 3339 timestamp).",
388+ "format": "date-time",
389+ "type": "string"
390+ },
391+ "attribute": {
392+ "description": "All attributes for the ads that may be shown from this snippet.",
393+ "items": {
394+ "format": "int32",
558− "type": "integer",
395+ "type": "integer"
559− "description": "Maximum number of entries returned on one result page. If not set, the default is 100. Optional.",
396+ },
397+ "type": "array"
398+ },
399+ "buyerCreativeId": {
400+ "annotations": {
401+ "required": [
402+ "adexchangebuyer.creatives.insert"
403+ ]
404+ },
405+ "description": "A buyer-specific id identifying the creative in this ad.",
406+ "type": "string"
407+ },
408+ "clickThroughUrl": {
409+ "annotations": {
410+ "required": [
411+ "adexchangebuyer.creatives.insert"
412+ ]
413+ },
414+ "description": "The set of destination urls for the snippet.",
415+ "items": {
416+ "type": "string"
417+ },
418+ "type": "array"
419+ },
420+ "corrections": {
421+ "description": "Shows any corrections that were applied to this creative. Read-only. This field should not be set in requests.",
422+ "items": {
423+ "properties": {
424+ "details": {
425+ "description": "Additional details about the correction.",
426+ "items": {
427+ "type": "string"
428+ },
429+ "type": "array"
430+ },
431+ "reason": {
432+ "description": "The type of correction that was applied to the creative.",
433+ "type": "string"
434+ }
435+ },
436+ "type": "object"
437+ },
438+ "type": "array"
439+ },
440+ "disapprovalReasons": {
441+ "description": "The reasons for disapproval, if any. Note that not all disapproval reasons may be categorized, so it is possible for the creative to have a status of DISAPPROVED with an empty list for disapproval_reasons. In this case, please reach out to your TAM to help debug the issue. Read-only. This field should not be set in requests.",
442+ "items": {
443+ "properties": {
444+ "details": {
445+ "description": "Additional details about the reason for disapproval.",
446+ "items": {
447+ "type": "string"
448+ },
449+ "type": "array"
450+ },
451+ "reason": {
452+ "description": "The categorized reason for disapproval.",
453+ "type": "string"
454+ }
455+ },
456+ "type": "object"
457+ },
458+ "type": "array"
459+ },
460+ "filteringReasons": {
461+ "description": "The filtering reasons for the creative. Read-only. This field should not be set in requests.",
462+ "properties": {
463+ "date": {
464+ "description": "The date in ISO 8601 format for the data. The data is collected from 00:00:00 to 23:59:59 in PST.",
465+ "type": "string"
466+ },
467+ "reasons": {
468+ "description": "The filtering reasons.",
469+ "items": {
470+ "properties": {
471+ "filteringCount": {
472+ "description": "The number of times the creative was filtered for the status. The count is aggregated across all publishers on the exchange.",
473+ "format": "int64",
474+ "type": "string"
475+ },
476+ "filteringStatus": {
477+ "description": "The filtering status code. Please refer to the creative-status-codes.txt file for different statuses.",
478+ "format": "int32",
479+ "type": "integer"
480+ }
481+ },
482+ "type": "object"
483+ },
484+ "type": "array"
485+ }
486+ },
487+ "type": "object"
488+ },
489+ "height": {
490+ "annotations": {
491+ "required": [
492+ "adexchangebuyer.creatives.insert"
493+ ]
494+ },
495+ "description": "Ad height.",
496+ "format": "int32",
497+ "type": "integer"
498+ },
499+ "impressionTrackingUrl": {
500+ "description": "The set of urls to be called to record an impression.",
501+ "items": {
502+ "type": "string"
503+ },
504+ "type": "array"
505+ },
506+ "kind": {
507+ "default": "adexchangebuyer#creative",
508+ "description": "Resource type.",
509+ "type": "string"
510+ },
511+ "productCategories": {
512+ "description": "Detected product categories, if any. Read-only. This field should not be set in requests.",
513+ "items": {
560− "format": "uint32",
514+ "format": "int32",
561− "minimum": "1",
515+ "type": "integer"
562− "maximum": "1000",
516+ },
563− "location": "query"
517+ "type": "array"
518+ },
519+ "restrictedCategories": {
520+ "description": "All restricted categories for the ads that may be shown from this snippet.",
521+ "items": {
522+ "format": "int32",
523+ "type": "integer"
524+ },
525+ "type": "array"
526+ },
527+ "sensitiveCategories": {
528+ "description": "Detected sensitive categories, if any. Read-only. This field should not be set in requests.",
529+ "items": {
530+ "format": "int32",
531+ "type": "integer"
532+ },
533+ "type": "array"
534+ },
535+ "status": {
536+ "description": "Creative serving status. Read-only. This field should not be set in requests.",
537+ "type": "string"
538+ },
539+ "vendorType": {
540+ "description": "All vendor types for the ads that may be shown from this snippet.",
541+ "items": {
542+ "format": "int32",
543+ "type": "integer"
544+ },
545+ "type": "array"
546+ },
547+ "version": {
548+ "description": "The version for this creative. Read-only. This field should not be set in requests.",
549+ "format": "int32",
550+ "type": "integer"
551+ },
552+ "videoURL": {
553+ "description": "The url to fetch a video ad. If set, HTMLSnippet should not be set.",
554+ "type": "string"
555+ },
556+ "width": {
557+ "annotations": {
558+ "required": [
559+ "adexchangebuyer.creatives.insert"
560+ ]
561+ },
562+ "description": "Ad width.",
563+ "format": "int32",
564+ "type": "integer"
565+ }
564 },
566 },
565− "pageToken": {
567+ "type": "object"
566− "type": "string",
568+ },
567− "description": "A continuation token, used to page through ad clients. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response. Optional.",
569+ "CreativesList": {
568− "location": "query"
570+ "description": "The creatives feed lists the active creatives for the Ad Exchange buyer accounts that the user has access to. Each entry in the feed corresponds to a single creative.",
571+ "id": "CreativesList",
572+ "properties": {
573+ "items": {
574+ "description": "A list of creatives.",
575+ "items": {
576+ "$ref": "Creative"
577+ },
578+ "type": "array"
579+ },
580+ "kind": {
581+ "default": "adexchangebuyer#creativesList",
582+ "description": "Resource type.",
583+ "type": "string"
584+ },
585+ "nextPageToken": {
586+ "description": "Continuation token used to page through creatives. To retrieve the next page of results, set the next request's \"pageToken\" value to this.",
587+ "type": "string"
588+ }
569 },
589 },
570− "statusFilter": {
571− "type": "string",
590+ "type": "object"
572− "description": "When specified, only creatives having the given status are returned.",
573− "enum": [
574− "approved",
575− "disapproved",
576− "not_checked"
577− ],
578− "enumDescriptions": [
579− "Creatives which have been approved.",
580− "Creatives which have been disapproved.",
581− "Creatives whose status is not yet checked."
582− ],
583− "location": "query"
584− }
585− },
586− "response": {
587− "$ref": "CreativesList"
588− },
589− "scopes": [
590− "https://www.googleapis.com/auth/adexchange.buyer"
591− ]
592 }
591 }
593− }
592+ },
594− }
593+ "servicePath": "adexchangebuyer/v1.2/",
595− }
594+ "title": "Ad Exchange Buyer API",
595+ "version": "v1.2"
596−}
596+}
gen/model/adexchangebuyer/v1.3/adexchangebuyer-api.json+1608−1595
@@ -1,1655 +1,1668 @@
1{
1{
2− "kind": "discovery#restDescription",
2+ "auth": {
3− "etag": "\"ye6orv2F-1npMW3u9suM3a7C5Bo/s43VGxh95gMJhn2XULgCPUEFl2w\"",
4− "discoveryVersion": "v1",
5− "id": "adexchangebuyer:v1.3",
6− "name": "adexchangebuyer",
7− "canonicalName": "Ad Exchange Buyer",
8− "version": "v1.3",
9− "revision": "20150909",
10− "title": "Ad Exchange Buyer API",
11− "description": "Accesses your bidding-account information, submits creatives for validation, finds available direct deals, and retrieves performance reports.",
12− "ownerDomain": "google.com",
13− "ownerName": "Google",
14− "icons": {
15− "x16": "https://www.google.com/images/icons/product/doubleclick-16.gif",
16− "x32": "https://www.google.com/images/icons/product/doubleclick-32.gif"
17− },
18− "documentationLink": "https://developers.google.com/ad-exchange/buyer-rest",
19− "protocol": "rest",
20− "baseUrl": "https://www.googleapis.com/adexchangebuyer/v1.3/",
21− "basePath": "/adexchangebuyer/v1.3/",
22− "rootUrl": "https://www.googleapis.com/",
23− "servicePath": "adexchangebuyer/v1.3/",
24− "batchPath": "batch",
25− "parameters": {
26− "alt": {
27− "type": "string",
28− "description": "Data format for the response.",
29− "default": "json",
30− "enum": [
31− "json"
32− ],
33− "enumDescriptions": [
34− "Responses with Content-Type of application/json"
35− ],
36− "location": "query"
37− },
38− "fields": {
39− "type": "string",
40− "description": "Selector specifying which fields to include in a partial response.",
41− "location": "query"
42− },
43− "key": {
44− "type": "string",
45− "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
46− "location": "query"
47− },
48− "oauth_token": {
49− "type": "string",
50− "description": "OAuth 2.0 token for the current user.",
51− "location": "query"
52− },
53− "prettyPrint": {
54− "type": "boolean",
55− "description": "Returns response with indentations and line breaks.",
56− "default": "true",
57− "location": "query"
58− },
59− "quotaUser": {
60− "type": "string",
61− "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.",
62− "location": "query"
63− },
64− "userIp": {
65− "type": "string",
66− "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.",
67− "location": "query"
68− }
69− },
70− "auth": {
71− "oauth2": {
3+ "oauth2": {
72− "scopes": {
4+ "scopes": {
73− "https://www.googleapis.com/auth/adexchange.buyer": {
5+ "https://www.googleapis.com/auth/adexchange.buyer": {
74− "description": "Manage your Ad Exchange buyer account configuration"
6+ "description": "Manage your Ad Exchange buyer account configuration"
75− }
76− }
77− }
78− },
79− "schemas": {
80− "Account": {
81− "id": "Account",
82− "type": "object",
83− "description": "Configuration data for an Ad Exchange buyer account.",
84− "properties": {
85− "bidderLocation": {
86− "type": "array",
87− "description": "Your bidder locations that have distinct URLs.",
88− "items": {
89− "type": "object",
90− "properties": {
91− "maximumQps": {
92− "type": "integer",
93− "description": "The maximum queries per second the Ad Exchange will send.",
94− "format": "int32"
95− },
96− "region": {
97− "type": "string",
98− "description": "The geographical region the Ad Exchange should send requests from. Only used by some quota systems, but always setting the value is recommended. Allowed values: \n- ASIA \n- EUROPE \n- US_EAST \n- US_WEST"
99− },
100− "url": {
101− "type": "string",
102− "description": "The URL to which the Ad Exchange will send bid requests."
103− }
7+ }
104 }
8 }
105− }
106− },
107− "cookieMatchingNid": {
108− "type": "string",
109− "description": "The nid parameter value used in cookie match requests. Please contact your technical account manager if you need to change this."
110− },
111− "cookieMatchingUrl": {
112− "type": "string",
113− "description": "The base URL used in cookie match requests."
114− },
115− "id": {
116− "type": "integer",
117− "description": "Account id.",
118− "format": "int32"
119− },
120− "kind": {
121− "type": "string",
122− "description": "Resource type.",
123− "default": "adexchangebuyer#account"
124− },
125− "maximumActiveCreatives": {
126− "type": "integer",
127− "description": "The maximum number of active creatives that an account can have, where a creative is active if it was inserted or bid with in the last 30 days. Please contact your technical account manager if you need to change this.",
128− "format": "int32"
129− },
130− "maximumTotalQps": {
131− "type": "integer",
132− "description": "The sum of all bidderLocation.maximumQps values cannot exceed this. Please contact your technical account manager if you need to change this.",
133− "format": "int32"
134− },
135− "numberActiveCreatives": {
136− "type": "integer",
137− "description": "The number of creatives that this account inserted or bid with in the last 30 days.",
138− "format": "int32"
139 }
9 }
140− }
141 },
10 },
142− "AccountsList": {
11+ "basePath": "/adexchangebuyer/v1.3/",
143− "id": "AccountsList",
12+ "baseUrl": "https://www.googleapis.com/adexchangebuyer/v1.3/",
144− "type": "object",
13+ "batchPath": "batch/adexchangebuyer/v1.3",
145− "description": "An account feed lists Ad Exchange buyer accounts that the user has access to. Each entry in the feed corresponds to a single buyer account.",
14+ "canonicalName": "Ad Exchange Buyer",
146− "properties": {
15+ "description": "Accesses your bidding-account information, submits creatives for validation, finds available direct deals, and retrieves performance reports.",
147− "items": {
16+ "discoveryVersion": "v1",
148− "type": "array",
17+ "documentationLink": "https://developers.google.com/ad-exchange/buyer-rest",
149− "description": "A list of accounts.",
18+ "etag": "\"Zkyw9ACJZUvcYmlFaKGChzhmtnE/_CyndOA4AbF54FgfrNcK2tPll_k\"",
150− "items": {
19+ "icons": {
151− "$ref": "Account"
20+ "x16": "https://www.google.com/images/icons/product/doubleclick-16.gif",
152− }
21+ "x32": "https://www.google.com/images/icons/product/doubleclick-32.gif"
153− },
154− "kind": {
155− "type": "string",
156− "description": "Resource type.",
157− "default": "adexchangebuyer#accountsList"
158− }
159− }
160 },
22 },
161− "BillingInfo": {
23+ "id": "adexchangebuyer:v1.3",
162− "id": "BillingInfo",
24+ "kind": "discovery#restDescription",
163− "type": "object",
25+ "name": "adexchangebuyer",
164− "description": "The configuration data for an Ad Exchange billing info.",
26+ "ownerDomain": "google.com",
165− "properties": {
27+ "ownerName": "Google",
166− "accountId": {
28+ "parameters": {
167− "type": "integer",
29+ "alt": {
168− "description": "Account id.",
30+ "default": "json",
169− "format": "int32"
31+ "description": "Data format for the response.",
170− },
32+ "enum": [
171− "accountName": {
33+ "json"
172− "type": "string",
34+ ],
173− "description": "Account name."
35+ "enumDescriptions": [
174− },
36+ "Responses with Content-Type of application/json"
175− "billingId": {
37+ ],
176− "type": "array",
38+ "location": "query",
177− "description": "A list of adgroup IDs associated with this particular account. These IDs may show up as part of a realtime bidding BidRequest, which indicates a bid request for this account.",
178− "items": {
179 "type": "string"
39 "type": "string"
180− }
181− },
182− "kind": {
183− "type": "string",
184− "description": "Resource type.",
185− "default": "adexchangebuyer#billingInfo"
186− }
187− }
188− },
189− "BillingInfoList": {
190− "id": "BillingInfoList",
191− "type": "object",
192− "description": "A billing info feed lists Billing Info the Ad Exchange buyer account has access to. Each entry in the feed corresponds to a single billing info.",
193− "properties": {
194− "items": {
195− "type": "array",
196− "description": "A list of billing info relevant for your account.",
197− "items": {
198− "$ref": "BillingInfo"
199− }
200 },
40 },
201− "kind": {
41+ "fields": {
202− "type": "string",
42+ "description": "Selector specifying which fields to include in a partial response.",
203− "description": "Resource type.",
43+ "location": "query",
204− "default": "adexchangebuyer#billingInfoList"
205− }
206− }
207− },
208− "Budget": {
209− "id": "Budget",
210− "type": "object",
211− "description": "The configuration data for Ad Exchange RTB - Budget API.",
212− "properties": {
213− "accountId": {
214− "type": "string",
44+ "type": "string"
215− "description": "The id of the account. This is required for get and update requests.",
216− "format": "int64"
217 },
45 },
218− "billingId": {
46+ "key": {
47+ "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
48+ "location": "query",
219− "type": "string",
49+ "type": "string"
220− "description": "The billing id to determine which adgroup to provide budget information for. This is required for get and update requests.",
221− "format": "int64"
222 },
50 },
223− "budgetAmount": {
51+ "oauth_token": {
224− "type": "string",
52+ "description": "OAuth 2.0 token for the current user.",
225− "description": "The budget amount to apply for the billingId provided. This is required for update requests.",
53+ "location": "query",
226− "format": "int64"
54+ "type": "string"
227 },
55 },
228− "currencyCode": {
56+ "prettyPrint": {
229− "type": "string",
57+ "default": "true",
230− "description": "The currency code for the buyer. This cannot be altered here."
58+ "description": "Returns response with indentations and line breaks.",
59+ "location": "query",
60+ "type": "boolean"
231 },
61 },
232− "id": {
62+ "quotaUser": {
233− "type": "string",
63+ "description": "An opaque string that represents a user for quota purposes. Must not exceed 40 characters.",
234− "description": "The unique id that describes this item."
64+ "location": "query",
65+ "type": "string"
235 },
66 },
236− "kind": {
67+ "userIp": {
68+ "description": "Deprecated. Please use quotaUser instead.",
69+ "location": "query",
237− "type": "string",
70+ "type": "string"
238− "description": "The kind of the resource, i.e. \"adexchangebuyer#budget\".",
239− "default": "adexchangebuyer#budget"
240 }
71 }
241− }
242 },
72 },
243− "Creative": {
73+ "protocol": "rest",
244− "id": "Creative",
74+ "resources": {
245− "type": "object",
75+ "accounts": {
246− "description": "A creative and its classification data.",
76+ "methods": {
247− "properties": {
77+ "get": {
248− "HTMLSnippet": {
78+ "description": "Gets one account by ID.",
249− "type": "string",
79+ "httpMethod": "GET",
250− "description": "The HTML snippet that displays the ad when inserted in the web page. If set, videoURL should not be set."
80+ "id": "adexchangebuyer.accounts.get",
81+ "parameterOrder": [
82+ "id"
251− },
83+ ],
252− "accountId": {
84+ "parameters": {
253− "type": "integer",
85+ "id": {
254− "description": "Account id.",
86+ "description": "The account id",
255− "format": "int32",
87+ "format": "int32",
256− "annotations": {
88+ "location": "path",
257− "required": [
89+ "required": true,
258− "adexchangebuyer.creatives.insert"
259− ]
260− }
261− },
262− "advertiserId": {
263− "type": "array",
90+ "type": "integer"
264− "description": "Detected advertiser id, if any. Read-only. This field should not be set in requests.",
91+ }
265− "items": {
92+ },
266− "type": "string",
93+ "path": "accounts/{id}",
267− "format": "int64"
94+ "response": {
268− }
95+ "$ref": "Account"
96+ },
97+ "scopes": [
98+ "https://www.googleapis.com/auth/adexchange.buyer"
99+ ]
269− },
100+ },
270− "advertiserName": {
101+ "list": {
271− "type": "string",
102+ "description": "Retrieves the authenticated user's list of accounts.",
272− "description": "The name of the company being advertised in the creative.",
103+ "httpMethod": "GET",
273− "annotations": {
274− "required": [
275− "adexchangebuyer.creatives.insert"
104+ "id": "adexchangebuyer.accounts.list",
276− ]
105+ "path": "accounts",
277− }
106+ "response": {
278− },
107+ "$ref": "AccountsList"
279− "agencyId": {
108+ },
280− "type": "string",
109+ "scopes": [
281− "description": "The agency id for this creative.",
110+ "https://www.googleapis.com/auth/adexchange.buyer"
282− "format": "int64"
111+ ]
283− },
112+ },
284− "api_upload_timestamp": {
113+ "patch": {
285− "type": "string",
114+ "description": "Updates an existing account. This method supports patch semantics.",
286− "description": "The last upload timestamp of this creative if it was uploaded via API. Read-only. The value of this field is generated, and will be ignored for uploads. (formatted RFC 3339 timestamp).",
115+ "httpMethod": "PATCH",
287− "format": "date-time"
116+ "id": "adexchangebuyer.accounts.patch",
117+ "parameterOrder": [
118+ "id"
288− },
119+ ],
289− "attribute": {
120+ "parameters": {
290− "type": "array",
121+ "id": {
291− "description": "All attributes for the ads that may be shown from this snippet.",
122+ "description": "The account id",
292− "items": {
123+ "format": "int32",
293− "type": "integer",
124+ "location": "path",
294− "format": "int32"
125+ "required": true,
126+ "type": "integer"
295− }
127+ }
296− },
128+ },
297− "buyerCreativeId": {
129+ "path": "accounts/{id}",
298− "type": "string",
130+ "request": {
299− "description": "A buyer-specific id identifying the creative in this ad.",
131+ "$ref": "Account"
300− "annotations": {
132+ },
301− "required": [
133+ "response": {
302− "adexchangebuyer.creatives.insert"
134+ "$ref": "Account"
135+ },
136+ "scopes": [
137+ "https://www.googleapis.com/auth/adexchange.buyer"
303− ]
138+ ]
304− }
305− },
139+ },
306− "clickThroughUrl": {
140+ "update": {
307− "type": "array",
141+ "description": "Updates an existing account.",
308− "description": "The set of destination urls for the snippet.",
142+ "httpMethod": "PUT",
309− "items": {
143+ "id": "adexchangebuyer.accounts.update",
310− "type": "string"
144+ "parameterOrder": [
145+ "id"
311− },
146+ ],
312− "annotations": {
147+ "parameters": {
313− "required": [
148+ "id": {
314− "adexchangebuyer.creatives.insert"
149+ "description": "The account id",
315− ]
150+ "format": "int32",
316− }
151+ "location": "path",
317− },
152+ "required": true,
318− "corrections": {
153+ "type": "integer"
319− "type": "array",
154+ }
320− "description": "Shows any corrections that were applied to this creative. Read-only. This field should not be set in requests.",
155+ },
321− "items": {
156+ "path": "accounts/{id}",
322− "type": "object",
157+ "request": {
323− "properties": {
158+ "$ref": "Account"
324− "details": {
159+ },
325− "type": "array",
160+ "response": {
326− "description": "Additional details about the correction.",
161+ "$ref": "Account"
327− "items": {
162+ },
328− "type": "string"
163+ "scopes": [
164+ "https://www.googleapis.com/auth/adexchange.buyer"
165+ ]
329 }
166 }
330− },
331− "reason": {
332− "type": "string",
333− "description": "The type of correction that was applied to the creative."
334− }
335 }
167 }
336− }
337 },
168 },
338− "disapprovalReasons": {
169+ "billingInfo": {
339− "type": "array",
170+ "methods": {
340− "description": "The reasons for disapproval, if any. Note that not all disapproval reasons may be categorized, so it is possible for the creative to have a status of DISAPPROVED with an empty list for disapproval_reasons. In this case, please reach out to your TAM to help debug the issue. Read-only. This field should not be set in requests.",
171+ "get": {
341− "items": {
172+ "description": "Returns the billing information for one account specified by account ID.",
342− "type": "object",
173+ "httpMethod": "GET",
343− "properties": {
174+ "id": "adexchangebuyer.billingInfo.get",
344− "details": {
175+ "parameterOrder": [
345− "type": "array",
176+ "accountId"
346− "description": "Additional details about the reason for disapproval.",
177+ ],
347− "items": {
178+ "parameters": {
348− "type": "string"
179+ "accountId": {
180+ "description": "The account id.",
181+ "format": "int32",
182+ "location": "path",
183+ "required": true,
184+ "type": "integer"
185+ }
186+ },
187+ "path": "billinginfo/{accountId}",
188+ "response": {
189+ "$ref": "BillingInfo"
190+ },
191+ "scopes": [
192+ "https://www.googleapis.com/auth/adexchange.buyer"
193+ ]
194+ },
195+ "list": {
196+ "description": "Retrieves a list of billing information for all accounts of the authenticated user.",
197+ "httpMethod": "GET",
198+ "id": "adexchangebuyer.billingInfo.list",
199+ "path": "billinginfo",
200+ "response": {
201+ "$ref": "BillingInfoList"
202+ },
203+ "scopes": [
204+ "https://www.googleapis.com/auth/adexchange.buyer"
205+ ]
349 }
206 }
350− },
351− "reason": {
352− "type": "string",
353− "description": "The categorized reason for disapproval."
354− }
355 }
207 }
356− }
357 },
208 },
358− "filteringReasons": {
209+ "budget": {
359− "type": "object",
210+ "methods": {
360− "description": "The filtering reasons for the creative. Read-only. This field should not be set in requests.",
211+ "get": {
361− "properties": {
212+ "description": "Returns the budget information for the adgroup specified by the accountId and billingId.",
362− "date": {
213+ "httpMethod": "GET",
363− "type": "string",
214+ "id": "adexchangebuyer.budget.get",
364− "description": "The date in ISO 8601 format for the data. The data is collected from 00:00:00 to 23:59:59 in PST."
215+ "parameterOrder": [
216+ "accountId",
217+ "billingId"
218+ ],
219+ "parameters": {
220+ "accountId": {
221+ "description": "The account id to get the budget information for.",
222+ "format": "int64",
223+ "location": "path",
224+ "required": true,
225+ "type": "string"
226+ },
227+ "billingId": {
228+ "description": "The billing id to get the budget information for.",
229+ "format": "int64",
230+ "location": "path",
231+ "required": true,
232+ "type": "string"
233+ }
234+ },
235+ "path": "billinginfo/{accountId}/{billingId}",
236+ "response": {
237+ "$ref": "Budget"
238+ },
239+ "scopes": [
240+ "https://www.googleapis.com/auth/adexchange.buyer"
241+ ]
242+ },
243+ "patch": {
244+ "description": "Updates the budget amount for the budget of the adgroup specified by the accountId and billingId, with the budget amount in the request. This method supports patch semantics.",
245+ "httpMethod": "PATCH",
246+ "id": "adexchangebuyer.budget.patch",
247+ "parameterOrder": [
248+ "accountId",
249+ "billingId"
365− },
250+ ],
366− "reasons": {
251+ "parameters": {
367− "type": "array",
252+ "accountId": {
368− "description": "The filtering reasons.",
253+ "description": "The account id associated with the budget being updated.",
369− "items": {
254+ "format": "int64",
370− "type": "object",
255+ "location": "path",
371− "properties": {
256+ "required": true,
372− "filteringCount": {
257+ "type": "string"
373− "type": "string",
258+ },
374− "description": "The number of times the creative was filtered for the status. The count is aggregated across all publishers on the exchange.",
259+ "billingId": {
260+ "description": "The billing id associated with the budget being updated.",
375− "format": "int64"
261+ "format": "int64",
376− },
262+ "location": "path",
377− "filteringStatus": {
263+ "required": true,
378− "type": "integer",
264+ "type": "string"
379− "description": "The filtering status code. Please refer to the creative-status-codes.txt file for different statuses.",
265+ }
266+ },
267+ "path": "billinginfo/{accountId}/{billingId}",
268+ "request": {
269+ "$ref": "Budget"
270+ },
271+ "response": {
272+ "$ref": "Budget"
273+ },
274+ "scopes": [
275+ "https://www.googleapis.com/auth/adexchange.buyer"
276+ ]
277+ },
278+ "update": {
279+ "description": "Updates the budget amount for the budget of the adgroup specified by the accountId and billingId, with the budget amount in the request.",
280+ "httpMethod": "PUT",
281+ "id": "adexchangebuyer.budget.update",
282+ "parameterOrder": [
283+ "accountId",
284+ "billingId"
285+ ],
286+ "parameters": {
287+ "accountId": {
288+ "description": "The account id associated with the budget being updated.",
380− "format": "int32"
289+ "format": "int64",
381− }
290+ "location": "path",
291+ "required": true,
292+ "type": "string"
293+ },
294+ "billingId": {
295+ "description": "The billing id associated with the budget being updated.",
296+ "format": "int64",
297+ "location": "path",
298+ "required": true,
299+ "type": "string"
300+ }
301+ },
302+ "path": "billinginfo/{accountId}/{billingId}",
303+ "request": {
304+ "$ref": "Budget"
305+ },
306+ "response": {
307+ "$ref": "Budget"
308+ },
309+ "scopes": [
310+ "https://www.googleapis.com/auth/adexchange.buyer"
311+ ]
382 }
312 }
383− }
384 }
313 }
385− }
386 },
314 },
387− "height": {
315+ "creatives": {
388− "type": "integer",
316+ "methods": {
389− "description": "Ad height.",
317+ "get": {
390− "format": "int32",
318+ "description": "Gets the status for a single creative. A creative will be available 30-40 minutes after submission.",
391− "annotations": {
319+ "httpMethod": "GET",
392− "required": [
320+ "id": "adexchangebuyer.creatives.get",
393− "adexchangebuyer.creatives.insert"
321+ "parameterOrder": [
322+ "accountId",
323+ "buyerCreativeId"
324+ ],
325+ "parameters": {
326+ "accountId": {
327+ "description": "The id for the account that will serve this creative.",
328+ "format": "int32",
329+ "location": "path",
330+ "required": true,
331+ "type": "integer"
332+ },
333+ "buyerCreativeId": {
334+ "description": "The buyer-specific id for this creative.",
335+ "location": "path",
336+ "required": true,
337+ "type": "string"
338+ }
339+ },
340+ "path": "creatives/{accountId}/{buyerCreativeId}",
341+ "response": {
342+ "$ref": "Creative"
343+ },
344+ "scopes": [
345+ "https://www.googleapis.com/auth/adexchange.buyer"
346+ ]
347+ },
348+ "insert": {
349+ "description": "Submit a new creative.",
350+ "httpMethod": "POST",
351+ "id": "adexchangebuyer.creatives.insert",
352+ "path": "creatives",
353+ "request": {
354+ "$ref": "Creative"
355+ },
356+ "response": {
357+ "$ref": "Creative"
358+ },
359+ "scopes": [
360+ "https://www.googleapis.com/auth/adexchange.buyer"
361+ ]
362+ },
363+ "list": {
364+ "description": "Retrieves a list of the authenticated user's active creatives. A creative will be available 30-40 minutes after submission.",
365+ "httpMethod": "GET",
366+ "id": "adexchangebuyer.creatives.list",
367+ "parameters": {
368+ "accountId": {
369+ "description": "When specified, only creatives for the given account ids are returned.",
370+ "format": "int32",
371+ "location": "query",
372+ "repeated": true,
373+ "type": "integer"
374+ },
375+ "buyerCreativeId": {
376+ "description": "When specified, only creatives for the given buyer creative ids are returned.",
377+ "location": "query",
378+ "repeated": true,
379+ "type": "string"
380+ },
381+ "maxResults": {
382+ "description": "Maximum number of entries returned on one result page. If not set, the default is 100. Optional.",
383+ "format": "uint32",
384+ "location": "query",
385+ "maximum": "1000",
386+ "minimum": "1",
387+ "type": "integer"
388+ },
389+ "pageToken": {
390+ "description": "A continuation token, used to page through ad clients. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response. Optional.",
391+ "location": "query",
392+ "type": "string"
393+ },
394+ "statusFilter": {
395+ "description": "When specified, only creatives having the given status are returned.",
396+ "enum": [
397+ "approved",
398+ "disapproved",
399+ "not_checked"
400+ ],
401+ "enumDescriptions": [
402+ "Creatives which have been approved.",
403+ "Creatives which have been disapproved.",
404+ "Creatives whose status is not yet checked."
405+ ],
406+ "location": "query",
407+ "type": "string"
408+ }
409+ },
410+ "path": "creatives",
411+ "response": {
412+ "$ref": "CreativesList"
413+ },
414+ "scopes": [
415+ "https://www.googleapis.com/auth/adexchange.buyer"
394− ]
416+ ]
417+ }
395− }
418+ }
396 },
419 },
397− "impressionTrackingUrl": {
420+ "directDeals": {
398− "type": "array",
421+ "methods": {
399− "description": "The set of urls to be called to record an impression.",
422+ "get": {
400− "items": {
423+ "description": "Gets one direct deal by ID.",
401− "type": "string"
424+ "httpMethod": "GET",
425+ "id": "adexchangebuyer.directDeals.get",
426+ "parameterOrder": [
427+ "id"
428+ ],
429+ "parameters": {
430+ "id": {
431+ "description": "The direct deal id",
432+ "format": "int64",
433+ "location": "path",
434+ "required": true,
435+ "type": "string"
436+ }
437+ },
438+ "path": "directdeals/{id}",
439+ "response": {
440+ "$ref": "DirectDeal"
441+ },
442+ "scopes": [
443+ "https://www.googleapis.com/auth/adexchange.buyer"
444+ ]
445+ },
446+ "list": {
447+ "description": "Retrieves the authenticated user's list of direct deals.",
448+ "httpMethod": "GET",
449+ "id": "adexchangebuyer.directDeals.list",
450+ "path": "directdeals",
451+ "response": {
452+ "$ref": "DirectDealsList"
453+ },
454+ "scopes": [
455+ "https://www.googleapis.com/auth/adexchange.buyer"
456+ ]
457+ }
402− }
458+ }
403 },
459 },
404− "kind": {
460+ "performanceReport": {
405− "type": "string",
461+ "methods": {
406− "description": "Resource type.",
462+ "list": {
463+ "description": "Retrieves the authenticated user's list of performance metrics.",
464+ "httpMethod": "GET",
407− "default": "adexchangebuyer#creative"
465+ "id": "adexchangebuyer.performanceReport.list",
466+ "parameterOrder": [
467+ "accountId",
468+ "endDateTime",
469+ "startDateTime"
470+ ],
471+ "parameters": {
472+ "accountId": {
473+ "description": "The account id to get the reports.",
474+ "format": "int64",
475+ "location": "query",
476+ "required": true,
477+ "type": "string"
478+ },
479+ "endDateTime": {
480+ "description": "The end time of the report in ISO 8601 timestamp format using UTC.",
481+ "location": "query",
482+ "required": true,
483+ "type": "string"
484+ },
485+ "maxResults": {
486+ "description": "Maximum number of entries returned on one result page. If not set, the default is 100. Optional.",
487+ "format": "uint32",
488+ "location": "query",
489+ "maximum": "1000",
490+ "minimum": "1",
491+ "type": "integer"
492+ },
493+ "pageToken": {
494+ "description": "A continuation token, used to page through performance reports. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response. Optional.",
495+ "location": "query",
496+ "type": "string"
497+ },
498+ "startDateTime": {
499+ "description": "The start time of the report in ISO 8601 timestamp format using UTC.",
500+ "location": "query",
501+ "required": true,
502+ "type": "string"
503+ }
504+ },
505+ "path": "performancereport",
506+ "response": {
507+ "$ref": "PerformanceReportList"
508+ },
509+ "scopes": [
510+ "https://www.googleapis.com/auth/adexchange.buyer"
511+ ]
512+ }
513+ }
408 },
514 },
409− "nativeAd": {
515+ "pretargetingConfig": {
410− "type": "object",
516+ "methods": {
411− "description": "If nativeAd is set, HTMLSnippet and videoURL should not be set.",
517+ "delete": {
412− "properties": {
518+ "description": "Deletes an existing pretargeting config.",
413− "advertiser": {
519+ "httpMethod": "DELETE",
414− "type": "string"
520+ "id": "adexchangebuyer.pretargetingConfig.delete",
521+ "parameterOrder": [
522+ "accountId",
523+ "configId"
415− },
524+ ],
416− "appIcon": {
525+ "parameters": {
417− "type": "object",
526+ "accountId": {
418− "description": "The app icon, for app download ads.",
527+ "description": "The account id to delete the pretargeting config for.",
419− "properties": {
528+ "format": "int64",
420− "height": {
529+ "location": "path",
421− "type": "integer",
530+ "required": true,
422− "format": "int32"
531+ "type": "string"
532+ },
533+ "configId": {
534+ "description": "The specific id of the configuration to delete.",
535+ "format": "int64",
536+ "location": "path",
537+ "required": true,
538+ "type": "string"
539+ }
540+ },
541+ "path": "pretargetingconfigs/{accountId}/{configId}",
542+ "scopes": [
543+ "https://www.googleapis.com/auth/adexchange.buyer"
544+ ]
423 },
545 },
424− "url": {
546+ "get": {
547+ "description": "Gets a specific pretargeting configuration",
548+ "httpMethod": "GET",
549+ "id": "adexchangebuyer.pretargetingConfig.get",
550+ "parameterOrder": [
551+ "accountId",
552+ "configId"
553+ ],
554+ "parameters": {
555+ "accountId": {
556+ "description": "The account id to get the pretargeting config for.",
557+ "format": "int64",
558+ "location": "path",
559+ "required": true,
425− "type": "string"
560+ "type": "string"
561+ },
562+ "configId": {
563+ "description": "The specific id of the configuration to retrieve.",
564+ "format": "int64",
565+ "location": "path",
566+ "required": true,
567+ "type": "string"
568+ }
569+ },
570+ "path": "pretargetingconfigs/{accountId}/{configId}",
571+ "response": {
572+ "$ref": "PretargetingConfig"
573+ },
574+ "scopes": [
575+ "https://www.googleapis.com/auth/adexchange.buyer"
576+ ]
426 },
577 },
427− "width": {
578+ "insert": {
428− "type": "integer",
579+ "description": "Inserts a new pretargeting configuration.",
580+ "httpMethod": "POST",
581+ "id": "adexchangebuyer.pretargetingConfig.insert",
582+ "parameterOrder": [
583+ "accountId"
584+ ],
585+ "parameters": {
586+ "accountId": {
587+ "description": "The account id to insert the pretargeting config for.",
588+ "format": "int64",
589+ "location": "path",
590+ "required": true,
591+ "type": "string"
592+ }
593+ },
594+ "path": "pretargetingconfigs/{accountId}",
595+ "request": {
596+ "$ref": "PretargetingConfig"
597+ },
598+ "response": {
599+ "$ref": "PretargetingConfig"
600+ },
601+ "scopes": [
602+ "https://www.googleapis.com/auth/adexchange.buyer"
603+ ]
604+ },
605+ "list": {
606+ "description": "Retrieves a list of the authenticated user's pretargeting configurations.",
607+ "httpMethod": "GET",
608+ "id": "adexchangebuyer.pretargetingConfig.list",
609+ "parameterOrder": [
610+ "accountId"
611+ ],
612+ "parameters": {
613+ "accountId": {
614+ "description": "The account id to get the pretargeting configs for.",
429− "format": "int32"
615+ "format": "int64",
616+ "location": "path",
617+ "required": true,
618+ "type": "string"
619+ }
620+ },
621+ "path": "pretargetingconfigs/{accountId}",
622+ "response": {
623+ "$ref": "PretargetingConfigList"
624+ },
625+ "scopes": [
626+ "https://www.googleapis.com/auth/adexchange.buyer"
627+ ]
628+ },
629+ "patch": {
630+ "description": "Updates an existing pretargeting config. This method supports patch semantics.",
631+ "httpMethod": "PATCH",
632+ "id": "adexchangebuyer.pretargetingConfig.patch",
633+ "parameterOrder": [
634+ "accountId",
635+ "configId"
636+ ],
637+ "parameters": {
638+ "accountId": {
639+ "description": "The account id to update the pretargeting config for.",
640+ "format": "int64",
641+ "location": "path",
642+ "required": true,
643+ "type": "string"
644+ },
645+ "configId": {
646+ "description": "The specific id of the configuration to update.",
647+ "format": "int64",
648+ "location": "path",
649+ "required": true,
650+ "type": "string"
651+ }
652+ },
653+ "path": "pretargetingconfigs/{accountId}/{configId}",
654+ "request": {
655+ "$ref": "PretargetingConfig"
656+ },
657+ "response": {
658+ "$ref": "PretargetingConfig"
659+ },
660+ "scopes": [
661+ "https://www.googleapis.com/auth/adexchange.buyer"
662+ ]
663+ },
664+ "update": {
665+ "description": "Updates an existing pretargeting config.",
666+ "httpMethod": "PUT",
667+ "id": "adexchangebuyer.pretargetingConfig.update",
668+ "parameterOrder": [
669+ "accountId",
670+ "configId"
671+ ],
672+ "parameters": {
673+ "accountId": {
674+ "description": "The account id to update the pretargeting config for.",
675+ "format": "int64",
676+ "location": "path",
677+ "required": true,
678+ "type": "string"
679+ },
680+ "configId": {
681+ "description": "The specific id of the configuration to update.",
682+ "format": "int64",
683+ "location": "path",
684+ "required": true,
685+ "type": "string"
686+ }
687+ },
688+ "path": "pretargetingconfigs/{accountId}/{configId}",
689+ "request": {
690+ "$ref": "PretargetingConfig"
691+ },
692+ "response": {
693+ "$ref": "PretargetingConfig"
694+ },
695+ "scopes": [
696+ "https://www.googleapis.com/auth/adexchange.buyer"
697+ ]
430 }
698 }
699+ }
431− }
700+ }
432− },
701+ },
433− "body": {
702+ "revision": "20180222",
434− "type": "string",
703+ "rootUrl": "https://www.googleapis.com/",
435− "description": "A long description of the ad."
704+ "schemas": {
436− },
705+ "Account": {
437− "callToAction": {
706+ "description": "Configuration data for an Ad Exchange buyer account.",
438− "type": "string",
707+ "id": "Account",
439− "description": "A label for the button that the user is supposed to click."
708+ "properties": {
440− },
709+ "bidderLocation": {
441− "clickTrackingUrl": {
710+ "description": "Your bidder locations that have distinct URLs.",
711+ "items": {
712+ "properties": {
713+ "maximumQps": {
714+ "description": "The maximum queries per second the Ad Exchange will send.",
715+ "format": "int32",
716+ "type": "integer"
717+ },
718+ "region": {
719+ "description": "The geographical region the Ad Exchange should send requests from. Only used by some quota systems, but always setting the value is recommended. Allowed values: \n- ASIA \n- EUROPE \n- US_EAST \n- US_WEST",
442− "type": "string",
720+ "type": "string"
721+ },
722+ "url": {
443− "description": "The URL to use for click tracking."
723+ "description": "The URL to which the Ad Exchange will send bid requests.",
444− },
445− "headline": {
446− "type": "string",
724+ "type": "string"
447− "description": "A short title for the ad."
725+ }
448− },
726+ },
449− "image": {
450− "type": "object",
727+ "type": "object"
451− "description": "A large image.",
728+ },
452− "properties": {
453− "height": {
454− "type": "integer",
729+ "type": "array"
455− "format": "int32"
456 },
730 },
457− "url": {
731+ "cookieMatchingNid": {
732+ "description": "The nid parameter value used in cookie match requests. Please contact your technical account manager if you need to change this.",
458− "type": "string"
733+ "type": "string"
459 },
734 },
460− "width": {
735+ "cookieMatchingUrl": {
736+ "description": "The base URL used in cookie match requests.",
737+ "type": "string"
738+ },
739+ "id": {
740+ "description": "Account id.",
741+ "format": "int32",
461− "type": "integer",
742+ "type": "integer"
743+ },
744+ "kind": {
745+ "default": "adexchangebuyer#account",
746+ "description": "Resource type.",
747+ "type": "string"
748+ },
749+ "maximumActiveCreatives": {
750+ "description": "The maximum number of active creatives that an account can have, where a creative is active if it was inserted or bid with in the last 30 days. Please contact your technical account manager if you need to change this.",
751+ "format": "int32",
752+ "type": "integer"
753+ },
754+ "maximumTotalQps": {
755+ "description": "The sum of all bidderLocation.maximumQps values cannot exceed this. Please contact your technical account manager if you need to change this.",
462− "format": "int32"
756+ "format": "int32",
757+ "type": "integer"
758+ },
759+ "numberActiveCreatives": {
760+ "description": "The number of creatives that this account inserted or bid with in the last 30 days.",
761+ "format": "int32",
762+ "type": "integer"
463 }
763 }
464− }
465 },
764 },
466− "impressionTrackingUrl": {
765+ "type": "object"
766+ },
767+ "AccountsList": {
768+ "description": "An account feed lists Ad Exchange buyer accounts that the user has access to. Each entry in the feed corresponds to a single buyer account.",
769+ "id": "AccountsList",
770+ "properties": {
771+ "items": {
772+ "description": "A list of accounts.",
773+ "items": {
774+ "$ref": "Account"
775+ },
467− "type": "array",
776+ "type": "array"
468− "description": "The URLs are called when the impression is rendered.",
777+ },
469− "items": {
778+ "kind": {
779+ "default": "adexchangebuyer#accountsList",
780+ "description": "Resource type.",
470− "type": "string"
781+ "type": "string"
471− }
782+ }
472 },
783 },
473− "logo": {
474− "type": "object",
784+ "type": "object"
475− "description": "A smaller image, for the advertiser logo.",
785+ },
786+ "BillingInfo": {
787+ "description": "The configuration data for an Ad Exchange billing info.",
788+ "id": "BillingInfo",
476− "properties": {
789+ "properties": {
477− "height": {
790+ "accountId": {
478− "type": "integer",
791+ "description": "Account id.",
479− "format": "int32"
792+ "format": "int32",
793+ "type": "integer"
480 },
794 },
481− "url": {
795+ "accountName": {
796+ "description": "Account name.",
482− "type": "string"
797+ "type": "string"
483 },
798 },
484− "width": {
799+ "billingId": {
800+ "description": "A list of adgroup IDs associated with this particular account. These IDs may show up as part of a realtime bidding BidRequest, which indicates a bid request for this account.",
801+ "items": {
802+ "type": "string"
803+ },
485− "type": "integer",
804+ "type": "array"
486− "format": "int32"
805+ },
806+ "kind": {
807+ "default": "adexchangebuyer#billingInfo",
808+ "description": "Resource type.",
809+ "type": "string"
487 }
810 }
488− }
489− },
490− "price": {
491− "type": "string",
492− "description": "The price of the promoted app including the currency info."
493 },
811 },
494− "starRating": {
495− "type": "number",
496− "description": "The app rating in the app store. Must be in the range [0-5].",
497− "format": "double"
498− },
499− "store": {
500− "type": "string",
501− "description": "The URL to the app store to purchase/download the promoted app."
502− }
503− }
504− },
505− "productCategories": {
506− "type": "array",
507− "description": "Detected product categories, if any. Read-only. This field should not be set in requests.",
508− "items": {
509− "type": "integer",
510− "format": "int32"
511− }
512− },
513− "restrictedCategories": {
514− "type": "array",
515− "description": "All restricted categories for the ads that may be shown from this snippet.",
516− "items": {
517− "type": "integer",
518− "format": "int32"
519− }
520− },
521− "sensitiveCategories": {
522− "type": "array",
523− "description": "Detected sensitive categories, if any. Read-only. This field should not be set in requests.",
524− "items": {
525− "type": "integer",
526− "format": "int32"
527− }
528− },
529− "status": {
530− "type": "string",
531− "description": "Creative serving status. Read-only. This field should not be set in requests."
532− },
533− "vendorType": {
534− "type": "array",
535− "description": "All vendor types for the ads that may be shown from this snippet.",
536− "items": {
537− "type": "integer",
538− "format": "int32"
539− }
540− },
541− "version": {
542− "type": "integer",
543− "description": "The version for this creative. Read-only. This field should not be set in requests.",
544− "format": "int32"
545− },
546− "videoURL": {
547− "type": "string",
548− "description": "The url to fetch a video ad. If set, HTMLSnippet should not be set."
549− },
550− "width": {
551− "type": "integer",
552− "description": "Ad width.",
553− "format": "int32",
554− "annotations": {
555− "required": [
556− "adexchangebuyer.creatives.insert"
557− ]
558− }
559− }
560− }
561− },
562− "CreativesList": {
563− "id": "CreativesList",
564− "type": "object",
812+ "type": "object"
565− "description": "The creatives feed lists the active creatives for the Ad Exchange buyer accounts that the user has access to. Each entry in the feed corresponds to a single creative.",
566− "properties": {
567− "items": {
568− "type": "array",
569− "description": "A list of creatives.",
570− "items": {
571− "$ref": "Creative"
572− }
573− },
574− "kind": {
575− "type": "string",
576− "description": "Resource type.",
577− "default": "adexchangebuyer#creativesList"
578− },
579− "nextPageToken": {
580− "type": "string",
581− "description": "Continuation token used to page through creatives. To retrieve the next page of results, set the next request's \"pageToken\" value to this."
582− }
583− }
584− },
585− "DirectDeal": {
586− "id": "DirectDeal",
587− "type": "object",
588− "description": "The configuration data for an Ad Exchange direct deal.",
589− "properties": {
590− "accountId": {
591− "type": "integer",
592− "description": "The account id of the buyer this deal is for.",
593− "format": "int32"
594− },
595− "advertiser": {
596− "type": "string",
597− "description": "The name of the advertiser this deal is for."
598− },
599− "currencyCode": {
600− "type": "string",
601− "description": "The currency code that applies to the fixed_cpm value. If not set then assumed to be USD."
602− },
603− "endTime": {
604− "type": "string",
605− "description": "End time for when this deal stops being active. If not set then this deal is valid until manually disabled by the publisher. In seconds since the epoch.",
606− "format": "int64"
607− },
608− "fixedCpm": {
609− "type": "string",
610− "description": "The fixed price for this direct deal. In cpm micros of currency according to currency_code. If set, then this deal is eligible for the fixed price tier of buying (highest priority, pay exactly the configured fixed price).",
611− "format": "int64"
612− },
613− "id": {
614− "type": "string",
615− "description": "Deal id.",
616− "format": "int64"
617− },
618− "kind": {
619− "type": "string",
620− "description": "Resource type.",
621− "default": "adexchangebuyer#directDeal"
622− },
623− "name": {
624− "type": "string",
625− "description": "Deal name."
626− },
627− "privateExchangeMinCpm": {
628− "type": "string",
629− "description": "The minimum price for this direct deal. In cpm micros of currency according to currency_code. If set, then this deal is eligible for the private exchange tier of buying (below fixed price priority, run as a second price auction).",
630− "format": "int64"
631− },
632− "publisherBlocksOverriden": {
633− "type": "boolean",
634− "description": "If true, the publisher has opted to have their blocks ignored when a creative is bid with for this deal."
635− },
636− "sellerNetwork": {
637− "type": "string",
638− "description": "The name of the publisher offering this direct deal."
639− },
640− "startTime": {
641− "type": "string",
642− "description": "Start time for when this deal becomes active. If not set then this deal is active immediately upon creation. In seconds since the epoch.",
643− "format": "int64"
644− }
645− }
646− },
647− "DirectDealsList": {
648− "id": "DirectDealsList",
649− "type": "object",
650− "description": "A direct deals feed lists Direct Deals the Ad Exchange buyer account has access to. This includes direct deals set up for the buyer account as well as its merged stream seats.",
651− "properties": {
652− "directDeals": {
653− "type": "array",
654− "description": "A list of direct deals relevant for your account.",
655− "items": {
656− "$ref": "DirectDeal"
657− }
658− },
659− "kind": {
660− "type": "string",
661− "description": "Resource type.",
662− "default": "adexchangebuyer#directDealsList"
663− }
664− }
665− },
666− "PerformanceReport": {
667− "id": "PerformanceReport",
668− "type": "object",
669− "description": "The configuration data for an Ad Exchange performance report list.",
670− "properties": {
671− "bidRate": {
672− "type": "number",
673− "description": "The number of bid responses with an ad.",
674− "format": "double"
675− },
676− "bidRequestRate": {
677− "type": "number",
678− "description": "The number of bid requests sent to your bidder.",
679− "format": "double"
680 },
813 },
681− "calloutStatusRate": {
814+ "BillingInfoList": {
682− "type": "array",
815+ "description": "A billing info feed lists Billing Info the Ad Exchange buyer account has access to. Each entry in the feed corresponds to a single billing info.",
683− "description": "Rate of various prefiltering statuses per match. Please refer to the callout-status-codes.txt file for different statuses.",
816+ "id": "BillingInfoList",
684− "items": {
685− "type": "any"
686− }
687− },
688− "cookieMatcherStatusRate": {
689− "type": "array",
690− "description": "Average QPS for cookie matcher operations.",
691− "items": {
692− "type": "any"
693− }
694− },
695− "creativeStatusRate": {
696− "type": "array",
697− "description": "Rate of ads with a given status. Please refer to the creative-status-codes.txt file for different statuses.",
698− "items": {
699− "type": "any"
700− }
701− },
702− "filteredBidRate": {
703− "type": "number",
704− "description": "The number of bid responses that were filtered due to a policy violation or other errors.",
705− "format": "double"
706− },
707− "hostedMatchStatusRate": {
708− "type": "array",
709− "description": "Average QPS for hosted match operations.",
710− "items": {
711− "type": "any"
712− }
713− },
714− "inventoryMatchRate": {
715− "type": "number",
716− "description": "The number of potential queries based on your pretargeting settings.",
717− "format": "double"
718− },
719− "kind": {
720− "type": "string",
721− "description": "Resource type.",
722− "default": "adexchangebuyer#performanceReport"
723− },
724− "latency50thPercentile": {
725− "type": "number",
726− "description": "The 50th percentile round trip latency(ms) as perceived from Google servers for the duration period covered by the report.",
727− "format": "double"
728− },
729− "latency85thPercentile": {
730− "type": "number",
731− "description": "The 85th percentile round trip latency(ms) as perceived from Google servers for the duration period covered by the report.",
732− "format": "double"
733− },
734− "latency95thPercentile": {
735− "type": "number",
736− "description": "The 95th percentile round trip latency(ms) as perceived from Google servers for the duration period covered by the report.",
737− "format": "double"
738− },
739− "noQuotaInRegion": {
740− "type": "number",
741− "description": "Rate of various quota account statuses per quota check.",
742− "format": "double"
743− },
744− "outOfQuota": {
745− "type": "number",
746− "description": "Rate of various quota account statuses per quota check.",
747− "format": "double"
748− },
749− "pixelMatchRequests": {
750− "type": "number",
751− "description": "Average QPS for pixel match requests from clients.",
752− "format": "double"
753− },
754− "pixelMatchResponses": {
755− "type": "number",
756− "description": "Average QPS for pixel match responses from clients.",
757− "format": "double"
758− },
759− "quotaConfiguredLimit": {
760− "type": "number",
761− "description": "The configured quota limits for this account.",
762− "format": "double"
763− },
764− "quotaThrottledLimit": {
765− "type": "number",
766− "description": "The throttled quota limits for this account.",
767− "format": "double"
768− },
769− "region": {
770− "type": "string",
771− "description": "The trading location of this data."
772− },
773− "successfulRequestRate": {
774− "type": "number",
775− "description": "The number of properly formed bid responses received by our servers within the deadline.",
776− "format": "double"
777− },
778− "timestamp": {
779− "type": "string",
780− "description": "The unix timestamp of the starting time of this performance data.",
781− "format": "int64"
782− },
783− "unsuccessfulRequestRate": {
784− "type": "number",
785− "description": "The number of bid responses that were unsuccessful due to timeouts, incorrect formatting, etc.",
786− "format": "double"
787− }
788− }
789− },
790− "PerformanceReportList": {
791− "id": "PerformanceReportList",
792− "type": "object",
793− "description": "The configuration data for an Ad Exchange performance report list. https://sites.google.com/a/google.com/adx-integration/Home/engineering/binary-releases/rtb-api-release https://cs.corp.google.com/#piper///depot/google3/contentads/adx/tools/rtb_api/adxrtb.py",
794− "properties": {
795− "kind": {
796− "type": "string",
797− "description": "Resource type.",
798− "default": "adexchangebuyer#performanceReportList"
799− },
800− "performanceReport": {
801− "type": "array",
802− "description": "A list of performance reports relevant for the account.",
803− "items": {
804− "$ref": "PerformanceReport"
805− }
806− }
807− }
808− },
809− "PretargetingConfig": {
810− "id": "PretargetingConfig",
811− "type": "object",
812− "properties": {
813− "billingId": {
814− "type": "string",
815− "description": "The id for billing purposes, provided for reference. Leave this field blank for insert requests; the id will be generated automatically.",
816− "format": "int64"
817− },
818− "configId": {
819− "type": "string",
820− "description": "The config id; generated automatically. Leave this field blank for insert requests.",
821− "format": "int64"
822− },
823− "configName": {
824− "type": "string",
825− "description": "The name of the config. Must be unique. Required for all requests."
826− },
827− "creativeType": {
828− "type": "array",
829− "description": "List must contain exactly one of PRETARGETING_CREATIVE_TYPE_HTML or PRETARGETING_CREATIVE_TYPE_VIDEO.",
830− "items": {
831− "type": "string"
832− }
833− },
834− "dimensions": {
835− "type": "array",
836− "description": "Requests which allow one of these (width, height) pairs will match. All pairs must be supported ad dimensions.",
837− "items": {
838− "type": "object",
839 "properties": {
817 "properties": {
840− "height": {
818+ "items": {
841− "type": "string",
819+ "description": "A list of billing info relevant for your account.",
842− "description": "Height in pixels.",
843− "format": "int64"
844− },
845− "width": {
846− "type": "string",
847− "description": "Width in pixels.",
848− "format": "int64"
849− }
850− }
851− }
852− },
853− "excludedContentLabels": {
854− "type": "array",
855− "description": "Requests with any of these content labels will not match. Values are from content-labels.txt in the downloadable files section.",
856− "items": {
820+ "items": {
857− "type": "string",
821+ "$ref": "BillingInfo"
858− "format": "int64"
822+ },
859− }
823+ "type": "array"
860− },
824+ },
861− "excludedGeoCriteriaIds": {
825+ "kind": {
862− "type": "array",
826+ "default": "adexchangebuyer#billingInfoList",
863− "description": "Requests containing any of these geo criteria ids will not match.",
827+ "description": "Resource type.",
864− "items": {
865− "type": "string",
828+ "type": "string"
866− "format": "int64"
829+ }
867− }
830+ },
831+ "type": "object"
868 },
832 },
869− "excludedPlacements": {
833+ "Budget": {
870− "type": "array",
834+ "description": "The configuration data for Ad Exchange RTB - Budget API.",
871− "description": "Requests containing any of these placements will not match.",
835+ "id": "Budget",
872− "items": {
873− "type": "object",
874 "properties": {
836 "properties": {
875− "token": {
837+ "accountId": {
876− "type": "string",
838+ "description": "The id of the account. This is required for get and update requests.",
877− "description": "The value of the placement. Interpretation depends on the placement type, e.g. URL for a site placement, channel name for a channel placement, app id for a mobile app placement."
839+ "format": "int64",
878− },
879− "type": {
880− "type": "string",
840+ "type": "string"
881− "description": "The type of the placement."
841+ },
882− }
842+ "billingId": {
883− }
843+ "description": "The billing id to determine which adgroup to provide budget information for. This is required for get and update requests.",
884− }
844+ "format": "int64",
885− },
845+ "type": "string"
886− "excludedUserLists": {
887− "type": "array",
888− "description": "Requests containing any of these users list ids will not match.",
889− "items": {
890− "type": "string",
891− "format": "int64"
892− }
893− },
846+ },
894− "excludedVerticals": {
847+ "budgetAmount": {
895− "type": "array",
848+ "description": "The daily budget amount in unit amount of the account currency to apply for the billingId provided. This is required for update requests.",
896− "description": "Requests containing any of these vertical ids will not match. Values are from the publisher-verticals.txt file in the downloadable files section.",
849+ "format": "int64",
897− "items": {
850+ "type": "string"
898− "type": "string",
899− "format": "int64"
900− }
901− },
851+ },
902− "geoCriteriaIds": {
852+ "currencyCode": {
903− "type": "array",
853+ "description": "The currency code for the buyer. This cannot be altered here.",
904− "description": "Requests containing any of these geo criteria ids will match.",
905− "items": {
906− "type": "string",
854+ "type": "string"
907− "format": "int64"
908− }
909− },
855+ },
910− "isActive": {
856+ "id": {
911− "type": "boolean",
857+ "description": "The unique id that describes this item.",
912− "description": "Whether this config is active. Required for all requests."
858+ "type": "string"
913− },
859+ },
914− "kind": {
860+ "kind": {
915− "type": "string",
861+ "default": "adexchangebuyer#budget",
916− "description": "The kind of the resource, i.e. \"adexchangebuyer#pretargetingConfig\".",
862+ "description": "The kind of the resource, i.e. \"adexchangebuyer#budget\".",
917− "default": "adexchangebuyer#pretargetingConfig"
918− },
919− "languages": {
920− "type": "array",
921− "description": "Request containing any of these language codes will match.",
922− "items": {
923− "type": "string"
863+ "type": "string"
924− }
925− },
864+ }
926− "mobileCarriers": {
927− "type": "array",
928− "description": "Requests containing any of these mobile carrier ids will match. Values are from mobile-carriers.csv in the downloadable files section.",
929− "items": {
930− "type": "string",
931− "format": "int64"
932− }
933− },
865+ },
934− "mobileDevices": {
935− "type": "array",
936− "description": "Requests containing any of these mobile device ids will match. Values are from mobile-devices.csv in the downloadable files section.",
937− "items": {
938− "type": "string",
866+ "type": "object"
939− "format": "int64"
940− }
941− },
942− "mobileOperatingSystemVersions": {
943− "type": "array",
944− "description": "Requests containing any of these mobile operating system version ids will match. Values are from mobile-os.csv in the downloadable files section.",
945− "items": {
946− "type": "string",
947− "format": "int64"
948− }
949 },
867 },
950− "placements": {
868+ "Creative": {
951− "type": "array",
869+ "description": "A creative and its classification data.",
952− "description": "Requests containing any of these placements will match.",
870+ "id": "Creative",
953− "items": {
954− "type": "object",
955 "properties": {
871 "properties": {
956− "token": {
872+ "HTMLSnippet": {
957− "type": "string",
873+ "description": "The HTML snippet that displays the ad when inserted in the web page. If set, videoURL should not be set.",
958− "description": "The value of the placement. Interpretation depends on the placement type, e.g. URL for a site placement, channel name for a channel placement, app id for a mobile app placement."
874+ "type": "string"
959− },
875+ },
960− "type": {
876+ "accountId": {
961− "type": "string",
877+ "annotations": {
962− "description": "The type of the placement."
878+ "required": [
963− }
879+ "adexchangebuyer.creatives.insert"
964− }
880+ ]
965− }
881+ },
966− },
882+ "description": "Account id.",
967− "platforms": {
883+ "format": "int32",
968− "type": "array",
884+ "type": "integer"
969− "description": "Requests matching any of these platforms will match. Possible values are PRETARGETING_PLATFORM_MOBILE, PRETARGETING_PLATFORM_DESKTOP, and PRETARGETING_PLATFORM_TABLET.",
885+ },
970− "items": {
886+ "advertiserId": {
971− "type": "string"
887+ "description": "Detected advertiser id, if any. Read-only. This field should not be set in requests.",
972− }
888+ "items": {
973− },
889+ "format": "int64",
974− "supportedCreativeAttributes": {
890+ "type": "string"
975− "type": "array",
891+ },
976− "description": "Creative attributes should be declared here if all creatives corresponding to this pretargeting configuration have that creative attribute. Values are from pretargetable-creative-attributes.txt in the downloadable files section.",
892+ "type": "array"
977− "items": {
893+ },
978− "type": "string",
894+ "advertiserName": {
979− "format": "int64"
895+ "annotations": {
980− }
896+ "required": [
981− },
897+ "adexchangebuyer.creatives.insert"
982− "userLists": {
898+ ]
983− "type": "array",
899+ },
984− "description": "Requests containing any of these user list ids will match.",
900+ "description": "The name of the company being advertised in the creative.",
985− "items": {
901+ "type": "string"
986− "type": "string",
902+ },
987− "format": "int64"
903+ "agencyId": {
988− }
904+ "description": "The agency id for this creative.",
989− },
905+ "format": "int64",
990− "vendorTypes": {
906+ "type": "string"
991− "type": "array",
907+ },
992− "description": "Requests that allow any of these vendor ids will match. Values are from vendors.txt in the downloadable files section.",
908+ "apiUploadTimestamp": {
993− "items": {
909+ "description": "The last upload timestamp of this creative if it was uploaded via API. Read-only. The value of this field is generated, and will be ignored for uploads. (formatted RFC 3339 timestamp).",
994− "type": "string",
910+ "format": "date-time",
995− "format": "int64"
911+ "type": "string"
996− }
912+ },
997− },
913+ "attribute": {
998− "verticals": {
914+ "description": "All attributes for the ads that may be shown from this snippet.",
999− "type": "array",
915+ "items": {
1000− "description": "Requests containing any of these vertical ids will match.",
916+ "format": "int32",
1001− "items": {
917+ "type": "integer"
1002− "type": "string",
918+ },
1003− "format": "int64"
919+ "type": "array"
1004− }
920+ },
1005− }
921+ "buyerCreativeId": {
1006− }
922+ "annotations": {
1007− },
923+ "required": [
1008− "PretargetingConfigList": {
924+ "adexchangebuyer.creatives.insert"
1009− "id": "PretargetingConfigList",
925+ ]
1010− "type": "object",
926+ },
1011− "properties": {
927+ "description": "A buyer-specific id identifying the creative in this ad.",
1012− "items": {
928+ "type": "string"
1013− "type": "array",
929+ },
1014− "description": "A list of pretargeting configs",
930+ "clickThroughUrl": {
1015− "items": {
931+ "annotations": {
1016− "$ref": "PretargetingConfig"
932+ "required": [
1017− }
933+ "adexchangebuyer.creatives.insert"
1018− },
934+ ]
1019− "kind": {
935+ },
1020− "type": "string",
936+ "description": "The set of destination urls for the snippet.",
1021− "description": "Resource type.",
937+ "items": {
1022− "default": "adexchangebuyer#pretargetingConfigList"
938+ "type": "string"
1023− }
939+ },
1024− }
940+ "type": "array"
1025− }
941+ },
1026− },
942+ "corrections": {
1027− "resources": {
943+ "description": "Shows any corrections that were applied to this creative. Read-only. This field should not be set in requests.",
1028− "accounts": {
944+ "items": {
1029− "methods": {
945+ "properties": {
1030− "get": {
946+ "details": {
1031− "id": "adexchangebuyer.accounts.get",
947+ "description": "Additional details about the correction.",
1032− "path": "accounts/{id}",
948+ "items": {
1033− "httpMethod": "GET",
949+ "type": "string"
1034− "description": "Gets one account by ID.",
950+ },
1035− "parameters": {
951+ "type": "array"
1036− "id": {
952+ },
1037− "type": "integer",
953+ "reason": {
1038− "description": "The account id",
954+ "description": "The type of correction that was applied to the creative.",
1039− "required": true,
955+ "type": "string"
1040− "format": "int32",
956+ }
1041− "location": "path"
957+ },
1042− }
958+ "type": "object"
1043− },
959+ },
1044− "parameterOrder": [
960+ "type": "array"
1045− "id"
961+ },
1046− ],
962+ "disapprovalReasons": {
1047− "response": {
963+ "description": "The reasons for disapproval, if any. Note that not all disapproval reasons may be categorized, so it is possible for the creative to have a status of DISAPPROVED with an empty list for disapproval_reasons. In this case, please reach out to your TAM to help debug the issue. Read-only. This field should not be set in requests.",
1048− "$ref": "Account"
964+ "items": {
1049− },
965+ "properties": {
1050− "scopes": [
966+ "details": {
1051− "https://www.googleapis.com/auth/adexchange.buyer"
967+ "description": "Additional details about the reason for disapproval.",
1052− ]
968+ "items": {
1053− },
969+ "type": "string"
1054− "list": {
970+ },
1055− "id": "adexchangebuyer.accounts.list",
971+ "type": "array"
1056− "path": "accounts",
972+ },
1057− "httpMethod": "GET",
973+ "reason": {
1058− "description": "Retrieves the authenticated user's list of accounts.",
974+ "description": "The categorized reason for disapproval.",
1059− "response": {
975+ "type": "string"
1060− "$ref": "AccountsList"
976+ }
1061− },
977+ },
1062− "scopes": [
978+ "type": "object"
1063− "https://www.googleapis.com/auth/adexchange.buyer"
979+ },
1064− ]
980+ "type": "array"
1065− },
981+ },
1066− "patch": {
982+ "filteringReasons": {
1067− "id": "adexchangebuyer.accounts.patch",
983+ "description": "The filtering reasons for the creative. Read-only. This field should not be set in requests.",
1068− "path": "accounts/{id}",
984+ "properties": {
1069− "httpMethod": "PATCH",
985+ "date": {
1070− "description": "Updates an existing account. This method supports patch semantics.",
986+ "description": "The date in ISO 8601 format for the data. The data is collected from 00:00:00 to 23:59:59 in PST.",
1071− "parameters": {
987+ "type": "string"
1072− "id": {
988+ },
1073− "type": "integer",
989+ "reasons": {
1074− "description": "The account id",
990+ "description": "The filtering reasons.",
1075− "required": true,
991+ "items": {
1076− "format": "int32",
992+ "properties": {
1077− "location": "path"
993+ "filteringCount": {
1078− }
994+ "description": "The number of times the creative was filtered for the status. The count is aggregated across all publishers on the exchange.",
1079− },
995+ "format": "int64",
1080− "parameterOrder": [
996+ "type": "string"
1081− "id"
997+ },
1082− ],
998+ "filteringStatus": {
1083− "request": {
999+ "description": "The filtering status code. Please refer to the creative-status-codes.txt file for different statuses.",
1084− "$ref": "Account"
1000+ "format": "int32",
1085− },
1001+ "type": "integer"
1086− "response": {
1002+ }
1087− "$ref": "Account"
1003+ },
1088− },
1004+ "type": "object"
1089− "scopes": [
1005+ },
1090− "https://www.googleapis.com/auth/adexchange.buyer"
1006+ "type": "array"
1091− ]
1007+ }
1092− },
1008+ },
1093− "update": {
1009+ "type": "object"
1094− "id": "adexchangebuyer.accounts.update",
1010+ },
1095− "path": "accounts/{id}",
1011+ "height": {
1096− "httpMethod": "PUT",
1012+ "annotations": {
1097− "description": "Updates an existing account.",
1013+ "required": [
1098− "parameters": {
1014+ "adexchangebuyer.creatives.insert"
1099− "id": {
1015+ ]
1100− "type": "integer",
1016+ },
1101− "description": "The account id",
1017+ "description": "Ad height.",
1102− "required": true,
1018+ "format": "int32",
1103− "format": "int32",
1019+ "type": "integer"
1104− "location": "path"
1020+ },
1105− }
1021+ "impressionTrackingUrl": {
1106− },
1022+ "description": "The set of urls to be called to record an impression.",
1107− "parameterOrder": [
1023+ "items": {
1108− "id"
1024+ "type": "string"
1109− ],
1025+ },
1110− "request": {
1026+ "type": "array"
1111− "$ref": "Account"
1027+ },
1112− },
1028+ "kind": {
1113− "response": {
1029+ "default": "adexchangebuyer#creative",
1114− "$ref": "Account"
1030+ "description": "Resource type.",
1115− },
1031+ "type": "string"
1116− "scopes": [
1032+ },
1117− "https://www.googleapis.com/auth/adexchange.buyer"
1033+ "nativeAd": {
1118− ]
1034+ "description": "If nativeAd is set, HTMLSnippet and videoURL should not be set.",
1119− }
1035+ "properties": {
1120− }
1036+ "advertiser": {
1121− },
1037+ "type": "string"
1122− "billingInfo": {
1038+ },
1123− "methods": {
1039+ "appIcon": {
1124− "get": {
1040+ "description": "The app icon, for app download ads.",
1125− "id": "adexchangebuyer.billingInfo.get",
1041+ "properties": {
1126− "path": "billinginfo/{accountId}",
1042+ "height": {
1127− "httpMethod": "GET",
1043+ "format": "int32",
1128− "description": "Returns the billing information for one account specified by account ID.",
1044+ "type": "integer"
1129− "parameters": {
1045+ },
1130− "accountId": {
1046+ "url": {
1131− "type": "integer",
1047+ "type": "string"
1132− "description": "The account id.",
1048+ },
1133− "required": true,
1049+ "width": {
1134− "format": "int32",
1050+ "format": "int32",
1135− "location": "path"
1051+ "type": "integer"
1136− }
1052+ }
1137− },
1053+ },
1138− "parameterOrder": [
1054+ "type": "object"
1139− "accountId"
1055+ },
1140− ],
1056+ "body": {
1141− "response": {
1057+ "description": "A long description of the ad.",
1142− "$ref": "BillingInfo"
1058+ "type": "string"
1143− },
1059+ },
1144− "scopes": [
1060+ "callToAction": {
1145− "https://www.googleapis.com/auth/adexchange.buyer"
1061+ "description": "A label for the button that the user is supposed to click.",
1146− ]
1062+ "type": "string"
1147− },
1063+ },
1148− "list": {
1064+ "clickTrackingUrl": {
1149− "id": "adexchangebuyer.billingInfo.list",
1065+ "description": "The URL to use for click tracking.",
1150− "path": "billinginfo",
1066+ "type": "string"
1151− "httpMethod": "GET",
1067+ },
1152− "description": "Retrieves a list of billing information for all accounts of the authenticated user.",
1068+ "headline": {
1153− "response": {
1069+ "description": "A short title for the ad.",
1154− "$ref": "BillingInfoList"
1070+ "type": "string"
1155− },
1071+ },
1156− "scopes": [
1072+ "image": {
1157− "https://www.googleapis.com/auth/adexchange.buyer"
1073+ "description": "A large image.",
1158− ]
1074+ "properties": {
1159− }
1075+ "height": {
1160− }
1076+ "format": "int32",
1161− },
1077+ "type": "integer"
1162− "budget": {
1078+ },
1163− "methods": {
1079+ "url": {
1164− "get": {
1080+ "type": "string"
1165− "id": "adexchangebuyer.budget.get",
1081+ },
1166− "path": "billinginfo/{accountId}/{billingId}",
1082+ "width": {
1167− "httpMethod": "GET",
1083+ "format": "int32",
1168− "description": "Returns the budget information for the adgroup specified by the accountId and billingId.",
1084+ "type": "integer"
1169− "parameters": {
1085+ }
1170− "accountId": {
1086+ },
1171− "type": "string",
1087+ "type": "object"
1172− "description": "The account id to get the budget information for.",
1088+ },
1173− "required": true,
1089+ "impressionTrackingUrl": {
1174− "format": "int64",
1090+ "description": "The URLs are called when the impression is rendered.",
1175− "location": "path"
1091+ "items": {
1092+ "type": "string"
1093+ },
1094+ "type": "array"
1095+ },
1096+ "logo": {
1097+ "description": "A smaller image, for the advertiser logo.",
1098+ "properties": {
1099+ "height": {
1100+ "format": "int32",
1101+ "type": "integer"
1102+ },
1103+ "url": {
1104+ "type": "string"
1105+ },
1106+ "width": {
1107+ "format": "int32",
1108+ "type": "integer"
1109+ }
1110+ },
1111+ "type": "object"
1112+ },
1113+ "price": {
1114+ "description": "The price of the promoted app including the currency info.",
1115+ "type": "string"
1116+ },
1117+ "starRating": {
1118+ "description": "The app rating in the app store. Must be in the range [0-5].",
1119+ "format": "double",
1120+ "type": "number"
1121+ },
1122+ "store": {
1123+ "description": "The URL to the app store to purchase/download the promoted app.",
1124+ "type": "string"
1125+ }
1126+ },
1127+ "type": "object"
1128+ },
1129+ "productCategories": {
1130+ "description": "Detected product categories, if any. Read-only. This field should not be set in requests.",
1131+ "items": {
1132+ "format": "int32",
1133+ "type": "integer"
1134+ },
1135+ "type": "array"
1136+ },
1137+ "restrictedCategories": {
1138+ "description": "All restricted categories for the ads that may be shown from this snippet.",
1139+ "items": {
1140+ "format": "int32",
1141+ "type": "integer"
1142+ },
1143+ "type": "array"
1144+ },
1145+ "sensitiveCategories": {
1146+ "description": "Detected sensitive categories, if any. Read-only. This field should not be set in requests.",
1147+ "items": {
1148+ "format": "int32",
1149+ "type": "integer"
1150+ },
1151+ "type": "array"
1152+ },
1153+ "status": {
1154+ "description": "Creative serving status. Read-only. This field should not be set in requests.",
1155+ "type": "string"
1156+ },
1157+ "vendorType": {
1158+ "description": "All vendor types for the ads that may be shown from this snippet.",
1159+ "items": {
1160+ "format": "int32",
1161+ "type": "integer"
1162+ },
1163+ "type": "array"
1164+ },
1165+ "version": {
1166+ "description": "The version for this creative. Read-only. This field should not be set in requests.",
1167+ "format": "int32",
1168+ "type": "integer"
1169+ },
1170+ "videoURL": {
1171+ "description": "The URL to fetch a video ad. If set, HTMLSnippet and the nativeAd should not be set.",
1172+ "type": "string"
1173+ },
1174+ "width": {
1175+ "annotations": {
1176+ "required": [
1177+ "adexchangebuyer.creatives.insert"
1178+ ]
1179+ },
1180+ "description": "Ad width.",
1181+ "format": "int32",
1182+ "type": "integer"
1183+ }
1176 },
1184 },
1177− "billingId": {
1185+ "type": "object"
1178− "type": "string",
1179− "description": "The billing id to get the budget information for.",
1180− "required": true,
1181− "format": "int64",
1182− "location": "path"
1183− }
1184− },
1185− "parameterOrder": [
1186− "accountId",
1187− "billingId"
1188− ],
1189− "response": {
1190− "$ref": "Budget"
1191− },
1192− "scopes": [
1193− "https://www.googleapis.com/auth/adexchange.buyer"
1194− ]
1195 },
1186 },
1196− "patch": {
1187+ "CreativesList": {
1197− "id": "adexchangebuyer.budget.patch",
1188+ "description": "The creatives feed lists the active creatives for the Ad Exchange buyer accounts that the user has access to. Each entry in the feed corresponds to a single creative.",
1198− "path": "billinginfo/{accountId}/{billingId}",
1189+ "id": "CreativesList",
1199− "httpMethod": "PATCH",
1190+ "properties": {
1200− "description": "Updates the budget amount for the budget of the adgroup specified by the accountId and billingId, with the budget amount in the request. This method supports patch semantics.",
1191+ "items": {
1201− "parameters": {
1192+ "description": "A list of creatives.",
1202− "accountId": {
1193+ "items": {
1203− "type": "string",
1194+ "$ref": "Creative"
1204− "description": "The account id associated with the budget being updated.",
1195+ },
1205− "required": true,
1196+ "type": "array"
1206− "format": "int64",
1197+ },
1207− "location": "path"
1198+ "kind": {
1199+ "default": "adexchangebuyer#creativesList",
1200+ "description": "Resource type.",
1201+ "type": "string"
1202+ },
1203+ "nextPageToken": {
1204+ "description": "Continuation token used to page through creatives. To retrieve the next page of results, set the next request's \"pageToken\" value to this.",
1205+ "type": "string"
1206+ }
1208 },
1207 },
1209− "billingId": {
1208+ "type": "object"
1210− "type": "string",
1211− "description": "The billing id associated with the budget being updated.",
1212− "required": true,
1213− "format": "int64",
1214− "location": "path"
1215− }
1216− },
1217− "parameterOrder": [
1218− "accountId",
1219− "billingId"
1220− ],
1221− "request": {
1222− "$ref": "Budget"
1223− },
1224− "response": {
1225− "$ref": "Budget"
1226− },
1227− "scopes": [
1228− "https://www.googleapis.com/auth/adexchange.buyer"
1229− ]
1230 },
1209 },
1231− "update": {
1210+ "DirectDeal": {
1232− "id": "adexchangebuyer.budget.update",
1211+ "description": "The configuration data for an Ad Exchange direct deal.",
1233− "path": "billinginfo/{accountId}/{billingId}",
1212+ "id": "DirectDeal",
1234− "httpMethod": "PUT",
1213+ "properties": {
1235− "description": "Updates the budget amount for the budget of the adgroup specified by the accountId and billingId, with the budget amount in the request.",
1214+ "accountId": {
1236− "parameters": {
1215+ "description": "The account id of the buyer this deal is for.",
1237− "accountId": {
1216+ "format": "int32",
1238− "type": "string",
1217+ "type": "integer"
1239− "description": "The account id associated with the budget being updated.",
1218+ },
1240− "required": true,
1219+ "advertiser": {
1241− "format": "int64",
1220+ "description": "The name of the advertiser this deal is for.",
1242− "location": "path"
1221+ "type": "string"
1243− },
1222+ },
1244− "billingId": {
1223+ "allowsAlcohol": {
1245− "type": "string",
1224+ "description": "Whether the publisher for this deal is eligible for alcohol ads.",
1246− "description": "The billing id associated with the budget being updated.",
1225+ "type": "boolean"
1247− "required": true,
1226+ },
1248− "format": "int64",
1227+ "buyerAccountId": {
1249− "location": "path"
1228+ "description": "The account id that this deal was negotiated for. It is either the buyer or the client that this deal was negotiated on behalf of.",
1250− }
1229+ "format": "int64",
1251− },
1230+ "type": "string"
1252− "parameterOrder": [
1231+ },
1253− "accountId",
1232+ "currencyCode": {
1254− "billingId"
1233+ "description": "The currency code that applies to the fixed_cpm value. If not set then assumed to be USD.",
1255− ],
1234+ "type": "string"
1256− "request": {
1235+ },
1257− "$ref": "Budget"
1236+ "dealTier": {
1258− },
1237+ "description": "The deal type such as programmatic reservation or fixed price and so on.",
1259− "response": {
1238+ "type": "string"
1260− "$ref": "Budget"
1239+ },
1261− },
1240+ "endTime": {
1262− "scopes": [
1241+ "description": "End time for when this deal stops being active. If not set then this deal is valid until manually disabled by the publisher. In seconds since the epoch.",
1263− "https://www.googleapis.com/auth/adexchange.buyer"
1242+ "format": "int64",
1264− ]
1243+ "type": "string"
1265− }
1244+ },
1266− }
1245+ "fixedCpm": {
1267− },
1246+ "description": "The fixed price for this direct deal. In cpm micros of currency according to currency_code. If set, then this deal is eligible for the fixed price tier of buying (highest priority, pay exactly the configured fixed price).",
1268− "creatives": {
1247+ "format": "int64",
1269− "methods": {
1248+ "type": "string"
1270− "get": {
1249+ },
1271− "id": "adexchangebuyer.creatives.get",
1250+ "id": {
1272− "path": "creatives/{accountId}/{buyerCreativeId}",
1251+ "description": "Deal id.",
1273− "httpMethod": "GET",
1252+ "format": "int64",
1274− "description": "Gets the status for a single creative. A creative will be available 30-40 minutes after submission.",
1253+ "type": "string"
1275− "parameters": {
1254+ },
1276− "accountId": {
1255+ "kind": {
1277− "type": "integer",
1256+ "default": "adexchangebuyer#directDeal",
1278− "description": "The id for the account that will serve this creative.",
1257+ "description": "Resource type.",
1279− "required": true,
1258+ "type": "string"
1280− "format": "int32",
1259+ },
1281− "location": "path"
1260+ "name": {
1261+ "description": "Deal name.",
1262+ "type": "string"
1263+ },
1264+ "privateExchangeMinCpm": {
1265+ "description": "The minimum price for this direct deal. In cpm micros of currency according to currency_code. If set, then this deal is eligible for the private exchange tier of buying (below fixed price priority, run as a second price auction).",
1266+ "format": "int64",
1267+ "type": "string"
1268+ },
1269+ "publisherBlocksOverriden": {
1270+ "description": "If true, the publisher has opted to have their blocks ignored when a creative is bid with for this deal.",
1271+ "type": "boolean"
1272+ },
1273+ "sellerNetwork": {
1274+ "description": "The name of the publisher offering this direct deal.",
1275+ "type": "string"
1276+ },
1277+ "startTime": {
1278+ "description": "Start time for when this deal becomes active. If not set then this deal is active immediately upon creation. In seconds since the epoch.",
1279+ "format": "int64",
1280+ "type": "string"
1281+ }
1282 },
1282 },
1283− "buyerCreativeId": {
1283+ "type": "object"
1284− "type": "string",
1285− "description": "The buyer-specific id for this creative.",
1286− "required": true,
1287− "location": "path"
1288− }
1289− },
1290− "parameterOrder": [
1291− "accountId",
1292− "buyerCreativeId"
1293− ],
1294− "response": {
1295− "$ref": "Creative"
1296− },
1297− "scopes": [
1298− "https://www.googleapis.com/auth/adexchange.buyer"
1299− ]
1300 },
1284 },
1301− "insert": {
1285+ "DirectDealsList": {
1302− "id": "adexchangebuyer.creatives.insert",
1286+ "description": "A direct deals feed lists Direct Deals the Ad Exchange buyer account has access to. This includes direct deals set up for the buyer account as well as its merged stream seats.",
1303− "path": "creatives",
1287+ "id": "DirectDealsList",
1304− "httpMethod": "POST",
1288+ "properties": {
1305− "description": "Submit a new creative.",
1289+ "directDeals": {
1306− "request": {
1290+ "description": "A list of direct deals relevant for your account.",
1307− "$ref": "Creative"
1291+ "items": {
1308− },
1292+ "$ref": "DirectDeal"
1309− "response": {
1293+ },
1310− "$ref": "Creative"
1294+ "type": "array"
1311− },
1295+ },
1312− "scopes": [
1296+ "kind": {
1313− "https://www.googleapis.com/auth/adexchange.buyer"
1297+ "default": "adexchangebuyer#directDealsList",
1314− ]
1298+ "description": "Resource type.",
1315− },
1299+ "type": "string"
1316− "list": {
1300+ }
1317− "id": "adexchangebuyer.creatives.list",
1318− "path": "creatives",
1319− "httpMethod": "GET",
1320− "description": "Retrieves a list of the authenticated user's active creatives. A creative will be available 30-40 minutes after submission.",
1321− "parameters": {
1322− "accountId": {
1323− "type": "integer",
1324− "description": "When specified, only creatives for the given account ids are returned.",
1325− "format": "int32",
1326− "repeated": true,
1327− "location": "query"
1328− },
1329− "buyerCreativeId": {
1330− "type": "string",
1331− "description": "When specified, only creatives for the given buyer creative ids are returned.",
1332− "repeated": true,
1333− "location": "query"
1334− },
1335− "maxResults": {
1336− "type": "integer",
1337− "description": "Maximum number of entries returned on one result page. If not set, the default is 100. Optional.",
1338− "format": "uint32",
1339− "minimum": "1",
1340− "maximum": "1000",
1341− "location": "query"
1342− },
1343− "pageToken": {
1344− "type": "string",
1345− "description": "A continuation token, used to page through ad clients. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response. Optional.",
1346− "location": "query"
1347 },
1301 },
1348− "statusFilter": {
1302+ "type": "object"
1349− "type": "string",
1350− "description": "When specified, only creatives having the given status are returned.",
1351− "enum": [
1352− "approved",
1353− "disapproved",
1354− "not_checked"
1355− ],
1356− "enumDescriptions": [
1357− "Creatives which have been approved.",
1358− "Creatives which have been disapproved.",
1359− "Creatives whose status is not yet checked."
1360− ],
1361− "location": "query"
1362− }
1363− },
1364− "response": {
1365− "$ref": "CreativesList"
1366− },
1367− "scopes": [
1368− "https://www.googleapis.com/auth/adexchange.buyer"
1369− ]
1370− }
1371− }
1372− },
1373− "directDeals": {
1374− "methods": {
1375− "get": {
1376− "id": "adexchangebuyer.directDeals.get",
1377− "path": "directdeals/{id}",
1378− "httpMethod": "GET",
1379− "description": "Gets one direct deal by ID.",
1380− "parameters": {
1381− "id": {
1382− "type": "string",
1383− "description": "The direct deal id",
1384− "required": true,
1385− "format": "int64",
1386− "location": "path"
1387− }
1388− },
1389− "parameterOrder": [
1390− "id"
1391− ],
1392− "response": {
1393− "$ref": "DirectDeal"
1394− },
1395− "scopes": [
1396− "https://www.googleapis.com/auth/adexchange.buyer"
1397− ]
1398 },
1303 },
1399− "list": {
1304+ "PerformanceReport": {
1400− "id": "adexchangebuyer.directDeals.list",
1305+ "description": "The configuration data for an Ad Exchange performance report list.",
1401− "path": "directdeals",
1306+ "id": "PerformanceReport",
1402− "httpMethod": "GET",
1307+ "properties": {
1403− "description": "Retrieves the authenticated user's list of direct deals.",
1308+ "bidRate": {
1404− "response": {
1309+ "description": "The number of bid responses with an ad.",
1405− "$ref": "DirectDealsList"
1310+ "format": "double",
1406− },
1311+ "type": "number"
1407− "scopes": [
1312+ },
1408− "https://www.googleapis.com/auth/adexchange.buyer"
1313+ "bidRequestRate": {
1409− ]
1314+ "description": "The number of bid requests sent to your bidder.",
1410− }
1315+ "format": "double",
1411− }
1316+ "type": "number"
1412− },
1317+ },
1413− "performanceReport": {
1318+ "calloutStatusRate": {
1414− "methods": {
1319+ "description": "Rate of various prefiltering statuses per match. Please refer to the callout-status-codes.txt file for different statuses.",
1415− "list": {
1320+ "items": {
1416− "id": "adexchangebuyer.performanceReport.list",
1321+ "type": "any"
1417− "path": "performancereport",
1322+ },
1418− "httpMethod": "GET",
1323+ "type": "array"
1419− "description": "Retrieves the authenticated user's list of performance metrics.",
1324+ },
1420− "parameters": {
1325+ "cookieMatcherStatusRate": {
1421− "accountId": {
1326+ "description": "Average QPS for cookie matcher operations.",
1422− "type": "string",
1327+ "items": {
1423− "description": "The account id to get the reports.",
1328+ "type": "any"
1424− "required": true,
1329+ },
1425− "format": "int64",
1330+ "type": "array"
1426− "location": "query"
1331+ },
1427− },
1332+ "creativeStatusRate": {
1428− "endDateTime": {
1333+ "description": "Rate of ads with a given status. Please refer to the creative-status-codes.txt file for different statuses.",
1429− "type": "string",
1334+ "items": {
1430− "description": "The end time of the report in ISO 8601 timestamp format using UTC.",
1335+ "type": "any"
1431− "required": true,
1336+ },
1432− "location": "query"
1337+ "type": "array"
1433− },
1338+ },
1434− "maxResults": {
1339+ "filteredBidRate": {
1435− "type": "integer",
1340+ "description": "The number of bid responses that were filtered due to a policy violation or other errors.",
1436− "description": "Maximum number of entries returned on one result page. If not set, the default is 100. Optional.",
1341+ "format": "double",
1437− "format": "uint32",
1342+ "type": "number"
1438− "minimum": "1",
1343+ },
1439− "maximum": "1000",
1344+ "hostedMatchStatusRate": {
1440− "location": "query"
1345+ "description": "Average QPS for hosted match operations.",
1441− },
1346+ "items": {
1442− "pageToken": {
1347+ "type": "any"
1443− "type": "string",
1348+ },
1444− "description": "A continuation token, used to page through performance reports. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response. Optional.",
1349+ "type": "array"
1445− "location": "query"
1350+ },
1446− },
1351+ "inventoryMatchRate": {
1447− "startDateTime": {
1352+ "description": "The number of potential queries based on your pretargeting settings.",
1448− "type": "string",
1353+ "format": "double",
1449− "description": "The start time of the report in ISO 8601 timestamp format using UTC.",
1354+ "type": "number"
1450− "required": true,
1355+ },
1451− "location": "query"
1356+ "kind": {
1452− }
1357+ "default": "adexchangebuyer#performanceReport",
1453− },
1358+ "description": "Resource type.",
1454− "parameterOrder": [
1359+ "type": "string"
1455− "accountId",
1360+ },
1456− "endDateTime",
1361+ "latency50thPercentile": {
1457− "startDateTime"
1362+ "description": "The 50th percentile round trip latency(ms) as perceived from Google servers for the duration period covered by the report.",
1458− ],
1363+ "format": "double",
1459− "response": {
1364+ "type": "number"
1460− "$ref": "PerformanceReportList"
1365+ },
1461− },
1366+ "latency85thPercentile": {
1462− "scopes": [
1367+ "description": "The 85th percentile round trip latency(ms) as perceived from Google servers for the duration period covered by the report.",
1463− "https://www.googleapis.com/auth/adexchange.buyer"
1368+ "format": "double",
1464− ]
1369+ "type": "number"
1465− }
1370+ },
1466− }
1371+ "latency95thPercentile": {
1467− },
1372+ "description": "The 95th percentile round trip latency(ms) as perceived from Google servers for the duration period covered by the report.",
1468− "pretargetingConfig": {
1373+ "format": "double",
1469− "methods": {
1374+ "type": "number"
1470− "delete": {
1375+ },
1471− "id": "adexchangebuyer.pretargetingConfig.delete",
1376+ "noQuotaInRegion": {
1472− "path": "pretargetingconfigs/{accountId}/{configId}",
1377+ "description": "Rate of various quota account statuses per quota check.",
1473− "httpMethod": "DELETE",
1378+ "format": "double",
1474− "description": "Deletes an existing pretargeting config.",
1379+ "type": "number"
1475− "parameters": {
1380+ },
1476− "accountId": {
1381+ "outOfQuota": {
1477− "type": "string",
1382+ "description": "Rate of various quota account statuses per quota check.",
1478− "description": "The account id to delete the pretargeting config for.",
1383+ "format": "double",
1479− "required": true,
1384+ "type": "number"
1480− "format": "int64",
1385+ },
1481− "location": "path"
1386+ "pixelMatchRequests": {
1387+ "description": "Average QPS for pixel match requests from clients.",
1388+ "format": "double",
1389+ "type": "number"
1390+ },
1391+ "pixelMatchResponses": {
1392+ "description": "Average QPS for pixel match responses from clients.",
1393+ "format": "double",
1394+ "type": "number"
1395+ },
1396+ "quotaConfiguredLimit": {
1397+ "description": "The configured quota limits for this account.",
1398+ "format": "double",
1399+ "type": "number"
1400+ },
1401+ "quotaThrottledLimit": {
1402+ "description": "The throttled quota limits for this account.",
1403+ "format": "double",
1404+ "type": "number"
1405+ },
1406+ "region": {
1407+ "description": "The trading location of this data.",
1408+ "type": "string"
1409+ },
1410+ "successfulRequestRate": {
1411+ "description": "The number of properly formed bid responses received by our servers within the deadline.",
1412+ "format": "double",
1413+ "type": "number"
1414+ },
1415+ "timestamp": {
1416+ "description": "The unix timestamp of the starting time of this performance data.",
1417+ "format": "int64",
1418+ "type": "string"
1419+ },
1420+ "unsuccessfulRequestRate": {
1421+ "description": "The number of bid responses that were unsuccessful due to timeouts, incorrect formatting, etc.",
1422+ "format": "double",
1423+ "type": "number"
1424+ }
1482 },
1425 },
1483− "configId": {
1426+ "type": "object"
1484− "type": "string",
1485− "description": "The specific id of the configuration to delete.",
1486− "required": true,
1487− "format": "int64",
1488− "location": "path"
1489− }
1490− },
1491− "parameterOrder": [
1492− "accountId",
1493− "configId"
1494− ],
1495− "scopes": [
1496− "https://www.googleapis.com/auth/adexchange.buyer"
1497− ]
1498 },
1427 },
1499− "get": {
1428+ "PerformanceReportList": {
1500− "id": "adexchangebuyer.pretargetingConfig.get",
1429+ "description": "The configuration data for an Ad Exchange performance report list.",
1501− "path": "pretargetingconfigs/{accountId}/{configId}",
1430+ "id": "PerformanceReportList",
1502− "httpMethod": "GET",
1431+ "properties": {
1503− "description": "Gets a specific pretargeting configuration",
1432+ "kind": {
1504− "parameters": {
1433+ "default": "adexchangebuyer#performanceReportList",
1505− "accountId": {
1434+ "description": "Resource type.",
1506− "type": "string",
1435+ "type": "string"
1507− "description": "The account id to get the pretargeting config for.",
1436+ },
1508− "required": true,
1437+ "performanceReport": {
1509− "format": "int64",
1438+ "description": "A list of performance reports relevant for the account.",
1510− "location": "path"
1439+ "items": {
1440+ "$ref": "PerformanceReport"
1441+ },
1442+ "type": "array"
1443+ }
1511 },
1444 },
1512− "configId": {
1445+ "type": "object"
1513− "type": "string",
1514− "description": "The specific id of the configuration to retrieve.",
1515− "required": true,
1516− "format": "int64",
1517− "location": "path"
1518− }
1519− },
1520− "parameterOrder": [
1521− "accountId",
1522− "configId"
1523− ],
1524− "response": {
1525− "$ref": "PretargetingConfig"
1526− },
1527− "scopes": [
1528− "https://www.googleapis.com/auth/adexchange.buyer"
1529− ]
1530− },
1531− "insert": {
1532− "id": "adexchangebuyer.pretargetingConfig.insert",
1533− "path": "pretargetingconfigs/{accountId}",
1534− "httpMethod": "POST",
1535− "description": "Inserts a new pretargeting configuration.",
1536− "parameters": {
1537− "accountId": {
1538− "type": "string",
1539− "description": "The account id to insert the pretargeting config for.",
1540− "required": true,
1541− "format": "int64",
1542− "location": "path"
1543− }
1544− },
1545− "parameterOrder": [
1546− "accountId"
1547− ],
1548− "request": {
1549− "$ref": "PretargetingConfig"
1550− },
1551− "response": {
1552− "$ref": "PretargetingConfig"
1553− },
1554− "scopes": [
1555− "https://www.googleapis.com/auth/adexchange.buyer"
1556− ]
1557− },
1558− "list": {
1559− "id": "adexchangebuyer.pretargetingConfig.list",
1560− "path": "pretargetingconfigs/{accountId}",
1561− "httpMethod": "GET",
1562− "description": "Retrieves a list of the authenticated user's pretargeting configurations.",
1563− "parameters": {
1564− "accountId": {
1565− "type": "string",
1566− "description": "The account id to get the pretargeting configs for.",
1567− "required": true,
1568− "format": "int64",
1569− "location": "path"
1570− }
1571− },
1572− "parameterOrder": [
1573− "accountId"
1574− ],
1575− "response": {
1576− "$ref": "PretargetingConfigList"
1577− },
1578− "scopes": [
1579− "https://www.googleapis.com/auth/adexchange.buyer"
1580− ]
1581 },
1446 },
1582− "patch": {
1447+ "PretargetingConfig": {
1583− "id": "adexchangebuyer.pretargetingConfig.patch",
1448+ "id": "PretargetingConfig",
1584− "path": "pretargetingconfigs/{accountId}/{configId}",
1449+ "properties": {
1585− "httpMethod": "PATCH",
1450+ "billingId": {
1586− "description": "Updates an existing pretargeting config. This method supports patch semantics.",
1451+ "description": "The id for billing purposes, provided for reference. Leave this field blank for insert requests; the id will be generated automatically.",
1587− "parameters": {
1452+ "format": "int64",
1588− "accountId": {
1453+ "type": "string"
1589− "type": "string",
1454+ },
1590− "description": "The account id to update the pretargeting config for.",
1455+ "configId": {
1591− "required": true,
1456+ "description": "The config id; generated automatically. Leave this field blank for insert requests.",
1592− "format": "int64",
1457+ "format": "int64",
1593− "location": "path"
1458+ "type": "string"
1459+ },
1460+ "configName": {
1461+ "description": "The name of the config. Must be unique. Required for all requests.",
1462+ "type": "string"
1463+ },
1464+ "creativeType": {
1465+ "description": "List must contain exactly one of PRETARGETING_CREATIVE_TYPE_HTML or PRETARGETING_CREATIVE_TYPE_VIDEO.",
1466+ "items": {
1467+ "type": "string"
1468+ },
1469+ "type": "array"
1470+ },
1471+ "dimensions": {
1472+ "description": "Requests which allow one of these (width, height) pairs will match. All pairs must be supported ad dimensions.",
1473+ "items": {
1474+ "properties": {
1475+ "height": {
1476+ "description": "Height in pixels.",
1477+ "format": "int64",
1478+ "type": "string"
1479+ },
1480+ "width": {
1481+ "description": "Width in pixels.",
1482+ "format": "int64",
1483+ "type": "string"
1484+ }
1485+ },
1486+ "type": "object"
1487+ },
1488+ "type": "array"
1489+ },
1490+ "excludedContentLabels": {
1491+ "description": "Requests with any of these content labels will not match. Values are from content-labels.txt in the downloadable files section.",
1492+ "items": {
1493+ "format": "int64",
1494+ "type": "string"
1495+ },
1496+ "type": "array"
1497+ },
1498+ "excludedGeoCriteriaIds": {
1499+ "description": "Requests containing any of these geo criteria ids will not match.",
1500+ "items": {
1501+ "format": "int64",
1502+ "type": "string"
1503+ },
1504+ "type": "array"
1505+ },
1506+ "excludedPlacements": {
1507+ "description": "Requests containing any of these placements will not match.",
1508+ "items": {
1509+ "properties": {
1510+ "token": {
1511+ "description": "The value of the placement. Interpretation depends on the placement type, e.g. URL for a site placement, channel name for a channel placement, app id for a mobile app placement.",
1512+ "type": "string"
1513+ },
1514+ "type": {
1515+ "description": "The type of the placement.",
1516+ "type": "string"
1517+ }
1518+ },
1519+ "type": "object"
1520+ },
1521+ "type": "array"
1522+ },
1523+ "excludedUserLists": {
1524+ "description": "Requests containing any of these users list ids will not match.",
1525+ "items": {
1526+ "format": "int64",
1527+ "type": "string"
1528+ },
1529+ "type": "array"
1530+ },
1531+ "excludedVerticals": {
1532+ "description": "Requests containing any of these vertical ids will not match. Values are from the publisher-verticals.txt file in the downloadable files section.",
1533+ "items": {
1534+ "format": "int64",
1535+ "type": "string"
1536+ },
1537+ "type": "array"
1538+ },
1539+ "geoCriteriaIds": {
1540+ "description": "Requests containing any of these geo criteria ids will match.",
1541+ "items": {
1542+ "format": "int64",
1543+ "type": "string"
1544+ },
1545+ "type": "array"
1546+ },
1547+ "isActive": {
1548+ "description": "Whether this config is active. Required for all requests.",
1549+ "type": "boolean"
1550+ },
1551+ "kind": {
1552+ "default": "adexchangebuyer#pretargetingConfig",
1553+ "description": "The kind of the resource, i.e. \"adexchangebuyer#pretargetingConfig\".",
1554+ "type": "string"
1555+ },
1556+ "languages": {
1557+ "description": "Request containing any of these language codes will match.",
1558+ "items": {
1559+ "type": "string"
1560+ },
1561+ "type": "array"
1562+ },
1563+ "mobileCarriers": {
1564+ "description": "Requests containing any of these mobile carrier ids will match. Values are from mobile-carriers.csv in the downloadable files section.",
1565+ "items": {
1566+ "format": "int64",
1567+ "type": "string"
1568+ },
1569+ "type": "array"
1570+ },
1571+ "mobileDevices": {
1572+ "description": "Requests containing any of these mobile device ids will match. Values are from mobile-devices.csv in the downloadable files section.",
1573+ "items": {
1574+ "format": "int64",
1575+ "type": "string"
1576+ },
1577+ "type": "array"
1578+ },
1579+ "mobileOperatingSystemVersions": {
1580+ "description": "Requests containing any of these mobile operating system version ids will match. Values are from mobile-os.csv in the downloadable files section.",
1581+ "items": {
1582+ "format": "int64",
1583+ "type": "string"
1584+ },
1585+ "type": "array"
1586+ },
1587+ "placements": {
1588+ "description": "Requests containing any of these placements will match.",
1589+ "items": {
1590+ "properties": {
1591+ "token": {
1592+ "description": "The value of the placement. Interpretation depends on the placement type, e.g. URL for a site placement, channel name for a channel placement, app id for a mobile app placement.",
1593+ "type": "string"
1594+ },
1595+ "type": {
1596+ "description": "The type of the placement.",
1597+ "type": "string"
1598+ }
1599+ },
1600+ "type": "object"
1601+ },
1602+ "type": "array"
1603+ },
1604+ "platforms": {
1605+ "description": "Requests matching any of these platforms will match. Possible values are PRETARGETING_PLATFORM_MOBILE, PRETARGETING_PLATFORM_DESKTOP, and PRETARGETING_PLATFORM_TABLET.",
1606+ "items": {
1607+ "type": "string"
1608+ },
1609+ "type": "array"
1610+ },
1611+ "supportedCreativeAttributes": {
1612+ "description": "Creative attributes should be declared here if all creatives corresponding to this pretargeting configuration have that creative attribute. Values are from pretargetable-creative-attributes.txt in the downloadable files section.",
1613+ "items": {
1614+ "format": "int64",
1615+ "type": "string"
1616+ },
1617+ "type": "array"
1618+ },
1619+ "userLists": {
1620+ "description": "Requests containing any of these user list ids will match.",
1621+ "items": {
1622+ "format": "int64",
1623+ "type": "string"
1624+ },
1625+ "type": "array"
1626+ },
1627+ "vendorTypes": {
1628+ "description": "Requests that allow any of these vendor ids will match. Values are from vendors.txt in the downloadable files section.",
1629+ "items": {
1630+ "format": "int64",
1631+ "type": "string"
1632+ },
1633+ "type": "array"
1634+ },
1635+ "verticals": {
1636+ "description": "Requests containing any of these vertical ids will match.",
1637+ "items": {
1638+ "format": "int64",
1639+ "type": "string"
1640+ },
1641+ "type": "array"
1642+ }
1594 },
1643 },
1595− "configId": {
1644+ "type": "object"
1596− "type": "string",
1597− "description": "The specific id of the configuration to update.",
1598− "required": true,
1599− "format": "int64",
1600− "location": "path"
1601− }
1602− },
1603− "parameterOrder": [
1604− "accountId",
1605− "configId"
1606− ],
1607− "request": {
1608− "$ref": "PretargetingConfig"
1609− },
1610− "response": {
1611− "$ref": "PretargetingConfig"
1612− },
1613− "scopes": [
1614− "https://www.googleapis.com/auth/adexchange.buyer"
1615− ]
1616 },
1645 },
1617− "update": {
1646+ "PretargetingConfigList": {
1618− "id": "adexchangebuyer.pretargetingConfig.update",
1647+ "id": "PretargetingConfigList",
1619− "path": "pretargetingconfigs/{accountId}/{configId}",
1648+ "properties": {
1620− "httpMethod": "PUT",
1649+ "items": {
1621− "description": "Updates an existing pretargeting config.",
1650+ "description": "A list of pretargeting configs",
1622− "parameters": {
1651+ "items": {
1623− "accountId": {
1652+ "$ref": "PretargetingConfig"
1624− "type": "string",
1653+ },
1625− "description": "The account id to update the pretargeting config for.",
1654+ "type": "array"
1626− "required": true,
1655+ },
1627− "format": "int64",
1656+ "kind": {
1628− "location": "path"
1657+ "default": "adexchangebuyer#pretargetingConfigList",
1658+ "description": "Resource type.",
1659+ "type": "string"
1660+ }
1629 },
1661 },
1630− "configId": {
1662+ "type": "object"
1631− "type": "string",
1632− "description": "The specific id of the configuration to update.",
1633− "required": true,
1634− "format": "int64",
1635− "location": "path"
1636− }
1637− },
1638− "parameterOrder": [
1639− "accountId",
1640− "configId"
1641− ],
1642− "request": {
1643− "$ref": "PretargetingConfig"
1644− },
1645− "response": {
1646− "$ref": "PretargetingConfig"
1647− },
1648− "scopes": [
1649− "https://www.googleapis.com/auth/adexchange.buyer"
1650− ]
1651 }
1663 }
1652− }
1664+ },
1653− }
1665+ "servicePath": "adexchangebuyer/v1.3/",
1654− }
1666+ "title": "Ad Exchange Buyer API",
1655−}
1667+ "version": "v1.3"
1668+}
gen/model/adexchangebuyer/v1.4/adexchangebuyer-api.json+3566−4073
@@ -1,4193 +1,3686 @@
1{
1{
2− "kind": "discovery#restDescription",
2+ "auth": {
3− "etag": "\"ye6orv2F-1npMW3u9suM3a7C5Bo/e2ZwVjK29RxJqz1-z8CpRPnLiKo\"",
3+ "oauth2": {
4− "discoveryVersion": "v1",
4+ "scopes": {
5− "id": "adexchangebuyer:v1.4",
5+ "https://www.googleapis.com/auth/adexchange.buyer": {
6− "name": "adexchangebuyer",
6+ "description": "Manage your Ad Exchange buyer account configuration"
7− "canonicalName": "Ad Exchange Buyer",
7+ }
8− "version": "v1.4",
9− "revision": "20150909",
10− "title": "Ad Exchange Buyer API",
11− "description": "Accesses your bidding-account information, submits creatives for validation, finds available direct deals, and retrieves performance reports.",
12− "ownerDomain": "google.com",
13− "ownerName": "Google",
14− "icons": {
15− "x16": "https://www.google.com/images/icons/product/doubleclick-16.gif",
16− "x32": "https://www.google.com/images/icons/product/doubleclick-32.gif"
17− },
18− "documentationLink": "https://developers.google.com/ad-exchange/buyer-rest",
19− "protocol": "rest",
20− "baseUrl": "https://www.googleapis.com/adexchangebuyer/v1.4/",
21− "basePath": "/adexchangebuyer/v1.4/",
22− "rootUrl": "https://www.googleapis.com/",
23− "servicePath": "adexchangebuyer/v1.4/",
24− "batchPath": "batch",
25− "parameters": {
26− "alt": {
27− "type": "string",
28− "description": "Data format for the response.",
29− "default": "json",
30− "enum": [
31− "json"
32− ],
33− "enumDescriptions": [
34− "Responses with Content-Type of application/json"
35− ],
36− "location": "query"
37− },
38− "fields": {
39− "type": "string",
40− "description": "Selector specifying which fields to include in a partial response.",
41− "location": "query"
42− },
43− "key": {
44− "type": "string",
45− "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
46− "location": "query"
47− },
48− "oauth_token": {
49− "type": "string",
50− "description": "OAuth 2.0 token for the current user.",
51− "location": "query"
52− },
53− "prettyPrint": {
54− "type": "boolean",
55− "description": "Returns response with indentations and line breaks.",
56− "default": "true",
57− "location": "query"
58− },
59− "quotaUser": {
60− "type": "string",
61− "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.",
62− "location": "query"
63− },
64− "userIp": {
65− "type": "string",
66− "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.",
67− "location": "query"
68− }
69− },
70− "auth": {
71− "oauth2": {
72− "scopes": {
73− "https://www.googleapis.com/auth/adexchange.buyer": {
74− "description": "Manage your Ad Exchange buyer account configuration"
75− }
76− }
77− }
78− },
79− "schemas": {
80− "Account": {
81− "id": "Account",
82− "type": "object",
83− "description": "Configuration data for an Ad Exchange buyer account.",
84− "properties": {
85− "bidderLocation": {
86− "type": "array",
87− "description": "Your bidder locations that have distinct URLs.",
88− "items": {
89− "type": "object",
90− "properties": {
91− "maximumQps": {
92− "type": "integer",
93− "description": "The maximum queries per second the Ad Exchange will send.",
94− "format": "int32"
95− },
96− "region": {
97− "type": "string",
98− "description": "The geographical region the Ad Exchange should send requests from. Only used by some quota systems, but always setting the value is recommended. Allowed values: \n- ASIA \n- EUROPE \n- US_EAST \n- US_WEST"
99− },
100− "url": {
101− "type": "string",
102− "description": "The URL to which the Ad Exchange will send bid requests."
103− }
104 }
8 }
105− }
106− },
107− "cookieMatchingNid": {
108− "type": "string",
109− "description": "The nid parameter value used in cookie match requests. Please contact your technical account manager if you need to change this."
110− },
111− "cookieMatchingUrl": {
112− "type": "string",
113− "description": "The base URL used in cookie match requests."
114− },
115− "id": {
116− "type": "integer",
117− "description": "Account id.",
118− "format": "int32"
119− },
120− "kind": {
121− "type": "string",
122− "description": "Resource type.",
123− "default": "adexchangebuyer#account"
124− },
125− "maximumActiveCreatives": {
126− "type": "integer",
127− "description": "The maximum number of active creatives that an account can have, where a creative is active if it was inserted or bid with in the last 30 days. Please contact your technical account manager if you need to change this.",
128− "format": "int32"
129− },
130− "maximumTotalQps": {
131− "type": "integer",
132− "description": "The sum of all bidderLocation.maximumQps values cannot exceed this. Please contact your technical account manager if you need to change this.",
133− "format": "int32"
134− },
135− "numberActiveCreatives": {
136− "type": "integer",
137− "description": "The number of creatives that this account inserted or bid with in the last 30 days.",
138− "format": "int32"
139− }
140− }
141− },
142− "AccountsList": {
143− "id": "AccountsList",
144− "type": "object",
145− "description": "An account feed lists Ad Exchange buyer accounts that the user has access to. Each entry in the feed corresponds to a single buyer account.",
146− "properties": {
147− "items": {
148− "type": "array",
149− "description": "A list of accounts.",
150− "items": {
151− "$ref": "Account"
152− }
153− },
154− "kind": {
155− "type": "string",
156− "description": "Resource type.",
157− "default": "adexchangebuyer#accountsList"
158− }
159− }
160− },
161− "AdSize": {
162− "id": "AdSize",
163− "type": "object",
164− "properties": {
165− "height": {
166− "type": "integer",
167− "format": "int32"
168− },
169− "width": {
170− "type": "integer",
171− "format": "int32"
172− }
173− }
174− },
175− "AdSlotDto": {
176− "id": "AdSlotDto",
177− "type": "object",
178− "properties": {
179− "channelCode": {
180− "type": "string"
181− },
182− "channelId": {
183− "type": "integer",
184− "format": "int32"
185− },
186− "description": {
187− "type": "string"
188− },
189− "name": {
190− "type": "string"
191− },
192− "size": {
193− "type": "string"
194− },
195− "webPropertyId": {
196− "type": "integer",
197− "format": "int32"
198− }
199− }
200− },
201− "AddOrderDealsRequest": {
202− "id": "AddOrderDealsRequest",
203− "type": "object",
204− "properties": {
205− "deals": {
206− "type": "array",
207− "description": "The list of deals to add",
208− "items": {
209− "$ref": "MarketplaceDeal"
210− }
211− },
212− "orderRevisionNumber": {
213− "type": "string",
214− "description": "The last known order revision number.",
215− "format": "int64"
216− },
217− "updateAction": {
218− "type": "string",
219− "description": "Indicates an optional action to take on the order"
220− }
221− }
222− },
223− "AddOrderDealsResponse": {
224− "id": "AddOrderDealsResponse",
225− "type": "object",
226− "properties": {
227− "deals": {
228− "type": "array",
229− "description": "List of deals added (in the same order as passed in the request)",
230− "items": {
231− "$ref": "MarketplaceDeal"
232− }
233− },
234− "orderRevisionNumber": {
235− "type": "string",
236− "description": "The updated revision number for the order.",
237− "format": "int64"
238− }
239− }
240− },
241− "AddOrderNotesRequest": {
242− "id": "AddOrderNotesRequest",
243− "type": "object",
244− "properties": {
245− "notes": {
246− "type": "array",
247− "description": "The list of notes to add.",
248− "items": {
249− "$ref": "MarketplaceNote"
250− }
251− }
252− }
253− },
254− "AddOrderNotesResponse": {
255− "id": "AddOrderNotesResponse",
256− "type": "object",
257− "properties": {
258− "notes": {
259− "type": "array",
260− "items": {
261− "$ref": "MarketplaceNote"
262− }
263− }
264− }
265− },
266− "AdvertiserDto": {
267− "id": "AdvertiserDto",
268− "type": "object",
269− "properties": {
270− "brands": {
271− "type": "array",
272− "items": {
273− "$ref": "BrandDto"
274− }
275− },
276− "id": {
277− "type": "string",
278− "format": "int64"
279− },
280− "name": {
281− "type": "string"
282− },
283− "status": {
284− "type": "string"
285− }
286− }
287− },
288− "AudienceSegment": {
289− "id": "AudienceSegment",
290− "type": "object",
291− "properties": {
292− "description": {
293− "type": "string"
294− },
295− "id": {
296− "type": "string",
297− "format": "int64"
298− },
299− "name": {
300− "type": "string"
301− },
302− "numCookies": {
303− "type": "string",
304− "format": "int64"
305 }
9 }
306− }
307 },
10 },
308− "BillingInfo": {
11+ "basePath": "/adexchangebuyer/v1.4/",
309− "id": "BillingInfo",
12+ "baseUrl": "https://www.googleapis.com/adexchangebuyer/v1.4/",
310− "type": "object",
13+ "batchPath": "batch/adexchangebuyer/v1.4",
311− "description": "The configuration data for an Ad Exchange billing info.",
14+ "canonicalName": "Ad Exchange Buyer",
312− "properties": {
15+ "description": "Accesses your bidding-account information, submits creatives for validation, finds available direct deals, and retrieves performance reports.",
313− "accountId": {
16+ "discoveryVersion": "v1",
314− "type": "integer",
17+ "documentationLink": "https://developers.google.com/ad-exchange/buyer-rest",
315− "description": "Account id.",
18+ "etag": "\"J3WqvAcMk4eQjJXvfSI4Yr8VouA/MJwOf3EG-7RF4hB9GZz8eDlZZS0\"",
316− "format": "int32"
19+ "icons": {
317− },
20+ "x16": "https://www.google.com/images/icons/product/doubleclick-16.gif",
318− "accountName": {
21+ "x32": "https://www.google.com/images/icons/product/doubleclick-32.gif"
319− "type": "string",
22+ },
320− "description": "Account name."
23+ "id": "adexchangebuyer:v1.4",
321− },
24+ "kind": "discovery#restDescription",
322− "billingId": {
25+ "name": "adexchangebuyer",
323− "type": "array",
26+ "ownerDomain": "google.com",
324− "description": "A list of adgroup IDs associated with this particular account. These IDs may show up as part of a realtime bidding BidRequest, which indicates a bid request for this account.",
27+ "ownerName": "Google",
325− "items": {
28+ "parameters": {
29+ "alt": {
30+ "default": "json",
31+ "description": "Data format for the response.",
32+ "enum": [
33+ "json"
34+ ],
35+ "enumDescriptions": [
36+ "Responses with Content-Type of application/json"
37+ ],
38+ "location": "query",
326 "type": "string"
39 "type": "string"
327− }
328− },
329− "kind": {
330− "type": "string",
331− "description": "Resource type.",
332− "default": "adexchangebuyer#billingInfo"
333− }
334− }
335− },
336− "BillingInfoList": {
337− "id": "BillingInfoList",
338− "type": "object",
339− "description": "A billing info feed lists Billing Info the Ad Exchange buyer account has access to. Each entry in the feed corresponds to a single billing info.",
340− "properties": {
341− "items": {
342− "type": "array",
343− "description": "A list of billing info relevant for your account.",
344− "items": {
345− "$ref": "BillingInfo"
346− }
347− },
348− "kind": {
349− "type": "string",
350− "description": "Resource type.",
351− "default": "adexchangebuyer#billingInfoList"
352− }
353− }
354− },
355− "BrandDto": {
356− "id": "BrandDto",
357− "type": "object",
358− "properties": {
359− "advertiserId": {
360− "type": "string",
361− "format": "int64"
362− },
363− "id": {
364− "type": "string",
365− "format": "int64"
366− },
367− "name": {
368− "type": "string"
369− }
370− }
371− },
372− "Budget": {
373− "id": "Budget",
374− "type": "object",
375− "description": "The configuration data for Ad Exchange RTB - Budget API.",
376− "properties": {
377− "accountId": {
378− "type": "string",
379− "description": "The id of the account. This is required for get and update requests.",
380− "format": "int64"
381− },
382− "billingId": {
383− "type": "string",
384− "description": "The billing id to determine which adgroup to provide budget information for. This is required for get and update requests.",
385− "format": "int64"
386− },
387− "budgetAmount": {
388− "type": "string",
389− "description": "The budget amount to apply for the billingId provided. This is required for update requests.",
390− "format": "int64"
391 },
40 },
392− "currencyCode": {
41+ "fields": {
393− "type": "string",
42+ "description": "Selector specifying which fields to include in a partial response.",
394− "description": "The currency code for the buyer. This cannot be altered here."
43+ "location": "query",
395− },
44+ "type": "string"
396− "id": {
397− "type": "string",
398− "description": "The unique id that describes this item."
399− },
400− "kind": {
401− "type": "string",
402− "description": "The kind of the resource, i.e. \"adexchangebuyer#budget\".",
403− "default": "adexchangebuyer#budget"
404− }
405− }
406− },
407− "Buyer": {
408− "id": "Buyer",
409− "type": "object",
410− "properties": {
411− "accountId": {
412− "type": "string",
413− "description": "Adx account id of the buyer."
414− }
415− }
416− },
417− "BuyerDto": {
418− "id": "BuyerDto",
419− "type": "object",
420− "properties": {
421− "accountId": {
422− "type": "integer",
423− "format": "int32"
424− },
425− "customerId": {
426− "type": "integer",
427− "format": "int32"
428− },
429− "displayName": {
430− "type": "string"
431− },
432− "enabledForInterestTargetingDeals": {
433− "type": "boolean"
434− },
435− "enabledForPreferredDeals": {
436− "type": "boolean"
437 },
45 },
438− "id": {
46+ "key": {
439− "type": "integer",
47+ "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
440− "format": "int32"
48+ "location": "query",
49+ "type": "string"
441 },
50 },
442− "sponsorAccountId": {
51+ "oauth_token": {
443− "type": "integer",
52+ "description": "OAuth 2.0 token for the current user.",
444− "format": "int32"
53+ "location": "query",
445− }
54+ "type": "string"
446− }
447− },
448− "ClientAccessCapabilities": {
449− "id": "ClientAccessCapabilities",
450− "type": "object",
451− "properties": {
452− "capabilities": {
453− "type": "array",
454− "items": {
455− "type": "integer",
456− "format": "int32"
457− }
458 },
55 },
459− "clientAccountId": {
56+ "prettyPrint": {
460− "type": "string",
57+ "default": "true",
461− "format": "int64"
58+ "description": "Returns response with indentations and line breaks.",
462− }
59+ "location": "query",
463− }
60+ "type": "boolean"
464− },
465− "ContactInformation": {
466− "id": "ContactInformation",
467− "type": "object",
468− "properties": {
469− "email": {
470− "type": "string",
471− "description": "Email address of the contact."
472 },
61 },
473− "name": {
62+ "quotaUser": {
474− "type": "string",
63+ "description": "An opaque string that represents a user for quota purposes. Must not exceed 40 characters.",
475− "description": "The name of the contact."
64+ "location": "query",
476− }
65+ "type": "string"
477− }
478− },
479− "CreateOrdersRequest": {
480− "id": "CreateOrdersRequest",
481− "type": "object",
482− "properties": {
483− "orders": {
484− "type": "array",
485− "description": "The list of orders to create.",
486− "items": {
487− "$ref": "MarketplaceOrder"
488− }
489 },
66 },
490− "webPropertyCode": {
67+ "userIp": {
491− "type": "string"
68+ "description": "Deprecated. Please use quotaUser instead.",
492− }
69+ "location": "query",
493− }
70+ "type": "string"
494− },
495− "CreateOrdersResponse": {
496− "id": "CreateOrdersResponse",
497− "type": "object",
498− "properties": {
499− "orders": {
500− "type": "array",
501− "description": "The list of orders successfully created.",
502− "items": {
503− "$ref": "MarketplaceOrder"
504− }
505 }
71 }
506− }
507 },
72 },
508− "Creative": {
73+ "protocol": "rest",
509− "id": "Creative",
74+ "resources": {
510− "type": "object",
75+ "accounts": {
511− "description": "A creative and its classification data.",
76+ "methods": {
512− "properties": {
77+ "get": {
513− "HTMLSnippet": {
78+ "description": "Gets one account by ID.",
514− "type": "string",
79+ "httpMethod": "GET",
515− "description": "The HTML snippet that displays the ad when inserted in the web page. If set, videoURL should not be set."
80+ "id": "adexchangebuyer.accounts.get",
516− },
81+ "parameterOrder": [
517− "accountId": {
82+ "id"
518− "type": "integer",
83+ ],
519− "description": "Account id.",
84+ "parameters": {
520− "format": "int32",
85+ "id": {
521− "annotations": {
86+ "description": "The account id",
522− "required": [
87+ "format": "int32",
523− "adexchangebuyer.creatives.insert"
88+ "location": "path",
524− ]
89+ "required": true,
525− }
90+ "type": "integer"
526− },
91+ }
527− "advertiserId": {
92+ },
528− "type": "array",
93+ "path": "accounts/{id}",
529− "description": "Detected advertiser id, if any. Read-only. This field should not be set in requests.",
94+ "response": {
530− "items": {
95+ "$ref": "Account"
531− "type": "string",
96+ },
532− "format": "int64"
97+ "scopes": [
533− }
98+ "https://www.googleapis.com/auth/adexchange.buyer"
534− },
99+ ]
535− "advertiserName": {
100+ },
536− "type": "string",
101+ "list": {
537− "description": "The name of the company being advertised in the creative.",
102+ "description": "Retrieves the authenticated user's list of accounts.",
538− "annotations": {
103+ "httpMethod": "GET",
539− "required": [
104+ "id": "adexchangebuyer.accounts.list",
540− "adexchangebuyer.creatives.insert"
105+ "path": "accounts",
541− ]
106+ "response": {
542− }
107+ "$ref": "AccountsList"
543− },
108+ },
544− "agencyId": {
109+ "scopes": [
545− "type": "string",
110+ "https://www.googleapis.com/auth/adexchange.buyer"
546− "description": "The agency id for this creative.",
111+ ]
547− "format": "int64"
112+ },
548− },
113+ "patch": {
549− "api_upload_timestamp": {
114+ "description": "Updates an existing account. This method supports patch semantics.",
550− "type": "string",
115+ "httpMethod": "PATCH",
551− "description": "The last upload timestamp of this creative if it was uploaded via API. Read-only. The value of this field is generated, and will be ignored for uploads. (formatted RFC 3339 timestamp).",
116+ "id": "adexchangebuyer.accounts.patch",
552− "format": "date-time"
117+ "parameterOrder": [
553− },
118+ "id"
554− "attribute": {
119+ ],
555− "type": "array",
120+ "parameters": {
556− "description": "All attributes for the ads that may be shown from this snippet.",
121+ "confirmUnsafeAccountChange": {
557− "items": {
122+ "description": "Confirmation for erasing bidder and cookie matching urls.",
558− "type": "integer",
123+ "location": "query",
559− "format": "int32"
124+ "type": "boolean"
560− }
125+ },
561− },
126+ "id": {
562− "buyerCreativeId": {
127+ "description": "The account id",
563− "type": "string",
128+ "format": "int32",
564− "description": "A buyer-specific id identifying the creative in this ad.",
129+ "location": "path",
565− "annotations": {
130+ "required": true,
566− "required": [
131+ "type": "integer"
567− "adexchangebuyer.creatives.insert"
132+ }
568− ]
133+ },
569− }
134+ "path": "accounts/{id}",
570− },
135+ "request": {
571− "clickThroughUrl": {
136+ "$ref": "Account"
572− "type": "array",
137+ },
573− "description": "The set of destination urls for the snippet.",
138+ "response": {
574− "items": {
139+ "$ref": "Account"
575− "type": "string"
140+ },
576− },
141+ "scopes": [
577− "annotations": {
142+ "https://www.googleapis.com/auth/adexchange.buyer"
578− "required": [
143+ ]
579− "adexchangebuyer.creatives.insert"
144+ },
580− ]
145+ "update": {
581− }
146+ "description": "Updates an existing account.",
582− },
147+ "httpMethod": "PUT",
583− "corrections": {
148+ "id": "adexchangebuyer.accounts.update",
584− "type": "array",
149+ "parameterOrder": [
585− "description": "Shows any corrections that were applied to this creative. Read-only. This field should not be set in requests.",
150+ "id"
586− "items": {
151+ ],
587− "type": "object",
152+ "parameters": {
588− "properties": {
153+ "confirmUnsafeAccountChange": {
589− "details": {
154+ "description": "Confirmation for erasing bidder and cookie matching urls.",
590− "type": "array",
155+ "location": "query",
591− "description": "Additional details about the correction.",
156+ "type": "boolean"
592− "items": {
157+ },
593− "type": "string"
158+ "id": {
159+ "description": "The account id",
160+ "format": "int32",
161+ "location": "path",
162+ "required": true,
163+ "type": "integer"
164+ }
165+ },
166+ "path": "accounts/{id}",
167+ "request": {
168+ "$ref": "Account"
169+ },
170+ "response": {
171+ "$ref": "Account"
172+ },
173+ "scopes": [
174+ "https://www.googleapis.com/auth/adexchange.buyer"
175+ ]
594 }
176 }
595− },
596− "reason": {
597− "type": "string",
598− "description": "The type of correction that was applied to the creative."
599− }
600 }
177 }
601− }
602 },
178 },
603− "dealsStatus": {
179+ "billingInfo": {
604− "type": "string",
180+ "methods": {
605− "description": "Top-level deals status. Read-only. This field should not be set in requests. If disapproved, an entry for auctionType=DIRECT_DEALS (or ALL) in servingRestrictions will also exist. Note that this may be nuanced with other contextual restrictions, in which case it may be preferable to read from servingRestrictions directly."
181+ "get": {
606− },
182+ "description": "Returns the billing information for one account specified by account ID.",
607− "filteringReasons": {
183+ "httpMethod": "GET",
608− "type": "object",
184+ "id": "adexchangebuyer.billingInfo.get",
609− "description": "The filtering reasons for the creative. Read-only. This field should not be set in requests.",
185+ "parameterOrder": [
610− "properties": {
186+ "accountId"
611− "date": {
187+ ],
612− "type": "string",
188+ "parameters": {
613− "description": "The date in ISO 8601 format for the data. The data is collected from 00:00:00 to 23:59:59 in PST."
189+ "accountId": {
614− },
190+ "description": "The account id.",
615− "reasons": {
191+ "format": "int32",
616− "type": "array",
192+ "location": "path",
617− "description": "The filtering reasons.",
193+ "required": true,
618− "items": {
194+ "type": "integer"
619− "type": "object",
195+ }
620− "properties": {
196+ },
621− "filteringCount": {
197+ "path": "billinginfo/{accountId}",
622− "type": "string",
198+ "response": {
623− "description": "The number of times the creative was filtered for the status. The count is aggregated across all publishers on the exchange.",
199+ "$ref": "BillingInfo"
624− "format": "int64"
200+ },
625− },
201+ "scopes": [
626− "filteringStatus": {
202+ "https://www.googleapis.com/auth/adexchange.buyer"
627− "type": "integer",
203+ ]
628− "description": "The filtering status code. Please refer to the creative-status-codes.txt file for different statuses.",
204+ },
629− "format": "int32"
205+ "list": {
630− }
206+ "description": "Retrieves a list of billing information for all accounts of the authenticated user.",
207+ "httpMethod": "GET",
208+ "id": "adexchangebuyer.billingInfo.list",
209+ "path": "billinginfo",
210+ "response": {
211+ "$ref": "BillingInfoList"
212+ },
213+ "scopes": [
214+ "https://www.googleapis.com/auth/adexchange.buyer"
215+ ]
631 }
216 }
632− }
633 }
217 }
634− }
635− },
636− "height": {
637− "type": "integer",
638− "description": "Ad height.",
639− "format": "int32",
640− "annotations": {
641− "required": [
642− "adexchangebuyer.creatives.insert"
643− ]
644− }
645− },
646− "impressionTrackingUrl": {
647− "type": "array",
648− "description": "The set of urls to be called to record an impression.",
649− "items": {
650− "type": "string"
651− }
652− },
653− "kind": {
654− "type": "string",
655− "description": "Resource type.",
656− "default": "adexchangebuyer#creative"
657 },
218 },
658− "nativeAd": {
219+ "budget": {
659− "type": "object",
220+ "methods": {
660− "description": "If nativeAd is set, HTMLSnippet and videoURL should not be set.",
221+ "get": {
661− "properties": {
222+ "description": "Returns the budget information for the adgroup specified by the accountId and billingId.",
662− "advertiser": {
223+ "httpMethod": "GET",
663− "type": "string"
224+ "id": "adexchangebuyer.budget.get",
664− },
225+ "parameterOrder": [
665− "appIcon": {
226+ "accountId",
666− "type": "object",
227+ "billingId"
667− "description": "The app icon, for app download ads.",
228+ ],
668− "properties": {
229+ "parameters": {
669− "height": {
230+ "accountId": {
670− "type": "integer",
231+ "description": "The account id to get the budget information for.",
671− "format": "int32"
232+ "format": "int64",
233+ "location": "path",
234+ "required": true,
235+ "type": "string"
236+ },
237+ "billingId": {
238+ "description": "The billing id to get the budget information for.",
239+ "format": "int64",
240+ "location": "path",
241+ "required": true,
242+ "type": "string"
243+ }
244+ },
245+ "path": "billinginfo/{accountId}/{billingId}",
246+ "response": {
247+ "$ref": "Budget"
248+ },
249+ "scopes": [
250+ "https://www.googleapis.com/auth/adexchange.buyer"
251+ ]
672 },
252 },
673− "url": {
253+ "patch": {
674− "type": "string"
254+ "description": "Updates the budget amount for the budget of the adgroup specified by the accountId and billingId, with the budget amount in the request. This method supports patch semantics.",
255+ "httpMethod": "PATCH",
256+ "id": "adexchangebuyer.budget.patch",
257+ "parameterOrder": [
258+ "accountId",
259+ "billingId"
260+ ],
261+ "parameters": {
262+ "accountId": {
263+ "description": "The account id associated with the budget being updated.",
264+ "format": "int64",
265+ "location": "path",
266+ "required": true,
267+ "type": "string"
268+ },
269+ "billingId": {
270+ "description": "The billing id associated with the budget being updated.",
271+ "format": "int64",
272+ "location": "path",
273+ "required": true,
274+ "type": "string"
275+ }
276+ },
277+ "path": "billinginfo/{accountId}/{billingId}",
278+ "request": {
279+ "$ref": "Budget"
280+ },
281+ "response": {
282+ "$ref": "Budget"
283+ },
284+ "scopes": [
285+ "https://www.googleapis.com/auth/adexchange.buyer"
286+ ]
675 },
287 },
676− "width": {
288+ "update": {
677− "type": "integer",
289+ "description": "Updates the budget amount for the budget of the adgroup specified by the accountId and billingId, with the budget amount in the request.",
678− "format": "int32"
290+ "httpMethod": "PUT",
291+ "id": "adexchangebuyer.budget.update",
292+ "parameterOrder": [
293+ "accountId",
294+ "billingId"
295+ ],
296+ "parameters": {
297+ "accountId": {
298+ "description": "The account id associated with the budget being updated.",
299+ "format": "int64",
300+ "location": "path",
301+ "required": true,
302+ "type": "string"
303+ },
304+ "billingId": {
305+ "description": "The billing id associated with the budget being updated.",
306+ "format": "int64",
307+ "location": "path",
308+ "required": true,
309+ "type": "string"
310+ }
311+ },
312+ "path": "billinginfo/{accountId}/{billingId}",
313+ "request": {
314+ "$ref": "Budget"
315+ },
316+ "response": {
317+ "$ref": "Budget"
318+ },
319+ "scopes": [
320+ "https://www.googleapis.com/auth/adexchange.buyer"
321+ ]
679 }
322 }
680− }
323+ }
681− },
324+ },
682− "body": {
325+ "creatives": {
683− "type": "string",
326+ "methods": {
684− "description": "A long description of the ad."
327+ "addDeal": {
685− },
328+ "description": "Add a deal id association for the creative.",
686− "callToAction": {
329+ "httpMethod": "POST",
687− "type": "string",
330+ "id": "adexchangebuyer.creatives.addDeal",
688− "description": "A label for the button that the user is supposed to click."
331+ "parameterOrder": [
689− },
332+ "accountId",
690− "clickTrackingUrl": {
333+ "buyerCreativeId",
691− "type": "string",
334+ "dealId"
692− "description": "The URL to use for click tracking."
335+ ],
693− },
336+ "parameters": {
694− "headline": {
337+ "accountId": {
695− "type": "string",
338+ "description": "The id for the account that will serve this creative.",
696− "description": "A short title for the ad."
339+ "format": "int32",
697− },
340+ "location": "path",
698− "image": {
341+ "required": true,
699− "type": "object",
342+ "type": "integer"
700− "description": "A large image.",
343+ },
701− "properties": {
344+ "buyerCreativeId": {
702− "height": {
345+ "description": "The buyer-specific id for this creative.",
703− "type": "integer",
346+ "location": "path",
704− "format": "int32"
347+ "required": true,
348+ "type": "string"
349+ },
350+ "dealId": {
351+ "description": "The id of the deal id to associate with this creative.",
352+ "format": "int64",
353+ "location": "path",
354+ "required": true,
355+ "type": "string"
356+ }
357+ },
358+ "path": "creatives/{accountId}/{buyerCreativeId}/addDeal/{dealId}",
359+ "scopes": [
360+ "https://www.googleapis.com/auth/adexchange.buyer"
361+ ]
362+ },
363+ "get": {
364+ "description": "Gets the status for a single creative. A creative will be available 30-40 minutes after submission.",
365+ "httpMethod": "GET",
366+ "id": "adexchangebuyer.creatives.get",
367+ "parameterOrder": [
368+ "accountId",
369+ "buyerCreativeId"
370+ ],
371+ "parameters": {
372+ "accountId": {
373+ "description": "The id for the account that will serve this creative.",
374+ "format": "int32",
375+ "location": "path",
376+ "required": true,
377+ "type": "integer"
378+ },
379+ "buyerCreativeId": {
380+ "description": "The buyer-specific id for this creative.",
381+ "location": "path",
382+ "required": true,
383+ "type": "string"
384+ }
385+ },
386+ "path": "creatives/{accountId}/{buyerCreativeId}",
387+ "response": {
388+ "$ref": "Creative"
389+ },
390+ "scopes": [
391+ "https://www.googleapis.com/auth/adexchange.buyer"
392+ ]
705 },
393 },
706− "url": {
394+ "insert": {
707− "type": "string"
395+ "description": "Submit a new creative.",
396+ "httpMethod": "POST",
397+ "id": "adexchangebuyer.creatives.insert",
398+ "path": "creatives",
399+ "request": {
400+ "$ref": "Creative"
401+ },
402+ "response": {
403+ "$ref": "Creative"
404+ },
405+ "scopes": [
406+ "https://www.googleapis.com/auth/adexchange.buyer"
407+ ]
708 },
408 },
709− "width": {
409+ "list": {
710− "type": "integer",
410+ "description": "Retrieves a list of the authenticated user's active creatives. A creative will be available 30-40 minutes after submission.",
711− "format": "int32"
411+ "httpMethod": "GET",
712− }
412+ "id": "adexchangebuyer.creatives.list",
713− }
413+ "parameters": {
714− },
414+ "accountId": {
715− "impressionTrackingUrl": {
415+ "description": "When specified, only creatives for the given account ids are returned.",
716− "type": "array",
416+ "format": "int32",
717− "description": "The URLs are called when the impression is rendered.",
417+ "location": "query",
718− "items": {
418+ "repeated": true,
719− "type": "string"
419+ "type": "integer"
720− }
420+ },
721− },
421+ "buyerCreativeId": {
722− "logo": {
422+ "description": "When specified, only creatives for the given buyer creative ids are returned.",
723− "type": "object",
423+ "location": "query",
724− "description": "A smaller image, for the advertiser logo.",
424+ "repeated": true,
725− "properties": {
425+ "type": "string"
726− "height": {
426+ },
727− "type": "integer",
427+ "dealsStatusFilter": {
728− "format": "int32"
428+ "description": "When specified, only creatives having the given deals status are returned.",
429+ "enum": [
430+ "approved",
431+ "conditionally_approved",
432+ "disapproved",
433+ "not_checked"
434+ ],
435+ "enumDescriptions": [
436+ "Creatives which have been approved for serving on deals.",
437+ "Creatives which have been conditionally approved for serving on deals.",
438+ "Creatives which have been disapproved for serving on deals.",
439+ "Creatives whose deals status is not yet checked."
440+ ],
441+ "location": "query",
442+ "type": "string"
443+ },
444+ "maxResults": {
445+ "description": "Maximum number of entries returned on one result page. If not set, the default is 100. Optional.",
446+ "format": "uint32",
447+ "location": "query",
448+ "maximum": "1000",
449+ "minimum": "1",
450+ "type": "integer"
451+ },
452+ "openAuctionStatusFilter": {
453+ "description": "When specified, only creatives having the given open auction status are returned.",
454+ "enum": [
455+ "approved",
456+ "conditionally_approved",
457+ "disapproved",
458+ "not_checked"
459+ ],
460+ "enumDescriptions": [
461+ "Creatives which have been approved for serving on the open auction.",
462+ "Creatives which have been conditionally approved for serving on the open auction.",
463+ "Creatives which have been disapproved for serving on the open auction.",
464+ "Creatives whose open auction status is not yet checked."
465+ ],
466+ "location": "query",
467+ "type": "string"
468+ },
469+ "pageToken": {
470+ "description": "A continuation token, used to page through ad clients. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response. Optional.",
471+ "location": "query",
472+ "type": "string"
473+ }
474+ },
475+ "path": "creatives",
476+ "response": {
477+ "$ref": "CreativesList"
478+ },
479+ "scopes": [
480+ "https://www.googleapis.com/auth/adexchange.buyer"
481+ ]
729 },
482 },
730− "url": {
483+ "listDeals": {
731− "type": "string"
484+ "description": "Lists the external deal ids associated with the creative.",
485+ "httpMethod": "GET",
486+ "id": "adexchangebuyer.creatives.listDeals",
487+ "parameterOrder": [
488+ "accountId",
489+ "buyerCreativeId"
490+ ],
491+ "parameters": {
492+ "accountId": {
493+ "description": "The id for the account that will serve this creative.",
494+ "format": "int32",
495+ "location": "path",
496+ "required": true,
497+ "type": "integer"
498+ },
499+ "buyerCreativeId": {
500+ "description": "The buyer-specific id for this creative.",
501+ "location": "path",
502+ "required": true,
503+ "type": "string"
504+ }
505+ },
506+ "path": "creatives/{accountId}/{buyerCreativeId}/listDeals",
507+ "response": {
508+ "$ref": "CreativeDealIds"
509+ },
510+ "scopes": [
511+ "https://www.googleapis.com/auth/adexchange.buyer"
512+ ]
732 },
513 },
733− "width": {
514+ "removeDeal": {
734− "type": "integer",
515+ "description": "Remove a deal id associated with the creative.",
735− "format": "int32"
516+ "httpMethod": "POST",
517+ "id": "adexchangebuyer.creatives.removeDeal",
518+ "parameterOrder": [
519+ "accountId",
520+ "buyerCreativeId",
521+ "dealId"
522+ ],
523+ "parameters": {
524+ "accountId": {
525+ "description": "The id for the account that will serve this creative.",
526+ "format": "int32",
527+ "location": "path",
528+ "required": true,
529+ "type": "integer"
530+ },
531+ "buyerCreativeId": {
532+ "description": "The buyer-specific id for this creative.",
533+ "location": "path",
534+ "required": true,
535+ "type": "string"
536+ },
537+ "dealId": {
538+ "description": "The id of the deal id to disassociate with this creative.",
539+ "format": "int64",
540+ "location": "path",
541+ "required": true,
542+ "type": "string"
543+ }
544+ },
545+ "path": "creatives/{accountId}/{buyerCreativeId}/removeDeal/{dealId}",
546+ "scopes": [
547+ "https://www.googleapis.com/auth/adexchange.buyer"
548+ ]
736 }
549 }
737− }
738− },
739− "price": {
740− "type": "string",
741− "description": "The price of the promoted app including the currency info."
742− },
743− "starRating": {
744− "type": "number",
745− "description": "The app rating in the app store. Must be in the range [0-5].",
746− "format": "double"
747− },
748− "store": {
749− "type": "string",
750− "description": "The URL to the app store to purchase/download the promoted app."
751 }
550 }
752− }
753− },
754− "openAuctionStatus": {
755− "type": "string",
756− "description": "Top-level open auction status. Read-only. This field should not be set in requests. If disapproved, an entry for auctionType=OPEN_AUCTION (or ALL) in servingRestrictions will also exist. Note that this may be nuanced with other contextual restrictions, in which case it may be preferable to read from ServingRestrictions directly."
757− },
758− "productCategories": {
759− "type": "array",
760− "description": "Detected product categories, if any. Read-only. This field should not be set in requests.",
761− "items": {
762− "type": "integer",
763− "format": "int32"
764− }
765− },
766− "restrictedCategories": {
767− "type": "array",
768− "description": "All restricted categories for the ads that may be shown from this snippet.",
769− "items": {
770− "type": "integer",
771− "format": "int32"
772− }
773 },
551 },
774− "sensitiveCategories": {
552+ "marketplacedeals": {
775− "type": "array",
553+ "methods": {
776− "description": "Detected sensitive categories, if any. Read-only. This field should not be set in requests.",
554+ "delete": {
777− "items": {
555+ "description": "Delete the specified deals from the proposal",
778− "type": "integer",
556+ "httpMethod": "POST",
779− "format": "int32"
557+ "id": "adexchangebuyer.marketplacedeals.delete",
780− }
558+ "parameterOrder": [
781− },
559+ "proposalId"
782− "servingRestrictions": {
560+ ],
783− "type": "array",
561+ "parameters": {
784− "description": "The granular status of this ad in specific contexts. A context here relates to where something ultimately serves (for example, a physical location, a platform, an HTTPS vs HTTP request, or the type of auction). Read-only. This field should not be set in requests.",
562+ "proposalId": {
785− "items": {
563+ "description": "The proposalId to delete deals from.",
786− "type": "object",
564+ "location": "path",
787− "properties": {
565+ "required": true,
788− "contexts": {
566+ "type": "string"
789− "type": "array",
567+ }
790− "description": "All known contexts/restrictions.",
568+ },
791− "items": {
569+ "path": "proposals/{proposalId}/deals/delete",
792− "type": "object",
570+ "request": {
793− "properties": {
571+ "$ref": "DeleteOrderDealsRequest"
794− "auctionType": {
572+ },
795− "type": "array",
573+ "response": {
796− "description": "Only set when contextType=AUCTION_TYPE. Represents the auction types this restriction applies to.",
574+ "$ref": "DeleteOrderDealsResponse"
797− "items": {
575+ },
798− "type": "string"
576+ "scopes": [
799− }
577+ "https://www.googleapis.com/auth/adexchange.buyer"
800− },
578+ ]
801− "contextType": {
579+ },
802− "type": "string",
580+ "insert": {
803− "description": "The type of context (e.g., location, platform, auction type, SSL-ness)."
581+ "description": "Add new deals for the specified proposal",
804− },
582+ "httpMethod": "POST",
805− "geoCriteriaId": {
583+ "id": "adexchangebuyer.marketplacedeals.insert",
806− "type": "array",
584+ "parameterOrder": [
807− "description": "Only set when contextType=LOCATION. Represents the geo criterias this restriction applies to.",
585+ "proposalId"
808− "items": {
586+ ],
809− "type": "integer",
587+ "parameters": {
810− "format": "int32"
588+ "proposalId": {
811− }
589+ "description": "proposalId for which deals need to be added.",
812− },
590+ "location": "path",
813− "platform": {
591+ "required": true,
814− "type": "array",
592+ "type": "string"
815− "description": "Only set when contextType=PLATFORM. Represents the platforms this restriction applies to.",
593+ }
816− "items": {
594+ },
817− "type": "string"
595+ "path": "proposals/{proposalId}/deals/insert",
818− }
596+ "request": {
819− }
597+ "$ref": "AddOrderDealsRequest"
820− }
598+ },
599+ "response": {
600+ "$ref": "AddOrderDealsResponse"
601+ },
602+ "scopes": [
603+ "https://www.googleapis.com/auth/adexchange.buyer"
604+ ]
605+ },
606+ "list": {
607+ "description": "List all the deals for a given proposal",
608+ "httpMethod": "GET",
609+ "id": "adexchangebuyer.marketplacedeals.list",
610+ "parameterOrder": [
611+ "proposalId"
612+ ],
613+ "parameters": {
614+ "pqlQuery": {
615+ "description": "Query string to retrieve specific deals.",
616+ "location": "query",
617+ "type": "string"
618+ },
619+ "proposalId": {
620+ "description": "The proposalId to get deals for. To search across all proposals specify order_id = '-' as part of the URL.",
621+ "location": "path",
622+ "required": true,
623+ "type": "string"
624+ }
625+ },
626+ "path": "proposals/{proposalId}/deals",
627+ "response": {
628+ "$ref": "GetOrderDealsResponse"
629+ },
630+ "scopes": [
631+ "https://www.googleapis.com/auth/adexchange.buyer"
632+ ]
633+ },
634+ "update": {
635+ "description": "Replaces all the deals in the proposal with the passed in deals",
636+ "httpMethod": "POST",
637+ "id": "adexchangebuyer.marketplacedeals.update",
638+ "parameterOrder": [
639+ "proposalId"
640+ ],
641+ "parameters": {
642+ "proposalId": {
643+ "description": "The proposalId to edit deals on.",
644+ "location": "path",
645+ "required": true,
646+ "type": "string"
647+ }
648+ },
649+ "path": "proposals/{proposalId}/deals/update",
650+ "request": {
651+ "$ref": "EditAllOrderDealsRequest"
652+ },
653+ "response": {
654+ "$ref": "EditAllOrderDealsResponse"
655+ },
656+ "scopes": [
657+ "https://www.googleapis.com/auth/adexchange.buyer"
658+ ]
821 }
659 }
822− },
660+ }
823− "disapprovalReasons": {
661+ },
824− "type": "array",
662+ "marketplacenotes": {
825− "description": "The reasons for disapproval within this restriction, if any. Note that not all disapproval reasons may be categorized, so it is possible for the creative to have a status of DISAPPROVED or CONDITIONALLY_APPROVED with an empty list for disapproval_reasons. In this case, please reach out to your TAM to help debug the issue.",
663+ "methods": {
826− "items": {
664+ "insert": {
827− "type": "object",
665+ "description": "Add notes to the proposal",
828− "properties": {
666+ "httpMethod": "POST",
829− "details": {
667+ "id": "adexchangebuyer.marketplacenotes.insert",
830− "type": "array",
668+ "parameterOrder": [
831− "description": "Additional details about the reason for disapproval.",
669+ "proposalId"
832− "items": {
670+ ],
833− "type": "string"
671+ "parameters": {
834− }
672+ "proposalId": {
673+ "description": "The proposalId to add notes for.",
674+ "location": "path",
675+ "required": true,
676+ "type": "string"
677+ }
678+ },
679+ "path": "proposals/{proposalId}/notes/insert",
680+ "request": {
681+ "$ref": "AddOrderNotesRequest"
682+ },
683+ "response": {
684+ "$ref": "AddOrderNotesResponse"
685+ },
686+ "scopes": [
687+ "https://www.googleapis.com/auth/adexchange.buyer"
688+ ]
689+ },
690+ "list": {
691+ "description": "Get all the notes associated with a proposal",
692+ "httpMethod": "GET",
693+ "id": "adexchangebuyer.marketplacenotes.list",
694+ "parameterOrder": [
695+ "proposalId"
696+ ],
697+ "parameters": {
698+ "pqlQuery": {
699+ "description": "Query string to retrieve specific notes. To search the text contents of notes, please use syntax like \"WHERE note.note = \"foo\" or \"WHERE note.note LIKE \"%bar%\"",
700+ "location": "query",
701+ "type": "string"
702+ },
703+ "proposalId": {
704+ "description": "The proposalId to get notes for. To search across all proposals specify order_id = '-' as part of the URL.",
705+ "location": "path",
706+ "required": true,
707+ "type": "string"
708+ }
709+ },
710+ "path": "proposals/{proposalId}/notes",
711+ "response": {
712+ "$ref": "GetOrderNotesResponse"
835 },
713 },
836− "reason": {
714+ "scopes": [
837− "type": "string",
715+ "https://www.googleapis.com/auth/adexchange.buyer"
838− "description": "The categorized reason for disapproval."
716+ ]
839− }
840− }
841 }
717 }
842− },
843− "reason": {
844− "type": "string",
845− "description": "Why the creative is ineligible to serve in this context (e.g., it has been explicitly disapproved or is pending review)."
846− }
847 }
718 }
848− }
849 },
719 },
850− "vendorType": {
720+ "marketplaceprivateauction": {
851− "type": "array",
721+ "methods": {
852− "description": "All vendor types for the ads that may be shown from this snippet.",
722+ "updateproposal": {
853− "items": {
723+ "description": "Update a given private auction proposal",
854− "type": "integer",
724+ "httpMethod": "POST",
855− "format": "int32"
725+ "id": "adexchangebuyer.marketplaceprivateauction.updateproposal",
856− }
726+ "parameterOrder": [
727+ "privateAuctionId"
728+ ],
729+ "parameters": {
730+ "privateAuctionId": {
731+ "description": "The private auction id to be updated.",
732+ "location": "path",
733+ "required": true,
734+ "type": "string"
735+ }
736+ },
737+ "path": "privateauction/{privateAuctionId}/updateproposal",
738+ "request": {
739+ "$ref": "UpdatePrivateAuctionProposalRequest"
740+ },
741+ "scopes": [
742+ "https://www.googleapis.com/auth/adexchange.buyer"
743+ ]
744+ }
745+ }
857 },
746 },
858− "version": {
747+ "performanceReport": {
859− "type": "integer",
748+ "methods": {
860− "description": "The version for this creative. Read-only. This field should not be set in requests.",
749+ "list": {
861− "format": "int32"
750+ "description": "Retrieves the authenticated user's list of performance metrics.",
751+ "httpMethod": "GET",
752+ "id": "adexchangebuyer.performanceReport.list",
753+ "parameterOrder": [
754+ "accountId",
755+ "endDateTime",
756+ "startDateTime"
757+ ],
758+ "parameters": {
759+ "accountId": {
760+ "description": "The account id to get the reports.",
761+ "format": "int64",
762+ "location": "query",
763+ "required": true,
764+ "type": "string"
765+ },
766+ "endDateTime": {
767+ "description": "The end time of the report in ISO 8601 timestamp format using UTC.",
768+ "location": "query",
769+ "required": true,
770+ "type": "string"
771+ },
772+ "maxResults": {
773+ "description": "Maximum number of entries returned on one result page. If not set, the default is 100. Optional.",
774+ "format": "uint32",
775+ "location": "query",
776+ "maximum": "1000",
777+ "minimum": "1",
778+ "type": "integer"
779+ },
780+ "pageToken": {
781+ "description": "A continuation token, used to page through performance reports. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response. Optional.",
782+ "location": "query",
783+ "type": "string"
784+ },
785+ "startDateTime": {
786+ "description": "The start time of the report in ISO 8601 timestamp format using UTC.",
787+ "location": "query",
788+ "required": true,
789+ "type": "string"
790+ }
791+ },
792+ "path": "performancereport",
793+ "response": {
794+ "$ref": "PerformanceReportList"
795+ },
796+ "scopes": [
797+ "https://www.googleapis.com/auth/adexchange.buyer"
798+ ]
799+ }
800+ }
862 },
801 },
863− "videoURL": {
802+ "pretargetingConfig": {
864− "type": "string",
803+ "methods": {
865− "description": "The url to fetch a video ad. If set, HTMLSnippet should not be set."
804+ "delete": {
805+ "description": "Deletes an existing pretargeting config.",
806+ "httpMethod": "DELETE",
807+ "id": "adexchangebuyer.pretargetingConfig.delete",
808+ "parameterOrder": [
809+ "accountId",
810+ "configId"
811+ ],
812+ "parameters": {
813+ "accountId": {
814+ "description": "The account id to delete the pretargeting config for.",
815+ "format": "int64",
816+ "location": "path",
817+ "required": true,
818+ "type": "string"
819+ },
820+ "configId": {
821+ "description": "The specific id of the configuration to delete.",
822+ "format": "int64",
823+ "location": "path",
824+ "required": true,
825+ "type": "string"
826+ }
827+ },
828+ "path": "pretargetingconfigs/{accountId}/{configId}",
829+ "scopes": [
830+ "https://www.googleapis.com/auth/adexchange.buyer"
831+ ]
832+ },
833+ "get": {
834+ "description": "Gets a specific pretargeting configuration",
835+ "httpMethod": "GET",
836+ "id": "adexchangebuyer.pretargetingConfig.get",
837+ "parameterOrder": [
838+ "accountId",
839+ "configId"
840+ ],
841+ "parameters": {
842+ "accountId": {
843+ "description": "The account id to get the pretargeting config for.",
844+ "format": "int64",
845+ "location": "path",
846+ "required": true,
847+ "type": "string"
848+ },
849+ "configId": {
850+ "description": "The specific id of the configuration to retrieve.",
851+ "format": "int64",
852+ "location": "path",
853+ "required": true,
854+ "type": "string"
855+ }
856+ },
857+ "path": "pretargetingconfigs/{accountId}/{configId}",
858+ "response": {
859+ "$ref": "PretargetingConfig"
860+ },
861+ "scopes": [
862+ "https://www.googleapis.com/auth/adexchange.buyer"
863+ ]
864+ },
865+ "insert": {
866+ "description": "Inserts a new pretargeting configuration.",
867+ "httpMethod": "POST",
868+ "id": "adexchangebuyer.pretargetingConfig.insert",
869+ "parameterOrder": [
870+ "accountId"
871+ ],
872+ "parameters": {
873+ "accountId": {
874+ "description": "The account id to insert the pretargeting config for.",
875+ "format": "int64",
876+ "location": "path",
877+ "required": true,
878+ "type": "string"
879+ }
880+ },
881+ "path": "pretargetingconfigs/{accountId}",
882+ "request": {
883+ "$ref": "PretargetingConfig"
884+ },
885+ "response": {
886+ "$ref": "PretargetingConfig"
887+ },
888+ "scopes": [
889+ "https://www.googleapis.com/auth/adexchange.buyer"
890+ ]
891+ },
892+ "list": {
893+ "description": "Retrieves a list of the authenticated user's pretargeting configurations.",
894+ "httpMethod": "GET",
895+ "id": "adexchangebuyer.pretargetingConfig.list",
896+ "parameterOrder": [
897+ "accountId"
898+ ],
899+ "parameters": {
900+ "accountId": {
901+ "description": "The account id to get the pretargeting configs for.",
902+ "format": "int64",
903+ "location": "path",
904+ "required": true,
905+ "type": "string"
906+ }
907+ },
908+ "path": "pretargetingconfigs/{accountId}",
909+ "response": {
910+ "$ref": "PretargetingConfigList"
911+ },
912+ "scopes": [
913+ "https://www.googleapis.com/auth/adexchange.buyer"
914+ ]
915+ },
916+ "patch": {
917+ "description": "Updates an existing pretargeting config. This method supports patch semantics.",
918+ "httpMethod": "PATCH",
919+ "id": "adexchangebuyer.pretargetingConfig.patch",
920+ "parameterOrder": [
921+ "accountId",
922+ "configId"
923+ ],
924+ "parameters": {
925+ "accountId": {
926+ "description": "The account id to update the pretargeting config for.",
927+ "format": "int64",
928+ "location": "path",
929+ "required": true,
930+ "type": "string"
931+ },
932+ "configId": {
933+ "description": "The specific id of the configuration to update.",
934+ "format": "int64",
935+ "location": "path",
936+ "required": true,
937+ "type": "string"
938+ }
939+ },
940+ "path": "pretargetingconfigs/{accountId}/{configId}",
941+ "request": {
942+ "$ref": "PretargetingConfig"
943+ },
944+ "response": {
945+ "$ref": "PretargetingConfig"
946+ },
947+ "scopes": [
948+ "https://www.googleapis.com/auth/adexchange.buyer"
949+ ]
950+ },
951+ "update": {
952+ "description": "Updates an existing pretargeting config.",
953+ "httpMethod": "PUT",
954+ "id": "adexchangebuyer.pretargetingConfig.update",
955+ "parameterOrder": [
956+ "accountId",
957+ "configId"
958+ ],
959+ "parameters": {
960+ "accountId": {
961+ "description": "The account id to update the pretargeting config for.",
962+ "format": "int64",
963+ "location": "path",
964+ "required": true,
965+ "type": "string"
966+ },
967+ "configId": {
968+ "description": "The specific id of the configuration to update.",
969+ "format": "int64",
970+ "location": "path",
971+ "required": true,
972+ "type": "string"
973+ }
974+ },
975+ "path": "pretargetingconfigs/{accountId}/{configId}",
976+ "request": {
977+ "$ref": "PretargetingConfig"
978+ },
979+ "response": {
980+ "$ref": "PretargetingConfig"
981+ },
982+ "scopes": [
983+ "https://www.googleapis.com/auth/adexchange.buyer"
984+ ]
985+ }
986+ }
866 },
987 },
867− "width": {
988+ "products": {
868− "type": "integer",
989+ "methods": {
869− "description": "Ad width.",
990+ "get": {
870− "format": "int32",
991+ "description": "Gets the requested product by id.",
871− "annotations": {
992+ "httpMethod": "GET",
872− "required": [
993+ "id": "adexchangebuyer.products.get",
873− "adexchangebuyer.creatives.insert"
994+ "parameterOrder": [
874− ]
995+ "productId"
875− }
996+ ],
876− }
997+ "parameters": {
877− }
998+ "productId": {
878− },
999+ "description": "The id for the product to get the head revision for.",
879− "CreativesList": {
1000+ "location": "path",
880− "id": "CreativesList",
1001+ "required": true,
881− "type": "object",
1002+ "type": "string"
882− "description": "The creatives feed lists the active creatives for the Ad Exchange buyer accounts that the user has access to. Each entry in the feed corresponds to a single creative.",
1003+ }
883− "properties": {
1004+ },
884− "items": {
1005+ "path": "products/{productId}",
885− "type": "array",
1006+ "response": {
886− "description": "A list of creatives.",
1007+ "$ref": "Product"
887− "items": {
1008+ },
888− "$ref": "Creative"
1009+ "scopes": [
889− }
1010+ "https://www.googleapis.com/auth/adexchange.buyer"
1011+ ]
1012+ },
1013+ "search": {
1014+ "description": "Gets the requested product.",
1015+ "httpMethod": "GET",
1016+ "id": "adexchangebuyer.products.search",
1017+ "parameters": {
1018+ "pqlQuery": {
1019+ "description": "The pql query used to query for products.",
1020+ "location": "query",
1021+ "type": "string"
1022+ }
1023+ },
1024+ "path": "products/search",
1025+ "response": {
1026+ "$ref": "GetOffersResponse"
1027+ },
1028+ "scopes": [
1029+ "https://www.googleapis.com/auth/adexchange.buyer"
1030+ ]
1031+ }
1032+ }
890 },
1033 },
891− "kind": {
1034+ "proposals": {
892− "type": "string",
1035+ "methods": {
893− "description": "Resource type.",
1036+ "get": {
894− "default": "adexchangebuyer#creativesList"
1037+ "description": "Get a proposal given its id",
1038+ "httpMethod": "GET",
1039+ "id": "adexchangebuyer.proposals.get",
1040+ "parameterOrder": [
1041+ "proposalId"
1042+ ],
1043+ "parameters": {
1044+ "proposalId": {
1045+ "description": "Id of the proposal to retrieve.",
1046+ "location": "path",
1047+ "required": true,
1048+ "type": "string"
1049+ }
1050+ },
1051+ "path": "proposals/{proposalId}",
1052+ "response": {
1053+ "$ref": "Proposal"
1054+ },
1055+ "scopes": [
1056+ "https://www.googleapis.com/auth/adexchange.buyer"
1057+ ]
1058+ },
1059+ "insert": {
1060+ "description": "Create the given list of proposals",
1061+ "httpMethod": "POST",
1062+ "id": "adexchangebuyer.proposals.insert",
1063+ "path": "proposals/insert",
1064+ "request": {
1065+ "$ref": "CreateOrdersRequest"
1066+ },
1067+ "response": {
1068+ "$ref": "CreateOrdersResponse"
1069+ },
1070+ "scopes": [
1071+ "https://www.googleapis.com/auth/adexchange.buyer"
1072+ ]
1073+ },
1074+ "patch": {
1075+ "description": "Update the given proposal. This method supports patch semantics.",
1076+ "httpMethod": "PATCH",
1077+ "id": "adexchangebuyer.proposals.patch",
1078+ "parameterOrder": [
1079+ "proposalId",
1080+ "revisionNumber",
1081+ "updateAction"
1082+ ],
1083+ "parameters": {
1084+ "proposalId": {
1085+ "description": "The proposal id to update.",
1086+ "location": "path",
1087+ "required": true,
1088+ "type": "string"
1089+ },
1090+ "revisionNumber": {
1091+ "description": "The last known revision number to update. If the head revision in the marketplace database has since changed, an error will be thrown. The caller should then fetch the latest proposal at head revision and retry the update at that revision.",
1092+ "format": "int64",
1093+ "location": "path",
1094+ "required": true,
1095+ "type": "string"
1096+ },
1097+ "updateAction": {
1098+ "description": "The proposed action to take on the proposal. This field is required and it must be set when updating a proposal.",
1099+ "enum": [
1100+ "accept",
1101+ "cancel",
1102+ "propose",
1103+ "proposeAndAccept",
1104+ "unknownAction",
1105+ "updateNonTerms"
1106+ ],
1107+ "enumDescriptions": [
1108+ "",
1109+ "",
1110+ "",
1111+ "",
1112+ "",
1113+ ""
1114+ ],
1115+ "location": "path",
1116+ "required": true,
1117+ "type": "string"
1118+ }
1119+ },
1120+ "path": "proposals/{proposalId}/{revisionNumber}/{updateAction}",
1121+ "request": {
1122+ "$ref": "Proposal"
1123+ },
1124+ "response": {
1125+ "$ref": "Proposal"
1126+ },
1127+ "scopes": [
1128+ "https://www.googleapis.com/auth/adexchange.buyer"
1129+ ]
1130+ },
1131+ "search": {
1132+ "description": "Search for proposals using pql query",
1133+ "httpMethod": "GET",
1134+ "id": "adexchangebuyer.proposals.search",
1135+ "parameters": {
1136+ "pqlQuery": {
1137+ "description": "Query string to retrieve specific proposals.",
1138+ "location": "query",
1139+ "type": "string"
1140+ }
1141+ },
1142+ "path": "proposals/search",
1143+ "response": {
1144+ "$ref": "GetOrdersResponse"
1145+ },
1146+ "scopes": [
1147+ "https://www.googleapis.com/auth/adexchange.buyer"
1148+ ]
1149+ },
1150+ "setupcomplete": {
1151+ "description": "Update the given proposal to indicate that setup has been completed.",
1152+ "httpMethod": "POST",
1153+ "id": "adexchangebuyer.proposals.setupcomplete",
1154+ "parameterOrder": [
1155+ "proposalId"
1156+ ],
1157+ "parameters": {
1158+ "proposalId": {
1159+ "description": "The proposal id for which the setup is complete",
1160+ "location": "path",
1161+ "required": true,
1162+ "type": "string"
1163+ }
1164+ },
1165+ "path": "proposals/{proposalId}/setupcomplete",
1166+ "scopes": [
1167+ "https://www.googleapis.com/auth/adexchange.buyer"
1168+ ]
1169+ },
1170+ "update": {
1171+ "description": "Update the given proposal",
1172+ "httpMethod": "PUT",
1173+ "id": "adexchangebuyer.proposals.update",
1174+ "parameterOrder": [
1175+ "proposalId",
1176+ "revisionNumber",
1177+ "updateAction"
1178+ ],
1179+ "parameters": {
1180+ "proposalId": {
1181+ "description": "The proposal id to update.",
1182+ "location": "path",
1183+ "required": true,
1184+ "type": "string"
1185+ },
1186+ "revisionNumber": {
1187+ "description": "The last known revision number to update. If the head revision in the marketplace database has since changed, an error will be thrown. The caller should then fetch the latest proposal at head revision and retry the update at that revision.",
1188+ "format": "int64",
1189+ "location": "path",
1190+ "required": true,
1191+ "type": "string"
1192+ },
1193+ "updateAction": {
1194+ "description": "The proposed action to take on the proposal. This field is required and it must be set when updating a proposal.",
1195+ "enum": [
1196+ "accept",
1197+ "cancel",
1198+ "propose",
1199+ "proposeAndAccept",
1200+ "unknownAction",
1201+ "updateNonTerms"
1202+ ],
1203+ "enumDescriptions": [
1204+ "",
1205+ "",
1206+ "",
1207+ "",
1208+ "",
1209+ ""
1210+ ],
1211+ "location": "path",
1212+ "required": true,
1213+ "type": "string"
1214+ }
1215+ },
1216+ "path": "proposals/{proposalId}/{revisionNumber}/{updateAction}",
1217+ "request": {
1218+ "$ref": "Proposal"
1219+ },
1220+ "response": {
1221+ "$ref": "Proposal"
1222+ },
1223+ "scopes": [
1224+ "https://www.googleapis.com/auth/adexchange.buyer"
1225+ ]
1226+ }
1227+ }
895 },
1228 },
896− "nextPageToken": {
1229+ "pubprofiles": {
897− "type": "string",
1230+ "methods": {
898− "description": "Continuation token used to page through creatives. To retrieve the next page of results, set the next request's \"pageToken\" value to this."
1231+ "list": {
1232+ "description": "Gets the requested publisher profile(s) by publisher accountId.",
1233+ "httpMethod": "GET",
1234+ "id": "adexchangebuyer.pubprofiles.list",
1235+ "parameterOrder": [
1236+ "accountId"
1237+ ],
1238+ "parameters": {
1239+ "accountId": {
1240+ "description": "The accountId of the publisher to get profiles for.",
1241+ "format": "int32",
1242+ "location": "path",
1243+ "required": true,
1244+ "type": "integer"
1245+ }
1246+ },
1247+ "path": "publisher/{accountId}/profiles",
1248+ "response": {
1249+ "$ref": "GetPublisherProfilesByAccountIdResponse"
1250+ },
1251+ "scopes": [
1252+ "https://www.googleapis.com/auth/adexchange.buyer"
1253+ ]
1254+ }
1255+ }
899 }
1256 }
900− }
901 },
1257 },
902− "DateTime": {
1258+ "revision": "20180823",
903− "id": "DateTime",
1259+ "rootUrl": "https://www.googleapis.com/",
904− "type": "object",
1260+ "schemas": {
905− "properties": {
1261+ "Account": {
906− "day": {
1262+ "description": "Configuration data for an Ad Exchange buyer account.",
907− "type": "integer",
1263+ "id": "Account",
908− "format": "int32"
1264+ "properties": {
909− },
1265+ "applyPretargetingToNonGuaranteedDeals": {
910− "hour": {
1266+ "description": "When this is false, bid requests that include a deal ID for a private auction or preferred deal are always sent to your bidder. When true, all active pretargeting configs will be applied to private auctions and preferred deals. Programmatic Guaranteed deals (when enabled) are always sent to your bidder.",
911− "type": "integer",
1267+ "type": "boolean"
912− "format": "int32"
1268+ },
1269+ "bidderLocation": {
1270+ "description": "Your bidder locations that have distinct URLs.",
1271+ "items": {
1272+ "properties": {
1273+ "bidProtocol": {
1274+ "description": "The protocol that the bidder endpoint is using. OpenRTB protocols with prefix PROTOCOL_OPENRTB_PROTOBUF use proto buffer, otherwise use JSON. Allowed values: \n- PROTOCOL_ADX \n- PROTOCOL_OPENRTB_2_2 \n- PROTOCOL_OPENRTB_2_3 \n- PROTOCOL_OPENRTB_2_4 \n- PROTOCOL_OPENRTB_2_5 \n- PROTOCOL_OPENRTB_PROTOBUF_2_3 \n- PROTOCOL_OPENRTB_PROTOBUF_2_4 \n- PROTOCOL_OPENRTB_PROTOBUF_2_5",
1275+ "type": "string"
1276+ },
1277+ "maximumQps": {
1278+ "description": "The maximum queries per second the Ad Exchange will send.",
1279+ "format": "int32",
1280+ "type": "integer"
1281+ },
1282+ "region": {
1283+ "description": "The geographical region the Ad Exchange should send requests from. Only used by some quota systems, but always setting the value is recommended. Allowed values: \n- ASIA \n- EUROPE \n- US_EAST \n- US_WEST",
1284+ "type": "string"
1285+ },
1286+ "url": {
1287+ "description": "The URL to which the Ad Exchange will send bid requests.",
1288+ "type": "string"
1289+ }
1290+ },
1291+ "type": "object"
1292+ },
1293+ "type": "array"
1294+ },
1295+ "cookieMatchingNid": {
1296+ "description": "The nid parameter value used in cookie match requests. Please contact your technical account manager if you need to change this.",
1297+ "type": "string"
1298+ },
1299+ "cookieMatchingUrl": {
1300+ "description": "The base URL used in cookie match requests.",
1301+ "type": "string"
1302+ },
1303+ "id": {
1304+ "description": "Account id.",
1305+ "format": "int32",
1306+ "type": "integer"
1307+ },
1308+ "kind": {
1309+ "default": "adexchangebuyer#account",
1310+ "description": "Resource type.",
1311+ "type": "string"
1312+ },
1313+ "maximumActiveCreatives": {
1314+ "description": "The maximum number of active creatives that an account can have, where a creative is active if it was inserted or bid with in the last 30 days. Please contact your technical account manager if you need to change this.",
1315+ "format": "int32",
1316+ "type": "integer"
1317+ },
1318+ "maximumTotalQps": {
1319+ "description": "The sum of all bidderLocation.maximumQps values cannot exceed this. Please contact your technical account manager if you need to change this.",
1320+ "format": "int32",
1321+ "type": "integer"
1322+ },
1323+ "numberActiveCreatives": {
1324+ "description": "The number of creatives that this account inserted or bid with in the last 30 days.",
1325+ "format": "int32",
1326+ "type": "integer"
1327+ }
1328+ },
1329+ "type": "object"
913 },
1330 },
914− "minute": {
1331+ "AccountsList": {
915− "type": "integer",
1332+ "description": "An account feed lists Ad Exchange buyer accounts that the user has access to. Each entry in the feed corresponds to a single buyer account.",
916− "format": "int32"
1333+ "id": "AccountsList",
1334+ "properties": {
1335+ "items": {
1336+ "description": "A list of accounts.",
1337+ "items": {
1338+ "$ref": "Account"
1339+ },
1340+ "type": "array"
1341+ },
1342+ "kind": {
1343+ "default": "adexchangebuyer#accountsList",
1344+ "description": "Resource type.",
1345+ "type": "string"
1346+ }
1347+ },
1348+ "type": "object"
917 },
1349 },
918− "month": {
1350+ "AddOrderDealsRequest": {
919− "type": "integer",
1351+ "id": "AddOrderDealsRequest",
920− "format": "int32"
1352+ "properties": {
1353+ "deals": {
1354+ "description": "The list of deals to add",
1355+ "items": {
1356+ "$ref": "MarketplaceDeal"
1357+ },
1358+ "type": "array"
1359+ },
1360+ "proposalRevisionNumber": {
1361+ "description": "The last known proposal revision number.",
1362+ "format": "int64",
1363+ "type": "string"
1364+ },
1365+ "updateAction": {
1366+ "description": "Indicates an optional action to take on the proposal",
1367+ "type": "string"
1368+ }
1369+ },
1370+ "type": "object"
921 },
1371 },
922− "second": {
1372+ "AddOrderDealsResponse": {
923− "type": "integer",
1373+ "id": "AddOrderDealsResponse",
924− "format": "int32"
1374+ "properties": {
1375+ "deals": {
1376+ "description": "List of deals added (in the same proposal as passed in the request)",
1377+ "items": {
1378+ "$ref": "MarketplaceDeal"
1379+ },
1380+ "type": "array"
1381+ },
1382+ "proposalRevisionNumber": {
1383+ "description": "The updated revision number for the proposal.",
1384+ "format": "int64",
1385+ "type": "string"
1386+ }
1387+ },
1388+ "type": "object"
925 },
1389 },
926− "timeZoneId": {
1390+ "AddOrderNotesRequest": {
927− "type": "string"
1391+ "id": "AddOrderNotesRequest",
1392+ "properties": {
1393+ "notes": {
1394+ "description": "The list of notes to add.",
1395+ "items": {
1396+ "$ref": "MarketplaceNote"
1397+ },
1398+ "type": "array"
1399+ }
1400+ },
1401+ "type": "object"
928 },
1402 },
929− "year": {
1403+ "AddOrderNotesResponse": {
930− "type": "integer",
1404+ "id": "AddOrderNotesResponse",
931− "format": "int32"
1405+ "properties": {
932− }
1406+ "notes": {
933− }
1407+ "items": {
934− },
1408+ "$ref": "MarketplaceNote"
935− "DealPartyDto": {
1409+ },
936− "id": "DealPartyDto",
1410+ "type": "array"
937− "type": "object",
1411+ }
938− "properties": {
1412+ },
939− "buyer": {
1413+ "type": "object"
940− "$ref": "BuyerDto"
941 },
1414 },
942− "buyerSellerRole": {
1415+ "BillingInfo": {
943− "type": "string"
1416+ "description": "The configuration data for an Ad Exchange billing info.",
1417+ "id": "BillingInfo",
1418+ "properties": {
1419+ "accountId": {
1420+ "description": "Account id.",
1421+ "format": "int32",
1422+ "type": "integer"
1423+ },
1424+ "accountName": {
1425+ "description": "Account name.",
1426+ "type": "string"
1427+ },
1428+ "billingId": {
1429+ "description": "A list of adgroup IDs associated with this particular account. These IDs may show up as part of a realtime bidding BidRequest, which indicates a bid request for this account.",
1430+ "items": {
1431+ "type": "string"
1432+ },
1433+ "type": "array"
1434+ },
1435+ "kind": {
1436+ "default": "adexchangebuyer#billingInfo",
1437+ "description": "Resource type.",
1438+ "type": "string"
1439+ }
1440+ },
1441+ "type": "object"
944 },
1442 },
945− "customerId": {
1443+ "BillingInfoList": {
946− "type": "integer",
1444+ "description": "A billing info feed lists Billing Info the Ad Exchange buyer account has access to. Each entry in the feed corresponds to a single billing info.",
947− "format": "int32"
1445+ "id": "BillingInfoList",
1446+ "properties": {
1447+ "items": {
1448+ "description": "A list of billing info relevant for your account.",
1449+ "items": {
1450+ "$ref": "BillingInfo"
1451+ },
1452+ "type": "array"
1453+ },
1454+ "kind": {
1455+ "default": "adexchangebuyer#billingInfoList",
1456+ "description": "Resource type.",
1457+ "type": "string"
1458+ }
1459+ },
1460+ "type": "object"
948 },
1461 },
949− "name": {
1462+ "Budget": {
950− "type": "string"
1463+ "description": "The configuration data for Ad Exchange RTB - Budget API.",
1464+ "id": "Budget",
1465+ "properties": {
1466+ "accountId": {
1467+ "description": "The id of the account. This is required for get and update requests.",
1468+ "format": "int64",
1469+ "type": "string"
1470+ },
1471+ "billingId": {
1472+ "description": "The billing id to determine which adgroup to provide budget information for. This is required for get and update requests.",
1473+ "format": "int64",
1474+ "type": "string"
1475+ },
1476+ "budgetAmount": {
1477+ "description": "The daily budget amount in unit amount of the account currency to apply for the billingId provided. This is required for update requests.",
1478+ "format": "int64",
1479+ "type": "string"
1480+ },
1481+ "currencyCode": {
1482+ "description": "The currency code for the buyer. This cannot be altered here.",
1483+ "type": "string"
1484+ },
1485+ "id": {
1486+ "description": "The unique id that describes this item.",
1487+ "type": "string"
1488+ },
1489+ "kind": {
1490+ "default": "adexchangebuyer#budget",
1491+ "description": "The kind of the resource, i.e. \"adexchangebuyer#budget\".",
1492+ "type": "string"
1493+ }
1494+ },
1495+ "type": "object"
951 },
1496 },
952− "webProperty": {
1497+ "Buyer": {
953− "$ref": "WebPropertyDto"
1498+ "id": "Buyer",
954− }
1499+ "properties": {
955− }
1500+ "accountId": {
956− },
1501+ "description": "Adx account id of the buyer.",
957− "DealTerms": {
1502+ "type": "string"
958− "id": "DealTerms",
1503+ }
959− "type": "object",
1504+ },
960− "properties": {
1505+ "type": "object"
961− "description": {
962− "type": "string",
963− "description": "Description for the proposed terms of the deal."
964 },
1506 },
965− "guaranteedFixedPriceTerms": {
1507+ "ContactInformation": {
966− "$ref": "DealTermsGuaranteedFixedPriceTerms",
1508+ "id": "ContactInformation",
967− "description": "The terms for guaranteed fixed price deals."
1509+ "properties": {
1510+ "email": {
1511+ "description": "Email address of the contact.",
1512+ "type": "string"
1513+ },
1514+ "name": {
1515+ "description": "The name of the contact.",
1516+ "type": "string"
1517+ }
1518+ },
1519+ "type": "object"
968 },
1520 },
969− "nonGuaranteedAuctionTerms": {
1521+ "CreateOrdersRequest": {
970− "$ref": "DealTermsNonGuaranteedAuctionTerms",
1522+ "id": "CreateOrdersRequest",
971− "description": "The terms for non-guaranteed auction deals."
1523+ "properties": {
1524+ "proposals": {
1525+ "description": "The list of proposals to create.",
1526+ "items": {
1527+ "$ref": "Proposal"
1528+ },
1529+ "type": "array"
1530+ },
1531+ "webPropertyCode": {
1532+ "description": "Web property id of the seller creating these orders",
1533+ "type": "string"
1534+ }
1535+ },
1536+ "type": "object"
972 },
1537 },
973− "nonGuaranteedFixedPriceTerms": {
1538+ "CreateOrdersResponse": {
974− "$ref": "DealTermsNonGuaranteedFixedPriceTerms",
1539+ "id": "CreateOrdersResponse",
975− "description": "The terms for non-guaranteed fixed price deals."
1540+ "properties": {
976− }
1541+ "proposals": {
977− }
1542+ "description": "The list of proposals successfully created.",
978− },
1543+ "items": {
979− "DealTermsGuaranteedFixedPriceTerms": {
1544+ "$ref": "Proposal"
980− "id": "DealTermsGuaranteedFixedPriceTerms",
1545+ },
981− "type": "object",
1546+ "type": "array"
982− "properties": {
1547+ }
983− "fixedPrices": {
1548+ },
984− "type": "array",
1549+ "type": "object"
985− "description": "Fixed price for the specified buyer.",
986− "items": {
987− "$ref": "PricePerBuyer"
988− }
989 },
1550 },
990− "guaranteedImpressions": {
1551+ "Creative": {
991− "type": "string",
1552+ "description": "A creative and its classification data.",
992− "description": "Guaranteed impressions as a percentage. This is the percentage of guaranteed looks that the buyer is guaranteeing to buy.",
1553+ "id": "Creative",
993− "format": "int64"
1554+ "properties": {
1555+ "HTMLSnippet": {
1556+ "description": "The HTML snippet that displays the ad when inserted in the web page. If set, videoURL, videoVastXML, and nativeAd should not be set.",
1557+ "type": "string"
1558+ },
1559+ "accountId": {
1560+ "annotations": {
1561+ "required": [
1562+ "adexchangebuyer.creatives.insert"
1563+ ]
1564+ },
1565+ "description": "Account id.",
1566+ "format": "int32",
1567+ "type": "integer"
1568+ },
1569+ "adChoicesDestinationUrl": {
1570+ "description": "The link to the Ad Preferences page. This is only supported for native ads.",
1571+ "type": "string"
1572+ },
1573+ "advertiserId": {
1574+ "description": "Detected advertiser id, if any. Read-only. This field should not be set in requests.",
1575+ "items": {
1576+ "format": "int64",
1577+ "type": "string"
1578+ },
1579+ "type": "array"
1580+ },
1581+ "advertiserName": {
1582+ "annotations": {
1583+ "required": [
1584+ "adexchangebuyer.creatives.insert"
1585+ ]
1586+ },
1587+ "description": "The name of the company being advertised in the creative. The value provided must exist in the advertisers.txt file.",
1588+ "type": "string"
1589+ },
1590+ "agencyId": {
1591+ "description": "The agency id for this creative.",
1592+ "format": "int64",
1593+ "type": "string"
1594+ },
1595+ "apiUploadTimestamp": {
1596+ "description": "The last upload timestamp of this creative if it was uploaded via API. Read-only. The value of this field is generated, and will be ignored for uploads. (formatted RFC 3339 timestamp).",
1597+ "format": "date-time",
1598+ "type": "string"
1599+ },
1600+ "attribute": {
1601+ "description": "List of buyer selectable attributes for the ads that may be shown from this snippet. Each attribute is represented by an integer as defined in buyer-declarable-creative-attributes.txt.",
1602+ "items": {
1603+ "format": "int32",
1604+ "type": "integer"
1605+ },
1606+ "type": "array"
1607+ },
1608+ "buyerCreativeId": {
1609+ "annotations": {
1610+ "required": [
1611+ "adexchangebuyer.creatives.insert"
1612+ ]
1613+ },
1614+ "description": "A buyer-specific id identifying the creative in this ad.",
1615+ "type": "string"
1616+ },
1617+ "clickThroughUrl": {
1618+ "annotations": {
1619+ "required": [
1620+ "adexchangebuyer.creatives.insert"
1621+ ]
1622+ },
1623+ "description": "The set of destination urls for the snippet.",
1624+ "items": {
1625+ "type": "string"
1626+ },
1627+ "type": "array"
1628+ },
1629+ "corrections": {
1630+ "description": "Shows any corrections that were applied to this creative. Read-only. This field should not be set in requests.",
1631+ "items": {
1632+ "properties": {
1633+ "contexts": {
1634+ "description": "All known serving contexts containing serving status information.",
1635+ "items": {
1636+ "properties": {
1637+ "auctionType": {
1638+ "description": "Only set when contextType=AUCTION_TYPE. Represents the auction types this correction applies to.",
1639+ "items": {
1640+ "type": "string"
1641+ },
1642+ "type": "array"
1643+ },
1644+ "contextType": {
1645+ "description": "The type of context (e.g., location, platform, auction type, SSL-ness).",
1646+ "type": "string"
1647+ },
1648+ "geoCriteriaId": {
1649+ "description": "Only set when contextType=LOCATION. Represents the geo criterias this correction applies to.",
1650+ "items": {
1651+ "format": "int32",
1652+ "type": "integer"
1653+ },
1654+ "type": "array"
1655+ },
1656+ "platform": {
1657+ "description": "Only set when contextType=PLATFORM. Represents the platforms this correction applies to.",
1658+ "items": {
1659+ "type": "string"
1660+ },
1661+ "type": "array"
1662+ }
1663+ },
1664+ "type": "object"
1665+ },
1666+ "type": "array"
1667+ },
1668+ "details": {
1669+ "description": "Additional details about the correction.",
1670+ "items": {
1671+ "type": "string"
1672+ },
1673+ "type": "array"
1674+ },
1675+ "reason": {
1676+ "description": "The type of correction that was applied to the creative.",
1677+ "type": "string"
1678+ }
1679+ },
1680+ "type": "object"
1681+ },
1682+ "type": "array"
1683+ },
1684+ "creativeStatusIdentityType": {
1685+ "description": "Creative status identity type that the creative item applies to. Ad Exchange real-time bidding is migrating to the sizeless creative verification. Originally, Ad Exchange assigned creative verification status to a unique combination of a buyer creative ID and creative dimensions. Post-migration, a single verification status will be assigned at the buyer creative ID level. This field allows to distinguish whether a given creative status applies to a unique combination of a buyer creative ID and creative dimensions, or to a buyer creative ID as a whole.",
1686+ "type": "string"
1687+ },
1688+ "dealsStatus": {
1689+ "description": "Top-level deals status. Read-only. This field should not be set in requests. If disapproved, an entry for auctionType=DIRECT_DEALS (or ALL) in servingRestrictions will also exist. Note that this may be nuanced with other contextual restrictions, in which case it may be preferable to read from servingRestrictions directly.",
1690+ "type": "string"
1691+ },
1692+ "detectedDomains": {
1693+ "description": "Detected domains for this creative. Read-only. This field should not be set in requests.",
1694+ "items": {
1695+ "type": "string"
1696+ },
1697+ "type": "array"
1698+ },
1699+ "filteringReasons": {
1700+ "description": "The filtering reasons for the creative. Read-only. This field should not be set in requests.",
1701+ "properties": {
1702+ "date": {
1703+ "description": "The date in ISO 8601 format for the data. The data is collected from 00:00:00 to 23:59:59 in PST.",
1704+ "type": "string"
1705+ },
1706+ "reasons": {
1707+ "description": "The filtering reasons.",
1708+ "items": {
1709+ "properties": {
1710+ "filteringCount": {
1711+ "description": "The number of times the creative was filtered for the status. The count is aggregated across all publishers on the exchange.",
1712+ "format": "int64",
1713+ "type": "string"
1714+ },
1715+ "filteringStatus": {
1716+ "description": "The filtering status code as defined in creative-status-codes.txt.",
1717+ "format": "int32",
1718+ "type": "integer"
1719+ }
1720+ },
1721+ "type": "object"
1722+ },
1723+ "type": "array"
1724+ }
1725+ },
1726+ "type": "object"
1727+ },
1728+ "height": {
1729+ "annotations": {
1730+ "required": [
1731+ "adexchangebuyer.creatives.insert"
1732+ ]
1733+ },
1734+ "description": "Ad height.",
1735+ "format": "int32",
1736+ "type": "integer"
1737+ },
1738+ "impressionTrackingUrl": {
1739+ "description": "The set of urls to be called to record an impression.",
1740+ "items": {
1741+ "type": "string"
1742+ },
1743+ "type": "array"
1744+ },
1745+ "kind": {
1746+ "default": "adexchangebuyer#creative",
1747+ "description": "Resource type.",
1748+ "type": "string"
1749+ },
1750+ "languages": {
1751+ "description": "Detected languages for this creative. Read-only. This field should not be set in requests.",
1752+ "items": {
1753+ "type": "string"
1754+ },
1755+ "type": "array"
1756+ },
1757+ "nativeAd": {
1758+ "description": "If nativeAd is set, HTMLSnippet, videoVastXML, and the videoURL outside of nativeAd should not be set. (The videoURL inside nativeAd can be set.)",
1759+ "properties": {
1760+ "advertiser": {
1761+ "type": "string"
1762+ },
1763+ "appIcon": {
1764+ "description": "The app icon, for app download ads.",
1765+ "properties": {
1766+ "height": {
1767+ "format": "int32",
1768+ "type": "integer"
1769+ },
1770+ "url": {
1771+ "type": "string"
1772+ },
1773+ "width": {
1774+ "format": "int32",
1775+ "type": "integer"
1776+ }
1777+ },
1778+ "type": "object"
1779+ },
1780+ "body": {
1781+ "description": "A long description of the ad.",
1782+ "type": "string"
1783+ },
1784+ "callToAction": {
1785+ "description": "A label for the button that the user is supposed to click.",
1786+ "type": "string"
1787+ },
1788+ "clickLinkUrl": {
1789+ "description": "The URL that the browser/SDK will load when the user clicks the ad.",
1790+ "type": "string"
1791+ },
1792+ "clickTrackingUrl": {
1793+ "description": "The URL to use for click tracking.",
1794+ "type": "string"
1795+ },
1796+ "headline": {
1797+ "description": "A short title for the ad.",
1798+ "type": "string"
1799+ },
1800+ "image": {
1801+ "description": "A large image.",
1802+ "properties": {
1803+ "height": {
1804+ "format": "int32",
1805+ "type": "integer"
1806+ },
1807+ "url": {
1808+ "type": "string"
1809+ },
1810+ "width": {
1811+ "format": "int32",
1812+ "type": "integer"
1813+ }
1814+ },
1815+ "type": "object"
1816+ },
1817+ "impressionTrackingUrl": {
1818+ "description": "The URLs are called when the impression is rendered.",
1819+ "items": {
1820+ "type": "string"
1821+ },
1822+ "type": "array"
1823+ },
1824+ "logo": {
1825+ "description": "A smaller image, for the advertiser logo.",
1826+ "properties": {
1827+ "height": {
1828+ "format": "int32",
1829+ "type": "integer"
1830+ },
1831+ "url": {
1832+ "type": "string"
1833+ },
1834+ "width": {
1835+ "format": "int32",
1836+ "type": "integer"
1837+ }
1838+ },
1839+ "type": "object"
1840+ },
1841+ "price": {
1842+ "description": "The price of the promoted app including the currency info.",
1843+ "type": "string"
1844+ },
1845+ "starRating": {
1846+ "description": "The app rating in the app store. Must be in the range [0-5].",
1847+ "format": "double",
1848+ "type": "number"
1849+ },
1850+ "store": {
1851+ "description": "The URL to the app store to purchase/download the promoted app.",
1852+ "type": "string"
1853+ },
1854+ "videoURL": {
1855+ "description": "The URL of the XML VAST for a native ad. Note this is a separate field from resource.video_url.",
1856+ "type": "string"
1857+ }
1858+ },
1859+ "type": "object"
1860+ },
1861+ "openAuctionStatus": {
1862+ "description": "Top-level open auction status. Read-only. This field should not be set in requests. If disapproved, an entry for auctionType=OPEN_AUCTION (or ALL) in servingRestrictions will also exist. Note that this may be nuanced with other contextual restrictions, in which case it may be preferable to read from ServingRestrictions directly.",
1863+ "type": "string"
1864+ },
1865+ "productCategories": {
1866+ "description": "Detected product categories, if any. Each category is represented by an integer as defined in ad-product-categories.txt. Read-only. This field should not be set in requests.",
1867+ "items": {
1868+ "format": "int32",
1869+ "type": "integer"
1870+ },
1871+ "type": "array"
1872+ },
1873+ "restrictedCategories": {
1874+ "description": "All restricted categories for the ads that may be shown from this snippet. Each category is represented by an integer as defined in the ad-restricted-categories.txt.",
1875+ "items": {
1876+ "format": "int32",
1877+ "type": "integer"
1878+ },
1879+ "type": "array"
1880+ },
1881+ "sensitiveCategories": {
1882+ "description": "Detected sensitive categories, if any. Each category is represented by an integer as defined in ad-sensitive-categories.txt. Read-only. This field should not be set in requests.",
1883+ "items": {
1884+ "format": "int32",
1885+ "type": "integer"
1886+ },
1887+ "type": "array"
1888+ },
1889+ "servingRestrictions": {
1890+ "description": "The granular status of this ad in specific contexts. A context here relates to where something ultimately serves (for example, a physical location, a platform, an HTTPS vs HTTP request, or the type of auction). Read-only. This field should not be set in requests. See the examples in the Creatives guide for more details.",
1891+ "items": {
1892+ "properties": {
1893+ "contexts": {
1894+ "description": "All known contexts/restrictions.",
1895+ "items": {
1896+ "properties": {
1897+ "auctionType": {
1898+ "description": "Only set when contextType=AUCTION_TYPE. Represents the auction types this restriction applies to.",
1899+ "items": {
1900+ "type": "string"
1901+ },
1902+ "type": "array"
1903+ },
1904+ "contextType": {
1905+ "description": "The type of context (e.g., location, platform, auction type, SSL-ness).",
1906+ "type": "string"
1907+ },
1908+ "geoCriteriaId": {
1909+ "description": "Only set when contextType=LOCATION. Represents the geo criterias this restriction applies to. Impressions are considered to match a context if either the user location or publisher location matches a given geoCriteriaId.",
1910+ "items": {
1911+ "format": "int32",
1912+ "type": "integer"
1913+ },
1914+ "type": "array"
1915+ },
1916+ "platform": {
1917+ "description": "Only set when contextType=PLATFORM. Represents the platforms this restriction applies to.",
1918+ "items": {
1919+ "type": "string"
1920+ },
1921+ "type": "array"
1922+ }
1923+ },
1924+ "type": "object"
1925+ },
1926+ "type": "array"
1927+ },
1928+ "disapprovalReasons": {
1929+ "description": "The reasons for disapproval within this restriction, if any. Note that not all disapproval reasons may be categorized, so it is possible for the creative to have a status of DISAPPROVED or CONDITIONALLY_APPROVED with an empty list for disapproval_reasons. In this case, please reach out to your TAM to help debug the issue.",
1930+ "items": {
1931+ "properties": {
1932+ "details": {
1933+ "description": "Additional details about the reason for disapproval.",
1934+ "items": {
1935+ "type": "string"
1936+ },
1937+ "type": "array"
1938+ },
1939+ "reason": {
1940+ "description": "The categorized reason for disapproval.",
1941+ "type": "string"
1942+ }
1943+ },
1944+ "type": "object"
1945+ },
1946+ "type": "array"
1947+ },
1948+ "reason": {
1949+ "description": "Why the creative is ineligible to serve in this context (e.g., it has been explicitly disapproved or is pending review).",
1950+ "type": "string"
1951+ }
1952+ },
1953+ "type": "object"
1954+ },
1955+ "type": "array"
1956+ },
1957+ "vendorType": {
1958+ "description": "List of vendor types for the ads that may be shown from this snippet. Each vendor type is represented by an integer as defined in vendors.txt.",
1959+ "items": {
1960+ "format": "int32",
1961+ "type": "integer"
1962+ },
1963+ "type": "array"
1964+ },
1965+ "version": {
1966+ "description": "The version for this creative. Read-only. This field should not be set in requests.",
1967+ "format": "int32",
1968+ "type": "integer"
1969+ },
1970+ "videoURL": {
1971+ "description": "The URL to fetch a video ad. If set, HTMLSnippet, videoVastXML, and nativeAd should not be set. Note, this is different from resource.native_ad.video_url above.",
1972+ "type": "string"
1973+ },
1974+ "videoVastXML": {
1975+ "description": "The contents of a VAST document for a video ad. This document should conform to the VAST 2.0 or 3.0 standard. If set, HTMLSnippet, videoURL, and nativeAd and should not be set.",
1976+ "type": "string"
1977+ },
1978+ "width": {
1979+ "annotations": {
1980+ "required": [
1981+ "adexchangebuyer.creatives.insert"
1982+ ]
1983+ },
1984+ "description": "Ad width.",
1985+ "format": "int32",
1986+ "type": "integer"
1987+ }
1988+ },
1989+ "type": "object"
994 },
1990 },
995− "guaranteedLooks": {
1991+ "CreativeDealIds": {
996− "type": "string",
1992+ "description": "The external deal ids associated with a creative.",
997− "description": "Count of guaranteed looks. Required for deal, optional for offer.",
1993+ "id": "CreativeDealIds",
998− "format": "int64"
1994+ "properties": {
999− }
1995+ "dealStatuses": {
1000− }
1996+ "description": "A list of external deal ids and ARC approval status.",
1001− },
1997+ "items": {
1002− "DealTermsNonGuaranteedAuctionTerms": {
1998+ "properties": {
1003− "id": "DealTermsNonGuaranteedAuctionTerms",
1999+ "arcStatus": {
1004− "type": "object",
2000+ "description": "ARC approval status.",
1005− "properties": {
2001+ "type": "string"
1006− "privateAuctionId": {
2002+ },
1007− "type": "string",
2003+ "dealId": {
1008− "description": "Id of the corresponding private auction."
2004+ "description": "External deal ID.",
2005+ "format": "int64",
2006+ "type": "string"
2007+ },
2008+ "webPropertyId": {
2009+ "description": "Publisher ID.",
2010+ "format": "int32",
2011+ "type": "integer"
2012+ }
2013+ },
2014+ "type": "object"
2015+ },
2016+ "type": "array"
2017+ },
2018+ "kind": {
2019+ "default": "adexchangebuyer#creativeDealIds",
2020+ "description": "Resource type.",
2021+ "type": "string"
2022+ }
2023+ },
2024+ "type": "object"
1009 },
2025 },
1010− "reservePricePerBuyers": {
2026+ "CreativesList": {
1011− "type": "array",
2027+ "description": "The creatives feed lists the active creatives for the Ad Exchange buyer accounts that the user has access to. Each entry in the feed corresponds to a single creative.",
1012− "description": "Reserve price for the specified buyer.",
2028+ "id": "CreativesList",
1013− "items": {
2029+ "properties": {
1014− "$ref": "PricePerBuyer"
2030+ "items": {
1015− }
2031+ "description": "A list of creatives.",
1016− }
2032+ "items": {
1017− }
2033+ "$ref": "Creative"
1018− },
2034+ },
1019− "DealTermsNonGuaranteedFixedPriceTerms": {
2035+ "type": "array"
1020− "id": "DealTermsNonGuaranteedFixedPriceTerms",
2036+ },
1021− "type": "object",
2037+ "kind": {
1022− "properties": {
2038+ "default": "adexchangebuyer#creativesList",
1023− "fixedPrices": {
2039+ "description": "Resource type.",
1024− "type": "array",
2040+ "type": "string"
1025− "description": "Fixed price for the specified buyer.",
2041+ },
1026− "items": {
2042+ "nextPageToken": {
1027− "$ref": "PricePerBuyer"
2043+ "description": "Continuation token used to page through creatives. To retrieve the next page of results, set the next request's \"pageToken\" value to this.",
1028− }
2044+ "type": "string"
1029− }
2045+ }
1030− }
2046+ },
1031− },
2047+ "type": "object"
1032− "DeleteOrderDealsRequest": {
1033− "id": "DeleteOrderDealsRequest",
1034− "type": "object",
1035− "properties": {
1036− "dealIds": {
1037− "type": "array",
1038− "description": "List of deals to delete for a given order",
1039− "items": {
1040− "type": "string"
1041− }
1042 },
2048 },
1043− "orderRevisionNumber": {
2049+ "DealServingMetadata": {
1044− "type": "string",
2050+ "id": "DealServingMetadata",
1045− "description": "The last known order revision number.",
2051+ "properties": {
1046− "format": "int64"
2052+ "alcoholAdsAllowed": {
2053+ "description": "True if alcohol ads are allowed for this deal (read-only). This field is only populated when querying for finalized orders using the method GetFinalizedOrderDeals",
2054+ "type": "boolean"
2055+ },
2056+ "dealPauseStatus": {
2057+ "$ref": "DealServingMetadataDealPauseStatus",
2058+ "description": "Tracks which parties (if any) have paused a deal. (readonly, except via PauseResumeOrderDeals action)"
2059+ }
2060+ },
2061+ "type": "object"
1047 },
2062 },
1048− "updateAction": {
2063+ "DealServingMetadataDealPauseStatus": {
1049− "type": "string"
2064+ "description": "Tracks which parties (if any) have paused a deal. The deal is considered paused if has_buyer_paused || has_seller_paused. Each of the has_buyer_paused or the has_seller_paused bits can be set independently.",
1050− }
2065+ "id": "DealServingMetadataDealPauseStatus",
1051− }
2066+ "properties": {
1052− },
2067+ "buyerPauseReason": {
1053− "DeleteOrderDealsResponse": {
2068+ "type": "string"
1054− "id": "DeleteOrderDealsResponse",
2069+ },
1055− "type": "object",
2070+ "firstPausedBy": {
1056− "properties": {
2071+ "description": "If the deal is paused, records which party paused the deal first.",
1057− "deals": {
2072+ "type": "string"
1058− "type": "array",
2073+ },
1059− "description": "List of deals deleted (in the same order as passed in the request)",
2074+ "hasBuyerPaused": {
1060− "items": {
2075+ "type": "boolean"
1061− "$ref": "MarketplaceDeal"
2076+ },
1062− }
2077+ "hasSellerPaused": {
2078+ "type": "boolean"
2079+ },
2080+ "sellerPauseReason": {
2081+ "type": "string"
2082+ }
2083+ },
2084+ "type": "object"
1063 },
2085 },
1064− "orderRevisionNumber": {
2086+ "DealTerms": {
1065− "type": "string",
2087+ "id": "DealTerms",
1066− "description": "The updated revision number for the order.",
2088+ "properties": {
1067− "format": "int64"
2089+ "brandingType": {
1068− }
2090+ "description": "Visibilty of the URL in bid requests.",
1069− }
2091+ "type": "string"
1070− },
2092+ },
1071− "DeliveryControl": {
2093+ "crossListedExternalDealIdType": {
1072− "id": "DeliveryControl",
2094+ "description": "Indicates that this ExternalDealId exists under at least two different AdxInventoryDeals. Currently, the only case that the same ExternalDealId will exist is programmatic cross sell case.",
1073− "type": "object",
2095+ "type": "string"
1074− "properties": {
2096+ },
1075− "deliveryRateType": {
2097+ "description": {
1076− "type": "string"
2098+ "description": "Description for the proposed terms of the deal.",
2099+ "type": "string"
2100+ },
2101+ "estimatedGrossSpend": {
2102+ "$ref": "Price",
2103+ "description": "Non-binding estimate of the estimated gross spend for this deal Can be set by buyer or seller."
2104+ },
2105+ "estimatedImpressionsPerDay": {
2106+ "description": "Non-binding estimate of the impressions served per day Can be set by buyer or seller.",
2107+ "format": "int64",
2108+ "type": "string"
2109+ },
2110+ "guaranteedFixedPriceTerms": {
2111+ "$ref": "DealTermsGuaranteedFixedPriceTerms",
2112+ "description": "The terms for guaranteed fixed price deals."
2113+ },
2114+ "nonGuaranteedAuctionTerms": {
2115+ "$ref": "DealTermsNonGuaranteedAuctionTerms",
2116+ "description": "The terms for non-guaranteed auction deals."
2117+ },
2118+ "nonGuaranteedFixedPriceTerms": {
2119+ "$ref": "DealTermsNonGuaranteedFixedPriceTerms",
2120+ "description": "The terms for non-guaranteed fixed price deals."
2121+ },
2122+ "rubiconNonGuaranteedTerms": {
2123+ "$ref": "DealTermsRubiconNonGuaranteedTerms",
2124+ "description": "The terms for rubicon non-guaranteed deals."
2125+ },
2126+ "sellerTimeZone": {
2127+ "description": "For deals with Cost Per Day billing, defines the timezone used to mark the boundaries of a day (buyer-readonly)",
2128+ "type": "string"
2129+ }
2130+ },
2131+ "type": "object"
1077 },
2132 },
1078− "frequencyCaps": {
2133+ "DealTermsGuaranteedFixedPriceTerms": {
1079− "type": "array",
2134+ "id": "DealTermsGuaranteedFixedPriceTerms",
1080− "items": {
2135+ "properties": {
1081− "$ref": "DeliveryControlFrequencyCap"
2136+ "billingInfo": {
1082− }
2137+ "$ref": "DealTermsGuaranteedFixedPriceTermsBillingInfo",
1083− }
2138+ "description": "External billing info for this Deal. This field is relevant when external billing info such as price has a different currency code than DFP/AdX."
1084− }
2139+ },
1085− },
2140+ "fixedPrices": {
1086− "DeliveryControlFrequencyCap": {
2141+ "description": "Fixed price for the specified buyer.",
1087− "id": "DeliveryControlFrequencyCap",
2142+ "items": {
1088− "type": "object",
2143+ "$ref": "PricePerBuyer"
1089− "properties": {
2144+ },
1090− "maxImpressions": {
2145+ "type": "array"
1091− "type": "integer",
2146+ },
1092− "format": "int32"
2147+ "guaranteedImpressions": {
2148+ "description": "Guaranteed impressions as a percentage. This is the percentage of guaranteed looks that the buyer is guaranteeing to buy.",
2149+ "format": "int64",
2150+ "type": "string"
2151+ },
2152+ "guaranteedLooks": {
2153+ "description": "Count of guaranteed looks. Required for deal, optional for product. For CPD deals, buyer changes to guaranteed_looks will be ignored.",
2154+ "format": "int64",
2155+ "type": "string"
2156+ },
2157+ "minimumDailyLooks": {
2158+ "description": "Count of minimum daily looks for a CPD deal. For CPD deals, buyer should negotiate on this field instead of guaranteed_looks.",
2159+ "format": "int64",
2160+ "type": "string"
2161+ }
2162+ },
2163+ "type": "object"
1093 },
2164 },
1094− "numTimeUnits": {
2165+ "DealTermsGuaranteedFixedPriceTermsBillingInfo": {
1095− "type": "integer",
2166+ "id": "DealTermsGuaranteedFixedPriceTermsBillingInfo",
1096− "format": "int32"
2167+ "properties": {
2168+ "currencyConversionTimeMs": {
2169+ "description": "The timestamp (in ms since epoch) when the original reservation price for the deal was first converted to DFP currency. This is used to convert the contracted price into buyer's currency without discrepancy.",
2170+ "format": "int64",
2171+ "type": "string"
2172+ },
2173+ "dfpLineItemId": {
2174+ "description": "The DFP line item id associated with this deal. For features like CPD, buyers can retrieve the DFP line item for billing reconciliation.",
2175+ "format": "int64",
2176+ "type": "string"
2177+ },
2178+ "originalContractedQuantity": {
2179+ "description": "The original contracted quantity (# impressions) for this deal. To ensure delivery, sometimes the publisher will book the deal with a impression buffer, such that guaranteed_looks is greater than the contracted quantity. However clients are billed using the original contracted quantity.",
2180+ "format": "int64",
2181+ "type": "string"
2182+ },
2183+ "price": {
2184+ "$ref": "Price",
2185+ "description": "The original reservation price for the deal, if the currency code is different from the one used in negotiation."
2186+ }
2187+ },
2188+ "type": "object"
1097 },
2189 },
1098− "timeUnitType": {
2190+ "DealTermsNonGuaranteedAuctionTerms": {
1099− "type": "string"
2191+ "id": "DealTermsNonGuaranteedAuctionTerms",
1100− }
2192+ "properties": {
1101− }
2193+ "autoOptimizePrivateAuction": {
1102− },
2194+ "description": "True if open auction buyers are allowed to compete with invited buyers in this private auction (buyer-readonly).",
1103− "EditAllOrderDealsRequest": {
2195+ "type": "boolean"
1104− "id": "EditAllOrderDealsRequest",
2196+ },
1105− "type": "object",
2197+ "reservePricePerBuyers": {
1106− "properties": {
2198+ "description": "Reserve price for the specified buyer.",
1107− "deals": {
2199+ "items": {
1108− "type": "array",
2200+ "$ref": "PricePerBuyer"
1109− "description": "List of deals to edit. Service may perform 3 different operations based on comparison of deals in this list vs deals already persisted in database: 1. Add new deal to order If a deal in this list does not exist in the order, the service will create a new deal and add it to the order. Validation will follow AddOrderDealsRequest. 2. Update existing deal in the order If a deal in this list already exist in the order, the service will update that existing deal to this new deal in the request. Validation will follow UpdateOrderDealsRequest. 3. Delete deals from the order (just need the id) If a existing deal in the order is not present in this list, the service will delete that deal from the order. Validation will follow DeleteOrderDealsRequest.",
2201+ },
1110− "items": {
2202+ "type": "array"
1111− "$ref": "MarketplaceDeal"
2203+ }
1112− }
2204+ },
2205+ "type": "object"
1113 },
2206 },
1114− "order": {
2207+ "DealTermsNonGuaranteedFixedPriceTerms": {
1115− "$ref": "MarketplaceOrder",
2208+ "id": "DealTermsNonGuaranteedFixedPriceTerms",
1116− "description": "If specified, also updates the order in the batch transaction. This is useful when the order and the deals need to be updated in one transaction."
2209+ "properties": {
2210+ "fixedPrices": {
2211+ "description": "Fixed price for the specified buyer.",
2212+ "items": {
2213+ "$ref": "PricePerBuyer"
2214+ },
2215+ "type": "array"
2216+ }
2217+ },
2218+ "type": "object"
1117 },
2219 },
1118− "orderRevisionNumber": {
2220+ "DealTermsRubiconNonGuaranteedTerms": {
1119− "type": "string",
2221+ "id": "DealTermsRubiconNonGuaranteedTerms",
1120− "description": "The last known revision number for the order.",
2222+ "properties": {
1121− "format": "int64"
2223+ "priorityPrice": {
2224+ "$ref": "Price",
2225+ "description": "Optional price for Rubicon priority access in the auction."
2226+ },
2227+ "standardPrice": {
2228+ "$ref": "Price",
2229+ "description": "Optional price for Rubicon standard access in the auction."
2230+ }
2231+ },
2232+ "type": "object"
1122 },
2233 },
1123− "updateAction": {
2234+ "DeleteOrderDealsRequest": {
1124− "type": "string",
2235+ "id": "DeleteOrderDealsRequest",
1125− "description": "Indicates an optional action to take on the order"
2236+ "properties": {
1126− }
2237+ "dealIds": {
1127− }
2238+ "description": "List of deals to delete for a given proposal",
1128− },
2239+ "items": {
1129− "EditAllOrderDealsResponse": {
2240+ "type": "string"
1130− "id": "EditAllOrderDealsResponse",
2241+ },
1131− "type": "object",
2242+ "type": "array"
1132− "properties": {
2243+ },
1133− "deals": {
2244+ "proposalRevisionNumber": {
1134− "type": "array",
2245+ "description": "The last known proposal revision number.",
1135− "description": "List of all deals in the order after edit.",
2246+ "format": "int64",
1136− "items": {
2247+ "type": "string"
1137− "$ref": "MarketplaceDeal"
2248+ },
1138− }
2249+ "updateAction": {
1139− }
2250+ "description": "Indicates an optional action to take on the proposal",
1140− }
2251+ "type": "string"
1141− },
2252+ }
1142− "EditHistoryDto": {
2253+ },
1143− "id": "EditHistoryDto",
2254+ "type": "object"
1144− "type": "object",
1145− "properties": {
1146− "createdByLoginName": {
1147− "type": "string"
1148 },
2255 },
1149− "createdTimeStamp": {
2256+ "DeleteOrderDealsResponse": {
1150− "type": "string",
2257+ "id": "DeleteOrderDealsResponse",
1151− "format": "int64"
2258+ "properties": {
2259+ "deals": {
2260+ "description": "List of deals deleted (in the same proposal as passed in the request)",
2261+ "items": {
2262+ "$ref": "MarketplaceDeal"
2263+ },
2264+ "type": "array"
2265+ },
2266+ "proposalRevisionNumber": {
2267+ "description": "The updated revision number for the proposal.",
2268+ "format": "int64",
2269+ "type": "string"
2270+ }
2271+ },
2272+ "type": "object"
1152 },
2273 },
1153− "lastUpdateTimeStamp": {
2274+ "DeliveryControl": {
1154− "type": "string",
2275+ "id": "DeliveryControl",
1155− "format": "int64"
2276+ "properties": {
2277+ "creativeBlockingLevel": {
2278+ "type": "string"
2279+ },
2280+ "deliveryRateType": {
2281+ "type": "string"
2282+ },
2283+ "frequencyCaps": {
2284+ "items": {
2285+ "$ref": "DeliveryControlFrequencyCap"
2286+ },
2287+ "type": "array"
2288+ }
2289+ },
2290+ "type": "object"
1156 },
2291 },
1157− "lastUpdatedByLoginName": {
2292+ "DeliveryControlFrequencyCap": {
1158− "type": "string"
2293+ "id": "DeliveryControlFrequencyCap",
1159− }
2294+ "properties": {
1160− }
2295+ "maxImpressions": {
1161− },
2296+ "format": "int32",
1162− "GetFinalizedNegotiationByExternalDealIdRequest": {
2297+ "type": "integer"
1163− "id": "GetFinalizedNegotiationByExternalDealIdRequest",
2298+ },
1164− "type": "object",
2299+ "numTimeUnits": {
1165− "properties": {
2300+ "format": "int32",
1166− "includePrivateAuctions": {
2301+ "type": "integer"
1167− "type": "boolean"
2302+ },
1168− }
2303+ "timeUnitType": {
1169− }
2304+ "type": "string"
1170− },
2305+ }
1171− "GetNegotiationByIdRequest": {
2306+ },
1172− "id": "GetNegotiationByIdRequest",
2307+ "type": "object"
1173− "type": "object",
1174− "properties": {
1175− "includePrivateAuctions": {
1176− "type": "boolean"
1177− }
1178− }
1179− },
1180− "GetNegotiationsRequest": {
1181− "id": "GetNegotiationsRequest",
1182− "type": "object",
1183− "properties": {
1184− "finalized": {
1185− "type": "boolean"
1186 },
2308 },
1187− "includePrivateAuctions": {
2309+ "Dimension": {
1188− "type": "boolean"
2310+ "description": "This message carries publisher provided breakdown. E.g. {dimension_type: 'COUNTRY', [{dimension_value: {id: 1, name: 'US'}}, {dimension_value: {id: 2, name: 'UK'}}]}",
2311+ "id": "Dimension",
2312+ "properties": {
2313+ "dimensionType": {
2314+ "type": "string"
2315+ },
2316+ "dimensionValues": {
2317+ "items": {
2318+ "$ref": "DimensionDimensionValue"
2319+ },
2320+ "type": "array"
2321+ }
2322+ },
2323+ "type": "object"
1189 },
2324 },
1190− "sinceTimestampMillis": {
2325+ "DimensionDimensionValue": {
1191− "type": "string",
2326+ "description": "Value of the dimension.",
1192− "format": "int64"
2327+ "id": "DimensionDimensionValue",
1193− }
1194− }
1195− },
1196− "GetNegotiationsResponse": {
1197− "id": "GetNegotiationsResponse",
1198− "type": "object",
1199− "properties": {
1200− "kind": {
1201− "type": "string",
1202− "default": "adexchangebuyer#negotiationsList"
1203− },
1204− "negotiations": {
1205− "type": "array",
1206− "items": {
1207− "$ref": "NegotiationDto"
1208− }
1209− }
1210− }
1211− },
1212− "GetOffersResponse": {
1213− "id": "GetOffersResponse",
1214− "type": "object",
1215− "properties": {
1216− "offers": {
1217− "type": "array",
1218− "description": "The returned list of offers.",
1219− "items": {
1220− "$ref": "MarketplaceOffer"
1221− }
1222− }
1223− }
1224− },
1225− "GetOrderDealsResponse": {
1226− "id": "GetOrderDealsResponse",
1227− "type": "object",
1228− "properties": {
1229− "deals": {
1230− "type": "array",
1231− "description": "List of deals for the order",
1232− "items": {
1233− "$ref": "MarketplaceDeal"
1234− }
1235− }
1236− }
1237− },
1238− "GetOrderNotesResponse": {
1239− "id": "GetOrderNotesResponse",
1240− "type": "object",
1241− "properties": {
1242− "notes": {
1243− "type": "array",
1244− "description": "The list of matching notes.",
1245− "items": {
1246− "$ref": "MarketplaceNote"
1247− }
1248− }
1249− }
1250− },
1251− "GetOrdersResponse": {
1252− "id": "GetOrdersResponse",
1253− "type": "object",
1254− "properties": {
1255− "orders": {
1256− "type": "array",
1257− "description": "The list of matching orders.",
1258− "items": {
1259− "$ref": "MarketplaceOrder"
1260− }
1261− }
1262− }
1263− },
1264− "InventorySegmentTargeting": {
1265− "id": "InventorySegmentTargeting",
1266− "type": "object",
1267− "properties": {
1268− "negativeAdSizes": {
1269− "type": "array",
1270− "items": {
1271− "$ref": "AdSize"
1272− }
1273− },
1274− "negativeAdTypeSegments": {
1275− "type": "array",
1276− "items": {
1277− "type": "string"
1278− }
1279− },
1280− "negativeAudienceSegments": {
1281− "type": "array",
1282− "items": {
1283− "type": "string",
1284− "format": "int64"
1285− }
1286− },
1287− "negativeDeviceCategories": {
1288− "type": "array",
1289− "items": {
1290− "type": "string",
1291− "format": "int64"
1292− }
1293− },
1294− "negativeIcmBrands": {
1295− "type": "array",
1296− "items": {
1297− "type": "string",
1298− "format": "int64"
1299− }
1300− },
1301− "negativeIcmInterests": {
1302− "type": "array",
1303− "items": {
1304− "type": "string",
1305− "format": "int64"
1306− }
1307− },
1308− "negativeInventorySlots": {
1309− "type": "array",
1310− "items": {
1311− "type": "string"
1312− }
1313− },
1314− "negativeKeyValues": {
1315− "type": "array",
1316− "items": {
1317− "$ref": "RuleKeyValuePair"
1318− }
1319− },
1320− "negativeLocations": {
1321− "type": "array",
1322− "items": {
1323− "type": "string",
1324− "format": "int64"
1325− }
1326− },
1327− "negativeMobileApps": {
1328− "type": "array",
1329− "items": {
1330− "type": "string"
1331− }
1332− },
1333− "negativeOperatingSystemVersions": {
1334− "type": "array",
1335− "items": {
1336− "type": "string",
1337− "format": "int64"
1338− }
1339− },
1340− "negativeOperatingSystems": {
1341− "type": "array",
1342− "items": {
1343− "type": "string",
1344− "format": "int64"
1345− }
1346− },
1347− "negativeSiteUrls": {
1348− "type": "array",
1349− "items": {
1350− "type": "string"
1351− }
1352− },
1353− "negativeSizes": {
1354− "type": "array",
1355− "items": {
1356− "type": "string",
1357− "format": "int64"
1358− }
1359− },
1360− "negativeVideoAdPositionSegments": {
1361− "type": "array",
1362− "items": {
1363− "type": "string"
1364− }
1365− },
1366− "negativeVideoDurationSegments": {
1367− "type": "array",
1368− "items": {
1369− "type": "string",
1370− "format": "int64"
1371− }
1372− },
1373− "negativeXfpAdSlots": {
1374− "type": "array",
1375− "items": {
1376− "type": "string",
1377− "format": "int64"
1378− }
1379− },
1380− "negativeXfpPlacements": {
1381− "type": "array",
1382− "items": {
1383− "type": "string",
1384− "format": "int64"
1385− }
1386− },
1387− "positiveAdSizes": {
1388− "type": "array",
1389− "items": {
1390− "$ref": "AdSize"
1391− }
1392− },
1393− "positiveAdTypeSegments": {
1394− "type": "array",
1395− "items": {
1396− "type": "string"
1397− }
1398− },
1399− "positiveAudienceSegments": {
1400− "type": "array",
1401− "items": {
1402− "type": "string",
1403− "format": "int64"
1404− }
1405− },
1406− "positiveDeviceCategories": {
1407− "type": "array",
1408− "items": {
1409− "type": "string",
1410− "format": "int64"
1411− }
1412− },
1413− "positiveIcmBrands": {
1414− "type": "array",
1415− "items": {
1416− "type": "string",
1417− "format": "int64"
1418− }
1419− },
1420− "positiveIcmInterests": {
1421− "type": "array",
1422− "items": {
1423− "type": "string",
1424− "format": "int64"
1425− }
1426− },
1427− "positiveInventorySlots": {
1428− "type": "array",
1429− "items": {
1430− "type": "string"
1431− }
1432− },
1433− "positiveKeyValues": {
1434− "type": "array",
1435− "items": {
1436− "$ref": "RuleKeyValuePair"
1437− }
1438− },
1439− "positiveLocations": {
1440− "type": "array",
1441− "items": {
1442− "type": "string",
1443− "format": "int64"
1444− }
1445− },
1446− "positiveMobileApps": {
1447− "type": "array",
1448− "items": {
1449− "type": "string"
1450− }
1451− },
1452− "positiveOperatingSystemVersions": {
1453− "type": "array",
1454− "items": {
1455− "type": "string",
1456− "format": "int64"
1457− }
1458− },
1459− "positiveOperatingSystems": {
1460− "type": "array",
1461− "items": {
1462− "type": "string",
1463− "format": "int64"
1464− }
1465− },
1466− "positiveSiteUrls": {
1467− "type": "array",
1468− "items": {
1469− "type": "string"
1470− }
1471− },
1472− "positiveSizes": {
1473− "type": "array",
1474− "items": {
1475− "type": "string",
1476− "format": "int64"
1477− }
1478− },
1479− "positiveVideoAdPositionSegments": {
1480− "type": "array",
1481− "items": {
1482− "type": "string"
1483− }
1484− },
1485− "positiveVideoDurationSegments": {
1486− "type": "array",
1487− "items": {
1488− "type": "string",
1489− "format": "int64"
1490− }
1491− },
1492− "positiveXfpAdSlots": {
1493− "type": "array",
1494− "items": {
1495− "type": "string",
1496− "format": "int64"
1497− }
1498− },
1499− "positiveXfpPlacements": {
1500− "type": "array",
1501− "items": {
1502− "type": "string",
1503− "format": "int64"
1504− }
1505− }
1506− }
1507− },
1508− "ListClientAccessCapabilitiesRequest": {
1509− "id": "ListClientAccessCapabilitiesRequest",
1510− "type": "object",
1511− "properties": {
1512− "sponsorAccountId": {
1513− "type": "string",
1514− "format": "int64"
1515− }
1516− }
1517− },
1518− "ListClientAccessCapabilitiesResponse": {
1519− "id": "ListClientAccessCapabilitiesResponse",
1520− "type": "object",
1521− "properties": {
1522− "clientAccessPermissions": {
1523− "type": "array",
1524− "items": {
1525− "$ref": "ClientAccessCapabilities"
1526− }
1527− }
1528− }
1529− },
1530− "ListOffersRequest": {
1531− "id": "ListOffersRequest",
1532− "type": "object",
1533− "properties": {
1534− "sinceTimestampMillis": {
1535− "type": "string",
1536− "format": "int64"
1537− }
1538− }
1539− },
1540− "ListOffersResponse": {
1541− "id": "ListOffersResponse",
1542− "type": "object",
1543− "properties": {
1544− "kind": {
1545− "type": "string",
1546− "default": "adexchangebuyer#offersList"
1547− },
1548− "offers": {
1549− "type": "array",
1550− "items": {
1551− "$ref": "OfferDto"
1552− }
1553− }
1554− }
1555− },
1556− "MarketplaceDeal": {
1557− "id": "MarketplaceDeal",
1558− "type": "object",
1559− "description": "An order can contain multiple deals. A deal contains the terms and targeting information that is used for serving.",
1560− "properties": {
1561− "buyerPrivateData": {
1562− "$ref": "PrivateData",
1563− "description": "Buyer private data (hidden from seller)."
1564− },
1565− "creationTimeMs": {
1566− "type": "string",
1567− "description": "The time (ms since epoch) of the deal creation. (readonly)",
1568− "format": "int64"
1569− },
1570− "dealId": {
1571− "type": "string",
1572− "description": "A unique deal=id for the deal (readonly)."
1573− },
1574− "deliveryControl": {
1575− "$ref": "DeliveryControl",
1576− "description": "The set of fields around delivery control that are interesting for a buyer to see but are non-negotiable. These are set by the publisher. This message is assigned an id of 100 since some day we would want to model this as a protobuf extension."
1577− },
1578− "externalDealId": {
1579− "type": "string",
1580− "description": "The external deal id assigned to this deal once the deal is finalized. This is the deal-id that shows up in serving/reporting etc. (readonly)"
1581− },
1582− "flightEndTimeMs": {
1583− "type": "string",
1584− "description": "Proposed flight end time of the deal (ms since epoch) This will generally be stored in a granularity of a second. (updatable)",
1585− "format": "int64"
1586− },
1587− "flightStartTimeMs": {
1588− "type": "string",
1589− "description": "Proposed flight start time of the deal (ms since epoch) This will generally be stored in a granularity of a second. (updatable)",
1590− "format": "int64"
1591− },
1592− "inventoryDescription": {
1593− "type": "string",
1594− "description": "Description for the deal terms. (updatable)"
1595− },
1596− "kind": {
1597− "type": "string",
1598− "description": "Identifies what kind of resource this is. Value: the fixed string \"adexchangebuyer#marketplaceDeal\".",
1599− "default": "adexchangebuyer#marketplaceDeal"
1600− },
1601− "lastUpdateTimeMs": {
1602− "type": "string",
1603− "description": "The time (ms since epoch) when the deal was last updated. (readonly)",
1604− "format": "int64"
1605− },
1606− "name": {
1607− "type": "string",
1608− "description": "The name of the deal. (updatable)"
1609− },
1610− "offerId": {
1611− "type": "string",
1612− "description": "The offer-id from which this deal was created. (readonly, except on create)"
1613− },
1614− "offerRevisionNumber": {
1615− "type": "string",
1616− "description": "The revision number of the offer that the deal was created from (readonly, except on create)",
1617− "format": "int64"
1618− },
1619− "orderId": {
1620− "type": "string"
1621− },
1622− "sellerContacts": {
1623− "type": "array",
1624− "description": "Optional Seller contact information for the deal (buyer-readonly)",
1625− "items": {
1626− "$ref": "ContactInformation"
1627− }
1628− },
1629− "sharedTargetings": {
1630− "type": "array",
1631− "description": "The shared targeting visible to buyers and sellers. (updatable)",
1632− "items": {
1633− "$ref": "SharedTargeting"
1634− }
1635− },
1636− "syndicationProduct": {
1637− "type": "string",
1638− "description": "The syndication product associated with the deal. (readonly, except on create)"
1639− },
1640− "terms": {
1641− "$ref": "DealTerms",
1642− "description": "The negotiable terms of the deal. (updatable)"
1643− },
1644− "webPropertyCode": {
1645− "type": "string"
1646− }
1647− }
1648− },
1649− "MarketplaceDealParty": {
1650− "id": "MarketplaceDealParty",
1651− "type": "object",
1652− "properties": {
1653− "buyer": {
1654− "$ref": "Buyer",
1655− "description": "The buyer/seller associated with the deal. One of buyer/seller is specified for a deal-party."
1656− },
1657− "seller": {
1658− "$ref": "Seller",
1659− "description": "The buyer/seller associated with the deal. One of buyer/seller is specified for a deal party."
1660− }
1661− }
1662− },
1663− "MarketplaceLabel": {
1664− "id": "MarketplaceLabel",
1665− "type": "object",
1666− "properties": {
1667− "accountId": {
1668− "type": "string",
1669− "description": "The accountId of the party that created the label."
1670− },
1671− "createTimeMs": {
1672− "type": "string",
1673− "description": "The creation time (in ms since epoch) for the label.",
1674− "format": "int64"
1675− },
1676− "deprecatedMarketplaceDealParty": {
1677− "$ref": "MarketplaceDealParty",
1678− "description": "Information about the party that created the label."
1679− },
1680− "label": {
1681− "type": "string",
1682− "description": "The label to use."
1683− }
1684− }
1685− },
1686− "MarketplaceNote": {
1687− "id": "MarketplaceNote",
1688− "type": "object",
1689− "description": "An order is associated with a bunch of notes which may optionally be associated with a deal and/or revision number.",
1690− "properties": {
1691− "creatorRole": {
1692− "type": "string",
1693− "description": "The role of the person (buyer/seller) creating the note. (readonly)"
1694− },
1695− "dealId": {
1696− "type": "string",
1697− "description": "Notes can optionally be associated with a deal. (readonly, except on create)"
1698− },
1699− "kind": {
1700− "type": "string",
1701− "description": "Identifies what kind of resource this is. Value: the fixed string \"adexchangebuyer#marketplaceNote\".",
1702− "default": "adexchangebuyer#marketplaceNote"
1703− },
1704− "note": {
1705− "type": "string",
1706− "description": "The actual note to attach. (readonly, except on create)"
1707− },
1708− "noteId": {
1709− "type": "string",
1710− "description": "The unique id for the note. (readonly)"
1711− },
1712− "orderId": {
1713− "type": "string",
1714− "description": "The order_id that a note is attached to. (readonly)"
1715− },
1716− "orderRevisionNumber": {
1717− "type": "string",
1718− "description": "If the note is associated with an order revision number, then store that here. (readonly, except on create)",
1719− "format": "int64"
1720− },
1721− "timestampMs": {
1722− "type": "string",
1723− "description": "The timestamp (ms since epoch) that this note was created. (readonly)",
1724− "format": "int64"
1725− }
1726− }
1727− },
1728− "MarketplaceOffer": {
1729− "id": "MarketplaceOffer",
1730− "type": "object",
1731− "description": "An offer is segment of inventory that a seller wishes to sell. It is associated with certain terms and targeting information which helps buyer know more about the inventory. Each field in an order can have one of the following setting:\n\n(readonly) - It is an error to try and set this field. (buyer-readonly) - Only the seller can set this field. (seller-readonly) - Only the buyer can set this field. (updatable) - The field is updatable at all times by either buyer or the seller.",
1732− "properties": {
1733− "creationTimeMs": {
1734− "type": "string",
1735− "description": "Creation time in ms. since epoch (readonly)",
1736− "format": "int64"
1737− },
1738− "creatorContacts": {
1739− "type": "array",
1740− "description": "Optional contact information for the creator of this offer. (buyer-readonly)",
1741− "items": {
1742− "$ref": "ContactInformation"
1743− }
1744− },
1745− "flightEndTimeMs": {
1746− "type": "string",
1747− "description": "The proposed end time for the deal (ms since epoch) (buyer-readonly)",
1748− "format": "int64"
1749− },
1750− "flightStartTimeMs": {
1751− "type": "string",
1752− "description": "Inventory availability dates. (times are in ms since epoch) The granularity is generally in the order of seconds. (buyer-readonly)",
1753− "format": "int64"
1754− },
1755− "hasCreatorSignedOff": {
1756− "type": "boolean",
1757− "description": "If the creator has already signed off on the offer, then the buyer can finalize the deal by accepting the offer as is. When copying to an order, if any of the terms are changed, then auto_finalize is automatically set to false."
1758− },
1759− "kind": {
1760− "type": "string",
1761− "description": "Identifies what kind of resource this is. Value: the fixed string \"adexchangebuyer#marketplaceOffer\".",
1762− "default": "adexchangebuyer#marketplaceOffer"
1763− },
1764− "labels": {
1765− "type": "array",
1766− "description": "Optional List of labels for the offer (optional, buyer-readonly).",
1767− "items": {
1768− "$ref": "MarketplaceLabel"
1769− }
1770− },
1771− "lastUpdateTimeMs": {
1772− "type": "string",
1773− "description": "Time of last update in ms. since epoch (readonly)",
1774− "format": "int64"
1775− },
1776− "name": {
1777− "type": "string",
1778− "description": "The name for this offer as set by the seller. (buyer-readonly)"
1779− },
1780− "offerId": {
1781− "type": "string",
1782− "description": "The unique id for the offer (readonly)"
1783− },
1784− "revisionNumber": {
1785− "type": "string",
1786− "description": "The revision number of the offer. (readonly)",
1787− "format": "int64"
1788− },
1789− "seller": {
1790− "$ref": "Seller",
1791− "description": "Information about the seller that created this offer (readonly, except on create)"
1792− },
1793− "sharedTargetings": {
1794− "type": "array",
1795− "description": "Targeting that is shared between the buyer and the seller. Each targeting criteria has a specified key and for each key there is a list of inclusion value or exclusion values. (buyer-readonly)",
1796− "items": {
1797− "$ref": "SharedTargeting"
1798− }
1799− },
1800− "state": {
1801− "type": "string",
1802− "description": "The state of the offer. (buyer-readonly)"
1803− },
1804− "syndicationProduct": {
1805− "type": "string",
1806− "description": "The syndication product associated with the deal. (readonly, except on create)"
1807− },
1808− "terms": {
1809− "$ref": "DealTerms",
1810− "description": "The negotiable terms of the deal (buyer-readonly)"
1811− },
1812− "webPropertyCode": {
1813− "type": "string"
1814− }
1815− }
1816− },
1817− "MarketplaceOrder": {
1818− "id": "MarketplaceOrder",
1819− "type": "object",
1820− "description": "Represents an order in the marketplace. An order is the unit of negotiation between a seller and a buyer and contains deals which are served. Each field in an order can have one of the following setting:\n\n(readonly) - It is an error to try and set this field. (buyer-readonly) - Only the seller can set this field. (seller-readonly) - Only the buyer can set this field. (updatable) - The field is updatable at all times by either buyer or the seller.",
1821− "properties": {
1822− "billedBuyer": {
1823− "$ref": "Buyer",
1824− "description": "Reference to the buyer that will get billed for this order. (readonly)"
1825− },
1826− "buyer": {
1827− "$ref": "Buyer",
1828− "description": "Reference to the buyer on the order. (readonly, except on create)"
1829− },
1830− "buyerContacts": {
1831− "type": "array",
1832− "description": "Optional contact information fort the buyer. (seller-readonly)",
1833− "items": {
1834− "$ref": "ContactInformation"
1835− }
1836− },
1837− "buyerPrivateData": {
1838− "$ref": "PrivateData",
1839− "description": "Private data for buyer. (hidden from seller)."
1840− },
1841− "hasBuyerSignedOff": {
1842− "type": "boolean",
1843− "description": "When an order is in an accepted state, indicates whether the buyer has signed off Once both sides have signed off on a deal, the order can be finalized by the seller. (seller-readonly)"
1844− },
1845− "hasSellerSignedOff": {
1846− "type": "boolean",
1847− "description": "When an order is in an accepted state, indicates whether the buyer has signed off Once both sides have signed off on a deal, the order can be finalized by the seller. (buyer-readonly)"
1848− },
1849− "isRenegotiating": {
1850− "type": "boolean",
1851− "description": "True if the order is being renegotiated (readonly)."
1852− },
1853− "isSetupComplete": {
1854− "type": "boolean",
1855− "description": "True, if the buyside inventory setup is complete for this order. (readonly)"
1856− },
1857− "kind": {
1858− "type": "string",
1859− "description": "Identifies what kind of resource this is. Value: the fixed string \"adexchangebuyer#marketplaceOrder\".",
1860− "default": "adexchangebuyer#marketplaceOrder"
1861− },
1862− "labels": {
1863− "type": "array",
1864− "description": "List of labels associated with the order. (readonly)",
1865− "items": {
1866− "$ref": "MarketplaceLabel"
1867− }
1868− },
1869− "lastUpdaterOrCommentorRole": {
1870− "type": "string",
1871− "description": "The role of the last user that either updated the order or left a comment. (readonly)"
1872− },
1873− "lastUpdaterRole": {
1874− "type": "string"
1875− },
1876− "name": {
1877− "type": "string",
1878− "description": "The name for the order (updatable)"
1879− },
1880− "orderId": {
1881− "type": "string",
1882− "description": "The unique id of the order. (readonly)."
1883− },
1884− "orderState": {
1885− "type": "string",
1886− "description": "The current state of the order. (readonly)"
1887− },
1888− "originatorRole": {
1889− "type": "string",
1890− "description": "Indicates whether the buyer/seller created the offer.(readonly)"
1891− },
1892− "revisionNumber": {
1893− "type": "string",
1894− "description": "The revision number for the order (readonly).",
1895− "format": "int64"
1896− },
1897− "revisionTimeMs": {
1898− "type": "string",
1899− "description": "The time (ms since epoch) when the order was last revised (readonly).",
1900− "format": "int64"
1901− },
1902− "seller": {
1903− "$ref": "Seller",
1904− "description": "Reference to the seller on the order. (readonly, except on create)"
1905− },
1906− "sellerContacts": {
1907− "type": "array",
1908− "description": "Optional contact information for the seller (buyer-readonly).",
1909− "items": {
1910− "$ref": "ContactInformation"
1911− }
1912− }
1913− }
1914− },
1915− "MoneyDto": {
1916− "id": "MoneyDto",
1917− "type": "object",
1918− "properties": {
1919− "currencyCode": {
1920− "type": "string"
1921− },
1922− "micros": {
1923− "type": "string",
1924− "format": "int64"
1925− }
1926− }
1927− },
1928− "NegotiationDto": {
1929− "id": "NegotiationDto",
1930− "type": "object",
1931− "properties": {
1932− "billedBuyer": {
1933− "$ref": "DealPartyDto",
1934− "description": "The billed buyer; Specified by a buyer buying through an intermediary."
1935− },
1936− "buyer": {
1937− "$ref": "DealPartyDto",
1938− "description": "Details of the buyer party in this negotiation."
1939− },
1940− "buyerEmailContacts": {
1941− "type": "array",
1942− "description": "The buyer party's contact email.",
1943− "items": {
1944− "type": "string"
1945− }
1946− },
1947− "dealType": {
1948− "type": "string",
1949− "description": "The type of this deal."
1950− },
1951− "externalDealId": {
1952− "type": "string",
1953− "description": "For finalized negotiations, the ID of the finalized deal.",
1954− "format": "int64"
1955− },
1956− "kind": {
1957− "type": "string",
1958− "default": "adexchangebuyer#negotiation"
1959− },
1960− "labelNames": {
1961− "type": "array",
1962− "description": "A list of label names applicable to this negotiation.",
1963− "items": {
1964− "type": "string"
1965− }
1966− },
1967− "negotiationId": {
1968− "type": "string",
1969− "description": "The unique ID of this negotiation.",
1970− "format": "int64"
1971− },
1972− "negotiationRounds": {
1973− "type": "array",
1974− "description": "The series of negotiation rounds for this negotiation.",
1975− "items": {
1976− "$ref": "NegotiationRoundDto"
1977− }
1978− },
1979− "negotiationState": {
1980− "type": "string",
1981− "description": "The state of this negotiation."
1982− },
1983− "offerId": {
1984− "type": "string",
1985− "description": "The ID of this negotiation's original offer.",
1986− "format": "int64"
1987− },
1988− "seller": {
1989− "$ref": "DealPartyDto",
1990− "description": "Details of the seller party in this negotiation."
1991− },
1992− "sellerEmailContacts": {
1993− "type": "array",
1994− "description": "The seller party's contact email.",
1995− "items": {
1996− "type": "string"
1997− }
1998− },
1999− "stats": {
2000− "$ref": "StatsDto",
2001− "description": "The stats for this negotiation."
2002− },
2003− "status": {
2004− "type": "string",
2005− "description": "The status of this negotiation."
2006− }
2007− }
2008− },
2009− "NegotiationRoundDto": {
2010− "id": "NegotiationRoundDto",
2011− "type": "object",
2012− "properties": {
2013− "action": {
2014− "type": "string",
2015− "description": "The action performed by this negotiation round."
2016− },
2017− "dbmPartnerId": {
2018− "type": "string",
2019− "description": "Stores DBM partner ID for use by DBM",
2020− "format": "int64"
2021− },
2022− "editHistory": {
2023− "$ref": "EditHistoryDto",
2024− "description": "The edit history of this negotiation round."
2025− },
2026− "kind": {
2027− "type": "string",
2028− "default": "adexchangebuyer#negotiationRound"
2029− },
2030− "negotiationId": {
2031− "type": "string",
2032− "description": "The ID of the negotiation to which this negotiation round applies.",
2033− "format": "int64"
2034− },
2035− "notes": {
2036− "type": "string",
2037− "description": "Notes regarding this negotiation round."
2038− },
2039− "originatorRole": {
2040− "type": "string",
2041− "description": "The role, either buyer or seller, initiating this negotiation round."
2042− },
2043− "roundNumber": {
2044− "type": "string",
2045− "description": "The number of this negotiation round, in sequence.",
2046− "format": "int64"
2047− },
2048− "terms": {
2049− "$ref": "TermsDto",
2050− "description": "The detailed terms proposed in this negotiation round."
2051− }
2052− }
2053− },
2054− "OfferDto": {
2055− "id": "OfferDto",
2056− "type": "object",
2057− "properties": {
2058− "anonymous": {
2059− "type": "boolean",
2060− "description": "Whether this offer is anonymous."
2061− },
2062− "billedBuyer": {
2063− "$ref": "DealPartyDto",
2064− "description": "The billed buyer; For buyer initiated offers, buying through an intermediary."
2065− },
2066− "closedToDealParties": {
2067− "type": "array",
2068− "description": "The list of buyer or seller parties this offer is closed to.",
2069− "items": {
2070− "$ref": "DealPartyDto"
2071− }
2072− },
2073− "creator": {
2074− "$ref": "DealPartyDto",
2075− "description": "The creator of this offer."
2076− },
2077− "emailContacts": {
2078− "type": "array",
2079− "description": "The list of email contacts for this offer.",
2080− "items": {
2081− "type": "string"
2082− }
2083− },
2084− "isOpen": {
2085− "type": "boolean",
2086− "description": "Whether this offer is open."
2087− },
2088− "kind": {
2089− "type": "string",
2090− "default": "adexchangebuyer#offer"
2091− },
2092− "labelNames": {
2093− "type": "array",
2094− "description": "The list of label names applicable to this offer.",
2095− "items": {
2096− "type": "string"
2097− }
2098− },
2099− "offerId": {
2100− "type": "string",
2101− "description": "The unique ID of this offer.",
2102− "format": "int64"
2103− },
2104− "offerState": {
2105− "type": "string",
2106− "description": "The state of this offer."
2107− },
2108− "openToDealParties": {
2109− "type": "array",
2110− "description": "The list of buyer or seller parties this offer is open to.",
2111− "items": {
2112− "$ref": "DealPartyDto"
2113− }
2114− },
2115− "pointOfContact": {
2116− "type": "string",
2117− "description": "The point of contact for this offer."
2118− },
2119− "status": {
2120− "type": "string",
2121− "description": "The status of this offer."
2122− },
2123− "terms": {
2124− "$ref": "TermsDto",
2125− "description": "The terms of this offer."
2126− }
2127− }
2128− },
2129− "PerformanceReport": {
2130− "id": "PerformanceReport",
2131− "type": "object",
2132− "description": "The configuration data for an Ad Exchange performance report list.",
2133− "properties": {
2134− "bidRate": {
2135− "type": "number",
2136− "description": "The number of bid responses with an ad.",
2137− "format": "double"
2138− },
2139− "bidRequestRate": {
2140− "type": "number",
2141− "description": "The number of bid requests sent to your bidder.",
2142− "format": "double"
2143− },
2144− "calloutStatusRate": {
2145− "type": "array",
2146− "description": "Rate of various prefiltering statuses per match. Please refer to the callout-status-codes.txt file for different statuses.",
2147− "items": {
2148− "type": "any"
2149− }
2150− },
2151− "cookieMatcherStatusRate": {
2152− "type": "array",
2153− "description": "Average QPS for cookie matcher operations.",
2154− "items": {
2155− "type": "any"
2156− }
2157− },
2158− "creativeStatusRate": {
2159− "type": "array",
2160− "description": "Rate of ads with a given status. Please refer to the creative-status-codes.txt file for different statuses.",
2161− "items": {
2162− "type": "any"
2163− }
2164− },
2165− "filteredBidRate": {
2166− "type": "number",
2167− "description": "The number of bid responses that were filtered due to a policy violation or other errors.",
2168− "format": "double"
2169− },
2170− "hostedMatchStatusRate": {
2171− "type": "array",
2172− "description": "Average QPS for hosted match operations.",
2173− "items": {
2174− "type": "any"
2175− }
2176− },
2177− "inventoryMatchRate": {
2178− "type": "number",
2179− "description": "The number of potential queries based on your pretargeting settings.",
2180− "format": "double"
2181− },
2182− "kind": {
2183− "type": "string",
2184− "description": "Resource type.",
2185− "default": "adexchangebuyer#performanceReport"
2186− },
2187− "latency50thPercentile": {
2188− "type": "number",
2189− "description": "The 50th percentile round trip latency(ms) as perceived from Google servers for the duration period covered by the report.",
2190− "format": "double"
2191− },
2192− "latency85thPercentile": {
2193− "type": "number",
2194− "description": "The 85th percentile round trip latency(ms) as perceived from Google servers for the duration period covered by the report.",
2195− "format": "double"
2196− },
2197− "latency95thPercentile": {
2198− "type": "number",
2199− "description": "The 95th percentile round trip latency(ms) as perceived from Google servers for the duration period covered by the report.",
2200− "format": "double"
2201− },
2202− "noQuotaInRegion": {
2203− "type": "number",
2204− "description": "Rate of various quota account statuses per quota check.",
2205− "format": "double"
2206− },
2207− "outOfQuota": {
2208− "type": "number",
2209− "description": "Rate of various quota account statuses per quota check.",
2210− "format": "double"
2211− },
2212− "pixelMatchRequests": {
2213− "type": "number",
2214− "description": "Average QPS for pixel match requests from clients.",
2215− "format": "double"
2216− },
2217− "pixelMatchResponses": {
2218− "type": "number",
2219− "description": "Average QPS for pixel match responses from clients.",
2220− "format": "double"
2221− },
2222− "quotaConfiguredLimit": {
2223− "type": "number",
2224− "description": "The configured quota limits for this account.",
2225− "format": "double"
2226− },
2227− "quotaThrottledLimit": {
2228− "type": "number",
2229− "description": "The throttled quota limits for this account.",
2230− "format": "double"
2231− },
2232− "region": {
2233− "type": "string",
2234− "description": "The trading location of this data."
2235− },
2236− "successfulRequestRate": {
2237− "type": "number",
2238− "description": "The number of properly formed bid responses received by our servers within the deadline.",
2239− "format": "double"
2240− },
2241− "timestamp": {
2242− "type": "string",
2243− "description": "The unix timestamp of the starting time of this performance data.",
2244− "format": "int64"
2245− },
2246− "unsuccessfulRequestRate": {
2247− "type": "number",
2248− "description": "The number of bid responses that were unsuccessful due to timeouts, incorrect formatting, etc.",
2249− "format": "double"
2250− }
2251− }
2252− },
2253− "PerformanceReportList": {
2254− "id": "PerformanceReportList",
2255− "type": "object",
2256− "description": "The configuration data for an Ad Exchange performance report list. https://sites.google.com/a/google.com/adx-integration/Home/engineering/binary-releases/rtb-api-release https://cs.corp.google.com/#piper///depot/google3/contentads/adx/tools/rtb_api/adxrtb.py",
2257− "properties": {
2258− "kind": {
2259− "type": "string",
2260− "description": "Resource type.",
2261− "default": "adexchangebuyer#performanceReportList"
2262− },
2263− "performanceReport": {
2264− "type": "array",
2265− "description": "A list of performance reports relevant for the account.",
2266− "items": {
2267− "$ref": "PerformanceReport"
2268− }
2269− }
2270− }
2271− },
2272− "PretargetingConfig": {
2273− "id": "PretargetingConfig",
2274− "type": "object",
2275− "properties": {
2276− "billingId": {
2277− "type": "string",
2278− "description": "The id for billing purposes, provided for reference. Leave this field blank for insert requests; the id will be generated automatically.",
2279− "format": "int64"
2280− },
2281− "configId": {
2282− "type": "string",
2283− "description": "The config id; generated automatically. Leave this field blank for insert requests.",
2284− "format": "int64"
2285− },
2286− "configName": {
2287− "type": "string",
2288− "description": "The name of the config. Must be unique. Required for all requests."
2289− },
2290− "creativeType": {
2291− "type": "array",
2292− "description": "List must contain exactly one of PRETARGETING_CREATIVE_TYPE_HTML or PRETARGETING_CREATIVE_TYPE_VIDEO.",
2293− "items": {
2294− "type": "string"
2295− }
2296− },
2297− "dimensions": {
2298− "type": "array",
2299− "description": "Requests which allow one of these (width, height) pairs will match. All pairs must be supported ad dimensions.",
2300− "items": {
2301− "type": "object",
2302 "properties": {
2328 "properties": {
2303− "height": {
2329+ "id": {
2304− "type": "string",
2330+ "description": "Id of the dimension.",
2305− "description": "Height in pixels.",
2331+ "format": "int32",
2306− "format": "int64"
2332+ "type": "integer"
2307− },
2333+ },
2308− "width": {
2334+ "name": {
2309− "type": "string",
2335+ "description": "Name of the dimension mainly for debugging purposes, except for the case of CREATIVE_SIZE. For CREATIVE_SIZE, strings are used instead of ids.",
2310− "description": "Width in pixels.",
2336+ "type": "string"
2311− "format": "int64"
2337+ },
2312− }
2338+ "percentage": {
2313− }
2339+ "description": "Percent of total impressions for a dimension type. e.g. {dimension_type: 'GENDER', [{dimension_value: {id: 1, name: 'MALE', percentage: 60}}]} Gender MALE is 60% of all impressions which have gender.",
2314− }
2340+ "format": "int32",
2315− },
2341+ "type": "integer"
2316− "excludedContentLabels": {
2342+ }
2317− "type": "array",
2343+ },
2318− "description": "Requests with any of these content labels will not match. Values are from content-labels.txt in the downloadable files section.",
2344+ "type": "object"
2319− "items": {
2320− "type": "string",
2321− "format": "int64"
2322− }
2323− },
2324− "excludedGeoCriteriaIds": {
2325− "type": "array",
2326− "description": "Requests containing any of these geo criteria ids will not match.",
2327− "items": {
2328− "type": "string",
2329− "format": "int64"
2330− }
2331 },
2345 },
2332− "excludedPlacements": {
2346+ "EditAllOrderDealsRequest": {
2333− "type": "array",
2347+ "id": "EditAllOrderDealsRequest",
2334− "description": "Requests containing any of these placements will not match.",
2335− "items": {
2336− "type": "object",
2337 "properties": {
2348 "properties": {
2338− "token": {
2349+ "deals": {
2339− "type": "string",
2350+ "description": "List of deals to edit. Service may perform 3 different operations based on comparison of deals in this list vs deals already persisted in database: 1. Add new deal to proposal If a deal in this list does not exist in the proposal, the service will create a new deal and add it to the proposal. Validation will follow AddOrderDealsRequest. 2. Update existing deal in the proposal If a deal in this list already exist in the proposal, the service will update that existing deal to this new deal in the request. Validation will follow UpdateOrderDealsRequest. 3. Delete deals from the proposal (just need the id) If a existing deal in the proposal is not present in this list, the service will delete that deal from the proposal. Validation will follow DeleteOrderDealsRequest.",
2340− "description": "The value of the placement. Interpretation depends on the placement type, e.g. URL for a site placement, channel name for a channel placement, app id for a mobile app placement."
2351+ "items": {
2341− },
2352+ "$ref": "MarketplaceDeal"
2342− "type": {
2353+ },
2343− "type": "string",
2354+ "type": "array"
2344− "description": "The type of the placement."
2355+ },
2345− }
2356+ "proposal": {
2346− }
2357+ "$ref": "Proposal",
2347− }
2358+ "description": "If specified, also updates the proposal in the batch transaction. This is useful when the proposal and the deals need to be updated in one transaction."
2348− },
2359+ },
2349− "excludedUserLists": {
2360+ "proposalRevisionNumber": {
2350− "type": "array",
2361+ "description": "The last known revision number for the proposal.",
2351− "description": "Requests containing any of these users list ids will not match.",
2362+ "format": "int64",
2352− "items": {
2363+ "type": "string"
2353− "type": "string",
2364+ },
2354− "format": "int64"
2365+ "updateAction": {
2355− }
2366+ "description": "Indicates an optional action to take on the proposal",
2356− },
2367+ "type": "string"
2357− "excludedVerticals": {
2368+ }
2358− "type": "array",
2369+ },
2359− "description": "Requests containing any of these vertical ids will not match. Values are from the publisher-verticals.txt file in the downloadable files section.",
2370+ "type": "object"
2360− "items": {
2361− "type": "string",
2362− "format": "int64"
2363− }
2364− },
2365− "geoCriteriaIds": {
2366− "type": "array",
2367− "description": "Requests containing any of these geo criteria ids will match.",
2368− "items": {
2369− "type": "string",
2370− "format": "int64"
2371− }
2372− },
2373− "isActive": {
2374− "type": "boolean",
2375− "description": "Whether this config is active. Required for all requests."
2376− },
2377− "kind": {
2378− "type": "string",
2379− "description": "The kind of the resource, i.e. \"adexchangebuyer#pretargetingConfig\".",
2380− "default": "adexchangebuyer#pretargetingConfig"
2381− },
2382− "languages": {
2383− "type": "array",
2384− "description": "Request containing any of these language codes will match.",
2385− "items": {
2386− "type": "string"
2387− }
2388− },
2389− "mobileCarriers": {
2390− "type": "array",
2391− "description": "Requests containing any of these mobile carrier ids will match. Values are from mobile-carriers.csv in the downloadable files section.",
2392− "items": {
2393− "type": "string",
2394− "format": "int64"
2395− }
2396− },
2397− "mobileDevices": {
2398− "type": "array",
2399− "description": "Requests containing any of these mobile device ids will match. Values are from mobile-devices.csv in the downloadable files section.",
2400− "items": {
2401− "type": "string",
2402− "format": "int64"
2403− }
2404− },
2405− "mobileOperatingSystemVersions": {
2406− "type": "array",
2407− "description": "Requests containing any of these mobile operating system version ids will match. Values are from mobile-os.csv in the downloadable files section.",
2408− "items": {
2409− "type": "string",
2410− "format": "int64"
2411− }
2412 },
2371 },
2413− "placements": {
2372+ "EditAllOrderDealsResponse": {
2414− "type": "array",
2373+ "id": "EditAllOrderDealsResponse",
2415− "description": "Requests containing any of these placements will match.",
2416− "items": {
2417− "type": "object",
2418 "properties": {
2374 "properties": {
2419− "token": {
2375+ "deals": {
2420− "type": "string",
2376+ "description": "List of all deals in the proposal after edit.",
2421− "description": "The value of the placement. Interpretation depends on the placement type, e.g. URL for a site placement, channel name for a channel placement, app id for a mobile app placement."
2377+ "items": {
2422− },
2378+ "$ref": "MarketplaceDeal"
2423− "type": {
2379+ },
2424− "type": "string",
2380+ "type": "array"
2425− "description": "The type of the placement."
2381+ },
2426− }
2382+ "orderRevisionNumber": {
2427− }
2383+ "description": "The latest revision number after the update has been applied.",
2428− }
2384+ "format": "int64",
2429− },
2385+ "type": "string"
2430− "platforms": {
2386+ }
2431− "type": "array",
2387+ },
2432− "description": "Requests matching any of these platforms will match. Possible values are PRETARGETING_PLATFORM_MOBILE, PRETARGETING_PLATFORM_DESKTOP, and PRETARGETING_PLATFORM_TABLET.",
2388+ "type": "object"
2433− "items": {
2434− "type": "string"
2435− }
2436− },
2437− "supportedCreativeAttributes": {
2438− "type": "array",
2439− "description": "Creative attributes should be declared here if all creatives corresponding to this pretargeting configuration have that creative attribute. Values are from pretargetable-creative-attributes.txt in the downloadable files section.",
2440− "items": {
2441− "type": "string",
2442− "format": "int64"
2443− }
2444− },
2445− "userLists": {
2446− "type": "array",
2447− "description": "Requests containing any of these user list ids will match.",
2448− "items": {
2449− "type": "string",
2450− "format": "int64"
2451− }
2452− },
2453− "vendorTypes": {
2454− "type": "array",
2455− "description": "Requests that allow any of these vendor ids will match. Values are from vendors.txt in the downloadable files section.",
2456− "items": {
2457− "type": "string",
2458− "format": "int64"
2459− }
2460− },
2461− "verticals": {
2462− "type": "array",
2463− "description": "Requests containing any of these vertical ids will match.",
2464− "items": {
2465− "type": "string",
2466− "format": "int64"
2467− }
2468− }
2469− }
2470− },
2471− "PretargetingConfigList": {
2472− "id": "PretargetingConfigList",
2473− "type": "object",
2474− "properties": {
2475− "items": {
2476− "type": "array",
2477− "description": "A list of pretargeting configs",
2478− "items": {
2479− "$ref": "PretargetingConfig"
2480− }
2481− },
2482− "kind": {
2483− "type": "string",
2484− "description": "Resource type.",
2485− "default": "adexchangebuyer#pretargetingConfigList"
2486− }
2487− }
2488− },
2489− "Price": {
2490− "id": "Price",
2491− "type": "object",
2492− "properties": {
2493− "amountMicros": {
2494− "type": "number",
2495− "description": "The CPM value in micros.",
2496− "format": "double"
2497− },
2498− "currencyCode": {
2499− "type": "string",
2500− "description": "The currency code for the price."
2501− }
2502− }
2503− },
2504− "PricePerBuyer": {
2505− "id": "PricePerBuyer",
2506− "type": "object",
2507− "description": "Used to specify pricing rules for buyers/advertisers. Each PricePerBuyer in an offer can become [0,1] deals. To check if there is a PricePerBuyer for a particular buyer or buyer/advertiser pair, we look for the most specific matching rule - we first look for a rule matching the buyer and advertiser, next a rule with the buyer but an empty advertiser list, and otherwise look for a matching rule where no buyer is set.",
2508− "properties": {
2509− "buyer": {
2510− "$ref": "Buyer",
2511− "description": "The buyer who will pay this price. If unset, all buyers can pay this price (if the advertisers match, and there's no more specific rule matching the buyer)."
2512− },
2513− "price": {
2514− "$ref": "Price",
2515− "description": "The specified price"
2516− }
2517− }
2518− },
2519− "PrivateData": {
2520− "id": "PrivateData",
2521− "type": "object",
2522− "properties": {
2523− "referenceId": {
2524− "type": "string"
2525− },
2526− "referencePayload": {
2527− "type": "string",
2528− "format": "byte"
2529− }
2530− }
2531− },
2532− "RuleKeyValuePair": {
2533− "id": "RuleKeyValuePair",
2534− "type": "object",
2535− "properties": {
2536− "keyName": {
2537− "type": "string"
2538− },
2539− "value": {
2540− "type": "string"
2541− }
2542− }
2543− },
2544− "Seller": {
2545− "id": "Seller",
2546− "type": "object",
2547− "properties": {
2548− "accountId": {
2549− "type": "string",
2550− "description": "The unique id for the seller. The seller fills in this field. The seller account id is then available to buyer in the offer."
2551− },
2552− "subAccountId": {
2553− "type": "string",
2554− "description": "Optional sub-account id for the seller."
2555− }
2556− }
2557− },
2558− "SharedTargeting": {
2559− "id": "SharedTargeting",
2560− "type": "object",
2561− "properties": {
2562− "exclusions": {
2563− "type": "array",
2564− "description": "The list of values to exclude from targeting.",
2565− "items": {
2566− "$ref": "TargetingValue"
2567− }
2568− },
2569− "inclusions": {
2570− "type": "array",
2571− "description": "The list of value to include as part of the targeting.",
2572− "items": {
2573− "$ref": "TargetingValue"
2574− }
2575− },
2576− "key": {
2577− "type": "string",
2578− "description": "The key representing the shared targeting criterion."
2579− }
2580− }
2581− },
2582− "StatsDto": {
2583− "id": "StatsDto",
2584− "type": "object",
2585− "properties": {
2586− "bids": {
2587− "type": "string",
2588− "format": "int64"
2589− },
2590− "goodBids": {
2591− "type": "string",
2592− "format": "int64"
2593− },
2594− "impressions": {
2595− "type": "string",
2596− "format": "int64"
2597− },
2598− "requests": {
2599− "type": "string",
2600− "format": "int64"
2601− },
2602− "revenue": {
2603− "$ref": "MoneyDto"
2604− },
2605− "spend": {
2606− "$ref": "MoneyDto"
2607− }
2608− }
2609− },
2610− "TargetingValue": {
2611− "id": "TargetingValue",
2612− "type": "object",
2613− "properties": {
2614− "creativeSizeValue": {
2615− "$ref": "TargetingValueCreativeSize",
2616− "description": "The creative size value to exclude/include."
2617− },
2618− "dayPartTargetingValue": {
2619− "$ref": "TargetingValueDayPartTargeting",
2620− "description": "The daypart targeting to include / exclude. Filled in when the key is GOOG_DAYPART_TARGETING."
2621− },
2622− "longValue": {
2623− "type": "string",
2624− "description": "The long value to exclude/include.",
2625− "format": "int64"
2626− },
2627− "stringValue": {
2628− "type": "string",
2629− "description": "The string value to exclude/include."
2630− }
2631− }
2632− },
2633− "TargetingValueCreativeSize": {
2634− "id": "TargetingValueCreativeSize",
2635− "type": "object",
2636− "properties": {
2637− "companionSizes": {
2638− "type": "array",
2639− "description": "For video size type, the list of companion sizes.",
2640− "items": {
2641− "$ref": "TargetingValueSize"
2642− }
2643− },
2644− "creativeSizeType": {
2645− "type": "string",
2646− "description": "The Creative size type."
2647− },
2648− "size": {
2649− "$ref": "TargetingValueSize",
2650− "description": "For regular creative size type, specifies the size of the creative."
2651− }
2652− }
2653− },
2654− "TargetingValueDayPartTargeting": {
2655− "id": "TargetingValueDayPartTargeting",
2656− "type": "object",
2657− "properties": {
2658− "dayParts": {
2659− "type": "array",
2660− "items": {
2661− "$ref": "TargetingValueDayPartTargetingDayPart"
2662− }
2663− },
2664− "timeZoneType": {
2665− "type": "string"
2666− }
2667− }
2668− },
2669− "TargetingValueDayPartTargetingDayPart": {
2670− "id": "TargetingValueDayPartTargetingDayPart",
2671− "type": "object",
2672− "properties": {
2673− "dayOfWeek": {
2674− "type": "string"
2675− },
2676− "endHour": {
2677− "type": "integer",
2678− "format": "int32"
2679− },
2680− "endMinute": {
2681− "type": "integer",
2682− "format": "int32"
2683− },
2684− "startHour": {
2685− "type": "integer",
2686− "format": "int32"
2687− },
2688− "startMinute": {
2689− "type": "integer",
2690− "format": "int32"
2691− }
2692− }
2693− },
2694− "TargetingValueSize": {
2695− "id": "TargetingValueSize",
2696− "type": "object",
2697− "properties": {
2698− "height": {
2699− "type": "integer",
2700− "description": "The height of the creative.",
2701− "format": "int32"
2702− },
2703− "width": {
2704− "type": "integer",
2705− "description": "The width of the creative.",
2706− "format": "int32"
2707− }
2708− }
2709− },
2710− "TermsDto": {
2711− "id": "TermsDto",
2712− "type": "object",
2713− "properties": {
2714− "adSlots": {
2715− "type": "array",
2716− "description": "The particular ad slots targeted by the offer.",
2717− "items": {
2718− "$ref": "AdSlotDto"
2719− }
2720− },
2721− "advertisers": {
2722− "type": "array",
2723− "description": "A list of advertisers for this offer.",
2724− "items": {
2725− "$ref": "AdvertiserDto"
2726− }
2727− },
2728− "audienceSegment": {
2729− "$ref": "AudienceSegment",
2730− "description": "The audience segment for the offer."
2731− },
2732− "audienceSegmentDescription": {
2733− "type": "string",
2734− "description": "A description of the audience segment for the offer."
2735− },
2736− "billingTerms": {
2737− "type": "string",
2738− "description": "The billing terms."
2739− },
2740− "buyerBillingType": {
2741− "type": "string",
2742− "description": "The buyer billing type."
2743− },
2744− "cpm": {
2745− "$ref": "MoneyDto",
2746− "description": "The cpm terms."
2747− },
2748− "creativeBlockingLevel": {
2749− "type": "string",
2750− "description": "Whether to use or ignore publisher blocking rules."
2751− },
2752− "creativeReviewPolicy": {
2753− "type": "string",
2754− "description": "Whether to use publisher review policy or AdX review policy."
2755− },
2756− "dealPremium": {
2757− "$ref": "MoneyDto",
2758− "description": "The premium terms."
2759− },
2760− "description": {
2761− "type": "string",
2762− "description": "A description for these terms."
2763− },
2764− "descriptiveName": {
2765− "type": "string",
2766− "description": "A descriptive name for these terms."
2767− },
2768− "endDate": {
2769− "$ref": "DateTime",
2770− "description": "The end date for the offer."
2771− },
2772− "estimatedImpressionsPerDay": {
2773− "type": "string",
2774− "description": "The estimated daily impressions for the offer.",
2775− "format": "int64"
2776− },
2777− "estimatedSpend": {
2778− "$ref": "MoneyDto",
2779− "description": "The estimated spend for the offer."
2780− },
2781− "finalizeAutomatically": {
2782− "type": "boolean",
2783− "description": "If true, the offer will finalize automatically when accepted."
2784− },
2785− "inventorySegmentTargeting": {
2786− "$ref": "InventorySegmentTargeting",
2787− "description": "The inventory segment targeting for the offer."
2788− },
2789− "isReservation": {
2790− "type": "boolean",
2791− "description": "Whether the offer is a reservation."
2792− },
2793− "minimumSpendMicros": {
2794− "type": "string",
2795− "description": "The minimum spend for the offer.",
2796− "format": "int64"
2797− },
2798− "minimumTrueLooks": {
2799− "type": "string",
2800− "description": "The minimum true looks for the offer.",
2801− "format": "int64"
2802− },
2803− "monetizerType": {
2804− "type": "string",
2805− "description": "The monetizer type."
2806− },
2807− "semiTransparent": {
2808− "type": "boolean",
2809− "description": "Whether this offer is semi-transparent."
2810− },
2811− "startDate": {
2812− "$ref": "DateTime",
2813− "description": "The start date for the offer."
2814− },
2815− "targetByDealId": {
2816− "type": "boolean",
2817− "description": "Whether to target by deal id."
2818− },
2819− "targetingAllAdSlots": {
2820− "type": "boolean",
2821− "description": "If true, the offer targets all ad slots."
2822 },
2389 },
2823− "termsAttributes": {
2390+ "GetOffersResponse": {
2824− "type": "array",
2391+ "id": "GetOffersResponse",
2825− "description": "A list of terms attributes.",
2392+ "properties": {
2826− "items": {
2393+ "products": {
2827− "type": "string"
2394+ "description": "The returned list of products.",
2828− }
2395+ "items": {
2396+ "$ref": "Product"
2397+ },
2398+ "type": "array"
2399+ }
2400+ },
2401+ "type": "object"
2829 },
2402 },
2830− "urls": {
2403+ "GetOrderDealsResponse": {
2831− "type": "array",
2404+ "id": "GetOrderDealsResponse",
2832− "description": "The urls applicable to the offer.",
2405+ "properties": {
2833− "items": {
2406+ "deals": {
2834− "type": "string"
2407+ "description": "List of deals for the proposal",
2835− }
2408+ "items": {
2836− }
2409+ "$ref": "MarketplaceDeal"
2837− }
2410+ },
2838− },
2411+ "type": "array"
2839− "WebPropertyDto": {
2412+ }
2840− "id": "WebPropertyDto",
2413+ },
2841− "type": "object",
2414+ "type": "object"
2842− "properties": {
2843− "allowInterestTargetedAds": {
2844− "type": "boolean"
2845 },
2415 },
2846− "enabledForPreferredDeals": {
2416+ "GetOrderNotesResponse": {
2847− "type": "boolean"
2417+ "id": "GetOrderNotesResponse",
2418+ "properties": {
2419+ "notes": {
2420+ "description": "The list of matching notes. The notes for a proposal are ordered from oldest to newest. If the notes span multiple proposals, they will be grouped by proposal, with the notes for the most recently modified proposal appearing first.",
2421+ "items": {
2422+ "$ref": "MarketplaceNote"
2423+ },
2424+ "type": "array"
2425+ }
2426+ },
2427+ "type": "object"
2848 },
2428 },
2849− "id": {
2429+ "GetOrdersResponse": {
2850− "type": "integer",
2430+ "id": "GetOrdersResponse",
2851− "format": "int32"
2431+ "properties": {
2432+ "proposals": {
2433+ "description": "The list of matching proposals.",
2434+ "items": {
2435+ "$ref": "Proposal"
2436+ },
2437+ "type": "array"
2438+ }
2439+ },
2440+ "type": "object"
2852 },
2441 },
2853− "name": {
2442+ "GetPublisherProfilesByAccountIdResponse": {
2854− "type": "string"
2443+ "id": "GetPublisherProfilesByAccountIdResponse",
2444+ "properties": {
2445+ "profiles": {
2446+ "description": "Profiles for the requested publisher",
2447+ "items": {
2448+ "$ref": "PublisherProfileApiProto"
2449+ },
2450+ "type": "array"
2451+ }
2452+ },
2453+ "type": "object"
2855 },
2454 },
2856− "propertyCode": {
2455+ "MarketplaceDeal": {
2857− "type": "string"
2456+ "description": "A proposal can contain multiple deals. A deal contains the terms and targeting information that is used for serving.",
2457+ "id": "MarketplaceDeal",
2458+ "properties": {
2459+ "buyerPrivateData": {
2460+ "$ref": "PrivateData",
2461+ "description": "Buyer private data (hidden from seller)."
2462+ },
2463+ "creationTimeMs": {
2464+ "description": "The time (ms since epoch) of the deal creation. (readonly)",
2465+ "format": "int64",
2466+ "type": "string"
2467+ },
2468+ "creativePreApprovalPolicy": {
2469+ "description": "Specifies the creative pre-approval policy (buyer-readonly)",
2470+ "type": "string"
2471+ },
2472+ "creativeSafeFrameCompatibility": {
2473+ "description": "Specifies whether the creative is safeFrame compatible (buyer-readonly)",
2474+ "type": "string"
2475+ },
2476+ "dealId": {
2477+ "description": "A unique deal-id for the deal (readonly).",
2478+ "type": "string"
2479+ },
2480+ "dealServingMetadata": {
2481+ "$ref": "DealServingMetadata",
2482+ "description": "Metadata about the serving status of this deal (readonly, writes via custom actions)"
2483+ },
2484+ "deliveryControl": {
2485+ "$ref": "DeliveryControl",
2486+ "description": "The set of fields around delivery control that are interesting for a buyer to see but are non-negotiable. These are set by the publisher. This message is assigned an id of 100 since some day we would want to model this as a protobuf extension."
2487+ },
2488+ "externalDealId": {
2489+ "description": "The external deal id assigned to this deal once the deal is finalized. This is the deal-id that shows up in serving/reporting etc. (readonly)",
2490+ "type": "string"
2491+ },
2492+ "flightEndTimeMs": {
2493+ "description": "Proposed flight end time of the deal (ms since epoch) This will generally be stored in a granularity of a second. (updatable)",
2494+ "format": "int64",
2495+ "type": "string"
2496+ },
2497+ "flightStartTimeMs": {
2498+ "description": "Proposed flight start time of the deal (ms since epoch) This will generally be stored in a granularity of a second. (updatable)",
2499+ "format": "int64",
2500+ "type": "string"
2501+ },
2502+ "inventoryDescription": {
2503+ "description": "Description for the deal terms. (buyer-readonly)",
2504+ "type": "string"
2505+ },
2506+ "isRfpTemplate": {
2507+ "description": "Indicates whether the current deal is a RFP template. RFP template is created by buyer and not based on seller created products.",
2508+ "type": "boolean"
2509+ },
2510+ "isSetupComplete": {
2511+ "description": "True, if the buyside inventory setup is complete for this deal. (readonly, except via OrderSetupCompleted action)",
2512+ "type": "boolean"
2513+ },
2514+ "kind": {
2515+ "default": "adexchangebuyer#marketplaceDeal",
2516+ "description": "Identifies what kind of resource this is. Value: the fixed string \"adexchangebuyer#marketplaceDeal\".",
2517+ "type": "string"
2518+ },
2519+ "lastUpdateTimeMs": {
2520+ "description": "The time (ms since epoch) when the deal was last updated. (readonly)",
2521+ "format": "int64",
2522+ "type": "string"
2523+ },
2524+ "name": {
2525+ "description": "The name of the deal. (updatable)",
2526+ "type": "string"
2527+ },
2528+ "productId": {
2529+ "description": "The product-id from which this deal was created. (readonly, except on create)",
2530+ "type": "string"
2531+ },
2532+ "productRevisionNumber": {
2533+ "description": "The revision number of the product that the deal was created from (readonly, except on create)",
2534+ "format": "int64",
2535+ "type": "string"
2536+ },
2537+ "programmaticCreativeSource": {
2538+ "description": "Specifies the creative source for programmatic deals, PUBLISHER means creative is provided by seller and ADVERTISR means creative is provided by buyer. (buyer-readonly)",
2539+ "type": "string"
2540+ },
2541+ "proposalId": {
2542+ "type": "string"
2543+ },
2544+ "sellerContacts": {
2545+ "description": "Optional Seller contact information for the deal (buyer-readonly)",
2546+ "items": {
2547+ "$ref": "ContactInformation"
2548+ },
2549+ "type": "array"
2550+ },
2551+ "sharedTargetings": {
2552+ "description": "The shared targeting visible to buyers and sellers. Each shared targeting entity is AND'd together. (updatable)",
2553+ "items": {
2554+ "$ref": "SharedTargeting"
2555+ },
2556+ "type": "array"
2557+ },
2558+ "syndicationProduct": {
2559+ "description": "The syndication product associated with the deal. (readonly, except on create)",
2560+ "type": "string"
2561+ },
2562+ "terms": {
2563+ "$ref": "DealTerms",
2564+ "description": "The negotiable terms of the deal. (updatable)"
2565+ },
2566+ "webPropertyCode": {
2567+ "type": "string"
2568+ }
2569+ },
2570+ "type": "object"
2858 },
2571 },
2859− "siteUrls": {
2572+ "MarketplaceDealParty": {
2860− "type": "array",
2573+ "id": "MarketplaceDealParty",
2861− "items": {
2574+ "properties": {
2862− "type": "string"
2575+ "buyer": {
2863− }
2576+ "$ref": "Buyer",
2577+ "description": "The buyer/seller associated with the deal. One of buyer/seller is specified for a deal-party."
2578+ },
2579+ "seller": {
2580+ "$ref": "Seller",
2581+ "description": "The buyer/seller associated with the deal. One of buyer/seller is specified for a deal party."
2582+ }
2583+ },
2584+ "type": "object"
2864 },
2585 },
2865− "syndicationProduct": {
2586+ "MarketplaceLabel": {
2866− "type": "string"
2587+ "id": "MarketplaceLabel",
2867− }
2588+ "properties": {
2868− }
2589+ "accountId": {
2869− }
2590+ "description": "The accountId of the party that created the label.",
2870− },
2591+ "type": "string"
2871− "resources": {
2592+ },
2872− "accounts": {
2593+ "createTimeMs": {
2873− "methods": {
2594+ "description": "The creation time (in ms since epoch) for the label.",
2874− "get": {
2595+ "format": "int64",
2875− "id": "adexchangebuyer.accounts.get",
2596+ "type": "string"
2876− "path": "accounts/{id}",
2597+ },
2877− "httpMethod": "GET",
2598+ "deprecatedMarketplaceDealParty": {
2878− "description": "Gets one account by ID.",
2599+ "$ref": "MarketplaceDealParty",
2879− "parameters": {
2600+ "description": "Information about the party that created the label."
2880− "id": {
2601+ },
2881− "type": "integer",
2602+ "label": {
2882− "description": "The account id",
2603+ "description": "The label to use.",
2883− "required": true,
2604+ "type": "string"
2884− "format": "int32",
2605+ }
2885− "location": "path"
2606+ },
2886− }
2607+ "type": "object"
2887− },
2888− "parameterOrder": [
2889− "id"
2890− ],
2891− "response": {
2892− "$ref": "Account"
2893− },
2894− "scopes": [
2895− "https://www.googleapis.com/auth/adexchange.buyer"
2896− ]
2897 },
2608 },
2898− "list": {
2609+ "MarketplaceNote": {
2899− "id": "adexchangebuyer.accounts.list",
2610+ "description": "A proposal is associated with a bunch of notes which may optionally be associated with a deal and/or revision number.",
2900− "path": "accounts",
2611+ "id": "MarketplaceNote",
2901− "httpMethod": "GET",
2612+ "properties": {
2902− "description": "Retrieves the authenticated user's list of accounts.",
2613+ "creatorRole": {
2903− "response": {
2614+ "description": "The role of the person (buyer/seller) creating the note. (readonly)",
2904− "$ref": "AccountsList"
2615+ "type": "string"
2905− },
2616+ },
2906− "scopes": [
2617+ "dealId": {
2907− "https://www.googleapis.com/auth/adexchange.buyer"
2618+ "description": "Notes can optionally be associated with a deal. (readonly, except on create)",
2908− ]
2619+ "type": "string"
2620+ },
2621+ "kind": {
2622+ "default": "adexchangebuyer#marketplaceNote",
2623+ "description": "Identifies what kind of resource this is. Value: the fixed string \"adexchangebuyer#marketplaceNote\".",
2624+ "type": "string"
2625+ },
2626+ "note": {
2627+ "description": "The actual note to attach. (readonly, except on create)",
2628+ "type": "string"
2629+ },
2630+ "noteId": {
2631+ "description": "The unique id for the note. (readonly)",
2632+ "type": "string"
2633+ },
2634+ "proposalId": {
2635+ "description": "The proposalId that a note is attached to. (readonly)",
2636+ "type": "string"
2637+ },
2638+ "proposalRevisionNumber": {
2639+ "description": "If the note is associated with a proposal revision number, then store that here. (readonly, except on create)",
2640+ "format": "int64",
2641+ "type": "string"
2642+ },
2643+ "timestampMs": {
2644+ "description": "The timestamp (ms since epoch) that this note was created. (readonly)",
2645+ "format": "int64",
2646+ "type": "string"
2647+ }
2648+ },
2649+ "type": "object"
2909 },
2650 },
2910− "patch": {
2651+ "PerformanceReport": {
2911− "id": "adexchangebuyer.accounts.patch",
2652+ "description": "The configuration data for an Ad Exchange performance report list.",
2912− "path": "accounts/{id}",
2653+ "id": "PerformanceReport",
2913− "httpMethod": "PATCH",
2654+ "properties": {
2914− "description": "Updates an existing account. This method supports patch semantics.",
2655+ "bidRate": {
2915− "parameters": {
2656+ "description": "The number of bid responses with an ad.",
2916− "id": {
2657+ "format": "double",
2917− "type": "integer",
2658+ "type": "number"
2918− "description": "The account id",
2659+ },
2919− "required": true,
2660+ "bidRequestRate": {
2920− "format": "int32",
2661+ "description": "The number of bid requests sent to your bidder.",
2921− "location": "path"
2662+ "format": "double",
2922− }
2663+ "type": "number"
2923− },
2664+ },
2924− "parameterOrder": [
2665+ "calloutStatusRate": {
2925− "id"
2666+ "description": "Rate of various prefiltering statuses per match. Please refer to the callout-status-codes.txt file for different statuses.",
2926− ],
2667+ "items": {
2927− "request": {
2668+ "type": "any"
2928− "$ref": "Account"
2669+ },
2929− },
2670+ "type": "array"
2930− "response": {
2671+ },
2931− "$ref": "Account"
2672+ "cookieMatcherStatusRate": {
2932− },
2673+ "description": "Average QPS for cookie matcher operations.",
2933− "scopes": [
2674+ "items": {
2934− "https://www.googleapis.com/auth/adexchange.buyer"
2675+ "type": "any"
2935− ]
2676+ },
2677+ "type": "array"
2678+ },
2679+ "creativeStatusRate": {
2680+ "description": "Rate of ads with a given status. Please refer to the creative-status-codes.txt file for different statuses.",
2681+ "items": {
2682+ "type": "any"
2683+ },
2684+ "type": "array"
2685+ },
2686+ "filteredBidRate": {
2687+ "description": "The number of bid responses that were filtered due to a policy violation or other errors.",
2688+ "format": "double",
2689+ "type": "number"
2690+ },
2691+ "hostedMatchStatusRate": {
2692+ "description": "Average QPS for hosted match operations.",
2693+ "items": {
2694+ "type": "any"
2695+ },
2696+ "type": "array"
2697+ },
2698+ "inventoryMatchRate": {
2699+ "description": "The number of potential queries based on your pretargeting settings.",
2700+ "format": "double",
2701+ "type": "number"
2702+ },
2703+ "kind": {
2704+ "default": "adexchangebuyer#performanceReport",
2705+ "description": "Resource type.",
2706+ "type": "string"
2707+ },
2708+ "latency50thPercentile": {
2709+ "description": "The 50th percentile round trip latency(ms) as perceived from Google servers for the duration period covered by the report.",
2710+ "format": "double",
2711+ "type": "number"
2712+ },
2713+ "latency85thPercentile": {
2714+ "description": "The 85th percentile round trip latency(ms) as perceived from Google servers for the duration period covered by the report.",
2715+ "format": "double",
2716+ "type": "number"
2717+ },
2718+ "latency95thPercentile": {
2719+ "description": "The 95th percentile round trip latency(ms) as perceived from Google servers for the duration period covered by the report.",
2720+ "format": "double",
2721+ "type": "number"
2722+ },
2723+ "noQuotaInRegion": {
2724+ "description": "Rate of various quota account statuses per quota check.",
2725+ "format": "double",
2726+ "type": "number"
2727+ },
2728+ "outOfQuota": {
2729+ "description": "Rate of various quota account statuses per quota check.",
2730+ "format": "double",
2731+ "type": "number"
2732+ },
2733+ "pixelMatchRequests": {
2734+ "description": "Average QPS for pixel match requests from clients.",
2735+ "format": "double",
2736+ "type": "number"
2737+ },
2738+ "pixelMatchResponses": {
2739+ "description": "Average QPS for pixel match responses from clients.",
2740+ "format": "double",
2741+ "type": "number"
2742+ },
2743+ "quotaConfiguredLimit": {
2744+ "description": "The configured quota limits for this account.",
2745+ "format": "double",
2746+ "type": "number"
2747+ },
2748+ "quotaThrottledLimit": {
2749+ "description": "The throttled quota limits for this account.",
2750+ "format": "double",
2751+ "type": "number"
2752+ },
2753+ "region": {
2754+ "description": "The trading location of this data.",
2755+ "type": "string"
2756+ },
2757+ "successfulRequestRate": {
2758+ "description": "The number of properly formed bid responses received by our servers within the deadline.",
2759+ "format": "double",
2760+ "type": "number"
2761+ },
2762+ "timestamp": {
2763+ "description": "The unix timestamp of the starting time of this performance data.",
2764+ "format": "int64",
2765+ "type": "string"
2766+ },
2767+ "unsuccessfulRequestRate": {
2768+ "description": "The number of bid responses that were unsuccessful due to timeouts, incorrect formatting, etc.",
2769+ "format": "double",
2770+ "type": "number"
2771+ }
2772+ },
2773+ "type": "object"
2936 },
2774 },
2937− "update": {
2775+ "PerformanceReportList": {
2938− "id": "adexchangebuyer.accounts.update",
2776+ "description": "The configuration data for an Ad Exchange performance report list.",
2939− "path": "accounts/{id}",
2777+ "id": "PerformanceReportList",
2940− "httpMethod": "PUT",
2778+ "properties": {
2941− "description": "Updates an existing account.",
2779+ "kind": {
2942− "parameters": {
2780+ "default": "adexchangebuyer#performanceReportList",
2943− "id": {
2781+ "description": "Resource type.",
2944− "type": "integer",
2782+ "type": "string"
2945− "description": "The account id",
2783+ },
2946− "required": true,
2784+ "performanceReport": {
2947− "format": "int32",
2785+ "description": "A list of performance reports relevant for the account.",
2948− "location": "path"
2786+ "items": {
2949− }
2787+ "$ref": "PerformanceReport"
2950− },
2788+ },
2951− "parameterOrder": [
2789+ "type": "array"
2952− "id"
2790+ }
2953− ],
2791+ },
2954− "request": {
2792+ "type": "object"
2955− "$ref": "Account"
2956− },
2957− "response": {
2958− "$ref": "Account"
2959− },
2960− "scopes": [
2961− "https://www.googleapis.com/auth/adexchange.buyer"
2962− ]
2963− }
2964− }
2965− },
2966− "billingInfo": {
2967− "methods": {
2968− "get": {
2969− "id": "adexchangebuyer.billingInfo.get",
2970− "path": "billinginfo/{accountId}",
2971− "httpMethod": "GET",
2972− "description": "Returns the billing information for one account specified by account ID.",
2973− "parameters": {
2974− "accountId": {
2975− "type": "integer",
2976− "description": "The account id.",
2977− "required": true,
2978− "format": "int32",
2979− "location": "path"
2980− }
2981− },
2982− "parameterOrder": [
2983− "accountId"
2984− ],
2985− "response": {
2986− "$ref": "BillingInfo"
2987− },
2988− "scopes": [
2989− "https://www.googleapis.com/auth/adexchange.buyer"
2990− ]
2991 },
2793 },
2992− "list": {
2794+ "PretargetingConfig": {
2993− "id": "adexchangebuyer.billingInfo.list",
2795+ "id": "PretargetingConfig",
2994− "path": "billinginfo",
2796+ "properties": {
2995− "httpMethod": "GET",
2797+ "billingId": {
2996− "description": "Retrieves a list of billing information for all accounts of the authenticated user.",
2798+ "description": "The id for billing purposes, provided for reference. Leave this field blank for insert requests; the id will be generated automatically.",
2997− "response": {
2799+ "format": "int64",
2998− "$ref": "BillingInfoList"
2800+ "type": "string"
2999− },
2801+ },
3000− "scopes": [
2802+ "configId": {
3001− "https://www.googleapis.com/auth/adexchange.buyer"
2803+ "description": "The config id; generated automatically. Leave this field blank for insert requests.",
3002− ]
2804+ "format": "int64",
3003− }
2805+ "type": "string"
3004− }
2806+ },
3005− },
2807+ "configName": {
3006− "budget": {
2808+ "description": "The name of the config. Must be unique. Required for all requests.",
3007− "methods": {
2809+ "type": "string"
3008− "get": {
2810+ },
3009− "id": "adexchangebuyer.budget.get",
2811+ "creativeType": {
3010− "path": "billinginfo/{accountId}/{billingId}",
2812+ "description": "List must contain exactly one of PRETARGETING_CREATIVE_TYPE_HTML or PRETARGETING_CREATIVE_TYPE_VIDEO.",
3011− "httpMethod": "GET",
2813+ "items": {
3012− "description": "Returns the budget information for the adgroup specified by the accountId and billingId.",
2814+ "type": "string"
3013− "parameters": {
2815+ },
3014− "accountId": {
2816+ "type": "array"
3015− "type": "string",
2817+ },
3016− "description": "The account id to get the budget information for.",
2818+ "dimensions": {
3017− "required": true,
2819+ "description": "Requests which allow one of these (width, height) pairs will match. All pairs must be supported ad dimensions.",
3018− "format": "int64",
2820+ "items": {
3019− "location": "path"
2821+ "properties": {
2822+ "height": {
2823+ "description": "Height in pixels.",
2824+ "format": "int64",
2825+ "type": "string"
2826+ },
2827+ "width": {
2828+ "description": "Width in pixels.",
2829+ "format": "int64",
2830+ "type": "string"
2831+ }
2832+ },
2833+ "type": "object"
2834+ },
2835+ "type": "array"
2836+ },
2837+ "excludedContentLabels": {
2838+ "description": "Requests with any of these content labels will not match. Values are from content-labels.txt in the downloadable files section.",
2839+ "items": {
2840+ "format": "int64",
2841+ "type": "string"
2842+ },
2843+ "type": "array"
2844+ },
2845+ "excludedGeoCriteriaIds": {
2846+ "description": "Requests containing any of these geo criteria ids will not match.",
2847+ "items": {
2848+ "format": "int64",
2849+ "type": "string"
2850+ },
2851+ "type": "array"
2852+ },
2853+ "excludedPlacements": {
2854+ "description": "Requests containing any of these placements will not match.",
2855+ "items": {
2856+ "properties": {
2857+ "token": {
2858+ "description": "The value of the placement. Interpretation depends on the placement type, e.g. URL for a site placement, channel name for a channel placement, app id for a mobile app placement.",
2859+ "type": "string"
2860+ },
2861+ "type": {
2862+ "description": "The type of the placement.",
2863+ "type": "string"
2864+ }
2865+ },
2866+ "type": "object"
2867+ },
2868+ "type": "array"
2869+ },
2870+ "excludedUserLists": {
2871+ "description": "Requests containing any of these users list ids will not match.",
2872+ "items": {
2873+ "format": "int64",
2874+ "type": "string"
2875+ },
2876+ "type": "array"
2877+ },
2878+ "excludedVerticals": {
2879+ "description": "Requests containing any of these vertical ids will not match. Values are from the publisher-verticals.txt file in the downloadable files section.",
2880+ "items": {
2881+ "format": "int64",
2882+ "type": "string"
2883+ },
2884+ "type": "array"
2885+ },
2886+ "geoCriteriaIds": {
2887+ "description": "Requests containing any of these geo criteria ids will match.",
2888+ "items": {
2889+ "format": "int64",
2890+ "type": "string"
2891+ },
2892+ "type": "array"
2893+ },
2894+ "isActive": {
2895+ "description": "Whether this config is active. Required for all requests.",
2896+ "type": "boolean"
2897+ },
2898+ "kind": {
2899+ "default": "adexchangebuyer#pretargetingConfig",
2900+ "description": "The kind of the resource, i.e. \"adexchangebuyer#pretargetingConfig\".",
2901+ "type": "string"
2902+ },
2903+ "languages": {
2904+ "description": "Request containing any of these language codes will match.",
2905+ "items": {
2906+ "type": "string"
2907+ },
2908+ "type": "array"
2909+ },
2910+ "minimumViewabilityDecile": {
2911+ "description": "Requests where the predicted viewability is below the specified decile will not match. E.g. if the buyer sets this value to 5, requests from slots where the predicted viewability is below 50% will not match. If the predicted viewability is unknown this field will be ignored.",
2912+ "format": "int32",
2913+ "type": "integer"
2914+ },
2915+ "mobileCarriers": {
2916+ "description": "Requests containing any of these mobile carrier ids will match. Values are from mobile-carriers.csv in the downloadable files section.",
2917+ "items": {
2918+ "format": "int64",
2919+ "type": "string"
2920+ },
2921+ "type": "array"
2922+ },
2923+ "mobileDevices": {
2924+ "description": "Requests containing any of these mobile device ids will match. Values are from mobile-devices.csv in the downloadable files section.",
2925+ "items": {
2926+ "format": "int64",
2927+ "type": "string"
2928+ },
2929+ "type": "array"
2930+ },
2931+ "mobileOperatingSystemVersions": {
2932+ "description": "Requests containing any of these mobile operating system version ids will match. Values are from mobile-os.csv in the downloadable files section.",
2933+ "items": {
2934+ "format": "int64",
2935+ "type": "string"
2936+ },
2937+ "type": "array"
2938+ },
2939+ "placements": {
2940+ "description": "Requests containing any of these placements will match.",
2941+ "items": {
2942+ "properties": {
2943+ "token": {
2944+ "description": "The value of the placement. Interpretation depends on the placement type, e.g. URL for a site placement, channel name for a channel placement, app id for a mobile app placement.",
2945+ "type": "string"
2946+ },
2947+ "type": {
2948+ "description": "The type of the placement.",
2949+ "type": "string"
2950+ }
2951+ },
2952+ "type": "object"
2953+ },
2954+ "type": "array"
2955+ },
2956+ "platforms": {
2957+ "description": "Requests matching any of these platforms will match. Possible values are PRETARGETING_PLATFORM_MOBILE, PRETARGETING_PLATFORM_DESKTOP, and PRETARGETING_PLATFORM_TABLET.",
2958+ "items": {
2959+ "type": "string"
2960+ },
2961+ "type": "array"
2962+ },
2963+ "supportedCreativeAttributes": {
2964+ "description": "Creative attributes should be declared here if all creatives corresponding to this pretargeting configuration have that creative attribute. Values are from pretargetable-creative-attributes.txt in the downloadable files section.",
2965+ "items": {
2966+ "format": "int64",
2967+ "type": "string"
2968+ },
2969+ "type": "array"
2970+ },
2971+ "userIdentifierDataRequired": {
2972+ "description": "Requests containing the specified type of user data will match. Possible values are HOSTED_MATCH_DATA, which means the request is cookie-targetable and has a match in the buyer's hosted match table, and COOKIE_OR_IDFA, which means the request has either a targetable cookie or an iOS IDFA.",
2973+ "items": {
2974+ "type": "string"
2975+ },
2976+ "type": "array"
2977+ },
2978+ "userLists": {
2979+ "description": "Requests containing any of these user list ids will match.",
2980+ "items": {
2981+ "format": "int64",
2982+ "type": "string"
2983+ },
2984+ "type": "array"
2985+ },
2986+ "vendorTypes": {
2987+ "description": "Requests that allow any of these vendor ids will match. Values are from vendors.txt in the downloadable files section.",
2988+ "items": {
2989+ "format": "int64",
2990+ "type": "string"
2991+ },
2992+ "type": "array"
2993+ },
2994+ "verticals": {
2995+ "description": "Requests containing any of these vertical ids will match.",
2996+ "items": {
2997+ "format": "int64",
2998+ "type": "string"
2999+ },
3000+ "type": "array"
3001+ },
3002+ "videoPlayerSizes": {
3003+ "description": "Video requests satisfying any of these player size constraints will match.",
3004+ "items": {
3005+ "properties": {
3006+ "aspectRatio": {
3007+ "description": "The type of aspect ratio. Leave this field blank to match all aspect ratios.",
3008+ "type": "string"
3009+ },
3010+ "minHeight": {
3011+ "description": "The minimum player height in pixels. Leave this field blank to match any player height.",
3012+ "format": "int64",
3013+ "type": "string"
3014+ },
3015+ "minWidth": {
3016+ "description": "The minimum player width in pixels. Leave this field blank to match any player width.",
3017+ "format": "int64",
3018+ "type": "string"
3019+ }
3020+ },
3021+ "type": "object"
3022+ },
3023+ "type": "array"
3024+ }
3020 },
3025 },
3021− "billingId": {
3026+ "type": "object"
3022− "type": "string",
3023− "description": "The billing id to get the budget information for.",
3024− "required": true,
3025− "format": "int64",
3026− "location": "path"
3027− }
3028− },
3029− "parameterOrder": [
3030− "accountId",
3031− "billingId"
3032− ],
3033− "response": {
3034− "$ref": "Budget"
3035− },
3036− "scopes": [
3037− "https://www.googleapis.com/auth/adexchange.buyer"
3038− ]
3039 },
3027 },
3040− "patch": {
3028+ "PretargetingConfigList": {
3041− "id": "adexchangebuyer.budget.patch",
3029+ "id": "PretargetingConfigList",
3042− "path": "billinginfo/{accountId}/{billingId}",
3030+ "properties": {
3043− "httpMethod": "PATCH",
3031+ "items": {
3044− "description": "Updates the budget amount for the budget of the adgroup specified by the accountId and billingId, with the budget amount in the request. This method supports patch semantics.",
3032+ "description": "A list of pretargeting configs",
3045− "parameters": {
3033+ "items": {
3046− "accountId": {
3034+ "$ref": "PretargetingConfig"
3047− "type": "string",
3035+ },
3048− "description": "The account id associated with the budget being updated.",
3036+ "type": "array"
3049− "required": true,
3037+ },
3050− "format": "int64",
3038+ "kind": {
3051− "location": "path"
3039+ "default": "adexchangebuyer#pretargetingConfigList",
3040+ "description": "Resource type.",
3041+ "type": "string"
3042+ }
3052 },
3043 },
3053− "billingId": {
3044+ "type": "object"
3054− "type": "string",
3055− "description": "The billing id associated with the budget being updated.",
3056− "required": true,
3057− "format": "int64",
3058− "location": "path"
3059− }
3060− },
3061− "parameterOrder": [
3062− "accountId",
3063− "billingId"
3064− ],
3065− "request": {
3066− "$ref": "Budget"
3067− },
3068− "response": {
3069− "$ref": "Budget"
3070− },
3071− "scopes": [
3072− "https://www.googleapis.com/auth/adexchange.buyer"
3073− ]
3074 },
3045 },
3075− "update": {
3046+ "Price": {
3076− "id": "adexchangebuyer.budget.update",
3047+ "id": "Price",
3077− "path": "billinginfo/{accountId}/{billingId}",
3048+ "properties": {
3078− "httpMethod": "PUT",
3049+ "amountMicros": {
3079− "description": "Updates the budget amount for the budget of the adgroup specified by the accountId and billingId, with the budget amount in the request.",
3050+ "description": "The price value in micros.",
3080− "parameters": {
3051+ "format": "double",
3081− "accountId": {
3052+ "type": "number"
3082− "type": "string",
3053+ },
3083− "description": "The account id associated with the budget being updated.",
3054+ "currencyCode": {
3084− "required": true,
3055+ "description": "The currency code for the price.",
3085− "format": "int64",
3056+ "type": "string"
3086− "location": "path"
3057+ },
3087− },
3058+ "expectedCpmMicros": {
3088− "billingId": {
3059+ "description": "In case of CPD deals, the expected CPM in micros.",
3089− "type": "string",
3060+ "format": "double",
3090− "description": "The billing id associated with the budget being updated.",
3061+ "type": "number"
3091− "required": true,
3062+ },
3092− "format": "int64",
3063+ "pricingType": {
3093− "location": "path"
3064+ "description": "The pricing type for the deal/product.",
3094− }
3065+ "type": "string"
3095− },
3066+ }
3096− "parameterOrder": [
3097− "accountId",
3098− "billingId"
3099− ],
3100− "request": {
3101− "$ref": "Budget"
3102− },
3103− "response": {
3104− "$ref": "Budget"
3105− },
3106− "scopes": [
3107− "https://www.googleapis.com/auth/adexchange.buyer"
3108− ]
3109− }
3110− }
3111− },
3112− "clientaccess": {
3113− "methods": {
3114− "delete": {
3115− "id": "adexchangebuyer.clientaccess.delete",
3116− "path": "clientAccess/{clientAccountId}",
3117− "httpMethod": "DELETE",
3118− "parameters": {
3119− "clientAccountId": {
3120− "type": "string",
3121− "required": true,
3122− "format": "int64",
3123− "location": "path"
3124 },
3067 },
3125− "sponsorAccountId": {
3068+ "type": "object"
3126− "type": "integer",
3127− "required": true,
3128− "format": "int32",
3129− "location": "query"
3130− }
3131− },
3132− "parameterOrder": [
3133− "clientAccountId",
3134− "sponsorAccountId"
3135− ],
3136− "scopes": [
3137− "https://www.googleapis.com/auth/adexchange.buyer"
3138− ]
3139 },
3069 },
3140− "get": {
3070+ "PricePerBuyer": {
3141− "id": "adexchangebuyer.clientaccess.get",
3071+ "description": "Used to specify pricing rules for buyers. Each PricePerBuyer in a product can become [0,1] deals. To check if there is a PricePerBuyer for a particular buyer we look for the most specific matching rule - we first look for a rule matching the buyer and otherwise look for a matching rule where no buyer is set.",
3142− "path": "clientAccess/{clientAccountId}",
3072+ "id": "PricePerBuyer",
3143− "httpMethod": "GET",
3073+ "properties": {
3144− "parameters": {
3074+ "auctionTier": {
3145− "clientAccountId": {
3075+ "description": "Optional access type for this buyer.",
3146− "type": "string",
3076+ "type": "string"
3147− "required": true,
3077+ },
3148− "format": "int64",
3078+ "billedBuyer": {
3149− "location": "path"
3079+ "$ref": "Buyer",
3080+ "description": "Reference to the buyer that will get billed."
3081+ },
3082+ "buyer": {
3083+ "$ref": "Buyer",
3084+ "description": "The buyer who will pay this price. If unset, all buyers can pay this price (if the advertisers match, and there's no more specific rule matching the buyer)."
3085+ },
3086+ "price": {
3087+ "$ref": "Price",
3088+ "description": "The specified price"
3089+ }
3150 },
3090 },
3151− "sponsorAccountId": {
3091+ "type": "object"
3152− "type": "integer",
3153− "required": true,
3154− "format": "int32",
3155− "location": "query"
3156− }
3157− },
3158− "parameterOrder": [
3159− "clientAccountId",
3160− "sponsorAccountId"
3161− ],
3162− "response": {
3163− "$ref": "ClientAccessCapabilities"
3164− },
3165− "scopes": [
3166− "https://www.googleapis.com/auth/adexchange.buyer"
3167− ]
3168 },
3092 },
3169− "insert": {
3093+ "PrivateData": {
3170− "id": "adexchangebuyer.clientaccess.insert",
3094+ "id": "PrivateData",
3171− "path": "clientAccess",
3095+ "properties": {
3172− "httpMethod": "POST",
3096+ "referenceId": {
3173− "parameters": {
3097+ "type": "string"
3174− "clientAccountId": {
3098+ },
3175− "type": "string",
3099+ "referencePayload": {
3176− "format": "int64",
3100+ "format": "byte",
3177− "location": "query"
3101+ "type": "string"
3102+ }
3178 },
3103 },
3179− "sponsorAccountId": {
3104+ "type": "object"
3180− "type": "integer",
3181− "format": "int32",
3182− "location": "query"
3183− }
3184− },
3185− "request": {
3186− "$ref": "ClientAccessCapabilities"
3187− },
3188− "response": {
3189− "$ref": "ClientAccessCapabilities"
3190− },
3191− "scopes": [
3192− "https://www.googleapis.com/auth/adexchange.buyer"
3193− ]
3194− },
3195− "list": {
3196− "id": "adexchangebuyer.clientaccess.list",
3197− "path": "clientAccess",
3198− "httpMethod": "GET",
3199− "request": {
3200− "$ref": "ListClientAccessCapabilitiesRequest"
3201− },
3202− "response": {
3203− "$ref": "ListClientAccessCapabilitiesResponse"
3204− },
3205− "scopes": [
3206− "https://www.googleapis.com/auth/adexchange.buyer"
3207− ]
3208 },
3105 },
3209− "patch": {
3106+ "Product": {
3210− "id": "adexchangebuyer.clientaccess.patch",
3107+ "description": "A product is segment of inventory that a seller wishes to sell. It is associated with certain terms and targeting information which helps buyer know more about the inventory. Each field in a product can have one of the following setting:\n\n(readonly) - It is an error to try and set this field. (buyer-readonly) - Only the seller can set this field. (seller-readonly) - Only the buyer can set this field. (updatable) - The field is updatable at all times by either buyer or the seller.",
3211− "path": "clientAccess/{clientAccountId}",
3108+ "id": "Product",
3212− "httpMethod": "PATCH",
3109+ "properties": {
3213− "parameters": {
3110+ "billedBuyer": {
3214− "clientAccountId": {
3111+ "$ref": "Buyer",
3215− "type": "string",
3112+ "description": "The billed buyer corresponding to the buyer that created the offer. (readonly, except on create)"
3216− "required": true,
3113+ },
3217− "format": "int64",
3114+ "buyer": {
3218− "location": "path"
3115+ "$ref": "Buyer",
3116+ "description": "The buyer that created the offer if this is a buyer initiated offer (readonly, except on create)"
3117+ },
3118+ "creationTimeMs": {
3119+ "description": "Creation time in ms. since epoch (readonly)",
3120+ "format": "int64",
3121+ "type": "string"
3122+ },
3123+ "creatorContacts": {
3124+ "description": "Optional contact information for the creator of this product. (buyer-readonly)",
3125+ "items": {
3126+ "$ref": "ContactInformation"
3127+ },
3128+ "type": "array"
3129+ },
3130+ "creatorRole": {
3131+ "description": "The role that created the offer. Set to BUYER for buyer initiated offers.",
3132+ "type": "string"
3133+ },
3134+ "deliveryControl": {
3135+ "$ref": "DeliveryControl",
3136+ "description": "The set of fields around delivery control that are interesting for a buyer to see but are non-negotiable. These are set by the publisher. This message is assigned an id of 100 since some day we would want to model this as a protobuf extension."
3137+ },
3138+ "flightEndTimeMs": {
3139+ "description": "The proposed end time for the deal (ms since epoch) (buyer-readonly)",
3140+ "format": "int64",
3141+ "type": "string"
3142+ },
3143+ "flightStartTimeMs": {
3144+ "description": "Inventory availability dates. (times are in ms since epoch) The granularity is generally in the order of seconds. (buyer-readonly)",
3145+ "format": "int64",
3146+ "type": "string"
3147+ },
3148+ "hasCreatorSignedOff": {
3149+ "description": "If the creator has already signed off on the product, then the buyer can finalize the deal by accepting the product as is. When copying to a proposal, if any of the terms are changed, then auto_finalize is automatically set to false.",
3150+ "type": "boolean"
3151+ },
3152+ "inventorySource": {
3153+ "description": "What exchange will provide this inventory (readonly, except on create).",
3154+ "type": "string"
3155+ },
3156+ "kind": {
3157+ "default": "adexchangebuyer#product",
3158+ "description": "Identifies what kind of resource this is. Value: the fixed string \"adexchangebuyer#product\".",
3159+ "type": "string"
3160+ },
3161+ "labels": {
3162+ "description": "Optional List of labels for the product (optional, buyer-readonly).",
3163+ "items": {
3164+ "$ref": "MarketplaceLabel"
3165+ },
3166+ "type": "array"
3167+ },
3168+ "lastUpdateTimeMs": {
3169+ "description": "Time of last update in ms. since epoch (readonly)",
3170+ "format": "int64",
3171+ "type": "string"
3172+ },
3173+ "legacyOfferId": {
3174+ "description": "Optional legacy offer id if this offer is a preferred deal offer.",
3175+ "type": "string"
3176+ },
3177+ "marketplacePublisherProfileId": {
3178+ "description": "Marketplace publisher profile Id. This Id differs from the regular publisher_profile_id in that 1. This is a new id, the old Id will be deprecated in 2017. 2. This id uniquely identifies a publisher profile by itself.",
3179+ "type": "string"
3180+ },
3181+ "name": {
3182+ "description": "The name for this product as set by the seller. (buyer-readonly)",
3183+ "type": "string"
3184+ },
3185+ "privateAuctionId": {
3186+ "description": "Optional private auction id if this offer is a private auction offer.",
3187+ "type": "string"
3188+ },
3189+ "productId": {
3190+ "description": "The unique id for the product (readonly)",
3191+ "type": "string"
3192+ },
3193+ "publisherProfileId": {
3194+ "description": "Id of the publisher profile for a given seller. A (seller.account_id, publisher_profile_id) pair uniquely identifies a publisher profile. Buyers can call the PublisherProfiles::List endpoint to get a list of publisher profiles for a given seller.",
3195+ "type": "string"
3196+ },
3197+ "publisherProvidedForecast": {
3198+ "$ref": "PublisherProvidedForecast",
3199+ "description": "Publisher self-provided forecast information."
3200+ },
3201+ "revisionNumber": {
3202+ "description": "The revision number of the product. (readonly)",
3203+ "format": "int64",
3204+ "type": "string"
3205+ },
3206+ "seller": {
3207+ "$ref": "Seller",
3208+ "description": "Information about the seller that created this product (readonly, except on create)"
3209+ },
3210+ "sharedTargetings": {
3211+ "description": "Targeting that is shared between the buyer and the seller. Each targeting criteria has a specified key and for each key there is a list of inclusion value or exclusion values. (buyer-readonly)",
3212+ "items": {
3213+ "$ref": "SharedTargeting"
3214+ },
3215+ "type": "array"
3216+ },
3217+ "state": {
3218+ "description": "The state of the product. (buyer-readonly)",
3219+ "type": "string"
3220+ },
3221+ "syndicationProduct": {
3222+ "description": "The syndication product associated with the deal. (readonly, except on create)",
3223+ "type": "string"
3224+ },
3225+ "terms": {
3226+ "$ref": "DealTerms",
3227+ "description": "The negotiable terms of the deal (buyer-readonly)"
3228+ },
3229+ "webPropertyCode": {
3230+ "description": "The web property code for the seller. This field is meant to be copied over as is when creating deals.",
3231+ "type": "string"
3232+ }
3219 },
3233 },
3220− "sponsorAccountId": {
3234+ "type": "object"
3221− "type": "integer",
3222− "required": true,
3223− "format": "int32",
3224− "location": "query"
3225− }
3226− },
3227− "parameterOrder": [
3228− "clientAccountId",
3229− "sponsorAccountId"
3230− ],
3231− "request": {
3232− "$ref": "ClientAccessCapabilities"
3233− },
3234− "response": {
3235− "$ref": "ClientAccessCapabilities"
3236− },
3237− "scopes": [
3238− "https://www.googleapis.com/auth/adexchange.buyer"
3239− ]
3240 },
3235 },
3241− "update": {
3236+ "Proposal": {
3242− "id": "adexchangebuyer.clientaccess.update",
3237+ "description": "Represents a proposal in the marketplace. A proposal is the unit of negotiation between a seller and a buyer and contains deals which are served. Each field in a proposal can have one of the following setting:\n\n(readonly) - It is an error to try and set this field. (buyer-readonly) - Only the seller can set this field. (seller-readonly) - Only the buyer can set this field. (updatable) - The field is updatable at all times by either buyer or the seller.",
3243− "path": "clientAccess/{clientAccountId}",
3238+ "id": "Proposal",
3244− "httpMethod": "PUT",
3239+ "properties": {
3245− "parameters": {
3240+ "billedBuyer": {
3246− "clientAccountId": {
3241+ "$ref": "Buyer",
3247− "type": "string",
3242+ "description": "Reference to the buyer that will get billed for this proposal. (readonly)"
3248− "required": true,
3243+ },
3249− "format": "int64",
3244+ "buyer": {
3250− "location": "path"
3245+ "$ref": "Buyer",
3251− },
3246+ "description": "Reference to the buyer on the proposal. (readonly, except on create)"
3252− "sponsorAccountId": {
3247+ },
3253− "type": "integer",
3248+ "buyerContacts": {
3254− "required": true,
3249+ "description": "Optional contact information of the buyer. (seller-readonly)",
3255− "format": "int32",
3250+ "items": {
3256− "location": "query"
3251+ "$ref": "ContactInformation"
3257− }
3252+ },
3258− },
3253+ "type": "array"
3259− "parameterOrder": [
3254+ },
3260− "clientAccountId",
3255+ "buyerPrivateData": {
3261− "sponsorAccountId"
3256+ "$ref": "PrivateData",
3262− ],
3257+ "description": "Private data for buyer. (hidden from seller)."
3263− "request": {
3258+ },
3264− "$ref": "ClientAccessCapabilities"
3259+ "dbmAdvertiserIds": {
3265− },
3260+ "description": "IDs of DBM advertisers permission to this proposal.",
3266− "response": {
3261+ "items": {
3267− "$ref": "ClientAccessCapabilities"
3262+ "type": "string"
3268− },
3263+ },
3269− "scopes": [
3264+ "type": "array"
3270− "https://www.googleapis.com/auth/adexchange.buyer"
3265+ },
3271− ]
3266+ "hasBuyerSignedOff": {
3272− }
3267+ "description": "When an proposal is in an accepted state, indicates whether the buyer has signed off. Once both sides have signed off on a deal, the proposal can be finalized by the seller. (seller-readonly)",
3273− }
3268+ "type": "boolean"
3274− },
3269+ },
3275− "creatives": {
3270+ "hasSellerSignedOff": {
3276− "methods": {
3271+ "description": "When an proposal is in an accepted state, indicates whether the buyer has signed off Once both sides have signed off on a deal, the proposal can be finalized by the seller. (buyer-readonly)",
3277− "get": {
3272+ "type": "boolean"
3278− "id": "adexchangebuyer.creatives.get",
3273+ },
3279− "path": "creatives/{accountId}/{buyerCreativeId}",
3274+ "inventorySource": {
3280− "httpMethod": "GET",
3275+ "description": "What exchange will provide this inventory (readonly, except on create).",
3281− "description": "Gets the status for a single creative. A creative will be available 30-40 minutes after submission.",
3276+ "type": "string"
3282− "parameters": {
3277+ },
3283− "accountId": {
3278+ "isRenegotiating": {
3284− "type": "integer",
3279+ "description": "True if the proposal is being renegotiated (readonly).",
3285− "description": "The id for the account that will serve this creative.",
3280+ "type": "boolean"
3286− "required": true,
3281+ },
3287− "format": "int32",
3282+ "isSetupComplete": {
3288− "location": "path"
3283+ "description": "True, if the buyside inventory setup is complete for this proposal. (readonly, except via OrderSetupCompleted action) Deprecated in favor of deal level setup complete flag.",
3284+ "type": "boolean"
3285+ },
3286+ "kind": {
3287+ "default": "adexchangebuyer#proposal",
3288+ "description": "Identifies what kind of resource this is. Value: the fixed string \"adexchangebuyer#proposal\".",
3289+ "type": "string"
3290+ },
3291+ "labels": {
3292+ "description": "List of labels associated with the proposal. (readonly)",
3293+ "items": {
3294+ "$ref": "MarketplaceLabel"
3295+ },
3296+ "type": "array"
3297+ },
3298+ "lastUpdaterOrCommentorRole": {
3299+ "description": "The role of the last user that either updated the proposal or left a comment. (readonly)",
3300+ "type": "string"
3301+ },
3302+ "name": {
3303+ "description": "The name for the proposal (updatable)",
3304+ "type": "string"
3305+ },
3306+ "negotiationId": {
3307+ "description": "Optional negotiation id if this proposal is a preferred deal proposal.",
3308+ "type": "string"
3309+ },
3310+ "originatorRole": {
3311+ "description": "Indicates whether the buyer/seller created the proposal.(readonly)",
3312+ "type": "string"
3313+ },
3314+ "privateAuctionId": {
3315+ "description": "Optional private auction id if this proposal is a private auction proposal.",
3316+ "type": "string"
3317+ },
3318+ "proposalId": {
3319+ "description": "The unique id of the proposal. (readonly).",
3320+ "type": "string"
3321+ },
3322+ "proposalState": {
3323+ "description": "The current state of the proposal. (readonly)",
3324+ "type": "string"
3325+ },
3326+ "revisionNumber": {
3327+ "description": "The revision number for the proposal (readonly).",
3328+ "format": "int64",
3329+ "type": "string"
3330+ },
3331+ "revisionTimeMs": {
3332+ "description": "The time (ms since epoch) when the proposal was last revised (readonly).",
3333+ "format": "int64",
3334+ "type": "string"
3335+ },
3336+ "seller": {
3337+ "$ref": "Seller",
3338+ "description": "Reference to the seller on the proposal. (readonly, except on create)"
3339+ },
3340+ "sellerContacts": {
3341+ "description": "Optional contact information of the seller (buyer-readonly).",
3342+ "items": {
3343+ "$ref": "ContactInformation"
3344+ },
3345+ "type": "array"
3346+ }
3289 },
3347 },
3290− "buyerCreativeId": {
3348+ "type": "object"
3291− "type": "string",
3292− "description": "The buyer-specific id for this creative.",
3293− "required": true,
3294− "location": "path"
3295− }
3296− },
3297− "parameterOrder": [
3298− "accountId",
3299− "buyerCreativeId"
3300− ],
3301− "response": {
3302− "$ref": "Creative"
3303− },
3304− "scopes": [
3305− "https://www.googleapis.com/auth/adexchange.buyer"
3306− ]
3307 },
3349 },
3308− "insert": {
3350+ "PublisherProfileApiProto": {
3309− "id": "adexchangebuyer.creatives.insert",
3351+ "id": "PublisherProfileApiProto",
3310− "path": "creatives",
3352+ "properties": {
3311− "httpMethod": "POST",
3353+ "audience": {
3312− "description": "Submit a new creative.",
3354+ "description": "Publisher provided info on its audience.",
3313− "request": {
3355+ "type": "string"
3314− "$ref": "Creative"
3356+ },
3315− },
3357+ "buyerPitchStatement": {
3316− "response": {
3358+ "description": "A pitch statement for the buyer",
3317− "$ref": "Creative"
3359+ "type": "string"
3318− },
3360+ },
3319− "scopes": [
3361+ "directContact": {
3320− "https://www.googleapis.com/auth/adexchange.buyer"
3362+ "description": "Direct contact for the publisher profile.",
3321− ]
3363+ "type": "string"
3322− },
3364+ },
3323− "list": {
3365+ "exchange": {
3324− "id": "adexchangebuyer.creatives.list",
3366+ "description": "Exchange where this publisher profile is from. E.g. AdX, Rubicon etc...",
3325− "path": "creatives",
3367+ "type": "string"
3326− "httpMethod": "GET",
3368+ },
3327− "description": "Retrieves a list of the authenticated user's active creatives. A creative will be available 30-40 minutes after submission.",
3369+ "googlePlusLink": {
3328− "parameters": {
3370+ "description": "Link to publisher's Google+ page.",
3329− "accountId": {
3371+ "type": "string"
3330− "type": "integer",
3372+ },
3331− "description": "When specified, only creatives for the given account ids are returned.",
3373+ "isParent": {
3332− "format": "int32",
3374+ "description": "True, if this is the parent profile, which represents all domains owned by the publisher.",
3333− "repeated": true,
3375+ "type": "boolean"
3334− "location": "query"
3376+ },
3335− },
3377+ "isPublished": {
3336− "buyerCreativeId": {
3378+ "description": "True, if this profile is published. Deprecated for state.",
3337− "type": "string",
3379+ "type": "boolean"
3338− "description": "When specified, only creatives for the given buyer creative ids are returned.",
3380+ },
3339− "repeated": true,
3381+ "kind": {
3340− "location": "query"
3382+ "default": "adexchangebuyer#publisherProfileApiProto",
3341− },
3383+ "description": "Identifies what kind of resource this is. Value: the fixed string \"adexchangebuyer#publisherProfileApiProto\".",
3342− "dealsStatusFilter": {
3384+ "type": "string"
3343− "type": "string",
3385+ },
3344− "description": "When specified, only creatives having the given direct deals status are returned.",
3386+ "logoUrl": {
3345− "enum": [
3387+ "description": "The url to the logo for the publisher.",
3346− "approved",
3388+ "type": "string"
3347− "conditionally_approved",
3389+ },
3348− "disapproved",
3390+ "mediaKitLink": {
3349− "not_checked"
3391+ "description": "The url for additional marketing and sales materials.",
3350− ],
3392+ "type": "string"
3351− "enumDescriptions": [
3393+ },
3352− "Creatives which have been approved for serving on direct deals.",
3394+ "name": {
3353− "Creatives which have been conditionally approved for serving on direct deals.",
3395+ "type": "string"
3354− "Creatives which have been disapproved for serving on direct deals.",
3396+ },
3355− "Creatives whose direct deals status is not yet checked."
3397+ "overview": {
3356− ],
3398+ "description": "Publisher provided overview.",
3357− "location": "query"
3399+ "type": "string"
3358− },
3400+ },
3359− "maxResults": {
3401+ "profileId": {
3360− "type": "integer",
3402+ "description": "The pair of (seller.account_id, profile_id) uniquely identifies a publisher profile for a given publisher.",
3361− "description": "Maximum number of entries returned on one result page. If not set, the default is 100. Optional.",
3403+ "format": "int32",
3362− "format": "uint32",
3404+ "type": "integer"
3363− "minimum": "1",
3405+ },
3364− "maximum": "1000",
3406+ "programmaticContact": {
3365− "location": "query"
3407+ "description": "Programmatic contact for the publisher profile.",
3366− },
3408+ "type": "string"
3367− "openAuctionStatusFilter": {
3409+ },
3368− "type": "string",
3410+ "publisherDomains": {
3369− "description": "When specified, only creatives having the given open auction status are returned.",
3411+ "description": "The list of domains represented in this publisher profile. Empty if this is a parent profile.",
3370− "enum": [
3412+ "items": {
3371− "approved",
3413+ "type": "string"
3372− "conditionally_approved",
3414+ },
3373− "disapproved",
3415+ "type": "array"
3374− "not_checked"
3416+ },
3375− ],
3417+ "publisherProfileId": {
3376− "enumDescriptions": [
3418+ "description": "Unique Id for publisher profile.",
3377− "Creatives which have been approved for serving on the open auction.",
3419+ "type": "string"
3378− "Creatives which have been conditionally approved for serving on the open auction.",
3420+ },
3379− "Creatives which have been disapproved for serving on the open auction.",
3421+ "publisherProvidedForecast": {
3380− "Creatives whose open auction status is not yet checked."
3422+ "$ref": "PublisherProvidedForecast",
3381− ],
3423+ "description": "Publisher provided forecasting information."
3382− "location": "query"
3424+ },
3425+ "rateCardInfoLink": {
3426+ "description": "Link to publisher rate card",
3427+ "type": "string"
3428+ },
3429+ "samplePageLink": {
3430+ "description": "Link for a sample content page.",
3431+ "type": "string"
3432+ },
3433+ "seller": {
3434+ "$ref": "Seller",
3435+ "description": "Seller of the publisher profile."
3436+ },
3437+ "state": {
3438+ "description": "State of the publisher profile.",
3439+ "type": "string"
3440+ },
3441+ "topHeadlines": {
3442+ "description": "Publisher provided key metrics and rankings.",
3443+ "items": {
3444+ "type": "string"
3445+ },
3446+ "type": "array"
3447+ }
3383 },
3448 },
3384− "pageToken": {
3449+ "type": "object"
3385− "type": "string",
3386− "description": "A continuation token, used to page through ad clients. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response. Optional.",
3387− "location": "query"
3388− }
3389− },
3390− "response": {
3391− "$ref": "CreativesList"
3392− },
3393− "scopes": [
3394− "https://www.googleapis.com/auth/adexchange.buyer"
3395− ]
3396− }
3397− }
3398− },
3399− "deals": {
3400− "methods": {
3401− "get": {
3402− "id": "adexchangebuyer.deals.get",
3403− "path": "deals/{dealId}",
3404− "httpMethod": "GET",
3405− "description": "Gets the requested deal.",
3406− "parameters": {
3407− "dealId": {
3408− "type": "string",
3409− "required": true,
3410− "format": "int64",
3411− "location": "path"
3412− }
3413− },
3414− "parameterOrder": [
3415− "dealId"
3416− ],
3417− "request": {
3418− "$ref": "GetFinalizedNegotiationByExternalDealIdRequest"
3419− },
3420− "response": {
3421− "$ref": "NegotiationDto"
3422− },
3423− "scopes": [
3424− "https://www.googleapis.com/auth/adexchange.buyer"
3425− ]
3426− }
3427− }
3428− },
3429− "marketplacedeals": {
3430− "methods": {
3431− "delete": {
3432− "id": "adexchangebuyer.marketplacedeals.delete",
3433− "path": "marketplaceOrders/{orderId}/deals/delete",
3434− "httpMethod": "POST",
3435− "description": "Delete the specified deals from the order",
3436− "parameters": {
3437− "orderId": {
3438− "type": "string",
3439− "description": "The orderId to delete deals from.",
3440− "required": true,
3441− "location": "path"
3442− }
3443− },
3444− "parameterOrder": [
3445− "orderId"
3446− ],
3447− "request": {
3448− "$ref": "DeleteOrderDealsRequest"
3449− },
3450− "response": {
3451− "$ref": "DeleteOrderDealsResponse"
3452− },
3453− "scopes": [
3454− "https://www.googleapis.com/auth/adexchange.buyer"
3455− ]
3456− },
3457− "insert": {
3458− "id": "adexchangebuyer.marketplacedeals.insert",
3459− "path": "marketplaceOrders/{orderId}/deals/insert",
3460− "httpMethod": "POST",
3461− "description": "Add new deals for the specified order",
3462− "parameters": {
3463− "orderId": {
3464− "type": "string",
3465− "description": "OrderId for which deals need to be added.",
3466− "required": true,
3467− "location": "path"
3468− }
3469− },
3470− "parameterOrder": [
3471− "orderId"
3472− ],
3473− "request": {
3474− "$ref": "AddOrderDealsRequest"
3475− },
3476− "response": {
3477− "$ref": "AddOrderDealsResponse"
3478− },
3479− "scopes": [
3480− "https://www.googleapis.com/auth/adexchange.buyer"
3481− ]
3482− },
3483− "list": {
3484− "id": "adexchangebuyer.marketplacedeals.list",
3485− "path": "marketplaceOrders/{orderId}/deals",
3486− "httpMethod": "GET",
3487− "description": "List all the deals for a given order",
3488− "parameters": {
3489− "orderId": {
3490− "type": "string",
3491− "description": "The orderId to get deals for.",
3492− "required": true,
3493− "location": "path"
3494− }
3495− },
3496− "parameterOrder": [
3497− "orderId"
3498− ],
3499− "response": {
3500− "$ref": "GetOrderDealsResponse"
3501− },
3502− "scopes": [
3503− "https://www.googleapis.com/auth/adexchange.buyer"
3504− ]
3505− },
3506− "update": {
3507− "id": "adexchangebuyer.marketplacedeals.update",
3508− "path": "marketplaceOrders/{orderId}/deals/update",
3509− "httpMethod": "POST",
3510− "description": "Replaces all the deals in the order with the passed in deals",
3511− "parameters": {
3512− "orderId": {
3513− "type": "string",
3514− "description": "The orderId to edit deals on.",
3515− "required": true,
3516− "location": "path"
3517− }
3518− },
3519− "parameterOrder": [
3520− "orderId"
3521− ],
3522− "request": {
3523− "$ref": "EditAllOrderDealsRequest"
3524− },
3525− "response": {
3526− "$ref": "EditAllOrderDealsResponse"
3527− },
3528− "scopes": [
3529− "https://www.googleapis.com/auth/adexchange.buyer"
3530− ]
3531− }
3532− }
3533− },
3534− "marketplacenotes": {
3535− "methods": {
3536− "insert": {
3537− "id": "adexchangebuyer.marketplacenotes.insert",
3538− "path": "marketplaceOrders/{orderId}/notes/insert",
3539− "httpMethod": "POST",
3540− "description": "Add notes to the order",
3541− "parameters": {
3542− "orderId": {
3543− "type": "string",
3544− "description": "The orderId to add notes for.",
3545− "required": true,
3546− "location": "path"
3547− }
3548− },
3549− "parameterOrder": [
3550− "orderId"
3551− ],
3552− "request": {
3553− "$ref": "AddOrderNotesRequest"
3554− },
3555− "response": {
3556− "$ref": "AddOrderNotesResponse"
3557− },
3558− "scopes": [
3559− "https://www.googleapis.com/auth/adexchange.buyer"
3560− ]
3561− },
3562− "list": {
3563− "id": "adexchangebuyer.marketplacenotes.list",
3564− "path": "marketplaceOrders/{orderId}/notes",
3565− "httpMethod": "GET",
3566− "description": "Get all the notes associated with an order",
3567− "parameters": {
3568− "orderId": {
3569− "type": "string",
3570− "description": "The orderId to get notes for.",
3571− "required": true,
3572− "location": "path"
3573− }
3574− },
3575− "parameterOrder": [
3576− "orderId"
3577− ],
3578− "response": {
3579− "$ref": "GetOrderNotesResponse"
3580− },
3581− "scopes": [
3582− "https://www.googleapis.com/auth/adexchange.buyer"
3583− ]
3584− }
3585− }
3586− },
3587− "marketplaceoffers": {
3588− "methods": {
3589− "get": {
3590− "id": "adexchangebuyer.marketplaceoffers.get",
3591− "path": "marketplaceOffers/{offerId}",
3592− "httpMethod": "GET",
3593− "description": "Gets the requested negotiation.",
3594− "parameters": {
3595− "offerId": {
3596− "type": "string",
3597− "description": "The offerId for the offer to get the head revision for.",
3598− "required": true,
3599− "location": "path"
3600− }
3601− },
3602− "parameterOrder": [
3603− "offerId"
3604− ],
3605− "response": {
3606− "$ref": "MarketplaceOffer"
3607− },
3608− "scopes": [
3609− "https://www.googleapis.com/auth/adexchange.buyer"
3610− ]
3611− },
3612− "search": {
3613− "id": "adexchangebuyer.marketplaceoffers.search",
3614− "path": "marketplaceOffers/search",
3615− "httpMethod": "GET",
3616− "description": "Gets the requested negotiation.",
3617− "parameters": {
3618− "pqlQuery": {
3619− "type": "string",
3620− "description": "The pql query used to query for offers.",
3621− "location": "query"
3622− }
3623− },
3624− "response": {
3625− "$ref": "GetOffersResponse"
3626− },
3627− "scopes": [
3628− "https://www.googleapis.com/auth/adexchange.buyer"
3629− ]
3630− }
3631− }
3632− },
3633− "marketplaceorders": {
3634− "methods": {
3635− "get": {
3636− "id": "adexchangebuyer.marketplaceorders.get",
3637− "path": "marketplaceOrders/{orderId}",
3638− "httpMethod": "GET",
3639− "description": "Get an order given its id",
3640− "parameters": {
3641− "orderId": {
3642− "type": "string",
3643− "description": "Id of the order to retrieve.",
3644− "required": true,
3645− "location": "path"
3646− }
3647− },
3648− "parameterOrder": [
3649− "orderId"
3650− ],
3651− "response": {
3652− "$ref": "MarketplaceOrder"
3653− },
3654− "scopes": [
3655− "https://www.googleapis.com/auth/adexchange.buyer"
3656− ]
3657 },
3450 },
3658− "insert": {
3451+ "PublisherProvidedForecast": {
3659− "id": "adexchangebuyer.marketplaceorders.insert",
3452+ "description": "This message carries publisher provided forecasting information.",
3660− "path": "marketplaceOrders/insert",
3453+ "id": "PublisherProvidedForecast",
3661− "httpMethod": "POST",
3454+ "properties": {
3662− "description": "Create the given list of orders",
3455+ "dimensions": {
3663− "request": {
3456+ "description": "Publisher provided dimensions. E.g. geo, sizes etc...",
3664− "$ref": "CreateOrdersRequest"
3457+ "items": {
3665− },
3458+ "$ref": "Dimension"
3666− "response": {
3459+ },
3667− "$ref": "CreateOrdersResponse"
3460+ "type": "array"
3668− },
3461+ },
3669− "scopes": [
3462+ "weeklyImpressions": {
3670− "https://www.googleapis.com/auth/adexchange.buyer"
3463+ "description": "Publisher provided weekly impressions.",
3671− ]
3464+ "format": "int64",
3672− },
3465+ "type": "string"
3673− "patch": {
3466+ },
3674− "id": "adexchangebuyer.marketplaceorders.patch",
3467+ "weeklyUniques": {
3675− "path": "marketplaceOrders/{orderId}/{revisionNumber}/{updateAction}",
3468+ "description": "Publisher provided weekly uniques.",
3676− "httpMethod": "PATCH",
3469+ "format": "int64",
3677− "description": "Update the given order. This method supports patch semantics.",
3470+ "type": "string"
3678− "parameters": {
3471+ }
3679− "orderId": {
3680− "type": "string",
3681− "description": "The order id to update.",
3682− "required": true,
3683− "location": "path"
3684− },
3685− "revisionNumber": {
3686− "type": "string",
3687− "description": "The last known revision number to update. If the head revision in the marketplace database has since changed, an error will be thrown. The caller should then fetch the lastest order at head revision and retry the update at that revision.",
3688− "required": true,
3689− "format": "int64",
3690− "location": "path"
3691 },
3472 },
3692− "updateAction": {
3473+ "type": "object"
3693− "type": "string",
3694− "description": "The proposed action to take on the order.",
3695− "required": true,
3696− "enum": [
3697− "accept",
3698− "cancel",
3699− "propose",
3700− "unknownAction",
3701− "updateFinalized"
3702− ],
3703− "enumDescriptions": [
3704− "",
3705− "",
3706− "",
3707− "",
3708− ""
3709− ],
3710− "location": "path"
3711− }
3712− },
3713− "parameterOrder": [
3714− "orderId",
3715− "revisionNumber",
3716− "updateAction"
3717− ],
3718− "request": {
3719− "$ref": "MarketplaceOrder"
3720− },
3721− "response": {
3722− "$ref": "MarketplaceOrder"
3723− },
3724− "scopes": [
3725− "https://www.googleapis.com/auth/adexchange.buyer"
3726− ]
3727 },
3474 },
3728− "search": {
3475+ "Seller": {
3729− "id": "adexchangebuyer.marketplaceorders.search",
3476+ "id": "Seller",
3730− "path": "marketplaceOrders/search",
3477+ "properties": {
3731− "httpMethod": "GET",
3478+ "accountId": {
3732− "description": "Search for orders using pql query",
3479+ "description": "The unique id for the seller. The seller fills in this field. The seller account id is then available to buyer in the product.",
3733− "parameters": {
3480+ "type": "string"
3734− "pqlQuery": {
3481+ },
3735− "type": "string",
3482+ "subAccountId": {
3736− "description": "Query string to retrieve specific orders.",
3483+ "description": "Optional sub-account id for the seller.",
3737− "location": "query"
3484+ "type": "string"
3738− }
3485+ }
3739− },
3740− "response": {
3741− "$ref": "GetOrdersResponse"
3742− },
3743− "scopes": [
3744− "https://www.googleapis.com/auth/adexchange.buyer"
3745− ]
3746− },
3747− "update": {
3748− "id": "adexchangebuyer.marketplaceorders.update",
3749− "path": "marketplaceOrders/{orderId}/{revisionNumber}/{updateAction}",
3750− "httpMethod": "PUT",
3751− "description": "Update the given order",
3752− "parameters": {
3753− "orderId": {
3754− "type": "string",
3755− "description": "The order id to update.",
3756− "required": true,
3757− "location": "path"
3758− },
3759− "revisionNumber": {
3760− "type": "string",
3761− "description": "The last known revision number to update. If the head revision in the marketplace database has since changed, an error will be thrown. The caller should then fetch the lastest order at head revision and retry the update at that revision.",
3762− "required": true,
3763− "format": "int64",
3764− "location": "path"
3765 },
3486 },
3766− "updateAction": {
3487+ "type": "object"
3767− "type": "string",
3768− "description": "The proposed action to take on the order.",
3769− "required": true,
3770− "enum": [
3771− "accept",
3772− "cancel",
3773− "propose",
3774− "unknownAction",
3775− "updateFinalized"
3776− ],
3777− "enumDescriptions": [
3778− "",
3779− "",
3780− "",
3781− "",
3782− ""
3783− ],
3784− "location": "path"
3785− }
3786− },
3787− "parameterOrder": [
3788− "orderId",
3789− "revisionNumber",
3790− "updateAction"
3791− ],
3792− "request": {
3793− "$ref": "MarketplaceOrder"
3794− },
3795− "response": {
3796− "$ref": "MarketplaceOrder"
3797− },
3798− "scopes": [
3799− "https://www.googleapis.com/auth/adexchange.buyer"
3800− ]
3801− }
3802− }
3803− },
3804− "negotiationrounds": {
3805− "methods": {
3806− "insert": {
3807− "id": "adexchangebuyer.negotiationrounds.insert",
3808− "path": "negotiations/{negotiationId}/negotiationrounds",
3809− "httpMethod": "POST",
3810− "description": "Adds the requested negotiationRound to the requested negotiation.",
3811− "parameters": {
3812− "negotiationId": {
3813− "type": "string",
3814− "required": true,
3815− "format": "int64",
3816− "location": "path"
3817− }
3818− },
3819− "parameterOrder": [
3820− "negotiationId"
3821− ],
3822− "request": {
3823− "$ref": "NegotiationRoundDto"
3824− },
3825− "response": {
3826− "$ref": "NegotiationRoundDto"
3827− },
3828− "scopes": [
3829− "https://www.googleapis.com/auth/adexchange.buyer"
3830− ]
3831− }
3832− }
3833− },
3834− "negotiations": {
3835− "methods": {
3836− "get": {
3837− "id": "adexchangebuyer.negotiations.get",
3838− "path": "negotiations/{negotiationId}",
3839− "httpMethod": "GET",
3840− "description": "Gets the requested negotiation.",
3841− "parameters": {
3842− "negotiationId": {
3843− "type": "string",
3844− "required": true,
3845− "format": "int64",
3846− "location": "path"
3847− }
3848− },
3849− "parameterOrder": [
3850− "negotiationId"
3851− ],
3852− "request": {
3853− "$ref": "GetNegotiationByIdRequest"
3854− },
3855− "response": {
3856− "$ref": "NegotiationDto"
3857− },
3858− "scopes": [
3859− "https://www.googleapis.com/auth/adexchange.buyer"
3860− ]
3861− },
3862− "insert": {
3863− "id": "adexchangebuyer.negotiations.insert",
3864− "path": "negotiations",
3865− "httpMethod": "POST",
3866− "description": "Creates or updates the requested negotiation.",
3867− "request": {
3868− "$ref": "NegotiationDto"
3869− },
3870− "response": {
3871− "$ref": "NegotiationDto"
3872− },
3873− "scopes": [
3874− "https://www.googleapis.com/auth/adexchange.buyer"
3875− ]
3876− },
3877− "list": {
3878− "id": "adexchangebuyer.negotiations.list",
3879− "path": "negotiations",
3880− "httpMethod": "GET",
3881− "description": "Lists all negotiations the authenticated user has access to.",
3882− "request": {
3883− "$ref": "GetNegotiationsRequest"
3884− },
3885− "response": {
3886− "$ref": "GetNegotiationsResponse"
3887− },
3888− "scopes": [
3889− "https://www.googleapis.com/auth/adexchange.buyer"
3890− ]
3891− }
3892− }
3893− },
3894− "offers": {
3895− "methods": {
3896− "get": {
3897− "id": "adexchangebuyer.offers.get",
3898− "path": "offers/{offerId}",
3899− "httpMethod": "GET",
3900− "description": "Gets the requested offer.",
3901− "parameters": {
3902− "offerId": {
3903− "type": "string",
3904− "required": true,
3905− "format": "int64",
3906− "location": "path"
3907− }
3908− },
3909− "parameterOrder": [
3910− "offerId"
3911− ],
3912− "response": {
3913− "$ref": "OfferDto"
3914− },
3915− "scopes": [
3916− "https://www.googleapis.com/auth/adexchange.buyer"
3917− ]
3918 },
3488 },
3919− "insert": {
3489+ "SharedTargeting": {
3920− "id": "adexchangebuyer.offers.insert",
3490+ "id": "SharedTargeting",
3921− "path": "offers",
3491+ "properties": {
3922− "httpMethod": "POST",
3492+ "exclusions": {
3923− "description": "Creates or updates the requested offer.",
3493+ "description": "The list of values to exclude from targeting. Each value is AND'd together.",
3924− "request": {
3494+ "items": {
3925− "$ref": "OfferDto"
3495+ "$ref": "TargetingValue"
3926− },
3496+ },
3927− "response": {
3497+ "type": "array"
3928− "$ref": "OfferDto"
3498+ },
3929− },
3499+ "inclusions": {
3930− "scopes": [
3500+ "description": "The list of value to include as part of the targeting. Each value is OR'd together.",
3931− "https://www.googleapis.com/auth/adexchange.buyer"
3501+ "items": {
3932− ]
3502+ "$ref": "TargetingValue"
3933− },
3503+ },
3934− "list": {
3504+ "type": "array"
3935− "id": "adexchangebuyer.offers.list",
3505+ },
3936− "path": "offers",
3506+ "key": {
3937− "httpMethod": "GET",
3507+ "description": "The key representing the shared targeting criterion.",
3938− "description": "Lists all offers the authenticated user has access to.",
3508+ "type": "string"
3939− "request": {
3509+ }
3940− "$ref": "ListOffersRequest"
3941− },
3942− "response": {
3943− "$ref": "ListOffersResponse"
3944− },
3945− "scopes": [
3946− "https://www.googleapis.com/auth/adexchange.buyer"
3947− ]
3948− }
3949− }
3950− },
3951− "performanceReport": {
3952− "methods": {
3953− "list": {
3954− "id": "adexchangebuyer.performanceReport.list",
3955− "path": "performancereport",
3956− "httpMethod": "GET",
3957− "description": "Retrieves the authenticated user's list of performance metrics.",
3958− "parameters": {
3959− "accountId": {
3960− "type": "string",
3961− "description": "The account id to get the reports.",
3962− "required": true,
3963− "format": "int64",
3964− "location": "query"
3965− },
3966− "endDateTime": {
3967− "type": "string",
3968− "description": "The end time of the report in ISO 8601 timestamp format using UTC.",
3969− "required": true,
3970− "location": "query"
3971 },
3510 },
3972− "maxResults": {
3511+ "type": "object"
3973− "type": "integer",
3512+ },
3974− "description": "Maximum number of entries returned on one result page. If not set, the default is 100. Optional.",
3513+ "TargetingValue": {
3975− "format": "uint32",
3514+ "id": "TargetingValue",
3976− "minimum": "1",
3515+ "properties": {
3977− "maximum": "1000",
3516+ "creativeSizeValue": {
3978− "location": "query"
3517+ "$ref": "TargetingValueCreativeSize",
3518+ "description": "The creative size value to exclude/include."
3519+ },
3520+ "dayPartTargetingValue": {
3521+ "$ref": "TargetingValueDayPartTargeting",
3522+ "description": "The daypart targeting to include / exclude. Filled in when the key is GOOG_DAYPART_TARGETING."
3523+ },
3524+ "demogAgeCriteriaValue": {
3525+ "$ref": "TargetingValueDemogAgeCriteria"
3526+ },
3527+ "demogGenderCriteriaValue": {
3528+ "$ref": "TargetingValueDemogGenderCriteria"
3529+ },
3530+ "longValue": {
3531+ "description": "The long value to exclude/include.",
3532+ "format": "int64",
3533+ "type": "string"
3534+ },
3535+ "stringValue": {
3536+ "description": "The string value to exclude/include.",
3537+ "type": "string"
3538+ }
3979 },
3539 },
3980− "pageToken": {
3540+ "type": "object"
3981− "type": "string",
3541+ },
3982− "description": "A continuation token, used to page through performance reports. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response. Optional.",
3542+ "TargetingValueCreativeSize": {
3983− "location": "query"
3543+ "description": "Next Id: 7",
3544+ "id": "TargetingValueCreativeSize",
3545+ "properties": {
3546+ "allowedFormats": {
3547+ "description": "The formats allowed by the publisher.",
3548+ "items": {
3549+ "type": "string"
3550+ },
3551+ "type": "array"
3552+ },
3553+ "companionSizes": {
3554+ "description": "For video size type, the list of companion sizes.",
3555+ "items": {
3556+ "$ref": "TargetingValueSize"
3557+ },
3558+ "type": "array"
3559+ },
3560+ "creativeSizeType": {
3561+ "description": "The Creative size type.",
3562+ "type": "string"
3563+ },
3564+ "nativeTemplate": {
3565+ "description": "The native template for native ad.",
3566+ "type": "string"
3567+ },
3568+ "size": {
3569+ "$ref": "TargetingValueSize",
3570+ "description": "For regular or video creative size type, specifies the size of the creative."
3571+ },
3572+ "skippableAdType": {
3573+ "description": "The skippable ad type for video size.",
3574+ "type": "string"
3575+ }
3984 },
3576 },
3985− "startDateTime": {
3577+ "type": "object"
3986− "type": "string",
3578+ },
3987− "description": "The start time of the report in ISO 8601 timestamp format using UTC.",
3579+ "TargetingValueDayPartTargeting": {
3988− "required": true,
3580+ "id": "TargetingValueDayPartTargeting",
3989− "location": "query"
3581+ "properties": {
3990− }
3582+ "dayParts": {
3991− },
3583+ "items": {
3992− "parameterOrder": [
3584+ "$ref": "TargetingValueDayPartTargetingDayPart"
3993− "accountId",
3585+ },
3994− "endDateTime",
3586+ "type": "array"
3995− "startDateTime"
3587+ },
3996− ],
3588+ "timeZoneType": {
3997− "response": {
3589+ "type": "string"
3998− "$ref": "PerformanceReportList"
3590+ }
3999− },
4000− "scopes": [
4001− "https://www.googleapis.com/auth/adexchange.buyer"
4002− ]
4003− }
4004− }
4005− },
4006− "pretargetingConfig": {
4007− "methods": {
4008− "delete": {
4009− "id": "adexchangebuyer.pretargetingConfig.delete",
4010− "path": "pretargetingconfigs/{accountId}/{configId}",
4011− "httpMethod": "DELETE",
4012− "description": "Deletes an existing pretargeting config.",
4013− "parameters": {
4014− "accountId": {
4015− "type": "string",
4016− "description": "The account id to delete the pretargeting config for.",
4017− "required": true,
4018− "format": "int64",
4019− "location": "path"
4020 },
3591 },
4021− "configId": {
3592+ "type": "object"
4022− "type": "string",
4023− "description": "The specific id of the configuration to delete.",
4024− "required": true,
4025− "format": "int64",
4026− "location": "path"
4027− }
4028− },
4029− "parameterOrder": [
4030− "accountId",
4031− "configId"
4032− ],
4033− "scopes": [
4034− "https://www.googleapis.com/auth/adexchange.buyer"
4035− ]
4036 },
3593 },
4037− "get": {
3594+ "TargetingValueDayPartTargetingDayPart": {
4038− "id": "adexchangebuyer.pretargetingConfig.get",
3595+ "id": "TargetingValueDayPartTargetingDayPart",
4039− "path": "pretargetingconfigs/{accountId}/{configId}",
3596+ "properties": {
4040− "httpMethod": "GET",
3597+ "dayOfWeek": {
4041− "description": "Gets a specific pretargeting configuration",
3598+ "type": "string"
4042− "parameters": {
3599+ },
4043− "accountId": {
3600+ "endHour": {
4044− "type": "string",
3601+ "format": "int32",
4045− "description": "The account id to get the pretargeting config for.",
3602+ "type": "integer"
4046− "required": true,
3603+ },
4047− "format": "int64",
3604+ "endMinute": {
4048− "location": "path"
3605+ "format": "int32",
3606+ "type": "integer"
3607+ },
3608+ "startHour": {
3609+ "format": "int32",
3610+ "type": "integer"
3611+ },
3612+ "startMinute": {
3613+ "format": "int32",
3614+ "type": "integer"
3615+ }
4049 },
3616 },
4050− "configId": {
3617+ "type": "object"
4051− "type": "string",
4052− "description": "The specific id of the configuration to retrieve.",
4053− "required": true,
4054− "format": "int64",
4055− "location": "path"
4056− }
4057− },
4058− "parameterOrder": [
4059− "accountId",
4060− "configId"
4061− ],
4062− "response": {
4063− "$ref": "PretargetingConfig"
4064− },
4065− "scopes": [
4066− "https://www.googleapis.com/auth/adexchange.buyer"
4067− ]
4068 },
3618 },
4069− "insert": {
3619+ "TargetingValueDemogAgeCriteria": {
4070− "id": "adexchangebuyer.pretargetingConfig.insert",
3620+ "id": "TargetingValueDemogAgeCriteria",
4071− "path": "pretargetingconfigs/{accountId}",
3621+ "properties": {
4072− "httpMethod": "POST",
3622+ "demogAgeCriteriaIds": {
4073− "description": "Inserts a new pretargeting configuration.",
3623+ "items": {
4074− "parameters": {
3624+ "type": "string"
4075− "accountId": {
3625+ },
4076− "type": "string",
3626+ "type": "array"
4077− "description": "The account id to insert the pretargeting config for.",
3627+ }
4078− "required": true,
3628+ },
4079− "format": "int64",
3629+ "type": "object"
4080− "location": "path"
4081− }
4082− },
4083− "parameterOrder": [
4084− "accountId"
4085− ],
4086− "request": {
4087− "$ref": "PretargetingConfig"
4088− },
4089− "response": {
4090− "$ref": "PretargetingConfig"
4091− },
4092− "scopes": [
4093− "https://www.googleapis.com/auth/adexchange.buyer"
4094− ]
4095 },
3630 },
4096− "list": {
3631+ "TargetingValueDemogGenderCriteria": {
4097− "id": "adexchangebuyer.pretargetingConfig.list",
3632+ "id": "TargetingValueDemogGenderCriteria",
4098− "path": "pretargetingconfigs/{accountId}",
3633+ "properties": {
4099− "httpMethod": "GET",
3634+ "demogGenderCriteriaIds": {
4100− "description": "Retrieves a list of the authenticated user's pretargeting configurations.",
3635+ "items": {
4101− "parameters": {
3636+ "type": "string"
4102− "accountId": {
3637+ },
4103− "type": "string",
3638+ "type": "array"
4104− "description": "The account id to get the pretargeting configs for.",
3639+ }
4105− "required": true,
3640+ },
4106− "format": "int64",
3641+ "type": "object"
4107− "location": "path"
4108− }
4109− },
4110− "parameterOrder": [
4111− "accountId"
4112− ],
4113− "response": {
4114− "$ref": "PretargetingConfigList"
4115− },
4116− "scopes": [
4117− "https://www.googleapis.com/auth/adexchange.buyer"
4118− ]
4119 },
3642 },
4120− "patch": {
3643+ "TargetingValueSize": {
4121− "id": "adexchangebuyer.pretargetingConfig.patch",
3644+ "id": "TargetingValueSize",
4122− "path": "pretargetingconfigs/{accountId}/{configId}",
3645+ "properties": {
4123− "httpMethod": "PATCH",
3646+ "height": {
4124− "description": "Updates an existing pretargeting config. This method supports patch semantics.",
3647+ "description": "The height of the creative.",
4125− "parameters": {
3648+ "format": "int32",
4126− "accountId": {
3649+ "type": "integer"
4127− "type": "string",
3650+ },
4128− "description": "The account id to update the pretargeting config for.",
3651+ "width": {
4129− "required": true,
3652+ "description": "The width of the creative.",
4130− "format": "int64",
3653+ "format": "int32",
4131− "location": "path"
3654+ "type": "integer"
3655+ }
4132 },
3656 },
4133− "configId": {
3657+ "type": "object"
4134− "type": "string",
4135− "description": "The specific id of the configuration to update.",
4136− "required": true,
4137− "format": "int64",
4138− "location": "path"
4139− }
4140− },
4141− "parameterOrder": [
4142− "accountId",
4143− "configId"
4144− ],
4145− "request": {
4146− "$ref": "PretargetingConfig"
4147− },
4148− "response": {
4149− "$ref": "PretargetingConfig"
4150− },
4151− "scopes": [
4152− "https://www.googleapis.com/auth/adexchange.buyer"
4153− ]
4154 },
3658 },
4155− "update": {
3659+ "UpdatePrivateAuctionProposalRequest": {
4156− "id": "adexchangebuyer.pretargetingConfig.update",
3660+ "id": "UpdatePrivateAuctionProposalRequest",
4157− "path": "pretargetingconfigs/{accountId}/{configId}",
3661+ "properties": {
4158− "httpMethod": "PUT",
3662+ "externalDealId": {
4159− "description": "Updates an existing pretargeting config.",
3663+ "description": "The externalDealId of the deal to be updated.",
4160− "parameters": {
3664+ "type": "string"
4161− "accountId": {
3665+ },
4162− "type": "string",
3666+ "note": {
4163− "description": "The account id to update the pretargeting config for.",
3667+ "$ref": "MarketplaceNote",
4164− "required": true,
3668+ "description": "Optional note to be added."
4165− "format": "int64",
3669+ },
4166− "location": "path"
3670+ "proposalRevisionNumber": {
3671+ "description": "The current revision number of the proposal to be updated.",
3672+ "format": "int64",
3673+ "type": "string"
3674+ },
3675+ "updateAction": {
3676+ "description": "The proposed action on the private auction proposal.",
3677+ "type": "string"
3678+ }
4167 },
3679 },
4168− "configId": {
3680+ "type": "object"
4169− "type": "string",
4170− "description": "The specific id of the configuration to update.",
4171− "required": true,
4172− "format": "int64",
4173− "location": "path"
4174− }
4175− },
4176− "parameterOrder": [
4177− "accountId",
4178− "configId"
4179− ],
4180− "request": {
4181− "$ref": "PretargetingConfig"
4182− },
4183− "response": {
4184− "$ref": "PretargetingConfig"
4185− },
4186− "scopes": [
4187− "https://www.googleapis.com/auth/adexchange.buyer"
4188− ]
4189 }
3681 }
4190− }
3682+ },
4191− }
3683+ "servicePath": "adexchangebuyer/v1.4/",
4192− }
3684+ "title": "Ad Exchange Buyer API",
4193−}
3685+ "version": "v1.4"
3686+}
gen/model/adexchangebuyer2/v2beta1/adexchangebuyer2-api.jsonnew file+5859

This diff is too big to show here.

gen/model/adexchangeseller/v1.1/adexchangeseller-api.json+1186−1186

This diff is too big to show here.

gen/model/adexchangeseller/v1/adexchangeseller-api.json+873−873

This diff is too big to show here.

gen/model/adexchangeseller/v2.0/adexchangeseller-api.json+1093−1093

This diff is too big to show here.

gen/model/adexperiencereport/v1/adexperiencereport-api.jsonnew file+274

This diff is too big to show here.

gen/model/admin/datatransfer/v1/admin-api.json+386−386

This diff is too big to show here.

gen/model/admin/directory/v1/admin-api.json+6851−4030

This diff is too big to show here.

gen/model/admin/email_migration/v2/admin-api.jsondeleted−173

This diff is too big to show here.

gen/model/admin/reports/v1/admin-api.json+805−706

This diff is too big to show here.

gen/model/adsense/v1.2/adsense-api.jsondeleted−1949

This diff is too big to show here.

gen/model/adsense/v1.3/adsense-api.json+8−8

This diff is too big to show here.

gen/model/adsense/v1.4/adsense-api.json+2341−2303

This diff is too big to show here.

gen/model/adsensehost/v4.1/adsensehost-api.json+1485−1485

This diff is too big to show here.

gen/model/alertcenter/v1beta1/alertcenter-api.jsonnew file+1018

This diff is too big to show here.

gen/model/analytics/v2.4/analytics-api.json+350−350

This diff is too big to show here.

gen/model/analytics/v3/analytics-api.json+7190−6410

This diff is too big to show here.

gen/model/analyticsreporting/v4/analyticsreporting-api.jsonnew file+1678

This diff is too big to show here.

gen/model/androiddeviceprovisioning/v1/androiddeviceprovisioning-api.jsonnew file+1794

This diff is too big to show here.

gen/model/androidenterprise/v1/androidenterprise-api.json+4706−2380

This diff is too big to show here.

gen/model/androidmanagement/v1/androidmanagement-api.jsonnew file+3434

This diff is too big to show here.

gen/model/androidpublisher/v1.1/androidpublisher-api.json+248−239

This diff is too big to show here.

gen/model/androidpublisher/v1/androidpublisher-api.json+174−174

This diff is too big to show here.

gen/model/androidpublisher/v2/androidpublisher-api.json+3503−2943

This diff is too big to show here.

gen/model/androidpublisher/v3/androidpublisher-api.jsonnew file+3406

This diff is too big to show here.

gen/model/appengine/v1/appengine-api.jsonnew file+3597

This diff is too big to show here.

gen/model/appengine/v1alpha/appengine-api.jsonnew file+1260

This diff is too big to show here.

gen/model/appengine/v1beta/appengine-api.jsonnew file+3665

This diff is too big to show here.

gen/model/appengine/v1beta4/appengine-api.json+2420−1374

This diff is too big to show here.

gen/model/appengine/v1beta5/appengine-api.jsonnew file+2439

This diff is too big to show here.

gen/model/appsactivity/v1/appsactivity-api.json+446−448

This diff is too big to show here.

gen/model/appstate/v1/appstate-api.json+289−289

This diff is too big to show here.

gen/model/autoscaler/v1beta2/autoscaler-api.jsondeleted−891

This diff is too big to show here.

gen/model/bigquery/v2/bigquery-api.json+3426−2274

This diff is too big to show here.

gen/model/bigquerydatatransfer/v1/bigquerydatatransfer-api.jsonnew file+1922

This diff is too big to show here.

gen/model/bigtableadmin/v1/bigtableadmin-api.jsonnew file+521

This diff is too big to show here.

gen/model/bigtableadmin/v2/bigtableadmin-api.jsonnew file+2303

This diff is too big to show here.

gen/model/binaryauthorization/v1beta1/binaryauthorization-api.jsonnew file+843

This diff is too big to show here.

gen/model/blogger/v2/blogger-api.json+885−885

This diff is too big to show here.

gen/model/blogger/v3/blogger-api.json+2442−2442

This diff is too big to show here.

gen/model/books/v1/books-api.json+4598−3946

This diff is too big to show here.

gen/model/calendar/v3/calendar-api.json+2946−2632

This diff is too big to show here.

gen/model/chat/v1/chat-api.jsonnew file+1110

This diff is too big to show here.

gen/model/civicinfo/v2/civicinfo-api.json+1595−1038

This diff is too big to show here.

gen/model/classroom/v1/classroom-api.json+3622−1053

This diff is too big to show here.

gen/model/cloudasset/v1/cloudasset-api.jsonnew file+587

This diff is too big to show here.

gen/model/cloudasset/v1beta1/cloudasset-api.jsonnew file+768

This diff is too big to show here.

gen/model/cloudbilling/v1/cloudbilling-api.json+1001−329

This diff is too big to show here.

gen/model/cloudbuild/v1/cloudbuild-api.jsonnew file+1522

This diff is too big to show here.

gen/model/cloudbuild/v1alpha1/cloudbuild-api.jsonnew file+1061

This diff is too big to show here.

gen/model/clouddebugger/v2/clouddebugger-api.json+1026−886

This diff is too big to show here.

gen/model/clouderrorreporting/v1beta1/clouderrorreporting-api.jsonnew file+739

This diff is too big to show here.

gen/model/cloudfunctions/v1/cloudfunctions-api.jsonnew file+1208

This diff is too big to show here.

gen/model/cloudfunctions/v1beta2/cloudfunctions-api.jsonnew file+971

This diff is too big to show here.

gen/model/cloudidentity/v1/cloudidentity-api.jsonnew file+743

This diff is too big to show here.

gen/model/cloudidentity/v1beta1/cloudidentity-api.jsonnew file+687

This diff is too big to show here.

gen/model/cloudiot/v1/cloudiot-api.jsonnew file+1922

This diff is too big to show here.

gen/model/cloudkms/v1/cloudkms-api.jsonnew file+1846

This diff is too big to show here.

gen/model/cloudlatencytest/v2/cloudlatencytest-api.jsondeleted−212

This diff is too big to show here.

gen/model/cloudmonitoring/v2beta2/cloudmonitoring-api.jsondeleted−839

This diff is too big to show here.

gen/model/cloudprivatecatalog/v1beta1/cloudprivatecatalog-api.jsonnew file+686

This diff is too big to show here.

gen/model/cloudprivatecatalogproducer/v1beta1/cloudprivatecatalogproducer-api.jsonnew file+1473

This diff is too big to show here.

gen/model/cloudprofiler/v2/cloudprofiler-api.jsonnew file+342

This diff is too big to show here.

gen/model/cloudresourcemanager/v1/cloudresourcemanager-api.jsonnew file+2054

This diff is too big to show here.

gen/model/cloudresourcemanager/v1beta1/cloudresourcemanager-api.json+1018−698

This diff is too big to show here.

gen/model/cloudresourcemanager/v2/cloudresourcemanager-api.jsonnew file+894

This diff is too big to show here.

gen/model/cloudresourcemanager/v2beta1/cloudresourcemanager-api.jsonnew file+894

This diff is too big to show here.

gen/model/cloudscheduler/v1/cloudscheduler-api.jsonnew file+829

This diff is too big to show here.

gen/model/cloudscheduler/v1beta1/cloudscheduler-api.jsonnew file+872

This diff is too big to show here.

gen/model/cloudsearch/v1/cloudsearch-api.jsonnew file+4593

This diff is too big to show here.

gen/model/cloudshell/v1/cloudshell-api.jsonnew file+456

This diff is too big to show here.

gen/model/cloudshell/v1alpha1/cloudshell-api.jsonnew file+533

This diff is too big to show here.

gen/model/cloudtasks/v2/cloudtasks-api.jsonnew file+1244

This diff is too big to show here.

gen/model/cloudtasks/v2beta2/cloudtasks-api.jsonnew file+1521

This diff is too big to show here.

gen/model/cloudtasks/v2beta3/cloudtasks-api.jsonnew file+1255

This diff is too big to show here.

gen/model/cloudtrace/v1/cloudtrace-api.jsonnew file+373

This diff is too big to show here.

gen/model/cloudtrace/v2/cloudtrace-api.jsonnew file+589

This diff is too big to show here.

gen/model/clouduseraccounts/v0.alpha/clouduseraccounts-api.jsondeleted−1818

This diff is too big to show here.

gen/model/clouduseraccounts/v0.beta/clouduseraccounts-api.jsondeleted−1355

This diff is too big to show here.

gen/model/clouduseraccounts/vm_alpha/clouduseraccounts-api.jsondeleted−1818

This diff is too big to show here.

gen/model/clouduseraccounts/vm_beta/clouduseraccounts-api.jsondeleted−1355

This diff is too big to show here.

gen/model/commentanalyzer/v1alpha1/commentanalyzer-api.jsonnew file+458

This diff is too big to show here.

gen/model/composer/v1/composer-api.jsonnew file+786

This diff is too big to show here.

gen/model/composer/v1beta1/composer-api.jsonnew file+849

This diff is too big to show here.

gen/model/compute/v0.alpha/compute-api.json+57043

This diff is too big to show here.

gen/model/compute/v0.beta/compute-api.json+46108−14189

This diff is too big to show here.

gen/model/compute/v1/compute-api.json+39043−13025

This diff is too big to show here.

gen/model/consumersurveys/v2/consumersurveys-api.json+779

This diff is too big to show here.

gen/model/container/v1/container-api.json+4339−677

This diff is too big to show here.

gen/model/container/v1beta1/container-api.json+4799−633

This diff is too big to show here.

gen/model/containeranalysis/v1alpha1/containeranalysis-api.json+2965

This diff is too big to show here.

gen/model/containeranalysis/v1beta1/containeranalysis-api.json+2870

This diff is too big to show here.

gen/model/content/v2.1/content-api.json+9094

This diff is too big to show here.

gen/model/content/v2/content-api.json+10827−6016

This diff is too big to show here.

gen/model/content/v2sandbox/content-api.json+3998−2156

This diff is too big to show here.

gen/model/coordinate/v1/coordinate-api.json−1196

This diff is too big to show here.

gen/model/customsearch/v1/customsearch-api.json+1144−792

This diff is too big to show here.

gen/model/dataflow/v1b3/dataflow-api.json+5924−2337

This diff is too big to show here.

gen/model/datafusion/v1beta1/datafusion-api.json+1400

This diff is too big to show here.

gen/model/dataproc/v1/dataproc-api.json+3351

This diff is too big to show here.

gen/model/dataproc/v1beta2/dataproc-api.json+4210

This diff is too big to show here.

gen/model/datastore/v1/datastore-api.json+1996

This diff is too big to show here.

gen/model/datastore/v1beta1/datastore-api.json+629−981

This diff is too big to show here.

gen/model/datastore/v1beta2/datastore-api.json−1075

This diff is too big to show here.

gen/model/datastore/v1beta3/datastore-api.json+1507

This diff is too big to show here.

gen/model/deploymentmanager/v0.alpha/deploymentmanager-api.json+3249

This diff is too big to show here.

gen/model/deploymentmanager/v2/deploymentmanager-api.json+1882−1324

This diff is too big to show here.

gen/model/deploymentmanager/v2beta/deploymentmanager-api.json+3001

This diff is too big to show here.

gen/model/deploymentmanager/v2beta1/deploymentmanager-api.json−883

This diff is too big to show here.

gen/model/deploymentmanager/v2beta2/deploymentmanager-api.json−1225

This diff is too big to show here.

gen/model/dfareporting/v1.1/dfareporting-api.json−1521

This diff is too big to show here.

gen/model/dfareporting/v1.2/dfareporting-api.json−1589

This diff is too big to show here.

gen/model/dfareporting/v1.3/dfareporting-api.json−1913

This diff is too big to show here.

gen/model/dfareporting/v1/dfareporting-api.json−1172

This diff is too big to show here.

gen/model/dfareporting/v2.0/dfareporting-api.json−15333

This diff is too big to show here.

gen/model/dfareporting/v2.1/dfareporting-api.json−17625

This diff is too big to show here.

gen/model/dfareporting/v2.2/dfareporting-api.json−17672

This diff is too big to show here.

gen/model/dfareporting/v2.7/dfareporting-api.json+19609

This diff is too big to show here.

gen/model/dfareporting/v2.8/dfareporting-api.json+19752

This diff is too big to show here.

gen/model/dfareporting/v3.0/dfareporting-api.json+19814

This diff is too big to show here.

gen/model/dfareporting/v3.1/dfareporting-api.json+20020

This diff is too big to show here.

gen/model/dfareporting/v3.2/dfareporting-api.json+20056

This diff is too big to show here.

gen/model/dfareporting/v3.3/dfareporting-api.json+19917

This diff is too big to show here.

gen/model/dialogflow/v2/dialogflow-api.json+4268

This diff is too big to show here.

gen/model/dialogflow/v2beta1/dialogflow-api.json+5475

This diff is too big to show here.

gen/model/digitalassetlinks/v1/digitalassetlinks-api.json+374

This diff is too big to show here.

gen/model/discovery/v1/discovery-api.json+657−654

This diff is too big to show here.

gen/model/dlp/v2/dlp-api.json+5183

This diff is too big to show here.

gen/model/dns/v1/dns-api.json+1413−661

This diff is too big to show here.

gen/model/dns/v1beta1/dns-api.json−700

This diff is too big to show here.

gen/model/dns/v1beta2/dns-api.json+1918

This diff is too big to show here.

gen/model/dns/v2beta1/dns-api.json+1460

This diff is too big to show here.

gen/model/docs/v1/docs-api.json+3630

This diff is too big to show here.

gen/model/doubleclickbidmanager/v1/doubleclickbidmanager-api.json+2188−1674

This diff is too big to show here.

gen/model/doubleclicksearch/v2/doubleclicksearch-api.json+1077−1072

This diff is too big to show here.

gen/model/drive/v1/drive-api.json−417

This diff is too big to show here.

gen/model/drive/v2/drive-api.json+5779−4175

This diff is too big to show here.

gen/model/drive/v3/drive-api.json+3781

This diff is too big to show here.

gen/model/driveactivity/v2/driveactivity-api.json+1203

This diff is too big to show here.

gen/model/factchecktools/v1alpha1/factchecktools-api.json+574

This diff is too big to show here.

gen/model/file/v1/file-api.json+1017

This diff is too big to show here.

gen/model/file/v1beta1/file-api.json+1017

This diff is too big to show here.

gen/model/firebasedynamiclinks/v1/firebasedynamiclinks-api.json+1020

This diff is too big to show here.

gen/model/firebasehosting/v1beta1/firebasehosting-api.json+1201

This diff is too big to show here.

gen/model/firebaseremoteconfig/v1/firebaseremoteconfig-api.json+283

This diff is too big to show here.

gen/model/firebaserules/v1/firebaserules-api.json+942

This diff is too big to show here.

gen/model/firestore/v1/firestore-api.json+2833

This diff is too big to show here.

gen/model/firestore/v1beta1/firestore-api.json+2272

This diff is too big to show here.

gen/model/firestore/v1beta2/firestore-api.json+975

This diff is too big to show here.

gen/model/fitness/v1/fitness-api.json+1552−1267

This diff is too big to show here.

gen/model/freebase/v1/freebase-api.json−412

This diff is too big to show here.

gen/model/fusiontables/v1/fusiontables-api.json+1774−1772

This diff is too big to show here.

gen/model/fusiontables/v2/fusiontables-api.json+1903−1878

This diff is too big to show here.

gen/model/games/v1/games-api.json+4792−4689

This diff is too big to show here.

gen/model/gamesconfiguration/v1configuration/gamesconfiguration-api.json+757−757

This diff is too big to show here.

gen/model/gamesmanagement/v1management/gamesmanagement-api.json+850−848

This diff is too big to show here.

gen/model/gan/v1beta1/gan-api.json−1860

This diff is too big to show here.

gen/model/genomics/v1/genomics-api.json+602−2728

This diff is too big to show here.

gen/model/genomics/v1alpha2/genomics-api.json+1288

This diff is too big to show here.

gen/model/genomics/v1beta2/genomics-api.json−3859

This diff is too big to show here.

gen/model/genomics/v2alpha1/genomics-api.json+1196

This diff is too big to show here.

gen/model/gmail/v1/gmail-api.json+3623−1911

This diff is too big to show here.

gen/model/groupsmigration/v1/groupsmigration-api.json+135−136

This diff is too big to show here.

gen/model/groupssettings/v1/groupssettings-api.json+404−272

This diff is too big to show here.

gen/model/healthcare/v1alpha/healthcare-api.json+819

This diff is too big to show here.

gen/model/healthcare/v1alpha2/healthcare-api.json+4856

This diff is too big to show here.

gen/model/healthcare/v1beta1/healthcare-api.json+4049

This diff is too big to show here.

gen/model/iam/v1/iam-api.json+2107

This diff is too big to show here.

gen/model/iamcredentials/v1/iamcredentials-api.json+428

This diff is too big to show here.

gen/model/iap/v1/iap-api.json+318

This diff is too big to show here.

gen/model/iap/v1beta1/iap-api.json+318

This diff is too big to show here.

gen/model/identitytoolkit/v3/identitytoolkit-api.json+2095−996

This diff is too big to show here.

gen/model/indexing/v3/indexing-api.json+219

This diff is too big to show here.

gen/model/jobs/v2/jobs-api.json+3302

This diff is too big to show here.

gen/model/jobs/v3/jobs-api.json+2641

This diff is too big to show here.

gen/model/jobs/v3p1beta1/jobs-api.json+2825

This diff is too big to show here.

gen/model/kgsearch/v1/kgsearch-api.json+183

This diff is too big to show here.

gen/model/language/v1/language-api.json+1251

This diff is too big to show here.

gen/model/language/v1beta1/language-api.json+1099

This diff is too big to show here.

gen/model/language/v1beta2/language-api.json+1251

This diff is too big to show here.

gen/model/libraryagent/v1/libraryagent-api.json+363

This diff is too big to show here.

gen/model/licensing/v1/licensing-api.json+447−439

This diff is too big to show here.

gen/model/logging/v1beta3/logging-api.json−1490

This diff is too big to show here.

gen/model/logging/v2/logging-api.json+3635

This diff is too big to show here.

gen/model/logging/v2beta1/logging-api.json+1560

This diff is too big to show here.

gen/model/manager/v1beta2/manager-api.json−1171

This diff is too big to show here.

gen/model/manufacturers/v1/manufacturers-api.json+757

This diff is too big to show here.

gen/model/mapsengine/exp2/mapsengine-api.json−5375

This diff is too big to show here.

gen/model/mapsengine/v1/mapsengine-api.json−5352

This diff is too big to show here.

gen/model/mirror/v1/mirror-api.json+1342−1342

This diff is too big to show here.

gen/model/ml/v1/ml-api.json+2346

This diff is too big to show here.

gen/model/monitoring/v1/monitoring-api.json+519

This diff is too big to show here.

gen/model/monitoring/v3/monitoring-api.json+3353

This diff is too big to show here.

gen/model/oauth2/v1/oauth2-api.json+240−387

This diff is too big to show here.

gen/model/oauth2/v2/oauth2-api.json+268−273

This diff is too big to show here.

gen/model/oslogin/v1/oslogin-api.json+437

This diff is too big to show here.

gen/model/oslogin/v1alpha/oslogin-api.json+465

This diff is too big to show here.

gen/model/oslogin/v1beta/oslogin-api.json+445

This diff is too big to show here.

gen/model/pagespeedonline/v1/pagespeedonline-api.json+406−402

This diff is too big to show here.

gen/model/pagespeedonline/v2/pagespeedonline-api.json+473−469

This diff is too big to show here.

gen/model/pagespeedonline/v4/pagespeedonline-api.json+606

This diff is too big to show here.

gen/model/pagespeedonline/v5/pagespeedonline-api.json+570

This diff is too big to show here.

gen/model/partners/v2/partners-api.json+3466−1321

This diff is too big to show here.

gen/model/people/v1/people-api.json+2012

This diff is too big to show here.

gen/model/playcustomapp/v1/playcustomapp-api.json+149

This diff is too big to show here.

gen/model/playmoviespartner/v1/playmoviespartner-api.json+975−1075

This diff is too big to show here.

gen/model/plus/v1/plus-api.json+1510−1914

This diff is too big to show here.

gen/model/plusdomains/v1/plusdomains-api.json+1871−2123

This diff is too big to show here.

gen/model/poly/v1/poly-api.json+793

This diff is too big to show here.

gen/model/prediction/v1.2/prediction-api.json+333−333

This diff is too big to show here.

gen/model/prediction/v1.3/prediction-api.json+391−391

This diff is too big to show here.

gen/model/prediction/v1.4/prediction-api.json+416−416

This diff is too big to show here.

gen/model/prediction/v1.5/prediction-api.json+674−674

This diff is too big to show here.

gen/model/prediction/v1.6/prediction-api.json+759−748

This diff is too big to show here.

gen/model/proximitybeacon/v1beta1/proximitybeacon-api.json+1118−792

This diff is too big to show here.

gen/model/pubsub/v1/pubsub-api.json+1586−963

This diff is too big to show here.

gen/model/pubsub/v1beta1/pubsub-api.json−699

This diff is too big to show here.

gen/model/pubsub/v1beta1a/pubsub-api.json+770−731

This diff is too big to show here.

gen/model/pubsub/v1beta2/pubsub-api.json+1041−971

This diff is too big to show here.

gen/model/qpxexpress/v1/qpxexpress-api.json+10−6

This diff is too big to show here.

gen/model/redis/v1/redis-api.json+852

This diff is too big to show here.

gen/model/redis/v1beta1/redis-api.json+805

This diff is too big to show here.

gen/model/remotebuildexecution/v1/remotebuildexecution-api.json+1978

This diff is too big to show here.

gen/model/remotebuildexecution/v1alpha/remotebuildexecution-api.json+1924

This diff is too big to show here.

gen/model/remotebuildexecution/v2/remotebuildexecution-api.json+2353

This diff is too big to show here.

gen/model/replicapool/v1beta1/replicapool-api.json+1072−1072

This diff is too big to show here.

gen/model/replicapool/v1beta2/replicapool-api.json−1064

This diff is too big to show here.

gen/model/replicapoolupdater/v1beta1/replicapoolupdater-api.json+903−903

This diff is too big to show here.

gen/model/reseller/v1/reseller-api.json+898−797

This diff is too big to show here.

gen/model/reseller/v1sandbox/reseller-api.json−828

This diff is too big to show here.

gen/model/resourceviews/v1beta1/resourceviews-api.json−920

This diff is too big to show here.

gen/model/resourceviews/v1beta2/resourceviews-api.json−1052

This diff is too big to show here.

gen/model/run/v1/run-api.json+183

This diff is too big to show here.

gen/model/run/v1alpha1/run-api.json+3515

This diff is too big to show here.

gen/model/runtimeconfig/v1/runtimeconfig-api.json+312

This diff is too big to show here.

gen/model/runtimeconfig/v1beta1/runtimeconfig-api.json+1169

This diff is too big to show here.

gen/model/safebrowsing/v4/safebrowsing-api.json+1316

This diff is too big to show here.

gen/model/script/v1/script-api.json+1601

This diff is too big to show here.

gen/model/searchconsole/v1/searchconsole-api.json+281

This diff is too big to show here.

gen/model/securitycenter/v1/securitycenter-api.json+1757

This diff is too big to show here.

gen/model/securitycenter/v1beta1/securitycenter-api.json+1703

This diff is too big to show here.

gen/model/servicebroker/v1/servicebroker-api.json+309

This diff is too big to show here.

gen/model/servicebroker/v1alpha1/servicebroker-api.json+1343

This diff is too big to show here.

gen/model/servicebroker/v1beta1/servicebroker-api.json+1504

This diff is too big to show here.

gen/model/serviceconsumermanagement/v1/serviceconsumermanagement-api.json+2591

This diff is too big to show here.

gen/model/servicecontrol/v1/servicecontrol-api.json+1613

This diff is too big to show here.

gen/model/servicemanagement/v1/servicemanagement-api.json+3109

This diff is too big to show here.

gen/model/servicenetworking/v1/servicenetworking-api.json+2159

This diff is too big to show here.

gen/model/servicenetworking/v1beta/servicenetworking-api.json+2032

This diff is too big to show here.

gen/model/serviceusage/v1/serviceusage-api.json+2253

This diff is too big to show here.

gen/model/serviceusage/v1beta1/serviceusage-api.json+2265

This diff is too big to show here.

gen/model/serviceuser/v1/serviceuser-api.json+1914

This diff is too big to show here.

gen/model/sheets/v4/sheets-api.json+5979

This diff is too big to show here.

gen/model/siteverification/v1/siteverification-api.json+305−305

This diff is too big to show here.

gen/model/slides/v1/slides-api.json+4516

This diff is too big to show here.

gen/model/sourcerepo/v1/sourcerepo-api.json+847

This diff is too big to show here.

gen/model/spanner/v1/spanner-api.json+2797

This diff is too big to show here.

gen/model/spectrum/v1explorer/spectrum-api.json+986−986

This diff is too big to show here.

gen/model/speech/v1/speech-api.json+778

This diff is too big to show here.

gen/model/speech/v1beta1/speech-api.json+455

This diff is too big to show here.

gen/model/speech/v1p1beta1/speech-api.json+840

This diff is too big to show here.

gen/model/sqladmin/v1beta3/sqladmin-api.json−1966

This diff is too big to show here.

gen/model/sqladmin/v1beta4/sqladmin-api.json+3156−2514

This diff is too big to show here.

gen/model/storage/v1/storage-api.json+4046−2752

This diff is too big to show here.

gen/model/storage/v1beta1/storage-api.json+1394−1394

This diff is too big to show here.

gen/model/storage/v1beta2/storage-api.json+2296−2296

This diff is too big to show here.

gen/model/storagetransfer/v1/storagetransfer-api.json+1035−1001

This diff is too big to show here.

gen/model/streetviewpublish/v1/streetviewpublish-api.json+778

This diff is too big to show here.

gen/model/surveys/v2/surveys-api.json+717

This diff is too big to show here.

gen/model/tagmanager/v1/tagmanager-api.json+3291−3189

This diff is too big to show here.

gen/model/tagmanager/v2/tagmanager-api.json+4845

This diff is too big to show here.

gen/model/taskqueue/v1beta1/taskqueue-api.json−422

This diff is too big to show here.

gen/model/taskqueue/v1beta2/taskqueue-api.json−569

This diff is too big to show here.

gen/model/tasks/v1/tasks-api.json+676−676

This diff is too big to show here.

gen/model/testing/v1/testing-api.json+1876

This diff is too big to show here.

gen/model/texttospeech/v1/texttospeech-api.json+343

This diff is too big to show here.

gen/model/texttospeech/v1beta1/texttospeech-api.json+343

This diff is too big to show here.

gen/model/toolresults/v1beta3/toolresults-api.json+2806

This diff is too big to show here.

gen/model/tpu/v1/tpu-api.json+1114

This diff is too big to show here.

gen/model/tpu/v1alpha1/tpu-api.json+1114

This diff is too big to show here.

gen/model/tracing/v2/tracing-api.json+726

This diff is too big to show here.

gen/model/translate/v2/translate-api.json+423−250

This diff is too big to show here.

gen/model/urlshortener/v1/urlshortener-api.json+299−299

This diff is too big to show here.

gen/model/vault/v1/vault-api.json+2031

This diff is too big to show here.

gen/model/videointelligence/v1/videointelligence-api.json+2032

This diff is too big to show here.

gen/model/videointelligence/v1beta2/videointelligence-api.json+1883

This diff is too big to show here.

gen/model/videointelligence/v1p1beta1/videointelligence-api.json+1883

This diff is too big to show here.

gen/model/videointelligence/v1p2beta1/videointelligence-api.json+1905

This diff is too big to show here.

gen/model/vision/v1/vision-api.json+7097

This diff is too big to show here.

gen/model/vision/v1p1beta1/vision-api.json+6159

This diff is too big to show here.

gen/model/vision/v1p2beta1/vision-api.json+6159

This diff is too big to show here.

gen/model/webfonts/v1/webfonts-api.json+161−161

This diff is too big to show here.

gen/model/webmasters/v3/webmasters-api.json+931−918

This diff is too big to show here.

gen/model/websecurityscanner/v1alpha/websecurityscanner-api.json+1120

This diff is too big to show here.

gen/model/websecurityscanner/v1beta/websecurityscanner-api.json+1279

This diff is too big to show here.

gen/model/youtube/v3/youtube-api.json+10853−9417

This diff is too big to show here.

gen/model/youtubeanalytics/v1/youtubeanalytics-api.json+523−700

This diff is too big to show here.

gen/model/youtubeanalytics/v1beta1/youtubeanalytics-api.json+526−703

This diff is too big to show here.

gen/model/youtubeanalytics/v2/youtubeanalytics-api.json+744

This diff is too big to show here.

gen/model/youtubereporting/v1/youtubereporting-api.json+1001

This diff is too big to show here.

gen/script/copy-models+1−1

This diff is too big to show here.

gen/script/travis-matrix−47

This diff is too big to show here.

gen/src/Gen/AST.hs+4−163

This diff is too big to show here.

gen/src/Gen/AST/Flatten.hs+105−69

This diff is too big to show here.

gen/src/Gen/AST/Render.hs+101−95

This diff is too big to show here.

gen/src/Gen/AST/Solve.hs+61−42

This diff is too big to show here.

gen/src/Gen/Formatting.hs+2−4

This diff is too big to show here.

gen/src/Gen/IO.hs+15−11

This diff is too big to show here.

gen/src/Gen/JSON.hs+1−1

This diff is too big to show here.

gen/src/Gen/Orphans.hs+5−17

This diff is too big to show here.

gen/src/Gen/Syntax.hs+529−234

This diff is too big to show here.

gen/src/Gen/TH.hs+1−1

This diff is too big to show here.

gen/src/Gen/Text.hs+119−21

This diff is too big to show here.

gen/src/Gen/Tree.hs+4−6

This diff is too big to show here.

gen/src/Gen/Types.hs+138−48

This diff is too big to show here.

gen/src/Gen/Types/Data.hs+21−59

This diff is too big to show here.

gen/src/Gen/Types/Help.hs+27−23

This diff is too big to show here.

gen/src/Gen/Types/Id.hs+152−43

This diff is too big to show here.

gen/src/Gen/Types/Map.hs+1−19

This diff is too big to show here.

gen/src/Gen/Types/NS.hs+3−11

This diff is too big to show here.

gen/src/Gen/Types/Schema.hs+120−55

This diff is too big to show here.

gen/src/Main.hs+3−8

This diff is too big to show here.

gen/stack.yaml+18−4

This diff is too big to show here.

gen/stack.yaml.lock+49

This diff is too big to show here.

gen/static/LICENSE−6

This diff is too big to show here.

gen/template/_include/license.ede+1−1

This diff is too big to show here.

gen/template/_include/sum.ede+7−7

This diff is too big to show here.

gen/template/action.ede+9−3

This diff is too big to show here.

gen/template/cabal.ede+14−3

This diff is too big to show here.

gen/template/prod.ede+2

This diff is too big to show here.

gen/template/readme.ede+2−2

This diff is too big to show here.

gen/template/sum.ede+2−1

This diff is too big to show here.

gen/template/toc.ede+24−13

This diff is too big to show here.

gen/template/types.ede+18−1

This diff is too big to show here.

gogol-abusiveexperiencereport/LICENSE+367

This diff is too big to show here.

gogol-abusiveexperiencereport/Makefile

This diff is too big to show here.

gogol-abusiveexperiencereport/README.md+28

This diff is too big to show here.

gogol-abusiveexperiencereport/Setup.hs

This diff is too big to show here.

gogol-abusiveexperiencereport/gen/Network/Google/AbusiveExperienceReport.hs+78

This diff is too big to show here.

gogol-abusiveexperiencereport/gen/Network/Google/AbusiveExperienceReport/Types.hs+64

This diff is too big to show here.

gogol-abusiveexperiencereport/gen/Network/Google/AbusiveExperienceReport/Types/Product.hs+176

This diff is too big to show here.

gogol-abusiveexperiencereport/gen/Network/Google/AbusiveExperienceReport/Types/Sum.hs+126

This diff is too big to show here.

gogol-abusiveexperiencereport/gen/Network/Google/Resource/AbusiveExperienceReport/Sites/Get.hs+154

This diff is too big to show here.

gogol-abusiveexperiencereport/gen/Network/Google/Resource/AbusiveExperienceReport/ViolatingSites/List.hs+138

This diff is too big to show here.

gogol-abusiveexperiencereport/gogol-abusiveexperiencereport.cabal+48

This diff is too big to show here.

gogol-abusiveexperiencereport/src/.gitkeep

This diff is too big to show here.

gogol-acceleratedmobilepageurl/LICENSE+367

This diff is too big to show here.

gogol-acceleratedmobilepageurl/Makefile

This diff is too big to show here.

gogol-acceleratedmobilepageurl/README.md+28

This diff is too big to show here.

gogol-acceleratedmobilepageurl/Setup.hs

This diff is too big to show here.

gogol-acceleratedmobilepageurl/gen/Network/Google/AcceleratedMobilePageURL.hs+81

This diff is too big to show here.

gogol-acceleratedmobilepageurl/gen/Network/Google/AcceleratedMobilePageURL/Types.hs+67

This diff is too big to show here.

gogol-acceleratedmobilepageurl/gen/Network/Google/AcceleratedMobilePageURL/Types/Product.hs+256

This diff is too big to show here.

gogol-acceleratedmobilepageurl/gen/Network/Google/AcceleratedMobilePageURL/Types/Sum.hs+140

This diff is too big to show here.

gogol-acceleratedmobilepageurl/gen/Network/Google/Resource/AcceleratedMobilePageURL/AmpURLs/BatchGet.hs+153

This diff is too big to show here.

gogol-acceleratedmobilepageurl/gogol-acceleratedmobilepageurl.cabal+47

This diff is too big to show here.

gogol-acceleratedmobilepageurl/src/.gitkeep

This diff is too big to show here.

gogol-accessapproval/LICENSE+367

This diff is too big to show here.

gogol-accessapproval/Makefile

This diff is too big to show here.

gogol-accessapproval/README.md+28

This diff is too big to show here.

gogol-accessapproval/Setup.hs

This diff is too big to show here.

gogol-accessapproval/gen/Network/Google/AccessApproval.hs+196

This diff is too big to show here.

gogol-accessapproval/gen/Network/Google/AccessApproval/Types.hs+100

This diff is too big to show here.

gogol-accessapproval/gen/Network/Google/AccessApproval/Types/Product.hs+546

This diff is too big to show here.

gogol-accessapproval/gen/Network/Google/AccessApproval/Types/Sum.hs+100

This diff is too big to show here.

gogol-accessapproval/gen/Network/Google/Resource/AccessApproval/Folders/ApprovalRequests/Approve.hs+170

This diff is too big to show here.

gogol-accessapproval/gen/Network/Google/Resource/AccessApproval/Folders/ApprovalRequests/Dismiss.hs+174

This diff is too big to show here.

gogol-accessapproval/gen/Network/Google/Resource/AccessApproval/Folders/ApprovalRequests/Get.hs+153

This diff is too big to show here.

gogol-accessapproval/gen/Network/Google/Resource/AccessApproval/Folders/ApprovalRequests/List.hs+204

This diff is too big to show here.

gogol-accessapproval/gen/Network/Google/Resource/AccessApproval/Folders/GetAccessApprovalSettings.hs+156

This diff is too big to show here.

gogol-accessapproval/gen/Network/Google/Resource/AccessApproval/Folders/UpdateAccessApprovalSettings.hs+175

This diff is too big to show here.

gogol-accessapproval/gen/Network/Google/Resource/AccessApproval/Organizations/ApprovalRequests/Approve.hs+172

This diff is too big to show here.

gogol-accessapproval/gen/Network/Google/Resource/AccessApproval/Organizations/ApprovalRequests/Dismiss.hs+176

This diff is too big to show here.

gogol-accessapproval/gen/Network/Google/Resource/AccessApproval/Organizations/ApprovalRequests/Get.hs+156

This diff is too big to show here.

gogol-accessapproval/gen/Network/Google/Resource/AccessApproval/Organizations/ApprovalRequests/List.hs+206

This diff is too big to show here.

gogol-accessapproval/gen/Network/Google/Resource/AccessApproval/Organizations/GetAccessApprovalSettings.hs+157

This diff is too big to show here.

gogol-accessapproval/gen/Network/Google/Resource/AccessApproval/Organizations/UpdateAccessApprovalSettings.hs+177

This diff is too big to show here.

gogol-accessapproval/gen/Network/Google/Resource/AccessApproval/Projects/ApprovalRequests/Approve.hs+171

This diff is too big to show here.

gogol-accessapproval/gen/Network/Google/Resource/AccessApproval/Projects/ApprovalRequests/Dismiss.hs+175

This diff is too big to show here.

gogol-accessapproval/gen/Network/Google/Resource/AccessApproval/Projects/ApprovalRequests/Get.hs+153

This diff is too big to show here.

gogol-accessapproval/gen/Network/Google/Resource/AccessApproval/Projects/ApprovalRequests/List.hs+204

This diff is too big to show here.

gogol-accessapproval/gen/Network/Google/Resource/AccessApproval/Projects/GetAccessApprovalSettings.hs+156

This diff is too big to show here.

gogol-accessapproval/gen/Network/Google/Resource/AccessApproval/Projects/UpdateAccessApprovalSettings.hs+175

This diff is too big to show here.

gogol-accessapproval/gogol-accessapproval.cabal+63

This diff is too big to show here.

gogol-accessapproval/src/.gitkeep

This diff is too big to show here.

gogol-accesscontextmanager/LICENSE+367

This diff is too big to show here.

gogol-accesscontextmanager/Makefile

This diff is too big to show here.

gogol-accesscontextmanager/README.md+28

This diff is too big to show here.

gogol-accesscontextmanager/Setup.hs

This diff is too big to show here.

gogol-accesscontextmanager/gen/Network/Google/AccessContextManager.hs+284

This diff is too big to show here.

gogol-accesscontextmanager/gen/Network/Google/AccessContextManager/Types.hs+184

This diff is too big to show here.

gogol-accesscontextmanager/gen/Network/Google/AccessContextManager/Types/Product.hs+1375

This diff is too big to show here.

gogol-accesscontextmanager/gen/Network/Google/AccessContextManager/Types/Sum.hs+159

This diff is too big to show here.

gogol-accesscontextmanager/gen/Network/Google/Resource/AccessContextManager/AccessPolicies/AccessLevels/Create.hs+175

This diff is too big to show here.

gogol-accesscontextmanager/gen/Network/Google/Resource/AccessContextManager/AccessPolicies/AccessLevels/Delete.hs+159

This diff is too big to show here.

gogol-accesscontextmanager/gen/Network/Google/Resource/AccessContextManager/AccessPolicies/AccessLevels/Get.hs+172

This diff is too big to show here.

gogol-accesscontextmanager/gen/Network/Google/Resource/AccessContextManager/AccessPolicies/AccessLevels/List.hs+200

This diff is too big to show here.

gogol-accesscontextmanager/gen/Network/Google/Resource/AccessContextManager/AccessPolicies/AccessLevels/Patch.hs+190

This diff is too big to show here.

gogol-accesscontextmanager/gen/Network/Google/Resource/AccessContextManager/AccessPolicies/Create.hs+159

This diff is too big to show here.

gogol-accesscontextmanager/gen/Network/Google/Resource/AccessContextManager/AccessPolicies/Delete.hs+153

This diff is too big to show here.

gogol-accesscontextmanager/gen/Network/Google/Resource/AccessContextManager/AccessPolicies/Get.hs+149

This diff is too big to show here.

gogol-accesscontextmanager/gen/Network/Google/Resource/AccessContextManager/AccessPolicies/List.hs+178

This diff is too big to show here.

gogol-accesscontextmanager/gen/Network/Google/Resource/AccessContextManager/AccessPolicies/Patch.hs+182

This diff is too big to show here.

gogol-accesscontextmanager/gen/Network/Google/Resource/AccessContextManager/AccessPolicies/ServicePerimeters/Create.hs+178

This diff is too big to show here.

gogol-accesscontextmanager/gen/Network/Google/Resource/AccessContextManager/AccessPolicies/ServicePerimeters/Delete.hs+161

This diff is too big to show here.

gogol-accesscontextmanager/gen/Network/Google/Resource/AccessContextManager/AccessPolicies/ServicePerimeters/Get.hs+157

This diff is too big to show here.

gogol-accesscontextmanager/gen/Network/Google/Resource/AccessContextManager/AccessPolicies/ServicePerimeters/List.hs+187

This diff is too big to show here.

gogol-accesscontextmanager/gen/Network/Google/Resource/AccessContextManager/AccessPolicies/ServicePerimeters/Patch.hs+192

This diff is too big to show here.

gogol-accesscontextmanager/gen/Network/Google/Resource/AccessContextManager/Operations/Cancel.hs+177

This diff is too big to show here.

gogol-accesscontextmanager/gen/Network/Google/Resource/AccessContextManager/Operations/Delete.hs+153

This diff is too big to show here.

gogol-accesscontextmanager/gen/Network/Google/Resource/AccessContextManager/Operations/Get.hs+150

This diff is too big to show here.

gogol-accesscontextmanager/gen/Network/Google/Resource/AccessContextManager/Operations/List.hs+201

This diff is too big to show here.

gogol-accesscontextmanager/gogol-accesscontextmanager.cabal+65

This diff is too big to show here.

gogol-accesscontextmanager/src/.gitkeep

This diff is too big to show here.

gogol-adexchange-buyer/LICENSE−6

This diff is too big to show here.

gogol-adexchange-buyer/README.md+4−4

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/AdExchangeBuyer.hs+584−582

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/AdExchangeBuyer/Types.hs+454−438

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/AdExchangeBuyer/Types/Product.hs+4634−4156

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/AdExchangeBuyer/Types/Sum.hs+172−2

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Accounts/Get.hs+37−103

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Accounts/List.hs+33−101

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Accounts/Patch.hs+62−99

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Accounts/Update.hs+62−100

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/BillingInfo/Get.hs+38−107

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/BillingInfo/List.hs+35−105

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Budget/Get.hs+47−109

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Budget/Patch.hs+59−108

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Budget/Update.hs+59−109

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Clientaccess/Delete.hs−168

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Clientaccess/Get.hs−170

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Clientaccess/Insert.hs−166

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Clientaccess/List.hs−145

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Clientaccess/Patch.hs−168

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Clientaccess/Update.hs−169

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Creatives/AddDeal.hs+119

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Creatives/Get.hs+45−110

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Creatives/Insert.hs+45−99

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Creatives/List.hs+65−120

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Creatives/ListDeals.hs+106

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Creatives/RemoveDeal.hs+119

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Deals/Get.hs−149

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/MarketplaceDeals/Delete.hs+105

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/MarketplaceDeals/Insert.hs+105

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/MarketplaceDeals/List.hs+103

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/MarketplaceDeals/Update.hs+105

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/MarketplaceNotes/Insert.hs+105

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/MarketplaceNotes/List.hs+105

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Marketplacedeals/Delete.hs−160

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Marketplacedeals/Insert.hs−160

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Marketplacedeals/List.hs−158

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Marketplacedeals/Update.hs−160

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Marketplacenotes/Insert.hs−157

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Marketplacenotes/List.hs−155

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Marketplaceoffers/Get.hs−155

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Marketplaceoffers/Search.hs−155

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Marketplaceorders/Get.hs−158

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Marketplaceorders/Insert.hs−142

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Marketplaceorders/Patch.hs−187

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Marketplaceorders/Search.hs−158

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Marketplaceorders/Update.hs−187

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Marketplaceprivateauction/Updateproposal.hs+109

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Negotiationrounds/Insert.hs−157

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Negotiations/Get.hs−154

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Negotiations/Insert.hs−140

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Negotiations/List.hs−141

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Offers/Get.hs−150

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Offers/Insert.hs−139

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Offers/List.hs−138

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/PerformanceReport/List.hs+52−118

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/PretargetingConfig/Delete.hs+47−115

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/PretargetingConfig/Get.hs+48−115

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/PretargetingConfig/Insert.hs+51−110

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/PretargetingConfig/List.hs+42−111

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/PretargetingConfig/Patch.hs+60−114

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/PretargetingConfig/Update.hs+60−116

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Products/Get.hs+86

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Products/Search.hs+87

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Proposals/Get.hs+86

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Proposals/Insert.hs+88

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Proposals/Patch.hs+134

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Proposals/Search.hs+87

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Proposals/Setupcomplete.hs+89

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/Proposals/Update.hs+135

This diff is too big to show here.

gogol-adexchange-buyer/gen/Network/Google/Resource/AdExchangeBuyer/PubproFiles/List.hs+92

This diff is too big to show here.

gogol-adexchange-buyer/gogol-adexchange-buyer.cabal+27−32

This diff is too big to show here.

gogol-adexchange-seller/LICENSE−6

This diff is too big to show here.

gogol-adexchange-seller/README.md+4−4

This diff is too big to show here.

gogol-adexchange-seller/gen/Network/Google/AdExchangeSeller.hs+100−69

This diff is too big to show here.

gogol-adexchange-seller/gen/Network/Google/AdExchangeSeller/Types.hs+57−29

This diff is too big to show here.

gogol-adexchange-seller/gen/Network/Google/AdExchangeSeller/Types/Product.hs+477−275

This diff is too big to show here.

gogol-adexchange-seller/gen/Network/Google/AdExchangeSeller/Types/Sum.hs+3−2

This diff is too big to show here.

gogol-adexchange-seller/gen/Network/Google/Resource/AdExchangeSeller/Accounts/AdClients/List.hs+122

This diff is too big to show here.

gogol-adexchange-seller/gen/Network/Google/Resource/AdExchangeSeller/Accounts/Adclients/List.hs−188

This diff is too big to show here.

gogol-adexchange-seller/gen/Network/Google/Resource/AdExchangeSeller/Accounts/Alerts/List.hs+52−117

This diff is too big to show here.

gogol-adexchange-seller/gen/Network/Google/Resource/AdExchangeSeller/Accounts/CustomChannels/Get.hs+123

This diff is too big to show here.

gogol-adexchange-seller/gen/Network/Google/Resource/AdExchangeSeller/Accounts/CustomChannels/List.hs+141

This diff is too big to show here.

gogol-adexchange-seller/gen/Network/Google/Resource/AdExchangeSeller/Accounts/Customchannels/Get.hs−191

This diff is too big to show here.

gogol-adexchange-seller/gen/Network/Google/Resource/AdExchangeSeller/Accounts/Customchannels/List.hs−206

This diff is too big to show here.

gogol-adexchange-seller/gen/Network/Google/Resource/AdExchangeSeller/Accounts/Get.hs+37−102

This diff is too big to show here.

gogol-adexchange-seller/gen/Network/Google/Resource/AdExchangeSeller/Accounts/List.hs+41−107

This diff is too big to show here.

gogol-adexchange-seller/gen/Network/Google/Resource/AdExchangeSeller/Accounts/Metadata/Dimensions/List.hs+42−111

This diff is too big to show here.

gogol-adexchange-seller/gen/Network/Google/Resource/AdExchangeSeller/Accounts/Metadata/Metrics/List.hs+40−109

This diff is too big to show here.

gogol-adexchange-seller/gen/Network/Google/Resource/AdExchangeSeller/Accounts/PreferredDeals/Get.hs+104

This diff is too big to show here.

gogol-adexchange-seller/gen/Network/Google/Resource/AdExchangeSeller/Accounts/PreferredDeals/List.hs+93

This diff is too big to show here.

gogol-adexchange-seller/gen/Network/Google/Resource/AdExchangeSeller/Accounts/Preferreddeals/Get.hs−173

This diff is too big to show here.

gogol-adexchange-seller/gen/Network/Google/Resource/AdExchangeSeller/Accounts/Preferreddeals/List.hs−160

This diff is too big to show here.

gogol-adexchange-seller/gen/Network/Google/Resource/AdExchangeSeller/Accounts/Reports/Generate.hs+129−144

This diff is too big to show here.

gogol-adexchange-seller/gen/Network/Google/Resource/AdExchangeSeller/Accounts/Reports/Saved/Generate.hs+55−122

This diff is too big to show here.

gogol-adexchange-seller/gen/Network/Google/Resource/AdExchangeSeller/Accounts/Reports/Saved/List.hs+50−120

This diff is too big to show here.

gogol-adexchange-seller/gen/Network/Google/Resource/AdExchangeSeller/Accounts/URLChannels/List.hs+139

This diff is too big to show here.

gogol-adexchange-seller/gen/Network/Google/Resource/AdExchangeSeller/Accounts/URLchannels/List.hs−205

This diff is too big to show here.

gogol-adexchange-seller/gogol-adexchange-seller.cabal+16−13

This diff is too big to show here.

gogol-adexchangebuyer2/LICENSE+367

This diff is too big to show here.

gogol-adexchangebuyer2/Makefile

This diff is too big to show here.

gogol-adexchangebuyer2/README.md+28

This diff is too big to show here.

gogol-adexchangebuyer2/Setup.hs

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/AdExchangeBuyer2.hs+1273

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/AdExchangeBuyer2/Types.hs+947

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/AdExchangeBuyer2/Types/Product.hs+7859

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/AdExchangeBuyer2/Types/Sum.hs+2129

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Accounts/Clients/Create.hs+166

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Accounts/Clients/Get.hs+169

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Accounts/Clients/Invitations/Create.hs+191

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Accounts/Clients/Invitations/Get.hs+191

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Accounts/Clients/Invitations/List.hs+208

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Accounts/Clients/List.hs+200

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Accounts/Clients/Update.hs+181

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Accounts/Clients/Users/Get.hs+185

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Accounts/Clients/Users/List.hs+207

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Accounts/Clients/Users/Update.hs+202

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Accounts/Creatives/Create.hs+181

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Accounts/Creatives/DealAssociations/Add.hs+187

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Accounts/Creatives/DealAssociations/List.hs+231

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Accounts/Creatives/DealAssociations/Remove.hs+190

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Accounts/Creatives/Get.hs+165

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Accounts/Creatives/List.hs+209

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Accounts/Creatives/StopWatching.hs+186

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Accounts/Creatives/Update.hs+182

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Accounts/Creatives/Watch.hs+184

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Accounts/FinalizedProposals/List.hs+216

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Accounts/Products/Get.hs+164

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Accounts/Products/List.hs+198

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Accounts/Proposals/Accept.hs+187

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Accounts/Proposals/AddNote.hs+184

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Accounts/Proposals/CancelNegotiation.hs+188

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Accounts/Proposals/CompleteSetup.hs+193

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Accounts/Proposals/Create.hs+166

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Accounts/Proposals/Get.hs+164

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Accounts/Proposals/List.hs+216

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Accounts/Proposals/Pause.hs+187

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Accounts/Proposals/Resume.hs+191

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Accounts/Proposals/Update.hs+198

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Accounts/PublisherProFiles/Get.hs+172

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Accounts/PublisherProFiles/List.hs+185

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Bidders/Accounts/FilterSets/BidMetrics/List.hs+198

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Bidders/Accounts/FilterSets/BidResponseErrors/List.hs+205

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Bidders/Accounts/FilterSets/BidResponsesWithoutBids/List.hs+207

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Bidders/Accounts/FilterSets/Create.hs+191

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Bidders/Accounts/FilterSets/Delete.hs+161

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Bidders/Accounts/FilterSets/FilteredBidRequests/List.hs+205

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Bidders/Accounts/FilterSets/FilteredBids/Creatives/List.hs+224

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Bidders/Accounts/FilterSets/FilteredBids/Details/List.hs+226

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Bidders/Accounts/FilterSets/FilteredBids/List.hs+201

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Bidders/Accounts/FilterSets/Get.hs+160

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Bidders/Accounts/FilterSets/ImpressionMetrics/List.hs+202

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Bidders/Accounts/FilterSets/List.hs+192

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Bidders/Accounts/FilterSets/LosingBids/List.hs+200

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Bidders/Accounts/FilterSets/NonBillableWinningBids/List.hs+205

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Bidders/FilterSets/BidMetrics/List.hs+195

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Bidders/FilterSets/BidResponseErrors/List.hs+199

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Bidders/FilterSets/BidResponsesWithoutBids/List.hs+206

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Bidders/FilterSets/Create.hs+187

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Bidders/FilterSets/Delete.hs+156

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Bidders/FilterSets/FilteredBidRequests/List.hs+202

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Bidders/FilterSets/FilteredBids/Creatives/List.hs+222

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Bidders/FilterSets/FilteredBids/Details/List.hs+223

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Bidders/FilterSets/FilteredBids/List.hs+197

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Bidders/FilterSets/Get.hs+157

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Bidders/FilterSets/ImpressionMetrics/List.hs+197

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Bidders/FilterSets/List.hs+188

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Bidders/FilterSets/LosingBids/List.hs+197

This diff is too big to show here.

gogol-adexchangebuyer2/gen/Network/Google/Resource/AdExchangeBuyer2/Bidders/FilterSets/NonBillableWinningBids/List.hs+204

This diff is too big to show here.

gogol-adexchangebuyer2/gogol-adexchangebuyer2.cabal+109

This diff is too big to show here.

gogol-adexchangebuyer2/src/.gitkeep

This diff is too big to show here.

gogol-adexperiencereport/LICENSE+367

This diff is too big to show here.

gogol-adexperiencereport/Makefile

This diff is too big to show here.

gogol-adexperiencereport/README.md+28

This diff is too big to show here.

gogol-adexperiencereport/Setup.hs

This diff is too big to show here.

gogol-adexperiencereport/gen/Network/Google/AdExperienceReport.hs+85

This diff is too big to show here.

gogol-adexperiencereport/gen/Network/Google/AdExperienceReport/Types.hs+70

This diff is too big to show here.

gogol-adexperiencereport/gen/Network/Google/AdExperienceReport/Types/Product.hs+243

This diff is too big to show here.

gogol-adexperiencereport/gen/Network/Google/AdExperienceReport/Types/Sum.hs+131

This diff is too big to show here.

gogol-adexperiencereport/gen/Network/Google/Resource/AdExperienceReport/Sites/Get.hs+154

This diff is too big to show here.

gogol-adexperiencereport/gen/Network/Google/Resource/AdExperienceReport/ViolatingSites/List.hs+140

This diff is too big to show here.

gogol-adexperiencereport/gogol-adexperiencereport.cabal+48

This diff is too big to show here.

gogol-adexperiencereport/src/.gitkeep

This diff is too big to show here.

gogol-admin-datatransfer/LICENSE−6

This diff is too big to show here.

gogol-admin-datatransfer/README.md+4−4

This diff is too big to show here.

gogol-admin-datatransfer/gen/Network/Google/AdminDataTransfer.hs−114

This diff is too big to show here.

gogol-admin-datatransfer/gen/Network/Google/AdminDataTransfer/Types.hs−80

This diff is too big to show here.

gogol-admin-datatransfer/gen/Network/Google/AdminDataTransfer/Types/Product.hs−485

This diff is too big to show here.

gogol-admin-datatransfer/gen/Network/Google/AdminDataTransfer/Types/Sum.hs−18

This diff is too big to show here.

gogol-admin-datatransfer/gen/Network/Google/DataTransfer.hs+118

This diff is too big to show here.

gogol-admin-datatransfer/gen/Network/Google/DataTransfer/Types.hs+93

This diff is too big to show here.

gogol-admin-datatransfer/gen/Network/Google/DataTransfer/Types/Product.hs+511

This diff is too big to show here.

gogol-admin-datatransfer/gen/Network/Google/DataTransfer/Types/Sum.hs+19

This diff is too big to show here.

gogol-admin-datatransfer/gen/Network/Google/Resource/DataTransfer/Applications/Get.hs+92

This diff is too big to show here.

gogol-admin-datatransfer/gen/Network/Google/Resource/DataTransfer/Applications/List.hs+113

This diff is too big to show here.

gogol-admin-datatransfer/gen/Network/Google/Resource/DataTransfer/Transfers/Get.hs+91

This diff is too big to show here.

gogol-admin-datatransfer/gen/Network/Google/Resource/DataTransfer/Transfers/Insert.hs+88

This diff is too big to show here.

gogol-admin-datatransfer/gen/Network/Google/Resource/DataTransfer/Transfers/List.hs+154

This diff is too big to show here.

gogol-admin-datatransfer/gen/Network/Google/Resource/Datatransfer/Applications/Get.hs−157

This diff is too big to show here.

gogol-admin-datatransfer/gen/Network/Google/Resource/Datatransfer/Applications/List.hs−180

This diff is too big to show here.

gogol-admin-datatransfer/gen/Network/Google/Resource/Datatransfer/Transfers/Get.hs−156

This diff is too big to show here.

gogol-admin-datatransfer/gen/Network/Google/Resource/Datatransfer/Transfers/Insert.hs−141

This diff is too big to show here.

gogol-admin-datatransfer/gen/Network/Google/Resource/Datatransfer/Transfers/List.hs−217

This diff is too big to show here.

gogol-admin-datatransfer/gogol-admin-datatransfer.cabal+18−16

This diff is too big to show here.

gogol-admin-directory/LICENSE−6

This diff is too big to show here.

gogol-admin-directory/README.md+4−4

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/AdminDirectory.hs−765

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/AdminDirectory/Types.hs−474

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/AdminDirectory/Types/Product.hs−4178

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/AdminDirectory/Types/Sum.hs−18

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Directory.hs+1595

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Directory/Types.hs+1128

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Directory/Types/Product.hs+8483

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Directory/Types/Sum.hs+1024

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Admin/Channels/Stop.hs+51−100

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Asps/Delete.hs+46−108

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Asps/Get.hs+45−108

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Asps/List.hs+38−102

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/ChromeosDevices/Action.hs+122

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/ChromeosDevices/Get.hs+122

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/ChromeosDevices/List.hs+186

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/ChromeosDevices/MoveDevicesToOu.hs+126

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/ChromeosDevices/Patch.hs+135

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/ChromeosDevices/Update.hs+135

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Chromeosdevices/Get.hs−183

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Chromeosdevices/List.hs−230

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Chromeosdevices/Patch.hs−183

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Chromeosdevices/Update.hs−183

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Customers/Get.hs+88

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Customers/Patch.hs+100

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Customers/Update.hs+101

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/DomainAliases/Delete.hs+103

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/DomainAliases/Get.hs+104

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/DomainAliases/Insert.hs+103

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/DomainAliases/List.hs+103

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Domains/Delete.hs+100

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Domains/Get.hs+101

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Domains/Insert.hs+100

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Domains/List.hs+88

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Groups/Aliases/Delete.hs+45−116

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Groups/Aliases/Insert.hs+53−110

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Groups/Aliases/List.hs+41−110

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Groups/Delete.hs+38−105

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Groups/Get.hs+39−104

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Groups/Insert.hs+46−98

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Groups/List.hs+90−113

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Groups/Patch.hs+50−103

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Groups/Update.hs+50−104

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Members/Delete.hs+46−112

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Members/Get.hs+48−111

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Members/HasMember.hs+110

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Members/Insert.hs+52−105

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Members/List.hs+68−113

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Members/Patch.hs+60−110

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Members/Update.hs+60−110

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/MobileDevices/Action.hs+122

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/MobileDevices/Delete.hs+105

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/MobileDevices/Get.hs+122

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/MobileDevices/List.hs+173

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Mobiledevices/Action.hs−171

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Mobiledevices/Delete.hs−175

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Mobiledevices/Get.hs−189

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Mobiledevices/List.hs−228

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Notifications/Delete.hs+46−113

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Notifications/Get.hs+46−114

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Notifications/List.hs+54−119

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Notifications/Patch.hs+56−108

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Notifications/Update.hs+56−108

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/OrgUnits/Delete.hs+106

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/OrgUnits/Get.hs+107

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/OrgUnits/Insert.hs+101

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/OrgUnits/List.hs+113

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/OrgUnits/Patch.hs+119

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/OrgUnits/Update.hs+119

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Orgunits/Delete.hs−168

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Orgunits/Get.hs−166

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Orgunits/Insert.hs−155

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Orgunits/List.hs−178

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Orgunits/Patch.hs−168

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Orgunits/Update.hs−165

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Privileges/List.hs+90

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/ResolvedAppAccessSettings/GetSettings.hs+78

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/ResolvedAppAccessSettings/ListTrustedApps.hs+81

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Resources/Buildings/Delete.hs+106

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Resources/Buildings/Get.hs+107

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Resources/Buildings/Insert.hs+123

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Resources/Buildings/List.hs+121

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Resources/Buildings/Patch.hs+137

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Resources/Buildings/Update.hs+137

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Resources/Calendars/Delete.hs+109

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Resources/Calendars/Get.hs+111

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Resources/Calendars/Insert.hs+106

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Resources/Calendars/List.hs+156

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Resources/Calendars/Patch.hs+129

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Resources/Calendars/Update.hs+127

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Resources/Features/Delete.hs+106

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Resources/Features/Get.hs+107

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Resources/Features/Insert.hs+105

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Resources/Features/List.hs+121

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Resources/Features/Patch.hs+121

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Resources/Features/Rename.hs+121

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Resources/Features/Update.hs+121

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/RoleAssignments/Delete.hs+103

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/RoleAssignments/Get.hs+105

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/RoleAssignments/Insert.hs+103

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/RoleAssignments/List.hs+146

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Roles/Delete.hs+99

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Roles/Get.hs+100

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Roles/Insert.hs+100

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Roles/List.hs+116

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Roles/Patch.hs+114

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Roles/Update.hs+114

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Schemas/Delete.hs+45−112

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Schemas/Get.hs+46−111

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Schemas/Insert.hs+50−104

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Schemas/List.hs+40−105

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Schemas/Patch.hs+57−108

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Schemas/Update.hs+57−108

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Tokens/Delete.hs+44−111

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Tokens/Get.hs+44−110

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Tokens/List.hs+38−103

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Users/Aliases/Delete.hs+46−116

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Users/Aliases/Insert.hs+52−108

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Users/Aliases/List.hs+48−116

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Users/Aliases/Watch.hs+60−113

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Users/Delete.hs+38−103

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Users/Get.hs+50−112

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Users/Insert.hs+46−97

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Users/List.hs+74−133

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Users/MakeAdmin.hs+50−107

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Users/Patch.hs+49−101

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Users/Photos/Delete.hs+41−110

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Users/Photos/Get.hs+41−109

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Users/Photos/Patch.hs+52−108

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Users/Photos/Update.hs+52−108

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Users/Undelete.hs+49−102

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Users/Update.hs+48−99

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/Users/Watch.hs+90−137

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/VerificationCodes/Generate.hs+41−109

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/VerificationCodes/Invalidate.hs+41−110

This diff is too big to show here.

gogol-admin-directory/gen/Network/Google/Resource/Directory/VerificationCodes/List.hs+40−108

This diff is too big to show here.

gogol-admin-directory/gogol-admin-directory.cabal+74−26

This diff is too big to show here.

gogol-admin-emailmigration/LICENSE−373

This diff is too big to show here.

gogol-admin-emailmigration/README.md−28

This diff is too big to show here.

gogol-admin-emailmigration/gen/Network/Google/AdminEmailMigration.hs−59

This diff is too big to show here.

gogol-admin-emailmigration/gen/Network/Google/AdminEmailMigration/Types.hs−43

This diff is too big to show here.

gogol-admin-emailmigration/gen/Network/Google/AdminEmailMigration/Types/Product.hs−143

This diff is too big to show here.

gogol-admin-emailmigration/gen/Network/Google/AdminEmailMigration/Types/Sum.hs−18

This diff is too big to show here.

gogol-admin-emailmigration/gen/Network/Google/Resource/EmailMigration/Mail/Insert.hs−151

This diff is too big to show here.

gogol-admin-emailmigration/gogol-admin-emailmigration.cabal−43

This diff is too big to show here.

gogol-admin-reports/LICENSE−6

This diff is too big to show here.

gogol-admin-reports/README.md+4−4

This diff is too big to show here.

gogol-admin-reports/gen/Network/Google/AdminReports.hs−116

This diff is too big to show here.

gogol-admin-reports/gen/Network/Google/AdminReports/Types.hs−81

This diff is too big to show here.

gogol-admin-reports/gen/Network/Google/AdminReports/Types/Product.hs−480

This diff is too big to show here.

gogol-admin-reports/gen/Network/Google/AdminReports/Types/Sum.hs−18

This diff is too big to show here.

gogol-admin-reports/gen/Network/Google/Reports.hs+200

This diff is too big to show here.

gogol-admin-reports/gen/Network/Google/Reports/Types.hs+169

This diff is too big to show here.

gogol-admin-reports/gen/Network/Google/Reports/Types/Product.hs+1188

This diff is too big to show here.

gogol-admin-reports/gen/Network/Google/Reports/Types/Sum.hs+19

This diff is too big to show here.

gogol-admin-reports/gen/Network/Google/Resource/Admin/Channels/Stop.hs+48−100

This diff is too big to show here.

gogol-admin-reports/gen/Network/Google/Resource/Reports/Activities/List.hs+87−138

This diff is too big to show here.

gogol-admin-reports/gen/Network/Google/Resource/Reports/Activities/Watch.hs+103−140

This diff is too big to show here.

gogol-admin-reports/gen/Network/Google/Resource/Reports/CustomerUsageReports/Get.hs+51−121

This diff is too big to show here.

gogol-admin-reports/gen/Network/Google/Resource/Reports/EntityUsageReports/Get.hs+188

This diff is too big to show here.

gogol-admin-reports/gen/Network/Google/Resource/Reports/UserUsageReport/Get.hs+79−133

This diff is too big to show here.

gogol-admin-reports/gogol-admin-reports.cabal+15−11

This diff is too big to show here.

gogol-adsense-host/LICENSE−6

This diff is too big to show here.

gogol-adsense-host/README.md+4−4

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/AdSenseHost.hs+193−123

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/AdSenseHost/Types.hs+95−40

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/AdSenseHost/Types/Product.hs+783−341

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/AdSenseHost/Types/Sum.hs+47−2

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/Accounts/AdClients/Get.hs+105

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/Accounts/AdClients/List.hs+121

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/Accounts/AdUnits/Delete.hs+121

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/Accounts/AdUnits/Get.hs+119

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/Accounts/AdUnits/GetAdCode.hs+139

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/Accounts/AdUnits/Insert.hs+121

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/Accounts/AdUnits/List.hs+150

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/Accounts/AdUnits/Patch.hs+135

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/Accounts/AdUnits/Update.hs+119

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/Accounts/Adclients/Get.hs−175

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/Accounts/Adclients/List.hs−188

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/Accounts/Adunits/Delete.hs−189

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/Accounts/Adunits/Get.hs−189

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/Accounts/Adunits/GetAdCode.hs−208

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/Accounts/Adunits/Insert.hs−176

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/Accounts/Adunits/List.hs−216

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/Accounts/Adunits/Patch.hs−189

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/Accounts/Adunits/Update.hs−174

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/Accounts/Get.hs+40−110

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/Accounts/List.hs+44−112

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/Accounts/Reports/Generate.hs+88−146

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/AdClients/Get.hs+86

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/AdClients/List.hs+101

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/Adclients/Get.hs−153

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/Adclients/List.hs−167

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/AssociationSessions/Start.hs+138

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/AssociationSessions/Verify.hs+93

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/Associationsessions/Start.hs−198

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/Associationsessions/Verify.hs−160

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/CustomChannels/Delete.hs+107

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/CustomChannels/Get.hs+106

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/CustomChannels/Insert.hs+103

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/CustomChannels/List.hs+121

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/CustomChannels/Patch.hs+122

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/CustomChannels/Update.hs+103

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/Customchannels/Delete.hs−171

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/Customchannels/Get.hs−171

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/Customchannels/Insert.hs−156

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/Customchannels/List.hs−184

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/Customchannels/Patch.hs−174

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/Customchannels/Update.hs−156

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/Reports/Generate.hs+86−138

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/URLChannels/Delete.hs+103

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/URLChannels/Insert.hs+102

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/URLChannels/List.hs+120

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/URLchannels/Delete.hs−171

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/URLchannels/Insert.hs−156

This diff is too big to show here.

gogol-adsense-host/gen/Network/Google/Resource/AdSenseHost/URLchannels/List.hs−183

This diff is too big to show here.

gogol-adsense-host/gogol-adsense-host.cabal+36−29

This diff is too big to show here.

gogol-adsense/LICENSE−6

This diff is too big to show here.

gogol-adsense/README.md+4−4

This diff is too big to show here.

gogol-adsense/gen/Network/Google/AdSense.hs+258−158

This diff is too big to show here.

gogol-adsense/gen/Network/Google/AdSense/Types.hs+127−52

This diff is too big to show here.

gogol-adsense/gen/Network/Google/AdSense/Types/Product.hs+1158−503

This diff is too big to show here.

gogol-adsense/gen/Network/Google/AdSense/Types/Sum.hs+3−2

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/Accounts/AdClients/GetAdCode.hs+109

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/Accounts/AdClients/List.hs+122

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/Accounts/AdUnits/CustomChannels/List.hs+158

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/Accounts/AdUnits/Get.hs+122

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/Accounts/AdUnits/GetAdCode.hs+123

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/Accounts/AdUnits/List.hs+151

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/Accounts/Adclients/List.hs−188

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/Accounts/Adunits/Customchannels/List.hs−223

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/Accounts/Adunits/Get.hs−189

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/Accounts/Adunits/GetAdCode.hs−192

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/Accounts/Adunits/List.hs−216

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/Accounts/Alerts/Delete.hs+43−114

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/Accounts/Alerts/List.hs+52−117

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/Accounts/CustomChannels/AdUnits/List.hs+169

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/Accounts/CustomChannels/Get.hs+125

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/Accounts/CustomChannels/List.hs+141

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/Accounts/Customchannels/Adunits/List.hs−236

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/Accounts/Customchannels/Get.hs−193

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/Accounts/Customchannels/List.hs−206

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/Accounts/Get.hs+40−105

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/Accounts/List.hs+49−119

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/Accounts/Payments/List.hs+38−108

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/Accounts/Reports/Generate.hs+135−145

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/Accounts/Reports/Saved/Generate.hs+56−123

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/Accounts/Reports/Saved/List.hs+50−120

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/Accounts/Savedadstyles/Get.hs+43−115

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/Accounts/Savedadstyles/List.hs+48−116

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/Accounts/URLChannels/List.hs+139

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/Accounts/URLchannels/List.hs−205

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/AdClients/List.hs+102

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/AdUnits/CustomChannels/List.hs+139

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/AdUnits/Get.hs+101

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/AdUnits/GetAdCode.hs+105

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/AdUnits/List.hs+133

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/Adclients/List.hs−167

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/Adunits/Customchannels/List.hs−204

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/Adunits/Get.hs−170

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/Adunits/GetAdCode.hs−175

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/Adunits/List.hs−193

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/Alerts/Delete.hs+35−102

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/Alerts/List.hs+39−109

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/CustomChannels/AdUnits/List.hs+152

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/CustomChannels/Get.hs+107

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/CustomChannels/List.hs+124

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/Customchannels/Adunits/List.hs−218

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/Customchannels/Get.hs−171

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/Customchannels/List.hs−186

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/Metadata/Dimensions/List.hs+33−103

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/Metadata/Metrics/List.hs+33−103

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/Payments/List.hs+31−98

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/Reports/Generate.hs+137−143

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/Reports/Saved/Generate.hs+51−117

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/Reports/Saved/List.hs+43−113

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/Savedadstyles/Get.hs+37−105

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/Savedadstyles/List.hs+42−109

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/URLChannels/List.hs+123

This diff is too big to show here.

gogol-adsense/gen/Network/Google/Resource/AdSense/URLchannels/List.hs−185

This diff is too big to show here.

gogol-adsense/gogol-adsense.cabal+29−25

This diff is too big to show here.

gogol-affiliates/LICENSE−373

This diff is too big to show here.

gogol-affiliates/README.md−28

This diff is too big to show here.

gogol-affiliates/gen/Network/Google/Affiliates.hs−291

This diff is too big to show here.

gogol-affiliates/gen/Network/Google/Affiliates/Types.hs−236

This diff is too big to show here.

gogol-affiliates/gen/Network/Google/Affiliates/Types/Product.hs−2241

This diff is too big to show here.

gogol-affiliates/gen/Network/Google/Affiliates/Types/Sum.hs−18

This diff is too big to show here.

gogol-affiliates/gen/Network/Google/Resource/Gan/Advertisers/Get.hs−186

This diff is too big to show here.

gogol-affiliates/gen/Network/Google/Resource/Gan/Advertisers/List.hs−269

This diff is too big to show here.

gogol-affiliates/gen/Network/Google/Resource/Gan/CcOffers/List.hs−183

This diff is too big to show here.

gogol-affiliates/gen/Network/Google/Resource/Gan/Events/List.hs−380

This diff is too big to show here.

gogol-affiliates/gen/Network/Google/Resource/Gan/Links/Get.hs−180

This diff is too big to show here.

gogol-affiliates/gen/Network/Google/Resource/Gan/Links/Insert.hs−162

This diff is too big to show here.

gogol-affiliates/gen/Network/Google/Resource/Gan/Links/List.hs−330

This diff is too big to show here.

gogol-affiliates/gen/Network/Google/Resource/Gan/Publishers/Get.hs−184

This diff is too big to show here.

gogol-affiliates/gen/Network/Google/Resource/Gan/Publishers/List.hs−268

This diff is too big to show here.

gogol-affiliates/gen/Network/Google/Resource/Gan/Reports/Get.hs−318

This diff is too big to show here.

gogol-affiliates/gogol-affiliates.cabal−52

This diff is too big to show here.

gogol-alertcenter/LICENSE+367

This diff is too big to show here.

gogol-alertcenter/Makefile

This diff is too big to show here.

gogol-alertcenter/README.md+28

This diff is too big to show here.

gogol-alertcenter/Setup.hs

This diff is too big to show here.

gogol-alertcenter/gen/Network/Google/AlertCenter.hs+302

This diff is too big to show here.

gogol-alertcenter/gen/Network/Google/AlertCenter/Types.hs+258

This diff is too big to show here.

gogol-alertcenter/gen/Network/Google/AlertCenter/Types/Product.hs+1958

This diff is too big to show here.

gogol-alertcenter/gen/Network/Google/AlertCenter/Types/Sum.hs+117

This diff is too big to show here.

gogol-alertcenter/gen/Network/Google/Resource/AlertCenter/Alerts/Delete.hs+170

This diff is too big to show here.

gogol-alertcenter/gen/Network/Google/Resource/AlertCenter/Alerts/Feedback/Create.hs+182

This diff is too big to show here.

gogol-alertcenter/gen/Network/Google/Resource/AlertCenter/Alerts/Feedback/List.hs+187

This diff is too big to show here.

gogol-alertcenter/gen/Network/Google/Resource/AlertCenter/Alerts/Get.hs+164

This diff is too big to show here.

gogol-alertcenter/gen/Network/Google/Resource/AlertCenter/Alerts/List.hs+209

This diff is too big to show here.

gogol-alertcenter/gen/Network/Google/Resource/AlertCenter/Alerts/Undelete.hs+172

This diff is too big to show here.

gogol-alertcenter/gen/Network/Google/Resource/AlertCenter/GetSettings.hs+149

This diff is too big to show here.

gogol-alertcenter/gen/Network/Google/Resource/AlertCenter/UpdateSettings.hs+162

This diff is too big to show here.

gogol-alertcenter/gogol-alertcenter.cabal+53

This diff is too big to show here.

gogol-alertcenter/src/.gitkeep

This diff is too big to show here.

gogol-analytics/LICENSE−6

This diff is too big to show here.

gogol-analytics/README.md+4−4

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Analytics.hs+1132−507

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Analytics/Types.hs+845−315

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Analytics/Types/Product.hs+9009−4210

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Analytics/Types/Sum.hs+103−2

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Data/Ga/Get.hs+94−143

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Data/Mcf/Get.hs+67−130

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Data/Realtime/Get.hs+59−126

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/AccountSummaries/List.hs+47−116

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/AccountUserLinks/Delete.hs+46−117

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/AccountUserLinks/Insert.hs+53−110

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/AccountUserLinks/List.hs+53−119

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/AccountUserLinks/Update.hs+58−113

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/Accounts/List.hs+45−113

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/ClientId/HashClientId.hs+94

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/CustomDataSources/List.hs+58−123

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/CustomDimensions/Get.hs+51−120

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/CustomDimensions/Insert.hs+59−115

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/CustomDimensions/List.hs+57−124

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/CustomDimensions/Patch.hs+66−122

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/CustomDimensions/Update.hs+66−122

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/CustomMetrics/Get.hs+49−119

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/CustomMetrics/Insert.hs+58−115

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/CustomMetrics/List.hs+54−122

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/CustomMetrics/Patch.hs+63−120

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/CustomMetrics/Update.hs+64−121

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/Experiments/Delete.hs+60−128

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/Experiments/Get.hs+61−129

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/Experiments/Insert.hs+69−124

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/Experiments/List.hs+67−133

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/Experiments/Patch.hs+73−128

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/Experiments/Update.hs+73−127

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/Filters/Delete.hs+44−115

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/Filters/Get.hs+45−115

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/Filters/Insert.hs+50−108

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/Filters/List.hs+51−117

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/Filters/Patch.hs+56−112

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/Filters/Update.hs+56−112

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/Goals/Get.hs+60−127

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/Goals/Insert.hs+68−124

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/Goals/List.hs+68−133

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/Goals/Patch.hs+73−131

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/Goals/Update.hs+73−128

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/ProFileFilterLinks/Delete.hs+139

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/ProFileFilterLinks/Get.hs+142

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/ProFileFilterLinks/Insert.hs+142

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/ProFileFilterLinks/List.hs+162

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/ProFileFilterLinks/Patch.hs+157

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/ProFileFilterLinks/Update.hs+155

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/ProFileUserLinks/Delete.hs+139

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/ProFileUserLinks/Insert.hs+142

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/ProFileUserLinks/List.hs+161

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/ProFileUserLinks/Update.hs+155

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/ProFiles/Delete.hs+121

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/ProFiles/Get.hs+122

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/ProFiles/Insert.hs+120

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/ProFiles/List.hs+143

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/ProFiles/Patch.hs+136

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/ProFiles/Update.hs+134

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/ProfileFilterLinks/Delete.hs−209

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/ProfileFilterLinks/Get.hs−210

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/ProfileFilterLinks/Insert.hs−198

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/ProfileFilterLinks/List.hs−228

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/ProfileFilterLinks/Patch.hs−212

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/ProfileFilterLinks/Update.hs−211

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/ProfileUserLinks/Delete.hs−208

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/ProfileUserLinks/Insert.hs−196

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/ProfileUserLinks/List.hs−228

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/ProfileUserLinks/Update.hs−209

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/Profiles/Delete.hs−189

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/Profiles/Get.hs−188

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/Profiles/Insert.hs−176

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/Profiles/List.hs−207

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/Profiles/Patch.hs−190

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/Profiles/Update.hs−189

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/RemarketingAudience/Delete.hs+126

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/RemarketingAudience/Get.hs+128

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/RemarketingAudience/Insert.hs+126

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/RemarketingAudience/List.hs+153

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/RemarketingAudience/Patch.hs+142

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/RemarketingAudience/Update.hs+141

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/Segments/List.hs+45−113

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/UnSampledReports/Delete.hs+140

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/UnSampledReports/Get.hs+143

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/UnSampledReports/Insert.hs+142

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/UnSampledReports/List.hs+161

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/UnsampledReports/Get.hs−211

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/UnsampledReports/Insert.hs−196

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/UnsampledReports/List.hs−227

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/Uploads/DeleteUploadData.hs+68−121

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/Uploads/Get.hs+54−120

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/Uploads/List.hs+61−125

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/Uploads/UploadData.hs+86−120

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/WebProperties/Get.hs+106

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/WebProperties/Insert.hs+110

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/WebProperties/List.hs+126

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/WebProperties/Patch.hs+121

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/WebProperties/Update.hs+122

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/WebPropertyAdWordsLinks/Delete.hs+56−128

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/WebPropertyAdWordsLinks/Get.hs+56−128

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/WebPropertyAdWordsLinks/Insert.hs+65−122

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/WebPropertyAdWordsLinks/List.hs+62−132

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/WebPropertyAdWordsLinks/Patch.hs+70−129

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/WebPropertyAdWordsLinks/Update.hs+70−127

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/WebPropertyUserLinks/Delete.hs+125

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/WebPropertyUserLinks/Insert.hs+128

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/WebPropertyUserLinks/List.hs+147

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/WebPropertyUserLinks/Update.hs+141

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/Webproperties/Get.hs−176

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/Webproperties/Insert.hs−166

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/Webproperties/List.hs−191

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/Webproperties/Patch.hs−176

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/Webproperties/Update.hs−177

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/WebpropertyUserLinks/Delete.hs−194

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/WebpropertyUserLinks/Insert.hs−182

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/WebpropertyUserLinks/List.hs−214

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Management/WebpropertyUserLinks/Update.hs−195

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Metadata/Columns/List.hs+39−107

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Provisioning/CreateAccountTicket.hs+46−104

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/Provisioning/CreateAccountTree.hs+92

This diff is too big to show here.

gogol-analytics/gen/Network/Google/Resource/Analytics/UserDeletion/UserDeletionRequest/Upsert.hs+95

This diff is too big to show here.

gogol-analytics/gogol-analytics.cabal+47−34

This diff is too big to show here.

gogol-analyticsreporting/LICENSE+367

This diff is too big to show here.

gogol-analyticsreporting/Makefile

This diff is too big to show here.

gogol-analyticsreporting/README.md+28

This diff is too big to show here.

gogol-analyticsreporting/Setup.hs

This diff is too big to show here.

gogol-analyticsreporting/gen/Network/Google/AnalyticsReporting.hs+492

This diff is too big to show here.

gogol-analyticsreporting/gen/Network/Google/AnalyticsReporting/Types.hs+481

This diff is too big to show here.

gogol-analyticsreporting/gen/Network/Google/AnalyticsReporting/Types/Product.hs+3886

This diff is too big to show here.

gogol-analyticsreporting/gen/Network/Google/AnalyticsReporting/Types/Sum.hs+917

This diff is too big to show here.

gogol-analyticsreporting/gen/Network/Google/Resource/AnalyticsReporting/Reports/BatchGet.hs+152

This diff is too big to show here.

gogol-analyticsreporting/gen/Network/Google/Resource/AnalyticsReporting/UserActivity/Search.hs+153

This diff is too big to show here.

gogol-analyticsreporting/gogol-analyticsreporting.cabal+47

This diff is too big to show here.

gogol-analyticsreporting/src/.gitkeep

This diff is too big to show here.

gogol-android-enterprise/LICENSE+367

This diff is too big to show here.

gogol-android-enterprise/Makefile

This diff is too big to show here.

gogol-android-enterprise/README.md+28

This diff is too big to show here.

gogol-android-enterprise/Setup.hs

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/AndroidEnterprise.hs+1062

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/AndroidEnterprise/Types.hs+632

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/AndroidEnterprise/Types/Product.hs+5934

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/AndroidEnterprise/Types/Sum.hs+79

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Devices/Get.hs+116

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Devices/GetState.hs+127

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Devices/List.hs+101

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Devices/Patch.hs+143

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Devices/SetState.hs+141

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Devices/Update.hs+143

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Enterprises/AcknowledgeNotificationSet.hs+98

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Enterprises/CompleteSignup.hs+107

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Enterprises/CreateWebToken.hs+111

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Enterprises/Enroll.hs+99

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Enterprises/GenerateSignupURL.hs+97

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Enterprises/Get.hs+88

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Enterprises/GetServiceAccount.hs+125

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Enterprises/GetStoreLayout.hs+93

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Enterprises/List.hs+95

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Enterprises/PullNotificationSet.hs+127

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Enterprises/SendTestPushNotification.hs+100

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Enterprises/SetAccount.hs+105

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Enterprises/SetStoreLayout.hs+116

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Enterprises/Unenroll.hs+90

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Entitlements/Delete.hs+119

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Entitlements/Get.hs+119

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Entitlements/List.hs+102

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Entitlements/Patch.hs+150

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Entitlements/Update.hs+148

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/GrouplicenseUsers/List.hs+112

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Grouplicenses/Get.hs+104

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Grouplicenses/List.hs+93

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Installs/Delete.hs+135

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Installs/Get.hs+131

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Installs/List.hs+118

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Installs/Patch.hs+148

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Installs/Update.hs+148

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/ManagedConfigurationsforDevice/Delete.hs+142

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/ManagedConfigurationsforDevice/Get.hs+141

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/ManagedConfigurationsforDevice/List.hs+127

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/ManagedConfigurationsforDevice/Patch.hs+157

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/ManagedConfigurationsforDevice/Update.hs+157

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/ManagedConfigurationsforUser/Delete.hs+126

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/ManagedConfigurationsforUser/Get.hs+128

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/ManagedConfigurationsforUser/List.hs+110

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/ManagedConfigurationsforUser/Patch.hs+149

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/ManagedConfigurationsforUser/Update.hs+149

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/ManagedConfigurationssettings/List.hs+111

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Permissions/Get.hs+101

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Products/Approve.hs+127

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Products/GenerateApprovalURL.hs+138

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Products/Get.hs+116

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Products/GetAppRestrictionsSchema.hs+136

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Products/GetPermissions.hs+104

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Products/List.hs+163

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Products/UnApprove.hs+105

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/ServiceAccountkeys/Delete.hs+109

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/ServiceAccountkeys/Insert.hs+111

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/ServiceAccountkeys/List.hs+100

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Storelayoutclusters/Delete.hs+120

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Storelayoutclusters/Get.hs+119

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Storelayoutclusters/Insert.hs+118

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Storelayoutclusters/List.hs+106

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Storelayoutclusters/Patch.hs+133

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Storelayoutclusters/Update.hs+134

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Storelayoutpages/Delete.hs+102

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Storelayoutpages/Get.hs+102

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Storelayoutpages/Insert.hs+103

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Storelayoutpages/List.hs+93

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Storelayoutpages/Patch.hs+119

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Storelayoutpages/Update.hs+117

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Users/Delete.hs+99

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Users/GenerateAuthenticationToken.hs+116

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Users/GenerateToken.hs+109

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Users/Get.hs+99

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Users/GetAvailableProductSet.hs+104

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Users/Insert.hs+108

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Users/List.hs+106

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Users/Patch.hs+123

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Users/RevokeDeviceAccess.hs+107

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Users/RevokeToken.hs+103

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Users/SetAvailableProductSet.hs+125

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/Users/Update.hs+121

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/WebApps/Delete.hs+101

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/WebApps/Get.hs+101

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/WebApps/Insert.hs+101

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/WebApps/List.hs+90

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/WebApps/Patch.hs+116

This diff is too big to show here.

gogol-android-enterprise/gen/Network/Google/Resource/AndroidEnterprise/WebApps/Update.hs+116

This diff is too big to show here.

gogol-android-enterprise/gogol-android-enterprise.cabal+130

This diff is too big to show here.

gogol-android-enterprise/src/.gitkeep

This diff is too big to show here.

gogol-android-publisher/LICENSE+367

This diff is too big to show here.

gogol-android-publisher/Makefile

This diff is too big to show here.

gogol-android-publisher/README.md+28

This diff is too big to show here.

gogol-android-publisher/Setup.hs

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/AndroidPublisher.hs+745

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/AndroidPublisher/Types.hs+480

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/AndroidPublisher/Types/Product.hs+3854

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/AndroidPublisher/Types/Sum.hs+361

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/Edits/APKs/Addexternallyhosted.hs+129

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/Edits/APKs/List.hs+101

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/Edits/APKs/Upload.hs+128

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/Edits/Bundles/List.hs+102

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/Edits/Bundles/Upload.hs+164

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/Edits/Commit.hs+100

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/Edits/Delete.hs+104

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/Edits/DeobfuscationFiles/Upload.hs+183

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/Edits/Details/Get.hs+106

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/Edits/Details/Patch.hs+120

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/Edits/Details/Update.hs+119

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/Edits/ExpansionFiles/Get.hs+138

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/Edits/ExpansionFiles/Patch.hs+156

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/Edits/ExpansionFiles/Update.hs+157

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/Edits/ExpansionFiles/Upload.hs+177

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/Edits/Get.hs+102

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/Edits/Images/Delete.hs+147

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/Edits/Images/Deleteall.hs+135

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/Edits/Images/List.hs+134

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/Edits/Images/Upload.hs+170

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/Edits/Insert.hs+101

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/Edits/Listings/Delete.hs+120

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/Edits/Listings/Deleteall.hs+104

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/Edits/Listings/Get.hs+120

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/Edits/Listings/List.hs+105

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/Edits/Listings/Patch.hs+135

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/Edits/Listings/Update.hs+133

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/Edits/Testers/Get.hs+115

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/Edits/Testers/Patch.hs+128

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/Edits/Testers/Update.hs+129

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/Edits/Tracks/Get.hs+120

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/Edits/Tracks/List.hs+105

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/Edits/Tracks/Patch.hs+134

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/Edits/Tracks/Update.hs+131

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/Edits/Validate.hs+102

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/InAppProducts/Delete.hs+102

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/InAppProducts/Get.hs+99

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/InAppProducts/Insert.hs+122

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/InAppProducts/List.hs+132

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/InAppProducts/Patch.hs+137

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/InAppProducts/Update.hs+135

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/Orders/Refund.hs+120

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/Purchases/Products/Get.hs+121

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/Purchases/Subscriptions/Cancel.hs+124

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/Purchases/Subscriptions/Defer.hs+139

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/Purchases/Subscriptions/Get.hs+126

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/Purchases/Subscriptions/Refund.hs+124

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/Purchases/Subscriptions/Revoke.hs+125

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/Purchases/Voidedpurchases/List.hs+168

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/Reviews/Get.hs+116

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/Reviews/List.hs+138

This diff is too big to show here.

gogol-android-publisher/gen/Network/Google/Resource/AndroidPublisher/Reviews/Reply.hs+117

This diff is too big to show here.

gogol-android-publisher/gogol-android-publisher.cabal+97

This diff is too big to show here.

gogol-android-publisher/src/.gitkeep

This diff is too big to show here.

gogol-androiddeviceprovisioning/LICENSE+367

This diff is too big to show here.

gogol-androiddeviceprovisioning/Makefile

This diff is too big to show here.

gogol-androiddeviceprovisioning/README.md+28

This diff is too big to show here.

gogol-androiddeviceprovisioning/Setup.hs

This diff is too big to show here.

gogol-androiddeviceprovisioning/gen/Network/Google/AndroidDeviceProvisioning.hs+500

This diff is too big to show here.

gogol-androiddeviceprovisioning/gen/Network/Google/AndroidDeviceProvisioning/Types.hs+361

This diff is too big to show here.

gogol-androiddeviceprovisioning/gen/Network/Google/AndroidDeviceProvisioning/Types/Product.hs+2882

This diff is too big to show here.

gogol-androiddeviceprovisioning/gen/Network/Google/AndroidDeviceProvisioning/Types/Sum.hs+393

This diff is too big to show here.

gogol-androiddeviceprovisioning/gen/Network/Google/Resource/AndroidDeviceProvisioning/Customers/Configurations/Create.hs+168

This diff is too big to show here.

gogol-androiddeviceprovisioning/gen/Network/Google/Resource/AndroidDeviceProvisioning/Customers/Configurations/Delete.hs+153

This diff is too big to show here.

gogol-androiddeviceprovisioning/gen/Network/Google/Resource/AndroidDeviceProvisioning/Customers/Configurations/Get.hs+149

This diff is too big to show here.

gogol-androiddeviceprovisioning/gen/Network/Google/Resource/AndroidDeviceProvisioning/Customers/Configurations/List.hs+153

This diff is too big to show here.

gogol-androiddeviceprovisioning/gen/Network/Google/Resource/AndroidDeviceProvisioning/Customers/Configurations/Patch.hs+180

This diff is too big to show here.

gogol-androiddeviceprovisioning/gen/Network/Google/Resource/AndroidDeviceProvisioning/Customers/Devices/ApplyConfiguration.hs+174

This diff is too big to show here.

gogol-androiddeviceprovisioning/gen/Network/Google/Resource/AndroidDeviceProvisioning/Customers/Devices/Get.hs+148

This diff is too big to show here.

gogol-androiddeviceprovisioning/gen/Network/Google/Resource/AndroidDeviceProvisioning/Customers/Devices/List.hs+174

This diff is too big to show here.

gogol-androiddeviceprovisioning/gen/Network/Google/Resource/AndroidDeviceProvisioning/Customers/Devices/RemoveConfiguration.hs+169

This diff is too big to show here.

gogol-androiddeviceprovisioning/gen/Network/Google/Resource/AndroidDeviceProvisioning/Customers/Devices/Unclaim.hs+168

This diff is too big to show here.

gogol-androiddeviceprovisioning/gen/Network/Google/Resource/AndroidDeviceProvisioning/Customers/Dpcs/List.hs+153

This diff is too big to show here.

gogol-androiddeviceprovisioning/gen/Network/Google/Resource/AndroidDeviceProvisioning/Customers/List.hs+161

This diff is too big to show here.

gogol-androiddeviceprovisioning/gen/Network/Google/Resource/AndroidDeviceProvisioning/Operations/Get.hs+149

This diff is too big to show here.

gogol-androiddeviceprovisioning/gen/Network/Google/Resource/AndroidDeviceProvisioning/Partners/Customers/Create.hs+172

This diff is too big to show here.

gogol-androiddeviceprovisioning/gen/Network/Google/Resource/AndroidDeviceProvisioning/Partners/Customers/List.hs+182

This diff is too big to show here.

gogol-androiddeviceprovisioning/gen/Network/Google/Resource/AndroidDeviceProvisioning/Partners/Devices/Claim.hs+169

This diff is too big to show here.

gogol-androiddeviceprovisioning/gen/Network/Google/Resource/AndroidDeviceProvisioning/Partners/Devices/ClaimAsync.hs+172

This diff is too big to show here.

gogol-androiddeviceprovisioning/gen/Network/Google/Resource/AndroidDeviceProvisioning/Partners/Devices/FindByIdentifier.hs+172

This diff is too big to show here.

gogol-androiddeviceprovisioning/gen/Network/Google/Resource/AndroidDeviceProvisioning/Partners/Devices/FindByOwner.hs+176

This diff is too big to show here.

gogol-androiddeviceprovisioning/gen/Network/Google/Resource/AndroidDeviceProvisioning/Partners/Devices/Get.hs+148

This diff is too big to show here.

gogol-androiddeviceprovisioning/gen/Network/Google/Resource/AndroidDeviceProvisioning/Partners/Devices/Metadata.hs+182

This diff is too big to show here.

gogol-androiddeviceprovisioning/gen/Network/Google/Resource/AndroidDeviceProvisioning/Partners/Devices/Unclaim.hs+167

This diff is too big to show here.

gogol-androiddeviceprovisioning/gen/Network/Google/Resource/AndroidDeviceProvisioning/Partners/Devices/UnclaimAsync.hs+172

This diff is too big to show here.

gogol-androiddeviceprovisioning/gen/Network/Google/Resource/AndroidDeviceProvisioning/Partners/Devices/UpdateMetadataAsync.hs+178

This diff is too big to show here.

gogol-androiddeviceprovisioning/gen/Network/Google/Resource/AndroidDeviceProvisioning/Partners/Vendors/Customers/List.hs+180

This diff is too big to show here.

gogol-androiddeviceprovisioning/gen/Network/Google/Resource/AndroidDeviceProvisioning/Partners/Vendors/List.hs+175

This diff is too big to show here.

gogol-androiddeviceprovisioning/gogol-androiddeviceprovisioning.cabal+72

This diff is too big to show here.

gogol-androiddeviceprovisioning/src/.gitkeep

This diff is too big to show here.

gogol-androidmanagement/LICENSE+367

This diff is too big to show here.

gogol-androidmanagement/Makefile

This diff is too big to show here.

gogol-androidmanagement/README.md+28

This diff is too big to show here.

gogol-androidmanagement/Setup.hs

This diff is too big to show here.

gogol-androidmanagement/gen/Network/Google/AndroidManagement.hs+850

This diff is too big to show here.

gogol-androidmanagement/gen/Network/Google/AndroidManagement/Types.hs+714

This diff is too big to show here.

gogol-androidmanagement/gen/Network/Google/AndroidManagement/Types/Product.hs+6346

This diff is too big to show here.

gogol-androidmanagement/gen/Network/Google/AndroidManagement/Types/Sum.hs+1478

This diff is too big to show here.

gogol-androidmanagement/gen/Network/Google/Resource/AndroidManagement/Enterprises/Applications/Get.hs+165

This diff is too big to show here.

gogol-androidmanagement/gen/Network/Google/Resource/AndroidManagement/Enterprises/Create.hs+190

This diff is too big to show here.

gogol-androidmanagement/gen/Network/Google/Resource/AndroidManagement/Enterprises/Devices/Delete.hs+165

This diff is too big to show here.

gogol-androidmanagement/gen/Network/Google/Resource/AndroidManagement/Enterprises/Devices/Get.hs+149

This diff is too big to show here.

gogol-androidmanagement/gen/Network/Google/Resource/AndroidManagement/Enterprises/Devices/IssueCommand.hs+169

This diff is too big to show here.

gogol-androidmanagement/gen/Network/Google/Resource/AndroidManagement/Enterprises/Devices/List.hs+177

This diff is too big to show here.

gogol-androidmanagement/gen/Network/Google/Resource/AndroidManagement/Enterprises/Devices/Operations/Cancel.hs+168

This diff is too big to show here.

gogol-androidmanagement/gen/Network/Google/Resource/AndroidManagement/Enterprises/Devices/Operations/Delete.hs+158

This diff is too big to show here.

gogol-androidmanagement/gen/Network/Google/Resource/AndroidManagement/Enterprises/Devices/Operations/Get.hs+156

This diff is too big to show here.

gogol-androidmanagement/gen/Network/Google/Resource/AndroidManagement/Enterprises/Devices/Operations/List.hs+208

This diff is too big to show here.

gogol-androidmanagement/gen/Network/Google/Resource/AndroidManagement/Enterprises/Devices/Patch.hs+176

This diff is too big to show here.

gogol-androidmanagement/gen/Network/Google/Resource/AndroidManagement/Enterprises/EnrollmentTokens/Create.hs+169

This diff is too big to show here.

gogol-androidmanagement/gen/Network/Google/Resource/AndroidManagement/Enterprises/EnrollmentTokens/Delete.hs+155

This diff is too big to show here.

gogol-androidmanagement/gen/Network/Google/Resource/AndroidManagement/Enterprises/Get.hs+146

This diff is too big to show here.

gogol-androidmanagement/gen/Network/Google/Resource/AndroidManagement/Enterprises/Patch.hs+173

This diff is too big to show here.

gogol-androidmanagement/gen/Network/Google/Resource/AndroidManagement/Enterprises/Policies/Delete.hs+152

This diff is too big to show here.

gogol-androidmanagement/gen/Network/Google/Resource/AndroidManagement/Enterprises/Policies/Get.hs+149

This diff is too big to show here.

gogol-androidmanagement/gen/Network/Google/Resource/AndroidManagement/Enterprises/Policies/List.hs+178

This diff is too big to show here.

gogol-androidmanagement/gen/Network/Google/Resource/AndroidManagement/Enterprises/Policies/Patch.hs+176

This diff is too big to show here.

gogol-androidmanagement/gen/Network/Google/Resource/AndroidManagement/Enterprises/WebApps/Create.hs+164

This diff is too big to show here.

gogol-androidmanagement/gen/Network/Google/Resource/AndroidManagement/Enterprises/WebApps/Delete.hs+150

This diff is too big to show here.

gogol-androidmanagement/gen/Network/Google/Resource/AndroidManagement/Enterprises/WebApps/Get.hs+150

This diff is too big to show here.

gogol-androidmanagement/gen/Network/Google/Resource/AndroidManagement/Enterprises/WebApps/List.hs+179

This diff is too big to show here.

gogol-androidmanagement/gen/Network/Google/Resource/AndroidManagement/Enterprises/WebApps/Patch.hs+177

This diff is too big to show here.

gogol-androidmanagement/gen/Network/Google/Resource/AndroidManagement/Enterprises/WebTokens/Create.hs+167

This diff is too big to show here.

gogol-androidmanagement/gen/Network/Google/Resource/AndroidManagement/SignupURLs/Create.hs+168

This diff is too big to show here.

gogol-androidmanagement/gogol-androidmanagement.cabal+72

This diff is too big to show here.

gogol-androidmanagement/src/.gitkeep

This diff is too big to show here.

gogol-appengine-taskqueue/LICENSE−373

This diff is too big to show here.

gogol-appengine-taskqueue/README.md−28

This diff is too big to show here.

gogol-appengine-taskqueue/gen/Network/Google/AppEngineTaskQueue.hs−107

This diff is too big to show here.

gogol-appengine-taskqueue/gen/Network/Google/AppEngineTaskQueue/Types.hs−63

This diff is too big to show here.

gogol-appengine-taskqueue/gen/Network/Google/AppEngineTaskQueue/Types/Product.hs−302

This diff is too big to show here.

gogol-appengine-taskqueue/gen/Network/Google/AppEngineTaskQueue/Types/Sum.hs−18

This diff is too big to show here.

gogol-appengine-taskqueue/gen/Network/Google/Resource/Taskqueue/Taskqueues/Get.hs−182

This diff is too big to show here.

gogol-appengine-taskqueue/gen/Network/Google/Resource/Taskqueue/Tasks/Delete.hs−178

This diff is too big to show here.

gogol-appengine-taskqueue/gen/Network/Google/Resource/Taskqueue/Tasks/Get.hs−178

This diff is too big to show here.

gogol-appengine-taskqueue/gen/Network/Google/Resource/Taskqueue/Tasks/Insert.hs−167

This diff is too big to show here.

gogol-appengine-taskqueue/gen/Network/Google/Resource/Taskqueue/Tasks/Lease.hs−217

This diff is too big to show here.

gogol-appengine-taskqueue/gen/Network/Google/Resource/Taskqueue/Tasks/List.hs−167

This diff is too big to show here.

gogol-appengine-taskqueue/gen/Network/Google/Resource/Taskqueue/Tasks/Patch.hs−194

This diff is too big to show here.

gogol-appengine-taskqueue/gen/Network/Google/Resource/Taskqueue/Tasks/Update.hs−192

This diff is too big to show here.

gogol-appengine-taskqueue/gogol-appengine-taskqueue.cabal−50

This diff is too big to show here.

gogol-appengine/LICENSE−6

This diff is too big to show here.

gogol-appengine/README.md+4−4

This diff is too big to show here.

gogol-appengine/gen/Network/Google/AppEngine.hs+710−149

This diff is too big to show here.

gogol-appengine/gen/Network/Google/AppEngine/Types.hs+543−111

This diff is too big to show here.

gogol-appengine/gen/Network/Google/AppEngine/Types/Product.hs+5392−1813

This diff is too big to show here.

gogol-appengine/gen/Network/Google/AppEngine/Types/Sum.hs+750−2

This diff is too big to show here.

gogol-appengine/gen/Network/Google/Resource/AppEngine/Apps/AuthorizedCertificates/Create.hs+171

This diff is too big to show here.

gogol-appengine/gen/Network/Google/Resource/AppEngine/Apps/AuthorizedCertificates/Delete.hs+171

This diff is too big to show here.

gogol-appengine/gen/Network/Google/Resource/AppEngine/Apps/AuthorizedCertificates/Get.hs+185

This diff is too big to show here.

gogol-appengine/gen/Network/Google/Resource/AppEngine/Apps/AuthorizedCertificates/List.hs+196

This diff is too big to show here.

gogol-appengine/gen/Network/Google/Resource/AppEngine/Apps/AuthorizedCertificates/Patch.hs+208

This diff is too big to show here.

gogol-appengine/gen/Network/Google/Resource/AppEngine/Apps/AuthorizedDomains/List.hs+184

This diff is too big to show here.

gogol-appengine/gen/Network/Google/Resource/AppEngine/Apps/Create.hs+160

This diff is too big to show here.

gogol-appengine/gen/Network/Google/Resource/AppEngine/Apps/DomainMAppings/Create.hs+186

This diff is too big to show here.

gogol-appengine/gen/Network/Google/Resource/AppEngine/Apps/DomainMAppings/Delete.hs+172

This diff is too big to show here.

gogol-appengine/gen/Network/Google/Resource/AppEngine/Apps/DomainMAppings/Get.hs+170

This diff is too big to show here.

gogol-appengine/gen/Network/Google/Resource/AppEngine/Apps/DomainMAppings/List.hs+185

This diff is too big to show here.

gogol-appengine/gen/Network/Google/Resource/AppEngine/Apps/DomainMAppings/Patch.hs+201

This diff is too big to show here.

gogol-appengine/gen/Network/Google/Resource/AppEngine/Apps/Firewall/IngressRules/BatchUpdate.hs+183

This diff is too big to show here.

gogol-appengine/gen/Network/Google/Resource/AppEngine/Apps/Firewall/IngressRules/Create.hs+171

This diff is too big to show here.

gogol-appengine/gen/Network/Google/Resource/AppEngine/Apps/Firewall/IngressRules/Delete.hs+171

This diff is too big to show here.

gogol-appengine/gen/Network/Google/Resource/AppEngine/Apps/Firewall/IngressRules/Get.hs+172

This diff is too big to show here.

gogol-appengine/gen/Network/Google/Resource/AppEngine/Apps/Firewall/IngressRules/List.hs+202

This diff is too big to show here.

gogol-appengine/gen/Network/Google/Resource/AppEngine/Apps/Firewall/IngressRules/Patch.hs+198

This diff is too big to show here.

gogol-appengine/gen/Network/Google/Resource/AppEngine/Apps/Get.hs+54−142

This diff is too big to show here.

gogol-appengine/gen/Network/Google/Resource/AppEngine/Apps/Locations/Get.hs+167

This diff is too big to show here.

gogol-appengine/gen/Network/Google/Resource/AppEngine/Apps/Locations/List.hs+192

This diff is too big to show here.

gogol-appengine/gen/Network/Google/Resource/AppEngine/Apps/Modules/Delete.hs−241

This diff is too big to show here.

gogol-appengine/gen/Network/Google/Resource/AppEngine/Apps/Modules/Get.hs−240

This diff is too big to show here.

gogol-appengine/gen/Network/Google/Resource/AppEngine/Apps/Modules/List.hs−252

This diff is too big to show here.

gogol-appengine/gen/Network/Google/Resource/AppEngine/Apps/Modules/Patch.hs−266

This diff is too big to show here.

gogol-appengine/gen/Network/Google/Resource/AppEngine/Apps/Modules/Versions/Create.hs−246

This diff is too big to show here.

gogol-appengine/gen/Network/Google/Resource/AppEngine/Apps/Modules/Versions/Delete.hs−260

This diff is too big to show here.

gogol-appengine/gen/Network/Google/Resource/AppEngine/Apps/Modules/Versions/Get.hs−270

This diff is too big to show here.

gogol-appengine/gen/Network/Google/Resource/AppEngine/Apps/Modules/Versions/List.hs−283

This diff is too big to show here.

gogol-appengine/gen/Network/Google/Resource/AppEngine/Apps/Operations/Get.hs+51−125

This diff is too big to show here.

gogol-appengine/gen/Network/Google/Resource/AppEngine/Apps/Operations/List.hs+76−141

This diff is too big to show here.

gogol-appengine/gen/Network/Google/Resource/AppEngine/Apps/Patch.hs+180

This diff is too big to show here.

gogol-appengine/gen/Network/Google/Resource/AppEngine/Apps/Repair.hs+180

This diff is too big to show here.

gogol-appengine/gen/Network/Google/Resource/AppEngine/Apps/Services/Delete.hs+166

This diff is too big to show here.

gogol-appengine/gen/Network/Google/Resource/AppEngine/Apps/Services/Get.hs+168

This diff is too big to show here.

gogol-appengine/gen/Network/Google/Resource/AppEngine/Apps/Services/List.hs+180

This diff is too big to show here.

gogol-appengine/gen/Network/Google/Resource/AppEngine/Apps/Services/Patch.hs+218

This diff is too big to show here.

gogol-appengine/gen/Network/Google/Resource/AppEngine/Apps/Services/Versions/Create.hs+182

This diff is too big to show here.

gogol-appengine/gen/Network/Google/Resource/AppEngine/Apps/Services/Versions/Delete.hs+184

This diff is too big to show here.

gogol-appengine/gen/Network/Google/Resource/AppEngine/Apps/Services/Versions/Get.hs+197

This diff is too big to show here.

gogol-appengine/gen/Network/Google/Resource/AppEngine/Apps/Services/Versions/Instances/Debug.hs+228

This diff is too big to show here.

gogol-appengine/gen/Network/Google/Resource/AppEngine/Apps/Services/Versions/Instances/Delete.hs+195

This diff is too big to show here.

gogol-appengine/gen/Network/Google/Resource/AppEngine/Apps/Services/Versions/Instances/Get.hs+204

This diff is too big to show here.

gogol-appengine/gen/Network/Google/Resource/AppEngine/Apps/Services/Versions/Instances/List.hs+222

This diff is too big to show here.

gogol-appengine/gen/Network/Google/Resource/AppEngine/Apps/Services/Versions/List.hs+209

This diff is too big to show here.

gogol-appengine/gen/Network/Google/Resource/AppEngine/Apps/Services/Versions/Patch.hs+268

This diff is too big to show here.

gogol-appengine/gogol-appengine.cabal+44−15

This diff is too big to show here.

gogol-apps-activity/LICENSE−6

This diff is too big to show here.

gogol-apps-activity/README.md+4−4

This diff is too big to show here.

gogol-apps-activity/gen/Network/Google/AppsActivity.hs+43−24

This diff is too big to show here.

gogol-apps-activity/gen/Network/Google/AppsActivity/Types.hs+42−16

This diff is too big to show here.

gogol-apps-activity/gen/Network/Google/AppsActivity/Types/Product.hs+233−174

This diff is too big to show here.

gogol-apps-activity/gen/Network/Google/AppsActivity/Types/Sum.hs+231−2

This diff is too big to show here.

gogol-apps-activity/gen/Network/Google/Resource/AppsActivity/Activities/List.hs+63−124

This diff is too big to show here.

gogol-apps-activity/gogol-apps-activity.cabal+8−5

This diff is too big to show here.

gogol-apps-calendar/LICENSE−6

This diff is too big to show here.

gogol-apps-calendar/README.md+4−4

This diff is too big to show here.

gogol-apps-calendar/gen/Network/Google/AppsCalendar.hs+385−150

This diff is too big to show here.

gogol-apps-calendar/gen/Network/Google/AppsCalendar/Types.hs+294−66

This diff is too big to show here.

gogol-apps-calendar/gen/Network/Google/AppsCalendar/Types/Product.hs+2264−606

This diff is too big to show here.

gogol-apps-calendar/gen/Network/Google/AppsCalendar/Types/Sum.hs+366−2

This diff is too big to show here.

gogol-apps-calendar/gen/Network/Google/Resource/Calendar/ACL/Delete.hs+45−111

This diff is too big to show here.

gogol-apps-calendar/gen/Network/Google/Resource/Calendar/ACL/Get.hs+45−111

This diff is too big to show here.

gogol-apps-calendar/gen/Network/Google/Resource/Calendar/ACL/Insert.hs+67−103

This diff is too big to show here.

gogol-apps-calendar/gen/Network/Google/Resource/Calendar/ACL/List.hs+52−116

This diff is too big to show here.

gogol-apps-calendar/gen/Network/Google/Resource/Calendar/ACL/Patch.hs+72−108

This diff is too big to show here.

gogol-apps-calendar/gen/Network/Google/Resource/Calendar/ACL/Update.hs+72−107

This diff is too big to show here.

gogol-apps-calendar/gen/Network/Google/Resource/Calendar/ACL/Watch.hs+65−115

This diff is too big to show here.

gogol-apps-calendar/gen/Network/Google/Resource/Calendar/CalendarList/Delete.hs+41−111

This diff is too big to show here.

gogol-apps-calendar/gen/Network/Google/Resource/Calendar/CalendarList/Get.hs+43−111

This diff is too big to show here.

gogol-apps-calendar/gen/Network/Google/Resource/Calendar/CalendarList/Insert.hs+51−110

This diff is too big to show here.

gogol-apps-calendar/gen/Network/Google/Resource/Calendar/CalendarList/List.hs+58−124

This diff is too big to show here.

gogol-apps-calendar/gen/Network/Google/Resource/Calendar/CalendarList/Patch.hs+59−115

This diff is too big to show here.

gogol-apps-calendar/gen/Network/Google/Resource/Calendar/CalendarList/Update.hs+57−113

This diff is too big to show here.

gogol-apps-calendar/gen/Network/Google/Resource/Calendar/CalendarList/Watch.hs+72−124

This diff is too big to show here.

gogol-apps-calendar/gen/Network/Google/Resource/Calendar/Calendars/Clear.hs+36−105

This diff is too big to show here.

gogol-apps-calendar/gen/Network/Google/Resource/Calendar/Calendars/Delete.hs+36−103

This diff is too big to show here.

gogol-apps-calendar/gen/Network/Google/Resource/Calendar/Calendars/Get.hs+36−103

This diff is too big to show here.

gogol-apps-calendar/gen/Network/Google/Resource/Calendar/Calendars/Insert.hs+45−99

This diff is too big to show here.

gogol-apps-calendar/gen/Network/Google/Resource/Calendar/Calendars/Patch.hs+47−103

This diff is too big to show here.

gogol-apps-calendar/gen/Network/Google/Resource/Calendar/Calendars/Update.hs+48−103

This diff is too big to show here.

gogol-apps-calendar/gen/Network/Google/Resource/Calendar/Channels/Stop.hs+49−98

This diff is too big to show here.

gogol-apps-calendar/gen/Network/Google/Resource/Calendar/Colors/Get.hs+31−95

This diff is too big to show here.

gogol-apps-calendar/gen/Network/Google/Resource/Calendar/Events/Delete.hs+60−110

This diff is too big to show here.

gogol-apps-calendar/gen/Network/Google/Resource/Calendar/Events/Get.hs+53−114

This diff is too big to show here.

gogol-apps-calendar/gen/Network/Google/Resource/Calendar/Events/Import.hs+84−121

This diff is too big to show here.

gogol-apps-calendar/gen/Network/Google/Resource/Calendar/Events/Insert.hs+124−139

This diff is too big to show here.

gogol-apps-calendar/gen/Network/Google/Resource/Calendar/Events/Instances.hs+79−134

This diff is too big to show here.

gogol-apps-calendar/gen/Network/Google/Resource/Calendar/Events/List.hs+129−172

This diff is too big to show here.

gogol-apps-calendar/gen/Network/Google/Resource/Calendar/Events/Move.hs+64−112

This diff is too big to show here.

gogol-apps-calendar/gen/Network/Google/Resource/Calendar/Events/Patch.hs+104−119

This diff is too big to show here.

gogol-apps-calendar/gen/Network/Google/Resource/Calendar/Events/QuickAdd.hs+63−115

This diff is too big to show here.

gogol-apps-calendar/gen/Network/Google/Resource/Calendar/Events/Update.hs+104−120

This diff is too big to show here.

gogol-apps-calendar/gen/Network/Google/Resource/Calendar/Events/Watch.hs+145−175

This diff is too big to show here.

gogol-apps-calendar/gen/Network/Google/Resource/Calendar/FreeBusy/Query.hs+87

This diff is too big to show here.

gogol-apps-calendar/gen/Network/Google/Resource/Calendar/Freebusy/Query.hs−139

This diff is too big to show here.

gogol-apps-calendar/gen/Network/Google/Resource/Calendar/Settings/Get.hs+39−103

This diff is too big to show here.

gogol-apps-calendar/gen/Network/Google/Resource/Calendar/Settings/List.hs+50−115

This diff is too big to show here.

gogol-apps-calendar/gen/Network/Google/Resource/Calendar/Settings/Watch.hs+63−112

This diff is too big to show here.

gogol-apps-calendar/gogol-apps-calendar.cabal+10−7

This diff is too big to show here.

gogol-apps-licensing/LICENSE−6

This diff is too big to show here.

gogol-apps-licensing/README.md+4−4

This diff is too big to show here.

gogol-apps-licensing/gen/Network/Google/AppsLicensing.hs+40−30

This diff is too big to show here.

gogol-apps-licensing/gen/Network/Google/AppsLicensing/Types.hs+20−10

This diff is too big to show here.

gogol-apps-licensing/gen/Network/Google/AppsLicensing/Types/Product.hs+72−38

This diff is too big to show here.

gogol-apps-licensing/gen/Network/Google/AppsLicensing/Types/Sum.hs+3−2

This diff is too big to show here.

gogol-apps-licensing/gen/Network/Google/Resource/Licensing/LicenseAssignments/Delete.hs+54−121

This diff is too big to show here.

gogol-apps-licensing/gen/Network/Google/Resource/Licensing/LicenseAssignments/Get.hs+55−122

This diff is too big to show here.

gogol-apps-licensing/gen/Network/Google/Resource/Licensing/LicenseAssignments/Insert.hs+61−115

This diff is too big to show here.

gogol-apps-licensing/gen/Network/Google/Resource/Licensing/LicenseAssignments/ListForProduct.hs+55−120

This diff is too big to show here.

gogol-apps-licensing/gen/Network/Google/Resource/Licensing/LicenseAssignments/ListForProductAndSKU.hs+158

This diff is too big to show here.

gogol-apps-licensing/gen/Network/Google/Resource/Licensing/LicenseAssignments/ListForProductAndSku.hs−227

This diff is too big to show here.

gogol-apps-licensing/gen/Network/Google/Resource/Licensing/LicenseAssignments/Patch.hs+67−121

This diff is too big to show here.

gogol-apps-licensing/gen/Network/Google/Resource/Licensing/LicenseAssignments/Update.hs+67−122

This diff is too big to show here.

gogol-apps-licensing/gogol-apps-licensing.cabal+10−7

This diff is too big to show here.

gogol-apps-reseller/LICENSE−6

This diff is too big to show here.

gogol-apps-reseller/README.md+4−4

This diff is too big to show here.

gogol-apps-reseller/gen/Network/Google/AppsReseller.hs+145−71

This diff is too big to show here.

gogol-apps-reseller/gen/Network/Google/AppsReseller/Types.hs+95−38

This diff is too big to show here.

gogol-apps-reseller/gen/Network/Google/AppsReseller/Types/Product.hs+858−325

This diff is too big to show here.

gogol-apps-reseller/gen/Network/Google/AppsReseller/Types/Sum.hs+38−2

This diff is too big to show here.

gogol-apps-reseller/gen/Network/Google/Resource/Reseller/Customers/Get.hs+43−106

This diff is too big to show here.

gogol-apps-reseller/gen/Network/Google/Resource/Reseller/Customers/Insert.hs+58−109

This diff is too big to show here.

gogol-apps-reseller/gen/Network/Google/Resource/Reseller/Customers/Patch.hs+55−107

This diff is too big to show here.

gogol-apps-reseller/gen/Network/Google/Resource/Reseller/Customers/Update.hs+54−107

This diff is too big to show here.

gogol-apps-reseller/gen/Network/Google/Resource/Reseller/Resellernotify/Getwatchdetails.hs+79

This diff is too big to show here.

gogol-apps-reseller/gen/Network/Google/Resource/Reseller/Resellernotify/Register.hs+92

This diff is too big to show here.

gogol-apps-reseller/gen/Network/Google/Resource/Reseller/Resellernotify/Unregister.hs+92

This diff is too big to show here.

gogol-apps-reseller/gen/Network/Google/Resource/Reseller/Subscriptions/Activate.hs+53−113

This diff is too big to show here.

gogol-apps-reseller/gen/Network/Google/Resource/Reseller/Subscriptions/ChangePlan.hs+70−113

This diff is too big to show here.

gogol-apps-reseller/gen/Network/Google/Resource/Reseller/Subscriptions/ChangeRenewalSettings.hs+70−115

This diff is too big to show here.

gogol-apps-reseller/gen/Network/Google/Resource/Reseller/Subscriptions/ChangeSeats.hs+65−114

This diff is too big to show here.

gogol-apps-reseller/gen/Network/Google/Resource/Reseller/Subscriptions/Delete.hs+62−117

This diff is too big to show here.

gogol-apps-reseller/gen/Network/Google/Resource/Reseller/Subscriptions/Get.hs+55−115

This diff is too big to show here.

gogol-apps-reseller/gen/Network/Google/Resource/Reseller/Subscriptions/Insert.hs+66−111

This diff is too big to show here.

gogol-apps-reseller/gen/Network/Google/Resource/Reseller/Subscriptions/List.hs+78−126

This diff is too big to show here.

gogol-apps-reseller/gen/Network/Google/Resource/Reseller/Subscriptions/StartPaidService.hs+59−118

This diff is too big to show here.

gogol-apps-reseller/gen/Network/Google/Resource/Reseller/Subscriptions/Suspend.hs+70−128

This diff is too big to show here.

gogol-apps-reseller/gogol-apps-reseller.cabal+16−6

This diff is too big to show here.

gogol-apps-tasks/LICENSE−6

This diff is too big to show here.

gogol-apps-tasks/README.md+4−4

This diff is too big to show here.

gogol-apps-tasks/gen/Network/Google/AppsTasks.hs+70−48

This diff is too big to show here.

gogol-apps-tasks/gen/Network/Google/AppsTasks/Types.hs+29−9

This diff is too big to show here.

gogol-apps-tasks/gen/Network/Google/AppsTasks/Types/Product.hs+112−33

This diff is too big to show here.

gogol-apps-tasks/gen/Network/Google/AppsTasks/Types/Sum.hs+3−2

This diff is too big to show here.

gogol-apps-tasks/gen/Network/Google/Resource/Tasks/TaskLists/Delete.hs+88

This diff is too big to show here.

gogol-apps-tasks/gen/Network/Google/Resource/Tasks/TaskLists/Get.hs+88

This diff is too big to show here.

gogol-apps-tasks/gen/Network/Google/Resource/Tasks/TaskLists/Insert.hs+90

This diff is too big to show here.

gogol-apps-tasks/gen/Network/Google/Resource/Tasks/TaskLists/List.hs+102

This diff is too big to show here.

gogol-apps-tasks/gen/Network/Google/Resource/Tasks/TaskLists/Patch.hs+102

This diff is too big to show here.

gogol-apps-tasks/gen/Network/Google/Resource/Tasks/TaskLists/Update.hs+101

This diff is too big to show here.

gogol-apps-tasks/gen/Network/Google/Resource/Tasks/Tasklists/Delete.hs−158

This diff is too big to show here.

gogol-apps-tasks/gen/Network/Google/Resource/Tasks/Tasklists/Get.hs−157

This diff is too big to show here.

gogol-apps-tasks/gen/Network/Google/Resource/Tasks/Tasklists/Insert.hs−141

This diff is too big to show here.

gogol-apps-tasks/gen/Network/Google/Resource/Tasks/Tasklists/List.hs−171

This diff is too big to show here.

gogol-apps-tasks/gen/Network/Google/Resource/Tasks/Tasklists/Patch.hs−160

This diff is too big to show here.

gogol-apps-tasks/gen/Network/Google/Resource/Tasks/Tasklists/Update.hs−158

This diff is too big to show here.

gogol-apps-tasks/gen/Network/Google/Resource/Tasks/Tasks/Clear.hs+41−106

This diff is too big to show here.

gogol-apps-tasks/gen/Network/Google/Resource/Tasks/Tasks/Delete.hs+46−111

This diff is too big to show here.

gogol-apps-tasks/gen/Network/Google/Resource/Tasks/Tasks/Get.hs+47−111

This diff is too big to show here.

gogol-apps-tasks/gen/Network/Google/Resource/Tasks/Tasks/Insert.hs+61−112

This diff is too big to show here.

gogol-apps-tasks/gen/Network/Google/Resource/Tasks/Tasks/List.hs+71−132

This diff is too big to show here.

gogol-apps-tasks/gen/Network/Google/Resource/Tasks/Tasks/Move.hs+56−120

This diff is too big to show here.

gogol-apps-tasks/gen/Network/Google/Resource/Tasks/Tasks/Patch.hs+56−109

This diff is too big to show here.

gogol-apps-tasks/gen/Network/Google/Resource/Tasks/Tasks/Update.hs+56−109

This diff is too big to show here.

gogol-apps-tasks/gogol-apps-tasks.cabal+15−12

This diff is too big to show here.

gogol-appstate/LICENSE+367

This diff is too big to show here.

gogol-appstate/Makefile

This diff is too big to show here.

gogol-appstate/README.md+28

This diff is too big to show here.

gogol-appstate/Setup.hs

This diff is too big to show here.

gogol-appstate/gen/Network/Google/AppState.hs+95

This diff is too big to show here.

gogol-appstate/gen/Network/Google/AppState/Types.hs+66

This diff is too big to show here.

gogol-appstate/gen/Network/Google/AppState/Types/Product.hs+274

This diff is too big to show here.

gogol-appstate/gen/Network/Google/AppState/Types/Sum.hs+19

This diff is too big to show here.

gogol-appstate/gen/Network/Google/Resource/AppState/States/Clear.hs+106

This diff is too big to show here.

gogol-appstate/gen/Network/Google/Resource/AppState/States/Delete.hs+94

This diff is too big to show here.

gogol-appstate/gen/Network/Google/Resource/AppState/States/Get.hs+88

This diff is too big to show here.

gogol-appstate/gen/Network/Google/Resource/AppState/States/List.hs+86

This diff is too big to show here.

gogol-appstate/gen/Network/Google/Resource/AppState/States/Update.hs+124

This diff is too big to show here.

gogol-appstate/gogol-appstate.cabal+50

This diff is too big to show here.

gogol-appstate/src/.gitkeep

This diff is too big to show here.

gogol-bigquery/LICENSE−6

This diff is too big to show here.

gogol-bigquery/README.md+4−4

This diff is too big to show here.

gogol-bigquery/gen/Network/Google/BigQuery.hs+610−159

This diff is too big to show here.

gogol-bigquery/gen/Network/Google/BigQuery/Types.hs+562−103

This diff is too big to show here.

gogol-bigquery/gen/Network/Google/BigQuery/Types/Product.hs+5758−1144

This diff is too big to show here.

gogol-bigquery/gen/Network/Google/BigQuery/Types/Sum.hs+66−2

This diff is too big to show here.

gogol-bigquery/gen/Network/Google/Resource/BigQuery/DataSets/Delete.hs+123

This diff is too big to show here.

gogol-bigquery/gen/Network/Google/Resource/BigQuery/DataSets/Get.hs+101

This diff is too big to show here.

gogol-bigquery/gen/Network/Google/Resource/BigQuery/DataSets/Insert.hs+100

This diff is too big to show here.

gogol-bigquery/gen/Network/Google/Resource/BigQuery/DataSets/List.hs+145

This diff is too big to show here.

gogol-bigquery/gen/Network/Google/Resource/BigQuery/DataSets/Patch.hs+122

This diff is too big to show here.

gogol-bigquery/gen/Network/Google/Resource/BigQuery/DataSets/Update.hs+120

This diff is too big to show here.

gogol-bigquery/gen/Network/Google/Resource/BigQuery/Datasets/Delete.hs−187

This diff is too big to show here.

gogol-bigquery/gen/Network/Google/Resource/BigQuery/Datasets/Get.hs−165

This diff is too big to show here.

gogol-bigquery/gen/Network/Google/Resource/BigQuery/Datasets/Insert.hs−154

This diff is too big to show here.

gogol-bigquery/gen/Network/Google/Resource/BigQuery/Datasets/List.hs−192

This diff is too big to show here.

gogol-bigquery/gen/Network/Google/Resource/BigQuery/Datasets/Patch.hs−172

This diff is too big to show here.

gogol-bigquery/gen/Network/Google/Resource/BigQuery/Datasets/Update.hs−171

This diff is too big to show here.

gogol-bigquery/gen/Network/Google/Resource/BigQuery/Jobs/Cancel.hs+57−108

This diff is too big to show here.

gogol-bigquery/gen/Network/Google/Resource/BigQuery/Jobs/Get.hs+55−106

This diff is too big to show here.

gogol-bigquery/gen/Network/Google/Resource/BigQuery/Jobs/GetQueryResults.hs+78−130

This diff is too big to show here.

gogol-bigquery/gen/Network/Google/Resource/BigQuery/Jobs/Insert.hs+75−101

This diff is too big to show here.

gogol-bigquery/gen/Network/Google/Resource/BigQuery/Jobs/List.hs+88−115

This diff is too big to show here.

gogol-bigquery/gen/Network/Google/Resource/BigQuery/Jobs/Query.hs+50−100

This diff is too big to show here.

gogol-bigquery/gen/Network/Google/Resource/BigQuery/Projects/GetServiceAccount.hs+96

This diff is too big to show here.

gogol-bigquery/gen/Network/Google/Resource/BigQuery/Projects/List.hs+42−108

This diff is too big to show here.

gogol-bigquery/gen/Network/Google/Resource/BigQuery/TableData/InsertAll.hs+139

This diff is too big to show here.

gogol-bigquery/gen/Network/Google/Resource/BigQuery/TableData/List.hs+174

This diff is too big to show here.

gogol-bigquery/gen/Network/Google/Resource/BigQuery/Tabledata/InsertAll.hs−190

This diff is too big to show here.

gogol-bigquery/gen/Network/Google/Resource/BigQuery/Tabledata/List.hs−218

This diff is too big to show here.

gogol-bigquery/gen/Network/Google/Resource/BigQuery/Tables/Delete.hs+54−117

This diff is too big to show here.

gogol-bigquery/gen/Network/Google/Resource/BigQuery/Tables/Get.hs+67−114

This diff is too big to show here.

gogol-bigquery/gen/Network/Google/Resource/BigQuery/Tables/Insert.hs+60−110

This diff is too big to show here.

gogol-bigquery/gen/Network/Google/Resource/BigQuery/Tables/List.hs+59−120

This diff is too big to show here.

gogol-bigquery/gen/Network/Google/Resource/BigQuery/Tables/Patch.hs+65−114

This diff is too big to show here.

gogol-bigquery/gen/Network/Google/Resource/BigQuery/Tables/Update.hs+65−115

This diff is too big to show here.

gogol-bigquery/gogol-bigquery.cabal+17−13

This diff is too big to show here.

gogol-bigquerydatatransfer/LICENSE+367

This diff is too big to show here.

gogol-bigquerydatatransfer/Makefile+1

This diff is too big to show here.

gogol-bigquerydatatransfer/README.md+28

This diff is too big to show here.

gogol-bigquerydatatransfer/Setup.hs+2

This diff is too big to show here.

gogol-bigquerydatatransfer/gen/Network/Google/BigQueryDataTransfer.hs+428

This diff is too big to show here.

gogol-bigquerydatatransfer/gen/Network/Google/BigQueryDataTransfer/Types.hs+275

This diff is too big to show here.

gogol-bigquerydatatransfer/gen/Network/Google/BigQueryDataTransfer/Types/Product.hs+2015

This diff is too big to show here.

gogol-bigquerydatatransfer/gen/Network/Google/BigQueryDataTransfer/Types/Sum.hs+354

This diff is too big to show here.

gogol-bigquerydatatransfer/gen/Network/Google/Resource/BigQueryDataTransfer/Projects/DataSources/CheckValidCreds.hs+181

This diff is too big to show here.

gogol-bigquerydatatransfer/gen/Network/Google/Resource/BigQueryDataTransfer/Projects/DataSources/Get.hs+154

This diff is too big to show here.

gogol-bigquerydatatransfer/gen/Network/Google/Resource/BigQueryDataTransfer/Projects/DataSources/List.hs+188

This diff is too big to show here.

gogol-bigquerydatatransfer/gen/Network/Google/Resource/BigQueryDataTransfer/Projects/Locations/DataSources/CheckValidCreds.hs+187

This diff is too big to show here.

gogol-bigquerydatatransfer/gen/Network/Google/Resource/BigQueryDataTransfer/Projects/Locations/DataSources/Get.hs+159

This diff is too big to show here.

gogol-bigquerydatatransfer/gen/Network/Google/Resource/BigQueryDataTransfer/Projects/Locations/DataSources/List.hs+193

This diff is too big to show here.

gogol-bigquerydatatransfer/gen/Network/Google/Resource/BigQueryDataTransfer/Projects/Locations/Get.hs+150

This diff is too big to show here.

gogol-bigquerydatatransfer/gen/Network/Google/Resource/BigQueryDataTransfer/Projects/Locations/List.hs+189

This diff is too big to show here.

gogol-bigquerydatatransfer/gen/Network/Google/Resource/BigQueryDataTransfer/Projects/Locations/TransferConfigs/Create.hs+219

This diff is too big to show here.

gogol-bigquerydatatransfer/gen/Network/Google/Resource/BigQueryDataTransfer/Projects/Locations/TransferConfigs/Delete.hs+160

This diff is too big to show here.

gogol-bigquerydatatransfer/gen/Network/Google/Resource/BigQueryDataTransfer/Projects/Locations/TransferConfigs/Get.hs+160

This diff is too big to show here.

gogol-bigquerydatatransfer/gen/Network/Google/Resource/BigQueryDataTransfer/Projects/Locations/TransferConfigs/List.hs+208

This diff is too big to show here.

gogol-bigquerydatatransfer/gen/Network/Google/Resource/BigQueryDataTransfer/Projects/Locations/TransferConfigs/Patch.hs+235

This diff is too big to show here.

gogol-bigquerydatatransfer/gen/Network/Google/Resource/BigQueryDataTransfer/Projects/Locations/TransferConfigs/Runs/Delete.hs+162

This diff is too big to show here.

gogol-bigquerydatatransfer/gen/Network/Google/Resource/BigQueryDataTransfer/Projects/Locations/TransferConfigs/Runs/Get.hs+161

This diff is too big to show here.

gogol-bigquerydatatransfer/gen/Network/Google/Resource/BigQueryDataTransfer/Projects/Locations/TransferConfigs/Runs/List.hs+224

This diff is too big to show here.

gogol-bigquerydatatransfer/gen/Network/Google/Resource/BigQueryDataTransfer/Projects/Locations/TransferConfigs/Runs/TransferLogs/List.hs+216

This diff is too big to show here.

gogol-bigquerydatatransfer/gen/Network/Google/Resource/BigQueryDataTransfer/Projects/Locations/TransferConfigs/ScheduleRuns.hs+183

This diff is too big to show here.

gogol-bigquerydatatransfer/gen/Network/Google/Resource/BigQueryDataTransfer/Projects/Locations/TransferConfigs/StartManualRuns.hs+186

This diff is too big to show here.

gogol-bigquerydatatransfer/gen/Network/Google/Resource/BigQueryDataTransfer/Projects/TransferConfigs/Create.hs+216

This diff is too big to show here.

gogol-bigquerydatatransfer/gen/Network/Google/Resource/BigQueryDataTransfer/Projects/TransferConfigs/Delete.hs+155

This diff is too big to show here.

gogol-bigquerydatatransfer/gen/Network/Google/Resource/BigQueryDataTransfer/Projects/TransferConfigs/Get.hs+154

This diff is too big to show here.

gogol-bigquerydatatransfer/gen/Network/Google/Resource/BigQueryDataTransfer/Projects/TransferConfigs/List.hs+203

This diff is too big to show here.

gogol-bigquerydatatransfer/gen/Network/Google/Resource/BigQueryDataTransfer/Projects/TransferConfigs/Patch.hs+229

This diff is too big to show here.

gogol-bigquerydatatransfer/gen/Network/Google/Resource/BigQueryDataTransfer/Projects/TransferConfigs/Runs/Delete.hs+156

This diff is too big to show here.

gogol-bigquerydatatransfer/gen/Network/Google/Resource/BigQueryDataTransfer/Projects/TransferConfigs/Runs/Get.hs+156

This diff is too big to show here.

gogol-bigquerydatatransfer/gen/Network/Google/Resource/BigQueryDataTransfer/Projects/TransferConfigs/Runs/List.hs+220

This diff is too big to show here.

gogol-bigquerydatatransfer/gen/Network/Google/Resource/BigQueryDataTransfer/Projects/TransferConfigs/Runs/TransferLogs/List.hs+214

This diff is too big to show here.

gogol-bigquerydatatransfer/gen/Network/Google/Resource/BigQueryDataTransfer/Projects/TransferConfigs/ScheduleRuns.hs+178

This diff is too big to show here.

gogol-bigquerydatatransfer/gen/Network/Google/Resource/BigQueryDataTransfer/Projects/TransferConfigs/StartManualRuns.hs+179

This diff is too big to show here.

gogol-bigquerydatatransfer/gogol-bigquerydatatransfer.cabal+76

This diff is too big to show here.

gogol-bigquerydatatransfer/src/.gitkeep

This diff is too big to show here.

gogol-bigtableadmin/LICENSE+367

This diff is too big to show here.

gogol-bigtableadmin/Makefile+1

This diff is too big to show here.

gogol-bigtableadmin/README.md+28

This diff is too big to show here.

gogol-bigtableadmin/Setup.hs+2

This diff is too big to show here.

gogol-bigtableadmin/gen/Network/Google/BigtableAdmin.hs+583

This diff is too big to show here.

gogol-bigtableadmin/gen/Network/Google/BigtableAdmin/Types.hs+437

This diff is too big to show here.

gogol-bigtableadmin/gen/Network/Google/BigtableAdmin/Types/Product.hs+3097

This diff is too big to show here.

gogol-bigtableadmin/gen/Network/Google/BigtableAdmin/Types/Sum.hs+379

This diff is too big to show here.

gogol-bigtableadmin/gen/Network/Google/Resource/BigtableAdmin/Operations/Cancel.hs+168

This diff is too big to show here.

gogol-bigtableadmin/gen/Network/Google/Resource/BigtableAdmin/Operations/Delete.hs+158

This diff is too big to show here.

gogol-bigtableadmin/gen/Network/Google/Resource/BigtableAdmin/Operations/Get.hs+156

This diff is too big to show here.

gogol-bigtableadmin/gen/Network/Google/Resource/BigtableAdmin/Operations/Projects/Operations/List.hs+217

This diff is too big to show here.

gogol-bigtableadmin/gen/Network/Google/Resource/BigtableAdmin/Projects/Instances/AppProFiles/Create.hs+204

This diff is too big to show here.

gogol-bigtableadmin/gen/Network/Google/Resource/BigtableAdmin/Projects/Instances/AppProFiles/Delete.hs+173

This diff is too big to show here.

gogol-bigtableadmin/gen/Network/Google/Resource/BigtableAdmin/Projects/Instances/AppProFiles/Get.hs+160

This diff is too big to show here.

gogol-bigtableadmin/gen/Network/Google/Resource/BigtableAdmin/Projects/Instances/AppProFiles/List.hs+192

This diff is too big to show here.

gogol-bigtableadmin/gen/Network/Google/Resource/BigtableAdmin/Projects/Instances/AppProFiles/Patch.hs+201

This diff is too big to show here.

gogol-bigtableadmin/gen/Network/Google/Resource/BigtableAdmin/Projects/Instances/Clusters/Create.hs+188

This diff is too big to show here.

gogol-bigtableadmin/gen/Network/Google/Resource/BigtableAdmin/Projects/Instances/Clusters/Delete.hs+158

This diff is too big to show here.

gogol-bigtableadmin/gen/Network/Google/Resource/BigtableAdmin/Projects/Instances/Clusters/Get.hs+157

This diff is too big to show here.

gogol-bigtableadmin/gen/Network/Google/Resource/BigtableAdmin/Projects/Instances/Clusters/List.hs+177

This diff is too big to show here.

gogol-bigtableadmin/gen/Network/Google/Resource/BigtableAdmin/Projects/Instances/Clusters/Update.hs+171

This diff is too big to show here.

gogol-bigtableadmin/gen/Network/Google/Resource/BigtableAdmin/Projects/Instances/Create.hs+170

This diff is too big to show here.

gogol-bigtableadmin/gen/Network/Google/Resource/BigtableAdmin/Projects/Instances/Delete.hs+154

This diff is too big to show here.

gogol-bigtableadmin/gen/Network/Google/Resource/BigtableAdmin/Projects/Instances/Get.hs+155

This diff is too big to show here.

gogol-bigtableadmin/gen/Network/Google/Resource/BigtableAdmin/Projects/Instances/GetIAMPolicy.hs+176

This diff is too big to show here.

gogol-bigtableadmin/gen/Network/Google/Resource/BigtableAdmin/Projects/Instances/List.hs+170

This diff is too big to show here.

gogol-bigtableadmin/gen/Network/Google/Resource/BigtableAdmin/Projects/Instances/PartialUpdateInstance.hs+193

This diff is too big to show here.

gogol-bigtableadmin/gen/Network/Google/Resource/BigtableAdmin/Projects/Instances/SetIAMPolicy.hs+176

This diff is too big to show here.

gogol-bigtableadmin/gen/Network/Google/Resource/BigtableAdmin/Projects/Instances/Tables/CheckConsistency.hs+182

This diff is too big to show here.

gogol-bigtableadmin/gen/Network/Google/Resource/BigtableAdmin/Projects/Instances/Tables/Create.hs+174

This diff is too big to show here.

gogol-bigtableadmin/gen/Network/Google/Resource/BigtableAdmin/Projects/Instances/Tables/Delete.hs+157

This diff is too big to show here.

gogol-bigtableadmin/gen/Network/Google/Resource/BigtableAdmin/Projects/Instances/Tables/DropRowRange.hs+180

This diff is too big to show here.

gogol-bigtableadmin/gen/Network/Google/Resource/BigtableAdmin/Projects/Instances/Tables/GenerateConsistencyToken.hs+188

This diff is too big to show here.

gogol-bigtableadmin/gen/Network/Google/Resource/BigtableAdmin/Projects/Instances/Tables/Get.hs+169

This diff is too big to show here.

gogol-bigtableadmin/gen/Network/Google/Resource/BigtableAdmin/Projects/Instances/Tables/GetIAMPolicy.hs+179

This diff is too big to show here.

gogol-bigtableadmin/gen/Network/Google/Resource/BigtableAdmin/Projects/Instances/Tables/List.hs+204

This diff is too big to show here.

gogol-bigtableadmin/gen/Network/Google/Resource/BigtableAdmin/Projects/Instances/Tables/ModifyColumnFamilies.hs+187

This diff is too big to show here.

gogol-bigtableadmin/gen/Network/Google/Resource/BigtableAdmin/Projects/Instances/Tables/SetIAMPolicy.hs+179

This diff is too big to show here.

gogol-bigtableadmin/gen/Network/Google/Resource/BigtableAdmin/Projects/Instances/Tables/TestIAMPermissions.hs+182

This diff is too big to show here.

gogol-bigtableadmin/gen/Network/Google/Resource/BigtableAdmin/Projects/Instances/TestIAMPermissions.hs+180

This diff is too big to show here.

gogol-bigtableadmin/gen/Network/Google/Resource/BigtableAdmin/Projects/Instances/Update.hs+171

This diff is too big to show here.

gogol-bigtableadmin/gogol-bigtableadmin.cabal+79

This diff is too big to show here.

gogol-bigtableadmin/src/.gitkeep

This diff is too big to show here.

gogol-billing/LICENSE−6

This diff is too big to show here.

gogol-billing/README.md+4−4

This diff is too big to show here.

gogol-billing/gen/Network/Google/Billing.hs+215−31

This diff is too big to show here.

gogol-billing/gen/Network/Google/Billing/Types.hs+160−9

This diff is too big to show here.

gogol-billing/gen/Network/Google/Billing/Types/Product.hs+1404−43

This diff is too big to show here.

gogol-billing/gen/Network/Google/Billing/Types/Sum.hs+131−2

This diff is too big to show here.

gogol-billing/gen/Network/Google/Resource/CloudBilling/BillingAccounts/Create.hs+167

This diff is too big to show here.

gogol-billing/gen/Network/Google/Resource/CloudBilling/BillingAccounts/Get.hs+154

This diff is too big to show here.

gogol-billing/gen/Network/Google/Resource/CloudBilling/BillingAccounts/GetIAMPolicy.hs+160

This diff is too big to show here.

gogol-billing/gen/Network/Google/Resource/CloudBilling/BillingAccounts/List.hs+189

This diff is too big to show here.

gogol-billing/gen/Network/Google/Resource/CloudBilling/BillingAccounts/Patch.hs+186

This diff is too big to show here.

gogol-billing/gen/Network/Google/Resource/CloudBilling/BillingAccounts/Projects/List.hs+191

This diff is too big to show here.

gogol-billing/gen/Network/Google/Resource/CloudBilling/BillingAccounts/SetIAMPolicy.hs+176

This diff is too big to show here.

gogol-billing/gen/Network/Google/Resource/CloudBilling/BillingAccounts/TestIAMPermissions.hs+176

This diff is too big to show here.

gogol-billing/gen/Network/Google/Resource/CloudBilling/Projects/GetBillingInfo.hs+158

This diff is too big to show here.

gogol-billing/gen/Network/Google/Resource/CloudBilling/Projects/UpdateBillingInfo.hs+217

This diff is too big to show here.

gogol-billing/gen/Network/Google/Resource/CloudBilling/Services/List.hs+163

This diff is too big to show here.

gogol-billing/gen/Network/Google/Resource/CloudBilling/Services/SKUs/List.hs+234

This diff is too big to show here.

gogol-billing/gen/Network/Google/Resource/Cloudbilling/BillingAccounts/Get.hs−228

This diff is too big to show here.

gogol-billing/gen/Network/Google/Resource/Cloudbilling/BillingAccounts/List.hs−245

This diff is too big to show here.

gogol-billing/gen/Network/Google/Resource/Cloudbilling/BillingAccounts/Projects/List.hs−265

This diff is too big to show here.

gogol-billing/gen/Network/Google/Resource/Cloudbilling/Projects/GetBillingInfo.hs−234

This diff is too big to show here.

gogol-billing/gen/Network/Google/Resource/Cloudbilling/Projects/UpdateBillingInfo.hs−282

This diff is too big to show here.

gogol-billing/gogol-billing.cabal+22−12

This diff is too big to show here.

gogol-binaryauthorization/LICENSE+367

This diff is too big to show here.

gogol-binaryauthorization/Makefile+1

This diff is too big to show here.

gogol-binaryauthorization/README.md+28

This diff is too big to show here.

gogol-binaryauthorization/Setup.hs+2

This diff is too big to show here.

gogol-binaryauthorization/gen/Network/Google/BinaryAuthorization.hs+228

This diff is too big to show here.

gogol-binaryauthorization/gen/Network/Google/BinaryAuthorization/Types.hs+158

This diff is too big to show here.

gogol-binaryauthorization/gen/Network/Google/BinaryAuthorization/Types/Product.hs+1078

This diff is too big to show here.

gogol-binaryauthorization/gen/Network/Google/BinaryAuthorization/Types/Sum.hs+244

This diff is too big to show here.

gogol-binaryauthorization/gen/Network/Google/Resource/BinaryAuthorization/Projects/Attestors/Create.hs+180

This diff is too big to show here.

gogol-binaryauthorization/gen/Network/Google/Resource/BinaryAuthorization/Projects/Attestors/Delete.hs+149

This diff is too big to show here.

gogol-binaryauthorization/gen/Network/Google/Resource/BinaryAuthorization/Projects/Attestors/Get.hs+149

This diff is too big to show here.

gogol-binaryauthorization/gen/Network/Google/Resource/BinaryAuthorization/Projects/Attestors/GetIAMPolicy.hs+157

This diff is too big to show here.

gogol-binaryauthorization/gen/Network/Google/Resource/BinaryAuthorization/Projects/Attestors/List.hs+180

This diff is too big to show here.

gogol-binaryauthorization/gen/Network/Google/Resource/BinaryAuthorization/Projects/Attestors/SetIAMPolicy.hs+171

This diff is too big to show here.

gogol-binaryauthorization/gen/Network/Google/Resource/BinaryAuthorization/Projects/Attestors/TestIAMPermissions.hs+183

This diff is too big to show here.

gogol-binaryauthorization/gen/Network/Google/Resource/BinaryAuthorization/Projects/Attestors/Update.hs+162

This diff is too big to show here.

gogol-binaryauthorization/gen/Network/Google/Resource/BinaryAuthorization/Projects/GetPolicy.hs+151

This diff is too big to show here.

gogol-binaryauthorization/gen/Network/Google/Resource/BinaryAuthorization/Projects/Policy/GetIAMPolicy.hs+156

This diff is too big to show here.

gogol-binaryauthorization/gen/Network/Google/Resource/BinaryAuthorization/Projects/Policy/SetIAMPolicy.hs+170

This diff is too big to show here.

gogol-binaryauthorization/gen/Network/Google/Resource/BinaryAuthorization/Projects/Policy/TestIAMPermissions.hs+182

This diff is too big to show here.

gogol-binaryauthorization/gen/Network/Google/Resource/BinaryAuthorization/Projects/UpdatePolicy.hs+170

This diff is too big to show here.

gogol-binaryauthorization/gogol-binaryauthorization.cabal+59

This diff is too big to show here.

gogol-binaryauthorization/src/.gitkeep

This diff is too big to show here.

gogol-blogger/LICENSE−6

This diff is too big to show here.

gogol-blogger/README.md+4−4

This diff is too big to show here.

gogol-blogger/gen/Network/Google/Blogger.hs+320−102

This diff is too big to show here.

gogol-blogger/gen/Network/Google/Blogger/Types.hs+228−27

This diff is too big to show here.

gogol-blogger/gen/Network/Google/Blogger/Types/Product.hs+1273−259

This diff is too big to show here.

gogol-blogger/gen/Network/Google/Blogger/Types/Sum.hs+746−2

This diff is too big to show here.

gogol-blogger/gen/Network/Google/Resource/Blogger/BlogUserInfos/Get.hs+50−119

This diff is too big to show here.

gogol-blogger/gen/Network/Google/Resource/Blogger/Blogs/Get.hs+45−111

This diff is too big to show here.

gogol-blogger/gen/Network/Google/Resource/Blogger/Blogs/GetByURL.hs+45−116

This diff is too big to show here.

gogol-blogger/gen/Network/Google/Resource/Blogger/Blogs/ListByUser.hs+60−125

This diff is too big to show here.

gogol-blogger/gen/Network/Google/Resource/Blogger/Comments/Approve.hs+49−114

This diff is too big to show here.

gogol-blogger/gen/Network/Google/Resource/Blogger/Comments/Delete.hs+47−113

This diff is too big to show here.

gogol-blogger/gen/Network/Google/Resource/Blogger/Comments/Get.hs+52−115

This diff is too big to show here.

gogol-blogger/gen/Network/Google/Resource/Blogger/Comments/List.hs+72−129

This diff is too big to show here.

gogol-blogger/gen/Network/Google/Resource/Blogger/Comments/ListByBlog.hs+64−128

This diff is too big to show here.

gogol-blogger/gen/Network/Google/Resource/Blogger/Comments/MarkAsSpam.hs+50−120

This diff is too big to show here.

gogol-blogger/gen/Network/Google/Resource/Blogger/Comments/RemoveContent.hs+50−119

This diff is too big to show here.

gogol-blogger/gen/Network/Google/Resource/Blogger/PageViews/Get.hs+46−113

This diff is too big to show here.

gogol-blogger/gen/Network/Google/Resource/Blogger/Pages/Delete.hs+51−114

This diff is too big to show here.

gogol-blogger/gen/Network/Google/Resource/Blogger/Pages/Get.hs+45−112

This diff is too big to show here.

gogol-blogger/gen/Network/Google/Resource/Blogger/Pages/Insert.hs+52−106

This diff is too big to show here.

gogol-blogger/gen/Network/Google/Resource/Blogger/Pages/List.hs+57−116

This diff is too big to show here.

gogol-blogger/gen/Network/Google/Resource/Blogger/Pages/Patch.hs+62−113

This diff is too big to show here.

gogol-blogger/gen/Network/Google/Resource/Blogger/Pages/Publish.hs+52−123

This diff is too big to show here.

gogol-blogger/gen/Network/Google/Resource/Blogger/Pages/Revert.hs+52−116

This diff is too big to show here.

gogol-blogger/gen/Network/Google/Resource/Blogger/Pages/Update.hs+82−130

This diff is too big to show here.

gogol-blogger/gen/Network/Google/Resource/Blogger/PostUserInfos/Get.hs+52−121

This diff is too big to show here.

gogol-blogger/gen/Network/Google/Resource/Blogger/PostUserInfos/List.hs+74−137

This diff is too big to show here.

gogol-blogger/gen/Network/Google/Resource/Blogger/Posts/Delete.hs+49−120

This diff is too big to show here.

gogol-blogger/gen/Network/Google/Resource/Blogger/Posts/Get.hs+53−119

This diff is too big to show here.

gogol-blogger/gen/Network/Google/Resource/Blogger/Posts/GetByPath.hs+51−119

This diff is too big to show here.

gogol-blogger/gen/Network/Google/Resource/Blogger/Posts/Insert.hs+57−112

This diff is too big to show here.

gogol-blogger/gen/Network/Google/Resource/Blogger/Posts/List.hs+75−135

This diff is too big to show here.

gogol-blogger/gen/Network/Google/Resource/Blogger/Posts/Patch.hs+116−169

This diff is too big to show here.

gogol-blogger/gen/Network/Google/Resource/Blogger/Posts/Publish.hs+65−133

This diff is too big to show here.

gogol-blogger/gen/Network/Google/Resource/Blogger/Posts/Revert.hs+50−122

This diff is too big to show here.

gogol-blogger/gen/Network/Google/Resource/Blogger/Posts/Search.hs+48−111

This diff is too big to show here.

gogol-blogger/gen/Network/Google/Resource/Blogger/Posts/Update.hs+112−169

This diff is too big to show here.

gogol-blogger/gen/Network/Google/Resource/Blogger/Users/Get.hs+36−100

This diff is too big to show here.

gogol-blogger/gogol-blogger.cabal+12−5

This diff is too big to show here.

gogol-books/LICENSE−6

This diff is too big to show here.

gogol-books/README.md+4−4

This diff is too big to show here.

gogol-books/gen/Network/Google/Books.hs+987−240

This diff is too big to show here.

gogol-books/gen/Network/Google/Books/Types.hs+797−115

This diff is too big to show here.

gogol-books/gen/Network/Google/Books/Types/Product.hs+7645−1836

This diff is too big to show here.

gogol-books/gen/Network/Google/Books/Types/Sum.hs+757−2

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Bookshelves/Get.hs+45−114

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Bookshelves/List.hs+40−108

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Bookshelves/Volumes/List.hs+66−135

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/CloudLoading/AddBook.hs+128

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/CloudLoading/DeleteBook.hs+88

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/CloudLoading/UpdateBook.hs+90

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Cloudloading/AddBook.hs−197

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Cloudloading/DeleteBook.hs−158

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Cloudloading/UpdateBook.hs−147

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Dictionary/ListOfflineMetadata.hs+40−113

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Familysharing/GetFamilyInfo.hs+87

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Familysharing/Share.hs+109

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Familysharing/Unshare.hs+109

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Layers/AnnotationData/Get.hs+75−139

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Layers/AnnotationData/List.hs+87−148

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Layers/Get.hs+46−110

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Layers/List.hs+51−114

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Layers/VolumeAnnotations/Get.hs+52−123

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Layers/VolumeAnnotations/List.hs+88−155

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/MyConfig/GetUserSettings.hs+73

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/MyConfig/ReleaseDownloadAccess.hs+134

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/MyConfig/RequestAccess.hs+159

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/MyConfig/SyncVolumeLicenses.hs+190

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/MyConfig/UpdateUserSettings.hs+94

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/MyLibrary/Annotations/Delete.hs+102

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/MyLibrary/Annotations/Insert.hs+143

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/MyLibrary/Annotations/List.hs+211

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/MyLibrary/Annotations/Summary.hs+107

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/MyLibrary/Annotations/Update.hs+117

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/MyLibrary/Bookshelves/AddVolume.hs+133

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/MyLibrary/Bookshelves/ClearVolumes.hs+104

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/MyLibrary/Bookshelves/Get.hs+101

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/MyLibrary/Bookshelves/List.hs+86

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/MyLibrary/Bookshelves/MoveVolume.hs+136

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/MyLibrary/Bookshelves/RemoveVolume.hs+134

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/MyLibrary/Bookshelves/Volumes/List.hs+184

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/MyLibrary/ReadingPositions/Get.hs+119

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/MyLibrary/ReadingPositions/SetPosition.hs+177

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Myconfig/GetUserSettings.hs−147

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Myconfig/ReleaseDownloadAccess.hs−203

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Myconfig/RequestAccess.hs−223

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Myconfig/SyncVolumeLicenses.hs−240

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Myconfig/UpdateUserSettings.hs−152

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Mylibrary/Annotations/Delete.hs−172

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Mylibrary/Annotations/Insert.hs−185

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Mylibrary/Annotations/List.hs−276

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Mylibrary/Annotations/Summary.hs−175

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Mylibrary/Annotations/Update.hs−172

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Mylibrary/Bookshelves/AddVolume.hs−200

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Mylibrary/Bookshelves/ClearVolumes.hs−175

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Mylibrary/Bookshelves/Get.hs−172

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Mylibrary/Bookshelves/List.hs−158

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Mylibrary/Bookshelves/MoveVolume.hs−203

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Mylibrary/Bookshelves/RemoveVolume.hs−200

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Mylibrary/Bookshelves/Volumes/List.hs−251

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Mylibrary/Readingpositions/Get.hs−187

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Mylibrary/Readingpositions/SetPosition.hs−242

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Notification/Get.hs+114

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Onboarding/ListCategories.hs+36−109

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Onboarding/ListCategoryVolumes.hs+57−121

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Personalizedstream/Get.hs+117

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/PromoOffer/Accept.hs+171

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/PromoOffer/Dismiss.hs+160

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/PromoOffer/Get.hs+147

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Promooffer/Accept.hs−236

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Promooffer/Dismiss.hs−225

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Promooffer/Get.hs−211

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Series/Get.hs+87

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Series/Membership/Get.hs+117

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Volumes/Associated/List.hs+53−118

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Volumes/Get.hs+59−110

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Volumes/List.hs+101−142

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Volumes/Mybooks/List.hs+76−122

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Volumes/Recommended/List.hs+46−112

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Volumes/Recommended/Rate.hs+52−121

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Volumes/UserUploaded/List.hs+163

This diff is too big to show here.

gogol-books/gen/Network/Google/Resource/Books/Volumes/Useruploaded/List.hs−224

This diff is too big to show here.

gogol-books/gogol-books.cabal+42−32

This diff is too big to show here.

gogol-chat/LICENSE+367

This diff is too big to show here.

gogol-chat/Makefile+1

This diff is too big to show here.

gogol-chat/README.md+28

This diff is too big to show here.

gogol-chat/Setup.hs+2

This diff is too big to show here.

gogol-chat/gen/Network/Google/Chat.hs+308

This diff is too big to show here.

gogol-chat/gen/Network/Google/Chat/Types.hs+259

This diff is too big to show here.

gogol-chat/gen/Network/Google/Chat/Types/Product.hs+1732

This diff is too big to show here.

gogol-chat/gen/Network/Google/Chat/Types/Sum.hs+625

This diff is too big to show here.

gogol-chat/gen/Network/Google/Resource/Chat/Spaces/Get.hs+146

This diff is too big to show here.

gogol-chat/gen/Network/Google/Resource/Chat/Spaces/List.hs+162

This diff is too big to show here.

gogol-chat/gen/Network/Google/Resource/Chat/Spaces/Members/Get.hs+149

This diff is too big to show here.

gogol-chat/gen/Network/Google/Resource/Chat/Spaces/Members/List.hs+178

This diff is too big to show here.

gogol-chat/gen/Network/Google/Resource/Chat/Spaces/Messages/Create.hs+182

This diff is too big to show here.

gogol-chat/gen/Network/Google/Resource/Chat/Spaces/Messages/Delete.hs+149

This diff is too big to show here.

gogol-chat/gen/Network/Google/Resource/Chat/Spaces/Messages/Get.hs+149

This diff is too big to show here.

gogol-chat/gen/Network/Google/Resource/Chat/Spaces/Messages/Update.hs+175

This diff is too big to show here.

gogol-chat/gogol-chat.cabal+53

This diff is too big to show here.

gogol-chat/src/.gitkeep

This diff is too big to show here.

gogol-civicinfo/LICENSE−6

This diff is too big to show here.

gogol-civicinfo/README.md+4−4

This diff is too big to show here.

gogol-civicinfo/gen/Network/Google/CivicInfo.hs+262−42

This diff is too big to show here.

gogol-civicinfo/gen/Network/Google/CivicInfo/Types.hs+242−27

This diff is too big to show here.

gogol-civicinfo/gen/Network/Google/CivicInfo/Types/Product.hs+2352−351

This diff is too big to show here.

gogol-civicinfo/gen/Network/Google/CivicInfo/Types/Sum.hs+247−2

This diff is too big to show here.

gogol-civicinfo/gen/Network/Google/Resource/CivicInfo/Divisions/Search.hs+47−102

This diff is too big to show here.

gogol-civicinfo/gen/Network/Google/Resource/CivicInfo/Elections/ElectionQuery.hs+43−100

This diff is too big to show here.

gogol-civicinfo/gen/Network/Google/Resource/CivicInfo/Elections/VoterInfoQuery.hs+76−113

This diff is too big to show here.

gogol-civicinfo/gen/Network/Google/Resource/CivicInfo/Representatives/RepresentativeInfoByAddress.hs+75−119

This diff is too big to show here.

gogol-civicinfo/gen/Network/Google/Resource/CivicInfo/Representatives/RepresentativeInfoByDivision.hs+80−124

This diff is too big to show here.

gogol-civicinfo/gogol-civicinfo.cabal+11−6

This diff is too big to show here.

gogol-classroom/LICENSE−6

This diff is too big to show here.

gogol-classroom/README.md+4−4

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Classroom.hs+698−92

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Classroom/Types.hs+542−39

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Classroom/Types/Product.hs+3724−470

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Classroom/Types/Sum.hs+772−2

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Courses/Aliases/Create.hs+71−130

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Courses/Aliases/Delete.hs+57−130

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Courses/Aliases/List.hs+118−196

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Courses/Announcements/Create.hs+179

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Courses/Announcements/Delete.hs+179

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Courses/Announcements/Get.hs+172

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Courses/Announcements/List.hs+228

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Courses/Announcements/ModifyAssignees.hs+196

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Courses/Announcements/Patch.hs+210

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Courses/CourseWork/Create.hs+190

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Courses/CourseWork/Delete.hs+182

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Courses/CourseWork/Get.hs+176

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Courses/CourseWork/List.hs+234

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Courses/CourseWork/ModifyAssignees.hs+196

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Courses/CourseWork/Patch.hs+224

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Courses/CourseWork/StudentSubmissions/Get.hs+201

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Courses/CourseWork/StudentSubmissions/List.hs+281

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Courses/CourseWork/StudentSubmissions/ModifyAttachments.hs+231

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Courses/CourseWork/StudentSubmissions/Patch.hs+244

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Courses/CourseWork/StudentSubmissions/Reclaim.hs+235

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Courses/CourseWork/StudentSubmissions/Return.hs+231

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Courses/CourseWork/StudentSubmissions/TurnIn.hs+228

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Courses/Create.hs+68−127

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Courses/Delete.hs+50−127

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Courses/Get.hs+52−126

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Courses/List.hs+84−139

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Courses/Patch.hs+76−134

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Courses/Students/Create.hs+82−141

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Courses/Students/Delete.hs+55−132

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Courses/Students/Get.hs+58−132

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Courses/Students/List.hs+62−138

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Courses/Teachers/Create.hs+76−134

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Courses/Teachers/Delete.hs+107−185

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Courses/Teachers/Get.hs+109−182

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Courses/Teachers/List.hs+119−193

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Courses/Topics/Create.hs+174

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Courses/Topics/Delete.hs+171

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Courses/Topics/Get.hs+171

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Courses/Topics/List.hs+191

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Courses/Topics/Patch.hs+203

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Courses/Update.hs+65−126

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Invitations/Accept.hs+58−128

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Invitations/Create.hs+69−131

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Invitations/Delete.hs+50−127

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Invitations/Get.hs+50−126

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Invitations/List.hs+61−137

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Registrations/Create.hs+190

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/Registrations/Delete.hs+152

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/UserProFiles/Get.hs+162

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/UserProFiles/GuardianInvitations/Create.hs+221

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/UserProFiles/GuardianInvitations/Get.hs+195

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/UserProFiles/GuardianInvitations/List.hs+252

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/UserProFiles/GuardianInvitations/Patch.hs+231

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/UserProFiles/Guardians/Delete.hs+193

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/UserProFiles/Guardians/Get.hs+194

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/UserProFiles/Guardians/List.hs+240

This diff is too big to show here.

gogol-classroom/gen/Network/Google/Resource/Classroom/UserProfiles/Get.hs−233

This diff is too big to show here.

gogol-classroom/gogol-classroom.cabal+43−7

This diff is too big to show here.

gogol-cloudasset/LICENSE+367

This diff is too big to show here.

gogol-cloudasset/Makefile+1

This diff is too big to show here.

gogol-cloudasset/README.md+28

This diff is too big to show here.

gogol-cloudasset/Setup.hs+2

This diff is too big to show here.

gogol-cloudasset/gen/Network/Google/CloudAsset.hs+194

This diff is too big to show here.

gogol-cloudasset/gen/Network/Google/CloudAsset/Types.hs+173

This diff is too big to show here.

gogol-cloudasset/gen/Network/Google/CloudAsset/Types/Product.hs+1271

This diff is too big to show here.

gogol-cloudasset/gen/Network/Google/CloudAsset/Types/Sum.hs+122

This diff is too big to show here.

gogol-cloudasset/gen/Network/Google/Resource/CloudAsset/BatchGetAssetsHistory.hs+230

This diff is too big to show here.

gogol-cloudasset/gen/Network/Google/Resource/CloudAsset/ExportAssets.hs+169

This diff is too big to show here.

gogol-cloudasset/gen/Network/Google/Resource/CloudAsset/Operations/Get.hs+150

This diff is too big to show here.

gogol-cloudasset/gogol-cloudasset.cabal+49

This diff is too big to show here.

gogol-cloudasset/src/.gitkeep

This diff is too big to show here.

gogol-clouderrorreporting/LICENSE+367

This diff is too big to show here.

gogol-clouderrorreporting/Makefile+1

This diff is too big to show here.

gogol-clouderrorreporting/README.md+28

This diff is too big to show here.

gogol-clouderrorreporting/Setup.hs+2

This diff is too big to show here.

gogol-clouderrorreporting/gen/Network/Google/CloudErrorReporting.hs+186

This diff is too big to show here.

gogol-clouderrorreporting/gen/Network/Google/CloudErrorReporting/Types.hs+150

This diff is too big to show here.

gogol-clouderrorreporting/gen/Network/Google/CloudErrorReporting/Types/Product.hs+1097

This diff is too big to show here.

gogol-clouderrorreporting/gen/Network/Google/CloudErrorReporting/Types/Sum.hs+48

This diff is too big to show here.

gogol-clouderrorreporting/gen/Network/Google/Resource/CloudErrorReporting/Projects/DeleteEvents.hs+155

This diff is too big to show here.

gogol-clouderrorreporting/gen/Network/Google/Resource/CloudErrorReporting/Projects/Events/List.hs+247

This diff is too big to show here.

gogol-clouderrorreporting/gen/Network/Google/Resource/CloudErrorReporting/Projects/Events/Report.hs+179

This diff is too big to show here.

gogol-clouderrorreporting/gen/Network/Google/Resource/CloudErrorReporting/Projects/GroupStats/List.hs+314

This diff is too big to show here.

gogol-clouderrorreporting/gen/Network/Google/Resource/CloudErrorReporting/Projects/Groups/Get.hs+153

This diff is too big to show here.

gogol-clouderrorreporting/gen/Network/Google/Resource/CloudErrorReporting/Projects/Groups/Update.hs+164

This diff is too big to show here.

gogol-clouderrorreporting/gogol-clouderrorreporting.cabal+53

This diff is too big to show here.

gogol-clouderrorreporting/src/.gitkeep

This diff is too big to show here.

gogol-cloudfunctions/LICENSE+367

This diff is too big to show here.

gogol-cloudfunctions/Makefile+1

This diff is too big to show here.

gogol-cloudfunctions/README.md+28

This diff is too big to show here.

gogol-cloudfunctions/Setup.hs+2

This diff is too big to show here.

gogol-cloudfunctions/gen/Network/Google/CloudFunctions.hs+371

This diff is too big to show here.

gogol-cloudfunctions/gen/Network/Google/CloudFunctions/Types.hs+293

This diff is too big to show here.

gogol-cloudfunctions/gen/Network/Google/CloudFunctions/Types/Product.hs+2293

This diff is too big to show here.

gogol-cloudfunctions/gen/Network/Google/CloudFunctions/Types/Sum.hs+215

This diff is too big to show here.

gogol-cloudfunctions/gen/Network/Google/Resource/CloudFunctions/Operations/Get.hs+150

This diff is too big to show here.

gogol-cloudfunctions/gen/Network/Google/Resource/CloudFunctions/Operations/List.hs+205

This diff is too big to show here.

gogol-cloudfunctions/gen/Network/Google/Resource/CloudFunctions/Projects/Locations/Functions/Call.hs+167

This diff is too big to show here.

gogol-cloudfunctions/gen/Network/Google/Resource/CloudFunctions/Projects/Locations/Functions/Create.hs+173

This diff is too big to show here.

gogol-cloudfunctions/gen/Network/Google/Resource/CloudFunctions/Projects/Locations/Functions/Delete.hs+156

This diff is too big to show here.

gogol-cloudfunctions/gen/Network/Google/Resource/CloudFunctions/Projects/Locations/Functions/GenerateDownloadURL.hs+181

This diff is too big to show here.

gogol-cloudfunctions/gen/Network/Google/Resource/CloudFunctions/Projects/Locations/Functions/GenerateUploadURL.hs+207

This diff is too big to show here.

gogol-cloudfunctions/gen/Network/Google/Resource/CloudFunctions/Projects/Locations/Functions/Get.hs+151

This diff is too big to show here.

gogol-cloudfunctions/gen/Network/Google/Resource/CloudFunctions/Projects/Locations/Functions/GetIAMPolicy.hs+161

This diff is too big to show here.

gogol-cloudfunctions/gen/Network/Google/Resource/CloudFunctions/Projects/Locations/Functions/List.hs+185

This diff is too big to show here.

gogol-cloudfunctions/gen/Network/Google/Resource/CloudFunctions/Projects/Locations/Functions/Patch.hs+180

This diff is too big to show here.

gogol-cloudfunctions/gen/Network/Google/Resource/CloudFunctions/Projects/Locations/Functions/SetIAMPolicy.hs+176

This diff is too big to show here.

gogol-cloudfunctions/gen/Network/Google/Resource/CloudFunctions/Projects/Locations/Functions/TestIAMPermissions.hs+182

This diff is too big to show here.

gogol-cloudfunctions/gen/Network/Google/Resource/CloudFunctions/Projects/Locations/List.hs+187

This diff is too big to show here.

gogol-cloudfunctions/gogol-cloudfunctions.cabal+60

This diff is too big to show here.

gogol-cloudfunctions/src/.gitkeep

This diff is too big to show here.

gogol-cloudidentity/LICENSE+367

This diff is too big to show here.

gogol-cloudidentity/Makefile+1

This diff is too big to show here.

gogol-cloudidentity/README.md+28

This diff is too big to show here.

gogol-cloudidentity/Setup.hs+2

This diff is too big to show here.

gogol-cloudidentity/gen/Network/Google/CloudIdentity.hs+203

This diff is too big to show here.

gogol-cloudidentity/gen/Network/Google/CloudIdentity/Types.hs+144

This diff is too big to show here.

gogol-cloudidentity/gen/Network/Google/CloudIdentity/Types/Product.hs+909

This diff is too big to show here.

gogol-cloudidentity/gen/Network/Google/CloudIdentity/Types/Sum.hs+48

This diff is too big to show here.

gogol-cloudidentity/gen/Network/Google/Resource/CloudIdentity/Groups/Create.hs+148

This diff is too big to show here.

gogol-cloudidentity/gen/Network/Google/Resource/CloudIdentity/Groups/Delete.hs+149

This diff is too big to show here.

gogol-cloudidentity/gen/Network/Google/Resource/CloudIdentity/Groups/Get.hs+150

This diff is too big to show here.

gogol-cloudidentity/gen/Network/Google/Resource/CloudIdentity/Groups/List.hs+188

This diff is too big to show here.

gogol-cloudidentity/gen/Network/Google/Resource/CloudIdentity/Groups/Lookup.hs+171

This diff is too big to show here.

gogol-cloudidentity/gen/Network/Google/Resource/CloudIdentity/Groups/Memberships/Create.hs+166

This diff is too big to show here.

gogol-cloudidentity/gen/Network/Google/Resource/CloudIdentity/Groups/Memberships/Delete.hs+153

This diff is too big to show here.

gogol-cloudidentity/gen/Network/Google/Resource/CloudIdentity/Groups/Memberships/Get.hs+154

This diff is too big to show here.

gogol-cloudidentity/gen/Network/Google/Resource/CloudIdentity/Groups/Memberships/List.hs+193

This diff is too big to show here.

gogol-cloudidentity/gen/Network/Google/Resource/CloudIdentity/Groups/Memberships/Lookup.hs+191

This diff is too big to show here.

gogol-cloudidentity/gen/Network/Google/Resource/CloudIdentity/Groups/Patch.hs+174

This diff is too big to show here.

gogol-cloudidentity/gen/Network/Google/Resource/CloudIdentity/Groups/Search.hs+188

This diff is too big to show here.

gogol-cloudidentity/gogol-cloudidentity.cabal+57

This diff is too big to show here.

gogol-cloudidentity/src/.gitkeep

This diff is too big to show here.

gogol-cloudiot/LICENSE+367

This diff is too big to show here.

gogol-cloudiot/Makefile+1

This diff is too big to show here.

gogol-cloudiot/README.md+28

This diff is too big to show here.

gogol-cloudiot/Setup.hs+2

This diff is too big to show here.

gogol-cloudiot/gen/Network/Google/CloudIOT.hs+475

This diff is too big to show here.

gogol-cloudiot/gen/Network/Google/CloudIOT/Types.hs+300

This diff is too big to show here.

gogol-cloudiot/gen/Network/Google/CloudIOT/Types/Product.hs+2224

This diff is too big to show here.

gogol-cloudiot/gen/Network/Google/CloudIOT/Types/Sum.hs+385

This diff is too big to show here.

gogol-cloudiot/gen/Network/Google/Resource/CloudIOT/Projects/Locations/Registries/BindDeviceToGateway.hs+180

This diff is too big to show here.

gogol-cloudiot/gen/Network/Google/Resource/CloudIOT/Projects/Locations/Registries/Create.hs+171

This diff is too big to show here.

gogol-cloudiot/gen/Network/Google/Resource/CloudIOT/Projects/Locations/Registries/Delete.hs+154

This diff is too big to show here.

gogol-cloudiot/gen/Network/Google/Resource/CloudIOT/Projects/Locations/Registries/Devices/ConfigVersions/List.hs+186

This diff is too big to show here.

gogol-cloudiot/gen/Network/Google/Resource/CloudIOT/Projects/Locations/Registries/Devices/Create.hs+176

This diff is too big to show here.

gogol-cloudiot/gen/Network/Google/Resource/CloudIOT/Projects/Locations/Registries/Devices/Delete.hs+163

This diff is too big to show here.

gogol-cloudiot/gen/Network/Google/Resource/CloudIOT/Projects/Locations/Registries/Devices/Get.hs+174

This diff is too big to show here.

gogol-cloudiot/gen/Network/Google/Resource/CloudIOT/Projects/Locations/Registries/Devices/List.hs+293

This diff is too big to show here.

gogol-cloudiot/gen/Network/Google/Resource/CloudIOT/Projects/Locations/Registries/Devices/ModifyCloudToDeviceConfig.hs+188

This diff is too big to show here.

gogol-cloudiot/gen/Network/Google/Resource/CloudIOT/Projects/Locations/Registries/Devices/Patch.hs+193

This diff is too big to show here.

gogol-cloudiot/gen/Network/Google/Resource/CloudIOT/Projects/Locations/Registries/Devices/SendCommandToDevice.hs+206

This diff is too big to show here.

gogol-cloudiot/gen/Network/Google/Resource/CloudIOT/Projects/Locations/Registries/Devices/States/List.hs+184

This diff is too big to show here.

gogol-cloudiot/gen/Network/Google/Resource/CloudIOT/Projects/Locations/Registries/Get.hs+155

This diff is too big to show here.

gogol-cloudiot/gen/Network/Google/Resource/CloudIOT/Projects/Locations/Registries/GetIAMPolicy.hs+179

This diff is too big to show here.

gogol-cloudiot/gen/Network/Google/Resource/CloudIOT/Projects/Locations/Registries/Groups/BindDeviceToGateway.hs+181

This diff is too big to show here.

gogol-cloudiot/gen/Network/Google/Resource/CloudIOT/Projects/Locations/Registries/Groups/Devices/ConfigVersions/List.hs+187

This diff is too big to show here.

gogol-cloudiot/gen/Network/Google/Resource/CloudIOT/Projects/Locations/Registries/Groups/Devices/Get.hs+178

This diff is too big to show here.

gogol-cloudiot/gen/Network/Google/Resource/CloudIOT/Projects/Locations/Registries/Groups/Devices/List.hs+299

This diff is too big to show here.

gogol-cloudiot/gen/Network/Google/Resource/CloudIOT/Projects/Locations/Registries/Groups/Devices/ModifyCloudToDeviceConfig.hs+188

This diff is too big to show here.

gogol-cloudiot/gen/Network/Google/Resource/CloudIOT/Projects/Locations/Registries/Groups/Devices/Patch.hs+196

This diff is too big to show here.

gogol-cloudiot/gen/Network/Google/Resource/CloudIOT/Projects/Locations/Registries/Groups/Devices/SendCommandToDevice.hs+207

This diff is too big to show here.

gogol-cloudiot/gen/Network/Google/Resource/CloudIOT/Projects/Locations/Registries/Groups/Devices/States/List.hs+186

This diff is too big to show here.

gogol-cloudiot/gen/Network/Google/Resource/CloudIOT/Projects/Locations/Registries/Groups/GetIAMPolicy.hs+181

This diff is too big to show here.

gogol-cloudiot/gen/Network/Google/Resource/CloudIOT/Projects/Locations/Registries/Groups/SetIAMPolicy.hs+181

This diff is too big to show here.

gogol-cloudiot/gen/Network/Google/Resource/CloudIOT/Projects/Locations/Registries/Groups/TestIAMPermissions.hs+185

This diff is too big to show here.

gogol-cloudiot/gen/Network/Google/Resource/CloudIOT/Projects/Locations/Registries/Groups/UnbindDeviceFromGateway.hs+182

This diff is too big to show here.

gogol-cloudiot/gen/Network/Google/Resource/CloudIOT/Projects/Locations/Registries/List.hs+190

This diff is too big to show here.

gogol-cloudiot/gen/Network/Google/Resource/CloudIOT/Projects/Locations/Registries/Patch.hs+186

This diff is too big to show here.

gogol-cloudiot/gen/Network/Google/Resource/CloudIOT/Projects/Locations/Registries/SetIAMPolicy.hs+179

This diff is too big to show here.

gogol-cloudiot/gen/Network/Google/Resource/CloudIOT/Projects/Locations/Registries/TestIAMPermissions.hs+184

This diff is too big to show here.

gogol-cloudiot/gen/Network/Google/Resource/CloudIOT/Projects/Locations/Registries/UnbindDeviceFromGateway.hs+181

This diff is too big to show here.

gogol-cloudiot/gogol-cloudiot.cabal+77

This diff is too big to show here.

gogol-cloudiot/src/.gitkeep

This diff is too big to show here.

gogol-cloudkms/LICENSE+367

This diff is too big to show here.

gogol-cloudkms/Makefile+1

This diff is too big to show here.

gogol-cloudkms/README.md+28

This diff is too big to show here.

gogol-cloudkms/Setup.hs+2

This diff is too big to show here.

gogol-cloudkms/gen/Network/Google/CloudKMS.hs+463

This diff is too big to show here.

gogol-cloudkms/gen/Network/Google/CloudKMS/Types.hs+293

This diff is too big to show here.

gogol-cloudkms/gen/Network/Google/CloudKMS/Types/Product.hs+2039

This diff is too big to show here.

gogol-cloudkms/gen/Network/Google/CloudKMS/Types/Sum.hs+589

This diff is too big to show here.

gogol-cloudkms/gen/Network/Google/Resource/CloudKMS/Projects/Locations/Get.hs+149

This diff is too big to show here.

gogol-cloudkms/gen/Network/Google/Resource/CloudKMS/Projects/Locations/KeyRings/Create.hs+184

This diff is too big to show here.

gogol-cloudkms/gen/Network/Google/Resource/CloudKMS/Projects/Locations/KeyRings/CryptoKeys/Create.hs+193

This diff is too big to show here.

gogol-cloudkms/gen/Network/Google/Resource/CloudKMS/Projects/Locations/KeyRings/CryptoKeys/CryptoKeyVersions/AsymmetricDecrypt.hs+185

This diff is too big to show here.

gogol-cloudkms/gen/Network/Google/Resource/CloudKMS/Projects/Locations/KeyRings/CryptoKeys/CryptoKeyVersions/AsymmetricSign.hs+184

This diff is too big to show here.

gogol-cloudkms/gen/Network/Google/Resource/CloudKMS/Projects/Locations/KeyRings/CryptoKeys/CryptoKeyVersions/Create.hs+184

This diff is too big to show here.

gogol-cloudkms/gen/Network/Google/Resource/CloudKMS/Projects/Locations/KeyRings/CryptoKeys/CryptoKeyVersions/Destroy.hs+190

This diff is too big to show here.

gogol-cloudkms/gen/Network/Google/Resource/CloudKMS/Projects/Locations/KeyRings/CryptoKeys/CryptoKeyVersions/Get.hs+166

This diff is too big to show here.

gogol-cloudkms/gen/Network/Google/Resource/CloudKMS/Projects/Locations/KeyRings/CryptoKeys/CryptoKeyVersions/GetPublicKey.hs+168

This diff is too big to show here.

gogol-cloudkms/gen/Network/Google/Resource/CloudKMS/Projects/Locations/KeyRings/CryptoKeys/CryptoKeyVersions/List.hs+213

This diff is too big to show here.

gogol-cloudkms/gen/Network/Google/Resource/CloudKMS/Projects/Locations/KeyRings/CryptoKeys/CryptoKeyVersions/Patch.hs+198

This diff is too big to show here.

gogol-cloudkms/gen/Network/Google/Resource/CloudKMS/Projects/Locations/KeyRings/CryptoKeys/CryptoKeyVersions/Restore.hs+184

This diff is too big to show here.

gogol-cloudkms/gen/Network/Google/Resource/CloudKMS/Projects/Locations/KeyRings/CryptoKeys/Decrypt.hs+180

This diff is too big to show here.

gogol-cloudkms/gen/Network/Google/Resource/CloudKMS/Projects/Locations/KeyRings/CryptoKeys/Encrypt.hs+181

This diff is too big to show here.

gogol-cloudkms/gen/Network/Google/Resource/CloudKMS/Projects/Locations/KeyRings/CryptoKeys/Get.hs+160

This diff is too big to show here.

gogol-cloudkms/gen/Network/Google/Resource/CloudKMS/Projects/Locations/KeyRings/CryptoKeys/GetIAMPolicy.hs+168

This diff is too big to show here.

gogol-cloudkms/gen/Network/Google/Resource/CloudKMS/Projects/Locations/KeyRings/CryptoKeys/List.hs+207

This diff is too big to show here.

gogol-cloudkms/gen/Network/Google/Resource/CloudKMS/Projects/Locations/KeyRings/CryptoKeys/Patch.hs+189

This diff is too big to show here.

gogol-cloudkms/gen/Network/Google/Resource/CloudKMS/Projects/Locations/KeyRings/CryptoKeys/SetIAMPolicy.hs+183

This diff is too big to show here.

gogol-cloudkms/gen/Network/Google/Resource/CloudKMS/Projects/Locations/KeyRings/CryptoKeys/TestIAMPermissions.hs+192

This diff is too big to show here.

gogol-cloudkms/gen/Network/Google/Resource/CloudKMS/Projects/Locations/KeyRings/CryptoKeys/UpdatePrimaryVersion.hs+182

This diff is too big to show here.

gogol-cloudkms/gen/Network/Google/Resource/CloudKMS/Projects/Locations/KeyRings/Get.hs+153

This diff is too big to show here.

gogol-cloudkms/gen/Network/Google/Resource/CloudKMS/Projects/Locations/KeyRings/GetIAMPolicy.hs+162

This diff is too big to show here.

gogol-cloudkms/gen/Network/Google/Resource/CloudKMS/Projects/Locations/KeyRings/ImportJobs/GetIAMPolicy.hs+168

This diff is too big to show here.

gogol-cloudkms/gen/Network/Google/Resource/CloudKMS/Projects/Locations/KeyRings/ImportJobs/SetIAMPolicy.hs+183

This diff is too big to show here.

gogol-cloudkms/gen/Network/Google/Resource/CloudKMS/Projects/Locations/KeyRings/ImportJobs/TestIAMPermissions.hs+192

This diff is too big to show here.

gogol-cloudkms/gen/Network/Google/Resource/CloudKMS/Projects/Locations/KeyRings/List.hs+189

This diff is too big to show here.

gogol-cloudkms/gen/Network/Google/Resource/CloudKMS/Projects/Locations/KeyRings/SetIAMPolicy.hs+177

This diff is too big to show here.

gogol-cloudkms/gen/Network/Google/Resource/CloudKMS/Projects/Locations/KeyRings/TestIAMPermissions.hs+190

This diff is too big to show here.

gogol-cloudkms/gen/Network/Google/Resource/CloudKMS/Projects/Locations/List.hs+188

This diff is too big to show here.

gogol-cloudkms/gogol-cloudkms.cabal+76

This diff is too big to show here.

gogol-cloudkms/src/.gitkeep

This diff is too big to show here.

gogol-cloudprivatecatalog/LICENSE+367

This diff is too big to show here.

gogol-cloudprivatecatalog/Makefile+1

This diff is too big to show here.

gogol-cloudprivatecatalog/README.md+28

This diff is too big to show here.

gogol-cloudprivatecatalog/Setup.hs+2

This diff is too big to show here.

gogol-cloudprivatecatalog/gen/Network/Google/CloudPrivateCatalog.hs+148

This diff is too big to show here.

gogol-cloudprivatecatalog/gen/Network/Google/CloudPrivateCatalog/Types.hs+98

This diff is too big to show here.

gogol-cloudprivatecatalog/gen/Network/Google/CloudPrivateCatalog/Types/Product.hs+662

This diff is too big to show here.

gogol-cloudprivatecatalog/gen/Network/Google/CloudPrivateCatalog/Types/Sum.hs+48

This diff is too big to show here.

gogol-cloudprivatecatalog/gen/Network/Google/Resource/CloudPrivateCatalog/Folders/Catalogs/Search.hs+196

This diff is too big to show here.

gogol-cloudprivatecatalog/gen/Network/Google/Resource/CloudPrivateCatalog/Folders/Products/Search.hs+197

This diff is too big to show here.

gogol-cloudprivatecatalog/gen/Network/Google/Resource/CloudPrivateCatalog/Folders/Versions/Search.hs+198

This diff is too big to show here.

gogol-cloudprivatecatalog/gen/Network/Google/Resource/CloudPrivateCatalog/Organizations/Catalogs/Search.hs+197

This diff is too big to show here.

gogol-cloudprivatecatalog/gen/Network/Google/Resource/CloudPrivateCatalog/Organizations/Products/Search.hs+198

This diff is too big to show here.

gogol-cloudprivatecatalog/gen/Network/Google/Resource/CloudPrivateCatalog/Organizations/Versions/Search.hs+199

This diff is too big to show here.

gogol-cloudprivatecatalog/gen/Network/Google/Resource/CloudPrivateCatalog/Projects/Catalogs/Search.hs+196

This diff is too big to show here.

gogol-cloudprivatecatalog/gen/Network/Google/Resource/CloudPrivateCatalog/Projects/Products/Search.hs+197

This diff is too big to show here.

gogol-cloudprivatecatalog/gen/Network/Google/Resource/CloudPrivateCatalog/Projects/Versions/Search.hs+198

This diff is too big to show here.

gogol-cloudprivatecatalog/gogol-cloudprivatecatalog.cabal+55

This diff is too big to show here.

gogol-cloudprivatecatalog/src/.gitkeep

This diff is too big to show here.

gogol-cloudprivatecatalogproducer/LICENSE+367

This diff is too big to show here.

gogol-cloudprivatecatalogproducer/Makefile+1

This diff is too big to show here.

gogol-cloudprivatecatalogproducer/README.md+28

This diff is too big to show here.

gogol-cloudprivatecatalogproducer/Setup.hs+2

This diff is too big to show here.

gogol-cloudprivatecatalogproducer/gen/Network/Google/CloudPrivateCatalogProducer.hs+386

This diff is too big to show here.

gogol-cloudprivatecatalogproducer/gen/Network/Google/CloudPrivateCatalogProducer/Types.hs+236

This diff is too big to show here.

gogol-cloudprivatecatalogproducer/gen/Network/Google/CloudPrivateCatalogProducer/Types/Product.hs+2080

This diff is too big to show here.

gogol-cloudprivatecatalogproducer/gen/Network/Google/CloudPrivateCatalogProducer/Types/Sum.hs+87

This diff is too big to show here.

gogol-cloudprivatecatalogproducer/gen/Network/Google/Resource/CloudPrivateCatalogProducer/Catalogs/Associations/Create.hs+169

This diff is too big to show here.

gogol-cloudprivatecatalogproducer/gen/Network/Google/Resource/CloudPrivateCatalogProducer/Catalogs/Associations/Delete.hs+151

This diff is too big to show here.

gogol-cloudprivatecatalogproducer/gen/Network/Google/Resource/CloudPrivateCatalogProducer/Catalogs/Associations/Get.hs+151

This diff is too big to show here.

gogol-cloudprivatecatalogproducer/gen/Network/Google/Resource/CloudPrivateCatalogProducer/Catalogs/Associations/List.hs+180

This diff is too big to show here.

gogol-cloudprivatecatalogproducer/gen/Network/Google/Resource/CloudPrivateCatalogProducer/Catalogs/Create.hs+150

This diff is too big to show here.

gogol-cloudprivatecatalogproducer/gen/Network/Google/Resource/CloudPrivateCatalogProducer/Catalogs/Delete.hs+167

This diff is too big to show here.

gogol-cloudprivatecatalogproducer/gen/Network/Google/Resource/CloudPrivateCatalogProducer/Catalogs/Get.hs+149

This diff is too big to show here.

gogol-cloudprivatecatalogproducer/gen/Network/Google/Resource/CloudPrivateCatalogProducer/Catalogs/GetIAMPolicy.hs+152

This diff is too big to show here.

gogol-cloudprivatecatalogproducer/gen/Network/Google/Resource/CloudPrivateCatalogProducer/Catalogs/List.hs+178

This diff is too big to show here.

gogol-cloudprivatecatalogproducer/gen/Network/Google/Resource/CloudPrivateCatalogProducer/Catalogs/Patch.hs+177

This diff is too big to show here.

gogol-cloudprivatecatalogproducer/gen/Network/Google/Resource/CloudPrivateCatalogProducer/Catalogs/Products/Copy.hs+160

This diff is too big to show here.

gogol-cloudprivatecatalogproducer/gen/Network/Google/Resource/CloudPrivateCatalogProducer/Catalogs/Products/Create.hs+168

This diff is too big to show here.

gogol-cloudprivatecatalogproducer/gen/Network/Google/Resource/CloudPrivateCatalogProducer/Catalogs/Products/Delete.hs+149

This diff is too big to show here.

gogol-cloudprivatecatalogproducer/gen/Network/Google/Resource/CloudPrivateCatalogProducer/Catalogs/Products/Get.hs+151

This diff is too big to show here.

gogol-cloudprivatecatalogproducer/gen/Network/Google/Resource/CloudPrivateCatalogProducer/Catalogs/Products/Icons/Upload.hs+176

This diff is too big to show here.

gogol-cloudprivatecatalogproducer/gen/Network/Google/Resource/CloudPrivateCatalogProducer/Catalogs/Products/List.hs+195

This diff is too big to show here.

gogol-cloudprivatecatalogproducer/gen/Network/Google/Resource/CloudPrivateCatalogProducer/Catalogs/Products/Patch.hs+183

This diff is too big to show here.

gogol-cloudprivatecatalogproducer/gen/Network/Google/Resource/CloudPrivateCatalogProducer/Catalogs/Products/Versions/Create.hs+169

This diff is too big to show here.

gogol-cloudprivatecatalogproducer/gen/Network/Google/Resource/CloudPrivateCatalogProducer/Catalogs/Products/Versions/Delete.hs+153

This diff is too big to show here.

gogol-cloudprivatecatalogproducer/gen/Network/Google/Resource/CloudPrivateCatalogProducer/Catalogs/Products/Versions/Get.hs+153

This diff is too big to show here.

gogol-cloudprivatecatalogproducer/gen/Network/Google/Resource/CloudPrivateCatalogProducer/Catalogs/Products/Versions/List.hs+185

This diff is too big to show here.

gogol-cloudprivatecatalogproducer/gen/Network/Google/Resource/CloudPrivateCatalogProducer/Catalogs/Products/Versions/Patch.hs+186

This diff is too big to show here.

gogol-cloudprivatecatalogproducer/gen/Network/Google/Resource/CloudPrivateCatalogProducer/Catalogs/SetIAMPolicy.hs+165

This diff is too big to show here.

gogol-cloudprivatecatalogproducer/gen/Network/Google/Resource/CloudPrivateCatalogProducer/Catalogs/TestIAMPermissions.hs+168

This diff is too big to show here.

gogol-cloudprivatecatalogproducer/gen/Network/Google/Resource/CloudPrivateCatalogProducer/Catalogs/Undelete.hs+165

This diff is too big to show here.

gogol-cloudprivatecatalogproducer/gen/Network/Google/Resource/CloudPrivateCatalogProducer/Operations/Cancel.hs+178

This diff is too big to show here.

gogol-cloudprivatecatalogproducer/gen/Network/Google/Resource/CloudPrivateCatalogProducer/Operations/Delete.hs+154

This diff is too big to show here.

gogol-cloudprivatecatalogproducer/gen/Network/Google/Resource/CloudPrivateCatalogProducer/Operations/Get.hs+151

This diff is too big to show here.

gogol-cloudprivatecatalogproducer/gen/Network/Google/Resource/CloudPrivateCatalogProducer/Operations/List.hs+202

This diff is too big to show here.

gogol-cloudprivatecatalogproducer/gogol-cloudprivatecatalogproducer.cabal+75

This diff is too big to show here.

gogol-cloudprivatecatalogproducer/src/.gitkeep

This diff is too big to show here.

gogol-cloudprofiler/LICENSE+367

This diff is too big to show here.

gogol-cloudprofiler/Makefile+1

This diff is too big to show here.

gogol-cloudprofiler/README.md+28

This diff is too big to show here.

gogol-cloudprofiler/Setup.hs+2

This diff is too big to show here.

gogol-cloudprofiler/gen/Network/Google/CloudProFiler.hs+99

This diff is too big to show here.

gogol-cloudprofiler/gen/Network/Google/CloudProFiler/Types.hs+88

This diff is too big to show here.

gogol-cloudprofiler/gen/Network/Google/CloudProFiler/Types/Product.hs+337

This diff is too big to show here.

gogol-cloudprofiler/gen/Network/Google/CloudProFiler/Types/Sum.hs+114

This diff is too big to show here.

gogol-cloudprofiler/gen/Network/Google/Resource/CloudProFiler/Projects/ProFiles/Create.hs+185

This diff is too big to show here.

gogol-cloudprofiler/gen/Network/Google/Resource/CloudProFiler/Projects/ProFiles/CreateOffline.hs+173

This diff is too big to show here.

gogol-cloudprofiler/gen/Network/Google/Resource/CloudProFiler/Projects/ProFiles/Patch.hs+186

This diff is too big to show here.

gogol-cloudprofiler/gogol-cloudprofiler.cabal+48

This diff is too big to show here.

gogol-cloudprofiler/src/.gitkeep

This diff is too big to show here.

gogol-cloudscheduler/LICENSE+367

This diff is too big to show here.

gogol-cloudscheduler/Makefile+1

This diff is too big to show here.

gogol-cloudscheduler/README.md+28

This diff is too big to show here.

gogol-cloudscheduler/Setup.hs+2

This diff is too big to show here.

gogol-cloudscheduler/gen/Network/Google/CloudScheduler.hs+250

This diff is too big to show here.

gogol-cloudscheduler/gen/Network/Google/CloudScheduler/Types.hs+195

This diff is too big to show here.

gogol-cloudscheduler/gen/Network/Google/CloudScheduler/Types/Product.hs+1506

This diff is too big to show here.

gogol-cloudscheduler/gen/Network/Google/CloudScheduler/Types/Sum.hs+215

This diff is too big to show here.

gogol-cloudscheduler/gen/Network/Google/Resource/CloudScheduler/Projects/Locations/Get.hs+148

This diff is too big to show here.

gogol-cloudscheduler/gen/Network/Google/Resource/CloudScheduler/Projects/Locations/Jobs/Create.hs+166

This diff is too big to show here.

gogol-cloudscheduler/gen/Network/Google/Resource/CloudScheduler/Projects/Locations/Jobs/Delete.hs+151

This diff is too big to show here.

gogol-cloudscheduler/gen/Network/Google/Resource/CloudScheduler/Projects/Locations/Jobs/Get.hs+150

This diff is too big to show here.

gogol-cloudscheduler/gen/Network/Google/Resource/CloudScheduler/Projects/Locations/Jobs/List.hs+187

This diff is too big to show here.

gogol-cloudscheduler/gen/Network/Google/Resource/CloudScheduler/Projects/Locations/Jobs/Patch.hs+196

This diff is too big to show here.

gogol-cloudscheduler/gen/Network/Google/Resource/CloudScheduler/Projects/Locations/Jobs/Pause.hs+169

This diff is too big to show here.

gogol-cloudscheduler/gen/Network/Google/Resource/CloudScheduler/Projects/Locations/Jobs/Resume.hs+170

This diff is too big to show here.

gogol-cloudscheduler/gen/Network/Google/Resource/CloudScheduler/Projects/Locations/Jobs/Run.hs+160

This diff is too big to show here.

gogol-cloudscheduler/gen/Network/Google/Resource/CloudScheduler/Projects/Locations/List.hs+187

This diff is too big to show here.

gogol-cloudscheduler/gogol-cloudscheduler.cabal+55

This diff is too big to show here.

gogol-cloudscheduler/src/.gitkeep

This diff is too big to show here.

gogol-cloudsearch/LICENSE+367

This diff is too big to show here.

gogol-cloudsearch/Makefile+1

This diff is too big to show here.

gogol-cloudsearch/README.md+28

This diff is too big to show here.

gogol-cloudsearch/Setup.hs+2

This diff is too big to show here.

gogol-cloudsearch/gen/Network/Google/CloudSearch.hs+1291

This diff is too big to show here.

gogol-cloudsearch/gen/Network/Google/CloudSearch/Types.hs+1143

This diff is too big to show here.

gogol-cloudsearch/gen/Network/Google/CloudSearch/Types/Product.hs+9016

This diff is too big to show here.

gogol-cloudsearch/gen/Network/Google/CloudSearch/Types/Sum.hs+1404

This diff is too big to show here.

gogol-cloudsearch/gen/Network/Google/Resource/CloudSearch/Debug/Datasources/Items/CheckAccess.hs+185

This diff is too big to show here.

gogol-cloudsearch/gen/Network/Google/Resource/CloudSearch/Debug/Datasources/Items/SearchByViewURL.hs+177

This diff is too big to show here.

gogol-cloudsearch/gen/Network/Google/Resource/CloudSearch/Debug/Datasources/Items/UnmAppedids/List.hs+202

This diff is too big to show here.

gogol-cloudsearch/gen/Network/Google/Resource/CloudSearch/Debug/Identitysources/Items/ListForunmAppedidentity.hs+233

This diff is too big to show here.

gogol-cloudsearch/gen/Network/Google/Resource/CloudSearch/Debug/Identitysources/UnmAppedids/List.hs+216

This diff is too big to show here.

gogol-cloudsearch/gen/Network/Google/Resource/CloudSearch/Indexing/Datasources/DeleteSchema.hs+171

This diff is too big to show here.

gogol-cloudsearch/gen/Network/Google/Resource/CloudSearch/Indexing/Datasources/GetSchema.hs+168

This diff is too big to show here.

gogol-cloudsearch/gen/Network/Google/Resource/CloudSearch/Indexing/Datasources/Items/Delete.hs+213

This diff is too big to show here.

gogol-cloudsearch/gen/Network/Google/Resource/CloudSearch/Indexing/Datasources/Items/DeleteQueueItems.hs+180

This diff is too big to show here.

gogol-cloudsearch/gen/Network/Google/Resource/CloudSearch/Indexing/Datasources/Items/Get.hs+181

This diff is too big to show here.

gogol-cloudsearch/gen/Network/Google/Resource/CloudSearch/Indexing/Datasources/Items/Index.hs+172

This diff is too big to show here.

gogol-cloudsearch/gen/Network/Google/Resource/CloudSearch/Indexing/Datasources/Items/List.hs+226

This diff is too big to show here.

gogol-cloudsearch/gen/Network/Google/Resource/CloudSearch/Indexing/Datasources/Items/Poll.hs+192

This diff is too big to show here.

gogol-cloudsearch/gen/Network/Google/Resource/CloudSearch/Indexing/Datasources/Items/Push.hs+167

This diff is too big to show here.

gogol-cloudsearch/gen/Network/Google/Resource/CloudSearch/Indexing/Datasources/Items/Unreserve.hs+174

This diff is too big to show here.

gogol-cloudsearch/gen/Network/Google/Resource/CloudSearch/Indexing/Datasources/Items/Upload.hs+170

This diff is too big to show here.

gogol-cloudsearch/gen/Network/Google/Resource/CloudSearch/Indexing/Datasources/UpdateSchema.hs+171

This diff is too big to show here.

gogol-cloudsearch/gen/Network/Google/Resource/CloudSearch/Media/Upload.hs+211

This diff is too big to show here.

gogol-cloudsearch/gen/Network/Google/Resource/CloudSearch/Operations/Get.hs+155

This diff is too big to show here.

gogol-cloudsearch/gen/Network/Google/Resource/CloudSearch/Query/Search.hs+155

This diff is too big to show here.

gogol-cloudsearch/gen/Network/Google/Resource/CloudSearch/Query/Sources/List.hs+221

This diff is too big to show here.

gogol-cloudsearch/gen/Network/Google/Resource/CloudSearch/Query/Suggest.hs+151

This diff is too big to show here.

gogol-cloudsearch/gen/Network/Google/Resource/CloudSearch/Settings/Datasources/Create.hs+154

This diff is too big to show here.

gogol-cloudsearch/gen/Network/Google/Resource/CloudSearch/Settings/Datasources/Delete.hs+166

This diff is too big to show here.

gogol-cloudsearch/gen/Network/Google/Resource/CloudSearch/Settings/Datasources/Get.hs+165

This diff is too big to show here.

gogol-cloudsearch/gen/Network/Google/Resource/CloudSearch/Settings/Datasources/List.hs+183

This diff is too big to show here.

gogol-cloudsearch/gen/Network/Google/Resource/CloudSearch/Settings/Datasources/Update.hs+167

This diff is too big to show here.

gogol-cloudsearch/gen/Network/Google/Resource/CloudSearch/Settings/SearchApplications/Create.hs+158

This diff is too big to show here.

gogol-cloudsearch/gen/Network/Google/Resource/CloudSearch/Settings/SearchApplications/Delete.hs+170

This diff is too big to show here.

gogol-cloudsearch/gen/Network/Google/Resource/CloudSearch/Settings/SearchApplications/Get.hs+171

This diff is too big to show here.

gogol-cloudsearch/gen/Network/Google/Resource/CloudSearch/Settings/SearchApplications/List.hs+186

This diff is too big to show here.

gogol-cloudsearch/gen/Network/Google/Resource/CloudSearch/Settings/SearchApplications/Reset.hs+172

This diff is too big to show here.

gogol-cloudsearch/gen/Network/Google/Resource/CloudSearch/Settings/SearchApplications/Update.hs+170

This diff is too big to show here.

gogol-cloudsearch/gen/Network/Google/Resource/CloudSearch/Stats/GetIndex.hs+227

This diff is too big to show here.

gogol-cloudsearch/gen/Network/Google/Resource/CloudSearch/Stats/Index/Datasources/Get.hs+240

This diff is too big to show here.

gogol-cloudsearch/gogol-cloudsearch.cabal+82

This diff is too big to show here.

gogol-cloudsearch/src/.gitkeep

This diff is too big to show here.

gogol-cloudshell/LICENSE+367

This diff is too big to show here.

gogol-cloudshell/Makefile+1

This diff is too big to show here.

gogol-cloudshell/README.md+28

This diff is too big to show here.

gogol-cloudshell/Setup.hs+2

This diff is too big to show here.

gogol-cloudshell/gen/Network/Google/CloudShell.hs+149

This diff is too big to show here.

gogol-cloudshell/gen/Network/Google/CloudShell/Types.hs+124

This diff is too big to show here.

gogol-cloudshell/gen/Network/Google/CloudShell/Types/Product.hs+697

This diff is too big to show here.

gogol-cloudshell/gen/Network/Google/CloudShell/Types/Sum.hs+183

This diff is too big to show here.

gogol-cloudshell/gen/Network/Google/Resource/CloudShell/Operations/Cancel.hs+177

This diff is too big to show here.

gogol-cloudshell/gen/Network/Google/Resource/CloudShell/Operations/Delete.hs+153

This diff is too big to show here.

gogol-cloudshell/gen/Network/Google/Resource/CloudShell/Operations/Get.hs+150

This diff is too big to show here.

gogol-cloudshell/gen/Network/Google/Resource/CloudShell/Operations/List.hs+201

This diff is too big to show here.

gogol-cloudshell/gogol-cloudshell.cabal+50

This diff is too big to show here.

gogol-cloudshell/src/.gitkeep

This diff is too big to show here.

gogol-cloudtasks/LICENSE+367

This diff is too big to show here.

gogol-cloudtasks/Makefile+1

This diff is too big to show here.

gogol-cloudtasks/README.md+28

This diff is too big to show here.

gogol-cloudtasks/Setup.hs+2

This diff is too big to show here.

gogol-cloudtasks/gen/Network/Google/CloudTasks.hs+339

This diff is too big to show here.

gogol-cloudtasks/gen/Network/Google/CloudTasks/Types.hs+243

This diff is too big to show here.

gogol-cloudtasks/gen/Network/Google/CloudTasks/Types/Product.hs+2056

This diff is too big to show here.

gogol-cloudtasks/gen/Network/Google/CloudTasks/Types/Sum.hs+306

This diff is too big to show here.

gogol-cloudtasks/gen/Network/Google/Resource/CloudTasks/Projects/Locations/Get.hs+148

This diff is too big to show here.

gogol-cloudtasks/gen/Network/Google/Resource/CloudTasks/Projects/Locations/List.hs+187

This diff is too big to show here.

gogol-cloudtasks/gen/Network/Google/Resource/CloudTasks/Projects/Locations/Queues/Create.hs+183

This diff is too big to show here.

gogol-cloudtasks/gen/Network/Google/Resource/CloudTasks/Projects/Locations/Queues/Delete.hs+164

This diff is too big to show here.

gogol-cloudtasks/gen/Network/Google/Resource/CloudTasks/Projects/Locations/Queues/Get.hs+151

This diff is too big to show here.

gogol-cloudtasks/gen/Network/Google/Resource/CloudTasks/Projects/Locations/Queues/GetIAMPolicy.hs+181

This diff is too big to show here.

gogol-cloudtasks/gen/Network/Google/Resource/CloudTasks/Projects/Locations/Queues/List.hs+206

This diff is too big to show here.

gogol-cloudtasks/gen/Network/Google/Resource/CloudTasks/Projects/Locations/Queues/Patch.hs+205

This diff is too big to show here.

gogol-cloudtasks/gen/Network/Google/Resource/CloudTasks/Projects/Locations/Queues/Pause.hs+170

This diff is too big to show here.

gogol-cloudtasks/gen/Network/Google/Resource/CloudTasks/Projects/Locations/Queues/Purge.hs+166

This diff is too big to show here.

gogol-cloudtasks/gen/Network/Google/Resource/CloudTasks/Projects/Locations/Queues/Resume.hs+178

This diff is too big to show here.

gogol-cloudtasks/gen/Network/Google/Resource/CloudTasks/Projects/Locations/Queues/SetIAMPolicy.hs+183

This diff is too big to show here.

gogol-cloudtasks/gen/Network/Google/Resource/CloudTasks/Projects/Locations/Queues/Tasks/Create.hs+175

This diff is too big to show here.

gogol-cloudtasks/gen/Network/Google/Resource/CloudTasks/Projects/Locations/Queues/Tasks/Delete.hs+159

This diff is too big to show here.

gogol-cloudtasks/gen/Network/Google/Resource/CloudTasks/Projects/Locations/Queues/Tasks/Get.hs+174

This diff is too big to show here.

gogol-cloudtasks/gen/Network/Google/Resource/CloudTasks/Projects/Locations/Queues/Tasks/List.hs+218

This diff is too big to show here.

gogol-cloudtasks/gen/Network/Google/Resource/CloudTasks/Projects/Locations/Queues/Tasks/Run.hs+192

This diff is too big to show here.

gogol-cloudtasks/gen/Network/Google/Resource/CloudTasks/Projects/Locations/Queues/TestIAMPermissions.hs+185

This diff is too big to show here.

gogol-cloudtasks/gogol-cloudtasks.cabal+63

This diff is too big to show here.

gogol-cloudtasks/src/.gitkeep

This diff is too big to show here.

gogol-cloudtrace/LICENSE+367

This diff is too big to show here.

gogol-cloudtrace/Makefile+1

This diff is too big to show here.

gogol-cloudtrace/README.md+28

This diff is too big to show here.

gogol-cloudtrace/Setup.hs+2

This diff is too big to show here.

gogol-cloudtrace/gen/Network/Google/CloudTrace.hs+201

This diff is too big to show here.

gogol-cloudtrace/gen/Network/Google/CloudTrace/Types.hs+185

This diff is too big to show here.

gogol-cloudtrace/gen/Network/Google/CloudTrace/Types/Product.hs+1299

This diff is too big to show here.

gogol-cloudtrace/gen/Network/Google/CloudTrace/Types/Sum.hs+117

This diff is too big to show here.

gogol-cloudtrace/gen/Network/Google/Resource/CloudTrace/Projects/Traces/BatchWrite.hs+168

This diff is too big to show here.

gogol-cloudtrace/gen/Network/Google/Resource/CloudTrace/Projects/Traces/Spans/CreateSpan.hs+172

This diff is too big to show here.

gogol-cloudtrace/gogol-cloudtrace.cabal+52

This diff is too big to show here.

gogol-cloudtrace/src/.gitkeep

This diff is too big to show here.

gogol-commentanalyzer/LICENSE+367

This diff is too big to show here.

gogol-commentanalyzer/Makefile+1

This diff is too big to show here.

gogol-commentanalyzer/README.md+28

This diff is too big to show here.

gogol-commentanalyzer/Setup.hs+2

This diff is too big to show here.

gogol-commentanalyzer/gen/Network/Google/CommentAnalyzer.hs+168

This diff is too big to show here.

gogol-commentanalyzer/gen/Network/Google/CommentAnalyzer/Types.hs+148

This diff is too big to show here.

gogol-commentanalyzer/gen/Network/Google/CommentAnalyzer/Types/Product.hs+988

This diff is too big to show here.

gogol-commentanalyzer/gen/Network/Google/CommentAnalyzer/Types/Sum.hs+183

This diff is too big to show here.

gogol-commentanalyzer/gen/Network/Google/Resource/CommentAnalyzer/Comments/Analyze.hs+150

This diff is too big to show here.

gogol-commentanalyzer/gen/Network/Google/Resource/CommentAnalyzer/Comments/Suggestscore.hs+151

This diff is too big to show here.

gogol-commentanalyzer/gogol-commentanalyzer.cabal+53

This diff is too big to show here.

gogol-commentanalyzer/src/.gitkeep

This diff is too big to show here.

gogol-composer/LICENSE+367

This diff is too big to show here.

gogol-composer/Makefile+1

This diff is too big to show here.

gogol-composer/README.md+28

This diff is too big to show here.

gogol-composer/Setup.hs+2

This diff is too big to show here.

gogol-composer/gen/Network/Google/Composer.hs+232

This diff is too big to show here.

gogol-composer/gen/Network/Google/Composer/Types.hs+182

This diff is too big to show here.

gogol-composer/gen/Network/Google/Composer/Types/Product.hs+1393

This diff is too big to show here.

gogol-composer/gen/Network/Google/Composer/Types/Sum.hs+185

This diff is too big to show here.

gogol-composer/gen/Network/Google/Resource/Composer/Projects/Locations/Environments/Create.hs+170

This diff is too big to show here.

gogol-composer/gen/Network/Google/Resource/Composer/Projects/Locations/Environments/Delete.hs+155

This diff is too big to show here.

gogol-composer/gen/Network/Google/Resource/Composer/Projects/Locations/Environments/Get.hs+154

This diff is too big to show here.

gogol-composer/gen/Network/Google/Resource/Composer/Projects/Locations/Environments/List.hs+183

This diff is too big to show here.

gogol-composer/gen/Network/Google/Resource/Composer/Projects/Locations/Environments/Patch.hs+294

This diff is too big to show here.

gogol-composer/gen/Network/Google/Resource/Composer/Projects/Locations/ImageVersions/List.hs+185

This diff is too big to show here.

gogol-composer/gen/Network/Google/Resource/Composer/Projects/Locations/Operations/Delete.hs+158

This diff is too big to show here.

gogol-composer/gen/Network/Google/Resource/Composer/Projects/Locations/Operations/Get.hs+155

This diff is too big to show here.

gogol-composer/gen/Network/Google/Resource/Composer/Projects/Locations/Operations/List.hs+211

This diff is too big to show here.

gogol-composer/gogol-composer.cabal+54

This diff is too big to show here.

gogol-composer/src/.gitkeep

This diff is too big to show here.

gogol-compute-autoscaler/LICENSE−373

This diff is too big to show here.

gogol-compute-autoscaler/README.md−28

This diff is too big to show here.

gogol-compute-autoscaler/gen/Network/Google/ComputeAutoscaler.hs−197

This diff is too big to show here.

gogol-compute-autoscaler/gen/Network/Google/ComputeAutoscaler/Types.hs−143

This diff is too big to show here.

gogol-compute-autoscaler/gen/Network/Google/ComputeAutoscaler/Types/Product.hs−1054

This diff is too big to show here.

gogol-compute-autoscaler/gen/Network/Google/ComputeAutoscaler/Types/Sum.hs−18

This diff is too big to show here.

gogol-compute-autoscaler/gen/Network/Google/Resource/Autoscaler/Autoscalers/Delete.hs−182

This diff is too big to show here.

gogol-compute-autoscaler/gen/Network/Google/Resource/Autoscaler/Autoscalers/Get.hs−181

This diff is too big to show here.

gogol-compute-autoscaler/gen/Network/Google/Resource/Autoscaler/Autoscalers/Insert.hs−169

This diff is too big to show here.

gogol-compute-autoscaler/gen/Network/Google/Resource/Autoscaler/Autoscalers/List.hs−201

This diff is too big to show here.

gogol-compute-autoscaler/gen/Network/Google/Resource/Autoscaler/Autoscalers/Patch.hs−184

This diff is too big to show here.

gogol-compute-autoscaler/gen/Network/Google/Resource/Autoscaler/Autoscalers/Update.hs−182

This diff is too big to show here.

gogol-compute-autoscaler/gen/Network/Google/Resource/Autoscaler/ZoneOperations/Delete.hs−182

This diff is too big to show here.

gogol-compute-autoscaler/gen/Network/Google/Resource/Autoscaler/ZoneOperations/Get.hs−182

This diff is too big to show here.

gogol-compute-autoscaler/gen/Network/Google/Resource/Autoscaler/ZoneOperations/List.hs−207

This diff is too big to show here.

gogol-compute-autoscaler/gen/Network/Google/Resource/Autoscaler/Zones/List.hs−184

This diff is too big to show here.

gogol-compute-autoscaler/gogol-compute-autoscaler.cabal−53

This diff is too big to show here.

gogol-compute-useraccounts/LICENSE−373

This diff is too big to show here.

gogol-compute-useraccounts/README.md−28

This diff is too big to show here.

gogol-compute-useraccounts/gen/Network/Google/ComputeUserAccounts.hs−248

This diff is too big to show here.

gogol-compute-useraccounts/gen/Network/Google/ComputeUserAccounts/Types.hs−166

This diff is too big to show here.

gogol-compute-useraccounts/gen/Network/Google/ComputeUserAccounts/Types/Product.hs−1278

This diff is too big to show here.

gogol-compute-useraccounts/gen/Network/Google/ComputeUserAccounts/Types/Sum.hs−18

This diff is too big to show here.

gogol-compute-useraccounts/gen/Network/Google/Resource/Clouduseraccounts/GlobalAccountsOperations/Delete.hs−177

This diff is too big to show here.

gogol-compute-useraccounts/gen/Network/Google/Resource/Clouduseraccounts/GlobalAccountsOperations/Get.hs−176

This diff is too big to show here.

gogol-compute-useraccounts/gen/Network/Google/Resource/Clouduseraccounts/GlobalAccountsOperations/List.hs−234

This diff is too big to show here.

gogol-compute-useraccounts/gen/Network/Google/Resource/Clouduseraccounts/Groups/AddMember.hs−173

This diff is too big to show here.

gogol-compute-useraccounts/gen/Network/Google/Resource/Clouduseraccounts/Groups/Delete.hs−167

This diff is too big to show here.

gogol-compute-useraccounts/gen/Network/Google/Resource/Clouduseraccounts/Groups/Get.hs−166

This diff is too big to show here.

gogol-compute-useraccounts/gen/Network/Google/Resource/Clouduseraccounts/Groups/Insert.hs−155

This diff is too big to show here.

gogol-compute-useraccounts/gen/Network/Google/Resource/Clouduseraccounts/Groups/List.hs−221

This diff is too big to show here.

gogol-compute-useraccounts/gen/Network/Google/Resource/Clouduseraccounts/Groups/RemoveMember.hs−174

This diff is too big to show here.

gogol-compute-useraccounts/gen/Network/Google/Resource/Clouduseraccounts/Linux/GetAuthorizedKeysView.hs−217

This diff is too big to show here.

gogol-compute-useraccounts/gen/Network/Google/Resource/Clouduseraccounts/Linux/GetLinuxAccountViews.hs−262

This diff is too big to show here.

gogol-compute-useraccounts/gen/Network/Google/Resource/Clouduseraccounts/Users/AddPublicKey.hs−176

This diff is too big to show here.

gogol-compute-useraccounts/gen/Network/Google/Resource/Clouduseraccounts/Users/Delete.hs−165

This diff is too big to show here.

gogol-compute-useraccounts/gen/Network/Google/Resource/Clouduseraccounts/Users/Get.hs−164

This diff is too big to show here.

gogol-compute-useraccounts/gen/Network/Google/Resource/Clouduseraccounts/Users/Insert.hs−154

This diff is too big to show here.

gogol-compute-useraccounts/gen/Network/Google/Resource/Clouduseraccounts/Users/List.hs−221

This diff is too big to show here.

gogol-compute-useraccounts/gen/Network/Google/Resource/Clouduseraccounts/Users/RemovePublicKey.hs−191

This diff is too big to show here.

gogol-compute-useraccounts/gogol-compute-useraccounts.cabal−59

This diff is too big to show here.

gogol-compute/LICENSE−6

This diff is too big to show here.

gogol-compute/README.md+4−4

This diff is too big to show here.

gogol-compute/gen/Network/Google/Compute.hs+6548−986

This diff is too big to show here.

gogol-compute/gen/Network/Google/Compute/Types.hs+4868−608

This diff is too big to show here.

gogol-compute/gen/Network/Google/Compute/Types/Product.hs+44902−9190

This diff is too big to show here.

gogol-compute/gen/Network/Google/Compute/Types/Sum.hs+16828−2

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/AcceleratorTypes/AggregatedList.hs+175

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/AcceleratorTypes/Get.hs+120

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/AcceleratorTypes/List.hs+184

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Addresses/AggregatedList.hs+95−134

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Addresses/Delete.hs+88−127

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Addresses/Get.hs+68−128

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Addresses/Insert.hs+75−104

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Addresses/List.hs+99−136

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Autoscalers/AggregatedList.hs+125−156

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Autoscalers/Delete.hs+91−139

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Autoscalers/Get.hs+73−139

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Autoscalers/Insert.hs+94−127

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Autoscalers/List.hs+131−176

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Autoscalers/Patch.hs+91−121

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Autoscalers/Update.hs+88−118

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/BackendBuckets/AddSignedURLKey.hs+151

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/BackendBuckets/Delete.hs+127

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/BackendBuckets/DeleteSignedURLKey.hs+151

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/BackendBuckets/Get.hs+107

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/BackendBuckets/Insert.hs+129

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/BackendBuckets/List.hs+172

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/BackendBuckets/Patch.hs+145

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/BackendBuckets/Update.hs+143

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/BackendServices/AddSignedURLKey.hs+151

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/BackendServices/AggregatedList.hs+177

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/BackendServices/Delete.hs+63−110

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/BackendServices/DeleteSignedURLKey.hs+151

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/BackendServices/Get.hs+51−117

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/BackendServices/GetHealth.hs+59−113

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/BackendServices/Insert.hs+80−108

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/BackendServices/List.hs+97−136

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/BackendServices/Patch.hs+87−114

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/BackendServices/SetSecurityPolicy.hs+148

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/BackendServices/Update.hs+84−111

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/DiskTypes/AggregatedList.hs+95−134

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/DiskTypes/Get.hs+54−118

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/DiskTypes/List.hs+98−139

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Disks/AggregatedList.hs+96−135

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Disks/CreateSnapshot.hs+95−117

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Disks/Delete.hs+66−107

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Disks/Get.hs+52−114

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Disks/GetIAMPolicy.hs+121

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Disks/Insert.hs+85−109

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Disks/List.hs+98−132

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Disks/Resize.hs+152

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Disks/SetIAMPolicy.hs+134

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Disks/SetLabels.hs+153

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Disks/TestIAMPermissions.hs+134

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Firewalls/Delete.hs+66−107

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Firewalls/Get.hs+47−111

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Firewalls/Insert.hs+76−106

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Firewalls/List.hs+94−131

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Firewalls/Patch.hs+81−108

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Firewalls/Update.hs+82−108

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/ForwardingRules/AggregatedList.hs+99−138

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/ForwardingRules/Delete.hs+67−114

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/ForwardingRules/Get.hs+51−117

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/ForwardingRules/Insert.hs+78−110

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/ForwardingRules/List.hs+105−144

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/ForwardingRules/SetTarget.hs+87−118

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/GlobalAddresses/Delete.hs+63−109

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/GlobalAddresses/Get.hs+49−116

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/GlobalAddresses/Insert.hs+71−103

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/GlobalAddresses/List.hs+95−135

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/GlobalForwardingRules/Delete.hs+66−113

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/GlobalForwardingRules/Get.hs+51−119

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/GlobalForwardingRules/Insert.hs+78−110

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/GlobalForwardingRules/List.hs+98−137

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/GlobalForwardingRules/SetTarget.hs+86−115

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/GlobalOperations/AggregatedList.hs+97−136

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/GlobalOperations/Delete.hs+45−114

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/GlobalOperations/Get.hs+50−116

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/GlobalOperations/List.hs+95−135

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/HTTPHealthChecks/Delete.hs+74−125

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/HTTPHealthChecks/Get.hs+61−130

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/HTTPHealthChecks/Insert.hs+76−112

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/HTTPHealthChecks/List.hs+98−141

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/HTTPHealthChecks/Patch.hs+93−127

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/HTTPHealthChecks/Update.hs+87−123

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/HTTPSHealthChecks/Delete.hs+129

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/HTTPSHealthChecks/Get.hs+111

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/HTTPSHealthChecks/Insert.hs+130

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/HTTPSHealthChecks/List.hs+174

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/HTTPSHealthChecks/Patch.hs+147

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/HTTPSHealthChecks/Update.hs+145

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/HealthChecks/Delete.hs+127

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/HealthChecks/Get.hs+107

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/HealthChecks/Insert.hs+128

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/HealthChecks/List.hs+172

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/HealthChecks/Patch.hs+145

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/HealthChecks/Update.hs+142

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Images/Delete.hs+76−115

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Images/Deprecate.hs+89−116

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Images/Get.hs+57−117

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Images/GetFromFamily.hs+107

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Images/GetIAMPolicy.hs+107

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Images/Insert.hs+88−99

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Images/List.hs+132−154

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Images/SetIAMPolicy.hs+125

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Images/SetLabels.hs+122

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Images/TestIAMPermissions.hs+125

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/InstanceGroupManagers/AbandonInstances.hs+114−125

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/InstanceGroupManagers/AggregatedList.hs+100−140

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/InstanceGroupManagers/Delete.hs+76−119

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/InstanceGroupManagers/DeleteInstances.hs+110−125

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/InstanceGroupManagers/Get.hs+59−123

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/InstanceGroupManagers/Insert.hs+97−116

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/InstanceGroupManagers/List.hs+101−141

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/InstanceGroupManagers/ListManagedInstances.hs+146−122

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/InstanceGroupManagers/Patch.hs+168

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/InstanceGroupManagers/RecreateInstances.hs+108−121

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/InstanceGroupManagers/Resize.hs+106−128

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/InstanceGroupManagers/SetInstanceTemplate.hs+92−120

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/InstanceGroupManagers/SetTargetPools.hs+101−126

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/InstanceGroups/AddInstances.hs+90−120

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/InstanceGroups/AggregatedList.hs+98−137

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/InstanceGroups/Delete.hs+74−117

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/InstanceGroups/Get.hs+73−139

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/InstanceGroups/Insert.hs+80−112

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/InstanceGroups/List.hs+102−141

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/InstanceGroups/ListInstances.hs+115−144

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/InstanceGroups/RemoveInstances.hs+95−119

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/InstanceGroups/SetNamedPorts.hs+86−118

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/InstanceTemplates/Delete.hs+69−112

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/InstanceTemplates/Get.hs+51−117

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/InstanceTemplates/GetIAMPolicy.hs+110

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/InstanceTemplates/Insert.hs+82−108

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/InstanceTemplates/List.hs+99−138

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/InstanceTemplates/SetIAMPolicy.hs+125

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/InstanceTemplates/TestIAMPermissions.hs+127

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Instances/AddAccessConfig.hs+83−117

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Instances/AggregatedList.hs+126−160

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Instances/AttachDisk.hs+121−134

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Instances/Delete.hs+85−131

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Instances/DeleteAccessConfig.hs+74−121

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Instances/DetachDisk.hs+103−148

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Instances/Get.hs+66−133

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Instances/GetIAMPolicy.hs+124

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Instances/GetSerialPortOutput.hs+76−125

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Instances/GetShieldedInstanceIdentity.hs+127

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Instances/Insert.hs+104−118

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Instances/List.hs+129−170

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Instances/ListReferrers.hs+202

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Instances/Reset.hs+87−132

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Instances/SetDeletionProtection.hs+155

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Instances/SetDiskAutoDelete.hs+82−128

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Instances/SetIAMPolicy.hs+134

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Instances/SetLabels.hs+154

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Instances/SetMachineResources.hs+157

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Instances/SetMachineType.hs+156

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Instances/SetMetadata.hs+81−115

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Instances/SetMinCPUPlatform.hs+161

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Instances/SetScheduling.hs+83−117

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Instances/SetServiceAccount.hs+157

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Instances/SetShieldedInstanceIntegrityPolicy.hs+171

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Instances/SetTags.hs+83−117

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Instances/SimulateMaintenanceEvent.hs+121

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Instances/Start.hs+89−130

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Instances/StartWithEncryptionKey.hs+162

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Instances/Stop.hs+95−142

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Instances/TestIAMPermissions.hs+135

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Instances/UpdateAccessConfig.hs+175

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Instances/UpdateNetworkInterface.hs+173

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Instances/UpdateShieldedInstanceConfig.hs+165

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/InterconnectAttachments/AggregatedList.hs+177

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/InterconnectAttachments/Delete.hs+143

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/InterconnectAttachments/Get.hs+124

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/InterconnectAttachments/Insert.hs+144

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/InterconnectAttachments/List.hs+187

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/InterconnectAttachments/Patch.hs+160

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/InterconnectLocations/Get.hs+112

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/InterconnectLocations/List.hs+174

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Interconnects/Delete.hs+127

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Interconnects/Get.hs+105

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Interconnects/GetDiagnostics.hs+109

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Interconnects/Insert.hs+130

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Interconnects/List.hs+168

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Interconnects/Patch.hs+145

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/LicenseCodes/Get.hs+107

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/LicenseCodes/TestIAMPermissions.hs+125

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Licenses/Delete.hs+122

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Licenses/Get.hs+47−110

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Licenses/GetIAMPolicy.hs+107

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Licenses/Insert.hs+125

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Licenses/List.hs+177

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Licenses/SetIAMPolicy.hs+122

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Licenses/TestIAMPermissions.hs+123

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/MachineTypes/AggregatedList.hs+95−134

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/MachineTypes/Get.hs+54−117

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/MachineTypes/List.hs+100−141

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/NetworkEndpointGroups/AggregatedList.hs+177

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/NetworkEndpointGroups/AttachNetworkEndpoints.hs+173

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/NetworkEndpointGroups/Delete.hs+149

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/NetworkEndpointGroups/DetachNetworkEndpoints.hs+173

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/NetworkEndpointGroups/Get.hs+124

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/NetworkEndpointGroups/Insert.hs+144

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/NetworkEndpointGroups/List.hs+188

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/NetworkEndpointGroups/ListNetworkEndpoints.hs+231

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/NetworkEndpointGroups/TestIAMPermissions.hs+144

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Networks/AddPeering.hs+141

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Networks/Delete.hs+67−112

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Networks/Get.hs+49−110

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Networks/Insert.hs+75−106

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Networks/List.hs+94−131

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Networks/Patch.hs+140

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Networks/RemovePeering.hs+141

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Networks/SwitchToCustomMode.hs+129

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/NodeGroups/AddNodes.hs+155

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/NodeGroups/AggregatedList.hs+175

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/NodeGroups/Delete.hs+137

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/NodeGroups/DeleteNodes.hs+155

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/NodeGroups/Get.hs+121

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/NodeGroups/GetIAMPolicy.hs+123

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/NodeGroups/Insert.hs+155

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/NodeGroups/List.hs+182

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/NodeGroups/ListNodes.hs+199

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/NodeGroups/SetIAMPolicy.hs+136

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/NodeGroups/SetNodeTemplate.hs+157

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/NodeGroups/TestIAMPermissions.hs+137

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/NodeTemplates/AggregatedList.hs+168

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/NodeTemplates/Delete.hs+140

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/NodeTemplates/Get.hs+122

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/NodeTemplates/GetIAMPolicy.hs+124

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/NodeTemplates/Insert.hs+142

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/NodeTemplates/List.hs+183

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/NodeTemplates/SetIAMPolicy.hs+137

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/NodeTemplates/TestIAMPermissions.hs+139

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/NodeTypes/AggregatedList.hs+173

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/NodeTypes/Get.hs+118

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/NodeTypes/List.hs+181

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Projects/DisableXpnHost.hs+111

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Projects/DisableXpnResource.hs+130

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Projects/EnableXpnHost.hs+111

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Projects/EnableXpnResource.hs+132

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Projects/Get.hs+39−102

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Projects/GetXpnHost.hs+91

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Projects/GetXpnResources.hs+173

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Projects/ListXpnHosts.hs+185

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Projects/MoveDisk.hs+71−103

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Projects/MoveInstance.hs+71−103

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Projects/SetCommonInstanceMetadata.hs+72−105

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Projects/SetDefaultNetworkTier.hs+133

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Projects/SetUsageExportBucket.hs+74−103

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/RegionAutoscalers/Delete.hs+140

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/RegionAutoscalers/Get.hs+120

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/RegionAutoscalers/Insert.hs+141

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/RegionAutoscalers/List.hs+183

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/RegionAutoscalers/Patch.hs+156

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/RegionAutoscalers/Update.hs+154

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/RegionBackendServices/Delete.hs+142

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/RegionBackendServices/Get.hs+121

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/RegionBackendServices/GetHealth.hs+139

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/RegionBackendServices/Insert.hs+148

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/RegionBackendServices/List.hs+189

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/RegionBackendServices/Patch.hs+164

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/RegionBackendServices/Update.hs+162

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/RegionCommitments/AggregatedList.hs+176

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/RegionCommitments/Get.hs+122

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/RegionCommitments/Insert.hs+141

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/RegionCommitments/List.hs+183

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/RegionDiskTypes/Get.hs+121

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/RegionDiskTypes/List.hs+187

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/RegionDisks/CreateSnapshot.hs+154

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/RegionDisks/Delete.hs+143

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/RegionDisks/Get.hs+113

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/RegionDisks/Insert.hs+154

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/RegionDisks/List.hs+184

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/RegionDisks/Resize.hs+152

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/RegionDisks/SetLabels.hs+155

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/RegionDisks/TestIAMPermissions.hs+138

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/RegionInstanceGroupManagers/AbandonInstances.hs+193

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/RegionInstanceGroupManagers/Delete.hs+147

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/RegionInstanceGroupManagers/DeleteInstances.hs+191

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/RegionInstanceGroupManagers/Get.hs+125

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/RegionInstanceGroupManagers/Insert.hs+156

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/RegionInstanceGroupManagers/List.hs+191

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/RegionInstanceGroupManagers/ListManagedInstances.hs+220

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/RegionInstanceGroupManagers/Patch.hs+171

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/RegionInstanceGroupManagers/RecreateInstances.hs+187

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/RegionInstanceGroupManagers/Resize.hs+178

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/RegionInstanceGroupManagers/SetInstanceTemplate.hs+173

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/RegionInstanceGroupManagers/SetTargetPools.hs+171

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/RegionInstanceGroups/Get.hs+120

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/RegionInstanceGroups/List.hs+188

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/RegionInstanceGroups/ListInstances.hs+227

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/RegionInstanceGroups/SetNamedPorts.hs+164

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/RegionOperations/Delete.hs+51−118

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/RegionOperations/Get.hs+52−118

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/RegionOperations/List.hs+100−140

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Regions/Get.hs+56−122

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Regions/List.hs+117−147

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Routers/AggregatedList.hs+166

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Routers/Delete.hs+139

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Routers/Get.hs+119

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Routers/GetNATMAppingInfo.hs+206

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Routers/GetRouterStatus.hs+121

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Routers/Insert.hs+138

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Routers/List.hs+178

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Routers/Patch.hs+152

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Routers/Preview.hs+134

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Routers/Update.hs+150

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Routes/Delete.hs+68−113

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Routes/Get.hs+62−122

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Routes/Insert.hs+80−107

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Routes/List.hs+123−155

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/SSLCertificates/Delete.hs+127

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/SSLCertificates/Get.hs+108

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/SSLCertificates/Insert.hs+129

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/SSLCertificates/List.hs+172

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/SSLPolicies/Delete.hs+131

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/SSLPolicies/Get.hs+103

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/SSLPolicies/Insert.hs+129

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/SSLPolicies/List.hs+174

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/SSLPolicies/ListAvailableFeatures.hs+180

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/SSLPolicies/Patch.hs+140

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/SecurityPolicies/AddRule.hs+121

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/SecurityPolicies/Delete.hs+128

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/SecurityPolicies/Get.hs+106

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/SecurityPolicies/GetRule.hs+122

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/SecurityPolicies/Insert.hs+129

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/SecurityPolicies/List.hs+172

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/SecurityPolicies/Patch.hs+139

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/SecurityPolicies/PatchRule.hs+135

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/SecurityPolicies/RemoveRule.hs+121

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Snapshots/Delete.hs+80−122

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Snapshots/Get.hs+61−124

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Snapshots/GetIAMPolicy.hs+109

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Snapshots/List.hs+121−154

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Snapshots/SetIAMPolicy.hs+122

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Snapshots/SetLabels.hs+122

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Snapshots/TestIAMPermissions.hs+123

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Subnetworks/AggregatedList.hs+172

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Subnetworks/Delete.hs+137

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Subnetworks/ExpandIPCIdRRange.hs+161

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Subnetworks/Get.hs+119

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Subnetworks/GetIAMPolicy.hs+122

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Subnetworks/Insert.hs+139

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Subnetworks/List.hs+180

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Subnetworks/ListUsable.hs+172

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Subnetworks/Patch.hs+156

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Subnetworks/SetIAMPolicy.hs+138

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Subnetworks/SetPrivateIPGoogleAccess.hs+166

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Subnetworks/TestIAMPermissions.hs+140

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetHTTPProxies/Delete.hs+74−125

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetHTTPProxies/Get.hs+61−130

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetHTTPProxies/Insert.hs+76−112

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetHTTPProxies/List.hs+98−141

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetHTTPProxies/SetURLMap.hs+87−122

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetHTTPSProxies/Delete.hs+129

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetHTTPSProxies/Get.hs+111

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetHTTPSProxies/Insert.hs+130

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetHTTPSProxies/List.hs+174

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetHTTPSProxies/SetQuicOverride.hs+151

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetHTTPSProxies/SetSSLCertificates.hs+152

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetHTTPSProxies/SetSSLPolicy.hs+155

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetHTTPSProxies/SetURLMap.hs+146

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetInstances/AggregatedList.hs+99−138

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetInstances/Delete.hs+67−114

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetInstances/Get.hs+55−119

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetInstances/Insert.hs+79−111

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetInstances/List.hs+105−144

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetPools/AddHealthCheck.hs+90−122

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetPools/AddInstance.hs+90−121

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetPools/AggregatedList.hs+98−137

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetPools/Delete.hs+72−118

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetPools/Get.hs+55−119

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetPools/GetHealth.hs+70−122

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetPools/Insert.hs+81−114

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetPools/List.hs+105−143

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetPools/RemoveHealthCheck.hs+91−123

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetPools/RemoveInstance.hs+90−121

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetPools/SetBackup.hs+91−123

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetSSLProxies/Delete.hs+128

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetSSLProxies/Get.hs+108

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetSSLProxies/Insert.hs+130

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetSSLProxies/List.hs+174

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetSSLProxies/SetBackendService.hs+151

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetSSLProxies/SetProxyHeader.hs+148

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetSSLProxies/SetSSLCertificates.hs+152

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetSSLProxies/SetSSLPolicy.hs+154

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetTCPProxies/Delete.hs+128

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetTCPProxies/Get.hs+108

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetTCPProxies/Insert.hs+130

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetTCPProxies/List.hs+174

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetTCPProxies/SetBackendService.hs+151

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetTCPProxies/SetProxyHeader.hs+148

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetVPNGateways/AggregatedList.hs+97−135

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetVPNGateways/Delete.hs+78−125

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetVPNGateways/Get.hs+64−129

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetVPNGateways/Insert.hs+82−114

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/TargetVPNGateways/List.hs+103−142

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/URLMaps/Delete.hs+73−118

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/URLMaps/Get.hs+57−122

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/URLMaps/Insert.hs+75−106

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/URLMaps/InvalidateCache.hs+144

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/URLMaps/List.hs+99−137

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/URLMaps/Patch.hs+93−123

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/URLMaps/Update.hs+89−119

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/URLMaps/Validate.hs+70−122

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/VPNTunnels/AggregatedList.hs+99−139

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/VPNTunnels/Delete.hs+78−124

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/VPNTunnels/Get.hs+64−127

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/VPNTunnels/Insert.hs+79−112

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/VPNTunnels/List.hs+103−143

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/ZoneOperations/Delete.hs+51−118

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/ZoneOperations/Get.hs+52−118

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/ZoneOperations/List.hs+100−140

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Zones/Get.hs+46−107

This diff is too big to show here.

gogol-compute/gen/Network/Google/Resource/Compute/Zones/List.hs+93−127

This diff is too big to show here.

gogol-compute/gogol-compute.cabal+244−6

This diff is too big to show here.

gogol-consumersurveys/LICENSE+367

This diff is too big to show here.

gogol-consumersurveys/Makefile+1

This diff is too big to show here.

gogol-consumersurveys/README.md+28

This diff is too big to show here.

gogol-consumersurveys/Setup.hs+2

This diff is too big to show here.

gogol-consumersurveys/gen/Network/Google/ConsumerSurveys.hs+253

This diff is too big to show here.

gogol-consumersurveys/gen/Network/Google/ConsumerSurveys/Types.hs+199

This diff is too big to show here.

gogol-consumersurveys/gen/Network/Google/ConsumerSurveys/Types/Product.hs+1343

This diff is too big to show here.

gogol-consumersurveys/gen/Network/Google/ConsumerSurveys/Types/Sum.hs+19

This diff is too big to show here.

gogol-consumersurveys/gen/Network/Google/Resource/ConsumerSurveys/MobileApppanels/Get.hs+91

This diff is too big to show here.

gogol-consumersurveys/gen/Network/Google/Resource/ConsumerSurveys/MobileApppanels/List.hs+113

This diff is too big to show here.

gogol-consumersurveys/gen/Network/Google/Resource/ConsumerSurveys/MobileApppanels/Update.hs+104

This diff is too big to show here.

gogol-consumersurveys/gen/Network/Google/Resource/ConsumerSurveys/Results/Get.hs+127

This diff is too big to show here.

gogol-consumersurveys/gen/Network/Google/Resource/ConsumerSurveys/Surveys/Delete.hs+90

This diff is too big to show here.

gogol-consumersurveys/gen/Network/Google/Resource/ConsumerSurveys/Surveys/Get.hs+89

This diff is too big to show here.

gogol-consumersurveys/gen/Network/Google/Resource/ConsumerSurveys/Surveys/Insert.hs+86

This diff is too big to show here.

gogol-consumersurveys/gen/Network/Google/Resource/ConsumerSurveys/Surveys/List.hs+109

This diff is too big to show here.

gogol-consumersurveys/gen/Network/Google/Resource/ConsumerSurveys/Surveys/Start.hs+100

This diff is too big to show here.

gogol-consumersurveys/gen/Network/Google/Resource/ConsumerSurveys/Surveys/Stop.hs+88

This diff is too big to show here.

gogol-consumersurveys/gen/Network/Google/Resource/ConsumerSurveys/Surveys/Update.hs+102

This diff is too big to show here.

gogol-consumersurveys/gogol-consumersurveys.cabal+58

This diff is too big to show here.

gogol-consumersurveys/src/.gitkeep

This diff is too big to show here.

gogol-container/LICENSE−6

This diff is too big to show here.

gogol-container/README.md+4−4

This diff is too big to show here.

gogol-container/gen/Network/Google/Container.hs+866−63

This diff is too big to show here.

gogol-container/gen/Network/Google/Container/Types.hs+553−37

This diff is too big to show here.

gogol-container/gen/Network/Google/Container/Types/Product.hs+5476−443

This diff is too big to show here.

gogol-container/gen/Network/Google/Container/Types/Sum.hs+505−2

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Aggregated/UsableSubnetworks/List.hs+209

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Clusters/List.hs−159

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Locations/Clusters/CompleteIPRotation.hs+176

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Locations/Clusters/Create.hs+185

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Locations/Clusters/Delete.hs+203

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Locations/Clusters/Get.hs+193

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Locations/Clusters/GetJWKs.hs+162

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Locations/Clusters/List.hs+188

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Locations/Clusters/NodePools/Create.hs+176

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Locations/Clusters/NodePools/Delete.hs+217

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Locations/Clusters/NodePools/Get.hs+215

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Locations/Clusters/NodePools/List.hs+203

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Locations/Clusters/NodePools/Rollback.hs+178

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Locations/Clusters/NodePools/SetAutoscaling.hs+178

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Locations/Clusters/NodePools/SetManagement.hs+178

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Locations/Clusters/NodePools/SetSize.hs+176

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Locations/Clusters/NodePools/Update.hs+175

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Locations/Clusters/SetAddons.hs+170

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Locations/Clusters/SetLegacyAbac.hs+173

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Locations/Clusters/SetLocations.hs+172

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Locations/Clusters/SetLogging.hs+171

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Locations/Clusters/SetMaintenancePolicy.hs+176

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Locations/Clusters/SetMasterAuth.hs+176

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Locations/Clusters/SetMonitoring.hs+171

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Locations/Clusters/SetNetworkPolicy.hs+175

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Locations/Clusters/SetResourceLabels.hs+175

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Locations/Clusters/StartIPRotation.hs+175

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Locations/Clusters/Update.hs+167

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Locations/Clusters/UpdateMaster.hs+171

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Locations/Clusters/WellKnown/GetOpenidConfiguration.hs+176

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Locations/GetServerConfig.hs+186

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Locations/Operations/Cancel.hs+167

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Locations/Operations/Get.hs+194

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Locations/Operations/List.hs+187

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Operations/List.hs−159

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Zones/Clusters/Addons.hs+201

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Zones/Clusters/CompleteIPRotation.hs+209

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Zones/Clusters/Create.hs+143−131

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Zones/Clusters/Delete.hs+143−129

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Zones/Clusters/Get.hs+135−127

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Zones/Clusters/LegacyAbac.hs+205

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Zones/Clusters/List.hs+137−126

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Zones/Clusters/Locations.hs+195

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Zones/Clusters/Logging.hs+201

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Zones/Clusters/Master.hs+201

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Zones/Clusters/Monitoring.hs+205

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Zones/Clusters/NodePools/Autoscaling.hs+227

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Zones/Clusters/NodePools/Create.hs+208

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Zones/Clusters/NodePools/Delete.hs+223

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Zones/Clusters/NodePools/Get.hs+221

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Zones/Clusters/NodePools/List.hs+207

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Zones/Clusters/NodePools/Rollback.hs+226

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Zones/Clusters/NodePools/SetManagement.hs+228

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Zones/Clusters/NodePools/SetSize.hs+224

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Zones/Clusters/NodePools/Update.hs+224

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Zones/Clusters/ResourceLabels.hs+207

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Zones/Clusters/SetMaintenancePolicy.hs+207

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Zones/Clusters/SetMasterAuth.hs+210

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Zones/Clusters/SetNetworkPolicy.hs+207

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Zones/Clusters/StartIPRotation.hs+207

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Zones/Clusters/Update.hs+200

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Zones/GetServerConfig.hs+187

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Zones/Operations/Cancel.hs+201

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Zones/Operations/Get.hs+132−125

This diff is too big to show here.

gogol-container/gen/Network/Google/Resource/Container/Projects/Zones/Operations/List.hs+130−119

This diff is too big to show here.

gogol-container/gogol-container.cabal+67−10

This diff is too big to show here.

gogol-containeranalysis/LICENSE+367

This diff is too big to show here.

gogol-containeranalysis/Makefile+1

This diff is too big to show here.

gogol-containeranalysis/README.md+28

This diff is too big to show here.

gogol-containeranalysis/Setup.hs+2

This diff is too big to show here.

gogol-containeranalysis/gen/Network/Google/ContainerAnalysis.hs+814

This diff is too big to show here.

gogol-containeranalysis/gen/Network/Google/ContainerAnalysis/Types.hs+688

This diff is too big to show here.

gogol-containeranalysis/gen/Network/Google/ContainerAnalysis/Types/Product.hs+5365

This diff is too big to show here.

gogol-containeranalysis/gen/Network/Google/ContainerAnalysis/Types/Sum.hs+1217

This diff is too big to show here.

gogol-containeranalysis/gen/Network/Google/Resource/ContainerAnalysis/Projects/Notes/BatchCreate.hs+167

This diff is too big to show here.

gogol-containeranalysis/gen/Network/Google/Resource/ContainerAnalysis/Projects/Notes/Create.hs+176

This diff is too big to show here.

gogol-containeranalysis/gen/Network/Google/Resource/ContainerAnalysis/Projects/Notes/Delete.hs+149

This diff is too big to show here.

gogol-containeranalysis/gen/Network/Google/Resource/ContainerAnalysis/Projects/Notes/Get.hs+149

This diff is too big to show here.

gogol-containeranalysis/gen/Network/Google/Resource/ContainerAnalysis/Projects/Notes/GetIAMPolicy.hs+180

This diff is too big to show here.

gogol-containeranalysis/gen/Network/Google/Resource/ContainerAnalysis/Projects/Notes/List.hs+190

This diff is too big to show here.

3700 more files changed are not listed.