1// Copyright 2021 Google LLC. 2// Use of this source code is governed by a BSD-style 3// license that can be found in the LICENSE file. 4 5// Code generated file. DO NOT EDIT. 6 7// Package androidpublisher provides access to the Google Play Android Developer API. 8// 9// For product documentation, see: https://developers.google.com/android-publisher 10// 11// Creating a client 12// 13// Usage example: 14// 15// import "google.golang.org/api/androidpublisher/v3" 16// ... 17// ctx := context.Background() 18// androidpublisherService, err := androidpublisher.NewService(ctx) 19// 20// In this example, Google Application Default Credentials are used for authentication. 21// 22// For information on how to create and obtain Application Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials. 23// 24// Other authentication options 25// 26// To use an API key for authentication (note: some APIs do not support API keys), use option.WithAPIKey: 27// 28// androidpublisherService, err := androidpublisher.NewService(ctx, option.WithAPIKey("AIza...")) 29// 30// To use an OAuth token (e.g., a user token obtained via a three-legged OAuth flow), use option.WithTokenSource: 31// 32// config := &oauth2.Config{...} 33// // ... 34// token, err := config.Exchange(ctx, ...) 35// androidpublisherService, err := androidpublisher.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token))) 36// 37// See https://godoc.org/google.golang.org/api/option/ for details on options. 38package androidpublisher // import "google.golang.org/api/androidpublisher/v3" 39 40import ( 41 "bytes" 42 "context" 43 "encoding/json" 44 "errors" 45 "fmt" 46 "io" 47 "net/http" 48 "net/url" 49 "strconv" 50 "strings" 51 52 googleapi "google.golang.org/api/googleapi" 53 gensupport "google.golang.org/api/internal/gensupport" 54 option "google.golang.org/api/option" 55 internaloption "google.golang.org/api/option/internaloption" 56 htransport "google.golang.org/api/transport/http" 57) 58 59// Always reference these packages, just in case the auto-generated code 60// below doesn't. 61var _ = bytes.NewBuffer 62var _ = strconv.Itoa 63var _ = fmt.Sprintf 64var _ = json.NewDecoder 65var _ = io.Copy 66var _ = url.Parse 67var _ = gensupport.MarshalJSON 68var _ = googleapi.Version 69var _ = errors.New 70var _ = strings.Replace 71var _ = context.Canceled 72var _ = internaloption.WithDefaultEndpoint 73 74const apiId = "androidpublisher:v3" 75const apiName = "androidpublisher" 76const apiVersion = "v3" 77const basePath = "https://androidpublisher.googleapis.com/" 78const mtlsBasePath = "https://androidpublisher.mtls.googleapis.com/" 79 80// OAuth2 scopes used by this API. 81const ( 82 // View and manage your Google Play Developer account 83 AndroidpublisherScope = "https://www.googleapis.com/auth/androidpublisher" 84) 85 86// NewService creates a new Service. 87func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error) { 88 scopesOption := option.WithScopes( 89 "https://www.googleapis.com/auth/androidpublisher", 90 ) 91 // NOTE: prepend, so we don't override user-specified scopes. 92 opts = append([]option.ClientOption{scopesOption}, opts...) 93 opts = append(opts, internaloption.WithDefaultEndpoint(basePath)) 94 opts = append(opts, internaloption.WithDefaultMTLSEndpoint(mtlsBasePath)) 95 client, endpoint, err := htransport.NewClient(ctx, opts...) 96 if err != nil { 97 return nil, err 98 } 99 s, err := New(client) 100 if err != nil { 101 return nil, err 102 } 103 if endpoint != "" { 104 s.BasePath = endpoint 105 } 106 return s, nil 107} 108 109// New creates a new Service. It uses the provided http.Client for requests. 110// 111// Deprecated: please use NewService instead. 112// To provide a custom HTTP client, use option.WithHTTPClient. 113// If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead. 114func New(client *http.Client) (*Service, error) { 115 if client == nil { 116 return nil, errors.New("client is nil") 117 } 118 s := &Service{client: client, BasePath: basePath} 119 s.Edits = NewEditsService(s) 120 s.Inappproducts = NewInappproductsService(s) 121 s.Internalappsharingartifacts = NewInternalappsharingartifactsService(s) 122 s.Orders = NewOrdersService(s) 123 s.Purchases = NewPurchasesService(s) 124 s.Reviews = NewReviewsService(s) 125 s.Systemapks = NewSystemapksService(s) 126 return s, nil 127} 128 129type Service struct { 130 client *http.Client 131 BasePath string // API endpoint base URL 132 UserAgent string // optional additional User-Agent fragment 133 134 Edits *EditsService 135 136 Inappproducts *InappproductsService 137 138 Internalappsharingartifacts *InternalappsharingartifactsService 139 140 Orders *OrdersService 141 142 Purchases *PurchasesService 143 144 Reviews *ReviewsService 145 146 Systemapks *SystemapksService 147} 148 149func (s *Service) userAgent() string { 150 if s.UserAgent == "" { 151 return googleapi.UserAgent 152 } 153 return googleapi.UserAgent + " " + s.UserAgent 154} 155 156func NewEditsService(s *Service) *EditsService { 157 rs := &EditsService{s: s} 158 rs.Apks = NewEditsApksService(s) 159 rs.Bundles = NewEditsBundlesService(s) 160 rs.Deobfuscationfiles = NewEditsDeobfuscationfilesService(s) 161 rs.Details = NewEditsDetailsService(s) 162 rs.Expansionfiles = NewEditsExpansionfilesService(s) 163 rs.Images = NewEditsImagesService(s) 164 rs.Listings = NewEditsListingsService(s) 165 rs.Testers = NewEditsTestersService(s) 166 rs.Tracks = NewEditsTracksService(s) 167 return rs 168} 169 170type EditsService struct { 171 s *Service 172 173 Apks *EditsApksService 174 175 Bundles *EditsBundlesService 176 177 Deobfuscationfiles *EditsDeobfuscationfilesService 178 179 Details *EditsDetailsService 180 181 Expansionfiles *EditsExpansionfilesService 182 183 Images *EditsImagesService 184 185 Listings *EditsListingsService 186 187 Testers *EditsTestersService 188 189 Tracks *EditsTracksService 190} 191 192func NewEditsApksService(s *Service) *EditsApksService { 193 rs := &EditsApksService{s: s} 194 return rs 195} 196 197type EditsApksService struct { 198 s *Service 199} 200 201func NewEditsBundlesService(s *Service) *EditsBundlesService { 202 rs := &EditsBundlesService{s: s} 203 return rs 204} 205 206type EditsBundlesService struct { 207 s *Service 208} 209 210func NewEditsDeobfuscationfilesService(s *Service) *EditsDeobfuscationfilesService { 211 rs := &EditsDeobfuscationfilesService{s: s} 212 return rs 213} 214 215type EditsDeobfuscationfilesService struct { 216 s *Service 217} 218 219func NewEditsDetailsService(s *Service) *EditsDetailsService { 220 rs := &EditsDetailsService{s: s} 221 return rs 222} 223 224type EditsDetailsService struct { 225 s *Service 226} 227 228func NewEditsExpansionfilesService(s *Service) *EditsExpansionfilesService { 229 rs := &EditsExpansionfilesService{s: s} 230 return rs 231} 232 233type EditsExpansionfilesService struct { 234 s *Service 235} 236 237func NewEditsImagesService(s *Service) *EditsImagesService { 238 rs := &EditsImagesService{s: s} 239 return rs 240} 241 242type EditsImagesService struct { 243 s *Service 244} 245 246func NewEditsListingsService(s *Service) *EditsListingsService { 247 rs := &EditsListingsService{s: s} 248 return rs 249} 250 251type EditsListingsService struct { 252 s *Service 253} 254 255func NewEditsTestersService(s *Service) *EditsTestersService { 256 rs := &EditsTestersService{s: s} 257 return rs 258} 259 260type EditsTestersService struct { 261 s *Service 262} 263 264func NewEditsTracksService(s *Service) *EditsTracksService { 265 rs := &EditsTracksService{s: s} 266 return rs 267} 268 269type EditsTracksService struct { 270 s *Service 271} 272 273func NewInappproductsService(s *Service) *InappproductsService { 274 rs := &InappproductsService{s: s} 275 return rs 276} 277 278type InappproductsService struct { 279 s *Service 280} 281 282func NewInternalappsharingartifactsService(s *Service) *InternalappsharingartifactsService { 283 rs := &InternalappsharingartifactsService{s: s} 284 return rs 285} 286 287type InternalappsharingartifactsService struct { 288 s *Service 289} 290 291func NewOrdersService(s *Service) *OrdersService { 292 rs := &OrdersService{s: s} 293 return rs 294} 295 296type OrdersService struct { 297 s *Service 298} 299 300func NewPurchasesService(s *Service) *PurchasesService { 301 rs := &PurchasesService{s: s} 302 rs.Products = NewPurchasesProductsService(s) 303 rs.Subscriptions = NewPurchasesSubscriptionsService(s) 304 rs.Voidedpurchases = NewPurchasesVoidedpurchasesService(s) 305 return rs 306} 307 308type PurchasesService struct { 309 s *Service 310 311 Products *PurchasesProductsService 312 313 Subscriptions *PurchasesSubscriptionsService 314 315 Voidedpurchases *PurchasesVoidedpurchasesService 316} 317 318func NewPurchasesProductsService(s *Service) *PurchasesProductsService { 319 rs := &PurchasesProductsService{s: s} 320 return rs 321} 322 323type PurchasesProductsService struct { 324 s *Service 325} 326 327func NewPurchasesSubscriptionsService(s *Service) *PurchasesSubscriptionsService { 328 rs := &PurchasesSubscriptionsService{s: s} 329 return rs 330} 331 332type PurchasesSubscriptionsService struct { 333 s *Service 334} 335 336func NewPurchasesVoidedpurchasesService(s *Service) *PurchasesVoidedpurchasesService { 337 rs := &PurchasesVoidedpurchasesService{s: s} 338 return rs 339} 340 341type PurchasesVoidedpurchasesService struct { 342 s *Service 343} 344 345func NewReviewsService(s *Service) *ReviewsService { 346 rs := &ReviewsService{s: s} 347 return rs 348} 349 350type ReviewsService struct { 351 s *Service 352} 353 354func NewSystemapksService(s *Service) *SystemapksService { 355 rs := &SystemapksService{s: s} 356 rs.Variants = NewSystemapksVariantsService(s) 357 return rs 358} 359 360type SystemapksService struct { 361 s *Service 362 363 Variants *SystemapksVariantsService 364} 365 366func NewSystemapksVariantsService(s *Service) *SystemapksVariantsService { 367 rs := &SystemapksVariantsService{s: s} 368 return rs 369} 370 371type SystemapksVariantsService struct { 372 s *Service 373} 374 375// Apk: Information about an APK. The resource for ApksService. 376type Apk struct { 377 // Binary: Information about the binary payload of this APK. 378 Binary *ApkBinary `json:"binary,omitempty"` 379 380 // VersionCode: The version code of the APK, as specified in the 381 // manifest file. 382 VersionCode int64 `json:"versionCode,omitempty"` 383 384 // ServerResponse contains the HTTP response code and headers from the 385 // server. 386 googleapi.ServerResponse `json:"-"` 387 388 // ForceSendFields is a list of field names (e.g. "Binary") to 389 // unconditionally include in API requests. By default, fields with 390 // empty values are omitted from API requests. However, any non-pointer, 391 // non-interface field appearing in ForceSendFields will be sent to the 392 // server regardless of whether the field is empty or not. This may be 393 // used to include empty fields in Patch requests. 394 ForceSendFields []string `json:"-"` 395 396 // NullFields is a list of field names (e.g. "Binary") to include in API 397 // requests with the JSON null value. By default, fields with empty 398 // values are omitted from API requests. However, any field with an 399 // empty value appearing in NullFields will be sent to the server as 400 // null. It is an error if a field in this list has a non-empty value. 401 // This may be used to include null fields in Patch requests. 402 NullFields []string `json:"-"` 403} 404 405func (s *Apk) MarshalJSON() ([]byte, error) { 406 type NoMethod Apk 407 raw := NoMethod(*s) 408 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 409} 410 411// ApkBinary: Represents the binary payload of an APK. 412type ApkBinary struct { 413 // Sha1: A sha1 hash of the APK payload, encoded as a hex string and 414 // matching the output of the sha1sum command. 415 Sha1 string `json:"sha1,omitempty"` 416 417 // Sha256: A sha256 hash of the APK payload, encoded as a hex string and 418 // matching the output of the sha256sum command. 419 Sha256 string `json:"sha256,omitempty"` 420 421 // ForceSendFields is a list of field names (e.g. "Sha1") to 422 // unconditionally include in API requests. By default, fields with 423 // empty values are omitted from API requests. However, any non-pointer, 424 // non-interface field appearing in ForceSendFields will be sent to the 425 // server regardless of whether the field is empty or not. This may be 426 // used to include empty fields in Patch requests. 427 ForceSendFields []string `json:"-"` 428 429 // NullFields is a list of field names (e.g. "Sha1") to include in API 430 // requests with the JSON null value. By default, fields with empty 431 // values are omitted from API requests. However, any field with an 432 // empty value appearing in NullFields will be sent to the server as 433 // null. It is an error if a field in this list has a non-empty value. 434 // This may be used to include null fields in Patch requests. 435 NullFields []string `json:"-"` 436} 437 438func (s *ApkBinary) MarshalJSON() ([]byte, error) { 439 type NoMethod ApkBinary 440 raw := NoMethod(*s) 441 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 442} 443 444// ApksAddExternallyHostedRequest: Request to create a new externally 445// hosted APK. 446type ApksAddExternallyHostedRequest struct { 447 // ExternallyHostedApk: The definition of the externally-hosted APK and 448 // where it is located. 449 ExternallyHostedApk *ExternallyHostedApk `json:"externallyHostedApk,omitempty"` 450 451 // ForceSendFields is a list of field names (e.g. "ExternallyHostedApk") 452 // to unconditionally include in API requests. By default, fields with 453 // empty values are omitted from API requests. However, any non-pointer, 454 // non-interface field appearing in ForceSendFields will be sent to the 455 // server regardless of whether the field is empty or not. This may be 456 // used to include empty fields in Patch requests. 457 ForceSendFields []string `json:"-"` 458 459 // NullFields is a list of field names (e.g. "ExternallyHostedApk") to 460 // include in API requests with the JSON null value. By default, fields 461 // with empty values are omitted from API requests. However, any field 462 // with an empty value appearing in NullFields will be sent to the 463 // server as null. It is an error if a field in this list has a 464 // non-empty value. This may be used to include null fields in Patch 465 // requests. 466 NullFields []string `json:"-"` 467} 468 469func (s *ApksAddExternallyHostedRequest) MarshalJSON() ([]byte, error) { 470 type NoMethod ApksAddExternallyHostedRequest 471 raw := NoMethod(*s) 472 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 473} 474 475// ApksAddExternallyHostedResponse: Response for creating a new 476// externally hosted APK. 477type ApksAddExternallyHostedResponse struct { 478 // ExternallyHostedApk: The definition of the externally-hosted APK and 479 // where it is located. 480 ExternallyHostedApk *ExternallyHostedApk `json:"externallyHostedApk,omitempty"` 481 482 // ServerResponse contains the HTTP response code and headers from the 483 // server. 484 googleapi.ServerResponse `json:"-"` 485 486 // ForceSendFields is a list of field names (e.g. "ExternallyHostedApk") 487 // to unconditionally include in API requests. By default, fields with 488 // empty values are omitted from API requests. However, any non-pointer, 489 // non-interface field appearing in ForceSendFields will be sent to the 490 // server regardless of whether the field is empty or not. This may be 491 // used to include empty fields in Patch requests. 492 ForceSendFields []string `json:"-"` 493 494 // NullFields is a list of field names (e.g. "ExternallyHostedApk") to 495 // include in API requests with the JSON null value. By default, fields 496 // with empty values are omitted from API requests. However, any field 497 // with an empty value appearing in NullFields will be sent to the 498 // server as null. It is an error if a field in this list has a 499 // non-empty value. This may be used to include null fields in Patch 500 // requests. 501 NullFields []string `json:"-"` 502} 503 504func (s *ApksAddExternallyHostedResponse) MarshalJSON() ([]byte, error) { 505 type NoMethod ApksAddExternallyHostedResponse 506 raw := NoMethod(*s) 507 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 508} 509 510// ApksListResponse: Response listing all APKs. 511type ApksListResponse struct { 512 // Apks: All APKs. 513 Apks []*Apk `json:"apks,omitempty"` 514 515 // Kind: The kind of this response 516 // ("androidpublisher#apksListResponse"). 517 Kind string `json:"kind,omitempty"` 518 519 // ServerResponse contains the HTTP response code and headers from the 520 // server. 521 googleapi.ServerResponse `json:"-"` 522 523 // ForceSendFields is a list of field names (e.g. "Apks") to 524 // unconditionally include in API requests. By default, fields with 525 // empty values are omitted from API requests. However, any non-pointer, 526 // non-interface field appearing in ForceSendFields will be sent to the 527 // server regardless of whether the field is empty or not. This may be 528 // used to include empty fields in Patch requests. 529 ForceSendFields []string `json:"-"` 530 531 // NullFields is a list of field names (e.g. "Apks") to include in API 532 // requests with the JSON null value. By default, fields with empty 533 // values are omitted from API requests. However, any field with an 534 // empty value appearing in NullFields will be sent to the server as 535 // null. It is an error if a field in this list has a non-empty value. 536 // This may be used to include null fields in Patch requests. 537 NullFields []string `json:"-"` 538} 539 540func (s *ApksListResponse) MarshalJSON() ([]byte, error) { 541 type NoMethod ApksListResponse 542 raw := NoMethod(*s) 543 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 544} 545 546// AppDetails: The app details. The resource for DetailsService. 547type AppDetails struct { 548 // ContactEmail: The user-visible support email for this app. 549 ContactEmail string `json:"contactEmail,omitempty"` 550 551 // ContactPhone: The user-visible support telephone number for this app. 552 ContactPhone string `json:"contactPhone,omitempty"` 553 554 // ContactWebsite: The user-visible website for this app. 555 ContactWebsite string `json:"contactWebsite,omitempty"` 556 557 // DefaultLanguage: Default language code, in BCP 47 format (eg 558 // "en-US"). 559 DefaultLanguage string `json:"defaultLanguage,omitempty"` 560 561 // ServerResponse contains the HTTP response code and headers from the 562 // server. 563 googleapi.ServerResponse `json:"-"` 564 565 // ForceSendFields is a list of field names (e.g. "ContactEmail") to 566 // unconditionally include in API requests. By default, fields with 567 // empty values are omitted from API requests. However, any non-pointer, 568 // non-interface field appearing in ForceSendFields will be sent to the 569 // server regardless of whether the field is empty or not. This may be 570 // used to include empty fields in Patch requests. 571 ForceSendFields []string `json:"-"` 572 573 // NullFields is a list of field names (e.g. "ContactEmail") to include 574 // in API requests with the JSON null value. By default, fields with 575 // empty values are omitted from API requests. However, any field with 576 // an empty value appearing in NullFields will be sent to the server as 577 // null. It is an error if a field in this list has a non-empty value. 578 // This may be used to include null fields in Patch requests. 579 NullFields []string `json:"-"` 580} 581 582func (s *AppDetails) MarshalJSON() ([]byte, error) { 583 type NoMethod AppDetails 584 raw := NoMethod(*s) 585 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 586} 587 588// AppEdit: An app edit. The resource for EditsService. 589type AppEdit struct { 590 // ExpiryTimeSeconds: Output only. The time (as seconds since Epoch) at 591 // which the edit will expire and will be no longer valid for use. 592 ExpiryTimeSeconds string `json:"expiryTimeSeconds,omitempty"` 593 594 // Id: Output only. Identifier of the edit. Can be used in subsequent 595 // API calls. 596 Id string `json:"id,omitempty"` 597 598 // ServerResponse contains the HTTP response code and headers from the 599 // server. 600 googleapi.ServerResponse `json:"-"` 601 602 // ForceSendFields is a list of field names (e.g. "ExpiryTimeSeconds") 603 // to unconditionally include in API requests. By default, fields with 604 // empty values are omitted from API requests. However, any non-pointer, 605 // non-interface field appearing in ForceSendFields will be sent to the 606 // server regardless of whether the field is empty or not. This may be 607 // used to include empty fields in Patch requests. 608 ForceSendFields []string `json:"-"` 609 610 // NullFields is a list of field names (e.g. "ExpiryTimeSeconds") to 611 // include in API requests with the JSON null value. By default, fields 612 // with empty values are omitted from API requests. However, any field 613 // with an empty value appearing in NullFields will be sent to the 614 // server as null. It is an error if a field in this list has a 615 // non-empty value. This may be used to include null fields in Patch 616 // requests. 617 NullFields []string `json:"-"` 618} 619 620func (s *AppEdit) MarshalJSON() ([]byte, error) { 621 type NoMethod AppEdit 622 raw := NoMethod(*s) 623 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 624} 625 626// Bundle: Information about a bundle. The resource for BundlesService. 627type Bundle struct { 628 // Sha1: A sha1 hash of the upload payload, encoded as a hex string and 629 // matching the output of the sha1sum command. 630 Sha1 string `json:"sha1,omitempty"` 631 632 // Sha256: A sha256 hash of the upload payload, encoded as a hex string 633 // and matching the output of the sha256sum command. 634 Sha256 string `json:"sha256,omitempty"` 635 636 // VersionCode: The version code of the Android App Bundle, as specified 637 // in the Android App Bundle's base module APK manifest file. 638 VersionCode int64 `json:"versionCode,omitempty"` 639 640 // ServerResponse contains the HTTP response code and headers from the 641 // server. 642 googleapi.ServerResponse `json:"-"` 643 644 // ForceSendFields is a list of field names (e.g. "Sha1") to 645 // unconditionally include in API requests. By default, fields with 646 // empty values are omitted from API requests. However, any non-pointer, 647 // non-interface field appearing in ForceSendFields will be sent to the 648 // server regardless of whether the field is empty or not. This may be 649 // used to include empty fields in Patch requests. 650 ForceSendFields []string `json:"-"` 651 652 // NullFields is a list of field names (e.g. "Sha1") to include in API 653 // requests with the JSON null value. By default, fields with empty 654 // values are omitted from API requests. However, any field with an 655 // empty value appearing in NullFields will be sent to the server as 656 // null. It is an error if a field in this list has a non-empty value. 657 // This may be used to include null fields in Patch requests. 658 NullFields []string `json:"-"` 659} 660 661func (s *Bundle) MarshalJSON() ([]byte, error) { 662 type NoMethod Bundle 663 raw := NoMethod(*s) 664 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 665} 666 667// BundlesListResponse: Response listing all bundles. 668type BundlesListResponse struct { 669 // Bundles: All bundles. 670 Bundles []*Bundle `json:"bundles,omitempty"` 671 672 // Kind: The kind of this response 673 // ("androidpublisher#bundlesListResponse"). 674 Kind string `json:"kind,omitempty"` 675 676 // ServerResponse contains the HTTP response code and headers from the 677 // server. 678 googleapi.ServerResponse `json:"-"` 679 680 // ForceSendFields is a list of field names (e.g. "Bundles") to 681 // unconditionally include in API requests. By default, fields with 682 // empty values are omitted from API requests. However, any non-pointer, 683 // non-interface field appearing in ForceSendFields will be sent to the 684 // server regardless of whether the field is empty or not. This may be 685 // used to include empty fields in Patch requests. 686 ForceSendFields []string `json:"-"` 687 688 // NullFields is a list of field names (e.g. "Bundles") to include in 689 // API requests with the JSON null value. By default, fields with empty 690 // values are omitted from API requests. However, any field with an 691 // empty value appearing in NullFields will be sent to the server as 692 // null. It is an error if a field in this list has a non-empty value. 693 // This may be used to include null fields in Patch requests. 694 NullFields []string `json:"-"` 695} 696 697func (s *BundlesListResponse) MarshalJSON() ([]byte, error) { 698 type NoMethod BundlesListResponse 699 raw := NoMethod(*s) 700 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 701} 702 703// Comment: An entry of conversation between user and developer. 704type Comment struct { 705 // DeveloperComment: A comment from a developer. 706 DeveloperComment *DeveloperComment `json:"developerComment,omitempty"` 707 708 // UserComment: A comment from a user. 709 UserComment *UserComment `json:"userComment,omitempty"` 710 711 // ForceSendFields is a list of field names (e.g. "DeveloperComment") to 712 // unconditionally include in API requests. By default, fields with 713 // empty values are omitted from API requests. However, any non-pointer, 714 // non-interface field appearing in ForceSendFields will be sent to the 715 // server regardless of whether the field is empty or not. This may be 716 // used to include empty fields in Patch requests. 717 ForceSendFields []string `json:"-"` 718 719 // NullFields is a list of field names (e.g. "DeveloperComment") to 720 // include in API requests with the JSON null value. By default, fields 721 // with empty values are omitted from API requests. However, any field 722 // with an empty value appearing in NullFields will be sent to the 723 // server as null. It is an error if a field in this list has a 724 // non-empty value. This may be used to include null fields in Patch 725 // requests. 726 NullFields []string `json:"-"` 727} 728 729func (s *Comment) MarshalJSON() ([]byte, error) { 730 type NoMethod Comment 731 raw := NoMethod(*s) 732 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 733} 734 735// CountryTargeting: Country targeting specification. 736type CountryTargeting struct { 737 // Countries: Countries to target, specified as two letter CLDR codes 738 // (https://unicode.org/cldr/charts/latest/supplemental/territory_containment_un_m_49.html). 739 Countries []string `json:"countries,omitempty"` 740 741 // IncludeRestOfWorld: Include "rest of world" as well as explicitly 742 // targeted countries. 743 IncludeRestOfWorld bool `json:"includeRestOfWorld,omitempty"` 744 745 // ForceSendFields is a list of field names (e.g. "Countries") to 746 // unconditionally include in API requests. By default, fields with 747 // empty values are omitted from API requests. However, any non-pointer, 748 // non-interface field appearing in ForceSendFields will be sent to the 749 // server regardless of whether the field is empty or not. This may be 750 // used to include empty fields in Patch requests. 751 ForceSendFields []string `json:"-"` 752 753 // NullFields is a list of field names (e.g. "Countries") to include in 754 // API requests with the JSON null value. By default, fields with empty 755 // values are omitted from API requests. However, any field with an 756 // empty value appearing in NullFields will be sent to the server as 757 // null. It is an error if a field in this list has a non-empty value. 758 // This may be used to include null fields in Patch requests. 759 NullFields []string `json:"-"` 760} 761 762func (s *CountryTargeting) MarshalJSON() ([]byte, error) { 763 type NoMethod CountryTargeting 764 raw := NoMethod(*s) 765 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 766} 767 768// DeobfuscationFile: Represents a deobfuscation file. 769type DeobfuscationFile struct { 770 // SymbolType: The type of the deobfuscation file. 771 // 772 // Possible values: 773 // "deobfuscationFileTypeUnspecified" - Unspecified deobfuscation file 774 // type. 775 // "proguard" - Proguard deobfuscation file type. 776 // "nativeCode" - Native debugging symbols file type. 777 SymbolType string `json:"symbolType,omitempty"` 778 779 // ForceSendFields is a list of field names (e.g. "SymbolType") to 780 // unconditionally include in API requests. By default, fields with 781 // empty values are omitted from API requests. However, any non-pointer, 782 // non-interface field appearing in ForceSendFields will be sent to the 783 // server regardless of whether the field is empty or not. This may be 784 // used to include empty fields in Patch requests. 785 ForceSendFields []string `json:"-"` 786 787 // NullFields is a list of field names (e.g. "SymbolType") to include in 788 // API requests with the JSON null value. By default, fields with empty 789 // values are omitted from API requests. However, any field with an 790 // empty value appearing in NullFields will be sent to the server as 791 // null. It is an error if a field in this list has a non-empty value. 792 // This may be used to include null fields in Patch requests. 793 NullFields []string `json:"-"` 794} 795 796func (s *DeobfuscationFile) MarshalJSON() ([]byte, error) { 797 type NoMethod DeobfuscationFile 798 raw := NoMethod(*s) 799 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 800} 801 802// DeobfuscationFilesUploadResponse: Responses for the upload. 803type DeobfuscationFilesUploadResponse struct { 804 // DeobfuscationFile: The uploaded Deobfuscation File configuration. 805 DeobfuscationFile *DeobfuscationFile `json:"deobfuscationFile,omitempty"` 806 807 // ServerResponse contains the HTTP response code and headers from the 808 // server. 809 googleapi.ServerResponse `json:"-"` 810 811 // ForceSendFields is a list of field names (e.g. "DeobfuscationFile") 812 // to unconditionally include in API requests. By default, fields with 813 // empty values are omitted from API requests. However, any non-pointer, 814 // non-interface field appearing in ForceSendFields will be sent to the 815 // server regardless of whether the field is empty or not. This may be 816 // used to include empty fields in Patch requests. 817 ForceSendFields []string `json:"-"` 818 819 // NullFields is a list of field names (e.g. "DeobfuscationFile") to 820 // include in API requests with the JSON null value. By default, fields 821 // with empty values are omitted from API requests. However, any field 822 // with an empty value appearing in NullFields will be sent to the 823 // server as null. It is an error if a field in this list has a 824 // non-empty value. This may be used to include null fields in Patch 825 // requests. 826 NullFields []string `json:"-"` 827} 828 829func (s *DeobfuscationFilesUploadResponse) MarshalJSON() ([]byte, error) { 830 type NoMethod DeobfuscationFilesUploadResponse 831 raw := NoMethod(*s) 832 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 833} 834 835// DeveloperComment: Developer entry from conversation between user and 836// developer. 837type DeveloperComment struct { 838 // LastModified: The last time at which this comment was updated. 839 LastModified *Timestamp `json:"lastModified,omitempty"` 840 841 // Text: The content of the comment, i.e. reply body. 842 Text string `json:"text,omitempty"` 843 844 // ForceSendFields is a list of field names (e.g. "LastModified") to 845 // unconditionally include in API requests. By default, fields with 846 // empty values are omitted from API requests. However, any non-pointer, 847 // non-interface field appearing in ForceSendFields will be sent to the 848 // server regardless of whether the field is empty or not. This may be 849 // used to include empty fields in Patch requests. 850 ForceSendFields []string `json:"-"` 851 852 // NullFields is a list of field names (e.g. "LastModified") to include 853 // in API requests with the JSON null value. By default, fields with 854 // empty values are omitted from API requests. However, any field with 855 // an empty value appearing in NullFields will be sent to the server as 856 // null. It is an error if a field in this list has a non-empty value. 857 // This may be used to include null fields in Patch requests. 858 NullFields []string `json:"-"` 859} 860 861func (s *DeveloperComment) MarshalJSON() ([]byte, error) { 862 type NoMethod DeveloperComment 863 raw := NoMethod(*s) 864 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 865} 866 867// DeviceMetadata: Characteristics of the user's device. 868type DeviceMetadata struct { 869 // CpuMake: Device CPU make, e.g. "Qualcomm" 870 CpuMake string `json:"cpuMake,omitempty"` 871 872 // CpuModel: Device CPU model, e.g. "MSM8974" 873 CpuModel string `json:"cpuModel,omitempty"` 874 875 // DeviceClass: Device class (e.g. tablet) 876 DeviceClass string `json:"deviceClass,omitempty"` 877 878 // GlEsVersion: OpenGL version 879 GlEsVersion int64 `json:"glEsVersion,omitempty"` 880 881 // Manufacturer: Device manufacturer (e.g. Motorola) 882 Manufacturer string `json:"manufacturer,omitempty"` 883 884 // NativePlatform: Comma separated list of native platforms (e.g. "arm", 885 // "arm7") 886 NativePlatform string `json:"nativePlatform,omitempty"` 887 888 // ProductName: Device model name (e.g. Droid) 889 ProductName string `json:"productName,omitempty"` 890 891 // RamMb: Device RAM in Megabytes, e.g. "2048" 892 RamMb int64 `json:"ramMb,omitempty"` 893 894 // ScreenDensityDpi: Screen density in DPI 895 ScreenDensityDpi int64 `json:"screenDensityDpi,omitempty"` 896 897 // ScreenHeightPx: Screen height in pixels 898 ScreenHeightPx int64 `json:"screenHeightPx,omitempty"` 899 900 // ScreenWidthPx: Screen width in pixels 901 ScreenWidthPx int64 `json:"screenWidthPx,omitempty"` 902 903 // ForceSendFields is a list of field names (e.g. "CpuMake") to 904 // unconditionally include in API requests. By default, fields with 905 // empty values are omitted from API requests. However, any non-pointer, 906 // non-interface field appearing in ForceSendFields will be sent to the 907 // server regardless of whether the field is empty or not. This may be 908 // used to include empty fields in Patch requests. 909 ForceSendFields []string `json:"-"` 910 911 // NullFields is a list of field names (e.g. "CpuMake") to include in 912 // API requests with the JSON null value. By default, fields with empty 913 // values are omitted from API requests. However, any field with an 914 // empty value appearing in NullFields will be sent to the server as 915 // null. It is an error if a field in this list has a non-empty value. 916 // This may be used to include null fields in Patch requests. 917 NullFields []string `json:"-"` 918} 919 920func (s *DeviceMetadata) MarshalJSON() ([]byte, error) { 921 type NoMethod DeviceMetadata 922 raw := NoMethod(*s) 923 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 924} 925 926// DeviceSpec: The device spec used to generate a system APK. 927type DeviceSpec struct { 928 // ScreenDensity: Screen dpi. 929 ScreenDensity int64 `json:"screenDensity,omitempty"` 930 931 // SupportedAbis: Supported ABI architectures in the order of 932 // preference. The values should be the string as reported by the 933 // platform, e.g. "armeabi-v7a", "x86_64". 934 SupportedAbis []string `json:"supportedAbis,omitempty"` 935 936 // SupportedLocales: All installed locales represented as BCP-47 937 // strings, e.g. "en-US". 938 SupportedLocales []string `json:"supportedLocales,omitempty"` 939 940 // ForceSendFields is a list of field names (e.g. "ScreenDensity") to 941 // unconditionally include in API requests. By default, fields with 942 // empty values are omitted from API requests. However, any non-pointer, 943 // non-interface field appearing in ForceSendFields will be sent to the 944 // server regardless of whether the field is empty or not. This may be 945 // used to include empty fields in Patch requests. 946 ForceSendFields []string `json:"-"` 947 948 // NullFields is a list of field names (e.g. "ScreenDensity") to include 949 // in API requests with the JSON null value. By default, fields with 950 // empty values are omitted from API requests. However, any field with 951 // an empty value appearing in NullFields will be sent to the server as 952 // null. It is an error if a field in this list has a non-empty value. 953 // This may be used to include null fields in Patch requests. 954 NullFields []string `json:"-"` 955} 956 957func (s *DeviceSpec) MarshalJSON() ([]byte, error) { 958 type NoMethod DeviceSpec 959 raw := NoMethod(*s) 960 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 961} 962 963// ExpansionFile: An expansion file. The resource for 964// ExpansionFilesService. 965type ExpansionFile struct { 966 // FileSize: If set, this field indicates that this APK has an expansion 967 // file uploaded to it: this APK does not reference another APK's 968 // expansion file. The field's value is the size of the uploaded 969 // expansion file in bytes. 970 FileSize int64 `json:"fileSize,omitempty,string"` 971 972 // ReferencesVersion: If set, this APK's expansion file references 973 // another APK's expansion file. The file_size field will not be set. 974 ReferencesVersion int64 `json:"referencesVersion,omitempty"` 975 976 // ServerResponse contains the HTTP response code and headers from the 977 // server. 978 googleapi.ServerResponse `json:"-"` 979 980 // ForceSendFields is a list of field names (e.g. "FileSize") to 981 // unconditionally include in API requests. By default, fields with 982 // empty values are omitted from API requests. However, any non-pointer, 983 // non-interface field appearing in ForceSendFields will be sent to the 984 // server regardless of whether the field is empty or not. This may be 985 // used to include empty fields in Patch requests. 986 ForceSendFields []string `json:"-"` 987 988 // NullFields is a list of field names (e.g. "FileSize") to include in 989 // API requests with the JSON null value. By default, fields with empty 990 // values are omitted from API requests. However, any field with an 991 // empty value appearing in NullFields will be sent to the server as 992 // null. It is an error if a field in this list has a non-empty value. 993 // This may be used to include null fields in Patch requests. 994 NullFields []string `json:"-"` 995} 996 997func (s *ExpansionFile) MarshalJSON() ([]byte, error) { 998 type NoMethod ExpansionFile 999 raw := NoMethod(*s) 1000 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1001} 1002 1003// ExpansionFilesUploadResponse: Response for uploading an expansion 1004// file. 1005type ExpansionFilesUploadResponse struct { 1006 // ExpansionFile: The uploaded expansion file configuration. 1007 ExpansionFile *ExpansionFile `json:"expansionFile,omitempty"` 1008 1009 // ServerResponse contains the HTTP response code and headers from the 1010 // server. 1011 googleapi.ServerResponse `json:"-"` 1012 1013 // ForceSendFields is a list of field names (e.g. "ExpansionFile") to 1014 // unconditionally include in API requests. By default, fields with 1015 // empty values are omitted from API requests. However, any non-pointer, 1016 // non-interface field appearing in ForceSendFields will be sent to the 1017 // server regardless of whether the field is empty or not. This may be 1018 // used to include empty fields in Patch requests. 1019 ForceSendFields []string `json:"-"` 1020 1021 // NullFields is a list of field names (e.g. "ExpansionFile") to include 1022 // in API requests with the JSON null value. By default, fields with 1023 // empty values are omitted from API requests. However, any field with 1024 // an empty value appearing in NullFields will be sent to the server as 1025 // null. It is an error if a field in this list has a non-empty value. 1026 // This may be used to include null fields in Patch requests. 1027 NullFields []string `json:"-"` 1028} 1029 1030func (s *ExpansionFilesUploadResponse) MarshalJSON() ([]byte, error) { 1031 type NoMethod ExpansionFilesUploadResponse 1032 raw := NoMethod(*s) 1033 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1034} 1035 1036// ExternallyHostedApk: Defines an APK available for this application 1037// that is hosted externally and not uploaded to Google Play. This 1038// function is only available to organizations using Managed Play whose 1039// application is configured to restrict distribution to the 1040// organizations. 1041type ExternallyHostedApk struct { 1042 // ApplicationLabel: The application label. 1043 ApplicationLabel string `json:"applicationLabel,omitempty"` 1044 1045 // CertificateBase64s: A certificate (or array of certificates if a 1046 // certificate-chain is used) used to sign this APK, represented as a 1047 // base64 encoded byte array. 1048 CertificateBase64s []string `json:"certificateBase64s,omitempty"` 1049 1050 // ExternallyHostedUrl: The URL at which the APK is hosted. This must be 1051 // an https URL. 1052 ExternallyHostedUrl string `json:"externallyHostedUrl,omitempty"` 1053 1054 // FileSha1Base64: The sha1 checksum of this APK, represented as a 1055 // base64 encoded byte array. 1056 FileSha1Base64 string `json:"fileSha1Base64,omitempty"` 1057 1058 // FileSha256Base64: The sha256 checksum of this APK, represented as a 1059 // base64 encoded byte array. 1060 FileSha256Base64 string `json:"fileSha256Base64,omitempty"` 1061 1062 // FileSize: The file size in bytes of this APK. 1063 FileSize int64 `json:"fileSize,omitempty,string"` 1064 1065 // IconBase64: The icon image from the APK, as a base64 encoded byte 1066 // array. 1067 IconBase64 string `json:"iconBase64,omitempty"` 1068 1069 // MaximumSdk: The maximum SDK supported by this APK (optional). 1070 MaximumSdk int64 `json:"maximumSdk,omitempty"` 1071 1072 // MinimumSdk: The minimum SDK targeted by this APK. 1073 MinimumSdk int64 `json:"minimumSdk,omitempty"` 1074 1075 // NativeCodes: The native code environments supported by this APK 1076 // (optional). 1077 NativeCodes []string `json:"nativeCodes,omitempty"` 1078 1079 // PackageName: The package name. 1080 PackageName string `json:"packageName,omitempty"` 1081 1082 // UsesFeatures: The features required by this APK (optional). 1083 UsesFeatures []string `json:"usesFeatures,omitempty"` 1084 1085 // UsesPermissions: The permissions requested by this APK. 1086 UsesPermissions []*UsesPermission `json:"usesPermissions,omitempty"` 1087 1088 // VersionCode: The version code of this APK. 1089 VersionCode int64 `json:"versionCode,omitempty"` 1090 1091 // VersionName: The version name of this APK. 1092 VersionName string `json:"versionName,omitempty"` 1093 1094 // ForceSendFields is a list of field names (e.g. "ApplicationLabel") to 1095 // unconditionally include in API requests. By default, fields with 1096 // empty values are omitted from API requests. However, any non-pointer, 1097 // non-interface field appearing in ForceSendFields will be sent to the 1098 // server regardless of whether the field is empty or not. This may be 1099 // used to include empty fields in Patch requests. 1100 ForceSendFields []string `json:"-"` 1101 1102 // NullFields is a list of field names (e.g. "ApplicationLabel") to 1103 // include in API requests with the JSON null value. By default, fields 1104 // with empty values are omitted from API requests. However, any field 1105 // with an empty value appearing in NullFields will be sent to the 1106 // server as null. It is an error if a field in this list has a 1107 // non-empty value. This may be used to include null fields in Patch 1108 // requests. 1109 NullFields []string `json:"-"` 1110} 1111 1112func (s *ExternallyHostedApk) MarshalJSON() ([]byte, error) { 1113 type NoMethod ExternallyHostedApk 1114 raw := NoMethod(*s) 1115 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1116} 1117 1118// Image: An uploaded image. The resource for ImagesService. 1119type Image struct { 1120 // Id: A unique id representing this image. 1121 Id string `json:"id,omitempty"` 1122 1123 // Sha1: A sha1 hash of the image. 1124 Sha1 string `json:"sha1,omitempty"` 1125 1126 // Sha256: A sha256 hash of the image. 1127 Sha256 string `json:"sha256,omitempty"` 1128 1129 // Url: A URL that will serve a preview of the image. 1130 Url string `json:"url,omitempty"` 1131 1132 // ForceSendFields is a list of field names (e.g. "Id") to 1133 // unconditionally include in API requests. By default, fields with 1134 // empty values are omitted from API requests. However, any non-pointer, 1135 // non-interface field appearing in ForceSendFields will be sent to the 1136 // server regardless of whether the field is empty or not. This may be 1137 // used to include empty fields in Patch requests. 1138 ForceSendFields []string `json:"-"` 1139 1140 // NullFields is a list of field names (e.g. "Id") to include in API 1141 // requests with the JSON null value. By default, fields with empty 1142 // values are omitted from API requests. However, any field with an 1143 // empty value appearing in NullFields will be sent to the server as 1144 // null. It is an error if a field in this list has a non-empty value. 1145 // This may be used to include null fields in Patch requests. 1146 NullFields []string `json:"-"` 1147} 1148 1149func (s *Image) MarshalJSON() ([]byte, error) { 1150 type NoMethod Image 1151 raw := NoMethod(*s) 1152 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1153} 1154 1155// ImagesDeleteAllResponse: Response for deleting all images. 1156type ImagesDeleteAllResponse struct { 1157 // Deleted: The deleted images. 1158 Deleted []*Image `json:"deleted,omitempty"` 1159 1160 // ServerResponse contains the HTTP response code and headers from the 1161 // server. 1162 googleapi.ServerResponse `json:"-"` 1163 1164 // ForceSendFields is a list of field names (e.g. "Deleted") to 1165 // unconditionally include in API requests. By default, fields with 1166 // empty values are omitted from API requests. However, any non-pointer, 1167 // non-interface field appearing in ForceSendFields will be sent to the 1168 // server regardless of whether the field is empty or not. This may be 1169 // used to include empty fields in Patch requests. 1170 ForceSendFields []string `json:"-"` 1171 1172 // NullFields is a list of field names (e.g. "Deleted") to include in 1173 // API requests with the JSON null value. By default, fields with empty 1174 // values are omitted from API requests. However, any field with an 1175 // empty value appearing in NullFields will be sent to the server as 1176 // null. It is an error if a field in this list has a non-empty value. 1177 // This may be used to include null fields in Patch requests. 1178 NullFields []string `json:"-"` 1179} 1180 1181func (s *ImagesDeleteAllResponse) MarshalJSON() ([]byte, error) { 1182 type NoMethod ImagesDeleteAllResponse 1183 raw := NoMethod(*s) 1184 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1185} 1186 1187// ImagesListResponse: Response listing all images. 1188type ImagesListResponse struct { 1189 // Images: All listed Images. 1190 Images []*Image `json:"images,omitempty"` 1191 1192 // ServerResponse contains the HTTP response code and headers from the 1193 // server. 1194 googleapi.ServerResponse `json:"-"` 1195 1196 // ForceSendFields is a list of field names (e.g. "Images") to 1197 // unconditionally include in API requests. By default, fields with 1198 // empty values are omitted from API requests. However, any non-pointer, 1199 // non-interface field appearing in ForceSendFields will be sent to the 1200 // server regardless of whether the field is empty or not. This may be 1201 // used to include empty fields in Patch requests. 1202 ForceSendFields []string `json:"-"` 1203 1204 // NullFields is a list of field names (e.g. "Images") to include in API 1205 // requests with the JSON null value. By default, fields with empty 1206 // values are omitted from API requests. However, any field with an 1207 // empty value appearing in NullFields will be sent to the server as 1208 // null. It is an error if a field in this list has a non-empty value. 1209 // This may be used to include null fields in Patch requests. 1210 NullFields []string `json:"-"` 1211} 1212 1213func (s *ImagesListResponse) MarshalJSON() ([]byte, error) { 1214 type NoMethod ImagesListResponse 1215 raw := NoMethod(*s) 1216 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1217} 1218 1219// ImagesUploadResponse: Response for uploading an image. 1220type ImagesUploadResponse struct { 1221 // Image: The uploaded image. 1222 Image *Image `json:"image,omitempty"` 1223 1224 // ServerResponse contains the HTTP response code and headers from the 1225 // server. 1226 googleapi.ServerResponse `json:"-"` 1227 1228 // ForceSendFields is a list of field names (e.g. "Image") to 1229 // unconditionally include in API requests. By default, fields with 1230 // empty values are omitted from API requests. However, any non-pointer, 1231 // non-interface field appearing in ForceSendFields will be sent to the 1232 // server regardless of whether the field is empty or not. This may be 1233 // used to include empty fields in Patch requests. 1234 ForceSendFields []string `json:"-"` 1235 1236 // NullFields is a list of field names (e.g. "Image") to include in API 1237 // requests with the JSON null value. By default, fields with empty 1238 // values are omitted from API requests. However, any field with an 1239 // empty value appearing in NullFields will be sent to the server as 1240 // null. It is an error if a field in this list has a non-empty value. 1241 // This may be used to include null fields in Patch requests. 1242 NullFields []string `json:"-"` 1243} 1244 1245func (s *ImagesUploadResponse) MarshalJSON() ([]byte, error) { 1246 type NoMethod ImagesUploadResponse 1247 raw := NoMethod(*s) 1248 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1249} 1250 1251// InAppProduct: An in-app product. The resource for 1252// InappproductsService. 1253type InAppProduct struct { 1254 // DefaultLanguage: Default language of the localized data, as defined 1255 // by BCP-47. e.g. "en-US". 1256 DefaultLanguage string `json:"defaultLanguage,omitempty"` 1257 1258 // DefaultPrice: Default price. Cannot be zero, as in-app products are 1259 // never free. Always in the developer's Checkout merchant currency. 1260 DefaultPrice *Price `json:"defaultPrice,omitempty"` 1261 1262 // GracePeriod: Grace period of the subscription, specified in ISO 8601 1263 // format. Allows developers to give their subscribers a grace period 1264 // when the payment for the new recurrence period is declined. 1265 // Acceptable values are P0D (zero days), P3D (three days), P7D (seven 1266 // days), P14D (14 days), and P30D (30 days). 1267 GracePeriod string `json:"gracePeriod,omitempty"` 1268 1269 // Listings: List of localized title and description data. Map key is 1270 // the language of the localized data, as defined by BCP-47, e.g. 1271 // "en-US". 1272 Listings map[string]InAppProductListing `json:"listings,omitempty"` 1273 1274 // PackageName: Package name of the parent app. 1275 PackageName string `json:"packageName,omitempty"` 1276 1277 // Prices: Prices per buyer region. None of these can be zero, as in-app 1278 // products are never free. Map key is region code, as defined by ISO 1279 // 3166-2. 1280 Prices map[string]Price `json:"prices,omitempty"` 1281 1282 // PurchaseType: The type of the product, e.g. a recurring subscription. 1283 // 1284 // Possible values: 1285 // "purchaseTypeUnspecified" - Unspecified purchase type. 1286 // "managedUser" - The default product type - one time purchase. 1287 // "subscription" - In-app product with a recurring period. 1288 PurchaseType string `json:"purchaseType,omitempty"` 1289 1290 // Sku: Stock-keeping-unit (SKU) of the product, unique within an app. 1291 Sku string `json:"sku,omitempty"` 1292 1293 // Status: The status of the product, e.g. whether it's active. 1294 // 1295 // Possible values: 1296 // "statusUnspecified" - Unspecified status. 1297 // "active" - The product is published and active in the store. 1298 // "inactive" - The product is not published and therefore inactive in 1299 // the store. 1300 Status string `json:"status,omitempty"` 1301 1302 // SubscriptionPeriod: Subscription period, specified in ISO 8601 1303 // format. Acceptable values are P1W (one week), P1M (one month), P3M 1304 // (three months), P6M (six months), and P1Y (one year). 1305 SubscriptionPeriod string `json:"subscriptionPeriod,omitempty"` 1306 1307 // TrialPeriod: Trial period, specified in ISO 8601 format. Acceptable 1308 // values are anything between P7D (seven days) and P999D (999 days). 1309 TrialPeriod string `json:"trialPeriod,omitempty"` 1310 1311 // ServerResponse contains the HTTP response code and headers from the 1312 // server. 1313 googleapi.ServerResponse `json:"-"` 1314 1315 // ForceSendFields is a list of field names (e.g. "DefaultLanguage") to 1316 // unconditionally include in API requests. By default, fields with 1317 // empty values are omitted from API requests. However, any non-pointer, 1318 // non-interface field appearing in ForceSendFields will be sent to the 1319 // server regardless of whether the field is empty or not. This may be 1320 // used to include empty fields in Patch requests. 1321 ForceSendFields []string `json:"-"` 1322 1323 // NullFields is a list of field names (e.g. "DefaultLanguage") to 1324 // include in API requests with the JSON null value. By default, fields 1325 // with empty values are omitted from API requests. However, any field 1326 // with an empty value appearing in NullFields will be sent to the 1327 // server as null. It is an error if a field in this list has a 1328 // non-empty value. This may be used to include null fields in Patch 1329 // requests. 1330 NullFields []string `json:"-"` 1331} 1332 1333func (s *InAppProduct) MarshalJSON() ([]byte, error) { 1334 type NoMethod InAppProduct 1335 raw := NoMethod(*s) 1336 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1337} 1338 1339// InAppProductListing: Store listing of a single in-app product. 1340type InAppProductListing struct { 1341 // Benefits: Localized entitlement benefits for a subscription. 1342 Benefits []string `json:"benefits,omitempty"` 1343 1344 // Description: Description for the store listing. 1345 Description string `json:"description,omitempty"` 1346 1347 // Title: Title for the store listing. 1348 Title string `json:"title,omitempty"` 1349 1350 // ForceSendFields is a list of field names (e.g. "Benefits") to 1351 // unconditionally include in API requests. By default, fields with 1352 // empty values are omitted from API requests. However, any non-pointer, 1353 // non-interface field appearing in ForceSendFields will be sent to the 1354 // server regardless of whether the field is empty or not. This may be 1355 // used to include empty fields in Patch requests. 1356 ForceSendFields []string `json:"-"` 1357 1358 // NullFields is a list of field names (e.g. "Benefits") to include in 1359 // API requests with the JSON null value. By default, fields with empty 1360 // values are omitted from API requests. However, any field with an 1361 // empty value appearing in NullFields will be sent to the server as 1362 // null. It is an error if a field in this list has a non-empty value. 1363 // This may be used to include null fields in Patch requests. 1364 NullFields []string `json:"-"` 1365} 1366 1367func (s *InAppProductListing) MarshalJSON() ([]byte, error) { 1368 type NoMethod InAppProductListing 1369 raw := NoMethod(*s) 1370 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1371} 1372 1373// InappproductsListResponse: Response listing all in-app products. 1374type InappproductsListResponse struct { 1375 // Inappproduct: All in-app products. 1376 Inappproduct []*InAppProduct `json:"inappproduct,omitempty"` 1377 1378 // Kind: The kind of this response 1379 // ("androidpublisher#inappproductsListResponse"). 1380 Kind string `json:"kind,omitempty"` 1381 1382 // PageInfo: Information about the current page. 1383 PageInfo *PageInfo `json:"pageInfo,omitempty"` 1384 1385 // TokenPagination: Pagination token, to handle a number of products 1386 // that is over one page. 1387 TokenPagination *TokenPagination `json:"tokenPagination,omitempty"` 1388 1389 // ServerResponse contains the HTTP response code and headers from the 1390 // server. 1391 googleapi.ServerResponse `json:"-"` 1392 1393 // ForceSendFields is a list of field names (e.g. "Inappproduct") to 1394 // unconditionally include in API requests. By default, fields with 1395 // empty values are omitted from API requests. However, any non-pointer, 1396 // non-interface field appearing in ForceSendFields will be sent to the 1397 // server regardless of whether the field is empty or not. This may be 1398 // used to include empty fields in Patch requests. 1399 ForceSendFields []string `json:"-"` 1400 1401 // NullFields is a list of field names (e.g. "Inappproduct") to include 1402 // in API requests with the JSON null value. By default, fields with 1403 // empty values are omitted from API requests. However, any field with 1404 // an empty value appearing in NullFields will be sent to the server as 1405 // null. It is an error if a field in this list has a non-empty value. 1406 // This may be used to include null fields in Patch requests. 1407 NullFields []string `json:"-"` 1408} 1409 1410func (s *InappproductsListResponse) MarshalJSON() ([]byte, error) { 1411 type NoMethod InappproductsListResponse 1412 raw := NoMethod(*s) 1413 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1414} 1415 1416// InternalAppSharingArtifact: An artifact resource which gets created 1417// when uploading an APK or Android App Bundle through internal app 1418// sharing. 1419type InternalAppSharingArtifact struct { 1420 // CertificateFingerprint: The sha256 fingerprint of the certificate 1421 // used to sign the generated artifact. 1422 CertificateFingerprint string `json:"certificateFingerprint,omitempty"` 1423 1424 // DownloadUrl: The download URL generated for the uploaded artifact. 1425 // Users that are authorized to download can follow the link to the Play 1426 // Store app to install it. 1427 DownloadUrl string `json:"downloadUrl,omitempty"` 1428 1429 // Sha256: The sha256 hash of the artifact represented as a lowercase 1430 // hexadecimal number, matching the output of the sha256sum command. 1431 Sha256 string `json:"sha256,omitempty"` 1432 1433 // ServerResponse contains the HTTP response code and headers from the 1434 // server. 1435 googleapi.ServerResponse `json:"-"` 1436 1437 // ForceSendFields is a list of field names (e.g. 1438 // "CertificateFingerprint") to unconditionally include in API requests. 1439 // By default, fields with empty values are omitted from API requests. 1440 // However, any non-pointer, non-interface field appearing in 1441 // ForceSendFields will be sent to the server regardless of whether the 1442 // field is empty or not. This may be used to include empty fields in 1443 // Patch requests. 1444 ForceSendFields []string `json:"-"` 1445 1446 // NullFields is a list of field names (e.g. "CertificateFingerprint") 1447 // to include in API requests with the JSON null value. By default, 1448 // fields with empty values are omitted from API requests. However, any 1449 // field with an empty value appearing in NullFields will be sent to the 1450 // server as null. It is an error if a field in this list has a 1451 // non-empty value. This may be used to include null fields in Patch 1452 // requests. 1453 NullFields []string `json:"-"` 1454} 1455 1456func (s *InternalAppSharingArtifact) MarshalJSON() ([]byte, error) { 1457 type NoMethod InternalAppSharingArtifact 1458 raw := NoMethod(*s) 1459 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1460} 1461 1462// IntroductoryPriceInfo: Contains the introductory price information 1463// for a subscription. 1464type IntroductoryPriceInfo struct { 1465 // IntroductoryPriceAmountMicros: Introductory price of the 1466 // subscription, not including tax. The currency is the same as 1467 // price_currency_code. Price is expressed in micro-units, where 1468 // 1,000,000 micro-units represents one unit of the currency. For 1469 // example, if the subscription price is €1.99, price_amount_micros is 1470 // 1990000. 1471 IntroductoryPriceAmountMicros int64 `json:"introductoryPriceAmountMicros,omitempty,string"` 1472 1473 // IntroductoryPriceCurrencyCode: ISO 4217 currency code for the 1474 // introductory subscription price. For example, if the price is 1475 // specified in British pounds sterling, price_currency_code is "GBP". 1476 IntroductoryPriceCurrencyCode string `json:"introductoryPriceCurrencyCode,omitempty"` 1477 1478 // IntroductoryPriceCycles: The number of billing period to offer 1479 // introductory pricing. 1480 IntroductoryPriceCycles int64 `json:"introductoryPriceCycles,omitempty"` 1481 1482 // IntroductoryPricePeriod: Introductory price period, specified in ISO 1483 // 8601 format. Common values are (but not limited to) "P1W" (one week), 1484 // "P1M" (one month), "P3M" (three months), "P6M" (six months), and 1485 // "P1Y" (one year). 1486 IntroductoryPricePeriod string `json:"introductoryPricePeriod,omitempty"` 1487 1488 // ForceSendFields is a list of field names (e.g. 1489 // "IntroductoryPriceAmountMicros") to unconditionally include in API 1490 // requests. By default, fields with empty values are omitted from API 1491 // requests. However, any non-pointer, non-interface field appearing in 1492 // ForceSendFields will be sent to the server regardless of whether the 1493 // field is empty or not. This may be used to include empty fields in 1494 // Patch requests. 1495 ForceSendFields []string `json:"-"` 1496 1497 // NullFields is a list of field names (e.g. 1498 // "IntroductoryPriceAmountMicros") to include in API requests with the 1499 // JSON null value. By default, fields with empty values are omitted 1500 // from API requests. However, any field with an empty value appearing 1501 // in NullFields will be sent to the server as null. It is an error if a 1502 // field in this list has a non-empty value. This may be used to include 1503 // null fields in Patch requests. 1504 NullFields []string `json:"-"` 1505} 1506 1507func (s *IntroductoryPriceInfo) MarshalJSON() ([]byte, error) { 1508 type NoMethod IntroductoryPriceInfo 1509 raw := NoMethod(*s) 1510 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1511} 1512 1513// Listing: A localized store listing. The resource for ListingsService. 1514type Listing struct { 1515 // FullDescription: Full description of the app. 1516 FullDescription string `json:"fullDescription,omitempty"` 1517 1518 // Language: Language localization code (a BCP-47 language tag; for 1519 // example, "de-AT" for Austrian German). 1520 Language string `json:"language,omitempty"` 1521 1522 // ShortDescription: Short description of the app. 1523 ShortDescription string `json:"shortDescription,omitempty"` 1524 1525 // Title: Localized title of the app. 1526 Title string `json:"title,omitempty"` 1527 1528 // Video: URL of a promotional YouTube video for the app. 1529 Video string `json:"video,omitempty"` 1530 1531 // ServerResponse contains the HTTP response code and headers from the 1532 // server. 1533 googleapi.ServerResponse `json:"-"` 1534 1535 // ForceSendFields is a list of field names (e.g. "FullDescription") to 1536 // unconditionally include in API requests. By default, fields with 1537 // empty values are omitted from API requests. However, any non-pointer, 1538 // non-interface field appearing in ForceSendFields will be sent to the 1539 // server regardless of whether the field is empty or not. This may be 1540 // used to include empty fields in Patch requests. 1541 ForceSendFields []string `json:"-"` 1542 1543 // NullFields is a list of field names (e.g. "FullDescription") to 1544 // include in API requests with the JSON null value. By default, fields 1545 // with empty values are omitted from API requests. However, any field 1546 // with an empty value appearing in NullFields will be sent to the 1547 // server as null. It is an error if a field in this list has a 1548 // non-empty value. This may be used to include null fields in Patch 1549 // requests. 1550 NullFields []string `json:"-"` 1551} 1552 1553func (s *Listing) MarshalJSON() ([]byte, error) { 1554 type NoMethod Listing 1555 raw := NoMethod(*s) 1556 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1557} 1558 1559// ListingsListResponse: Response listing all localized listings. 1560type ListingsListResponse struct { 1561 // Kind: The kind of this response 1562 // ("androidpublisher#listingsListResponse"). 1563 Kind string `json:"kind,omitempty"` 1564 1565 // Listings: All localized listings. 1566 Listings []*Listing `json:"listings,omitempty"` 1567 1568 // ServerResponse contains the HTTP response code and headers from the 1569 // server. 1570 googleapi.ServerResponse `json:"-"` 1571 1572 // ForceSendFields is a list of field names (e.g. "Kind") to 1573 // unconditionally include in API requests. By default, fields with 1574 // empty values are omitted from API requests. However, any non-pointer, 1575 // non-interface field appearing in ForceSendFields will be sent to the 1576 // server regardless of whether the field is empty or not. This may be 1577 // used to include empty fields in Patch requests. 1578 ForceSendFields []string `json:"-"` 1579 1580 // NullFields is a list of field names (e.g. "Kind") to include in API 1581 // requests with the JSON null value. By default, fields with empty 1582 // values are omitted from API requests. However, any field with an 1583 // empty value appearing in NullFields will be sent to the server as 1584 // null. It is an error if a field in this list has a non-empty value. 1585 // This may be used to include null fields in Patch requests. 1586 NullFields []string `json:"-"` 1587} 1588 1589func (s *ListingsListResponse) MarshalJSON() ([]byte, error) { 1590 type NoMethod ListingsListResponse 1591 raw := NoMethod(*s) 1592 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1593} 1594 1595// LocalizedText: Release notes specification, i.e. language and text. 1596type LocalizedText struct { 1597 // Language: Language localization code (a BCP-47 language tag; for 1598 // example, "de-AT" for Austrian German). 1599 Language string `json:"language,omitempty"` 1600 1601 // Text: The text in the given language. 1602 Text string `json:"text,omitempty"` 1603 1604 // ForceSendFields is a list of field names (e.g. "Language") to 1605 // unconditionally include in API requests. By default, fields with 1606 // empty values are omitted from API requests. However, any non-pointer, 1607 // non-interface field appearing in ForceSendFields will be sent to the 1608 // server regardless of whether the field is empty or not. This may be 1609 // used to include empty fields in Patch requests. 1610 ForceSendFields []string `json:"-"` 1611 1612 // NullFields is a list of field names (e.g. "Language") to include in 1613 // API requests with the JSON null value. By default, fields with empty 1614 // values are omitted from API requests. However, any field with an 1615 // empty value appearing in NullFields will be sent to the server as 1616 // null. It is an error if a field in this list has a non-empty value. 1617 // This may be used to include null fields in Patch requests. 1618 NullFields []string `json:"-"` 1619} 1620 1621func (s *LocalizedText) MarshalJSON() ([]byte, error) { 1622 type NoMethod LocalizedText 1623 raw := NoMethod(*s) 1624 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1625} 1626 1627// PageInfo: Information about the current page. List operations that 1628// supports paging return only one "page" of results. This protocol 1629// buffer message describes the page that has been returned. 1630type PageInfo struct { 1631 // ResultPerPage: Maximum number of results returned in one page. ! The 1632 // number of results included in the API response. 1633 ResultPerPage int64 `json:"resultPerPage,omitempty"` 1634 1635 // StartIndex: Index of the first result returned in the current page. 1636 StartIndex int64 `json:"startIndex,omitempty"` 1637 1638 // TotalResults: Total number of results available on the backend ! The 1639 // total number of results in the result set. 1640 TotalResults int64 `json:"totalResults,omitempty"` 1641 1642 // ForceSendFields is a list of field names (e.g. "ResultPerPage") to 1643 // unconditionally include in API requests. By default, fields with 1644 // empty values are omitted from API requests. However, any non-pointer, 1645 // non-interface field appearing in ForceSendFields will be sent to the 1646 // server regardless of whether the field is empty or not. This may be 1647 // used to include empty fields in Patch requests. 1648 ForceSendFields []string `json:"-"` 1649 1650 // NullFields is a list of field names (e.g. "ResultPerPage") to include 1651 // in API requests with the JSON null value. By default, fields with 1652 // empty values are omitted from API requests. However, any field with 1653 // an empty value appearing in NullFields will be sent to the server as 1654 // null. It is an error if a field in this list has a non-empty value. 1655 // This may be used to include null fields in Patch requests. 1656 NullFields []string `json:"-"` 1657} 1658 1659func (s *PageInfo) MarshalJSON() ([]byte, error) { 1660 type NoMethod PageInfo 1661 raw := NoMethod(*s) 1662 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1663} 1664 1665// Price: Definition of a price, i.e. currency and units. 1666type Price struct { 1667 // Currency: 3 letter Currency code, as defined by ISO 4217. See 1668 // java/com/google/common/money/CurrencyCode.java 1669 Currency string `json:"currency,omitempty"` 1670 1671 // PriceMicros: Price in 1/million of the currency base unit, 1672 // represented as a string. 1673 PriceMicros string `json:"priceMicros,omitempty"` 1674 1675 // ForceSendFields is a list of field names (e.g. "Currency") to 1676 // unconditionally include in API requests. By default, fields with 1677 // empty values are omitted from API requests. However, any non-pointer, 1678 // non-interface field appearing in ForceSendFields will be sent to the 1679 // server regardless of whether the field is empty or not. This may be 1680 // used to include empty fields in Patch requests. 1681 ForceSendFields []string `json:"-"` 1682 1683 // NullFields is a list of field names (e.g. "Currency") to include in 1684 // API requests with the JSON null value. By default, fields with empty 1685 // values are omitted from API requests. However, any field with an 1686 // empty value appearing in NullFields will be sent to the server as 1687 // null. It is an error if a field in this list has a non-empty value. 1688 // This may be used to include null fields in Patch requests. 1689 NullFields []string `json:"-"` 1690} 1691 1692func (s *Price) MarshalJSON() ([]byte, error) { 1693 type NoMethod Price 1694 raw := NoMethod(*s) 1695 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1696} 1697 1698// ProductPurchase: A ProductPurchase resource indicates the status of a 1699// user's inapp product purchase. 1700type ProductPurchase struct { 1701 // AcknowledgementState: The acknowledgement state of the inapp product. 1702 // Possible values are: 0. Yet to be acknowledged 1. Acknowledged 1703 AcknowledgementState int64 `json:"acknowledgementState,omitempty"` 1704 1705 // ConsumptionState: The consumption state of the inapp product. 1706 // Possible values are: 0. Yet to be consumed 1. Consumed 1707 ConsumptionState int64 `json:"consumptionState,omitempty"` 1708 1709 // DeveloperPayload: A developer-specified string that contains 1710 // supplemental information about an order. 1711 DeveloperPayload string `json:"developerPayload,omitempty"` 1712 1713 // Kind: This kind represents an inappPurchase object in the 1714 // androidpublisher service. 1715 Kind string `json:"kind,omitempty"` 1716 1717 // ObfuscatedExternalAccountId: An obfuscated version of the id that is 1718 // uniquely associated with the user's account in your app. Only present 1719 // if specified using 1720 // https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedaccountid 1721 // when the purchase was made. 1722 ObfuscatedExternalAccountId string `json:"obfuscatedExternalAccountId,omitempty"` 1723 1724 // ObfuscatedExternalProfileId: An obfuscated version of the id that is 1725 // uniquely associated with the user's profile in your app. Only present 1726 // if specified using 1727 // https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedprofileid 1728 // when the purchase was made. 1729 ObfuscatedExternalProfileId string `json:"obfuscatedExternalProfileId,omitempty"` 1730 1731 // OrderId: The order id associated with the purchase of the inapp 1732 // product. 1733 OrderId string `json:"orderId,omitempty"` 1734 1735 // ProductId: The inapp product SKU. 1736 ProductId string `json:"productId,omitempty"` 1737 1738 // PurchaseState: The purchase state of the order. Possible values are: 1739 // 0. Purchased 1. Canceled 2. Pending 1740 PurchaseState int64 `json:"purchaseState,omitempty"` 1741 1742 // PurchaseTimeMillis: The time the product was purchased, in 1743 // milliseconds since the epoch (Jan 1, 1970). 1744 PurchaseTimeMillis int64 `json:"purchaseTimeMillis,omitempty,string"` 1745 1746 // PurchaseToken: The purchase token generated to identify this 1747 // purchase. 1748 PurchaseToken string `json:"purchaseToken,omitempty"` 1749 1750 // PurchaseType: The type of purchase of the inapp product. This field 1751 // is only set if this purchase was not made using the standard in-app 1752 // billing flow. Possible values are: 0. Test (i.e. purchased from a 1753 // license testing account) 1. Promo (i.e. purchased using a promo code) 1754 // 2. Rewarded (i.e. from watching a video ad instead of paying) 1755 PurchaseType *int64 `json:"purchaseType,omitempty"` 1756 1757 // Quantity: The quantity associated with the purchase of the inapp 1758 // product. 1759 Quantity int64 `json:"quantity,omitempty"` 1760 1761 // RegionCode: ISO 3166-1 alpha-2 billing region code of the user at the 1762 // time the product was granted. 1763 RegionCode string `json:"regionCode,omitempty"` 1764 1765 // ServerResponse contains the HTTP response code and headers from the 1766 // server. 1767 googleapi.ServerResponse `json:"-"` 1768 1769 // ForceSendFields is a list of field names (e.g. 1770 // "AcknowledgementState") to unconditionally include in API requests. 1771 // By default, fields with empty values are omitted from API requests. 1772 // However, any non-pointer, non-interface field appearing in 1773 // ForceSendFields will be sent to the server regardless of whether the 1774 // field is empty or not. This may be used to include empty fields in 1775 // Patch requests. 1776 ForceSendFields []string `json:"-"` 1777 1778 // NullFields is a list of field names (e.g. "AcknowledgementState") to 1779 // include in API requests with the JSON null value. By default, fields 1780 // with empty values are omitted from API requests. However, any field 1781 // with an empty value appearing in NullFields will be sent to the 1782 // server as null. It is an error if a field in this list has a 1783 // non-empty value. This may be used to include null fields in Patch 1784 // requests. 1785 NullFields []string `json:"-"` 1786} 1787 1788func (s *ProductPurchase) MarshalJSON() ([]byte, error) { 1789 type NoMethod ProductPurchase 1790 raw := NoMethod(*s) 1791 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1792} 1793 1794// ProductPurchasesAcknowledgeRequest: Request for the 1795// product.purchases.acknowledge API. 1796type ProductPurchasesAcknowledgeRequest struct { 1797 // DeveloperPayload: Payload to attach to the purchase. 1798 DeveloperPayload string `json:"developerPayload,omitempty"` 1799 1800 // ForceSendFields is a list of field names (e.g. "DeveloperPayload") to 1801 // unconditionally include in API requests. By default, fields with 1802 // empty values are omitted from API requests. However, any non-pointer, 1803 // non-interface field appearing in ForceSendFields will be sent to the 1804 // server regardless of whether the field is empty or not. This may be 1805 // used to include empty fields in Patch requests. 1806 ForceSendFields []string `json:"-"` 1807 1808 // NullFields is a list of field names (e.g. "DeveloperPayload") to 1809 // include in API requests with the JSON null value. By default, fields 1810 // with empty values are omitted from API requests. However, any field 1811 // with an empty value appearing in NullFields will be sent to the 1812 // server as null. It is an error if a field in this list has a 1813 // non-empty value. This may be used to include null fields in Patch 1814 // requests. 1815 NullFields []string `json:"-"` 1816} 1817 1818func (s *ProductPurchasesAcknowledgeRequest) MarshalJSON() ([]byte, error) { 1819 type NoMethod ProductPurchasesAcknowledgeRequest 1820 raw := NoMethod(*s) 1821 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1822} 1823 1824// Review: An Android app review. 1825type Review struct { 1826 // AuthorName: The name of the user who wrote the review. 1827 AuthorName string `json:"authorName,omitempty"` 1828 1829 // Comments: A repeated field containing comments for the review. 1830 Comments []*Comment `json:"comments,omitempty"` 1831 1832 // ReviewId: Unique identifier for this review. 1833 ReviewId string `json:"reviewId,omitempty"` 1834 1835 // ServerResponse contains the HTTP response code and headers from the 1836 // server. 1837 googleapi.ServerResponse `json:"-"` 1838 1839 // ForceSendFields is a list of field names (e.g. "AuthorName") to 1840 // unconditionally include in API requests. By default, fields with 1841 // empty values are omitted from API requests. However, any non-pointer, 1842 // non-interface field appearing in ForceSendFields will be sent to the 1843 // server regardless of whether the field is empty or not. This may be 1844 // used to include empty fields in Patch requests. 1845 ForceSendFields []string `json:"-"` 1846 1847 // NullFields is a list of field names (e.g. "AuthorName") to include in 1848 // API requests with the JSON null value. By default, fields with empty 1849 // values are omitted from API requests. However, any field with an 1850 // empty value appearing in NullFields will be sent to the server as 1851 // null. It is an error if a field in this list has a non-empty value. 1852 // This may be used to include null fields in Patch requests. 1853 NullFields []string `json:"-"` 1854} 1855 1856func (s *Review) MarshalJSON() ([]byte, error) { 1857 type NoMethod Review 1858 raw := NoMethod(*s) 1859 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1860} 1861 1862// ReviewReplyResult: The result of replying/updating a reply to review. 1863type ReviewReplyResult struct { 1864 // LastEdited: The time at which the reply took effect. 1865 LastEdited *Timestamp `json:"lastEdited,omitempty"` 1866 1867 // ReplyText: The reply text that was applied. 1868 ReplyText string `json:"replyText,omitempty"` 1869 1870 // ForceSendFields is a list of field names (e.g. "LastEdited") to 1871 // unconditionally include in API requests. By default, fields with 1872 // empty values are omitted from API requests. However, any non-pointer, 1873 // non-interface field appearing in ForceSendFields will be sent to the 1874 // server regardless of whether the field is empty or not. This may be 1875 // used to include empty fields in Patch requests. 1876 ForceSendFields []string `json:"-"` 1877 1878 // NullFields is a list of field names (e.g. "LastEdited") to include in 1879 // API requests with the JSON null value. By default, fields with empty 1880 // values are omitted from API requests. However, any field with an 1881 // empty value appearing in NullFields will be sent to the server as 1882 // null. It is an error if a field in this list has a non-empty value. 1883 // This may be used to include null fields in Patch requests. 1884 NullFields []string `json:"-"` 1885} 1886 1887func (s *ReviewReplyResult) MarshalJSON() ([]byte, error) { 1888 type NoMethod ReviewReplyResult 1889 raw := NoMethod(*s) 1890 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1891} 1892 1893// ReviewsListResponse: Response listing reviews. 1894type ReviewsListResponse struct { 1895 // PageInfo: Information about the current page. 1896 PageInfo *PageInfo `json:"pageInfo,omitempty"` 1897 1898 // Reviews: List of reviews. 1899 Reviews []*Review `json:"reviews,omitempty"` 1900 1901 // TokenPagination: Pagination token, to handle a number of products 1902 // that is over one page. 1903 TokenPagination *TokenPagination `json:"tokenPagination,omitempty"` 1904 1905 // ServerResponse contains the HTTP response code and headers from the 1906 // server. 1907 googleapi.ServerResponse `json:"-"` 1908 1909 // ForceSendFields is a list of field names (e.g. "PageInfo") to 1910 // unconditionally include in API requests. By default, fields with 1911 // empty values are omitted from API requests. However, any non-pointer, 1912 // non-interface field appearing in ForceSendFields will be sent to the 1913 // server regardless of whether the field is empty or not. This may be 1914 // used to include empty fields in Patch requests. 1915 ForceSendFields []string `json:"-"` 1916 1917 // NullFields is a list of field names (e.g. "PageInfo") to include in 1918 // API requests with the JSON null value. By default, fields with empty 1919 // values are omitted from API requests. However, any field with an 1920 // empty value appearing in NullFields will be sent to the server as 1921 // null. It is an error if a field in this list has a non-empty value. 1922 // This may be used to include null fields in Patch requests. 1923 NullFields []string `json:"-"` 1924} 1925 1926func (s *ReviewsListResponse) MarshalJSON() ([]byte, error) { 1927 type NoMethod ReviewsListResponse 1928 raw := NoMethod(*s) 1929 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1930} 1931 1932// ReviewsReplyRequest: Request to reply to review or update existing 1933// reply. 1934type ReviewsReplyRequest struct { 1935 // ReplyText: The text to set as the reply. Replies of more than 1936 // approximately 350 characters will be rejected. HTML tags will be 1937 // stripped. 1938 ReplyText string `json:"replyText,omitempty"` 1939 1940 // ForceSendFields is a list of field names (e.g. "ReplyText") to 1941 // unconditionally include in API requests. By default, fields with 1942 // empty values are omitted from API requests. However, any non-pointer, 1943 // non-interface field appearing in ForceSendFields will be sent to the 1944 // server regardless of whether the field is empty or not. This may be 1945 // used to include empty fields in Patch requests. 1946 ForceSendFields []string `json:"-"` 1947 1948 // NullFields is a list of field names (e.g. "ReplyText") to include in 1949 // API requests with the JSON null value. By default, fields with empty 1950 // values are omitted from API requests. However, any field with an 1951 // empty value appearing in NullFields will be sent to the server as 1952 // null. It is an error if a field in this list has a non-empty value. 1953 // This may be used to include null fields in Patch requests. 1954 NullFields []string `json:"-"` 1955} 1956 1957func (s *ReviewsReplyRequest) MarshalJSON() ([]byte, error) { 1958 type NoMethod ReviewsReplyRequest 1959 raw := NoMethod(*s) 1960 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1961} 1962 1963// ReviewsReplyResponse: Response on status of replying to a review. 1964type ReviewsReplyResponse struct { 1965 // Result: The result of replying/updating a reply to review. 1966 Result *ReviewReplyResult `json:"result,omitempty"` 1967 1968 // ServerResponse contains the HTTP response code and headers from the 1969 // server. 1970 googleapi.ServerResponse `json:"-"` 1971 1972 // ForceSendFields is a list of field names (e.g. "Result") to 1973 // unconditionally include in API requests. By default, fields with 1974 // empty values are omitted from API requests. However, any non-pointer, 1975 // non-interface field appearing in ForceSendFields will be sent to the 1976 // server regardless of whether the field is empty or not. This may be 1977 // used to include empty fields in Patch requests. 1978 ForceSendFields []string `json:"-"` 1979 1980 // NullFields is a list of field names (e.g. "Result") to include in API 1981 // requests with the JSON null value. By default, fields with empty 1982 // values are omitted from API requests. However, any field with an 1983 // empty value appearing in NullFields will be sent to the server as 1984 // null. It is an error if a field in this list has a non-empty value. 1985 // This may be used to include null fields in Patch requests. 1986 NullFields []string `json:"-"` 1987} 1988 1989func (s *ReviewsReplyResponse) MarshalJSON() ([]byte, error) { 1990 type NoMethod ReviewsReplyResponse 1991 raw := NoMethod(*s) 1992 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1993} 1994 1995// SubscriptionCancelSurveyResult: Information provided by the user when 1996// they complete the subscription cancellation flow (cancellation reason 1997// survey). 1998type SubscriptionCancelSurveyResult struct { 1999 // CancelSurveyReason: The cancellation reason the user chose in the 2000 // survey. Possible values are: 0. Other 1. I don't use this service 2001 // enough 2. Technical issues 3. Cost-related reasons 4. I found a 2002 // better app 2003 CancelSurveyReason int64 `json:"cancelSurveyReason,omitempty"` 2004 2005 // UserInputCancelReason: The customized input cancel reason from the 2006 // user. Only present when cancelReason is 0. 2007 UserInputCancelReason string `json:"userInputCancelReason,omitempty"` 2008 2009 // ForceSendFields is a list of field names (e.g. "CancelSurveyReason") 2010 // to unconditionally include in API requests. By default, fields with 2011 // empty values are omitted from API requests. However, any non-pointer, 2012 // non-interface field appearing in ForceSendFields will be sent to the 2013 // server regardless of whether the field is empty or not. This may be 2014 // used to include empty fields in Patch requests. 2015 ForceSendFields []string `json:"-"` 2016 2017 // NullFields is a list of field names (e.g. "CancelSurveyReason") to 2018 // include in API requests with the JSON null value. By default, fields 2019 // with empty values are omitted from API requests. However, any field 2020 // with an empty value appearing in NullFields will be sent to the 2021 // server as null. It is an error if a field in this list has a 2022 // non-empty value. This may be used to include null fields in Patch 2023 // requests. 2024 NullFields []string `json:"-"` 2025} 2026 2027func (s *SubscriptionCancelSurveyResult) MarshalJSON() ([]byte, error) { 2028 type NoMethod SubscriptionCancelSurveyResult 2029 raw := NoMethod(*s) 2030 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2031} 2032 2033// SubscriptionDeferralInfo: A SubscriptionDeferralInfo contains the 2034// data needed to defer a subscription purchase to a future expiry time. 2035type SubscriptionDeferralInfo struct { 2036 // DesiredExpiryTimeMillis: The desired next expiry time to assign to 2037 // the subscription, in milliseconds since the Epoch. The given time 2038 // must be later/greater than the current expiry time for the 2039 // subscription. 2040 DesiredExpiryTimeMillis int64 `json:"desiredExpiryTimeMillis,omitempty,string"` 2041 2042 // ExpectedExpiryTimeMillis: The expected expiry time for the 2043 // subscription. If the current expiry time for the subscription is not 2044 // the value specified here, the deferral will not occur. 2045 ExpectedExpiryTimeMillis int64 `json:"expectedExpiryTimeMillis,omitempty,string"` 2046 2047 // ForceSendFields is a list of field names (e.g. 2048 // "DesiredExpiryTimeMillis") to unconditionally include in API 2049 // requests. By default, fields with empty values are omitted from API 2050 // requests. However, any non-pointer, non-interface field appearing in 2051 // ForceSendFields will be sent to the server regardless of whether the 2052 // field is empty or not. This may be used to include empty fields in 2053 // Patch requests. 2054 ForceSendFields []string `json:"-"` 2055 2056 // NullFields is a list of field names (e.g. "DesiredExpiryTimeMillis") 2057 // to include in API requests with the JSON null value. By default, 2058 // fields with empty values are omitted from API requests. However, any 2059 // field with an empty value appearing in NullFields will be sent to the 2060 // server as null. It is an error if a field in this list has a 2061 // non-empty value. This may be used to include null fields in Patch 2062 // requests. 2063 NullFields []string `json:"-"` 2064} 2065 2066func (s *SubscriptionDeferralInfo) MarshalJSON() ([]byte, error) { 2067 type NoMethod SubscriptionDeferralInfo 2068 raw := NoMethod(*s) 2069 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2070} 2071 2072// SubscriptionPriceChange: Contains the price change information for a 2073// subscription that can be used to control the user journey for the 2074// price change in the app. This can be in the form of seeking 2075// confirmation from the user or tailoring the experience for a 2076// successful conversion. 2077type SubscriptionPriceChange struct { 2078 // NewPrice: The new price the subscription will renew with if the price 2079 // change is accepted by the user. 2080 NewPrice *Price `json:"newPrice,omitempty"` 2081 2082 // State: The current state of the price change. Possible values are: 0. 2083 // Outstanding: State for a pending price change waiting for the user to 2084 // agree. In this state, you can optionally seek confirmation from the 2085 // user using the In-App API. 1. Accepted: State for an accepted price 2086 // change that the subscription will renew with unless it's canceled. 2087 // The price change takes effect on a future date when the subscription 2088 // renews. Note that the change might not occur when the subscription is 2089 // renewed next. 2090 State int64 `json:"state,omitempty"` 2091 2092 // ForceSendFields is a list of field names (e.g. "NewPrice") to 2093 // unconditionally include in API requests. By default, fields with 2094 // empty values are omitted from API requests. However, any non-pointer, 2095 // non-interface field appearing in ForceSendFields will be sent to the 2096 // server regardless of whether the field is empty or not. This may be 2097 // used to include empty fields in Patch requests. 2098 ForceSendFields []string `json:"-"` 2099 2100 // NullFields is a list of field names (e.g. "NewPrice") to include in 2101 // API requests with the JSON null value. By default, fields with empty 2102 // values are omitted from API requests. However, any field with an 2103 // empty value appearing in NullFields will be sent to the server as 2104 // null. It is an error if a field in this list has a non-empty value. 2105 // This may be used to include null fields in Patch requests. 2106 NullFields []string `json:"-"` 2107} 2108 2109func (s *SubscriptionPriceChange) MarshalJSON() ([]byte, error) { 2110 type NoMethod SubscriptionPriceChange 2111 raw := NoMethod(*s) 2112 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2113} 2114 2115// SubscriptionPurchase: A SubscriptionPurchase resource indicates the 2116// status of a user's subscription purchase. 2117type SubscriptionPurchase struct { 2118 // AcknowledgementState: The acknowledgement state of the subscription 2119 // product. Possible values are: 0. Yet to be acknowledged 1. 2120 // Acknowledged 2121 AcknowledgementState int64 `json:"acknowledgementState,omitempty"` 2122 2123 // AutoRenewing: Whether the subscription will automatically be renewed 2124 // when it reaches its current expiry time. 2125 AutoRenewing bool `json:"autoRenewing,omitempty"` 2126 2127 // AutoResumeTimeMillis: Time at which the subscription will be 2128 // automatically resumed, in milliseconds since the Epoch. Only present 2129 // if the user has requested to pause the subscription. 2130 AutoResumeTimeMillis int64 `json:"autoResumeTimeMillis,omitempty,string"` 2131 2132 // CancelReason: The reason why a subscription was canceled or is not 2133 // auto-renewing. Possible values are: 0. User canceled the subscription 2134 // 1. Subscription was canceled by the system, for example because of a 2135 // billing problem 2. Subscription was replaced with a new subscription 2136 // 3. Subscription was canceled by the developer 2137 CancelReason int64 `json:"cancelReason,omitempty"` 2138 2139 // CancelSurveyResult: Information provided by the user when they 2140 // complete the subscription cancellation flow (cancellation reason 2141 // survey). 2142 CancelSurveyResult *SubscriptionCancelSurveyResult `json:"cancelSurveyResult,omitempty"` 2143 2144 // CountryCode: ISO 3166-1 alpha-2 billing country/region code of the 2145 // user at the time the subscription was granted. 2146 CountryCode string `json:"countryCode,omitempty"` 2147 2148 // DeveloperPayload: A developer-specified string that contains 2149 // supplemental information about an order. 2150 DeveloperPayload string `json:"developerPayload,omitempty"` 2151 2152 // EmailAddress: The email address of the user when the subscription was 2153 // purchased. Only present for purchases made with 'Subscribe with 2154 // Google'. 2155 EmailAddress string `json:"emailAddress,omitempty"` 2156 2157 // ExpiryTimeMillis: Time at which the subscription will expire, in 2158 // milliseconds since the Epoch. 2159 ExpiryTimeMillis int64 `json:"expiryTimeMillis,omitempty,string"` 2160 2161 // ExternalAccountId: User account identifier in the third-party 2162 // service. Only present if account linking happened as part of the 2163 // subscription purchase flow. 2164 ExternalAccountId string `json:"externalAccountId,omitempty"` 2165 2166 // FamilyName: The family name of the user when the subscription was 2167 // purchased. Only present for purchases made with 'Subscribe with 2168 // Google'. 2169 FamilyName string `json:"familyName,omitempty"` 2170 2171 // GivenName: The given name of the user when the subscription was 2172 // purchased. Only present for purchases made with 'Subscribe with 2173 // Google'. 2174 GivenName string `json:"givenName,omitempty"` 2175 2176 // IntroductoryPriceInfo: Introductory price information of the 2177 // subscription. This is only present when the subscription was 2178 // purchased with an introductory price. This field does not indicate 2179 // the subscription is currently in introductory price period. 2180 IntroductoryPriceInfo *IntroductoryPriceInfo `json:"introductoryPriceInfo,omitempty"` 2181 2182 // Kind: This kind represents a subscriptionPurchase object in the 2183 // androidpublisher service. 2184 Kind string `json:"kind,omitempty"` 2185 2186 // LinkedPurchaseToken: The purchase token of the originating purchase 2187 // if this subscription is one of the following: 0. Re-signup of a 2188 // canceled but non-lapsed subscription 1. Upgrade/downgrade from a 2189 // previous subscription For example, suppose a user originally signs up 2190 // and you receive purchase token X, then the user cancels and goes 2191 // through the resignup flow (before their subscription lapses) and you 2192 // receive purchase token Y, and finally the user upgrades their 2193 // subscription and you receive purchase token Z. If you call this API 2194 // with purchase token Z, this field will be set to Y. If you call this 2195 // API with purchase token Y, this field will be set to X. If you call 2196 // this API with purchase token X, this field will not be set. 2197 LinkedPurchaseToken string `json:"linkedPurchaseToken,omitempty"` 2198 2199 // ObfuscatedExternalAccountId: An obfuscated version of the id that is 2200 // uniquely associated with the user's account in your app. Present for 2201 // the following purchases: * If account linking happened as part of the 2202 // subscription purchase flow. * It was specified using 2203 // https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedaccountid 2204 // when the purchase was made. 2205 ObfuscatedExternalAccountId string `json:"obfuscatedExternalAccountId,omitempty"` 2206 2207 // ObfuscatedExternalProfileId: An obfuscated version of the id that is 2208 // uniquely associated with the user's profile in your app. Only present 2209 // if specified using 2210 // https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedprofileid 2211 // when the purchase was made. 2212 ObfuscatedExternalProfileId string `json:"obfuscatedExternalProfileId,omitempty"` 2213 2214 // OrderId: The order id of the latest recurring order associated with 2215 // the purchase of the subscription. 2216 OrderId string `json:"orderId,omitempty"` 2217 2218 // PaymentState: The payment state of the subscription. Possible values 2219 // are: 0. Payment pending 1. Payment received 2. Free trial 3. Pending 2220 // deferred upgrade/downgrade Not present for canceled, expired 2221 // subscriptions. 2222 PaymentState int64 `json:"paymentState,omitempty"` 2223 2224 // PriceAmountMicros: Price of the subscription, not including tax. 2225 // Price is expressed in micro-units, where 1,000,000 micro-units 2226 // represents one unit of the currency. For example, if the subscription 2227 // price is €1.99, price_amount_micros is 1990000. 2228 PriceAmountMicros int64 `json:"priceAmountMicros,omitempty,string"` 2229 2230 // PriceChange: The latest price change information available. This is 2231 // present only when there is an upcoming price change for the 2232 // subscription yet to be applied. Once the subscription renews with the 2233 // new price or the subscription is canceled, no price change 2234 // information will be returned. 2235 PriceChange *SubscriptionPriceChange `json:"priceChange,omitempty"` 2236 2237 // PriceCurrencyCode: ISO 4217 currency code for the subscription price. 2238 // For example, if the price is specified in British pounds sterling, 2239 // price_currency_code is "GBP". 2240 PriceCurrencyCode string `json:"priceCurrencyCode,omitempty"` 2241 2242 // ProfileId: The Google profile id of the user when the subscription 2243 // was purchased. Only present for purchases made with 'Subscribe with 2244 // Google'. 2245 ProfileId string `json:"profileId,omitempty"` 2246 2247 // ProfileName: The profile name of the user when the subscription was 2248 // purchased. Only present for purchases made with 'Subscribe with 2249 // Google'. 2250 ProfileName string `json:"profileName,omitempty"` 2251 2252 // PromotionCode: The promotion code applied on this purchase. This 2253 // field is only set if a vanity code promotion is applied when the 2254 // subscription was purchased. 2255 PromotionCode string `json:"promotionCode,omitempty"` 2256 2257 // PromotionType: The type of promotion applied on this purchase. This 2258 // field is only set if a promotion is applied when the subscription was 2259 // purchased. Possible values are: 0. One time code 1. Vanity code 2260 PromotionType int64 `json:"promotionType,omitempty"` 2261 2262 // PurchaseType: The type of purchase of the subscription. This field is 2263 // only set if this purchase was not made using the standard in-app 2264 // billing flow. Possible values are: 0. Test (i.e. purchased from a 2265 // license testing account) 1. Promo (i.e. purchased using a promo code) 2266 PurchaseType *int64 `json:"purchaseType,omitempty"` 2267 2268 // StartTimeMillis: Time at which the subscription was granted, in 2269 // milliseconds since the Epoch. 2270 StartTimeMillis int64 `json:"startTimeMillis,omitempty,string"` 2271 2272 // UserCancellationTimeMillis: The time at which the subscription was 2273 // canceled by the user, in milliseconds since the epoch. Only present 2274 // if cancelReason is 0. 2275 UserCancellationTimeMillis int64 `json:"userCancellationTimeMillis,omitempty,string"` 2276 2277 // ServerResponse contains the HTTP response code and headers from the 2278 // server. 2279 googleapi.ServerResponse `json:"-"` 2280 2281 // ForceSendFields is a list of field names (e.g. 2282 // "AcknowledgementState") to unconditionally include in API requests. 2283 // By default, fields with empty values are omitted from API requests. 2284 // However, any non-pointer, non-interface field appearing in 2285 // ForceSendFields will be sent to the server regardless of whether the 2286 // field is empty or not. This may be used to include empty fields in 2287 // Patch requests. 2288 ForceSendFields []string `json:"-"` 2289 2290 // NullFields is a list of field names (e.g. "AcknowledgementState") to 2291 // include in API requests with the JSON null value. By default, fields 2292 // with empty values are omitted from API requests. However, any field 2293 // with an empty value appearing in NullFields will be sent to the 2294 // server as null. It is an error if a field in this list has a 2295 // non-empty value. This may be used to include null fields in Patch 2296 // requests. 2297 NullFields []string `json:"-"` 2298} 2299 2300func (s *SubscriptionPurchase) MarshalJSON() ([]byte, error) { 2301 type NoMethod SubscriptionPurchase 2302 raw := NoMethod(*s) 2303 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2304} 2305 2306// SubscriptionPurchasesAcknowledgeRequest: Request for the 2307// purchases.subscriptions.acknowledge API. 2308type SubscriptionPurchasesAcknowledgeRequest struct { 2309 // DeveloperPayload: Payload to attach to the purchase. 2310 DeveloperPayload string `json:"developerPayload,omitempty"` 2311 2312 // ForceSendFields is a list of field names (e.g. "DeveloperPayload") to 2313 // unconditionally include in API requests. By default, fields with 2314 // empty values are omitted from API requests. However, any non-pointer, 2315 // non-interface field appearing in ForceSendFields will be sent to the 2316 // server regardless of whether the field is empty or not. This may be 2317 // used to include empty fields in Patch requests. 2318 ForceSendFields []string `json:"-"` 2319 2320 // NullFields is a list of field names (e.g. "DeveloperPayload") to 2321 // include in API requests with the JSON null value. By default, fields 2322 // with empty values are omitted from API requests. However, any field 2323 // with an empty value appearing in NullFields will be sent to the 2324 // server as null. It is an error if a field in this list has a 2325 // non-empty value. This may be used to include null fields in Patch 2326 // requests. 2327 NullFields []string `json:"-"` 2328} 2329 2330func (s *SubscriptionPurchasesAcknowledgeRequest) MarshalJSON() ([]byte, error) { 2331 type NoMethod SubscriptionPurchasesAcknowledgeRequest 2332 raw := NoMethod(*s) 2333 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2334} 2335 2336// SubscriptionPurchasesDeferRequest: Request for the 2337// purchases.subscriptions.defer API. 2338type SubscriptionPurchasesDeferRequest struct { 2339 // DeferralInfo: The information about the new desired expiry time for 2340 // the subscription. 2341 DeferralInfo *SubscriptionDeferralInfo `json:"deferralInfo,omitempty"` 2342 2343 // ForceSendFields is a list of field names (e.g. "DeferralInfo") to 2344 // unconditionally include in API requests. By default, fields with 2345 // empty values are omitted from API requests. However, any non-pointer, 2346 // non-interface field appearing in ForceSendFields will be sent to the 2347 // server regardless of whether the field is empty or not. This may be 2348 // used to include empty fields in Patch requests. 2349 ForceSendFields []string `json:"-"` 2350 2351 // NullFields is a list of field names (e.g. "DeferralInfo") to include 2352 // in API requests with the JSON null value. By default, fields with 2353 // empty values are omitted from API requests. However, any field with 2354 // an empty value appearing in NullFields will be sent to the server as 2355 // null. It is an error if a field in this list has a non-empty value. 2356 // This may be used to include null fields in Patch requests. 2357 NullFields []string `json:"-"` 2358} 2359 2360func (s *SubscriptionPurchasesDeferRequest) MarshalJSON() ([]byte, error) { 2361 type NoMethod SubscriptionPurchasesDeferRequest 2362 raw := NoMethod(*s) 2363 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2364} 2365 2366// SubscriptionPurchasesDeferResponse: Response for the 2367// purchases.subscriptions.defer API. 2368type SubscriptionPurchasesDeferResponse struct { 2369 // NewExpiryTimeMillis: The new expiry time for the subscription in 2370 // milliseconds since the Epoch. 2371 NewExpiryTimeMillis int64 `json:"newExpiryTimeMillis,omitempty,string"` 2372 2373 // ServerResponse contains the HTTP response code and headers from the 2374 // server. 2375 googleapi.ServerResponse `json:"-"` 2376 2377 // ForceSendFields is a list of field names (e.g. "NewExpiryTimeMillis") 2378 // to unconditionally include in API requests. By default, fields with 2379 // empty values are omitted from API requests. However, any non-pointer, 2380 // non-interface field appearing in ForceSendFields will be sent to the 2381 // server regardless of whether the field is empty or not. This may be 2382 // used to include empty fields in Patch requests. 2383 ForceSendFields []string `json:"-"` 2384 2385 // NullFields is a list of field names (e.g. "NewExpiryTimeMillis") to 2386 // include in API requests with the JSON null value. By default, fields 2387 // with empty values are omitted from API requests. However, any field 2388 // with an empty value appearing in NullFields will be sent to the 2389 // server as null. It is an error if a field in this list has a 2390 // non-empty value. This may be used to include null fields in Patch 2391 // requests. 2392 NullFields []string `json:"-"` 2393} 2394 2395func (s *SubscriptionPurchasesDeferResponse) MarshalJSON() ([]byte, error) { 2396 type NoMethod SubscriptionPurchasesDeferResponse 2397 raw := NoMethod(*s) 2398 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2399} 2400 2401// SystemApksListResponse: Response to list previously created system 2402// APK variants. 2403type SystemApksListResponse struct { 2404 // Variants: All system APK variants created. 2405 Variants []*Variant `json:"variants,omitempty"` 2406 2407 // ServerResponse contains the HTTP response code and headers from the 2408 // server. 2409 googleapi.ServerResponse `json:"-"` 2410 2411 // ForceSendFields is a list of field names (e.g. "Variants") to 2412 // unconditionally include in API requests. By default, fields with 2413 // empty values are omitted from API requests. However, any non-pointer, 2414 // non-interface field appearing in ForceSendFields will be sent to the 2415 // server regardless of whether the field is empty or not. This may be 2416 // used to include empty fields in Patch requests. 2417 ForceSendFields []string `json:"-"` 2418 2419 // NullFields is a list of field names (e.g. "Variants") to include in 2420 // API requests with the JSON null value. By default, fields with empty 2421 // values are omitted from API requests. However, any field with an 2422 // empty value appearing in NullFields will be sent to the server as 2423 // null. It is an error if a field in this list has a non-empty value. 2424 // This may be used to include null fields in Patch requests. 2425 NullFields []string `json:"-"` 2426} 2427 2428func (s *SystemApksListResponse) MarshalJSON() ([]byte, error) { 2429 type NoMethod SystemApksListResponse 2430 raw := NoMethod(*s) 2431 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2432} 2433 2434// Testers: The testers of an app. The resource for TestersService. 2435type Testers struct { 2436 // GoogleGroups: All testing Google Groups, as email addresses. 2437 GoogleGroups []string `json:"googleGroups,omitempty"` 2438 2439 // ServerResponse contains the HTTP response code and headers from the 2440 // server. 2441 googleapi.ServerResponse `json:"-"` 2442 2443 // ForceSendFields is a list of field names (e.g. "GoogleGroups") to 2444 // unconditionally include in API requests. By default, fields with 2445 // empty values are omitted from API requests. However, any non-pointer, 2446 // non-interface field appearing in ForceSendFields will be sent to the 2447 // server regardless of whether the field is empty or not. This may be 2448 // used to include empty fields in Patch requests. 2449 ForceSendFields []string `json:"-"` 2450 2451 // NullFields is a list of field names (e.g. "GoogleGroups") to include 2452 // in API requests with the JSON null value. By default, fields with 2453 // empty values are omitted from API requests. However, any field with 2454 // an empty value appearing in NullFields will be sent to the server as 2455 // null. It is an error if a field in this list has a non-empty value. 2456 // This may be used to include null fields in Patch requests. 2457 NullFields []string `json:"-"` 2458} 2459 2460func (s *Testers) MarshalJSON() ([]byte, error) { 2461 type NoMethod Testers 2462 raw := NoMethod(*s) 2463 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2464} 2465 2466// Timestamp: A Timestamp represents a point in time independent of any 2467// time zone or local calendar, encoded as a count of seconds and 2468// fractions of seconds at nanosecond resolution. The count is relative 2469// to an epoch at UTC midnight on January 1, 1970. 2470type Timestamp struct { 2471 // Nanos: Non-negative fractions of a second at nanosecond resolution. 2472 // Must be from 0 to 999,999,999 inclusive. 2473 Nanos int64 `json:"nanos,omitempty"` 2474 2475 // Seconds: Represents seconds of UTC time since Unix epoch. 2476 Seconds int64 `json:"seconds,omitempty,string"` 2477 2478 // ForceSendFields is a list of field names (e.g. "Nanos") to 2479 // unconditionally include in API requests. By default, fields with 2480 // empty values are omitted from API requests. However, any non-pointer, 2481 // non-interface field appearing in ForceSendFields will be sent to the 2482 // server regardless of whether the field is empty or not. This may be 2483 // used to include empty fields in Patch requests. 2484 ForceSendFields []string `json:"-"` 2485 2486 // NullFields is a list of field names (e.g. "Nanos") to include in API 2487 // requests with the JSON null value. By default, fields with empty 2488 // values are omitted from API requests. However, any field with an 2489 // empty value appearing in NullFields will be sent to the server as 2490 // null. It is an error if a field in this list has a non-empty value. 2491 // This may be used to include null fields in Patch requests. 2492 NullFields []string `json:"-"` 2493} 2494 2495func (s *Timestamp) MarshalJSON() ([]byte, error) { 2496 type NoMethod Timestamp 2497 raw := NoMethod(*s) 2498 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2499} 2500 2501// TokenPagination: Pagination information returned by a List operation 2502// when token pagination is enabled. List operations that supports 2503// paging return only one "page" of results. This protocol buffer 2504// message describes the page that has been returned. When using token 2505// pagination, clients should use the next/previous token to get another 2506// page of the result. The presence or absence of next/previous token 2507// indicates whether a next/previous page is available and provides a 2508// mean of accessing this page. ListRequest.page_token should be set to 2509// either next_page_token or previous_page_token to access another page. 2510type TokenPagination struct { 2511 // NextPageToken: Tokens to pass to the standard list field 2512 // 'page_token'. Whenever available, tokens are preferred over 2513 // manipulating start_index. 2514 NextPageToken string `json:"nextPageToken,omitempty"` 2515 2516 PreviousPageToken string `json:"previousPageToken,omitempty"` 2517 2518 // ForceSendFields is a list of field names (e.g. "NextPageToken") to 2519 // unconditionally include in API requests. By default, fields with 2520 // empty values are omitted from API requests. However, any non-pointer, 2521 // non-interface field appearing in ForceSendFields will be sent to the 2522 // server regardless of whether the field is empty or not. This may be 2523 // used to include empty fields in Patch requests. 2524 ForceSendFields []string `json:"-"` 2525 2526 // NullFields is a list of field names (e.g. "NextPageToken") to include 2527 // in API requests with the JSON null value. By default, fields with 2528 // empty values are omitted from API requests. However, any field with 2529 // an empty value appearing in NullFields will be sent to the server as 2530 // null. It is an error if a field in this list has a non-empty value. 2531 // This may be used to include null fields in Patch requests. 2532 NullFields []string `json:"-"` 2533} 2534 2535func (s *TokenPagination) MarshalJSON() ([]byte, error) { 2536 type NoMethod TokenPagination 2537 raw := NoMethod(*s) 2538 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2539} 2540 2541// Track: A track configuration. The resource for TracksService. 2542type Track struct { 2543 // Releases: In a read request, represents all active releases in the 2544 // track. In an update request, represents desired changes. 2545 Releases []*TrackRelease `json:"releases,omitempty"` 2546 2547 // Track: Identifier of the track. 2548 Track string `json:"track,omitempty"` 2549 2550 // ServerResponse contains the HTTP response code and headers from the 2551 // server. 2552 googleapi.ServerResponse `json:"-"` 2553 2554 // ForceSendFields is a list of field names (e.g. "Releases") to 2555 // unconditionally include in API requests. By default, fields with 2556 // empty values are omitted from API requests. However, any non-pointer, 2557 // non-interface field appearing in ForceSendFields will be sent to the 2558 // server regardless of whether the field is empty or not. This may be 2559 // used to include empty fields in Patch requests. 2560 ForceSendFields []string `json:"-"` 2561 2562 // NullFields is a list of field names (e.g. "Releases") to include in 2563 // API requests with the JSON null value. By default, fields with empty 2564 // values are omitted from API requests. However, any field with an 2565 // empty value appearing in NullFields will be sent to the server as 2566 // null. It is an error if a field in this list has a non-empty value. 2567 // This may be used to include null fields in Patch requests. 2568 NullFields []string `json:"-"` 2569} 2570 2571func (s *Track) MarshalJSON() ([]byte, error) { 2572 type NoMethod Track 2573 raw := NoMethod(*s) 2574 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2575} 2576 2577// TrackRelease: A release within a track. 2578type TrackRelease struct { 2579 // CountryTargeting: Restricts a release to a specific set of countries. 2580 CountryTargeting *CountryTargeting `json:"countryTargeting,omitempty"` 2581 2582 // InAppUpdatePriority: In-app update priority of the release. All newly 2583 // added APKs in the release will be considered at this priority. Can 2584 // take values in the range [0, 5], with 5 the highest priority. 2585 // Defaults to 0. in_app_update_priority can not be updated once the 2586 // release is rolled out. See 2587 // https://developer.android.com/guide/playcore/in-app-updates. 2588 InAppUpdatePriority int64 `json:"inAppUpdatePriority,omitempty"` 2589 2590 // Name: The release name. Not required to be unique. If not set, the 2591 // name is generated from the APK's version_name. If the release 2592 // contains multiple APKs, the name is generated from the date. 2593 Name string `json:"name,omitempty"` 2594 2595 // ReleaseNotes: A description of what is new in this release. 2596 ReleaseNotes []*LocalizedText `json:"releaseNotes,omitempty"` 2597 2598 // Status: The status of the release. 2599 // 2600 // Possible values: 2601 // "statusUnspecified" - Unspecified status. 2602 // "draft" - The release's APKs are not being served to users. 2603 // "inProgress" - The release's APKs are being served to a fraction of 2604 // users, determined by 'user_fraction'. 2605 // "halted" - The release's APKs will no longer be served to users. 2606 // Users who already have these APKs are unaffected. 2607 // "completed" - The release will have no further changes. Its APKs 2608 // are being served to all users, unless they are eligible to APKs of a 2609 // more recent release. 2610 Status string `json:"status,omitempty"` 2611 2612 // UserFraction: Fraction of users who are eligible for a staged 2613 // release. 0 < fraction < 1. Can only be set when status is 2614 // "inProgress" or "halted". 2615 UserFraction float64 `json:"userFraction,omitempty"` 2616 2617 // VersionCodes: Version codes of all APKs in the release. Must include 2618 // version codes to retain from previous releases. 2619 VersionCodes googleapi.Int64s `json:"versionCodes,omitempty"` 2620 2621 // ForceSendFields is a list of field names (e.g. "CountryTargeting") to 2622 // unconditionally include in API requests. By default, fields with 2623 // empty values are omitted from API requests. However, any non-pointer, 2624 // non-interface field appearing in ForceSendFields will be sent to the 2625 // server regardless of whether the field is empty or not. This may be 2626 // used to include empty fields in Patch requests. 2627 ForceSendFields []string `json:"-"` 2628 2629 // NullFields is a list of field names (e.g. "CountryTargeting") to 2630 // include in API requests with the JSON null value. By default, fields 2631 // with empty values are omitted from API requests. However, any field 2632 // with an empty value appearing in NullFields will be sent to the 2633 // server as null. It is an error if a field in this list has a 2634 // non-empty value. This may be used to include null fields in Patch 2635 // requests. 2636 NullFields []string `json:"-"` 2637} 2638 2639func (s *TrackRelease) MarshalJSON() ([]byte, error) { 2640 type NoMethod TrackRelease 2641 raw := NoMethod(*s) 2642 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2643} 2644 2645func (s *TrackRelease) UnmarshalJSON(data []byte) error { 2646 type NoMethod TrackRelease 2647 var s1 struct { 2648 UserFraction gensupport.JSONFloat64 `json:"userFraction"` 2649 *NoMethod 2650 } 2651 s1.NoMethod = (*NoMethod)(s) 2652 if err := json.Unmarshal(data, &s1); err != nil { 2653 return err 2654 } 2655 s.UserFraction = float64(s1.UserFraction) 2656 return nil 2657} 2658 2659// TracksListResponse: Response listing all tracks. 2660type TracksListResponse struct { 2661 // Kind: The kind of this response 2662 // ("androidpublisher#tracksListResponse"). 2663 Kind string `json:"kind,omitempty"` 2664 2665 // Tracks: All tracks. 2666 Tracks []*Track `json:"tracks,omitempty"` 2667 2668 // ServerResponse contains the HTTP response code and headers from the 2669 // server. 2670 googleapi.ServerResponse `json:"-"` 2671 2672 // ForceSendFields is a list of field names (e.g. "Kind") to 2673 // unconditionally include in API requests. By default, fields with 2674 // empty values are omitted from API requests. However, any non-pointer, 2675 // non-interface field appearing in ForceSendFields will be sent to the 2676 // server regardless of whether the field is empty or not. This may be 2677 // used to include empty fields in Patch requests. 2678 ForceSendFields []string `json:"-"` 2679 2680 // NullFields is a list of field names (e.g. "Kind") to include in API 2681 // requests with the JSON null value. By default, fields with empty 2682 // values are omitted from API requests. However, any field with an 2683 // empty value appearing in NullFields will be sent to the server as 2684 // null. It is an error if a field in this list has a non-empty value. 2685 // This may be used to include null fields in Patch requests. 2686 NullFields []string `json:"-"` 2687} 2688 2689func (s *TracksListResponse) MarshalJSON() ([]byte, error) { 2690 type NoMethod TracksListResponse 2691 raw := NoMethod(*s) 2692 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2693} 2694 2695// UserComment: User entry from conversation between user and developer. 2696type UserComment struct { 2697 // AndroidOsVersion: Integer Android SDK version of the user's device at 2698 // the time the review was written, e.g. 23 is Marshmallow. May be 2699 // absent. 2700 AndroidOsVersion int64 `json:"androidOsVersion,omitempty"` 2701 2702 // AppVersionCode: Integer version code of the app as installed at the 2703 // time the review was written. May be absent. 2704 AppVersionCode int64 `json:"appVersionCode,omitempty"` 2705 2706 // AppVersionName: String version name of the app as installed at the 2707 // time the review was written. May be absent. 2708 AppVersionName string `json:"appVersionName,omitempty"` 2709 2710 // Device: Codename for the reviewer's device, e.g. klte, flounder. May 2711 // be absent. 2712 Device string `json:"device,omitempty"` 2713 2714 // DeviceMetadata: Information about the characteristics of the user's 2715 // device. 2716 DeviceMetadata *DeviceMetadata `json:"deviceMetadata,omitempty"` 2717 2718 // LastModified: The last time at which this comment was updated. 2719 LastModified *Timestamp `json:"lastModified,omitempty"` 2720 2721 // OriginalText: Untranslated text of the review, where the review was 2722 // translated. If the review was not translated this is left blank. 2723 OriginalText string `json:"originalText,omitempty"` 2724 2725 // ReviewerLanguage: Language code for the reviewer. This is taken from 2726 // the device settings so is not guaranteed to match the language the 2727 // review is written in. May be absent. 2728 ReviewerLanguage string `json:"reviewerLanguage,omitempty"` 2729 2730 // StarRating: The star rating associated with the review, from 1 to 5. 2731 StarRating int64 `json:"starRating,omitempty"` 2732 2733 // Text: The content of the comment, i.e. review body. In some cases 2734 // users have been able to write a review with separate title and body; 2735 // in those cases the title and body are concatenated and separated by a 2736 // tab character. 2737 Text string `json:"text,omitempty"` 2738 2739 // ThumbsDownCount: Number of users who have given this review a thumbs 2740 // down. 2741 ThumbsDownCount int64 `json:"thumbsDownCount,omitempty"` 2742 2743 // ThumbsUpCount: Number of users who have given this review a thumbs 2744 // up. 2745 ThumbsUpCount int64 `json:"thumbsUpCount,omitempty"` 2746 2747 // ForceSendFields is a list of field names (e.g. "AndroidOsVersion") to 2748 // unconditionally include in API requests. By default, fields with 2749 // empty values are omitted from API requests. However, any non-pointer, 2750 // non-interface field appearing in ForceSendFields will be sent to the 2751 // server regardless of whether the field is empty or not. This may be 2752 // used to include empty fields in Patch requests. 2753 ForceSendFields []string `json:"-"` 2754 2755 // NullFields is a list of field names (e.g. "AndroidOsVersion") to 2756 // include in API requests with the JSON null value. By default, fields 2757 // with empty values are omitted from API requests. However, any field 2758 // with an empty value appearing in NullFields will be sent to the 2759 // server as null. It is an error if a field in this list has a 2760 // non-empty value. This may be used to include null fields in Patch 2761 // requests. 2762 NullFields []string `json:"-"` 2763} 2764 2765func (s *UserComment) MarshalJSON() ([]byte, error) { 2766 type NoMethod UserComment 2767 raw := NoMethod(*s) 2768 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2769} 2770 2771// UsesPermission: A permission used by this APK. 2772type UsesPermission struct { 2773 // MaxSdkVersion: Optionally, the maximum SDK version for which the 2774 // permission is required. 2775 MaxSdkVersion int64 `json:"maxSdkVersion,omitempty"` 2776 2777 // Name: The name of the permission requested. 2778 Name string `json:"name,omitempty"` 2779 2780 // ForceSendFields is a list of field names (e.g. "MaxSdkVersion") to 2781 // unconditionally include in API requests. By default, fields with 2782 // empty values are omitted from API requests. However, any non-pointer, 2783 // non-interface field appearing in ForceSendFields will be sent to the 2784 // server regardless of whether the field is empty or not. This may be 2785 // used to include empty fields in Patch requests. 2786 ForceSendFields []string `json:"-"` 2787 2788 // NullFields is a list of field names (e.g. "MaxSdkVersion") to include 2789 // in API requests with the JSON null value. By default, fields with 2790 // empty values are omitted from API requests. However, any field with 2791 // an empty value appearing in NullFields will be sent to the server as 2792 // null. It is an error if a field in this list has a non-empty value. 2793 // This may be used to include null fields in Patch requests. 2794 NullFields []string `json:"-"` 2795} 2796 2797func (s *UsesPermission) MarshalJSON() ([]byte, error) { 2798 type NoMethod UsesPermission 2799 raw := NoMethod(*s) 2800 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2801} 2802 2803// Variant: APK that is suitable for inclusion in a system image. The 2804// resource of SystemApksService. 2805type Variant struct { 2806 // DeviceSpec: The device spec used to generate the APK. 2807 DeviceSpec *DeviceSpec `json:"deviceSpec,omitempty"` 2808 2809 // VariantId: Output only. The ID of a previously created system APK 2810 // variant. 2811 VariantId int64 `json:"variantId,omitempty"` 2812 2813 // ServerResponse contains the HTTP response code and headers from the 2814 // server. 2815 googleapi.ServerResponse `json:"-"` 2816 2817 // ForceSendFields is a list of field names (e.g. "DeviceSpec") to 2818 // unconditionally include in API requests. By default, fields with 2819 // empty values are omitted from API requests. However, any non-pointer, 2820 // non-interface field appearing in ForceSendFields will be sent to the 2821 // server regardless of whether the field is empty or not. This may be 2822 // used to include empty fields in Patch requests. 2823 ForceSendFields []string `json:"-"` 2824 2825 // NullFields is a list of field names (e.g. "DeviceSpec") to include in 2826 // API requests with the JSON null value. By default, fields with empty 2827 // values are omitted from API requests. However, any field with an 2828 // empty value appearing in NullFields will be sent to the server as 2829 // null. It is an error if a field in this list has a non-empty value. 2830 // This may be used to include null fields in Patch requests. 2831 NullFields []string `json:"-"` 2832} 2833 2834func (s *Variant) MarshalJSON() ([]byte, error) { 2835 type NoMethod Variant 2836 raw := NoMethod(*s) 2837 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2838} 2839 2840// VoidedPurchase: A VoidedPurchase resource indicates a purchase that 2841// was either canceled/refunded/charged-back. 2842type VoidedPurchase struct { 2843 // Kind: This kind represents a voided purchase object in the 2844 // androidpublisher service. 2845 Kind string `json:"kind,omitempty"` 2846 2847 // OrderId: The order id which uniquely identifies a one-time purchase, 2848 // subscription purchase, or subscription renewal. 2849 OrderId string `json:"orderId,omitempty"` 2850 2851 // PurchaseTimeMillis: The time at which the purchase was made, in 2852 // milliseconds since the epoch (Jan 1, 1970). 2853 PurchaseTimeMillis int64 `json:"purchaseTimeMillis,omitempty,string"` 2854 2855 // PurchaseToken: The token which uniquely identifies a one-time 2856 // purchase or subscription. To uniquely identify subscription renewals 2857 // use order_id (available starting from version 3 of the API). 2858 PurchaseToken string `json:"purchaseToken,omitempty"` 2859 2860 // VoidedReason: The reason why the purchase was voided, possible values 2861 // are: 0. Other 1. Remorse 2. Not_received 3. Defective 4. 2862 // Accidental_purchase 5. Fraud 6. Friendly_fraud 7. Chargeback 2863 VoidedReason int64 `json:"voidedReason,omitempty"` 2864 2865 // VoidedSource: The initiator of voided purchase, possible values are: 2866 // 0. User 1. Developer 2. Google 2867 VoidedSource int64 `json:"voidedSource,omitempty"` 2868 2869 // VoidedTimeMillis: The time at which the purchase was 2870 // canceled/refunded/charged-back, in milliseconds since the epoch (Jan 2871 // 1, 1970). 2872 VoidedTimeMillis int64 `json:"voidedTimeMillis,omitempty,string"` 2873 2874 // ForceSendFields is a list of field names (e.g. "Kind") to 2875 // unconditionally include in API requests. By default, fields with 2876 // empty values are omitted from API requests. However, any non-pointer, 2877 // non-interface field appearing in ForceSendFields will be sent to the 2878 // server regardless of whether the field is empty or not. This may be 2879 // used to include empty fields in Patch requests. 2880 ForceSendFields []string `json:"-"` 2881 2882 // NullFields is a list of field names (e.g. "Kind") to include in API 2883 // requests with the JSON null value. By default, fields with empty 2884 // values are omitted from API requests. However, any field with an 2885 // empty value appearing in NullFields will be sent to the server as 2886 // null. It is an error if a field in this list has a non-empty value. 2887 // This may be used to include null fields in Patch requests. 2888 NullFields []string `json:"-"` 2889} 2890 2891func (s *VoidedPurchase) MarshalJSON() ([]byte, error) { 2892 type NoMethod VoidedPurchase 2893 raw := NoMethod(*s) 2894 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2895} 2896 2897// VoidedPurchasesListResponse: Response for the voidedpurchases.list 2898// API. 2899type VoidedPurchasesListResponse struct { 2900 // PageInfo: General pagination information. 2901 PageInfo *PageInfo `json:"pageInfo,omitempty"` 2902 2903 // TokenPagination: Pagination information for token pagination. 2904 TokenPagination *TokenPagination `json:"tokenPagination,omitempty"` 2905 2906 VoidedPurchases []*VoidedPurchase `json:"voidedPurchases,omitempty"` 2907 2908 // ServerResponse contains the HTTP response code and headers from the 2909 // server. 2910 googleapi.ServerResponse `json:"-"` 2911 2912 // ForceSendFields is a list of field names (e.g. "PageInfo") to 2913 // unconditionally include in API requests. By default, fields with 2914 // empty values are omitted from API requests. However, any non-pointer, 2915 // non-interface field appearing in ForceSendFields will be sent to the 2916 // server regardless of whether the field is empty or not. This may be 2917 // used to include empty fields in Patch requests. 2918 ForceSendFields []string `json:"-"` 2919 2920 // NullFields is a list of field names (e.g. "PageInfo") to include in 2921 // API requests with the JSON null value. By default, fields with empty 2922 // values are omitted from API requests. However, any field with an 2923 // empty value appearing in NullFields will be sent to the server as 2924 // null. It is an error if a field in this list has a non-empty value. 2925 // This may be used to include null fields in Patch requests. 2926 NullFields []string `json:"-"` 2927} 2928 2929func (s *VoidedPurchasesListResponse) MarshalJSON() ([]byte, error) { 2930 type NoMethod VoidedPurchasesListResponse 2931 raw := NoMethod(*s) 2932 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2933} 2934 2935// method id "androidpublisher.edits.commit": 2936 2937type EditsCommitCall struct { 2938 s *Service 2939 packageName string 2940 editId string 2941 urlParams_ gensupport.URLParams 2942 ctx_ context.Context 2943 header_ http.Header 2944} 2945 2946// Commit: Commits an app edit. 2947// 2948// - editId: Identifier of the edit. 2949// - packageName: Package name of the app. 2950func (r *EditsService) Commit(packageName string, editId string) *EditsCommitCall { 2951 c := &EditsCommitCall{s: r.s, urlParams_: make(gensupport.URLParams)} 2952 c.packageName = packageName 2953 c.editId = editId 2954 return c 2955} 2956 2957// Fields allows partial responses to be retrieved. See 2958// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 2959// for more information. 2960func (c *EditsCommitCall) Fields(s ...googleapi.Field) *EditsCommitCall { 2961 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 2962 return c 2963} 2964 2965// Context sets the context to be used in this call's Do method. Any 2966// pending HTTP request will be aborted if the provided context is 2967// canceled. 2968func (c *EditsCommitCall) Context(ctx context.Context) *EditsCommitCall { 2969 c.ctx_ = ctx 2970 return c 2971} 2972 2973// Header returns an http.Header that can be modified by the caller to 2974// add HTTP headers to the request. 2975func (c *EditsCommitCall) Header() http.Header { 2976 if c.header_ == nil { 2977 c.header_ = make(http.Header) 2978 } 2979 return c.header_ 2980} 2981 2982func (c *EditsCommitCall) doRequest(alt string) (*http.Response, error) { 2983 reqHeaders := make(http.Header) 2984 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 2985 for k, v := range c.header_ { 2986 reqHeaders[k] = v 2987 } 2988 reqHeaders.Set("User-Agent", c.s.userAgent()) 2989 var body io.Reader = nil 2990 c.urlParams_.Set("alt", alt) 2991 c.urlParams_.Set("prettyPrint", "false") 2992 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/edits/{editId}:commit") 2993 urls += "?" + c.urlParams_.Encode() 2994 req, err := http.NewRequest("POST", urls, body) 2995 if err != nil { 2996 return nil, err 2997 } 2998 req.Header = reqHeaders 2999 googleapi.Expand(req.URL, map[string]string{ 3000 "packageName": c.packageName, 3001 "editId": c.editId, 3002 }) 3003 return gensupport.SendRequest(c.ctx_, c.s.client, req) 3004} 3005 3006// Do executes the "androidpublisher.edits.commit" call. 3007// Exactly one of *AppEdit or error will be non-nil. Any non-2xx status 3008// code is an error. Response headers are in either 3009// *AppEdit.ServerResponse.Header or (if a response was returned at all) 3010// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 3011// check whether the returned error was because http.StatusNotModified 3012// was returned. 3013func (c *EditsCommitCall) Do(opts ...googleapi.CallOption) (*AppEdit, error) { 3014 gensupport.SetOptions(c.urlParams_, opts...) 3015 res, err := c.doRequest("json") 3016 if res != nil && res.StatusCode == http.StatusNotModified { 3017 if res.Body != nil { 3018 res.Body.Close() 3019 } 3020 return nil, &googleapi.Error{ 3021 Code: res.StatusCode, 3022 Header: res.Header, 3023 } 3024 } 3025 if err != nil { 3026 return nil, err 3027 } 3028 defer googleapi.CloseBody(res) 3029 if err := googleapi.CheckResponse(res); err != nil { 3030 return nil, err 3031 } 3032 ret := &AppEdit{ 3033 ServerResponse: googleapi.ServerResponse{ 3034 Header: res.Header, 3035 HTTPStatusCode: res.StatusCode, 3036 }, 3037 } 3038 target := &ret 3039 if err := gensupport.DecodeResponse(target, res); err != nil { 3040 return nil, err 3041 } 3042 return ret, nil 3043 // { 3044 // "description": "Commits an app edit.", 3045 // "flatPath": "androidpublisher/v3/applications/{packageName}/edits/{editId}:commit", 3046 // "httpMethod": "POST", 3047 // "id": "androidpublisher.edits.commit", 3048 // "parameterOrder": [ 3049 // "packageName", 3050 // "editId" 3051 // ], 3052 // "parameters": { 3053 // "editId": { 3054 // "description": "Identifier of the edit.", 3055 // "location": "path", 3056 // "required": true, 3057 // "type": "string" 3058 // }, 3059 // "packageName": { 3060 // "description": "Package name of the app.", 3061 // "location": "path", 3062 // "required": true, 3063 // "type": "string" 3064 // } 3065 // }, 3066 // "path": "androidpublisher/v3/applications/{packageName}/edits/{editId}:commit", 3067 // "response": { 3068 // "$ref": "AppEdit" 3069 // }, 3070 // "scopes": [ 3071 // "https://www.googleapis.com/auth/androidpublisher" 3072 // ] 3073 // } 3074 3075} 3076 3077// method id "androidpublisher.edits.delete": 3078 3079type EditsDeleteCall struct { 3080 s *Service 3081 packageName string 3082 editId string 3083 urlParams_ gensupport.URLParams 3084 ctx_ context.Context 3085 header_ http.Header 3086} 3087 3088// Delete: Deletes an app edit. 3089// 3090// - editId: Identifier of the edit. 3091// - packageName: Package name of the app. 3092func (r *EditsService) Delete(packageName string, editId string) *EditsDeleteCall { 3093 c := &EditsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} 3094 c.packageName = packageName 3095 c.editId = editId 3096 return c 3097} 3098 3099// Fields allows partial responses to be retrieved. See 3100// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 3101// for more information. 3102func (c *EditsDeleteCall) Fields(s ...googleapi.Field) *EditsDeleteCall { 3103 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 3104 return c 3105} 3106 3107// Context sets the context to be used in this call's Do method. Any 3108// pending HTTP request will be aborted if the provided context is 3109// canceled. 3110func (c *EditsDeleteCall) Context(ctx context.Context) *EditsDeleteCall { 3111 c.ctx_ = ctx 3112 return c 3113} 3114 3115// Header returns an http.Header that can be modified by the caller to 3116// add HTTP headers to the request. 3117func (c *EditsDeleteCall) Header() http.Header { 3118 if c.header_ == nil { 3119 c.header_ = make(http.Header) 3120 } 3121 return c.header_ 3122} 3123 3124func (c *EditsDeleteCall) doRequest(alt string) (*http.Response, error) { 3125 reqHeaders := make(http.Header) 3126 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 3127 for k, v := range c.header_ { 3128 reqHeaders[k] = v 3129 } 3130 reqHeaders.Set("User-Agent", c.s.userAgent()) 3131 var body io.Reader = nil 3132 c.urlParams_.Set("alt", alt) 3133 c.urlParams_.Set("prettyPrint", "false") 3134 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/edits/{editId}") 3135 urls += "?" + c.urlParams_.Encode() 3136 req, err := http.NewRequest("DELETE", urls, body) 3137 if err != nil { 3138 return nil, err 3139 } 3140 req.Header = reqHeaders 3141 googleapi.Expand(req.URL, map[string]string{ 3142 "packageName": c.packageName, 3143 "editId": c.editId, 3144 }) 3145 return gensupport.SendRequest(c.ctx_, c.s.client, req) 3146} 3147 3148// Do executes the "androidpublisher.edits.delete" call. 3149func (c *EditsDeleteCall) Do(opts ...googleapi.CallOption) error { 3150 gensupport.SetOptions(c.urlParams_, opts...) 3151 res, err := c.doRequest("json") 3152 if err != nil { 3153 return err 3154 } 3155 defer googleapi.CloseBody(res) 3156 if err := googleapi.CheckResponse(res); err != nil { 3157 return err 3158 } 3159 return nil 3160 // { 3161 // "description": "Deletes an app edit.", 3162 // "flatPath": "androidpublisher/v3/applications/{packageName}/edits/{editId}", 3163 // "httpMethod": "DELETE", 3164 // "id": "androidpublisher.edits.delete", 3165 // "parameterOrder": [ 3166 // "packageName", 3167 // "editId" 3168 // ], 3169 // "parameters": { 3170 // "editId": { 3171 // "description": "Identifier of the edit.", 3172 // "location": "path", 3173 // "required": true, 3174 // "type": "string" 3175 // }, 3176 // "packageName": { 3177 // "description": "Package name of the app.", 3178 // "location": "path", 3179 // "required": true, 3180 // "type": "string" 3181 // } 3182 // }, 3183 // "path": "androidpublisher/v3/applications/{packageName}/edits/{editId}", 3184 // "scopes": [ 3185 // "https://www.googleapis.com/auth/androidpublisher" 3186 // ] 3187 // } 3188 3189} 3190 3191// method id "androidpublisher.edits.get": 3192 3193type EditsGetCall struct { 3194 s *Service 3195 packageName string 3196 editId string 3197 urlParams_ gensupport.URLParams 3198 ifNoneMatch_ string 3199 ctx_ context.Context 3200 header_ http.Header 3201} 3202 3203// Get: Gets an app edit. 3204// 3205// - editId: Identifier of the edit. 3206// - packageName: Package name of the app. 3207func (r *EditsService) Get(packageName string, editId string) *EditsGetCall { 3208 c := &EditsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} 3209 c.packageName = packageName 3210 c.editId = editId 3211 return c 3212} 3213 3214// Fields allows partial responses to be retrieved. See 3215// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 3216// for more information. 3217func (c *EditsGetCall) Fields(s ...googleapi.Field) *EditsGetCall { 3218 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 3219 return c 3220} 3221 3222// IfNoneMatch sets the optional parameter which makes the operation 3223// fail if the object's ETag matches the given value. This is useful for 3224// getting updates only after the object has changed since the last 3225// request. Use googleapi.IsNotModified to check whether the response 3226// error from Do is the result of In-None-Match. 3227func (c *EditsGetCall) IfNoneMatch(entityTag string) *EditsGetCall { 3228 c.ifNoneMatch_ = entityTag 3229 return c 3230} 3231 3232// Context sets the context to be used in this call's Do method. Any 3233// pending HTTP request will be aborted if the provided context is 3234// canceled. 3235func (c *EditsGetCall) Context(ctx context.Context) *EditsGetCall { 3236 c.ctx_ = ctx 3237 return c 3238} 3239 3240// Header returns an http.Header that can be modified by the caller to 3241// add HTTP headers to the request. 3242func (c *EditsGetCall) Header() http.Header { 3243 if c.header_ == nil { 3244 c.header_ = make(http.Header) 3245 } 3246 return c.header_ 3247} 3248 3249func (c *EditsGetCall) doRequest(alt string) (*http.Response, error) { 3250 reqHeaders := make(http.Header) 3251 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 3252 for k, v := range c.header_ { 3253 reqHeaders[k] = v 3254 } 3255 reqHeaders.Set("User-Agent", c.s.userAgent()) 3256 if c.ifNoneMatch_ != "" { 3257 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 3258 } 3259 var body io.Reader = nil 3260 c.urlParams_.Set("alt", alt) 3261 c.urlParams_.Set("prettyPrint", "false") 3262 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/edits/{editId}") 3263 urls += "?" + c.urlParams_.Encode() 3264 req, err := http.NewRequest("GET", urls, body) 3265 if err != nil { 3266 return nil, err 3267 } 3268 req.Header = reqHeaders 3269 googleapi.Expand(req.URL, map[string]string{ 3270 "packageName": c.packageName, 3271 "editId": c.editId, 3272 }) 3273 return gensupport.SendRequest(c.ctx_, c.s.client, req) 3274} 3275 3276// Do executes the "androidpublisher.edits.get" call. 3277// Exactly one of *AppEdit or error will be non-nil. Any non-2xx status 3278// code is an error. Response headers are in either 3279// *AppEdit.ServerResponse.Header or (if a response was returned at all) 3280// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 3281// check whether the returned error was because http.StatusNotModified 3282// was returned. 3283func (c *EditsGetCall) Do(opts ...googleapi.CallOption) (*AppEdit, error) { 3284 gensupport.SetOptions(c.urlParams_, opts...) 3285 res, err := c.doRequest("json") 3286 if res != nil && res.StatusCode == http.StatusNotModified { 3287 if res.Body != nil { 3288 res.Body.Close() 3289 } 3290 return nil, &googleapi.Error{ 3291 Code: res.StatusCode, 3292 Header: res.Header, 3293 } 3294 } 3295 if err != nil { 3296 return nil, err 3297 } 3298 defer googleapi.CloseBody(res) 3299 if err := googleapi.CheckResponse(res); err != nil { 3300 return nil, err 3301 } 3302 ret := &AppEdit{ 3303 ServerResponse: googleapi.ServerResponse{ 3304 Header: res.Header, 3305 HTTPStatusCode: res.StatusCode, 3306 }, 3307 } 3308 target := &ret 3309 if err := gensupport.DecodeResponse(target, res); err != nil { 3310 return nil, err 3311 } 3312 return ret, nil 3313 // { 3314 // "description": "Gets an app edit.", 3315 // "flatPath": "androidpublisher/v3/applications/{packageName}/edits/{editId}", 3316 // "httpMethod": "GET", 3317 // "id": "androidpublisher.edits.get", 3318 // "parameterOrder": [ 3319 // "packageName", 3320 // "editId" 3321 // ], 3322 // "parameters": { 3323 // "editId": { 3324 // "description": "Identifier of the edit.", 3325 // "location": "path", 3326 // "required": true, 3327 // "type": "string" 3328 // }, 3329 // "packageName": { 3330 // "description": "Package name of the app.", 3331 // "location": "path", 3332 // "required": true, 3333 // "type": "string" 3334 // } 3335 // }, 3336 // "path": "androidpublisher/v3/applications/{packageName}/edits/{editId}", 3337 // "response": { 3338 // "$ref": "AppEdit" 3339 // }, 3340 // "scopes": [ 3341 // "https://www.googleapis.com/auth/androidpublisher" 3342 // ] 3343 // } 3344 3345} 3346 3347// method id "androidpublisher.edits.insert": 3348 3349type EditsInsertCall struct { 3350 s *Service 3351 packageName string 3352 appedit *AppEdit 3353 urlParams_ gensupport.URLParams 3354 ctx_ context.Context 3355 header_ http.Header 3356} 3357 3358// Insert: Creates a new edit for an app. 3359// 3360// - packageName: Package name of the app. 3361func (r *EditsService) Insert(packageName string, appedit *AppEdit) *EditsInsertCall { 3362 c := &EditsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)} 3363 c.packageName = packageName 3364 c.appedit = appedit 3365 return c 3366} 3367 3368// Fields allows partial responses to be retrieved. See 3369// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 3370// for more information. 3371func (c *EditsInsertCall) Fields(s ...googleapi.Field) *EditsInsertCall { 3372 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 3373 return c 3374} 3375 3376// Context sets the context to be used in this call's Do method. Any 3377// pending HTTP request will be aborted if the provided context is 3378// canceled. 3379func (c *EditsInsertCall) Context(ctx context.Context) *EditsInsertCall { 3380 c.ctx_ = ctx 3381 return c 3382} 3383 3384// Header returns an http.Header that can be modified by the caller to 3385// add HTTP headers to the request. 3386func (c *EditsInsertCall) Header() http.Header { 3387 if c.header_ == nil { 3388 c.header_ = make(http.Header) 3389 } 3390 return c.header_ 3391} 3392 3393func (c *EditsInsertCall) doRequest(alt string) (*http.Response, error) { 3394 reqHeaders := make(http.Header) 3395 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 3396 for k, v := range c.header_ { 3397 reqHeaders[k] = v 3398 } 3399 reqHeaders.Set("User-Agent", c.s.userAgent()) 3400 var body io.Reader = nil 3401 body, err := googleapi.WithoutDataWrapper.JSONReader(c.appedit) 3402 if err != nil { 3403 return nil, err 3404 } 3405 reqHeaders.Set("Content-Type", "application/json") 3406 c.urlParams_.Set("alt", alt) 3407 c.urlParams_.Set("prettyPrint", "false") 3408 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/edits") 3409 urls += "?" + c.urlParams_.Encode() 3410 req, err := http.NewRequest("POST", urls, body) 3411 if err != nil { 3412 return nil, err 3413 } 3414 req.Header = reqHeaders 3415 googleapi.Expand(req.URL, map[string]string{ 3416 "packageName": c.packageName, 3417 }) 3418 return gensupport.SendRequest(c.ctx_, c.s.client, req) 3419} 3420 3421// Do executes the "androidpublisher.edits.insert" call. 3422// Exactly one of *AppEdit or error will be non-nil. Any non-2xx status 3423// code is an error. Response headers are in either 3424// *AppEdit.ServerResponse.Header or (if a response was returned at all) 3425// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 3426// check whether the returned error was because http.StatusNotModified 3427// was returned. 3428func (c *EditsInsertCall) Do(opts ...googleapi.CallOption) (*AppEdit, error) { 3429 gensupport.SetOptions(c.urlParams_, opts...) 3430 res, err := c.doRequest("json") 3431 if res != nil && res.StatusCode == http.StatusNotModified { 3432 if res.Body != nil { 3433 res.Body.Close() 3434 } 3435 return nil, &googleapi.Error{ 3436 Code: res.StatusCode, 3437 Header: res.Header, 3438 } 3439 } 3440 if err != nil { 3441 return nil, err 3442 } 3443 defer googleapi.CloseBody(res) 3444 if err := googleapi.CheckResponse(res); err != nil { 3445 return nil, err 3446 } 3447 ret := &AppEdit{ 3448 ServerResponse: googleapi.ServerResponse{ 3449 Header: res.Header, 3450 HTTPStatusCode: res.StatusCode, 3451 }, 3452 } 3453 target := &ret 3454 if err := gensupport.DecodeResponse(target, res); err != nil { 3455 return nil, err 3456 } 3457 return ret, nil 3458 // { 3459 // "description": "Creates a new edit for an app.", 3460 // "flatPath": "androidpublisher/v3/applications/{packageName}/edits", 3461 // "httpMethod": "POST", 3462 // "id": "androidpublisher.edits.insert", 3463 // "parameterOrder": [ 3464 // "packageName" 3465 // ], 3466 // "parameters": { 3467 // "packageName": { 3468 // "description": "Package name of the app.", 3469 // "location": "path", 3470 // "required": true, 3471 // "type": "string" 3472 // } 3473 // }, 3474 // "path": "androidpublisher/v3/applications/{packageName}/edits", 3475 // "request": { 3476 // "$ref": "AppEdit" 3477 // }, 3478 // "response": { 3479 // "$ref": "AppEdit" 3480 // }, 3481 // "scopes": [ 3482 // "https://www.googleapis.com/auth/androidpublisher" 3483 // ] 3484 // } 3485 3486} 3487 3488// method id "androidpublisher.edits.validate": 3489 3490type EditsValidateCall struct { 3491 s *Service 3492 packageName string 3493 editId string 3494 urlParams_ gensupport.URLParams 3495 ctx_ context.Context 3496 header_ http.Header 3497} 3498 3499// Validate: Validates an app edit. 3500// 3501// - editId: Identifier of the edit. 3502// - packageName: Package name of the app. 3503func (r *EditsService) Validate(packageName string, editId string) *EditsValidateCall { 3504 c := &EditsValidateCall{s: r.s, urlParams_: make(gensupport.URLParams)} 3505 c.packageName = packageName 3506 c.editId = editId 3507 return c 3508} 3509 3510// Fields allows partial responses to be retrieved. See 3511// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 3512// for more information. 3513func (c *EditsValidateCall) Fields(s ...googleapi.Field) *EditsValidateCall { 3514 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 3515 return c 3516} 3517 3518// Context sets the context to be used in this call's Do method. Any 3519// pending HTTP request will be aborted if the provided context is 3520// canceled. 3521func (c *EditsValidateCall) Context(ctx context.Context) *EditsValidateCall { 3522 c.ctx_ = ctx 3523 return c 3524} 3525 3526// Header returns an http.Header that can be modified by the caller to 3527// add HTTP headers to the request. 3528func (c *EditsValidateCall) Header() http.Header { 3529 if c.header_ == nil { 3530 c.header_ = make(http.Header) 3531 } 3532 return c.header_ 3533} 3534 3535func (c *EditsValidateCall) doRequest(alt string) (*http.Response, error) { 3536 reqHeaders := make(http.Header) 3537 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 3538 for k, v := range c.header_ { 3539 reqHeaders[k] = v 3540 } 3541 reqHeaders.Set("User-Agent", c.s.userAgent()) 3542 var body io.Reader = nil 3543 c.urlParams_.Set("alt", alt) 3544 c.urlParams_.Set("prettyPrint", "false") 3545 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/edits/{editId}:validate") 3546 urls += "?" + c.urlParams_.Encode() 3547 req, err := http.NewRequest("POST", urls, body) 3548 if err != nil { 3549 return nil, err 3550 } 3551 req.Header = reqHeaders 3552 googleapi.Expand(req.URL, map[string]string{ 3553 "packageName": c.packageName, 3554 "editId": c.editId, 3555 }) 3556 return gensupport.SendRequest(c.ctx_, c.s.client, req) 3557} 3558 3559// Do executes the "androidpublisher.edits.validate" call. 3560// Exactly one of *AppEdit or error will be non-nil. Any non-2xx status 3561// code is an error. Response headers are in either 3562// *AppEdit.ServerResponse.Header or (if a response was returned at all) 3563// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 3564// check whether the returned error was because http.StatusNotModified 3565// was returned. 3566func (c *EditsValidateCall) Do(opts ...googleapi.CallOption) (*AppEdit, error) { 3567 gensupport.SetOptions(c.urlParams_, opts...) 3568 res, err := c.doRequest("json") 3569 if res != nil && res.StatusCode == http.StatusNotModified { 3570 if res.Body != nil { 3571 res.Body.Close() 3572 } 3573 return nil, &googleapi.Error{ 3574 Code: res.StatusCode, 3575 Header: res.Header, 3576 } 3577 } 3578 if err != nil { 3579 return nil, err 3580 } 3581 defer googleapi.CloseBody(res) 3582 if err := googleapi.CheckResponse(res); err != nil { 3583 return nil, err 3584 } 3585 ret := &AppEdit{ 3586 ServerResponse: googleapi.ServerResponse{ 3587 Header: res.Header, 3588 HTTPStatusCode: res.StatusCode, 3589 }, 3590 } 3591 target := &ret 3592 if err := gensupport.DecodeResponse(target, res); err != nil { 3593 return nil, err 3594 } 3595 return ret, nil 3596 // { 3597 // "description": "Validates an app edit.", 3598 // "flatPath": "androidpublisher/v3/applications/{packageName}/edits/{editId}:validate", 3599 // "httpMethod": "POST", 3600 // "id": "androidpublisher.edits.validate", 3601 // "parameterOrder": [ 3602 // "packageName", 3603 // "editId" 3604 // ], 3605 // "parameters": { 3606 // "editId": { 3607 // "description": "Identifier of the edit.", 3608 // "location": "path", 3609 // "required": true, 3610 // "type": "string" 3611 // }, 3612 // "packageName": { 3613 // "description": "Package name of the app.", 3614 // "location": "path", 3615 // "required": true, 3616 // "type": "string" 3617 // } 3618 // }, 3619 // "path": "androidpublisher/v3/applications/{packageName}/edits/{editId}:validate", 3620 // "response": { 3621 // "$ref": "AppEdit" 3622 // }, 3623 // "scopes": [ 3624 // "https://www.googleapis.com/auth/androidpublisher" 3625 // ] 3626 // } 3627 3628} 3629 3630// method id "androidpublisher.edits.apks.addexternallyhosted": 3631 3632type EditsApksAddexternallyhostedCall struct { 3633 s *Service 3634 packageName string 3635 editId string 3636 apksaddexternallyhostedrequest *ApksAddExternallyHostedRequest 3637 urlParams_ gensupport.URLParams 3638 ctx_ context.Context 3639 header_ http.Header 3640} 3641 3642// Addexternallyhosted: Creates a new APK without uploading the APK 3643// itself to Google Play, instead hosting the APK at a specified URL. 3644// This function is only available to organizations using Managed Play 3645// whose application is configured to restrict distribution to the 3646// organizations. 3647// 3648// - editId: Identifier of the edit. 3649// - packageName: Package name of the app. 3650func (r *EditsApksService) Addexternallyhosted(packageName string, editId string, apksaddexternallyhostedrequest *ApksAddExternallyHostedRequest) *EditsApksAddexternallyhostedCall { 3651 c := &EditsApksAddexternallyhostedCall{s: r.s, urlParams_: make(gensupport.URLParams)} 3652 c.packageName = packageName 3653 c.editId = editId 3654 c.apksaddexternallyhostedrequest = apksaddexternallyhostedrequest 3655 return c 3656} 3657 3658// Fields allows partial responses to be retrieved. See 3659// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 3660// for more information. 3661func (c *EditsApksAddexternallyhostedCall) Fields(s ...googleapi.Field) *EditsApksAddexternallyhostedCall { 3662 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 3663 return c 3664} 3665 3666// Context sets the context to be used in this call's Do method. Any 3667// pending HTTP request will be aborted if the provided context is 3668// canceled. 3669func (c *EditsApksAddexternallyhostedCall) Context(ctx context.Context) *EditsApksAddexternallyhostedCall { 3670 c.ctx_ = ctx 3671 return c 3672} 3673 3674// Header returns an http.Header that can be modified by the caller to 3675// add HTTP headers to the request. 3676func (c *EditsApksAddexternallyhostedCall) Header() http.Header { 3677 if c.header_ == nil { 3678 c.header_ = make(http.Header) 3679 } 3680 return c.header_ 3681} 3682 3683func (c *EditsApksAddexternallyhostedCall) doRequest(alt string) (*http.Response, error) { 3684 reqHeaders := make(http.Header) 3685 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 3686 for k, v := range c.header_ { 3687 reqHeaders[k] = v 3688 } 3689 reqHeaders.Set("User-Agent", c.s.userAgent()) 3690 var body io.Reader = nil 3691 body, err := googleapi.WithoutDataWrapper.JSONReader(c.apksaddexternallyhostedrequest) 3692 if err != nil { 3693 return nil, err 3694 } 3695 reqHeaders.Set("Content-Type", "application/json") 3696 c.urlParams_.Set("alt", alt) 3697 c.urlParams_.Set("prettyPrint", "false") 3698 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/edits/{editId}/apks/externallyHosted") 3699 urls += "?" + c.urlParams_.Encode() 3700 req, err := http.NewRequest("POST", urls, body) 3701 if err != nil { 3702 return nil, err 3703 } 3704 req.Header = reqHeaders 3705 googleapi.Expand(req.URL, map[string]string{ 3706 "packageName": c.packageName, 3707 "editId": c.editId, 3708 }) 3709 return gensupport.SendRequest(c.ctx_, c.s.client, req) 3710} 3711 3712// Do executes the "androidpublisher.edits.apks.addexternallyhosted" call. 3713// Exactly one of *ApksAddExternallyHostedResponse or error will be 3714// non-nil. Any non-2xx status code is an error. Response headers are in 3715// either *ApksAddExternallyHostedResponse.ServerResponse.Header or (if 3716// a response was returned at all) in error.(*googleapi.Error).Header. 3717// Use googleapi.IsNotModified to check whether the returned error was 3718// because http.StatusNotModified was returned. 3719func (c *EditsApksAddexternallyhostedCall) Do(opts ...googleapi.CallOption) (*ApksAddExternallyHostedResponse, error) { 3720 gensupport.SetOptions(c.urlParams_, opts...) 3721 res, err := c.doRequest("json") 3722 if res != nil && res.StatusCode == http.StatusNotModified { 3723 if res.Body != nil { 3724 res.Body.Close() 3725 } 3726 return nil, &googleapi.Error{ 3727 Code: res.StatusCode, 3728 Header: res.Header, 3729 } 3730 } 3731 if err != nil { 3732 return nil, err 3733 } 3734 defer googleapi.CloseBody(res) 3735 if err := googleapi.CheckResponse(res); err != nil { 3736 return nil, err 3737 } 3738 ret := &ApksAddExternallyHostedResponse{ 3739 ServerResponse: googleapi.ServerResponse{ 3740 Header: res.Header, 3741 HTTPStatusCode: res.StatusCode, 3742 }, 3743 } 3744 target := &ret 3745 if err := gensupport.DecodeResponse(target, res); err != nil { 3746 return nil, err 3747 } 3748 return ret, nil 3749 // { 3750 // "description": "Creates a new APK without uploading the APK itself to Google Play, instead hosting the APK at a specified URL. This function is only available to organizations using Managed Play whose application is configured to restrict distribution to the organizations.", 3751 // "flatPath": "androidpublisher/v3/applications/{packageName}/edits/{editId}/apks/externallyHosted", 3752 // "httpMethod": "POST", 3753 // "id": "androidpublisher.edits.apks.addexternallyhosted", 3754 // "parameterOrder": [ 3755 // "packageName", 3756 // "editId" 3757 // ], 3758 // "parameters": { 3759 // "editId": { 3760 // "description": "Identifier of the edit.", 3761 // "location": "path", 3762 // "required": true, 3763 // "type": "string" 3764 // }, 3765 // "packageName": { 3766 // "description": "Package name of the app.", 3767 // "location": "path", 3768 // "required": true, 3769 // "type": "string" 3770 // } 3771 // }, 3772 // "path": "androidpublisher/v3/applications/{packageName}/edits/{editId}/apks/externallyHosted", 3773 // "request": { 3774 // "$ref": "ApksAddExternallyHostedRequest" 3775 // }, 3776 // "response": { 3777 // "$ref": "ApksAddExternallyHostedResponse" 3778 // }, 3779 // "scopes": [ 3780 // "https://www.googleapis.com/auth/androidpublisher" 3781 // ] 3782 // } 3783 3784} 3785 3786// method id "androidpublisher.edits.apks.list": 3787 3788type EditsApksListCall struct { 3789 s *Service 3790 packageName string 3791 editId string 3792 urlParams_ gensupport.URLParams 3793 ifNoneMatch_ string 3794 ctx_ context.Context 3795 header_ http.Header 3796} 3797 3798// List: Lists all current APKs of the app and edit. 3799// 3800// - editId: Identifier of the edit. 3801// - packageName: Package name of the app. 3802func (r *EditsApksService) List(packageName string, editId string) *EditsApksListCall { 3803 c := &EditsApksListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 3804 c.packageName = packageName 3805 c.editId = editId 3806 return c 3807} 3808 3809// Fields allows partial responses to be retrieved. See 3810// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 3811// for more information. 3812func (c *EditsApksListCall) Fields(s ...googleapi.Field) *EditsApksListCall { 3813 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 3814 return c 3815} 3816 3817// IfNoneMatch sets the optional parameter which makes the operation 3818// fail if the object's ETag matches the given value. This is useful for 3819// getting updates only after the object has changed since the last 3820// request. Use googleapi.IsNotModified to check whether the response 3821// error from Do is the result of In-None-Match. 3822func (c *EditsApksListCall) IfNoneMatch(entityTag string) *EditsApksListCall { 3823 c.ifNoneMatch_ = entityTag 3824 return c 3825} 3826 3827// Context sets the context to be used in this call's Do method. Any 3828// pending HTTP request will be aborted if the provided context is 3829// canceled. 3830func (c *EditsApksListCall) Context(ctx context.Context) *EditsApksListCall { 3831 c.ctx_ = ctx 3832 return c 3833} 3834 3835// Header returns an http.Header that can be modified by the caller to 3836// add HTTP headers to the request. 3837func (c *EditsApksListCall) Header() http.Header { 3838 if c.header_ == nil { 3839 c.header_ = make(http.Header) 3840 } 3841 return c.header_ 3842} 3843 3844func (c *EditsApksListCall) doRequest(alt string) (*http.Response, error) { 3845 reqHeaders := make(http.Header) 3846 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 3847 for k, v := range c.header_ { 3848 reqHeaders[k] = v 3849 } 3850 reqHeaders.Set("User-Agent", c.s.userAgent()) 3851 if c.ifNoneMatch_ != "" { 3852 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 3853 } 3854 var body io.Reader = nil 3855 c.urlParams_.Set("alt", alt) 3856 c.urlParams_.Set("prettyPrint", "false") 3857 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/edits/{editId}/apks") 3858 urls += "?" + c.urlParams_.Encode() 3859 req, err := http.NewRequest("GET", urls, body) 3860 if err != nil { 3861 return nil, err 3862 } 3863 req.Header = reqHeaders 3864 googleapi.Expand(req.URL, map[string]string{ 3865 "packageName": c.packageName, 3866 "editId": c.editId, 3867 }) 3868 return gensupport.SendRequest(c.ctx_, c.s.client, req) 3869} 3870 3871// Do executes the "androidpublisher.edits.apks.list" call. 3872// Exactly one of *ApksListResponse or error will be non-nil. Any 3873// non-2xx status code is an error. Response headers are in either 3874// *ApksListResponse.ServerResponse.Header or (if a response was 3875// returned at all) in error.(*googleapi.Error).Header. Use 3876// googleapi.IsNotModified to check whether the returned error was 3877// because http.StatusNotModified was returned. 3878func (c *EditsApksListCall) Do(opts ...googleapi.CallOption) (*ApksListResponse, error) { 3879 gensupport.SetOptions(c.urlParams_, opts...) 3880 res, err := c.doRequest("json") 3881 if res != nil && res.StatusCode == http.StatusNotModified { 3882 if res.Body != nil { 3883 res.Body.Close() 3884 } 3885 return nil, &googleapi.Error{ 3886 Code: res.StatusCode, 3887 Header: res.Header, 3888 } 3889 } 3890 if err != nil { 3891 return nil, err 3892 } 3893 defer googleapi.CloseBody(res) 3894 if err := googleapi.CheckResponse(res); err != nil { 3895 return nil, err 3896 } 3897 ret := &ApksListResponse{ 3898 ServerResponse: googleapi.ServerResponse{ 3899 Header: res.Header, 3900 HTTPStatusCode: res.StatusCode, 3901 }, 3902 } 3903 target := &ret 3904 if err := gensupport.DecodeResponse(target, res); err != nil { 3905 return nil, err 3906 } 3907 return ret, nil 3908 // { 3909 // "description": "Lists all current APKs of the app and edit.", 3910 // "flatPath": "androidpublisher/v3/applications/{packageName}/edits/{editId}/apks", 3911 // "httpMethod": "GET", 3912 // "id": "androidpublisher.edits.apks.list", 3913 // "parameterOrder": [ 3914 // "packageName", 3915 // "editId" 3916 // ], 3917 // "parameters": { 3918 // "editId": { 3919 // "description": "Identifier of the edit.", 3920 // "location": "path", 3921 // "required": true, 3922 // "type": "string" 3923 // }, 3924 // "packageName": { 3925 // "description": "Package name of the app.", 3926 // "location": "path", 3927 // "required": true, 3928 // "type": "string" 3929 // } 3930 // }, 3931 // "path": "androidpublisher/v3/applications/{packageName}/edits/{editId}/apks", 3932 // "response": { 3933 // "$ref": "ApksListResponse" 3934 // }, 3935 // "scopes": [ 3936 // "https://www.googleapis.com/auth/androidpublisher" 3937 // ] 3938 // } 3939 3940} 3941 3942// method id "androidpublisher.edits.apks.upload": 3943 3944type EditsApksUploadCall struct { 3945 s *Service 3946 packageName string 3947 editId string 3948 urlParams_ gensupport.URLParams 3949 mediaInfo_ *gensupport.MediaInfo 3950 ctx_ context.Context 3951 header_ http.Header 3952} 3953 3954// Upload: Uploads an APK and adds to the current edit. 3955// 3956// - editId: Identifier of the edit. 3957// - packageName: Package name of the app. 3958func (r *EditsApksService) Upload(packageName string, editId string) *EditsApksUploadCall { 3959 c := &EditsApksUploadCall{s: r.s, urlParams_: make(gensupport.URLParams)} 3960 c.packageName = packageName 3961 c.editId = editId 3962 return c 3963} 3964 3965// Media specifies the media to upload in one or more chunks. The chunk 3966// size may be controlled by supplying a MediaOption generated by 3967// googleapi.ChunkSize. The chunk size defaults to 3968// googleapi.DefaultUploadChunkSize.The Content-Type header used in the 3969// upload request will be determined by sniffing the contents of r, 3970// unless a MediaOption generated by googleapi.ContentType is 3971// supplied. 3972// At most one of Media and ResumableMedia may be set. 3973func (c *EditsApksUploadCall) Media(r io.Reader, options ...googleapi.MediaOption) *EditsApksUploadCall { 3974 c.mediaInfo_ = gensupport.NewInfoFromMedia(r, options) 3975 return c 3976} 3977 3978// ResumableMedia specifies the media to upload in chunks and can be 3979// canceled with ctx. 3980// 3981// Deprecated: use Media instead. 3982// 3983// At most one of Media and ResumableMedia may be set. mediaType 3984// identifies the MIME media type of the upload, such as "image/png". If 3985// mediaType is "", it will be auto-detected. The provided ctx will 3986// supersede any context previously provided to the Context method. 3987func (c *EditsApksUploadCall) ResumableMedia(ctx context.Context, r io.ReaderAt, size int64, mediaType string) *EditsApksUploadCall { 3988 c.ctx_ = ctx 3989 c.mediaInfo_ = gensupport.NewInfoFromResumableMedia(r, size, mediaType) 3990 return c 3991} 3992 3993// ProgressUpdater provides a callback function that will be called 3994// after every chunk. It should be a low-latency function in order to 3995// not slow down the upload operation. This should only be called when 3996// using ResumableMedia (as opposed to Media). 3997func (c *EditsApksUploadCall) ProgressUpdater(pu googleapi.ProgressUpdater) *EditsApksUploadCall { 3998 c.mediaInfo_.SetProgressUpdater(pu) 3999 return c 4000} 4001 4002// Fields allows partial responses to be retrieved. See 4003// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 4004// for more information. 4005func (c *EditsApksUploadCall) Fields(s ...googleapi.Field) *EditsApksUploadCall { 4006 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 4007 return c 4008} 4009 4010// Context sets the context to be used in this call's Do method. Any 4011// pending HTTP request will be aborted if the provided context is 4012// canceled. 4013// This context will supersede any context previously provided to the 4014// ResumableMedia method. 4015func (c *EditsApksUploadCall) Context(ctx context.Context) *EditsApksUploadCall { 4016 c.ctx_ = ctx 4017 return c 4018} 4019 4020// Header returns an http.Header that can be modified by the caller to 4021// add HTTP headers to the request. 4022func (c *EditsApksUploadCall) Header() http.Header { 4023 if c.header_ == nil { 4024 c.header_ = make(http.Header) 4025 } 4026 return c.header_ 4027} 4028 4029func (c *EditsApksUploadCall) doRequest(alt string) (*http.Response, error) { 4030 reqHeaders := make(http.Header) 4031 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 4032 for k, v := range c.header_ { 4033 reqHeaders[k] = v 4034 } 4035 reqHeaders.Set("User-Agent", c.s.userAgent()) 4036 var body io.Reader = nil 4037 c.urlParams_.Set("alt", alt) 4038 c.urlParams_.Set("prettyPrint", "false") 4039 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/edits/{editId}/apks") 4040 if c.mediaInfo_ != nil { 4041 urls = googleapi.ResolveRelative(c.s.BasePath, "/upload/androidpublisher/v3/applications/{packageName}/edits/{editId}/apks") 4042 c.urlParams_.Set("uploadType", c.mediaInfo_.UploadType()) 4043 } 4044 if body == nil { 4045 body = new(bytes.Buffer) 4046 reqHeaders.Set("Content-Type", "application/json") 4047 } 4048 body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) 4049 defer cleanup() 4050 urls += "?" + c.urlParams_.Encode() 4051 req, err := http.NewRequest("POST", urls, body) 4052 if err != nil { 4053 return nil, err 4054 } 4055 req.Header = reqHeaders 4056 req.GetBody = getBody 4057 googleapi.Expand(req.URL, map[string]string{ 4058 "packageName": c.packageName, 4059 "editId": c.editId, 4060 }) 4061 return gensupport.SendRequest(c.ctx_, c.s.client, req) 4062} 4063 4064// Do executes the "androidpublisher.edits.apks.upload" call. 4065// Exactly one of *Apk or error will be non-nil. Any non-2xx status code 4066// is an error. Response headers are in either 4067// *Apk.ServerResponse.Header or (if a response was returned at all) in 4068// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check 4069// whether the returned error was because http.StatusNotModified was 4070// returned. 4071func (c *EditsApksUploadCall) Do(opts ...googleapi.CallOption) (*Apk, error) { 4072 gensupport.SetOptions(c.urlParams_, opts...) 4073 res, err := c.doRequest("json") 4074 if res != nil && res.StatusCode == http.StatusNotModified { 4075 if res.Body != nil { 4076 res.Body.Close() 4077 } 4078 return nil, &googleapi.Error{ 4079 Code: res.StatusCode, 4080 Header: res.Header, 4081 } 4082 } 4083 if err != nil { 4084 return nil, err 4085 } 4086 defer googleapi.CloseBody(res) 4087 if err := googleapi.CheckResponse(res); err != nil { 4088 return nil, err 4089 } 4090 rx := c.mediaInfo_.ResumableUpload(res.Header.Get("Location")) 4091 if rx != nil { 4092 rx.Client = c.s.client 4093 rx.UserAgent = c.s.userAgent() 4094 ctx := c.ctx_ 4095 if ctx == nil { 4096 ctx = context.TODO() 4097 } 4098 res, err = rx.Upload(ctx) 4099 if err != nil { 4100 return nil, err 4101 } 4102 defer res.Body.Close() 4103 if err := googleapi.CheckResponse(res); err != nil { 4104 return nil, err 4105 } 4106 } 4107 ret := &Apk{ 4108 ServerResponse: googleapi.ServerResponse{ 4109 Header: res.Header, 4110 HTTPStatusCode: res.StatusCode, 4111 }, 4112 } 4113 target := &ret 4114 if err := gensupport.DecodeResponse(target, res); err != nil { 4115 return nil, err 4116 } 4117 return ret, nil 4118 // { 4119 // "description": "Uploads an APK and adds to the current edit.", 4120 // "flatPath": "androidpublisher/v3/applications/{packageName}/edits/{editId}/apks", 4121 // "httpMethod": "POST", 4122 // "id": "androidpublisher.edits.apks.upload", 4123 // "mediaUpload": { 4124 // "accept": [ 4125 // "application/octet-stream", 4126 // "application/vnd.android.package-archive" 4127 // ], 4128 // "maxSize": "10737418240", 4129 // "protocols": { 4130 // "resumable": { 4131 // "multipart": true, 4132 // "path": "/resumable/upload/androidpublisher/v3/applications/{packageName}/edits/{editId}/apks" 4133 // }, 4134 // "simple": { 4135 // "multipart": true, 4136 // "path": "/upload/androidpublisher/v3/applications/{packageName}/edits/{editId}/apks" 4137 // } 4138 // } 4139 // }, 4140 // "parameterOrder": [ 4141 // "packageName", 4142 // "editId" 4143 // ], 4144 // "parameters": { 4145 // "editId": { 4146 // "description": "Identifier of the edit.", 4147 // "location": "path", 4148 // "required": true, 4149 // "type": "string" 4150 // }, 4151 // "packageName": { 4152 // "description": "Package name of the app.", 4153 // "location": "path", 4154 // "required": true, 4155 // "type": "string" 4156 // } 4157 // }, 4158 // "path": "androidpublisher/v3/applications/{packageName}/edits/{editId}/apks", 4159 // "response": { 4160 // "$ref": "Apk" 4161 // }, 4162 // "scopes": [ 4163 // "https://www.googleapis.com/auth/androidpublisher" 4164 // ], 4165 // "supportsMediaUpload": true 4166 // } 4167 4168} 4169 4170// method id "androidpublisher.edits.bundles.list": 4171 4172type EditsBundlesListCall struct { 4173 s *Service 4174 packageName string 4175 editId string 4176 urlParams_ gensupport.URLParams 4177 ifNoneMatch_ string 4178 ctx_ context.Context 4179 header_ http.Header 4180} 4181 4182// List: Lists all current Android App Bundles of the app and edit. 4183// 4184// - editId: Identifier of the edit. 4185// - packageName: Package name of the app. 4186func (r *EditsBundlesService) List(packageName string, editId string) *EditsBundlesListCall { 4187 c := &EditsBundlesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 4188 c.packageName = packageName 4189 c.editId = editId 4190 return c 4191} 4192 4193// Fields allows partial responses to be retrieved. See 4194// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 4195// for more information. 4196func (c *EditsBundlesListCall) Fields(s ...googleapi.Field) *EditsBundlesListCall { 4197 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 4198 return c 4199} 4200 4201// IfNoneMatch sets the optional parameter which makes the operation 4202// fail if the object's ETag matches the given value. This is useful for 4203// getting updates only after the object has changed since the last 4204// request. Use googleapi.IsNotModified to check whether the response 4205// error from Do is the result of In-None-Match. 4206func (c *EditsBundlesListCall) IfNoneMatch(entityTag string) *EditsBundlesListCall { 4207 c.ifNoneMatch_ = entityTag 4208 return c 4209} 4210 4211// Context sets the context to be used in this call's Do method. Any 4212// pending HTTP request will be aborted if the provided context is 4213// canceled. 4214func (c *EditsBundlesListCall) Context(ctx context.Context) *EditsBundlesListCall { 4215 c.ctx_ = ctx 4216 return c 4217} 4218 4219// Header returns an http.Header that can be modified by the caller to 4220// add HTTP headers to the request. 4221func (c *EditsBundlesListCall) Header() http.Header { 4222 if c.header_ == nil { 4223 c.header_ = make(http.Header) 4224 } 4225 return c.header_ 4226} 4227 4228func (c *EditsBundlesListCall) doRequest(alt string) (*http.Response, error) { 4229 reqHeaders := make(http.Header) 4230 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 4231 for k, v := range c.header_ { 4232 reqHeaders[k] = v 4233 } 4234 reqHeaders.Set("User-Agent", c.s.userAgent()) 4235 if c.ifNoneMatch_ != "" { 4236 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 4237 } 4238 var body io.Reader = nil 4239 c.urlParams_.Set("alt", alt) 4240 c.urlParams_.Set("prettyPrint", "false") 4241 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/edits/{editId}/bundles") 4242 urls += "?" + c.urlParams_.Encode() 4243 req, err := http.NewRequest("GET", urls, body) 4244 if err != nil { 4245 return nil, err 4246 } 4247 req.Header = reqHeaders 4248 googleapi.Expand(req.URL, map[string]string{ 4249 "packageName": c.packageName, 4250 "editId": c.editId, 4251 }) 4252 return gensupport.SendRequest(c.ctx_, c.s.client, req) 4253} 4254 4255// Do executes the "androidpublisher.edits.bundles.list" call. 4256// Exactly one of *BundlesListResponse or error will be non-nil. Any 4257// non-2xx status code is an error. Response headers are in either 4258// *BundlesListResponse.ServerResponse.Header or (if a response was 4259// returned at all) in error.(*googleapi.Error).Header. Use 4260// googleapi.IsNotModified to check whether the returned error was 4261// because http.StatusNotModified was returned. 4262func (c *EditsBundlesListCall) Do(opts ...googleapi.CallOption) (*BundlesListResponse, error) { 4263 gensupport.SetOptions(c.urlParams_, opts...) 4264 res, err := c.doRequest("json") 4265 if res != nil && res.StatusCode == http.StatusNotModified { 4266 if res.Body != nil { 4267 res.Body.Close() 4268 } 4269 return nil, &googleapi.Error{ 4270 Code: res.StatusCode, 4271 Header: res.Header, 4272 } 4273 } 4274 if err != nil { 4275 return nil, err 4276 } 4277 defer googleapi.CloseBody(res) 4278 if err := googleapi.CheckResponse(res); err != nil { 4279 return nil, err 4280 } 4281 ret := &BundlesListResponse{ 4282 ServerResponse: googleapi.ServerResponse{ 4283 Header: res.Header, 4284 HTTPStatusCode: res.StatusCode, 4285 }, 4286 } 4287 target := &ret 4288 if err := gensupport.DecodeResponse(target, res); err != nil { 4289 return nil, err 4290 } 4291 return ret, nil 4292 // { 4293 // "description": "Lists all current Android App Bundles of the app and edit.", 4294 // "flatPath": "androidpublisher/v3/applications/{packageName}/edits/{editId}/bundles", 4295 // "httpMethod": "GET", 4296 // "id": "androidpublisher.edits.bundles.list", 4297 // "parameterOrder": [ 4298 // "packageName", 4299 // "editId" 4300 // ], 4301 // "parameters": { 4302 // "editId": { 4303 // "description": "Identifier of the edit.", 4304 // "location": "path", 4305 // "required": true, 4306 // "type": "string" 4307 // }, 4308 // "packageName": { 4309 // "description": "Package name of the app.", 4310 // "location": "path", 4311 // "required": true, 4312 // "type": "string" 4313 // } 4314 // }, 4315 // "path": "androidpublisher/v3/applications/{packageName}/edits/{editId}/bundles", 4316 // "response": { 4317 // "$ref": "BundlesListResponse" 4318 // }, 4319 // "scopes": [ 4320 // "https://www.googleapis.com/auth/androidpublisher" 4321 // ] 4322 // } 4323 4324} 4325 4326// method id "androidpublisher.edits.bundles.upload": 4327 4328type EditsBundlesUploadCall struct { 4329 s *Service 4330 packageName string 4331 editId string 4332 urlParams_ gensupport.URLParams 4333 mediaInfo_ *gensupport.MediaInfo 4334 ctx_ context.Context 4335 header_ http.Header 4336} 4337 4338// Upload: Uploads a new Android App Bundle to this edit. If you are 4339// using the Google API client libraries, please increase the timeout of 4340// the http request before calling this endpoint (a timeout of 2 minutes 4341// is recommended). See Timeouts and Errors 4342// (https://developers.google.com/api-client-library/java/google-api-java-client/errors) 4343// for an example in java. 4344// 4345// - editId: Identifier of the edit. 4346// - packageName: Package name of the app. 4347func (r *EditsBundlesService) Upload(packageName string, editId string) *EditsBundlesUploadCall { 4348 c := &EditsBundlesUploadCall{s: r.s, urlParams_: make(gensupport.URLParams)} 4349 c.packageName = packageName 4350 c.editId = editId 4351 return c 4352} 4353 4354// AckBundleInstallationWarning sets the optional parameter 4355// "ackBundleInstallationWarning": Must be set to true if the bundle 4356// installation may trigger a warning on user devices (for example, if 4357// installation size may be over a threshold, typically 100 MB). 4358func (c *EditsBundlesUploadCall) AckBundleInstallationWarning(ackBundleInstallationWarning bool) *EditsBundlesUploadCall { 4359 c.urlParams_.Set("ackBundleInstallationWarning", fmt.Sprint(ackBundleInstallationWarning)) 4360 return c 4361} 4362 4363// Media specifies the media to upload in one or more chunks. The chunk 4364// size may be controlled by supplying a MediaOption generated by 4365// googleapi.ChunkSize. The chunk size defaults to 4366// googleapi.DefaultUploadChunkSize.The Content-Type header used in the 4367// upload request will be determined by sniffing the contents of r, 4368// unless a MediaOption generated by googleapi.ContentType is 4369// supplied. 4370// At most one of Media and ResumableMedia may be set. 4371func (c *EditsBundlesUploadCall) Media(r io.Reader, options ...googleapi.MediaOption) *EditsBundlesUploadCall { 4372 c.mediaInfo_ = gensupport.NewInfoFromMedia(r, options) 4373 return c 4374} 4375 4376// ResumableMedia specifies the media to upload in chunks and can be 4377// canceled with ctx. 4378// 4379// Deprecated: use Media instead. 4380// 4381// At most one of Media and ResumableMedia may be set. mediaType 4382// identifies the MIME media type of the upload, such as "image/png". If 4383// mediaType is "", it will be auto-detected. The provided ctx will 4384// supersede any context previously provided to the Context method. 4385func (c *EditsBundlesUploadCall) ResumableMedia(ctx context.Context, r io.ReaderAt, size int64, mediaType string) *EditsBundlesUploadCall { 4386 c.ctx_ = ctx 4387 c.mediaInfo_ = gensupport.NewInfoFromResumableMedia(r, size, mediaType) 4388 return c 4389} 4390 4391// ProgressUpdater provides a callback function that will be called 4392// after every chunk. It should be a low-latency function in order to 4393// not slow down the upload operation. This should only be called when 4394// using ResumableMedia (as opposed to Media). 4395func (c *EditsBundlesUploadCall) ProgressUpdater(pu googleapi.ProgressUpdater) *EditsBundlesUploadCall { 4396 c.mediaInfo_.SetProgressUpdater(pu) 4397 return c 4398} 4399 4400// Fields allows partial responses to be retrieved. See 4401// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 4402// for more information. 4403func (c *EditsBundlesUploadCall) Fields(s ...googleapi.Field) *EditsBundlesUploadCall { 4404 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 4405 return c 4406} 4407 4408// Context sets the context to be used in this call's Do method. Any 4409// pending HTTP request will be aborted if the provided context is 4410// canceled. 4411// This context will supersede any context previously provided to the 4412// ResumableMedia method. 4413func (c *EditsBundlesUploadCall) Context(ctx context.Context) *EditsBundlesUploadCall { 4414 c.ctx_ = ctx 4415 return c 4416} 4417 4418// Header returns an http.Header that can be modified by the caller to 4419// add HTTP headers to the request. 4420func (c *EditsBundlesUploadCall) Header() http.Header { 4421 if c.header_ == nil { 4422 c.header_ = make(http.Header) 4423 } 4424 return c.header_ 4425} 4426 4427func (c *EditsBundlesUploadCall) doRequest(alt string) (*http.Response, error) { 4428 reqHeaders := make(http.Header) 4429 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 4430 for k, v := range c.header_ { 4431 reqHeaders[k] = v 4432 } 4433 reqHeaders.Set("User-Agent", c.s.userAgent()) 4434 var body io.Reader = nil 4435 c.urlParams_.Set("alt", alt) 4436 c.urlParams_.Set("prettyPrint", "false") 4437 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/edits/{editId}/bundles") 4438 if c.mediaInfo_ != nil { 4439 urls = googleapi.ResolveRelative(c.s.BasePath, "/upload/androidpublisher/v3/applications/{packageName}/edits/{editId}/bundles") 4440 c.urlParams_.Set("uploadType", c.mediaInfo_.UploadType()) 4441 } 4442 if body == nil { 4443 body = new(bytes.Buffer) 4444 reqHeaders.Set("Content-Type", "application/json") 4445 } 4446 body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) 4447 defer cleanup() 4448 urls += "?" + c.urlParams_.Encode() 4449 req, err := http.NewRequest("POST", urls, body) 4450 if err != nil { 4451 return nil, err 4452 } 4453 req.Header = reqHeaders 4454 req.GetBody = getBody 4455 googleapi.Expand(req.URL, map[string]string{ 4456 "packageName": c.packageName, 4457 "editId": c.editId, 4458 }) 4459 return gensupport.SendRequest(c.ctx_, c.s.client, req) 4460} 4461 4462// Do executes the "androidpublisher.edits.bundles.upload" call. 4463// Exactly one of *Bundle or error will be non-nil. Any non-2xx status 4464// code is an error. Response headers are in either 4465// *Bundle.ServerResponse.Header or (if a response was returned at all) 4466// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 4467// check whether the returned error was because http.StatusNotModified 4468// was returned. 4469func (c *EditsBundlesUploadCall) Do(opts ...googleapi.CallOption) (*Bundle, error) { 4470 gensupport.SetOptions(c.urlParams_, opts...) 4471 res, err := c.doRequest("json") 4472 if res != nil && res.StatusCode == http.StatusNotModified { 4473 if res.Body != nil { 4474 res.Body.Close() 4475 } 4476 return nil, &googleapi.Error{ 4477 Code: res.StatusCode, 4478 Header: res.Header, 4479 } 4480 } 4481 if err != nil { 4482 return nil, err 4483 } 4484 defer googleapi.CloseBody(res) 4485 if err := googleapi.CheckResponse(res); err != nil { 4486 return nil, err 4487 } 4488 rx := c.mediaInfo_.ResumableUpload(res.Header.Get("Location")) 4489 if rx != nil { 4490 rx.Client = c.s.client 4491 rx.UserAgent = c.s.userAgent() 4492 ctx := c.ctx_ 4493 if ctx == nil { 4494 ctx = context.TODO() 4495 } 4496 res, err = rx.Upload(ctx) 4497 if err != nil { 4498 return nil, err 4499 } 4500 defer res.Body.Close() 4501 if err := googleapi.CheckResponse(res); err != nil { 4502 return nil, err 4503 } 4504 } 4505 ret := &Bundle{ 4506 ServerResponse: googleapi.ServerResponse{ 4507 Header: res.Header, 4508 HTTPStatusCode: res.StatusCode, 4509 }, 4510 } 4511 target := &ret 4512 if err := gensupport.DecodeResponse(target, res); err != nil { 4513 return nil, err 4514 } 4515 return ret, nil 4516 // { 4517 // "description": "Uploads a new Android App Bundle to this edit. If you are using the Google API client libraries, please increase the timeout of the http request before calling this endpoint (a timeout of 2 minutes is recommended). See [Timeouts and Errors](https://developers.google.com/api-client-library/java/google-api-java-client/errors) for an example in java.", 4518 // "flatPath": "androidpublisher/v3/applications/{packageName}/edits/{editId}/bundles", 4519 // "httpMethod": "POST", 4520 // "id": "androidpublisher.edits.bundles.upload", 4521 // "mediaUpload": { 4522 // "accept": [ 4523 // "application/octet-stream" 4524 // ], 4525 // "maxSize": "10737418240", 4526 // "protocols": { 4527 // "resumable": { 4528 // "multipart": true, 4529 // "path": "/resumable/upload/androidpublisher/v3/applications/{packageName}/edits/{editId}/bundles" 4530 // }, 4531 // "simple": { 4532 // "multipart": true, 4533 // "path": "/upload/androidpublisher/v3/applications/{packageName}/edits/{editId}/bundles" 4534 // } 4535 // } 4536 // }, 4537 // "parameterOrder": [ 4538 // "packageName", 4539 // "editId" 4540 // ], 4541 // "parameters": { 4542 // "ackBundleInstallationWarning": { 4543 // "description": "Must be set to true if the bundle installation may trigger a warning on user devices (for example, if installation size may be over a threshold, typically 100 MB).", 4544 // "location": "query", 4545 // "type": "boolean" 4546 // }, 4547 // "editId": { 4548 // "description": "Identifier of the edit.", 4549 // "location": "path", 4550 // "required": true, 4551 // "type": "string" 4552 // }, 4553 // "packageName": { 4554 // "description": "Package name of the app.", 4555 // "location": "path", 4556 // "required": true, 4557 // "type": "string" 4558 // } 4559 // }, 4560 // "path": "androidpublisher/v3/applications/{packageName}/edits/{editId}/bundles", 4561 // "response": { 4562 // "$ref": "Bundle" 4563 // }, 4564 // "scopes": [ 4565 // "https://www.googleapis.com/auth/androidpublisher" 4566 // ], 4567 // "supportsMediaUpload": true 4568 // } 4569 4570} 4571 4572// method id "androidpublisher.edits.deobfuscationfiles.upload": 4573 4574type EditsDeobfuscationfilesUploadCall struct { 4575 s *Service 4576 packageNameid string 4577 editId string 4578 apkVersionCode int64 4579 deobfuscationFileType string 4580 urlParams_ gensupport.URLParams 4581 mediaInfo_ *gensupport.MediaInfo 4582 ctx_ context.Context 4583 header_ http.Header 4584} 4585 4586// Upload: Uploads a new deobfuscation file and attaches to the 4587// specified APK. 4588// 4589// - apkVersionCode: The version code of the APK whose Deobfuscation 4590// File is being uploaded. 4591// - deobfuscationFileType: The type of the deobfuscation file. 4592// - editId: Unique identifier for this edit. 4593// - packageName: Unique identifier for the Android app. 4594func (r *EditsDeobfuscationfilesService) Upload(packageNameid string, editId string, apkVersionCode int64, deobfuscationFileType string) *EditsDeobfuscationfilesUploadCall { 4595 c := &EditsDeobfuscationfilesUploadCall{s: r.s, urlParams_: make(gensupport.URLParams)} 4596 c.packageNameid = packageNameid 4597 c.editId = editId 4598 c.apkVersionCode = apkVersionCode 4599 c.deobfuscationFileType = deobfuscationFileType 4600 return c 4601} 4602 4603// Media specifies the media to upload in one or more chunks. The chunk 4604// size may be controlled by supplying a MediaOption generated by 4605// googleapi.ChunkSize. The chunk size defaults to 4606// googleapi.DefaultUploadChunkSize.The Content-Type header used in the 4607// upload request will be determined by sniffing the contents of r, 4608// unless a MediaOption generated by googleapi.ContentType is 4609// supplied. 4610// At most one of Media and ResumableMedia may be set. 4611func (c *EditsDeobfuscationfilesUploadCall) Media(r io.Reader, options ...googleapi.MediaOption) *EditsDeobfuscationfilesUploadCall { 4612 c.mediaInfo_ = gensupport.NewInfoFromMedia(r, options) 4613 return c 4614} 4615 4616// ResumableMedia specifies the media to upload in chunks and can be 4617// canceled with ctx. 4618// 4619// Deprecated: use Media instead. 4620// 4621// At most one of Media and ResumableMedia may be set. mediaType 4622// identifies the MIME media type of the upload, such as "image/png". If 4623// mediaType is "", it will be auto-detected. The provided ctx will 4624// supersede any context previously provided to the Context method. 4625func (c *EditsDeobfuscationfilesUploadCall) ResumableMedia(ctx context.Context, r io.ReaderAt, size int64, mediaType string) *EditsDeobfuscationfilesUploadCall { 4626 c.ctx_ = ctx 4627 c.mediaInfo_ = gensupport.NewInfoFromResumableMedia(r, size, mediaType) 4628 return c 4629} 4630 4631// ProgressUpdater provides a callback function that will be called 4632// after every chunk. It should be a low-latency function in order to 4633// not slow down the upload operation. This should only be called when 4634// using ResumableMedia (as opposed to Media). 4635func (c *EditsDeobfuscationfilesUploadCall) ProgressUpdater(pu googleapi.ProgressUpdater) *EditsDeobfuscationfilesUploadCall { 4636 c.mediaInfo_.SetProgressUpdater(pu) 4637 return c 4638} 4639 4640// Fields allows partial responses to be retrieved. See 4641// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 4642// for more information. 4643func (c *EditsDeobfuscationfilesUploadCall) Fields(s ...googleapi.Field) *EditsDeobfuscationfilesUploadCall { 4644 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 4645 return c 4646} 4647 4648// Context sets the context to be used in this call's Do method. Any 4649// pending HTTP request will be aborted if the provided context is 4650// canceled. 4651// This context will supersede any context previously provided to the 4652// ResumableMedia method. 4653func (c *EditsDeobfuscationfilesUploadCall) Context(ctx context.Context) *EditsDeobfuscationfilesUploadCall { 4654 c.ctx_ = ctx 4655 return c 4656} 4657 4658// Header returns an http.Header that can be modified by the caller to 4659// add HTTP headers to the request. 4660func (c *EditsDeobfuscationfilesUploadCall) Header() http.Header { 4661 if c.header_ == nil { 4662 c.header_ = make(http.Header) 4663 } 4664 return c.header_ 4665} 4666 4667func (c *EditsDeobfuscationfilesUploadCall) doRequest(alt string) (*http.Response, error) { 4668 reqHeaders := make(http.Header) 4669 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 4670 for k, v := range c.header_ { 4671 reqHeaders[k] = v 4672 } 4673 reqHeaders.Set("User-Agent", c.s.userAgent()) 4674 var body io.Reader = nil 4675 c.urlParams_.Set("alt", alt) 4676 c.urlParams_.Set("prettyPrint", "false") 4677 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/edits/{editId}/apks/{apkVersionCode}/deobfuscationFiles/{deobfuscationFileType}") 4678 if c.mediaInfo_ != nil { 4679 urls = googleapi.ResolveRelative(c.s.BasePath, "/upload/androidpublisher/v3/applications/{packageName}/edits/{editId}/apks/{apkVersionCode}/deobfuscationFiles/{deobfuscationFileType}") 4680 c.urlParams_.Set("uploadType", c.mediaInfo_.UploadType()) 4681 } 4682 if body == nil { 4683 body = new(bytes.Buffer) 4684 reqHeaders.Set("Content-Type", "application/json") 4685 } 4686 body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) 4687 defer cleanup() 4688 urls += "?" + c.urlParams_.Encode() 4689 req, err := http.NewRequest("POST", urls, body) 4690 if err != nil { 4691 return nil, err 4692 } 4693 req.Header = reqHeaders 4694 req.GetBody = getBody 4695 googleapi.Expand(req.URL, map[string]string{ 4696 "packageName": c.packageNameid, 4697 "editId": c.editId, 4698 "apkVersionCode": strconv.FormatInt(c.apkVersionCode, 10), 4699 "deobfuscationFileType": c.deobfuscationFileType, 4700 }) 4701 return gensupport.SendRequest(c.ctx_, c.s.client, req) 4702} 4703 4704// Do executes the "androidpublisher.edits.deobfuscationfiles.upload" call. 4705// Exactly one of *DeobfuscationFilesUploadResponse or error will be 4706// non-nil. Any non-2xx status code is an error. Response headers are in 4707// either *DeobfuscationFilesUploadResponse.ServerResponse.Header or (if 4708// a response was returned at all) in error.(*googleapi.Error).Header. 4709// Use googleapi.IsNotModified to check whether the returned error was 4710// because http.StatusNotModified was returned. 4711func (c *EditsDeobfuscationfilesUploadCall) Do(opts ...googleapi.CallOption) (*DeobfuscationFilesUploadResponse, error) { 4712 gensupport.SetOptions(c.urlParams_, opts...) 4713 res, err := c.doRequest("json") 4714 if res != nil && res.StatusCode == http.StatusNotModified { 4715 if res.Body != nil { 4716 res.Body.Close() 4717 } 4718 return nil, &googleapi.Error{ 4719 Code: res.StatusCode, 4720 Header: res.Header, 4721 } 4722 } 4723 if err != nil { 4724 return nil, err 4725 } 4726 defer googleapi.CloseBody(res) 4727 if err := googleapi.CheckResponse(res); err != nil { 4728 return nil, err 4729 } 4730 rx := c.mediaInfo_.ResumableUpload(res.Header.Get("Location")) 4731 if rx != nil { 4732 rx.Client = c.s.client 4733 rx.UserAgent = c.s.userAgent() 4734 ctx := c.ctx_ 4735 if ctx == nil { 4736 ctx = context.TODO() 4737 } 4738 res, err = rx.Upload(ctx) 4739 if err != nil { 4740 return nil, err 4741 } 4742 defer res.Body.Close() 4743 if err := googleapi.CheckResponse(res); err != nil { 4744 return nil, err 4745 } 4746 } 4747 ret := &DeobfuscationFilesUploadResponse{ 4748 ServerResponse: googleapi.ServerResponse{ 4749 Header: res.Header, 4750 HTTPStatusCode: res.StatusCode, 4751 }, 4752 } 4753 target := &ret 4754 if err := gensupport.DecodeResponse(target, res); err != nil { 4755 return nil, err 4756 } 4757 return ret, nil 4758 // { 4759 // "description": "Uploads a new deobfuscation file and attaches to the specified APK.", 4760 // "flatPath": "androidpublisher/v3/applications/{packageName}/edits/{editId}/apks/{apkVersionCode}/deobfuscationFiles/{deobfuscationFileType}", 4761 // "httpMethod": "POST", 4762 // "id": "androidpublisher.edits.deobfuscationfiles.upload", 4763 // "mediaUpload": { 4764 // "accept": [ 4765 // "application/octet-stream" 4766 // ], 4767 // "maxSize": "314572800", 4768 // "protocols": { 4769 // "resumable": { 4770 // "multipart": true, 4771 // "path": "/resumable/upload/androidpublisher/v3/applications/{packageName}/edits/{editId}/apks/{apkVersionCode}/deobfuscationFiles/{deobfuscationFileType}" 4772 // }, 4773 // "simple": { 4774 // "multipart": true, 4775 // "path": "/upload/androidpublisher/v3/applications/{packageName}/edits/{editId}/apks/{apkVersionCode}/deobfuscationFiles/{deobfuscationFileType}" 4776 // } 4777 // } 4778 // }, 4779 // "parameterOrder": [ 4780 // "packageName", 4781 // "editId", 4782 // "apkVersionCode", 4783 // "deobfuscationFileType" 4784 // ], 4785 // "parameters": { 4786 // "apkVersionCode": { 4787 // "description": "The version code of the APK whose Deobfuscation File is being uploaded.", 4788 // "format": "int32", 4789 // "location": "path", 4790 // "required": true, 4791 // "type": "integer" 4792 // }, 4793 // "deobfuscationFileType": { 4794 // "description": "The type of the deobfuscation file.", 4795 // "enum": [ 4796 // "deobfuscationFileTypeUnspecified", 4797 // "proguard", 4798 // "nativeCode" 4799 // ], 4800 // "enumDescriptions": [ 4801 // "Unspecified deobfuscation file type.", 4802 // "Proguard deobfuscation file type.", 4803 // "Native debugging symbols file type." 4804 // ], 4805 // "location": "path", 4806 // "required": true, 4807 // "type": "string" 4808 // }, 4809 // "editId": { 4810 // "description": "Unique identifier for this edit.", 4811 // "location": "path", 4812 // "required": true, 4813 // "type": "string" 4814 // }, 4815 // "packageName": { 4816 // "description": "Unique identifier for the Android app.", 4817 // "location": "path", 4818 // "required": true, 4819 // "type": "string" 4820 // } 4821 // }, 4822 // "path": "androidpublisher/v3/applications/{packageName}/edits/{editId}/apks/{apkVersionCode}/deobfuscationFiles/{deobfuscationFileType}", 4823 // "response": { 4824 // "$ref": "DeobfuscationFilesUploadResponse" 4825 // }, 4826 // "scopes": [ 4827 // "https://www.googleapis.com/auth/androidpublisher" 4828 // ], 4829 // "supportsMediaUpload": true 4830 // } 4831 4832} 4833 4834// method id "androidpublisher.edits.details.get": 4835 4836type EditsDetailsGetCall struct { 4837 s *Service 4838 packageName string 4839 editId string 4840 urlParams_ gensupport.URLParams 4841 ifNoneMatch_ string 4842 ctx_ context.Context 4843 header_ http.Header 4844} 4845 4846// Get: Gets details of an app. 4847// 4848// - editId: Identifier of the edit. 4849// - packageName: Package name of the app. 4850func (r *EditsDetailsService) Get(packageName string, editId string) *EditsDetailsGetCall { 4851 c := &EditsDetailsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} 4852 c.packageName = packageName 4853 c.editId = editId 4854 return c 4855} 4856 4857// Fields allows partial responses to be retrieved. See 4858// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 4859// for more information. 4860func (c *EditsDetailsGetCall) Fields(s ...googleapi.Field) *EditsDetailsGetCall { 4861 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 4862 return c 4863} 4864 4865// IfNoneMatch sets the optional parameter which makes the operation 4866// fail if the object's ETag matches the given value. This is useful for 4867// getting updates only after the object has changed since the last 4868// request. Use googleapi.IsNotModified to check whether the response 4869// error from Do is the result of In-None-Match. 4870func (c *EditsDetailsGetCall) IfNoneMatch(entityTag string) *EditsDetailsGetCall { 4871 c.ifNoneMatch_ = entityTag 4872 return c 4873} 4874 4875// Context sets the context to be used in this call's Do method. Any 4876// pending HTTP request will be aborted if the provided context is 4877// canceled. 4878func (c *EditsDetailsGetCall) Context(ctx context.Context) *EditsDetailsGetCall { 4879 c.ctx_ = ctx 4880 return c 4881} 4882 4883// Header returns an http.Header that can be modified by the caller to 4884// add HTTP headers to the request. 4885func (c *EditsDetailsGetCall) Header() http.Header { 4886 if c.header_ == nil { 4887 c.header_ = make(http.Header) 4888 } 4889 return c.header_ 4890} 4891 4892func (c *EditsDetailsGetCall) doRequest(alt string) (*http.Response, error) { 4893 reqHeaders := make(http.Header) 4894 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 4895 for k, v := range c.header_ { 4896 reqHeaders[k] = v 4897 } 4898 reqHeaders.Set("User-Agent", c.s.userAgent()) 4899 if c.ifNoneMatch_ != "" { 4900 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 4901 } 4902 var body io.Reader = nil 4903 c.urlParams_.Set("alt", alt) 4904 c.urlParams_.Set("prettyPrint", "false") 4905 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/edits/{editId}/details") 4906 urls += "?" + c.urlParams_.Encode() 4907 req, err := http.NewRequest("GET", urls, body) 4908 if err != nil { 4909 return nil, err 4910 } 4911 req.Header = reqHeaders 4912 googleapi.Expand(req.URL, map[string]string{ 4913 "packageName": c.packageName, 4914 "editId": c.editId, 4915 }) 4916 return gensupport.SendRequest(c.ctx_, c.s.client, req) 4917} 4918 4919// Do executes the "androidpublisher.edits.details.get" call. 4920// Exactly one of *AppDetails or error will be non-nil. Any non-2xx 4921// status code is an error. Response headers are in either 4922// *AppDetails.ServerResponse.Header or (if a response was returned at 4923// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified 4924// to check whether the returned error was because 4925// http.StatusNotModified was returned. 4926func (c *EditsDetailsGetCall) Do(opts ...googleapi.CallOption) (*AppDetails, error) { 4927 gensupport.SetOptions(c.urlParams_, opts...) 4928 res, err := c.doRequest("json") 4929 if res != nil && res.StatusCode == http.StatusNotModified { 4930 if res.Body != nil { 4931 res.Body.Close() 4932 } 4933 return nil, &googleapi.Error{ 4934 Code: res.StatusCode, 4935 Header: res.Header, 4936 } 4937 } 4938 if err != nil { 4939 return nil, err 4940 } 4941 defer googleapi.CloseBody(res) 4942 if err := googleapi.CheckResponse(res); err != nil { 4943 return nil, err 4944 } 4945 ret := &AppDetails{ 4946 ServerResponse: googleapi.ServerResponse{ 4947 Header: res.Header, 4948 HTTPStatusCode: res.StatusCode, 4949 }, 4950 } 4951 target := &ret 4952 if err := gensupport.DecodeResponse(target, res); err != nil { 4953 return nil, err 4954 } 4955 return ret, nil 4956 // { 4957 // "description": "Gets details of an app.", 4958 // "flatPath": "androidpublisher/v3/applications/{packageName}/edits/{editId}/details", 4959 // "httpMethod": "GET", 4960 // "id": "androidpublisher.edits.details.get", 4961 // "parameterOrder": [ 4962 // "packageName", 4963 // "editId" 4964 // ], 4965 // "parameters": { 4966 // "editId": { 4967 // "description": "Identifier of the edit.", 4968 // "location": "path", 4969 // "required": true, 4970 // "type": "string" 4971 // }, 4972 // "packageName": { 4973 // "description": "Package name of the app.", 4974 // "location": "path", 4975 // "required": true, 4976 // "type": "string" 4977 // } 4978 // }, 4979 // "path": "androidpublisher/v3/applications/{packageName}/edits/{editId}/details", 4980 // "response": { 4981 // "$ref": "AppDetails" 4982 // }, 4983 // "scopes": [ 4984 // "https://www.googleapis.com/auth/androidpublisher" 4985 // ] 4986 // } 4987 4988} 4989 4990// method id "androidpublisher.edits.details.patch": 4991 4992type EditsDetailsPatchCall struct { 4993 s *Service 4994 packageName string 4995 editId string 4996 appdetails *AppDetails 4997 urlParams_ gensupport.URLParams 4998 ctx_ context.Context 4999 header_ http.Header 5000} 5001 5002// Patch: Patches details of an app. 5003// 5004// - editId: Identifier of the edit. 5005// - packageName: Package name of the app. 5006func (r *EditsDetailsService) Patch(packageName string, editId string, appdetails *AppDetails) *EditsDetailsPatchCall { 5007 c := &EditsDetailsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} 5008 c.packageName = packageName 5009 c.editId = editId 5010 c.appdetails = appdetails 5011 return c 5012} 5013 5014// Fields allows partial responses to be retrieved. See 5015// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 5016// for more information. 5017func (c *EditsDetailsPatchCall) Fields(s ...googleapi.Field) *EditsDetailsPatchCall { 5018 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 5019 return c 5020} 5021 5022// Context sets the context to be used in this call's Do method. Any 5023// pending HTTP request will be aborted if the provided context is 5024// canceled. 5025func (c *EditsDetailsPatchCall) Context(ctx context.Context) *EditsDetailsPatchCall { 5026 c.ctx_ = ctx 5027 return c 5028} 5029 5030// Header returns an http.Header that can be modified by the caller to 5031// add HTTP headers to the request. 5032func (c *EditsDetailsPatchCall) Header() http.Header { 5033 if c.header_ == nil { 5034 c.header_ = make(http.Header) 5035 } 5036 return c.header_ 5037} 5038 5039func (c *EditsDetailsPatchCall) doRequest(alt string) (*http.Response, error) { 5040 reqHeaders := make(http.Header) 5041 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 5042 for k, v := range c.header_ { 5043 reqHeaders[k] = v 5044 } 5045 reqHeaders.Set("User-Agent", c.s.userAgent()) 5046 var body io.Reader = nil 5047 body, err := googleapi.WithoutDataWrapper.JSONReader(c.appdetails) 5048 if err != nil { 5049 return nil, err 5050 } 5051 reqHeaders.Set("Content-Type", "application/json") 5052 c.urlParams_.Set("alt", alt) 5053 c.urlParams_.Set("prettyPrint", "false") 5054 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/edits/{editId}/details") 5055 urls += "?" + c.urlParams_.Encode() 5056 req, err := http.NewRequest("PATCH", urls, body) 5057 if err != nil { 5058 return nil, err 5059 } 5060 req.Header = reqHeaders 5061 googleapi.Expand(req.URL, map[string]string{ 5062 "packageName": c.packageName, 5063 "editId": c.editId, 5064 }) 5065 return gensupport.SendRequest(c.ctx_, c.s.client, req) 5066} 5067 5068// Do executes the "androidpublisher.edits.details.patch" call. 5069// Exactly one of *AppDetails or error will be non-nil. Any non-2xx 5070// status code is an error. Response headers are in either 5071// *AppDetails.ServerResponse.Header or (if a response was returned at 5072// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified 5073// to check whether the returned error was because 5074// http.StatusNotModified was returned. 5075func (c *EditsDetailsPatchCall) Do(opts ...googleapi.CallOption) (*AppDetails, error) { 5076 gensupport.SetOptions(c.urlParams_, opts...) 5077 res, err := c.doRequest("json") 5078 if res != nil && res.StatusCode == http.StatusNotModified { 5079 if res.Body != nil { 5080 res.Body.Close() 5081 } 5082 return nil, &googleapi.Error{ 5083 Code: res.StatusCode, 5084 Header: res.Header, 5085 } 5086 } 5087 if err != nil { 5088 return nil, err 5089 } 5090 defer googleapi.CloseBody(res) 5091 if err := googleapi.CheckResponse(res); err != nil { 5092 return nil, err 5093 } 5094 ret := &AppDetails{ 5095 ServerResponse: googleapi.ServerResponse{ 5096 Header: res.Header, 5097 HTTPStatusCode: res.StatusCode, 5098 }, 5099 } 5100 target := &ret 5101 if err := gensupport.DecodeResponse(target, res); err != nil { 5102 return nil, err 5103 } 5104 return ret, nil 5105 // { 5106 // "description": "Patches details of an app.", 5107 // "flatPath": "androidpublisher/v3/applications/{packageName}/edits/{editId}/details", 5108 // "httpMethod": "PATCH", 5109 // "id": "androidpublisher.edits.details.patch", 5110 // "parameterOrder": [ 5111 // "packageName", 5112 // "editId" 5113 // ], 5114 // "parameters": { 5115 // "editId": { 5116 // "description": "Identifier of the edit.", 5117 // "location": "path", 5118 // "required": true, 5119 // "type": "string" 5120 // }, 5121 // "packageName": { 5122 // "description": "Package name of the app.", 5123 // "location": "path", 5124 // "required": true, 5125 // "type": "string" 5126 // } 5127 // }, 5128 // "path": "androidpublisher/v3/applications/{packageName}/edits/{editId}/details", 5129 // "request": { 5130 // "$ref": "AppDetails" 5131 // }, 5132 // "response": { 5133 // "$ref": "AppDetails" 5134 // }, 5135 // "scopes": [ 5136 // "https://www.googleapis.com/auth/androidpublisher" 5137 // ] 5138 // } 5139 5140} 5141 5142// method id "androidpublisher.edits.details.update": 5143 5144type EditsDetailsUpdateCall struct { 5145 s *Service 5146 packageName string 5147 editId string 5148 appdetails *AppDetails 5149 urlParams_ gensupport.URLParams 5150 ctx_ context.Context 5151 header_ http.Header 5152} 5153 5154// Update: Updates details of an app. 5155// 5156// - editId: Identifier of the edit. 5157// - packageName: Package name of the app. 5158func (r *EditsDetailsService) Update(packageName string, editId string, appdetails *AppDetails) *EditsDetailsUpdateCall { 5159 c := &EditsDetailsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} 5160 c.packageName = packageName 5161 c.editId = editId 5162 c.appdetails = appdetails 5163 return c 5164} 5165 5166// Fields allows partial responses to be retrieved. See 5167// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 5168// for more information. 5169func (c *EditsDetailsUpdateCall) Fields(s ...googleapi.Field) *EditsDetailsUpdateCall { 5170 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 5171 return c 5172} 5173 5174// Context sets the context to be used in this call's Do method. Any 5175// pending HTTP request will be aborted if the provided context is 5176// canceled. 5177func (c *EditsDetailsUpdateCall) Context(ctx context.Context) *EditsDetailsUpdateCall { 5178 c.ctx_ = ctx 5179 return c 5180} 5181 5182// Header returns an http.Header that can be modified by the caller to 5183// add HTTP headers to the request. 5184func (c *EditsDetailsUpdateCall) Header() http.Header { 5185 if c.header_ == nil { 5186 c.header_ = make(http.Header) 5187 } 5188 return c.header_ 5189} 5190 5191func (c *EditsDetailsUpdateCall) doRequest(alt string) (*http.Response, error) { 5192 reqHeaders := make(http.Header) 5193 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 5194 for k, v := range c.header_ { 5195 reqHeaders[k] = v 5196 } 5197 reqHeaders.Set("User-Agent", c.s.userAgent()) 5198 var body io.Reader = nil 5199 body, err := googleapi.WithoutDataWrapper.JSONReader(c.appdetails) 5200 if err != nil { 5201 return nil, err 5202 } 5203 reqHeaders.Set("Content-Type", "application/json") 5204 c.urlParams_.Set("alt", alt) 5205 c.urlParams_.Set("prettyPrint", "false") 5206 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/edits/{editId}/details") 5207 urls += "?" + c.urlParams_.Encode() 5208 req, err := http.NewRequest("PUT", urls, body) 5209 if err != nil { 5210 return nil, err 5211 } 5212 req.Header = reqHeaders 5213 googleapi.Expand(req.URL, map[string]string{ 5214 "packageName": c.packageName, 5215 "editId": c.editId, 5216 }) 5217 return gensupport.SendRequest(c.ctx_, c.s.client, req) 5218} 5219 5220// Do executes the "androidpublisher.edits.details.update" call. 5221// Exactly one of *AppDetails or error will be non-nil. Any non-2xx 5222// status code is an error. Response headers are in either 5223// *AppDetails.ServerResponse.Header or (if a response was returned at 5224// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified 5225// to check whether the returned error was because 5226// http.StatusNotModified was returned. 5227func (c *EditsDetailsUpdateCall) Do(opts ...googleapi.CallOption) (*AppDetails, error) { 5228 gensupport.SetOptions(c.urlParams_, opts...) 5229 res, err := c.doRequest("json") 5230 if res != nil && res.StatusCode == http.StatusNotModified { 5231 if res.Body != nil { 5232 res.Body.Close() 5233 } 5234 return nil, &googleapi.Error{ 5235 Code: res.StatusCode, 5236 Header: res.Header, 5237 } 5238 } 5239 if err != nil { 5240 return nil, err 5241 } 5242 defer googleapi.CloseBody(res) 5243 if err := googleapi.CheckResponse(res); err != nil { 5244 return nil, err 5245 } 5246 ret := &AppDetails{ 5247 ServerResponse: googleapi.ServerResponse{ 5248 Header: res.Header, 5249 HTTPStatusCode: res.StatusCode, 5250 }, 5251 } 5252 target := &ret 5253 if err := gensupport.DecodeResponse(target, res); err != nil { 5254 return nil, err 5255 } 5256 return ret, nil 5257 // { 5258 // "description": "Updates details of an app.", 5259 // "flatPath": "androidpublisher/v3/applications/{packageName}/edits/{editId}/details", 5260 // "httpMethod": "PUT", 5261 // "id": "androidpublisher.edits.details.update", 5262 // "parameterOrder": [ 5263 // "packageName", 5264 // "editId" 5265 // ], 5266 // "parameters": { 5267 // "editId": { 5268 // "description": "Identifier of the edit.", 5269 // "location": "path", 5270 // "required": true, 5271 // "type": "string" 5272 // }, 5273 // "packageName": { 5274 // "description": "Package name of the app.", 5275 // "location": "path", 5276 // "required": true, 5277 // "type": "string" 5278 // } 5279 // }, 5280 // "path": "androidpublisher/v3/applications/{packageName}/edits/{editId}/details", 5281 // "request": { 5282 // "$ref": "AppDetails" 5283 // }, 5284 // "response": { 5285 // "$ref": "AppDetails" 5286 // }, 5287 // "scopes": [ 5288 // "https://www.googleapis.com/auth/androidpublisher" 5289 // ] 5290 // } 5291 5292} 5293 5294// method id "androidpublisher.edits.expansionfiles.get": 5295 5296type EditsExpansionfilesGetCall struct { 5297 s *Service 5298 packageName string 5299 editId string 5300 apkVersionCode int64 5301 expansionFileType string 5302 urlParams_ gensupport.URLParams 5303 ifNoneMatch_ string 5304 ctx_ context.Context 5305 header_ http.Header 5306} 5307 5308// Get: Fetches the expansion file configuration for the specified APK. 5309// 5310// - apkVersionCode: The version code of the APK whose expansion file 5311// configuration is being read or modified. 5312// - editId: Identifier of the edit. 5313// - expansionFileType: The file type of the file configuration which is 5314// being read or modified. 5315// - packageName: Package name of the app. 5316func (r *EditsExpansionfilesService) Get(packageName string, editId string, apkVersionCode int64, expansionFileType string) *EditsExpansionfilesGetCall { 5317 c := &EditsExpansionfilesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} 5318 c.packageName = packageName 5319 c.editId = editId 5320 c.apkVersionCode = apkVersionCode 5321 c.expansionFileType = expansionFileType 5322 return c 5323} 5324 5325// Fields allows partial responses to be retrieved. See 5326// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 5327// for more information. 5328func (c *EditsExpansionfilesGetCall) Fields(s ...googleapi.Field) *EditsExpansionfilesGetCall { 5329 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 5330 return c 5331} 5332 5333// IfNoneMatch sets the optional parameter which makes the operation 5334// fail if the object's ETag matches the given value. This is useful for 5335// getting updates only after the object has changed since the last 5336// request. Use googleapi.IsNotModified to check whether the response 5337// error from Do is the result of In-None-Match. 5338func (c *EditsExpansionfilesGetCall) IfNoneMatch(entityTag string) *EditsExpansionfilesGetCall { 5339 c.ifNoneMatch_ = entityTag 5340 return c 5341} 5342 5343// Context sets the context to be used in this call's Do method. Any 5344// pending HTTP request will be aborted if the provided context is 5345// canceled. 5346func (c *EditsExpansionfilesGetCall) Context(ctx context.Context) *EditsExpansionfilesGetCall { 5347 c.ctx_ = ctx 5348 return c 5349} 5350 5351// Header returns an http.Header that can be modified by the caller to 5352// add HTTP headers to the request. 5353func (c *EditsExpansionfilesGetCall) Header() http.Header { 5354 if c.header_ == nil { 5355 c.header_ = make(http.Header) 5356 } 5357 return c.header_ 5358} 5359 5360func (c *EditsExpansionfilesGetCall) doRequest(alt string) (*http.Response, error) { 5361 reqHeaders := make(http.Header) 5362 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 5363 for k, v := range c.header_ { 5364 reqHeaders[k] = v 5365 } 5366 reqHeaders.Set("User-Agent", c.s.userAgent()) 5367 if c.ifNoneMatch_ != "" { 5368 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 5369 } 5370 var body io.Reader = nil 5371 c.urlParams_.Set("alt", alt) 5372 c.urlParams_.Set("prettyPrint", "false") 5373 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/edits/{editId}/apks/{apkVersionCode}/expansionFiles/{expansionFileType}") 5374 urls += "?" + c.urlParams_.Encode() 5375 req, err := http.NewRequest("GET", urls, body) 5376 if err != nil { 5377 return nil, err 5378 } 5379 req.Header = reqHeaders 5380 googleapi.Expand(req.URL, map[string]string{ 5381 "packageName": c.packageName, 5382 "editId": c.editId, 5383 "apkVersionCode": strconv.FormatInt(c.apkVersionCode, 10), 5384 "expansionFileType": c.expansionFileType, 5385 }) 5386 return gensupport.SendRequest(c.ctx_, c.s.client, req) 5387} 5388 5389// Do executes the "androidpublisher.edits.expansionfiles.get" call. 5390// Exactly one of *ExpansionFile or error will be non-nil. Any non-2xx 5391// status code is an error. Response headers are in either 5392// *ExpansionFile.ServerResponse.Header or (if a response was returned 5393// at all) in error.(*googleapi.Error).Header. Use 5394// googleapi.IsNotModified to check whether the returned error was 5395// because http.StatusNotModified was returned. 5396func (c *EditsExpansionfilesGetCall) Do(opts ...googleapi.CallOption) (*ExpansionFile, error) { 5397 gensupport.SetOptions(c.urlParams_, opts...) 5398 res, err := c.doRequest("json") 5399 if res != nil && res.StatusCode == http.StatusNotModified { 5400 if res.Body != nil { 5401 res.Body.Close() 5402 } 5403 return nil, &googleapi.Error{ 5404 Code: res.StatusCode, 5405 Header: res.Header, 5406 } 5407 } 5408 if err != nil { 5409 return nil, err 5410 } 5411 defer googleapi.CloseBody(res) 5412 if err := googleapi.CheckResponse(res); err != nil { 5413 return nil, err 5414 } 5415 ret := &ExpansionFile{ 5416 ServerResponse: googleapi.ServerResponse{ 5417 Header: res.Header, 5418 HTTPStatusCode: res.StatusCode, 5419 }, 5420 } 5421 target := &ret 5422 if err := gensupport.DecodeResponse(target, res); err != nil { 5423 return nil, err 5424 } 5425 return ret, nil 5426 // { 5427 // "description": "Fetches the expansion file configuration for the specified APK.", 5428 // "flatPath": "androidpublisher/v3/applications/{packageName}/edits/{editId}/apks/{apkVersionCode}/expansionFiles/{expansionFileType}", 5429 // "httpMethod": "GET", 5430 // "id": "androidpublisher.edits.expansionfiles.get", 5431 // "parameterOrder": [ 5432 // "packageName", 5433 // "editId", 5434 // "apkVersionCode", 5435 // "expansionFileType" 5436 // ], 5437 // "parameters": { 5438 // "apkVersionCode": { 5439 // "description": "The version code of the APK whose expansion file configuration is being read or modified.", 5440 // "format": "int32", 5441 // "location": "path", 5442 // "required": true, 5443 // "type": "integer" 5444 // }, 5445 // "editId": { 5446 // "description": "Identifier of the edit.", 5447 // "location": "path", 5448 // "required": true, 5449 // "type": "string" 5450 // }, 5451 // "expansionFileType": { 5452 // "description": "The file type of the file configuration which is being read or modified.", 5453 // "enum": [ 5454 // "expansionFileTypeUnspecified", 5455 // "main", 5456 // "patch" 5457 // ], 5458 // "enumDescriptions": [ 5459 // "Unspecified expansion file type.", 5460 // "Main expansion file.", 5461 // "Patch expansion file." 5462 // ], 5463 // "location": "path", 5464 // "required": true, 5465 // "type": "string" 5466 // }, 5467 // "packageName": { 5468 // "description": "Package name of the app.", 5469 // "location": "path", 5470 // "required": true, 5471 // "type": "string" 5472 // } 5473 // }, 5474 // "path": "androidpublisher/v3/applications/{packageName}/edits/{editId}/apks/{apkVersionCode}/expansionFiles/{expansionFileType}", 5475 // "response": { 5476 // "$ref": "ExpansionFile" 5477 // }, 5478 // "scopes": [ 5479 // "https://www.googleapis.com/auth/androidpublisher" 5480 // ] 5481 // } 5482 5483} 5484 5485// method id "androidpublisher.edits.expansionfiles.patch": 5486 5487type EditsExpansionfilesPatchCall struct { 5488 s *Service 5489 packageName string 5490 editId string 5491 apkVersionCode int64 5492 expansionFileType string 5493 expansionfile *ExpansionFile 5494 urlParams_ gensupport.URLParams 5495 ctx_ context.Context 5496 header_ http.Header 5497} 5498 5499// Patch: Patches the APK's expansion file configuration to reference 5500// another APK's expansion file. To add a new expansion file use the 5501// Upload method. 5502// 5503// - apkVersionCode: The version code of the APK whose expansion file 5504// configuration is being read or modified. 5505// - editId: Identifier of the edit. 5506// - expansionFileType: The file type of the expansion file 5507// configuration which is being updated. 5508// - packageName: Package name of the app. 5509func (r *EditsExpansionfilesService) Patch(packageName string, editId string, apkVersionCode int64, expansionFileType string, expansionfile *ExpansionFile) *EditsExpansionfilesPatchCall { 5510 c := &EditsExpansionfilesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} 5511 c.packageName = packageName 5512 c.editId = editId 5513 c.apkVersionCode = apkVersionCode 5514 c.expansionFileType = expansionFileType 5515 c.expansionfile = expansionfile 5516 return c 5517} 5518 5519// Fields allows partial responses to be retrieved. See 5520// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 5521// for more information. 5522func (c *EditsExpansionfilesPatchCall) Fields(s ...googleapi.Field) *EditsExpansionfilesPatchCall { 5523 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 5524 return c 5525} 5526 5527// Context sets the context to be used in this call's Do method. Any 5528// pending HTTP request will be aborted if the provided context is 5529// canceled. 5530func (c *EditsExpansionfilesPatchCall) Context(ctx context.Context) *EditsExpansionfilesPatchCall { 5531 c.ctx_ = ctx 5532 return c 5533} 5534 5535// Header returns an http.Header that can be modified by the caller to 5536// add HTTP headers to the request. 5537func (c *EditsExpansionfilesPatchCall) Header() http.Header { 5538 if c.header_ == nil { 5539 c.header_ = make(http.Header) 5540 } 5541 return c.header_ 5542} 5543 5544func (c *EditsExpansionfilesPatchCall) doRequest(alt string) (*http.Response, error) { 5545 reqHeaders := make(http.Header) 5546 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 5547 for k, v := range c.header_ { 5548 reqHeaders[k] = v 5549 } 5550 reqHeaders.Set("User-Agent", c.s.userAgent()) 5551 var body io.Reader = nil 5552 body, err := googleapi.WithoutDataWrapper.JSONReader(c.expansionfile) 5553 if err != nil { 5554 return nil, err 5555 } 5556 reqHeaders.Set("Content-Type", "application/json") 5557 c.urlParams_.Set("alt", alt) 5558 c.urlParams_.Set("prettyPrint", "false") 5559 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/edits/{editId}/apks/{apkVersionCode}/expansionFiles/{expansionFileType}") 5560 urls += "?" + c.urlParams_.Encode() 5561 req, err := http.NewRequest("PATCH", urls, body) 5562 if err != nil { 5563 return nil, err 5564 } 5565 req.Header = reqHeaders 5566 googleapi.Expand(req.URL, map[string]string{ 5567 "packageName": c.packageName, 5568 "editId": c.editId, 5569 "apkVersionCode": strconv.FormatInt(c.apkVersionCode, 10), 5570 "expansionFileType": c.expansionFileType, 5571 }) 5572 return gensupport.SendRequest(c.ctx_, c.s.client, req) 5573} 5574 5575// Do executes the "androidpublisher.edits.expansionfiles.patch" call. 5576// Exactly one of *ExpansionFile or error will be non-nil. Any non-2xx 5577// status code is an error. Response headers are in either 5578// *ExpansionFile.ServerResponse.Header or (if a response was returned 5579// at all) in error.(*googleapi.Error).Header. Use 5580// googleapi.IsNotModified to check whether the returned error was 5581// because http.StatusNotModified was returned. 5582func (c *EditsExpansionfilesPatchCall) Do(opts ...googleapi.CallOption) (*ExpansionFile, error) { 5583 gensupport.SetOptions(c.urlParams_, opts...) 5584 res, err := c.doRequest("json") 5585 if res != nil && res.StatusCode == http.StatusNotModified { 5586 if res.Body != nil { 5587 res.Body.Close() 5588 } 5589 return nil, &googleapi.Error{ 5590 Code: res.StatusCode, 5591 Header: res.Header, 5592 } 5593 } 5594 if err != nil { 5595 return nil, err 5596 } 5597 defer googleapi.CloseBody(res) 5598 if err := googleapi.CheckResponse(res); err != nil { 5599 return nil, err 5600 } 5601 ret := &ExpansionFile{ 5602 ServerResponse: googleapi.ServerResponse{ 5603 Header: res.Header, 5604 HTTPStatusCode: res.StatusCode, 5605 }, 5606 } 5607 target := &ret 5608 if err := gensupport.DecodeResponse(target, res); err != nil { 5609 return nil, err 5610 } 5611 return ret, nil 5612 // { 5613 // "description": "Patches the APK's expansion file configuration to reference another APK's expansion file. To add a new expansion file use the Upload method.", 5614 // "flatPath": "androidpublisher/v3/applications/{packageName}/edits/{editId}/apks/{apkVersionCode}/expansionFiles/{expansionFileType}", 5615 // "httpMethod": "PATCH", 5616 // "id": "androidpublisher.edits.expansionfiles.patch", 5617 // "parameterOrder": [ 5618 // "packageName", 5619 // "editId", 5620 // "apkVersionCode", 5621 // "expansionFileType" 5622 // ], 5623 // "parameters": { 5624 // "apkVersionCode": { 5625 // "description": "The version code of the APK whose expansion file configuration is being read or modified.", 5626 // "format": "int32", 5627 // "location": "path", 5628 // "required": true, 5629 // "type": "integer" 5630 // }, 5631 // "editId": { 5632 // "description": "Identifier of the edit.", 5633 // "location": "path", 5634 // "required": true, 5635 // "type": "string" 5636 // }, 5637 // "expansionFileType": { 5638 // "description": "The file type of the expansion file configuration which is being updated.", 5639 // "enum": [ 5640 // "expansionFileTypeUnspecified", 5641 // "main", 5642 // "patch" 5643 // ], 5644 // "enumDescriptions": [ 5645 // "Unspecified expansion file type.", 5646 // "Main expansion file.", 5647 // "Patch expansion file." 5648 // ], 5649 // "location": "path", 5650 // "required": true, 5651 // "type": "string" 5652 // }, 5653 // "packageName": { 5654 // "description": "Package name of the app.", 5655 // "location": "path", 5656 // "required": true, 5657 // "type": "string" 5658 // } 5659 // }, 5660 // "path": "androidpublisher/v3/applications/{packageName}/edits/{editId}/apks/{apkVersionCode}/expansionFiles/{expansionFileType}", 5661 // "request": { 5662 // "$ref": "ExpansionFile" 5663 // }, 5664 // "response": { 5665 // "$ref": "ExpansionFile" 5666 // }, 5667 // "scopes": [ 5668 // "https://www.googleapis.com/auth/androidpublisher" 5669 // ] 5670 // } 5671 5672} 5673 5674// method id "androidpublisher.edits.expansionfiles.update": 5675 5676type EditsExpansionfilesUpdateCall struct { 5677 s *Service 5678 packageName string 5679 editId string 5680 apkVersionCode int64 5681 expansionFileType string 5682 expansionfile *ExpansionFile 5683 urlParams_ gensupport.URLParams 5684 ctx_ context.Context 5685 header_ http.Header 5686} 5687 5688// Update: Updates the APK's expansion file configuration to reference 5689// another APK's expansion file. To add a new expansion file use the 5690// Upload method. 5691// 5692// - apkVersionCode: The version code of the APK whose expansion file 5693// configuration is being read or modified. 5694// - editId: Identifier of the edit. 5695// - expansionFileType: The file type of the file configuration which is 5696// being read or modified. 5697// - packageName: Package name of the app. 5698func (r *EditsExpansionfilesService) Update(packageName string, editId string, apkVersionCode int64, expansionFileType string, expansionfile *ExpansionFile) *EditsExpansionfilesUpdateCall { 5699 c := &EditsExpansionfilesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} 5700 c.packageName = packageName 5701 c.editId = editId 5702 c.apkVersionCode = apkVersionCode 5703 c.expansionFileType = expansionFileType 5704 c.expansionfile = expansionfile 5705 return c 5706} 5707 5708// Fields allows partial responses to be retrieved. See 5709// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 5710// for more information. 5711func (c *EditsExpansionfilesUpdateCall) Fields(s ...googleapi.Field) *EditsExpansionfilesUpdateCall { 5712 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 5713 return c 5714} 5715 5716// Context sets the context to be used in this call's Do method. Any 5717// pending HTTP request will be aborted if the provided context is 5718// canceled. 5719func (c *EditsExpansionfilesUpdateCall) Context(ctx context.Context) *EditsExpansionfilesUpdateCall { 5720 c.ctx_ = ctx 5721 return c 5722} 5723 5724// Header returns an http.Header that can be modified by the caller to 5725// add HTTP headers to the request. 5726func (c *EditsExpansionfilesUpdateCall) Header() http.Header { 5727 if c.header_ == nil { 5728 c.header_ = make(http.Header) 5729 } 5730 return c.header_ 5731} 5732 5733func (c *EditsExpansionfilesUpdateCall) doRequest(alt string) (*http.Response, error) { 5734 reqHeaders := make(http.Header) 5735 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 5736 for k, v := range c.header_ { 5737 reqHeaders[k] = v 5738 } 5739 reqHeaders.Set("User-Agent", c.s.userAgent()) 5740 var body io.Reader = nil 5741 body, err := googleapi.WithoutDataWrapper.JSONReader(c.expansionfile) 5742 if err != nil { 5743 return nil, err 5744 } 5745 reqHeaders.Set("Content-Type", "application/json") 5746 c.urlParams_.Set("alt", alt) 5747 c.urlParams_.Set("prettyPrint", "false") 5748 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/edits/{editId}/apks/{apkVersionCode}/expansionFiles/{expansionFileType}") 5749 urls += "?" + c.urlParams_.Encode() 5750 req, err := http.NewRequest("PUT", urls, body) 5751 if err != nil { 5752 return nil, err 5753 } 5754 req.Header = reqHeaders 5755 googleapi.Expand(req.URL, map[string]string{ 5756 "packageName": c.packageName, 5757 "editId": c.editId, 5758 "apkVersionCode": strconv.FormatInt(c.apkVersionCode, 10), 5759 "expansionFileType": c.expansionFileType, 5760 }) 5761 return gensupport.SendRequest(c.ctx_, c.s.client, req) 5762} 5763 5764// Do executes the "androidpublisher.edits.expansionfiles.update" call. 5765// Exactly one of *ExpansionFile or error will be non-nil. Any non-2xx 5766// status code is an error. Response headers are in either 5767// *ExpansionFile.ServerResponse.Header or (if a response was returned 5768// at all) in error.(*googleapi.Error).Header. Use 5769// googleapi.IsNotModified to check whether the returned error was 5770// because http.StatusNotModified was returned. 5771func (c *EditsExpansionfilesUpdateCall) Do(opts ...googleapi.CallOption) (*ExpansionFile, error) { 5772 gensupport.SetOptions(c.urlParams_, opts...) 5773 res, err := c.doRequest("json") 5774 if res != nil && res.StatusCode == http.StatusNotModified { 5775 if res.Body != nil { 5776 res.Body.Close() 5777 } 5778 return nil, &googleapi.Error{ 5779 Code: res.StatusCode, 5780 Header: res.Header, 5781 } 5782 } 5783 if err != nil { 5784 return nil, err 5785 } 5786 defer googleapi.CloseBody(res) 5787 if err := googleapi.CheckResponse(res); err != nil { 5788 return nil, err 5789 } 5790 ret := &ExpansionFile{ 5791 ServerResponse: googleapi.ServerResponse{ 5792 Header: res.Header, 5793 HTTPStatusCode: res.StatusCode, 5794 }, 5795 } 5796 target := &ret 5797 if err := gensupport.DecodeResponse(target, res); err != nil { 5798 return nil, err 5799 } 5800 return ret, nil 5801 // { 5802 // "description": "Updates the APK's expansion file configuration to reference another APK's expansion file. To add a new expansion file use the Upload method.", 5803 // "flatPath": "androidpublisher/v3/applications/{packageName}/edits/{editId}/apks/{apkVersionCode}/expansionFiles/{expansionFileType}", 5804 // "httpMethod": "PUT", 5805 // "id": "androidpublisher.edits.expansionfiles.update", 5806 // "parameterOrder": [ 5807 // "packageName", 5808 // "editId", 5809 // "apkVersionCode", 5810 // "expansionFileType" 5811 // ], 5812 // "parameters": { 5813 // "apkVersionCode": { 5814 // "description": "The version code of the APK whose expansion file configuration is being read or modified.", 5815 // "format": "int32", 5816 // "location": "path", 5817 // "required": true, 5818 // "type": "integer" 5819 // }, 5820 // "editId": { 5821 // "description": "Identifier of the edit.", 5822 // "location": "path", 5823 // "required": true, 5824 // "type": "string" 5825 // }, 5826 // "expansionFileType": { 5827 // "description": "The file type of the file configuration which is being read or modified.", 5828 // "enum": [ 5829 // "expansionFileTypeUnspecified", 5830 // "main", 5831 // "patch" 5832 // ], 5833 // "enumDescriptions": [ 5834 // "Unspecified expansion file type.", 5835 // "Main expansion file.", 5836 // "Patch expansion file." 5837 // ], 5838 // "location": "path", 5839 // "required": true, 5840 // "type": "string" 5841 // }, 5842 // "packageName": { 5843 // "description": "Package name of the app.", 5844 // "location": "path", 5845 // "required": true, 5846 // "type": "string" 5847 // } 5848 // }, 5849 // "path": "androidpublisher/v3/applications/{packageName}/edits/{editId}/apks/{apkVersionCode}/expansionFiles/{expansionFileType}", 5850 // "request": { 5851 // "$ref": "ExpansionFile" 5852 // }, 5853 // "response": { 5854 // "$ref": "ExpansionFile" 5855 // }, 5856 // "scopes": [ 5857 // "https://www.googleapis.com/auth/androidpublisher" 5858 // ] 5859 // } 5860 5861} 5862 5863// method id "androidpublisher.edits.expansionfiles.upload": 5864 5865type EditsExpansionfilesUploadCall struct { 5866 s *Service 5867 packageName string 5868 editId string 5869 apkVersionCode int64 5870 expansionFileType string 5871 urlParams_ gensupport.URLParams 5872 mediaInfo_ *gensupport.MediaInfo 5873 ctx_ context.Context 5874 header_ http.Header 5875} 5876 5877// Upload: Uploads a new expansion file and attaches to the specified 5878// APK. 5879// 5880// - apkVersionCode: The version code of the APK whose expansion file 5881// configuration is being read or modified. 5882// - editId: Identifier of the edit. 5883// - expansionFileType: The file type of the expansion file 5884// configuration which is being updated. 5885// - packageName: Package name of the app. 5886func (r *EditsExpansionfilesService) Upload(packageName string, editId string, apkVersionCode int64, expansionFileType string) *EditsExpansionfilesUploadCall { 5887 c := &EditsExpansionfilesUploadCall{s: r.s, urlParams_: make(gensupport.URLParams)} 5888 c.packageName = packageName 5889 c.editId = editId 5890 c.apkVersionCode = apkVersionCode 5891 c.expansionFileType = expansionFileType 5892 return c 5893} 5894 5895// Media specifies the media to upload in one or more chunks. The chunk 5896// size may be controlled by supplying a MediaOption generated by 5897// googleapi.ChunkSize. The chunk size defaults to 5898// googleapi.DefaultUploadChunkSize.The Content-Type header used in the 5899// upload request will be determined by sniffing the contents of r, 5900// unless a MediaOption generated by googleapi.ContentType is 5901// supplied. 5902// At most one of Media and ResumableMedia may be set. 5903func (c *EditsExpansionfilesUploadCall) Media(r io.Reader, options ...googleapi.MediaOption) *EditsExpansionfilesUploadCall { 5904 c.mediaInfo_ = gensupport.NewInfoFromMedia(r, options) 5905 return c 5906} 5907 5908// ResumableMedia specifies the media to upload in chunks and can be 5909// canceled with ctx. 5910// 5911// Deprecated: use Media instead. 5912// 5913// At most one of Media and ResumableMedia may be set. mediaType 5914// identifies the MIME media type of the upload, such as "image/png". If 5915// mediaType is "", it will be auto-detected. The provided ctx will 5916// supersede any context previously provided to the Context method. 5917func (c *EditsExpansionfilesUploadCall) ResumableMedia(ctx context.Context, r io.ReaderAt, size int64, mediaType string) *EditsExpansionfilesUploadCall { 5918 c.ctx_ = ctx 5919 c.mediaInfo_ = gensupport.NewInfoFromResumableMedia(r, size, mediaType) 5920 return c 5921} 5922 5923// ProgressUpdater provides a callback function that will be called 5924// after every chunk. It should be a low-latency function in order to 5925// not slow down the upload operation. This should only be called when 5926// using ResumableMedia (as opposed to Media). 5927func (c *EditsExpansionfilesUploadCall) ProgressUpdater(pu googleapi.ProgressUpdater) *EditsExpansionfilesUploadCall { 5928 c.mediaInfo_.SetProgressUpdater(pu) 5929 return c 5930} 5931 5932// Fields allows partial responses to be retrieved. See 5933// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 5934// for more information. 5935func (c *EditsExpansionfilesUploadCall) Fields(s ...googleapi.Field) *EditsExpansionfilesUploadCall { 5936 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 5937 return c 5938} 5939 5940// Context sets the context to be used in this call's Do method. Any 5941// pending HTTP request will be aborted if the provided context is 5942// canceled. 5943// This context will supersede any context previously provided to the 5944// ResumableMedia method. 5945func (c *EditsExpansionfilesUploadCall) Context(ctx context.Context) *EditsExpansionfilesUploadCall { 5946 c.ctx_ = ctx 5947 return c 5948} 5949 5950// Header returns an http.Header that can be modified by the caller to 5951// add HTTP headers to the request. 5952func (c *EditsExpansionfilesUploadCall) Header() http.Header { 5953 if c.header_ == nil { 5954 c.header_ = make(http.Header) 5955 } 5956 return c.header_ 5957} 5958 5959func (c *EditsExpansionfilesUploadCall) doRequest(alt string) (*http.Response, error) { 5960 reqHeaders := make(http.Header) 5961 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 5962 for k, v := range c.header_ { 5963 reqHeaders[k] = v 5964 } 5965 reqHeaders.Set("User-Agent", c.s.userAgent()) 5966 var body io.Reader = nil 5967 c.urlParams_.Set("alt", alt) 5968 c.urlParams_.Set("prettyPrint", "false") 5969 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/edits/{editId}/apks/{apkVersionCode}/expansionFiles/{expansionFileType}") 5970 if c.mediaInfo_ != nil { 5971 urls = googleapi.ResolveRelative(c.s.BasePath, "/upload/androidpublisher/v3/applications/{packageName}/edits/{editId}/apks/{apkVersionCode}/expansionFiles/{expansionFileType}") 5972 c.urlParams_.Set("uploadType", c.mediaInfo_.UploadType()) 5973 } 5974 if body == nil { 5975 body = new(bytes.Buffer) 5976 reqHeaders.Set("Content-Type", "application/json") 5977 } 5978 body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) 5979 defer cleanup() 5980 urls += "?" + c.urlParams_.Encode() 5981 req, err := http.NewRequest("POST", urls, body) 5982 if err != nil { 5983 return nil, err 5984 } 5985 req.Header = reqHeaders 5986 req.GetBody = getBody 5987 googleapi.Expand(req.URL, map[string]string{ 5988 "packageName": c.packageName, 5989 "editId": c.editId, 5990 "apkVersionCode": strconv.FormatInt(c.apkVersionCode, 10), 5991 "expansionFileType": c.expansionFileType, 5992 }) 5993 return gensupport.SendRequest(c.ctx_, c.s.client, req) 5994} 5995 5996// Do executes the "androidpublisher.edits.expansionfiles.upload" call. 5997// Exactly one of *ExpansionFilesUploadResponse or error will be 5998// non-nil. Any non-2xx status code is an error. Response headers are in 5999// either *ExpansionFilesUploadResponse.ServerResponse.Header or (if a 6000// response was returned at all) in error.(*googleapi.Error).Header. Use 6001// googleapi.IsNotModified to check whether the returned error was 6002// because http.StatusNotModified was returned. 6003func (c *EditsExpansionfilesUploadCall) Do(opts ...googleapi.CallOption) (*ExpansionFilesUploadResponse, error) { 6004 gensupport.SetOptions(c.urlParams_, opts...) 6005 res, err := c.doRequest("json") 6006 if res != nil && res.StatusCode == http.StatusNotModified { 6007 if res.Body != nil { 6008 res.Body.Close() 6009 } 6010 return nil, &googleapi.Error{ 6011 Code: res.StatusCode, 6012 Header: res.Header, 6013 } 6014 } 6015 if err != nil { 6016 return nil, err 6017 } 6018 defer googleapi.CloseBody(res) 6019 if err := googleapi.CheckResponse(res); err != nil { 6020 return nil, err 6021 } 6022 rx := c.mediaInfo_.ResumableUpload(res.Header.Get("Location")) 6023 if rx != nil { 6024 rx.Client = c.s.client 6025 rx.UserAgent = c.s.userAgent() 6026 ctx := c.ctx_ 6027 if ctx == nil { 6028 ctx = context.TODO() 6029 } 6030 res, err = rx.Upload(ctx) 6031 if err != nil { 6032 return nil, err 6033 } 6034 defer res.Body.Close() 6035 if err := googleapi.CheckResponse(res); err != nil { 6036 return nil, err 6037 } 6038 } 6039 ret := &ExpansionFilesUploadResponse{ 6040 ServerResponse: googleapi.ServerResponse{ 6041 Header: res.Header, 6042 HTTPStatusCode: res.StatusCode, 6043 }, 6044 } 6045 target := &ret 6046 if err := gensupport.DecodeResponse(target, res); err != nil { 6047 return nil, err 6048 } 6049 return ret, nil 6050 // { 6051 // "description": "Uploads a new expansion file and attaches to the specified APK.", 6052 // "flatPath": "androidpublisher/v3/applications/{packageName}/edits/{editId}/apks/{apkVersionCode}/expansionFiles/{expansionFileType}", 6053 // "httpMethod": "POST", 6054 // "id": "androidpublisher.edits.expansionfiles.upload", 6055 // "mediaUpload": { 6056 // "accept": [ 6057 // "application/octet-stream" 6058 // ], 6059 // "maxSize": "2147483648", 6060 // "protocols": { 6061 // "resumable": { 6062 // "multipart": true, 6063 // "path": "/resumable/upload/androidpublisher/v3/applications/{packageName}/edits/{editId}/apks/{apkVersionCode}/expansionFiles/{expansionFileType}" 6064 // }, 6065 // "simple": { 6066 // "multipart": true, 6067 // "path": "/upload/androidpublisher/v3/applications/{packageName}/edits/{editId}/apks/{apkVersionCode}/expansionFiles/{expansionFileType}" 6068 // } 6069 // } 6070 // }, 6071 // "parameterOrder": [ 6072 // "packageName", 6073 // "editId", 6074 // "apkVersionCode", 6075 // "expansionFileType" 6076 // ], 6077 // "parameters": { 6078 // "apkVersionCode": { 6079 // "description": "The version code of the APK whose expansion file configuration is being read or modified.", 6080 // "format": "int32", 6081 // "location": "path", 6082 // "required": true, 6083 // "type": "integer" 6084 // }, 6085 // "editId": { 6086 // "description": "Identifier of the edit.", 6087 // "location": "path", 6088 // "required": true, 6089 // "type": "string" 6090 // }, 6091 // "expansionFileType": { 6092 // "description": "The file type of the expansion file configuration which is being updated.", 6093 // "enum": [ 6094 // "expansionFileTypeUnspecified", 6095 // "main", 6096 // "patch" 6097 // ], 6098 // "enumDescriptions": [ 6099 // "Unspecified expansion file type.", 6100 // "Main expansion file.", 6101 // "Patch expansion file." 6102 // ], 6103 // "location": "path", 6104 // "required": true, 6105 // "type": "string" 6106 // }, 6107 // "packageName": { 6108 // "description": "Package name of the app.", 6109 // "location": "path", 6110 // "required": true, 6111 // "type": "string" 6112 // } 6113 // }, 6114 // "path": "androidpublisher/v3/applications/{packageName}/edits/{editId}/apks/{apkVersionCode}/expansionFiles/{expansionFileType}", 6115 // "response": { 6116 // "$ref": "ExpansionFilesUploadResponse" 6117 // }, 6118 // "scopes": [ 6119 // "https://www.googleapis.com/auth/androidpublisher" 6120 // ], 6121 // "supportsMediaUpload": true 6122 // } 6123 6124} 6125 6126// method id "androidpublisher.edits.images.delete": 6127 6128type EditsImagesDeleteCall struct { 6129 s *Service 6130 packageName string 6131 editId string 6132 language string 6133 imageType string 6134 imageId string 6135 urlParams_ gensupport.URLParams 6136 ctx_ context.Context 6137 header_ http.Header 6138} 6139 6140// Delete: Deletes the image (specified by id) from the edit. 6141// 6142// - editId: Identifier of the edit. 6143// - imageId: Unique identifier an image within the set of images 6144// attached to this edit. 6145// - imageType: Type of the Image. 6146// - language: Language localization code (a BCP-47 language tag; for 6147// example, "de-AT" for Austrian German). 6148// - packageName: Package name of the app. 6149func (r *EditsImagesService) Delete(packageName string, editId string, language string, imageType string, imageId string) *EditsImagesDeleteCall { 6150 c := &EditsImagesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} 6151 c.packageName = packageName 6152 c.editId = editId 6153 c.language = language 6154 c.imageType = imageType 6155 c.imageId = imageId 6156 return c 6157} 6158 6159// Fields allows partial responses to be retrieved. See 6160// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 6161// for more information. 6162func (c *EditsImagesDeleteCall) Fields(s ...googleapi.Field) *EditsImagesDeleteCall { 6163 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 6164 return c 6165} 6166 6167// Context sets the context to be used in this call's Do method. Any 6168// pending HTTP request will be aborted if the provided context is 6169// canceled. 6170func (c *EditsImagesDeleteCall) Context(ctx context.Context) *EditsImagesDeleteCall { 6171 c.ctx_ = ctx 6172 return c 6173} 6174 6175// Header returns an http.Header that can be modified by the caller to 6176// add HTTP headers to the request. 6177func (c *EditsImagesDeleteCall) Header() http.Header { 6178 if c.header_ == nil { 6179 c.header_ = make(http.Header) 6180 } 6181 return c.header_ 6182} 6183 6184func (c *EditsImagesDeleteCall) doRequest(alt string) (*http.Response, error) { 6185 reqHeaders := make(http.Header) 6186 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 6187 for k, v := range c.header_ { 6188 reqHeaders[k] = v 6189 } 6190 reqHeaders.Set("User-Agent", c.s.userAgent()) 6191 var body io.Reader = nil 6192 c.urlParams_.Set("alt", alt) 6193 c.urlParams_.Set("prettyPrint", "false") 6194 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/edits/{editId}/listings/{language}/{imageType}/{imageId}") 6195 urls += "?" + c.urlParams_.Encode() 6196 req, err := http.NewRequest("DELETE", urls, body) 6197 if err != nil { 6198 return nil, err 6199 } 6200 req.Header = reqHeaders 6201 googleapi.Expand(req.URL, map[string]string{ 6202 "packageName": c.packageName, 6203 "editId": c.editId, 6204 "language": c.language, 6205 "imageType": c.imageType, 6206 "imageId": c.imageId, 6207 }) 6208 return gensupport.SendRequest(c.ctx_, c.s.client, req) 6209} 6210 6211// Do executes the "androidpublisher.edits.images.delete" call. 6212func (c *EditsImagesDeleteCall) Do(opts ...googleapi.CallOption) error { 6213 gensupport.SetOptions(c.urlParams_, opts...) 6214 res, err := c.doRequest("json") 6215 if err != nil { 6216 return err 6217 } 6218 defer googleapi.CloseBody(res) 6219 if err := googleapi.CheckResponse(res); err != nil { 6220 return err 6221 } 6222 return nil 6223 // { 6224 // "description": "Deletes the image (specified by id) from the edit.", 6225 // "flatPath": "androidpublisher/v3/applications/{packageName}/edits/{editId}/listings/{language}/{imageType}/{imageId}", 6226 // "httpMethod": "DELETE", 6227 // "id": "androidpublisher.edits.images.delete", 6228 // "parameterOrder": [ 6229 // "packageName", 6230 // "editId", 6231 // "language", 6232 // "imageType", 6233 // "imageId" 6234 // ], 6235 // "parameters": { 6236 // "editId": { 6237 // "description": "Identifier of the edit.", 6238 // "location": "path", 6239 // "required": true, 6240 // "type": "string" 6241 // }, 6242 // "imageId": { 6243 // "description": "Unique identifier an image within the set of images attached to this edit.", 6244 // "location": "path", 6245 // "required": true, 6246 // "type": "string" 6247 // }, 6248 // "imageType": { 6249 // "description": "Type of the Image.", 6250 // "enum": [ 6251 // "appImageTypeUnspecified", 6252 // "phoneScreenshots", 6253 // "sevenInchScreenshots", 6254 // "tenInchScreenshots", 6255 // "tvScreenshots", 6256 // "wearScreenshots", 6257 // "icon", 6258 // "featureGraphic", 6259 // "tvBanner" 6260 // ], 6261 // "enumDescriptions": [ 6262 // "Unspecified type. Do not use.", 6263 // "Phone screenshot.", 6264 // "Seven inch screenshot.", 6265 // "Ten inch screenshot.", 6266 // "TV screenshot.", 6267 // "Wear screenshot.", 6268 // "Icon.", 6269 // "Feature graphic.", 6270 // "TV banner." 6271 // ], 6272 // "location": "path", 6273 // "required": true, 6274 // "type": "string" 6275 // }, 6276 // "language": { 6277 // "description": "Language localization code (a BCP-47 language tag; for example, \"de-AT\" for Austrian German).", 6278 // "location": "path", 6279 // "required": true, 6280 // "type": "string" 6281 // }, 6282 // "packageName": { 6283 // "description": "Package name of the app.", 6284 // "location": "path", 6285 // "required": true, 6286 // "type": "string" 6287 // } 6288 // }, 6289 // "path": "androidpublisher/v3/applications/{packageName}/edits/{editId}/listings/{language}/{imageType}/{imageId}", 6290 // "scopes": [ 6291 // "https://www.googleapis.com/auth/androidpublisher" 6292 // ] 6293 // } 6294 6295} 6296 6297// method id "androidpublisher.edits.images.deleteall": 6298 6299type EditsImagesDeleteallCall struct { 6300 s *Service 6301 packageName string 6302 editId string 6303 language string 6304 imageType string 6305 urlParams_ gensupport.URLParams 6306 ctx_ context.Context 6307 header_ http.Header 6308} 6309 6310// Deleteall: Deletes all images for the specified language and image 6311// type. Returns an empty response if no images are found. 6312// 6313// - editId: Identifier of the edit. 6314// - imageType: Type of the Image. Providing an image type that refers 6315// to no images is a no-op. 6316// - language: Language localization code (a BCP-47 language tag; for 6317// example, "de-AT" for Austrian German). Providing a language that is 6318// not supported by the App is a no-op. 6319// - packageName: Package name of the app. 6320func (r *EditsImagesService) Deleteall(packageName string, editId string, language string, imageType string) *EditsImagesDeleteallCall { 6321 c := &EditsImagesDeleteallCall{s: r.s, urlParams_: make(gensupport.URLParams)} 6322 c.packageName = packageName 6323 c.editId = editId 6324 c.language = language 6325 c.imageType = imageType 6326 return c 6327} 6328 6329// Fields allows partial responses to be retrieved. See 6330// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 6331// for more information. 6332func (c *EditsImagesDeleteallCall) Fields(s ...googleapi.Field) *EditsImagesDeleteallCall { 6333 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 6334 return c 6335} 6336 6337// Context sets the context to be used in this call's Do method. Any 6338// pending HTTP request will be aborted if the provided context is 6339// canceled. 6340func (c *EditsImagesDeleteallCall) Context(ctx context.Context) *EditsImagesDeleteallCall { 6341 c.ctx_ = ctx 6342 return c 6343} 6344 6345// Header returns an http.Header that can be modified by the caller to 6346// add HTTP headers to the request. 6347func (c *EditsImagesDeleteallCall) Header() http.Header { 6348 if c.header_ == nil { 6349 c.header_ = make(http.Header) 6350 } 6351 return c.header_ 6352} 6353 6354func (c *EditsImagesDeleteallCall) doRequest(alt string) (*http.Response, error) { 6355 reqHeaders := make(http.Header) 6356 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 6357 for k, v := range c.header_ { 6358 reqHeaders[k] = v 6359 } 6360 reqHeaders.Set("User-Agent", c.s.userAgent()) 6361 var body io.Reader = nil 6362 c.urlParams_.Set("alt", alt) 6363 c.urlParams_.Set("prettyPrint", "false") 6364 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/edits/{editId}/listings/{language}/{imageType}") 6365 urls += "?" + c.urlParams_.Encode() 6366 req, err := http.NewRequest("DELETE", urls, body) 6367 if err != nil { 6368 return nil, err 6369 } 6370 req.Header = reqHeaders 6371 googleapi.Expand(req.URL, map[string]string{ 6372 "packageName": c.packageName, 6373 "editId": c.editId, 6374 "language": c.language, 6375 "imageType": c.imageType, 6376 }) 6377 return gensupport.SendRequest(c.ctx_, c.s.client, req) 6378} 6379 6380// Do executes the "androidpublisher.edits.images.deleteall" call. 6381// Exactly one of *ImagesDeleteAllResponse or error will be non-nil. Any 6382// non-2xx status code is an error. Response headers are in either 6383// *ImagesDeleteAllResponse.ServerResponse.Header or (if a response was 6384// returned at all) in error.(*googleapi.Error).Header. Use 6385// googleapi.IsNotModified to check whether the returned error was 6386// because http.StatusNotModified was returned. 6387func (c *EditsImagesDeleteallCall) Do(opts ...googleapi.CallOption) (*ImagesDeleteAllResponse, error) { 6388 gensupport.SetOptions(c.urlParams_, opts...) 6389 res, err := c.doRequest("json") 6390 if res != nil && res.StatusCode == http.StatusNotModified { 6391 if res.Body != nil { 6392 res.Body.Close() 6393 } 6394 return nil, &googleapi.Error{ 6395 Code: res.StatusCode, 6396 Header: res.Header, 6397 } 6398 } 6399 if err != nil { 6400 return nil, err 6401 } 6402 defer googleapi.CloseBody(res) 6403 if err := googleapi.CheckResponse(res); err != nil { 6404 return nil, err 6405 } 6406 ret := &ImagesDeleteAllResponse{ 6407 ServerResponse: googleapi.ServerResponse{ 6408 Header: res.Header, 6409 HTTPStatusCode: res.StatusCode, 6410 }, 6411 } 6412 target := &ret 6413 if err := gensupport.DecodeResponse(target, res); err != nil { 6414 return nil, err 6415 } 6416 return ret, nil 6417 // { 6418 // "description": "Deletes all images for the specified language and image type. Returns an empty response if no images are found.", 6419 // "flatPath": "androidpublisher/v3/applications/{packageName}/edits/{editId}/listings/{language}/{imageType}", 6420 // "httpMethod": "DELETE", 6421 // "id": "androidpublisher.edits.images.deleteall", 6422 // "parameterOrder": [ 6423 // "packageName", 6424 // "editId", 6425 // "language", 6426 // "imageType" 6427 // ], 6428 // "parameters": { 6429 // "editId": { 6430 // "description": "Identifier of the edit.", 6431 // "location": "path", 6432 // "required": true, 6433 // "type": "string" 6434 // }, 6435 // "imageType": { 6436 // "description": "Type of the Image. Providing an image type that refers to no images is a no-op.", 6437 // "enum": [ 6438 // "appImageTypeUnspecified", 6439 // "phoneScreenshots", 6440 // "sevenInchScreenshots", 6441 // "tenInchScreenshots", 6442 // "tvScreenshots", 6443 // "wearScreenshots", 6444 // "icon", 6445 // "featureGraphic", 6446 // "tvBanner" 6447 // ], 6448 // "enumDescriptions": [ 6449 // "Unspecified type. Do not use.", 6450 // "Phone screenshot.", 6451 // "Seven inch screenshot.", 6452 // "Ten inch screenshot.", 6453 // "TV screenshot.", 6454 // "Wear screenshot.", 6455 // "Icon.", 6456 // "Feature graphic.", 6457 // "TV banner." 6458 // ], 6459 // "location": "path", 6460 // "required": true, 6461 // "type": "string" 6462 // }, 6463 // "language": { 6464 // "description": "Language localization code (a BCP-47 language tag; for example, \"de-AT\" for Austrian German). Providing a language that is not supported by the App is a no-op.", 6465 // "location": "path", 6466 // "required": true, 6467 // "type": "string" 6468 // }, 6469 // "packageName": { 6470 // "description": "Package name of the app.", 6471 // "location": "path", 6472 // "required": true, 6473 // "type": "string" 6474 // } 6475 // }, 6476 // "path": "androidpublisher/v3/applications/{packageName}/edits/{editId}/listings/{language}/{imageType}", 6477 // "response": { 6478 // "$ref": "ImagesDeleteAllResponse" 6479 // }, 6480 // "scopes": [ 6481 // "https://www.googleapis.com/auth/androidpublisher" 6482 // ] 6483 // } 6484 6485} 6486 6487// method id "androidpublisher.edits.images.list": 6488 6489type EditsImagesListCall struct { 6490 s *Service 6491 packageName string 6492 editId string 6493 language string 6494 imageType string 6495 urlParams_ gensupport.URLParams 6496 ifNoneMatch_ string 6497 ctx_ context.Context 6498 header_ http.Header 6499} 6500 6501// List: Lists all images. The response may be empty. 6502// 6503// - editId: Identifier of the edit. 6504// - imageType: Type of the Image. Providing an image type that refers 6505// to no images will return an empty response. 6506// - language: Language localization code (a BCP-47 language tag; for 6507// example, "de-AT" for Austrian German). There must be a store 6508// listing for the specified language. 6509// - packageName: Package name of the app. 6510func (r *EditsImagesService) List(packageName string, editId string, language string, imageType string) *EditsImagesListCall { 6511 c := &EditsImagesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 6512 c.packageName = packageName 6513 c.editId = editId 6514 c.language = language 6515 c.imageType = imageType 6516 return c 6517} 6518 6519// Fields allows partial responses to be retrieved. See 6520// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 6521// for more information. 6522func (c *EditsImagesListCall) Fields(s ...googleapi.Field) *EditsImagesListCall { 6523 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 6524 return c 6525} 6526 6527// IfNoneMatch sets the optional parameter which makes the operation 6528// fail if the object's ETag matches the given value. This is useful for 6529// getting updates only after the object has changed since the last 6530// request. Use googleapi.IsNotModified to check whether the response 6531// error from Do is the result of In-None-Match. 6532func (c *EditsImagesListCall) IfNoneMatch(entityTag string) *EditsImagesListCall { 6533 c.ifNoneMatch_ = entityTag 6534 return c 6535} 6536 6537// Context sets the context to be used in this call's Do method. Any 6538// pending HTTP request will be aborted if the provided context is 6539// canceled. 6540func (c *EditsImagesListCall) Context(ctx context.Context) *EditsImagesListCall { 6541 c.ctx_ = ctx 6542 return c 6543} 6544 6545// Header returns an http.Header that can be modified by the caller to 6546// add HTTP headers to the request. 6547func (c *EditsImagesListCall) Header() http.Header { 6548 if c.header_ == nil { 6549 c.header_ = make(http.Header) 6550 } 6551 return c.header_ 6552} 6553 6554func (c *EditsImagesListCall) doRequest(alt string) (*http.Response, error) { 6555 reqHeaders := make(http.Header) 6556 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 6557 for k, v := range c.header_ { 6558 reqHeaders[k] = v 6559 } 6560 reqHeaders.Set("User-Agent", c.s.userAgent()) 6561 if c.ifNoneMatch_ != "" { 6562 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 6563 } 6564 var body io.Reader = nil 6565 c.urlParams_.Set("alt", alt) 6566 c.urlParams_.Set("prettyPrint", "false") 6567 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/edits/{editId}/listings/{language}/{imageType}") 6568 urls += "?" + c.urlParams_.Encode() 6569 req, err := http.NewRequest("GET", urls, body) 6570 if err != nil { 6571 return nil, err 6572 } 6573 req.Header = reqHeaders 6574 googleapi.Expand(req.URL, map[string]string{ 6575 "packageName": c.packageName, 6576 "editId": c.editId, 6577 "language": c.language, 6578 "imageType": c.imageType, 6579 }) 6580 return gensupport.SendRequest(c.ctx_, c.s.client, req) 6581} 6582 6583// Do executes the "androidpublisher.edits.images.list" call. 6584// Exactly one of *ImagesListResponse or error will be non-nil. Any 6585// non-2xx status code is an error. Response headers are in either 6586// *ImagesListResponse.ServerResponse.Header or (if a response was 6587// returned at all) in error.(*googleapi.Error).Header. Use 6588// googleapi.IsNotModified to check whether the returned error was 6589// because http.StatusNotModified was returned. 6590func (c *EditsImagesListCall) Do(opts ...googleapi.CallOption) (*ImagesListResponse, error) { 6591 gensupport.SetOptions(c.urlParams_, opts...) 6592 res, err := c.doRequest("json") 6593 if res != nil && res.StatusCode == http.StatusNotModified { 6594 if res.Body != nil { 6595 res.Body.Close() 6596 } 6597 return nil, &googleapi.Error{ 6598 Code: res.StatusCode, 6599 Header: res.Header, 6600 } 6601 } 6602 if err != nil { 6603 return nil, err 6604 } 6605 defer googleapi.CloseBody(res) 6606 if err := googleapi.CheckResponse(res); err != nil { 6607 return nil, err 6608 } 6609 ret := &ImagesListResponse{ 6610 ServerResponse: googleapi.ServerResponse{ 6611 Header: res.Header, 6612 HTTPStatusCode: res.StatusCode, 6613 }, 6614 } 6615 target := &ret 6616 if err := gensupport.DecodeResponse(target, res); err != nil { 6617 return nil, err 6618 } 6619 return ret, nil 6620 // { 6621 // "description": "Lists all images. The response may be empty.", 6622 // "flatPath": "androidpublisher/v3/applications/{packageName}/edits/{editId}/listings/{language}/{imageType}", 6623 // "httpMethod": "GET", 6624 // "id": "androidpublisher.edits.images.list", 6625 // "parameterOrder": [ 6626 // "packageName", 6627 // "editId", 6628 // "language", 6629 // "imageType" 6630 // ], 6631 // "parameters": { 6632 // "editId": { 6633 // "description": "Identifier of the edit.", 6634 // "location": "path", 6635 // "required": true, 6636 // "type": "string" 6637 // }, 6638 // "imageType": { 6639 // "description": "Type of the Image. Providing an image type that refers to no images will return an empty response.", 6640 // "enum": [ 6641 // "appImageTypeUnspecified", 6642 // "phoneScreenshots", 6643 // "sevenInchScreenshots", 6644 // "tenInchScreenshots", 6645 // "tvScreenshots", 6646 // "wearScreenshots", 6647 // "icon", 6648 // "featureGraphic", 6649 // "tvBanner" 6650 // ], 6651 // "enumDescriptions": [ 6652 // "Unspecified type. Do not use.", 6653 // "Phone screenshot.", 6654 // "Seven inch screenshot.", 6655 // "Ten inch screenshot.", 6656 // "TV screenshot.", 6657 // "Wear screenshot.", 6658 // "Icon.", 6659 // "Feature graphic.", 6660 // "TV banner." 6661 // ], 6662 // "location": "path", 6663 // "required": true, 6664 // "type": "string" 6665 // }, 6666 // "language": { 6667 // "description": "Language localization code (a BCP-47 language tag; for example, \"de-AT\" for Austrian German). There must be a store listing for the specified language.", 6668 // "location": "path", 6669 // "required": true, 6670 // "type": "string" 6671 // }, 6672 // "packageName": { 6673 // "description": "Package name of the app.", 6674 // "location": "path", 6675 // "required": true, 6676 // "type": "string" 6677 // } 6678 // }, 6679 // "path": "androidpublisher/v3/applications/{packageName}/edits/{editId}/listings/{language}/{imageType}", 6680 // "response": { 6681 // "$ref": "ImagesListResponse" 6682 // }, 6683 // "scopes": [ 6684 // "https://www.googleapis.com/auth/androidpublisher" 6685 // ] 6686 // } 6687 6688} 6689 6690// method id "androidpublisher.edits.images.upload": 6691 6692type EditsImagesUploadCall struct { 6693 s *Service 6694 packageName string 6695 editId string 6696 language string 6697 imageType string 6698 urlParams_ gensupport.URLParams 6699 mediaInfo_ *gensupport.MediaInfo 6700 ctx_ context.Context 6701 header_ http.Header 6702} 6703 6704// Upload: Uploads an image of the specified language and image type, 6705// and adds to the edit. 6706// 6707// - editId: Identifier of the edit. 6708// - imageType: Type of the Image. 6709// - language: Language localization code (a BCP-47 language tag; for 6710// example, "de-AT" for Austrian German). Providing a language that is 6711// not supported by the App is a no-op. 6712// - packageName: Package name of the app. 6713func (r *EditsImagesService) Upload(packageName string, editId string, language string, imageType string) *EditsImagesUploadCall { 6714 c := &EditsImagesUploadCall{s: r.s, urlParams_: make(gensupport.URLParams)} 6715 c.packageName = packageName 6716 c.editId = editId 6717 c.language = language 6718 c.imageType = imageType 6719 return c 6720} 6721 6722// Media specifies the media to upload in one or more chunks. The chunk 6723// size may be controlled by supplying a MediaOption generated by 6724// googleapi.ChunkSize. The chunk size defaults to 6725// googleapi.DefaultUploadChunkSize.The Content-Type header used in the 6726// upload request will be determined by sniffing the contents of r, 6727// unless a MediaOption generated by googleapi.ContentType is 6728// supplied. 6729// At most one of Media and ResumableMedia may be set. 6730func (c *EditsImagesUploadCall) Media(r io.Reader, options ...googleapi.MediaOption) *EditsImagesUploadCall { 6731 c.mediaInfo_ = gensupport.NewInfoFromMedia(r, options) 6732 return c 6733} 6734 6735// ResumableMedia specifies the media to upload in chunks and can be 6736// canceled with ctx. 6737// 6738// Deprecated: use Media instead. 6739// 6740// At most one of Media and ResumableMedia may be set. mediaType 6741// identifies the MIME media type of the upload, such as "image/png". If 6742// mediaType is "", it will be auto-detected. The provided ctx will 6743// supersede any context previously provided to the Context method. 6744func (c *EditsImagesUploadCall) ResumableMedia(ctx context.Context, r io.ReaderAt, size int64, mediaType string) *EditsImagesUploadCall { 6745 c.ctx_ = ctx 6746 c.mediaInfo_ = gensupport.NewInfoFromResumableMedia(r, size, mediaType) 6747 return c 6748} 6749 6750// ProgressUpdater provides a callback function that will be called 6751// after every chunk. It should be a low-latency function in order to 6752// not slow down the upload operation. This should only be called when 6753// using ResumableMedia (as opposed to Media). 6754func (c *EditsImagesUploadCall) ProgressUpdater(pu googleapi.ProgressUpdater) *EditsImagesUploadCall { 6755 c.mediaInfo_.SetProgressUpdater(pu) 6756 return c 6757} 6758 6759// Fields allows partial responses to be retrieved. See 6760// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 6761// for more information. 6762func (c *EditsImagesUploadCall) Fields(s ...googleapi.Field) *EditsImagesUploadCall { 6763 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 6764 return c 6765} 6766 6767// Context sets the context to be used in this call's Do method. Any 6768// pending HTTP request will be aborted if the provided context is 6769// canceled. 6770// This context will supersede any context previously provided to the 6771// ResumableMedia method. 6772func (c *EditsImagesUploadCall) Context(ctx context.Context) *EditsImagesUploadCall { 6773 c.ctx_ = ctx 6774 return c 6775} 6776 6777// Header returns an http.Header that can be modified by the caller to 6778// add HTTP headers to the request. 6779func (c *EditsImagesUploadCall) Header() http.Header { 6780 if c.header_ == nil { 6781 c.header_ = make(http.Header) 6782 } 6783 return c.header_ 6784} 6785 6786func (c *EditsImagesUploadCall) doRequest(alt string) (*http.Response, error) { 6787 reqHeaders := make(http.Header) 6788 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 6789 for k, v := range c.header_ { 6790 reqHeaders[k] = v 6791 } 6792 reqHeaders.Set("User-Agent", c.s.userAgent()) 6793 var body io.Reader = nil 6794 c.urlParams_.Set("alt", alt) 6795 c.urlParams_.Set("prettyPrint", "false") 6796 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/edits/{editId}/listings/{language}/{imageType}") 6797 if c.mediaInfo_ != nil { 6798 urls = googleapi.ResolveRelative(c.s.BasePath, "/upload/androidpublisher/v3/applications/{packageName}/edits/{editId}/listings/{language}/{imageType}") 6799 c.urlParams_.Set("uploadType", c.mediaInfo_.UploadType()) 6800 } 6801 if body == nil { 6802 body = new(bytes.Buffer) 6803 reqHeaders.Set("Content-Type", "application/json") 6804 } 6805 body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) 6806 defer cleanup() 6807 urls += "?" + c.urlParams_.Encode() 6808 req, err := http.NewRequest("POST", urls, body) 6809 if err != nil { 6810 return nil, err 6811 } 6812 req.Header = reqHeaders 6813 req.GetBody = getBody 6814 googleapi.Expand(req.URL, map[string]string{ 6815 "packageName": c.packageName, 6816 "editId": c.editId, 6817 "language": c.language, 6818 "imageType": c.imageType, 6819 }) 6820 return gensupport.SendRequest(c.ctx_, c.s.client, req) 6821} 6822 6823// Do executes the "androidpublisher.edits.images.upload" call. 6824// Exactly one of *ImagesUploadResponse or error will be non-nil. Any 6825// non-2xx status code is an error. Response headers are in either 6826// *ImagesUploadResponse.ServerResponse.Header or (if a response was 6827// returned at all) in error.(*googleapi.Error).Header. Use 6828// googleapi.IsNotModified to check whether the returned error was 6829// because http.StatusNotModified was returned. 6830func (c *EditsImagesUploadCall) Do(opts ...googleapi.CallOption) (*ImagesUploadResponse, error) { 6831 gensupport.SetOptions(c.urlParams_, opts...) 6832 res, err := c.doRequest("json") 6833 if res != nil && res.StatusCode == http.StatusNotModified { 6834 if res.Body != nil { 6835 res.Body.Close() 6836 } 6837 return nil, &googleapi.Error{ 6838 Code: res.StatusCode, 6839 Header: res.Header, 6840 } 6841 } 6842 if err != nil { 6843 return nil, err 6844 } 6845 defer googleapi.CloseBody(res) 6846 if err := googleapi.CheckResponse(res); err != nil { 6847 return nil, err 6848 } 6849 rx := c.mediaInfo_.ResumableUpload(res.Header.Get("Location")) 6850 if rx != nil { 6851 rx.Client = c.s.client 6852 rx.UserAgent = c.s.userAgent() 6853 ctx := c.ctx_ 6854 if ctx == nil { 6855 ctx = context.TODO() 6856 } 6857 res, err = rx.Upload(ctx) 6858 if err != nil { 6859 return nil, err 6860 } 6861 defer res.Body.Close() 6862 if err := googleapi.CheckResponse(res); err != nil { 6863 return nil, err 6864 } 6865 } 6866 ret := &ImagesUploadResponse{ 6867 ServerResponse: googleapi.ServerResponse{ 6868 Header: res.Header, 6869 HTTPStatusCode: res.StatusCode, 6870 }, 6871 } 6872 target := &ret 6873 if err := gensupport.DecodeResponse(target, res); err != nil { 6874 return nil, err 6875 } 6876 return ret, nil 6877 // { 6878 // "description": "Uploads an image of the specified language and image type, and adds to the edit.", 6879 // "flatPath": "androidpublisher/v3/applications/{packageName}/edits/{editId}/listings/{language}/{imageType}", 6880 // "httpMethod": "POST", 6881 // "id": "androidpublisher.edits.images.upload", 6882 // "mediaUpload": { 6883 // "accept": [ 6884 // "image/*" 6885 // ], 6886 // "maxSize": "15728640", 6887 // "protocols": { 6888 // "resumable": { 6889 // "multipart": true, 6890 // "path": "/resumable/upload/androidpublisher/v3/applications/{packageName}/edits/{editId}/listings/{language}/{imageType}" 6891 // }, 6892 // "simple": { 6893 // "multipart": true, 6894 // "path": "/upload/androidpublisher/v3/applications/{packageName}/edits/{editId}/listings/{language}/{imageType}" 6895 // } 6896 // } 6897 // }, 6898 // "parameterOrder": [ 6899 // "packageName", 6900 // "editId", 6901 // "language", 6902 // "imageType" 6903 // ], 6904 // "parameters": { 6905 // "editId": { 6906 // "description": "Identifier of the edit.", 6907 // "location": "path", 6908 // "required": true, 6909 // "type": "string" 6910 // }, 6911 // "imageType": { 6912 // "description": "Type of the Image.", 6913 // "enum": [ 6914 // "appImageTypeUnspecified", 6915 // "phoneScreenshots", 6916 // "sevenInchScreenshots", 6917 // "tenInchScreenshots", 6918 // "tvScreenshots", 6919 // "wearScreenshots", 6920 // "icon", 6921 // "featureGraphic", 6922 // "tvBanner" 6923 // ], 6924 // "enumDescriptions": [ 6925 // "Unspecified type. Do not use.", 6926 // "Phone screenshot.", 6927 // "Seven inch screenshot.", 6928 // "Ten inch screenshot.", 6929 // "TV screenshot.", 6930 // "Wear screenshot.", 6931 // "Icon.", 6932 // "Feature graphic.", 6933 // "TV banner." 6934 // ], 6935 // "location": "path", 6936 // "required": true, 6937 // "type": "string" 6938 // }, 6939 // "language": { 6940 // "description": "Language localization code (a BCP-47 language tag; for example, \"de-AT\" for Austrian German). Providing a language that is not supported by the App is a no-op.", 6941 // "location": "path", 6942 // "required": true, 6943 // "type": "string" 6944 // }, 6945 // "packageName": { 6946 // "description": "Package name of the app.", 6947 // "location": "path", 6948 // "required": true, 6949 // "type": "string" 6950 // } 6951 // }, 6952 // "path": "androidpublisher/v3/applications/{packageName}/edits/{editId}/listings/{language}/{imageType}", 6953 // "response": { 6954 // "$ref": "ImagesUploadResponse" 6955 // }, 6956 // "scopes": [ 6957 // "https://www.googleapis.com/auth/androidpublisher" 6958 // ], 6959 // "supportsMediaUpload": true 6960 // } 6961 6962} 6963 6964// method id "androidpublisher.edits.listings.delete": 6965 6966type EditsListingsDeleteCall struct { 6967 s *Service 6968 packageName string 6969 editId string 6970 language string 6971 urlParams_ gensupport.URLParams 6972 ctx_ context.Context 6973 header_ http.Header 6974} 6975 6976// Delete: Deletes a localized store listing. 6977// 6978// - editId: Identifier of the edit. 6979// - language: Language localization code (a BCP-47 language tag; for 6980// example, "de-AT" for Austrian German). 6981// - packageName: Package name of the app. 6982func (r *EditsListingsService) Delete(packageName string, editId string, language string) *EditsListingsDeleteCall { 6983 c := &EditsListingsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} 6984 c.packageName = packageName 6985 c.editId = editId 6986 c.language = language 6987 return c 6988} 6989 6990// Fields allows partial responses to be retrieved. See 6991// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 6992// for more information. 6993func (c *EditsListingsDeleteCall) Fields(s ...googleapi.Field) *EditsListingsDeleteCall { 6994 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 6995 return c 6996} 6997 6998// Context sets the context to be used in this call's Do method. Any 6999// pending HTTP request will be aborted if the provided context is 7000// canceled. 7001func (c *EditsListingsDeleteCall) Context(ctx context.Context) *EditsListingsDeleteCall { 7002 c.ctx_ = ctx 7003 return c 7004} 7005 7006// Header returns an http.Header that can be modified by the caller to 7007// add HTTP headers to the request. 7008func (c *EditsListingsDeleteCall) Header() http.Header { 7009 if c.header_ == nil { 7010 c.header_ = make(http.Header) 7011 } 7012 return c.header_ 7013} 7014 7015func (c *EditsListingsDeleteCall) doRequest(alt string) (*http.Response, error) { 7016 reqHeaders := make(http.Header) 7017 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 7018 for k, v := range c.header_ { 7019 reqHeaders[k] = v 7020 } 7021 reqHeaders.Set("User-Agent", c.s.userAgent()) 7022 var body io.Reader = nil 7023 c.urlParams_.Set("alt", alt) 7024 c.urlParams_.Set("prettyPrint", "false") 7025 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/edits/{editId}/listings/{language}") 7026 urls += "?" + c.urlParams_.Encode() 7027 req, err := http.NewRequest("DELETE", urls, body) 7028 if err != nil { 7029 return nil, err 7030 } 7031 req.Header = reqHeaders 7032 googleapi.Expand(req.URL, map[string]string{ 7033 "packageName": c.packageName, 7034 "editId": c.editId, 7035 "language": c.language, 7036 }) 7037 return gensupport.SendRequest(c.ctx_, c.s.client, req) 7038} 7039 7040// Do executes the "androidpublisher.edits.listings.delete" call. 7041func (c *EditsListingsDeleteCall) Do(opts ...googleapi.CallOption) error { 7042 gensupport.SetOptions(c.urlParams_, opts...) 7043 res, err := c.doRequest("json") 7044 if err != nil { 7045 return err 7046 } 7047 defer googleapi.CloseBody(res) 7048 if err := googleapi.CheckResponse(res); err != nil { 7049 return err 7050 } 7051 return nil 7052 // { 7053 // "description": "Deletes a localized store listing.", 7054 // "flatPath": "androidpublisher/v3/applications/{packageName}/edits/{editId}/listings/{language}", 7055 // "httpMethod": "DELETE", 7056 // "id": "androidpublisher.edits.listings.delete", 7057 // "parameterOrder": [ 7058 // "packageName", 7059 // "editId", 7060 // "language" 7061 // ], 7062 // "parameters": { 7063 // "editId": { 7064 // "description": "Identifier of the edit.", 7065 // "location": "path", 7066 // "required": true, 7067 // "type": "string" 7068 // }, 7069 // "language": { 7070 // "description": "Language localization code (a BCP-47 language tag; for example, \"de-AT\" for Austrian German).", 7071 // "location": "path", 7072 // "required": true, 7073 // "type": "string" 7074 // }, 7075 // "packageName": { 7076 // "description": "Package name of the app.", 7077 // "location": "path", 7078 // "required": true, 7079 // "type": "string" 7080 // } 7081 // }, 7082 // "path": "androidpublisher/v3/applications/{packageName}/edits/{editId}/listings/{language}", 7083 // "scopes": [ 7084 // "https://www.googleapis.com/auth/androidpublisher" 7085 // ] 7086 // } 7087 7088} 7089 7090// method id "androidpublisher.edits.listings.deleteall": 7091 7092type EditsListingsDeleteallCall struct { 7093 s *Service 7094 packageName string 7095 editId string 7096 urlParams_ gensupport.URLParams 7097 ctx_ context.Context 7098 header_ http.Header 7099} 7100 7101// Deleteall: Deletes all store listings. 7102// 7103// - editId: Identifier of the edit. 7104// - packageName: Package name of the app. 7105func (r *EditsListingsService) Deleteall(packageName string, editId string) *EditsListingsDeleteallCall { 7106 c := &EditsListingsDeleteallCall{s: r.s, urlParams_: make(gensupport.URLParams)} 7107 c.packageName = packageName 7108 c.editId = editId 7109 return c 7110} 7111 7112// Fields allows partial responses to be retrieved. See 7113// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 7114// for more information. 7115func (c *EditsListingsDeleteallCall) Fields(s ...googleapi.Field) *EditsListingsDeleteallCall { 7116 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 7117 return c 7118} 7119 7120// Context sets the context to be used in this call's Do method. Any 7121// pending HTTP request will be aborted if the provided context is 7122// canceled. 7123func (c *EditsListingsDeleteallCall) Context(ctx context.Context) *EditsListingsDeleteallCall { 7124 c.ctx_ = ctx 7125 return c 7126} 7127 7128// Header returns an http.Header that can be modified by the caller to 7129// add HTTP headers to the request. 7130func (c *EditsListingsDeleteallCall) Header() http.Header { 7131 if c.header_ == nil { 7132 c.header_ = make(http.Header) 7133 } 7134 return c.header_ 7135} 7136 7137func (c *EditsListingsDeleteallCall) doRequest(alt string) (*http.Response, error) { 7138 reqHeaders := make(http.Header) 7139 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 7140 for k, v := range c.header_ { 7141 reqHeaders[k] = v 7142 } 7143 reqHeaders.Set("User-Agent", c.s.userAgent()) 7144 var body io.Reader = nil 7145 c.urlParams_.Set("alt", alt) 7146 c.urlParams_.Set("prettyPrint", "false") 7147 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/edits/{editId}/listings") 7148 urls += "?" + c.urlParams_.Encode() 7149 req, err := http.NewRequest("DELETE", urls, body) 7150 if err != nil { 7151 return nil, err 7152 } 7153 req.Header = reqHeaders 7154 googleapi.Expand(req.URL, map[string]string{ 7155 "packageName": c.packageName, 7156 "editId": c.editId, 7157 }) 7158 return gensupport.SendRequest(c.ctx_, c.s.client, req) 7159} 7160 7161// Do executes the "androidpublisher.edits.listings.deleteall" call. 7162func (c *EditsListingsDeleteallCall) Do(opts ...googleapi.CallOption) error { 7163 gensupport.SetOptions(c.urlParams_, opts...) 7164 res, err := c.doRequest("json") 7165 if err != nil { 7166 return err 7167 } 7168 defer googleapi.CloseBody(res) 7169 if err := googleapi.CheckResponse(res); err != nil { 7170 return err 7171 } 7172 return nil 7173 // { 7174 // "description": "Deletes all store listings.", 7175 // "flatPath": "androidpublisher/v3/applications/{packageName}/edits/{editId}/listings", 7176 // "httpMethod": "DELETE", 7177 // "id": "androidpublisher.edits.listings.deleteall", 7178 // "parameterOrder": [ 7179 // "packageName", 7180 // "editId" 7181 // ], 7182 // "parameters": { 7183 // "editId": { 7184 // "description": "Identifier of the edit.", 7185 // "location": "path", 7186 // "required": true, 7187 // "type": "string" 7188 // }, 7189 // "packageName": { 7190 // "description": "Package name of the app.", 7191 // "location": "path", 7192 // "required": true, 7193 // "type": "string" 7194 // } 7195 // }, 7196 // "path": "androidpublisher/v3/applications/{packageName}/edits/{editId}/listings", 7197 // "scopes": [ 7198 // "https://www.googleapis.com/auth/androidpublisher" 7199 // ] 7200 // } 7201 7202} 7203 7204// method id "androidpublisher.edits.listings.get": 7205 7206type EditsListingsGetCall struct { 7207 s *Service 7208 packageName string 7209 editId string 7210 language string 7211 urlParams_ gensupport.URLParams 7212 ifNoneMatch_ string 7213 ctx_ context.Context 7214 header_ http.Header 7215} 7216 7217// Get: Gets a localized store listing. 7218// 7219// - editId: Identifier of the edit. 7220// - language: Language localization code (a BCP-47 language tag; for 7221// example, "de-AT" for Austrian German). 7222// - packageName: Package name of the app. 7223func (r *EditsListingsService) Get(packageName string, editId string, language string) *EditsListingsGetCall { 7224 c := &EditsListingsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} 7225 c.packageName = packageName 7226 c.editId = editId 7227 c.language = language 7228 return c 7229} 7230 7231// Fields allows partial responses to be retrieved. See 7232// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 7233// for more information. 7234func (c *EditsListingsGetCall) Fields(s ...googleapi.Field) *EditsListingsGetCall { 7235 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 7236 return c 7237} 7238 7239// IfNoneMatch sets the optional parameter which makes the operation 7240// fail if the object's ETag matches the given value. This is useful for 7241// getting updates only after the object has changed since the last 7242// request. Use googleapi.IsNotModified to check whether the response 7243// error from Do is the result of In-None-Match. 7244func (c *EditsListingsGetCall) IfNoneMatch(entityTag string) *EditsListingsGetCall { 7245 c.ifNoneMatch_ = entityTag 7246 return c 7247} 7248 7249// Context sets the context to be used in this call's Do method. Any 7250// pending HTTP request will be aborted if the provided context is 7251// canceled. 7252func (c *EditsListingsGetCall) Context(ctx context.Context) *EditsListingsGetCall { 7253 c.ctx_ = ctx 7254 return c 7255} 7256 7257// Header returns an http.Header that can be modified by the caller to 7258// add HTTP headers to the request. 7259func (c *EditsListingsGetCall) Header() http.Header { 7260 if c.header_ == nil { 7261 c.header_ = make(http.Header) 7262 } 7263 return c.header_ 7264} 7265 7266func (c *EditsListingsGetCall) doRequest(alt string) (*http.Response, error) { 7267 reqHeaders := make(http.Header) 7268 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 7269 for k, v := range c.header_ { 7270 reqHeaders[k] = v 7271 } 7272 reqHeaders.Set("User-Agent", c.s.userAgent()) 7273 if c.ifNoneMatch_ != "" { 7274 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 7275 } 7276 var body io.Reader = nil 7277 c.urlParams_.Set("alt", alt) 7278 c.urlParams_.Set("prettyPrint", "false") 7279 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/edits/{editId}/listings/{language}") 7280 urls += "?" + c.urlParams_.Encode() 7281 req, err := http.NewRequest("GET", urls, body) 7282 if err != nil { 7283 return nil, err 7284 } 7285 req.Header = reqHeaders 7286 googleapi.Expand(req.URL, map[string]string{ 7287 "packageName": c.packageName, 7288 "editId": c.editId, 7289 "language": c.language, 7290 }) 7291 return gensupport.SendRequest(c.ctx_, c.s.client, req) 7292} 7293 7294// Do executes the "androidpublisher.edits.listings.get" call. 7295// Exactly one of *Listing or error will be non-nil. Any non-2xx status 7296// code is an error. Response headers are in either 7297// *Listing.ServerResponse.Header or (if a response was returned at all) 7298// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 7299// check whether the returned error was because http.StatusNotModified 7300// was returned. 7301func (c *EditsListingsGetCall) Do(opts ...googleapi.CallOption) (*Listing, error) { 7302 gensupport.SetOptions(c.urlParams_, opts...) 7303 res, err := c.doRequest("json") 7304 if res != nil && res.StatusCode == http.StatusNotModified { 7305 if res.Body != nil { 7306 res.Body.Close() 7307 } 7308 return nil, &googleapi.Error{ 7309 Code: res.StatusCode, 7310 Header: res.Header, 7311 } 7312 } 7313 if err != nil { 7314 return nil, err 7315 } 7316 defer googleapi.CloseBody(res) 7317 if err := googleapi.CheckResponse(res); err != nil { 7318 return nil, err 7319 } 7320 ret := &Listing{ 7321 ServerResponse: googleapi.ServerResponse{ 7322 Header: res.Header, 7323 HTTPStatusCode: res.StatusCode, 7324 }, 7325 } 7326 target := &ret 7327 if err := gensupport.DecodeResponse(target, res); err != nil { 7328 return nil, err 7329 } 7330 return ret, nil 7331 // { 7332 // "description": "Gets a localized store listing.", 7333 // "flatPath": "androidpublisher/v3/applications/{packageName}/edits/{editId}/listings/{language}", 7334 // "httpMethod": "GET", 7335 // "id": "androidpublisher.edits.listings.get", 7336 // "parameterOrder": [ 7337 // "packageName", 7338 // "editId", 7339 // "language" 7340 // ], 7341 // "parameters": { 7342 // "editId": { 7343 // "description": "Identifier of the edit.", 7344 // "location": "path", 7345 // "required": true, 7346 // "type": "string" 7347 // }, 7348 // "language": { 7349 // "description": "Language localization code (a BCP-47 language tag; for example, \"de-AT\" for Austrian German).", 7350 // "location": "path", 7351 // "required": true, 7352 // "type": "string" 7353 // }, 7354 // "packageName": { 7355 // "description": "Package name of the app.", 7356 // "location": "path", 7357 // "required": true, 7358 // "type": "string" 7359 // } 7360 // }, 7361 // "path": "androidpublisher/v3/applications/{packageName}/edits/{editId}/listings/{language}", 7362 // "response": { 7363 // "$ref": "Listing" 7364 // }, 7365 // "scopes": [ 7366 // "https://www.googleapis.com/auth/androidpublisher" 7367 // ] 7368 // } 7369 7370} 7371 7372// method id "androidpublisher.edits.listings.list": 7373 7374type EditsListingsListCall struct { 7375 s *Service 7376 packageName string 7377 editId string 7378 urlParams_ gensupport.URLParams 7379 ifNoneMatch_ string 7380 ctx_ context.Context 7381 header_ http.Header 7382} 7383 7384// List: Lists all localized store listings. 7385// 7386// - editId: Identifier of the edit. 7387// - packageName: Package name of the app. 7388func (r *EditsListingsService) List(packageName string, editId string) *EditsListingsListCall { 7389 c := &EditsListingsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 7390 c.packageName = packageName 7391 c.editId = editId 7392 return c 7393} 7394 7395// Fields allows partial responses to be retrieved. See 7396// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 7397// for more information. 7398func (c *EditsListingsListCall) Fields(s ...googleapi.Field) *EditsListingsListCall { 7399 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 7400 return c 7401} 7402 7403// IfNoneMatch sets the optional parameter which makes the operation 7404// fail if the object's ETag matches the given value. This is useful for 7405// getting updates only after the object has changed since the last 7406// request. Use googleapi.IsNotModified to check whether the response 7407// error from Do is the result of In-None-Match. 7408func (c *EditsListingsListCall) IfNoneMatch(entityTag string) *EditsListingsListCall { 7409 c.ifNoneMatch_ = entityTag 7410 return c 7411} 7412 7413// Context sets the context to be used in this call's Do method. Any 7414// pending HTTP request will be aborted if the provided context is 7415// canceled. 7416func (c *EditsListingsListCall) Context(ctx context.Context) *EditsListingsListCall { 7417 c.ctx_ = ctx 7418 return c 7419} 7420 7421// Header returns an http.Header that can be modified by the caller to 7422// add HTTP headers to the request. 7423func (c *EditsListingsListCall) Header() http.Header { 7424 if c.header_ == nil { 7425 c.header_ = make(http.Header) 7426 } 7427 return c.header_ 7428} 7429 7430func (c *EditsListingsListCall) doRequest(alt string) (*http.Response, error) { 7431 reqHeaders := make(http.Header) 7432 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 7433 for k, v := range c.header_ { 7434 reqHeaders[k] = v 7435 } 7436 reqHeaders.Set("User-Agent", c.s.userAgent()) 7437 if c.ifNoneMatch_ != "" { 7438 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 7439 } 7440 var body io.Reader = nil 7441 c.urlParams_.Set("alt", alt) 7442 c.urlParams_.Set("prettyPrint", "false") 7443 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/edits/{editId}/listings") 7444 urls += "?" + c.urlParams_.Encode() 7445 req, err := http.NewRequest("GET", urls, body) 7446 if err != nil { 7447 return nil, err 7448 } 7449 req.Header = reqHeaders 7450 googleapi.Expand(req.URL, map[string]string{ 7451 "packageName": c.packageName, 7452 "editId": c.editId, 7453 }) 7454 return gensupport.SendRequest(c.ctx_, c.s.client, req) 7455} 7456 7457// Do executes the "androidpublisher.edits.listings.list" call. 7458// Exactly one of *ListingsListResponse or error will be non-nil. Any 7459// non-2xx status code is an error. Response headers are in either 7460// *ListingsListResponse.ServerResponse.Header or (if a response was 7461// returned at all) in error.(*googleapi.Error).Header. Use 7462// googleapi.IsNotModified to check whether the returned error was 7463// because http.StatusNotModified was returned. 7464func (c *EditsListingsListCall) Do(opts ...googleapi.CallOption) (*ListingsListResponse, error) { 7465 gensupport.SetOptions(c.urlParams_, opts...) 7466 res, err := c.doRequest("json") 7467 if res != nil && res.StatusCode == http.StatusNotModified { 7468 if res.Body != nil { 7469 res.Body.Close() 7470 } 7471 return nil, &googleapi.Error{ 7472 Code: res.StatusCode, 7473 Header: res.Header, 7474 } 7475 } 7476 if err != nil { 7477 return nil, err 7478 } 7479 defer googleapi.CloseBody(res) 7480 if err := googleapi.CheckResponse(res); err != nil { 7481 return nil, err 7482 } 7483 ret := &ListingsListResponse{ 7484 ServerResponse: googleapi.ServerResponse{ 7485 Header: res.Header, 7486 HTTPStatusCode: res.StatusCode, 7487 }, 7488 } 7489 target := &ret 7490 if err := gensupport.DecodeResponse(target, res); err != nil { 7491 return nil, err 7492 } 7493 return ret, nil 7494 // { 7495 // "description": "Lists all localized store listings.", 7496 // "flatPath": "androidpublisher/v3/applications/{packageName}/edits/{editId}/listings", 7497 // "httpMethod": "GET", 7498 // "id": "androidpublisher.edits.listings.list", 7499 // "parameterOrder": [ 7500 // "packageName", 7501 // "editId" 7502 // ], 7503 // "parameters": { 7504 // "editId": { 7505 // "description": "Identifier of the edit.", 7506 // "location": "path", 7507 // "required": true, 7508 // "type": "string" 7509 // }, 7510 // "packageName": { 7511 // "description": "Package name of the app.", 7512 // "location": "path", 7513 // "required": true, 7514 // "type": "string" 7515 // } 7516 // }, 7517 // "path": "androidpublisher/v3/applications/{packageName}/edits/{editId}/listings", 7518 // "response": { 7519 // "$ref": "ListingsListResponse" 7520 // }, 7521 // "scopes": [ 7522 // "https://www.googleapis.com/auth/androidpublisher" 7523 // ] 7524 // } 7525 7526} 7527 7528// method id "androidpublisher.edits.listings.patch": 7529 7530type EditsListingsPatchCall struct { 7531 s *Service 7532 packageName string 7533 editId string 7534 language string 7535 listing *Listing 7536 urlParams_ gensupport.URLParams 7537 ctx_ context.Context 7538 header_ http.Header 7539} 7540 7541// Patch: Patches a localized store listing. 7542// 7543// - editId: Identifier of the edit. 7544// - language: Language localization code (a BCP-47 language tag; for 7545// example, "de-AT" for Austrian German). 7546// - packageName: Package name of the app. 7547func (r *EditsListingsService) Patch(packageName string, editId string, language string, listing *Listing) *EditsListingsPatchCall { 7548 c := &EditsListingsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} 7549 c.packageName = packageName 7550 c.editId = editId 7551 c.language = language 7552 c.listing = listing 7553 return c 7554} 7555 7556// Fields allows partial responses to be retrieved. See 7557// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 7558// for more information. 7559func (c *EditsListingsPatchCall) Fields(s ...googleapi.Field) *EditsListingsPatchCall { 7560 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 7561 return c 7562} 7563 7564// Context sets the context to be used in this call's Do method. Any 7565// pending HTTP request will be aborted if the provided context is 7566// canceled. 7567func (c *EditsListingsPatchCall) Context(ctx context.Context) *EditsListingsPatchCall { 7568 c.ctx_ = ctx 7569 return c 7570} 7571 7572// Header returns an http.Header that can be modified by the caller to 7573// add HTTP headers to the request. 7574func (c *EditsListingsPatchCall) Header() http.Header { 7575 if c.header_ == nil { 7576 c.header_ = make(http.Header) 7577 } 7578 return c.header_ 7579} 7580 7581func (c *EditsListingsPatchCall) doRequest(alt string) (*http.Response, error) { 7582 reqHeaders := make(http.Header) 7583 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 7584 for k, v := range c.header_ { 7585 reqHeaders[k] = v 7586 } 7587 reqHeaders.Set("User-Agent", c.s.userAgent()) 7588 var body io.Reader = nil 7589 body, err := googleapi.WithoutDataWrapper.JSONReader(c.listing) 7590 if err != nil { 7591 return nil, err 7592 } 7593 reqHeaders.Set("Content-Type", "application/json") 7594 c.urlParams_.Set("alt", alt) 7595 c.urlParams_.Set("prettyPrint", "false") 7596 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/edits/{editId}/listings/{language}") 7597 urls += "?" + c.urlParams_.Encode() 7598 req, err := http.NewRequest("PATCH", urls, body) 7599 if err != nil { 7600 return nil, err 7601 } 7602 req.Header = reqHeaders 7603 googleapi.Expand(req.URL, map[string]string{ 7604 "packageName": c.packageName, 7605 "editId": c.editId, 7606 "language": c.language, 7607 }) 7608 return gensupport.SendRequest(c.ctx_, c.s.client, req) 7609} 7610 7611// Do executes the "androidpublisher.edits.listings.patch" call. 7612// Exactly one of *Listing or error will be non-nil. Any non-2xx status 7613// code is an error. Response headers are in either 7614// *Listing.ServerResponse.Header or (if a response was returned at all) 7615// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 7616// check whether the returned error was because http.StatusNotModified 7617// was returned. 7618func (c *EditsListingsPatchCall) Do(opts ...googleapi.CallOption) (*Listing, error) { 7619 gensupport.SetOptions(c.urlParams_, opts...) 7620 res, err := c.doRequest("json") 7621 if res != nil && res.StatusCode == http.StatusNotModified { 7622 if res.Body != nil { 7623 res.Body.Close() 7624 } 7625 return nil, &googleapi.Error{ 7626 Code: res.StatusCode, 7627 Header: res.Header, 7628 } 7629 } 7630 if err != nil { 7631 return nil, err 7632 } 7633 defer googleapi.CloseBody(res) 7634 if err := googleapi.CheckResponse(res); err != nil { 7635 return nil, err 7636 } 7637 ret := &Listing{ 7638 ServerResponse: googleapi.ServerResponse{ 7639 Header: res.Header, 7640 HTTPStatusCode: res.StatusCode, 7641 }, 7642 } 7643 target := &ret 7644 if err := gensupport.DecodeResponse(target, res); err != nil { 7645 return nil, err 7646 } 7647 return ret, nil 7648 // { 7649 // "description": "Patches a localized store listing.", 7650 // "flatPath": "androidpublisher/v3/applications/{packageName}/edits/{editId}/listings/{language}", 7651 // "httpMethod": "PATCH", 7652 // "id": "androidpublisher.edits.listings.patch", 7653 // "parameterOrder": [ 7654 // "packageName", 7655 // "editId", 7656 // "language" 7657 // ], 7658 // "parameters": { 7659 // "editId": { 7660 // "description": "Identifier of the edit.", 7661 // "location": "path", 7662 // "required": true, 7663 // "type": "string" 7664 // }, 7665 // "language": { 7666 // "description": "Language localization code (a BCP-47 language tag; for example, \"de-AT\" for Austrian German).", 7667 // "location": "path", 7668 // "required": true, 7669 // "type": "string" 7670 // }, 7671 // "packageName": { 7672 // "description": "Package name of the app.", 7673 // "location": "path", 7674 // "required": true, 7675 // "type": "string" 7676 // } 7677 // }, 7678 // "path": "androidpublisher/v3/applications/{packageName}/edits/{editId}/listings/{language}", 7679 // "request": { 7680 // "$ref": "Listing" 7681 // }, 7682 // "response": { 7683 // "$ref": "Listing" 7684 // }, 7685 // "scopes": [ 7686 // "https://www.googleapis.com/auth/androidpublisher" 7687 // ] 7688 // } 7689 7690} 7691 7692// method id "androidpublisher.edits.listings.update": 7693 7694type EditsListingsUpdateCall struct { 7695 s *Service 7696 packageName string 7697 editId string 7698 language string 7699 listing *Listing 7700 urlParams_ gensupport.URLParams 7701 ctx_ context.Context 7702 header_ http.Header 7703} 7704 7705// Update: Creates or updates a localized store listing. 7706// 7707// - editId: Identifier of the edit. 7708// - language: Language localization code (a BCP-47 language tag; for 7709// example, "de-AT" for Austrian German). 7710// - packageName: Package name of the app. 7711func (r *EditsListingsService) Update(packageName string, editId string, language string, listing *Listing) *EditsListingsUpdateCall { 7712 c := &EditsListingsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} 7713 c.packageName = packageName 7714 c.editId = editId 7715 c.language = language 7716 c.listing = listing 7717 return c 7718} 7719 7720// Fields allows partial responses to be retrieved. See 7721// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 7722// for more information. 7723func (c *EditsListingsUpdateCall) Fields(s ...googleapi.Field) *EditsListingsUpdateCall { 7724 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 7725 return c 7726} 7727 7728// Context sets the context to be used in this call's Do method. Any 7729// pending HTTP request will be aborted if the provided context is 7730// canceled. 7731func (c *EditsListingsUpdateCall) Context(ctx context.Context) *EditsListingsUpdateCall { 7732 c.ctx_ = ctx 7733 return c 7734} 7735 7736// Header returns an http.Header that can be modified by the caller to 7737// add HTTP headers to the request. 7738func (c *EditsListingsUpdateCall) Header() http.Header { 7739 if c.header_ == nil { 7740 c.header_ = make(http.Header) 7741 } 7742 return c.header_ 7743} 7744 7745func (c *EditsListingsUpdateCall) doRequest(alt string) (*http.Response, error) { 7746 reqHeaders := make(http.Header) 7747 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 7748 for k, v := range c.header_ { 7749 reqHeaders[k] = v 7750 } 7751 reqHeaders.Set("User-Agent", c.s.userAgent()) 7752 var body io.Reader = nil 7753 body, err := googleapi.WithoutDataWrapper.JSONReader(c.listing) 7754 if err != nil { 7755 return nil, err 7756 } 7757 reqHeaders.Set("Content-Type", "application/json") 7758 c.urlParams_.Set("alt", alt) 7759 c.urlParams_.Set("prettyPrint", "false") 7760 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/edits/{editId}/listings/{language}") 7761 urls += "?" + c.urlParams_.Encode() 7762 req, err := http.NewRequest("PUT", urls, body) 7763 if err != nil { 7764 return nil, err 7765 } 7766 req.Header = reqHeaders 7767 googleapi.Expand(req.URL, map[string]string{ 7768 "packageName": c.packageName, 7769 "editId": c.editId, 7770 "language": c.language, 7771 }) 7772 return gensupport.SendRequest(c.ctx_, c.s.client, req) 7773} 7774 7775// Do executes the "androidpublisher.edits.listings.update" call. 7776// Exactly one of *Listing or error will be non-nil. Any non-2xx status 7777// code is an error. Response headers are in either 7778// *Listing.ServerResponse.Header or (if a response was returned at all) 7779// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 7780// check whether the returned error was because http.StatusNotModified 7781// was returned. 7782func (c *EditsListingsUpdateCall) Do(opts ...googleapi.CallOption) (*Listing, error) { 7783 gensupport.SetOptions(c.urlParams_, opts...) 7784 res, err := c.doRequest("json") 7785 if res != nil && res.StatusCode == http.StatusNotModified { 7786 if res.Body != nil { 7787 res.Body.Close() 7788 } 7789 return nil, &googleapi.Error{ 7790 Code: res.StatusCode, 7791 Header: res.Header, 7792 } 7793 } 7794 if err != nil { 7795 return nil, err 7796 } 7797 defer googleapi.CloseBody(res) 7798 if err := googleapi.CheckResponse(res); err != nil { 7799 return nil, err 7800 } 7801 ret := &Listing{ 7802 ServerResponse: googleapi.ServerResponse{ 7803 Header: res.Header, 7804 HTTPStatusCode: res.StatusCode, 7805 }, 7806 } 7807 target := &ret 7808 if err := gensupport.DecodeResponse(target, res); err != nil { 7809 return nil, err 7810 } 7811 return ret, nil 7812 // { 7813 // "description": "Creates or updates a localized store listing.", 7814 // "flatPath": "androidpublisher/v3/applications/{packageName}/edits/{editId}/listings/{language}", 7815 // "httpMethod": "PUT", 7816 // "id": "androidpublisher.edits.listings.update", 7817 // "parameterOrder": [ 7818 // "packageName", 7819 // "editId", 7820 // "language" 7821 // ], 7822 // "parameters": { 7823 // "editId": { 7824 // "description": "Identifier of the edit.", 7825 // "location": "path", 7826 // "required": true, 7827 // "type": "string" 7828 // }, 7829 // "language": { 7830 // "description": "Language localization code (a BCP-47 language tag; for example, \"de-AT\" for Austrian German).", 7831 // "location": "path", 7832 // "required": true, 7833 // "type": "string" 7834 // }, 7835 // "packageName": { 7836 // "description": "Package name of the app.", 7837 // "location": "path", 7838 // "required": true, 7839 // "type": "string" 7840 // } 7841 // }, 7842 // "path": "androidpublisher/v3/applications/{packageName}/edits/{editId}/listings/{language}", 7843 // "request": { 7844 // "$ref": "Listing" 7845 // }, 7846 // "response": { 7847 // "$ref": "Listing" 7848 // }, 7849 // "scopes": [ 7850 // "https://www.googleapis.com/auth/androidpublisher" 7851 // ] 7852 // } 7853 7854} 7855 7856// method id "androidpublisher.edits.testers.get": 7857 7858type EditsTestersGetCall struct { 7859 s *Service 7860 packageName string 7861 editId string 7862 track string 7863 urlParams_ gensupport.URLParams 7864 ifNoneMatch_ string 7865 ctx_ context.Context 7866 header_ http.Header 7867} 7868 7869// Get: Gets testers. 7870// 7871// - editId: Identifier of the edit. 7872// - packageName: Package name of the app. 7873// - track: The track to read from. 7874func (r *EditsTestersService) Get(packageName string, editId string, track string) *EditsTestersGetCall { 7875 c := &EditsTestersGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} 7876 c.packageName = packageName 7877 c.editId = editId 7878 c.track = track 7879 return c 7880} 7881 7882// Fields allows partial responses to be retrieved. See 7883// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 7884// for more information. 7885func (c *EditsTestersGetCall) Fields(s ...googleapi.Field) *EditsTestersGetCall { 7886 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 7887 return c 7888} 7889 7890// IfNoneMatch sets the optional parameter which makes the operation 7891// fail if the object's ETag matches the given value. This is useful for 7892// getting updates only after the object has changed since the last 7893// request. Use googleapi.IsNotModified to check whether the response 7894// error from Do is the result of In-None-Match. 7895func (c *EditsTestersGetCall) IfNoneMatch(entityTag string) *EditsTestersGetCall { 7896 c.ifNoneMatch_ = entityTag 7897 return c 7898} 7899 7900// Context sets the context to be used in this call's Do method. Any 7901// pending HTTP request will be aborted if the provided context is 7902// canceled. 7903func (c *EditsTestersGetCall) Context(ctx context.Context) *EditsTestersGetCall { 7904 c.ctx_ = ctx 7905 return c 7906} 7907 7908// Header returns an http.Header that can be modified by the caller to 7909// add HTTP headers to the request. 7910func (c *EditsTestersGetCall) Header() http.Header { 7911 if c.header_ == nil { 7912 c.header_ = make(http.Header) 7913 } 7914 return c.header_ 7915} 7916 7917func (c *EditsTestersGetCall) doRequest(alt string) (*http.Response, error) { 7918 reqHeaders := make(http.Header) 7919 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 7920 for k, v := range c.header_ { 7921 reqHeaders[k] = v 7922 } 7923 reqHeaders.Set("User-Agent", c.s.userAgent()) 7924 if c.ifNoneMatch_ != "" { 7925 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 7926 } 7927 var body io.Reader = nil 7928 c.urlParams_.Set("alt", alt) 7929 c.urlParams_.Set("prettyPrint", "false") 7930 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/edits/{editId}/testers/{track}") 7931 urls += "?" + c.urlParams_.Encode() 7932 req, err := http.NewRequest("GET", urls, body) 7933 if err != nil { 7934 return nil, err 7935 } 7936 req.Header = reqHeaders 7937 googleapi.Expand(req.URL, map[string]string{ 7938 "packageName": c.packageName, 7939 "editId": c.editId, 7940 "track": c.track, 7941 }) 7942 return gensupport.SendRequest(c.ctx_, c.s.client, req) 7943} 7944 7945// Do executes the "androidpublisher.edits.testers.get" call. 7946// Exactly one of *Testers or error will be non-nil. Any non-2xx status 7947// code is an error. Response headers are in either 7948// *Testers.ServerResponse.Header or (if a response was returned at all) 7949// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 7950// check whether the returned error was because http.StatusNotModified 7951// was returned. 7952func (c *EditsTestersGetCall) Do(opts ...googleapi.CallOption) (*Testers, error) { 7953 gensupport.SetOptions(c.urlParams_, opts...) 7954 res, err := c.doRequest("json") 7955 if res != nil && res.StatusCode == http.StatusNotModified { 7956 if res.Body != nil { 7957 res.Body.Close() 7958 } 7959 return nil, &googleapi.Error{ 7960 Code: res.StatusCode, 7961 Header: res.Header, 7962 } 7963 } 7964 if err != nil { 7965 return nil, err 7966 } 7967 defer googleapi.CloseBody(res) 7968 if err := googleapi.CheckResponse(res); err != nil { 7969 return nil, err 7970 } 7971 ret := &Testers{ 7972 ServerResponse: googleapi.ServerResponse{ 7973 Header: res.Header, 7974 HTTPStatusCode: res.StatusCode, 7975 }, 7976 } 7977 target := &ret 7978 if err := gensupport.DecodeResponse(target, res); err != nil { 7979 return nil, err 7980 } 7981 return ret, nil 7982 // { 7983 // "description": "Gets testers.", 7984 // "flatPath": "androidpublisher/v3/applications/{packageName}/edits/{editId}/testers/{track}", 7985 // "httpMethod": "GET", 7986 // "id": "androidpublisher.edits.testers.get", 7987 // "parameterOrder": [ 7988 // "packageName", 7989 // "editId", 7990 // "track" 7991 // ], 7992 // "parameters": { 7993 // "editId": { 7994 // "description": "Identifier of the edit.", 7995 // "location": "path", 7996 // "required": true, 7997 // "type": "string" 7998 // }, 7999 // "packageName": { 8000 // "description": "Package name of the app.", 8001 // "location": "path", 8002 // "required": true, 8003 // "type": "string" 8004 // }, 8005 // "track": { 8006 // "description": "The track to read from.", 8007 // "location": "path", 8008 // "required": true, 8009 // "type": "string" 8010 // } 8011 // }, 8012 // "path": "androidpublisher/v3/applications/{packageName}/edits/{editId}/testers/{track}", 8013 // "response": { 8014 // "$ref": "Testers" 8015 // }, 8016 // "scopes": [ 8017 // "https://www.googleapis.com/auth/androidpublisher" 8018 // ] 8019 // } 8020 8021} 8022 8023// method id "androidpublisher.edits.testers.patch": 8024 8025type EditsTestersPatchCall struct { 8026 s *Service 8027 packageName string 8028 editId string 8029 track string 8030 testers *Testers 8031 urlParams_ gensupport.URLParams 8032 ctx_ context.Context 8033 header_ http.Header 8034} 8035 8036// Patch: Patches testers. 8037// 8038// - editId: Identifier of the edit. 8039// - packageName: Package name of the app. 8040// - track: The track to update. 8041func (r *EditsTestersService) Patch(packageName string, editId string, track string, testers *Testers) *EditsTestersPatchCall { 8042 c := &EditsTestersPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} 8043 c.packageName = packageName 8044 c.editId = editId 8045 c.track = track 8046 c.testers = testers 8047 return c 8048} 8049 8050// Fields allows partial responses to be retrieved. See 8051// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 8052// for more information. 8053func (c *EditsTestersPatchCall) Fields(s ...googleapi.Field) *EditsTestersPatchCall { 8054 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 8055 return c 8056} 8057 8058// Context sets the context to be used in this call's Do method. Any 8059// pending HTTP request will be aborted if the provided context is 8060// canceled. 8061func (c *EditsTestersPatchCall) Context(ctx context.Context) *EditsTestersPatchCall { 8062 c.ctx_ = ctx 8063 return c 8064} 8065 8066// Header returns an http.Header that can be modified by the caller to 8067// add HTTP headers to the request. 8068func (c *EditsTestersPatchCall) Header() http.Header { 8069 if c.header_ == nil { 8070 c.header_ = make(http.Header) 8071 } 8072 return c.header_ 8073} 8074 8075func (c *EditsTestersPatchCall) doRequest(alt string) (*http.Response, error) { 8076 reqHeaders := make(http.Header) 8077 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 8078 for k, v := range c.header_ { 8079 reqHeaders[k] = v 8080 } 8081 reqHeaders.Set("User-Agent", c.s.userAgent()) 8082 var body io.Reader = nil 8083 body, err := googleapi.WithoutDataWrapper.JSONReader(c.testers) 8084 if err != nil { 8085 return nil, err 8086 } 8087 reqHeaders.Set("Content-Type", "application/json") 8088 c.urlParams_.Set("alt", alt) 8089 c.urlParams_.Set("prettyPrint", "false") 8090 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/edits/{editId}/testers/{track}") 8091 urls += "?" + c.urlParams_.Encode() 8092 req, err := http.NewRequest("PATCH", urls, body) 8093 if err != nil { 8094 return nil, err 8095 } 8096 req.Header = reqHeaders 8097 googleapi.Expand(req.URL, map[string]string{ 8098 "packageName": c.packageName, 8099 "editId": c.editId, 8100 "track": c.track, 8101 }) 8102 return gensupport.SendRequest(c.ctx_, c.s.client, req) 8103} 8104 8105// Do executes the "androidpublisher.edits.testers.patch" call. 8106// Exactly one of *Testers or error will be non-nil. Any non-2xx status 8107// code is an error. Response headers are in either 8108// *Testers.ServerResponse.Header or (if a response was returned at all) 8109// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 8110// check whether the returned error was because http.StatusNotModified 8111// was returned. 8112func (c *EditsTestersPatchCall) Do(opts ...googleapi.CallOption) (*Testers, error) { 8113 gensupport.SetOptions(c.urlParams_, opts...) 8114 res, err := c.doRequest("json") 8115 if res != nil && res.StatusCode == http.StatusNotModified { 8116 if res.Body != nil { 8117 res.Body.Close() 8118 } 8119 return nil, &googleapi.Error{ 8120 Code: res.StatusCode, 8121 Header: res.Header, 8122 } 8123 } 8124 if err != nil { 8125 return nil, err 8126 } 8127 defer googleapi.CloseBody(res) 8128 if err := googleapi.CheckResponse(res); err != nil { 8129 return nil, err 8130 } 8131 ret := &Testers{ 8132 ServerResponse: googleapi.ServerResponse{ 8133 Header: res.Header, 8134 HTTPStatusCode: res.StatusCode, 8135 }, 8136 } 8137 target := &ret 8138 if err := gensupport.DecodeResponse(target, res); err != nil { 8139 return nil, err 8140 } 8141 return ret, nil 8142 // { 8143 // "description": "Patches testers.", 8144 // "flatPath": "androidpublisher/v3/applications/{packageName}/edits/{editId}/testers/{track}", 8145 // "httpMethod": "PATCH", 8146 // "id": "androidpublisher.edits.testers.patch", 8147 // "parameterOrder": [ 8148 // "packageName", 8149 // "editId", 8150 // "track" 8151 // ], 8152 // "parameters": { 8153 // "editId": { 8154 // "description": "Identifier of the edit.", 8155 // "location": "path", 8156 // "required": true, 8157 // "type": "string" 8158 // }, 8159 // "packageName": { 8160 // "description": "Package name of the app.", 8161 // "location": "path", 8162 // "required": true, 8163 // "type": "string" 8164 // }, 8165 // "track": { 8166 // "description": "The track to update.", 8167 // "location": "path", 8168 // "required": true, 8169 // "type": "string" 8170 // } 8171 // }, 8172 // "path": "androidpublisher/v3/applications/{packageName}/edits/{editId}/testers/{track}", 8173 // "request": { 8174 // "$ref": "Testers" 8175 // }, 8176 // "response": { 8177 // "$ref": "Testers" 8178 // }, 8179 // "scopes": [ 8180 // "https://www.googleapis.com/auth/androidpublisher" 8181 // ] 8182 // } 8183 8184} 8185 8186// method id "androidpublisher.edits.testers.update": 8187 8188type EditsTestersUpdateCall struct { 8189 s *Service 8190 packageName string 8191 editId string 8192 track string 8193 testers *Testers 8194 urlParams_ gensupport.URLParams 8195 ctx_ context.Context 8196 header_ http.Header 8197} 8198 8199// Update: Updates testers. 8200// 8201// - editId: Identifier of the edit. 8202// - packageName: Package name of the app. 8203// - track: The track to update. 8204func (r *EditsTestersService) Update(packageName string, editId string, track string, testers *Testers) *EditsTestersUpdateCall { 8205 c := &EditsTestersUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} 8206 c.packageName = packageName 8207 c.editId = editId 8208 c.track = track 8209 c.testers = testers 8210 return c 8211} 8212 8213// Fields allows partial responses to be retrieved. See 8214// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 8215// for more information. 8216func (c *EditsTestersUpdateCall) Fields(s ...googleapi.Field) *EditsTestersUpdateCall { 8217 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 8218 return c 8219} 8220 8221// Context sets the context to be used in this call's Do method. Any 8222// pending HTTP request will be aborted if the provided context is 8223// canceled. 8224func (c *EditsTestersUpdateCall) Context(ctx context.Context) *EditsTestersUpdateCall { 8225 c.ctx_ = ctx 8226 return c 8227} 8228 8229// Header returns an http.Header that can be modified by the caller to 8230// add HTTP headers to the request. 8231func (c *EditsTestersUpdateCall) Header() http.Header { 8232 if c.header_ == nil { 8233 c.header_ = make(http.Header) 8234 } 8235 return c.header_ 8236} 8237 8238func (c *EditsTestersUpdateCall) doRequest(alt string) (*http.Response, error) { 8239 reqHeaders := make(http.Header) 8240 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 8241 for k, v := range c.header_ { 8242 reqHeaders[k] = v 8243 } 8244 reqHeaders.Set("User-Agent", c.s.userAgent()) 8245 var body io.Reader = nil 8246 body, err := googleapi.WithoutDataWrapper.JSONReader(c.testers) 8247 if err != nil { 8248 return nil, err 8249 } 8250 reqHeaders.Set("Content-Type", "application/json") 8251 c.urlParams_.Set("alt", alt) 8252 c.urlParams_.Set("prettyPrint", "false") 8253 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/edits/{editId}/testers/{track}") 8254 urls += "?" + c.urlParams_.Encode() 8255 req, err := http.NewRequest("PUT", urls, body) 8256 if err != nil { 8257 return nil, err 8258 } 8259 req.Header = reqHeaders 8260 googleapi.Expand(req.URL, map[string]string{ 8261 "packageName": c.packageName, 8262 "editId": c.editId, 8263 "track": c.track, 8264 }) 8265 return gensupport.SendRequest(c.ctx_, c.s.client, req) 8266} 8267 8268// Do executes the "androidpublisher.edits.testers.update" call. 8269// Exactly one of *Testers or error will be non-nil. Any non-2xx status 8270// code is an error. Response headers are in either 8271// *Testers.ServerResponse.Header or (if a response was returned at all) 8272// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 8273// check whether the returned error was because http.StatusNotModified 8274// was returned. 8275func (c *EditsTestersUpdateCall) Do(opts ...googleapi.CallOption) (*Testers, error) { 8276 gensupport.SetOptions(c.urlParams_, opts...) 8277 res, err := c.doRequest("json") 8278 if res != nil && res.StatusCode == http.StatusNotModified { 8279 if res.Body != nil { 8280 res.Body.Close() 8281 } 8282 return nil, &googleapi.Error{ 8283 Code: res.StatusCode, 8284 Header: res.Header, 8285 } 8286 } 8287 if err != nil { 8288 return nil, err 8289 } 8290 defer googleapi.CloseBody(res) 8291 if err := googleapi.CheckResponse(res); err != nil { 8292 return nil, err 8293 } 8294 ret := &Testers{ 8295 ServerResponse: googleapi.ServerResponse{ 8296 Header: res.Header, 8297 HTTPStatusCode: res.StatusCode, 8298 }, 8299 } 8300 target := &ret 8301 if err := gensupport.DecodeResponse(target, res); err != nil { 8302 return nil, err 8303 } 8304 return ret, nil 8305 // { 8306 // "description": "Updates testers.", 8307 // "flatPath": "androidpublisher/v3/applications/{packageName}/edits/{editId}/testers/{track}", 8308 // "httpMethod": "PUT", 8309 // "id": "androidpublisher.edits.testers.update", 8310 // "parameterOrder": [ 8311 // "packageName", 8312 // "editId", 8313 // "track" 8314 // ], 8315 // "parameters": { 8316 // "editId": { 8317 // "description": "Identifier of the edit.", 8318 // "location": "path", 8319 // "required": true, 8320 // "type": "string" 8321 // }, 8322 // "packageName": { 8323 // "description": "Package name of the app.", 8324 // "location": "path", 8325 // "required": true, 8326 // "type": "string" 8327 // }, 8328 // "track": { 8329 // "description": "The track to update.", 8330 // "location": "path", 8331 // "required": true, 8332 // "type": "string" 8333 // } 8334 // }, 8335 // "path": "androidpublisher/v3/applications/{packageName}/edits/{editId}/testers/{track}", 8336 // "request": { 8337 // "$ref": "Testers" 8338 // }, 8339 // "response": { 8340 // "$ref": "Testers" 8341 // }, 8342 // "scopes": [ 8343 // "https://www.googleapis.com/auth/androidpublisher" 8344 // ] 8345 // } 8346 8347} 8348 8349// method id "androidpublisher.edits.tracks.get": 8350 8351type EditsTracksGetCall struct { 8352 s *Service 8353 packageName string 8354 editId string 8355 track string 8356 urlParams_ gensupport.URLParams 8357 ifNoneMatch_ string 8358 ctx_ context.Context 8359 header_ http.Header 8360} 8361 8362// Get: Gets a track. 8363// 8364// - editId: Identifier of the edit. 8365// - packageName: Package name of the app. 8366// - track: Identifier of the track. 8367func (r *EditsTracksService) Get(packageName string, editId string, track string) *EditsTracksGetCall { 8368 c := &EditsTracksGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} 8369 c.packageName = packageName 8370 c.editId = editId 8371 c.track = track 8372 return c 8373} 8374 8375// Fields allows partial responses to be retrieved. See 8376// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 8377// for more information. 8378func (c *EditsTracksGetCall) Fields(s ...googleapi.Field) *EditsTracksGetCall { 8379 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 8380 return c 8381} 8382 8383// IfNoneMatch sets the optional parameter which makes the operation 8384// fail if the object's ETag matches the given value. This is useful for 8385// getting updates only after the object has changed since the last 8386// request. Use googleapi.IsNotModified to check whether the response 8387// error from Do is the result of In-None-Match. 8388func (c *EditsTracksGetCall) IfNoneMatch(entityTag string) *EditsTracksGetCall { 8389 c.ifNoneMatch_ = entityTag 8390 return c 8391} 8392 8393// Context sets the context to be used in this call's Do method. Any 8394// pending HTTP request will be aborted if the provided context is 8395// canceled. 8396func (c *EditsTracksGetCall) Context(ctx context.Context) *EditsTracksGetCall { 8397 c.ctx_ = ctx 8398 return c 8399} 8400 8401// Header returns an http.Header that can be modified by the caller to 8402// add HTTP headers to the request. 8403func (c *EditsTracksGetCall) Header() http.Header { 8404 if c.header_ == nil { 8405 c.header_ = make(http.Header) 8406 } 8407 return c.header_ 8408} 8409 8410func (c *EditsTracksGetCall) doRequest(alt string) (*http.Response, error) { 8411 reqHeaders := make(http.Header) 8412 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 8413 for k, v := range c.header_ { 8414 reqHeaders[k] = v 8415 } 8416 reqHeaders.Set("User-Agent", c.s.userAgent()) 8417 if c.ifNoneMatch_ != "" { 8418 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 8419 } 8420 var body io.Reader = nil 8421 c.urlParams_.Set("alt", alt) 8422 c.urlParams_.Set("prettyPrint", "false") 8423 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/edits/{editId}/tracks/{track}") 8424 urls += "?" + c.urlParams_.Encode() 8425 req, err := http.NewRequest("GET", urls, body) 8426 if err != nil { 8427 return nil, err 8428 } 8429 req.Header = reqHeaders 8430 googleapi.Expand(req.URL, map[string]string{ 8431 "packageName": c.packageName, 8432 "editId": c.editId, 8433 "track": c.track, 8434 }) 8435 return gensupport.SendRequest(c.ctx_, c.s.client, req) 8436} 8437 8438// Do executes the "androidpublisher.edits.tracks.get" call. 8439// Exactly one of *Track or error will be non-nil. Any non-2xx status 8440// code is an error. Response headers are in either 8441// *Track.ServerResponse.Header or (if a response was returned at all) 8442// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 8443// check whether the returned error was because http.StatusNotModified 8444// was returned. 8445func (c *EditsTracksGetCall) Do(opts ...googleapi.CallOption) (*Track, error) { 8446 gensupport.SetOptions(c.urlParams_, opts...) 8447 res, err := c.doRequest("json") 8448 if res != nil && res.StatusCode == http.StatusNotModified { 8449 if res.Body != nil { 8450 res.Body.Close() 8451 } 8452 return nil, &googleapi.Error{ 8453 Code: res.StatusCode, 8454 Header: res.Header, 8455 } 8456 } 8457 if err != nil { 8458 return nil, err 8459 } 8460 defer googleapi.CloseBody(res) 8461 if err := googleapi.CheckResponse(res); err != nil { 8462 return nil, err 8463 } 8464 ret := &Track{ 8465 ServerResponse: googleapi.ServerResponse{ 8466 Header: res.Header, 8467 HTTPStatusCode: res.StatusCode, 8468 }, 8469 } 8470 target := &ret 8471 if err := gensupport.DecodeResponse(target, res); err != nil { 8472 return nil, err 8473 } 8474 return ret, nil 8475 // { 8476 // "description": "Gets a track.", 8477 // "flatPath": "androidpublisher/v3/applications/{packageName}/edits/{editId}/tracks/{track}", 8478 // "httpMethod": "GET", 8479 // "id": "androidpublisher.edits.tracks.get", 8480 // "parameterOrder": [ 8481 // "packageName", 8482 // "editId", 8483 // "track" 8484 // ], 8485 // "parameters": { 8486 // "editId": { 8487 // "description": "Identifier of the edit.", 8488 // "location": "path", 8489 // "required": true, 8490 // "type": "string" 8491 // }, 8492 // "packageName": { 8493 // "description": "Package name of the app.", 8494 // "location": "path", 8495 // "required": true, 8496 // "type": "string" 8497 // }, 8498 // "track": { 8499 // "description": "Identifier of the track.", 8500 // "location": "path", 8501 // "required": true, 8502 // "type": "string" 8503 // } 8504 // }, 8505 // "path": "androidpublisher/v3/applications/{packageName}/edits/{editId}/tracks/{track}", 8506 // "response": { 8507 // "$ref": "Track" 8508 // }, 8509 // "scopes": [ 8510 // "https://www.googleapis.com/auth/androidpublisher" 8511 // ] 8512 // } 8513 8514} 8515 8516// method id "androidpublisher.edits.tracks.list": 8517 8518type EditsTracksListCall struct { 8519 s *Service 8520 packageName string 8521 editId string 8522 urlParams_ gensupport.URLParams 8523 ifNoneMatch_ string 8524 ctx_ context.Context 8525 header_ http.Header 8526} 8527 8528// List: Lists all tracks. 8529// 8530// - editId: Identifier of the edit. 8531// - packageName: Package name of the app. 8532func (r *EditsTracksService) List(packageName string, editId string) *EditsTracksListCall { 8533 c := &EditsTracksListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 8534 c.packageName = packageName 8535 c.editId = editId 8536 return c 8537} 8538 8539// Fields allows partial responses to be retrieved. See 8540// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 8541// for more information. 8542func (c *EditsTracksListCall) Fields(s ...googleapi.Field) *EditsTracksListCall { 8543 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 8544 return c 8545} 8546 8547// IfNoneMatch sets the optional parameter which makes the operation 8548// fail if the object's ETag matches the given value. This is useful for 8549// getting updates only after the object has changed since the last 8550// request. Use googleapi.IsNotModified to check whether the response 8551// error from Do is the result of In-None-Match. 8552func (c *EditsTracksListCall) IfNoneMatch(entityTag string) *EditsTracksListCall { 8553 c.ifNoneMatch_ = entityTag 8554 return c 8555} 8556 8557// Context sets the context to be used in this call's Do method. Any 8558// pending HTTP request will be aborted if the provided context is 8559// canceled. 8560func (c *EditsTracksListCall) Context(ctx context.Context) *EditsTracksListCall { 8561 c.ctx_ = ctx 8562 return c 8563} 8564 8565// Header returns an http.Header that can be modified by the caller to 8566// add HTTP headers to the request. 8567func (c *EditsTracksListCall) Header() http.Header { 8568 if c.header_ == nil { 8569 c.header_ = make(http.Header) 8570 } 8571 return c.header_ 8572} 8573 8574func (c *EditsTracksListCall) doRequest(alt string) (*http.Response, error) { 8575 reqHeaders := make(http.Header) 8576 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 8577 for k, v := range c.header_ { 8578 reqHeaders[k] = v 8579 } 8580 reqHeaders.Set("User-Agent", c.s.userAgent()) 8581 if c.ifNoneMatch_ != "" { 8582 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 8583 } 8584 var body io.Reader = nil 8585 c.urlParams_.Set("alt", alt) 8586 c.urlParams_.Set("prettyPrint", "false") 8587 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/edits/{editId}/tracks") 8588 urls += "?" + c.urlParams_.Encode() 8589 req, err := http.NewRequest("GET", urls, body) 8590 if err != nil { 8591 return nil, err 8592 } 8593 req.Header = reqHeaders 8594 googleapi.Expand(req.URL, map[string]string{ 8595 "packageName": c.packageName, 8596 "editId": c.editId, 8597 }) 8598 return gensupport.SendRequest(c.ctx_, c.s.client, req) 8599} 8600 8601// Do executes the "androidpublisher.edits.tracks.list" call. 8602// Exactly one of *TracksListResponse or error will be non-nil. Any 8603// non-2xx status code is an error. Response headers are in either 8604// *TracksListResponse.ServerResponse.Header or (if a response was 8605// returned at all) in error.(*googleapi.Error).Header. Use 8606// googleapi.IsNotModified to check whether the returned error was 8607// because http.StatusNotModified was returned. 8608func (c *EditsTracksListCall) Do(opts ...googleapi.CallOption) (*TracksListResponse, error) { 8609 gensupport.SetOptions(c.urlParams_, opts...) 8610 res, err := c.doRequest("json") 8611 if res != nil && res.StatusCode == http.StatusNotModified { 8612 if res.Body != nil { 8613 res.Body.Close() 8614 } 8615 return nil, &googleapi.Error{ 8616 Code: res.StatusCode, 8617 Header: res.Header, 8618 } 8619 } 8620 if err != nil { 8621 return nil, err 8622 } 8623 defer googleapi.CloseBody(res) 8624 if err := googleapi.CheckResponse(res); err != nil { 8625 return nil, err 8626 } 8627 ret := &TracksListResponse{ 8628 ServerResponse: googleapi.ServerResponse{ 8629 Header: res.Header, 8630 HTTPStatusCode: res.StatusCode, 8631 }, 8632 } 8633 target := &ret 8634 if err := gensupport.DecodeResponse(target, res); err != nil { 8635 return nil, err 8636 } 8637 return ret, nil 8638 // { 8639 // "description": "Lists all tracks.", 8640 // "flatPath": "androidpublisher/v3/applications/{packageName}/edits/{editId}/tracks", 8641 // "httpMethod": "GET", 8642 // "id": "androidpublisher.edits.tracks.list", 8643 // "parameterOrder": [ 8644 // "packageName", 8645 // "editId" 8646 // ], 8647 // "parameters": { 8648 // "editId": { 8649 // "description": "Identifier of the edit.", 8650 // "location": "path", 8651 // "required": true, 8652 // "type": "string" 8653 // }, 8654 // "packageName": { 8655 // "description": "Package name of the app.", 8656 // "location": "path", 8657 // "required": true, 8658 // "type": "string" 8659 // } 8660 // }, 8661 // "path": "androidpublisher/v3/applications/{packageName}/edits/{editId}/tracks", 8662 // "response": { 8663 // "$ref": "TracksListResponse" 8664 // }, 8665 // "scopes": [ 8666 // "https://www.googleapis.com/auth/androidpublisher" 8667 // ] 8668 // } 8669 8670} 8671 8672// method id "androidpublisher.edits.tracks.patch": 8673 8674type EditsTracksPatchCall struct { 8675 s *Service 8676 packageName string 8677 editId string 8678 track string 8679 track2 *Track 8680 urlParams_ gensupport.URLParams 8681 ctx_ context.Context 8682 header_ http.Header 8683} 8684 8685// Patch: Patches a track. 8686// 8687// - editId: Identifier of the edit. 8688// - packageName: Package name of the app. 8689// - track: Identifier of the track. 8690func (r *EditsTracksService) Patch(packageName string, editId string, track string, track2 *Track) *EditsTracksPatchCall { 8691 c := &EditsTracksPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} 8692 c.packageName = packageName 8693 c.editId = editId 8694 c.track = track 8695 c.track2 = track2 8696 return c 8697} 8698 8699// Fields allows partial responses to be retrieved. See 8700// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 8701// for more information. 8702func (c *EditsTracksPatchCall) Fields(s ...googleapi.Field) *EditsTracksPatchCall { 8703 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 8704 return c 8705} 8706 8707// Context sets the context to be used in this call's Do method. Any 8708// pending HTTP request will be aborted if the provided context is 8709// canceled. 8710func (c *EditsTracksPatchCall) Context(ctx context.Context) *EditsTracksPatchCall { 8711 c.ctx_ = ctx 8712 return c 8713} 8714 8715// Header returns an http.Header that can be modified by the caller to 8716// add HTTP headers to the request. 8717func (c *EditsTracksPatchCall) Header() http.Header { 8718 if c.header_ == nil { 8719 c.header_ = make(http.Header) 8720 } 8721 return c.header_ 8722} 8723 8724func (c *EditsTracksPatchCall) doRequest(alt string) (*http.Response, error) { 8725 reqHeaders := make(http.Header) 8726 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 8727 for k, v := range c.header_ { 8728 reqHeaders[k] = v 8729 } 8730 reqHeaders.Set("User-Agent", c.s.userAgent()) 8731 var body io.Reader = nil 8732 body, err := googleapi.WithoutDataWrapper.JSONReader(c.track2) 8733 if err != nil { 8734 return nil, err 8735 } 8736 reqHeaders.Set("Content-Type", "application/json") 8737 c.urlParams_.Set("alt", alt) 8738 c.urlParams_.Set("prettyPrint", "false") 8739 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/edits/{editId}/tracks/{track}") 8740 urls += "?" + c.urlParams_.Encode() 8741 req, err := http.NewRequest("PATCH", urls, body) 8742 if err != nil { 8743 return nil, err 8744 } 8745 req.Header = reqHeaders 8746 googleapi.Expand(req.URL, map[string]string{ 8747 "packageName": c.packageName, 8748 "editId": c.editId, 8749 "track": c.track, 8750 }) 8751 return gensupport.SendRequest(c.ctx_, c.s.client, req) 8752} 8753 8754// Do executes the "androidpublisher.edits.tracks.patch" call. 8755// Exactly one of *Track or error will be non-nil. Any non-2xx status 8756// code is an error. Response headers are in either 8757// *Track.ServerResponse.Header or (if a response was returned at all) 8758// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 8759// check whether the returned error was because http.StatusNotModified 8760// was returned. 8761func (c *EditsTracksPatchCall) Do(opts ...googleapi.CallOption) (*Track, error) { 8762 gensupport.SetOptions(c.urlParams_, opts...) 8763 res, err := c.doRequest("json") 8764 if res != nil && res.StatusCode == http.StatusNotModified { 8765 if res.Body != nil { 8766 res.Body.Close() 8767 } 8768 return nil, &googleapi.Error{ 8769 Code: res.StatusCode, 8770 Header: res.Header, 8771 } 8772 } 8773 if err != nil { 8774 return nil, err 8775 } 8776 defer googleapi.CloseBody(res) 8777 if err := googleapi.CheckResponse(res); err != nil { 8778 return nil, err 8779 } 8780 ret := &Track{ 8781 ServerResponse: googleapi.ServerResponse{ 8782 Header: res.Header, 8783 HTTPStatusCode: res.StatusCode, 8784 }, 8785 } 8786 target := &ret 8787 if err := gensupport.DecodeResponse(target, res); err != nil { 8788 return nil, err 8789 } 8790 return ret, nil 8791 // { 8792 // "description": "Patches a track.", 8793 // "flatPath": "androidpublisher/v3/applications/{packageName}/edits/{editId}/tracks/{track}", 8794 // "httpMethod": "PATCH", 8795 // "id": "androidpublisher.edits.tracks.patch", 8796 // "parameterOrder": [ 8797 // "packageName", 8798 // "editId", 8799 // "track" 8800 // ], 8801 // "parameters": { 8802 // "editId": { 8803 // "description": "Identifier of the edit.", 8804 // "location": "path", 8805 // "required": true, 8806 // "type": "string" 8807 // }, 8808 // "packageName": { 8809 // "description": "Package name of the app.", 8810 // "location": "path", 8811 // "required": true, 8812 // "type": "string" 8813 // }, 8814 // "track": { 8815 // "description": "Identifier of the track.", 8816 // "location": "path", 8817 // "required": true, 8818 // "type": "string" 8819 // } 8820 // }, 8821 // "path": "androidpublisher/v3/applications/{packageName}/edits/{editId}/tracks/{track}", 8822 // "request": { 8823 // "$ref": "Track" 8824 // }, 8825 // "response": { 8826 // "$ref": "Track" 8827 // }, 8828 // "scopes": [ 8829 // "https://www.googleapis.com/auth/androidpublisher" 8830 // ] 8831 // } 8832 8833} 8834 8835// method id "androidpublisher.edits.tracks.update": 8836 8837type EditsTracksUpdateCall struct { 8838 s *Service 8839 packageName string 8840 editId string 8841 track string 8842 track2 *Track 8843 urlParams_ gensupport.URLParams 8844 ctx_ context.Context 8845 header_ http.Header 8846} 8847 8848// Update: Updates a track. 8849// 8850// - editId: Identifier of the edit. 8851// - packageName: Package name of the app. 8852// - track: Identifier of the track. 8853func (r *EditsTracksService) Update(packageName string, editId string, track string, track2 *Track) *EditsTracksUpdateCall { 8854 c := &EditsTracksUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} 8855 c.packageName = packageName 8856 c.editId = editId 8857 c.track = track 8858 c.track2 = track2 8859 return c 8860} 8861 8862// Fields allows partial responses to be retrieved. See 8863// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 8864// for more information. 8865func (c *EditsTracksUpdateCall) Fields(s ...googleapi.Field) *EditsTracksUpdateCall { 8866 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 8867 return c 8868} 8869 8870// Context sets the context to be used in this call's Do method. Any 8871// pending HTTP request will be aborted if the provided context is 8872// canceled. 8873func (c *EditsTracksUpdateCall) Context(ctx context.Context) *EditsTracksUpdateCall { 8874 c.ctx_ = ctx 8875 return c 8876} 8877 8878// Header returns an http.Header that can be modified by the caller to 8879// add HTTP headers to the request. 8880func (c *EditsTracksUpdateCall) Header() http.Header { 8881 if c.header_ == nil { 8882 c.header_ = make(http.Header) 8883 } 8884 return c.header_ 8885} 8886 8887func (c *EditsTracksUpdateCall) doRequest(alt string) (*http.Response, error) { 8888 reqHeaders := make(http.Header) 8889 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 8890 for k, v := range c.header_ { 8891 reqHeaders[k] = v 8892 } 8893 reqHeaders.Set("User-Agent", c.s.userAgent()) 8894 var body io.Reader = nil 8895 body, err := googleapi.WithoutDataWrapper.JSONReader(c.track2) 8896 if err != nil { 8897 return nil, err 8898 } 8899 reqHeaders.Set("Content-Type", "application/json") 8900 c.urlParams_.Set("alt", alt) 8901 c.urlParams_.Set("prettyPrint", "false") 8902 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/edits/{editId}/tracks/{track}") 8903 urls += "?" + c.urlParams_.Encode() 8904 req, err := http.NewRequest("PUT", urls, body) 8905 if err != nil { 8906 return nil, err 8907 } 8908 req.Header = reqHeaders 8909 googleapi.Expand(req.URL, map[string]string{ 8910 "packageName": c.packageName, 8911 "editId": c.editId, 8912 "track": c.track, 8913 }) 8914 return gensupport.SendRequest(c.ctx_, c.s.client, req) 8915} 8916 8917// Do executes the "androidpublisher.edits.tracks.update" call. 8918// Exactly one of *Track or error will be non-nil. Any non-2xx status 8919// code is an error. Response headers are in either 8920// *Track.ServerResponse.Header or (if a response was returned at all) 8921// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 8922// check whether the returned error was because http.StatusNotModified 8923// was returned. 8924func (c *EditsTracksUpdateCall) Do(opts ...googleapi.CallOption) (*Track, error) { 8925 gensupport.SetOptions(c.urlParams_, opts...) 8926 res, err := c.doRequest("json") 8927 if res != nil && res.StatusCode == http.StatusNotModified { 8928 if res.Body != nil { 8929 res.Body.Close() 8930 } 8931 return nil, &googleapi.Error{ 8932 Code: res.StatusCode, 8933 Header: res.Header, 8934 } 8935 } 8936 if err != nil { 8937 return nil, err 8938 } 8939 defer googleapi.CloseBody(res) 8940 if err := googleapi.CheckResponse(res); err != nil { 8941 return nil, err 8942 } 8943 ret := &Track{ 8944 ServerResponse: googleapi.ServerResponse{ 8945 Header: res.Header, 8946 HTTPStatusCode: res.StatusCode, 8947 }, 8948 } 8949 target := &ret 8950 if err := gensupport.DecodeResponse(target, res); err != nil { 8951 return nil, err 8952 } 8953 return ret, nil 8954 // { 8955 // "description": "Updates a track.", 8956 // "flatPath": "androidpublisher/v3/applications/{packageName}/edits/{editId}/tracks/{track}", 8957 // "httpMethod": "PUT", 8958 // "id": "androidpublisher.edits.tracks.update", 8959 // "parameterOrder": [ 8960 // "packageName", 8961 // "editId", 8962 // "track" 8963 // ], 8964 // "parameters": { 8965 // "editId": { 8966 // "description": "Identifier of the edit.", 8967 // "location": "path", 8968 // "required": true, 8969 // "type": "string" 8970 // }, 8971 // "packageName": { 8972 // "description": "Package name of the app.", 8973 // "location": "path", 8974 // "required": true, 8975 // "type": "string" 8976 // }, 8977 // "track": { 8978 // "description": "Identifier of the track.", 8979 // "location": "path", 8980 // "required": true, 8981 // "type": "string" 8982 // } 8983 // }, 8984 // "path": "androidpublisher/v3/applications/{packageName}/edits/{editId}/tracks/{track}", 8985 // "request": { 8986 // "$ref": "Track" 8987 // }, 8988 // "response": { 8989 // "$ref": "Track" 8990 // }, 8991 // "scopes": [ 8992 // "https://www.googleapis.com/auth/androidpublisher" 8993 // ] 8994 // } 8995 8996} 8997 8998// method id "androidpublisher.inappproducts.delete": 8999 9000type InappproductsDeleteCall struct { 9001 s *Service 9002 packageName string 9003 skuid string 9004 urlParams_ gensupport.URLParams 9005 ctx_ context.Context 9006 header_ http.Header 9007} 9008 9009// Delete: Deletes an in-app product (i.e. a managed product or a 9010// subscriptions). 9011// 9012// - packageName: Package name of the app. 9013// - sku: Unique identifier for the in-app product. 9014func (r *InappproductsService) Delete(packageName string, skuid string) *InappproductsDeleteCall { 9015 c := &InappproductsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} 9016 c.packageName = packageName 9017 c.skuid = skuid 9018 return c 9019} 9020 9021// Fields allows partial responses to be retrieved. See 9022// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 9023// for more information. 9024func (c *InappproductsDeleteCall) Fields(s ...googleapi.Field) *InappproductsDeleteCall { 9025 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 9026 return c 9027} 9028 9029// Context sets the context to be used in this call's Do method. Any 9030// pending HTTP request will be aborted if the provided context is 9031// canceled. 9032func (c *InappproductsDeleteCall) Context(ctx context.Context) *InappproductsDeleteCall { 9033 c.ctx_ = ctx 9034 return c 9035} 9036 9037// Header returns an http.Header that can be modified by the caller to 9038// add HTTP headers to the request. 9039func (c *InappproductsDeleteCall) Header() http.Header { 9040 if c.header_ == nil { 9041 c.header_ = make(http.Header) 9042 } 9043 return c.header_ 9044} 9045 9046func (c *InappproductsDeleteCall) doRequest(alt string) (*http.Response, error) { 9047 reqHeaders := make(http.Header) 9048 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 9049 for k, v := range c.header_ { 9050 reqHeaders[k] = v 9051 } 9052 reqHeaders.Set("User-Agent", c.s.userAgent()) 9053 var body io.Reader = nil 9054 c.urlParams_.Set("alt", alt) 9055 c.urlParams_.Set("prettyPrint", "false") 9056 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/inappproducts/{sku}") 9057 urls += "?" + c.urlParams_.Encode() 9058 req, err := http.NewRequest("DELETE", urls, body) 9059 if err != nil { 9060 return nil, err 9061 } 9062 req.Header = reqHeaders 9063 googleapi.Expand(req.URL, map[string]string{ 9064 "packageName": c.packageName, 9065 "sku": c.skuid, 9066 }) 9067 return gensupport.SendRequest(c.ctx_, c.s.client, req) 9068} 9069 9070// Do executes the "androidpublisher.inappproducts.delete" call. 9071func (c *InappproductsDeleteCall) Do(opts ...googleapi.CallOption) error { 9072 gensupport.SetOptions(c.urlParams_, opts...) 9073 res, err := c.doRequest("json") 9074 if err != nil { 9075 return err 9076 } 9077 defer googleapi.CloseBody(res) 9078 if err := googleapi.CheckResponse(res); err != nil { 9079 return err 9080 } 9081 return nil 9082 // { 9083 // "description": "Deletes an in-app product (i.e. a managed product or a subscriptions).", 9084 // "flatPath": "androidpublisher/v3/applications/{packageName}/inappproducts/{sku}", 9085 // "httpMethod": "DELETE", 9086 // "id": "androidpublisher.inappproducts.delete", 9087 // "parameterOrder": [ 9088 // "packageName", 9089 // "sku" 9090 // ], 9091 // "parameters": { 9092 // "packageName": { 9093 // "description": "Package name of the app.", 9094 // "location": "path", 9095 // "required": true, 9096 // "type": "string" 9097 // }, 9098 // "sku": { 9099 // "description": "Unique identifier for the in-app product.", 9100 // "location": "path", 9101 // "required": true, 9102 // "type": "string" 9103 // } 9104 // }, 9105 // "path": "androidpublisher/v3/applications/{packageName}/inappproducts/{sku}", 9106 // "scopes": [ 9107 // "https://www.googleapis.com/auth/androidpublisher" 9108 // ] 9109 // } 9110 9111} 9112 9113// method id "androidpublisher.inappproducts.get": 9114 9115type InappproductsGetCall struct { 9116 s *Service 9117 packageName string 9118 skuid string 9119 urlParams_ gensupport.URLParams 9120 ifNoneMatch_ string 9121 ctx_ context.Context 9122 header_ http.Header 9123} 9124 9125// Get: Gets an in-app product, which can be a managed product or a 9126// subscription. 9127// 9128// - packageName: Package name of the app. 9129// - sku: Unique identifier for the in-app product. 9130func (r *InappproductsService) Get(packageName string, skuid string) *InappproductsGetCall { 9131 c := &InappproductsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} 9132 c.packageName = packageName 9133 c.skuid = skuid 9134 return c 9135} 9136 9137// Fields allows partial responses to be retrieved. See 9138// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 9139// for more information. 9140func (c *InappproductsGetCall) Fields(s ...googleapi.Field) *InappproductsGetCall { 9141 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 9142 return c 9143} 9144 9145// IfNoneMatch sets the optional parameter which makes the operation 9146// fail if the object's ETag matches the given value. This is useful for 9147// getting updates only after the object has changed since the last 9148// request. Use googleapi.IsNotModified to check whether the response 9149// error from Do is the result of In-None-Match. 9150func (c *InappproductsGetCall) IfNoneMatch(entityTag string) *InappproductsGetCall { 9151 c.ifNoneMatch_ = entityTag 9152 return c 9153} 9154 9155// Context sets the context to be used in this call's Do method. Any 9156// pending HTTP request will be aborted if the provided context is 9157// canceled. 9158func (c *InappproductsGetCall) Context(ctx context.Context) *InappproductsGetCall { 9159 c.ctx_ = ctx 9160 return c 9161} 9162 9163// Header returns an http.Header that can be modified by the caller to 9164// add HTTP headers to the request. 9165func (c *InappproductsGetCall) Header() http.Header { 9166 if c.header_ == nil { 9167 c.header_ = make(http.Header) 9168 } 9169 return c.header_ 9170} 9171 9172func (c *InappproductsGetCall) doRequest(alt string) (*http.Response, error) { 9173 reqHeaders := make(http.Header) 9174 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 9175 for k, v := range c.header_ { 9176 reqHeaders[k] = v 9177 } 9178 reqHeaders.Set("User-Agent", c.s.userAgent()) 9179 if c.ifNoneMatch_ != "" { 9180 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 9181 } 9182 var body io.Reader = nil 9183 c.urlParams_.Set("alt", alt) 9184 c.urlParams_.Set("prettyPrint", "false") 9185 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/inappproducts/{sku}") 9186 urls += "?" + c.urlParams_.Encode() 9187 req, err := http.NewRequest("GET", urls, body) 9188 if err != nil { 9189 return nil, err 9190 } 9191 req.Header = reqHeaders 9192 googleapi.Expand(req.URL, map[string]string{ 9193 "packageName": c.packageName, 9194 "sku": c.skuid, 9195 }) 9196 return gensupport.SendRequest(c.ctx_, c.s.client, req) 9197} 9198 9199// Do executes the "androidpublisher.inappproducts.get" call. 9200// Exactly one of *InAppProduct or error will be non-nil. Any non-2xx 9201// status code is an error. Response headers are in either 9202// *InAppProduct.ServerResponse.Header or (if a response was returned at 9203// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified 9204// to check whether the returned error was because 9205// http.StatusNotModified was returned. 9206func (c *InappproductsGetCall) Do(opts ...googleapi.CallOption) (*InAppProduct, error) { 9207 gensupport.SetOptions(c.urlParams_, opts...) 9208 res, err := c.doRequest("json") 9209 if res != nil && res.StatusCode == http.StatusNotModified { 9210 if res.Body != nil { 9211 res.Body.Close() 9212 } 9213 return nil, &googleapi.Error{ 9214 Code: res.StatusCode, 9215 Header: res.Header, 9216 } 9217 } 9218 if err != nil { 9219 return nil, err 9220 } 9221 defer googleapi.CloseBody(res) 9222 if err := googleapi.CheckResponse(res); err != nil { 9223 return nil, err 9224 } 9225 ret := &InAppProduct{ 9226 ServerResponse: googleapi.ServerResponse{ 9227 Header: res.Header, 9228 HTTPStatusCode: res.StatusCode, 9229 }, 9230 } 9231 target := &ret 9232 if err := gensupport.DecodeResponse(target, res); err != nil { 9233 return nil, err 9234 } 9235 return ret, nil 9236 // { 9237 // "description": "Gets an in-app product, which can be a managed product or a subscription.", 9238 // "flatPath": "androidpublisher/v3/applications/{packageName}/inappproducts/{sku}", 9239 // "httpMethod": "GET", 9240 // "id": "androidpublisher.inappproducts.get", 9241 // "parameterOrder": [ 9242 // "packageName", 9243 // "sku" 9244 // ], 9245 // "parameters": { 9246 // "packageName": { 9247 // "description": "Package name of the app.", 9248 // "location": "path", 9249 // "required": true, 9250 // "type": "string" 9251 // }, 9252 // "sku": { 9253 // "description": "Unique identifier for the in-app product.", 9254 // "location": "path", 9255 // "required": true, 9256 // "type": "string" 9257 // } 9258 // }, 9259 // "path": "androidpublisher/v3/applications/{packageName}/inappproducts/{sku}", 9260 // "response": { 9261 // "$ref": "InAppProduct" 9262 // }, 9263 // "scopes": [ 9264 // "https://www.googleapis.com/auth/androidpublisher" 9265 // ] 9266 // } 9267 9268} 9269 9270// method id "androidpublisher.inappproducts.insert": 9271 9272type InappproductsInsertCall struct { 9273 s *Service 9274 packageName string 9275 inappproduct *InAppProduct 9276 urlParams_ gensupport.URLParams 9277 ctx_ context.Context 9278 header_ http.Header 9279} 9280 9281// Insert: Creates an in-app product (i.e. a managed product or a 9282// subscriptions). 9283// 9284// - packageName: Package name of the app. 9285func (r *InappproductsService) Insert(packageName string, inappproduct *InAppProduct) *InappproductsInsertCall { 9286 c := &InappproductsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)} 9287 c.packageName = packageName 9288 c.inappproduct = inappproduct 9289 return c 9290} 9291 9292// AutoConvertMissingPrices sets the optional parameter 9293// "autoConvertMissingPrices": If true the prices for all regions 9294// targeted by the parent app that don't have a price specified for this 9295// in-app product will be auto converted to the target currency based on 9296// the default price. Defaults to false. 9297func (c *InappproductsInsertCall) AutoConvertMissingPrices(autoConvertMissingPrices bool) *InappproductsInsertCall { 9298 c.urlParams_.Set("autoConvertMissingPrices", fmt.Sprint(autoConvertMissingPrices)) 9299 return c 9300} 9301 9302// Fields allows partial responses to be retrieved. See 9303// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 9304// for more information. 9305func (c *InappproductsInsertCall) Fields(s ...googleapi.Field) *InappproductsInsertCall { 9306 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 9307 return c 9308} 9309 9310// Context sets the context to be used in this call's Do method. Any 9311// pending HTTP request will be aborted if the provided context is 9312// canceled. 9313func (c *InappproductsInsertCall) Context(ctx context.Context) *InappproductsInsertCall { 9314 c.ctx_ = ctx 9315 return c 9316} 9317 9318// Header returns an http.Header that can be modified by the caller to 9319// add HTTP headers to the request. 9320func (c *InappproductsInsertCall) Header() http.Header { 9321 if c.header_ == nil { 9322 c.header_ = make(http.Header) 9323 } 9324 return c.header_ 9325} 9326 9327func (c *InappproductsInsertCall) doRequest(alt string) (*http.Response, error) { 9328 reqHeaders := make(http.Header) 9329 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 9330 for k, v := range c.header_ { 9331 reqHeaders[k] = v 9332 } 9333 reqHeaders.Set("User-Agent", c.s.userAgent()) 9334 var body io.Reader = nil 9335 body, err := googleapi.WithoutDataWrapper.JSONReader(c.inappproduct) 9336 if err != nil { 9337 return nil, err 9338 } 9339 reqHeaders.Set("Content-Type", "application/json") 9340 c.urlParams_.Set("alt", alt) 9341 c.urlParams_.Set("prettyPrint", "false") 9342 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/inappproducts") 9343 urls += "?" + c.urlParams_.Encode() 9344 req, err := http.NewRequest("POST", urls, body) 9345 if err != nil { 9346 return nil, err 9347 } 9348 req.Header = reqHeaders 9349 googleapi.Expand(req.URL, map[string]string{ 9350 "packageName": c.packageName, 9351 }) 9352 return gensupport.SendRequest(c.ctx_, c.s.client, req) 9353} 9354 9355// Do executes the "androidpublisher.inappproducts.insert" call. 9356// Exactly one of *InAppProduct or error will be non-nil. Any non-2xx 9357// status code is an error. Response headers are in either 9358// *InAppProduct.ServerResponse.Header or (if a response was returned at 9359// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified 9360// to check whether the returned error was because 9361// http.StatusNotModified was returned. 9362func (c *InappproductsInsertCall) Do(opts ...googleapi.CallOption) (*InAppProduct, error) { 9363 gensupport.SetOptions(c.urlParams_, opts...) 9364 res, err := c.doRequest("json") 9365 if res != nil && res.StatusCode == http.StatusNotModified { 9366 if res.Body != nil { 9367 res.Body.Close() 9368 } 9369 return nil, &googleapi.Error{ 9370 Code: res.StatusCode, 9371 Header: res.Header, 9372 } 9373 } 9374 if err != nil { 9375 return nil, err 9376 } 9377 defer googleapi.CloseBody(res) 9378 if err := googleapi.CheckResponse(res); err != nil { 9379 return nil, err 9380 } 9381 ret := &InAppProduct{ 9382 ServerResponse: googleapi.ServerResponse{ 9383 Header: res.Header, 9384 HTTPStatusCode: res.StatusCode, 9385 }, 9386 } 9387 target := &ret 9388 if err := gensupport.DecodeResponse(target, res); err != nil { 9389 return nil, err 9390 } 9391 return ret, nil 9392 // { 9393 // "description": "Creates an in-app product (i.e. a managed product or a subscriptions).", 9394 // "flatPath": "androidpublisher/v3/applications/{packageName}/inappproducts", 9395 // "httpMethod": "POST", 9396 // "id": "androidpublisher.inappproducts.insert", 9397 // "parameterOrder": [ 9398 // "packageName" 9399 // ], 9400 // "parameters": { 9401 // "autoConvertMissingPrices": { 9402 // "description": "If true the prices for all regions targeted by the parent app that don't have a price specified for this in-app product will be auto converted to the target currency based on the default price. Defaults to false.", 9403 // "location": "query", 9404 // "type": "boolean" 9405 // }, 9406 // "packageName": { 9407 // "description": "Package name of the app.", 9408 // "location": "path", 9409 // "required": true, 9410 // "type": "string" 9411 // } 9412 // }, 9413 // "path": "androidpublisher/v3/applications/{packageName}/inappproducts", 9414 // "request": { 9415 // "$ref": "InAppProduct" 9416 // }, 9417 // "response": { 9418 // "$ref": "InAppProduct" 9419 // }, 9420 // "scopes": [ 9421 // "https://www.googleapis.com/auth/androidpublisher" 9422 // ] 9423 // } 9424 9425} 9426 9427// method id "androidpublisher.inappproducts.list": 9428 9429type InappproductsListCall struct { 9430 s *Service 9431 packageName string 9432 urlParams_ gensupport.URLParams 9433 ifNoneMatch_ string 9434 ctx_ context.Context 9435 header_ http.Header 9436} 9437 9438// List: Lists all in-app products - both managed products and 9439// subscriptions. 9440// 9441// - packageName: Package name of the app. 9442func (r *InappproductsService) List(packageName string) *InappproductsListCall { 9443 c := &InappproductsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 9444 c.packageName = packageName 9445 return c 9446} 9447 9448// MaxResults sets the optional parameter "maxResults": How many results 9449// the list operation should return. 9450func (c *InappproductsListCall) MaxResults(maxResults int64) *InappproductsListCall { 9451 c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) 9452 return c 9453} 9454 9455// StartIndex sets the optional parameter "startIndex": The index of the 9456// first element to return. 9457func (c *InappproductsListCall) StartIndex(startIndex int64) *InappproductsListCall { 9458 c.urlParams_.Set("startIndex", fmt.Sprint(startIndex)) 9459 return c 9460} 9461 9462// Token sets the optional parameter "token": Pagination token. If 9463// empty, list starts at the first product. 9464func (c *InappproductsListCall) Token(token string) *InappproductsListCall { 9465 c.urlParams_.Set("token", token) 9466 return c 9467} 9468 9469// Fields allows partial responses to be retrieved. See 9470// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 9471// for more information. 9472func (c *InappproductsListCall) Fields(s ...googleapi.Field) *InappproductsListCall { 9473 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 9474 return c 9475} 9476 9477// IfNoneMatch sets the optional parameter which makes the operation 9478// fail if the object's ETag matches the given value. This is useful for 9479// getting updates only after the object has changed since the last 9480// request. Use googleapi.IsNotModified to check whether the response 9481// error from Do is the result of In-None-Match. 9482func (c *InappproductsListCall) IfNoneMatch(entityTag string) *InappproductsListCall { 9483 c.ifNoneMatch_ = entityTag 9484 return c 9485} 9486 9487// Context sets the context to be used in this call's Do method. Any 9488// pending HTTP request will be aborted if the provided context is 9489// canceled. 9490func (c *InappproductsListCall) Context(ctx context.Context) *InappproductsListCall { 9491 c.ctx_ = ctx 9492 return c 9493} 9494 9495// Header returns an http.Header that can be modified by the caller to 9496// add HTTP headers to the request. 9497func (c *InappproductsListCall) Header() http.Header { 9498 if c.header_ == nil { 9499 c.header_ = make(http.Header) 9500 } 9501 return c.header_ 9502} 9503 9504func (c *InappproductsListCall) doRequest(alt string) (*http.Response, error) { 9505 reqHeaders := make(http.Header) 9506 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 9507 for k, v := range c.header_ { 9508 reqHeaders[k] = v 9509 } 9510 reqHeaders.Set("User-Agent", c.s.userAgent()) 9511 if c.ifNoneMatch_ != "" { 9512 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 9513 } 9514 var body io.Reader = nil 9515 c.urlParams_.Set("alt", alt) 9516 c.urlParams_.Set("prettyPrint", "false") 9517 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/inappproducts") 9518 urls += "?" + c.urlParams_.Encode() 9519 req, err := http.NewRequest("GET", urls, body) 9520 if err != nil { 9521 return nil, err 9522 } 9523 req.Header = reqHeaders 9524 googleapi.Expand(req.URL, map[string]string{ 9525 "packageName": c.packageName, 9526 }) 9527 return gensupport.SendRequest(c.ctx_, c.s.client, req) 9528} 9529 9530// Do executes the "androidpublisher.inappproducts.list" call. 9531// Exactly one of *InappproductsListResponse or error will be non-nil. 9532// Any non-2xx status code is an error. Response headers are in either 9533// *InappproductsListResponse.ServerResponse.Header or (if a response 9534// was returned at all) in error.(*googleapi.Error).Header. Use 9535// googleapi.IsNotModified to check whether the returned error was 9536// because http.StatusNotModified was returned. 9537func (c *InappproductsListCall) Do(opts ...googleapi.CallOption) (*InappproductsListResponse, error) { 9538 gensupport.SetOptions(c.urlParams_, opts...) 9539 res, err := c.doRequest("json") 9540 if res != nil && res.StatusCode == http.StatusNotModified { 9541 if res.Body != nil { 9542 res.Body.Close() 9543 } 9544 return nil, &googleapi.Error{ 9545 Code: res.StatusCode, 9546 Header: res.Header, 9547 } 9548 } 9549 if err != nil { 9550 return nil, err 9551 } 9552 defer googleapi.CloseBody(res) 9553 if err := googleapi.CheckResponse(res); err != nil { 9554 return nil, err 9555 } 9556 ret := &InappproductsListResponse{ 9557 ServerResponse: googleapi.ServerResponse{ 9558 Header: res.Header, 9559 HTTPStatusCode: res.StatusCode, 9560 }, 9561 } 9562 target := &ret 9563 if err := gensupport.DecodeResponse(target, res); err != nil { 9564 return nil, err 9565 } 9566 return ret, nil 9567 // { 9568 // "description": "Lists all in-app products - both managed products and subscriptions.", 9569 // "flatPath": "androidpublisher/v3/applications/{packageName}/inappproducts", 9570 // "httpMethod": "GET", 9571 // "id": "androidpublisher.inappproducts.list", 9572 // "parameterOrder": [ 9573 // "packageName" 9574 // ], 9575 // "parameters": { 9576 // "maxResults": { 9577 // "description": "How many results the list operation should return.", 9578 // "format": "uint32", 9579 // "location": "query", 9580 // "type": "integer" 9581 // }, 9582 // "packageName": { 9583 // "description": "Package name of the app.", 9584 // "location": "path", 9585 // "required": true, 9586 // "type": "string" 9587 // }, 9588 // "startIndex": { 9589 // "description": "The index of the first element to return.", 9590 // "format": "uint32", 9591 // "location": "query", 9592 // "type": "integer" 9593 // }, 9594 // "token": { 9595 // "description": "Pagination token. If empty, list starts at the first product.", 9596 // "location": "query", 9597 // "type": "string" 9598 // } 9599 // }, 9600 // "path": "androidpublisher/v3/applications/{packageName}/inappproducts", 9601 // "response": { 9602 // "$ref": "InappproductsListResponse" 9603 // }, 9604 // "scopes": [ 9605 // "https://www.googleapis.com/auth/androidpublisher" 9606 // ] 9607 // } 9608 9609} 9610 9611// method id "androidpublisher.inappproducts.patch": 9612 9613type InappproductsPatchCall struct { 9614 s *Service 9615 packageName string 9616 skuid string 9617 inappproduct *InAppProduct 9618 urlParams_ gensupport.URLParams 9619 ctx_ context.Context 9620 header_ http.Header 9621} 9622 9623// Patch: Patches an in-app product (i.e. a managed product or a 9624// subscriptions). 9625// 9626// - packageName: Package name of the app. 9627// - sku: Unique identifier for the in-app product. 9628func (r *InappproductsService) Patch(packageName string, skuid string, inappproduct *InAppProduct) *InappproductsPatchCall { 9629 c := &InappproductsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} 9630 c.packageName = packageName 9631 c.skuid = skuid 9632 c.inappproduct = inappproduct 9633 return c 9634} 9635 9636// AutoConvertMissingPrices sets the optional parameter 9637// "autoConvertMissingPrices": If true the prices for all regions 9638// targeted by the parent app that don't have a price specified for this 9639// in-app product will be auto converted to the target currency based on 9640// the default price. Defaults to false. 9641func (c *InappproductsPatchCall) AutoConvertMissingPrices(autoConvertMissingPrices bool) *InappproductsPatchCall { 9642 c.urlParams_.Set("autoConvertMissingPrices", fmt.Sprint(autoConvertMissingPrices)) 9643 return c 9644} 9645 9646// Fields allows partial responses to be retrieved. See 9647// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 9648// for more information. 9649func (c *InappproductsPatchCall) Fields(s ...googleapi.Field) *InappproductsPatchCall { 9650 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 9651 return c 9652} 9653 9654// Context sets the context to be used in this call's Do method. Any 9655// pending HTTP request will be aborted if the provided context is 9656// canceled. 9657func (c *InappproductsPatchCall) Context(ctx context.Context) *InappproductsPatchCall { 9658 c.ctx_ = ctx 9659 return c 9660} 9661 9662// Header returns an http.Header that can be modified by the caller to 9663// add HTTP headers to the request. 9664func (c *InappproductsPatchCall) Header() http.Header { 9665 if c.header_ == nil { 9666 c.header_ = make(http.Header) 9667 } 9668 return c.header_ 9669} 9670 9671func (c *InappproductsPatchCall) doRequest(alt string) (*http.Response, error) { 9672 reqHeaders := make(http.Header) 9673 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 9674 for k, v := range c.header_ { 9675 reqHeaders[k] = v 9676 } 9677 reqHeaders.Set("User-Agent", c.s.userAgent()) 9678 var body io.Reader = nil 9679 body, err := googleapi.WithoutDataWrapper.JSONReader(c.inappproduct) 9680 if err != nil { 9681 return nil, err 9682 } 9683 reqHeaders.Set("Content-Type", "application/json") 9684 c.urlParams_.Set("alt", alt) 9685 c.urlParams_.Set("prettyPrint", "false") 9686 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/inappproducts/{sku}") 9687 urls += "?" + c.urlParams_.Encode() 9688 req, err := http.NewRequest("PATCH", urls, body) 9689 if err != nil { 9690 return nil, err 9691 } 9692 req.Header = reqHeaders 9693 googleapi.Expand(req.URL, map[string]string{ 9694 "packageName": c.packageName, 9695 "sku": c.skuid, 9696 }) 9697 return gensupport.SendRequest(c.ctx_, c.s.client, req) 9698} 9699 9700// Do executes the "androidpublisher.inappproducts.patch" call. 9701// Exactly one of *InAppProduct or error will be non-nil. Any non-2xx 9702// status code is an error. Response headers are in either 9703// *InAppProduct.ServerResponse.Header or (if a response was returned at 9704// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified 9705// to check whether the returned error was because 9706// http.StatusNotModified was returned. 9707func (c *InappproductsPatchCall) Do(opts ...googleapi.CallOption) (*InAppProduct, error) { 9708 gensupport.SetOptions(c.urlParams_, opts...) 9709 res, err := c.doRequest("json") 9710 if res != nil && res.StatusCode == http.StatusNotModified { 9711 if res.Body != nil { 9712 res.Body.Close() 9713 } 9714 return nil, &googleapi.Error{ 9715 Code: res.StatusCode, 9716 Header: res.Header, 9717 } 9718 } 9719 if err != nil { 9720 return nil, err 9721 } 9722 defer googleapi.CloseBody(res) 9723 if err := googleapi.CheckResponse(res); err != nil { 9724 return nil, err 9725 } 9726 ret := &InAppProduct{ 9727 ServerResponse: googleapi.ServerResponse{ 9728 Header: res.Header, 9729 HTTPStatusCode: res.StatusCode, 9730 }, 9731 } 9732 target := &ret 9733 if err := gensupport.DecodeResponse(target, res); err != nil { 9734 return nil, err 9735 } 9736 return ret, nil 9737 // { 9738 // "description": "Patches an in-app product (i.e. a managed product or a subscriptions).", 9739 // "flatPath": "androidpublisher/v3/applications/{packageName}/inappproducts/{sku}", 9740 // "httpMethod": "PATCH", 9741 // "id": "androidpublisher.inappproducts.patch", 9742 // "parameterOrder": [ 9743 // "packageName", 9744 // "sku" 9745 // ], 9746 // "parameters": { 9747 // "autoConvertMissingPrices": { 9748 // "description": "If true the prices for all regions targeted by the parent app that don't have a price specified for this in-app product will be auto converted to the target currency based on the default price. Defaults to false.", 9749 // "location": "query", 9750 // "type": "boolean" 9751 // }, 9752 // "packageName": { 9753 // "description": "Package name of the app.", 9754 // "location": "path", 9755 // "required": true, 9756 // "type": "string" 9757 // }, 9758 // "sku": { 9759 // "description": "Unique identifier for the in-app product.", 9760 // "location": "path", 9761 // "required": true, 9762 // "type": "string" 9763 // } 9764 // }, 9765 // "path": "androidpublisher/v3/applications/{packageName}/inappproducts/{sku}", 9766 // "request": { 9767 // "$ref": "InAppProduct" 9768 // }, 9769 // "response": { 9770 // "$ref": "InAppProduct" 9771 // }, 9772 // "scopes": [ 9773 // "https://www.googleapis.com/auth/androidpublisher" 9774 // ] 9775 // } 9776 9777} 9778 9779// method id "androidpublisher.inappproducts.update": 9780 9781type InappproductsUpdateCall struct { 9782 s *Service 9783 packageName string 9784 skuid string 9785 inappproduct *InAppProduct 9786 urlParams_ gensupport.URLParams 9787 ctx_ context.Context 9788 header_ http.Header 9789} 9790 9791// Update: Updates an in-app product (i.e. a managed product or a 9792// subscriptions). 9793// 9794// - packageName: Package name of the app. 9795// - sku: Unique identifier for the in-app product. 9796func (r *InappproductsService) Update(packageName string, skuid string, inappproduct *InAppProduct) *InappproductsUpdateCall { 9797 c := &InappproductsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} 9798 c.packageName = packageName 9799 c.skuid = skuid 9800 c.inappproduct = inappproduct 9801 return c 9802} 9803 9804// AutoConvertMissingPrices sets the optional parameter 9805// "autoConvertMissingPrices": If true the prices for all regions 9806// targeted by the parent app that don't have a price specified for this 9807// in-app product will be auto converted to the target currency based on 9808// the default price. Defaults to false. 9809func (c *InappproductsUpdateCall) AutoConvertMissingPrices(autoConvertMissingPrices bool) *InappproductsUpdateCall { 9810 c.urlParams_.Set("autoConvertMissingPrices", fmt.Sprint(autoConvertMissingPrices)) 9811 return c 9812} 9813 9814// Fields allows partial responses to be retrieved. See 9815// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 9816// for more information. 9817func (c *InappproductsUpdateCall) Fields(s ...googleapi.Field) *InappproductsUpdateCall { 9818 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 9819 return c 9820} 9821 9822// Context sets the context to be used in this call's Do method. Any 9823// pending HTTP request will be aborted if the provided context is 9824// canceled. 9825func (c *InappproductsUpdateCall) Context(ctx context.Context) *InappproductsUpdateCall { 9826 c.ctx_ = ctx 9827 return c 9828} 9829 9830// Header returns an http.Header that can be modified by the caller to 9831// add HTTP headers to the request. 9832func (c *InappproductsUpdateCall) Header() http.Header { 9833 if c.header_ == nil { 9834 c.header_ = make(http.Header) 9835 } 9836 return c.header_ 9837} 9838 9839func (c *InappproductsUpdateCall) doRequest(alt string) (*http.Response, error) { 9840 reqHeaders := make(http.Header) 9841 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 9842 for k, v := range c.header_ { 9843 reqHeaders[k] = v 9844 } 9845 reqHeaders.Set("User-Agent", c.s.userAgent()) 9846 var body io.Reader = nil 9847 body, err := googleapi.WithoutDataWrapper.JSONReader(c.inappproduct) 9848 if err != nil { 9849 return nil, err 9850 } 9851 reqHeaders.Set("Content-Type", "application/json") 9852 c.urlParams_.Set("alt", alt) 9853 c.urlParams_.Set("prettyPrint", "false") 9854 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/inappproducts/{sku}") 9855 urls += "?" + c.urlParams_.Encode() 9856 req, err := http.NewRequest("PUT", urls, body) 9857 if err != nil { 9858 return nil, err 9859 } 9860 req.Header = reqHeaders 9861 googleapi.Expand(req.URL, map[string]string{ 9862 "packageName": c.packageName, 9863 "sku": c.skuid, 9864 }) 9865 return gensupport.SendRequest(c.ctx_, c.s.client, req) 9866} 9867 9868// Do executes the "androidpublisher.inappproducts.update" call. 9869// Exactly one of *InAppProduct or error will be non-nil. Any non-2xx 9870// status code is an error. Response headers are in either 9871// *InAppProduct.ServerResponse.Header or (if a response was returned at 9872// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified 9873// to check whether the returned error was because 9874// http.StatusNotModified was returned. 9875func (c *InappproductsUpdateCall) Do(opts ...googleapi.CallOption) (*InAppProduct, error) { 9876 gensupport.SetOptions(c.urlParams_, opts...) 9877 res, err := c.doRequest("json") 9878 if res != nil && res.StatusCode == http.StatusNotModified { 9879 if res.Body != nil { 9880 res.Body.Close() 9881 } 9882 return nil, &googleapi.Error{ 9883 Code: res.StatusCode, 9884 Header: res.Header, 9885 } 9886 } 9887 if err != nil { 9888 return nil, err 9889 } 9890 defer googleapi.CloseBody(res) 9891 if err := googleapi.CheckResponse(res); err != nil { 9892 return nil, err 9893 } 9894 ret := &InAppProduct{ 9895 ServerResponse: googleapi.ServerResponse{ 9896 Header: res.Header, 9897 HTTPStatusCode: res.StatusCode, 9898 }, 9899 } 9900 target := &ret 9901 if err := gensupport.DecodeResponse(target, res); err != nil { 9902 return nil, err 9903 } 9904 return ret, nil 9905 // { 9906 // "description": "Updates an in-app product (i.e. a managed product or a subscriptions).", 9907 // "flatPath": "androidpublisher/v3/applications/{packageName}/inappproducts/{sku}", 9908 // "httpMethod": "PUT", 9909 // "id": "androidpublisher.inappproducts.update", 9910 // "parameterOrder": [ 9911 // "packageName", 9912 // "sku" 9913 // ], 9914 // "parameters": { 9915 // "autoConvertMissingPrices": { 9916 // "description": "If true the prices for all regions targeted by the parent app that don't have a price specified for this in-app product will be auto converted to the target currency based on the default price. Defaults to false.", 9917 // "location": "query", 9918 // "type": "boolean" 9919 // }, 9920 // "packageName": { 9921 // "description": "Package name of the app.", 9922 // "location": "path", 9923 // "required": true, 9924 // "type": "string" 9925 // }, 9926 // "sku": { 9927 // "description": "Unique identifier for the in-app product.", 9928 // "location": "path", 9929 // "required": true, 9930 // "type": "string" 9931 // } 9932 // }, 9933 // "path": "androidpublisher/v3/applications/{packageName}/inappproducts/{sku}", 9934 // "request": { 9935 // "$ref": "InAppProduct" 9936 // }, 9937 // "response": { 9938 // "$ref": "InAppProduct" 9939 // }, 9940 // "scopes": [ 9941 // "https://www.googleapis.com/auth/androidpublisher" 9942 // ] 9943 // } 9944 9945} 9946 9947// method id "androidpublisher.internalappsharingartifacts.uploadapk": 9948 9949type InternalappsharingartifactsUploadapkCall struct { 9950 s *Service 9951 packageName string 9952 urlParams_ gensupport.URLParams 9953 mediaInfo_ *gensupport.MediaInfo 9954 ctx_ context.Context 9955 header_ http.Header 9956} 9957 9958// Uploadapk: Uploads an APK to internal app sharing. If you are using 9959// the Google API client libraries, please increase the timeout of the 9960// http request before calling this endpoint (a timeout of 2 minutes is 9961// recommended). See Timeouts and Errors 9962// (https://developers.google.com/api-client-library/java/google-api-java-client/errors) 9963// for an example in java. 9964// 9965// - packageName: Package name of the app. 9966func (r *InternalappsharingartifactsService) Uploadapk(packageName string) *InternalappsharingartifactsUploadapkCall { 9967 c := &InternalappsharingartifactsUploadapkCall{s: r.s, urlParams_: make(gensupport.URLParams)} 9968 c.packageName = packageName 9969 return c 9970} 9971 9972// Media specifies the media to upload in one or more chunks. The chunk 9973// size may be controlled by supplying a MediaOption generated by 9974// googleapi.ChunkSize. The chunk size defaults to 9975// googleapi.DefaultUploadChunkSize.The Content-Type header used in the 9976// upload request will be determined by sniffing the contents of r, 9977// unless a MediaOption generated by googleapi.ContentType is 9978// supplied. 9979// At most one of Media and ResumableMedia may be set. 9980func (c *InternalappsharingartifactsUploadapkCall) Media(r io.Reader, options ...googleapi.MediaOption) *InternalappsharingartifactsUploadapkCall { 9981 c.mediaInfo_ = gensupport.NewInfoFromMedia(r, options) 9982 return c 9983} 9984 9985// ResumableMedia specifies the media to upload in chunks and can be 9986// canceled with ctx. 9987// 9988// Deprecated: use Media instead. 9989// 9990// At most one of Media and ResumableMedia may be set. mediaType 9991// identifies the MIME media type of the upload, such as "image/png". If 9992// mediaType is "", it will be auto-detected. The provided ctx will 9993// supersede any context previously provided to the Context method. 9994func (c *InternalappsharingartifactsUploadapkCall) ResumableMedia(ctx context.Context, r io.ReaderAt, size int64, mediaType string) *InternalappsharingartifactsUploadapkCall { 9995 c.ctx_ = ctx 9996 c.mediaInfo_ = gensupport.NewInfoFromResumableMedia(r, size, mediaType) 9997 return c 9998} 9999 10000// ProgressUpdater provides a callback function that will be called 10001// after every chunk. It should be a low-latency function in order to 10002// not slow down the upload operation. This should only be called when 10003// using ResumableMedia (as opposed to Media). 10004func (c *InternalappsharingartifactsUploadapkCall) ProgressUpdater(pu googleapi.ProgressUpdater) *InternalappsharingartifactsUploadapkCall { 10005 c.mediaInfo_.SetProgressUpdater(pu) 10006 return c 10007} 10008 10009// Fields allows partial responses to be retrieved. See 10010// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 10011// for more information. 10012func (c *InternalappsharingartifactsUploadapkCall) Fields(s ...googleapi.Field) *InternalappsharingartifactsUploadapkCall { 10013 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 10014 return c 10015} 10016 10017// Context sets the context to be used in this call's Do method. Any 10018// pending HTTP request will be aborted if the provided context is 10019// canceled. 10020// This context will supersede any context previously provided to the 10021// ResumableMedia method. 10022func (c *InternalappsharingartifactsUploadapkCall) Context(ctx context.Context) *InternalappsharingartifactsUploadapkCall { 10023 c.ctx_ = ctx 10024 return c 10025} 10026 10027// Header returns an http.Header that can be modified by the caller to 10028// add HTTP headers to the request. 10029func (c *InternalappsharingartifactsUploadapkCall) Header() http.Header { 10030 if c.header_ == nil { 10031 c.header_ = make(http.Header) 10032 } 10033 return c.header_ 10034} 10035 10036func (c *InternalappsharingartifactsUploadapkCall) doRequest(alt string) (*http.Response, error) { 10037 reqHeaders := make(http.Header) 10038 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 10039 for k, v := range c.header_ { 10040 reqHeaders[k] = v 10041 } 10042 reqHeaders.Set("User-Agent", c.s.userAgent()) 10043 var body io.Reader = nil 10044 c.urlParams_.Set("alt", alt) 10045 c.urlParams_.Set("prettyPrint", "false") 10046 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/internalappsharing/{packageName}/artifacts/apk") 10047 if c.mediaInfo_ != nil { 10048 urls = googleapi.ResolveRelative(c.s.BasePath, "/upload/androidpublisher/v3/applications/internalappsharing/{packageName}/artifacts/apk") 10049 c.urlParams_.Set("uploadType", c.mediaInfo_.UploadType()) 10050 } 10051 if body == nil { 10052 body = new(bytes.Buffer) 10053 reqHeaders.Set("Content-Type", "application/json") 10054 } 10055 body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) 10056 defer cleanup() 10057 urls += "?" + c.urlParams_.Encode() 10058 req, err := http.NewRequest("POST", urls, body) 10059 if err != nil { 10060 return nil, err 10061 } 10062 req.Header = reqHeaders 10063 req.GetBody = getBody 10064 googleapi.Expand(req.URL, map[string]string{ 10065 "packageName": c.packageName, 10066 }) 10067 return gensupport.SendRequest(c.ctx_, c.s.client, req) 10068} 10069 10070// Do executes the "androidpublisher.internalappsharingartifacts.uploadapk" call. 10071// Exactly one of *InternalAppSharingArtifact or error will be non-nil. 10072// Any non-2xx status code is an error. Response headers are in either 10073// *InternalAppSharingArtifact.ServerResponse.Header or (if a response 10074// was returned at all) in error.(*googleapi.Error).Header. Use 10075// googleapi.IsNotModified to check whether the returned error was 10076// because http.StatusNotModified was returned. 10077func (c *InternalappsharingartifactsUploadapkCall) Do(opts ...googleapi.CallOption) (*InternalAppSharingArtifact, error) { 10078 gensupport.SetOptions(c.urlParams_, opts...) 10079 res, err := c.doRequest("json") 10080 if res != nil && res.StatusCode == http.StatusNotModified { 10081 if res.Body != nil { 10082 res.Body.Close() 10083 } 10084 return nil, &googleapi.Error{ 10085 Code: res.StatusCode, 10086 Header: res.Header, 10087 } 10088 } 10089 if err != nil { 10090 return nil, err 10091 } 10092 defer googleapi.CloseBody(res) 10093 if err := googleapi.CheckResponse(res); err != nil { 10094 return nil, err 10095 } 10096 rx := c.mediaInfo_.ResumableUpload(res.Header.Get("Location")) 10097 if rx != nil { 10098 rx.Client = c.s.client 10099 rx.UserAgent = c.s.userAgent() 10100 ctx := c.ctx_ 10101 if ctx == nil { 10102 ctx = context.TODO() 10103 } 10104 res, err = rx.Upload(ctx) 10105 if err != nil { 10106 return nil, err 10107 } 10108 defer res.Body.Close() 10109 if err := googleapi.CheckResponse(res); err != nil { 10110 return nil, err 10111 } 10112 } 10113 ret := &InternalAppSharingArtifact{ 10114 ServerResponse: googleapi.ServerResponse{ 10115 Header: res.Header, 10116 HTTPStatusCode: res.StatusCode, 10117 }, 10118 } 10119 target := &ret 10120 if err := gensupport.DecodeResponse(target, res); err != nil { 10121 return nil, err 10122 } 10123 return ret, nil 10124 // { 10125 // "description": "Uploads an APK to internal app sharing. If you are using the Google API client libraries, please increase the timeout of the http request before calling this endpoint (a timeout of 2 minutes is recommended). See [Timeouts and Errors](https://developers.google.com/api-client-library/java/google-api-java-client/errors) for an example in java.", 10126 // "flatPath": "androidpublisher/v3/applications/internalappsharing/{packageName}/artifacts/apk", 10127 // "httpMethod": "POST", 10128 // "id": "androidpublisher.internalappsharingartifacts.uploadapk", 10129 // "mediaUpload": { 10130 // "accept": [ 10131 // "application/octet-stream", 10132 // "application/vnd.android.package-archive" 10133 // ], 10134 // "maxSize": "1073741824", 10135 // "protocols": { 10136 // "resumable": { 10137 // "multipart": true, 10138 // "path": "/resumable/upload/androidpublisher/v3/applications/internalappsharing/{packageName}/artifacts/apk" 10139 // }, 10140 // "simple": { 10141 // "multipart": true, 10142 // "path": "/upload/androidpublisher/v3/applications/internalappsharing/{packageName}/artifacts/apk" 10143 // } 10144 // } 10145 // }, 10146 // "parameterOrder": [ 10147 // "packageName" 10148 // ], 10149 // "parameters": { 10150 // "packageName": { 10151 // "description": "Package name of the app.", 10152 // "location": "path", 10153 // "required": true, 10154 // "type": "string" 10155 // } 10156 // }, 10157 // "path": "androidpublisher/v3/applications/internalappsharing/{packageName}/artifacts/apk", 10158 // "response": { 10159 // "$ref": "InternalAppSharingArtifact" 10160 // }, 10161 // "scopes": [ 10162 // "https://www.googleapis.com/auth/androidpublisher" 10163 // ], 10164 // "supportsMediaUpload": true 10165 // } 10166 10167} 10168 10169// method id "androidpublisher.internalappsharingartifacts.uploadbundle": 10170 10171type InternalappsharingartifactsUploadbundleCall struct { 10172 s *Service 10173 packageName string 10174 urlParams_ gensupport.URLParams 10175 mediaInfo_ *gensupport.MediaInfo 10176 ctx_ context.Context 10177 header_ http.Header 10178} 10179 10180// Uploadbundle: Uploads an app bundle to internal app sharing. If you 10181// are using the Google API client libraries, please increase the 10182// timeout of the http request before calling this endpoint (a timeout 10183// of 2 minutes is recommended). See Timeouts and Errors 10184// (https://developers.google.com/api-client-library/java/google-api-java-client/errors) 10185// for an example in java. 10186// 10187// - packageName: Package name of the app. 10188func (r *InternalappsharingartifactsService) Uploadbundle(packageName string) *InternalappsharingartifactsUploadbundleCall { 10189 c := &InternalappsharingartifactsUploadbundleCall{s: r.s, urlParams_: make(gensupport.URLParams)} 10190 c.packageName = packageName 10191 return c 10192} 10193 10194// Media specifies the media to upload in one or more chunks. The chunk 10195// size may be controlled by supplying a MediaOption generated by 10196// googleapi.ChunkSize. The chunk size defaults to 10197// googleapi.DefaultUploadChunkSize.The Content-Type header used in the 10198// upload request will be determined by sniffing the contents of r, 10199// unless a MediaOption generated by googleapi.ContentType is 10200// supplied. 10201// At most one of Media and ResumableMedia may be set. 10202func (c *InternalappsharingartifactsUploadbundleCall) Media(r io.Reader, options ...googleapi.MediaOption) *InternalappsharingartifactsUploadbundleCall { 10203 c.mediaInfo_ = gensupport.NewInfoFromMedia(r, options) 10204 return c 10205} 10206 10207// ResumableMedia specifies the media to upload in chunks and can be 10208// canceled with ctx. 10209// 10210// Deprecated: use Media instead. 10211// 10212// At most one of Media and ResumableMedia may be set. mediaType 10213// identifies the MIME media type of the upload, such as "image/png". If 10214// mediaType is "", it will be auto-detected. The provided ctx will 10215// supersede any context previously provided to the Context method. 10216func (c *InternalappsharingartifactsUploadbundleCall) ResumableMedia(ctx context.Context, r io.ReaderAt, size int64, mediaType string) *InternalappsharingartifactsUploadbundleCall { 10217 c.ctx_ = ctx 10218 c.mediaInfo_ = gensupport.NewInfoFromResumableMedia(r, size, mediaType) 10219 return c 10220} 10221 10222// ProgressUpdater provides a callback function that will be called 10223// after every chunk. It should be a low-latency function in order to 10224// not slow down the upload operation. This should only be called when 10225// using ResumableMedia (as opposed to Media). 10226func (c *InternalappsharingartifactsUploadbundleCall) ProgressUpdater(pu googleapi.ProgressUpdater) *InternalappsharingartifactsUploadbundleCall { 10227 c.mediaInfo_.SetProgressUpdater(pu) 10228 return c 10229} 10230 10231// Fields allows partial responses to be retrieved. See 10232// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 10233// for more information. 10234func (c *InternalappsharingartifactsUploadbundleCall) Fields(s ...googleapi.Field) *InternalappsharingartifactsUploadbundleCall { 10235 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 10236 return c 10237} 10238 10239// Context sets the context to be used in this call's Do method. Any 10240// pending HTTP request will be aborted if the provided context is 10241// canceled. 10242// This context will supersede any context previously provided to the 10243// ResumableMedia method. 10244func (c *InternalappsharingartifactsUploadbundleCall) Context(ctx context.Context) *InternalappsharingartifactsUploadbundleCall { 10245 c.ctx_ = ctx 10246 return c 10247} 10248 10249// Header returns an http.Header that can be modified by the caller to 10250// add HTTP headers to the request. 10251func (c *InternalappsharingartifactsUploadbundleCall) Header() http.Header { 10252 if c.header_ == nil { 10253 c.header_ = make(http.Header) 10254 } 10255 return c.header_ 10256} 10257 10258func (c *InternalappsharingartifactsUploadbundleCall) doRequest(alt string) (*http.Response, error) { 10259 reqHeaders := make(http.Header) 10260 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 10261 for k, v := range c.header_ { 10262 reqHeaders[k] = v 10263 } 10264 reqHeaders.Set("User-Agent", c.s.userAgent()) 10265 var body io.Reader = nil 10266 c.urlParams_.Set("alt", alt) 10267 c.urlParams_.Set("prettyPrint", "false") 10268 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/internalappsharing/{packageName}/artifacts/bundle") 10269 if c.mediaInfo_ != nil { 10270 urls = googleapi.ResolveRelative(c.s.BasePath, "/upload/androidpublisher/v3/applications/internalappsharing/{packageName}/artifacts/bundle") 10271 c.urlParams_.Set("uploadType", c.mediaInfo_.UploadType()) 10272 } 10273 if body == nil { 10274 body = new(bytes.Buffer) 10275 reqHeaders.Set("Content-Type", "application/json") 10276 } 10277 body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) 10278 defer cleanup() 10279 urls += "?" + c.urlParams_.Encode() 10280 req, err := http.NewRequest("POST", urls, body) 10281 if err != nil { 10282 return nil, err 10283 } 10284 req.Header = reqHeaders 10285 req.GetBody = getBody 10286 googleapi.Expand(req.URL, map[string]string{ 10287 "packageName": c.packageName, 10288 }) 10289 return gensupport.SendRequest(c.ctx_, c.s.client, req) 10290} 10291 10292// Do executes the "androidpublisher.internalappsharingartifacts.uploadbundle" call. 10293// Exactly one of *InternalAppSharingArtifact or error will be non-nil. 10294// Any non-2xx status code is an error. Response headers are in either 10295// *InternalAppSharingArtifact.ServerResponse.Header or (if a response 10296// was returned at all) in error.(*googleapi.Error).Header. Use 10297// googleapi.IsNotModified to check whether the returned error was 10298// because http.StatusNotModified was returned. 10299func (c *InternalappsharingartifactsUploadbundleCall) Do(opts ...googleapi.CallOption) (*InternalAppSharingArtifact, error) { 10300 gensupport.SetOptions(c.urlParams_, opts...) 10301 res, err := c.doRequest("json") 10302 if res != nil && res.StatusCode == http.StatusNotModified { 10303 if res.Body != nil { 10304 res.Body.Close() 10305 } 10306 return nil, &googleapi.Error{ 10307 Code: res.StatusCode, 10308 Header: res.Header, 10309 } 10310 } 10311 if err != nil { 10312 return nil, err 10313 } 10314 defer googleapi.CloseBody(res) 10315 if err := googleapi.CheckResponse(res); err != nil { 10316 return nil, err 10317 } 10318 rx := c.mediaInfo_.ResumableUpload(res.Header.Get("Location")) 10319 if rx != nil { 10320 rx.Client = c.s.client 10321 rx.UserAgent = c.s.userAgent() 10322 ctx := c.ctx_ 10323 if ctx == nil { 10324 ctx = context.TODO() 10325 } 10326 res, err = rx.Upload(ctx) 10327 if err != nil { 10328 return nil, err 10329 } 10330 defer res.Body.Close() 10331 if err := googleapi.CheckResponse(res); err != nil { 10332 return nil, err 10333 } 10334 } 10335 ret := &InternalAppSharingArtifact{ 10336 ServerResponse: googleapi.ServerResponse{ 10337 Header: res.Header, 10338 HTTPStatusCode: res.StatusCode, 10339 }, 10340 } 10341 target := &ret 10342 if err := gensupport.DecodeResponse(target, res); err != nil { 10343 return nil, err 10344 } 10345 return ret, nil 10346 // { 10347 // "description": "Uploads an app bundle to internal app sharing. If you are using the Google API client libraries, please increase the timeout of the http request before calling this endpoint (a timeout of 2 minutes is recommended). See [Timeouts and Errors](https://developers.google.com/api-client-library/java/google-api-java-client/errors) for an example in java.", 10348 // "flatPath": "androidpublisher/v3/applications/internalappsharing/{packageName}/artifacts/bundle", 10349 // "httpMethod": "POST", 10350 // "id": "androidpublisher.internalappsharingartifacts.uploadbundle", 10351 // "mediaUpload": { 10352 // "accept": [ 10353 // "application/octet-stream" 10354 // ], 10355 // "maxSize": "10737418240", 10356 // "protocols": { 10357 // "resumable": { 10358 // "multipart": true, 10359 // "path": "/resumable/upload/androidpublisher/v3/applications/internalappsharing/{packageName}/artifacts/bundle" 10360 // }, 10361 // "simple": { 10362 // "multipart": true, 10363 // "path": "/upload/androidpublisher/v3/applications/internalappsharing/{packageName}/artifacts/bundle" 10364 // } 10365 // } 10366 // }, 10367 // "parameterOrder": [ 10368 // "packageName" 10369 // ], 10370 // "parameters": { 10371 // "packageName": { 10372 // "description": "Package name of the app.", 10373 // "location": "path", 10374 // "required": true, 10375 // "type": "string" 10376 // } 10377 // }, 10378 // "path": "androidpublisher/v3/applications/internalappsharing/{packageName}/artifacts/bundle", 10379 // "response": { 10380 // "$ref": "InternalAppSharingArtifact" 10381 // }, 10382 // "scopes": [ 10383 // "https://www.googleapis.com/auth/androidpublisher" 10384 // ], 10385 // "supportsMediaUpload": true 10386 // } 10387 10388} 10389 10390// method id "androidpublisher.orders.refund": 10391 10392type OrdersRefundCall struct { 10393 s *Service 10394 packageName string 10395 orderId string 10396 urlParams_ gensupport.URLParams 10397 ctx_ context.Context 10398 header_ http.Header 10399} 10400 10401// Refund: Refund a user's subscription or in-app purchase order. 10402// 10403// - orderId: The order ID provided to the user when the subscription or 10404// in-app order was purchased. 10405// - packageName: The package name of the application for which this 10406// subscription or in-app item was purchased (for example, 10407// 'com.some.thing'). 10408func (r *OrdersService) Refund(packageName string, orderId string) *OrdersRefundCall { 10409 c := &OrdersRefundCall{s: r.s, urlParams_: make(gensupport.URLParams)} 10410 c.packageName = packageName 10411 c.orderId = orderId 10412 return c 10413} 10414 10415// Revoke sets the optional parameter "revoke": Whether to revoke the 10416// purchased item. If set to true, access to the subscription or in-app 10417// item will be terminated immediately. If the item is a recurring 10418// subscription, all future payments will also be terminated. Consumed 10419// in-app items need to be handled by developer's app. (optional). 10420func (c *OrdersRefundCall) Revoke(revoke bool) *OrdersRefundCall { 10421 c.urlParams_.Set("revoke", fmt.Sprint(revoke)) 10422 return c 10423} 10424 10425// Fields allows partial responses to be retrieved. See 10426// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 10427// for more information. 10428func (c *OrdersRefundCall) Fields(s ...googleapi.Field) *OrdersRefundCall { 10429 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 10430 return c 10431} 10432 10433// Context sets the context to be used in this call's Do method. Any 10434// pending HTTP request will be aborted if the provided context is 10435// canceled. 10436func (c *OrdersRefundCall) Context(ctx context.Context) *OrdersRefundCall { 10437 c.ctx_ = ctx 10438 return c 10439} 10440 10441// Header returns an http.Header that can be modified by the caller to 10442// add HTTP headers to the request. 10443func (c *OrdersRefundCall) Header() http.Header { 10444 if c.header_ == nil { 10445 c.header_ = make(http.Header) 10446 } 10447 return c.header_ 10448} 10449 10450func (c *OrdersRefundCall) doRequest(alt string) (*http.Response, error) { 10451 reqHeaders := make(http.Header) 10452 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 10453 for k, v := range c.header_ { 10454 reqHeaders[k] = v 10455 } 10456 reqHeaders.Set("User-Agent", c.s.userAgent()) 10457 var body io.Reader = nil 10458 c.urlParams_.Set("alt", alt) 10459 c.urlParams_.Set("prettyPrint", "false") 10460 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/orders/{orderId}:refund") 10461 urls += "?" + c.urlParams_.Encode() 10462 req, err := http.NewRequest("POST", urls, body) 10463 if err != nil { 10464 return nil, err 10465 } 10466 req.Header = reqHeaders 10467 googleapi.Expand(req.URL, map[string]string{ 10468 "packageName": c.packageName, 10469 "orderId": c.orderId, 10470 }) 10471 return gensupport.SendRequest(c.ctx_, c.s.client, req) 10472} 10473 10474// Do executes the "androidpublisher.orders.refund" call. 10475func (c *OrdersRefundCall) Do(opts ...googleapi.CallOption) error { 10476 gensupport.SetOptions(c.urlParams_, opts...) 10477 res, err := c.doRequest("json") 10478 if err != nil { 10479 return err 10480 } 10481 defer googleapi.CloseBody(res) 10482 if err := googleapi.CheckResponse(res); err != nil { 10483 return err 10484 } 10485 return nil 10486 // { 10487 // "description": "Refund a user's subscription or in-app purchase order.", 10488 // "flatPath": "androidpublisher/v3/applications/{packageName}/orders/{orderId}:refund", 10489 // "httpMethod": "POST", 10490 // "id": "androidpublisher.orders.refund", 10491 // "parameterOrder": [ 10492 // "packageName", 10493 // "orderId" 10494 // ], 10495 // "parameters": { 10496 // "orderId": { 10497 // "description": "The order ID provided to the user when the subscription or in-app order was purchased.", 10498 // "location": "path", 10499 // "required": true, 10500 // "type": "string" 10501 // }, 10502 // "packageName": { 10503 // "description": "The package name of the application for which this subscription or in-app item was purchased (for example, 'com.some.thing').", 10504 // "location": "path", 10505 // "required": true, 10506 // "type": "string" 10507 // }, 10508 // "revoke": { 10509 // "description": "Whether to revoke the purchased item. If set to true, access to the subscription or in-app item will be terminated immediately. If the item is a recurring subscription, all future payments will also be terminated. Consumed in-app items need to be handled by developer's app. (optional).", 10510 // "location": "query", 10511 // "type": "boolean" 10512 // } 10513 // }, 10514 // "path": "androidpublisher/v3/applications/{packageName}/orders/{orderId}:refund", 10515 // "scopes": [ 10516 // "https://www.googleapis.com/auth/androidpublisher" 10517 // ] 10518 // } 10519 10520} 10521 10522// method id "androidpublisher.purchases.products.acknowledge": 10523 10524type PurchasesProductsAcknowledgeCall struct { 10525 s *Service 10526 packageName string 10527 productId string 10528 token string 10529 productpurchasesacknowledgerequest *ProductPurchasesAcknowledgeRequest 10530 urlParams_ gensupport.URLParams 10531 ctx_ context.Context 10532 header_ http.Header 10533} 10534 10535// Acknowledge: Acknowledges a purchase of an inapp item. 10536// 10537// - packageName: The package name of the application the inapp product 10538// was sold in (for example, 'com.some.thing'). 10539// - productId: The inapp product SKU (for example, 10540// 'com.some.thing.inapp1'). 10541// - token: The token provided to the user's device when the inapp 10542// product was purchased. 10543func (r *PurchasesProductsService) Acknowledge(packageName string, productId string, token string, productpurchasesacknowledgerequest *ProductPurchasesAcknowledgeRequest) *PurchasesProductsAcknowledgeCall { 10544 c := &PurchasesProductsAcknowledgeCall{s: r.s, urlParams_: make(gensupport.URLParams)} 10545 c.packageName = packageName 10546 c.productId = productId 10547 c.token = token 10548 c.productpurchasesacknowledgerequest = productpurchasesacknowledgerequest 10549 return c 10550} 10551 10552// Fields allows partial responses to be retrieved. See 10553// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 10554// for more information. 10555func (c *PurchasesProductsAcknowledgeCall) Fields(s ...googleapi.Field) *PurchasesProductsAcknowledgeCall { 10556 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 10557 return c 10558} 10559 10560// Context sets the context to be used in this call's Do method. Any 10561// pending HTTP request will be aborted if the provided context is 10562// canceled. 10563func (c *PurchasesProductsAcknowledgeCall) Context(ctx context.Context) *PurchasesProductsAcknowledgeCall { 10564 c.ctx_ = ctx 10565 return c 10566} 10567 10568// Header returns an http.Header that can be modified by the caller to 10569// add HTTP headers to the request. 10570func (c *PurchasesProductsAcknowledgeCall) Header() http.Header { 10571 if c.header_ == nil { 10572 c.header_ = make(http.Header) 10573 } 10574 return c.header_ 10575} 10576 10577func (c *PurchasesProductsAcknowledgeCall) doRequest(alt string) (*http.Response, error) { 10578 reqHeaders := make(http.Header) 10579 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 10580 for k, v := range c.header_ { 10581 reqHeaders[k] = v 10582 } 10583 reqHeaders.Set("User-Agent", c.s.userAgent()) 10584 var body io.Reader = nil 10585 body, err := googleapi.WithoutDataWrapper.JSONReader(c.productpurchasesacknowledgerequest) 10586 if err != nil { 10587 return nil, err 10588 } 10589 reqHeaders.Set("Content-Type", "application/json") 10590 c.urlParams_.Set("alt", alt) 10591 c.urlParams_.Set("prettyPrint", "false") 10592 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/purchases/products/{productId}/tokens/{token}:acknowledge") 10593 urls += "?" + c.urlParams_.Encode() 10594 req, err := http.NewRequest("POST", urls, body) 10595 if err != nil { 10596 return nil, err 10597 } 10598 req.Header = reqHeaders 10599 googleapi.Expand(req.URL, map[string]string{ 10600 "packageName": c.packageName, 10601 "productId": c.productId, 10602 "token": c.token, 10603 }) 10604 return gensupport.SendRequest(c.ctx_, c.s.client, req) 10605} 10606 10607// Do executes the "androidpublisher.purchases.products.acknowledge" call. 10608func (c *PurchasesProductsAcknowledgeCall) Do(opts ...googleapi.CallOption) error { 10609 gensupport.SetOptions(c.urlParams_, opts...) 10610 res, err := c.doRequest("json") 10611 if err != nil { 10612 return err 10613 } 10614 defer googleapi.CloseBody(res) 10615 if err := googleapi.CheckResponse(res); err != nil { 10616 return err 10617 } 10618 return nil 10619 // { 10620 // "description": "Acknowledges a purchase of an inapp item.", 10621 // "flatPath": "androidpublisher/v3/applications/{packageName}/purchases/products/{productId}/tokens/{token}:acknowledge", 10622 // "httpMethod": "POST", 10623 // "id": "androidpublisher.purchases.products.acknowledge", 10624 // "parameterOrder": [ 10625 // "packageName", 10626 // "productId", 10627 // "token" 10628 // ], 10629 // "parameters": { 10630 // "packageName": { 10631 // "description": "The package name of the application the inapp product was sold in (for example, 'com.some.thing').", 10632 // "location": "path", 10633 // "required": true, 10634 // "type": "string" 10635 // }, 10636 // "productId": { 10637 // "description": "The inapp product SKU (for example, 'com.some.thing.inapp1').", 10638 // "location": "path", 10639 // "required": true, 10640 // "type": "string" 10641 // }, 10642 // "token": { 10643 // "description": "The token provided to the user's device when the inapp product was purchased.", 10644 // "location": "path", 10645 // "required": true, 10646 // "type": "string" 10647 // } 10648 // }, 10649 // "path": "androidpublisher/v3/applications/{packageName}/purchases/products/{productId}/tokens/{token}:acknowledge", 10650 // "request": { 10651 // "$ref": "ProductPurchasesAcknowledgeRequest" 10652 // }, 10653 // "scopes": [ 10654 // "https://www.googleapis.com/auth/androidpublisher" 10655 // ] 10656 // } 10657 10658} 10659 10660// method id "androidpublisher.purchases.products.get": 10661 10662type PurchasesProductsGetCall struct { 10663 s *Service 10664 packageName string 10665 productId string 10666 token string 10667 urlParams_ gensupport.URLParams 10668 ifNoneMatch_ string 10669 ctx_ context.Context 10670 header_ http.Header 10671} 10672 10673// Get: Checks the purchase and consumption status of an inapp item. 10674// 10675// - packageName: The package name of the application the inapp product 10676// was sold in (for example, 'com.some.thing'). 10677// - productId: The inapp product SKU (for example, 10678// 'com.some.thing.inapp1'). 10679// - token: The token provided to the user's device when the inapp 10680// product was purchased. 10681func (r *PurchasesProductsService) Get(packageName string, productId string, token string) *PurchasesProductsGetCall { 10682 c := &PurchasesProductsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} 10683 c.packageName = packageName 10684 c.productId = productId 10685 c.token = token 10686 return c 10687} 10688 10689// Fields allows partial responses to be retrieved. See 10690// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 10691// for more information. 10692func (c *PurchasesProductsGetCall) Fields(s ...googleapi.Field) *PurchasesProductsGetCall { 10693 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 10694 return c 10695} 10696 10697// IfNoneMatch sets the optional parameter which makes the operation 10698// fail if the object's ETag matches the given value. This is useful for 10699// getting updates only after the object has changed since the last 10700// request. Use googleapi.IsNotModified to check whether the response 10701// error from Do is the result of In-None-Match. 10702func (c *PurchasesProductsGetCall) IfNoneMatch(entityTag string) *PurchasesProductsGetCall { 10703 c.ifNoneMatch_ = entityTag 10704 return c 10705} 10706 10707// Context sets the context to be used in this call's Do method. Any 10708// pending HTTP request will be aborted if the provided context is 10709// canceled. 10710func (c *PurchasesProductsGetCall) Context(ctx context.Context) *PurchasesProductsGetCall { 10711 c.ctx_ = ctx 10712 return c 10713} 10714 10715// Header returns an http.Header that can be modified by the caller to 10716// add HTTP headers to the request. 10717func (c *PurchasesProductsGetCall) Header() http.Header { 10718 if c.header_ == nil { 10719 c.header_ = make(http.Header) 10720 } 10721 return c.header_ 10722} 10723 10724func (c *PurchasesProductsGetCall) doRequest(alt string) (*http.Response, error) { 10725 reqHeaders := make(http.Header) 10726 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 10727 for k, v := range c.header_ { 10728 reqHeaders[k] = v 10729 } 10730 reqHeaders.Set("User-Agent", c.s.userAgent()) 10731 if c.ifNoneMatch_ != "" { 10732 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 10733 } 10734 var body io.Reader = nil 10735 c.urlParams_.Set("alt", alt) 10736 c.urlParams_.Set("prettyPrint", "false") 10737 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/purchases/products/{productId}/tokens/{token}") 10738 urls += "?" + c.urlParams_.Encode() 10739 req, err := http.NewRequest("GET", urls, body) 10740 if err != nil { 10741 return nil, err 10742 } 10743 req.Header = reqHeaders 10744 googleapi.Expand(req.URL, map[string]string{ 10745 "packageName": c.packageName, 10746 "productId": c.productId, 10747 "token": c.token, 10748 }) 10749 return gensupport.SendRequest(c.ctx_, c.s.client, req) 10750} 10751 10752// Do executes the "androidpublisher.purchases.products.get" call. 10753// Exactly one of *ProductPurchase or error will be non-nil. Any non-2xx 10754// status code is an error. Response headers are in either 10755// *ProductPurchase.ServerResponse.Header or (if a response was returned 10756// at all) in error.(*googleapi.Error).Header. Use 10757// googleapi.IsNotModified to check whether the returned error was 10758// because http.StatusNotModified was returned. 10759func (c *PurchasesProductsGetCall) Do(opts ...googleapi.CallOption) (*ProductPurchase, error) { 10760 gensupport.SetOptions(c.urlParams_, opts...) 10761 res, err := c.doRequest("json") 10762 if res != nil && res.StatusCode == http.StatusNotModified { 10763 if res.Body != nil { 10764 res.Body.Close() 10765 } 10766 return nil, &googleapi.Error{ 10767 Code: res.StatusCode, 10768 Header: res.Header, 10769 } 10770 } 10771 if err != nil { 10772 return nil, err 10773 } 10774 defer googleapi.CloseBody(res) 10775 if err := googleapi.CheckResponse(res); err != nil { 10776 return nil, err 10777 } 10778 ret := &ProductPurchase{ 10779 ServerResponse: googleapi.ServerResponse{ 10780 Header: res.Header, 10781 HTTPStatusCode: res.StatusCode, 10782 }, 10783 } 10784 target := &ret 10785 if err := gensupport.DecodeResponse(target, res); err != nil { 10786 return nil, err 10787 } 10788 return ret, nil 10789 // { 10790 // "description": "Checks the purchase and consumption status of an inapp item.", 10791 // "flatPath": "androidpublisher/v3/applications/{packageName}/purchases/products/{productId}/tokens/{token}", 10792 // "httpMethod": "GET", 10793 // "id": "androidpublisher.purchases.products.get", 10794 // "parameterOrder": [ 10795 // "packageName", 10796 // "productId", 10797 // "token" 10798 // ], 10799 // "parameters": { 10800 // "packageName": { 10801 // "description": "The package name of the application the inapp product was sold in (for example, 'com.some.thing').", 10802 // "location": "path", 10803 // "required": true, 10804 // "type": "string" 10805 // }, 10806 // "productId": { 10807 // "description": "The inapp product SKU (for example, 'com.some.thing.inapp1').", 10808 // "location": "path", 10809 // "required": true, 10810 // "type": "string" 10811 // }, 10812 // "token": { 10813 // "description": "The token provided to the user's device when the inapp product was purchased.", 10814 // "location": "path", 10815 // "required": true, 10816 // "type": "string" 10817 // } 10818 // }, 10819 // "path": "androidpublisher/v3/applications/{packageName}/purchases/products/{productId}/tokens/{token}", 10820 // "response": { 10821 // "$ref": "ProductPurchase" 10822 // }, 10823 // "scopes": [ 10824 // "https://www.googleapis.com/auth/androidpublisher" 10825 // ] 10826 // } 10827 10828} 10829 10830// method id "androidpublisher.purchases.subscriptions.acknowledge": 10831 10832type PurchasesSubscriptionsAcknowledgeCall struct { 10833 s *Service 10834 packageName string 10835 subscriptionId string 10836 token string 10837 subscriptionpurchasesacknowledgerequest *SubscriptionPurchasesAcknowledgeRequest 10838 urlParams_ gensupport.URLParams 10839 ctx_ context.Context 10840 header_ http.Header 10841} 10842 10843// Acknowledge: Acknowledges a subscription purchase. 10844// 10845// - packageName: The package name of the application for which this 10846// subscription was purchased (for example, 'com.some.thing'). 10847// - subscriptionId: The purchased subscription ID (for example, 10848// 'monthly001'). 10849// - token: The token provided to the user's device when the 10850// subscription was purchased. 10851func (r *PurchasesSubscriptionsService) Acknowledge(packageName string, subscriptionId string, token string, subscriptionpurchasesacknowledgerequest *SubscriptionPurchasesAcknowledgeRequest) *PurchasesSubscriptionsAcknowledgeCall { 10852 c := &PurchasesSubscriptionsAcknowledgeCall{s: r.s, urlParams_: make(gensupport.URLParams)} 10853 c.packageName = packageName 10854 c.subscriptionId = subscriptionId 10855 c.token = token 10856 c.subscriptionpurchasesacknowledgerequest = subscriptionpurchasesacknowledgerequest 10857 return c 10858} 10859 10860// Fields allows partial responses to be retrieved. See 10861// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 10862// for more information. 10863func (c *PurchasesSubscriptionsAcknowledgeCall) Fields(s ...googleapi.Field) *PurchasesSubscriptionsAcknowledgeCall { 10864 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 10865 return c 10866} 10867 10868// Context sets the context to be used in this call's Do method. Any 10869// pending HTTP request will be aborted if the provided context is 10870// canceled. 10871func (c *PurchasesSubscriptionsAcknowledgeCall) Context(ctx context.Context) *PurchasesSubscriptionsAcknowledgeCall { 10872 c.ctx_ = ctx 10873 return c 10874} 10875 10876// Header returns an http.Header that can be modified by the caller to 10877// add HTTP headers to the request. 10878func (c *PurchasesSubscriptionsAcknowledgeCall) Header() http.Header { 10879 if c.header_ == nil { 10880 c.header_ = make(http.Header) 10881 } 10882 return c.header_ 10883} 10884 10885func (c *PurchasesSubscriptionsAcknowledgeCall) doRequest(alt string) (*http.Response, error) { 10886 reqHeaders := make(http.Header) 10887 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 10888 for k, v := range c.header_ { 10889 reqHeaders[k] = v 10890 } 10891 reqHeaders.Set("User-Agent", c.s.userAgent()) 10892 var body io.Reader = nil 10893 body, err := googleapi.WithoutDataWrapper.JSONReader(c.subscriptionpurchasesacknowledgerequest) 10894 if err != nil { 10895 return nil, err 10896 } 10897 reqHeaders.Set("Content-Type", "application/json") 10898 c.urlParams_.Set("alt", alt) 10899 c.urlParams_.Set("prettyPrint", "false") 10900 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}:acknowledge") 10901 urls += "?" + c.urlParams_.Encode() 10902 req, err := http.NewRequest("POST", urls, body) 10903 if err != nil { 10904 return nil, err 10905 } 10906 req.Header = reqHeaders 10907 googleapi.Expand(req.URL, map[string]string{ 10908 "packageName": c.packageName, 10909 "subscriptionId": c.subscriptionId, 10910 "token": c.token, 10911 }) 10912 return gensupport.SendRequest(c.ctx_, c.s.client, req) 10913} 10914 10915// Do executes the "androidpublisher.purchases.subscriptions.acknowledge" call. 10916func (c *PurchasesSubscriptionsAcknowledgeCall) Do(opts ...googleapi.CallOption) error { 10917 gensupport.SetOptions(c.urlParams_, opts...) 10918 res, err := c.doRequest("json") 10919 if err != nil { 10920 return err 10921 } 10922 defer googleapi.CloseBody(res) 10923 if err := googleapi.CheckResponse(res); err != nil { 10924 return err 10925 } 10926 return nil 10927 // { 10928 // "description": "Acknowledges a subscription purchase.", 10929 // "flatPath": "androidpublisher/v3/applications/{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}:acknowledge", 10930 // "httpMethod": "POST", 10931 // "id": "androidpublisher.purchases.subscriptions.acknowledge", 10932 // "parameterOrder": [ 10933 // "packageName", 10934 // "subscriptionId", 10935 // "token" 10936 // ], 10937 // "parameters": { 10938 // "packageName": { 10939 // "description": "The package name of the application for which this subscription was purchased (for example, 'com.some.thing').", 10940 // "location": "path", 10941 // "required": true, 10942 // "type": "string" 10943 // }, 10944 // "subscriptionId": { 10945 // "description": "The purchased subscription ID (for example, 'monthly001').", 10946 // "location": "path", 10947 // "required": true, 10948 // "type": "string" 10949 // }, 10950 // "token": { 10951 // "description": "The token provided to the user's device when the subscription was purchased.", 10952 // "location": "path", 10953 // "required": true, 10954 // "type": "string" 10955 // } 10956 // }, 10957 // "path": "androidpublisher/v3/applications/{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}:acknowledge", 10958 // "request": { 10959 // "$ref": "SubscriptionPurchasesAcknowledgeRequest" 10960 // }, 10961 // "scopes": [ 10962 // "https://www.googleapis.com/auth/androidpublisher" 10963 // ] 10964 // } 10965 10966} 10967 10968// method id "androidpublisher.purchases.subscriptions.cancel": 10969 10970type PurchasesSubscriptionsCancelCall struct { 10971 s *Service 10972 packageName string 10973 subscriptionId string 10974 token string 10975 urlParams_ gensupport.URLParams 10976 ctx_ context.Context 10977 header_ http.Header 10978} 10979 10980// Cancel: Cancels a user's subscription purchase. The subscription 10981// remains valid until its expiration time. 10982// 10983// - packageName: The package name of the application for which this 10984// subscription was purchased (for example, 'com.some.thing'). 10985// - subscriptionId: The purchased subscription ID (for example, 10986// 'monthly001'). 10987// - token: The token provided to the user's device when the 10988// subscription was purchased. 10989func (r *PurchasesSubscriptionsService) Cancel(packageName string, subscriptionId string, token string) *PurchasesSubscriptionsCancelCall { 10990 c := &PurchasesSubscriptionsCancelCall{s: r.s, urlParams_: make(gensupport.URLParams)} 10991 c.packageName = packageName 10992 c.subscriptionId = subscriptionId 10993 c.token = token 10994 return c 10995} 10996 10997// Fields allows partial responses to be retrieved. See 10998// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 10999// for more information. 11000func (c *PurchasesSubscriptionsCancelCall) Fields(s ...googleapi.Field) *PurchasesSubscriptionsCancelCall { 11001 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 11002 return c 11003} 11004 11005// Context sets the context to be used in this call's Do method. Any 11006// pending HTTP request will be aborted if the provided context is 11007// canceled. 11008func (c *PurchasesSubscriptionsCancelCall) Context(ctx context.Context) *PurchasesSubscriptionsCancelCall { 11009 c.ctx_ = ctx 11010 return c 11011} 11012 11013// Header returns an http.Header that can be modified by the caller to 11014// add HTTP headers to the request. 11015func (c *PurchasesSubscriptionsCancelCall) Header() http.Header { 11016 if c.header_ == nil { 11017 c.header_ = make(http.Header) 11018 } 11019 return c.header_ 11020} 11021 11022func (c *PurchasesSubscriptionsCancelCall) doRequest(alt string) (*http.Response, error) { 11023 reqHeaders := make(http.Header) 11024 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 11025 for k, v := range c.header_ { 11026 reqHeaders[k] = v 11027 } 11028 reqHeaders.Set("User-Agent", c.s.userAgent()) 11029 var body io.Reader = nil 11030 c.urlParams_.Set("alt", alt) 11031 c.urlParams_.Set("prettyPrint", "false") 11032 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}:cancel") 11033 urls += "?" + c.urlParams_.Encode() 11034 req, err := http.NewRequest("POST", urls, body) 11035 if err != nil { 11036 return nil, err 11037 } 11038 req.Header = reqHeaders 11039 googleapi.Expand(req.URL, map[string]string{ 11040 "packageName": c.packageName, 11041 "subscriptionId": c.subscriptionId, 11042 "token": c.token, 11043 }) 11044 return gensupport.SendRequest(c.ctx_, c.s.client, req) 11045} 11046 11047// Do executes the "androidpublisher.purchases.subscriptions.cancel" call. 11048func (c *PurchasesSubscriptionsCancelCall) Do(opts ...googleapi.CallOption) error { 11049 gensupport.SetOptions(c.urlParams_, opts...) 11050 res, err := c.doRequest("json") 11051 if err != nil { 11052 return err 11053 } 11054 defer googleapi.CloseBody(res) 11055 if err := googleapi.CheckResponse(res); err != nil { 11056 return err 11057 } 11058 return nil 11059 // { 11060 // "description": "Cancels a user's subscription purchase. The subscription remains valid until its expiration time.", 11061 // "flatPath": "androidpublisher/v3/applications/{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}:cancel", 11062 // "httpMethod": "POST", 11063 // "id": "androidpublisher.purchases.subscriptions.cancel", 11064 // "parameterOrder": [ 11065 // "packageName", 11066 // "subscriptionId", 11067 // "token" 11068 // ], 11069 // "parameters": { 11070 // "packageName": { 11071 // "description": "The package name of the application for which this subscription was purchased (for example, 'com.some.thing').", 11072 // "location": "path", 11073 // "required": true, 11074 // "type": "string" 11075 // }, 11076 // "subscriptionId": { 11077 // "description": "The purchased subscription ID (for example, 'monthly001').", 11078 // "location": "path", 11079 // "required": true, 11080 // "type": "string" 11081 // }, 11082 // "token": { 11083 // "description": "The token provided to the user's device when the subscription was purchased.", 11084 // "location": "path", 11085 // "required": true, 11086 // "type": "string" 11087 // } 11088 // }, 11089 // "path": "androidpublisher/v3/applications/{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}:cancel", 11090 // "scopes": [ 11091 // "https://www.googleapis.com/auth/androidpublisher" 11092 // ] 11093 // } 11094 11095} 11096 11097// method id "androidpublisher.purchases.subscriptions.defer": 11098 11099type PurchasesSubscriptionsDeferCall struct { 11100 s *Service 11101 packageName string 11102 subscriptionId string 11103 token string 11104 subscriptionpurchasesdeferrequest *SubscriptionPurchasesDeferRequest 11105 urlParams_ gensupport.URLParams 11106 ctx_ context.Context 11107 header_ http.Header 11108} 11109 11110// Defer: Defers a user's subscription purchase until a specified future 11111// expiration time. 11112// 11113// - packageName: The package name of the application for which this 11114// subscription was purchased (for example, 'com.some.thing'). 11115// - subscriptionId: The purchased subscription ID (for example, 11116// 'monthly001'). 11117// - token: The token provided to the user's device when the 11118// subscription was purchased. 11119func (r *PurchasesSubscriptionsService) Defer(packageName string, subscriptionId string, token string, subscriptionpurchasesdeferrequest *SubscriptionPurchasesDeferRequest) *PurchasesSubscriptionsDeferCall { 11120 c := &PurchasesSubscriptionsDeferCall{s: r.s, urlParams_: make(gensupport.URLParams)} 11121 c.packageName = packageName 11122 c.subscriptionId = subscriptionId 11123 c.token = token 11124 c.subscriptionpurchasesdeferrequest = subscriptionpurchasesdeferrequest 11125 return c 11126} 11127 11128// Fields allows partial responses to be retrieved. See 11129// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 11130// for more information. 11131func (c *PurchasesSubscriptionsDeferCall) Fields(s ...googleapi.Field) *PurchasesSubscriptionsDeferCall { 11132 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 11133 return c 11134} 11135 11136// Context sets the context to be used in this call's Do method. Any 11137// pending HTTP request will be aborted if the provided context is 11138// canceled. 11139func (c *PurchasesSubscriptionsDeferCall) Context(ctx context.Context) *PurchasesSubscriptionsDeferCall { 11140 c.ctx_ = ctx 11141 return c 11142} 11143 11144// Header returns an http.Header that can be modified by the caller to 11145// add HTTP headers to the request. 11146func (c *PurchasesSubscriptionsDeferCall) Header() http.Header { 11147 if c.header_ == nil { 11148 c.header_ = make(http.Header) 11149 } 11150 return c.header_ 11151} 11152 11153func (c *PurchasesSubscriptionsDeferCall) doRequest(alt string) (*http.Response, error) { 11154 reqHeaders := make(http.Header) 11155 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 11156 for k, v := range c.header_ { 11157 reqHeaders[k] = v 11158 } 11159 reqHeaders.Set("User-Agent", c.s.userAgent()) 11160 var body io.Reader = nil 11161 body, err := googleapi.WithoutDataWrapper.JSONReader(c.subscriptionpurchasesdeferrequest) 11162 if err != nil { 11163 return nil, err 11164 } 11165 reqHeaders.Set("Content-Type", "application/json") 11166 c.urlParams_.Set("alt", alt) 11167 c.urlParams_.Set("prettyPrint", "false") 11168 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}:defer") 11169 urls += "?" + c.urlParams_.Encode() 11170 req, err := http.NewRequest("POST", urls, body) 11171 if err != nil { 11172 return nil, err 11173 } 11174 req.Header = reqHeaders 11175 googleapi.Expand(req.URL, map[string]string{ 11176 "packageName": c.packageName, 11177 "subscriptionId": c.subscriptionId, 11178 "token": c.token, 11179 }) 11180 return gensupport.SendRequest(c.ctx_, c.s.client, req) 11181} 11182 11183// Do executes the "androidpublisher.purchases.subscriptions.defer" call. 11184// Exactly one of *SubscriptionPurchasesDeferResponse or error will be 11185// non-nil. Any non-2xx status code is an error. Response headers are in 11186// either *SubscriptionPurchasesDeferResponse.ServerResponse.Header or 11187// (if a response was returned at all) in 11188// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check 11189// whether the returned error was because http.StatusNotModified was 11190// returned. 11191func (c *PurchasesSubscriptionsDeferCall) Do(opts ...googleapi.CallOption) (*SubscriptionPurchasesDeferResponse, error) { 11192 gensupport.SetOptions(c.urlParams_, opts...) 11193 res, err := c.doRequest("json") 11194 if res != nil && res.StatusCode == http.StatusNotModified { 11195 if res.Body != nil { 11196 res.Body.Close() 11197 } 11198 return nil, &googleapi.Error{ 11199 Code: res.StatusCode, 11200 Header: res.Header, 11201 } 11202 } 11203 if err != nil { 11204 return nil, err 11205 } 11206 defer googleapi.CloseBody(res) 11207 if err := googleapi.CheckResponse(res); err != nil { 11208 return nil, err 11209 } 11210 ret := &SubscriptionPurchasesDeferResponse{ 11211 ServerResponse: googleapi.ServerResponse{ 11212 Header: res.Header, 11213 HTTPStatusCode: res.StatusCode, 11214 }, 11215 } 11216 target := &ret 11217 if err := gensupport.DecodeResponse(target, res); err != nil { 11218 return nil, err 11219 } 11220 return ret, nil 11221 // { 11222 // "description": "Defers a user's subscription purchase until a specified future expiration time.", 11223 // "flatPath": "androidpublisher/v3/applications/{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}:defer", 11224 // "httpMethod": "POST", 11225 // "id": "androidpublisher.purchases.subscriptions.defer", 11226 // "parameterOrder": [ 11227 // "packageName", 11228 // "subscriptionId", 11229 // "token" 11230 // ], 11231 // "parameters": { 11232 // "packageName": { 11233 // "description": "The package name of the application for which this subscription was purchased (for example, 'com.some.thing').", 11234 // "location": "path", 11235 // "required": true, 11236 // "type": "string" 11237 // }, 11238 // "subscriptionId": { 11239 // "description": "The purchased subscription ID (for example, 'monthly001').", 11240 // "location": "path", 11241 // "required": true, 11242 // "type": "string" 11243 // }, 11244 // "token": { 11245 // "description": "The token provided to the user's device when the subscription was purchased.", 11246 // "location": "path", 11247 // "required": true, 11248 // "type": "string" 11249 // } 11250 // }, 11251 // "path": "androidpublisher/v3/applications/{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}:defer", 11252 // "request": { 11253 // "$ref": "SubscriptionPurchasesDeferRequest" 11254 // }, 11255 // "response": { 11256 // "$ref": "SubscriptionPurchasesDeferResponse" 11257 // }, 11258 // "scopes": [ 11259 // "https://www.googleapis.com/auth/androidpublisher" 11260 // ] 11261 // } 11262 11263} 11264 11265// method id "androidpublisher.purchases.subscriptions.get": 11266 11267type PurchasesSubscriptionsGetCall struct { 11268 s *Service 11269 packageName string 11270 subscriptionId string 11271 token string 11272 urlParams_ gensupport.URLParams 11273 ifNoneMatch_ string 11274 ctx_ context.Context 11275 header_ http.Header 11276} 11277 11278// Get: Checks whether a user's subscription purchase is valid and 11279// returns its expiry time. 11280// 11281// - packageName: The package name of the application for which this 11282// subscription was purchased (for example, 'com.some.thing'). 11283// - subscriptionId: The purchased subscription ID (for example, 11284// 'monthly001'). 11285// - token: The token provided to the user's device when the 11286// subscription was purchased. 11287func (r *PurchasesSubscriptionsService) Get(packageName string, subscriptionId string, token string) *PurchasesSubscriptionsGetCall { 11288 c := &PurchasesSubscriptionsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} 11289 c.packageName = packageName 11290 c.subscriptionId = subscriptionId 11291 c.token = token 11292 return c 11293} 11294 11295// Fields allows partial responses to be retrieved. See 11296// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 11297// for more information. 11298func (c *PurchasesSubscriptionsGetCall) Fields(s ...googleapi.Field) *PurchasesSubscriptionsGetCall { 11299 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 11300 return c 11301} 11302 11303// IfNoneMatch sets the optional parameter which makes the operation 11304// fail if the object's ETag matches the given value. This is useful for 11305// getting updates only after the object has changed since the last 11306// request. Use googleapi.IsNotModified to check whether the response 11307// error from Do is the result of In-None-Match. 11308func (c *PurchasesSubscriptionsGetCall) IfNoneMatch(entityTag string) *PurchasesSubscriptionsGetCall { 11309 c.ifNoneMatch_ = entityTag 11310 return c 11311} 11312 11313// Context sets the context to be used in this call's Do method. Any 11314// pending HTTP request will be aborted if the provided context is 11315// canceled. 11316func (c *PurchasesSubscriptionsGetCall) Context(ctx context.Context) *PurchasesSubscriptionsGetCall { 11317 c.ctx_ = ctx 11318 return c 11319} 11320 11321// Header returns an http.Header that can be modified by the caller to 11322// add HTTP headers to the request. 11323func (c *PurchasesSubscriptionsGetCall) Header() http.Header { 11324 if c.header_ == nil { 11325 c.header_ = make(http.Header) 11326 } 11327 return c.header_ 11328} 11329 11330func (c *PurchasesSubscriptionsGetCall) doRequest(alt string) (*http.Response, error) { 11331 reqHeaders := make(http.Header) 11332 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 11333 for k, v := range c.header_ { 11334 reqHeaders[k] = v 11335 } 11336 reqHeaders.Set("User-Agent", c.s.userAgent()) 11337 if c.ifNoneMatch_ != "" { 11338 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 11339 } 11340 var body io.Reader = nil 11341 c.urlParams_.Set("alt", alt) 11342 c.urlParams_.Set("prettyPrint", "false") 11343 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}") 11344 urls += "?" + c.urlParams_.Encode() 11345 req, err := http.NewRequest("GET", urls, body) 11346 if err != nil { 11347 return nil, err 11348 } 11349 req.Header = reqHeaders 11350 googleapi.Expand(req.URL, map[string]string{ 11351 "packageName": c.packageName, 11352 "subscriptionId": c.subscriptionId, 11353 "token": c.token, 11354 }) 11355 return gensupport.SendRequest(c.ctx_, c.s.client, req) 11356} 11357 11358// Do executes the "androidpublisher.purchases.subscriptions.get" call. 11359// Exactly one of *SubscriptionPurchase or error will be non-nil. Any 11360// non-2xx status code is an error. Response headers are in either 11361// *SubscriptionPurchase.ServerResponse.Header or (if a response was 11362// returned at all) in error.(*googleapi.Error).Header. Use 11363// googleapi.IsNotModified to check whether the returned error was 11364// because http.StatusNotModified was returned. 11365func (c *PurchasesSubscriptionsGetCall) Do(opts ...googleapi.CallOption) (*SubscriptionPurchase, error) { 11366 gensupport.SetOptions(c.urlParams_, opts...) 11367 res, err := c.doRequest("json") 11368 if res != nil && res.StatusCode == http.StatusNotModified { 11369 if res.Body != nil { 11370 res.Body.Close() 11371 } 11372 return nil, &googleapi.Error{ 11373 Code: res.StatusCode, 11374 Header: res.Header, 11375 } 11376 } 11377 if err != nil { 11378 return nil, err 11379 } 11380 defer googleapi.CloseBody(res) 11381 if err := googleapi.CheckResponse(res); err != nil { 11382 return nil, err 11383 } 11384 ret := &SubscriptionPurchase{ 11385 ServerResponse: googleapi.ServerResponse{ 11386 Header: res.Header, 11387 HTTPStatusCode: res.StatusCode, 11388 }, 11389 } 11390 target := &ret 11391 if err := gensupport.DecodeResponse(target, res); err != nil { 11392 return nil, err 11393 } 11394 return ret, nil 11395 // { 11396 // "description": "Checks whether a user's subscription purchase is valid and returns its expiry time.", 11397 // "flatPath": "androidpublisher/v3/applications/{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}", 11398 // "httpMethod": "GET", 11399 // "id": "androidpublisher.purchases.subscriptions.get", 11400 // "parameterOrder": [ 11401 // "packageName", 11402 // "subscriptionId", 11403 // "token" 11404 // ], 11405 // "parameters": { 11406 // "packageName": { 11407 // "description": "The package name of the application for which this subscription was purchased (for example, 'com.some.thing').", 11408 // "location": "path", 11409 // "required": true, 11410 // "type": "string" 11411 // }, 11412 // "subscriptionId": { 11413 // "description": "The purchased subscription ID (for example, 'monthly001').", 11414 // "location": "path", 11415 // "required": true, 11416 // "type": "string" 11417 // }, 11418 // "token": { 11419 // "description": "The token provided to the user's device when the subscription was purchased.", 11420 // "location": "path", 11421 // "required": true, 11422 // "type": "string" 11423 // } 11424 // }, 11425 // "path": "androidpublisher/v3/applications/{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}", 11426 // "response": { 11427 // "$ref": "SubscriptionPurchase" 11428 // }, 11429 // "scopes": [ 11430 // "https://www.googleapis.com/auth/androidpublisher" 11431 // ] 11432 // } 11433 11434} 11435 11436// method id "androidpublisher.purchases.subscriptions.refund": 11437 11438type PurchasesSubscriptionsRefundCall struct { 11439 s *Service 11440 packageName string 11441 subscriptionId string 11442 token string 11443 urlParams_ gensupport.URLParams 11444 ctx_ context.Context 11445 header_ http.Header 11446} 11447 11448// Refund: Refunds a user's subscription purchase, but the subscription 11449// remains valid until its expiration time and it will continue to 11450// recur. 11451// 11452// - packageName: The package name of the application for which this 11453// subscription was purchased (for example, 'com.some.thing'). 11454// - subscriptionId: "The purchased subscription ID (for example, 11455// 'monthly001'). 11456// - token: The token provided to the user's device when the 11457// subscription was purchased. 11458func (r *PurchasesSubscriptionsService) Refund(packageName string, subscriptionId string, token string) *PurchasesSubscriptionsRefundCall { 11459 c := &PurchasesSubscriptionsRefundCall{s: r.s, urlParams_: make(gensupport.URLParams)} 11460 c.packageName = packageName 11461 c.subscriptionId = subscriptionId 11462 c.token = token 11463 return c 11464} 11465 11466// Fields allows partial responses to be retrieved. See 11467// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 11468// for more information. 11469func (c *PurchasesSubscriptionsRefundCall) Fields(s ...googleapi.Field) *PurchasesSubscriptionsRefundCall { 11470 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 11471 return c 11472} 11473 11474// Context sets the context to be used in this call's Do method. Any 11475// pending HTTP request will be aborted if the provided context is 11476// canceled. 11477func (c *PurchasesSubscriptionsRefundCall) Context(ctx context.Context) *PurchasesSubscriptionsRefundCall { 11478 c.ctx_ = ctx 11479 return c 11480} 11481 11482// Header returns an http.Header that can be modified by the caller to 11483// add HTTP headers to the request. 11484func (c *PurchasesSubscriptionsRefundCall) Header() http.Header { 11485 if c.header_ == nil { 11486 c.header_ = make(http.Header) 11487 } 11488 return c.header_ 11489} 11490 11491func (c *PurchasesSubscriptionsRefundCall) doRequest(alt string) (*http.Response, error) { 11492 reqHeaders := make(http.Header) 11493 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 11494 for k, v := range c.header_ { 11495 reqHeaders[k] = v 11496 } 11497 reqHeaders.Set("User-Agent", c.s.userAgent()) 11498 var body io.Reader = nil 11499 c.urlParams_.Set("alt", alt) 11500 c.urlParams_.Set("prettyPrint", "false") 11501 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}:refund") 11502 urls += "?" + c.urlParams_.Encode() 11503 req, err := http.NewRequest("POST", urls, body) 11504 if err != nil { 11505 return nil, err 11506 } 11507 req.Header = reqHeaders 11508 googleapi.Expand(req.URL, map[string]string{ 11509 "packageName": c.packageName, 11510 "subscriptionId": c.subscriptionId, 11511 "token": c.token, 11512 }) 11513 return gensupport.SendRequest(c.ctx_, c.s.client, req) 11514} 11515 11516// Do executes the "androidpublisher.purchases.subscriptions.refund" call. 11517func (c *PurchasesSubscriptionsRefundCall) Do(opts ...googleapi.CallOption) error { 11518 gensupport.SetOptions(c.urlParams_, opts...) 11519 res, err := c.doRequest("json") 11520 if err != nil { 11521 return err 11522 } 11523 defer googleapi.CloseBody(res) 11524 if err := googleapi.CheckResponse(res); err != nil { 11525 return err 11526 } 11527 return nil 11528 // { 11529 // "description": "Refunds a user's subscription purchase, but the subscription remains valid until its expiration time and it will continue to recur.", 11530 // "flatPath": "androidpublisher/v3/applications/{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}:refund", 11531 // "httpMethod": "POST", 11532 // "id": "androidpublisher.purchases.subscriptions.refund", 11533 // "parameterOrder": [ 11534 // "packageName", 11535 // "subscriptionId", 11536 // "token" 11537 // ], 11538 // "parameters": { 11539 // "packageName": { 11540 // "description": "The package name of the application for which this subscription was purchased (for example, 'com.some.thing').", 11541 // "location": "path", 11542 // "required": true, 11543 // "type": "string" 11544 // }, 11545 // "subscriptionId": { 11546 // "description": "\"The purchased subscription ID (for example, 'monthly001').", 11547 // "location": "path", 11548 // "required": true, 11549 // "type": "string" 11550 // }, 11551 // "token": { 11552 // "description": "The token provided to the user's device when the subscription was purchased.", 11553 // "location": "path", 11554 // "required": true, 11555 // "type": "string" 11556 // } 11557 // }, 11558 // "path": "androidpublisher/v3/applications/{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}:refund", 11559 // "scopes": [ 11560 // "https://www.googleapis.com/auth/androidpublisher" 11561 // ] 11562 // } 11563 11564} 11565 11566// method id "androidpublisher.purchases.subscriptions.revoke": 11567 11568type PurchasesSubscriptionsRevokeCall struct { 11569 s *Service 11570 packageName string 11571 subscriptionId string 11572 token string 11573 urlParams_ gensupport.URLParams 11574 ctx_ context.Context 11575 header_ http.Header 11576} 11577 11578// Revoke: Refunds and immediately revokes a user's subscription 11579// purchase. Access to the subscription will be terminated immediately 11580// and it will stop recurring. 11581// 11582// - packageName: The package name of the application for which this 11583// subscription was purchased (for example, 'com.some.thing'). 11584// - subscriptionId: The purchased subscription ID (for example, 11585// 'monthly001'). 11586// - token: The token provided to the user's device when the 11587// subscription was purchased. 11588func (r *PurchasesSubscriptionsService) Revoke(packageName string, subscriptionId string, token string) *PurchasesSubscriptionsRevokeCall { 11589 c := &PurchasesSubscriptionsRevokeCall{s: r.s, urlParams_: make(gensupport.URLParams)} 11590 c.packageName = packageName 11591 c.subscriptionId = subscriptionId 11592 c.token = token 11593 return c 11594} 11595 11596// Fields allows partial responses to be retrieved. See 11597// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 11598// for more information. 11599func (c *PurchasesSubscriptionsRevokeCall) Fields(s ...googleapi.Field) *PurchasesSubscriptionsRevokeCall { 11600 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 11601 return c 11602} 11603 11604// Context sets the context to be used in this call's Do method. Any 11605// pending HTTP request will be aborted if the provided context is 11606// canceled. 11607func (c *PurchasesSubscriptionsRevokeCall) Context(ctx context.Context) *PurchasesSubscriptionsRevokeCall { 11608 c.ctx_ = ctx 11609 return c 11610} 11611 11612// Header returns an http.Header that can be modified by the caller to 11613// add HTTP headers to the request. 11614func (c *PurchasesSubscriptionsRevokeCall) Header() http.Header { 11615 if c.header_ == nil { 11616 c.header_ = make(http.Header) 11617 } 11618 return c.header_ 11619} 11620 11621func (c *PurchasesSubscriptionsRevokeCall) doRequest(alt string) (*http.Response, error) { 11622 reqHeaders := make(http.Header) 11623 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 11624 for k, v := range c.header_ { 11625 reqHeaders[k] = v 11626 } 11627 reqHeaders.Set("User-Agent", c.s.userAgent()) 11628 var body io.Reader = nil 11629 c.urlParams_.Set("alt", alt) 11630 c.urlParams_.Set("prettyPrint", "false") 11631 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}:revoke") 11632 urls += "?" + c.urlParams_.Encode() 11633 req, err := http.NewRequest("POST", urls, body) 11634 if err != nil { 11635 return nil, err 11636 } 11637 req.Header = reqHeaders 11638 googleapi.Expand(req.URL, map[string]string{ 11639 "packageName": c.packageName, 11640 "subscriptionId": c.subscriptionId, 11641 "token": c.token, 11642 }) 11643 return gensupport.SendRequest(c.ctx_, c.s.client, req) 11644} 11645 11646// Do executes the "androidpublisher.purchases.subscriptions.revoke" call. 11647func (c *PurchasesSubscriptionsRevokeCall) Do(opts ...googleapi.CallOption) error { 11648 gensupport.SetOptions(c.urlParams_, opts...) 11649 res, err := c.doRequest("json") 11650 if err != nil { 11651 return err 11652 } 11653 defer googleapi.CloseBody(res) 11654 if err := googleapi.CheckResponse(res); err != nil { 11655 return err 11656 } 11657 return nil 11658 // { 11659 // "description": "Refunds and immediately revokes a user's subscription purchase. Access to the subscription will be terminated immediately and it will stop recurring.", 11660 // "flatPath": "androidpublisher/v3/applications/{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}:revoke", 11661 // "httpMethod": "POST", 11662 // "id": "androidpublisher.purchases.subscriptions.revoke", 11663 // "parameterOrder": [ 11664 // "packageName", 11665 // "subscriptionId", 11666 // "token" 11667 // ], 11668 // "parameters": { 11669 // "packageName": { 11670 // "description": "The package name of the application for which this subscription was purchased (for example, 'com.some.thing').", 11671 // "location": "path", 11672 // "required": true, 11673 // "type": "string" 11674 // }, 11675 // "subscriptionId": { 11676 // "description": "The purchased subscription ID (for example, 'monthly001').", 11677 // "location": "path", 11678 // "required": true, 11679 // "type": "string" 11680 // }, 11681 // "token": { 11682 // "description": "The token provided to the user's device when the subscription was purchased.", 11683 // "location": "path", 11684 // "required": true, 11685 // "type": "string" 11686 // } 11687 // }, 11688 // "path": "androidpublisher/v3/applications/{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}:revoke", 11689 // "scopes": [ 11690 // "https://www.googleapis.com/auth/androidpublisher" 11691 // ] 11692 // } 11693 11694} 11695 11696// method id "androidpublisher.purchases.voidedpurchases.list": 11697 11698type PurchasesVoidedpurchasesListCall struct { 11699 s *Service 11700 packageName string 11701 urlParams_ gensupport.URLParams 11702 ifNoneMatch_ string 11703 ctx_ context.Context 11704 header_ http.Header 11705} 11706 11707// List: Lists the purchases that were canceled, refunded or 11708// charged-back. 11709// 11710// - packageName: The package name of the application for which voided 11711// purchases need to be returned (for example, 'com.some.thing'). 11712func (r *PurchasesVoidedpurchasesService) List(packageName string) *PurchasesVoidedpurchasesListCall { 11713 c := &PurchasesVoidedpurchasesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 11714 c.packageName = packageName 11715 return c 11716} 11717 11718// EndTime sets the optional parameter "endTime": The time, in 11719// milliseconds since the Epoch, of the newest voided purchase that you 11720// want to see in the response. The value of this parameter cannot be 11721// greater than the current time and is ignored if a pagination token is 11722// set. Default value is current time. Note: This filter is applied on 11723// the time at which the record is seen as voided by our systems and not 11724// the actual voided time returned in the response. 11725func (c *PurchasesVoidedpurchasesListCall) EndTime(endTime int64) *PurchasesVoidedpurchasesListCall { 11726 c.urlParams_.Set("endTime", fmt.Sprint(endTime)) 11727 return c 11728} 11729 11730// MaxResults sets the optional parameter "maxResults": Defines how many 11731// results the list operation should return. The default number depends 11732// on the resource collection. 11733func (c *PurchasesVoidedpurchasesListCall) MaxResults(maxResults int64) *PurchasesVoidedpurchasesListCall { 11734 c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) 11735 return c 11736} 11737 11738// StartIndex sets the optional parameter "startIndex": Defines the 11739// index of the first element to return. This can only be used if 11740// indexed paging is enabled. 11741func (c *PurchasesVoidedpurchasesListCall) StartIndex(startIndex int64) *PurchasesVoidedpurchasesListCall { 11742 c.urlParams_.Set("startIndex", fmt.Sprint(startIndex)) 11743 return c 11744} 11745 11746// StartTime sets the optional parameter "startTime": The time, in 11747// milliseconds since the Epoch, of the oldest voided purchase that you 11748// want to see in the response. The value of this parameter cannot be 11749// older than 30 days and is ignored if a pagination token is set. 11750// Default value is current time minus 30 days. Note: This filter is 11751// applied on the time at which the record is seen as voided by our 11752// systems and not the actual voided time returned in the response. 11753func (c *PurchasesVoidedpurchasesListCall) StartTime(startTime int64) *PurchasesVoidedpurchasesListCall { 11754 c.urlParams_.Set("startTime", fmt.Sprint(startTime)) 11755 return c 11756} 11757 11758// Token sets the optional parameter "token": Defines the token of the 11759// page to return, usually taken from TokenPagination. This can only be 11760// used if token paging is enabled. 11761func (c *PurchasesVoidedpurchasesListCall) Token(token string) *PurchasesVoidedpurchasesListCall { 11762 c.urlParams_.Set("token", token) 11763 return c 11764} 11765 11766// Type sets the optional parameter "type": The type of voided purchases 11767// that you want to see in the response. Possible values are: 0. Only 11768// voided in-app product purchases will be returned in the response. 11769// This is the default value. 1. Both voided in-app purchases and voided 11770// subscription purchases will be returned in the response. Note: Before 11771// requesting to receive voided subscription purchases, you must switch 11772// to use orderId in the response which uniquely identifies one-time 11773// purchases and subscriptions. Otherwise, you will receive multiple 11774// subscription orders with the same PurchaseToken, because subscription 11775// renewal orders share the same PurchaseToken. 11776func (c *PurchasesVoidedpurchasesListCall) Type(type_ int64) *PurchasesVoidedpurchasesListCall { 11777 c.urlParams_.Set("type", fmt.Sprint(type_)) 11778 return c 11779} 11780 11781// Fields allows partial responses to be retrieved. See 11782// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 11783// for more information. 11784func (c *PurchasesVoidedpurchasesListCall) Fields(s ...googleapi.Field) *PurchasesVoidedpurchasesListCall { 11785 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 11786 return c 11787} 11788 11789// IfNoneMatch sets the optional parameter which makes the operation 11790// fail if the object's ETag matches the given value. This is useful for 11791// getting updates only after the object has changed since the last 11792// request. Use googleapi.IsNotModified to check whether the response 11793// error from Do is the result of In-None-Match. 11794func (c *PurchasesVoidedpurchasesListCall) IfNoneMatch(entityTag string) *PurchasesVoidedpurchasesListCall { 11795 c.ifNoneMatch_ = entityTag 11796 return c 11797} 11798 11799// Context sets the context to be used in this call's Do method. Any 11800// pending HTTP request will be aborted if the provided context is 11801// canceled. 11802func (c *PurchasesVoidedpurchasesListCall) Context(ctx context.Context) *PurchasesVoidedpurchasesListCall { 11803 c.ctx_ = ctx 11804 return c 11805} 11806 11807// Header returns an http.Header that can be modified by the caller to 11808// add HTTP headers to the request. 11809func (c *PurchasesVoidedpurchasesListCall) Header() http.Header { 11810 if c.header_ == nil { 11811 c.header_ = make(http.Header) 11812 } 11813 return c.header_ 11814} 11815 11816func (c *PurchasesVoidedpurchasesListCall) doRequest(alt string) (*http.Response, error) { 11817 reqHeaders := make(http.Header) 11818 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 11819 for k, v := range c.header_ { 11820 reqHeaders[k] = v 11821 } 11822 reqHeaders.Set("User-Agent", c.s.userAgent()) 11823 if c.ifNoneMatch_ != "" { 11824 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 11825 } 11826 var body io.Reader = nil 11827 c.urlParams_.Set("alt", alt) 11828 c.urlParams_.Set("prettyPrint", "false") 11829 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/purchases/voidedpurchases") 11830 urls += "?" + c.urlParams_.Encode() 11831 req, err := http.NewRequest("GET", urls, body) 11832 if err != nil { 11833 return nil, err 11834 } 11835 req.Header = reqHeaders 11836 googleapi.Expand(req.URL, map[string]string{ 11837 "packageName": c.packageName, 11838 }) 11839 return gensupport.SendRequest(c.ctx_, c.s.client, req) 11840} 11841 11842// Do executes the "androidpublisher.purchases.voidedpurchases.list" call. 11843// Exactly one of *VoidedPurchasesListResponse or error will be non-nil. 11844// Any non-2xx status code is an error. Response headers are in either 11845// *VoidedPurchasesListResponse.ServerResponse.Header or (if a response 11846// was returned at all) in error.(*googleapi.Error).Header. Use 11847// googleapi.IsNotModified to check whether the returned error was 11848// because http.StatusNotModified was returned. 11849func (c *PurchasesVoidedpurchasesListCall) Do(opts ...googleapi.CallOption) (*VoidedPurchasesListResponse, error) { 11850 gensupport.SetOptions(c.urlParams_, opts...) 11851 res, err := c.doRequest("json") 11852 if res != nil && res.StatusCode == http.StatusNotModified { 11853 if res.Body != nil { 11854 res.Body.Close() 11855 } 11856 return nil, &googleapi.Error{ 11857 Code: res.StatusCode, 11858 Header: res.Header, 11859 } 11860 } 11861 if err != nil { 11862 return nil, err 11863 } 11864 defer googleapi.CloseBody(res) 11865 if err := googleapi.CheckResponse(res); err != nil { 11866 return nil, err 11867 } 11868 ret := &VoidedPurchasesListResponse{ 11869 ServerResponse: googleapi.ServerResponse{ 11870 Header: res.Header, 11871 HTTPStatusCode: res.StatusCode, 11872 }, 11873 } 11874 target := &ret 11875 if err := gensupport.DecodeResponse(target, res); err != nil { 11876 return nil, err 11877 } 11878 return ret, nil 11879 // { 11880 // "description": "Lists the purchases that were canceled, refunded or charged-back.", 11881 // "flatPath": "androidpublisher/v3/applications/{packageName}/purchases/voidedpurchases", 11882 // "httpMethod": "GET", 11883 // "id": "androidpublisher.purchases.voidedpurchases.list", 11884 // "parameterOrder": [ 11885 // "packageName" 11886 // ], 11887 // "parameters": { 11888 // "endTime": { 11889 // "description": "The time, in milliseconds since the Epoch, of the newest voided purchase that you want to see in the response. The value of this parameter cannot be greater than the current time and is ignored if a pagination token is set. Default value is current time. Note: This filter is applied on the time at which the record is seen as voided by our systems and not the actual voided time returned in the response.", 11890 // "format": "int64", 11891 // "location": "query", 11892 // "type": "string" 11893 // }, 11894 // "maxResults": { 11895 // "description": "Defines how many results the list operation should return. The default number depends on the resource collection.", 11896 // "format": "uint32", 11897 // "location": "query", 11898 // "type": "integer" 11899 // }, 11900 // "packageName": { 11901 // "description": "The package name of the application for which voided purchases need to be returned (for example, 'com.some.thing').", 11902 // "location": "path", 11903 // "required": true, 11904 // "type": "string" 11905 // }, 11906 // "startIndex": { 11907 // "description": "Defines the index of the first element to return. This can only be used if indexed paging is enabled.", 11908 // "format": "uint32", 11909 // "location": "query", 11910 // "type": "integer" 11911 // }, 11912 // "startTime": { 11913 // "description": "The time, in milliseconds since the Epoch, of the oldest voided purchase that you want to see in the response. The value of this parameter cannot be older than 30 days and is ignored if a pagination token is set. Default value is current time minus 30 days. Note: This filter is applied on the time at which the record is seen as voided by our systems and not the actual voided time returned in the response.", 11914 // "format": "int64", 11915 // "location": "query", 11916 // "type": "string" 11917 // }, 11918 // "token": { 11919 // "description": "Defines the token of the page to return, usually taken from TokenPagination. This can only be used if token paging is enabled.", 11920 // "location": "query", 11921 // "type": "string" 11922 // }, 11923 // "type": { 11924 // "description": "The type of voided purchases that you want to see in the response. Possible values are: 0. Only voided in-app product purchases will be returned in the response. This is the default value. 1. Both voided in-app purchases and voided subscription purchases will be returned in the response. Note: Before requesting to receive voided subscription purchases, you must switch to use orderId in the response which uniquely identifies one-time purchases and subscriptions. Otherwise, you will receive multiple subscription orders with the same PurchaseToken, because subscription renewal orders share the same PurchaseToken.", 11925 // "format": "int32", 11926 // "location": "query", 11927 // "type": "integer" 11928 // } 11929 // }, 11930 // "path": "androidpublisher/v3/applications/{packageName}/purchases/voidedpurchases", 11931 // "response": { 11932 // "$ref": "VoidedPurchasesListResponse" 11933 // }, 11934 // "scopes": [ 11935 // "https://www.googleapis.com/auth/androidpublisher" 11936 // ] 11937 // } 11938 11939} 11940 11941// method id "androidpublisher.reviews.get": 11942 11943type ReviewsGetCall struct { 11944 s *Service 11945 packageName string 11946 reviewId string 11947 urlParams_ gensupport.URLParams 11948 ifNoneMatch_ string 11949 ctx_ context.Context 11950 header_ http.Header 11951} 11952 11953// Get: Gets a single review. 11954// 11955// - packageName: Package name of the app. 11956// - reviewId: Unique identifier for a review. 11957func (r *ReviewsService) Get(packageName string, reviewId string) *ReviewsGetCall { 11958 c := &ReviewsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} 11959 c.packageName = packageName 11960 c.reviewId = reviewId 11961 return c 11962} 11963 11964// TranslationLanguage sets the optional parameter 11965// "translationLanguage": Language localization code. 11966func (c *ReviewsGetCall) TranslationLanguage(translationLanguage string) *ReviewsGetCall { 11967 c.urlParams_.Set("translationLanguage", translationLanguage) 11968 return c 11969} 11970 11971// Fields allows partial responses to be retrieved. See 11972// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 11973// for more information. 11974func (c *ReviewsGetCall) Fields(s ...googleapi.Field) *ReviewsGetCall { 11975 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 11976 return c 11977} 11978 11979// IfNoneMatch sets the optional parameter which makes the operation 11980// fail if the object's ETag matches the given value. This is useful for 11981// getting updates only after the object has changed since the last 11982// request. Use googleapi.IsNotModified to check whether the response 11983// error from Do is the result of In-None-Match. 11984func (c *ReviewsGetCall) IfNoneMatch(entityTag string) *ReviewsGetCall { 11985 c.ifNoneMatch_ = entityTag 11986 return c 11987} 11988 11989// Context sets the context to be used in this call's Do method. Any 11990// pending HTTP request will be aborted if the provided context is 11991// canceled. 11992func (c *ReviewsGetCall) Context(ctx context.Context) *ReviewsGetCall { 11993 c.ctx_ = ctx 11994 return c 11995} 11996 11997// Header returns an http.Header that can be modified by the caller to 11998// add HTTP headers to the request. 11999func (c *ReviewsGetCall) Header() http.Header { 12000 if c.header_ == nil { 12001 c.header_ = make(http.Header) 12002 } 12003 return c.header_ 12004} 12005 12006func (c *ReviewsGetCall) doRequest(alt string) (*http.Response, error) { 12007 reqHeaders := make(http.Header) 12008 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 12009 for k, v := range c.header_ { 12010 reqHeaders[k] = v 12011 } 12012 reqHeaders.Set("User-Agent", c.s.userAgent()) 12013 if c.ifNoneMatch_ != "" { 12014 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 12015 } 12016 var body io.Reader = nil 12017 c.urlParams_.Set("alt", alt) 12018 c.urlParams_.Set("prettyPrint", "false") 12019 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/reviews/{reviewId}") 12020 urls += "?" + c.urlParams_.Encode() 12021 req, err := http.NewRequest("GET", urls, body) 12022 if err != nil { 12023 return nil, err 12024 } 12025 req.Header = reqHeaders 12026 googleapi.Expand(req.URL, map[string]string{ 12027 "packageName": c.packageName, 12028 "reviewId": c.reviewId, 12029 }) 12030 return gensupport.SendRequest(c.ctx_, c.s.client, req) 12031} 12032 12033// Do executes the "androidpublisher.reviews.get" call. 12034// Exactly one of *Review or error will be non-nil. Any non-2xx status 12035// code is an error. Response headers are in either 12036// *Review.ServerResponse.Header or (if a response was returned at all) 12037// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 12038// check whether the returned error was because http.StatusNotModified 12039// was returned. 12040func (c *ReviewsGetCall) Do(opts ...googleapi.CallOption) (*Review, error) { 12041 gensupport.SetOptions(c.urlParams_, opts...) 12042 res, err := c.doRequest("json") 12043 if res != nil && res.StatusCode == http.StatusNotModified { 12044 if res.Body != nil { 12045 res.Body.Close() 12046 } 12047 return nil, &googleapi.Error{ 12048 Code: res.StatusCode, 12049 Header: res.Header, 12050 } 12051 } 12052 if err != nil { 12053 return nil, err 12054 } 12055 defer googleapi.CloseBody(res) 12056 if err := googleapi.CheckResponse(res); err != nil { 12057 return nil, err 12058 } 12059 ret := &Review{ 12060 ServerResponse: googleapi.ServerResponse{ 12061 Header: res.Header, 12062 HTTPStatusCode: res.StatusCode, 12063 }, 12064 } 12065 target := &ret 12066 if err := gensupport.DecodeResponse(target, res); err != nil { 12067 return nil, err 12068 } 12069 return ret, nil 12070 // { 12071 // "description": "Gets a single review.", 12072 // "flatPath": "androidpublisher/v3/applications/{packageName}/reviews/{reviewId}", 12073 // "httpMethod": "GET", 12074 // "id": "androidpublisher.reviews.get", 12075 // "parameterOrder": [ 12076 // "packageName", 12077 // "reviewId" 12078 // ], 12079 // "parameters": { 12080 // "packageName": { 12081 // "description": "Package name of the app.", 12082 // "location": "path", 12083 // "required": true, 12084 // "type": "string" 12085 // }, 12086 // "reviewId": { 12087 // "description": "Unique identifier for a review.", 12088 // "location": "path", 12089 // "required": true, 12090 // "type": "string" 12091 // }, 12092 // "translationLanguage": { 12093 // "description": "Language localization code.", 12094 // "location": "query", 12095 // "type": "string" 12096 // } 12097 // }, 12098 // "path": "androidpublisher/v3/applications/{packageName}/reviews/{reviewId}", 12099 // "response": { 12100 // "$ref": "Review" 12101 // }, 12102 // "scopes": [ 12103 // "https://www.googleapis.com/auth/androidpublisher" 12104 // ] 12105 // } 12106 12107} 12108 12109// method id "androidpublisher.reviews.list": 12110 12111type ReviewsListCall struct { 12112 s *Service 12113 packageName string 12114 urlParams_ gensupport.URLParams 12115 ifNoneMatch_ string 12116 ctx_ context.Context 12117 header_ http.Header 12118} 12119 12120// List: Lists all reviews. 12121// 12122// - packageName: Package name of the app. 12123func (r *ReviewsService) List(packageName string) *ReviewsListCall { 12124 c := &ReviewsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 12125 c.packageName = packageName 12126 return c 12127} 12128 12129// MaxResults sets the optional parameter "maxResults": How many results 12130// the list operation should return. 12131func (c *ReviewsListCall) MaxResults(maxResults int64) *ReviewsListCall { 12132 c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) 12133 return c 12134} 12135 12136// StartIndex sets the optional parameter "startIndex": The index of the 12137// first element to return. 12138func (c *ReviewsListCall) StartIndex(startIndex int64) *ReviewsListCall { 12139 c.urlParams_.Set("startIndex", fmt.Sprint(startIndex)) 12140 return c 12141} 12142 12143// Token sets the optional parameter "token": Pagination token. If 12144// empty, list starts at the first review. 12145func (c *ReviewsListCall) Token(token string) *ReviewsListCall { 12146 c.urlParams_.Set("token", token) 12147 return c 12148} 12149 12150// TranslationLanguage sets the optional parameter 12151// "translationLanguage": Language localization code. 12152func (c *ReviewsListCall) TranslationLanguage(translationLanguage string) *ReviewsListCall { 12153 c.urlParams_.Set("translationLanguage", translationLanguage) 12154 return c 12155} 12156 12157// Fields allows partial responses to be retrieved. See 12158// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 12159// for more information. 12160func (c *ReviewsListCall) Fields(s ...googleapi.Field) *ReviewsListCall { 12161 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 12162 return c 12163} 12164 12165// IfNoneMatch sets the optional parameter which makes the operation 12166// fail if the object's ETag matches the given value. This is useful for 12167// getting updates only after the object has changed since the last 12168// request. Use googleapi.IsNotModified to check whether the response 12169// error from Do is the result of In-None-Match. 12170func (c *ReviewsListCall) IfNoneMatch(entityTag string) *ReviewsListCall { 12171 c.ifNoneMatch_ = entityTag 12172 return c 12173} 12174 12175// Context sets the context to be used in this call's Do method. Any 12176// pending HTTP request will be aborted if the provided context is 12177// canceled. 12178func (c *ReviewsListCall) Context(ctx context.Context) *ReviewsListCall { 12179 c.ctx_ = ctx 12180 return c 12181} 12182 12183// Header returns an http.Header that can be modified by the caller to 12184// add HTTP headers to the request. 12185func (c *ReviewsListCall) Header() http.Header { 12186 if c.header_ == nil { 12187 c.header_ = make(http.Header) 12188 } 12189 return c.header_ 12190} 12191 12192func (c *ReviewsListCall) doRequest(alt string) (*http.Response, error) { 12193 reqHeaders := make(http.Header) 12194 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 12195 for k, v := range c.header_ { 12196 reqHeaders[k] = v 12197 } 12198 reqHeaders.Set("User-Agent", c.s.userAgent()) 12199 if c.ifNoneMatch_ != "" { 12200 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 12201 } 12202 var body io.Reader = nil 12203 c.urlParams_.Set("alt", alt) 12204 c.urlParams_.Set("prettyPrint", "false") 12205 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/reviews") 12206 urls += "?" + c.urlParams_.Encode() 12207 req, err := http.NewRequest("GET", urls, body) 12208 if err != nil { 12209 return nil, err 12210 } 12211 req.Header = reqHeaders 12212 googleapi.Expand(req.URL, map[string]string{ 12213 "packageName": c.packageName, 12214 }) 12215 return gensupport.SendRequest(c.ctx_, c.s.client, req) 12216} 12217 12218// Do executes the "androidpublisher.reviews.list" call. 12219// Exactly one of *ReviewsListResponse or error will be non-nil. Any 12220// non-2xx status code is an error. Response headers are in either 12221// *ReviewsListResponse.ServerResponse.Header or (if a response was 12222// returned at all) in error.(*googleapi.Error).Header. Use 12223// googleapi.IsNotModified to check whether the returned error was 12224// because http.StatusNotModified was returned. 12225func (c *ReviewsListCall) Do(opts ...googleapi.CallOption) (*ReviewsListResponse, error) { 12226 gensupport.SetOptions(c.urlParams_, opts...) 12227 res, err := c.doRequest("json") 12228 if res != nil && res.StatusCode == http.StatusNotModified { 12229 if res.Body != nil { 12230 res.Body.Close() 12231 } 12232 return nil, &googleapi.Error{ 12233 Code: res.StatusCode, 12234 Header: res.Header, 12235 } 12236 } 12237 if err != nil { 12238 return nil, err 12239 } 12240 defer googleapi.CloseBody(res) 12241 if err := googleapi.CheckResponse(res); err != nil { 12242 return nil, err 12243 } 12244 ret := &ReviewsListResponse{ 12245 ServerResponse: googleapi.ServerResponse{ 12246 Header: res.Header, 12247 HTTPStatusCode: res.StatusCode, 12248 }, 12249 } 12250 target := &ret 12251 if err := gensupport.DecodeResponse(target, res); err != nil { 12252 return nil, err 12253 } 12254 return ret, nil 12255 // { 12256 // "description": "Lists all reviews.", 12257 // "flatPath": "androidpublisher/v3/applications/{packageName}/reviews", 12258 // "httpMethod": "GET", 12259 // "id": "androidpublisher.reviews.list", 12260 // "parameterOrder": [ 12261 // "packageName" 12262 // ], 12263 // "parameters": { 12264 // "maxResults": { 12265 // "description": "How many results the list operation should return.", 12266 // "format": "uint32", 12267 // "location": "query", 12268 // "type": "integer" 12269 // }, 12270 // "packageName": { 12271 // "description": "Package name of the app.", 12272 // "location": "path", 12273 // "required": true, 12274 // "type": "string" 12275 // }, 12276 // "startIndex": { 12277 // "description": "The index of the first element to return.", 12278 // "format": "uint32", 12279 // "location": "query", 12280 // "type": "integer" 12281 // }, 12282 // "token": { 12283 // "description": "Pagination token. If empty, list starts at the first review.", 12284 // "location": "query", 12285 // "type": "string" 12286 // }, 12287 // "translationLanguage": { 12288 // "description": "Language localization code.", 12289 // "location": "query", 12290 // "type": "string" 12291 // } 12292 // }, 12293 // "path": "androidpublisher/v3/applications/{packageName}/reviews", 12294 // "response": { 12295 // "$ref": "ReviewsListResponse" 12296 // }, 12297 // "scopes": [ 12298 // "https://www.googleapis.com/auth/androidpublisher" 12299 // ] 12300 // } 12301 12302} 12303 12304// method id "androidpublisher.reviews.reply": 12305 12306type ReviewsReplyCall struct { 12307 s *Service 12308 packageName string 12309 reviewId string 12310 reviewsreplyrequest *ReviewsReplyRequest 12311 urlParams_ gensupport.URLParams 12312 ctx_ context.Context 12313 header_ http.Header 12314} 12315 12316// Reply: Replies to a single review, or updates an existing reply. 12317// 12318// - packageName: Package name of the app. 12319// - reviewId: Unique identifier for a review. 12320func (r *ReviewsService) Reply(packageName string, reviewId string, reviewsreplyrequest *ReviewsReplyRequest) *ReviewsReplyCall { 12321 c := &ReviewsReplyCall{s: r.s, urlParams_: make(gensupport.URLParams)} 12322 c.packageName = packageName 12323 c.reviewId = reviewId 12324 c.reviewsreplyrequest = reviewsreplyrequest 12325 return c 12326} 12327 12328// Fields allows partial responses to be retrieved. See 12329// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 12330// for more information. 12331func (c *ReviewsReplyCall) Fields(s ...googleapi.Field) *ReviewsReplyCall { 12332 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 12333 return c 12334} 12335 12336// Context sets the context to be used in this call's Do method. Any 12337// pending HTTP request will be aborted if the provided context is 12338// canceled. 12339func (c *ReviewsReplyCall) Context(ctx context.Context) *ReviewsReplyCall { 12340 c.ctx_ = ctx 12341 return c 12342} 12343 12344// Header returns an http.Header that can be modified by the caller to 12345// add HTTP headers to the request. 12346func (c *ReviewsReplyCall) Header() http.Header { 12347 if c.header_ == nil { 12348 c.header_ = make(http.Header) 12349 } 12350 return c.header_ 12351} 12352 12353func (c *ReviewsReplyCall) doRequest(alt string) (*http.Response, error) { 12354 reqHeaders := make(http.Header) 12355 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 12356 for k, v := range c.header_ { 12357 reqHeaders[k] = v 12358 } 12359 reqHeaders.Set("User-Agent", c.s.userAgent()) 12360 var body io.Reader = nil 12361 body, err := googleapi.WithoutDataWrapper.JSONReader(c.reviewsreplyrequest) 12362 if err != nil { 12363 return nil, err 12364 } 12365 reqHeaders.Set("Content-Type", "application/json") 12366 c.urlParams_.Set("alt", alt) 12367 c.urlParams_.Set("prettyPrint", "false") 12368 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/reviews/{reviewId}:reply") 12369 urls += "?" + c.urlParams_.Encode() 12370 req, err := http.NewRequest("POST", urls, body) 12371 if err != nil { 12372 return nil, err 12373 } 12374 req.Header = reqHeaders 12375 googleapi.Expand(req.URL, map[string]string{ 12376 "packageName": c.packageName, 12377 "reviewId": c.reviewId, 12378 }) 12379 return gensupport.SendRequest(c.ctx_, c.s.client, req) 12380} 12381 12382// Do executes the "androidpublisher.reviews.reply" call. 12383// Exactly one of *ReviewsReplyResponse or error will be non-nil. Any 12384// non-2xx status code is an error. Response headers are in either 12385// *ReviewsReplyResponse.ServerResponse.Header or (if a response was 12386// returned at all) in error.(*googleapi.Error).Header. Use 12387// googleapi.IsNotModified to check whether the returned error was 12388// because http.StatusNotModified was returned. 12389func (c *ReviewsReplyCall) Do(opts ...googleapi.CallOption) (*ReviewsReplyResponse, error) { 12390 gensupport.SetOptions(c.urlParams_, opts...) 12391 res, err := c.doRequest("json") 12392 if res != nil && res.StatusCode == http.StatusNotModified { 12393 if res.Body != nil { 12394 res.Body.Close() 12395 } 12396 return nil, &googleapi.Error{ 12397 Code: res.StatusCode, 12398 Header: res.Header, 12399 } 12400 } 12401 if err != nil { 12402 return nil, err 12403 } 12404 defer googleapi.CloseBody(res) 12405 if err := googleapi.CheckResponse(res); err != nil { 12406 return nil, err 12407 } 12408 ret := &ReviewsReplyResponse{ 12409 ServerResponse: googleapi.ServerResponse{ 12410 Header: res.Header, 12411 HTTPStatusCode: res.StatusCode, 12412 }, 12413 } 12414 target := &ret 12415 if err := gensupport.DecodeResponse(target, res); err != nil { 12416 return nil, err 12417 } 12418 return ret, nil 12419 // { 12420 // "description": "Replies to a single review, or updates an existing reply.", 12421 // "flatPath": "androidpublisher/v3/applications/{packageName}/reviews/{reviewId}:reply", 12422 // "httpMethod": "POST", 12423 // "id": "androidpublisher.reviews.reply", 12424 // "parameterOrder": [ 12425 // "packageName", 12426 // "reviewId" 12427 // ], 12428 // "parameters": { 12429 // "packageName": { 12430 // "description": "Package name of the app.", 12431 // "location": "path", 12432 // "required": true, 12433 // "type": "string" 12434 // }, 12435 // "reviewId": { 12436 // "description": "Unique identifier for a review.", 12437 // "location": "path", 12438 // "required": true, 12439 // "type": "string" 12440 // } 12441 // }, 12442 // "path": "androidpublisher/v3/applications/{packageName}/reviews/{reviewId}:reply", 12443 // "request": { 12444 // "$ref": "ReviewsReplyRequest" 12445 // }, 12446 // "response": { 12447 // "$ref": "ReviewsReplyResponse" 12448 // }, 12449 // "scopes": [ 12450 // "https://www.googleapis.com/auth/androidpublisher" 12451 // ] 12452 // } 12453 12454} 12455 12456// method id "androidpublisher.systemapks.variants.create": 12457 12458type SystemapksVariantsCreateCall struct { 12459 s *Service 12460 packageName string 12461 versionCode int64 12462 variant *Variant 12463 urlParams_ gensupport.URLParams 12464 ctx_ context.Context 12465 header_ http.Header 12466} 12467 12468// Create: Creates an APK which is suitable for inclusion in a system 12469// image from an already uploaded Android App Bundle. 12470// 12471// - packageName: Package name of the app. 12472// - versionCode: The version code of the App Bundle. 12473func (r *SystemapksVariantsService) Create(packageName string, versionCode int64, variant *Variant) *SystemapksVariantsCreateCall { 12474 c := &SystemapksVariantsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} 12475 c.packageName = packageName 12476 c.versionCode = versionCode 12477 c.variant = variant 12478 return c 12479} 12480 12481// Fields allows partial responses to be retrieved. See 12482// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 12483// for more information. 12484func (c *SystemapksVariantsCreateCall) Fields(s ...googleapi.Field) *SystemapksVariantsCreateCall { 12485 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 12486 return c 12487} 12488 12489// Context sets the context to be used in this call's Do method. Any 12490// pending HTTP request will be aborted if the provided context is 12491// canceled. 12492func (c *SystemapksVariantsCreateCall) Context(ctx context.Context) *SystemapksVariantsCreateCall { 12493 c.ctx_ = ctx 12494 return c 12495} 12496 12497// Header returns an http.Header that can be modified by the caller to 12498// add HTTP headers to the request. 12499func (c *SystemapksVariantsCreateCall) Header() http.Header { 12500 if c.header_ == nil { 12501 c.header_ = make(http.Header) 12502 } 12503 return c.header_ 12504} 12505 12506func (c *SystemapksVariantsCreateCall) doRequest(alt string) (*http.Response, error) { 12507 reqHeaders := make(http.Header) 12508 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 12509 for k, v := range c.header_ { 12510 reqHeaders[k] = v 12511 } 12512 reqHeaders.Set("User-Agent", c.s.userAgent()) 12513 var body io.Reader = nil 12514 body, err := googleapi.WithoutDataWrapper.JSONReader(c.variant) 12515 if err != nil { 12516 return nil, err 12517 } 12518 reqHeaders.Set("Content-Type", "application/json") 12519 c.urlParams_.Set("alt", alt) 12520 c.urlParams_.Set("prettyPrint", "false") 12521 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/systemApks/{versionCode}/variants") 12522 urls += "?" + c.urlParams_.Encode() 12523 req, err := http.NewRequest("POST", urls, body) 12524 if err != nil { 12525 return nil, err 12526 } 12527 req.Header = reqHeaders 12528 googleapi.Expand(req.URL, map[string]string{ 12529 "packageName": c.packageName, 12530 "versionCode": strconv.FormatInt(c.versionCode, 10), 12531 }) 12532 return gensupport.SendRequest(c.ctx_, c.s.client, req) 12533} 12534 12535// Do executes the "androidpublisher.systemapks.variants.create" call. 12536// Exactly one of *Variant or error will be non-nil. Any non-2xx status 12537// code is an error. Response headers are in either 12538// *Variant.ServerResponse.Header or (if a response was returned at all) 12539// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 12540// check whether the returned error was because http.StatusNotModified 12541// was returned. 12542func (c *SystemapksVariantsCreateCall) Do(opts ...googleapi.CallOption) (*Variant, error) { 12543 gensupport.SetOptions(c.urlParams_, opts...) 12544 res, err := c.doRequest("json") 12545 if res != nil && res.StatusCode == http.StatusNotModified { 12546 if res.Body != nil { 12547 res.Body.Close() 12548 } 12549 return nil, &googleapi.Error{ 12550 Code: res.StatusCode, 12551 Header: res.Header, 12552 } 12553 } 12554 if err != nil { 12555 return nil, err 12556 } 12557 defer googleapi.CloseBody(res) 12558 if err := googleapi.CheckResponse(res); err != nil { 12559 return nil, err 12560 } 12561 ret := &Variant{ 12562 ServerResponse: googleapi.ServerResponse{ 12563 Header: res.Header, 12564 HTTPStatusCode: res.StatusCode, 12565 }, 12566 } 12567 target := &ret 12568 if err := gensupport.DecodeResponse(target, res); err != nil { 12569 return nil, err 12570 } 12571 return ret, nil 12572 // { 12573 // "description": "Creates an APK which is suitable for inclusion in a system image from an already uploaded Android App Bundle.", 12574 // "flatPath": "androidpublisher/v3/applications/{packageName}/systemApks/{versionCode}/variants", 12575 // "httpMethod": "POST", 12576 // "id": "androidpublisher.systemapks.variants.create", 12577 // "parameterOrder": [ 12578 // "packageName", 12579 // "versionCode" 12580 // ], 12581 // "parameters": { 12582 // "packageName": { 12583 // "description": "Package name of the app.", 12584 // "location": "path", 12585 // "required": true, 12586 // "type": "string" 12587 // }, 12588 // "versionCode": { 12589 // "description": "The version code of the App Bundle.", 12590 // "format": "int64", 12591 // "location": "path", 12592 // "required": true, 12593 // "type": "string" 12594 // } 12595 // }, 12596 // "path": "androidpublisher/v3/applications/{packageName}/systemApks/{versionCode}/variants", 12597 // "request": { 12598 // "$ref": "Variant" 12599 // }, 12600 // "response": { 12601 // "$ref": "Variant" 12602 // }, 12603 // "scopes": [ 12604 // "https://www.googleapis.com/auth/androidpublisher" 12605 // ] 12606 // } 12607 12608} 12609 12610// method id "androidpublisher.systemapks.variants.download": 12611 12612type SystemapksVariantsDownloadCall struct { 12613 s *Service 12614 packageName string 12615 versionCode int64 12616 variantId int64 12617 urlParams_ gensupport.URLParams 12618 ifNoneMatch_ string 12619 ctx_ context.Context 12620 header_ http.Header 12621} 12622 12623// Download: Downloads a previously created system APK which is suitable 12624// for inclusion in a system image. 12625// 12626// - packageName: Package name of the app. 12627// - variantId: The ID of a previously created system APK variant. 12628// - versionCode: The version code of the App Bundle. 12629func (r *SystemapksVariantsService) Download(packageName string, versionCode int64, variantId int64) *SystemapksVariantsDownloadCall { 12630 c := &SystemapksVariantsDownloadCall{s: r.s, urlParams_: make(gensupport.URLParams)} 12631 c.packageName = packageName 12632 c.versionCode = versionCode 12633 c.variantId = variantId 12634 return c 12635} 12636 12637// Fields allows partial responses to be retrieved. See 12638// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 12639// for more information. 12640func (c *SystemapksVariantsDownloadCall) Fields(s ...googleapi.Field) *SystemapksVariantsDownloadCall { 12641 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 12642 return c 12643} 12644 12645// IfNoneMatch sets the optional parameter which makes the operation 12646// fail if the object's ETag matches the given value. This is useful for 12647// getting updates only after the object has changed since the last 12648// request. Use googleapi.IsNotModified to check whether the response 12649// error from Do is the result of In-None-Match. 12650func (c *SystemapksVariantsDownloadCall) IfNoneMatch(entityTag string) *SystemapksVariantsDownloadCall { 12651 c.ifNoneMatch_ = entityTag 12652 return c 12653} 12654 12655// Context sets the context to be used in this call's Do and Download 12656// methods. Any pending HTTP request will be aborted if the provided 12657// context is canceled. 12658func (c *SystemapksVariantsDownloadCall) Context(ctx context.Context) *SystemapksVariantsDownloadCall { 12659 c.ctx_ = ctx 12660 return c 12661} 12662 12663// Header returns an http.Header that can be modified by the caller to 12664// add HTTP headers to the request. 12665func (c *SystemapksVariantsDownloadCall) Header() http.Header { 12666 if c.header_ == nil { 12667 c.header_ = make(http.Header) 12668 } 12669 return c.header_ 12670} 12671 12672func (c *SystemapksVariantsDownloadCall) doRequest(alt string) (*http.Response, error) { 12673 reqHeaders := make(http.Header) 12674 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 12675 for k, v := range c.header_ { 12676 reqHeaders[k] = v 12677 } 12678 reqHeaders.Set("User-Agent", c.s.userAgent()) 12679 if c.ifNoneMatch_ != "" { 12680 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 12681 } 12682 var body io.Reader = nil 12683 c.urlParams_.Set("alt", alt) 12684 c.urlParams_.Set("prettyPrint", "false") 12685 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/systemApks/{versionCode}/variants/{variantId}:download") 12686 urls += "?" + c.urlParams_.Encode() 12687 req, err := http.NewRequest("GET", urls, body) 12688 if err != nil { 12689 return nil, err 12690 } 12691 req.Header = reqHeaders 12692 googleapi.Expand(req.URL, map[string]string{ 12693 "packageName": c.packageName, 12694 "versionCode": strconv.FormatInt(c.versionCode, 10), 12695 "variantId": strconv.FormatInt(c.variantId, 10), 12696 }) 12697 return gensupport.SendRequest(c.ctx_, c.s.client, req) 12698} 12699 12700// Download fetches the API endpoint's "media" value, instead of the normal 12701// API response value. If the returned error is nil, the Response is guaranteed to 12702// have a 2xx status code. Callers must close the Response.Body as usual. 12703func (c *SystemapksVariantsDownloadCall) Download(opts ...googleapi.CallOption) (*http.Response, error) { 12704 gensupport.SetOptions(c.urlParams_, opts...) 12705 res, err := c.doRequest("media") 12706 if err != nil { 12707 return nil, err 12708 } 12709 if err := googleapi.CheckResponse(res); err != nil { 12710 res.Body.Close() 12711 return nil, err 12712 } 12713 return res, nil 12714} 12715 12716// Do executes the "androidpublisher.systemapks.variants.download" call. 12717func (c *SystemapksVariantsDownloadCall) Do(opts ...googleapi.CallOption) error { 12718 gensupport.SetOptions(c.urlParams_, opts...) 12719 res, err := c.doRequest("json") 12720 if err != nil { 12721 return err 12722 } 12723 defer googleapi.CloseBody(res) 12724 if err := googleapi.CheckResponse(res); err != nil { 12725 return err 12726 } 12727 return nil 12728 // { 12729 // "description": "Downloads a previously created system APK which is suitable for inclusion in a system image.", 12730 // "flatPath": "androidpublisher/v3/applications/{packageName}/systemApks/{versionCode}/variants/{variantId}:download", 12731 // "httpMethod": "GET", 12732 // "id": "androidpublisher.systemapks.variants.download", 12733 // "parameterOrder": [ 12734 // "packageName", 12735 // "versionCode", 12736 // "variantId" 12737 // ], 12738 // "parameters": { 12739 // "packageName": { 12740 // "description": "Package name of the app.", 12741 // "location": "path", 12742 // "required": true, 12743 // "type": "string" 12744 // }, 12745 // "variantId": { 12746 // "description": "The ID of a previously created system APK variant.", 12747 // "format": "uint32", 12748 // "location": "path", 12749 // "required": true, 12750 // "type": "integer" 12751 // }, 12752 // "versionCode": { 12753 // "description": "The version code of the App Bundle.", 12754 // "format": "int64", 12755 // "location": "path", 12756 // "required": true, 12757 // "type": "string" 12758 // } 12759 // }, 12760 // "path": "androidpublisher/v3/applications/{packageName}/systemApks/{versionCode}/variants/{variantId}:download", 12761 // "scopes": [ 12762 // "https://www.googleapis.com/auth/androidpublisher" 12763 // ], 12764 // "supportsMediaDownload": true, 12765 // "useMediaDownloadService": true 12766 // } 12767 12768} 12769 12770// method id "androidpublisher.systemapks.variants.get": 12771 12772type SystemapksVariantsGetCall struct { 12773 s *Service 12774 packageName string 12775 versionCode int64 12776 variantId int64 12777 urlParams_ gensupport.URLParams 12778 ifNoneMatch_ string 12779 ctx_ context.Context 12780 header_ http.Header 12781} 12782 12783// Get: Returns a previously created system APK variant. 12784// 12785// - packageName: Package name of the app. 12786// - variantId: The ID of a previously created system APK variant. 12787// - versionCode: The version code of the App Bundle. 12788func (r *SystemapksVariantsService) Get(packageName string, versionCode int64, variantId int64) *SystemapksVariantsGetCall { 12789 c := &SystemapksVariantsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} 12790 c.packageName = packageName 12791 c.versionCode = versionCode 12792 c.variantId = variantId 12793 return c 12794} 12795 12796// Fields allows partial responses to be retrieved. See 12797// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 12798// for more information. 12799func (c *SystemapksVariantsGetCall) Fields(s ...googleapi.Field) *SystemapksVariantsGetCall { 12800 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 12801 return c 12802} 12803 12804// IfNoneMatch sets the optional parameter which makes the operation 12805// fail if the object's ETag matches the given value. This is useful for 12806// getting updates only after the object has changed since the last 12807// request. Use googleapi.IsNotModified to check whether the response 12808// error from Do is the result of In-None-Match. 12809func (c *SystemapksVariantsGetCall) IfNoneMatch(entityTag string) *SystemapksVariantsGetCall { 12810 c.ifNoneMatch_ = entityTag 12811 return c 12812} 12813 12814// Context sets the context to be used in this call's Do method. Any 12815// pending HTTP request will be aborted if the provided context is 12816// canceled. 12817func (c *SystemapksVariantsGetCall) Context(ctx context.Context) *SystemapksVariantsGetCall { 12818 c.ctx_ = ctx 12819 return c 12820} 12821 12822// Header returns an http.Header that can be modified by the caller to 12823// add HTTP headers to the request. 12824func (c *SystemapksVariantsGetCall) Header() http.Header { 12825 if c.header_ == nil { 12826 c.header_ = make(http.Header) 12827 } 12828 return c.header_ 12829} 12830 12831func (c *SystemapksVariantsGetCall) doRequest(alt string) (*http.Response, error) { 12832 reqHeaders := make(http.Header) 12833 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 12834 for k, v := range c.header_ { 12835 reqHeaders[k] = v 12836 } 12837 reqHeaders.Set("User-Agent", c.s.userAgent()) 12838 if c.ifNoneMatch_ != "" { 12839 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 12840 } 12841 var body io.Reader = nil 12842 c.urlParams_.Set("alt", alt) 12843 c.urlParams_.Set("prettyPrint", "false") 12844 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/systemApks/{versionCode}/variants/{variantId}") 12845 urls += "?" + c.urlParams_.Encode() 12846 req, err := http.NewRequest("GET", urls, body) 12847 if err != nil { 12848 return nil, err 12849 } 12850 req.Header = reqHeaders 12851 googleapi.Expand(req.URL, map[string]string{ 12852 "packageName": c.packageName, 12853 "versionCode": strconv.FormatInt(c.versionCode, 10), 12854 "variantId": strconv.FormatInt(c.variantId, 10), 12855 }) 12856 return gensupport.SendRequest(c.ctx_, c.s.client, req) 12857} 12858 12859// Do executes the "androidpublisher.systemapks.variants.get" call. 12860// Exactly one of *Variant or error will be non-nil. Any non-2xx status 12861// code is an error. Response headers are in either 12862// *Variant.ServerResponse.Header or (if a response was returned at all) 12863// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 12864// check whether the returned error was because http.StatusNotModified 12865// was returned. 12866func (c *SystemapksVariantsGetCall) Do(opts ...googleapi.CallOption) (*Variant, error) { 12867 gensupport.SetOptions(c.urlParams_, opts...) 12868 res, err := c.doRequest("json") 12869 if res != nil && res.StatusCode == http.StatusNotModified { 12870 if res.Body != nil { 12871 res.Body.Close() 12872 } 12873 return nil, &googleapi.Error{ 12874 Code: res.StatusCode, 12875 Header: res.Header, 12876 } 12877 } 12878 if err != nil { 12879 return nil, err 12880 } 12881 defer googleapi.CloseBody(res) 12882 if err := googleapi.CheckResponse(res); err != nil { 12883 return nil, err 12884 } 12885 ret := &Variant{ 12886 ServerResponse: googleapi.ServerResponse{ 12887 Header: res.Header, 12888 HTTPStatusCode: res.StatusCode, 12889 }, 12890 } 12891 target := &ret 12892 if err := gensupport.DecodeResponse(target, res); err != nil { 12893 return nil, err 12894 } 12895 return ret, nil 12896 // { 12897 // "description": "Returns a previously created system APK variant.", 12898 // "flatPath": "androidpublisher/v3/applications/{packageName}/systemApks/{versionCode}/variants/{variantId}", 12899 // "httpMethod": "GET", 12900 // "id": "androidpublisher.systemapks.variants.get", 12901 // "parameterOrder": [ 12902 // "packageName", 12903 // "versionCode", 12904 // "variantId" 12905 // ], 12906 // "parameters": { 12907 // "packageName": { 12908 // "description": "Package name of the app.", 12909 // "location": "path", 12910 // "required": true, 12911 // "type": "string" 12912 // }, 12913 // "variantId": { 12914 // "description": "The ID of a previously created system APK variant.", 12915 // "format": "uint32", 12916 // "location": "path", 12917 // "required": true, 12918 // "type": "integer" 12919 // }, 12920 // "versionCode": { 12921 // "description": "The version code of the App Bundle.", 12922 // "format": "int64", 12923 // "location": "path", 12924 // "required": true, 12925 // "type": "string" 12926 // } 12927 // }, 12928 // "path": "androidpublisher/v3/applications/{packageName}/systemApks/{versionCode}/variants/{variantId}", 12929 // "response": { 12930 // "$ref": "Variant" 12931 // }, 12932 // "scopes": [ 12933 // "https://www.googleapis.com/auth/androidpublisher" 12934 // ] 12935 // } 12936 12937} 12938 12939// method id "androidpublisher.systemapks.variants.list": 12940 12941type SystemapksVariantsListCall struct { 12942 s *Service 12943 packageName string 12944 versionCode int64 12945 urlParams_ gensupport.URLParams 12946 ifNoneMatch_ string 12947 ctx_ context.Context 12948 header_ http.Header 12949} 12950 12951// List: Returns the list of previously created system APK variants. 12952// 12953// - packageName: Package name of the app. 12954// - versionCode: The version code of the App Bundle. 12955func (r *SystemapksVariantsService) List(packageName string, versionCode int64) *SystemapksVariantsListCall { 12956 c := &SystemapksVariantsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 12957 c.packageName = packageName 12958 c.versionCode = versionCode 12959 return c 12960} 12961 12962// Fields allows partial responses to be retrieved. See 12963// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 12964// for more information. 12965func (c *SystemapksVariantsListCall) Fields(s ...googleapi.Field) *SystemapksVariantsListCall { 12966 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 12967 return c 12968} 12969 12970// IfNoneMatch sets the optional parameter which makes the operation 12971// fail if the object's ETag matches the given value. This is useful for 12972// getting updates only after the object has changed since the last 12973// request. Use googleapi.IsNotModified to check whether the response 12974// error from Do is the result of In-None-Match. 12975func (c *SystemapksVariantsListCall) IfNoneMatch(entityTag string) *SystemapksVariantsListCall { 12976 c.ifNoneMatch_ = entityTag 12977 return c 12978} 12979 12980// Context sets the context to be used in this call's Do method. Any 12981// pending HTTP request will be aborted if the provided context is 12982// canceled. 12983func (c *SystemapksVariantsListCall) Context(ctx context.Context) *SystemapksVariantsListCall { 12984 c.ctx_ = ctx 12985 return c 12986} 12987 12988// Header returns an http.Header that can be modified by the caller to 12989// add HTTP headers to the request. 12990func (c *SystemapksVariantsListCall) Header() http.Header { 12991 if c.header_ == nil { 12992 c.header_ = make(http.Header) 12993 } 12994 return c.header_ 12995} 12996 12997func (c *SystemapksVariantsListCall) doRequest(alt string) (*http.Response, error) { 12998 reqHeaders := make(http.Header) 12999 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 13000 for k, v := range c.header_ { 13001 reqHeaders[k] = v 13002 } 13003 reqHeaders.Set("User-Agent", c.s.userAgent()) 13004 if c.ifNoneMatch_ != "" { 13005 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 13006 } 13007 var body io.Reader = nil 13008 c.urlParams_.Set("alt", alt) 13009 c.urlParams_.Set("prettyPrint", "false") 13010 urls := googleapi.ResolveRelative(c.s.BasePath, "androidpublisher/v3/applications/{packageName}/systemApks/{versionCode}/variants") 13011 urls += "?" + c.urlParams_.Encode() 13012 req, err := http.NewRequest("GET", urls, body) 13013 if err != nil { 13014 return nil, err 13015 } 13016 req.Header = reqHeaders 13017 googleapi.Expand(req.URL, map[string]string{ 13018 "packageName": c.packageName, 13019 "versionCode": strconv.FormatInt(c.versionCode, 10), 13020 }) 13021 return gensupport.SendRequest(c.ctx_, c.s.client, req) 13022} 13023 13024// Do executes the "androidpublisher.systemapks.variants.list" call. 13025// Exactly one of *SystemApksListResponse or error will be non-nil. Any 13026// non-2xx status code is an error. Response headers are in either 13027// *SystemApksListResponse.ServerResponse.Header or (if a response was 13028// returned at all) in error.(*googleapi.Error).Header. Use 13029// googleapi.IsNotModified to check whether the returned error was 13030// because http.StatusNotModified was returned. 13031func (c *SystemapksVariantsListCall) Do(opts ...googleapi.CallOption) (*SystemApksListResponse, error) { 13032 gensupport.SetOptions(c.urlParams_, opts...) 13033 res, err := c.doRequest("json") 13034 if res != nil && res.StatusCode == http.StatusNotModified { 13035 if res.Body != nil { 13036 res.Body.Close() 13037 } 13038 return nil, &googleapi.Error{ 13039 Code: res.StatusCode, 13040 Header: res.Header, 13041 } 13042 } 13043 if err != nil { 13044 return nil, err 13045 } 13046 defer googleapi.CloseBody(res) 13047 if err := googleapi.CheckResponse(res); err != nil { 13048 return nil, err 13049 } 13050 ret := &SystemApksListResponse{ 13051 ServerResponse: googleapi.ServerResponse{ 13052 Header: res.Header, 13053 HTTPStatusCode: res.StatusCode, 13054 }, 13055 } 13056 target := &ret 13057 if err := gensupport.DecodeResponse(target, res); err != nil { 13058 return nil, err 13059 } 13060 return ret, nil 13061 // { 13062 // "description": "Returns the list of previously created system APK variants.", 13063 // "flatPath": "androidpublisher/v3/applications/{packageName}/systemApks/{versionCode}/variants", 13064 // "httpMethod": "GET", 13065 // "id": "androidpublisher.systemapks.variants.list", 13066 // "parameterOrder": [ 13067 // "packageName", 13068 // "versionCode" 13069 // ], 13070 // "parameters": { 13071 // "packageName": { 13072 // "description": "Package name of the app.", 13073 // "location": "path", 13074 // "required": true, 13075 // "type": "string" 13076 // }, 13077 // "versionCode": { 13078 // "description": "The version code of the App Bundle.", 13079 // "format": "int64", 13080 // "location": "path", 13081 // "required": true, 13082 // "type": "string" 13083 // } 13084 // }, 13085 // "path": "androidpublisher/v3/applications/{packageName}/systemApks/{versionCode}/variants", 13086 // "response": { 13087 // "$ref": "SystemApksListResponse" 13088 // }, 13089 // "scopes": [ 13090 // "https://www.googleapis.com/auth/androidpublisher" 13091 // ] 13092 // } 13093 13094} 13095