class Google::Apis::ApigatewayV1::ApigatewayApiConfig
An API Configuration is a combination of settings for both the Managed Service and Gateways serving this API Config.
Attributes
Output only. Created time. Corresponds to the JSON property `createTime` @return [String]
Optional. Display name. Corresponds to the JSON property `displayName` @return [String]
Immutable. The Google
Cloud IAM Service Account that Gateways serving this config should use to authenticate to other services. This may either be the Service Account's email (“ACCOUNT_ID`@`PROJECT`.iam.gserviceaccount.com`) or its full resource name (`projects/`PROJECT`/accounts/`UNIQUE_ID“). This is most often used when the service is a GCP resource such as a Cloud Run Service or an IAP-secured service. Corresponds to the JSON property `gatewayServiceAccount` @return [String]
Optional. gRPC service definition files. If specified, openapi_documents
must not be included. Corresponds to the JSON property `grpcServices` @return [Array<Google::Apis::ApigatewayV1::ApigatewayApiConfigGrpcServiceDefinition>]
Optional. Resource labels to represent user-provided metadata. Refer to cloud documentation on labels for more details. cloud.google.com/compute/ docs/labeling-resources Corresponds to the JSON property `labels` @return [Hash<String,String>]
Optional. Service Configuration files. At least one must be included when using gRPC service definitions. See cloud.google.com/endpoints/docs/ grpc/grpc-service-config#service_configuration_overview for the expected file contents. If multiple files are specified, the files are merged with the following rules: * All singular scalar fields are merged using “last one wins” semantics in the order of the files uploaded. * Repeated fields are concatenated. * Singular embedded messages are merged using these rules for nested fields. Corresponds to the JSON property `managedServiceConfigs` @return [Array<Google::Apis::ApigatewayV1::ApigatewayApiConfigFile>]
Output only. Resource name of the API Config. Format: projects/`project`/ locations/global/apis/`api`/configs/`api_config` Corresponds to the JSON property `name` @return [String]
Optional. OpenAPI specification documents. If specified, grpc_services
and managed_service_configs
must not be included. Corresponds to the JSON property `openapiDocuments` @return [Array<Google::Apis::ApigatewayV1::ApigatewayApiConfigOpenApiDocument>]
Output only. The ID of the associated Service Config ( cloud.google. com/service-infrastructure/docs/glossary#config). Corresponds to the JSON property `serviceConfigId` @return [String]
Output only. State of the API Config. Corresponds to the JSON property `state` @return [String]
Output only. Updated time. Corresponds to the JSON property `updateTime` @return [String]
Public Class Methods
# File lib/google/apis/apigateway_v1/classes.rb, line 163 def initialize(**args) update!(**args) end
Public Instance Methods
Update properties of this object
# File lib/google/apis/apigateway_v1/classes.rb, line 168 def update!(**args) @create_time = args[:create_time] if args.key?(:create_time) @display_name = args[:display_name] if args.key?(:display_name) @gateway_service_account = args[:gateway_service_account] if args.key?(:gateway_service_account) @grpc_services = args[:grpc_services] if args.key?(:grpc_services) @labels = args[:labels] if args.key?(:labels) @managed_service_configs = args[:managed_service_configs] if args.key?(:managed_service_configs) @name = args[:name] if args.key?(:name) @openapi_documents = args[:openapi_documents] if args.key?(:openapi_documents) @service_config_id = args[:service_config_id] if args.key?(:service_config_id) @state = args[:state] if args.key?(:state) @update_time = args[:update_time] if args.key?(:update_time) end