@efffrida/gplayapi 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +674 -0
- package/README.md +1 -0
- package/devices/arm64_xxhdpi.properties +36 -0
- package/dist/GooglePlayApi.d.ts +88 -0
- package/dist/GooglePlayApi.d.ts.map +1 -0
- package/dist/GooglePlayApi.js +161 -0
- package/dist/GooglePlayApi.js.map +1 -0
- package/dist/generated/GooglePlay_pb.d.ts +8517 -0
- package/dist/generated/GooglePlay_pb.d.ts.map +1 -0
- package/dist/generated/GooglePlay_pb.js +1495 -0
- package/dist/generated/GooglePlay_pb.js.map +1 -0
- package/dist/index.d.ts +11 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +11 -0
- package/dist/index.js.map +1 -0
- package/dist/internal/auth.d.ts +2 -0
- package/dist/internal/auth.d.ts.map +1 -0
- package/dist/internal/auth.js +166 -0
- package/dist/internal/auth.js.map +1 -0
- package/dist/internal/device.d.ts +2 -0
- package/dist/internal/device.d.ts.map +1 -0
- package/dist/internal/device.js +85 -0
- package/dist/internal/device.js.map +1 -0
- package/dist/internal/http.d.ts +2 -0
- package/dist/internal/http.d.ts.map +1 -0
- package/dist/internal/http.js +88 -0
- package/dist/internal/http.js.map +1 -0
- package/package.json +71 -0
- package/protobuf/GooglePlay.proto +2264 -0
- package/src/GooglePlayApi.ts +234 -0
- package/src/generated/GooglePlay_pb.ts +10561 -0
- package/src/index.ts +11 -0
- package/src/internal/auth.ts +220 -0
- package/src/internal/device.ts +96 -0
- package/src/internal/http.ts +194 -0
|
@@ -0,0 +1,2264 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* SPDX-FileCopyrightText: 2020-2023 Aurora OSS
|
|
3
|
+
* SPDX-FileCopyrightText: 2023-2024 The Calyx Institute
|
|
4
|
+
* SPDX-License-Identifier: GPL-3.0-or-later
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
syntax = "proto2";
|
|
8
|
+
|
|
9
|
+
message AndroidAppDeliveryData {
|
|
10
|
+
optional int64 downloadSize = 1;
|
|
11
|
+
optional string sha1 = 2;
|
|
12
|
+
optional string downloadUrl = 3;
|
|
13
|
+
repeated AppFileMetadata additionalFile = 4;
|
|
14
|
+
repeated HttpCookie downloadAuthCookie = 5;
|
|
15
|
+
optional bool forwardLocked = 6;
|
|
16
|
+
optional int64 refundTimeout = 7;
|
|
17
|
+
optional bool serverInitiated = 8 [default = true];
|
|
18
|
+
optional int64 postInstallRefundWindowMillis = 9;
|
|
19
|
+
optional bool immediateStartNeeded = 10;
|
|
20
|
+
optional AndroidAppPatchData patchData = 11;
|
|
21
|
+
optional EncryptionParams encryptionParams = 12;
|
|
22
|
+
optional string compressedDownloadUrl = 13;
|
|
23
|
+
optional int64 compressedSize = 14;
|
|
24
|
+
repeated SplitDeliveryData splitDeliveryData = 15;
|
|
25
|
+
optional int32 installLocation = 16;
|
|
26
|
+
optional int64 type = 17;
|
|
27
|
+
optional CompressedAppData compressedAppData = 18;
|
|
28
|
+
optional string sha256 = 19;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
message SplitDeliveryData {
|
|
32
|
+
optional string name = 1;
|
|
33
|
+
optional int64 downloadSize = 2;
|
|
34
|
+
optional int64 compressedSize = 3;
|
|
35
|
+
optional string sha1 = 4;
|
|
36
|
+
optional string downloadUrl = 5;
|
|
37
|
+
optional string compressedDownloadUrl = 6;
|
|
38
|
+
optional AndroidAppPatchData patchData = 7;
|
|
39
|
+
optional CompressedAppData compressedAppData = 8;
|
|
40
|
+
optional string sha256 = 9;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
message AndroidAppPatchData {
|
|
44
|
+
optional int32 baseVersionCode = 1;
|
|
45
|
+
optional string baseSha1 = 2;
|
|
46
|
+
optional string downloadUrl = 3;
|
|
47
|
+
optional int32 patchFormat = 4[default = 1];
|
|
48
|
+
optional int64 maxPatchSize = 5;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
message CompressedAppData{
|
|
52
|
+
optional int64 type = 1;
|
|
53
|
+
optional int64 size = 2;
|
|
54
|
+
optional string downloadUrl = 3;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
message AppFileMetadata {
|
|
58
|
+
optional int32 fileType = 1;
|
|
59
|
+
optional int32 versionCode = 2;
|
|
60
|
+
optional int64 size = 3;
|
|
61
|
+
optional string downloadUrl = 4;
|
|
62
|
+
optional AndroidAppPatchData patchData = 5;
|
|
63
|
+
optional int64 compressedSize = 6;
|
|
64
|
+
optional string compressedDownloadUrl = 7;
|
|
65
|
+
optional string sha1 = 8;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
message EncryptionParams {
|
|
69
|
+
optional int32 version = 1;
|
|
70
|
+
optional string encryptionKey = 2;
|
|
71
|
+
optional string hMacKey = 3;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
message HttpCookie {
|
|
75
|
+
optional string name = 1;
|
|
76
|
+
optional string value = 2;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
message Address {
|
|
80
|
+
optional string name = 1;
|
|
81
|
+
optional string addressLine1 = 2;
|
|
82
|
+
optional string addressLine2 = 3;
|
|
83
|
+
optional string city = 4;
|
|
84
|
+
optional string state = 5;
|
|
85
|
+
optional string postalCode = 6;
|
|
86
|
+
optional string postalCountry = 7;
|
|
87
|
+
optional string dependentLocality = 8;
|
|
88
|
+
optional string sortingCode = 9;
|
|
89
|
+
optional string languageCode = 10;
|
|
90
|
+
optional string phoneNumber = 11;
|
|
91
|
+
optional bool deprecatedIsReduced = 12;
|
|
92
|
+
optional string firstName = 13;
|
|
93
|
+
optional string lastName = 14;
|
|
94
|
+
optional string email = 15;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
message BrowseLink {
|
|
98
|
+
optional string name = 1;
|
|
99
|
+
optional string dataUrl = 3;
|
|
100
|
+
optional bytes serverLogsCookie = 4;
|
|
101
|
+
optional Image icon = 5;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
message BrowseResponse {
|
|
105
|
+
optional string contentsUrl = 1;
|
|
106
|
+
optional string promoUrl = 2;
|
|
107
|
+
repeated BrowseLink category = 3;
|
|
108
|
+
repeated BrowseLink breadcrumb = 4;
|
|
109
|
+
repeated QuickLink quickLink = 5;
|
|
110
|
+
optional bytes serverLogsCookie = 6;
|
|
111
|
+
optional string title = 7;
|
|
112
|
+
optional int32 backendId = 8;
|
|
113
|
+
optional BrowseTab browseTab = 9;
|
|
114
|
+
optional int32 landingTabIndex = 10;
|
|
115
|
+
optional int32 quickLinkTabIndex = 11;
|
|
116
|
+
optional int32 quickLinkFallbackTabIndex = 12;
|
|
117
|
+
optional bool isFamilySafe = 14;
|
|
118
|
+
optional string shareUrl = 18;
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
message DirectPurchase {
|
|
122
|
+
optional string detailsUrl = 1;
|
|
123
|
+
optional string purchaseItemId = 2;
|
|
124
|
+
optional string parentItemId = 3;
|
|
125
|
+
optional int32 offerType = 4[default = 1];
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
message RedeemGiftCard {
|
|
129
|
+
optional string prefillCode = 1;
|
|
130
|
+
optional string partnerPayload = 2;
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
message ResolvedLink {
|
|
134
|
+
optional string detailsUrl = 1;
|
|
135
|
+
optional string browseUrl = 2;
|
|
136
|
+
optional string searchUrl = 3;
|
|
137
|
+
optional DirectPurchase directPurchase = 4;
|
|
138
|
+
optional string homeUrl = 5;
|
|
139
|
+
optional RedeemGiftCard redeemGiftCard = 6;
|
|
140
|
+
optional bytes serverLogsCookie = 7;
|
|
141
|
+
optional DocId DocId = 8;
|
|
142
|
+
optional string wishlistUrl = 9;
|
|
143
|
+
optional int32 backend = 10;
|
|
144
|
+
optional string query = 11;
|
|
145
|
+
optional string myAccountUrl = 12;
|
|
146
|
+
optional HelpCenter helpCenter = 13;
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
message HelpCenter {
|
|
150
|
+
optional string contextId = 1;
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
message QuickLink {
|
|
154
|
+
optional string name = 1;
|
|
155
|
+
optional Image image = 2;
|
|
156
|
+
optional ResolvedLink link = 3;
|
|
157
|
+
optional bool displayRequired = 4;
|
|
158
|
+
optional bytes serverLogsCookie = 5;
|
|
159
|
+
optional int32 backendId = 6;
|
|
160
|
+
optional bool prismStyle = 7;
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
message BrowseTab {
|
|
164
|
+
optional string title = 1;
|
|
165
|
+
optional bytes serverLogsCookie = 2;
|
|
166
|
+
optional string listUrl = 3;
|
|
167
|
+
repeated BrowseLink browseLink = 4;
|
|
168
|
+
repeated QuickLink quickLink = 5;
|
|
169
|
+
optional string quickLinkTitle = 6;
|
|
170
|
+
optional string categoriesTitle = 7;
|
|
171
|
+
optional int32 backendId = 8;
|
|
172
|
+
optional string highlightsBannerUrl = 9;
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
message BuyResponse {
|
|
176
|
+
optional PurchaseNotificationResponse purchaseResponse = 1;
|
|
177
|
+
optional group CheckoutInfo = 2 {
|
|
178
|
+
optional LineItem item = 3;
|
|
179
|
+
repeated LineItem subItem = 4;
|
|
180
|
+
repeated group CheckoutOption = 5 {
|
|
181
|
+
optional string formOfPayment = 6;
|
|
182
|
+
optional string encodedAdjustedCart = 7;
|
|
183
|
+
optional string instrumentId = 15;
|
|
184
|
+
repeated LineItem item = 16;
|
|
185
|
+
repeated LineItem subItem = 17;
|
|
186
|
+
optional LineItem total = 18;
|
|
187
|
+
repeated string footerHtml = 19;
|
|
188
|
+
optional int32 instrumentFamily = 29;
|
|
189
|
+
repeated int32 deprecatedInstrumentInapplicableReason = 30;
|
|
190
|
+
optional bool selectedInstrument = 32;
|
|
191
|
+
optional LineItem summary = 33;
|
|
192
|
+
repeated string footnoteHtml = 35;
|
|
193
|
+
optional Instrument instrument = 43;
|
|
194
|
+
optional string purchaseCookie = 45;
|
|
195
|
+
repeated string disabledReason = 48;
|
|
196
|
+
}
|
|
197
|
+
optional string deprecatedCheckoutUrl = 10;
|
|
198
|
+
optional string addInstrumentUrl = 11;
|
|
199
|
+
repeated string footerHtml = 20;
|
|
200
|
+
repeated int32 eligibleInstrumentFamily = 31;
|
|
201
|
+
repeated string footnoteHtml = 36;
|
|
202
|
+
repeated Instrument eligibleInstrument = 44;
|
|
203
|
+
}
|
|
204
|
+
optional string continueViaUrl = 8;
|
|
205
|
+
optional string purchaseStatusUrl = 9;
|
|
206
|
+
optional string checkoutServiceId = 12;
|
|
207
|
+
optional bool checkoutTokenRequired = 13;
|
|
208
|
+
optional string baseCheckoutUrl = 14;
|
|
209
|
+
repeated string tosCheckboxHtml = 37;
|
|
210
|
+
optional int32 iabPermissionError = 38;
|
|
211
|
+
optional PurchaseStatusResponse purchaseStatusResponse = 39;
|
|
212
|
+
optional string purchaseCookie = 46;
|
|
213
|
+
optional Challenge challenge = 49;
|
|
214
|
+
optional string addInstrumentPromptHtml = 50;
|
|
215
|
+
optional string confirmButtonText = 51;
|
|
216
|
+
optional string permissionErrorTitleText = 52;
|
|
217
|
+
optional string permissionErrorMessageText = 53;
|
|
218
|
+
optional bytes serverLogsCookie = 54;
|
|
219
|
+
optional string encodedDeliveryToken = 55;
|
|
220
|
+
optional string unknownToken = 56;
|
|
221
|
+
}
|
|
222
|
+
|
|
223
|
+
message LineItem {
|
|
224
|
+
optional string name = 1;
|
|
225
|
+
optional string description = 2;
|
|
226
|
+
optional Offer offer = 3;
|
|
227
|
+
optional Money amount = 4;
|
|
228
|
+
}
|
|
229
|
+
|
|
230
|
+
message Money {
|
|
231
|
+
optional int64 micros = 1;
|
|
232
|
+
optional string currencyCode = 2;
|
|
233
|
+
optional string formattedAmount = 3;
|
|
234
|
+
}
|
|
235
|
+
|
|
236
|
+
message PurchaseNotificationResponse {
|
|
237
|
+
optional int32 status = 1;
|
|
238
|
+
optional DebugInfo debugInfo = 2;
|
|
239
|
+
optional string localizedErrorMessage = 3;
|
|
240
|
+
optional string purchaseId = 4;
|
|
241
|
+
}
|
|
242
|
+
|
|
243
|
+
message PurchaseStatusResponse {
|
|
244
|
+
optional int32 status = 1;
|
|
245
|
+
optional string statusMsg = 2;
|
|
246
|
+
optional string statusTitle = 3;
|
|
247
|
+
optional string briefMessage = 4;
|
|
248
|
+
optional string infoUrl = 5;
|
|
249
|
+
optional LibraryUpdate libraryUpdate = 6;
|
|
250
|
+
optional Instrument rejectedInstrument = 7;
|
|
251
|
+
optional AndroidAppDeliveryData appDeliveryData = 8;
|
|
252
|
+
}
|
|
253
|
+
|
|
254
|
+
message PurchaseHistoryDetails {
|
|
255
|
+
optional int64 purchaseTimestampMillis = 2;
|
|
256
|
+
optional string purchaseDetailsHtml = 3;
|
|
257
|
+
optional Offer offer = 5;
|
|
258
|
+
optional string purchaseStatus = 6;
|
|
259
|
+
optional string titleBylineHtml = 7;
|
|
260
|
+
optional bytes clientRefundContext = 8;
|
|
261
|
+
optional Image purchaseDetailsImage = 9;
|
|
262
|
+
}
|
|
263
|
+
|
|
264
|
+
message BillingProfileResponse {
|
|
265
|
+
optional int32 result = 1;
|
|
266
|
+
optional BillingProfile billingProfile = 2;
|
|
267
|
+
optional string userMessageHtml = 3;
|
|
268
|
+
}
|
|
269
|
+
|
|
270
|
+
message CheckInstrumentResponse {
|
|
271
|
+
optional bool userHasValidInstrument = 1;
|
|
272
|
+
optional bool checkoutTokenRequired = 2;
|
|
273
|
+
repeated Instrument instrument = 4;
|
|
274
|
+
repeated Instrument eligibleInstrument = 5;
|
|
275
|
+
}
|
|
276
|
+
|
|
277
|
+
message InstrumentSetupInfoResponse {
|
|
278
|
+
repeated InstrumentSetupInfo setupInfo = 1;
|
|
279
|
+
optional bool checkoutTokenRequired = 2;
|
|
280
|
+
}
|
|
281
|
+
|
|
282
|
+
message RedeemGiftCardRequest {
|
|
283
|
+
optional string giftCardPin = 1;
|
|
284
|
+
optional Address address = 2;
|
|
285
|
+
repeated string acceptedLegalDocumentId = 3;
|
|
286
|
+
optional string checkoutToken = 4;
|
|
287
|
+
}
|
|
288
|
+
|
|
289
|
+
message RedeemGiftCardResponse {
|
|
290
|
+
optional int32 result = 1;
|
|
291
|
+
optional string userMessageHtml = 2;
|
|
292
|
+
optional string balanceHtml = 3;
|
|
293
|
+
optional AddressChallenge addressChallenge = 4;
|
|
294
|
+
optional bool checkoutTokenRequired = 5;
|
|
295
|
+
}
|
|
296
|
+
|
|
297
|
+
message UpdateInstrumentRequest {
|
|
298
|
+
optional Instrument instrument = 1;
|
|
299
|
+
optional string checkoutToken = 2;
|
|
300
|
+
}
|
|
301
|
+
|
|
302
|
+
message UpdateInstrumentResponse {
|
|
303
|
+
optional int32 result = 1;
|
|
304
|
+
optional string instrumentId = 2;
|
|
305
|
+
optional string userMessageHtml = 3;
|
|
306
|
+
repeated InputValidationError errorInputField = 4;
|
|
307
|
+
optional bool checkoutTokenRequired = 5;
|
|
308
|
+
optional RedeemedPromoOffer redeemedOffer = 6;
|
|
309
|
+
}
|
|
310
|
+
|
|
311
|
+
message InitiateAssociationResponse {
|
|
312
|
+
optional string userToken = 1;
|
|
313
|
+
}
|
|
314
|
+
|
|
315
|
+
message VerifyAssociationResponse {
|
|
316
|
+
optional int32 status = 1;
|
|
317
|
+
optional Address billingAddress = 2;
|
|
318
|
+
optional CarrierTos carrierTos = 3;
|
|
319
|
+
optional string carrierErrorMessage = 4;
|
|
320
|
+
}
|
|
321
|
+
|
|
322
|
+
message AddressChallenge {
|
|
323
|
+
optional string responseAddressParam = 1;
|
|
324
|
+
optional string responseCheckboxesParam = 2;
|
|
325
|
+
optional string title = 3;
|
|
326
|
+
optional string descriptionHtml = 4;
|
|
327
|
+
repeated FormCheckbox checkbox = 5;
|
|
328
|
+
optional Address address = 6;
|
|
329
|
+
repeated InputValidationError errorInputField = 7;
|
|
330
|
+
optional string errorHtml = 8;
|
|
331
|
+
repeated int32 requiredField = 9;
|
|
332
|
+
repeated Country supportedCountry = 10;
|
|
333
|
+
}
|
|
334
|
+
|
|
335
|
+
message AuthenticationChallenge {
|
|
336
|
+
optional int32 authenticationType = 1;
|
|
337
|
+
optional string responseAuthenticationTypeParam = 2;
|
|
338
|
+
optional string responseRetryCountParam = 3;
|
|
339
|
+
optional string pinHeaderText = 4;
|
|
340
|
+
optional string pinDescriptionTextHtml = 5;
|
|
341
|
+
optional string gaiaHeaderText = 6;
|
|
342
|
+
optional string gaiaDescriptionTextHtml = 7;
|
|
343
|
+
optional string gaiaFooterTextHtml = 8;
|
|
344
|
+
optional FormCheckbox gaiaOptOutCheckbox = 9;
|
|
345
|
+
optional string gaiaOptOutDescriptionTextHtml = 10;
|
|
346
|
+
}
|
|
347
|
+
|
|
348
|
+
message Challenge {
|
|
349
|
+
optional AddressChallenge addressChallenge = 1;
|
|
350
|
+
optional AuthenticationChallenge authenticationChallenge = 2;
|
|
351
|
+
optional WebViewChallenge webViewChallenge = 3;
|
|
352
|
+
}
|
|
353
|
+
|
|
354
|
+
message Country {
|
|
355
|
+
optional string regionCode = 1;
|
|
356
|
+
optional string displayName = 2;
|
|
357
|
+
}
|
|
358
|
+
|
|
359
|
+
message FormCheckbox {
|
|
360
|
+
optional string description = 1;
|
|
361
|
+
optional bool checked = 2;
|
|
362
|
+
optional bool required = 3;
|
|
363
|
+
optional string id = 4;
|
|
364
|
+
}
|
|
365
|
+
|
|
366
|
+
message InputValidationError {
|
|
367
|
+
optional int32 inputField = 1;
|
|
368
|
+
optional string errorMessage = 2;
|
|
369
|
+
}
|
|
370
|
+
|
|
371
|
+
message WebViewChallenge {
|
|
372
|
+
optional string startUrl = 1;
|
|
373
|
+
optional string targetUrlRegexp = 2;
|
|
374
|
+
optional string cancelButtonDisplayLabel = 3;
|
|
375
|
+
optional string responseTargetUrlParam = 4;
|
|
376
|
+
optional string cancelUrlRegexp = 5;
|
|
377
|
+
optional string title = 6;
|
|
378
|
+
}
|
|
379
|
+
|
|
380
|
+
message AddCreditCardPromoOffer {
|
|
381
|
+
optional string headerText = 1;
|
|
382
|
+
optional string descriptionHtml = 2;
|
|
383
|
+
optional Image image = 3;
|
|
384
|
+
optional string introductoryTextHtml = 4;
|
|
385
|
+
optional string offerTitle = 5;
|
|
386
|
+
optional string noActionDescription = 6;
|
|
387
|
+
optional string termsAndConditionsHtml = 7;
|
|
388
|
+
}
|
|
389
|
+
|
|
390
|
+
message AvailablePromoOffer {
|
|
391
|
+
optional AddCreditCardPromoOffer addCreditCardOffer = 1;
|
|
392
|
+
}
|
|
393
|
+
|
|
394
|
+
message CheckPromoOfferResponse {
|
|
395
|
+
repeated AvailablePromoOffer availableOffer = 1;
|
|
396
|
+
optional RedeemedPromoOffer redeemedOffer = 2;
|
|
397
|
+
optional bool checkoutTokenRequired = 3;
|
|
398
|
+
}
|
|
399
|
+
|
|
400
|
+
message RedeemedPromoOffer {
|
|
401
|
+
optional string headerText = 1;
|
|
402
|
+
optional string descriptionHtml = 2;
|
|
403
|
+
optional Image image = 3;
|
|
404
|
+
}
|
|
405
|
+
|
|
406
|
+
message DocId {
|
|
407
|
+
optional string backendDocId = 1;
|
|
408
|
+
optional int32 type = 2[default = 1];
|
|
409
|
+
optional int32 backend = 3;
|
|
410
|
+
}
|
|
411
|
+
|
|
412
|
+
message Install {
|
|
413
|
+
optional fixed64 androidId = 1;
|
|
414
|
+
optional int32 version = 2;
|
|
415
|
+
optional bool bundled = 3;
|
|
416
|
+
optional bool pending = 4;
|
|
417
|
+
optional int64 lastUpdated = 5;
|
|
418
|
+
}
|
|
419
|
+
|
|
420
|
+
message GroupLicenseKey {
|
|
421
|
+
optional fixed64 dasher_customer_id = 1;
|
|
422
|
+
optional DocId docId = 2;
|
|
423
|
+
optional int32 licensed_offer_type = 3 [default = 1];
|
|
424
|
+
optional int32 type = 4;
|
|
425
|
+
optional int32 rental_period_days = 5;
|
|
426
|
+
}
|
|
427
|
+
|
|
428
|
+
message LicenseTerms {
|
|
429
|
+
optional GroupLicenseKey groupLicenseKey = 1;
|
|
430
|
+
}
|
|
431
|
+
|
|
432
|
+
message Offer {
|
|
433
|
+
optional int64 micros = 1;
|
|
434
|
+
optional string currencyCode = 2;
|
|
435
|
+
optional string formattedAmount = 3;
|
|
436
|
+
repeated Offer convertedPrice = 4;
|
|
437
|
+
optional bool checkoutFlowRequired = 5;
|
|
438
|
+
optional int64 fullPriceMicros = 6;
|
|
439
|
+
optional string formattedFullAmount = 7;
|
|
440
|
+
optional int32 offerType = 8[default = 1];
|
|
441
|
+
optional RentalTerms rentalTerms = 9;
|
|
442
|
+
optional int64 onSaleDate = 10;
|
|
443
|
+
repeated string promotionLabel = 11;
|
|
444
|
+
optional SubscriptionTerms subscriptionTerms = 12;
|
|
445
|
+
optional string formattedName = 13;
|
|
446
|
+
optional string formattedDescription = 14;
|
|
447
|
+
optional bool preorder = 15;
|
|
448
|
+
optional int32 onSaleDateDisplayTimeZoneOffsetMillis = 16;
|
|
449
|
+
optional int32 licensedOfferType = 17;
|
|
450
|
+
optional SubscriptionContentTerms subscriptionContentTerms = 18;
|
|
451
|
+
optional string offerId = 19;
|
|
452
|
+
optional int64 preorderFulfillmentDisplayDate = 20;
|
|
453
|
+
optional LicenseTerms licenseTerms = 21;
|
|
454
|
+
optional bool sale = 22;
|
|
455
|
+
optional VoucherTerms voucherTerms = 23;
|
|
456
|
+
repeated OfferPayment offerPayment = 24;
|
|
457
|
+
optional bool repeatLastPayment = 25;
|
|
458
|
+
optional string buyButtonLabel = 26;
|
|
459
|
+
optional bool instantPurchaseEnabled = 27;
|
|
460
|
+
optional int64 saleEndTimestamp = 30;
|
|
461
|
+
optional string saleMessage = 31;
|
|
462
|
+
}
|
|
463
|
+
|
|
464
|
+
message MonthAndDay {
|
|
465
|
+
optional uint32 month = 1;
|
|
466
|
+
optional uint32 day = 2;
|
|
467
|
+
}
|
|
468
|
+
|
|
469
|
+
message OfferPaymentPeriod {
|
|
470
|
+
optional TimePeriod duration = 1;
|
|
471
|
+
optional MonthAndDay start = 2;
|
|
472
|
+
optional MonthAndDay end = 3;
|
|
473
|
+
}
|
|
474
|
+
|
|
475
|
+
message OfferPaymentOverride {
|
|
476
|
+
optional int64 micros = 1;
|
|
477
|
+
optional MonthAndDay start = 2;
|
|
478
|
+
optional MonthAndDay end = 3;
|
|
479
|
+
}
|
|
480
|
+
|
|
481
|
+
message OfferPayment {
|
|
482
|
+
optional int64 micros = 1;
|
|
483
|
+
optional string currencyCode = 2;
|
|
484
|
+
optional OfferPaymentPeriod offerPaymentPeriod = 3;
|
|
485
|
+
repeated OfferPaymentOverride offerPaymentOverride = 4;
|
|
486
|
+
}
|
|
487
|
+
|
|
488
|
+
message VoucherTerms {
|
|
489
|
+
}
|
|
490
|
+
|
|
491
|
+
message RentalTerms {
|
|
492
|
+
optional int32 dEPRECATEDGrantPeriodSeconds = 1;
|
|
493
|
+
optional int32 dEPRECATEDActivatePeriodSeconds = 2;
|
|
494
|
+
optional TimePeriod grantPeriod = 3;
|
|
495
|
+
optional TimePeriod activatePeriod = 4;
|
|
496
|
+
}
|
|
497
|
+
|
|
498
|
+
message SignedData {
|
|
499
|
+
optional string signedData = 1;
|
|
500
|
+
optional string signature = 2;
|
|
501
|
+
}
|
|
502
|
+
|
|
503
|
+
message SubscriptionContentTerms {
|
|
504
|
+
optional DocId requiredSubscription = 1;
|
|
505
|
+
}
|
|
506
|
+
|
|
507
|
+
message GroupLicenseInfo {
|
|
508
|
+
optional int32 licensedOfferType = 1;
|
|
509
|
+
optional fixed64 gaiaGroupId = 2;
|
|
510
|
+
}
|
|
511
|
+
|
|
512
|
+
message LicensedDocumentInfo {
|
|
513
|
+
repeated fixed64 gaiaGroupId = 1;
|
|
514
|
+
}
|
|
515
|
+
|
|
516
|
+
message OwnershipInfo {
|
|
517
|
+
optional int64 initiationTimestamp = 1;
|
|
518
|
+
optional int64 validUntilTimestamp = 2;
|
|
519
|
+
optional bool autoRenewing = 3;
|
|
520
|
+
optional int64 refundTimeoutTimestamp = 4;
|
|
521
|
+
optional int64 postDeliveryRefundWindowMillis = 5;
|
|
522
|
+
optional SignedData developerPurchaseInfo = 6;
|
|
523
|
+
optional bool preOrdered = 7;
|
|
524
|
+
optional bool hidden = 8;
|
|
525
|
+
optional RentalTerms rentalTerms = 9;
|
|
526
|
+
optional GroupLicenseInfo groupLicenseInfo = 10;
|
|
527
|
+
optional LicensedDocumentInfo licensedDocumentInfo = 11;
|
|
528
|
+
optional int32 quantity = 12;
|
|
529
|
+
optional int64 libraryExpirationTimestamp = 14;
|
|
530
|
+
}
|
|
531
|
+
|
|
532
|
+
message SubscriptionTerms {
|
|
533
|
+
optional TimePeriod recurringPeriod = 1;
|
|
534
|
+
optional TimePeriod trialPeriod = 2;
|
|
535
|
+
}
|
|
536
|
+
|
|
537
|
+
message TimePeriod {
|
|
538
|
+
optional int32 unit = 1;
|
|
539
|
+
optional int32 count = 2;
|
|
540
|
+
}
|
|
541
|
+
|
|
542
|
+
message BillingAddressSpec {
|
|
543
|
+
optional int32 billingAddressType = 1;
|
|
544
|
+
repeated int32 requiredField = 2;
|
|
545
|
+
}
|
|
546
|
+
|
|
547
|
+
message BillingProfile {
|
|
548
|
+
repeated Instrument instrument = 1;
|
|
549
|
+
optional string selectedExternalInstrumentId = 2;
|
|
550
|
+
repeated BillingProfileOption billingProfileOption = 3;
|
|
551
|
+
}
|
|
552
|
+
|
|
553
|
+
message BillingProfileOption {
|
|
554
|
+
optional int32 type = 1;
|
|
555
|
+
optional string displayTitle = 2;
|
|
556
|
+
optional string externalInstrumentId = 3;
|
|
557
|
+
optional TopupInfo topupInfo = 4;
|
|
558
|
+
optional CarrierBillingInstrumentStatus carrierBillingInstrumentStatus = 5;
|
|
559
|
+
}
|
|
560
|
+
|
|
561
|
+
message CarrierBillingCredentials {
|
|
562
|
+
optional string value = 1;
|
|
563
|
+
optional int64 expiration = 2;
|
|
564
|
+
}
|
|
565
|
+
|
|
566
|
+
message CarrierBillingInstrument {
|
|
567
|
+
optional string instrumentKey = 1;
|
|
568
|
+
optional string accountType = 2;
|
|
569
|
+
optional string currencyCode = 3;
|
|
570
|
+
optional int64 transactionLimit = 4;
|
|
571
|
+
optional string subscriberIdentifier = 5;
|
|
572
|
+
optional EncryptedSubscriberInfo encryptedSubscriberInfo = 6;
|
|
573
|
+
optional CarrierBillingCredentials credentials = 7;
|
|
574
|
+
optional CarrierTos acceptedCarrierTos = 8;
|
|
575
|
+
}
|
|
576
|
+
|
|
577
|
+
message CarrierBillingInstrumentStatus {
|
|
578
|
+
optional CarrierTos carrierTos = 1;
|
|
579
|
+
optional bool associationRequired = 2;
|
|
580
|
+
optional bool passwordRequired = 3;
|
|
581
|
+
optional PasswordPrompt carrierPasswordPrompt = 4;
|
|
582
|
+
optional int32 apiVersion = 5;
|
|
583
|
+
optional string name = 6;
|
|
584
|
+
optional DeviceAssociation deviceAssociation = 7;
|
|
585
|
+
optional string carrierSupportPhoneNumber = 8;
|
|
586
|
+
}
|
|
587
|
+
|
|
588
|
+
message CarrierTos {
|
|
589
|
+
optional CarrierTosEntry dcbTos = 1;
|
|
590
|
+
optional CarrierTosEntry piiTos = 2;
|
|
591
|
+
optional bool needsDcbTosAcceptance = 3;
|
|
592
|
+
optional bool needsPiiTosAcceptance = 4;
|
|
593
|
+
}
|
|
594
|
+
|
|
595
|
+
message CarrierTosEntry {
|
|
596
|
+
optional string url = 1;
|
|
597
|
+
optional string version = 2;
|
|
598
|
+
}
|
|
599
|
+
|
|
600
|
+
message CreditCardInstrument {
|
|
601
|
+
optional int32 type = 1;
|
|
602
|
+
optional string escrowHandle = 2;
|
|
603
|
+
optional string lastDigits = 3;
|
|
604
|
+
optional int32 expirationMonth = 4;
|
|
605
|
+
optional int32 expirationYear = 5;
|
|
606
|
+
repeated EfeParam escrowEfeParam = 6;
|
|
607
|
+
}
|
|
608
|
+
|
|
609
|
+
message DeviceAssociation {
|
|
610
|
+
optional string userTokenRequestMessage = 1;
|
|
611
|
+
optional string userTokenRequestAddress = 2;
|
|
612
|
+
}
|
|
613
|
+
|
|
614
|
+
message DisabledInfo {
|
|
615
|
+
optional int32 disabledReason = 1;
|
|
616
|
+
optional string disabledMessageHtml = 2;
|
|
617
|
+
optional string errorMessage = 3;
|
|
618
|
+
}
|
|
619
|
+
|
|
620
|
+
message EfeParam {
|
|
621
|
+
optional int32 key = 1;
|
|
622
|
+
optional string value = 2;
|
|
623
|
+
}
|
|
624
|
+
|
|
625
|
+
message Instrument {
|
|
626
|
+
optional string instrumentId = 1;
|
|
627
|
+
optional Address billingAddress = 2;
|
|
628
|
+
optional CreditCardInstrument creditCard = 3;
|
|
629
|
+
optional CarrierBillingInstrument carrierBilling = 4;
|
|
630
|
+
optional BillingAddressSpec billingAddressSpec = 5;
|
|
631
|
+
optional int32 instrumentFamily = 6;
|
|
632
|
+
optional CarrierBillingInstrumentStatus carrierBillingStatus = 7;
|
|
633
|
+
optional string displayTitle = 8;
|
|
634
|
+
optional TopupInfo topupInfoDeprecated = 9;
|
|
635
|
+
optional int32 version = 10;
|
|
636
|
+
optional StoredValueInstrument storedValue = 11;
|
|
637
|
+
repeated DisabledInfo disabledInfo = 12;
|
|
638
|
+
}
|
|
639
|
+
|
|
640
|
+
message InstrumentSetupInfo {
|
|
641
|
+
optional int32 instrumentFamily = 1;
|
|
642
|
+
optional bool supported = 2;
|
|
643
|
+
optional AddressChallenge addressChallenge = 3;
|
|
644
|
+
optional Money balance = 4;
|
|
645
|
+
repeated string footerHtml = 5;
|
|
646
|
+
}
|
|
647
|
+
|
|
648
|
+
message PasswordPrompt {
|
|
649
|
+
optional string prompt = 1;
|
|
650
|
+
optional string forgotPasswordUrl = 2;
|
|
651
|
+
}
|
|
652
|
+
|
|
653
|
+
message StoredValueInstrument {
|
|
654
|
+
optional int32 type = 1;
|
|
655
|
+
optional Money balance = 2;
|
|
656
|
+
optional TopupInfo topupInfo = 3;
|
|
657
|
+
}
|
|
658
|
+
|
|
659
|
+
message TopupInfo {
|
|
660
|
+
optional string optionsContainerDocIdDeprecated = 1;
|
|
661
|
+
optional string optionsListUrl = 2;
|
|
662
|
+
optional string subtitle = 3;
|
|
663
|
+
optional DocId optionsContainerDocId = 4;
|
|
664
|
+
}
|
|
665
|
+
|
|
666
|
+
message ConsumePurchaseResponse {
|
|
667
|
+
optional LibraryUpdate libraryUpdate = 1;
|
|
668
|
+
optional int32 status = 2;
|
|
669
|
+
}
|
|
670
|
+
|
|
671
|
+
message ContainerMetadata {
|
|
672
|
+
optional string browseUrl = 1;
|
|
673
|
+
optional string nextPageUrl = 2;
|
|
674
|
+
optional double relevance = 3;
|
|
675
|
+
optional int64 estimatedResults = 4;
|
|
676
|
+
optional string analyticsCookie = 5;
|
|
677
|
+
optional bool ordered = 6;
|
|
678
|
+
repeated ContainerView containerView = 7;
|
|
679
|
+
optional Image leftIcon = 8;
|
|
680
|
+
}
|
|
681
|
+
|
|
682
|
+
message ContainerView {
|
|
683
|
+
optional bool selected = 1;
|
|
684
|
+
optional string title = 2;
|
|
685
|
+
optional string listUrl = 3;
|
|
686
|
+
optional bytes serverLogsCookie = 4;
|
|
687
|
+
}
|
|
688
|
+
|
|
689
|
+
message FlagContentResponse {
|
|
690
|
+
}
|
|
691
|
+
|
|
692
|
+
message ClientDownloadRequest {
|
|
693
|
+
message ApkInfo {
|
|
694
|
+
optional string packageName = 1;
|
|
695
|
+
optional int32 versionCode = 2;
|
|
696
|
+
}
|
|
697
|
+
message CertificateChain {
|
|
698
|
+
message Element {
|
|
699
|
+
optional bytes certificate = 1;
|
|
700
|
+
optional bool parsedSuccessfully = 2;
|
|
701
|
+
optional bytes subject = 3;
|
|
702
|
+
optional bytes issuer = 4;
|
|
703
|
+
optional bytes fingerprint = 5;
|
|
704
|
+
optional int64 expiryTime = 6;
|
|
705
|
+
optional int64 startTime = 7;
|
|
706
|
+
}
|
|
707
|
+
repeated Element element = 1;
|
|
708
|
+
}
|
|
709
|
+
message Digests {
|
|
710
|
+
optional bytes sha256 = 1;
|
|
711
|
+
optional bytes sha1 = 2;
|
|
712
|
+
optional bytes md5 = 3;
|
|
713
|
+
}
|
|
714
|
+
message Resource {
|
|
715
|
+
optional string url = 1;
|
|
716
|
+
optional int32 type = 2;
|
|
717
|
+
optional bytes remoteIp = 3;
|
|
718
|
+
optional string referrer = 4;
|
|
719
|
+
}
|
|
720
|
+
message SignatureInfo {
|
|
721
|
+
repeated CertificateChain certificateChain = 1;
|
|
722
|
+
optional bool trusted = 2;
|
|
723
|
+
}
|
|
724
|
+
optional string url = 1;
|
|
725
|
+
optional Digests digests = 2;
|
|
726
|
+
optional int64 length = 3;
|
|
727
|
+
repeated Resource resources = 4;
|
|
728
|
+
optional SignatureInfo signature = 5;
|
|
729
|
+
optional bool userInitiated = 6;
|
|
730
|
+
repeated string clientAsn = 8;
|
|
731
|
+
optional string fileBasename = 9;
|
|
732
|
+
optional int32 downloadType = 10;
|
|
733
|
+
optional string locale = 11;
|
|
734
|
+
optional ApkInfo apkInfo = 12;
|
|
735
|
+
optional fixed64 androidId = 13;
|
|
736
|
+
repeated string originatingPackages = 15;
|
|
737
|
+
optional SignatureInfo originatingSignature = 17;
|
|
738
|
+
}
|
|
739
|
+
|
|
740
|
+
message ClientDownloadResponse {
|
|
741
|
+
message MoreInfo {
|
|
742
|
+
optional string description = 1;
|
|
743
|
+
optional string url = 2;
|
|
744
|
+
}
|
|
745
|
+
optional int32 verdict = 1;
|
|
746
|
+
optional MoreInfo moreInfo = 2;
|
|
747
|
+
optional bytes token = 3;
|
|
748
|
+
}
|
|
749
|
+
|
|
750
|
+
message ClientDownloadStatsRequest {
|
|
751
|
+
optional int32 userDecision = 1;
|
|
752
|
+
optional bytes token = 2;
|
|
753
|
+
}
|
|
754
|
+
|
|
755
|
+
message DebugInfo {
|
|
756
|
+
repeated string message = 1;
|
|
757
|
+
repeated group Timing = 2 {
|
|
758
|
+
optional string name = 3;
|
|
759
|
+
optional double timeInMs = 4;
|
|
760
|
+
}
|
|
761
|
+
}
|
|
762
|
+
|
|
763
|
+
message DebugSettingsResponse {
|
|
764
|
+
optional string playCountryOverride = 1;
|
|
765
|
+
optional string playCountryDebugInfo = 2;
|
|
766
|
+
}
|
|
767
|
+
|
|
768
|
+
message DeliveryResponse {
|
|
769
|
+
optional int32 status = 1[default = 1];
|
|
770
|
+
optional AndroidAppDeliveryData appDeliveryData = 2;
|
|
771
|
+
}
|
|
772
|
+
|
|
773
|
+
message BulkDetailsEntry {
|
|
774
|
+
optional Item item = 1;
|
|
775
|
+
}
|
|
776
|
+
|
|
777
|
+
message BulkDetailsRequest {
|
|
778
|
+
repeated string DocId = 1;
|
|
779
|
+
optional bool includeChildDocs = 2[default = true];
|
|
780
|
+
optional bool includeDetails = 3;
|
|
781
|
+
optional string sourcePackageName = 4;
|
|
782
|
+
repeated int32 installedVersionCode = 7;
|
|
783
|
+
}
|
|
784
|
+
|
|
785
|
+
message BulkDetailsResponse {
|
|
786
|
+
repeated BulkDetailsEntry entry = 1;
|
|
787
|
+
}
|
|
788
|
+
|
|
789
|
+
message DetailsResponse {
|
|
790
|
+
optional string analyticsCookie = 2;
|
|
791
|
+
optional Review userReview = 3;
|
|
792
|
+
optional Item item = 4;
|
|
793
|
+
optional string footerHtml = 5;
|
|
794
|
+
optional bytes serverLogsCookie = 6;
|
|
795
|
+
repeated DiscoveryBadge discoveryBadge = 7;
|
|
796
|
+
optional bool enableReviews = 8 [default = true];
|
|
797
|
+
optional Features features = 12;
|
|
798
|
+
optional string detailsStreamUrl = 13;
|
|
799
|
+
optional string userReviewUrl = 14;
|
|
800
|
+
optional string postAcquireDetailsStreamUrl = 17;
|
|
801
|
+
}
|
|
802
|
+
|
|
803
|
+
message DiscoveryBadge {
|
|
804
|
+
optional string label = 1;
|
|
805
|
+
optional Image image = 2;
|
|
806
|
+
optional int32 backgroundColor = 3;
|
|
807
|
+
optional DiscoveryBadgeLink badgeContainer1 = 4;
|
|
808
|
+
optional bytes serverLogsCookie = 5;
|
|
809
|
+
optional bool isPlusOne = 6;
|
|
810
|
+
optional float aggregateRating = 7;
|
|
811
|
+
optional int32 userStarRating = 8;
|
|
812
|
+
optional string downloadCount = 9;
|
|
813
|
+
optional string downloadUnits = 10;
|
|
814
|
+
optional string contentDescription = 11;
|
|
815
|
+
optional PlayerBadge playerBadge = 12;
|
|
816
|
+
optional bytes familyAgeRangeBadge = 13;
|
|
817
|
+
optional bytes familyCategoryBadge = 14;
|
|
818
|
+
}
|
|
819
|
+
|
|
820
|
+
message PlayerBadge {
|
|
821
|
+
optional Image overlayIcon = 1;
|
|
822
|
+
}
|
|
823
|
+
|
|
824
|
+
message DiscoveryBadgeLink {
|
|
825
|
+
optional Link link = 1;
|
|
826
|
+
optional string userReviewsUrl = 2;
|
|
827
|
+
optional string criticReviewsUrl = 3;
|
|
828
|
+
}
|
|
829
|
+
|
|
830
|
+
message Features {
|
|
831
|
+
repeated Feature featurePresence = 1;
|
|
832
|
+
repeated Feature featureRating = 2;
|
|
833
|
+
}
|
|
834
|
+
|
|
835
|
+
message Feature {
|
|
836
|
+
optional string label = 1;
|
|
837
|
+
optional string value = 3;
|
|
838
|
+
}
|
|
839
|
+
|
|
840
|
+
message DeviceConfigurationProto {
|
|
841
|
+
optional int32 touchScreen = 1;
|
|
842
|
+
optional int32 keyboard = 2;
|
|
843
|
+
optional int32 navigation = 3;
|
|
844
|
+
optional int32 screenLayout = 4;
|
|
845
|
+
optional bool hasHardKeyboard = 5;
|
|
846
|
+
optional bool hasFiveWayNavigation = 6;
|
|
847
|
+
optional int32 screenDensity = 7;
|
|
848
|
+
optional int32 glEsVersion = 8;
|
|
849
|
+
repeated string systemSharedLibrary = 9;
|
|
850
|
+
repeated string systemAvailableFeature = 10;
|
|
851
|
+
repeated string nativePlatform = 11;
|
|
852
|
+
optional int32 screenWidth = 12;
|
|
853
|
+
optional int32 screenHeight = 13;
|
|
854
|
+
repeated string systemSupportedLocale = 14;
|
|
855
|
+
repeated string glExtension = 15;
|
|
856
|
+
optional int32 deviceClass = 16;
|
|
857
|
+
optional int32 maxApkDownloadSizeMb = 17[default = 50];
|
|
858
|
+
optional int32 smallestScreenWidthDP = 18;
|
|
859
|
+
optional int32 lowRamDevice = 19[default = 0];
|
|
860
|
+
optional int64 totalMemoryBytes = 20[default = 8354971648];
|
|
861
|
+
optional int32 maxNumOf_CPUCores = 21[default = 8];
|
|
862
|
+
repeated DeviceFeature deviceFeature = 26;
|
|
863
|
+
optional int32 unknown28 = 28[default = 0];
|
|
864
|
+
optional int32 unknown30 = 30[default = 4];
|
|
865
|
+
}
|
|
866
|
+
|
|
867
|
+
message DeviceFeature{
|
|
868
|
+
optional string name = 1;
|
|
869
|
+
optional int32 value = 2;
|
|
870
|
+
}
|
|
871
|
+
|
|
872
|
+
message Document {
|
|
873
|
+
optional DocId DocId = 1;
|
|
874
|
+
optional DocId fetchDocId = 2;
|
|
875
|
+
optional DocId sampleDocId = 3;
|
|
876
|
+
optional string title = 4;
|
|
877
|
+
optional string url = 5;
|
|
878
|
+
repeated string snippet = 6;
|
|
879
|
+
optional Offer priceDeprecated = 7;
|
|
880
|
+
optional Availability availability = 9;
|
|
881
|
+
repeated Image image = 10;
|
|
882
|
+
repeated Document child = 11;
|
|
883
|
+
optional AggregateRating aggregateRating = 13;
|
|
884
|
+
repeated Offer offer = 14;
|
|
885
|
+
repeated TranslatedText translatedSnippet = 15;
|
|
886
|
+
repeated DocumentVariant documentVariant = 16;
|
|
887
|
+
repeated string categoryId = 17;
|
|
888
|
+
repeated Document decoration = 18;
|
|
889
|
+
repeated Document parent = 19;
|
|
890
|
+
optional string privacyPolicyUrl = 20;
|
|
891
|
+
optional string consumptionUrl = 21;
|
|
892
|
+
optional int32 estimatedNumChildren = 22;
|
|
893
|
+
optional string subtitle = 23;
|
|
894
|
+
}
|
|
895
|
+
|
|
896
|
+
message DocumentVariant {
|
|
897
|
+
optional int32 variationType = 1;
|
|
898
|
+
optional Rule rule = 2;
|
|
899
|
+
optional string title = 3;
|
|
900
|
+
repeated string snippet = 4;
|
|
901
|
+
optional string recentChanges = 5;
|
|
902
|
+
repeated TranslatedText autoTranslation = 6;
|
|
903
|
+
repeated Offer offer = 7;
|
|
904
|
+
optional int64 channelId = 9;
|
|
905
|
+
repeated Document child = 10;
|
|
906
|
+
repeated Document decoration = 11;
|
|
907
|
+
repeated Image image = 12;
|
|
908
|
+
repeated string categoryId = 13;
|
|
909
|
+
optional string subtitle = 14;
|
|
910
|
+
}
|
|
911
|
+
|
|
912
|
+
message SectionImage {
|
|
913
|
+
repeated ImageContainer imageContainer = 1;
|
|
914
|
+
}
|
|
915
|
+
|
|
916
|
+
message ImageContainer {
|
|
917
|
+
optional Image image = 4;
|
|
918
|
+
}
|
|
919
|
+
|
|
920
|
+
message Image {
|
|
921
|
+
optional int32 imageType = 1;
|
|
922
|
+
optional group Dimension = 2 {
|
|
923
|
+
optional int32 width = 3;
|
|
924
|
+
optional int32 height = 4;
|
|
925
|
+
optional int32 aspectRatio = 18;
|
|
926
|
+
}
|
|
927
|
+
optional string imageUrl = 5;
|
|
928
|
+
optional string altTextLocalized = 6;
|
|
929
|
+
optional string secureUrl = 7;
|
|
930
|
+
optional int32 positionInSequence = 8;
|
|
931
|
+
optional bool supportsFifeUrlOptions = 9;
|
|
932
|
+
optional group Citation = 10 {
|
|
933
|
+
optional string titleLocalized = 11;
|
|
934
|
+
optional string url = 12;
|
|
935
|
+
}
|
|
936
|
+
optional int32 durationSeconds = 14;
|
|
937
|
+
optional string fillColorRGB = 15;
|
|
938
|
+
optional bool autogen = 16;
|
|
939
|
+
optional Attribution attribution = 17;
|
|
940
|
+
optional string backgroundColorRgb = 19;
|
|
941
|
+
optional ImagePalette palette = 20;
|
|
942
|
+
optional int32 deviceClass = 21;
|
|
943
|
+
optional bool supportsFifeMonogramOption = 22;
|
|
944
|
+
optional string imageUrlAlt = 28;
|
|
945
|
+
}
|
|
946
|
+
|
|
947
|
+
message Attribution {
|
|
948
|
+
optional string sourceTitle = 1;
|
|
949
|
+
optional string sourceUrl = 2;
|
|
950
|
+
optional string licenseTitle = 3;
|
|
951
|
+
optional string licenseUrl = 4;
|
|
952
|
+
}
|
|
953
|
+
|
|
954
|
+
message ImagePalette {
|
|
955
|
+
optional string lightVibrantRGB = 1;
|
|
956
|
+
optional string vibrantRGB = 2;
|
|
957
|
+
optional string darkVibrantRGB = 3;
|
|
958
|
+
optional string lightMutedRGB = 4;
|
|
959
|
+
optional string mutedRGB = 5;
|
|
960
|
+
optional string darkMutedRGB = 6;
|
|
961
|
+
}
|
|
962
|
+
|
|
963
|
+
message TranslatedText {
|
|
964
|
+
optional string text = 1;
|
|
965
|
+
optional string sourceLocale = 2;
|
|
966
|
+
optional string targetLocale = 3;
|
|
967
|
+
}
|
|
968
|
+
|
|
969
|
+
message PlusOneData {
|
|
970
|
+
optional bool setByUser = 1;
|
|
971
|
+
optional int64 total = 2;
|
|
972
|
+
optional int64 circlesTotal = 3;
|
|
973
|
+
repeated PlusPerson circlesPeople = 4;
|
|
974
|
+
}
|
|
975
|
+
|
|
976
|
+
message PlusPerson {
|
|
977
|
+
optional string displayName = 2;
|
|
978
|
+
optional string profileImageUrl = 4;
|
|
979
|
+
}
|
|
980
|
+
|
|
981
|
+
message AppDetails {
|
|
982
|
+
optional string developerName = 1;
|
|
983
|
+
optional int32 majorVersionNumber = 2;
|
|
984
|
+
optional int64 versionCode = 3;
|
|
985
|
+
optional string versionString = 4;
|
|
986
|
+
optional string title = 5;
|
|
987
|
+
repeated string appCategory = 7;
|
|
988
|
+
optional int32 contentRating = 8;
|
|
989
|
+
optional int64 infoDownloadSize = 9;
|
|
990
|
+
repeated string permission = 10;
|
|
991
|
+
optional string developerEmail = 11;
|
|
992
|
+
optional string developerWebsite = 12;
|
|
993
|
+
optional string infoDownload = 13;
|
|
994
|
+
optional string packageName = 14;
|
|
995
|
+
optional string recentChangesHtml = 15;
|
|
996
|
+
optional string infoUpdatedOn = 16;
|
|
997
|
+
repeated FileMetadata file = 17;
|
|
998
|
+
optional string appType = 18;
|
|
999
|
+
repeated string certificateHash = 19;
|
|
1000
|
+
optional bool variesWithDevice = 21 [default = true];
|
|
1001
|
+
repeated CertificateSet certificateSet = 22;
|
|
1002
|
+
repeated string autoAcquireFreeAppIfHigherVersionAvailableTag = 23;
|
|
1003
|
+
optional bool hasInstantLink = 24;
|
|
1004
|
+
repeated string splitId = 25;
|
|
1005
|
+
optional bool gamepadRequired = 26;
|
|
1006
|
+
optional bool externallyHosted = 27;
|
|
1007
|
+
optional bool everExternallyHosted = 28;
|
|
1008
|
+
optional string installNotes = 30;
|
|
1009
|
+
optional int32 installLocation = 31;
|
|
1010
|
+
optional int32 targetSdkVersion = 32;
|
|
1011
|
+
optional string hasPreregistrationPromoCode = 33;
|
|
1012
|
+
optional Dependencies dependencies = 34;
|
|
1013
|
+
optional TestingProgramInfo testingProgramInfo = 35;
|
|
1014
|
+
optional EarlyAccessInfo earlyAccessInfo = 36;
|
|
1015
|
+
optional EditorChoice editorChoice = 41;
|
|
1016
|
+
optional string instantLink = 43;
|
|
1017
|
+
optional string developerAddress = 45;
|
|
1018
|
+
optional Publisher publisher = 46;
|
|
1019
|
+
optional string categoryName = 48;
|
|
1020
|
+
optional int64 downloadCount = 53;
|
|
1021
|
+
optional string downloadLabelDisplay = 61;
|
|
1022
|
+
optional AppLaunch appLaunch = 64;
|
|
1023
|
+
optional TagGroup tagGroup = 66;
|
|
1024
|
+
optional string inAppProduct = 67;
|
|
1025
|
+
optional string downloadLabelAbbreviated = 77;
|
|
1026
|
+
optional string downloadLabel = 78;
|
|
1027
|
+
optional Compatibility compatibility = 82;
|
|
1028
|
+
optional Support support = 86;
|
|
1029
|
+
}
|
|
1030
|
+
|
|
1031
|
+
message AppLaunch {
|
|
1032
|
+
optional string date = 1;
|
|
1033
|
+
optional Time time = 2;
|
|
1034
|
+
|
|
1035
|
+
message Time {
|
|
1036
|
+
optional int64 timestamp = 1;
|
|
1037
|
+
optional int64 unknown = 2; // nanoseconds?
|
|
1038
|
+
}
|
|
1039
|
+
}
|
|
1040
|
+
|
|
1041
|
+
message TagGroup {
|
|
1042
|
+
// Lazy to guess the type names, please adjust if needed.
|
|
1043
|
+
optional TagType type1 = 1;
|
|
1044
|
+
optional TagType type2 = 2;
|
|
1045
|
+
optional TagType type3 = 3;
|
|
1046
|
+
optional TagType type4 = 4;
|
|
1047
|
+
optional TagType type5 = 5;
|
|
1048
|
+
optional TagType type6 = 6;
|
|
1049
|
+
}
|
|
1050
|
+
|
|
1051
|
+
message TagType {
|
|
1052
|
+
repeated TagEntry entries = 1;
|
|
1053
|
+
}
|
|
1054
|
+
|
|
1055
|
+
message TagEntry {
|
|
1056
|
+
optional string name = 1;
|
|
1057
|
+
optional TagMetadata metadata = 2;
|
|
1058
|
+
optional string category = 3;
|
|
1059
|
+
}
|
|
1060
|
+
|
|
1061
|
+
message TagMetadata {
|
|
1062
|
+
oneof metadata {
|
|
1063
|
+
TagData category = 3;
|
|
1064
|
+
TagData search = 4;
|
|
1065
|
+
}
|
|
1066
|
+
}
|
|
1067
|
+
|
|
1068
|
+
message TagData {
|
|
1069
|
+
optional string url = 1;
|
|
1070
|
+
optional string label = 2;
|
|
1071
|
+
}
|
|
1072
|
+
|
|
1073
|
+
message Support {
|
|
1074
|
+
optional string developerName = 1;
|
|
1075
|
+
optional string developerEmail = 2;
|
|
1076
|
+
optional string developerAddress = 3;
|
|
1077
|
+
optional string developerPhoneNumber = 4;
|
|
1078
|
+
}
|
|
1079
|
+
|
|
1080
|
+
message Compatibility {
|
|
1081
|
+
repeated ActiveDevice activeDevices = 1;
|
|
1082
|
+
}
|
|
1083
|
+
|
|
1084
|
+
message ActiveDevice {
|
|
1085
|
+
optional string requiredOS = 1;
|
|
1086
|
+
optional string name = 2;
|
|
1087
|
+
}
|
|
1088
|
+
|
|
1089
|
+
message ModifyLibrary{
|
|
1090
|
+
optional string id = 1;
|
|
1091
|
+
optional string packageToAdd = 2;
|
|
1092
|
+
optional string packageToRemove = 3;
|
|
1093
|
+
}
|
|
1094
|
+
|
|
1095
|
+
message Publisher{
|
|
1096
|
+
optional PublisherStream publisherStream = 2;
|
|
1097
|
+
}
|
|
1098
|
+
|
|
1099
|
+
message PublisherStream{
|
|
1100
|
+
optional string moreUrl = 3;
|
|
1101
|
+
optional string query = 11;
|
|
1102
|
+
optional string browseUrl = 83;
|
|
1103
|
+
}
|
|
1104
|
+
|
|
1105
|
+
message EditorChoice{
|
|
1106
|
+
repeated string bulletins = 1;
|
|
1107
|
+
optional string description = 2;
|
|
1108
|
+
optional SubStream stream = 3;
|
|
1109
|
+
optional string title = 4;
|
|
1110
|
+
optional string subtitle = 5;
|
|
1111
|
+
}
|
|
1112
|
+
|
|
1113
|
+
message CertificateSet {
|
|
1114
|
+
optional string certificateHash = 1;
|
|
1115
|
+
optional string sha256 = 2;
|
|
1116
|
+
}
|
|
1117
|
+
|
|
1118
|
+
message Dependencies {
|
|
1119
|
+
optional int32 unknown = 1;
|
|
1120
|
+
optional int64 size = 2;
|
|
1121
|
+
repeated Dependency dependency = 3;
|
|
1122
|
+
optional int32 targetSdk = 4;
|
|
1123
|
+
optional int32 unknown2 = 5;
|
|
1124
|
+
repeated string splitApks = 11;
|
|
1125
|
+
repeated LibraryDependency libraryDependency = 13;
|
|
1126
|
+
}
|
|
1127
|
+
|
|
1128
|
+
message Dependency {
|
|
1129
|
+
optional string packageName = 1;
|
|
1130
|
+
optional int32 version = 2;
|
|
1131
|
+
optional int32 unknown4 = 4;
|
|
1132
|
+
}
|
|
1133
|
+
|
|
1134
|
+
message LibraryDependency {
|
|
1135
|
+
optional string packageName = 1;
|
|
1136
|
+
optional int64 versionCode = 2;
|
|
1137
|
+
}
|
|
1138
|
+
|
|
1139
|
+
|
|
1140
|
+
message TestingProgramInfo {
|
|
1141
|
+
optional bool subscribed = 2;
|
|
1142
|
+
optional bool subscribedAndInstalled = 3;
|
|
1143
|
+
optional string email = 5;
|
|
1144
|
+
optional string displayName = 7;
|
|
1145
|
+
optional Image image = 6;
|
|
1146
|
+
}
|
|
1147
|
+
|
|
1148
|
+
message EarlyAccessInfo {
|
|
1149
|
+
optional string email = 3;
|
|
1150
|
+
}
|
|
1151
|
+
|
|
1152
|
+
message DocumentDetails {
|
|
1153
|
+
optional AppDetails appDetails = 1;
|
|
1154
|
+
optional SubscriptionDetails subscriptionDetails = 7;
|
|
1155
|
+
}
|
|
1156
|
+
|
|
1157
|
+
message PatchDetails {
|
|
1158
|
+
optional int32 baseVersionCode = 1;
|
|
1159
|
+
optional int64 size = 2;
|
|
1160
|
+
}
|
|
1161
|
+
|
|
1162
|
+
message FileMetadata {
|
|
1163
|
+
optional int32 fileType = 1;
|
|
1164
|
+
optional int32 versionCode = 2;
|
|
1165
|
+
optional int64 size = 3;
|
|
1166
|
+
optional string splitId = 4;
|
|
1167
|
+
optional int64 compressedSize = 5;
|
|
1168
|
+
repeated PatchDetails patchDetails = 6;
|
|
1169
|
+
}
|
|
1170
|
+
|
|
1171
|
+
message SubscriptionDetails {
|
|
1172
|
+
optional int32 subscriptionPeriod = 1;
|
|
1173
|
+
}
|
|
1174
|
+
|
|
1175
|
+
message Bucket {
|
|
1176
|
+
optional bool multiCorpus = 2;
|
|
1177
|
+
optional string title = 3;
|
|
1178
|
+
optional string iconUrl = 4;
|
|
1179
|
+
optional string fullContentsUrl = 5;
|
|
1180
|
+
optional double relevance = 6;
|
|
1181
|
+
optional int64 estimatedResults = 7;
|
|
1182
|
+
optional string analyticsCookie = 8;
|
|
1183
|
+
optional string fullContentsListUrl = 9;
|
|
1184
|
+
optional string nextPageUrl = 10;
|
|
1185
|
+
optional bool ordered = 11;
|
|
1186
|
+
}
|
|
1187
|
+
|
|
1188
|
+
message ListResponse {
|
|
1189
|
+
repeated Bucket bucket = 1;
|
|
1190
|
+
optional Item item = 2;
|
|
1191
|
+
}
|
|
1192
|
+
|
|
1193
|
+
message Item {
|
|
1194
|
+
optional string id = 1;
|
|
1195
|
+
optional string subId = 2;
|
|
1196
|
+
optional int32 type = 3;
|
|
1197
|
+
optional int32 categoryId = 4;
|
|
1198
|
+
optional string title = 5;
|
|
1199
|
+
optional string creator = 6;
|
|
1200
|
+
optional string descriptionHtml = 7;
|
|
1201
|
+
repeated Offer offer = 8;
|
|
1202
|
+
optional Availability availability = 9;
|
|
1203
|
+
repeated Image image = 10;
|
|
1204
|
+
repeated Item subItem = 11;
|
|
1205
|
+
optional ContainerMetadata containerMetadata = 12;
|
|
1206
|
+
optional DocumentDetails details = 13;
|
|
1207
|
+
optional AggregateRating aggregateRating = 14;
|
|
1208
|
+
optional Annotations annotations = 15;
|
|
1209
|
+
optional string detailsUrl = 16;
|
|
1210
|
+
optional string shareUrl = 17;
|
|
1211
|
+
optional string reviewsUrl = 18;
|
|
1212
|
+
optional string backendUrl = 19;
|
|
1213
|
+
optional string purchaseDetailsUrl = 20;
|
|
1214
|
+
optional bool detailsReusable = 21;
|
|
1215
|
+
optional string subtitle = 22;
|
|
1216
|
+
optional string translatedDescriptionHtml = 23;
|
|
1217
|
+
optional bytes serverLogsCookie = 24;
|
|
1218
|
+
optional AppInfo appInfo = 25;
|
|
1219
|
+
optional bool mature = 26;
|
|
1220
|
+
optional string promotionalDescription = 27;
|
|
1221
|
+
optional bool availableForPreregistration = 29;
|
|
1222
|
+
repeated ReviewTip tip = 30;
|
|
1223
|
+
optional string reviewSnippetsUrl = 31;
|
|
1224
|
+
optional bool forceShareability = 32;
|
|
1225
|
+
optional bool useWishlistAsPrimaryAction = 33;
|
|
1226
|
+
optional string reviewQuestionsUrl = 34;
|
|
1227
|
+
optional string reviewSummaryUrl = 39;
|
|
1228
|
+
optional ContentRating contentRating = 50;
|
|
1229
|
+
}
|
|
1230
|
+
|
|
1231
|
+
message ContentRating {
|
|
1232
|
+
message ContentRatingImage {
|
|
1233
|
+
message Dimension {
|
|
1234
|
+
optional int32 width = 3;
|
|
1235
|
+
optional int32 height = 4;
|
|
1236
|
+
}
|
|
1237
|
+
message Image {
|
|
1238
|
+
optional string url = 1;
|
|
1239
|
+
}
|
|
1240
|
+
optional Dimension dimension = 3;
|
|
1241
|
+
optional Image image = 6;
|
|
1242
|
+
}
|
|
1243
|
+
optional string title = 1;
|
|
1244
|
+
optional string recommendationAndDescriptionHtml = 2;
|
|
1245
|
+
optional ContentRatingImage contentRatingImage = 3;
|
|
1246
|
+
optional string recommendation = 5;
|
|
1247
|
+
optional string description = 6;
|
|
1248
|
+
}
|
|
1249
|
+
|
|
1250
|
+
message AppInfo {
|
|
1251
|
+
optional string title = 1;
|
|
1252
|
+
repeated AppInfoSection section = 2;
|
|
1253
|
+
}
|
|
1254
|
+
|
|
1255
|
+
message AppInfoSection {
|
|
1256
|
+
optional string label = 1;
|
|
1257
|
+
optional AppInfoContainer container = 3;
|
|
1258
|
+
}
|
|
1259
|
+
|
|
1260
|
+
message AppInfoContainer {
|
|
1261
|
+
optional Image image = 1;
|
|
1262
|
+
optional string description = 2;
|
|
1263
|
+
}
|
|
1264
|
+
|
|
1265
|
+
message Annotations {
|
|
1266
|
+
optional SectionMetaData sectionRelated = 1;
|
|
1267
|
+
optional SectionMetaData sectionMoreBy = 2;
|
|
1268
|
+
repeated Warning warning = 4;
|
|
1269
|
+
optional SectionMetaData sectionBodyOfWork = 5;
|
|
1270
|
+
optional SectionMetaData sectionCoreContent = 6;
|
|
1271
|
+
optional OverlayMetaData overlayMetaData = 7;
|
|
1272
|
+
repeated Badge badgeForCreator = 8;
|
|
1273
|
+
repeated Badge infoBadge = 9;
|
|
1274
|
+
optional AnnotationLink annotationLink = 10;
|
|
1275
|
+
optional SectionMetaData sectionCrossSell = 11;
|
|
1276
|
+
optional SectionMetaData sectionRelatedItemType = 12;
|
|
1277
|
+
repeated PromotedDoc promotedDoc = 13;
|
|
1278
|
+
optional string offerNote = 14;
|
|
1279
|
+
optional string privacyPolicyUrl = 18;
|
|
1280
|
+
optional SuggestionReasons suggestion_reasons = 19;
|
|
1281
|
+
optional Warning optimalDeviceClassWarning = 20;
|
|
1282
|
+
optional BadgeContainer badgeContainer = 21;
|
|
1283
|
+
optional SectionMetaData sectionSuggestForRating = 22;
|
|
1284
|
+
optional SectionMetaData sectionPurchaseCrossSell = 24;
|
|
1285
|
+
repeated OverflowLink overflowLink = 25;
|
|
1286
|
+
optional string attributionHtml = 27;
|
|
1287
|
+
optional PurchaseHistoryDetails purchaseHistoryDetails = 28;
|
|
1288
|
+
optional Badge badgeForLegacyRating = 29;
|
|
1289
|
+
repeated VoucherInfo voucherInfo = 30;
|
|
1290
|
+
optional SectionMetaData sectionFeaturedApps = 32;
|
|
1291
|
+
repeated SectionMetaData detailsPageCluster = 34;
|
|
1292
|
+
optional VideoAnnotations videoAnnotations = 35;
|
|
1293
|
+
optional SectionMetaData sectionPurchaseRelatedTopics = 36;
|
|
1294
|
+
optional MySubscriptionDetails mySubscriptionDetails = 37;
|
|
1295
|
+
optional MyRewardDetails myRewardDetails = 38;
|
|
1296
|
+
repeated Badge featureBadge = 39;
|
|
1297
|
+
optional Snippet snippet = 42;
|
|
1298
|
+
optional string downloadsLabel = 48;
|
|
1299
|
+
optional Badge badgeForRating = 50;
|
|
1300
|
+
optional CategoryInfo categoryInfo = 53;
|
|
1301
|
+
optional EditorReason reasons = 60;
|
|
1302
|
+
optional Stream topChartStream = 65;
|
|
1303
|
+
optional string categoryName = 66;
|
|
1304
|
+
repeated Chip chip = 71;
|
|
1305
|
+
repeated Badge displayBadge = 72;
|
|
1306
|
+
optional string liveStreamUrl = 80;
|
|
1307
|
+
optional string promotionStreamUrl = 85;
|
|
1308
|
+
optional OverlayMetaData overlayMetaDataExtra = 91;
|
|
1309
|
+
optional SectionImage sectionImage = 94;
|
|
1310
|
+
optional SubStream categoryStream = 97;
|
|
1311
|
+
}
|
|
1312
|
+
|
|
1313
|
+
message EditorReason {
|
|
1314
|
+
repeated string bulletin = 1;
|
|
1315
|
+
optional string description = 2;
|
|
1316
|
+
}
|
|
1317
|
+
|
|
1318
|
+
message SectionMetaData {
|
|
1319
|
+
optional string header = 1;
|
|
1320
|
+
optional string listUrl = 2;
|
|
1321
|
+
optional string browseUrl = 3;
|
|
1322
|
+
optional string description = 4;
|
|
1323
|
+
}
|
|
1324
|
+
|
|
1325
|
+
message OverlayMetaData{
|
|
1326
|
+
optional OverlayHeader overlayHeader = 1;
|
|
1327
|
+
optional OverlayTitle overlayTitle = 181;
|
|
1328
|
+
optional OverlayDescription overlayDescription = 182;
|
|
1329
|
+
}
|
|
1330
|
+
|
|
1331
|
+
message OverlayHeader{
|
|
1332
|
+
|
|
1333
|
+
}
|
|
1334
|
+
|
|
1335
|
+
message OverlayTitle{
|
|
1336
|
+
optional string title = 1;
|
|
1337
|
+
optional CompositeImage compositeImage = 3;
|
|
1338
|
+
}
|
|
1339
|
+
|
|
1340
|
+
message CompositeImage{
|
|
1341
|
+
optional int32 type = 1;
|
|
1342
|
+
optional string url = 5;
|
|
1343
|
+
optional int32 typeAlt = 9;
|
|
1344
|
+
optional string title = 24;
|
|
1345
|
+
optional string urlAlt = 28;
|
|
1346
|
+
}
|
|
1347
|
+
|
|
1348
|
+
message OverlayDescription{
|
|
1349
|
+
optional string description = 2;
|
|
1350
|
+
}
|
|
1351
|
+
|
|
1352
|
+
message SuggestionReasons {
|
|
1353
|
+
repeated Reason reason = 2;
|
|
1354
|
+
optional Dismissal neutralDismissal = 4;
|
|
1355
|
+
optional Dismissal positiveDismissal = 5;
|
|
1356
|
+
}
|
|
1357
|
+
|
|
1358
|
+
message Reason {
|
|
1359
|
+
optional string descriptionHtml = 3;
|
|
1360
|
+
optional ReasonPlusOne reasonPlusOne = 4;
|
|
1361
|
+
optional ReasonReview reasonReview = 5;
|
|
1362
|
+
optional Dismissal dismissal = 7;
|
|
1363
|
+
optional ReasonUserAction reasonUserAction = 9;
|
|
1364
|
+
}
|
|
1365
|
+
|
|
1366
|
+
message ReasonPlusOne {
|
|
1367
|
+
optional string localizedDescriptionHtml = 1;
|
|
1368
|
+
repeated UserProfile userProfile = 3;
|
|
1369
|
+
}
|
|
1370
|
+
|
|
1371
|
+
message ReasonReview {
|
|
1372
|
+
optional Review review = 1;
|
|
1373
|
+
}
|
|
1374
|
+
|
|
1375
|
+
message ReasonUserAction {
|
|
1376
|
+
optional UserProfile userProfile = 1;
|
|
1377
|
+
optional string localizedDescriptionHtml = 2;
|
|
1378
|
+
}
|
|
1379
|
+
|
|
1380
|
+
message Dismissal {
|
|
1381
|
+
optional string url = 1;
|
|
1382
|
+
optional string descriptionHtml = 2;
|
|
1383
|
+
}
|
|
1384
|
+
|
|
1385
|
+
message Snippet {
|
|
1386
|
+
optional string snippetHtml = 1;
|
|
1387
|
+
}
|
|
1388
|
+
|
|
1389
|
+
message MyRewardDetails {
|
|
1390
|
+
optional int64 expirationTimeMillis = 1;
|
|
1391
|
+
optional string expirationDescription = 2;
|
|
1392
|
+
optional string buttonLabel = 3;
|
|
1393
|
+
optional Link linkAction = 4;
|
|
1394
|
+
}
|
|
1395
|
+
|
|
1396
|
+
message MySubscriptionDetails {
|
|
1397
|
+
optional string subscriptionStatusHtml = 1;
|
|
1398
|
+
optional string title = 2;
|
|
1399
|
+
optional string titleByLineHtml = 3;
|
|
1400
|
+
optional string formattedPrice = 4;
|
|
1401
|
+
optional string priceByLineHtml = 5;
|
|
1402
|
+
optional bool cancelSubscription = 6;
|
|
1403
|
+
optional Link paymentDeclinedLearnMoreLink = 7;
|
|
1404
|
+
optional bool inTrialPeriod = 8;
|
|
1405
|
+
optional Image titleByLineIcon = 9;
|
|
1406
|
+
}
|
|
1407
|
+
|
|
1408
|
+
message VideoAnnotations {
|
|
1409
|
+
optional bool bundle = 1;
|
|
1410
|
+
optional string bundleContentListUrl = 2;
|
|
1411
|
+
optional string extrasContentListUrl = 3;
|
|
1412
|
+
optional string alsoAvailableInListUrl = 4;
|
|
1413
|
+
repeated DocId bundleDocId = 5;
|
|
1414
|
+
}
|
|
1415
|
+
|
|
1416
|
+
message VoucherInfo {
|
|
1417
|
+
optional Item item = 1;
|
|
1418
|
+
repeated Offer offer = 2;
|
|
1419
|
+
}
|
|
1420
|
+
|
|
1421
|
+
message BadgeContainer {
|
|
1422
|
+
optional string title = 1;
|
|
1423
|
+
repeated Image image = 2;
|
|
1424
|
+
repeated Badge badge = 3;
|
|
1425
|
+
}
|
|
1426
|
+
|
|
1427
|
+
message OverflowLink {
|
|
1428
|
+
optional string title = 1;
|
|
1429
|
+
optional Link link = 2;
|
|
1430
|
+
}
|
|
1431
|
+
|
|
1432
|
+
message PromotedDoc {
|
|
1433
|
+
optional string title = 1;
|
|
1434
|
+
optional string subtitle = 2;
|
|
1435
|
+
repeated Image image = 3;
|
|
1436
|
+
optional string description = 4;
|
|
1437
|
+
optional string detailsUrl = 5;
|
|
1438
|
+
}
|
|
1439
|
+
|
|
1440
|
+
message Warning {
|
|
1441
|
+
optional string localizedMessage = 1;
|
|
1442
|
+
}
|
|
1443
|
+
|
|
1444
|
+
message AnnotationLink {
|
|
1445
|
+
optional string uri = 1;
|
|
1446
|
+
optional ResolvedLink resolvedLink = 2;
|
|
1447
|
+
optional int32 uriBackend = 3;
|
|
1448
|
+
}
|
|
1449
|
+
|
|
1450
|
+
message Rated {
|
|
1451
|
+
optional string label = 1;
|
|
1452
|
+
optional Image image = 2;
|
|
1453
|
+
optional string learnMoreHtmlLink = 4;
|
|
1454
|
+
}
|
|
1455
|
+
|
|
1456
|
+
message Badge {
|
|
1457
|
+
optional string major = 1;
|
|
1458
|
+
optional Image image = 2;
|
|
1459
|
+
optional string minor = 3;
|
|
1460
|
+
optional string minorHtml = 4;
|
|
1461
|
+
optional SubBadge subBadge = 6;
|
|
1462
|
+
optional StreamLink link = 7;
|
|
1463
|
+
optional string description = 8;
|
|
1464
|
+
optional SubStream stream = 12;
|
|
1465
|
+
}
|
|
1466
|
+
|
|
1467
|
+
message SubBadge {
|
|
1468
|
+
optional Image image = 1;
|
|
1469
|
+
optional string description = 4;
|
|
1470
|
+
optional StreamLink link = 5;
|
|
1471
|
+
}
|
|
1472
|
+
|
|
1473
|
+
message Stream{
|
|
1474
|
+
optional string title = 1;
|
|
1475
|
+
optional SubStream stream = 2;
|
|
1476
|
+
optional string subtitle = 3;
|
|
1477
|
+
optional string browseUrl = 83;
|
|
1478
|
+
}
|
|
1479
|
+
|
|
1480
|
+
message SubStream{
|
|
1481
|
+
optional StreamLink link = 2;
|
|
1482
|
+
}
|
|
1483
|
+
|
|
1484
|
+
message Link {
|
|
1485
|
+
optional string uri = 1;
|
|
1486
|
+
optional ResolvedLink resolvedLink = 2;
|
|
1487
|
+
optional int32 uriBackend = 3;
|
|
1488
|
+
}
|
|
1489
|
+
|
|
1490
|
+
message StreamLink{
|
|
1491
|
+
optional string url = 1;
|
|
1492
|
+
optional string streamUrl = 2;
|
|
1493
|
+
optional string searchUrl = 3;
|
|
1494
|
+
optional string subCategoryUrl = 5;
|
|
1495
|
+
optional string searchQuery = 11;
|
|
1496
|
+
}
|
|
1497
|
+
|
|
1498
|
+
message Chip{
|
|
1499
|
+
optional string title = 1;
|
|
1500
|
+
optional SubStream stream = 2;
|
|
1501
|
+
}
|
|
1502
|
+
|
|
1503
|
+
message CategoryInfo {
|
|
1504
|
+
optional string category = 1;
|
|
1505
|
+
optional string appCategory = 2;
|
|
1506
|
+
}
|
|
1507
|
+
|
|
1508
|
+
message EncryptedSubscriberInfo {
|
|
1509
|
+
optional string data = 1;
|
|
1510
|
+
optional string encryptedKey = 2;
|
|
1511
|
+
optional string signature = 3;
|
|
1512
|
+
optional string initVector = 4;
|
|
1513
|
+
optional int32 googleKeyVersion = 5;
|
|
1514
|
+
optional int32 carrierKeyVersion = 6;
|
|
1515
|
+
}
|
|
1516
|
+
|
|
1517
|
+
message Availability {
|
|
1518
|
+
optional int32 restriction = 5;
|
|
1519
|
+
optional int32 offerType = 6;
|
|
1520
|
+
optional Rule rule = 7;
|
|
1521
|
+
repeated group PerDeviceAvailabilityRestriction = 9 {
|
|
1522
|
+
optional fixed64 androidId = 10;
|
|
1523
|
+
optional int32 deviceRestriction = 11;
|
|
1524
|
+
optional int64 channelId = 12;
|
|
1525
|
+
optional FilterEvaluationInfo filterInfo = 15;
|
|
1526
|
+
}
|
|
1527
|
+
optional bool availableIfOwned = 13;
|
|
1528
|
+
repeated Install install = 14;
|
|
1529
|
+
optional FilterEvaluationInfo filterInfo = 16;
|
|
1530
|
+
optional OwnershipInfo ownershipInfo = 17;
|
|
1531
|
+
repeated AvailabilityProblem availabilityProblem = 18;
|
|
1532
|
+
optional bool hidden = 21;
|
|
1533
|
+
}
|
|
1534
|
+
|
|
1535
|
+
message AvailabilityProblem {
|
|
1536
|
+
optional int32 problemType = 1;
|
|
1537
|
+
repeated string missingValue = 2;
|
|
1538
|
+
}
|
|
1539
|
+
|
|
1540
|
+
message FilterEvaluationInfo {
|
|
1541
|
+
repeated RuleEvaluation ruleEvaluation = 1;
|
|
1542
|
+
}
|
|
1543
|
+
|
|
1544
|
+
message Rule {
|
|
1545
|
+
optional bool negate = 1;
|
|
1546
|
+
optional int32 operator = 2;
|
|
1547
|
+
optional int32 key = 3;
|
|
1548
|
+
repeated string stringArg = 4;
|
|
1549
|
+
repeated int64 longArg = 5;
|
|
1550
|
+
repeated double doubleArg = 6;
|
|
1551
|
+
repeated Rule subRule = 7;
|
|
1552
|
+
optional int32 responseCode = 8;
|
|
1553
|
+
optional string comment = 9;
|
|
1554
|
+
repeated fixed64 stringArgHash = 10;
|
|
1555
|
+
repeated int32 constArg = 11;
|
|
1556
|
+
optional int32 availabilityProblemType = 12;
|
|
1557
|
+
optional bool includeMissingValues = 13;
|
|
1558
|
+
}
|
|
1559
|
+
|
|
1560
|
+
message RuleEvaluation {
|
|
1561
|
+
optional Rule rule = 1;
|
|
1562
|
+
repeated string actualStringValue = 2;
|
|
1563
|
+
repeated int64 actualLongValue = 3;
|
|
1564
|
+
repeated bool actualBoolValue = 4;
|
|
1565
|
+
repeated double actualDoubleValue = 5;
|
|
1566
|
+
}
|
|
1567
|
+
|
|
1568
|
+
message LibraryAppDetails {
|
|
1569
|
+
optional string certificateHash = 2;
|
|
1570
|
+
optional int64 refundTimeoutTimestamp = 3;
|
|
1571
|
+
optional int64 postDeliveryRefundWindowMillis = 4;
|
|
1572
|
+
}
|
|
1573
|
+
|
|
1574
|
+
message LibraryInAppDetails {
|
|
1575
|
+
optional string signedPurchaseData = 1;
|
|
1576
|
+
optional string signature = 2;
|
|
1577
|
+
}
|
|
1578
|
+
|
|
1579
|
+
message LibraryMutation {
|
|
1580
|
+
optional DocId DocId = 1;
|
|
1581
|
+
optional int32 offerType = 2;
|
|
1582
|
+
optional int64 documentHash = 3;
|
|
1583
|
+
optional bool deleted = 4;
|
|
1584
|
+
optional LibraryAppDetails appDetails = 5;
|
|
1585
|
+
optional LibrarySubscriptionDetails subscriptionDetails = 6;
|
|
1586
|
+
optional LibraryInAppDetails inAppDetails = 7;
|
|
1587
|
+
}
|
|
1588
|
+
|
|
1589
|
+
message LibrarySubscriptionDetails {
|
|
1590
|
+
optional int64 initiationTimestamp = 1;
|
|
1591
|
+
optional int64 validUntilTimestamp = 2;
|
|
1592
|
+
optional bool autoRenewing = 3;
|
|
1593
|
+
optional int64 trialUntilTimestamp = 4;
|
|
1594
|
+
optional string signedPurchaseData = 5;
|
|
1595
|
+
optional string signature = 6;
|
|
1596
|
+
}
|
|
1597
|
+
|
|
1598
|
+
message LibraryUpdate {
|
|
1599
|
+
optional int32 status = 1;
|
|
1600
|
+
optional int32 corpus = 2;
|
|
1601
|
+
optional bytes serverToken = 3;
|
|
1602
|
+
repeated LibraryMutation mutation = 4;
|
|
1603
|
+
optional bool hasMore = 5;
|
|
1604
|
+
optional string libraryId = 6;
|
|
1605
|
+
}
|
|
1606
|
+
|
|
1607
|
+
message AndroidAppNotificationData {
|
|
1608
|
+
optional int32 versionCode = 1;
|
|
1609
|
+
optional string assetId = 2;
|
|
1610
|
+
}
|
|
1611
|
+
|
|
1612
|
+
message InAppNotificationData {
|
|
1613
|
+
optional string checkoutOrderId = 1;
|
|
1614
|
+
optional string inAppNotificationId = 2;
|
|
1615
|
+
}
|
|
1616
|
+
|
|
1617
|
+
message LibraryDirtyData {
|
|
1618
|
+
optional int32 backend = 1;
|
|
1619
|
+
optional string libraryId = 2;
|
|
1620
|
+
}
|
|
1621
|
+
|
|
1622
|
+
message Notification {
|
|
1623
|
+
optional int32 notificationType = 1;
|
|
1624
|
+
optional int64 timestamp = 3;
|
|
1625
|
+
optional DocId DocId = 4;
|
|
1626
|
+
optional string docTitle = 5;
|
|
1627
|
+
optional string userEmail = 6;
|
|
1628
|
+
optional AndroidAppNotificationData appData = 7;
|
|
1629
|
+
optional AndroidAppDeliveryData appDeliveryData = 8;
|
|
1630
|
+
optional PurchaseRemovalData purchaseRemovalData = 9;
|
|
1631
|
+
optional UserNotificationData userNotificationData = 10;
|
|
1632
|
+
optional InAppNotificationData inAppNotificationData = 11;
|
|
1633
|
+
optional PurchaseDeclinedData purchaseDeclinedData = 12;
|
|
1634
|
+
optional string notificationId = 13;
|
|
1635
|
+
optional LibraryUpdate libraryUpdate = 14;
|
|
1636
|
+
optional LibraryDirtyData libraryDirtyData = 15;
|
|
1637
|
+
}
|
|
1638
|
+
|
|
1639
|
+
message PurchaseDeclinedData {
|
|
1640
|
+
optional int32 reason = 1;
|
|
1641
|
+
optional bool showNotification = 2;
|
|
1642
|
+
}
|
|
1643
|
+
|
|
1644
|
+
message PurchaseRemovalData {
|
|
1645
|
+
optional bool malicious = 1;
|
|
1646
|
+
}
|
|
1647
|
+
|
|
1648
|
+
message UserNotificationData {
|
|
1649
|
+
optional string notificationTitle = 1;
|
|
1650
|
+
optional string notificationText = 2;
|
|
1651
|
+
optional string tickerText = 3;
|
|
1652
|
+
optional string dialogTitle = 4;
|
|
1653
|
+
optional string dialogText = 5;
|
|
1654
|
+
}
|
|
1655
|
+
|
|
1656
|
+
message AggregateRating {
|
|
1657
|
+
optional int32 type = 1[default = 1];
|
|
1658
|
+
optional float starRating = 2;
|
|
1659
|
+
optional uint64 ratingsCount = 3;
|
|
1660
|
+
optional uint64 oneStarRatings = 4;
|
|
1661
|
+
optional uint64 twoStarRatings = 5;
|
|
1662
|
+
optional uint64 threeStarRatings = 6;
|
|
1663
|
+
optional uint64 fourStarRatings = 7;
|
|
1664
|
+
optional uint64 fiveStarRatings = 8;
|
|
1665
|
+
optional uint64 thumbsUpCount = 9;
|
|
1666
|
+
optional uint64 thumbsDownCount = 10;
|
|
1667
|
+
optional uint64 commentCount = 11;
|
|
1668
|
+
optional double bayesianMeanRating = 12;
|
|
1669
|
+
repeated Tip tip = 13;
|
|
1670
|
+
optional string ratingLabel = 17;
|
|
1671
|
+
optional string ratingCountLabelAbbreviated = 18;
|
|
1672
|
+
optional string ratingCountLabel = 19;
|
|
1673
|
+
}
|
|
1674
|
+
|
|
1675
|
+
message Tip {
|
|
1676
|
+
optional string tipId = 1;
|
|
1677
|
+
optional string text = 2;
|
|
1678
|
+
optional int32 polarity = 3;
|
|
1679
|
+
optional int64 reviewCount = 4;
|
|
1680
|
+
optional string language = 5;
|
|
1681
|
+
repeated string snippetReviewId = 6;
|
|
1682
|
+
}
|
|
1683
|
+
|
|
1684
|
+
message ReviewTip {
|
|
1685
|
+
optional string tipUrl = 1;
|
|
1686
|
+
optional string text = 2;
|
|
1687
|
+
optional int32 polarity = 3;
|
|
1688
|
+
optional int64 reviewCount = 4;
|
|
1689
|
+
}
|
|
1690
|
+
|
|
1691
|
+
message AcceptTosResponse {
|
|
1692
|
+
}
|
|
1693
|
+
|
|
1694
|
+
message CarrierBillingConfig {
|
|
1695
|
+
optional string id = 1;
|
|
1696
|
+
optional string name = 2;
|
|
1697
|
+
optional int32 apiVersion = 3;
|
|
1698
|
+
optional string provisioningUrl = 4;
|
|
1699
|
+
optional string credentialsUrl = 5;
|
|
1700
|
+
optional bool tosRequired = 6;
|
|
1701
|
+
optional bool perTransactionCredentialsRequired = 7;
|
|
1702
|
+
optional bool sendSubscriberIdWithCarrierBillingRequests = 8;
|
|
1703
|
+
}
|
|
1704
|
+
|
|
1705
|
+
message BillingConfig {
|
|
1706
|
+
optional CarrierBillingConfig carrierBillingConfig = 1;
|
|
1707
|
+
optional int32 maxIabApiVersion = 2;
|
|
1708
|
+
}
|
|
1709
|
+
|
|
1710
|
+
message CorpusMetadata {
|
|
1711
|
+
optional int32 backend = 1;
|
|
1712
|
+
optional string name = 2;
|
|
1713
|
+
optional string landingUrl = 3;
|
|
1714
|
+
optional string libraryName = 4;
|
|
1715
|
+
optional string recsWidgetUrl = 6;
|
|
1716
|
+
optional string shopName = 7;
|
|
1717
|
+
}
|
|
1718
|
+
|
|
1719
|
+
message Experiments {
|
|
1720
|
+
repeated string experimentId = 1;
|
|
1721
|
+
}
|
|
1722
|
+
|
|
1723
|
+
message SelfUpdateConfig {
|
|
1724
|
+
optional int32 latestClientVersionCode = 1;
|
|
1725
|
+
}
|
|
1726
|
+
|
|
1727
|
+
message TocResponse {
|
|
1728
|
+
repeated CorpusMetadata corpus = 1;
|
|
1729
|
+
optional int32 tosVersionDeprecated = 2;
|
|
1730
|
+
optional string tosContent = 3;
|
|
1731
|
+
optional string homeUrl = 4;
|
|
1732
|
+
optional Experiments experiments = 5;
|
|
1733
|
+
optional string tosCheckboxTextMarketingEmails = 6;
|
|
1734
|
+
optional string tosToken = 7;
|
|
1735
|
+
optional UserSettings userSettings = 8;
|
|
1736
|
+
optional string iconOverrideUrl = 9;
|
|
1737
|
+
optional SelfUpdateConfig selfUpdateConfig = 10;
|
|
1738
|
+
optional bool requiresUploadDeviceConfig = 11;
|
|
1739
|
+
optional BillingConfig billingConfig = 12;
|
|
1740
|
+
optional string recsWidgetUrl = 13;
|
|
1741
|
+
optional string socialHomeUrl = 15;
|
|
1742
|
+
optional bool ageVerificationRequired = 16;
|
|
1743
|
+
optional bool gPlusSignupEnabled = 17;
|
|
1744
|
+
optional bool redeemEnabled = 18;
|
|
1745
|
+
optional string helpUrl = 19;
|
|
1746
|
+
optional int32 themeId = 20;
|
|
1747
|
+
optional string entertainmentHomeUrl = 21;
|
|
1748
|
+
optional string cookie = 22;
|
|
1749
|
+
}
|
|
1750
|
+
|
|
1751
|
+
message UserSettings {
|
|
1752
|
+
optional bool tosCheckboxMarketingEmailsOptedIn = 1;
|
|
1753
|
+
optional PrivacySetting privacySetting = 2;
|
|
1754
|
+
}
|
|
1755
|
+
|
|
1756
|
+
message PrivacySetting {
|
|
1757
|
+
optional int32 type = 1;
|
|
1758
|
+
optional int32 currentStatus = 2;
|
|
1759
|
+
optional bool enabledByDefault = 3;
|
|
1760
|
+
}
|
|
1761
|
+
|
|
1762
|
+
message Payload {
|
|
1763
|
+
optional ListResponse listResponse = 1;
|
|
1764
|
+
optional DetailsResponse detailsResponse = 2;
|
|
1765
|
+
optional ReviewResponse reviewResponse = 3;
|
|
1766
|
+
optional BuyResponse buyResponse = 4;
|
|
1767
|
+
optional SearchResponse searchResponse = 5;
|
|
1768
|
+
optional TocResponse tocResponse = 6;
|
|
1769
|
+
optional BrowseResponse browseResponse = 7;
|
|
1770
|
+
optional PurchaseStatusResponse purchaseStatusResponse = 8;
|
|
1771
|
+
optional string logResponse = 10;
|
|
1772
|
+
optional string flagContentResponse = 13;
|
|
1773
|
+
optional BulkDetailsResponse bulkDetailsResponse = 19;
|
|
1774
|
+
optional DeliveryResponse deliveryResponse = 21;
|
|
1775
|
+
optional AcceptTosResponse acceptTosResponse = 22;
|
|
1776
|
+
optional CheckPromoOfferResponse checkPromoOfferResponse = 24;
|
|
1777
|
+
optional InstrumentSetupInfoResponse instrumentSetupInfoResponse = 25;
|
|
1778
|
+
optional AndroidCheckinResponse androidCheckinResponse = 26;
|
|
1779
|
+
optional UploadDeviceConfigResponse uploadDeviceConfigResponse = 28;
|
|
1780
|
+
optional SearchSuggestResponse searchSuggestResponse = 40;
|
|
1781
|
+
optional ConsumePurchaseResponse consumePurchaseResponse = 30;
|
|
1782
|
+
optional BillingProfileResponse billingProfileResponse = 31;
|
|
1783
|
+
optional DebugSettingsResponse debugSettingsResponse = 34;
|
|
1784
|
+
optional CheckIabPromoResponse checkIabPromoResponse = 35;
|
|
1785
|
+
optional UserActivitySettingsResponse userActivitySettingsResponse = 36;
|
|
1786
|
+
optional RecordUserActivityResponse recordUserActivityResponse = 37;
|
|
1787
|
+
optional RedeemCodeResponse redeemCodeResponse = 38;
|
|
1788
|
+
optional SelfUpdateResponse selfUpdateResponse = 39;
|
|
1789
|
+
optional GetInitialInstrumentFlowStateResponse getInitialInstrumentFlowStateResponse = 41;
|
|
1790
|
+
optional CreateInstrumentResponse createInstrumentResponse = 42;
|
|
1791
|
+
optional ChallengeResponse challengeResponse = 43;
|
|
1792
|
+
optional BackDeviceChoicesResponse backupDeviceChoicesResponse = 44;
|
|
1793
|
+
optional BackupDocumentChoicesResponse backupDocumentChoicesResponse = 45;
|
|
1794
|
+
optional EarlyUpdateResponse earlyUpdateResponse = 46;
|
|
1795
|
+
optional PreloadsResponse preloadsResponse = 47;
|
|
1796
|
+
optional MyAccountsResponse myAccountsResponse = 48;
|
|
1797
|
+
optional ContentFilterResponse contentFilterResponse = 49;
|
|
1798
|
+
optional ExperimentsResponse experimentsResponse = 50;
|
|
1799
|
+
optional SurveyResponse surveyResponse = 51;
|
|
1800
|
+
optional PingResponse pingResponse = 52;
|
|
1801
|
+
optional UpdateUserSettingResponse updateUserSettingResponse = 53;
|
|
1802
|
+
optional GetUserSettingsResponse getUserSettingsResponse = 54;
|
|
1803
|
+
optional GetSharingSettingsResponse getSharingSettingsResponse = 56;
|
|
1804
|
+
optional UpdateSharingSettingsResponse updateSharingSettingsResponse = 57;
|
|
1805
|
+
optional ReviewSnippetsResponse reviewSnippetsResponse = 58;
|
|
1806
|
+
optional DocumentSharingStateResponse documentSharingStateResponse = 59;
|
|
1807
|
+
optional ModuleDeliveryResponse moduleDeliveryResponse = 70;
|
|
1808
|
+
optional TestingProgramResponse testingProgramResponse = 80;
|
|
1809
|
+
optional ReviewResponse reviewSummaryResponse = 129;
|
|
1810
|
+
}
|
|
1811
|
+
|
|
1812
|
+
message CheckIabPromoResponse {
|
|
1813
|
+
}
|
|
1814
|
+
|
|
1815
|
+
message UserActivitySettingsResponse {
|
|
1816
|
+
}
|
|
1817
|
+
|
|
1818
|
+
message RecordUserActivityResponse {
|
|
1819
|
+
}
|
|
1820
|
+
|
|
1821
|
+
message RedeemCodeResponse {
|
|
1822
|
+
}
|
|
1823
|
+
|
|
1824
|
+
message SelfUpdateResponse {
|
|
1825
|
+
}
|
|
1826
|
+
|
|
1827
|
+
message GetInitialInstrumentFlowStateResponse {
|
|
1828
|
+
}
|
|
1829
|
+
|
|
1830
|
+
message CreateInstrumentResponse {
|
|
1831
|
+
}
|
|
1832
|
+
|
|
1833
|
+
message ChallengeResponse {
|
|
1834
|
+
}
|
|
1835
|
+
|
|
1836
|
+
message BackDeviceChoicesResponse {
|
|
1837
|
+
}
|
|
1838
|
+
|
|
1839
|
+
message BackupDocumentChoicesResponse {
|
|
1840
|
+
}
|
|
1841
|
+
|
|
1842
|
+
message EarlyUpdateResponse {
|
|
1843
|
+
}
|
|
1844
|
+
|
|
1845
|
+
message PreloadsResponse {
|
|
1846
|
+
optional Preload configPreload = 1;
|
|
1847
|
+
message Preload {
|
|
1848
|
+
optional DocId DocId = 1;
|
|
1849
|
+
optional int32 versionCode = 2;
|
|
1850
|
+
optional string title = 3;
|
|
1851
|
+
optional Image icon = 4;
|
|
1852
|
+
optional string deliveryToken = 5;
|
|
1853
|
+
optional int32 installLocation = 6;
|
|
1854
|
+
optional int64 size = 7;
|
|
1855
|
+
}
|
|
1856
|
+
repeated Preload appPreload = 2;
|
|
1857
|
+
}
|
|
1858
|
+
|
|
1859
|
+
message MyAccountsResponse {
|
|
1860
|
+
}
|
|
1861
|
+
|
|
1862
|
+
message ContentFilterResponse {
|
|
1863
|
+
}
|
|
1864
|
+
|
|
1865
|
+
message ExperimentsResponse {
|
|
1866
|
+
}
|
|
1867
|
+
|
|
1868
|
+
message SurveyResponse {
|
|
1869
|
+
}
|
|
1870
|
+
|
|
1871
|
+
message PingResponse {
|
|
1872
|
+
}
|
|
1873
|
+
|
|
1874
|
+
message UpdateUserSettingResponse {
|
|
1875
|
+
}
|
|
1876
|
+
|
|
1877
|
+
message GetUserSettingsResponse {
|
|
1878
|
+
}
|
|
1879
|
+
|
|
1880
|
+
message GetSharingSettingsResponse {
|
|
1881
|
+
}
|
|
1882
|
+
|
|
1883
|
+
message UpdateSharingSettingsResponse {
|
|
1884
|
+
}
|
|
1885
|
+
|
|
1886
|
+
message ReviewSnippetsResponse {
|
|
1887
|
+
}
|
|
1888
|
+
|
|
1889
|
+
message DocumentSharingStateResponse {
|
|
1890
|
+
}
|
|
1891
|
+
|
|
1892
|
+
message ModuleDeliveryResponse {
|
|
1893
|
+
}
|
|
1894
|
+
|
|
1895
|
+
message PreFetch {
|
|
1896
|
+
optional string url = 1;
|
|
1897
|
+
optional ResponseWrapper response = 2;
|
|
1898
|
+
optional string etag = 3;
|
|
1899
|
+
optional int64 ttl = 4;
|
|
1900
|
+
optional int64 softTtl = 5;
|
|
1901
|
+
}
|
|
1902
|
+
|
|
1903
|
+
message ServerMetadata {
|
|
1904
|
+
optional int64 latencyMillis = 1;
|
|
1905
|
+
}
|
|
1906
|
+
|
|
1907
|
+
message Targets {
|
|
1908
|
+
repeated int64 targetId = 1;
|
|
1909
|
+
optional bytes signature = 2;
|
|
1910
|
+
}
|
|
1911
|
+
|
|
1912
|
+
message ServerCookie {
|
|
1913
|
+
optional int32 type = 1;
|
|
1914
|
+
optional bytes token = 2;
|
|
1915
|
+
}
|
|
1916
|
+
|
|
1917
|
+
message ServerCookies {
|
|
1918
|
+
repeated ServerCookie serverCookie = 1;
|
|
1919
|
+
}
|
|
1920
|
+
|
|
1921
|
+
message ResponseWrapper {
|
|
1922
|
+
optional Payload payload = 1;
|
|
1923
|
+
optional ServerCommands commands = 2;
|
|
1924
|
+
optional PreFetch preFetch = 3;
|
|
1925
|
+
repeated Notification notification = 4;
|
|
1926
|
+
optional ServerMetadata serverMetadata = 5;
|
|
1927
|
+
optional Targets targets = 6;
|
|
1928
|
+
optional ServerCookies serverCookies = 7;
|
|
1929
|
+
optional bytes serverLogsCookie = 9;
|
|
1930
|
+
}
|
|
1931
|
+
|
|
1932
|
+
message ResponseWrapperApi {
|
|
1933
|
+
optional PayloadApi payload = 1;
|
|
1934
|
+
}
|
|
1935
|
+
|
|
1936
|
+
message PayloadApi {
|
|
1937
|
+
optional UserProfileResponse userProfileResponse = 5;
|
|
1938
|
+
}
|
|
1939
|
+
|
|
1940
|
+
message UserProfileResponse {
|
|
1941
|
+
optional UserProfile userProfile = 1;
|
|
1942
|
+
}
|
|
1943
|
+
|
|
1944
|
+
message ServerCommands {
|
|
1945
|
+
optional bool clearCache = 1;
|
|
1946
|
+
optional string displayErrorMessage = 2;
|
|
1947
|
+
optional string logErrorStacktrace = 3;
|
|
1948
|
+
}
|
|
1949
|
+
|
|
1950
|
+
message GetReviewsResponse {
|
|
1951
|
+
repeated Review review = 1;
|
|
1952
|
+
optional int64 matchingCount = 2;
|
|
1953
|
+
}
|
|
1954
|
+
|
|
1955
|
+
message Review {
|
|
1956
|
+
optional string authorName = 1;
|
|
1957
|
+
optional string url = 2;
|
|
1958
|
+
optional string source = 3;
|
|
1959
|
+
optional string version = 4;
|
|
1960
|
+
optional int64 timestamp = 5;
|
|
1961
|
+
optional int32 starRating = 6;
|
|
1962
|
+
optional string title = 7;
|
|
1963
|
+
optional string comment = 8;
|
|
1964
|
+
optional string commentId = 9;
|
|
1965
|
+
optional string deviceName = 19;
|
|
1966
|
+
optional string replyText = 29;
|
|
1967
|
+
optional int64 replyTimeStamp = 30;
|
|
1968
|
+
optional ReviewAuthor author = 31;
|
|
1969
|
+
optional UserProfile userProfile = 33;
|
|
1970
|
+
optional Image sentiment = 34;
|
|
1971
|
+
optional int32 helpfulCount = 35;
|
|
1972
|
+
optional int64 thumbsUpCount = 38;
|
|
1973
|
+
}
|
|
1974
|
+
|
|
1975
|
+
message CriticReviewsResponse {
|
|
1976
|
+
optional string title = 1;
|
|
1977
|
+
optional Image image = 2;
|
|
1978
|
+
optional uint32 totalNumReviews = 3;
|
|
1979
|
+
optional uint32 percentFavorable = 4;
|
|
1980
|
+
optional string sourceText = 5;
|
|
1981
|
+
optional Link source = 6;
|
|
1982
|
+
repeated Review review = 7;
|
|
1983
|
+
}
|
|
1984
|
+
|
|
1985
|
+
message ReviewAuthor {
|
|
1986
|
+
optional string name = 2;
|
|
1987
|
+
optional Image avatar = 5;
|
|
1988
|
+
}
|
|
1989
|
+
|
|
1990
|
+
message UserProfile {
|
|
1991
|
+
optional string profileId = 1;
|
|
1992
|
+
optional string personId = 2;
|
|
1993
|
+
optional int32 profileType = 3;
|
|
1994
|
+
optional int32 personType = 4;
|
|
1995
|
+
optional string name = 5;
|
|
1996
|
+
repeated Image image = 10;
|
|
1997
|
+
optional string profileUrl = 19;
|
|
1998
|
+
optional string profileDescription = 22;
|
|
1999
|
+
}
|
|
2000
|
+
|
|
2001
|
+
message ReviewResponse {
|
|
2002
|
+
optional GetReviewsResponse userReviewsResponse = 1;
|
|
2003
|
+
optional string nextPageUrl = 2;
|
|
2004
|
+
optional Review userReview = 3;
|
|
2005
|
+
optional string suggestionsListUrl = 4;
|
|
2006
|
+
optional CriticReviewsResponse criticReviewsResponse = 5;
|
|
2007
|
+
}
|
|
2008
|
+
|
|
2009
|
+
message RelatedSearch {
|
|
2010
|
+
optional string searchUrl = 1;
|
|
2011
|
+
optional string header = 2;
|
|
2012
|
+
optional int32 backendId = 3;
|
|
2013
|
+
optional int32 docType = 4[default = 1];
|
|
2014
|
+
optional bool current = 5;
|
|
2015
|
+
}
|
|
2016
|
+
|
|
2017
|
+
message SearchResponse {
|
|
2018
|
+
optional string originalQuery = 1;
|
|
2019
|
+
optional string suggestedQuery = 2;
|
|
2020
|
+
optional bool aggregateQuery = 3;
|
|
2021
|
+
repeated Bucket bucket = 4;
|
|
2022
|
+
repeated Item item = 5;
|
|
2023
|
+
repeated RelatedSearch relatedSearch = 6;
|
|
2024
|
+
optional bytes serverLogsCookie = 7;
|
|
2025
|
+
optional bool fullPageReplaced = 8;
|
|
2026
|
+
optional bool containsSnow = 9;
|
|
2027
|
+
optional string nextPageUrl = 10;
|
|
2028
|
+
}
|
|
2029
|
+
|
|
2030
|
+
message SearchSuggestResponse {
|
|
2031
|
+
repeated SearchSuggestEntry entry = 1;
|
|
2032
|
+
}
|
|
2033
|
+
|
|
2034
|
+
message SearchSuggestEntry {
|
|
2035
|
+
optional int32 type = 1;
|
|
2036
|
+
optional string suggestedQuery = 2;
|
|
2037
|
+
optional ImageContainer imageContainer = 5;
|
|
2038
|
+
message ImageContainer {
|
|
2039
|
+
optional string imageUrl = 5;
|
|
2040
|
+
}
|
|
2041
|
+
optional string title = 6;
|
|
2042
|
+
optional PackageNameContainer packageNameContainer = 8;
|
|
2043
|
+
message PackageNameContainer {
|
|
2044
|
+
optional string packageName = 1;
|
|
2045
|
+
}
|
|
2046
|
+
}
|
|
2047
|
+
|
|
2048
|
+
message TestingProgramResponse {
|
|
2049
|
+
optional TestingProgramResult result = 2;
|
|
2050
|
+
}
|
|
2051
|
+
|
|
2052
|
+
message TestingProgramResult {
|
|
2053
|
+
optional TestingProgramDetails details = 4;
|
|
2054
|
+
}
|
|
2055
|
+
|
|
2056
|
+
message TestingProgramDetails {
|
|
2057
|
+
optional bool subscribed = 2;
|
|
2058
|
+
optional int64 id = 3;
|
|
2059
|
+
optional bool unsubscribed = 4;
|
|
2060
|
+
}
|
|
2061
|
+
|
|
2062
|
+
message LogRequest {
|
|
2063
|
+
optional int64 timestamp = 1;
|
|
2064
|
+
optional string downloadConfirmationQuery = 2;
|
|
2065
|
+
}
|
|
2066
|
+
|
|
2067
|
+
message TestingProgramRequest {
|
|
2068
|
+
optional string packageName = 1;
|
|
2069
|
+
optional bool subscribe = 2;
|
|
2070
|
+
}
|
|
2071
|
+
|
|
2072
|
+
message UploadDeviceConfigRequest {
|
|
2073
|
+
optional DeviceConfigurationProto deviceConfiguration = 1;
|
|
2074
|
+
optional string manufacturer = 2;
|
|
2075
|
+
optional string gcmRegistrationId = 3;
|
|
2076
|
+
}
|
|
2077
|
+
|
|
2078
|
+
message UploadDeviceConfigResponse {
|
|
2079
|
+
optional string uploadDeviceConfigToken = 1;
|
|
2080
|
+
}
|
|
2081
|
+
|
|
2082
|
+
message AndroidCheckinRequest {
|
|
2083
|
+
optional string imei = 1;
|
|
2084
|
+
optional int64 id = 2[default = 0];
|
|
2085
|
+
optional string digest = 3;
|
|
2086
|
+
optional AndroidCheckinProto checkin = 4;
|
|
2087
|
+
optional string desiredBuild = 5;
|
|
2088
|
+
optional string locale = 6;
|
|
2089
|
+
optional int64 loggingId = 7;
|
|
2090
|
+
optional string marketCheckin = 8;
|
|
2091
|
+
repeated string macAddr = 9;
|
|
2092
|
+
optional string meid = 10;
|
|
2093
|
+
repeated string accountCookie = 11;
|
|
2094
|
+
optional string timeZone = 12;
|
|
2095
|
+
optional fixed64 securityToken = 13;
|
|
2096
|
+
optional int32 version = 14;
|
|
2097
|
+
repeated string otaCert = 15;
|
|
2098
|
+
optional string serialNumber = 16;
|
|
2099
|
+
optional string esn = 17;
|
|
2100
|
+
optional DeviceConfigurationProto deviceConfiguration = 18;
|
|
2101
|
+
repeated string macAddrType = 19;
|
|
2102
|
+
optional int32 fragment = 20;
|
|
2103
|
+
optional string userName = 21;
|
|
2104
|
+
optional int32 userSerialNumber = 22;
|
|
2105
|
+
}
|
|
2106
|
+
|
|
2107
|
+
message AndroidCheckinResponse {
|
|
2108
|
+
optional bool statsOk = 1;
|
|
2109
|
+
repeated AndroidIntentProto intent = 2;
|
|
2110
|
+
optional int64 timeMsec = 3;
|
|
2111
|
+
optional string digest = 4;
|
|
2112
|
+
repeated GservicesSetting setting = 5;
|
|
2113
|
+
optional bool marketOk = 6;
|
|
2114
|
+
optional fixed64 androidId = 7;
|
|
2115
|
+
optional fixed64 securityToken = 8;
|
|
2116
|
+
optional bool settingsDiff = 9;
|
|
2117
|
+
repeated string deleteSetting = 10;
|
|
2118
|
+
optional string deviceCheckinConsistencyToken = 12;
|
|
2119
|
+
}
|
|
2120
|
+
|
|
2121
|
+
message GservicesSetting {
|
|
2122
|
+
optional bytes name = 1;
|
|
2123
|
+
optional bytes value = 2;
|
|
2124
|
+
}
|
|
2125
|
+
|
|
2126
|
+
message AndroidBuildProto {
|
|
2127
|
+
optional string id = 1;
|
|
2128
|
+
optional string product = 2;
|
|
2129
|
+
optional string carrier = 3;
|
|
2130
|
+
optional string radio = 4;
|
|
2131
|
+
optional string bootloader = 5;
|
|
2132
|
+
optional string client = 6;
|
|
2133
|
+
optional int64 timestamp = 7;
|
|
2134
|
+
optional int32 googleServices = 8;
|
|
2135
|
+
optional string device = 9;
|
|
2136
|
+
optional int32 sdkVersion = 10;
|
|
2137
|
+
optional string model = 11;
|
|
2138
|
+
optional string manufacturer = 12;
|
|
2139
|
+
optional string buildProduct = 13;
|
|
2140
|
+
optional bool otaInstalled = 14;
|
|
2141
|
+
}
|
|
2142
|
+
|
|
2143
|
+
message AndroidCheckinProto {
|
|
2144
|
+
optional AndroidBuildProto build = 1;
|
|
2145
|
+
optional int64 lastCheckinMsec = 2;
|
|
2146
|
+
repeated AndroidEventProto event = 3;
|
|
2147
|
+
repeated AndroidStatisticProto stat = 4;
|
|
2148
|
+
repeated string requestedGroup = 5;
|
|
2149
|
+
optional string cellOperator = 6;
|
|
2150
|
+
optional string simOperator = 7;
|
|
2151
|
+
optional string roaming = 8;
|
|
2152
|
+
optional int32 userNumber = 9;
|
|
2153
|
+
}
|
|
2154
|
+
|
|
2155
|
+
message AndroidEventProto {
|
|
2156
|
+
optional string tag = 1;
|
|
2157
|
+
optional string value = 2;
|
|
2158
|
+
optional int64 timeMsec = 3;
|
|
2159
|
+
}
|
|
2160
|
+
|
|
2161
|
+
message AndroidIntentProto {
|
|
2162
|
+
optional string action = 1;
|
|
2163
|
+
optional string dataUri = 2;
|
|
2164
|
+
optional string mimeType = 3;
|
|
2165
|
+
optional string javaClass = 4;
|
|
2166
|
+
repeated group Extra = 5 {
|
|
2167
|
+
optional string name = 6;
|
|
2168
|
+
optional string value = 7;
|
|
2169
|
+
}
|
|
2170
|
+
}
|
|
2171
|
+
|
|
2172
|
+
message AndroidStatisticProto {
|
|
2173
|
+
optional string tag = 1;
|
|
2174
|
+
optional int32 count = 2;
|
|
2175
|
+
optional float sum = 3;
|
|
2176
|
+
}
|
|
2177
|
+
|
|
2178
|
+
message ClientLibraryState {
|
|
2179
|
+
optional int32 corpus = 1;
|
|
2180
|
+
optional bytes serverToken = 2;
|
|
2181
|
+
optional int64 hashCodeSum = 3;
|
|
2182
|
+
optional int32 librarySize = 4;
|
|
2183
|
+
optional string libraryId = 5;
|
|
2184
|
+
}
|
|
2185
|
+
|
|
2186
|
+
message AndroidDataUsageProto {
|
|
2187
|
+
optional int32 version = 1;
|
|
2188
|
+
optional int64 currentReportMsec = 2;
|
|
2189
|
+
repeated KeyToPackageNameMapping keyToPackageNameMapping = 3;
|
|
2190
|
+
repeated PayloadLevelAppStat payloadLevelAppStat = 4;
|
|
2191
|
+
repeated IpLayerNetworkStat ipLayerNetworkStat = 5;
|
|
2192
|
+
}
|
|
2193
|
+
|
|
2194
|
+
message AndroidUsageStatsReport {
|
|
2195
|
+
optional int64 androidId = 1;
|
|
2196
|
+
optional int64 loggingId = 2;
|
|
2197
|
+
optional UsageStatsExtensionProto usageStats = 3;
|
|
2198
|
+
}
|
|
2199
|
+
|
|
2200
|
+
message AppBucket {
|
|
2201
|
+
optional int64 bucketStartMsec = 1;
|
|
2202
|
+
optional int64 bucketDurationMsec = 2;
|
|
2203
|
+
repeated StatCounters statCounters = 3;
|
|
2204
|
+
optional int64 operationCount = 4;
|
|
2205
|
+
}
|
|
2206
|
+
|
|
2207
|
+
message CounterData {
|
|
2208
|
+
optional int64 bytes = 1;
|
|
2209
|
+
optional int64 packets = 2;
|
|
2210
|
+
}
|
|
2211
|
+
|
|
2212
|
+
message IpLayerAppStat {
|
|
2213
|
+
optional int32 packageKey = 1;
|
|
2214
|
+
optional int32 applicationTag = 2;
|
|
2215
|
+
repeated AppBucket ipLayerAppBucket = 3;
|
|
2216
|
+
}
|
|
2217
|
+
|
|
2218
|
+
message IpLayerNetworkBucket {
|
|
2219
|
+
optional int64 bucketStartMsec = 1;
|
|
2220
|
+
optional int64 bucketDurationMsec = 2;
|
|
2221
|
+
repeated StatCounters statCounters = 3;
|
|
2222
|
+
optional int64 networkActiveDuration = 4;
|
|
2223
|
+
}
|
|
2224
|
+
|
|
2225
|
+
message IpLayerNetworkStat {
|
|
2226
|
+
optional string networkDetails = 1;
|
|
2227
|
+
optional int32 type = 2;
|
|
2228
|
+
repeated IpLayerNetworkBucket ipLayerNetworkBucket = 3;
|
|
2229
|
+
repeated IpLayerAppStat ipLayerAppStat = 4;
|
|
2230
|
+
}
|
|
2231
|
+
|
|
2232
|
+
message KeyToPackageNameMapping {
|
|
2233
|
+
optional int32 packageKey = 1;
|
|
2234
|
+
optional string uidName = 2;
|
|
2235
|
+
repeated PackageInfo sharedPackage = 3;
|
|
2236
|
+
}
|
|
2237
|
+
|
|
2238
|
+
message PackageInfo {
|
|
2239
|
+
optional string pkgName = 1;
|
|
2240
|
+
optional int32 versionCode = 2;
|
|
2241
|
+
}
|
|
2242
|
+
|
|
2243
|
+
message PayloadLevelAppStat {
|
|
2244
|
+
optional int32 packageKey = 1;
|
|
2245
|
+
optional int32 applicationTag = 2;
|
|
2246
|
+
repeated AppBucket payloadLevelAppBucket = 3;
|
|
2247
|
+
}
|
|
2248
|
+
|
|
2249
|
+
message StatCounters {
|
|
2250
|
+
optional int32 networkProto = 1;
|
|
2251
|
+
optional int32 direction = 2;
|
|
2252
|
+
optional CounterData counterData = 3;
|
|
2253
|
+
optional int32 fgBg = 4;
|
|
2254
|
+
}
|
|
2255
|
+
|
|
2256
|
+
message UsageStatsExtensionProto {
|
|
2257
|
+
optional AndroidDataUsageProto dataUsage = 1;
|
|
2258
|
+
}
|
|
2259
|
+
|
|
2260
|
+
message ModifyLibraryRequest {
|
|
2261
|
+
optional string libraryId = 1;
|
|
2262
|
+
repeated string addPackageName = 2;
|
|
2263
|
+
repeated string removePackageName = 3;
|
|
2264
|
+
}
|