| // Copyright 2026 Google LLC. | |
| // Use of this source code is governed by a BSD-style | |
| // license that can be found in the LICENSE file. | |
| // Code generated file. DO NOT EDIT. | |
| // Package servicemanagement provides access to the Service Management API. | |
| // | |
| // For product documentation, see: https://cloud.google.com/service-management/ | |
| // | |
| // # Library status | |
| // | |
| // These client libraries are officially supported by Google. However, this | |
| // library is considered complete and is in maintenance mode. This means | |
| // that we will address critical bugs and security issues but will not add | |
| // any new features. | |
| // | |
| // When possible, we recommend using our newer | |
| // [Cloud Client Libraries for Go](https://pkg.go.dev/cloud.google.com/go) | |
| // that are still actively being worked and iterated on. | |
| // | |
| // # Creating a client | |
| // | |
| // Usage example: | |
| // | |
| // import "google.golang.org/api/servicemanagement/v1" | |
| // ... | |
| // ctx := context.Background() | |
| // servicemanagementService, err := servicemanagement.NewService(ctx) | |
| // | |
| // In this example, Google Application Default Credentials are used for | |
| // authentication. For information on how to create and obtain Application | |
| // Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials. | |
| // | |
| // # Other authentication options | |
| // | |
| // By default, all available scopes (see "Constants") are used to authenticate. | |
| // To restrict scopes, use [google.golang.org/api/option.WithScopes]: | |
| // | |
| // servicemanagementService, err := servicemanagement.NewService(ctx, option.WithScopes(servicemanagement.ServiceManagementReadonlyScope)) | |
| // | |
| // To use an API key for authentication (note: some APIs do not support API | |
| // keys), use [google.golang.org/api/option.WithAPIKey]: | |
| // | |
| // servicemanagementService, err := servicemanagement.NewService(ctx, option.WithAPIKey("AIza...")) | |
| // | |
| // To use an OAuth token (e.g., a user token obtained via a three-legged OAuth | |
| // flow, use [google.golang.org/api/option.WithTokenSource]: | |
| // | |
| // config := &oauth2.Config{...} | |
| // // ... | |
| // token, err := config.Exchange(ctx, ...) | |
| // servicemanagementService, err := servicemanagement.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token))) | |
| // | |
| // See [google.golang.org/api/option.ClientOption] for details on options. | |
| package servicemanagement // import "google.golang.org/api/servicemanagement/v1" | |
| import ( | |
| "bytes" | |
| "context" | |
| "encoding/json" | |
| "errors" | |
| "fmt" | |
| "io" | |
| "log/slog" | |
| "net/http" | |
| "net/url" | |
| "strconv" | |
| "strings" | |
| "github.com/googleapis/gax-go/v2/internallog" | |
| googleapi "google.golang.org/api/googleapi" | |
| internal "google.golang.org/api/internal" | |
| gensupport "google.golang.org/api/internal/gensupport" | |
| option "google.golang.org/api/option" | |
| internaloption "google.golang.org/api/option/internaloption" | |
| htransport "google.golang.org/api/transport/http" | |
| ) | |
| // Always reference these packages, just in case the auto-generated code | |
| // below doesn't. | |
| var _ = bytes.NewBuffer | |
| var _ = strconv.Itoa | |
| var _ = fmt.Sprintf | |
| var _ = json.NewDecoder | |
| var _ = io.Copy | |
| var _ = url.Parse | |
| var _ = gensupport.MarshalJSON | |
| var _ = googleapi.Version | |
| var _ = errors.New | |
| var _ = strings.Replace | |
| var _ = context.Canceled | |
| var _ = internaloption.WithDefaultEndpoint | |
| var _ = internal.Version | |
| var _ = internallog.New | |
| const apiId = "servicemanagement:v1" | |
| const apiName = "servicemanagement" | |
| const apiVersion = "v1" | |
| const basePath = "https://servicemanagement.googleapis.com/" | |
| const basePathTemplate = "https://servicemanagement.UNIVERSE_DOMAIN/" | |
| const mtlsBasePath = "https://servicemanagement.mtls.googleapis.com/" | |
| // OAuth2 scopes used by this API. | |
| const ( | |
| // See, edit, configure, and delete your Google Cloud data and see the email | |
| // address for your Google Account. | |
| CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform" | |
| // View your data across Google Cloud services and see the email address of | |
| // your Google Account | |
| CloudPlatformReadOnlyScope = "https://www.googleapis.com/auth/cloud-platform.read-only" | |
| // Manage your Google API service configuration | |
| ServiceManagementScope = "https://www.googleapis.com/auth/service.management" | |
| // View your Google API service configuration | |
| ServiceManagementReadonlyScope = "https://www.googleapis.com/auth/service.management.readonly" | |
| ) | |
| // NewService creates a new APIService. | |
| func NewService(ctx context.Context, opts ...option.ClientOption) (*APIService, error) { | |
| scopesOption := internaloption.WithDefaultScopes( | |
| "https://www.googleapis.com/auth/cloud-platform", | |
| "https://www.googleapis.com/auth/cloud-platform.read-only", | |
| "https://www.googleapis.com/auth/service.management", | |
| "https://www.googleapis.com/auth/service.management.readonly", | |
| ) | |
| // NOTE: prepend, so we don't override user-specified scopes. | |
| opts = append([]option.ClientOption{scopesOption}, opts...) | |
| opts = append(opts, internaloption.WithDefaultEndpoint(basePath)) | |
| opts = append(opts, internaloption.WithDefaultEndpointTemplate(basePathTemplate)) | |
| opts = append(opts, internaloption.WithDefaultMTLSEndpoint(mtlsBasePath)) | |
| opts = append(opts, internaloption.EnableNewAuthLibrary()) | |
| client, endpoint, err := htransport.NewClient(ctx, opts...) | |
| if err != nil { | |
| return nil, err | |
| } | |
| s := &APIService{client: client, BasePath: basePath, logger: internaloption.GetLogger(opts)} | |
| s.Operations = NewOperationsService(s) | |
| s.Services = NewServicesService(s) | |
| if endpoint != "" { | |
| s.BasePath = endpoint | |
| } | |
| return s, nil | |
| } | |
| // New creates a new APIService. It uses the provided http.Client for requests. | |
| // | |
| // Deprecated: please use NewService instead. | |
| // To provide a custom HTTP client, use option.WithHTTPClient. | |
| // If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead. | |
| func New(client *http.Client) (*APIService, error) { | |
| if client == nil { | |
| return nil, errors.New("client is nil") | |
| } | |
| return NewService(context.TODO(), option.WithHTTPClient(client)) | |
| } | |
| type APIService struct { | |
| client *http.Client | |
| logger *slog.Logger | |
| BasePath string // API endpoint base URL | |
| UserAgent string // optional additional User-Agent fragment | |
| Operations *OperationsService | |
| Services *ServicesService | |
| } | |
| func (s *APIService) userAgent() string { | |
| if s.UserAgent == "" { | |
| return googleapi.UserAgent | |
| } | |
| return googleapi.UserAgent + " " + s.UserAgent | |
| } | |
| func NewOperationsService(s *APIService) *OperationsService { | |
| rs := &OperationsService{s: s} | |
| return rs | |
| } | |
| type OperationsService struct { | |
| s *APIService | |
| } | |
| func NewServicesService(s *APIService) *ServicesService { | |
| rs := &ServicesService{s: s} | |
| rs.Configs = NewServicesConfigsService(s) | |
| rs.Consumers = NewServicesConsumersService(s) | |
| rs.Rollouts = NewServicesRolloutsService(s) | |
| return rs | |
| } | |
| type ServicesService struct { | |
| s *APIService | |
| Configs *ServicesConfigsService | |
| Consumers *ServicesConsumersService | |
| Rollouts *ServicesRolloutsService | |
| } | |
| func NewServicesConfigsService(s *APIService) *ServicesConfigsService { | |
| rs := &ServicesConfigsService{s: s} | |
| return rs | |
| } | |
| type ServicesConfigsService struct { | |
| s *APIService | |
| } | |
| func NewServicesConsumersService(s *APIService) *ServicesConsumersService { | |
| rs := &ServicesConsumersService{s: s} | |
| return rs | |
| } | |
| type ServicesConsumersService struct { | |
| s *APIService | |
| } | |
| func NewServicesRolloutsService(s *APIService) *ServicesRolloutsService { | |
| rs := &ServicesRolloutsService{s: s} | |
| return rs | |
| } | |
| type ServicesRolloutsService struct { | |
| s *APIService | |
| } | |
| // Advice: Generated advice about this change, used for providing more | |
| // information about how a change will affect the existing service. | |
| type Advice struct { | |
| // Description: Useful description for why this advice was applied and what | |
| // actions should be taken to mitigate any implied risks. | |
| Description string `json:"description,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Description") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Description") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s Advice) MarshalJSON() ([]byte, error) { | |
| type NoMethod Advice | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // Api: Api is a light-weight descriptor for an API Interface. Interfaces are | |
| // also described as "protocol buffer services" in some contexts, such as by | |
| // the "service" keyword in a .proto file, but they are different from API | |
| // Services, which represent a concrete implementation of an interface as | |
| // opposed to simply a description of methods and bindings. They are also | |
| // sometimes simply referred to as "APIs" in other contexts, such as the name | |
| // of this message itself. See https://cloud.google.com/apis/design/glossary | |
| // for detailed terminology. New usages of this message as an alternative to | |
| // ServiceDescriptorProto are strongly discouraged. This message does not | |
| // reliability preserve all information necessary to model the schema and | |
| // preserve semantics. Instead make use of FileDescriptorSet which preserves | |
| // the necessary information. | |
| type Api struct { | |
| // Edition: The source edition string, only valid when syntax is | |
| // SYNTAX_EDITIONS. | |
| Edition string `json:"edition,omitempty"` | |
| // Methods: The methods of this interface, in unspecified order. | |
| Methods []*Method `json:"methods,omitempty"` | |
| // Mixins: Included interfaces. See Mixin. | |
| Mixins []*Mixin `json:"mixins,omitempty"` | |
| // Name: The fully qualified name of this interface, including package name | |
| // followed by the interface's simple name. | |
| Name string `json:"name,omitempty"` | |
| // Options: Any metadata attached to the interface. | |
| Options []*Option `json:"options,omitempty"` | |
| // SourceContext: Source context for the protocol buffer service represented by | |
| // this message. | |
| SourceContext *SourceContext `json:"sourceContext,omitempty"` | |
| // Syntax: The source syntax of the service. | |
| // | |
| // Possible values: | |
| // "SYNTAX_PROTO2" - Syntax `proto2`. | |
| // "SYNTAX_PROTO3" - Syntax `proto3`. | |
| // "SYNTAX_EDITIONS" - Syntax `editions`. | |
| Syntax string `json:"syntax,omitempty"` | |
| // Version: A version string for this interface. If specified, must have the | |
| // form `major-version.minor-version`, as in `1.10`. If the minor version is | |
| // omitted, it defaults to zero. If the entire version field is empty, the | |
| // major version is derived from the package name, as outlined below. If the | |
| // field is not empty, the version in the package name will be verified to be | |
| // consistent with what is provided here. The versioning schema uses semantic | |
| // versioning (http://semver.org) where the major version number indicates a | |
| // breaking change and the minor version an additive, non-breaking change. Both | |
| // version numbers are signals to users what to expect from different versions, | |
| // and should be carefully chosen based on the product plan. The major version | |
| // is also reflected in the package name of the interface, which must end in | |
| // `v`, as in `google.feature.v1`. For major versions 0 and 1, the suffix can | |
| // be omitted. Zero major versions must only be used for experimental, non-GA | |
| // interfaces. | |
| Version string `json:"version,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Edition") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Edition") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s Api) MarshalJSON() ([]byte, error) { | |
| type NoMethod Api | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // Aspect: Aspect represents Generic aspect. It is used to configure an aspect | |
| // without making direct changes to service.proto | |
| type Aspect struct { | |
| // Kind: The type of this aspect configuration. | |
| Kind string `json:"kind,omitempty"` | |
| // Rules: Optional. Rules of the Configuration. | |
| Rules []*AspectRule `json:"rules,omitempty"` | |
| // Spec: Content of the configuration. The underlying schema should be defined | |
| // by Aspect owners as protobuf message under `google/api/configaspects/proto`. | |
| Spec googleapi.RawMessage `json:"spec,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Kind") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Kind") to include in API requests | |
| // with the JSON null value. By default, fields with empty values are omitted | |
| // from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s Aspect) MarshalJSON() ([]byte, error) { | |
| type NoMethod Aspect | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // AspectRule: Rule-based configuration for an aspect. | |
| type AspectRule struct { | |
| // Config: Required. Rules of the configuration. The underlying schema should | |
| // be defined by Aspect owners as protobuf message under | |
| // `google/api/configaspects/proto`. | |
| Config googleapi.RawMessage `json:"config,omitempty"` | |
| // Selector: Required. Selects the RPC methods to which this rule applies. | |
| // Refer to selector for syntax details. | |
| Selector string `json:"selector,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Config") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Config") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s AspectRule) MarshalJSON() ([]byte, error) { | |
| type NoMethod AspectRule | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // AuditConfig: Specifies the audit configuration for a service. The | |
| // configuration determines which permission types are logged, and what | |
| // identities, if any, are exempted from logging. An AuditConfig must have one | |
| // or more AuditLogConfigs. If there are AuditConfigs for both `allServices` | |
| // and a specific service, the union of the two AuditConfigs is used for that | |
| // service: the log_types specified in each AuditConfig are enabled, and the | |
| // exempted_members in each AuditLogConfig are exempted. Example Policy with | |
| // multiple AuditConfigs: { "audit_configs": [ { "service": "allServices", | |
| // "audit_log_configs": [ { "log_type": "DATA_READ", "exempted_members": [ | |
| // "user:jose@example.com" ] }, { "log_type": "DATA_WRITE" }, { "log_type": | |
| // "ADMIN_READ" } ] }, { "service": "sampleservice.googleapis.com", | |
| // "audit_log_configs": [ { "log_type": "DATA_READ" }, { "log_type": | |
| // "DATA_WRITE", "exempted_members": [ "user:aliya@example.com" ] } ] } ] } For | |
| // sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ | |
| // logging. It also exempts `jose@example.com` from DATA_READ logging, and | |
| // `aliya@example.com` from DATA_WRITE logging. | |
| type AuditConfig struct { | |
| // AuditLogConfigs: The configuration for logging of each type of permission. | |
| AuditLogConfigs []*AuditLogConfig `json:"auditLogConfigs,omitempty"` | |
| // Service: Specifies a service that will be enabled for audit logging. For | |
| // example, `storage.googleapis.com`, `cloudsql.googleapis.com`. `allServices` | |
| // is a special value that covers all services. | |
| Service string `json:"service,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "AuditLogConfigs") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "AuditLogConfigs") to include in | |
| // API requests with the JSON null value. By default, fields with empty values | |
| // are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s AuditConfig) MarshalJSON() ([]byte, error) { | |
| type NoMethod AuditConfig | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // AuditLogConfig: Provides the configuration for logging a type of | |
| // permissions. Example: { "audit_log_configs": [ { "log_type": "DATA_READ", | |
| // "exempted_members": [ "user:jose@example.com" ] }, { "log_type": | |
| // "DATA_WRITE" } ] } This enables 'DATA_READ' and 'DATA_WRITE' logging, while | |
| // exempting jose@example.com from DATA_READ logging. | |
| type AuditLogConfig struct { | |
| // ExemptedMembers: Specifies the identities that do not cause logging for this | |
| // type of permission. Follows the same format of Binding.members. | |
| ExemptedMembers []string `json:"exemptedMembers,omitempty"` | |
| // LogType: The log type that this config enables. | |
| // | |
| // Possible values: | |
| // "LOG_TYPE_UNSPECIFIED" - Default case. Should never be this. | |
| // "ADMIN_READ" - Admin reads. Example: CloudIAM getIamPolicy | |
| // "DATA_WRITE" - Data writes. Example: CloudSQL Users create | |
| // "DATA_READ" - Data reads. Example: CloudSQL Users list | |
| LogType string `json:"logType,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "ExemptedMembers") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "ExemptedMembers") to include in | |
| // API requests with the JSON null value. By default, fields with empty values | |
| // are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s AuditLogConfig) MarshalJSON() ([]byte, error) { | |
| type NoMethod AuditLogConfig | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // AuthProvider: Configuration for an authentication provider, including | |
| // support for JSON Web Token (JWT) | |
| // (https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32). | |
| type AuthProvider struct { | |
| // Audiences: The list of JWT audiences | |
| // (https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.3). | |
| // that are allowed to access. A JWT containing any of these audiences will be | |
| // accepted. When this setting is absent, JWTs with audiences: - | |
| // "https://[service.name]/[google.protobuf.Api.name]" - | |
| // "https://[service.name]/" will be accepted. For example, if no audiences are | |
| // in the setting, LibraryService API will accept JWTs with the following | |
| // audiences: - | |
| // https://library-example.googleapis.com/google.example.library.v1.LibraryService | |
| // - https://library-example.googleapis.com/ Example: audiences: | |
| // bookstore_android.apps.googleusercontent.com, | |
| // bookstore_web.apps.googleusercontent.com | |
| Audiences string `json:"audiences,omitempty"` | |
| // AuthorizationUrl: Redirect URL if JWT token is required but not present or | |
| // is expired. Implement authorizationUrl of securityDefinitions in OpenAPI | |
| // spec. | |
| AuthorizationUrl string `json:"authorizationUrl,omitempty"` | |
| // Id: The unique identifier of the auth provider. It will be referred to by | |
| // `AuthRequirement.provider_id`. Example: "bookstore_auth". | |
| Id string `json:"id,omitempty"` | |
| // Issuer: Identifies the principal that issued the JWT. See | |
| // https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.1 | |
| // Usually a URL or an email address. Example: https://securetoken.google.com | |
| // Example: 1234567-compute@developer.gserviceaccount.com | |
| Issuer string `json:"issuer,omitempty"` | |
| // JwksUri: URL of the provider's public key set to validate signature of the | |
| // JWT. See OpenID Discovery | |
| // (https://openid.net/specs/openid-connect-discovery-1_0.html#ProviderMetadata). | |
| // Optional if the key set document: - can be retrieved from OpenID Discovery | |
| // (https://openid.net/specs/openid-connect-discovery-1_0.html) of the issuer. | |
| // - can be inferred from the email domain of the issuer (e.g. a Google service | |
| // account). Example: https://www.googleapis.com/oauth2/v1/certs | |
| JwksUri string `json:"jwksUri,omitempty"` | |
| // JwtLocations: Defines the locations to extract the JWT. For now it is only | |
| // used by the Cloud Endpoints to store the OpenAPI extension | |
| // [x-google-jwt-locations] | |
| // (https://cloud.google.com/endpoints/docs/openapi/openapi-extensions#x-google-jwt-locations) | |
| // JWT locations can be one of HTTP headers, URL query parameters or cookies. | |
| // The rule is that the first match wins. If not specified, default to use | |
| // following 3 locations: 1) Authorization: Bearer 2) x-goog-iap-jwt-assertion | |
| // 3) access_token query parameter Default locations can be specified as | |
| // followings: jwt_locations: - header: Authorization value_prefix: "Bearer " - | |
| // header: x-goog-iap-jwt-assertion - query: access_token | |
| JwtLocations []*JwtLocation `json:"jwtLocations,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Audiences") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Audiences") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s AuthProvider) MarshalJSON() ([]byte, error) { | |
| type NoMethod AuthProvider | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // AuthRequirement: User-defined authentication requirements, including support | |
| // for JSON Web Token (JWT) | |
| // (https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32). | |
| type AuthRequirement struct { | |
| // Audiences: NOTE: This will be deprecated soon, once AuthProvider.audiences | |
| // is implemented and accepted in all the runtime components. The list of JWT | |
| // audiences | |
| // (https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.3). | |
| // that are allowed to access. A JWT containing any of these audiences will be | |
| // accepted. When this setting is absent, only JWTs with audience | |
| // "https://Service_name/API_name" will be accepted. For example, if no | |
| // audiences are in the setting, LibraryService API will only accept JWTs with | |
| // the following audience | |
| // "https://library-example.googleapis.com/google.example.library.v1.LibraryServ | |
| // ice". Example: audiences: bookstore_android.apps.googleusercontent.com, | |
| // bookstore_web.apps.googleusercontent.com | |
| Audiences string `json:"audiences,omitempty"` | |
| // ProviderId: id from authentication provider. Example: provider_id: | |
| // bookstore_auth | |
| ProviderId string `json:"providerId,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Audiences") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Audiences") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s AuthRequirement) MarshalJSON() ([]byte, error) { | |
| type NoMethod AuthRequirement | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // Authentication: `Authentication` defines the authentication configuration | |
| // for API methods provided by an API service. Example: name: | |
| // calendar.googleapis.com authentication: providers: - id: | |
| // google_calendar_auth jwks_uri: https://www.googleapis.com/oauth2/v1/certs | |
| // issuer: https://securetoken.google.com rules: - selector: "*" requirements: | |
| // provider_id: google_calendar_auth - selector: google.calendar.Delegate | |
| // oauth: canonical_scopes: https://www.googleapis.com/auth/calendar.read | |
| type Authentication struct { | |
| // Providers: Defines a set of authentication providers that a service | |
| // supports. | |
| Providers []*AuthProvider `json:"providers,omitempty"` | |
| // Rules: A list of authentication rules that apply to individual API methods. | |
| // **NOTE:** All service configuration rules follow "last one wins" order. | |
| Rules []*AuthenticationRule `json:"rules,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Providers") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Providers") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s Authentication) MarshalJSON() ([]byte, error) { | |
| type NoMethod Authentication | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // AuthenticationRule: Authentication rules for the service. By default, if a | |
| // method has any authentication requirements, every request must include a | |
| // valid credential matching one of the requirements. It's an error to include | |
| // more than one kind of credential in a single request. If a method doesn't | |
| // have any auth requirements, request credentials will be ignored. | |
| type AuthenticationRule struct { | |
| // AllowWithoutCredential: If true, the service accepts API keys without any | |
| // other credential. This flag only applies to HTTP and gRPC requests. | |
| AllowWithoutCredential bool `json:"allowWithoutCredential,omitempty"` | |
| // Oauth: The requirements for OAuth credentials. | |
| Oauth *OAuthRequirements `json:"oauth,omitempty"` | |
| // Requirements: Requirements for additional authentication providers. | |
| Requirements []*AuthRequirement `json:"requirements,omitempty"` | |
| // Selector: Selects the methods to which this rule applies. Refer to selector | |
| // for syntax details. | |
| Selector string `json:"selector,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "AllowWithoutCredential") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "AllowWithoutCredential") to | |
| // include in API requests with the JSON null value. By default, fields with | |
| // empty values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s AuthenticationRule) MarshalJSON() ([]byte, error) { | |
| type NoMethod AuthenticationRule | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // Backend: `Backend` defines the backend configuration for a service. | |
| type Backend struct { | |
| // Rules: A list of API backend rules that apply to individual API methods. | |
| // **NOTE:** All service configuration rules follow "last one wins" order. | |
| Rules []*BackendRule `json:"rules,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Rules") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Rules") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s Backend) MarshalJSON() ([]byte, error) { | |
| type NoMethod Backend | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // BackendRule: A backend rule provides configuration for an individual API | |
| // element. | |
| type BackendRule struct { | |
| // Address: The address of the API backend. The scheme is used to determine the | |
| // backend protocol and security. The following schemes are accepted: SCHEME | |
| // PROTOCOL SECURITY http:// HTTP None https:// HTTP TLS grpc:// gRPC None | |
| // grpcs:// gRPC TLS It is recommended to explicitly include a scheme. Leaving | |
| // out the scheme may cause constrasting behaviors across platforms. If the | |
| // port is unspecified, the default is: - 80 for schemes without TLS - 443 for | |
| // schemes with TLS For HTTP backends, use protocol to specify the protocol | |
| // version. | |
| Address string `json:"address,omitempty"` | |
| // Deadline: The number of seconds to wait for a response from a request. The | |
| // default varies based on the request protocol and deployment environment. | |
| Deadline float64 `json:"deadline,omitempty"` | |
| // DisableAuth: When disable_auth is true, a JWT ID token won't be generated | |
| // and the original "Authorization" HTTP header will be preserved. If the | |
| // header is used to carry the original token and is expected by the backend, | |
| // this field must be set to true to preserve the header. | |
| DisableAuth bool `json:"disableAuth,omitempty"` | |
| // JwtAudience: The JWT audience is used when generating a JWT ID token for the | |
| // backend. This ID token will be added in the HTTP "authorization" header, and | |
| // sent to the backend. | |
| JwtAudience string `json:"jwtAudience,omitempty"` | |
| // LoadBalancingPolicy: The load balancing policy used for connection to the | |
| // application backend. Defined as an arbitrary string to accomondate custom | |
| // load balancing policies supported by the underlying channel, but suggest | |
| // most users use one of the standard policies, such as the default, | |
| // "RoundRobin". | |
| LoadBalancingPolicy string `json:"loadBalancingPolicy,omitempty"` | |
| // MinDeadline: Deprecated, do not use. | |
| MinDeadline float64 `json:"minDeadline,omitempty"` | |
| // OperationDeadline: The number of seconds to wait for the completion of a | |
| // long running operation. The default is no deadline. | |
| OperationDeadline float64 `json:"operationDeadline,omitempty"` | |
| // OverridesByRequestProtocol: The map between request protocol and the backend | |
| // address. | |
| OverridesByRequestProtocol map[string]BackendRule `json:"overridesByRequestProtocol,omitempty"` | |
| // PathTranslation: Path translation specifies how to combine the backend | |
| // address with the request path in order to produce the appropriate forwarding | |
| // URL for the request. See PathTranslation for more details. | |
| // | |
| // Possible values: | |
| // "PATH_TRANSLATION_UNSPECIFIED" | |
| // "CONSTANT_ADDRESS" - Use the backend address as-is, with no modification | |
| // to the path. If the URL pattern contains variables, the variable names and | |
| // values will be appended to the query string. If a query string parameter and | |
| // a URL pattern variable have the same name, this may result in duplicate keys | |
| // in the query string. # Examples Given the following operation config: Method | |
| // path: /api/company/{cid}/user/{uid} Backend address: | |
| // https://example.cloudfunctions.net/getUser Requests to the following request | |
| // paths will call the backend at the translated path: Request path: | |
| // /api/company/widgetworks/user/johndoe Translated: | |
| // https://example.cloudfunctions.net/getUser?cid=widgetworks&uid=johndoe | |
| // Request path: /api/company/widgetworks/user/johndoe?timezone=EST Translated: | |
| // https://example.cloudfunctions.net/getUser?timezone=EST&cid=widgetworks&uid=johndoe | |
| // "APPEND_PATH_TO_ADDRESS" - The request path will be appended to the | |
| // backend address. # Examples Given the following operation config: Method | |
| // path: /api/company/{cid}/user/{uid} Backend address: | |
| // https://example.appspot.com Requests to the following request paths will | |
| // call the backend at the translated path: Request path: | |
| // /api/company/widgetworks/user/johndoe Translated: | |
| // https://example.appspot.com/api/company/widgetworks/user/johndoe Request | |
| // path: /api/company/widgetworks/user/johndoe?timezone=EST Translated: | |
| // https://example.appspot.com/api/company/widgetworks/user/johndoe?timezone=EST | |
| PathTranslation string `json:"pathTranslation,omitempty"` | |
| // Protocol: The protocol used for sending a request to the backend. The | |
| // supported values are "http/1.1" and "h2". The default value is inferred from | |
| // the scheme in the address field: SCHEME PROTOCOL http:// http/1.1 https:// | |
| // http/1.1 grpc:// h2 grpcs:// h2 For secure HTTP backends (https://) that | |
| // support HTTP/2, set this field to "h2" for improved performance. Configuring | |
| // this field to non-default values is only supported for secure HTTP backends. | |
| // This field will be ignored for all other backends. See | |
| // https://www.iana.org/assignments/tls-extensiontype-values/tls-extensiontype-values.xhtml#alpn-protocol-ids | |
| // for more details on the supported values. | |
| Protocol string `json:"protocol,omitempty"` | |
| // Selector: Selects the methods to which this rule applies. Refer to selector | |
| // for syntax details. | |
| Selector string `json:"selector,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Address") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Address") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s BackendRule) MarshalJSON() ([]byte, error) { | |
| type NoMethod BackendRule | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| func (s *BackendRule) UnmarshalJSON(data []byte) error { | |
| type NoMethod BackendRule | |
| var s1 struct { | |
| Deadline gensupport.JSONFloat64 `json:"deadline"` | |
| MinDeadline gensupport.JSONFloat64 `json:"minDeadline"` | |
| OperationDeadline gensupport.JSONFloat64 `json:"operationDeadline"` | |
| *NoMethod | |
| } | |
| s1.NoMethod = (*NoMethod)(s) | |
| if err := json.Unmarshal(data, &s1); err != nil { | |
| return err | |
| } | |
| s.Deadline = float64(s1.Deadline) | |
| s.MinDeadline = float64(s1.MinDeadline) | |
| s.OperationDeadline = float64(s1.OperationDeadline) | |
| return nil | |
| } | |
| // BatchingConfigProto: `BatchingConfigProto` defines the batching | |
| // configuration for an API method. | |
| type BatchingConfigProto struct { | |
| // BatchDescriptor: The request and response fields used in batching. | |
| BatchDescriptor *BatchingDescriptorProto `json:"batchDescriptor,omitempty"` | |
| // Thresholds: The thresholds which trigger a batched request to be sent. | |
| Thresholds *BatchingSettingsProto `json:"thresholds,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "BatchDescriptor") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "BatchDescriptor") to include in | |
| // API requests with the JSON null value. By default, fields with empty values | |
| // are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s BatchingConfigProto) MarshalJSON() ([]byte, error) { | |
| type NoMethod BatchingConfigProto | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // BatchingDescriptorProto: `BatchingDescriptorProto` specifies the fields of | |
| // the request message to be used for batching, and, optionally, the fields of | |
| // the response message to be used for demultiplexing. | |
| type BatchingDescriptorProto struct { | |
| // BatchedField: The repeated field in the request message to be aggregated by | |
| // batching. | |
| BatchedField string `json:"batchedField,omitempty"` | |
| // DiscriminatorFields: A list of the fields in the request message. Two | |
| // requests will be batched together only if the values of every field | |
| // specified in `request_discriminator_fields` is equal between the two | |
| // requests. | |
| DiscriminatorFields []string `json:"discriminatorFields,omitempty"` | |
| // SubresponseField: Optional. When present, indicates the field in the | |
| // response message to be used to demultiplex the response into multiple | |
| // response messages, in correspondence with the multiple request messages | |
| // originally batched together. | |
| SubresponseField string `json:"subresponseField,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "BatchedField") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "BatchedField") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s BatchingDescriptorProto) MarshalJSON() ([]byte, error) { | |
| type NoMethod BatchingDescriptorProto | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // BatchingSettingsProto: `BatchingSettingsProto` specifies a set of batching | |
| // thresholds, each of which acts as a trigger to send a batch of messages as a | |
| // request. At least one threshold must be positive nonzero. | |
| type BatchingSettingsProto struct { | |
| // DelayThreshold: The duration after which a batch should be sent, starting | |
| // from the addition of the first message to that batch. | |
| DelayThreshold string `json:"delayThreshold,omitempty"` | |
| // ElementCountLimit: The maximum number of elements collected in a batch that | |
| // could be accepted by server. | |
| ElementCountLimit int64 `json:"elementCountLimit,omitempty"` | |
| // ElementCountThreshold: The number of elements of a field collected into a | |
| // batch which, if exceeded, causes the batch to be sent. | |
| ElementCountThreshold int64 `json:"elementCountThreshold,omitempty"` | |
| // FlowControlByteLimit: The maximum size of data allowed by flow control. | |
| FlowControlByteLimit int64 `json:"flowControlByteLimit,omitempty"` | |
| // FlowControlElementLimit: The maximum number of elements allowed by flow | |
| // control. | |
| FlowControlElementLimit int64 `json:"flowControlElementLimit,omitempty"` | |
| // FlowControlLimitExceededBehavior: The behavior to take when the flow control | |
| // limit is exceeded. | |
| // | |
| // Possible values: | |
| // "UNSET_BEHAVIOR" - Default behavior, system-defined. | |
| // "THROW_EXCEPTION" - Stop operation, raise error. | |
| // "BLOCK" - Pause operation until limit clears. | |
| // "IGNORE" - Continue operation, disregard limit. | |
| FlowControlLimitExceededBehavior string `json:"flowControlLimitExceededBehavior,omitempty"` | |
| // RequestByteLimit: The maximum size of the request that could be accepted by | |
| // server. | |
| RequestByteLimit int64 `json:"requestByteLimit,omitempty"` | |
| // RequestByteThreshold: The aggregated size of the batched field which, if | |
| // exceeded, causes the batch to be sent. This size is computed by aggregating | |
| // the sizes of the request field to be batched, not of the entire request | |
| // message. | |
| RequestByteThreshold int64 `json:"requestByteThreshold,omitempty,string"` | |
| // ForceSendFields is a list of field names (e.g. "DelayThreshold") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "DelayThreshold") to include in | |
| // API requests with the JSON null value. By default, fields with empty values | |
| // are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s BatchingSettingsProto) MarshalJSON() ([]byte, error) { | |
| type NoMethod BatchingSettingsProto | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // Billing: Billing related configuration of the service. The following example | |
| // shows how to configure monitored resources and metrics for billing, | |
| // `consumer_destinations` is the only supported destination and the monitored | |
| // resources need at least one label key `cloud.googleapis.com/location` to | |
| // indicate the location of the billing usage, using different monitored | |
| // resources between monitoring and billing is recommended so they can be | |
| // evolved independently: monitored_resources: - type: | |
| // library.googleapis.com/billing_branch labels: - key: | |
| // cloud.googleapis.com/location description: | Predefined label to support | |
| // billing location restriction. - key: city description: | Custom label to | |
| // define the city where the library branch is located in. - key: name | |
| // description: Custom label to define the name of the library branch. metrics: | |
| // - name: library.googleapis.com/book/borrowed_count metric_kind: DELTA | |
| // value_type: INT64 unit: "1" billing: consumer_destinations: - | |
| // monitored_resource: library.googleapis.com/billing_branch metrics: - | |
| // library.googleapis.com/book/borrowed_count | |
| type Billing struct { | |
| // ConsumerDestinations: Billing configurations for sending metrics to the | |
| // consumer project. There can be multiple consumer destinations per service, | |
| // each one must have a different monitored resource type. A metric can be used | |
| // in at most one consumer destination. | |
| ConsumerDestinations []*BillingDestination `json:"consumerDestinations,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "ConsumerDestinations") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "ConsumerDestinations") to include | |
| // in API requests with the JSON null value. By default, fields with empty | |
| // values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s Billing) MarshalJSON() ([]byte, error) { | |
| type NoMethod Billing | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // BillingDestination: Configuration of a specific billing destination | |
| // (Currently only support bill against consumer project). | |
| type BillingDestination struct { | |
| // Metrics: Names of the metrics to report to this billing destination. Each | |
| // name must be defined in Service.metrics section. | |
| Metrics []string `json:"metrics,omitempty"` | |
| // MonitoredResource: The monitored resource type. The type must be defined in | |
| // Service.monitored_resources section. | |
| MonitoredResource string `json:"monitoredResource,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Metrics") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Metrics") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s BillingDestination) MarshalJSON() ([]byte, error) { | |
| type NoMethod BillingDestination | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // Binding: Associates `members`, or principals, with a `role`. | |
| type Binding struct { | |
| // Condition: The condition that is associated with this binding. If the | |
| // condition evaluates to `true`, then this binding applies to the current | |
| // request. If the condition evaluates to `false`, then this binding does not | |
| // apply to the current request. However, a different role binding might grant | |
| // the same role to one or more of the principals in this binding. To learn | |
| // which resources support conditions in their IAM policies, see the IAM | |
| // documentation | |
| // (https://cloud.google.com/iam/help/conditions/resource-policies). | |
| Condition *Expr `json:"condition,omitempty"` | |
| // Members: Specifies the principals requesting access for a Google Cloud | |
| // resource. `members` can have the following values: * `allUsers`: A special | |
| // identifier that represents anyone who is on the internet; with or without a | |
| // Google account. * `allAuthenticatedUsers`: A special identifier that | |
| // represents anyone who is authenticated with a Google account or a service | |
| // account. Does not include identities that come from external identity | |
| // providers (IdPs) through identity federation. * `user:{emailid}`: An email | |
| // address that represents a specific Google account. For example, | |
| // `alice@example.com` . * `serviceAccount:{emailid}`: An email address that | |
| // represents a Google service account. For example, | |
| // `my-other-app@appspot.gserviceaccount.com`. * | |
| // `serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]`: An | |
| // identifier for a Kubernetes service account | |
| // (https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts). | |
| // For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`. * | |
| // `group:{emailid}`: An email address that represents a Google group. For | |
| // example, `admins@example.com`. * `domain:{domain}`: The G Suite domain | |
| // (primary) that represents all the users of that domain. For example, | |
| // `google.com` or `example.com`. * | |
| // `principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/sub | |
| // ject/{subject_attribute_value}`: A single identity in a workforce identity | |
| // pool. * | |
| // `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/ | |
| // group/{group_id}`: All workforce identities in a group. * | |
| // `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/ | |
| // attribute.{attribute_name}/{attribute_value}`: All workforce identities with | |
| // a specific attribute value. * | |
| // `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/ | |
| // *`: All identities in a workforce identity pool. * | |
| // `principal://iam.googleapis.com/projects/{project_number}/locations/global/wo | |
| // rkloadIdentityPools/{pool_id}/subject/{subject_attribute_value}`: A single | |
| // identity in a workload identity pool. * | |
| // `principalSet://iam.googleapis.com/projects/{project_number}/locations/global | |
| // /workloadIdentityPools/{pool_id}/group/{group_id}`: A workload identity pool | |
| // group. * | |
| // `principalSet://iam.googleapis.com/projects/{project_number}/locations/global | |
| // /workloadIdentityPools/{pool_id}/attribute.{attribute_name}/{attribute_value} | |
| // `: All identities in a workload identity pool with a certain attribute. * | |
| // `principalSet://iam.googleapis.com/projects/{project_number}/locations/global | |
| // /workloadIdentityPools/{pool_id}/*`: All identities in a workload identity | |
| // pool. * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus | |
| // unique identifier) representing a user that has been recently deleted. For | |
| // example, `alice@example.com?uid=123456789012345678901`. If the user is | |
| // recovered, this value reverts to `user:{emailid}` and the recovered user | |
| // retains the role in the binding. * | |
| // `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus | |
| // unique identifier) representing a service account that has been recently | |
| // deleted. For example, | |
| // `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. If the | |
| // service account is undeleted, this value reverts to | |
| // `serviceAccount:{emailid}` and the undeleted service account retains the | |
| // role in the binding. * `deleted:group:{emailid}?uid={uniqueid}`: An email | |
| // address (plus unique identifier) representing a Google group that has been | |
| // recently deleted. For example, | |
| // `admins@example.com?uid=123456789012345678901`. If the group is recovered, | |
| // this value reverts to `group:{emailid}` and the recovered group retains the | |
| // role in the binding. * | |
| // `deleted:principal://iam.googleapis.com/locations/global/workforcePools/{pool | |
| // _id}/subject/{subject_attribute_value}`: Deleted single identity in a | |
| // workforce identity pool. For example, | |
| // `deleted:principal://iam.googleapis.com/locations/global/workforcePools/my-po | |
| // ol-id/subject/my-subject-attribute-value`. | |
| Members []string `json:"members,omitempty"` | |
| // Role: Role that is assigned to the list of `members`, or principals. For | |
| // example, `roles/viewer`, `roles/editor`, or `roles/owner`. For an overview | |
| // of the IAM roles and permissions, see the IAM documentation | |
| // (https://cloud.google.com/iam/docs/roles-overview). For a list of the | |
| // available pre-defined roles, see here | |
| // (https://cloud.google.com/iam/docs/understanding-roles). | |
| Role string `json:"role,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Condition") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Condition") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s Binding) MarshalJSON() ([]byte, error) { | |
| type NoMethod Binding | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // ChangeReport: Change report associated with a particular service | |
| // configuration. It contains a list of ConfigChanges based on the comparison | |
| // between two service configurations. | |
| type ChangeReport struct { | |
| // ConfigChanges: List of changes between two service configurations. The | |
| // changes will be alphabetically sorted based on the identifier of each | |
| // change. A ConfigChange identifier is a dot separated path to the | |
| // configuration. Example: | |
| // visibility.rules[selector='LibraryService.CreateBook'].restriction | |
| ConfigChanges []*ConfigChange `json:"configChanges,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "ConfigChanges") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "ConfigChanges") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s ChangeReport) MarshalJSON() ([]byte, error) { | |
| type NoMethod ChangeReport | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // ClientLibrarySettings: Details about how and where to publish client | |
| // libraries. | |
| type ClientLibrarySettings struct { | |
| // CppSettings: Settings for C++ client libraries. | |
| CppSettings *CppSettings `json:"cppSettings,omitempty"` | |
| // DotnetSettings: Settings for .NET client libraries. | |
| DotnetSettings *DotnetSettings `json:"dotnetSettings,omitempty"` | |
| // GoSettings: Settings for Go client libraries. | |
| GoSettings *GoSettings `json:"goSettings,omitempty"` | |
| // JavaSettings: Settings for legacy Java features, supported in the Service | |
| // YAML. | |
| JavaSettings *JavaSettings `json:"javaSettings,omitempty"` | |
| // LaunchStage: Launch stage of this version of the API. | |
| // | |
| // Possible values: | |
| // "LAUNCH_STAGE_UNSPECIFIED" - Do not use this default value. | |
| // "UNIMPLEMENTED" - The feature is not yet implemented. Users can not use | |
| // it. | |
| // "PRELAUNCH" - Prelaunch features are hidden from users and are only | |
| // visible internally. | |
| // "EARLY_ACCESS" - Early Access features are limited to a closed group of | |
| // testers. To use these features, you must sign up in advance and sign a | |
| // Trusted Tester agreement (which includes confidentiality provisions). These | |
| // features may be unstable, changed in backward-incompatible ways, and are not | |
| // guaranteed to be released. | |
| // "ALPHA" - Alpha is a limited availability test for releases before they | |
| // are cleared for widespread use. By Alpha, all significant design issues are | |
| // resolved and we are in the process of verifying functionality. Alpha | |
| // customers need to apply for access, agree to applicable terms, and have | |
| // their projects allowlisted. Alpha releases don't have to be feature | |
| // complete, no SLAs are provided, and there are no technical support | |
| // obligations, but they will be far enough along that customers can actually | |
| // use them in test environments or for limited-use tests -- just like they | |
| // would in normal production cases. | |
| // "BETA" - Beta is the point at which we are ready to open a release for any | |
| // customer to use. There are no SLA or technical support obligations in a Beta | |
| // release. Products will be complete from a feature perspective, but may have | |
| // some open outstanding issues. Beta releases are suitable for limited | |
| // production use cases. | |
| // "GA" - GA features are open to all developers and are considered stable | |
| // and fully qualified for production use. | |
| // "DEPRECATED" - Deprecated features are scheduled to be shut down and | |
| // removed. For more information, see the "Deprecation Policy" section of our | |
| // [Terms of Service](https://cloud.google.com/terms/) and the [Google Cloud | |
| // Platform Subject to the Deprecation | |
| // Policy](https://cloud.google.com/terms/deprecation) documentation. | |
| LaunchStage string `json:"launchStage,omitempty"` | |
| // NodeSettings: Settings for Node client libraries. | |
| NodeSettings *NodeSettings `json:"nodeSettings,omitempty"` | |
| // PhpSettings: Settings for PHP client libraries. | |
| PhpSettings *PhpSettings `json:"phpSettings,omitempty"` | |
| // PythonSettings: Settings for Python client libraries. | |
| PythonSettings *PythonSettings `json:"pythonSettings,omitempty"` | |
| // RestNumericEnums: When using transport=rest, the client request will encode | |
| // enums as numbers rather than strings. | |
| RestNumericEnums bool `json:"restNumericEnums,omitempty"` | |
| // RubySettings: Settings for Ruby client libraries. | |
| RubySettings *RubySettings `json:"rubySettings,omitempty"` | |
| // Version: Version of the API to apply these settings to. This is the full | |
| // protobuf package for the API, ending in the version element. Examples: | |
| // "google.cloud.speech.v1" and "google.spanner.admin.database.v1". | |
| Version string `json:"version,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "CppSettings") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "CppSettings") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s ClientLibrarySettings) MarshalJSON() ([]byte, error) { | |
| type NoMethod ClientLibrarySettings | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // CommonLanguageSettings: Required information for every language. | |
| type CommonLanguageSettings struct { | |
| // Destinations: The destination where API teams want this client library to be | |
| // published. | |
| // | |
| // Possible values: | |
| // "CLIENT_LIBRARY_DESTINATION_UNSPECIFIED" - Client libraries will neither | |
| // be generated nor published to package managers. | |
| // "GITHUB" - Generate the client library in a repo under | |
| // github.com/googleapis, but don't publish it to package managers. | |
| // "PACKAGE_MANAGER" - Publish the library to package managers like nuget.org | |
| // and npmjs.com. | |
| Destinations []string `json:"destinations,omitempty"` | |
| // ReferenceDocsUri: Link to automatically generated reference documentation. | |
| // Example: https://cloud.google.com/nodejs/docs/reference/asset/latest | |
| ReferenceDocsUri string `json:"referenceDocsUri,omitempty"` | |
| // SelectiveGapicGeneration: Configuration for which RPCs should be generated | |
| // in the GAPIC client. Note: This field should not be used in most cases. | |
| SelectiveGapicGeneration *SelectiveGapicGeneration `json:"selectiveGapicGeneration,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Destinations") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Destinations") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s CommonLanguageSettings) MarshalJSON() ([]byte, error) { | |
| type NoMethod CommonLanguageSettings | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // ConfigChange: Output generated from semantically comparing two versions of a | |
| // service configuration. Includes detailed information about a field that have | |
| // changed with applicable advice about potential consequences for the change, | |
| // such as backwards-incompatibility. | |
| type ConfigChange struct { | |
| // Advices: Collection of advice provided for this change, useful for | |
| // determining the possible impact of this change. | |
| Advices []*Advice `json:"advices,omitempty"` | |
| // ChangeType: The type for this change, either ADDED, REMOVED, or MODIFIED. | |
| // | |
| // Possible values: | |
| // "CHANGE_TYPE_UNSPECIFIED" - No value was provided. | |
| // "ADDED" - The changed object exists in the 'new' service configuration, | |
| // but not in the 'old' service configuration. | |
| // "REMOVED" - The changed object exists in the 'old' service configuration, | |
| // but not in the 'new' service configuration. | |
| // "MODIFIED" - The changed object exists in both service configurations, but | |
| // its value is different. | |
| ChangeType string `json:"changeType,omitempty"` | |
| // Element: Object hierarchy path to the change, with levels separated by a '.' | |
| // character. For repeated fields, an applicable unique identifier field is | |
| // used for the index (usually selector, name, or id). For maps, the term 'key' | |
| // is used. If the field has no unique identifier, the numeric index is used. | |
| // Examples: - | |
| // visibility.rules[selector=="google.LibraryService.ListBooks"].restriction - | |
| // quota.metric_rules[selector=="google"].metric_costs[key=="reads"].value - | |
| // logging.producer_destinations[0] | |
| Element string `json:"element,omitempty"` | |
| // NewValue: Value of the changed object in the new Service configuration, in | |
| // JSON format. This field will not be populated if ChangeType == REMOVED. | |
| NewValue string `json:"newValue,omitempty"` | |
| // OldValue: Value of the changed object in the old Service configuration, in | |
| // JSON format. This field will not be populated if ChangeType == ADDED. | |
| OldValue string `json:"oldValue,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Advices") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Advices") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s ConfigChange) MarshalJSON() ([]byte, error) { | |
| type NoMethod ConfigChange | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // ConfigFile: Generic specification of a source configuration file | |
| type ConfigFile struct { | |
| // FileContents: The bytes that constitute the file. | |
| FileContents string `json:"fileContents,omitempty"` | |
| // FilePath: The file name of the configuration file (full or relative path). | |
| FilePath string `json:"filePath,omitempty"` | |
| // FileType: The type of configuration file this represents. | |
| // | |
| // Possible values: | |
| // "FILE_TYPE_UNSPECIFIED" - Unknown file type. | |
| // "SERVICE_CONFIG_YAML" - YAML-specification of service. | |
| // "OPEN_API_JSON" - OpenAPI specification, serialized in JSON. | |
| // "OPEN_API_YAML" - OpenAPI specification, serialized in YAML. | |
| // "FILE_DESCRIPTOR_SET_PROTO" - FileDescriptorSet, generated by protoc. To | |
| // generate, use protoc with imports and source info included. For an example | |
| // test.proto file, the following command would put the value in a new file | |
| // named out.pb. $protoc --include_imports --include_source_info test.proto -o | |
| // out.pb | |
| // "PROTO_FILE" - Uncompiled Proto file. Used for storage and display | |
| // purposes only, currently server-side compilation is not supported. Should | |
| // match the inputs to 'protoc' command used to generated | |
| // FILE_DESCRIPTOR_SET_PROTO. A file of this type can only be included if at | |
| // least one file of type FILE_DESCRIPTOR_SET_PROTO is included. | |
| FileType string `json:"fileType,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "FileContents") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "FileContents") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s ConfigFile) MarshalJSON() ([]byte, error) { | |
| type NoMethod ConfigFile | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // ConfigRef: Represents a service configuration with its name and id. | |
| type ConfigRef struct { | |
| // Name: Resource name of a service config. It must have the following format: | |
| // "services/{service name}/configs/{config id}". | |
| Name string `json:"name,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Name") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Name") to include in API requests | |
| // with the JSON null value. By default, fields with empty values are omitted | |
| // from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s ConfigRef) MarshalJSON() ([]byte, error) { | |
| type NoMethod ConfigRef | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // ConfigSource: Represents a source file which is used to generate the service | |
| // configuration defined by `google.api.Service`. | |
| type ConfigSource struct { | |
| // Files: Set of source configuration files that are used to generate a service | |
| // configuration (`google.api.Service`). | |
| Files []*ConfigFile `json:"files,omitempty"` | |
| // Id: A unique ID for a specific instance of this message, typically assigned | |
| // by the client for tracking purpose. If empty, the server may choose to | |
| // generate one instead. | |
| Id string `json:"id,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Files") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Files") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s ConfigSource) MarshalJSON() ([]byte, error) { | |
| type NoMethod ConfigSource | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // Context: `Context` defines which contexts an API requests. Example: context: | |
| // rules: - selector: "*" requested: - google.rpc.context.ProjectContext - | |
| // google.rpc.context.OriginContext The above specifies that all methods in the | |
| // API request `google.rpc.context.ProjectContext` and | |
| // `google.rpc.context.OriginContext`. Available context types are defined in | |
| // package `google.rpc.context`. This also provides mechanism to allowlist any | |
| // protobuf message extension that can be sent in grpc metadata using | |
| // “x-goog-ext--bin” and “x-goog-ext--jspb” format. For example, list | |
| // any service specific protobuf types that can appear in grpc metadata as | |
| // follows in your yaml file: Example: context: rules: - selector: | |
| // "google.example.library.v1.LibraryService.CreateBook" | |
| // allowed_request_extensions: - google.foo.v1.NewExtension | |
| // allowed_response_extensions: - google.foo.v1.NewExtension You can also | |
| // specify extension ID instead of fully qualified extension name here. | |
| type Context struct { | |
| // Rules: A list of RPC context rules that apply to individual API methods. | |
| // **NOTE:** All service configuration rules follow "last one wins" order. | |
| Rules []*ContextRule `json:"rules,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Rules") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Rules") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s Context) MarshalJSON() ([]byte, error) { | |
| type NoMethod Context | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // ContextRule: A context rule provides information about the context for an | |
| // individual API element. | |
| type ContextRule struct { | |
| // AllowedRequestExtensions: A list of full type names or extension IDs of | |
| // extensions allowed in grpc side channel from client to backend. | |
| AllowedRequestExtensions []string `json:"allowedRequestExtensions,omitempty"` | |
| // AllowedResponseExtensions: A list of full type names or extension IDs of | |
| // extensions allowed in grpc side channel from backend to client. | |
| AllowedResponseExtensions []string `json:"allowedResponseExtensions,omitempty"` | |
| // Provided: A list of full type names of provided contexts. It is used to | |
| // support propagating HTTP headers and ETags from the response extension. | |
| Provided []string `json:"provided,omitempty"` | |
| // Requested: A list of full type names of requested contexts, only the | |
| // requested context will be made available to the backend. | |
| Requested []string `json:"requested,omitempty"` | |
| // Selector: Selects the methods to which this rule applies. Refer to selector | |
| // for syntax details. | |
| Selector string `json:"selector,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "AllowedRequestExtensions") | |
| // to unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "AllowedRequestExtensions") to | |
| // include in API requests with the JSON null value. By default, fields with | |
| // empty values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s ContextRule) MarshalJSON() ([]byte, error) { | |
| type NoMethod ContextRule | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // Control: Selects and configures the service controller used by the service. | |
| // Example: control: environment: servicecontrol.googleapis.com | |
| type Control struct { | |
| // Environment: The service controller environment to use. If empty, no control | |
| // plane features (like quota and billing) will be enabled. The recommended | |
| // value for most services is servicecontrol.googleapis.com. | |
| Environment string `json:"environment,omitempty"` | |
| // MethodPolicies: Defines policies applying to the API methods of the service. | |
| MethodPolicies []*MethodPolicy `json:"methodPolicies,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Environment") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Environment") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s Control) MarshalJSON() ([]byte, error) { | |
| type NoMethod Control | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // CppSettings: Settings for C++ client libraries. | |
| type CppSettings struct { | |
| // Common: Some settings. | |
| Common *CommonLanguageSettings `json:"common,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Common") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Common") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s CppSettings) MarshalJSON() ([]byte, error) { | |
| type NoMethod CppSettings | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // CustomError: Customize service error responses. For example, list any | |
| // service specific protobuf types that can appear in error detail lists of | |
| // error responses. Example: custom_error: types: - google.foo.v1.CustomError - | |
| // google.foo.v1.AnotherError | |
| type CustomError struct { | |
| // Rules: The list of custom error rules that apply to individual API messages. | |
| // **NOTE:** All service configuration rules follow "last one wins" order. | |
| Rules []*CustomErrorRule `json:"rules,omitempty"` | |
| // Types: The list of custom error detail types, e.g. | |
| // 'google.foo.v1.CustomError'. | |
| Types []string `json:"types,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Rules") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Rules") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s CustomError) MarshalJSON() ([]byte, error) { | |
| type NoMethod CustomError | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // CustomErrorRule: A custom error rule. | |
| type CustomErrorRule struct { | |
| // IsErrorType: Mark this message as possible payload in error response. | |
| // Otherwise, objects of this type will be filtered when they appear in error | |
| // payload. | |
| IsErrorType bool `json:"isErrorType,omitempty"` | |
| // Selector: Selects messages to which this rule applies. Refer to selector for | |
| // syntax details. | |
| Selector string `json:"selector,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "IsErrorType") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "IsErrorType") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s CustomErrorRule) MarshalJSON() ([]byte, error) { | |
| type NoMethod CustomErrorRule | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // CustomHttpPattern: A custom pattern is used for defining custom HTTP verb. | |
| type CustomHttpPattern struct { | |
| // Kind: The name of this custom HTTP verb. | |
| Kind string `json:"kind,omitempty"` | |
| // Path: The path matched by this custom verb. | |
| Path string `json:"path,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Kind") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Kind") to include in API requests | |
| // with the JSON null value. By default, fields with empty values are omitted | |
| // from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s CustomHttpPattern) MarshalJSON() ([]byte, error) { | |
| type NoMethod CustomHttpPattern | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // DeleteServiceStrategy: Strategy used to delete a service. This strategy is a | |
| // placeholder only used by the system generated rollout to delete a service. | |
| type DeleteServiceStrategy struct { | |
| } | |
| // Diagnostic: Represents a diagnostic message (error or warning) | |
| type Diagnostic struct { | |
| // Kind: The kind of diagnostic information provided. | |
| // | |
| // Possible values: | |
| // "WARNING" - Warnings and errors | |
| // "ERROR" - Only errors | |
| Kind string `json:"kind,omitempty"` | |
| // Location: File name and line number of the error or warning. | |
| Location string `json:"location,omitempty"` | |
| // Message: Message describing the error or warning. | |
| Message string `json:"message,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Kind") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Kind") to include in API requests | |
| // with the JSON null value. By default, fields with empty values are omitted | |
| // from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s Diagnostic) MarshalJSON() ([]byte, error) { | |
| type NoMethod Diagnostic | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // Documentation: `Documentation` provides the information for describing a | |
| // service. Example: documentation: summary: > The Google Calendar API gives | |
| // access to most calendar features. pages: - name: Overview content: (== | |
| // include google/foo/overview.md ==) - name: Tutorial content: (== include | |
| // google/foo/tutorial.md ==) subpages: - name: Java content: (== include | |
| // google/foo/tutorial_java.md ==) rules: - selector: | |
| // google.calendar.Calendar.Get description: > ... - selector: | |
| // google.calendar.Calendar.Put description: > ... Documentation is provided in | |
| // markdown syntax. In addition to standard markdown features, definition | |
| // lists, tables and fenced code blocks are supported. Section headers can be | |
| // provided and are interpreted relative to the section nesting of the context | |
| // where a documentation fragment is embedded. Documentation from the IDL is | |
| // merged with documentation defined via the config at normalization time, | |
| // where documentation provided by config rules overrides IDL provided. A | |
| // number of constructs specific to the API platform are supported in | |
| // documentation text. In order to reference a proto element, the following | |
| // notation can be used: [fully.qualified.proto.name][] To override the display | |
| // text used for the link, this can be used: [display | |
| // text][fully.qualified.proto.name] Text can be excluded from doc using the | |
| // following notation: (-- internal comment --) A few directives are available | |
| // in documentation. Note that directives must appear on a single line to be | |
| // properly identified. The `include` directive includes a markdown file from | |
| // an external source: (== include path/to/file ==) The `resource_for` | |
| // directive marks a message to be the resource of a collection in REST view. | |
| // If it is not specified, tools attempt to infer the resource from the | |
| // operations in a collection: (== resource_for v1.shelves.books ==) The | |
| // directive `suppress_warning` does not directly affect documentation and is | |
| // documented together with service config validation. | |
| type Documentation struct { | |
| // AdditionalIamInfo: Optional information about the IAM configuration. This is | |
| // typically used to link to documentation about a product's IAM roles and | |
| // permissions. | |
| AdditionalIamInfo string `json:"additionalIamInfo,omitempty"` | |
| // DocumentationRootUrl: The URL to the root of documentation. | |
| DocumentationRootUrl string `json:"documentationRootUrl,omitempty"` | |
| // Overview: Declares a single overview page. For example: documentation: | |
| // summary: ... overview: (== include overview.md ==) This is a shortcut for | |
| // the following declaration (using pages style): documentation: summary: ... | |
| // pages: - name: Overview content: (== include overview.md ==) Note: you | |
| // cannot specify both `overview` field and `pages` field. | |
| Overview string `json:"overview,omitempty"` | |
| // Pages: The top level pages for the documentation set. | |
| Pages []*Page `json:"pages,omitempty"` | |
| // Rules: A list of documentation rules that apply to individual API elements. | |
| // **NOTE:** All service configuration rules follow "last one wins" order. | |
| Rules []*DocumentationRule `json:"rules,omitempty"` | |
| // SectionOverrides: Specifies section and content to override the boilerplate | |
| // content. Currently overrides following sections: 1. | |
| // rest.service.client_libraries | |
| SectionOverrides []*Page `json:"sectionOverrides,omitempty"` | |
| // ServiceRootUrl: Specifies the service root url if the default one (the | |
| // service name from the yaml file) is not suitable. This can be seen in any | |
| // fully specified service urls as well as sections that show a base that other | |
| // urls are relative to. | |
| ServiceRootUrl string `json:"serviceRootUrl,omitempty"` | |
| // Summary: A short description of what the service does. The summary must be | |
| // plain text. It becomes the overview of the service displayed in Google Cloud | |
| // Console. NOTE: This field is equivalent to the standard field `description`. | |
| Summary string `json:"summary,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "AdditionalIamInfo") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "AdditionalIamInfo") to include in | |
| // API requests with the JSON null value. By default, fields with empty values | |
| // are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s Documentation) MarshalJSON() ([]byte, error) { | |
| type NoMethod Documentation | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // DocumentationRule: A documentation rule provides information about | |
| // individual API elements. | |
| type DocumentationRule struct { | |
| // DeprecationDescription: Deprecation description of the selected element(s). | |
| // It can be provided if an element is marked as `deprecated`. | |
| DeprecationDescription string `json:"deprecationDescription,omitempty"` | |
| // Description: Description of the selected proto element (e.g. a message, a | |
| // method, a 'service' definition, or a field). Defaults to leading & trailing | |
| // comments taken from the proto source definition of the proto element. | |
| Description string `json:"description,omitempty"` | |
| // DisableReplacementWords: String of comma or space separated case-sensitive | |
| // words for which method/field name replacement will be disabled. | |
| DisableReplacementWords string `json:"disableReplacementWords,omitempty"` | |
| // Selector: The selector is a comma-separated list of patterns for any element | |
| // such as a method, a field, an enum value. Each pattern is a qualified name | |
| // of the element which may end in "*", indicating a wildcard. Wildcards are | |
| // only allowed at the end and for a whole component of the qualified name, | |
| // i.e. "foo.*" is ok, but not "foo.b*" or "foo.*.bar". A wildcard will match | |
| // one or more components. To specify a default for all applicable elements, | |
| // the whole pattern "*" is used. | |
| Selector string `json:"selector,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "DeprecationDescription") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "DeprecationDescription") to | |
| // include in API requests with the JSON null value. By default, fields with | |
| // empty values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s DocumentationRule) MarshalJSON() ([]byte, error) { | |
| type NoMethod DocumentationRule | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // DotnetSettings: Settings for Dotnet client libraries. | |
| type DotnetSettings struct { | |
| // Common: Some settings. | |
| Common *CommonLanguageSettings `json:"common,omitempty"` | |
| // ForcedNamespaceAliases: Namespaces which must be aliased in snippets due to | |
| // a known (but non-generator-predictable) naming collision | |
| ForcedNamespaceAliases []string `json:"forcedNamespaceAliases,omitempty"` | |
| // HandwrittenSignatures: Method signatures (in the form | |
| // "service.method(signature)") which are provided separately, so shouldn't be | |
| // generated. Snippets *calling* these methods are still generated, however. | |
| HandwrittenSignatures []string `json:"handwrittenSignatures,omitempty"` | |
| // IgnoredResources: List of full resource types to ignore during generation. | |
| // This is typically used for API-specific Location resources, which should be | |
| // handled by the generator as if they were actually the common Location | |
| // resources. Example entry: "documentai.googleapis.com/Location" | |
| IgnoredResources []string `json:"ignoredResources,omitempty"` | |
| // RenamedResources: Map from full resource types to the effective short name | |
| // for the resource. This is used when otherwise resource named from different | |
| // services would cause naming collisions. Example entry: | |
| // "datalabeling.googleapis.com/Dataset": "DataLabelingDataset" | |
| RenamedResources map[string]string `json:"renamedResources,omitempty"` | |
| // RenamedServices: Map from original service names to renamed versions. This | |
| // is used when the default generated types would cause a naming conflict. | |
| // (Neither name is fully-qualified.) Example: Subscriber to | |
| // SubscriberServiceApi. | |
| RenamedServices map[string]string `json:"renamedServices,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Common") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Common") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s DotnetSettings) MarshalJSON() ([]byte, error) { | |
| type NoMethod DotnetSettings | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // EnableServiceResponse: Operation payload for EnableService method. | |
| type EnableServiceResponse struct { | |
| } | |
| // Endpoint: `Endpoint` describes a network address of a service that serves a | |
| // set of APIs. It is commonly known as a service endpoint. A service may | |
| // expose any number of service endpoints, and all service endpoints share the | |
| // same service definition, such as quota limits and monitoring metrics. | |
| // Example: type: google.api.Service name: library-example.googleapis.com | |
| // endpoints: # Declares network address | |
| // `https://library-example.googleapis.com` # for service | |
| // `library-example.googleapis.com`. The `https` scheme # is implicit for all | |
| // service endpoints. Other schemes may be # supported in the future. - name: | |
| // library-example.googleapis.com allow_cors: false - name: | |
| // content-staging-library-example.googleapis.com # Allows HTTP OPTIONS calls | |
| // to be passed to the API frontend, for it # to decide whether the subsequent | |
| // cross-origin request is allowed # to proceed. allow_cors: true | |
| type Endpoint struct { | |
| // Aliases: Aliases for this endpoint, these will be served by the same UrlMap | |
| // as the parent endpoint, and will be provisioned in the GCP stack for the | |
| // Regional Endpoints. | |
| Aliases []string `json:"aliases,omitempty"` | |
| // AllowCors: Allowing CORS | |
| // (https://en.wikipedia.org/wiki/Cross-origin_resource_sharing), aka | |
| // cross-domain traffic, would allow the backends served from this endpoint to | |
| // receive and respond to HTTP OPTIONS requests. The response will be used by | |
| // the browser to determine whether the subsequent cross-origin request is | |
| // allowed to proceed. | |
| AllowCors bool `json:"allowCors,omitempty"` | |
| // Name: The canonical name of this endpoint. | |
| Name string `json:"name,omitempty"` | |
| // Target: The specification of an Internet routable address of API frontend | |
| // that will handle requests to this API Endpoint | |
| // (https://cloud.google.com/apis/design/glossary). It should be either a valid | |
| // IPv4 address or a fully-qualified domain name. For example, "8.8.8.8" or | |
| // "myservice.appspot.com". | |
| Target string `json:"target,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Aliases") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Aliases") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s Endpoint) MarshalJSON() ([]byte, error) { | |
| type NoMethod Endpoint | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // Enum: Enum type definition. New usages of this message as an alternative to | |
| // EnumDescriptorProto are strongly discouraged. This message does not | |
| // reliability preserve all information necessary to model the schema and | |
| // preserve semantics. Instead make use of FileDescriptorSet which preserves | |
| // the necessary information. | |
| type Enum struct { | |
| // Edition: The source edition string, only valid when syntax is | |
| // SYNTAX_EDITIONS. | |
| Edition string `json:"edition,omitempty"` | |
| // Enumvalue: Enum value definitions. | |
| Enumvalue []*EnumValue `json:"enumvalue,omitempty"` | |
| // Name: Enum type name. | |
| Name string `json:"name,omitempty"` | |
| // Options: Protocol buffer options. | |
| Options []*Option `json:"options,omitempty"` | |
| // SourceContext: The source context. | |
| SourceContext *SourceContext `json:"sourceContext,omitempty"` | |
| // Syntax: The source syntax. | |
| // | |
| // Possible values: | |
| // "SYNTAX_PROTO2" - Syntax `proto2`. | |
| // "SYNTAX_PROTO3" - Syntax `proto3`. | |
| // "SYNTAX_EDITIONS" - Syntax `editions`. | |
| Syntax string `json:"syntax,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Edition") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Edition") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s Enum) MarshalJSON() ([]byte, error) { | |
| type NoMethod Enum | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // EnumValue: Enum value definition. New usages of this message as an | |
| // alternative to EnumValueDescriptorProto are strongly discouraged. This | |
| // message does not reliability preserve all information necessary to model the | |
| // schema and preserve semantics. Instead make use of FileDescriptorSet which | |
| // preserves the necessary information. | |
| type EnumValue struct { | |
| // Name: Enum value name. | |
| Name string `json:"name,omitempty"` | |
| // Number: Enum value number. | |
| Number int64 `json:"number,omitempty"` | |
| // Options: Protocol buffer options. | |
| Options []*Option `json:"options,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Name") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Name") to include in API requests | |
| // with the JSON null value. By default, fields with empty values are omitted | |
| // from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s EnumValue) MarshalJSON() ([]byte, error) { | |
| type NoMethod EnumValue | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // ExperimentalFeatures: Experimental features to be included during client | |
| // library generation. These fields will be deprecated once the feature | |
| // graduates and is enabled by default. | |
| type ExperimentalFeatures struct { | |
| // ProtobufPythonicTypesEnabled: Enables generation of protobuf code using new | |
| // types that are more Pythonic which are included in `protobuf>=5.29.x`. This | |
| // feature will be enabled by default 1 month after launching the feature in | |
| // preview packages. | |
| ProtobufPythonicTypesEnabled bool `json:"protobufPythonicTypesEnabled,omitempty"` | |
| // RestAsyncIoEnabled: Enables generation of asynchronous REST clients if | |
| // `rest` transport is enabled. By default, asynchronous REST clients will not | |
| // be generated. This feature will be enabled by default 1 month after | |
| // launching the feature in preview packages. | |
| RestAsyncIoEnabled bool `json:"restAsyncIoEnabled,omitempty"` | |
| // UnversionedPackageDisabled: Disables generation of an unversioned Python | |
| // package for this client library. This means that the module names will need | |
| // to be versioned in import statements. For example `import | |
| // google.cloud.library_v2` instead of `import google.cloud.library`. | |
| UnversionedPackageDisabled bool `json:"unversionedPackageDisabled,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. | |
| // "ProtobufPythonicTypesEnabled") to unconditionally include in API requests. | |
| // By default, fields with empty or default values are omitted from API | |
| // requests. See https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields | |
| // for more details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "ProtobufPythonicTypesEnabled") to | |
| // include in API requests with the JSON null value. By default, fields with | |
| // empty values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s ExperimentalFeatures) MarshalJSON() ([]byte, error) { | |
| type NoMethod ExperimentalFeatures | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // Expr: Represents a textual expression in the Common Expression Language | |
| // (CEL) syntax. CEL is a C-like expression language. The syntax and semantics | |
| // of CEL are documented at https://github.com/google/cel-spec. Example | |
| // (Comparison): title: "Summary size limit" description: "Determines if a | |
| // summary is less than 100 chars" expression: "document.summary.size() < 100" | |
| // Example (Equality): title: "Requestor is owner" description: "Determines if | |
| // requestor is the document owner" expression: "document.owner == | |
| // request.auth.claims.email" Example (Logic): title: "Public documents" | |
| // description: "Determine whether the document should be publicly visible" | |
| // expression: "document.type != 'private' && document.type != 'internal'" | |
| // Example (Data Manipulation): title: "Notification string" description: | |
| // "Create a notification string with a timestamp." expression: "'New message | |
| // received at ' + string(document.create_time)" The exact variables and | |
| // functions that may be referenced within an expression are determined by the | |
| // service that evaluates it. See the service documentation for additional | |
| // information. | |
| type Expr struct { | |
| // Description: Optional. Description of the expression. This is a longer text | |
| // which describes the expression, e.g. when hovered over it in a UI. | |
| Description string `json:"description,omitempty"` | |
| // Expression: Textual representation of an expression in Common Expression | |
| // Language syntax. | |
| Expression string `json:"expression,omitempty"` | |
| // Location: Optional. String indicating the location of the expression for | |
| // error reporting, e.g. a file name and a position in the file. | |
| Location string `json:"location,omitempty"` | |
| // Title: Optional. Title for the expression, i.e. a short string describing | |
| // its purpose. This can be used e.g. in UIs which allow to enter the | |
| // expression. | |
| Title string `json:"title,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Description") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Description") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s Expr) MarshalJSON() ([]byte, error) { | |
| type NoMethod Expr | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // Field: A single field of a message type. New usages of this message as an | |
| // alternative to FieldDescriptorProto are strongly discouraged. This message | |
| // does not reliability preserve all information necessary to model the schema | |
| // and preserve semantics. Instead make use of FileDescriptorSet which | |
| // preserves the necessary information. | |
| type Field struct { | |
| // Cardinality: The field cardinality. | |
| // | |
| // Possible values: | |
| // "CARDINALITY_UNKNOWN" - For fields with unknown cardinality. | |
| // "CARDINALITY_OPTIONAL" - For optional fields. | |
| // "CARDINALITY_REQUIRED" - For required fields. Proto2 syntax only. | |
| // "CARDINALITY_REPEATED" - For repeated fields. | |
| Cardinality string `json:"cardinality,omitempty"` | |
| // DefaultValue: The string value of the default value of this field. Proto2 | |
| // syntax only. | |
| DefaultValue string `json:"defaultValue,omitempty"` | |
| // JsonName: The field JSON name. | |
| JsonName string `json:"jsonName,omitempty"` | |
| // Kind: The field type. | |
| // | |
| // Possible values: | |
| // "TYPE_UNKNOWN" - Field type unknown. | |
| // "TYPE_DOUBLE" - Field type double. | |
| // "TYPE_FLOAT" - Field type float. | |
| // "TYPE_INT64" - Field type int64. | |
| // "TYPE_UINT64" - Field type uint64. | |
| // "TYPE_INT32" - Field type int32. | |
| // "TYPE_FIXED64" - Field type fixed64. | |
| // "TYPE_FIXED32" - Field type fixed32. | |
| // "TYPE_BOOL" - Field type bool. | |
| // "TYPE_STRING" - Field type string. | |
| // "TYPE_GROUP" - Field type group. Proto2 syntax only, and deprecated. | |
| // "TYPE_MESSAGE" - Field type message. | |
| // "TYPE_BYTES" - Field type bytes. | |
| // "TYPE_UINT32" - Field type uint32. | |
| // "TYPE_ENUM" - Field type enum. | |
| // "TYPE_SFIXED32" - Field type sfixed32. | |
| // "TYPE_SFIXED64" - Field type sfixed64. | |
| // "TYPE_SINT32" - Field type sint32. | |
| // "TYPE_SINT64" - Field type sint64. | |
| Kind string `json:"kind,omitempty"` | |
| // Name: The field name. | |
| Name string `json:"name,omitempty"` | |
| // Number: The field number. | |
| Number int64 `json:"number,omitempty"` | |
| // OneofIndex: The index of the field type in `Type.oneofs`, for message or | |
| // enumeration types. The first type has index 1; zero means the type is not in | |
| // the list. | |
| OneofIndex int64 `json:"oneofIndex,omitempty"` | |
| // Options: The protocol buffer options. | |
| Options []*Option `json:"options,omitempty"` | |
| // Packed: Whether to use alternative packed wire representation. | |
| Packed bool `json:"packed,omitempty"` | |
| // TypeUrl: The field type URL, without the scheme, for message or enumeration | |
| // types. Example: "type.googleapis.com/google.protobuf.Timestamp". | |
| TypeUrl string `json:"typeUrl,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Cardinality") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Cardinality") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s Field) MarshalJSON() ([]byte, error) { | |
| type NoMethod Field | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // FieldPolicy: Google API Policy Annotation This message defines a simple API | |
| // policy annotation that can be used to annotate API request and response | |
| // message fields with applicable policies. One field may have multiple | |
| // applicable policies that must all be satisfied before a request can be | |
| // processed. This policy annotation is used to generate the overall policy | |
| // that will be used for automatic runtime policy enforcement and documentation | |
| // generation. | |
| type FieldPolicy struct { | |
| // ResourcePermission: Specifies the required permission(s) for the resource | |
| // referred to by the field. It requires the field contains a valid resource | |
| // reference, and the request must pass the permission checks to proceed. For | |
| // example, "resourcemanager.projects.get". | |
| ResourcePermission string `json:"resourcePermission,omitempty"` | |
| // ResourceType: Specifies the resource type for the resource referred to by | |
| // the field. | |
| ResourceType string `json:"resourceType,omitempty"` | |
| // Selector: Selects one or more request or response message fields to apply | |
| // this `FieldPolicy`. When a `FieldPolicy` is used in proto annotation, the | |
| // selector must be left as empty. The service config generator will | |
| // automatically fill the correct value. When a `FieldPolicy` is used in | |
| // service config, the selector must be a comma-separated string with valid | |
| // request or response field paths, such as "foo.bar" or "foo.bar,foo.baz". | |
| Selector string `json:"selector,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "ResourcePermission") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "ResourcePermission") to include | |
| // in API requests with the JSON null value. By default, fields with empty | |
| // values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s FieldPolicy) MarshalJSON() ([]byte, error) { | |
| type NoMethod FieldPolicy | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // FlowErrorDetails: Encapsulation of flow-specific error details for | |
| // debugging. Used as a details field on an error Status, not intended for | |
| // external use. | |
| type FlowErrorDetails struct { | |
| // ExceptionType: The type of exception (as a class name). | |
| ExceptionType string `json:"exceptionType,omitempty"` | |
| // FlowStepId: The step that failed. | |
| FlowStepId string `json:"flowStepId,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "ExceptionType") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "ExceptionType") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s FlowErrorDetails) MarshalJSON() ([]byte, error) { | |
| type NoMethod FlowErrorDetails | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // GenerateConfigReportRequest: Request message for GenerateConfigReport | |
| // method. | |
| type GenerateConfigReportRequest struct { | |
| // NewConfig: Required. Service configuration for which we want to generate the | |
| // report. For this version of API, the supported types are | |
| // google.api.servicemanagement.v1.ConfigRef, | |
| // google.api.servicemanagement.v1.ConfigSource, and google.api.Service | |
| NewConfig googleapi.RawMessage `json:"newConfig,omitempty"` | |
| // OldConfig: Optional. Service configuration against which the comparison will | |
| // be done. For this version of API, the supported types are | |
| // google.api.servicemanagement.v1.ConfigRef, | |
| // google.api.servicemanagement.v1.ConfigSource, and google.api.Service | |
| OldConfig googleapi.RawMessage `json:"oldConfig,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "NewConfig") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "NewConfig") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s GenerateConfigReportRequest) MarshalJSON() ([]byte, error) { | |
| type NoMethod GenerateConfigReportRequest | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // GenerateConfigReportResponse: Response message for GenerateConfigReport | |
| // method. | |
| type GenerateConfigReportResponse struct { | |
| // ChangeReports: list of ChangeReport, each corresponding to comparison | |
| // between two service configurations. | |
| ChangeReports []*ChangeReport `json:"changeReports,omitempty"` | |
| // Diagnostics: Errors / Linter warnings associated with the service definition | |
| // this report belongs to. | |
| Diagnostics []*Diagnostic `json:"diagnostics,omitempty"` | |
| // Id: ID of the service configuration this report belongs to. | |
| Id string `json:"id,omitempty"` | |
| // ServiceName: Name of the service this report belongs to. | |
| ServiceName string `json:"serviceName,omitempty"` | |
| // ServerResponse contains the HTTP response code and headers from the server. | |
| googleapi.ServerResponse `json:"-"` | |
| // ForceSendFields is a list of field names (e.g. "ChangeReports") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "ChangeReports") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s GenerateConfigReportResponse) MarshalJSON() ([]byte, error) { | |
| type NoMethod GenerateConfigReportResponse | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // GetIamPolicyRequest: Request message for `GetIamPolicy` method. | |
| type GetIamPolicyRequest struct { | |
| // Options: OPTIONAL: A `GetPolicyOptions` object for specifying options to | |
| // `GetIamPolicy`. | |
| Options *GetPolicyOptions `json:"options,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Options") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Options") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s GetIamPolicyRequest) MarshalJSON() ([]byte, error) { | |
| type NoMethod GetIamPolicyRequest | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // GetPolicyOptions: Encapsulates settings provided to GetIamPolicy. | |
| type GetPolicyOptions struct { | |
| // RequestedPolicyVersion: Optional. The maximum policy version that will be | |
| // used to format the policy. Valid values are 0, 1, and 3. Requests specifying | |
| // an invalid value will be rejected. Requests for policies with any | |
| // conditional role bindings must specify version 3. Policies with no | |
| // conditional role bindings may specify any valid value or leave the field | |
| // unset. The policy in the response might use the policy version that you | |
| // specified, or it might use a lower policy version. For example, if you | |
| // specify version 3, but the policy has no conditional role bindings, the | |
| // response uses version 1. To learn which resources support conditions in | |
| // their IAM policies, see the IAM documentation | |
| // (https://cloud.google.com/iam/help/conditions/resource-policies). | |
| RequestedPolicyVersion int64 `json:"requestedPolicyVersion,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "RequestedPolicyVersion") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "RequestedPolicyVersion") to | |
| // include in API requests with the JSON null value. By default, fields with | |
| // empty values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s GetPolicyOptions) MarshalJSON() ([]byte, error) { | |
| type NoMethod GetPolicyOptions | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // GoSettings: Settings for Go client libraries. | |
| type GoSettings struct { | |
| // Common: Some settings. | |
| Common *CommonLanguageSettings `json:"common,omitempty"` | |
| // RenamedServices: Map of service names to renamed services. Keys are the | |
| // package relative service names and values are the name to be used for the | |
| // service client and call options. Example: publishing: go_settings: | |
| // renamed_services: Publisher: TopicAdmin | |
| RenamedServices map[string]string `json:"renamedServices,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Common") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Common") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s GoSettings) MarshalJSON() ([]byte, error) { | |
| type NoMethod GoSettings | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // Http: Defines the HTTP configuration for an API service. It contains a list | |
| // of HttpRule, each specifying the mapping of an RPC method to one or more | |
| // HTTP REST API methods. | |
| type Http struct { | |
| // FullyDecodeReservedExpansion: When set to true, URL path parameters will be | |
| // fully URI-decoded except in cases of single segment matches in reserved | |
| // expansion, where "%2F" will be left encoded. The default behavior is to not | |
| // decode RFC 6570 reserved characters in multi segment matches. | |
| FullyDecodeReservedExpansion bool `json:"fullyDecodeReservedExpansion,omitempty"` | |
| // Rules: A list of HTTP configuration rules that apply to individual API | |
| // methods. **NOTE:** All service configuration rules follow "last one wins" | |
| // order. | |
| Rules []*HttpRule `json:"rules,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. | |
| // "FullyDecodeReservedExpansion") to unconditionally include in API requests. | |
| // By default, fields with empty or default values are omitted from API | |
| // requests. See https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields | |
| // for more details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "FullyDecodeReservedExpansion") to | |
| // include in API requests with the JSON null value. By default, fields with | |
| // empty values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s Http) MarshalJSON() ([]byte, error) { | |
| type NoMethod Http | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // HttpRule: gRPC Transcoding gRPC Transcoding is a feature for mapping between | |
| // a gRPC method and one or more HTTP REST endpoints. It allows developers to | |
| // build a single API service that supports both gRPC APIs and REST APIs. Many | |
| // systems, including Google APIs (https://github.com/googleapis/googleapis), | |
| // Cloud Endpoints (https://cloud.google.com/endpoints), gRPC Gateway | |
| // (https://github.com/grpc-ecosystem/grpc-gateway), and Envoy | |
| // (https://github.com/envoyproxy/envoy) proxy support this feature and use it | |
| // for large scale production services. `HttpRule` defines the schema of the | |
| // gRPC/REST mapping. The mapping specifies how different portions of the gRPC | |
| // request message are mapped to the URL path, URL query parameters, and HTTP | |
| // request body. It also controls how the gRPC response message is mapped to | |
| // the HTTP response body. `HttpRule` is typically specified as an | |
| // `google.api.http` annotation on the gRPC method. Each mapping specifies a | |
| // URL path template and an HTTP method. The path template may refer to one or | |
| // more fields in the gRPC request message, as long as each field is a | |
| // non-repeated field with a primitive (non-message) type. The path template | |
| // controls how fields of the request message are mapped to the URL path. | |
| // Example: service Messaging { rpc GetMessage(GetMessageRequest) returns | |
| // (Message) { option (google.api.http) = { get: "/v1/{name=messages/*}" }; } } | |
| // message GetMessageRequest { string name = 1; // Mapped to URL path. } | |
| // message Message { string text = 1; // The resource content. } This enables | |
| // an HTTP REST to gRPC mapping as below: - HTTP: `GET /v1/messages/123456` - | |
| // gRPC: `GetMessage(name: "messages/123456")` Any fields in the request | |
| // message which are not bound by the path template automatically become HTTP | |
| // query parameters if there is no HTTP request body. For example: service | |
| // Messaging { rpc GetMessage(GetMessageRequest) returns (Message) { option | |
| // (google.api.http) = { get:"/v1/messages/{message_id}" }; } } message | |
| // GetMessageRequest { message SubMessage { string subfield = 1; } string | |
| // message_id = 1; // Mapped to URL path. int64 revision = 2; // Mapped to URL | |
| // query parameter `revision`. SubMessage sub = 3; // Mapped to URL query | |
| // parameter `sub.subfield`. } This enables a HTTP JSON to RPC mapping as | |
| // below: - HTTP: `GET /v1/messages/123456?revision=2&sub.subfield=foo` - gRPC: | |
| // `GetMessage(message_id: "123456" revision: 2 sub: SubMessage(subfield: | |
| // "foo"))` Note that fields which are mapped to URL query parameters must have | |
| // a primitive type or a repeated primitive type or a non-repeated message | |
| // type. In the case of a repeated type, the parameter can be repeated in the | |
| // URL as `...?param=A¶m=B`. In the case of a message type, each field of | |
| // the message is mapped to a separate parameter, such as | |
| // `...?foo.a=A&foo.b=B&foo.c=C`. For HTTP methods that allow a request body, | |
| // the `body` field specifies the mapping. Consider a REST update method on the | |
| // message resource collection: service Messaging { rpc | |
| // UpdateMessage(UpdateMessageRequest) returns (Message) { option | |
| // (google.api.http) = { patch: "/v1/messages/{message_id}" body: "message" }; | |
| // } } message UpdateMessageRequest { string message_id = 1; // mapped to the | |
| // URL Message message = 2; // mapped to the body } The following HTTP JSON to | |
| // RPC mapping is enabled, where the representation of the JSON in the request | |
| // body is determined by protos JSON encoding: - HTTP: `PATCH | |
| // /v1/messages/123456 { "text": "Hi!" }` - gRPC: `UpdateMessage(message_id: | |
| // "123456" message { text: "Hi!" })` The special name `*` can be used in the | |
| // body mapping to define that every field not bound by the path template | |
| // should be mapped to the request body. This enables the following alternative | |
| // definition of the update method: service Messaging { rpc | |
| // UpdateMessage(Message) returns (Message) { option (google.api.http) = { | |
| // patch: "/v1/messages/{message_id}" body: "*" }; } } message Message { string | |
| // message_id = 1; string text = 2; } The following HTTP JSON to RPC mapping is | |
| // enabled: - HTTP: `PATCH /v1/messages/123456 { "text": "Hi!" }` - gRPC: | |
| // `UpdateMessage(message_id: "123456" text: "Hi!")` Note that when using `*` | |
| // in the body mapping, it is not possible to have HTTP parameters, as all | |
| // fields not bound by the path end in the body. This makes this option more | |
| // rarely used in practice when defining REST APIs. The common usage of `*` is | |
| // in custom methods which don't use the URL at all for transferring data. It | |
| // is possible to define multiple HTTP methods for one RPC by using the | |
| // `additional_bindings` option. Example: service Messaging { rpc | |
| // GetMessage(GetMessageRequest) returns (Message) { option (google.api.http) = | |
| // { get: "/v1/messages/{message_id}" additional_bindings { get: | |
| // "/v1/users/{user_id}/messages/{message_id}" } }; } } message | |
| // GetMessageRequest { string message_id = 1; string user_id = 2; } This | |
| // enables the following two alternative HTTP JSON to RPC mappings: - HTTP: | |
| // `GET /v1/messages/123456` - gRPC: `GetMessage(message_id: "123456")` - HTTP: | |
| // `GET /v1/users/me/messages/123456` - gRPC: `GetMessage(user_id: "me" | |
| // message_id: "123456")` Rules for HTTP mapping 1. Leaf request fields | |
| // (recursive expansion nested messages in the request message) are classified | |
| // into three categories: - Fields referred by the path template. They are | |
| // passed via the URL path. - Fields referred by the HttpRule.body. They are | |
| // passed via the HTTP request body. - All other fields are passed via the URL | |
| // query parameters, and the parameter name is the field path in the request | |
| // message. A repeated field can be represented as multiple query parameters | |
| // under the same name. 2. If HttpRule.body is "*", there is no URL query | |
| // parameter, all fields are passed via URL path and HTTP request body. 3. If | |
| // HttpRule.body is omitted, there is no HTTP request body, all fields are | |
| // passed via URL path and URL query parameters. Path template syntax Template | |
| // = "/" Segments [ Verb ] ; Segments = Segment { "/" Segment } ; Segment = "*" | |
| // | "**" | LITERAL | Variable ; Variable = "{" FieldPath [ "=" Segments ] "}" | |
| // ; FieldPath = IDENT { "." IDENT } ; Verb = ":" LITERAL ; The syntax `*` | |
| // matches a single URL path segment. The syntax `**` matches zero or more URL | |
| // path segments, which must be the last part of the URL path except the | |
| // `Verb`. The syntax `Variable` matches part of the URL path as specified by | |
| // its template. A variable template must not contain other variables. If a | |
| // variable matches a single path segment, its template may be omitted, e.g. | |
| // `{var}` is equivalent to `{var=*}`. The syntax `LITERAL` matches literal | |
| // text in the URL path. If the `LITERAL` contains any reserved character, such | |
| // characters should be percent-encoded before the matching. If a variable | |
| // contains exactly one path segment, such as "{var}" or "{var=*}", when | |
| // such a variable is expanded into a URL path on the client side, all | |
| // characters except `[-_.~0-9a-zA-Z]` are percent-encoded. The server side | |
| // does the reverse decoding. Such variables show up in the Discovery Document | |
| // (https://developers.google.com/discovery/v1/reference/apis) as `{var}`. If a | |
| // variable contains multiple path segments, such as "{var=foo/*}" or | |
| // "{var=**}", when such a variable is expanded into a URL path on the client | |
| // side, all characters except `[-_.~/0-9a-zA-Z]` are percent-encoded. The | |
| // server side does the reverse decoding, except "%2F" and "%2f" are left | |
| // unchanged. Such variables show up in the Discovery Document | |
| // (https://developers.google.com/discovery/v1/reference/apis) as `{+var}`. | |
| // Using gRPC API Service Configuration gRPC API Service Configuration (service | |
| // config) is a configuration language for configuring a gRPC service to become | |
| // a user-facing product. The service config is simply the YAML representation | |
| // of the `google.api.Service` proto message. As an alternative to annotating | |
| // your proto file, you can configure gRPC transcoding in your service config | |
| // YAML files. You do this by specifying a `HttpRule` that maps the gRPC method | |
| // to a REST endpoint, achieving the same effect as the proto annotation. This | |
| // can be particularly useful if you have a proto that is reused in multiple | |
| // services. Note that any transcoding specified in the service config will | |
| // override any matching transcoding configuration in the proto. The following | |
| // example selects a gRPC method and applies an `HttpRule` to it: http: rules: | |
| // - selector: example.v1.Messaging.GetMessage get: | |
| // /v1/messages/{message_id}/{sub.subfield} Special notes When gRPC Transcoding | |
| // is used to map a gRPC to JSON REST endpoints, the proto to JSON conversion | |
| // must follow the proto3 specification | |
| // (https://developers.google.com/protocol-buffers/docs/proto3#json). While the | |
| // single segment variable follows the semantics of RFC 6570 | |
| // (https://tools.ietf.org/html/rfc6570) Section 3.2.2 Simple String Expansion, | |
| // the multi segment variable **does not** follow RFC 6570 Section 3.2.3 | |
| // Reserved Expansion. The reason is that the Reserved Expansion does not | |
| // expand special characters like `?` and `#`, which would lead to invalid | |
| // URLs. As the result, gRPC Transcoding uses a custom encoding for multi | |
| // segment variables. The path variables **must not** refer to any repeated or | |
| // mapped field, because client libraries are not capable of handling such | |
| // variable expansion. The path variables **must not** capture the leading "/" | |
| // character. The reason is that the most common use case "{var}" does not | |
| // capture the leading "/" character. For consistency, all path variables must | |
| // share the same behavior. Repeated message fields must not be mapped to URL | |
| // query parameters, because no client library can support such complicated | |
| // mapping. If an API needs to use a JSON array for request or response body, | |
| // it can map the request or response body to a repeated field. However, some | |
| // gRPC Transcoding implementations may not support this feature. | |
| type HttpRule struct { | |
| // AdditionalBindings: Additional HTTP bindings for the selector. Nested | |
| // bindings must not contain an `additional_bindings` field themselves (that | |
| // is, the nesting may only be one level deep). | |
| AdditionalBindings []*HttpRule `json:"additionalBindings,omitempty"` | |
| // Body: The name of the request field whose value is mapped to the HTTP | |
| // request body, or `*` for mapping all request fields not captured by the path | |
| // pattern to the HTTP body, or omitted for not having any HTTP request body. | |
| // NOTE: the referred field must be present at the top-level of the request | |
| // message type. | |
| Body string `json:"body,omitempty"` | |
| // Custom: The custom pattern is used for specifying an HTTP method that is not | |
| // included in the `pattern` field, such as HEAD, or "*" to leave the HTTP | |
| // method unspecified for this rule. The wild-card rule is useful for services | |
| // that provide content to Web (HTML) clients. | |
| Custom *CustomHttpPattern `json:"custom,omitempty"` | |
| // Delete: Maps to HTTP DELETE. Used for deleting a resource. | |
| Delete string `json:"delete,omitempty"` | |
| // Get: Maps to HTTP GET. Used for listing and getting information about | |
| // resources. | |
| Get string `json:"get,omitempty"` | |
| // Patch: Maps to HTTP PATCH. Used for updating a resource. | |
| Patch string `json:"patch,omitempty"` | |
| // Post: Maps to HTTP POST. Used for creating a resource or performing an | |
| // action. | |
| Post string `json:"post,omitempty"` | |
| // Put: Maps to HTTP PUT. Used for replacing a resource. | |
| Put string `json:"put,omitempty"` | |
| // ResponseBody: Optional. The name of the response field whose value is mapped | |
| // to the HTTP response body. When omitted, the entire response message will be | |
| // used as the HTTP response body. NOTE: The referred field must be present at | |
| // the top-level of the response message type. | |
| ResponseBody string `json:"responseBody,omitempty"` | |
| // Selector: Selects a method to which this rule applies. Refer to selector for | |
| // syntax details. | |
| Selector string `json:"selector,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "AdditionalBindings") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "AdditionalBindings") to include | |
| // in API requests with the JSON null value. By default, fields with empty | |
| // values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s HttpRule) MarshalJSON() ([]byte, error) { | |
| type NoMethod HttpRule | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // JavaSettings: Settings for Java client libraries. | |
| type JavaSettings struct { | |
| // Common: Some settings. | |
| Common *CommonLanguageSettings `json:"common,omitempty"` | |
| // LibraryPackage: The package name to use in Java. Clobbers the java_package | |
| // option set in the protobuf. This should be used **only** by APIs who have | |
| // already set the language_settings.java.package_name" field in gapic.yaml. | |
| // API teams should use the protobuf java_package option where possible. | |
| // Example of a YAML configuration:: publishing: library_settings: | |
| // java_settings: library_package: com.google.cloud.pubsub.v1 | |
| LibraryPackage string `json:"libraryPackage,omitempty"` | |
| // ServiceClassNames: Configure the Java class name to use instead of the | |
| // service's for its corresponding generated GAPIC client. Keys are | |
| // fully-qualified service names as they appear in the protobuf (including the | |
| // full the language_settings.java.interface_names" field in gapic.yaml. API | |
| // teams should otherwise use the service name as it appears in the protobuf. | |
| // Example of a YAML configuration:: publishing: java_settings: | |
| // service_class_names: - google.pubsub.v1.Publisher: TopicAdmin - | |
| // google.pubsub.v1.Subscriber: SubscriptionAdmin | |
| ServiceClassNames map[string]string `json:"serviceClassNames,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Common") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Common") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s JavaSettings) MarshalJSON() ([]byte, error) { | |
| type NoMethod JavaSettings | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // JwtLocation: Specifies a location to extract JWT from an API request. | |
| type JwtLocation struct { | |
| // Cookie: Specifies cookie name to extract JWT token. | |
| Cookie string `json:"cookie,omitempty"` | |
| // Header: Specifies HTTP header name to extract JWT token. | |
| Header string `json:"header,omitempty"` | |
| // Query: Specifies URL query parameter name to extract JWT token. | |
| Query string `json:"query,omitempty"` | |
| // ValuePrefix: The value prefix. The value format is "value_prefix{token}" | |
| // Only applies to "in" header type. Must be empty for "in" query type. If not | |
| // empty, the header value has to match (case sensitive) this prefix. If not | |
| // matched, JWT will not be extracted. If matched, JWT will be extracted after | |
| // the prefix is removed. For example, for "Authorization: Bearer {JWT}", | |
| // value_prefix="Bearer " with a space at the end. | |
| ValuePrefix string `json:"valuePrefix,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Cookie") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Cookie") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s JwtLocation) MarshalJSON() ([]byte, error) { | |
| type NoMethod JwtLocation | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // LabelDescriptor: A description of a label. | |
| type LabelDescriptor struct { | |
| // Description: A human-readable description for the label. | |
| Description string `json:"description,omitempty"` | |
| // Key: The label key. | |
| Key string `json:"key,omitempty"` | |
| // ValueType: The type of data that can be assigned to the label. | |
| // | |
| // Possible values: | |
| // "STRING" - A variable-length string. This is the default. | |
| // "BOOL" - Boolean; true or false. | |
| // "INT64" - A 64-bit signed integer. | |
| ValueType string `json:"valueType,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Description") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Description") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s LabelDescriptor) MarshalJSON() ([]byte, error) { | |
| type NoMethod LabelDescriptor | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // ListOperationsResponse: The response message for Operations.ListOperations. | |
| type ListOperationsResponse struct { | |
| // NextPageToken: The standard List next-page token. | |
| NextPageToken string `json:"nextPageToken,omitempty"` | |
| // Operations: A list of operations that matches the specified filter in the | |
| // request. | |
| Operations []*Operation `json:"operations,omitempty"` | |
| // Unreachable: Unordered list. Unreachable resources. Populated when the | |
| // request sets `ListOperationsRequest.return_partial_success` and reads across | |
| // collections. For example, when attempting to list all resources across all | |
| // supported locations. | |
| Unreachable []string `json:"unreachable,omitempty"` | |
| // ServerResponse contains the HTTP response code and headers from the server. | |
| googleapi.ServerResponse `json:"-"` | |
| // ForceSendFields is a list of field names (e.g. "NextPageToken") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "NextPageToken") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s ListOperationsResponse) MarshalJSON() ([]byte, error) { | |
| type NoMethod ListOperationsResponse | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // ListServiceConfigsResponse: Response message for ListServiceConfigs method. | |
| type ListServiceConfigsResponse struct { | |
| // NextPageToken: The token of the next page of results. | |
| NextPageToken string `json:"nextPageToken,omitempty"` | |
| // ServiceConfigs: The list of service configuration resources. | |
| ServiceConfigs []*Service `json:"serviceConfigs,omitempty"` | |
| // ServerResponse contains the HTTP response code and headers from the server. | |
| googleapi.ServerResponse `json:"-"` | |
| // ForceSendFields is a list of field names (e.g. "NextPageToken") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "NextPageToken") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s ListServiceConfigsResponse) MarshalJSON() ([]byte, error) { | |
| type NoMethod ListServiceConfigsResponse | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // ListServiceRolloutsResponse: Response message for ListServiceRollouts | |
| // method. | |
| type ListServiceRolloutsResponse struct { | |
| // NextPageToken: The token of the next page of results. | |
| NextPageToken string `json:"nextPageToken,omitempty"` | |
| // Rollouts: The list of rollout resources. | |
| Rollouts []*Rollout `json:"rollouts,omitempty"` | |
| // ServerResponse contains the HTTP response code and headers from the server. | |
| googleapi.ServerResponse `json:"-"` | |
| // ForceSendFields is a list of field names (e.g. "NextPageToken") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "NextPageToken") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s ListServiceRolloutsResponse) MarshalJSON() ([]byte, error) { | |
| type NoMethod ListServiceRolloutsResponse | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // ListServicesResponse: Response message for `ListServices` method. | |
| type ListServicesResponse struct { | |
| // NextPageToken: Token that can be passed to `ListServices` to resume a | |
| // paginated query. | |
| NextPageToken string `json:"nextPageToken,omitempty"` | |
| // Services: The returned services will only have the name field set. | |
| Services []*ManagedService `json:"services,omitempty"` | |
| // ServerResponse contains the HTTP response code and headers from the server. | |
| googleapi.ServerResponse `json:"-"` | |
| // ForceSendFields is a list of field names (e.g. "NextPageToken") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "NextPageToken") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s ListServicesResponse) MarshalJSON() ([]byte, error) { | |
| type NoMethod ListServicesResponse | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // LogDescriptor: A description of a log type. Example in YAML format: - name: | |
| // library.googleapis.com/activity_history description: The history of | |
| // borrowing and returning library items. display_name: Activity labels: - key: | |
| // /customer_id description: Identifier of a library customer | |
| type LogDescriptor struct { | |
| // Description: A human-readable description of this log. This information | |
| // appears in the documentation and can contain details. | |
| Description string `json:"description,omitempty"` | |
| // DisplayName: The human-readable name for this log. This information appears | |
| // on the user interface and should be concise. | |
| DisplayName string `json:"displayName,omitempty"` | |
| // Labels: The set of labels that are available to describe a specific log | |
| // entry. Runtime requests that contain labels not specified here are | |
| // considered invalid. | |
| Labels []*LabelDescriptor `json:"labels,omitempty"` | |
| // Name: The name of the log. It must be less than 512 characters long and can | |
| // include the following characters: upper- and lower-case alphanumeric | |
| // characters [A-Za-z0-9], and punctuation characters including slash, | |
| // underscore, hyphen, period [/_-.]. | |
| Name string `json:"name,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Description") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Description") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s LogDescriptor) MarshalJSON() ([]byte, error) { | |
| type NoMethod LogDescriptor | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // Logging: Logging configuration of the service. The following example shows | |
| // how to configure logs to be sent to the producer and consumer projects. In | |
| // the example, the `activity_history` log is sent to both the producer and | |
| // consumer projects, whereas the `purchase_history` log is only sent to the | |
| // producer project. monitored_resources: - type: library.googleapis.com/branch | |
| // labels: - key: /city description: The city where the library branch is | |
| // located in. - key: /name description: The name of the branch. logs: - name: | |
| // activity_history labels: - key: /customer_id - name: purchase_history | |
| // logging: producer_destinations: - monitored_resource: | |
| // library.googleapis.com/branch logs: - activity_history - purchase_history | |
| // consumer_destinations: - monitored_resource: library.googleapis.com/branch | |
| // logs: - activity_history | |
| type Logging struct { | |
| // ConsumerDestinations: Logging configurations for sending logs to the | |
| // consumer project. There can be multiple consumer destinations, each one must | |
| // have a different monitored resource type. A log can be used in at most one | |
| // consumer destination. | |
| ConsumerDestinations []*LoggingDestination `json:"consumerDestinations,omitempty"` | |
| // ProducerDestinations: Logging configurations for sending logs to the | |
| // producer project. There can be multiple producer destinations, each one must | |
| // have a different monitored resource type. A log can be used in at most one | |
| // producer destination. | |
| ProducerDestinations []*LoggingDestination `json:"producerDestinations,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "ConsumerDestinations") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "ConsumerDestinations") to include | |
| // in API requests with the JSON null value. By default, fields with empty | |
| // values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s Logging) MarshalJSON() ([]byte, error) { | |
| type NoMethod Logging | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // LoggingDestination: Configuration of a specific logging destination (the | |
| // producer project or the consumer project). | |
| type LoggingDestination struct { | |
| // Logs: Names of the logs to be sent to this destination. Each name must be | |
| // defined in the Service.logs section. If the log name is not a domain scoped | |
| // name, it will be automatically prefixed with the service name followed by | |
| // "/". | |
| Logs []string `json:"logs,omitempty"` | |
| // MonitoredResource: The monitored resource type. The type must be defined in | |
| // the Service.monitored_resources section. | |
| MonitoredResource string `json:"monitoredResource,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Logs") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Logs") to include in API requests | |
| // with the JSON null value. By default, fields with empty values are omitted | |
| // from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s LoggingDestination) MarshalJSON() ([]byte, error) { | |
| type NoMethod LoggingDestination | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // LongRunning: Describes settings to use when generating API methods that use | |
| // the long-running operation pattern. All default values below are from those | |
| // used in the client library generators (e.g. Java | |
| // (https://github.com/googleapis/gapic-generator-java/blob/04c2faa191a9b5a10b92392fe8482279c4404803/src/main/java/com/google/api/generator/gapic/composer/common/RetrySettingsComposer.java)). | |
| type LongRunning struct { | |
| // InitialPollDelay: Initial delay after which the first poll request will be | |
| // made. Default value: 5 seconds. | |
| InitialPollDelay string `json:"initialPollDelay,omitempty"` | |
| // MaxPollDelay: Maximum time between two subsequent poll requests. Default | |
| // value: 45 seconds. | |
| MaxPollDelay string `json:"maxPollDelay,omitempty"` | |
| // PollDelayMultiplier: Multiplier to gradually increase delay between | |
| // subsequent polls until it reaches max_poll_delay. Default value: 1.5. | |
| PollDelayMultiplier float64 `json:"pollDelayMultiplier,omitempty"` | |
| // TotalPollTimeout: Total polling timeout. Default value: 5 minutes. | |
| TotalPollTimeout string `json:"totalPollTimeout,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "InitialPollDelay") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "InitialPollDelay") to include in | |
| // API requests with the JSON null value. By default, fields with empty values | |
| // are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s LongRunning) MarshalJSON() ([]byte, error) { | |
| type NoMethod LongRunning | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| func (s *LongRunning) UnmarshalJSON(data []byte) error { | |
| type NoMethod LongRunning | |
| var s1 struct { | |
| PollDelayMultiplier gensupport.JSONFloat64 `json:"pollDelayMultiplier"` | |
| *NoMethod | |
| } | |
| s1.NoMethod = (*NoMethod)(s) | |
| if err := json.Unmarshal(data, &s1); err != nil { | |
| return err | |
| } | |
| s.PollDelayMultiplier = float64(s1.PollDelayMultiplier) | |
| return nil | |
| } | |
| // ManagedService: The full representation of a Service that is managed by | |
| // Google Service Management. | |
| type ManagedService struct { | |
| // ProducerProjectId: ID of the project that produces and owns this service. | |
| ProducerProjectId string `json:"producerProjectId,omitempty"` | |
| // ServiceName: The name of the service. See the overview | |
| // (https://cloud.google.com/service-infrastructure/docs/overview) for naming | |
| // requirements. | |
| ServiceName string `json:"serviceName,omitempty"` | |
| // ServerResponse contains the HTTP response code and headers from the server. | |
| googleapi.ServerResponse `json:"-"` | |
| // ForceSendFields is a list of field names (e.g. "ProducerProjectId") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "ProducerProjectId") to include in | |
| // API requests with the JSON null value. By default, fields with empty values | |
| // are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s ManagedService) MarshalJSON() ([]byte, error) { | |
| type NoMethod ManagedService | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // Method: Method represents a method of an API interface. New usages of this | |
| // message as an alternative to MethodDescriptorProto are strongly discouraged. | |
| // This message does not reliability preserve all information necessary to | |
| // model the schema and preserve semantics. Instead make use of | |
| // FileDescriptorSet which preserves the necessary information. | |
| type Method struct { | |
| // Edition: The source edition string, only valid when syntax is | |
| // SYNTAX_EDITIONS. This field should be ignored, instead the edition should be | |
| // inherited from Api. This is similar to Field and EnumValue. | |
| Edition string `json:"edition,omitempty"` | |
| // Name: The simple name of this method. | |
| Name string `json:"name,omitempty"` | |
| // Options: Any metadata attached to the method. | |
| Options []*Option `json:"options,omitempty"` | |
| // RequestStreaming: If true, the request is streamed. | |
| RequestStreaming bool `json:"requestStreaming,omitempty"` | |
| // RequestTypeUrl: A URL of the input message type. | |
| RequestTypeUrl string `json:"requestTypeUrl,omitempty"` | |
| // ResponseStreaming: If true, the response is streamed. | |
| ResponseStreaming bool `json:"responseStreaming,omitempty"` | |
| // ResponseTypeUrl: The URL of the output message type. | |
| ResponseTypeUrl string `json:"responseTypeUrl,omitempty"` | |
| // Syntax: The source syntax of this method. This field should be ignored, | |
| // instead the syntax should be inherited from Api. This is similar to Field | |
| // and EnumValue. | |
| // | |
| // Possible values: | |
| // "SYNTAX_PROTO2" - Syntax `proto2`. | |
| // "SYNTAX_PROTO3" - Syntax `proto3`. | |
| // "SYNTAX_EDITIONS" - Syntax `editions`. | |
| Syntax string `json:"syntax,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Edition") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Edition") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s Method) MarshalJSON() ([]byte, error) { | |
| type NoMethod Method | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // MethodPolicy: Defines policies applying to an RPC method. | |
| type MethodPolicy struct { | |
| // RequestPolicies: Policies that are applicable to the request message. | |
| RequestPolicies []*FieldPolicy `json:"requestPolicies,omitempty"` | |
| // Selector: Selects a method to which these policies should be enforced, for | |
| // example, "google.pubsub.v1.Subscriber.CreateSubscription". Refer to selector | |
| // for syntax details. NOTE: This field must not be set in the proto | |
| // annotation. It will be automatically filled by the service config compiler . | |
| Selector string `json:"selector,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "RequestPolicies") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "RequestPolicies") to include in | |
| // API requests with the JSON null value. By default, fields with empty values | |
| // are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s MethodPolicy) MarshalJSON() ([]byte, error) { | |
| type NoMethod MethodPolicy | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // MethodSettings: Describes the generator configuration for a method. | |
| type MethodSettings struct { | |
| // AutoPopulatedFields: List of top-level fields of the request message, that | |
| // should be automatically populated by the client libraries based on their | |
| // (google.api.field_info).format. Currently supported format: UUID4. Example | |
| // of a YAML configuration: publishing: method_settings: - selector: | |
| // google.example.v1.ExampleService.CreateExample auto_populated_fields: - | |
| // request_id | |
| AutoPopulatedFields []string `json:"autoPopulatedFields,omitempty"` | |
| // Batching: Batching configuration for an API method in client libraries. | |
| // Example of a YAML configuration: publishing: method_settings: - selector: | |
| // google.example.v1.ExampleService.BatchCreateExample batching: | |
| // element_count_threshold: 1000 request_byte_threshold: 100000000 | |
| // delay_threshold_millis: 10 | |
| Batching *BatchingConfigProto `json:"batching,omitempty"` | |
| // LongRunning: Describes settings to use for long-running operations when | |
| // generating API methods for RPCs. Complements RPCs that use the annotations | |
| // in google/longrunning/operations.proto. Example of a YAML configuration:: | |
| // publishing: method_settings: - selector: | |
| // google.cloud.speech.v2.Speech.BatchRecognize long_running: | |
| // initial_poll_delay: 60s # 1 minute poll_delay_multiplier: 1.5 | |
| // max_poll_delay: 360s # 6 minutes total_poll_timeout: 54000s # 90 minutes | |
| LongRunning *LongRunning `json:"longRunning,omitempty"` | |
| // Selector: The fully qualified name of the method, for which the options | |
| // below apply. This is used to find the method to apply the options. Example: | |
| // publishing: method_settings: - selector: | |
| // google.storage.control.v2.StorageControl.CreateFolder # method settings for | |
| // CreateFolder... | |
| Selector string `json:"selector,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "AutoPopulatedFields") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "AutoPopulatedFields") to include | |
| // in API requests with the JSON null value. By default, fields with empty | |
| // values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s MethodSettings) MarshalJSON() ([]byte, error) { | |
| type NoMethod MethodSettings | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // MetricDescriptor: Defines a metric type and its schema. Once a metric | |
| // descriptor is created, deleting or altering it stops data collection and | |
| // makes the metric type's existing data unusable. | |
| type MetricDescriptor struct { | |
| // Description: A detailed description of the metric, which can be used in | |
| // documentation. | |
| Description string `json:"description,omitempty"` | |
| // DisplayName: A concise name for the metric, which can be displayed in user | |
| // interfaces. Use sentence case without an ending period, for example "Request | |
| // count". This field is optional but it is recommended to be set for any | |
| // metrics associated with user-visible concepts, such as Quota. | |
| DisplayName string `json:"displayName,omitempty"` | |
| // Labels: The set of labels that can be used to describe a specific instance | |
| // of this metric type. For example, the | |
| // `appengine.googleapis.com/http/server/response_latencies` metric type has a | |
| // label for the HTTP response code, `response_code`, so you can look at | |
| // latencies for successful responses or just for responses that failed. | |
| Labels []*LabelDescriptor `json:"labels,omitempty"` | |
| // LaunchStage: Optional. The launch stage of the metric definition. | |
| // | |
| // Possible values: | |
| // "LAUNCH_STAGE_UNSPECIFIED" - Do not use this default value. | |
| // "UNIMPLEMENTED" - The feature is not yet implemented. Users can not use | |
| // it. | |
| // "PRELAUNCH" - Prelaunch features are hidden from users and are only | |
| // visible internally. | |
| // "EARLY_ACCESS" - Early Access features are limited to a closed group of | |
| // testers. To use these features, you must sign up in advance and sign a | |
| // Trusted Tester agreement (which includes confidentiality provisions). These | |
| // features may be unstable, changed in backward-incompatible ways, and are not | |
| // guaranteed to be released. | |
| // "ALPHA" - Alpha is a limited availability test for releases before they | |
| // are cleared for widespread use. By Alpha, all significant design issues are | |
| // resolved and we are in the process of verifying functionality. Alpha | |
| // customers need to apply for access, agree to applicable terms, and have | |
| // their projects allowlisted. Alpha releases don't have to be feature | |
| // complete, no SLAs are provided, and there are no technical support | |
| // obligations, but they will be far enough along that customers can actually | |
| // use them in test environments or for limited-use tests -- just like they | |
| // would in normal production cases. | |
| // "BETA" - Beta is the point at which we are ready to open a release for any | |
| // customer to use. There are no SLA or technical support obligations in a Beta | |
| // release. Products will be complete from a feature perspective, but may have | |
| // some open outstanding issues. Beta releases are suitable for limited | |
| // production use cases. | |
| // "GA" - GA features are open to all developers and are considered stable | |
| // and fully qualified for production use. | |
| // "DEPRECATED" - Deprecated features are scheduled to be shut down and | |
| // removed. For more information, see the "Deprecation Policy" section of our | |
| // [Terms of Service](https://cloud.google.com/terms/) and the [Google Cloud | |
| // Platform Subject to the Deprecation | |
| // Policy](https://cloud.google.com/terms/deprecation) documentation. | |
| LaunchStage string `json:"launchStage,omitempty"` | |
| // Metadata: Optional. Metadata which can be used to guide usage of the metric. | |
| Metadata *MetricDescriptorMetadata `json:"metadata,omitempty"` | |
| // MetricKind: Whether the metric records instantaneous values, changes to a | |
| // value, etc. Some combinations of `metric_kind` and `value_type` might not be | |
| // supported. | |
| // | |
| // Possible values: | |
| // "METRIC_KIND_UNSPECIFIED" - Do not use this default value. | |
| // "GAUGE" - An instantaneous measurement of a value. | |
| // "DELTA" - The change in a value during a time interval. | |
| // "CUMULATIVE" - A value accumulated over a time interval. Cumulative | |
| // measurements in a time series should have the same start time and increasing | |
| // end times, until an event resets the cumulative value to zero and sets a new | |
| // start time for the following points. | |
| MetricKind string `json:"metricKind,omitempty"` | |
| // MonitoredResourceTypes: Read-only. If present, then a time series, which is | |
| // identified partially by a metric type and a MonitoredResourceDescriptor, | |
| // that is associated with this metric type can only be associated with one of | |
| // the monitored resource types listed here. | |
| MonitoredResourceTypes []string `json:"monitoredResourceTypes,omitempty"` | |
| // Name: The resource name of the metric descriptor. | |
| Name string `json:"name,omitempty"` | |
| // Type: The metric type, including its DNS name prefix. The type is not | |
| // URL-encoded. All user-defined metric types have the DNS name | |
| // `custom.googleapis.com` or `external.googleapis.com`. Metric types should | |
| // use a natural hierarchical grouping. For example: | |
| // "custom.googleapis.com/invoice/paid/amount" | |
| // "external.googleapis.com/prometheus/up" | |
| // "appengine.googleapis.com/http/server/response_latencies" | |
| Type string `json:"type,omitempty"` | |
| // Unit: The units in which the metric value is reported. It is only applicable | |
| // if the `value_type` is `INT64`, `DOUBLE`, or `DISTRIBUTION`. The `unit` | |
| // defines the representation of the stored metric values. Different systems | |
| // might scale the values to be more easily displayed (so a value of `0.02kBy` | |
| // _might_ be displayed as `20By`, and a value of `3523kBy` _might_ be | |
| // displayed as `3.5MBy`). However, if the `unit` is `kBy`, then the value of | |
| // the metric is always in thousands of bytes, no matter how it might be | |
| // displayed. If you want a custom metric to record the exact number of | |
| // CPU-seconds used by a job, you can create an `INT64 CUMULATIVE` metric whose | |
| // `unit` is `s{CPU}` (or equivalently `1s{CPU}` or just `s`). If the job uses | |
| // 12,005 CPU-seconds, then the value is written as `12005`. Alternatively, if | |
| // you want a custom metric to record data in a more granular way, you can | |
| // create a `DOUBLE CUMULATIVE` metric whose `unit` is `ks{CPU}`, and then | |
| // write the value `12.005` (which is `12005/1000`), or use `Kis{CPU}` and | |
| // write `11.723` (which is `12005/1024`). The supported units are a subset of | |
| // The Unified Code for Units of Measure (https://unitsofmeasure.org/ucum.html) | |
| // standard: **Basic units (UNIT)** * `bit` bit * `By` byte * `s` second * | |
| // `min` minute * `h` hour * `d` day * `1` dimensionless **Prefixes (PREFIX)** | |
| // * `k` kilo (10^3) * `M` mega (10^6) * `G` giga (10^9) * `T` tera (10^12) * | |
| // `P` peta (10^15) * `E` exa (10^18) * `Z` zetta (10^21) * `Y` yotta (10^24) * | |
| // `m` milli (10^-3) * `u` micro (10^-6) * `n` nano (10^-9) * `p` pico (10^-12) | |
| // * `f` femto (10^-15) * `a` atto (10^-18) * `z` zepto (10^-21) * `y` yocto | |
| // (10^-24) * `Ki` kibi (2^10) * `Mi` mebi (2^20) * `Gi` gibi (2^30) * `Ti` | |
| // tebi (2^40) * `Pi` pebi (2^50) **Grammar** The grammar also includes these | |
| // connectors: * `/` division or ratio (as an infix operator). For examples, | |
| // `kBy/{email}` or `MiBy/10ms` (although you should almost never have `/s` in | |
| // a metric `unit`; rates should always be computed at query time from the | |
| // underlying cumulative or delta value). * `.` multiplication or composition | |
| // (as an infix operator). For examples, `GBy.d` or `k{watt}.h`. The grammar | |
| // for a unit is as follows: Expression = Component { "." Component } { "/" | |
| // Component } ; Component = ( [ PREFIX ] UNIT | "%" ) [ Annotation ] | | |
| // Annotation | "1" ; Annotation = "{" NAME "}" ; Notes: * `Annotation` is just | |
| // a comment if it follows a `UNIT`. If the annotation is used alone, then the | |
| // unit is equivalent to `1`. For examples, `{request}/s == 1/s`, | |
| // `By{transmitted}/s == By/s`. * `NAME` is a sequence of non-blank printable | |
| // ASCII characters not containing `{` or `}`. * `1` represents a unitary | |
| // dimensionless unit (https://en.wikipedia.org/wiki/Dimensionless_quantity) of | |
| // 1, such as in `1/s`. It is typically used when none of the basic units are | |
| // appropriate. For example, "new users per day" can be represented as `1/d` or | |
| // `{new-users}/d` (and a metric value `5` would mean "5 new users). | |
| // Alternatively, "thousands of page views per day" would be represented as | |
| // `1000/d` or `k1/d` or `k{page_views}/d` (and a metric value of `5.3` would | |
| // mean "5300 page views per day"). * `%` represents dimensionless value of | |
| // 1/100, and annotates values giving a percentage (so the metric values are | |
| // typically in the range of 0..100, and a metric value `3` means "3 percent"). | |
| // * `10^2.%` indicates a metric contains a ratio, typically in the range 0..1, | |
| // that will be multiplied by 100 and displayed as a percentage (so a metric | |
| // value `0.03` means "3 percent"). | |
| Unit string `json:"unit,omitempty"` | |
| // ValueType: Whether the measurement is an integer, a floating-point number, | |
| // etc. Some combinations of `metric_kind` and `value_type` might not be | |
| // supported. | |
| // | |
| // Possible values: | |
| // "VALUE_TYPE_UNSPECIFIED" - Do not use this default value. | |
| // "BOOL" - The value is a boolean. This value type can be used only if the | |
| // metric kind is `GAUGE`. | |
| // "INT64" - The value is a signed 64-bit integer. | |
| // "DOUBLE" - The value is a double precision floating point number. | |
| // "STRING" - The value is a text string. This value type can be used only if | |
| // the metric kind is `GAUGE`. | |
| // "DISTRIBUTION" - The value is a `Distribution`. | |
| // "MONEY" - The value is money. | |
| ValueType string `json:"valueType,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Description") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Description") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s MetricDescriptor) MarshalJSON() ([]byte, error) { | |
| type NoMethod MetricDescriptor | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // MetricDescriptorMetadata: Additional annotations that can be used to guide | |
| // the usage of a metric. | |
| type MetricDescriptorMetadata struct { | |
| // IngestDelay: The delay of data points caused by ingestion. Data points older | |
| // than this age are guaranteed to be ingested and available to be read, | |
| // excluding data loss due to errors. | |
| IngestDelay string `json:"ingestDelay,omitempty"` | |
| // LaunchStage: Deprecated. Must use the MetricDescriptor.launch_stage instead. | |
| // | |
| // Possible values: | |
| // "LAUNCH_STAGE_UNSPECIFIED" - Do not use this default value. | |
| // "UNIMPLEMENTED" - The feature is not yet implemented. Users can not use | |
| // it. | |
| // "PRELAUNCH" - Prelaunch features are hidden from users and are only | |
| // visible internally. | |
| // "EARLY_ACCESS" - Early Access features are limited to a closed group of | |
| // testers. To use these features, you must sign up in advance and sign a | |
| // Trusted Tester agreement (which includes confidentiality provisions). These | |
| // features may be unstable, changed in backward-incompatible ways, and are not | |
| // guaranteed to be released. | |
| // "ALPHA" - Alpha is a limited availability test for releases before they | |
| // are cleared for widespread use. By Alpha, all significant design issues are | |
| // resolved and we are in the process of verifying functionality. Alpha | |
| // customers need to apply for access, agree to applicable terms, and have | |
| // their projects allowlisted. Alpha releases don't have to be feature | |
| // complete, no SLAs are provided, and there are no technical support | |
| // obligations, but they will be far enough along that customers can actually | |
| // use them in test environments or for limited-use tests -- just like they | |
| // would in normal production cases. | |
| // "BETA" - Beta is the point at which we are ready to open a release for any | |
| // customer to use. There are no SLA or technical support obligations in a Beta | |
| // release. Products will be complete from a feature perspective, but may have | |
| // some open outstanding issues. Beta releases are suitable for limited | |
| // production use cases. | |
| // "GA" - GA features are open to all developers and are considered stable | |
| // and fully qualified for production use. | |
| // "DEPRECATED" - Deprecated features are scheduled to be shut down and | |
| // removed. For more information, see the "Deprecation Policy" section of our | |
| // [Terms of Service](https://cloud.google.com/terms/) and the [Google Cloud | |
| // Platform Subject to the Deprecation | |
| // Policy](https://cloud.google.com/terms/deprecation) documentation. | |
| LaunchStage string `json:"launchStage,omitempty"` | |
| // SamplePeriod: The sampling period of metric data points. For metrics which | |
| // are written periodically, consecutive data points are stored at this time | |
| // interval, excluding data loss due to errors. Metrics with a higher | |
| // granularity have a smaller sampling period. | |
| SamplePeriod string `json:"samplePeriod,omitempty"` | |
| // TimeSeriesResourceHierarchyLevel: The scope of the timeseries data of the | |
| // metric. | |
| // | |
| // Possible values: | |
| // "TIME_SERIES_RESOURCE_HIERARCHY_LEVEL_UNSPECIFIED" - Do not use this | |
| // default value. | |
| // "PROJECT" - Scopes a metric to a project. | |
| // "ORGANIZATION" - Scopes a metric to an organization. | |
| // "FOLDER" - Scopes a metric to a folder. | |
| TimeSeriesResourceHierarchyLevel []string `json:"timeSeriesResourceHierarchyLevel,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "IngestDelay") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "IngestDelay") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s MetricDescriptorMetadata) MarshalJSON() ([]byte, error) { | |
| type NoMethod MetricDescriptorMetadata | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // MetricRule: Bind API methods to metrics. Binding a method to a metric causes | |
| // that metric's configured quota behaviors to apply to the method call. | |
| type MetricRule struct { | |
| // AgenticMetricCosts: Optional. Metrics to update when the selected methods | |
| // are called, and the associated cost applied to each metric, iff the source | |
| // of the call is an agent. The key of the map is the metric name, and the | |
| // values are the amount increased for the metric against which the quota | |
| // limits are defined. The value must not be negative. | |
| AgenticMetricCosts map[string]string `json:"agenticMetricCosts,omitempty"` | |
| // MetricCosts: Metrics to update when the selected methods are called, and the | |
| // associated cost applied to each metric. The key of the map is the metric | |
| // name, and the values are the amount increased for the metric against which | |
| // the quota limits are defined. The value must not be negative. | |
| MetricCosts map[string]string `json:"metricCosts,omitempty"` | |
| // NonagenticMetricCosts: Optional. Metrics to update when the selected methods | |
| // are called, and the associated cost applied to each metric, iff the source | |
| // of the call is not an agent. The key of the map is the metric name, and the | |
| // values are the amount increased for the metric against which the quota | |
| // limits are defined. The value must not be negative. | |
| NonagenticMetricCosts map[string]string `json:"nonagenticMetricCosts,omitempty"` | |
| // Selector: Selects the methods to which this rule applies. Refer to selector | |
| // for syntax details. | |
| Selector string `json:"selector,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "AgenticMetricCosts") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "AgenticMetricCosts") to include | |
| // in API requests with the JSON null value. By default, fields with empty | |
| // values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s MetricRule) MarshalJSON() ([]byte, error) { | |
| type NoMethod MetricRule | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // Mixin: Declares an API Interface to be included in this interface. The | |
| // including interface must redeclare all the methods from the included | |
| // interface, but documentation and options are inherited as follows: - If | |
| // after comment and whitespace stripping, the documentation string of the | |
| // redeclared method is empty, it will be inherited from the original method. - | |
| // Each annotation belonging to the service config (http, visibility) which is | |
| // not set in the redeclared method will be inherited. - If an http annotation | |
| // is inherited, the path pattern will be modified as follows. Any version | |
| // prefix will be replaced by the version of the including interface plus the | |
| // root path if specified. Example of a simple mixin: package google.acl.v1; | |
| // service AccessControl { // Get the underlying ACL object. rpc | |
| // GetAcl(GetAclRequest) returns (Acl) { option (google.api.http).get = | |
| // "/v1/{resource=**}:getAcl"; } } package google.storage.v2; service Storage { | |
| // // rpc GetAcl(GetAclRequest) returns (Acl); // Get a data record. rpc | |
| // GetData(GetDataRequest) returns (Data) { option (google.api.http).get = | |
| // "/v2/{resource=**}"; } } Example of a mixin configuration: apis: - name: | |
| // google.storage.v2.Storage mixins: - name: google.acl.v1.AccessControl The | |
| // mixin construct implies that all methods in `AccessControl` are also | |
| // declared with same name and request/response types in `Storage`. A | |
| // documentation generator or annotation processor will see the effective | |
| // `Storage.GetAcl` method after inheriting documentation and annotations as | |
| // follows: service Storage { // Get the underlying ACL object. rpc | |
| // GetAcl(GetAclRequest) returns (Acl) { option (google.api.http).get = | |
| // "/v2/{resource=**}:getAcl"; } ... } Note how the version in the path pattern | |
| // changed from `v1` to `v2`. If the `root` field in the mixin is specified, it | |
| // should be a relative path under which inherited HTTP paths are placed. | |
| // Example: apis: - name: google.storage.v2.Storage mixins: - name: | |
| // google.acl.v1.AccessControl root: acls This implies the following inherited | |
| // HTTP annotation: service Storage { // Get the underlying ACL object. rpc | |
| // GetAcl(GetAclRequest) returns (Acl) { option (google.api.http).get = | |
| // "/v2/acls/{resource=**}:getAcl"; } ... } | |
| type Mixin struct { | |
| // Name: The fully qualified name of the interface which is included. | |
| Name string `json:"name,omitempty"` | |
| // Root: If non-empty specifies a path under which inherited HTTP paths are | |
| // rooted. | |
| Root string `json:"root,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Name") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Name") to include in API requests | |
| // with the JSON null value. By default, fields with empty values are omitted | |
| // from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s Mixin) MarshalJSON() ([]byte, error) { | |
| type NoMethod Mixin | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // MonitoredResourceDescriptor: An object that describes the schema of a | |
| // MonitoredResource object using a type name and a set of labels. For example, | |
| // the monitored resource descriptor for Google Compute Engine VM instances has | |
| // a type of "gce_instance" and specifies the use of the labels | |
| // "instance_id" and "zone" to identify particular VM instances. Different | |
| // APIs can support different monitored resource types. APIs generally provide | |
| // a `list` method that returns the monitored resource descriptors used by the | |
| // API. | |
| type MonitoredResourceDescriptor struct { | |
| // Description: Optional. A detailed description of the monitored resource type | |
| // that might be used in documentation. | |
| Description string `json:"description,omitempty"` | |
| // DisplayName: Optional. A concise name for the monitored resource type that | |
| // might be displayed in user interfaces. It should be a Title Cased Noun | |
| // Phrase, without any article or other determiners. For example, "Google | |
| // Cloud SQL Database". | |
| DisplayName string `json:"displayName,omitempty"` | |
| // Labels: Required. A set of labels used to describe instances of this | |
| // monitored resource type. For example, an individual Google Cloud SQL | |
| // database is identified by values for the labels "database_id" and | |
| // "zone". | |
| Labels []*LabelDescriptor `json:"labels,omitempty"` | |
| // LaunchStage: Optional. The launch stage of the monitored resource | |
| // definition. | |
| // | |
| // Possible values: | |
| // "LAUNCH_STAGE_UNSPECIFIED" - Do not use this default value. | |
| // "UNIMPLEMENTED" - The feature is not yet implemented. Users can not use | |
| // it. | |
| // "PRELAUNCH" - Prelaunch features are hidden from users and are only | |
| // visible internally. | |
| // "EARLY_ACCESS" - Early Access features are limited to a closed group of | |
| // testers. To use these features, you must sign up in advance and sign a | |
| // Trusted Tester agreement (which includes confidentiality provisions). These | |
| // features may be unstable, changed in backward-incompatible ways, and are not | |
| // guaranteed to be released. | |
| // "ALPHA" - Alpha is a limited availability test for releases before they | |
| // are cleared for widespread use. By Alpha, all significant design issues are | |
| // resolved and we are in the process of verifying functionality. Alpha | |
| // customers need to apply for access, agree to applicable terms, and have | |
| // their projects allowlisted. Alpha releases don't have to be feature | |
| // complete, no SLAs are provided, and there are no technical support | |
| // obligations, but they will be far enough along that customers can actually | |
| // use them in test environments or for limited-use tests -- just like they | |
| // would in normal production cases. | |
| // "BETA" - Beta is the point at which we are ready to open a release for any | |
| // customer to use. There are no SLA or technical support obligations in a Beta | |
| // release. Products will be complete from a feature perspective, but may have | |
| // some open outstanding issues. Beta releases are suitable for limited | |
| // production use cases. | |
| // "GA" - GA features are open to all developers and are considered stable | |
| // and fully qualified for production use. | |
| // "DEPRECATED" - Deprecated features are scheduled to be shut down and | |
| // removed. For more information, see the "Deprecation Policy" section of our | |
| // [Terms of Service](https://cloud.google.com/terms/) and the [Google Cloud | |
| // Platform Subject to the Deprecation | |
| // Policy](https://cloud.google.com/terms/deprecation) documentation. | |
| LaunchStage string `json:"launchStage,omitempty"` | |
| // Name: Optional. The resource name of the monitored resource descriptor: | |
| // "projects/{project_id}/monitoredResourceDescriptors/{type}" where {type} | |
| // is the value of the `type` field in this object and {project_id} is a | |
| // project ID that provides API-specific context for accessing the type. APIs | |
| // that do not use project information can use the resource name format | |
| // "monitoredResourceDescriptors/{type}". | |
| Name string `json:"name,omitempty"` | |
| // Type: Required. The monitored resource type. For example, the type | |
| // "cloudsql_database" represents databases in Google Cloud SQL. For a list | |
| // of types, see Monitored resource types | |
| // (https://cloud.google.com/monitoring/api/resources) and Logging resource | |
| // types (https://cloud.google.com/logging/docs/api/v2/resource-list). | |
| Type string `json:"type,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Description") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Description") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s MonitoredResourceDescriptor) MarshalJSON() ([]byte, error) { | |
| type NoMethod MonitoredResourceDescriptor | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // Monitoring: Monitoring configuration of the service. The example below shows | |
| // how to configure monitored resources and metrics for monitoring. In the | |
| // example, a monitored resource and two metrics are defined. The | |
| // `library.googleapis.com/book/returned_count` metric is sent to both producer | |
| // and consumer projects, whereas the `library.googleapis.com/book/num_overdue` | |
| // metric is only sent to the consumer project. monitored_resources: - type: | |
| // library.googleapis.com/Branch display_name: "Library Branch" description: "A | |
| // branch of a library." launch_stage: GA labels: - key: resource_container | |
| // description: "The Cloud container (ie. project id) for the Branch." - key: | |
| // location description: "The location of the library branch." - key: branch_id | |
| // description: "The id of the branch." metrics: - name: | |
| // library.googleapis.com/book/returned_count display_name: "Books Returned" | |
| // description: "The count of books that have been returned." launch_stage: GA | |
| // metric_kind: DELTA value_type: INT64 unit: "1" labels: - key: customer_id | |
| // description: "The id of the customer." - name: | |
| // library.googleapis.com/book/num_overdue display_name: "Books Overdue" | |
| // description: "The current number of overdue books." launch_stage: GA | |
| // metric_kind: GAUGE value_type: INT64 unit: "1" labels: - key: customer_id | |
| // description: "The id of the customer." monitoring: producer_destinations: - | |
| // monitored_resource: library.googleapis.com/Branch metrics: - | |
| // library.googleapis.com/book/returned_count consumer_destinations: - | |
| // monitored_resource: library.googleapis.com/Branch metrics: - | |
| // library.googleapis.com/book/returned_count - | |
| // library.googleapis.com/book/num_overdue | |
| type Monitoring struct { | |
| // ConsumerDestinations: Monitoring configurations for sending metrics to the | |
| // consumer project. There can be multiple consumer destinations. A monitored | |
| // resource type may appear in multiple monitoring destinations if different | |
| // aggregations are needed for different sets of metrics associated with that | |
| // monitored resource type. A monitored resource and metric pair may only be | |
| // used once in the Monitoring configuration. | |
| ConsumerDestinations []*MonitoringDestination `json:"consumerDestinations,omitempty"` | |
| // ProducerDestinations: Monitoring configurations for sending metrics to the | |
| // producer project. There can be multiple producer destinations. A monitored | |
| // resource type may appear in multiple monitoring destinations if different | |
| // aggregations are needed for different sets of metrics associated with that | |
| // monitored resource type. A monitored resource and metric pair may only be | |
| // used once in the Monitoring configuration. | |
| ProducerDestinations []*MonitoringDestination `json:"producerDestinations,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "ConsumerDestinations") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "ConsumerDestinations") to include | |
| // in API requests with the JSON null value. By default, fields with empty | |
| // values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s Monitoring) MarshalJSON() ([]byte, error) { | |
| type NoMethod Monitoring | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // MonitoringDestination: Configuration of a specific monitoring destination | |
| // (the producer project or the consumer project). | |
| type MonitoringDestination struct { | |
| // Metrics: Types of the metrics to report to this monitoring destination. Each | |
| // type must be defined in Service.metrics section. | |
| Metrics []string `json:"metrics,omitempty"` | |
| // MonitoredResource: The monitored resource type. The type must be defined in | |
| // Service.monitored_resources section. | |
| MonitoredResource string `json:"monitoredResource,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Metrics") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Metrics") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s MonitoringDestination) MarshalJSON() ([]byte, error) { | |
| type NoMethod MonitoringDestination | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // NodeSettings: Settings for Node client libraries. | |
| type NodeSettings struct { | |
| // Common: Some settings. | |
| Common *CommonLanguageSettings `json:"common,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Common") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Common") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s NodeSettings) MarshalJSON() ([]byte, error) { | |
| type NoMethod NodeSettings | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // OAuthRequirements: OAuth scopes are a way to define data and permissions on | |
| // data. For example, there are scopes defined for "Read-only access to Google | |
| // Calendar" and "Access to Cloud Platform". Users can consent to a scope for | |
| // an application, giving it permission to access that data on their behalf. | |
| // OAuth scope specifications should be fairly coarse grained; a user will need | |
| // to see and understand the text description of what your scope means. In most | |
| // cases: use one or at most two OAuth scopes for an entire family of products. | |
| // If your product has multiple APIs, you should probably be sharing the OAuth | |
| // scope across all of those APIs. When you need finer grained OAuth consent | |
| // screens: talk with your product management about how developers will use | |
| // them in practice. Please note that even though each of the canonical scopes | |
| // is enough for a request to be accepted and passed to the backend, a request | |
| // can still fail due to the backend requiring additional scopes or | |
| // permissions. | |
| type OAuthRequirements struct { | |
| // CanonicalScopes: The list of publicly documented OAuth scopes that are | |
| // allowed access. An OAuth token containing any of these scopes will be | |
| // accepted. Example: canonical_scopes: | |
| // https://www.googleapis.com/auth/calendar, | |
| // https://www.googleapis.com/auth/calendar.read | |
| CanonicalScopes string `json:"canonicalScopes,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "CanonicalScopes") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "CanonicalScopes") to include in | |
| // API requests with the JSON null value. By default, fields with empty values | |
| // are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s OAuthRequirements) MarshalJSON() ([]byte, error) { | |
| type NoMethod OAuthRequirements | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // Operation: This resource represents a long-running operation that is the | |
| // result of a network API call. | |
| type Operation struct { | |
| // Done: If the value is `false`, it means the operation is still in progress. | |
| // If `true`, the operation is completed, and either `error` or `response` is | |
| // available. | |
| Done bool `json:"done,omitempty"` | |
| // Error: The error result of the operation in case of failure or cancellation. | |
| Error *Status `json:"error,omitempty"` | |
| // Metadata: Service-specific metadata associated with the operation. It | |
| // typically contains progress information and common metadata such as create | |
| // time. Some services might not provide such metadata. Any method that returns | |
| // a long-running operation should document the metadata type, if any. | |
| Metadata googleapi.RawMessage `json:"metadata,omitempty"` | |
| // Name: The server-assigned name, which is only unique within the same service | |
| // that originally returns it. If you use the default HTTP mapping, the `name` | |
| // should be a resource name ending with `operations/{unique_id}`. | |
| Name string `json:"name,omitempty"` | |
| // Response: The normal, successful response of the operation. If the original | |
| // method returns no data on success, such as `Delete`, the response is | |
| // `google.protobuf.Empty`. If the original method is standard | |
| // `Get`/`Create`/`Update`, the response should be the resource. For other | |
| // methods, the response should have the type `XxxResponse`, where `Xxx` is the | |
| // original method name. For example, if the original method name is | |
| // `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`. | |
| Response googleapi.RawMessage `json:"response,omitempty"` | |
| // ServerResponse contains the HTTP response code and headers from the server. | |
| googleapi.ServerResponse `json:"-"` | |
| // ForceSendFields is a list of field names (e.g. "Done") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Done") to include in API requests | |
| // with the JSON null value. By default, fields with empty values are omitted | |
| // from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s Operation) MarshalJSON() ([]byte, error) { | |
| type NoMethod Operation | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // OperationInfo: A message representing the message types used by a | |
| // long-running operation. Example: rpc Export(ExportRequest) returns | |
| // (google.longrunning.Operation) { option (google.longrunning.operation_info) | |
| // = { response_type: "ExportResponse" metadata_type: "ExportMetadata" }; } | |
| type OperationInfo struct { | |
| // MetadataType: Required. The message name of the metadata type for this | |
| // long-running operation. If the response is in a different package from the | |
| // rpc, a fully-qualified message name must be used (e.g. | |
| // `google.protobuf.Struct`). Note: Altering this value constitutes a breaking | |
| // change. | |
| MetadataType string `json:"metadataType,omitempty"` | |
| // ResponseType: Required. The message name of the primary return type for this | |
| // long-running operation. This type will be used to deserialize the LRO's | |
| // response. If the response is in a different package from the rpc, a | |
| // fully-qualified message name must be used (e.g. `google.protobuf.Struct`). | |
| // Note: Altering this value constitutes a breaking change. | |
| ResponseType string `json:"responseType,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "MetadataType") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "MetadataType") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s OperationInfo) MarshalJSON() ([]byte, error) { | |
| type NoMethod OperationInfo | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // OperationMetadata: The metadata associated with a long running operation | |
| // resource. | |
| type OperationMetadata struct { | |
| // ProgressPercentage: Percentage of completion of this operation, ranging from | |
| // 0 to 100. | |
| ProgressPercentage int64 `json:"progressPercentage,omitempty"` | |
| // ResourceNames: The full name of the resources that this operation is | |
| // directly associated with. | |
| ResourceNames []string `json:"resourceNames,omitempty"` | |
| // StartTime: The start time of the operation. | |
| StartTime string `json:"startTime,omitempty"` | |
| // Steps: Detailed status information for each step. The order is undetermined. | |
| Steps []*Step `json:"steps,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "ProgressPercentage") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "ProgressPercentage") to include | |
| // in API requests with the JSON null value. By default, fields with empty | |
| // values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s OperationMetadata) MarshalJSON() ([]byte, error) { | |
| type NoMethod OperationMetadata | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // Option: A protocol buffer option, which can be attached to a message, field, | |
| // enumeration, etc. New usages of this message as an alternative to | |
| // FileOptions, MessageOptions, FieldOptions, EnumOptions, EnumValueOptions, | |
| // ServiceOptions, or MethodOptions are strongly discouraged. | |
| type Option struct { | |
| // Name: The option's name. For protobuf built-in options (options defined in | |
| // descriptor.proto), this is the short name. For example, "map_entry". For | |
| // custom options, it should be the fully-qualified name. For example, | |
| // "google.api.http". | |
| Name string `json:"name,omitempty"` | |
| // Value: The option's value packed in an Any message. If the value is a | |
| // primitive, the corresponding wrapper type defined in | |
| // google/protobuf/wrappers.proto should be used. If the value is an enum, it | |
| // should be stored as an int32 value using the google.protobuf.Int32Value | |
| // type. | |
| Value googleapi.RawMessage `json:"value,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Name") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Name") to include in API requests | |
| // with the JSON null value. By default, fields with empty values are omitted | |
| // from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s Option) MarshalJSON() ([]byte, error) { | |
| type NoMethod Option | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // Page: Represents a documentation page. A page can contain subpages to | |
| // represent nested documentation set structure. | |
| type Page struct { | |
| // Content: The Markdown content of the page. You can use ```(== include {path} | |
| // ==)``` to include content from a Markdown file. The content can be used to | |
| // produce the documentation page such as HTML format page. | |
| Content string `json:"content,omitempty"` | |
| // Name: The name of the page. It will be used as an identity of the page to | |
| // generate URI of the page, text of the link to this page in navigation, etc. | |
| // The full page name (start from the root page name to this page concatenated | |
| // with `.`) can be used as reference to the page in your documentation. For | |
| // example: pages: - name: Tutorial content: (== include tutorial.md ==) | |
| // subpages: - name: Java content: (== include tutorial_java.md ==) You can | |
| // reference `Java` page using Markdown reference link syntax: `Java`. | |
| Name string `json:"name,omitempty"` | |
| // Subpages: Subpages of this page. The order of subpages specified here will | |
| // be honored in the generated docset. | |
| Subpages []*Page `json:"subpages,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Content") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Content") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s Page) MarshalJSON() ([]byte, error) { | |
| type NoMethod Page | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // PhpSettings: Settings for Php client libraries. | |
| type PhpSettings struct { | |
| // Common: Some settings. | |
| Common *CommonLanguageSettings `json:"common,omitempty"` | |
| // LibraryPackage: The package name to use in Php. Clobbers the php_namespace | |
| // option set in the protobuf. This should be used **only** by APIs who have | |
| // already set the language_settings.php.package_name" field in gapic.yaml. API | |
| // teams should use the protobuf php_namespace option where possible. Example | |
| // of a YAML configuration:: publishing: library_settings: php_settings: | |
| // library_package: Google\Cloud\PubSub\V1 | |
| LibraryPackage string `json:"libraryPackage,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Common") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Common") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s PhpSettings) MarshalJSON() ([]byte, error) { | |
| type NoMethod PhpSettings | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // Policy: An Identity and Access Management (IAM) policy, which specifies | |
| // access controls for Google Cloud resources. A `Policy` is a collection of | |
| // `bindings`. A `binding` binds one or more `members`, or principals, to a | |
| // single `role`. Principals can be user accounts, service accounts, Google | |
| // groups, and domains (such as G Suite). A `role` is a named list of | |
| // permissions; each `role` can be an IAM predefined role or a user-created | |
| // custom role. For some types of Google Cloud resources, a `binding` can also | |
| // specify a `condition`, which is a logical expression that allows access to a | |
| // resource only if the expression evaluates to `true`. A condition can add | |
| // constraints based on attributes of the request, the resource, or both. To | |
| // learn which resources support conditions in their IAM policies, see the IAM | |
| // documentation | |
| // (https://cloud.google.com/iam/help/conditions/resource-policies). **JSON | |
| // example:** ``` { "bindings": [ { "role": | |
| // "roles/resourcemanager.organizationAdmin", "members": [ | |
| // "user:mike@example.com", "group:admins@example.com", "domain:google.com", | |
| // "serviceAccount:my-project-id@appspot.gserviceaccount.com" ] }, { "role": | |
| // "roles/resourcemanager.organizationViewer", "members": [ | |
| // "user:eve@example.com" ], "condition": { "title": "expirable access", | |
| // "description": "Does not grant access after Sep 2020", "expression": | |
| // "request.time < timestamp('2020-10-01T00:00:00.000Z')", } } ], "etag": | |
| // "BwWWja0YfJA=", "version": 3 } ``` **YAML example:** ``` bindings: - | |
| // members: - user:mike@example.com - group:admins@example.com - | |
| // domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com | |
| // role: roles/resourcemanager.organizationAdmin - members: - | |
| // user:eve@example.com role: roles/resourcemanager.organizationViewer | |
| // condition: title: expirable access description: Does not grant access after | |
| // Sep 2020 expression: request.time < timestamp('2020-10-01T00:00:00.000Z') | |
| // etag: BwWWja0YfJA= version: 3 ``` For a description of IAM and its features, | |
| // see the IAM documentation (https://cloud.google.com/iam/docs/). | |
| type Policy struct { | |
| // AuditConfigs: Specifies cloud audit logging configuration for this policy. | |
| AuditConfigs []*AuditConfig `json:"auditConfigs,omitempty"` | |
| // Bindings: Associates a list of `members`, or principals, with a `role`. | |
| // Optionally, may specify a `condition` that determines how and when the | |
| // `bindings` are applied. Each of the `bindings` must contain at least one | |
| // principal. The `bindings` in a `Policy` can refer to up to 1,500 principals; | |
| // up to 250 of these principals can be Google groups. Each occurrence of a | |
| // principal counts towards these limits. For example, if the `bindings` grant | |
| // 50 different roles to `user:alice@example.com`, and not to any other | |
| // principal, then you can add another 1,450 principals to the `bindings` in | |
| // the `Policy`. | |
| Bindings []*Binding `json:"bindings,omitempty"` | |
| // Etag: `etag` is used for optimistic concurrency control as a way to help | |
| // prevent simultaneous updates of a policy from overwriting each other. It is | |
| // strongly suggested that systems make use of the `etag` in the | |
| // read-modify-write cycle to perform policy updates in order to avoid race | |
| // conditions: An `etag` is returned in the response to `getIamPolicy`, and | |
| // systems are expected to put that etag in the request to `setIamPolicy` to | |
| // ensure that their change will be applied to the same version of the policy. | |
| // **Important:** If you use IAM Conditions, you must include the `etag` field | |
| // whenever you call `setIamPolicy`. If you omit this field, then IAM allows | |
| // you to overwrite a version `3` policy with a version `1` policy, and all of | |
| // the conditions in the version `3` policy are lost. | |
| Etag string `json:"etag,omitempty"` | |
| // Version: Specifies the format of the policy. Valid values are `0`, `1`, and | |
| // `3`. Requests that specify an invalid value are rejected. Any operation that | |
| // affects conditional role bindings must specify version `3`. This requirement | |
| // applies to the following operations: * Getting a policy that includes a | |
| // conditional role binding * Adding a conditional role binding to a policy * | |
| // Changing a conditional role binding in a policy * Removing any role binding, | |
| // with or without a condition, from a policy that includes conditions | |
| // **Important:** If you use IAM Conditions, you must include the `etag` field | |
| // whenever you call `setIamPolicy`. If you omit this field, then IAM allows | |
| // you to overwrite a version `3` policy with a version `1` policy, and all of | |
| // the conditions in the version `3` policy are lost. If a policy does not | |
| // include any conditions, operations on that policy may specify any valid | |
| // version or leave the field unset. To learn which resources support | |
| // conditions in their IAM policies, see the IAM documentation | |
| // (https://cloud.google.com/iam/help/conditions/resource-policies). | |
| Version int64 `json:"version,omitempty"` | |
| // ServerResponse contains the HTTP response code and headers from the server. | |
| googleapi.ServerResponse `json:"-"` | |
| // ForceSendFields is a list of field names (e.g. "AuditConfigs") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "AuditConfigs") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s Policy) MarshalJSON() ([]byte, error) { | |
| type NoMethod Policy | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // Publishing: This message configures the settings for publishing Google Cloud | |
| // Client libraries (https://cloud.google.com/apis/docs/cloud-client-libraries) | |
| // generated from the service config. | |
| type Publishing struct { | |
| // ApiShortName: Used as a tracking tag when collecting data about the APIs | |
| // developer relations artifacts like docs, packages delivered to package | |
| // managers, etc. Example: "speech". | |
| ApiShortName string `json:"apiShortName,omitempty"` | |
| // CodeownerGithubTeams: GitHub teams to be added to CODEOWNERS in the | |
| // directory in GitHub containing source code for the client libraries for this | |
| // API. | |
| CodeownerGithubTeams []string `json:"codeownerGithubTeams,omitempty"` | |
| // DocTagPrefix: A prefix used in sample code when demarking regions to be | |
| // included in documentation. | |
| DocTagPrefix string `json:"docTagPrefix,omitempty"` | |
| // DocumentationUri: Link to product home page. Example: | |
| // https://cloud.google.com/asset-inventory/docs/overview | |
| DocumentationUri string `json:"documentationUri,omitempty"` | |
| // GithubLabel: GitHub label to apply to issues and pull requests opened for | |
| // this API. | |
| GithubLabel string `json:"githubLabel,omitempty"` | |
| // LibrarySettings: Client library settings. If the same version string appears | |
| // multiple times in this list, then the last one wins. Settings from earlier | |
| // settings with the same version string are discarded. | |
| LibrarySettings []*ClientLibrarySettings `json:"librarySettings,omitempty"` | |
| // MethodSettings: A list of API method settings, e.g. the behavior for methods | |
| // that use the long-running operation pattern. | |
| MethodSettings []*MethodSettings `json:"methodSettings,omitempty"` | |
| // NewIssueUri: Link to a *public* URI where users can report issues. Example: | |
| // https://issuetracker.google.com/issues/new?component=190865&template=1161103 | |
| NewIssueUri string `json:"newIssueUri,omitempty"` | |
| // Organization: For whom the client library is being published. | |
| // | |
| // Possible values: | |
| // "CLIENT_LIBRARY_ORGANIZATION_UNSPECIFIED" - Not useful. | |
| // "CLOUD" - Google Cloud Platform Org. | |
| // "ADS" - Ads (Advertising) Org. | |
| // "PHOTOS" - Photos Org. | |
| // "STREET_VIEW" - Street View Org. | |
| // "SHOPPING" - Shopping Org. | |
| // "GEO" - Geo Org. | |
| // "GENERATIVE_AI" - Generative AI - https://developers.generativeai.google | |
| // "HEALTH" - Health Org. | |
| Organization string `json:"organization,omitempty"` | |
| // ProtoReferenceDocumentationUri: Optional link to proto reference | |
| // documentation. Example: | |
| // https://cloud.google.com/pubsub/lite/docs/reference/rpc | |
| ProtoReferenceDocumentationUri string `json:"protoReferenceDocumentationUri,omitempty"` | |
| // RestReferenceDocumentationUri: Optional link to REST reference | |
| // documentation. Example: | |
| // https://cloud.google.com/pubsub/lite/docs/reference/rest | |
| RestReferenceDocumentationUri string `json:"restReferenceDocumentationUri,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "ApiShortName") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "ApiShortName") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s Publishing) MarshalJSON() ([]byte, error) { | |
| type NoMethod Publishing | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // PythonSettings: Settings for Python client libraries. | |
| type PythonSettings struct { | |
| // Common: Some settings. | |
| Common *CommonLanguageSettings `json:"common,omitempty"` | |
| // ExperimentalFeatures: Experimental features to be included during client | |
| // library generation. | |
| ExperimentalFeatures *ExperimentalFeatures `json:"experimentalFeatures,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Common") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Common") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s PythonSettings) MarshalJSON() ([]byte, error) { | |
| type NoMethod PythonSettings | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // Quota: Quota configuration helps to achieve fairness and budgeting in | |
| // service usage. The metric based quota configuration works this way: - The | |
| // service configuration defines a set of metrics. - For API calls, the | |
| // quota.metric_rules maps methods to metrics with corresponding costs. - The | |
| // quota.limits defines limits on the metrics, which will be used for quota | |
| // checks at runtime. An example quota configuration in yaml format: quota: | |
| // limits: - name: apiWriteQpsPerProject metric: | |
| // library.googleapis.com/write_calls unit: "1/min/{project}" # rate limit for | |
| // consumer projects values: STANDARD: 10000 (The metric rules bind all methods | |
| // to the read_calls metric, except for the UpdateBook and DeleteBook methods. | |
| // These two methods are mapped to the write_calls metric, with the UpdateBook | |
| // method consuming at twice rate as the DeleteBook method.) metric_rules: - | |
| // selector: "*" metric_costs: library.googleapis.com/read_calls: 1 - selector: | |
| // google.example.library.v1.LibraryService.UpdateBook metric_costs: | |
| // library.googleapis.com/write_calls: 2 - selector: | |
| // google.example.library.v1.LibraryService.DeleteBook metric_costs: | |
| // library.googleapis.com/write_calls: 1 Corresponding Metric definition: | |
| // metrics: - name: library.googleapis.com/read_calls display_name: Read | |
| // requests metric_kind: DELTA value_type: INT64 - name: | |
| // library.googleapis.com/write_calls display_name: Write requests metric_kind: | |
| // DELTA value_type: INT64 | |
| type Quota struct { | |
| // Limits: List of QuotaLimit definitions for the service. | |
| Limits []*QuotaLimit `json:"limits,omitempty"` | |
| // MetricRules: List of MetricRule definitions, each one mapping a selected | |
| // method to one or more metrics. | |
| MetricRules []*MetricRule `json:"metricRules,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Limits") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Limits") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s Quota) MarshalJSON() ([]byte, error) { | |
| type NoMethod Quota | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // QuotaLimit: `QuotaLimit` defines a specific limit that applies over a | |
| // specified duration for a limit type. There can be at most one limit for a | |
| // duration and limit type combination defined within a `QuotaGroup`. | |
| type QuotaLimit struct { | |
| // DefaultLimit: Default number of tokens that can be consumed during the | |
| // specified duration. This is the number of tokens assigned when a client | |
| // application developer activates the service for his/her project. Specifying | |
| // a value of 0 will block all requests. This can be used if you are | |
| // provisioning quota to selected consumers and blocking others. Similarly, a | |
| // value of -1 will indicate an unlimited quota. No other negative values are | |
| // allowed. Used by group-based quotas only. | |
| DefaultLimit int64 `json:"defaultLimit,omitempty,string"` | |
| // Description: Optional. User-visible, extended description for this quota | |
| // limit. Should be used only when more context is needed to understand this | |
| // limit than provided by the limit's display name (see: `display_name`). | |
| Description string `json:"description,omitempty"` | |
| // DisplayName: User-visible display name for this limit. Optional. If not set, | |
| // the UI will provide a default display name based on the quota configuration. | |
| // This field can be used to override the default display name generated from | |
| // the configuration. | |
| DisplayName string `json:"displayName,omitempty"` | |
| // Duration: Duration of this limit in textual notation. Must be "100s" or | |
| // "1d". Used by group-based quotas only. | |
| Duration string `json:"duration,omitempty"` | |
| // FreeTier: Free tier value displayed in the Developers Console for this | |
| // limit. The free tier is the number of tokens that will be subtracted from | |
| // the billed amount when billing is enabled. This field can only be set on a | |
| // limit with duration "1d", in a billable group; it is invalid on any other | |
| // limit. If this field is not set, it defaults to 0, indicating that there is | |
| // no free tier for this service. Used by group-based quotas only. | |
| FreeTier int64 `json:"freeTier,omitempty,string"` | |
| // MaxLimit: Maximum number of tokens that can be consumed during the specified | |
| // duration. Client application developers can override the default limit up to | |
| // this maximum. If specified, this value cannot be set to a value less than | |
| // the default limit. If not specified, it is set to the default limit. To | |
| // allow clients to apply overrides with no upper bound, set this to -1, | |
| // indicating unlimited maximum quota. Used by group-based quotas only. | |
| MaxLimit int64 `json:"maxLimit,omitempty,string"` | |
| // Metric: The name of the metric this quota limit applies to. The quota limits | |
| // with the same metric will be checked together during runtime. The metric | |
| // must be defined within the service config. | |
| Metric string `json:"metric,omitempty"` | |
| // Name: Name of the quota limit. The name must be provided, and it must be | |
| // unique within the service. The name can only include alphanumeric characters | |
| // as well as '-'. The maximum length of the limit name is 64 characters. | |
| Name string `json:"name,omitempty"` | |
| // TrafficSource: Optional. This is only informational, the logic to allocate | |
| // the quota to the correct metric (such as in `metric_rules`) should identify | |
| // which quota metrics to allocate to. | |
| // | |
| // Possible values: | |
| // "TRAFFIC_SOURCE_UNSPECIFIED" - This quota limit applies to all traffic. | |
| // This is the default value. | |
| // "TRAFFIC_SOURCE_NONAGENTIC" - This quota limit applies to traffic not | |
| // recognized as agentic. | |
| // "TRAFFIC_SOURCE_AGENTIC" - This quota limit applies to only agentic | |
| // traffic. | |
| TrafficSource string `json:"trafficSource,omitempty"` | |
| // Unit: Specify the unit of the quota limit. It uses the same syntax as | |
| // MetricDescriptor.unit. The supported unit kinds are determined by the quota | |
| // backend system. Here are some examples: * "1/min/{project}" for quota per | |
| // minute per project. Note: the order of unit components is insignificant. The | |
| // "1" at the beginning is required to follow the metric unit syntax. | |
| Unit string `json:"unit,omitempty"` | |
| // Values: Tiered limit values. You must specify this as a key:value pair, with | |
| // an integer value that is the maximum number of requests allowed for the | |
| // specified unit. Currently only STANDARD is supported. | |
| Values map[string]string `json:"values,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "DefaultLimit") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "DefaultLimit") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s QuotaLimit) MarshalJSON() ([]byte, error) { | |
| type NoMethod QuotaLimit | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // ResourceReference: Defines a proto annotation that describes a string field | |
| // that refers to an API resource. | |
| type ResourceReference struct { | |
| // ChildType: The resource type of a child collection that the annotated field | |
| // references. This is useful for annotating the `parent` field that doesn't | |
| // have a fixed resource type. Example: message ListLogEntriesRequest { string | |
| // parent = 1 [(google.api.resource_reference) = { child_type: | |
| // "logging.googleapis.com/LogEntry" }; } | |
| ChildType string `json:"childType,omitempty"` | |
| // Type: The resource type that the annotated field references. Example: | |
| // message Subscription { string topic = 2 [(google.api.resource_reference) = { | |
| // type: "pubsub.googleapis.com/Topic" }]; } Occasionally, a field may | |
| // reference an arbitrary resource. In this case, APIs use the special value * | |
| // in their resource reference. Example: message GetIamPolicyRequest { string | |
| // resource = 2 [(google.api.resource_reference) = { type: "*" }]; } | |
| Type string `json:"type,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "ChildType") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "ChildType") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s ResourceReference) MarshalJSON() ([]byte, error) { | |
| type NoMethod ResourceReference | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // Rollout: A rollout resource that defines how service configuration versions | |
| // are pushed to control plane systems. Typically, you create a new version of | |
| // the service config, and then create a Rollout to push the service config. | |
| type Rollout struct { | |
| // CreateTime: Creation time of the rollout. Readonly. | |
| CreateTime string `json:"createTime,omitempty"` | |
| // CreatedBy: The user who created the Rollout. Readonly. | |
| CreatedBy string `json:"createdBy,omitempty"` | |
| // DeleteServiceStrategy: The strategy associated with a rollout to delete a | |
| // `ManagedService`. Readonly. | |
| DeleteServiceStrategy *DeleteServiceStrategy `json:"deleteServiceStrategy,omitempty"` | |
| // RolloutId: Optional. Unique identifier of this Rollout. Must be no longer | |
| // than 63 characters and only lower case letters, digits, '.', '_' and '-' are | |
| // allowed. If not specified by client, the server will generate one. The | |
| // generated id will have the form of , where "date" is the create date in ISO | |
| // 8601 format. "revision number" is a monotonically increasing positive number | |
| // that is reset every day for each service. An example of the generated | |
| // rollout_id is '2016-02-16r1' | |
| RolloutId string `json:"rolloutId,omitempty"` | |
| // ServiceName: The name of the service associated with this Rollout. | |
| ServiceName string `json:"serviceName,omitempty"` | |
| // Status: The status of this rollout. Readonly. In case of a failed rollout, | |
| // the system will automatically rollback to the current Rollout version. | |
| // Readonly. | |
| // | |
| // Possible values: | |
| // "ROLLOUT_STATUS_UNSPECIFIED" - No status specified. | |
| // "IN_PROGRESS" - The Rollout is in progress. | |
| // "SUCCESS" - The Rollout has completed successfully. | |
| // "CANCELLED" - The Rollout has been cancelled. This can happen if you have | |
| // overlapping Rollout pushes, and the previous ones will be cancelled. | |
| // "FAILED" - The Rollout has failed and the rollback attempt has failed too. | |
| // "PENDING" - The Rollout has not started yet and is pending for execution. | |
| // "FAILED_ROLLED_BACK" - The Rollout has failed and rolled back to the | |
| // previous successful Rollout. | |
| Status string `json:"status,omitempty"` | |
| // TrafficPercentStrategy: Google Service Control selects service | |
| // configurations based on traffic percentage. | |
| TrafficPercentStrategy *TrafficPercentStrategy `json:"trafficPercentStrategy,omitempty"` | |
| // ServerResponse contains the HTTP response code and headers from the server. | |
| googleapi.ServerResponse `json:"-"` | |
| // ForceSendFields is a list of field names (e.g. "CreateTime") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "CreateTime") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s Rollout) MarshalJSON() ([]byte, error) { | |
| type NoMethod Rollout | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // RubySettings: Settings for Ruby client libraries. | |
| type RubySettings struct { | |
| // Common: Some settings. | |
| Common *CommonLanguageSettings `json:"common,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Common") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Common") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s RubySettings) MarshalJSON() ([]byte, error) { | |
| type NoMethod RubySettings | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // SelectiveGapicGeneration: This message is used to configure the generation | |
| // of a subset of the RPCs in a service for client libraries. Note: This | |
| // feature should not be used in most cases. | |
| type SelectiveGapicGeneration struct { | |
| // GenerateOmittedAsInternal: Setting this to true indicates to the client | |
| // generators that methods that would be excluded from the generation should | |
| // instead be generated in a way that indicates these methods should not be | |
| // consumed by end users. How this is expressed is up to individual language | |
| // implementations to decide. Some examples may be: added annotations, | |
| // obfuscated identifiers, or other language idiomatic patterns. | |
| GenerateOmittedAsInternal bool `json:"generateOmittedAsInternal,omitempty"` | |
| // Methods: An allowlist of the fully qualified names of RPCs that should be | |
| // included on public client surfaces. | |
| Methods []string `json:"methods,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "GenerateOmittedAsInternal") | |
| // to unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "GenerateOmittedAsInternal") to | |
| // include in API requests with the JSON null value. By default, fields with | |
| // empty values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s SelectiveGapicGeneration) MarshalJSON() ([]byte, error) { | |
| type NoMethod SelectiveGapicGeneration | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // Service: `Service` is the root object of Google API service configuration | |
| // (service config). It describes the basic information about a logical | |
| // service, such as the service name and the user-facing title, and delegates | |
| // other aspects to sub-sections. Each sub-section is either a proto message or | |
| // a repeated proto message that configures a specific aspect, such as auth. | |
| // For more information, see each proto message definition. Example: type: | |
| // google.api.Service name: calendar.googleapis.com title: Google Calendar API | |
| // apis: - name: google.calendar.v3.Calendar visibility: rules: - selector: | |
| // "google.calendar.v3.*" restriction: PREVIEW backend: rules: - selector: | |
| // "google.calendar.v3.*" address: calendar.example.com authentication: | |
| // providers: - id: google_calendar_auth jwks_uri: | |
| // https://www.googleapis.com/oauth2/v1/certs issuer: | |
| // https://securetoken.google.com rules: - selector: "*" requirements: | |
| // provider_id: google_calendar_auth | |
| type Service struct { | |
| // Apis: A list of API interfaces exported by this service. Only the `name` | |
| // field of the google.protobuf.Api needs to be provided by the configuration | |
| // author, as the remaining fields will be derived from the IDL during the | |
| // normalization process. It is an error to specify an API interface here which | |
| // cannot be resolved against the associated IDL files. | |
| Apis []*Api `json:"apis,omitempty"` | |
| // Aspects: Configuration aspects. This is a repeated field to allow multiple | |
| // aspects to be configured. The kind field in each ConfigAspect specifies the | |
| // type of aspect. The spec field contains the configuration for that aspect. | |
| // The schema for the spec field is defined by the backend service owners. | |
| Aspects []*Aspect `json:"aspects,omitempty"` | |
| // Authentication: Auth configuration. | |
| Authentication *Authentication `json:"authentication,omitempty"` | |
| // Backend: API backend configuration. | |
| Backend *Backend `json:"backend,omitempty"` | |
| // Billing: Billing configuration. | |
| Billing *Billing `json:"billing,omitempty"` | |
| // ConfigVersion: Obsolete. Do not use. This field has no semantic meaning. The | |
| // service config compiler always sets this field to `3`. | |
| ConfigVersion int64 `json:"configVersion,omitempty"` | |
| // Context: Context configuration. | |
| Context *Context `json:"context,omitempty"` | |
| // Control: Configuration for the service control plane. | |
| Control *Control `json:"control,omitempty"` | |
| // CustomError: Custom error configuration. | |
| CustomError *CustomError `json:"customError,omitempty"` | |
| // Documentation: Additional API documentation. | |
| Documentation *Documentation `json:"documentation,omitempty"` | |
| // Endpoints: Configuration for network endpoints. If this is empty, then an | |
| // endpoint with the same name as the service is automatically generated to | |
| // service all defined APIs. | |
| Endpoints []*Endpoint `json:"endpoints,omitempty"` | |
| // Enums: A list of all enum types included in this API service. Enums | |
| // referenced directly or indirectly by the `apis` are automatically included. | |
| // Enums which are not referenced but shall be included should be listed here | |
| // by name by the configuration author. Example: enums: - name: | |
| // google.someapi.v1.SomeEnum | |
| Enums []*Enum `json:"enums,omitempty"` | |
| // Http: HTTP configuration. | |
| Http *Http `json:"http,omitempty"` | |
| // Id: A unique ID for a specific instance of this message, typically assigned | |
| // by the client for tracking purpose. Must be no longer than 63 characters and | |
| // only lower case letters, digits, '.', '_' and '-' are allowed. If empty, the | |
| // server may choose to generate one instead. | |
| Id string `json:"id,omitempty"` | |
| // Logging: Logging configuration. | |
| Logging *Logging `json:"logging,omitempty"` | |
| // Logs: Defines the logs used by this service. | |
| Logs []*LogDescriptor `json:"logs,omitempty"` | |
| // Metrics: Defines the metrics used by this service. | |
| Metrics []*MetricDescriptor `json:"metrics,omitempty"` | |
| // MonitoredResources: Defines the monitored resources used by this service. | |
| // This is required by the `Service.monitoring` and `Service.logging` | |
| // configurations. | |
| MonitoredResources []*MonitoredResourceDescriptor `json:"monitoredResources,omitempty"` | |
| // Monitoring: Monitoring configuration. | |
| Monitoring *Monitoring `json:"monitoring,omitempty"` | |
| // Name: The service name, which is a DNS-like logical identifier for the | |
| // service, such as `calendar.googleapis.com`. The service name typically goes | |
| // through DNS verification to make sure the owner of the service also owns the | |
| // DNS name. | |
| Name string `json:"name,omitempty"` | |
| // ProducerProjectId: The Google project that owns this service. | |
| ProducerProjectId string `json:"producerProjectId,omitempty"` | |
| // Publishing: Settings for Google Cloud Client libraries | |
| // (https://cloud.google.com/apis/docs/cloud-client-libraries) generated from | |
| // APIs defined as protocol buffers. | |
| Publishing *Publishing `json:"publishing,omitempty"` | |
| // Quota: Quota configuration. | |
| Quota *Quota `json:"quota,omitempty"` | |
| // SourceInfo: Output only. The source information for this configuration if | |
| // available. | |
| SourceInfo *SourceInfo `json:"sourceInfo,omitempty"` | |
| // SystemParameters: System parameter configuration. | |
| SystemParameters *SystemParameters `json:"systemParameters,omitempty"` | |
| // SystemTypes: A list of all proto message types included in this API service. | |
| // It serves similar purpose as [google.api.Service.types], except that these | |
| // types are not needed by user-defined APIs. Therefore, they will not show up | |
| // in the generated discovery doc. This field should only be used to define | |
| // system APIs in ESF. | |
| SystemTypes []*Type `json:"systemTypes,omitempty"` | |
| // Title: The product title for this service, it is the name displayed in | |
| // Google Cloud Console. | |
| Title string `json:"title,omitempty"` | |
| // Types: A list of all proto message types included in this API service. Types | |
| // referenced directly or indirectly by the `apis` are automatically included. | |
| // Messages which are not referenced but shall be included, such as types used | |
| // by the `google.protobuf.Any` type, should be listed here by name by the | |
| // configuration author. Example: types: - name: google.protobuf.Int32 | |
| Types []*Type `json:"types,omitempty"` | |
| // Usage: Configuration controlling usage of this service. | |
| Usage *Usage `json:"usage,omitempty"` | |
| // ServerResponse contains the HTTP response code and headers from the server. | |
| googleapi.ServerResponse `json:"-"` | |
| // ForceSendFields is a list of field names (e.g. "Apis") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Apis") to include in API requests | |
| // with the JSON null value. By default, fields with empty values are omitted | |
| // from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s Service) MarshalJSON() ([]byte, error) { | |
| type NoMethod Service | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // SetIamPolicyRequest: Request message for `SetIamPolicy` method. | |
| type SetIamPolicyRequest struct { | |
| // Policy: REQUIRED: The complete policy to be applied to the `resource`. The | |
| // size of the policy is limited to a few 10s of KB. An empty policy is a valid | |
| // policy but certain Google Cloud services (such as Projects) might reject | |
| // them. | |
| Policy *Policy `json:"policy,omitempty"` | |
| // UpdateMask: OPTIONAL: A FieldMask specifying which fields of the policy to | |
| // modify. Only the fields in the mask will be modified. If no mask is | |
| // provided, the following default mask is used: `paths: "bindings, etag" | |
| UpdateMask string `json:"updateMask,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Policy") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Policy") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s SetIamPolicyRequest) MarshalJSON() ([]byte, error) { | |
| type NoMethod SetIamPolicyRequest | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // SourceContext: `SourceContext` represents information about the source of a | |
| // protobuf element, like the file in which it is defined. | |
| type SourceContext struct { | |
| // FileName: The path-qualified name of the .proto file that contained the | |
| // associated protobuf element. For example: | |
| // "google/protobuf/source_context.proto". | |
| FileName string `json:"fileName,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "FileName") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "FileName") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s SourceContext) MarshalJSON() ([]byte, error) { | |
| type NoMethod SourceContext | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // SourceInfo: Source information used to create a Service Config | |
| type SourceInfo struct { | |
| // SourceFiles: All files used during config generation. | |
| SourceFiles []googleapi.RawMessage `json:"sourceFiles,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "SourceFiles") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "SourceFiles") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s SourceInfo) MarshalJSON() ([]byte, error) { | |
| type NoMethod SourceInfo | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // Status: The `Status` type defines a logical error model that is suitable for | |
| // different programming environments, including REST APIs and RPC APIs. It is | |
| // used by gRPC (https://github.com/grpc). Each `Status` message contains three | |
| // pieces of data: error code, error message, and error details. You can find | |
| // out more about this error model and how to work with it in the API Design | |
| // Guide (https://cloud.google.com/apis/design/errors). | |
| type Status struct { | |
| // Code: The status code, which should be an enum value of google.rpc.Code. | |
| Code int64 `json:"code,omitempty"` | |
| // Details: A list of messages that carry the error details. There is a common | |
| // set of message types for APIs to use. | |
| Details []googleapi.RawMessage `json:"details,omitempty"` | |
| // Message: A developer-facing error message, which should be in English. Any | |
| // user-facing error message should be localized and sent in the | |
| // google.rpc.Status.details field, or localized by the client. | |
| Message string `json:"message,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Code") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Code") to include in API requests | |
| // with the JSON null value. By default, fields with empty values are omitted | |
| // from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s Status) MarshalJSON() ([]byte, error) { | |
| type NoMethod Status | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // Step: Represents the status of one operation step. | |
| type Step struct { | |
| // Description: The short description of the step. | |
| Description string `json:"description,omitempty"` | |
| // Status: The status code. | |
| // | |
| // Possible values: | |
| // "STATUS_UNSPECIFIED" - Unspecified code. | |
| // "DONE" - The operation or step has completed without errors. | |
| // "NOT_STARTED" - The operation or step has not started yet. | |
| // "IN_PROGRESS" - The operation or step is in progress. | |
| // "FAILED" - The operation or step has completed with errors. If the | |
| // operation is rollbackable, the rollback completed with errors too. | |
| // "CANCELLED" - The operation or step has completed with cancellation. | |
| Status string `json:"status,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Description") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Description") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s Step) MarshalJSON() ([]byte, error) { | |
| type NoMethod Step | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // SubmitConfigSourceRequest: Request message for SubmitConfigSource method. | |
| type SubmitConfigSourceRequest struct { | |
| // ConfigSource: Required. The source configuration for the service. | |
| ConfigSource *ConfigSource `json:"configSource,omitempty"` | |
| // ValidateOnly: Optional. If set, this will result in the generation of a | |
| // `google.api.Service` configuration based on the `ConfigSource` provided, but | |
| // the generated config and the sources will NOT be persisted. | |
| ValidateOnly bool `json:"validateOnly,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "ConfigSource") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "ConfigSource") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s SubmitConfigSourceRequest) MarshalJSON() ([]byte, error) { | |
| type NoMethod SubmitConfigSourceRequest | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // SubmitConfigSourceResponse: Response message for SubmitConfigSource method. | |
| type SubmitConfigSourceResponse struct { | |
| // ServiceConfig: The generated service configuration. | |
| ServiceConfig *Service `json:"serviceConfig,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "ServiceConfig") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "ServiceConfig") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s SubmitConfigSourceResponse) MarshalJSON() ([]byte, error) { | |
| type NoMethod SubmitConfigSourceResponse | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // SystemParameter: Define a parameter's name and location. The parameter may | |
| // be passed as either an HTTP header or a URL query parameter, and if both are | |
| // passed the behavior is implementation-dependent. | |
| type SystemParameter struct { | |
| // HttpHeader: Define the HTTP header name to use for the parameter. It is case | |
| // insensitive. | |
| HttpHeader string `json:"httpHeader,omitempty"` | |
| // Name: Define the name of the parameter, such as "api_key" . It is case | |
| // sensitive. | |
| Name string `json:"name,omitempty"` | |
| // UrlQueryParameter: Define the URL query parameter name to use for the | |
| // parameter. It is case sensitive. | |
| UrlQueryParameter string `json:"urlQueryParameter,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "HttpHeader") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "HttpHeader") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s SystemParameter) MarshalJSON() ([]byte, error) { | |
| type NoMethod SystemParameter | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // SystemParameterRule: Define a system parameter rule mapping system parameter | |
| // definitions to methods. | |
| type SystemParameterRule struct { | |
| // Parameters: Define parameters. Multiple names may be defined for a | |
| // parameter. For a given method call, only one of them should be used. If | |
| // multiple names are used the behavior is implementation-dependent. If none of | |
| // the specified names are present the behavior is parameter-dependent. | |
| Parameters []*SystemParameter `json:"parameters,omitempty"` | |
| // Selector: Selects the methods to which this rule applies. Use '*' to | |
| // indicate all methods in all APIs. Refer to selector for syntax details. | |
| Selector string `json:"selector,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Parameters") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Parameters") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s SystemParameterRule) MarshalJSON() ([]byte, error) { | |
| type NoMethod SystemParameterRule | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // SystemParameters: ### System parameter configuration A system parameter is a | |
| // special kind of parameter defined by the API system, not by an individual | |
| // API. It is typically mapped to an HTTP header and/or a URL query parameter. | |
| // This configuration specifies which methods change the names of the system | |
| // parameters. | |
| type SystemParameters struct { | |
| // Rules: Define system parameters. The parameters defined here will override | |
| // the default parameters implemented by the system. If this field is missing | |
| // from the service config, default system parameters will be used. Default | |
| // system parameters and names is implementation-dependent. Example: define api | |
| // key for all methods system_parameters rules: - selector: "*" parameters: - | |
| // name: api_key url_query_parameter: api_key Example: define 2 api key names | |
| // for a specific method. system_parameters rules: - selector: "/ListShelves" | |
| // parameters: - name: api_key http_header: Api-Key1 - name: api_key | |
| // http_header: Api-Key2 **NOTE:** All service configuration rules follow "last | |
| // one wins" order. | |
| Rules []*SystemParameterRule `json:"rules,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Rules") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Rules") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s SystemParameters) MarshalJSON() ([]byte, error) { | |
| type NoMethod SystemParameters | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // TestIamPermissionsRequest: Request message for `TestIamPermissions` method. | |
| type TestIamPermissionsRequest struct { | |
| // Permissions: The set of permissions to check for the `resource`. Permissions | |
| // with wildcards (such as `*` or `storage.*`) are not allowed. For more | |
| // information see IAM Overview | |
| // (https://cloud.google.com/iam/docs/overview#permissions). | |
| Permissions []string `json:"permissions,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Permissions") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Permissions") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s TestIamPermissionsRequest) MarshalJSON() ([]byte, error) { | |
| type NoMethod TestIamPermissionsRequest | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // TestIamPermissionsResponse: Response message for `TestIamPermissions` | |
| // method. | |
| type TestIamPermissionsResponse struct { | |
| // Permissions: A subset of `TestPermissionsRequest.permissions` that the | |
| // caller is allowed. | |
| Permissions []string `json:"permissions,omitempty"` | |
| // ServerResponse contains the HTTP response code and headers from the server. | |
| googleapi.ServerResponse `json:"-"` | |
| // ForceSendFields is a list of field names (e.g. "Permissions") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Permissions") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s TestIamPermissionsResponse) MarshalJSON() ([]byte, error) { | |
| type NoMethod TestIamPermissionsResponse | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // TrafficPercentStrategy: Strategy that specifies how clients of Google | |
| // Service Controller want to send traffic to use different config versions. | |
| // This is generally used by API proxy to split traffic based on your | |
| // configured percentage for each config version. One example of how to | |
| // gradually rollout a new service configuration using this strategy: Day 1 | |
| // Rollout { id: "example.googleapis.com/rollout_20160206" | |
| // traffic_percent_strategy { percentages: { "example.googleapis.com/20160201": | |
| // 70.00 "example.googleapis.com/20160206": 30.00 } } } Day 2 Rollout { id: | |
| // "example.googleapis.com/rollout_20160207" traffic_percent_strategy: { | |
| // percentages: { "example.googleapis.com/20160206": 100.00 } } } | |
| type TrafficPercentStrategy struct { | |
| // Percentages: Maps service configuration IDs to their corresponding traffic | |
| // percentage. Key is the service configuration ID, Value is the traffic | |
| // percentage which must be greater than 0.0 and the sum must equal to 100.0. | |
| Percentages map[string]float64 `json:"percentages,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Percentages") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Percentages") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s TrafficPercentStrategy) MarshalJSON() ([]byte, error) { | |
| type NoMethod TrafficPercentStrategy | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // Type: A protocol buffer message type. New usages of this message as an | |
| // alternative to DescriptorProto are strongly discouraged. This message does | |
| // not reliability preserve all information necessary to model the schema and | |
| // preserve semantics. Instead make use of FileDescriptorSet which preserves | |
| // the necessary information. | |
| type Type struct { | |
| // Edition: The source edition string, only valid when syntax is | |
| // SYNTAX_EDITIONS. | |
| Edition string `json:"edition,omitempty"` | |
| // Fields: The list of fields. | |
| Fields []*Field `json:"fields,omitempty"` | |
| // Name: The fully qualified message name. | |
| Name string `json:"name,omitempty"` | |
| // Oneofs: The list of types appearing in `oneof` definitions in this type. | |
| Oneofs []string `json:"oneofs,omitempty"` | |
| // Options: The protocol buffer options. | |
| Options []*Option `json:"options,omitempty"` | |
| // SourceContext: The source context. | |
| SourceContext *SourceContext `json:"sourceContext,omitempty"` | |
| // Syntax: The source syntax. | |
| // | |
| // Possible values: | |
| // "SYNTAX_PROTO2" - Syntax `proto2`. | |
| // "SYNTAX_PROTO3" - Syntax `proto3`. | |
| // "SYNTAX_EDITIONS" - Syntax `editions`. | |
| Syntax string `json:"syntax,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Edition") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Edition") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s Type) MarshalJSON() ([]byte, error) { | |
| type NoMethod Type | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // UndeleteServiceResponse: Response message for UndeleteService method. | |
| type UndeleteServiceResponse struct { | |
| // Service: Revived service resource. | |
| Service *ManagedService `json:"service,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Service") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Service") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s UndeleteServiceResponse) MarshalJSON() ([]byte, error) { | |
| type NoMethod UndeleteServiceResponse | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // Usage: Configuration controlling usage of a service. | |
| type Usage struct { | |
| // ProducerNotificationChannel: The full resource name of a channel used for | |
| // sending notifications to the service producer. Google Service Management | |
| // currently only supports Google Cloud Pub/Sub | |
| // (https://cloud.google.com/pubsub) as a notification channel. To use Google | |
| // Cloud Pub/Sub as the channel, this must be the name of a Cloud Pub/Sub topic | |
| // that uses the Cloud Pub/Sub topic name format documented in | |
| // https://cloud.google.com/pubsub/docs/overview. | |
| ProducerNotificationChannel string `json:"producerNotificationChannel,omitempty"` | |
| // Requirements: Requirements that must be satisfied before a consumer project | |
| // can use the service. Each requirement is of the form /; for example | |
| // 'serviceusage.googleapis.com/billing-enabled'. For Google APIs, a Terms of | |
| // Service requirement must be included here. Google Cloud APIs must include | |
| // "serviceusage.googleapis.com/tos/cloud". Other Google APIs should include | |
| // "serviceusage.googleapis.com/tos/universal". Additional ToS can be included | |
| // based on the business needs. | |
| Requirements []string `json:"requirements,omitempty"` | |
| // Rules: A list of usage rules that apply to individual API methods. **NOTE:** | |
| // All service configuration rules follow "last one wins" order. | |
| Rules []*UsageRule `json:"rules,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. | |
| // "ProducerNotificationChannel") to unconditionally include in API requests. | |
| // By default, fields with empty or default values are omitted from API | |
| // requests. See https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields | |
| // for more details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "ProducerNotificationChannel") to | |
| // include in API requests with the JSON null value. By default, fields with | |
| // empty values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s Usage) MarshalJSON() ([]byte, error) { | |
| type NoMethod Usage | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // UsageRule: Usage configuration rules for the service. | |
| type UsageRule struct { | |
| // AllowUnregisteredCalls: Use this rule to configure unregistered calls for | |
| // the service. Unregistered calls are calls that do not contain consumer | |
| // project identity. (Example: calls that do not contain an API key). WARNING: | |
| // By default, API methods do not allow unregistered calls, and each method | |
| // call must be identified by a consumer project identity. | |
| AllowUnregisteredCalls bool `json:"allowUnregisteredCalls,omitempty"` | |
| // Selector: Selects the methods to which this rule applies. Use '*' to | |
| // indicate all methods in all APIs. Refer to selector for syntax details. | |
| Selector string `json:"selector,omitempty"` | |
| // SkipServiceControl: If true, the selected method should skip service control | |
| // and the control plane features, such as quota and billing, will not be | |
| // available. This flag is used by Google Cloud Endpoints to bypass checks for | |
| // internal methods, such as service health check methods. | |
| SkipServiceControl bool `json:"skipServiceControl,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "AllowUnregisteredCalls") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "AllowUnregisteredCalls") to | |
| // include in API requests with the JSON null value. By default, fields with | |
| // empty values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s UsageRule) MarshalJSON() ([]byte, error) { | |
| type NoMethod UsageRule | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| type OperationsGetCall struct { | |
| s *APIService | |
| name string | |
| urlParams_ gensupport.URLParams | |
| ifNoneMatch_ string | |
| ctx_ context.Context | |
| header_ http.Header | |
| } | |
| // Get: Gets the latest state of a long-running operation. Clients can use this | |
| // method to poll the operation result at intervals as recommended by the API | |
| // service. | |
| // | |
| // - name: The name of the operation resource. | |
| func (r *OperationsService) Get(name string) *OperationsGetCall { | |
| c := &OperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} | |
| c.name = name | |
| return c | |
| } | |
| // Fields allows partial responses to be retrieved. See | |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more | |
| // details. | |
| func (c *OperationsGetCall) Fields(s ...googleapi.Field) *OperationsGetCall { | |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) | |
| return c | |
| } | |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the | |
| // object's ETag matches the given value. This is useful for getting updates | |
| // only after the object has changed since the last request. | |
| func (c *OperationsGetCall) IfNoneMatch(entityTag string) *OperationsGetCall { | |
| c.ifNoneMatch_ = entityTag | |
| return c | |
| } | |
| // Context sets the context to be used in this call's Do method. | |
| func (c *OperationsGetCall) Context(ctx context.Context) *OperationsGetCall { | |
| c.ctx_ = ctx | |
| return c | |
| } | |
| // Header returns a http.Header that can be modified by the caller to add | |
| // headers to the request. | |
| func (c *OperationsGetCall) Header() http.Header { | |
| if c.header_ == nil { | |
| c.header_ = make(http.Header) | |
| } | |
| return c.header_ | |
| } | |
| func (c *OperationsGetCall) doRequest(alt string) (*http.Response, error) { | |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) | |
| if c.ifNoneMatch_ != "" { | |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | |
| } | |
| c.urlParams_.Set("alt", alt) | |
| c.urlParams_.Set("prettyPrint", "false") | |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") | |
| urls += "?" + c.urlParams_.Encode() | |
| req, err := http.NewRequest("GET", urls, nil) | |
| if err != nil { | |
| return nil, err | |
| } | |
| req.Header = reqHeaders | |
| googleapi.Expand(req.URL, map[string]string{ | |
| "name": c.name, | |
| }) | |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "servicemanagement.operations.get", "request", internallog.HTTPRequest(req, nil)) | |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) | |
| } | |
| // Do executes the "servicemanagement.operations.get" call. | |
| // Any non-2xx status code is an error. Response headers are in either | |
| // *Operation.ServerResponse.Header or (if a response was returned at all) in | |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check | |
| // whether the returned error was because http.StatusNotModified was returned. | |
| func (c *OperationsGetCall) Do(opts ...googleapi.CallOption) (*Operation, error) { | |
| gensupport.SetOptions(c.urlParams_, opts...) | |
| res, err := c.doRequest("json") | |
| if res != nil && res.StatusCode == http.StatusNotModified { | |
| if res.Body != nil { | |
| res.Body.Close() | |
| } | |
| return nil, gensupport.WrapError(&googleapi.Error{ | |
| Code: res.StatusCode, | |
| Header: res.Header, | |
| }) | |
| } | |
| if err != nil { | |
| return nil, err | |
| } | |
| defer googleapi.CloseBody(res) | |
| if err := googleapi.CheckResponse(res); err != nil { | |
| return nil, gensupport.WrapError(err) | |
| } | |
| ret := &Operation{ | |
| ServerResponse: googleapi.ServerResponse{ | |
| Header: res.Header, | |
| HTTPStatusCode: res.StatusCode, | |
| }, | |
| } | |
| target := &ret | |
| b, err := gensupport.DecodeResponseBytes(target, res) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "servicemanagement.operations.get", "response", internallog.HTTPResponse(res, b)) | |
| return ret, nil | |
| } | |
| type OperationsListCall struct { | |
| s *APIService | |
| urlParams_ gensupport.URLParams | |
| ifNoneMatch_ string | |
| ctx_ context.Context | |
| header_ http.Header | |
| } | |
| // List: Lists service operations that match the specified filter in the | |
| // request. | |
| func (r *OperationsService) List() *OperationsListCall { | |
| c := &OperationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} | |
| return c | |
| } | |
| // Filter sets the optional parameter "filter": A string for filtering | |
| // Operations. The following filter fields are supported: * serviceName: | |
| // Required. Only `=` operator is allowed. * startTime: The time this job was | |
| // started, in ISO 8601 format. Allowed operators are `>=`, `>`, `<=`, and `<`. | |
| // * status: Can be `done`, `in_progress`, or `failed`. Allowed operators are | |
| // `=`, and `!=`. Filter expression supports conjunction (AND) and disjunction | |
| // (OR) logical operators. However, the serviceName restriction must be at the | |
| // top-level and can only be combined with other restrictions via the AND | |
| // logical operator. Examples: * `serviceName={some-service}.googleapis.com` * | |
| // `serviceName={some-service}.googleapis.com AND startTime>="2017-02-01" * | |
| // `serviceName={some-service}.googleapis.com AND status=done` * | |
| // `serviceName={some-service}.googleapis.com AND (status=done OR | |
| // startTime>="2017-02-01")` | |
| func (c *OperationsListCall) Filter(filter string) *OperationsListCall { | |
| c.urlParams_.Set("filter", filter) | |
| return c | |
| } | |
| // Name sets the optional parameter "name": Not used. | |
| func (c *OperationsListCall) Name(name string) *OperationsListCall { | |
| c.urlParams_.Set("name", name) | |
| return c | |
| } | |
| // PageSize sets the optional parameter "pageSize": The maximum number of | |
| // operations to return. If unspecified, defaults to 50. The maximum value is | |
| // 100. | |
| func (c *OperationsListCall) PageSize(pageSize int64) *OperationsListCall { | |
| c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) | |
| return c | |
| } | |
| // PageToken sets the optional parameter "pageToken": The standard list page | |
| // token. | |
| func (c *OperationsListCall) PageToken(pageToken string) *OperationsListCall { | |
| c.urlParams_.Set("pageToken", pageToken) | |
| return c | |
| } | |
| // ReturnPartialSuccess sets the optional parameter "returnPartialSuccess": | |
| // When set to `true`, operations that are reachable are returned as normal, | |
| // and those that are unreachable are returned in the | |
| // ListOperationsResponse.unreachable field. This can only be `true` when | |
| // reading across collections. For example, when `parent` is set to | |
| // "projects/example/locations/-". This field is not supported by default and | |
| // will result in an `UNIMPLEMENTED` error if set unless explicitly documented | |
| // otherwise in service or product specific documentation. | |
| func (c *OperationsListCall) ReturnPartialSuccess(returnPartialSuccess bool) *OperationsListCall { | |
| c.urlParams_.Set("returnPartialSuccess", fmt.Sprint(returnPartialSuccess)) | |
| return c | |
| } | |
| // Fields allows partial responses to be retrieved. See | |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more | |
| // details. | |
| func (c *OperationsListCall) Fields(s ...googleapi.Field) *OperationsListCall { | |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) | |
| return c | |
| } | |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the | |
| // object's ETag matches the given value. This is useful for getting updates | |
| // only after the object has changed since the last request. | |
| func (c *OperationsListCall) IfNoneMatch(entityTag string) *OperationsListCall { | |
| c.ifNoneMatch_ = entityTag | |
| return c | |
| } | |
| // Context sets the context to be used in this call's Do method. | |
| func (c *OperationsListCall) Context(ctx context.Context) *OperationsListCall { | |
| c.ctx_ = ctx | |
| return c | |
| } | |
| // Header returns a http.Header that can be modified by the caller to add | |
| // headers to the request. | |
| func (c *OperationsListCall) Header() http.Header { | |
| if c.header_ == nil { | |
| c.header_ = make(http.Header) | |
| } | |
| return c.header_ | |
| } | |
| func (c *OperationsListCall) doRequest(alt string) (*http.Response, error) { | |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) | |
| if c.ifNoneMatch_ != "" { | |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | |
| } | |
| c.urlParams_.Set("alt", alt) | |
| c.urlParams_.Set("prettyPrint", "false") | |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/operations") | |
| urls += "?" + c.urlParams_.Encode() | |
| req, err := http.NewRequest("GET", urls, nil) | |
| if err != nil { | |
| return nil, err | |
| } | |
| req.Header = reqHeaders | |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "servicemanagement.operations.list", "request", internallog.HTTPRequest(req, nil)) | |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) | |
| } | |
| // Do executes the "servicemanagement.operations.list" call. | |
| // Any non-2xx status code is an error. Response headers are in either | |
| // *ListOperationsResponse.ServerResponse.Header or (if a response was returned | |
| // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to | |
| // check whether the returned error was because http.StatusNotModified was | |
| // returned. | |
| func (c *OperationsListCall) Do(opts ...googleapi.CallOption) (*ListOperationsResponse, error) { | |
| gensupport.SetOptions(c.urlParams_, opts...) | |
| res, err := c.doRequest("json") | |
| if res != nil && res.StatusCode == http.StatusNotModified { | |
| if res.Body != nil { | |
| res.Body.Close() | |
| } | |
| return nil, gensupport.WrapError(&googleapi.Error{ | |
| Code: res.StatusCode, | |
| Header: res.Header, | |
| }) | |
| } | |
| if err != nil { | |
| return nil, err | |
| } | |
| defer googleapi.CloseBody(res) | |
| if err := googleapi.CheckResponse(res); err != nil { | |
| return nil, gensupport.WrapError(err) | |
| } | |
| ret := &ListOperationsResponse{ | |
| ServerResponse: googleapi.ServerResponse{ | |
| Header: res.Header, | |
| HTTPStatusCode: res.StatusCode, | |
| }, | |
| } | |
| target := &ret | |
| b, err := gensupport.DecodeResponseBytes(target, res) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "servicemanagement.operations.list", "response", internallog.HTTPResponse(res, b)) | |
| return ret, nil | |
| } | |
| // Pages invokes f for each page of results. | |
| // A non-nil error returned from f will halt the iteration. | |
| // The provided context supersedes any context provided to the Context method. | |
| func (c *OperationsListCall) Pages(ctx context.Context, f func(*ListOperationsResponse) error) error { | |
| c.ctx_ = ctx | |
| defer c.PageToken(c.urlParams_.Get("pageToken")) | |
| for { | |
| x, err := c.Do() | |
| if err != nil { | |
| return err | |
| } | |
| if err := f(x); err != nil { | |
| return err | |
| } | |
| if x.NextPageToken == "" { | |
| return nil | |
| } | |
| c.PageToken(x.NextPageToken) | |
| } | |
| } | |
| type ServicesCreateCall struct { | |
| s *APIService | |
| managedservice *ManagedService | |
| urlParams_ gensupport.URLParams | |
| ctx_ context.Context | |
| header_ http.Header | |
| } | |
| // Create: Creates a new managed service. A managed service is immutable, and | |
| // is subject to mandatory 30-day data retention. You cannot move a service or | |
| // recreate it within 30 days after deletion. One producer project can own no | |
| // more than 500 services. For security and reliability purposes, a production | |
| // service should be hosted in a dedicated producer project. Operation | |
| func (r *ServicesService) Create(managedservice *ManagedService) *ServicesCreateCall { | |
| c := &ServicesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} | |
| c.managedservice = managedservice | |
| return c | |
| } | |
| // Fields allows partial responses to be retrieved. See | |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more | |
| // details. | |
| func (c *ServicesCreateCall) Fields(s ...googleapi.Field) *ServicesCreateCall { | |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) | |
| return c | |
| } | |
| // Context sets the context to be used in this call's Do method. | |
| func (c *ServicesCreateCall) Context(ctx context.Context) *ServicesCreateCall { | |
| c.ctx_ = ctx | |
| return c | |
| } | |
| // Header returns a http.Header that can be modified by the caller to add | |
| // headers to the request. | |
| func (c *ServicesCreateCall) Header() http.Header { | |
| if c.header_ == nil { | |
| c.header_ = make(http.Header) | |
| } | |
| return c.header_ | |
| } | |
| func (c *ServicesCreateCall) doRequest(alt string) (*http.Response, error) { | |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) | |
| body, err := googleapi.WithoutDataWrapper.JSONBuffer(c.managedservice) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.urlParams_.Set("alt", alt) | |
| c.urlParams_.Set("prettyPrint", "false") | |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/services") | |
| urls += "?" + c.urlParams_.Encode() | |
| req, err := http.NewRequest("POST", urls, body) | |
| if err != nil { | |
| return nil, err | |
| } | |
| req.Header = reqHeaders | |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "servicemanagement.services.create", "request", internallog.HTTPRequest(req, body.Bytes())) | |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) | |
| } | |
| // Do executes the "servicemanagement.services.create" call. | |
| // Any non-2xx status code is an error. Response headers are in either | |
| // *Operation.ServerResponse.Header or (if a response was returned at all) in | |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check | |
| // whether the returned error was because http.StatusNotModified was returned. | |
| func (c *ServicesCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) { | |
| gensupport.SetOptions(c.urlParams_, opts...) | |
| res, err := c.doRequest("json") | |
| if res != nil && res.StatusCode == http.StatusNotModified { | |
| if res.Body != nil { | |
| res.Body.Close() | |
| } | |
| return nil, gensupport.WrapError(&googleapi.Error{ | |
| Code: res.StatusCode, | |
| Header: res.Header, | |
| }) | |
| } | |
| if err != nil { | |
| return nil, err | |
| } | |
| defer googleapi.CloseBody(res) | |
| if err := googleapi.CheckResponse(res); err != nil { | |
| return nil, gensupport.WrapError(err) | |
| } | |
| ret := &Operation{ | |
| ServerResponse: googleapi.ServerResponse{ | |
| Header: res.Header, | |
| HTTPStatusCode: res.StatusCode, | |
| }, | |
| } | |
| target := &ret | |
| b, err := gensupport.DecodeResponseBytes(target, res) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "servicemanagement.services.create", "response", internallog.HTTPResponse(res, b)) | |
| return ret, nil | |
| } | |
| type ServicesDeleteCall struct { | |
| s *APIService | |
| serviceName string | |
| urlParams_ gensupport.URLParams | |
| ctx_ context.Context | |
| header_ http.Header | |
| } | |
| // Delete: Deletes a managed service. This method will change the service to | |
| // the `Soft-Delete` state for 30 days. Within this period, service producers | |
| // may call UndeleteService to restore the service. After 30 days, the service | |
| // will be permanently deleted. Operation | |
| // | |
| // - serviceName: The name of the service. See the overview | |
| // (https://cloud.google.com/service-management/overview) for naming | |
| // requirements. For example: `example.googleapis.com`. | |
| func (r *ServicesService) Delete(serviceName string) *ServicesDeleteCall { | |
| c := &ServicesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} | |
| c.serviceName = serviceName | |
| return c | |
| } | |
| // Fields allows partial responses to be retrieved. See | |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more | |
| // details. | |
| func (c *ServicesDeleteCall) Fields(s ...googleapi.Field) *ServicesDeleteCall { | |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) | |
| return c | |
| } | |
| // Context sets the context to be used in this call's Do method. | |
| func (c *ServicesDeleteCall) Context(ctx context.Context) *ServicesDeleteCall { | |
| c.ctx_ = ctx | |
| return c | |
| } | |
| // Header returns a http.Header that can be modified by the caller to add | |
| // headers to the request. | |
| func (c *ServicesDeleteCall) Header() http.Header { | |
| if c.header_ == nil { | |
| c.header_ = make(http.Header) | |
| } | |
| return c.header_ | |
| } | |
| func (c *ServicesDeleteCall) doRequest(alt string) (*http.Response, error) { | |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) | |
| c.urlParams_.Set("alt", alt) | |
| c.urlParams_.Set("prettyPrint", "false") | |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/services/{serviceName}") | |
| urls += "?" + c.urlParams_.Encode() | |
| req, err := http.NewRequest("DELETE", urls, nil) | |
| if err != nil { | |
| return nil, err | |
| } | |
| req.Header = reqHeaders | |
| googleapi.Expand(req.URL, map[string]string{ | |
| "serviceName": c.serviceName, | |
| }) | |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "servicemanagement.services.delete", "request", internallog.HTTPRequest(req, nil)) | |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) | |
| } | |
| // Do executes the "servicemanagement.services.delete" call. | |
| // Any non-2xx status code is an error. Response headers are in either | |
| // *Operation.ServerResponse.Header or (if a response was returned at all) in | |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check | |
| // whether the returned error was because http.StatusNotModified was returned. | |
| func (c *ServicesDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) { | |
| gensupport.SetOptions(c.urlParams_, opts...) | |
| res, err := c.doRequest("json") | |
| if res != nil && res.StatusCode == http.StatusNotModified { | |
| if res.Body != nil { | |
| res.Body.Close() | |
| } | |
| return nil, gensupport.WrapError(&googleapi.Error{ | |
| Code: res.StatusCode, | |
| Header: res.Header, | |
| }) | |
| } | |
| if err != nil { | |
| return nil, err | |
| } | |
| defer googleapi.CloseBody(res) | |
| if err := googleapi.CheckResponse(res); err != nil { | |
| return nil, gensupport.WrapError(err) | |
| } | |
| ret := &Operation{ | |
| ServerResponse: googleapi.ServerResponse{ | |
| Header: res.Header, | |
| HTTPStatusCode: res.StatusCode, | |
| }, | |
| } | |
| target := &ret | |
| b, err := gensupport.DecodeResponseBytes(target, res) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "servicemanagement.services.delete", "response", internallog.HTTPResponse(res, b)) | |
| return ret, nil | |
| } | |
| type ServicesGenerateConfigReportCall struct { | |
| s *APIService | |
| generateconfigreportrequest *GenerateConfigReportRequest | |
| urlParams_ gensupport.URLParams | |
| ctx_ context.Context | |
| header_ http.Header | |
| } | |
| // GenerateConfigReport: Generates and returns a report (errors, warnings and | |
| // changes from existing configurations) associated with | |
| // GenerateConfigReportRequest.new_value If | |
| // GenerateConfigReportRequest.old_value is specified, | |
| // GenerateConfigReportRequest will contain a single ChangeReport based on the | |
| // comparison between GenerateConfigReportRequest.new_value and | |
| // GenerateConfigReportRequest.old_value. If | |
| // GenerateConfigReportRequest.old_value is not specified, this method will | |
| // compare GenerateConfigReportRequest.new_value with the last pushed service | |
| // configuration. | |
| func (r *ServicesService) GenerateConfigReport(generateconfigreportrequest *GenerateConfigReportRequest) *ServicesGenerateConfigReportCall { | |
| c := &ServicesGenerateConfigReportCall{s: r.s, urlParams_: make(gensupport.URLParams)} | |
| c.generateconfigreportrequest = generateconfigreportrequest | |
| return c | |
| } | |
| // Fields allows partial responses to be retrieved. See | |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more | |
| // details. | |
| func (c *ServicesGenerateConfigReportCall) Fields(s ...googleapi.Field) *ServicesGenerateConfigReportCall { | |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) | |
| return c | |
| } | |
| // Context sets the context to be used in this call's Do method. | |
| func (c *ServicesGenerateConfigReportCall) Context(ctx context.Context) *ServicesGenerateConfigReportCall { | |
| c.ctx_ = ctx | |
| return c | |
| } | |
| // Header returns a http.Header that can be modified by the caller to add | |
| // headers to the request. | |
| func (c *ServicesGenerateConfigReportCall) Header() http.Header { | |
| if c.header_ == nil { | |
| c.header_ = make(http.Header) | |
| } | |
| return c.header_ | |
| } | |
| func (c *ServicesGenerateConfigReportCall) doRequest(alt string) (*http.Response, error) { | |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) | |
| body, err := googleapi.WithoutDataWrapper.JSONBuffer(c.generateconfigreportrequest) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.urlParams_.Set("alt", alt) | |
| c.urlParams_.Set("prettyPrint", "false") | |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/services:generateConfigReport") | |
| urls += "?" + c.urlParams_.Encode() | |
| req, err := http.NewRequest("POST", urls, body) | |
| if err != nil { | |
| return nil, err | |
| } | |
| req.Header = reqHeaders | |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "servicemanagement.services.generateConfigReport", "request", internallog.HTTPRequest(req, body.Bytes())) | |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) | |
| } | |
| // Do executes the "servicemanagement.services.generateConfigReport" call. | |
| // Any non-2xx status code is an error. Response headers are in either | |
| // *GenerateConfigReportResponse.ServerResponse.Header or (if a response was | |
| // returned at all) in error.(*googleapi.Error).Header. Use | |
| // googleapi.IsNotModified to check whether the returned error was because | |
| // http.StatusNotModified was returned. | |
| func (c *ServicesGenerateConfigReportCall) Do(opts ...googleapi.CallOption) (*GenerateConfigReportResponse, error) { | |
| gensupport.SetOptions(c.urlParams_, opts...) | |
| res, err := c.doRequest("json") | |
| if res != nil && res.StatusCode == http.StatusNotModified { | |
| if res.Body != nil { | |
| res.Body.Close() | |
| } | |
| return nil, gensupport.WrapError(&googleapi.Error{ | |
| Code: res.StatusCode, | |
| Header: res.Header, | |
| }) | |
| } | |
| if err != nil { | |
| return nil, err | |
| } | |
| defer googleapi.CloseBody(res) | |
| if err := googleapi.CheckResponse(res); err != nil { | |
| return nil, gensupport.WrapError(err) | |
| } | |
| ret := &GenerateConfigReportResponse{ | |
| ServerResponse: googleapi.ServerResponse{ | |
| Header: res.Header, | |
| HTTPStatusCode: res.StatusCode, | |
| }, | |
| } | |
| target := &ret | |
| b, err := gensupport.DecodeResponseBytes(target, res) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "servicemanagement.services.generateConfigReport", "response", internallog.HTTPResponse(res, b)) | |
| return ret, nil | |
| } | |
| type ServicesGetCall struct { | |
| s *APIService | |
| serviceName string | |
| urlParams_ gensupport.URLParams | |
| ifNoneMatch_ string | |
| ctx_ context.Context | |
| header_ http.Header | |
| } | |
| // Get: Gets a managed service. Authentication is required unless the service | |
| // is public. | |
| // | |
| // - serviceName: The name of the service. See the `ServiceManager` overview | |
| // for naming requirements. For example: `example.googleapis.com`. | |
| func (r *ServicesService) Get(serviceName string) *ServicesGetCall { | |
| c := &ServicesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} | |
| c.serviceName = serviceName | |
| return c | |
| } | |
| // Fields allows partial responses to be retrieved. See | |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more | |
| // details. | |
| func (c *ServicesGetCall) Fields(s ...googleapi.Field) *ServicesGetCall { | |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) | |
| return c | |
| } | |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the | |
| // object's ETag matches the given value. This is useful for getting updates | |
| // only after the object has changed since the last request. | |
| func (c *ServicesGetCall) IfNoneMatch(entityTag string) *ServicesGetCall { | |
| c.ifNoneMatch_ = entityTag | |
| return c | |
| } | |
| // Context sets the context to be used in this call's Do method. | |
| func (c *ServicesGetCall) Context(ctx context.Context) *ServicesGetCall { | |
| c.ctx_ = ctx | |
| return c | |
| } | |
| // Header returns a http.Header that can be modified by the caller to add | |
| // headers to the request. | |
| func (c *ServicesGetCall) Header() http.Header { | |
| if c.header_ == nil { | |
| c.header_ = make(http.Header) | |
| } | |
| return c.header_ | |
| } | |
| func (c *ServicesGetCall) doRequest(alt string) (*http.Response, error) { | |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) | |
| if c.ifNoneMatch_ != "" { | |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | |
| } | |
| c.urlParams_.Set("alt", alt) | |
| c.urlParams_.Set("prettyPrint", "false") | |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/services/{serviceName}") | |
| urls += "?" + c.urlParams_.Encode() | |
| req, err := http.NewRequest("GET", urls, nil) | |
| if err != nil { | |
| return nil, err | |
| } | |
| req.Header = reqHeaders | |
| googleapi.Expand(req.URL, map[string]string{ | |
| "serviceName": c.serviceName, | |
| }) | |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "servicemanagement.services.get", "request", internallog.HTTPRequest(req, nil)) | |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) | |
| } | |
| // Do executes the "servicemanagement.services.get" call. | |
| // Any non-2xx status code is an error. Response headers are in either | |
| // *ManagedService.ServerResponse.Header or (if a response was returned at all) | |
| // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check | |
| // whether the returned error was because http.StatusNotModified was returned. | |
| func (c *ServicesGetCall) Do(opts ...googleapi.CallOption) (*ManagedService, error) { | |
| gensupport.SetOptions(c.urlParams_, opts...) | |
| res, err := c.doRequest("json") | |
| if res != nil && res.StatusCode == http.StatusNotModified { | |
| if res.Body != nil { | |
| res.Body.Close() | |
| } | |
| return nil, gensupport.WrapError(&googleapi.Error{ | |
| Code: res.StatusCode, | |
| Header: res.Header, | |
| }) | |
| } | |
| if err != nil { | |
| return nil, err | |
| } | |
| defer googleapi.CloseBody(res) | |
| if err := googleapi.CheckResponse(res); err != nil { | |
| return nil, gensupport.WrapError(err) | |
| } | |
| ret := &ManagedService{ | |
| ServerResponse: googleapi.ServerResponse{ | |
| Header: res.Header, | |
| HTTPStatusCode: res.StatusCode, | |
| }, | |
| } | |
| target := &ret | |
| b, err := gensupport.DecodeResponseBytes(target, res) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "servicemanagement.services.get", "response", internallog.HTTPResponse(res, b)) | |
| return ret, nil | |
| } | |
| type ServicesGetConfigCall struct { | |
| s *APIService | |
| serviceName string | |
| urlParams_ gensupport.URLParams | |
| ifNoneMatch_ string | |
| ctx_ context.Context | |
| header_ http.Header | |
| } | |
| // GetConfig: Gets a service configuration (version) for a managed service. | |
| // | |
| // - serviceName: The name of the service. See the overview | |
| // (https://cloud.google.com/service-management/overview) for naming | |
| // requirements. For example: `example.googleapis.com`. | |
| func (r *ServicesService) GetConfig(serviceName string) *ServicesGetConfigCall { | |
| c := &ServicesGetConfigCall{s: r.s, urlParams_: make(gensupport.URLParams)} | |
| c.serviceName = serviceName | |
| return c | |
| } | |
| // ConfigId sets the optional parameter "configId": Required. The id of the | |
| // service configuration resource. This field must be specified for the server | |
| // to return all fields, including `SourceInfo`. | |
| func (c *ServicesGetConfigCall) ConfigId(configId string) *ServicesGetConfigCall { | |
| c.urlParams_.Set("configId", configId) | |
| return c | |
| } | |
| // View sets the optional parameter "view": Specifies which parts of the | |
| // Service Config should be returned in the response. | |
| // | |
| // Possible values: | |
| // | |
| // "BASIC" - Server response includes all fields except SourceInfo. | |
| // "FULL" - Server response includes all fields including SourceInfo. | |
| // | |
| // SourceFiles are of type 'google.api.servicemanagement.v1.ConfigFile' and are | |
| // only available for configs created using the SubmitConfigSource method. | |
| func (c *ServicesGetConfigCall) View(view string) *ServicesGetConfigCall { | |
| c.urlParams_.Set("view", view) | |
| return c | |
| } | |
| // Fields allows partial responses to be retrieved. See | |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more | |
| // details. | |
| func (c *ServicesGetConfigCall) Fields(s ...googleapi.Field) *ServicesGetConfigCall { | |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) | |
| return c | |
| } | |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the | |
| // object's ETag matches the given value. This is useful for getting updates | |
| // only after the object has changed since the last request. | |
| func (c *ServicesGetConfigCall) IfNoneMatch(entityTag string) *ServicesGetConfigCall { | |
| c.ifNoneMatch_ = entityTag | |
| return c | |
| } | |
| // Context sets the context to be used in this call's Do method. | |
| func (c *ServicesGetConfigCall) Context(ctx context.Context) *ServicesGetConfigCall { | |
| c.ctx_ = ctx | |
| return c | |
| } | |
| // Header returns a http.Header that can be modified by the caller to add | |
| // headers to the request. | |
| func (c *ServicesGetConfigCall) Header() http.Header { | |
| if c.header_ == nil { | |
| c.header_ = make(http.Header) | |
| } | |
| return c.header_ | |
| } | |
| func (c *ServicesGetConfigCall) doRequest(alt string) (*http.Response, error) { | |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) | |
| if c.ifNoneMatch_ != "" { | |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | |
| } | |
| c.urlParams_.Set("alt", alt) | |
| c.urlParams_.Set("prettyPrint", "false") | |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/services/{serviceName}/config") | |
| urls += "?" + c.urlParams_.Encode() | |
| req, err := http.NewRequest("GET", urls, nil) | |
| if err != nil { | |
| return nil, err | |
| } | |
| req.Header = reqHeaders | |
| googleapi.Expand(req.URL, map[string]string{ | |
| "serviceName": c.serviceName, | |
| }) | |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "servicemanagement.services.getConfig", "request", internallog.HTTPRequest(req, nil)) | |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) | |
| } | |
| // Do executes the "servicemanagement.services.getConfig" call. | |
| // Any non-2xx status code is an error. Response headers are in either | |
| // *Service.ServerResponse.Header or (if a response was returned at all) in | |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check | |
| // whether the returned error was because http.StatusNotModified was returned. | |
| func (c *ServicesGetConfigCall) Do(opts ...googleapi.CallOption) (*Service, error) { | |
| gensupport.SetOptions(c.urlParams_, opts...) | |
| res, err := c.doRequest("json") | |
| if res != nil && res.StatusCode == http.StatusNotModified { | |
| if res.Body != nil { | |
| res.Body.Close() | |
| } | |
| return nil, gensupport.WrapError(&googleapi.Error{ | |
| Code: res.StatusCode, | |
| Header: res.Header, | |
| }) | |
| } | |
| if err != nil { | |
| return nil, err | |
| } | |
| defer googleapi.CloseBody(res) | |
| if err := googleapi.CheckResponse(res); err != nil { | |
| return nil, gensupport.WrapError(err) | |
| } | |
| ret := &Service{ | |
| ServerResponse: googleapi.ServerResponse{ | |
| Header: res.Header, | |
| HTTPStatusCode: res.StatusCode, | |
| }, | |
| } | |
| target := &ret | |
| b, err := gensupport.DecodeResponseBytes(target, res) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "servicemanagement.services.getConfig", "response", internallog.HTTPResponse(res, b)) | |
| return ret, nil | |
| } | |
| type ServicesGetIamPolicyCall struct { | |
| s *APIService | |
| resource string | |
| getiampolicyrequest *GetIamPolicyRequest | |
| urlParams_ gensupport.URLParams | |
| ctx_ context.Context | |
| header_ http.Header | |
| } | |
| // GetIamPolicy: Gets the access control policy for a resource. Returns an | |
| // empty policy if the resource exists and does not have a policy set. | |
| // | |
| // - resource: REQUIRED: The resource for which the policy is being requested. | |
| // See Resource names (https://cloud.google.com/apis/design/resource_names) | |
| // for the appropriate value for this field. | |
| func (r *ServicesService) GetIamPolicy(resource string, getiampolicyrequest *GetIamPolicyRequest) *ServicesGetIamPolicyCall { | |
| c := &ServicesGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} | |
| c.resource = resource | |
| c.getiampolicyrequest = getiampolicyrequest | |
| return c | |
| } | |
| // Fields allows partial responses to be retrieved. See | |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more | |
| // details. | |
| func (c *ServicesGetIamPolicyCall) Fields(s ...googleapi.Field) *ServicesGetIamPolicyCall { | |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) | |
| return c | |
| } | |
| // Context sets the context to be used in this call's Do method. | |
| func (c *ServicesGetIamPolicyCall) Context(ctx context.Context) *ServicesGetIamPolicyCall { | |
| c.ctx_ = ctx | |
| return c | |
| } | |
| // Header returns a http.Header that can be modified by the caller to add | |
| // headers to the request. | |
| func (c *ServicesGetIamPolicyCall) Header() http.Header { | |
| if c.header_ == nil { | |
| c.header_ = make(http.Header) | |
| } | |
| return c.header_ | |
| } | |
| func (c *ServicesGetIamPolicyCall) doRequest(alt string) (*http.Response, error) { | |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) | |
| body, err := googleapi.WithoutDataWrapper.JSONBuffer(c.getiampolicyrequest) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.urlParams_.Set("alt", alt) | |
| c.urlParams_.Set("prettyPrint", "false") | |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:getIamPolicy") | |
| urls += "?" + c.urlParams_.Encode() | |
| req, err := http.NewRequest("POST", urls, body) | |
| if err != nil { | |
| return nil, err | |
| } | |
| req.Header = reqHeaders | |
| googleapi.Expand(req.URL, map[string]string{ | |
| "resource": c.resource, | |
| }) | |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "servicemanagement.services.getIamPolicy", "request", internallog.HTTPRequest(req, body.Bytes())) | |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) | |
| } | |
| // Do executes the "servicemanagement.services.getIamPolicy" call. | |
| // Any non-2xx status code is an error. Response headers are in either | |
| // *Policy.ServerResponse.Header or (if a response was returned at all) in | |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check | |
| // whether the returned error was because http.StatusNotModified was returned. | |
| func (c *ServicesGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { | |
| gensupport.SetOptions(c.urlParams_, opts...) | |
| res, err := c.doRequest("json") | |
| if res != nil && res.StatusCode == http.StatusNotModified { | |
| if res.Body != nil { | |
| res.Body.Close() | |
| } | |
| return nil, gensupport.WrapError(&googleapi.Error{ | |
| Code: res.StatusCode, | |
| Header: res.Header, | |
| }) | |
| } | |
| if err != nil { | |
| return nil, err | |
| } | |
| defer googleapi.CloseBody(res) | |
| if err := googleapi.CheckResponse(res); err != nil { | |
| return nil, gensupport.WrapError(err) | |
| } | |
| ret := &Policy{ | |
| ServerResponse: googleapi.ServerResponse{ | |
| Header: res.Header, | |
| HTTPStatusCode: res.StatusCode, | |
| }, | |
| } | |
| target := &ret | |
| b, err := gensupport.DecodeResponseBytes(target, res) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "servicemanagement.services.getIamPolicy", "response", internallog.HTTPResponse(res, b)) | |
| return ret, nil | |
| } | |
| type ServicesListCall struct { | |
| s *APIService | |
| urlParams_ gensupport.URLParams | |
| ifNoneMatch_ string | |
| ctx_ context.Context | |
| header_ http.Header | |
| } | |
| // List: Lists managed services. Returns all public services. For authenticated | |
| // users, also returns all services the calling user has | |
| // "servicemanagement.services.get" permission for. | |
| func (r *ServicesService) List() *ServicesListCall { | |
| c := &ServicesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} | |
| return c | |
| } | |
| // ConsumerId sets the optional parameter "consumerId": Include services | |
| // consumed by the specified consumer. The Google Service Management | |
| // implementation accepts the following forms: - project: | |
| func (c *ServicesListCall) ConsumerId(consumerId string) *ServicesListCall { | |
| c.urlParams_.Set("consumerId", consumerId) | |
| return c | |
| } | |
| // PageSize sets the optional parameter "pageSize": The max number of items to | |
| // include in the response list. Page size is 50 if not specified. Maximum | |
| // value is 500. | |
| func (c *ServicesListCall) PageSize(pageSize int64) *ServicesListCall { | |
| c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) | |
| return c | |
| } | |
| // PageToken sets the optional parameter "pageToken": Token identifying which | |
| // result to start with; returned by a previous list call. | |
| func (c *ServicesListCall) PageToken(pageToken string) *ServicesListCall { | |
| c.urlParams_.Set("pageToken", pageToken) | |
| return c | |
| } | |
| // ProducerProjectId sets the optional parameter "producerProjectId": Include | |
| // services produced by the specified project. | |
| func (c *ServicesListCall) ProducerProjectId(producerProjectId string) *ServicesListCall { | |
| c.urlParams_.Set("producerProjectId", producerProjectId) | |
| return c | |
| } | |
| // Fields allows partial responses to be retrieved. See | |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more | |
| // details. | |
| func (c *ServicesListCall) Fields(s ...googleapi.Field) *ServicesListCall { | |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) | |
| return c | |
| } | |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the | |
| // object's ETag matches the given value. This is useful for getting updates | |
| // only after the object has changed since the last request. | |
| func (c *ServicesListCall) IfNoneMatch(entityTag string) *ServicesListCall { | |
| c.ifNoneMatch_ = entityTag | |
| return c | |
| } | |
| // Context sets the context to be used in this call's Do method. | |
| func (c *ServicesListCall) Context(ctx context.Context) *ServicesListCall { | |
| c.ctx_ = ctx | |
| return c | |
| } | |
| // Header returns a http.Header that can be modified by the caller to add | |
| // headers to the request. | |
| func (c *ServicesListCall) Header() http.Header { | |
| if c.header_ == nil { | |
| c.header_ = make(http.Header) | |
| } | |
| return c.header_ | |
| } | |
| func (c *ServicesListCall) doRequest(alt string) (*http.Response, error) { | |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) | |
| if c.ifNoneMatch_ != "" { | |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | |
| } | |
| c.urlParams_.Set("alt", alt) | |
| c.urlParams_.Set("prettyPrint", "false") | |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/services") | |
| urls += "?" + c.urlParams_.Encode() | |
| req, err := http.NewRequest("GET", urls, nil) | |
| if err != nil { | |
| return nil, err | |
| } | |
| req.Header = reqHeaders | |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "servicemanagement.services.list", "request", internallog.HTTPRequest(req, nil)) | |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) | |
| } | |
| // Do executes the "servicemanagement.services.list" call. | |
| // Any non-2xx status code is an error. Response headers are in either | |
| // *ListServicesResponse.ServerResponse.Header or (if a response was returned | |
| // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to | |
| // check whether the returned error was because http.StatusNotModified was | |
| // returned. | |
| func (c *ServicesListCall) Do(opts ...googleapi.CallOption) (*ListServicesResponse, error) { | |
| gensupport.SetOptions(c.urlParams_, opts...) | |
| res, err := c.doRequest("json") | |
| if res != nil && res.StatusCode == http.StatusNotModified { | |
| if res.Body != nil { | |
| res.Body.Close() | |
| } | |
| return nil, gensupport.WrapError(&googleapi.Error{ | |
| Code: res.StatusCode, | |
| Header: res.Header, | |
| }) | |
| } | |
| if err != nil { | |
| return nil, err | |
| } | |
| defer googleapi.CloseBody(res) | |
| if err := googleapi.CheckResponse(res); err != nil { | |
| return nil, gensupport.WrapError(err) | |
| } | |
| ret := &ListServicesResponse{ | |
| ServerResponse: googleapi.ServerResponse{ | |
| Header: res.Header, | |
| HTTPStatusCode: res.StatusCode, | |
| }, | |
| } | |
| target := &ret | |
| b, err := gensupport.DecodeResponseBytes(target, res) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "servicemanagement.services.list", "response", internallog.HTTPResponse(res, b)) | |
| return ret, nil | |
| } | |
| // Pages invokes f for each page of results. | |
| // A non-nil error returned from f will halt the iteration. | |
| // The provided context supersedes any context provided to the Context method. | |
| func (c *ServicesListCall) Pages(ctx context.Context, f func(*ListServicesResponse) error) error { | |
| c.ctx_ = ctx | |
| defer c.PageToken(c.urlParams_.Get("pageToken")) | |
| for { | |
| x, err := c.Do() | |
| if err != nil { | |
| return err | |
| } | |
| if err := f(x); err != nil { | |
| return err | |
| } | |
| if x.NextPageToken == "" { | |
| return nil | |
| } | |
| c.PageToken(x.NextPageToken) | |
| } | |
| } | |
| type ServicesSetIamPolicyCall struct { | |
| s *APIService | |
| resource string | |
| setiampolicyrequest *SetIamPolicyRequest | |
| urlParams_ gensupport.URLParams | |
| ctx_ context.Context | |
| header_ http.Header | |
| } | |
| // SetIamPolicy: Sets the access control policy on the specified resource. | |
| // Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, | |
| // and `PERMISSION_DENIED` errors. | |
| // | |
| // - resource: REQUIRED: The resource for which the policy is being specified. | |
| // See Resource names (https://cloud.google.com/apis/design/resource_names) | |
| // for the appropriate value for this field. | |
| func (r *ServicesService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *ServicesSetIamPolicyCall { | |
| c := &ServicesSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} | |
| c.resource = resource | |
| c.setiampolicyrequest = setiampolicyrequest | |
| return c | |
| } | |
| // Fields allows partial responses to be retrieved. See | |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more | |
| // details. | |
| func (c *ServicesSetIamPolicyCall) Fields(s ...googleapi.Field) *ServicesSetIamPolicyCall { | |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) | |
| return c | |
| } | |
| // Context sets the context to be used in this call's Do method. | |
| func (c *ServicesSetIamPolicyCall) Context(ctx context.Context) *ServicesSetIamPolicyCall { | |
| c.ctx_ = ctx | |
| return c | |
| } | |
| // Header returns a http.Header that can be modified by the caller to add | |
| // headers to the request. | |
| func (c *ServicesSetIamPolicyCall) Header() http.Header { | |
| if c.header_ == nil { | |
| c.header_ = make(http.Header) | |
| } | |
| return c.header_ | |
| } | |
| func (c *ServicesSetIamPolicyCall) doRequest(alt string) (*http.Response, error) { | |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) | |
| body, err := googleapi.WithoutDataWrapper.JSONBuffer(c.setiampolicyrequest) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.urlParams_.Set("alt", alt) | |
| c.urlParams_.Set("prettyPrint", "false") | |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:setIamPolicy") | |
| urls += "?" + c.urlParams_.Encode() | |
| req, err := http.NewRequest("POST", urls, body) | |
| if err != nil { | |
| return nil, err | |
| } | |
| req.Header = reqHeaders | |
| googleapi.Expand(req.URL, map[string]string{ | |
| "resource": c.resource, | |
| }) | |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "servicemanagement.services.setIamPolicy", "request", internallog.HTTPRequest(req, body.Bytes())) | |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) | |
| } | |
| // Do executes the "servicemanagement.services.setIamPolicy" call. | |
| // Any non-2xx status code is an error. Response headers are in either | |
| // *Policy.ServerResponse.Header or (if a response was returned at all) in | |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check | |
| // whether the returned error was because http.StatusNotModified was returned. | |
| func (c *ServicesSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { | |
| gensupport.SetOptions(c.urlParams_, opts...) | |
| res, err := c.doRequest("json") | |
| if res != nil && res.StatusCode == http.StatusNotModified { | |
| if res.Body != nil { | |
| res.Body.Close() | |
| } | |
| return nil, gensupport.WrapError(&googleapi.Error{ | |
| Code: res.StatusCode, | |
| Header: res.Header, | |
| }) | |
| } | |
| if err != nil { | |
| return nil, err | |
| } | |
| defer googleapi.CloseBody(res) | |
| if err := googleapi.CheckResponse(res); err != nil { | |
| return nil, gensupport.WrapError(err) | |
| } | |
| ret := &Policy{ | |
| ServerResponse: googleapi.ServerResponse{ | |
| Header: res.Header, | |
| HTTPStatusCode: res.StatusCode, | |
| }, | |
| } | |
| target := &ret | |
| b, err := gensupport.DecodeResponseBytes(target, res) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "servicemanagement.services.setIamPolicy", "response", internallog.HTTPResponse(res, b)) | |
| return ret, nil | |
| } | |
| type ServicesTestIamPermissionsCall struct { | |
| s *APIService | |
| resource string | |
| testiampermissionsrequest *TestIamPermissionsRequest | |
| urlParams_ gensupport.URLParams | |
| ctx_ context.Context | |
| header_ http.Header | |
| } | |
| // TestIamPermissions: Returns permissions that a caller has on the specified | |
| // resource. If the resource does not exist, this will return an empty set of | |
| // permissions, not a `NOT_FOUND` error. Note: This operation is designed to be | |
| // used for building permission-aware UIs and command-line tools, not for | |
| // authorization checking. This operation may "fail open" without warning. | |
| // | |
| // - resource: REQUIRED: The resource for which the policy detail is being | |
| // requested. See Resource names | |
| // (https://cloud.google.com/apis/design/resource_names) for the appropriate | |
| // value for this field. | |
| func (r *ServicesService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *ServicesTestIamPermissionsCall { | |
| c := &ServicesTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)} | |
| c.resource = resource | |
| c.testiampermissionsrequest = testiampermissionsrequest | |
| return c | |
| } | |
| // Fields allows partial responses to be retrieved. See | |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more | |
| // details. | |
| func (c *ServicesTestIamPermissionsCall) Fields(s ...googleapi.Field) *ServicesTestIamPermissionsCall { | |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) | |
| return c | |
| } | |
| // Context sets the context to be used in this call's Do method. | |
| func (c *ServicesTestIamPermissionsCall) Context(ctx context.Context) *ServicesTestIamPermissionsCall { | |
| c.ctx_ = ctx | |
| return c | |
| } | |
| // Header returns a http.Header that can be modified by the caller to add | |
| // headers to the request. | |
| func (c *ServicesTestIamPermissionsCall) Header() http.Header { | |
| if c.header_ == nil { | |
| c.header_ = make(http.Header) | |
| } | |
| return c.header_ | |
| } | |
| func (c *ServicesTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) { | |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) | |
| body, err := googleapi.WithoutDataWrapper.JSONBuffer(c.testiampermissionsrequest) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.urlParams_.Set("alt", alt) | |
| c.urlParams_.Set("prettyPrint", "false") | |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:testIamPermissions") | |
| urls += "?" + c.urlParams_.Encode() | |
| req, err := http.NewRequest("POST", urls, body) | |
| if err != nil { | |
| return nil, err | |
| } | |
| req.Header = reqHeaders | |
| googleapi.Expand(req.URL, map[string]string{ | |
| "resource": c.resource, | |
| }) | |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "servicemanagement.services.testIamPermissions", "request", internallog.HTTPRequest(req, body.Bytes())) | |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) | |
| } | |
| // Do executes the "servicemanagement.services.testIamPermissions" call. | |
| // Any non-2xx status code is an error. Response headers are in either | |
| // *TestIamPermissionsResponse.ServerResponse.Header or (if a response was | |
| // returned at all) in error.(*googleapi.Error).Header. Use | |
| // googleapi.IsNotModified to check whether the returned error was because | |
| // http.StatusNotModified was returned. | |
| func (c *ServicesTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestIamPermissionsResponse, error) { | |
| gensupport.SetOptions(c.urlParams_, opts...) | |
| res, err := c.doRequest("json") | |
| if res != nil && res.StatusCode == http.StatusNotModified { | |
| if res.Body != nil { | |
| res.Body.Close() | |
| } | |
| return nil, gensupport.WrapError(&googleapi.Error{ | |
| Code: res.StatusCode, | |
| Header: res.Header, | |
| }) | |
| } | |
| if err != nil { | |
| return nil, err | |
| } | |
| defer googleapi.CloseBody(res) | |
| if err := googleapi.CheckResponse(res); err != nil { | |
| return nil, gensupport.WrapError(err) | |
| } | |
| ret := &TestIamPermissionsResponse{ | |
| ServerResponse: googleapi.ServerResponse{ | |
| Header: res.Header, | |
| HTTPStatusCode: res.StatusCode, | |
| }, | |
| } | |
| target := &ret | |
| b, err := gensupport.DecodeResponseBytes(target, res) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "servicemanagement.services.testIamPermissions", "response", internallog.HTTPResponse(res, b)) | |
| return ret, nil | |
| } | |
| type ServicesUndeleteCall struct { | |
| s *APIService | |
| serviceName string | |
| urlParams_ gensupport.URLParams | |
| ctx_ context.Context | |
| header_ http.Header | |
| } | |
| // Undelete: Revives a previously deleted managed service. The method restores | |
| // the service using the configuration at the time the service was deleted. The | |
| // target service must exist and must have been deleted within the last 30 | |
| // days. Operation | |
| // | |
| // - serviceName: The name of the service. See the overview | |
| // (https://cloud.google.com/service-management/overview) for naming | |
| // requirements. For example: `example.googleapis.com`. | |
| func (r *ServicesService) Undelete(serviceName string) *ServicesUndeleteCall { | |
| c := &ServicesUndeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} | |
| c.serviceName = serviceName | |
| return c | |
| } | |
| // Fields allows partial responses to be retrieved. See | |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more | |
| // details. | |
| func (c *ServicesUndeleteCall) Fields(s ...googleapi.Field) *ServicesUndeleteCall { | |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) | |
| return c | |
| } | |
| // Context sets the context to be used in this call's Do method. | |
| func (c *ServicesUndeleteCall) Context(ctx context.Context) *ServicesUndeleteCall { | |
| c.ctx_ = ctx | |
| return c | |
| } | |
| // Header returns a http.Header that can be modified by the caller to add | |
| // headers to the request. | |
| func (c *ServicesUndeleteCall) Header() http.Header { | |
| if c.header_ == nil { | |
| c.header_ = make(http.Header) | |
| } | |
| return c.header_ | |
| } | |
| func (c *ServicesUndeleteCall) doRequest(alt string) (*http.Response, error) { | |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) | |
| c.urlParams_.Set("alt", alt) | |
| c.urlParams_.Set("prettyPrint", "false") | |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/services/{serviceName}:undelete") | |
| urls += "?" + c.urlParams_.Encode() | |
| req, err := http.NewRequest("POST", urls, nil) | |
| if err != nil { | |
| return nil, err | |
| } | |
| req.Header = reqHeaders | |
| googleapi.Expand(req.URL, map[string]string{ | |
| "serviceName": c.serviceName, | |
| }) | |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "servicemanagement.services.undelete", "request", internallog.HTTPRequest(req, nil)) | |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) | |
| } | |
| // Do executes the "servicemanagement.services.undelete" call. | |
| // Any non-2xx status code is an error. Response headers are in either | |
| // *Operation.ServerResponse.Header or (if a response was returned at all) in | |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check | |
| // whether the returned error was because http.StatusNotModified was returned. | |
| func (c *ServicesUndeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) { | |
| gensupport.SetOptions(c.urlParams_, opts...) | |
| res, err := c.doRequest("json") | |
| if res != nil && res.StatusCode == http.StatusNotModified { | |
| if res.Body != nil { | |
| res.Body.Close() | |
| } | |
| return nil, gensupport.WrapError(&googleapi.Error{ | |
| Code: res.StatusCode, | |
| Header: res.Header, | |
| }) | |
| } | |
| if err != nil { | |
| return nil, err | |
| } | |
| defer googleapi.CloseBody(res) | |
| if err := googleapi.CheckResponse(res); err != nil { | |
| return nil, gensupport.WrapError(err) | |
| } | |
| ret := &Operation{ | |
| ServerResponse: googleapi.ServerResponse{ | |
| Header: res.Header, | |
| HTTPStatusCode: res.StatusCode, | |
| }, | |
| } | |
| target := &ret | |
| b, err := gensupport.DecodeResponseBytes(target, res) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "servicemanagement.services.undelete", "response", internallog.HTTPResponse(res, b)) | |
| return ret, nil | |
| } | |
| type ServicesConfigsCreateCall struct { | |
| s *APIService | |
| serviceName string | |
| service *Service | |
| urlParams_ gensupport.URLParams | |
| ctx_ context.Context | |
| header_ http.Header | |
| } | |
| // Create: Creates a new service configuration (version) for a managed service. | |
| // This method only stores the service configuration. To roll out the service | |
| // configuration to backend systems please call CreateServiceRollout. Only the | |
| // 100 most recent service configurations and ones referenced by existing | |
| // rollouts are kept for each service. The rest will be deleted eventually. | |
| // | |
| // - serviceName: The name of the service. See the overview | |
| // (https://cloud.google.com/service-management/overview) for naming | |
| // requirements. For example: `example.googleapis.com`. | |
| func (r *ServicesConfigsService) Create(serviceName string, service *Service) *ServicesConfigsCreateCall { | |
| c := &ServicesConfigsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} | |
| c.serviceName = serviceName | |
| c.service = service | |
| return c | |
| } | |
| // Fields allows partial responses to be retrieved. See | |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more | |
| // details. | |
| func (c *ServicesConfigsCreateCall) Fields(s ...googleapi.Field) *ServicesConfigsCreateCall { | |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) | |
| return c | |
| } | |
| // Context sets the context to be used in this call's Do method. | |
| func (c *ServicesConfigsCreateCall) Context(ctx context.Context) *ServicesConfigsCreateCall { | |
| c.ctx_ = ctx | |
| return c | |
| } | |
| // Header returns a http.Header that can be modified by the caller to add | |
| // headers to the request. | |
| func (c *ServicesConfigsCreateCall) Header() http.Header { | |
| if c.header_ == nil { | |
| c.header_ = make(http.Header) | |
| } | |
| return c.header_ | |
| } | |
| func (c *ServicesConfigsCreateCall) doRequest(alt string) (*http.Response, error) { | |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) | |
| body, err := googleapi.WithoutDataWrapper.JSONBuffer(c.service) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.urlParams_.Set("alt", alt) | |
| c.urlParams_.Set("prettyPrint", "false") | |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/services/{serviceName}/configs") | |
| urls += "?" + c.urlParams_.Encode() | |
| req, err := http.NewRequest("POST", urls, body) | |
| if err != nil { | |
| return nil, err | |
| } | |
| req.Header = reqHeaders | |
| googleapi.Expand(req.URL, map[string]string{ | |
| "serviceName": c.serviceName, | |
| }) | |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "servicemanagement.services.configs.create", "request", internallog.HTTPRequest(req, body.Bytes())) | |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) | |
| } | |
| // Do executes the "servicemanagement.services.configs.create" call. | |
| // Any non-2xx status code is an error. Response headers are in either | |
| // *Service.ServerResponse.Header or (if a response was returned at all) in | |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check | |
| // whether the returned error was because http.StatusNotModified was returned. | |
| func (c *ServicesConfigsCreateCall) Do(opts ...googleapi.CallOption) (*Service, error) { | |
| gensupport.SetOptions(c.urlParams_, opts...) | |
| res, err := c.doRequest("json") | |
| if res != nil && res.StatusCode == http.StatusNotModified { | |
| if res.Body != nil { | |
| res.Body.Close() | |
| } | |
| return nil, gensupport.WrapError(&googleapi.Error{ | |
| Code: res.StatusCode, | |
| Header: res.Header, | |
| }) | |
| } | |
| if err != nil { | |
| return nil, err | |
| } | |
| defer googleapi.CloseBody(res) | |
| if err := googleapi.CheckResponse(res); err != nil { | |
| return nil, gensupport.WrapError(err) | |
| } | |
| ret := &Service{ | |
| ServerResponse: googleapi.ServerResponse{ | |
| Header: res.Header, | |
| HTTPStatusCode: res.StatusCode, | |
| }, | |
| } | |
| target := &ret | |
| b, err := gensupport.DecodeResponseBytes(target, res) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "servicemanagement.services.configs.create", "response", internallog.HTTPResponse(res, b)) | |
| return ret, nil | |
| } | |
| type ServicesConfigsGetCall struct { | |
| s *APIService | |
| serviceName string | |
| configId string | |
| urlParams_ gensupport.URLParams | |
| ifNoneMatch_ string | |
| ctx_ context.Context | |
| header_ http.Header | |
| } | |
| // Get: Gets a service configuration (version) for a managed service. | |
| // | |
| // - configId: The id of the service configuration resource. This field must be | |
| // specified for the server to return all fields, including `SourceInfo`. | |
| // - serviceName: The name of the service. See the overview | |
| // (https://cloud.google.com/service-management/overview) for naming | |
| // requirements. For example: `example.googleapis.com`. | |
| func (r *ServicesConfigsService) Get(serviceName string, configId string) *ServicesConfigsGetCall { | |
| c := &ServicesConfigsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} | |
| c.serviceName = serviceName | |
| c.configId = configId | |
| return c | |
| } | |
| // View sets the optional parameter "view": Specifies which parts of the | |
| // Service Config should be returned in the response. | |
| // | |
| // Possible values: | |
| // | |
| // "BASIC" - Server response includes all fields except SourceInfo. | |
| // "FULL" - Server response includes all fields including SourceInfo. | |
| // | |
| // SourceFiles are of type 'google.api.servicemanagement.v1.ConfigFile' and are | |
| // only available for configs created using the SubmitConfigSource method. | |
| func (c *ServicesConfigsGetCall) View(view string) *ServicesConfigsGetCall { | |
| c.urlParams_.Set("view", view) | |
| return c | |
| } | |
| // Fields allows partial responses to be retrieved. See | |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more | |
| // details. | |
| func (c *ServicesConfigsGetCall) Fields(s ...googleapi.Field) *ServicesConfigsGetCall { | |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) | |
| return c | |
| } | |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the | |
| // object's ETag matches the given value. This is useful for getting updates | |
| // only after the object has changed since the last request. | |
| func (c *ServicesConfigsGetCall) IfNoneMatch(entityTag string) *ServicesConfigsGetCall { | |
| c.ifNoneMatch_ = entityTag | |
| return c | |
| } | |
| // Context sets the context to be used in this call's Do method. | |
| func (c *ServicesConfigsGetCall) Context(ctx context.Context) *ServicesConfigsGetCall { | |
| c.ctx_ = ctx | |
| return c | |
| } | |
| // Header returns a http.Header that can be modified by the caller to add | |
| // headers to the request. | |
| func (c *ServicesConfigsGetCall) Header() http.Header { | |
| if c.header_ == nil { | |
| c.header_ = make(http.Header) | |
| } | |
| return c.header_ | |
| } | |
| func (c *ServicesConfigsGetCall) doRequest(alt string) (*http.Response, error) { | |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) | |
| if c.ifNoneMatch_ != "" { | |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | |
| } | |
| c.urlParams_.Set("alt", alt) | |
| c.urlParams_.Set("prettyPrint", "false") | |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/services/{serviceName}/configs/{configId}") | |
| urls += "?" + c.urlParams_.Encode() | |
| req, err := http.NewRequest("GET", urls, nil) | |
| if err != nil { | |
| return nil, err | |
| } | |
| req.Header = reqHeaders | |
| googleapi.Expand(req.URL, map[string]string{ | |
| "serviceName": c.serviceName, | |
| "configId": c.configId, | |
| }) | |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "servicemanagement.services.configs.get", "request", internallog.HTTPRequest(req, nil)) | |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) | |
| } | |
| // Do executes the "servicemanagement.services.configs.get" call. | |
| // Any non-2xx status code is an error. Response headers are in either | |
| // *Service.ServerResponse.Header or (if a response was returned at all) in | |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check | |
| // whether the returned error was because http.StatusNotModified was returned. | |
| func (c *ServicesConfigsGetCall) Do(opts ...googleapi.CallOption) (*Service, error) { | |
| gensupport.SetOptions(c.urlParams_, opts...) | |
| res, err := c.doRequest("json") | |
| if res != nil && res.StatusCode == http.StatusNotModified { | |
| if res.Body != nil { | |
| res.Body.Close() | |
| } | |
| return nil, gensupport.WrapError(&googleapi.Error{ | |
| Code: res.StatusCode, | |
| Header: res.Header, | |
| }) | |
| } | |
| if err != nil { | |
| return nil, err | |
| } | |
| defer googleapi.CloseBody(res) | |
| if err := googleapi.CheckResponse(res); err != nil { | |
| return nil, gensupport.WrapError(err) | |
| } | |
| ret := &Service{ | |
| ServerResponse: googleapi.ServerResponse{ | |
| Header: res.Header, | |
| HTTPStatusCode: res.StatusCode, | |
| }, | |
| } | |
| target := &ret | |
| b, err := gensupport.DecodeResponseBytes(target, res) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "servicemanagement.services.configs.get", "response", internallog.HTTPResponse(res, b)) | |
| return ret, nil | |
| } | |
| type ServicesConfigsListCall struct { | |
| s *APIService | |
| serviceName string | |
| urlParams_ gensupport.URLParams | |
| ifNoneMatch_ string | |
| ctx_ context.Context | |
| header_ http.Header | |
| } | |
| // List: Lists the history of the service configuration for a managed service, | |
| // from the newest to the oldest. | |
| // | |
| // - serviceName: The name of the service. See the overview | |
| // (https://cloud.google.com/service-management/overview) for naming | |
| // requirements. For example: `example.googleapis.com`. | |
| func (r *ServicesConfigsService) List(serviceName string) *ServicesConfigsListCall { | |
| c := &ServicesConfigsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} | |
| c.serviceName = serviceName | |
| return c | |
| } | |
| // PageSize sets the optional parameter "pageSize": The max number of items to | |
| // include in the response list. Page size is 50 if not specified. Maximum | |
| // value is 100. | |
| func (c *ServicesConfigsListCall) PageSize(pageSize int64) *ServicesConfigsListCall { | |
| c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) | |
| return c | |
| } | |
| // PageToken sets the optional parameter "pageToken": The token of the page to | |
| // retrieve. | |
| func (c *ServicesConfigsListCall) PageToken(pageToken string) *ServicesConfigsListCall { | |
| c.urlParams_.Set("pageToken", pageToken) | |
| return c | |
| } | |
| // Fields allows partial responses to be retrieved. See | |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more | |
| // details. | |
| func (c *ServicesConfigsListCall) Fields(s ...googleapi.Field) *ServicesConfigsListCall { | |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) | |
| return c | |
| } | |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the | |
| // object's ETag matches the given value. This is useful for getting updates | |
| // only after the object has changed since the last request. | |
| func (c *ServicesConfigsListCall) IfNoneMatch(entityTag string) *ServicesConfigsListCall { | |
| c.ifNoneMatch_ = entityTag | |
| return c | |
| } | |
| // Context sets the context to be used in this call's Do method. | |
| func (c *ServicesConfigsListCall) Context(ctx context.Context) *ServicesConfigsListCall { | |
| c.ctx_ = ctx | |
| return c | |
| } | |
| // Header returns a http.Header that can be modified by the caller to add | |
| // headers to the request. | |
| func (c *ServicesConfigsListCall) Header() http.Header { | |
| if c.header_ == nil { | |
| c.header_ = make(http.Header) | |
| } | |
| return c.header_ | |
| } | |
| func (c *ServicesConfigsListCall) doRequest(alt string) (*http.Response, error) { | |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) | |
| if c.ifNoneMatch_ != "" { | |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | |
| } | |
| c.urlParams_.Set("alt", alt) | |
| c.urlParams_.Set("prettyPrint", "false") | |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/services/{serviceName}/configs") | |
| urls += "?" + c.urlParams_.Encode() | |
| req, err := http.NewRequest("GET", urls, nil) | |
| if err != nil { | |
| return nil, err | |
| } | |
| req.Header = reqHeaders | |
| googleapi.Expand(req.URL, map[string]string{ | |
| "serviceName": c.serviceName, | |
| }) | |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "servicemanagement.services.configs.list", "request", internallog.HTTPRequest(req, nil)) | |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) | |
| } | |
| // Do executes the "servicemanagement.services.configs.list" call. | |
| // Any non-2xx status code is an error. Response headers are in either | |
| // *ListServiceConfigsResponse.ServerResponse.Header or (if a response was | |
| // returned at all) in error.(*googleapi.Error).Header. Use | |
| // googleapi.IsNotModified to check whether the returned error was because | |
| // http.StatusNotModified was returned. | |
| func (c *ServicesConfigsListCall) Do(opts ...googleapi.CallOption) (*ListServiceConfigsResponse, error) { | |
| gensupport.SetOptions(c.urlParams_, opts...) | |
| res, err := c.doRequest("json") | |
| if res != nil && res.StatusCode == http.StatusNotModified { | |
| if res.Body != nil { | |
| res.Body.Close() | |
| } | |
| return nil, gensupport.WrapError(&googleapi.Error{ | |
| Code: res.StatusCode, | |
| Header: res.Header, | |
| }) | |
| } | |
| if err != nil { | |
| return nil, err | |
| } | |
| defer googleapi.CloseBody(res) | |
| if err := googleapi.CheckResponse(res); err != nil { | |
| return nil, gensupport.WrapError(err) | |
| } | |
| ret := &ListServiceConfigsResponse{ | |
| ServerResponse: googleapi.ServerResponse{ | |
| Header: res.Header, | |
| HTTPStatusCode: res.StatusCode, | |
| }, | |
| } | |
| target := &ret | |
| b, err := gensupport.DecodeResponseBytes(target, res) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "servicemanagement.services.configs.list", "response", internallog.HTTPResponse(res, b)) | |
| return ret, nil | |
| } | |
| // Pages invokes f for each page of results. | |
| // A non-nil error returned from f will halt the iteration. | |
| // The provided context supersedes any context provided to the Context method. | |
| func (c *ServicesConfigsListCall) Pages(ctx context.Context, f func(*ListServiceConfigsResponse) error) error { | |
| c.ctx_ = ctx | |
| defer c.PageToken(c.urlParams_.Get("pageToken")) | |
| for { | |
| x, err := c.Do() | |
| if err != nil { | |
| return err | |
| } | |
| if err := f(x); err != nil { | |
| return err | |
| } | |
| if x.NextPageToken == "" { | |
| return nil | |
| } | |
| c.PageToken(x.NextPageToken) | |
| } | |
| } | |
| type ServicesConfigsSubmitCall struct { | |
| s *APIService | |
| serviceName string | |
| submitconfigsourcerequest *SubmitConfigSourceRequest | |
| urlParams_ gensupport.URLParams | |
| ctx_ context.Context | |
| header_ http.Header | |
| } | |
| // Submit: Creates a new service configuration (version) for a managed service | |
| // based on user-supplied configuration source files (for example: OpenAPI | |
| // Specification). This method stores the source configurations as well as the | |
| // generated service configuration. To rollout the service configuration to | |
| // other services, please call CreateServiceRollout. Only the 100 most recent | |
| // configuration sources and ones referenced by existing service configurtions | |
| // are kept for each service. The rest will be deleted eventually. Operation | |
| // | |
| // - serviceName: The name of the service. See the overview | |
| // (https://cloud.google.com/service-management/overview) for naming | |
| // requirements. For example: `example.googleapis.com`. | |
| func (r *ServicesConfigsService) Submit(serviceName string, submitconfigsourcerequest *SubmitConfigSourceRequest) *ServicesConfigsSubmitCall { | |
| c := &ServicesConfigsSubmitCall{s: r.s, urlParams_: make(gensupport.URLParams)} | |
| c.serviceName = serviceName | |
| c.submitconfigsourcerequest = submitconfigsourcerequest | |
| return c | |
| } | |
| // Fields allows partial responses to be retrieved. See | |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more | |
| // details. | |
| func (c *ServicesConfigsSubmitCall) Fields(s ...googleapi.Field) *ServicesConfigsSubmitCall { | |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) | |
| return c | |
| } | |
| // Context sets the context to be used in this call's Do method. | |
| func (c *ServicesConfigsSubmitCall) Context(ctx context.Context) *ServicesConfigsSubmitCall { | |
| c.ctx_ = ctx | |
| return c | |
| } | |
| // Header returns a http.Header that can be modified by the caller to add | |
| // headers to the request. | |
| func (c *ServicesConfigsSubmitCall) Header() http.Header { | |
| if c.header_ == nil { | |
| c.header_ = make(http.Header) | |
| } | |
| return c.header_ | |
| } | |
| func (c *ServicesConfigsSubmitCall) doRequest(alt string) (*http.Response, error) { | |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) | |
| body, err := googleapi.WithoutDataWrapper.JSONBuffer(c.submitconfigsourcerequest) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.urlParams_.Set("alt", alt) | |
| c.urlParams_.Set("prettyPrint", "false") | |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/services/{serviceName}/configs:submit") | |
| urls += "?" + c.urlParams_.Encode() | |
| req, err := http.NewRequest("POST", urls, body) | |
| if err != nil { | |
| return nil, err | |
| } | |
| req.Header = reqHeaders | |
| googleapi.Expand(req.URL, map[string]string{ | |
| "serviceName": c.serviceName, | |
| }) | |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "servicemanagement.services.configs.submit", "request", internallog.HTTPRequest(req, body.Bytes())) | |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) | |
| } | |
| // Do executes the "servicemanagement.services.configs.submit" call. | |
| // Any non-2xx status code is an error. Response headers are in either | |
| // *Operation.ServerResponse.Header or (if a response was returned at all) in | |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check | |
| // whether the returned error was because http.StatusNotModified was returned. | |
| func (c *ServicesConfigsSubmitCall) Do(opts ...googleapi.CallOption) (*Operation, error) { | |
| gensupport.SetOptions(c.urlParams_, opts...) | |
| res, err := c.doRequest("json") | |
| if res != nil && res.StatusCode == http.StatusNotModified { | |
| if res.Body != nil { | |
| res.Body.Close() | |
| } | |
| return nil, gensupport.WrapError(&googleapi.Error{ | |
| Code: res.StatusCode, | |
| Header: res.Header, | |
| }) | |
| } | |
| if err != nil { | |
| return nil, err | |
| } | |
| defer googleapi.CloseBody(res) | |
| if err := googleapi.CheckResponse(res); err != nil { | |
| return nil, gensupport.WrapError(err) | |
| } | |
| ret := &Operation{ | |
| ServerResponse: googleapi.ServerResponse{ | |
| Header: res.Header, | |
| HTTPStatusCode: res.StatusCode, | |
| }, | |
| } | |
| target := &ret | |
| b, err := gensupport.DecodeResponseBytes(target, res) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "servicemanagement.services.configs.submit", "response", internallog.HTTPResponse(res, b)) | |
| return ret, nil | |
| } | |
| type ServicesConsumersGetIamPolicyCall struct { | |
| s *APIService | |
| resource string | |
| getiampolicyrequest *GetIamPolicyRequest | |
| urlParams_ gensupport.URLParams | |
| ctx_ context.Context | |
| header_ http.Header | |
| } | |
| // GetIamPolicy: Gets the access control policy for a resource. Returns an | |
| // empty policy if the resource exists and does not have a policy set. | |
| // | |
| // - resource: REQUIRED: The resource for which the policy is being requested. | |
| // See Resource names (https://cloud.google.com/apis/design/resource_names) | |
| // for the appropriate value for this field. | |
| func (r *ServicesConsumersService) GetIamPolicy(resource string, getiampolicyrequest *GetIamPolicyRequest) *ServicesConsumersGetIamPolicyCall { | |
| c := &ServicesConsumersGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} | |
| c.resource = resource | |
| c.getiampolicyrequest = getiampolicyrequest | |
| return c | |
| } | |
| // Fields allows partial responses to be retrieved. See | |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more | |
| // details. | |
| func (c *ServicesConsumersGetIamPolicyCall) Fields(s ...googleapi.Field) *ServicesConsumersGetIamPolicyCall { | |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) | |
| return c | |
| } | |
| // Context sets the context to be used in this call's Do method. | |
| func (c *ServicesConsumersGetIamPolicyCall) Context(ctx context.Context) *ServicesConsumersGetIamPolicyCall { | |
| c.ctx_ = ctx | |
| return c | |
| } | |
| // Header returns a http.Header that can be modified by the caller to add | |
| // headers to the request. | |
| func (c *ServicesConsumersGetIamPolicyCall) Header() http.Header { | |
| if c.header_ == nil { | |
| c.header_ = make(http.Header) | |
| } | |
| return c.header_ | |
| } | |
| func (c *ServicesConsumersGetIamPolicyCall) doRequest(alt string) (*http.Response, error) { | |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) | |
| body, err := googleapi.WithoutDataWrapper.JSONBuffer(c.getiampolicyrequest) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.urlParams_.Set("alt", alt) | |
| c.urlParams_.Set("prettyPrint", "false") | |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:getIamPolicy") | |
| urls += "?" + c.urlParams_.Encode() | |
| req, err := http.NewRequest("POST", urls, body) | |
| if err != nil { | |
| return nil, err | |
| } | |
| req.Header = reqHeaders | |
| googleapi.Expand(req.URL, map[string]string{ | |
| "resource": c.resource, | |
| }) | |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "servicemanagement.services.consumers.getIamPolicy", "request", internallog.HTTPRequest(req, body.Bytes())) | |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) | |
| } | |
| // Do executes the "servicemanagement.services.consumers.getIamPolicy" call. | |
| // Any non-2xx status code is an error. Response headers are in either | |
| // *Policy.ServerResponse.Header or (if a response was returned at all) in | |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check | |
| // whether the returned error was because http.StatusNotModified was returned. | |
| func (c *ServicesConsumersGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { | |
| gensupport.SetOptions(c.urlParams_, opts...) | |
| res, err := c.doRequest("json") | |
| if res != nil && res.StatusCode == http.StatusNotModified { | |
| if res.Body != nil { | |
| res.Body.Close() | |
| } | |
| return nil, gensupport.WrapError(&googleapi.Error{ | |
| Code: res.StatusCode, | |
| Header: res.Header, | |
| }) | |
| } | |
| if err != nil { | |
| return nil, err | |
| } | |
| defer googleapi.CloseBody(res) | |
| if err := googleapi.CheckResponse(res); err != nil { | |
| return nil, gensupport.WrapError(err) | |
| } | |
| ret := &Policy{ | |
| ServerResponse: googleapi.ServerResponse{ | |
| Header: res.Header, | |
| HTTPStatusCode: res.StatusCode, | |
| }, | |
| } | |
| target := &ret | |
| b, err := gensupport.DecodeResponseBytes(target, res) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "servicemanagement.services.consumers.getIamPolicy", "response", internallog.HTTPResponse(res, b)) | |
| return ret, nil | |
| } | |
| type ServicesConsumersSetIamPolicyCall struct { | |
| s *APIService | |
| resource string | |
| setiampolicyrequest *SetIamPolicyRequest | |
| urlParams_ gensupport.URLParams | |
| ctx_ context.Context | |
| header_ http.Header | |
| } | |
| // SetIamPolicy: Sets the access control policy on the specified resource. | |
| // Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, | |
| // and `PERMISSION_DENIED` errors. | |
| // | |
| // - resource: REQUIRED: The resource for which the policy is being specified. | |
| // See Resource names (https://cloud.google.com/apis/design/resource_names) | |
| // for the appropriate value for this field. | |
| func (r *ServicesConsumersService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *ServicesConsumersSetIamPolicyCall { | |
| c := &ServicesConsumersSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} | |
| c.resource = resource | |
| c.setiampolicyrequest = setiampolicyrequest | |
| return c | |
| } | |
| // Fields allows partial responses to be retrieved. See | |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more | |
| // details. | |
| func (c *ServicesConsumersSetIamPolicyCall) Fields(s ...googleapi.Field) *ServicesConsumersSetIamPolicyCall { | |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) | |
| return c | |
| } | |
| // Context sets the context to be used in this call's Do method. | |
| func (c *ServicesConsumersSetIamPolicyCall) Context(ctx context.Context) *ServicesConsumersSetIamPolicyCall { | |
| c.ctx_ = ctx | |
| return c | |
| } | |
| // Header returns a http.Header that can be modified by the caller to add | |
| // headers to the request. | |
| func (c *ServicesConsumersSetIamPolicyCall) Header() http.Header { | |
| if c.header_ == nil { | |
| c.header_ = make(http.Header) | |
| } | |
| return c.header_ | |
| } | |
| func (c *ServicesConsumersSetIamPolicyCall) doRequest(alt string) (*http.Response, error) { | |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) | |
| body, err := googleapi.WithoutDataWrapper.JSONBuffer(c.setiampolicyrequest) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.urlParams_.Set("alt", alt) | |
| c.urlParams_.Set("prettyPrint", "false") | |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:setIamPolicy") | |
| urls += "?" + c.urlParams_.Encode() | |
| req, err := http.NewRequest("POST", urls, body) | |
| if err != nil { | |
| return nil, err | |
| } | |
| req.Header = reqHeaders | |
| googleapi.Expand(req.URL, map[string]string{ | |
| "resource": c.resource, | |
| }) | |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "servicemanagement.services.consumers.setIamPolicy", "request", internallog.HTTPRequest(req, body.Bytes())) | |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) | |
| } | |
| // Do executes the "servicemanagement.services.consumers.setIamPolicy" call. | |
| // Any non-2xx status code is an error. Response headers are in either | |
| // *Policy.ServerResponse.Header or (if a response was returned at all) in | |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check | |
| // whether the returned error was because http.StatusNotModified was returned. | |
| func (c *ServicesConsumersSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { | |
| gensupport.SetOptions(c.urlParams_, opts...) | |
| res, err := c.doRequest("json") | |
| if res != nil && res.StatusCode == http.StatusNotModified { | |
| if res.Body != nil { | |
| res.Body.Close() | |
| } | |
| return nil, gensupport.WrapError(&googleapi.Error{ | |
| Code: res.StatusCode, | |
| Header: res.Header, | |
| }) | |
| } | |
| if err != nil { | |
| return nil, err | |
| } | |
| defer googleapi.CloseBody(res) | |
| if err := googleapi.CheckResponse(res); err != nil { | |
| return nil, gensupport.WrapError(err) | |
| } | |
| ret := &Policy{ | |
| ServerResponse: googleapi.ServerResponse{ | |
| Header: res.Header, | |
| HTTPStatusCode: res.StatusCode, | |
| }, | |
| } | |
| target := &ret | |
| b, err := gensupport.DecodeResponseBytes(target, res) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "servicemanagement.services.consumers.setIamPolicy", "response", internallog.HTTPResponse(res, b)) | |
| return ret, nil | |
| } | |
| type ServicesConsumersTestIamPermissionsCall struct { | |
| s *APIService | |
| resource string | |
| testiampermissionsrequest *TestIamPermissionsRequest | |
| urlParams_ gensupport.URLParams | |
| ctx_ context.Context | |
| header_ http.Header | |
| } | |
| // TestIamPermissions: Returns permissions that a caller has on the specified | |
| // resource. If the resource does not exist, this will return an empty set of | |
| // permissions, not a `NOT_FOUND` error. Note: This operation is designed to be | |
| // used for building permission-aware UIs and command-line tools, not for | |
| // authorization checking. This operation may "fail open" without warning. | |
| // | |
| // - resource: REQUIRED: The resource for which the policy detail is being | |
| // requested. See Resource names | |
| // (https://cloud.google.com/apis/design/resource_names) for the appropriate | |
| // value for this field. | |
| func (r *ServicesConsumersService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *ServicesConsumersTestIamPermissionsCall { | |
| c := &ServicesConsumersTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)} | |
| c.resource = resource | |
| c.testiampermissionsrequest = testiampermissionsrequest | |
| return c | |
| } | |
| // Fields allows partial responses to be retrieved. See | |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more | |
| // details. | |
| func (c *ServicesConsumersTestIamPermissionsCall) Fields(s ...googleapi.Field) *ServicesConsumersTestIamPermissionsCall { | |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) | |
| return c | |
| } | |
| // Context sets the context to be used in this call's Do method. | |
| func (c *ServicesConsumersTestIamPermissionsCall) Context(ctx context.Context) *ServicesConsumersTestIamPermissionsCall { | |
| c.ctx_ = ctx | |
| return c | |
| } | |
| // Header returns a http.Header that can be modified by the caller to add | |
| // headers to the request. | |
| func (c *ServicesConsumersTestIamPermissionsCall) Header() http.Header { | |
| if c.header_ == nil { | |
| c.header_ = make(http.Header) | |
| } | |
| return c.header_ | |
| } | |
| func (c *ServicesConsumersTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) { | |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) | |
| body, err := googleapi.WithoutDataWrapper.JSONBuffer(c.testiampermissionsrequest) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.urlParams_.Set("alt", alt) | |
| c.urlParams_.Set("prettyPrint", "false") | |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:testIamPermissions") | |
| urls += "?" + c.urlParams_.Encode() | |
| req, err := http.NewRequest("POST", urls, body) | |
| if err != nil { | |
| return nil, err | |
| } | |
| req.Header = reqHeaders | |
| googleapi.Expand(req.URL, map[string]string{ | |
| "resource": c.resource, | |
| }) | |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "servicemanagement.services.consumers.testIamPermissions", "request", internallog.HTTPRequest(req, body.Bytes())) | |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) | |
| } | |
| // Do executes the "servicemanagement.services.consumers.testIamPermissions" call. | |
| // Any non-2xx status code is an error. Response headers are in either | |
| // *TestIamPermissionsResponse.ServerResponse.Header or (if a response was | |
| // returned at all) in error.(*googleapi.Error).Header. Use | |
| // googleapi.IsNotModified to check whether the returned error was because | |
| // http.StatusNotModified was returned. | |
| func (c *ServicesConsumersTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestIamPermissionsResponse, error) { | |
| gensupport.SetOptions(c.urlParams_, opts...) | |
| res, err := c.doRequest("json") | |
| if res != nil && res.StatusCode == http.StatusNotModified { | |
| if res.Body != nil { | |
| res.Body.Close() | |
| } | |
| return nil, gensupport.WrapError(&googleapi.Error{ | |
| Code: res.StatusCode, | |
| Header: res.Header, | |
| }) | |
| } | |
| if err != nil { | |
| return nil, err | |
| } | |
| defer googleapi.CloseBody(res) | |
| if err := googleapi.CheckResponse(res); err != nil { | |
| return nil, gensupport.WrapError(err) | |
| } | |
| ret := &TestIamPermissionsResponse{ | |
| ServerResponse: googleapi.ServerResponse{ | |
| Header: res.Header, | |
| HTTPStatusCode: res.StatusCode, | |
| }, | |
| } | |
| target := &ret | |
| b, err := gensupport.DecodeResponseBytes(target, res) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "servicemanagement.services.consumers.testIamPermissions", "response", internallog.HTTPResponse(res, b)) | |
| return ret, nil | |
| } | |
| type ServicesRolloutsCreateCall struct { | |
| s *APIService | |
| serviceName string | |
| rollout *Rollout | |
| urlParams_ gensupport.URLParams | |
| ctx_ context.Context | |
| header_ http.Header | |
| } | |
| // Create: Creates a new service configuration rollout. Based on rollout, the | |
| // Google Service Management will roll out the service configurations to | |
| // different backend services. For example, the logging configuration will be | |
| // pushed to Google Cloud Logging. Please note that any previous pending and | |
| // running Rollouts and associated Operations will be automatically cancelled | |
| // so that the latest Rollout will not be blocked by previous Rollouts. Only | |
| // the 100 most recent (in any state) and the last 10 successful (if not | |
| // already part of the set of 100 most recent) rollouts are kept for each | |
| // service. The rest will be deleted eventually. Operation | |
| // | |
| // - serviceName: The name of the service. See the overview | |
| // (https://cloud.google.com/service-management/overview) for naming | |
| // requirements. For example: `example.googleapis.com`. | |
| func (r *ServicesRolloutsService) Create(serviceName string, rollout *Rollout) *ServicesRolloutsCreateCall { | |
| c := &ServicesRolloutsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} | |
| c.serviceName = serviceName | |
| c.rollout = rollout | |
| return c | |
| } | |
| // Fields allows partial responses to be retrieved. See | |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more | |
| // details. | |
| func (c *ServicesRolloutsCreateCall) Fields(s ...googleapi.Field) *ServicesRolloutsCreateCall { | |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) | |
| return c | |
| } | |
| // Context sets the context to be used in this call's Do method. | |
| func (c *ServicesRolloutsCreateCall) Context(ctx context.Context) *ServicesRolloutsCreateCall { | |
| c.ctx_ = ctx | |
| return c | |
| } | |
| // Header returns a http.Header that can be modified by the caller to add | |
| // headers to the request. | |
| func (c *ServicesRolloutsCreateCall) Header() http.Header { | |
| if c.header_ == nil { | |
| c.header_ = make(http.Header) | |
| } | |
| return c.header_ | |
| } | |
| func (c *ServicesRolloutsCreateCall) doRequest(alt string) (*http.Response, error) { | |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) | |
| body, err := googleapi.WithoutDataWrapper.JSONBuffer(c.rollout) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.urlParams_.Set("alt", alt) | |
| c.urlParams_.Set("prettyPrint", "false") | |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/services/{serviceName}/rollouts") | |
| urls += "?" + c.urlParams_.Encode() | |
| req, err := http.NewRequest("POST", urls, body) | |
| if err != nil { | |
| return nil, err | |
| } | |
| req.Header = reqHeaders | |
| googleapi.Expand(req.URL, map[string]string{ | |
| "serviceName": c.serviceName, | |
| }) | |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "servicemanagement.services.rollouts.create", "request", internallog.HTTPRequest(req, body.Bytes())) | |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) | |
| } | |
| // Do executes the "servicemanagement.services.rollouts.create" call. | |
| // Any non-2xx status code is an error. Response headers are in either | |
| // *Operation.ServerResponse.Header or (if a response was returned at all) in | |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check | |
| // whether the returned error was because http.StatusNotModified was returned. | |
| func (c *ServicesRolloutsCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) { | |
| gensupport.SetOptions(c.urlParams_, opts...) | |
| res, err := c.doRequest("json") | |
| if res != nil && res.StatusCode == http.StatusNotModified { | |
| if res.Body != nil { | |
| res.Body.Close() | |
| } | |
| return nil, gensupport.WrapError(&googleapi.Error{ | |
| Code: res.StatusCode, | |
| Header: res.Header, | |
| }) | |
| } | |
| if err != nil { | |
| return nil, err | |
| } | |
| defer googleapi.CloseBody(res) | |
| if err := googleapi.CheckResponse(res); err != nil { | |
| return nil, gensupport.WrapError(err) | |
| } | |
| ret := &Operation{ | |
| ServerResponse: googleapi.ServerResponse{ | |
| Header: res.Header, | |
| HTTPStatusCode: res.StatusCode, | |
| }, | |
| } | |
| target := &ret | |
| b, err := gensupport.DecodeResponseBytes(target, res) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "servicemanagement.services.rollouts.create", "response", internallog.HTTPResponse(res, b)) | |
| return ret, nil | |
| } | |
| type ServicesRolloutsGetCall struct { | |
| s *APIService | |
| serviceName string | |
| rolloutId string | |
| urlParams_ gensupport.URLParams | |
| ifNoneMatch_ string | |
| ctx_ context.Context | |
| header_ http.Header | |
| } | |
| // Get: Gets a service configuration rollout. | |
| // | |
| // - rolloutId: The id of the rollout resource. | |
| // - serviceName: The name of the service. See the overview | |
| // (https://cloud.google.com/service-management/overview) for naming | |
| // requirements. For example: `example.googleapis.com`. | |
| func (r *ServicesRolloutsService) Get(serviceName string, rolloutId string) *ServicesRolloutsGetCall { | |
| c := &ServicesRolloutsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} | |
| c.serviceName = serviceName | |
| c.rolloutId = rolloutId | |
| return c | |
| } | |
| // Fields allows partial responses to be retrieved. See | |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more | |
| // details. | |
| func (c *ServicesRolloutsGetCall) Fields(s ...googleapi.Field) *ServicesRolloutsGetCall { | |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) | |
| return c | |
| } | |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the | |
| // object's ETag matches the given value. This is useful for getting updates | |
| // only after the object has changed since the last request. | |
| func (c *ServicesRolloutsGetCall) IfNoneMatch(entityTag string) *ServicesRolloutsGetCall { | |
| c.ifNoneMatch_ = entityTag | |
| return c | |
| } | |
| // Context sets the context to be used in this call's Do method. | |
| func (c *ServicesRolloutsGetCall) Context(ctx context.Context) *ServicesRolloutsGetCall { | |
| c.ctx_ = ctx | |
| return c | |
| } | |
| // Header returns a http.Header that can be modified by the caller to add | |
| // headers to the request. | |
| func (c *ServicesRolloutsGetCall) Header() http.Header { | |
| if c.header_ == nil { | |
| c.header_ = make(http.Header) | |
| } | |
| return c.header_ | |
| } | |
| func (c *ServicesRolloutsGetCall) doRequest(alt string) (*http.Response, error) { | |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) | |
| if c.ifNoneMatch_ != "" { | |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | |
| } | |
| c.urlParams_.Set("alt", alt) | |
| c.urlParams_.Set("prettyPrint", "false") | |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/services/{serviceName}/rollouts/{rolloutId}") | |
| urls += "?" + c.urlParams_.Encode() | |
| req, err := http.NewRequest("GET", urls, nil) | |
| if err != nil { | |
| return nil, err | |
| } | |
| req.Header = reqHeaders | |
| googleapi.Expand(req.URL, map[string]string{ | |
| "serviceName": c.serviceName, | |
| "rolloutId": c.rolloutId, | |
| }) | |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "servicemanagement.services.rollouts.get", "request", internallog.HTTPRequest(req, nil)) | |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) | |
| } | |
| // Do executes the "servicemanagement.services.rollouts.get" call. | |
| // Any non-2xx status code is an error. Response headers are in either | |
| // *Rollout.ServerResponse.Header or (if a response was returned at all) in | |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check | |
| // whether the returned error was because http.StatusNotModified was returned. | |
| func (c *ServicesRolloutsGetCall) Do(opts ...googleapi.CallOption) (*Rollout, error) { | |
| gensupport.SetOptions(c.urlParams_, opts...) | |
| res, err := c.doRequest("json") | |
| if res != nil && res.StatusCode == http.StatusNotModified { | |
| if res.Body != nil { | |
| res.Body.Close() | |
| } | |
| return nil, gensupport.WrapError(&googleapi.Error{ | |
| Code: res.StatusCode, | |
| Header: res.Header, | |
| }) | |
| } | |
| if err != nil { | |
| return nil, err | |
| } | |
| defer googleapi.CloseBody(res) | |
| if err := googleapi.CheckResponse(res); err != nil { | |
| return nil, gensupport.WrapError(err) | |
| } | |
| ret := &Rollout{ | |
| ServerResponse: googleapi.ServerResponse{ | |
| Header: res.Header, | |
| HTTPStatusCode: res.StatusCode, | |
| }, | |
| } | |
| target := &ret | |
| b, err := gensupport.DecodeResponseBytes(target, res) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "servicemanagement.services.rollouts.get", "response", internallog.HTTPResponse(res, b)) | |
| return ret, nil | |
| } | |
| type ServicesRolloutsListCall struct { | |
| s *APIService | |
| serviceName string | |
| urlParams_ gensupport.URLParams | |
| ifNoneMatch_ string | |
| ctx_ context.Context | |
| header_ http.Header | |
| } | |
| // List: Lists the history of the service configuration rollouts for a managed | |
| // service, from the newest to the oldest. | |
| // | |
| // - serviceName: The name of the service. See the overview | |
| // (https://cloud.google.com/service-management/overview) for naming | |
| // requirements. For example: `example.googleapis.com`. | |
| func (r *ServicesRolloutsService) List(serviceName string) *ServicesRolloutsListCall { | |
| c := &ServicesRolloutsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} | |
| c.serviceName = serviceName | |
| return c | |
| } | |
| // Filter sets the optional parameter "filter": Required. Use `filter` to | |
| // return subset of rollouts. The following filters are supported: -- By | |
| // status. For example, `filter='status=SUCCESS'` -- By strategy. For example, | |
| // `filter='strategy=TrafficPercentStrategy'` | |
| func (c *ServicesRolloutsListCall) Filter(filter string) *ServicesRolloutsListCall { | |
| c.urlParams_.Set("filter", filter) | |
| return c | |
| } | |
| // PageSize sets the optional parameter "pageSize": The max number of items to | |
| // include in the response list. Page size is 50 if not specified. Maximum | |
| // value is 100. | |
| func (c *ServicesRolloutsListCall) PageSize(pageSize int64) *ServicesRolloutsListCall { | |
| c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) | |
| return c | |
| } | |
| // PageToken sets the optional parameter "pageToken": The token of the page to | |
| // retrieve. | |
| func (c *ServicesRolloutsListCall) PageToken(pageToken string) *ServicesRolloutsListCall { | |
| c.urlParams_.Set("pageToken", pageToken) | |
| return c | |
| } | |
| // Fields allows partial responses to be retrieved. See | |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more | |
| // details. | |
| func (c *ServicesRolloutsListCall) Fields(s ...googleapi.Field) *ServicesRolloutsListCall { | |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) | |
| return c | |
| } | |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the | |
| // object's ETag matches the given value. This is useful for getting updates | |
| // only after the object has changed since the last request. | |
| func (c *ServicesRolloutsListCall) IfNoneMatch(entityTag string) *ServicesRolloutsListCall { | |
| c.ifNoneMatch_ = entityTag | |
| return c | |
| } | |
| // Context sets the context to be used in this call's Do method. | |
| func (c *ServicesRolloutsListCall) Context(ctx context.Context) *ServicesRolloutsListCall { | |
| c.ctx_ = ctx | |
| return c | |
| } | |
| // Header returns a http.Header that can be modified by the caller to add | |
| // headers to the request. | |
| func (c *ServicesRolloutsListCall) Header() http.Header { | |
| if c.header_ == nil { | |
| c.header_ = make(http.Header) | |
| } | |
| return c.header_ | |
| } | |
| func (c *ServicesRolloutsListCall) doRequest(alt string) (*http.Response, error) { | |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) | |
| if c.ifNoneMatch_ != "" { | |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | |
| } | |
| c.urlParams_.Set("alt", alt) | |
| c.urlParams_.Set("prettyPrint", "false") | |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/services/{serviceName}/rollouts") | |
| urls += "?" + c.urlParams_.Encode() | |
| req, err := http.NewRequest("GET", urls, nil) | |
| if err != nil { | |
| return nil, err | |
| } | |
| req.Header = reqHeaders | |
| googleapi.Expand(req.URL, map[string]string{ | |
| "serviceName": c.serviceName, | |
| }) | |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "servicemanagement.services.rollouts.list", "request", internallog.HTTPRequest(req, nil)) | |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) | |
| } | |
| // Do executes the "servicemanagement.services.rollouts.list" call. | |
| // Any non-2xx status code is an error. Response headers are in either | |
| // *ListServiceRolloutsResponse.ServerResponse.Header or (if a response was | |
| // returned at all) in error.(*googleapi.Error).Header. Use | |
| // googleapi.IsNotModified to check whether the returned error was because | |
| // http.StatusNotModified was returned. | |
| func (c *ServicesRolloutsListCall) Do(opts ...googleapi.CallOption) (*ListServiceRolloutsResponse, error) { | |
| gensupport.SetOptions(c.urlParams_, opts...) | |
| res, err := c.doRequest("json") | |
| if res != nil && res.StatusCode == http.StatusNotModified { | |
| if res.Body != nil { | |
| res.Body.Close() | |
| } | |
| return nil, gensupport.WrapError(&googleapi.Error{ | |
| Code: res.StatusCode, | |
| Header: res.Header, | |
| }) | |
| } | |
| if err != nil { | |
| return nil, err | |
| } | |
| defer googleapi.CloseBody(res) | |
| if err := googleapi.CheckResponse(res); err != nil { | |
| return nil, gensupport.WrapError(err) | |
| } | |
| ret := &ListServiceRolloutsResponse{ | |
| ServerResponse: googleapi.ServerResponse{ | |
| Header: res.Header, | |
| HTTPStatusCode: res.StatusCode, | |
| }, | |
| } | |
| target := &ret | |
| b, err := gensupport.DecodeResponseBytes(target, res) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "servicemanagement.services.rollouts.list", "response", internallog.HTTPResponse(res, b)) | |
| return ret, nil | |
| } | |
| // Pages invokes f for each page of results. | |
| // A non-nil error returned from f will halt the iteration. | |
| // The provided context supersedes any context provided to the Context method. | |
| func (c *ServicesRolloutsListCall) Pages(ctx context.Context, f func(*ListServiceRolloutsResponse) error) error { | |
| c.ctx_ = ctx | |
| defer c.PageToken(c.urlParams_.Get("pageToken")) | |
| for { | |
| x, err := c.Do() | |
| if err != nil { | |
| return err | |
| } | |
| if err := f(x); err != nil { | |
| return err | |
| } | |
| if x.NextPageToken == "" { | |
| return nil | |
| } | |
| c.PageToken(x.NextPageToken) | |
| } | |
| } |