Autogenerated update (2018-09-12)

Update:
- classroom_v1
- proximitybeacon_v1beta1
- serviceconsumermanagement_v1
- serviceusage_v1
- serviceusage_v1beta1
- speech_v1
- speech_v1beta1
- sqladmin_v1beta4
- testing_v1
This commit is contained in:
Google APIs 2018-09-12 00:36:25 +00:00
parent e2241f63da
commit 3796a9e6fb
25 changed files with 1224 additions and 369 deletions

View File

@ -80773,15 +80773,18 @@
"/speech:v1/RecognitionAudio/content": content "/speech:v1/RecognitionAudio/content": content
"/speech:v1/RecognitionAudio/uri": uri "/speech:v1/RecognitionAudio/uri": uri
"/speech:v1/RecognitionConfig": recognition_config "/speech:v1/RecognitionConfig": recognition_config
"/speech:v1/RecognitionConfig/enableAutomaticPunctuation": enable_automatic_punctuation
"/speech:v1/RecognitionConfig/enableWordConfidence": enable_word_confidence "/speech:v1/RecognitionConfig/enableWordConfidence": enable_word_confidence
"/speech:v1/RecognitionConfig/enableWordTimeOffsets": enable_word_time_offsets "/speech:v1/RecognitionConfig/enableWordTimeOffsets": enable_word_time_offsets
"/speech:v1/RecognitionConfig/encoding": encoding "/speech:v1/RecognitionConfig/encoding": encoding
"/speech:v1/RecognitionConfig/languageCode": language_code "/speech:v1/RecognitionConfig/languageCode": language_code
"/speech:v1/RecognitionConfig/maxAlternatives": max_alternatives "/speech:v1/RecognitionConfig/maxAlternatives": max_alternatives
"/speech:v1/RecognitionConfig/model": model
"/speech:v1/RecognitionConfig/profanityFilter": profanity_filter "/speech:v1/RecognitionConfig/profanityFilter": profanity_filter
"/speech:v1/RecognitionConfig/sampleRateHertz": sample_rate_hertz "/speech:v1/RecognitionConfig/sampleRateHertz": sample_rate_hertz
"/speech:v1/RecognitionConfig/speechContexts": speech_contexts "/speech:v1/RecognitionConfig/speechContexts": speech_contexts
"/speech:v1/RecognitionConfig/speechContexts/speech_context": speech_context "/speech:v1/RecognitionConfig/speechContexts/speech_context": speech_context
"/speech:v1/RecognitionConfig/useEnhanced": use_enhanced
"/speech:v1/RecognizeRequest": recognize_request "/speech:v1/RecognizeRequest": recognize_request
"/speech:v1/RecognizeRequest/audio": audio "/speech:v1/RecognizeRequest/audio": audio
"/speech:v1/RecognizeRequest/config": config "/speech:v1/RecognizeRequest/config": config
@ -84376,9 +84379,11 @@
"/testing:v1/Distribution/measurementTime": measurement_time "/testing:v1/Distribution/measurementTime": measurement_time
"/testing:v1/Environment": environment "/testing:v1/Environment": environment
"/testing:v1/Environment/androidDevice": android_device "/testing:v1/Environment/androidDevice": android_device
"/testing:v1/Environment/iosDevice": ios_device
"/testing:v1/EnvironmentMatrix": environment_matrix "/testing:v1/EnvironmentMatrix": environment_matrix
"/testing:v1/EnvironmentMatrix/androidDeviceList": android_device_list "/testing:v1/EnvironmentMatrix/androidDeviceList": android_device_list
"/testing:v1/EnvironmentMatrix/androidMatrix": android_matrix "/testing:v1/EnvironmentMatrix/androidMatrix": android_matrix
"/testing:v1/EnvironmentMatrix/iosDeviceList": ios_device_list
"/testing:v1/EnvironmentVariable": environment_variable "/testing:v1/EnvironmentVariable": environment_variable
"/testing:v1/EnvironmentVariable/key": key "/testing:v1/EnvironmentVariable/key": key
"/testing:v1/EnvironmentVariable/value": value "/testing:v1/EnvironmentVariable/value": value
@ -84395,6 +84400,45 @@
"/testing:v1/IntentFilter/categoryNames": category_names "/testing:v1/IntentFilter/categoryNames": category_names
"/testing:v1/IntentFilter/categoryNames/category_name": category_name "/testing:v1/IntentFilter/categoryNames/category_name": category_name
"/testing:v1/IntentFilter/mimeType": mime_type "/testing:v1/IntentFilter/mimeType": mime_type
"/testing:v1/IosDevice": ios_device
"/testing:v1/IosDevice/iosModelId": ios_model_id
"/testing:v1/IosDevice/iosVersionId": ios_version_id
"/testing:v1/IosDevice/locale": locale
"/testing:v1/IosDevice/orientation": orientation
"/testing:v1/IosDeviceCatalog": ios_device_catalog
"/testing:v1/IosDeviceCatalog/models": models
"/testing:v1/IosDeviceCatalog/models/model": model
"/testing:v1/IosDeviceCatalog/runtimeConfiguration": runtime_configuration
"/testing:v1/IosDeviceCatalog/versions": versions
"/testing:v1/IosDeviceCatalog/versions/version": version
"/testing:v1/IosDeviceList": ios_device_list
"/testing:v1/IosDeviceList/iosDevices": ios_devices
"/testing:v1/IosDeviceList/iosDevices/ios_device": ios_device
"/testing:v1/IosModel": ios_model
"/testing:v1/IosModel/deviceCapabilities": device_capabilities
"/testing:v1/IosModel/deviceCapabilities/device_capability": device_capability
"/testing:v1/IosModel/id": id
"/testing:v1/IosModel/name": name
"/testing:v1/IosModel/supportedVersionIds": supported_version_ids
"/testing:v1/IosModel/supportedVersionIds/supported_version_id": supported_version_id
"/testing:v1/IosModel/tags": tags
"/testing:v1/IosModel/tags/tag": tag
"/testing:v1/IosRuntimeConfiguration": ios_runtime_configuration
"/testing:v1/IosRuntimeConfiguration/locales": locales
"/testing:v1/IosRuntimeConfiguration/locales/locale": locale
"/testing:v1/IosRuntimeConfiguration/orientations": orientations
"/testing:v1/IosRuntimeConfiguration/orientations/orientation": orientation
"/testing:v1/IosTestSetup": ios_test_setup
"/testing:v1/IosTestSetup/networkProfile": network_profile
"/testing:v1/IosVersion": ios_version
"/testing:v1/IosVersion/id": id
"/testing:v1/IosVersion/majorVersion": major_version
"/testing:v1/IosVersion/minorVersion": minor_version
"/testing:v1/IosVersion/tags": tags
"/testing:v1/IosVersion/tags/tag": tag
"/testing:v1/IosXcTest": ios_xc_test
"/testing:v1/IosXcTest/testsZip": tests_zip
"/testing:v1/IosXcTest/xctestrun": xctestrun
"/testing:v1/LauncherActivityIntent": launcher_activity_intent "/testing:v1/LauncherActivityIntent": launcher_activity_intent
"/testing:v1/Locale": locale "/testing:v1/Locale": locale
"/testing:v1/Locale/id": id "/testing:v1/Locale/id": id
@ -84445,6 +84489,7 @@
"/testing:v1/TestDetails/videoRecordingDisabled": video_recording_disabled "/testing:v1/TestDetails/videoRecordingDisabled": video_recording_disabled
"/testing:v1/TestEnvironmentCatalog": test_environment_catalog "/testing:v1/TestEnvironmentCatalog": test_environment_catalog
"/testing:v1/TestEnvironmentCatalog/androidDeviceCatalog": android_device_catalog "/testing:v1/TestEnvironmentCatalog/androidDeviceCatalog": android_device_catalog
"/testing:v1/TestEnvironmentCatalog/iosDeviceCatalog": ios_device_catalog
"/testing:v1/TestEnvironmentCatalog/networkConfigurationCatalog": network_configuration_catalog "/testing:v1/TestEnvironmentCatalog/networkConfigurationCatalog": network_configuration_catalog
"/testing:v1/TestEnvironmentCatalog/softwareCatalog": software_catalog "/testing:v1/TestEnvironmentCatalog/softwareCatalog": software_catalog
"/testing:v1/TestExecution": test_execution "/testing:v1/TestExecution": test_execution
@ -84487,6 +84532,8 @@
"/testing:v1/TestSpecification/autoGoogleLogin": auto_google_login "/testing:v1/TestSpecification/autoGoogleLogin": auto_google_login
"/testing:v1/TestSpecification/disablePerformanceMetrics": disable_performance_metrics "/testing:v1/TestSpecification/disablePerformanceMetrics": disable_performance_metrics
"/testing:v1/TestSpecification/disableVideoRecording": disable_video_recording "/testing:v1/TestSpecification/disableVideoRecording": disable_video_recording
"/testing:v1/TestSpecification/iosTestSetup": ios_test_setup
"/testing:v1/TestSpecification/iosXcTest": ios_xc_test
"/testing:v1/TestSpecification/testSetup": test_setup "/testing:v1/TestSpecification/testSetup": test_setup
"/testing:v1/TestSpecification/testTimeout": test_timeout "/testing:v1/TestSpecification/testTimeout": test_timeout
"/testing:v1/ToolResultsExecution": tool_results_execution "/testing:v1/ToolResultsExecution": tool_results_execution

View File

@ -25,7 +25,7 @@ module Google
# @see https://developers.google.com/classroom/ # @see https://developers.google.com/classroom/
module ClassroomV1 module ClassroomV1
VERSION = 'V1' VERSION = 'V1'
REVISION = '20180807' REVISION = '20180908'
# View and manage announcements in Google Classroom # View and manage announcements in Google Classroom
AUTH_CLASSROOM_ANNOUNCEMENTS = 'https://www.googleapis.com/auth/classroom.announcements' AUTH_CLASSROOM_ANNOUNCEMENTS = 'https://www.googleapis.com/auth/classroom.announcements'

View File

@ -573,13 +573,13 @@ module Google
# @return [String] # @return [String]
attr_accessor :description attr_accessor :description
# Represents a whole calendar date, e.g. date of birth. The time of day and # Represents a whole calendar date, for example date of birth. The time of day
# time zone are either specified elsewhere or are not significant. The date # and time zone are either specified elsewhere or are not significant. The date
# is relative to the Proleptic Gregorian Calendar. The day may be 0 to # is relative to the Proleptic Gregorian Calendar. The day can be 0 to
# represent a year and month where the day is not significant, e.g. credit card # represent a year and month where the day is not significant, for example
# expiration date. The year may be 0 to represent a month and day independent # credit card expiration date. The year can be 0 to represent a month and day
# of year, e.g. anniversary date. Related types are google.type.TimeOfDay # independent of year, for example anniversary date. Related types are
# and `google.protobuf.Timestamp`. # google.type.TimeOfDay and `google.protobuf.Timestamp`.
# Corresponds to the JSON property `dueDate` # Corresponds to the JSON property `dueDate`
# @return [Google::Apis::ClassroomV1::Date] # @return [Google::Apis::ClassroomV1::Date]
attr_accessor :due_date attr_accessor :due_date
@ -706,13 +706,13 @@ module Google
end end
end end
# Represents a whole calendar date, e.g. date of birth. The time of day and # Represents a whole calendar date, for example date of birth. The time of day
# time zone are either specified elsewhere or are not significant. The date # and time zone are either specified elsewhere or are not significant. The date
# is relative to the Proleptic Gregorian Calendar. The day may be 0 to # is relative to the Proleptic Gregorian Calendar. The day can be 0 to
# represent a year and month where the day is not significant, e.g. credit card # represent a year and month where the day is not significant, for example
# expiration date. The year may be 0 to represent a month and day independent # credit card expiration date. The year can be 0 to represent a month and day
# of year, e.g. anniversary date. Related types are google.type.TimeOfDay # independent of year, for example anniversary date. Related types are
# and `google.protobuf.Timestamp`. # google.type.TimeOfDay and `google.protobuf.Timestamp`.
class Date class Date
include Google::Apis::Core::Hashable include Google::Apis::Core::Hashable

View File

@ -25,7 +25,7 @@ module Google
# @see https://developers.google.com/beacons/proximity/ # @see https://developers.google.com/beacons/proximity/
module ProximitybeaconV1beta1 module ProximitybeaconV1beta1
VERSION = 'V1beta1' VERSION = 'V1beta1'
REVISION = '20180610' REVISION = '20180909'
# View and modify your beacons # View and modify your beacons
AUTH_USERLOCATION_BEACON_REGISTRY = 'https://www.googleapis.com/auth/userlocation.beacon.registry' AUTH_USERLOCATION_BEACON_REGISTRY = 'https://www.googleapis.com/auth/userlocation.beacon.registry'

View File

@ -324,13 +324,13 @@ module Google
end end
end end
# Represents a whole calendar date, e.g. date of birth. The time of day and # Represents a whole calendar date, for example date of birth. The time of day
# time zone are either specified elsewhere or are not significant. The date # and time zone are either specified elsewhere or are not significant. The date
# is relative to the Proleptic Gregorian Calendar. The day may be 0 to # is relative to the Proleptic Gregorian Calendar. The day can be 0 to
# represent a year and month where the day is not significant, e.g. credit card # represent a year and month where the day is not significant, for example
# expiration date. The year may be 0 to represent a month and day independent # credit card expiration date. The year can be 0 to represent a month and day
# of year, e.g. anniversary date. Related types are google.type.TimeOfDay # independent of year, for example anniversary date. Related types are
# and `google.protobuf.Timestamp`. # google.type.TimeOfDay and `google.protobuf.Timestamp`.
class Date class Date
include Google::Apis::Core::Hashable include Google::Apis::Core::Hashable
@ -398,13 +398,13 @@ module Google
# @return [String] # @return [String]
attr_accessor :beacon_name attr_accessor :beacon_name
# Represents a whole calendar date, e.g. date of birth. The time of day and # Represents a whole calendar date, for example date of birth. The time of day
# time zone are either specified elsewhere or are not significant. The date # and time zone are either specified elsewhere or are not significant. The date
# is relative to the Proleptic Gregorian Calendar. The day may be 0 to # is relative to the Proleptic Gregorian Calendar. The day can be 0 to
# represent a year and month where the day is not significant, e.g. credit card # represent a year and month where the day is not significant, for example
# expiration date. The year may be 0 to represent a month and day independent # credit card expiration date. The year can be 0 to represent a month and day
# of year, e.g. anniversary date. Related types are google.type.TimeOfDay # independent of year, for example anniversary date. Related types are
# and `google.protobuf.Timestamp`. # google.type.TimeOfDay and `google.protobuf.Timestamp`.
# Corresponds to the JSON property `estimatedLowBatteryDate` # Corresponds to the JSON property `estimatedLowBatteryDate`
# @return [Google::Apis::ProximitybeaconV1beta1::Date] # @return [Google::Apis::ProximitybeaconV1beta1::Date]
attr_accessor :estimated_low_battery_date attr_accessor :estimated_low_battery_date

View File

@ -26,7 +26,7 @@ module Google
# @see https://cloud.google.com/service-consumer-management/docs/overview # @see https://cloud.google.com/service-consumer-management/docs/overview
module ServiceconsumermanagementV1 module ServiceconsumermanagementV1
VERSION = 'V1' VERSION = 'V1'
REVISION = '20180820' REVISION = '20180908'
# View and manage your data across Google Cloud Platform services # View and manage your data across Google Cloud Platform services
AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'

View File

@ -1242,79 +1242,79 @@ module Google
end end
end end
# `HttpRule` defines the mapping of an RPC method to one or more HTTP # # gRPC Transcoding
# REST API methods. The mapping specifies how different portions of the RPC # gRPC Transcoding is a feature for mapping between a gRPC method and one or
# request message are mapped to URL path, URL query parameters, and # more HTTP REST endpoints. It allows developers to build a single API service
# HTTP request body. The mapping is typically specified as an # that supports both gRPC APIs and REST APIs. Many systems, including [Google
# `google.api.http` annotation on the RPC method, # APIs](https://github.com/googleapis/googleapis),
# see "google/api/annotations.proto" for details. # [Cloud Endpoints](https://cloud.google.com/endpoints), [gRPC
# The mapping consists of a field specifying the path template and # Gateway](https://github.com/grpc-ecosystem/grpc-gateway),
# method kind. The path template can refer to fields in the request # and [Envoy](https://github.com/envoyproxy/envoy) proxy support this feature
# message, as in the example below which describes a REST GET # and use it for large scale production services.
# operation on a resource collection of messages: # `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 ` # service Messaging `
# rpc GetMessage(GetMessageRequest) returns (Message) ` # rpc GetMessage(GetMessageRequest) returns (Message) `
# option (google.api.http).get = "/v1/messages/`message_id`/`sub. # option (google.api.http) = `
# subfield`"; # get: "/v1/`name=messages/*"`"
# `;
# ` # `
# ` # `
# message GetMessageRequest ` # message GetMessageRequest `
# message SubMessage ` # string name = 1; // Mapped to URL path.
# string subfield = 1;
# `
# string message_id = 1; // mapped to the URL
# SubMessage sub = 2; // `sub.subfield` is url-mapped
# ` # `
# message Message ` # message Message `
# string text = 1; // content of the resource # string text = 1; // The resource content.
# ` # `
# The same http annotation can alternatively be expressed inside the # This enables an HTTP REST to gRPC mapping as below:
# `GRPC API Configuration` YAML file. # HTTP | gRPC
# http:
# rules:
# - selector: <proto_package_name>.Messaging.GetMessage
# get: /v1/messages/`message_id`/`sub.subfield`
# This definition enables an automatic, bidrectional mapping of HTTP
# JSON to RPC. Example:
# HTTP | RPC
# -----|----- # -----|-----
# `GET /v1/messages/123456/foo` | `GetMessage(message_id: "123456" sub: # `GET /v1/messages/123456` | `GetMessage(name: "messages/123456")`
# SubMessage(subfield: "foo"))` # Any fields in the request message which are not bound by the path template
# In general, not only fields but also field paths can be referenced # automatically become HTTP query parameters if there is no HTTP request body.
# from a path pattern. Fields mapped to the path pattern cannot be # For example:
# repeated and must have a primitive (non-message) type.
# Any fields in the request message which are not bound by the path
# pattern automatically become (optional) HTTP query
# parameters. Assume the following definition of the request message:
# service Messaging ` # service Messaging `
# rpc GetMessage(GetMessageRequest) returns (Message) ` # rpc GetMessage(GetMessageRequest) returns (Message) `
# option (google.api.http).get = "/v1/messages/`message_id`"; # option (google.api.http) = `
# get:"/v1/messages/`message_id`"
# `;
# ` # `
# ` # `
# message GetMessageRequest ` # message GetMessageRequest `
# message SubMessage ` # message SubMessage `
# string subfield = 1; # string subfield = 1;
# ` # `
# string message_id = 1; // mapped to the URL # string message_id = 1; // Mapped to URL path.
# int64 revision = 2; // becomes a parameter # int64 revision = 2; // Mapped to URL query parameter `revision`.
# SubMessage sub = 3; // `sub.subfield` becomes a parameter # SubMessage sub = 3; // Mapped to URL query parameter `sub.subfield`.
# ` # `
# This enables a HTTP JSON to RPC mapping as below: # This enables a HTTP JSON to RPC mapping as below:
# HTTP | RPC # HTTP | gRPC
# -----|----- # -----|-----
# `GET /v1/messages/123456?revision=2&sub.subfield=foo` | `GetMessage(message_id: # `GET /v1/messages/123456?revision=2&sub.subfield=foo` | `GetMessage(message_id:
# "123456" revision: 2 sub: SubMessage(subfield: "foo"))` # "123456" revision: 2 sub: SubMessage(subfield: "foo"))`
# Note that fields which are mapped to HTTP parameters must have a # Note that fields which are mapped to URL query parameters must have a
# primitive type or a repeated primitive type. Message types are not # primitive type or a repeated primitive type or a non-repeated message type.
# allowed. In the case of a repeated type, the parameter can be # In the case of a repeated type, the parameter can be repeated in the URL
# repeated in the URL, as in `...?param=A&param=B`. # as `...?param=A&param=B`. In the case of a message type, each field of the
# For HTTP method kinds which allow a request body, the `body` field # 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 # specifies the mapping. Consider a REST update method on the
# message resource collection: # message resource collection:
# service Messaging ` # service Messaging `
# rpc UpdateMessage(UpdateMessageRequest) returns (Message) ` # rpc UpdateMessage(UpdateMessageRequest) returns (Message) `
# option (google.api.http) = ` # option (google.api.http) = `
# put: "/v1/messages/`message_id`" # patch: "/v1/messages/`message_id`"
# body: "message" # body: "message"
# `; # `;
# ` # `
@ -1326,9 +1326,9 @@ module Google
# The following HTTP JSON to RPC mapping is enabled, where the # The following HTTP JSON to RPC mapping is enabled, where the
# representation of the JSON in the request body is determined by # representation of the JSON in the request body is determined by
# protos JSON encoding: # protos JSON encoding:
# HTTP | RPC # HTTP | gRPC
# -----|----- # -----|-----
# `PUT /v1/messages/123456 ` "text": "Hi!" `` | `UpdateMessage(message_id: " # `PATCH /v1/messages/123456 ` "text": "Hi!" `` | `UpdateMessage(message_id: "
# 123456" message ` text: "Hi!" `)` # 123456" message ` text: "Hi!" `)`
# The special name `*` can be used in the body mapping to define that # 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 # every field not bound by the path template should be mapped to the
@ -1337,7 +1337,7 @@ module Google
# service Messaging ` # service Messaging `
# rpc UpdateMessage(Message) returns (Message) ` # rpc UpdateMessage(Message) returns (Message) `
# option (google.api.http) = ` # option (google.api.http) = `
# put: "/v1/messages/`message_id`" # patch: "/v1/messages/`message_id`"
# body: "*" # body: "*"
# `; # `;
# ` # `
@ -1347,13 +1347,13 @@ module Google
# string text = 2; # string text = 2;
# ` # `
# The following HTTP JSON to RPC mapping is enabled: # The following HTTP JSON to RPC mapping is enabled:
# HTTP | RPC # HTTP | gRPC
# -----|----- # -----|-----
# `PUT /v1/messages/123456 ` "text": "Hi!" `` | `UpdateMessage(message_id: " # `PATCH /v1/messages/123456 ` "text": "Hi!" `` | `UpdateMessage(message_id: "
# 123456" text: "Hi!")` # 123456" text: "Hi!")`
# Note that when using `*` in the body mapping, it is not possible to # 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 # have HTTP parameters, as all fields not bound by the path end in
# the body. This makes this option more rarely used in practice of # the body. This makes this option more rarely used in practice when
# defining REST APIs. The common usage of `*` is in custom methods # defining REST APIs. The common usage of `*` is in custom methods
# which don't use the URL at all for transferring data. # which don't use the URL at all for transferring data.
# It is possible to define multiple HTTP methods for one RPC by using # It is possible to define multiple HTTP methods for one RPC by using
@ -1372,56 +1372,96 @@ module Google
# string message_id = 1; # string message_id = 1;
# string user_id = 2; # string user_id = 2;
# ` # `
# This enables the following two alternative HTTP JSON to RPC # This enables the following two alternative HTTP JSON to RPC mappings:
# mappings: # HTTP | gRPC
# HTTP | RPC
# -----|----- # -----|-----
# `GET /v1/messages/123456` | `GetMessage(message_id: "123456")` # `GET /v1/messages/123456` | `GetMessage(message_id: "123456")`
# `GET /v1/users/me/messages/123456` | `GetMessage(user_id: "me" message_id: " # `GET /v1/users/me/messages/123456` | `GetMessage(user_id: "me" message_id: "
# 123456")` # 123456")`
# # Rules for HTTP mapping # ## Rules for HTTP mapping
# The rules for mapping HTTP path, query parameters, and body fields # 1. Leaf request fields (recursive expansion nested messages in the request
# to the request message are as follows: # message) are classified into three categories:
# 1. The `body` field specifies either `*` or a field path, or is # - Fields referred by the path template. They are passed via the URL path.
# omitted. If omitted, it indicates there is no HTTP request body. # - Fields referred by the HttpRule.body. They are passed via the HTTP
# 2. Leaf fields (recursive expansion of nested messages in the # request body.
# request) can be classified into three types: # - All other fields are passed via the URL query parameters, and the
# (a) Matched in the URL template. # parameter name is the field path in the request message. A repeated
# (b) Covered by body (if body is `*`, everything except (a) fields; # field can be represented as multiple query parameters under the same
# else everything under the body field) # name.
# (c) All other fields. # 2. If HttpRule.body is "*", there is no URL query parameter, all fields
# 3. URL query parameters found in the HTTP request are mapped to (c) fields. # are passed via URL path and HTTP request body.
# 4. Any body sent with an HTTP request can contain only (b) fields. # 3. If HttpRule.body is omitted, there is no HTTP request body, all
# The syntax of the path template is as follows: # fields are passed via URL path and URL query parameters.
# ### Path template syntax
# Template = "/" Segments [ Verb ] ; # Template = "/" Segments [ Verb ] ;
# Segments = Segment ` "/" Segment ` ; # Segments = Segment ` "/" Segment ` ;
# Segment = "*" | "**" | LITERAL | Variable ; # Segment = "*" | "**" | LITERAL | Variable ;
# Variable = "`" FieldPath [ "=" Segments ] "`" ; # Variable = "`" FieldPath [ "=" Segments ] "`" ;
# FieldPath = IDENT ` "." IDENT ` ; # FieldPath = IDENT ` "." IDENT ` ;
# Verb = ":" LITERAL ; # Verb = ":" LITERAL ;
# The syntax `*` matches a single path segment. The syntax `**` matches zero # The syntax `*` matches a single URL path segment. The syntax `**` matches
# or more path segments, which must be the last part of the path except the # zero or more URL path segments, which must be the last part of the URL path
# `Verb`. The syntax `LITERAL` matches literal text in the path. # except the `Verb`.
# The syntax `Variable` matches part of the URL path as specified by its # 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 # 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`` # matches a single path segment, its template may be omitted, e.g. ``var``
# is equivalent to ``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 # If a variable contains exactly one path segment, such as `"`var`"` or
# `"`var=*`"`, when such a variable is expanded into a URL path, all characters # `"`var=*`"`, when such a variable is expanded into a URL path on the client
# except `[-_.~0-9a-zA-Z]` are percent-encoded. Such variables show up in the # side, all characters except `[-_.~0-9a-zA-Z]` are percent-encoded. The
# Discovery Document as ``var``. # server side does the reverse decoding. Such variables show up in the
# If a variable contains one or more path segments, such as `"`var=foo/*`"` # [Discovery Document](https://developers.google.com/discovery/v1/reference/apis)
# or `"`var=**`"`, when such a variable is expanded into a URL path, all # as ``var``.
# characters except `[-_.~/0-9a-zA-Z]` are percent-encoded. Such variables # If a variable contains multiple path segments, such as `"`var=foo/*`"`
# show up in the Discovery Document as ``+var``. # or `"`var=**`"`, when such a variable is expanded into a URL path on the
# NOTE: While the single segment variable matches the semantics of # client side, all characters except `[-_.~/0-9a-zA-Z]` are percent-encoded.
# [RFC 6570](https://tools.ietf.org/html/rfc6570) Section 3.2.2 # The server side does the reverse decoding, except "%2F" and "%2f" are left
# Simple String Expansion, the multi segment variable **does not** match # unchanged. Such variables show up in the
# RFC 6570 Reserved Expansion. The reason is that the Reserved Expansion # [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.
# Example:
# http:
# rules:
# # Selects a gRPC method and applies HttpRule to it.
# - 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 # does not expand special characters like `?` and `#`, which would lead
# to invalid URLs. # to invalid URLs. As the result, gRPC Transcoding uses a custom encoding
# NOTE: the field paths in variables and in the `body` must not refer to # for multi segment variables.
# repeated fields or map fields. # 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.
class HttpRule class HttpRule
include Google::Apis::Core::Hashable include Google::Apis::Core::Hashable
@ -1440,10 +1480,11 @@ module Google
# @return [Array<Google::Apis::ServiceconsumermanagementV1::AuthorizationRule>] # @return [Array<Google::Apis::ServiceconsumermanagementV1::AuthorizationRule>]
attr_accessor :authorizations attr_accessor :authorizations
# The name of the request field whose value is mapped to the HTTP body, or # The name of the request field whose value is mapped to the HTTP request
# `*` for mapping all fields not captured by the path pattern to the HTTP # body, or `*` for mapping all request fields not captured by the path
# body. NOTE: the referred field must not be a repeated field and must be # pattern to the HTTP body, or omitted for not having any HTTP request body.
# present at the top-level of request message type. # NOTE: the referred field must be present at the top-level of the request
# message type.
# Corresponds to the JSON property `body` # Corresponds to the JSON property `body`
# @return [String] # @return [String]
attr_accessor :body attr_accessor :body
@ -1453,12 +1494,13 @@ module Google
# @return [Google::Apis::ServiceconsumermanagementV1::CustomHttpPattern] # @return [Google::Apis::ServiceconsumermanagementV1::CustomHttpPattern]
attr_accessor :custom attr_accessor :custom
# Used for deleting a resource. # Maps to HTTP DELETE. Used for deleting a resource.
# Corresponds to the JSON property `delete` # Corresponds to the JSON property `delete`
# @return [String] # @return [String]
attr_accessor :delete attr_accessor :delete
# Used for listing and getting information about resources. # Maps to HTTP GET. Used for listing and getting information about
# resources.
# Corresponds to the JSON property `get` # Corresponds to the JSON property `get`
# @return [String] # @return [String]
attr_accessor :get attr_accessor :get
@ -1479,24 +1521,26 @@ module Google
# @return [Google::Apis::ServiceconsumermanagementV1::MediaUpload] # @return [Google::Apis::ServiceconsumermanagementV1::MediaUpload]
attr_accessor :media_upload attr_accessor :media_upload
# Used for updating a resource. # Maps to HTTP PATCH. Used for updating a resource.
# Corresponds to the JSON property `patch` # Corresponds to the JSON property `patch`
# @return [String] # @return [String]
attr_accessor :patch attr_accessor :patch
# Used for creating a resource. # Maps to HTTP POST. Used for creating a resource or performing an action.
# Corresponds to the JSON property `post` # Corresponds to the JSON property `post`
# @return [String] # @return [String]
attr_accessor :post attr_accessor :post
# Used for updating a resource. # Maps to HTTP PUT. Used for replacing a resource.
# Corresponds to the JSON property `put` # Corresponds to the JSON property `put`
# @return [String] # @return [String]
attr_accessor :put attr_accessor :put
# Optional. The name of the response field whose value is mapped to the HTTP # Optional. The name of the response field whose value is mapped to the HTTP
# body of response. Other response fields are ignored. When # response body. When omitted, the entire response message will be used
# not set, the response message will be used as HTTP body of response. # as the HTTP response body.
# NOTE: The referred field must be present at the top-level of the response
# message type.
# Corresponds to the JSON property `responseBody` # Corresponds to the JSON property `responseBody`
# @return [String] # @return [String]
attr_accessor :response_body attr_accessor :response_body
@ -1539,7 +1583,7 @@ module Google
# @return [String] # @return [String]
attr_accessor :rest_method_name attr_accessor :rest_method_name
# Selects methods to which this rule applies. # Selects a method to which this rule applies.
# Refer to selector for syntax details. # Refer to selector for syntax details.
# Corresponds to the JSON property `selector` # Corresponds to the JSON property `selector`
# @return [String] # @return [String]

View File

@ -27,7 +27,7 @@ module Google
# @see https://cloud.google.com/service-usage/ # @see https://cloud.google.com/service-usage/
module ServiceusageV1 module ServiceusageV1
VERSION = 'V1' VERSION = 'V1'
REVISION = '20180820' REVISION = '20180908'
# View and manage your data across Google Cloud Platform services # View and manage your data across Google Cloud Platform services
AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'

View File

@ -1999,79 +1999,79 @@ module Google
end end
end end
# `HttpRule` defines the mapping of an RPC method to one or more HTTP # # gRPC Transcoding
# REST API methods. The mapping specifies how different portions of the RPC # gRPC Transcoding is a feature for mapping between a gRPC method and one or
# request message are mapped to URL path, URL query parameters, and # more HTTP REST endpoints. It allows developers to build a single API service
# HTTP request body. The mapping is typically specified as an # that supports both gRPC APIs and REST APIs. Many systems, including [Google
# `google.api.http` annotation on the RPC method, # APIs](https://github.com/googleapis/googleapis),
# see "google/api/annotations.proto" for details. # [Cloud Endpoints](https://cloud.google.com/endpoints), [gRPC
# The mapping consists of a field specifying the path template and # Gateway](https://github.com/grpc-ecosystem/grpc-gateway),
# method kind. The path template can refer to fields in the request # and [Envoy](https://github.com/envoyproxy/envoy) proxy support this feature
# message, as in the example below which describes a REST GET # and use it for large scale production services.
# operation on a resource collection of messages: # `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 ` # service Messaging `
# rpc GetMessage(GetMessageRequest) returns (Message) ` # rpc GetMessage(GetMessageRequest) returns (Message) `
# option (google.api.http).get = "/v1/messages/`message_id`/`sub. # option (google.api.http) = `
# subfield`"; # get: "/v1/`name=messages/*"`"
# `;
# ` # `
# ` # `
# message GetMessageRequest ` # message GetMessageRequest `
# message SubMessage ` # string name = 1; // Mapped to URL path.
# string subfield = 1;
# `
# string message_id = 1; // mapped to the URL
# SubMessage sub = 2; // `sub.subfield` is url-mapped
# ` # `
# message Message ` # message Message `
# string text = 1; // content of the resource # string text = 1; // The resource content.
# ` # `
# The same http annotation can alternatively be expressed inside the # This enables an HTTP REST to gRPC mapping as below:
# `GRPC API Configuration` YAML file. # HTTP | gRPC
# http:
# rules:
# - selector: <proto_package_name>.Messaging.GetMessage
# get: /v1/messages/`message_id`/`sub.subfield`
# This definition enables an automatic, bidrectional mapping of HTTP
# JSON to RPC. Example:
# HTTP | RPC
# -----|----- # -----|-----
# `GET /v1/messages/123456/foo` | `GetMessage(message_id: "123456" sub: # `GET /v1/messages/123456` | `GetMessage(name: "messages/123456")`
# SubMessage(subfield: "foo"))` # Any fields in the request message which are not bound by the path template
# In general, not only fields but also field paths can be referenced # automatically become HTTP query parameters if there is no HTTP request body.
# from a path pattern. Fields mapped to the path pattern cannot be # For example:
# repeated and must have a primitive (non-message) type.
# Any fields in the request message which are not bound by the path
# pattern automatically become (optional) HTTP query
# parameters. Assume the following definition of the request message:
# service Messaging ` # service Messaging `
# rpc GetMessage(GetMessageRequest) returns (Message) ` # rpc GetMessage(GetMessageRequest) returns (Message) `
# option (google.api.http).get = "/v1/messages/`message_id`"; # option (google.api.http) = `
# get:"/v1/messages/`message_id`"
# `;
# ` # `
# ` # `
# message GetMessageRequest ` # message GetMessageRequest `
# message SubMessage ` # message SubMessage `
# string subfield = 1; # string subfield = 1;
# ` # `
# string message_id = 1; // mapped to the URL # string message_id = 1; // Mapped to URL path.
# int64 revision = 2; // becomes a parameter # int64 revision = 2; // Mapped to URL query parameter `revision`.
# SubMessage sub = 3; // `sub.subfield` becomes a parameter # SubMessage sub = 3; // Mapped to URL query parameter `sub.subfield`.
# ` # `
# This enables a HTTP JSON to RPC mapping as below: # This enables a HTTP JSON to RPC mapping as below:
# HTTP | RPC # HTTP | gRPC
# -----|----- # -----|-----
# `GET /v1/messages/123456?revision=2&sub.subfield=foo` | `GetMessage(message_id: # `GET /v1/messages/123456?revision=2&sub.subfield=foo` | `GetMessage(message_id:
# "123456" revision: 2 sub: SubMessage(subfield: "foo"))` # "123456" revision: 2 sub: SubMessage(subfield: "foo"))`
# Note that fields which are mapped to HTTP parameters must have a # Note that fields which are mapped to URL query parameters must have a
# primitive type or a repeated primitive type. Message types are not # primitive type or a repeated primitive type or a non-repeated message type.
# allowed. In the case of a repeated type, the parameter can be # In the case of a repeated type, the parameter can be repeated in the URL
# repeated in the URL, as in `...?param=A&param=B`. # as `...?param=A&param=B`. In the case of a message type, each field of the
# For HTTP method kinds which allow a request body, the `body` field # 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 # specifies the mapping. Consider a REST update method on the
# message resource collection: # message resource collection:
# service Messaging ` # service Messaging `
# rpc UpdateMessage(UpdateMessageRequest) returns (Message) ` # rpc UpdateMessage(UpdateMessageRequest) returns (Message) `
# option (google.api.http) = ` # option (google.api.http) = `
# put: "/v1/messages/`message_id`" # patch: "/v1/messages/`message_id`"
# body: "message" # body: "message"
# `; # `;
# ` # `
@ -2083,9 +2083,9 @@ module Google
# The following HTTP JSON to RPC mapping is enabled, where the # The following HTTP JSON to RPC mapping is enabled, where the
# representation of the JSON in the request body is determined by # representation of the JSON in the request body is determined by
# protos JSON encoding: # protos JSON encoding:
# HTTP | RPC # HTTP | gRPC
# -----|----- # -----|-----
# `PUT /v1/messages/123456 ` "text": "Hi!" `` | `UpdateMessage(message_id: " # `PATCH /v1/messages/123456 ` "text": "Hi!" `` | `UpdateMessage(message_id: "
# 123456" message ` text: "Hi!" `)` # 123456" message ` text: "Hi!" `)`
# The special name `*` can be used in the body mapping to define that # 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 # every field not bound by the path template should be mapped to the
@ -2094,7 +2094,7 @@ module Google
# service Messaging ` # service Messaging `
# rpc UpdateMessage(Message) returns (Message) ` # rpc UpdateMessage(Message) returns (Message) `
# option (google.api.http) = ` # option (google.api.http) = `
# put: "/v1/messages/`message_id`" # patch: "/v1/messages/`message_id`"
# body: "*" # body: "*"
# `; # `;
# ` # `
@ -2104,13 +2104,13 @@ module Google
# string text = 2; # string text = 2;
# ` # `
# The following HTTP JSON to RPC mapping is enabled: # The following HTTP JSON to RPC mapping is enabled:
# HTTP | RPC # HTTP | gRPC
# -----|----- # -----|-----
# `PUT /v1/messages/123456 ` "text": "Hi!" `` | `UpdateMessage(message_id: " # `PATCH /v1/messages/123456 ` "text": "Hi!" `` | `UpdateMessage(message_id: "
# 123456" text: "Hi!")` # 123456" text: "Hi!")`
# Note that when using `*` in the body mapping, it is not possible to # 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 # have HTTP parameters, as all fields not bound by the path end in
# the body. This makes this option more rarely used in practice of # the body. This makes this option more rarely used in practice when
# defining REST APIs. The common usage of `*` is in custom methods # defining REST APIs. The common usage of `*` is in custom methods
# which don't use the URL at all for transferring data. # which don't use the URL at all for transferring data.
# It is possible to define multiple HTTP methods for one RPC by using # It is possible to define multiple HTTP methods for one RPC by using
@ -2129,56 +2129,96 @@ module Google
# string message_id = 1; # string message_id = 1;
# string user_id = 2; # string user_id = 2;
# ` # `
# This enables the following two alternative HTTP JSON to RPC # This enables the following two alternative HTTP JSON to RPC mappings:
# mappings: # HTTP | gRPC
# HTTP | RPC
# -----|----- # -----|-----
# `GET /v1/messages/123456` | `GetMessage(message_id: "123456")` # `GET /v1/messages/123456` | `GetMessage(message_id: "123456")`
# `GET /v1/users/me/messages/123456` | `GetMessage(user_id: "me" message_id: " # `GET /v1/users/me/messages/123456` | `GetMessage(user_id: "me" message_id: "
# 123456")` # 123456")`
# # Rules for HTTP mapping # ## Rules for HTTP mapping
# The rules for mapping HTTP path, query parameters, and body fields # 1. Leaf request fields (recursive expansion nested messages in the request
# to the request message are as follows: # message) are classified into three categories:
# 1. The `body` field specifies either `*` or a field path, or is # - Fields referred by the path template. They are passed via the URL path.
# omitted. If omitted, it indicates there is no HTTP request body. # - Fields referred by the HttpRule.body. They are passed via the HTTP
# 2. Leaf fields (recursive expansion of nested messages in the # request body.
# request) can be classified into three types: # - All other fields are passed via the URL query parameters, and the
# (a) Matched in the URL template. # parameter name is the field path in the request message. A repeated
# (b) Covered by body (if body is `*`, everything except (a) fields; # field can be represented as multiple query parameters under the same
# else everything under the body field) # name.
# (c) All other fields. # 2. If HttpRule.body is "*", there is no URL query parameter, all fields
# 3. URL query parameters found in the HTTP request are mapped to (c) fields. # are passed via URL path and HTTP request body.
# 4. Any body sent with an HTTP request can contain only (b) fields. # 3. If HttpRule.body is omitted, there is no HTTP request body, all
# The syntax of the path template is as follows: # fields are passed via URL path and URL query parameters.
# ### Path template syntax
# Template = "/" Segments [ Verb ] ; # Template = "/" Segments [ Verb ] ;
# Segments = Segment ` "/" Segment ` ; # Segments = Segment ` "/" Segment ` ;
# Segment = "*" | "**" | LITERAL | Variable ; # Segment = "*" | "**" | LITERAL | Variable ;
# Variable = "`" FieldPath [ "=" Segments ] "`" ; # Variable = "`" FieldPath [ "=" Segments ] "`" ;
# FieldPath = IDENT ` "." IDENT ` ; # FieldPath = IDENT ` "." IDENT ` ;
# Verb = ":" LITERAL ; # Verb = ":" LITERAL ;
# The syntax `*` matches a single path segment. The syntax `**` matches zero # The syntax `*` matches a single URL path segment. The syntax `**` matches
# or more path segments, which must be the last part of the path except the # zero or more URL path segments, which must be the last part of the URL path
# `Verb`. The syntax `LITERAL` matches literal text in the path. # except the `Verb`.
# The syntax `Variable` matches part of the URL path as specified by its # 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 # 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`` # matches a single path segment, its template may be omitted, e.g. ``var``
# is equivalent to ``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 # If a variable contains exactly one path segment, such as `"`var`"` or
# `"`var=*`"`, when such a variable is expanded into a URL path, all characters # `"`var=*`"`, when such a variable is expanded into a URL path on the client
# except `[-_.~0-9a-zA-Z]` are percent-encoded. Such variables show up in the # side, all characters except `[-_.~0-9a-zA-Z]` are percent-encoded. The
# Discovery Document as ``var``. # server side does the reverse decoding. Such variables show up in the
# If a variable contains one or more path segments, such as `"`var=foo/*`"` # [Discovery Document](https://developers.google.com/discovery/v1/reference/apis)
# or `"`var=**`"`, when such a variable is expanded into a URL path, all # as ``var``.
# characters except `[-_.~/0-9a-zA-Z]` are percent-encoded. Such variables # If a variable contains multiple path segments, such as `"`var=foo/*`"`
# show up in the Discovery Document as ``+var``. # or `"`var=**`"`, when such a variable is expanded into a URL path on the
# NOTE: While the single segment variable matches the semantics of # client side, all characters except `[-_.~/0-9a-zA-Z]` are percent-encoded.
# [RFC 6570](https://tools.ietf.org/html/rfc6570) Section 3.2.2 # The server side does the reverse decoding, except "%2F" and "%2f" are left
# Simple String Expansion, the multi segment variable **does not** match # unchanged. Such variables show up in the
# RFC 6570 Reserved Expansion. The reason is that the Reserved Expansion # [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.
# Example:
# http:
# rules:
# # Selects a gRPC method and applies HttpRule to it.
# - 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 # does not expand special characters like `?` and `#`, which would lead
# to invalid URLs. # to invalid URLs. As the result, gRPC Transcoding uses a custom encoding
# NOTE: the field paths in variables and in the `body` must not refer to # for multi segment variables.
# repeated fields or map fields. # 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.
class HttpRule class HttpRule
include Google::Apis::Core::Hashable include Google::Apis::Core::Hashable
@ -2197,10 +2237,11 @@ module Google
# @return [Array<Google::Apis::ServiceusageV1::AuthorizationRule>] # @return [Array<Google::Apis::ServiceusageV1::AuthorizationRule>]
attr_accessor :authorizations attr_accessor :authorizations
# The name of the request field whose value is mapped to the HTTP body, or # The name of the request field whose value is mapped to the HTTP request
# `*` for mapping all fields not captured by the path pattern to the HTTP # body, or `*` for mapping all request fields not captured by the path
# body. NOTE: the referred field must not be a repeated field and must be # pattern to the HTTP body, or omitted for not having any HTTP request body.
# present at the top-level of request message type. # NOTE: the referred field must be present at the top-level of the request
# message type.
# Corresponds to the JSON property `body` # Corresponds to the JSON property `body`
# @return [String] # @return [String]
attr_accessor :body attr_accessor :body
@ -2210,12 +2251,13 @@ module Google
# @return [Google::Apis::ServiceusageV1::CustomHttpPattern] # @return [Google::Apis::ServiceusageV1::CustomHttpPattern]
attr_accessor :custom attr_accessor :custom
# Used for deleting a resource. # Maps to HTTP DELETE. Used for deleting a resource.
# Corresponds to the JSON property `delete` # Corresponds to the JSON property `delete`
# @return [String] # @return [String]
attr_accessor :delete attr_accessor :delete
# Used for listing and getting information about resources. # Maps to HTTP GET. Used for listing and getting information about
# resources.
# Corresponds to the JSON property `get` # Corresponds to the JSON property `get`
# @return [String] # @return [String]
attr_accessor :get attr_accessor :get
@ -2236,24 +2278,26 @@ module Google
# @return [Google::Apis::ServiceusageV1::MediaUpload] # @return [Google::Apis::ServiceusageV1::MediaUpload]
attr_accessor :media_upload attr_accessor :media_upload
# Used for updating a resource. # Maps to HTTP PATCH. Used for updating a resource.
# Corresponds to the JSON property `patch` # Corresponds to the JSON property `patch`
# @return [String] # @return [String]
attr_accessor :patch attr_accessor :patch
# Used for creating a resource. # Maps to HTTP POST. Used for creating a resource or performing an action.
# Corresponds to the JSON property `post` # Corresponds to the JSON property `post`
# @return [String] # @return [String]
attr_accessor :post attr_accessor :post
# Used for updating a resource. # Maps to HTTP PUT. Used for replacing a resource.
# Corresponds to the JSON property `put` # Corresponds to the JSON property `put`
# @return [String] # @return [String]
attr_accessor :put attr_accessor :put
# Optional. The name of the response field whose value is mapped to the HTTP # Optional. The name of the response field whose value is mapped to the HTTP
# body of response. Other response fields are ignored. When # response body. When omitted, the entire response message will be used
# not set, the response message will be used as HTTP body of response. # as the HTTP response body.
# NOTE: The referred field must be present at the top-level of the response
# message type.
# Corresponds to the JSON property `responseBody` # Corresponds to the JSON property `responseBody`
# @return [String] # @return [String]
attr_accessor :response_body attr_accessor :response_body
@ -2296,7 +2340,7 @@ module Google
# @return [String] # @return [String]
attr_accessor :rest_method_name attr_accessor :rest_method_name
# Selects methods to which this rule applies. # Selects a method to which this rule applies.
# Refer to selector for syntax details. # Refer to selector for syntax details.
# Corresponds to the JSON property `selector` # Corresponds to the JSON property `selector`
# @return [String] # @return [String]

View File

@ -27,7 +27,7 @@ module Google
# @see https://cloud.google.com/service-usage/ # @see https://cloud.google.com/service-usage/
module ServiceusageV1beta1 module ServiceusageV1beta1
VERSION = 'V1beta1' VERSION = 'V1beta1'
REVISION = '20180820' REVISION = '20180908'
# View and manage your data across Google Cloud Platform services # View and manage your data across Google Cloud Platform services
AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'

View File

@ -1975,79 +1975,79 @@ module Google
end end
end end
# `HttpRule` defines the mapping of an RPC method to one or more HTTP # # gRPC Transcoding
# REST API methods. The mapping specifies how different portions of the RPC # gRPC Transcoding is a feature for mapping between a gRPC method and one or
# request message are mapped to URL path, URL query parameters, and # more HTTP REST endpoints. It allows developers to build a single API service
# HTTP request body. The mapping is typically specified as an # that supports both gRPC APIs and REST APIs. Many systems, including [Google
# `google.api.http` annotation on the RPC method, # APIs](https://github.com/googleapis/googleapis),
# see "google/api/annotations.proto" for details. # [Cloud Endpoints](https://cloud.google.com/endpoints), [gRPC
# The mapping consists of a field specifying the path template and # Gateway](https://github.com/grpc-ecosystem/grpc-gateway),
# method kind. The path template can refer to fields in the request # and [Envoy](https://github.com/envoyproxy/envoy) proxy support this feature
# message, as in the example below which describes a REST GET # and use it for large scale production services.
# operation on a resource collection of messages: # `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 ` # service Messaging `
# rpc GetMessage(GetMessageRequest) returns (Message) ` # rpc GetMessage(GetMessageRequest) returns (Message) `
# option (google.api.http).get = "/v1/messages/`message_id`/`sub. # option (google.api.http) = `
# subfield`"; # get: "/v1/`name=messages/*"`"
# `;
# ` # `
# ` # `
# message GetMessageRequest ` # message GetMessageRequest `
# message SubMessage ` # string name = 1; // Mapped to URL path.
# string subfield = 1;
# `
# string message_id = 1; // mapped to the URL
# SubMessage sub = 2; // `sub.subfield` is url-mapped
# ` # `
# message Message ` # message Message `
# string text = 1; // content of the resource # string text = 1; // The resource content.
# ` # `
# The same http annotation can alternatively be expressed inside the # This enables an HTTP REST to gRPC mapping as below:
# `GRPC API Configuration` YAML file. # HTTP | gRPC
# http:
# rules:
# - selector: <proto_package_name>.Messaging.GetMessage
# get: /v1/messages/`message_id`/`sub.subfield`
# This definition enables an automatic, bidrectional mapping of HTTP
# JSON to RPC. Example:
# HTTP | RPC
# -----|----- # -----|-----
# `GET /v1/messages/123456/foo` | `GetMessage(message_id: "123456" sub: # `GET /v1/messages/123456` | `GetMessage(name: "messages/123456")`
# SubMessage(subfield: "foo"))` # Any fields in the request message which are not bound by the path template
# In general, not only fields but also field paths can be referenced # automatically become HTTP query parameters if there is no HTTP request body.
# from a path pattern. Fields mapped to the path pattern cannot be # For example:
# repeated and must have a primitive (non-message) type.
# Any fields in the request message which are not bound by the path
# pattern automatically become (optional) HTTP query
# parameters. Assume the following definition of the request message:
# service Messaging ` # service Messaging `
# rpc GetMessage(GetMessageRequest) returns (Message) ` # rpc GetMessage(GetMessageRequest) returns (Message) `
# option (google.api.http).get = "/v1/messages/`message_id`"; # option (google.api.http) = `
# get:"/v1/messages/`message_id`"
# `;
# ` # `
# ` # `
# message GetMessageRequest ` # message GetMessageRequest `
# message SubMessage ` # message SubMessage `
# string subfield = 1; # string subfield = 1;
# ` # `
# string message_id = 1; // mapped to the URL # string message_id = 1; // Mapped to URL path.
# int64 revision = 2; // becomes a parameter # int64 revision = 2; // Mapped to URL query parameter `revision`.
# SubMessage sub = 3; // `sub.subfield` becomes a parameter # SubMessage sub = 3; // Mapped to URL query parameter `sub.subfield`.
# ` # `
# This enables a HTTP JSON to RPC mapping as below: # This enables a HTTP JSON to RPC mapping as below:
# HTTP | RPC # HTTP | gRPC
# -----|----- # -----|-----
# `GET /v1/messages/123456?revision=2&sub.subfield=foo` | `GetMessage(message_id: # `GET /v1/messages/123456?revision=2&sub.subfield=foo` | `GetMessage(message_id:
# "123456" revision: 2 sub: SubMessage(subfield: "foo"))` # "123456" revision: 2 sub: SubMessage(subfield: "foo"))`
# Note that fields which are mapped to HTTP parameters must have a # Note that fields which are mapped to URL query parameters must have a
# primitive type or a repeated primitive type. Message types are not # primitive type or a repeated primitive type or a non-repeated message type.
# allowed. In the case of a repeated type, the parameter can be # In the case of a repeated type, the parameter can be repeated in the URL
# repeated in the URL, as in `...?param=A&param=B`. # as `...?param=A&param=B`. In the case of a message type, each field of the
# For HTTP method kinds which allow a request body, the `body` field # 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 # specifies the mapping. Consider a REST update method on the
# message resource collection: # message resource collection:
# service Messaging ` # service Messaging `
# rpc UpdateMessage(UpdateMessageRequest) returns (Message) ` # rpc UpdateMessage(UpdateMessageRequest) returns (Message) `
# option (google.api.http) = ` # option (google.api.http) = `
# put: "/v1/messages/`message_id`" # patch: "/v1/messages/`message_id`"
# body: "message" # body: "message"
# `; # `;
# ` # `
@ -2059,9 +2059,9 @@ module Google
# The following HTTP JSON to RPC mapping is enabled, where the # The following HTTP JSON to RPC mapping is enabled, where the
# representation of the JSON in the request body is determined by # representation of the JSON in the request body is determined by
# protos JSON encoding: # protos JSON encoding:
# HTTP | RPC # HTTP | gRPC
# -----|----- # -----|-----
# `PUT /v1/messages/123456 ` "text": "Hi!" `` | `UpdateMessage(message_id: " # `PATCH /v1/messages/123456 ` "text": "Hi!" `` | `UpdateMessage(message_id: "
# 123456" message ` text: "Hi!" `)` # 123456" message ` text: "Hi!" `)`
# The special name `*` can be used in the body mapping to define that # 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 # every field not bound by the path template should be mapped to the
@ -2070,7 +2070,7 @@ module Google
# service Messaging ` # service Messaging `
# rpc UpdateMessage(Message) returns (Message) ` # rpc UpdateMessage(Message) returns (Message) `
# option (google.api.http) = ` # option (google.api.http) = `
# put: "/v1/messages/`message_id`" # patch: "/v1/messages/`message_id`"
# body: "*" # body: "*"
# `; # `;
# ` # `
@ -2080,13 +2080,13 @@ module Google
# string text = 2; # string text = 2;
# ` # `
# The following HTTP JSON to RPC mapping is enabled: # The following HTTP JSON to RPC mapping is enabled:
# HTTP | RPC # HTTP | gRPC
# -----|----- # -----|-----
# `PUT /v1/messages/123456 ` "text": "Hi!" `` | `UpdateMessage(message_id: " # `PATCH /v1/messages/123456 ` "text": "Hi!" `` | `UpdateMessage(message_id: "
# 123456" text: "Hi!")` # 123456" text: "Hi!")`
# Note that when using `*` in the body mapping, it is not possible to # 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 # have HTTP parameters, as all fields not bound by the path end in
# the body. This makes this option more rarely used in practice of # the body. This makes this option more rarely used in practice when
# defining REST APIs. The common usage of `*` is in custom methods # defining REST APIs. The common usage of `*` is in custom methods
# which don't use the URL at all for transferring data. # which don't use the URL at all for transferring data.
# It is possible to define multiple HTTP methods for one RPC by using # It is possible to define multiple HTTP methods for one RPC by using
@ -2105,56 +2105,96 @@ module Google
# string message_id = 1; # string message_id = 1;
# string user_id = 2; # string user_id = 2;
# ` # `
# This enables the following two alternative HTTP JSON to RPC # This enables the following two alternative HTTP JSON to RPC mappings:
# mappings: # HTTP | gRPC
# HTTP | RPC
# -----|----- # -----|-----
# `GET /v1/messages/123456` | `GetMessage(message_id: "123456")` # `GET /v1/messages/123456` | `GetMessage(message_id: "123456")`
# `GET /v1/users/me/messages/123456` | `GetMessage(user_id: "me" message_id: " # `GET /v1/users/me/messages/123456` | `GetMessage(user_id: "me" message_id: "
# 123456")` # 123456")`
# # Rules for HTTP mapping # ## Rules for HTTP mapping
# The rules for mapping HTTP path, query parameters, and body fields # 1. Leaf request fields (recursive expansion nested messages in the request
# to the request message are as follows: # message) are classified into three categories:
# 1. The `body` field specifies either `*` or a field path, or is # - Fields referred by the path template. They are passed via the URL path.
# omitted. If omitted, it indicates there is no HTTP request body. # - Fields referred by the HttpRule.body. They are passed via the HTTP
# 2. Leaf fields (recursive expansion of nested messages in the # request body.
# request) can be classified into three types: # - All other fields are passed via the URL query parameters, and the
# (a) Matched in the URL template. # parameter name is the field path in the request message. A repeated
# (b) Covered by body (if body is `*`, everything except (a) fields; # field can be represented as multiple query parameters under the same
# else everything under the body field) # name.
# (c) All other fields. # 2. If HttpRule.body is "*", there is no URL query parameter, all fields
# 3. URL query parameters found in the HTTP request are mapped to (c) fields. # are passed via URL path and HTTP request body.
# 4. Any body sent with an HTTP request can contain only (b) fields. # 3. If HttpRule.body is omitted, there is no HTTP request body, all
# The syntax of the path template is as follows: # fields are passed via URL path and URL query parameters.
# ### Path template syntax
# Template = "/" Segments [ Verb ] ; # Template = "/" Segments [ Verb ] ;
# Segments = Segment ` "/" Segment ` ; # Segments = Segment ` "/" Segment ` ;
# Segment = "*" | "**" | LITERAL | Variable ; # Segment = "*" | "**" | LITERAL | Variable ;
# Variable = "`" FieldPath [ "=" Segments ] "`" ; # Variable = "`" FieldPath [ "=" Segments ] "`" ;
# FieldPath = IDENT ` "." IDENT ` ; # FieldPath = IDENT ` "." IDENT ` ;
# Verb = ":" LITERAL ; # Verb = ":" LITERAL ;
# The syntax `*` matches a single path segment. The syntax `**` matches zero # The syntax `*` matches a single URL path segment. The syntax `**` matches
# or more path segments, which must be the last part of the path except the # zero or more URL path segments, which must be the last part of the URL path
# `Verb`. The syntax `LITERAL` matches literal text in the path. # except the `Verb`.
# The syntax `Variable` matches part of the URL path as specified by its # 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 # 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`` # matches a single path segment, its template may be omitted, e.g. ``var``
# is equivalent to ``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 # If a variable contains exactly one path segment, such as `"`var`"` or
# `"`var=*`"`, when such a variable is expanded into a URL path, all characters # `"`var=*`"`, when such a variable is expanded into a URL path on the client
# except `[-_.~0-9a-zA-Z]` are percent-encoded. Such variables show up in the # side, all characters except `[-_.~0-9a-zA-Z]` are percent-encoded. The
# Discovery Document as ``var``. # server side does the reverse decoding. Such variables show up in the
# If a variable contains one or more path segments, such as `"`var=foo/*`"` # [Discovery Document](https://developers.google.com/discovery/v1/reference/apis)
# or `"`var=**`"`, when such a variable is expanded into a URL path, all # as ``var``.
# characters except `[-_.~/0-9a-zA-Z]` are percent-encoded. Such variables # If a variable contains multiple path segments, such as `"`var=foo/*`"`
# show up in the Discovery Document as ``+var``. # or `"`var=**`"`, when such a variable is expanded into a URL path on the
# NOTE: While the single segment variable matches the semantics of # client side, all characters except `[-_.~/0-9a-zA-Z]` are percent-encoded.
# [RFC 6570](https://tools.ietf.org/html/rfc6570) Section 3.2.2 # The server side does the reverse decoding, except "%2F" and "%2f" are left
# Simple String Expansion, the multi segment variable **does not** match # unchanged. Such variables show up in the
# RFC 6570 Reserved Expansion. The reason is that the Reserved Expansion # [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.
# Example:
# http:
# rules:
# # Selects a gRPC method and applies HttpRule to it.
# - 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 # does not expand special characters like `?` and `#`, which would lead
# to invalid URLs. # to invalid URLs. As the result, gRPC Transcoding uses a custom encoding
# NOTE: the field paths in variables and in the `body` must not refer to # for multi segment variables.
# repeated fields or map fields. # 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.
class HttpRule class HttpRule
include Google::Apis::Core::Hashable include Google::Apis::Core::Hashable
@ -2173,10 +2213,11 @@ module Google
# @return [Array<Google::Apis::ServiceusageV1beta1::AuthorizationRule>] # @return [Array<Google::Apis::ServiceusageV1beta1::AuthorizationRule>]
attr_accessor :authorizations attr_accessor :authorizations
# The name of the request field whose value is mapped to the HTTP body, or # The name of the request field whose value is mapped to the HTTP request
# `*` for mapping all fields not captured by the path pattern to the HTTP # body, or `*` for mapping all request fields not captured by the path
# body. NOTE: the referred field must not be a repeated field and must be # pattern to the HTTP body, or omitted for not having any HTTP request body.
# present at the top-level of request message type. # NOTE: the referred field must be present at the top-level of the request
# message type.
# Corresponds to the JSON property `body` # Corresponds to the JSON property `body`
# @return [String] # @return [String]
attr_accessor :body attr_accessor :body
@ -2186,12 +2227,13 @@ module Google
# @return [Google::Apis::ServiceusageV1beta1::CustomHttpPattern] # @return [Google::Apis::ServiceusageV1beta1::CustomHttpPattern]
attr_accessor :custom attr_accessor :custom
# Used for deleting a resource. # Maps to HTTP DELETE. Used for deleting a resource.
# Corresponds to the JSON property `delete` # Corresponds to the JSON property `delete`
# @return [String] # @return [String]
attr_accessor :delete attr_accessor :delete
# Used for listing and getting information about resources. # Maps to HTTP GET. Used for listing and getting information about
# resources.
# Corresponds to the JSON property `get` # Corresponds to the JSON property `get`
# @return [String] # @return [String]
attr_accessor :get attr_accessor :get
@ -2212,24 +2254,26 @@ module Google
# @return [Google::Apis::ServiceusageV1beta1::MediaUpload] # @return [Google::Apis::ServiceusageV1beta1::MediaUpload]
attr_accessor :media_upload attr_accessor :media_upload
# Used for updating a resource. # Maps to HTTP PATCH. Used for updating a resource.
# Corresponds to the JSON property `patch` # Corresponds to the JSON property `patch`
# @return [String] # @return [String]
attr_accessor :patch attr_accessor :patch
# Used for creating a resource. # Maps to HTTP POST. Used for creating a resource or performing an action.
# Corresponds to the JSON property `post` # Corresponds to the JSON property `post`
# @return [String] # @return [String]
attr_accessor :post attr_accessor :post
# Used for updating a resource. # Maps to HTTP PUT. Used for replacing a resource.
# Corresponds to the JSON property `put` # Corresponds to the JSON property `put`
# @return [String] # @return [String]
attr_accessor :put attr_accessor :put
# Optional. The name of the response field whose value is mapped to the HTTP # Optional. The name of the response field whose value is mapped to the HTTP
# body of response. Other response fields are ignored. When # response body. When omitted, the entire response message will be used
# not set, the response message will be used as HTTP body of response. # as the HTTP response body.
# NOTE: The referred field must be present at the top-level of the response
# message type.
# Corresponds to the JSON property `responseBody` # Corresponds to the JSON property `responseBody`
# @return [String] # @return [String]
attr_accessor :response_body attr_accessor :response_body
@ -2272,7 +2316,7 @@ module Google
# @return [String] # @return [String]
attr_accessor :rest_method_name attr_accessor :rest_method_name
# Selects methods to which this rule applies. # Selects a method to which this rule applies.
# Refer to selector for syntax details. # Refer to selector for syntax details.
# Corresponds to the JSON property `selector` # Corresponds to the JSON property `selector`
# @return [String] # @return [String]

View File

@ -25,7 +25,7 @@ module Google
# @see https://cloud.google.com/speech-to-text/docs/quickstart-protocol # @see https://cloud.google.com/speech-to-text/docs/quickstart-protocol
module SpeechV1 module SpeechV1
VERSION = 'V1' VERSION = 'V1'
REVISION = '20180823' REVISION = '20180911'
# View and manage your data across Google Cloud Platform services # View and manage your data across Google Cloud Platform services
AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'

View File

@ -22,6 +22,31 @@ module Google
module Apis module Apis
module SpeechV1 module SpeechV1
# The response message for Operations.ListOperations.
class ListOperationsResponse
include Google::Apis::Core::Hashable
# The standard List next-page token.
# Corresponds to the JSON property `nextPageToken`
# @return [String]
attr_accessor :next_page_token
# A list of operations that matches the specified filter in the request.
# Corresponds to the JSON property `operations`
# @return [Array<Google::Apis::SpeechV1::Operation>]
attr_accessor :operations
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
@operations = args[:operations] if args.key?(:operations)
end
end
# The top-level message sent by the client for the `LongRunningRecognize` # The top-level message sent by the client for the `LongRunningRecognize`
# method. # method.
class LongRunningRecognizeRequest class LongRunningRecognizeRequest
@ -191,6 +216,18 @@ module Google
class RecognitionConfig class RecognitionConfig
include Google::Apis::Core::Hashable include Google::Apis::Core::Hashable
# *Optional* If 'true', adds punctuation to recognition result hypotheses.
# This feature is only available in select languages. Setting this for
# requests in other languages has no effect at all.
# The default 'false' value does not add punctuation to result hypotheses.
# Note: This is currently offered as an experimental service, complimentary
# to all users. In the future this may be exclusively available as a
# premium feature.
# Corresponds to the JSON property `enableAutomaticPunctuation`
# @return [Boolean]
attr_accessor :enable_automatic_punctuation
alias_method :enable_automatic_punctuation?, :enable_automatic_punctuation
# *Optional* If `true`, the top result includes a list of words and # *Optional* If `true`, the top result includes a list of words and
# the start and end time offsets (timestamps) for those words. If # the start and end time offsets (timestamps) for those words. If
# `false`, no word-level time offset information is returned. The default is # `false`, no word-level time offset information is returned. The default is
@ -226,6 +263,42 @@ module Google
# @return [Fixnum] # @return [Fixnum]
attr_accessor :max_alternatives attr_accessor :max_alternatives
# *Optional* Which model to select for the given request. Select the model
# best suited to your domain to get best results. If a model is not
# explicitly specified, then we auto-select a model based on the parameters
# in the RecognitionConfig.
# <table>
# <tr>
# <td><b>Model</b></td>
# <td><b>Description</b></td>
# </tr>
# <tr>
# <td><code>command_and_search</code></td>
# <td>Best for short queries such as voice commands or voice search.</td>
# </tr>
# <tr>
# <td><code>phone_call</code></td>
# <td>Best for audio that originated from a phone call (typically
# recorded at an 8khz sampling rate).</td>
# </tr>
# <tr>
# <td><code>video</code></td>
# <td>Best for audio that originated from from video or includes multiple
# speakers. Ideally the audio is recorded at a 16khz or greater
# sampling rate. This is a premium model that costs more than the
# standard rate.</td>
# </tr>
# <tr>
# <td><code>default</code></td>
# <td>Best for audio that is not one of the specific audio models.
# For example, long-form audio. Ideally the audio is high-fidelity,
# recorded at a 16khz or greater sampling rate.</td>
# </tr>
# </table>
# Corresponds to the JSON property `model`
# @return [String]
attr_accessor :model
# *Optional* If set to `true`, the server will attempt to filter out # *Optional* If set to `true`, the server will attempt to filter out
# profanities, replacing all but the initial character in each filtered word # profanities, replacing all but the initial character in each filtered word
# with asterisks, e.g. "f***". If set to `false` or omitted, profanities # with asterisks, e.g. "f***". If set to `false` or omitted, profanities
@ -253,19 +326,37 @@ module Google
# @return [Array<Google::Apis::SpeechV1::SpeechContext>] # @return [Array<Google::Apis::SpeechV1::SpeechContext>]
attr_accessor :speech_contexts attr_accessor :speech_contexts
# *Optional* Set to true to use an enhanced model for speech recognition.
# You must also set the `model` field to a valid, enhanced model. If
# `use_enhanced` is set to true and the `model` field is not set, then
# `use_enhanced` is ignored. If `use_enhanced` is true and an enhanced
# version of the specified model does not exist, then the speech is
# recognized using the standard version of the specified model.
# Enhanced speech models require that you opt-in to data logging using
# instructions in the [documentation](/speech-to-text/enable-data-logging).
# If you set `use_enhanced` to true and you have not enabled audio logging,
# then you will receive an error.
# Corresponds to the JSON property `useEnhanced`
# @return [Boolean]
attr_accessor :use_enhanced
alias_method :use_enhanced?, :use_enhanced
def initialize(**args) def initialize(**args)
update!(**args) update!(**args)
end end
# Update properties of this object # Update properties of this object
def update!(**args) def update!(**args)
@enable_automatic_punctuation = args[:enable_automatic_punctuation] if args.key?(:enable_automatic_punctuation)
@enable_word_time_offsets = args[:enable_word_time_offsets] if args.key?(:enable_word_time_offsets) @enable_word_time_offsets = args[:enable_word_time_offsets] if args.key?(:enable_word_time_offsets)
@encoding = args[:encoding] if args.key?(:encoding) @encoding = args[:encoding] if args.key?(:encoding)
@language_code = args[:language_code] if args.key?(:language_code) @language_code = args[:language_code] if args.key?(:language_code)
@max_alternatives = args[:max_alternatives] if args.key?(:max_alternatives) @max_alternatives = args[:max_alternatives] if args.key?(:max_alternatives)
@model = args[:model] if args.key?(:model)
@profanity_filter = args[:profanity_filter] if args.key?(:profanity_filter) @profanity_filter = args[:profanity_filter] if args.key?(:profanity_filter)
@sample_rate_hertz = args[:sample_rate_hertz] if args.key?(:sample_rate_hertz) @sample_rate_hertz = args[:sample_rate_hertz] if args.key?(:sample_rate_hertz)
@speech_contexts = args[:speech_contexts] if args.key?(:speech_contexts) @speech_contexts = args[:speech_contexts] if args.key?(:speech_contexts)
@use_enhanced = args[:use_enhanced] if args.key?(:use_enhanced)
end end
end end

View File

@ -22,6 +22,12 @@ module Google
module Apis module Apis
module SpeechV1 module SpeechV1
class ListOperationsResponse
class Representation < Google::Apis::Core::JsonRepresentation; end
include Google::Apis::Core::JsonObjectSupport
end
class LongRunningRecognizeRequest class LongRunningRecognizeRequest
class Representation < Google::Apis::Core::JsonRepresentation; end class Representation < Google::Apis::Core::JsonRepresentation; end
@ -88,6 +94,15 @@ module Google
include Google::Apis::Core::JsonObjectSupport include Google::Apis::Core::JsonObjectSupport
end end
class ListOperationsResponse
# @private
class Representation < Google::Apis::Core::JsonRepresentation
property :next_page_token, as: 'nextPageToken'
collection :operations, as: 'operations', class: Google::Apis::SpeechV1::Operation, decorator: Google::Apis::SpeechV1::Operation::Representation
end
end
class LongRunningRecognizeRequest class LongRunningRecognizeRequest
# @private # @private
class Representation < Google::Apis::Core::JsonRepresentation class Representation < Google::Apis::Core::JsonRepresentation
@ -121,14 +136,17 @@ module Google
class RecognitionConfig class RecognitionConfig
# @private # @private
class Representation < Google::Apis::Core::JsonRepresentation class Representation < Google::Apis::Core::JsonRepresentation
property :enable_automatic_punctuation, as: 'enableAutomaticPunctuation'
property :enable_word_time_offsets, as: 'enableWordTimeOffsets' property :enable_word_time_offsets, as: 'enableWordTimeOffsets'
property :encoding, as: 'encoding' property :encoding, as: 'encoding'
property :language_code, as: 'languageCode' property :language_code, as: 'languageCode'
property :max_alternatives, as: 'maxAlternatives' property :max_alternatives, as: 'maxAlternatives'
property :model, as: 'model'
property :profanity_filter, as: 'profanityFilter' property :profanity_filter, as: 'profanityFilter'
property :sample_rate_hertz, as: 'sampleRateHertz' property :sample_rate_hertz, as: 'sampleRateHertz'
collection :speech_contexts, as: 'speechContexts', class: Google::Apis::SpeechV1::SpeechContext, decorator: Google::Apis::SpeechV1::SpeechContext::Representation collection :speech_contexts, as: 'speechContexts', class: Google::Apis::SpeechV1::SpeechContext, decorator: Google::Apis::SpeechV1::SpeechContext::Representation
property :use_enhanced, as: 'useEnhanced'
end end
end end

View File

@ -79,6 +79,53 @@ module Google
execute_or_queue_command(command, &block) execute_or_queue_command(command, &block)
end end
# Lists operations that match the specified filter in the request. If the
# server doesn't support this method, it returns `UNIMPLEMENTED`.
# NOTE: the `name` binding allows API services to override the binding
# to use different resource name schemes, such as `users/*/operations`. To
# override the binding, API services can add a binding such as
# `"/v1/`name=users/*`/operations"` to their service configuration.
# For backwards compatibility, the default name includes the operations
# collection id, however overriding users must ensure the name binding
# is the parent resource, without the operations collection id.
# @param [String] filter
# The standard list filter.
# @param [String] name
# The name of the operation's parent resource.
# @param [Fixnum] page_size
# The standard list page size.
# @param [String] page_token
# The standard list page token.
# @param [String] fields
# Selector specifying which fields to include in a partial response.
# @param [String] quota_user
# Available to use for quota purposes for server-side applications. Can be any
# arbitrary string assigned to a user, but should not exceed 40 characters.
# @param [Google::Apis::RequestOptions] options
# Request-specific options
#
# @yield [result, err] Result & error if block supplied
# @yieldparam result [Google::Apis::SpeechV1::ListOperationsResponse] parsed result object
# @yieldparam err [StandardError] error object if request failed
#
# @return [Google::Apis::SpeechV1::ListOperationsResponse]
#
# @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
# @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
# @raise [Google::Apis::AuthorizationError] Authorization is required
def list_operations(filter: nil, name: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
command = make_simple_command(:get, 'v1/operations', options)
command.response_representation = Google::Apis::SpeechV1::ListOperationsResponse::Representation
command.response_class = Google::Apis::SpeechV1::ListOperationsResponse
command.query['filter'] = filter unless filter.nil?
command.query['name'] = name unless name.nil?
command.query['pageSize'] = page_size unless page_size.nil?
command.query['pageToken'] = page_token unless page_token.nil?
command.query['fields'] = fields unless fields.nil?
command.query['quotaUser'] = quota_user unless quota_user.nil?
execute_or_queue_command(command, &block)
end
# Performs asynchronous speech recognition: receive results via the # Performs asynchronous speech recognition: receive results via the
# google.longrunning.Operations interface. Returns either an # google.longrunning.Operations interface. Returns either an
# `Operation.error` or an `Operation.response` which contains # `Operation.error` or an `Operation.response` which contains

View File

@ -25,7 +25,7 @@ module Google
# @see https://cloud.google.com/speech-to-text/docs/quickstart-protocol # @see https://cloud.google.com/speech-to-text/docs/quickstart-protocol
module SpeechV1beta1 module SpeechV1beta1
VERSION = 'V1beta1' VERSION = 'V1beta1'
REVISION = '20180629' REVISION = '20180911'
# View and manage your data across Google Cloud Platform services # View and manage your data across Google Cloud Platform services
AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'

View File

@ -51,6 +51,31 @@ module Google
end end
end end
# The response message for Operations.ListOperations.
class ListOperationsResponse
include Google::Apis::Core::Hashable
# The standard List next-page token.
# Corresponds to the JSON property `nextPageToken`
# @return [String]
attr_accessor :next_page_token
# A list of operations that matches the specified filter in the request.
# Corresponds to the JSON property `operations`
# @return [Array<Google::Apis::SpeechV1beta1::Operation>]
attr_accessor :operations
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
@operations = args[:operations] if args.key?(:operations)
end
end
# This resource represents a long-running operation that is the result of a # This resource represents a long-running operation that is the result of a
# network API call. # network API call.
class Operation class Operation

View File

@ -28,6 +28,12 @@ module Google
include Google::Apis::Core::JsonObjectSupport include Google::Apis::Core::JsonObjectSupport
end end
class ListOperationsResponse
class Representation < Google::Apis::Core::JsonRepresentation; end
include Google::Apis::Core::JsonObjectSupport
end
class Operation class Operation
class Representation < Google::Apis::Core::JsonRepresentation; end class Representation < Google::Apis::Core::JsonRepresentation; end
@ -92,6 +98,15 @@ module Google
end end
end end
class ListOperationsResponse
# @private
class Representation < Google::Apis::Core::JsonRepresentation
property :next_page_token, as: 'nextPageToken'
collection :operations, as: 'operations', class: Google::Apis::SpeechV1beta1::Operation, decorator: Google::Apis::SpeechV1beta1::Operation::Representation
end
end
class Operation class Operation
# @private # @private
class Representation < Google::Apis::Core::JsonRepresentation class Representation < Google::Apis::Core::JsonRepresentation

View File

@ -79,6 +79,53 @@ module Google
execute_or_queue_command(command, &block) execute_or_queue_command(command, &block)
end end
# Lists operations that match the specified filter in the request. If the
# server doesn't support this method, it returns `UNIMPLEMENTED`.
# NOTE: the `name` binding allows API services to override the binding
# to use different resource name schemes, such as `users/*/operations`. To
# override the binding, API services can add a binding such as
# `"/v1/`name=users/*`/operations"` to their service configuration.
# For backwards compatibility, the default name includes the operations
# collection id, however overriding users must ensure the name binding
# is the parent resource, without the operations collection id.
# @param [String] filter
# The standard list filter.
# @param [String] name
# The name of the operation's parent resource.
# @param [Fixnum] page_size
# The standard list page size.
# @param [String] page_token
# The standard list page token.
# @param [String] fields
# Selector specifying which fields to include in a partial response.
# @param [String] quota_user
# Available to use for quota purposes for server-side applications. Can be any
# arbitrary string assigned to a user, but should not exceed 40 characters.
# @param [Google::Apis::RequestOptions] options
# Request-specific options
#
# @yield [result, err] Result & error if block supplied
# @yieldparam result [Google::Apis::SpeechV1beta1::ListOperationsResponse] parsed result object
# @yieldparam err [StandardError] error object if request failed
#
# @return [Google::Apis::SpeechV1beta1::ListOperationsResponse]
#
# @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
# @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
# @raise [Google::Apis::AuthorizationError] Authorization is required
def list_operations(filter: nil, name: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
command = make_simple_command(:get, 'v1beta1/operations', options)
command.response_representation = Google::Apis::SpeechV1beta1::ListOperationsResponse::Representation
command.response_class = Google::Apis::SpeechV1beta1::ListOperationsResponse
command.query['filter'] = filter unless filter.nil?
command.query['name'] = name unless name.nil?
command.query['pageSize'] = page_size unless page_size.nil?
command.query['pageToken'] = page_token unless page_token.nil?
command.query['fields'] = fields unless fields.nil?
command.query['quotaUser'] = quota_user unless quota_user.nil?
execute_or_queue_command(command, &block)
end
# Performs asynchronous speech recognition: receive results via the # Performs asynchronous speech recognition: receive results via the
# [google.longrunning.Operations] # [google.longrunning.Operations]
# (/speech/reference/rest/v1beta1/operations#Operation) # (/speech/reference/rest/v1beta1/operations#Operation)

View File

@ -20,13 +20,13 @@ module Google
module Apis module Apis
# Cloud SQL Admin API # Cloud SQL Admin API
# #
# Cloud SQL provides the Cloud SQL Admin API, a REST API for administering your # Creates and manages Cloud SQL instances, which provide fully managed MySQL or
# instances programmatically. # PostgreSQL databases.
# #
# @see https://cloud.google.com/sql/docs/reference/latest # @see https://cloud.google.com/sql/docs/reference/latest
module SqladminV1beta4 module SqladminV1beta4
VERSION = 'V1beta4' VERSION = 'V1beta4'
REVISION = '20180727' REVISION = '20180907'
# View and manage your data across Google Cloud Platform services # View and manage your data across Google Cloud Platform services
AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'

View File

@ -108,7 +108,7 @@ module Google
end end
end end
# A database instance backup run resource. # A BackupRun resource.
class BackupRun class BackupRun
include Google::Apis::Core::Hashable include Google::Apis::Core::Hashable
@ -134,8 +134,8 @@ module Google
# @return [Google::Apis::SqladminV1beta4::OperationError] # @return [Google::Apis::SqladminV1beta4::OperationError]
attr_accessor :error attr_accessor :error
# A unique identifier for this backup run. Note that this is unique only within # The identifier for this backup run. Unique only for a specific Cloud SQL
# the scope of a particular Cloud SQL instance. # instance.
# Corresponds to the JSON property `id` # Corresponds to the JSON property `id`
# @return [Fixnum] # @return [Fixnum]
attr_accessor :id attr_accessor :id
@ -298,7 +298,7 @@ module Google
end end
end end
# A database resource inside a Cloud SQL instance. # Represents a SQL database on the Cloud SQL instance.
class Database class Database
include Google::Apis::Core::Hashable include Google::Apis::Core::Hashable
@ -312,7 +312,7 @@ module Google
# @return [String] # @return [String]
attr_accessor :collation attr_accessor :collation
# HTTP 1.1 Entity tag for the resource. # This field is deprecated and will be removed from a future version of the API.
# Corresponds to the JSON property `etag` # Corresponds to the JSON property `etag`
# @return [String] # @return [String]
attr_accessor :etag attr_accessor :etag
@ -361,15 +361,14 @@ module Google
end end
end end
# MySQL flags for Cloud SQL instances. # Database flags for Cloud SQL instances.
class DatabaseFlags class DatabaseFlags
include Google::Apis::Core::Hashable include Google::Apis::Core::Hashable
# The name of the flag. These flags are passed at instance startup, so include # The name of the flag. These flags are passed at instance startup, so include
# both MySQL server options and MySQL system variables. Flags should be # both server options and system variables for MySQL. Flags should be specified
# specified with underscores, not hyphens. For more information, see Configuring # with underscores, not hyphens. For more information, see Configuring Database
# MySQL Flags in the Google Cloud SQL documentation, as well as the official # Flags in the Cloud SQL documentation.
# MySQL documentation for server options and system variables.
# Corresponds to the JSON property `name` # Corresponds to the JSON property `name`
# @return [String] # @return [String]
attr_accessor :name attr_accessor :name
@ -395,9 +394,11 @@ module Google
class DatabaseInstance class DatabaseInstance
include Google::Apis::Core::Hashable include Google::Apis::Core::Hashable
# FIRST_GEN: Basic Cloud SQL instance that runs in a Google-managed container. # FIRST_GEN: First Generation instance. MySQL only.
# SECOND_GEN: A newer Cloud SQL backend that runs in a Compute Engine VM. # SECOND_GEN: Second Generation instance or PostgreSQL instance.
# EXTERNAL: A MySQL server that is not managed by Google. # EXTERNAL: A database server that is not managed by Google.
# This property is read-only; use the tier property in the settings object to
# determine the database type and Second or First Generation.
# Corresponds to the JSON property `backendType` # Corresponds to the JSON property `backendType`
# @return [String] # @return [String]
attr_accessor :backend_type attr_accessor :backend_type
@ -409,9 +410,8 @@ module Google
# The current disk usage of the instance in bytes. This property has been # The current disk usage of the instance in bytes. This property has been
# deprecated. Users should use the "cloudsql.googleapis.com/database/disk/ # deprecated. Users should use the "cloudsql.googleapis.com/database/disk/
# bytes_used" metric in Cloud Monitoring API instead. Please see https://groups. # bytes_used" metric in Cloud Monitoring API instead. Please see this
# google.com/d/msg/google-cloud-sql-announce/I_7-F9EBhT0/BtvFtdFeAgAJ for # announcement for details.
# details.
# Corresponds to the JSON property `currentDiskSize` # Corresponds to the JSON property `currentDiskSize`
# @return [Fixnum] # @return [Fixnum]
attr_accessor :current_disk_size attr_accessor :current_disk_size
@ -424,7 +424,8 @@ module Google
# @return [String] # @return [String]
attr_accessor :database_version attr_accessor :database_version
# HTTP 1.1 Entity tag for the resource. # This field is deprecated and will be removed from a future version of the API.
# Use the settings.settingsVersion field instead.
# Corresponds to the JSON property `etag` # Corresponds to the JSON property `etag`
# @return [String] # @return [String]
attr_accessor :etag attr_accessor :etag
@ -899,7 +900,7 @@ module Google
end end
end end
# A Google Cloud SQL service flag resource. # A flag resource.
class Flag class Flag
include Google::Apis::Core::Hashable include Google::Apis::Core::Hashable
@ -1869,8 +1870,8 @@ module Google
# @return [String] # @return [String]
attr_accessor :activation_policy attr_accessor :activation_policy
# The App Engine app IDs that can access this instance. This property is only # The App Engine app IDs that can access this instance. First Generation
# applicable to First Generation instances. # instances only.
# Corresponds to the JSON property `authorizedGaeApplications` # Corresponds to the JSON property `authorizedGaeApplications`
# @return [Array<String>] # @return [Array<String>]
attr_accessor :authorized_gae_applications attr_accessor :authorized_gae_applications
@ -1898,14 +1899,14 @@ module Google
attr_accessor :crash_safe_replication_enabled attr_accessor :crash_safe_replication_enabled
alias_method :crash_safe_replication_enabled?, :crash_safe_replication_enabled alias_method :crash_safe_replication_enabled?, :crash_safe_replication_enabled
# The size of data disk, in GB. The data disk size minimum is 10GB. Applies only # The size of data disk, in GB. The data disk size minimum is 10GB. Not used for
# to Second Generation instances. # First Generation instances.
# Corresponds to the JSON property `dataDiskSizeGb` # Corresponds to the JSON property `dataDiskSizeGb`
# @return [Fixnum] # @return [Fixnum]
attr_accessor :data_disk_size_gb attr_accessor :data_disk_size_gb
# The type of data disk. Only supported for Second Generation instances. The # The type of data disk: PD_SSD (default) or PD_HDD. Not used for First
# default type is PD_SSD. Applies only to Second Generation instances. # Generation instances.
# Corresponds to the JSON property `dataDiskType` # Corresponds to the JSON property `dataDiskType`
# @return [String] # @return [String]
attr_accessor :data_disk_type attr_accessor :data_disk_type
@ -1968,21 +1969,23 @@ module Google
attr_accessor :settings_version attr_accessor :settings_version
# Configuration to increase storage size automatically. The default value is # Configuration to increase storage size automatically. The default value is
# true. Applies only to Second Generation instances. # true. Not used for First Generation instances.
# Corresponds to the JSON property `storageAutoResize` # Corresponds to the JSON property `storageAutoResize`
# @return [Boolean] # @return [Boolean]
attr_accessor :storage_auto_resize attr_accessor :storage_auto_resize
alias_method :storage_auto_resize?, :storage_auto_resize alias_method :storage_auto_resize?, :storage_auto_resize
# The maximum size to which storage capacity can be automatically increased. The # The maximum size to which storage capacity can be automatically increased. The
# default value is 0, which specifies that there is no limit. Applies only to # default value is 0, which specifies that there is no limit. Not used for First
# Second Generation instances. # Generation instances.
# Corresponds to the JSON property `storageAutoResizeLimit` # Corresponds to the JSON property `storageAutoResizeLimit`
# @return [Fixnum] # @return [Fixnum]
attr_accessor :storage_auto_resize_limit attr_accessor :storage_auto_resize_limit
# The tier of service for this instance, for example D1, D2. For more # The tier (or machine type) for this instance, for example db-n1-standard-1 (
# information, see pricing. # MySQL instances) or db-custom-1-3840 (PostgreSQL instances). For MySQL
# instances, this property determines whether the instance is First or Second
# Generation. For more information, see Instance Settings.
# Corresponds to the JSON property `tier` # Corresponds to the JSON property `tier`
# @return [String] # @return [String]
attr_accessor :tier attr_accessor :tier
@ -2319,7 +2322,7 @@ module Google
class User class User
include Google::Apis::Core::Hashable include Google::Apis::Core::Hashable
# HTTP 1.1 Entity tag for the resource. # This field is deprecated and will be removed from a future version of the API.
# Corresponds to the JSON property `etag` # Corresponds to the JSON property `etag`
# @return [String] # @return [String]
attr_accessor :etag attr_accessor :etag
@ -2343,7 +2346,7 @@ module Google
attr_accessor :kind attr_accessor :kind
# The name of the user in the Cloud SQL instance. Can be omitted for update # The name of the user in the Cloud SQL instance. Can be omitted for update
# since it is already specified on the URL. # since it is already specified in the URL.
# Corresponds to the JSON property `name` # Corresponds to the JSON property `name`
# @return [String] # @return [String]
attr_accessor :name attr_accessor :name

View File

@ -22,8 +22,8 @@ module Google
module SqladminV1beta4 module SqladminV1beta4
# Cloud SQL Admin API # Cloud SQL Admin API
# #
# Cloud SQL provides the Cloud SQL Admin API, a REST API for administering your # Creates and manages Cloud SQL instances, which provide fully managed MySQL or
# instances programmatically. # PostgreSQL databases.
# #
# @example # @example
# require 'google/apis/sqladmin_v1beta4' # require 'google/apis/sqladmin_v1beta4'
@ -172,7 +172,7 @@ module Google
end end
# Lists all backup runs associated with a given instance and configuration in # Lists all backup runs associated with a given instance and configuration in
# the reverse chronological order of the enqueued time. # the reverse chronological order of the backup initiation time.
# @param [String] project # @param [String] project
# Project ID of the project that contains the instance. # Project ID of the project that contains the instance.
# @param [String] instance # @param [String] instance
@ -458,8 +458,8 @@ module Google
# List all available database flags for Cloud SQL instances. # List all available database flags for Cloud SQL instances.
# @param [String] database_version # @param [String] database_version
# Database version for flag retrieval. Flags are specific to the database # Database type and version you want to retrieve flags for. By default, this
# version. # method returns flags for all database types and versions.
# @param [String] fields # @param [String] fields
# Selector specifying which fields to include in a partial response. # Selector specifying which fields to include in a partial response.
# @param [String] quota_user # @param [String] quota_user

View File

@ -26,7 +26,7 @@ module Google
# @see https://developers.google.com/cloud-test-lab/ # @see https://developers.google.com/cloud-test-lab/
module TestingV1 module TestingV1
VERSION = 'V1' VERSION = 'V1'
REVISION = '20180906' REVISION = '20180911'
# View and manage your data across Google Cloud Platform services # View and manage your data across Google Cloud Platform services
AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'

View File

@ -890,6 +890,11 @@ module Google
# @return [Google::Apis::TestingV1::AndroidDevice] # @return [Google::Apis::TestingV1::AndroidDevice]
attr_accessor :android_device attr_accessor :android_device
# A single iOS device.
# Corresponds to the JSON property `iosDevice`
# @return [Google::Apis::TestingV1::IosDevice]
attr_accessor :ios_device
def initialize(**args) def initialize(**args)
update!(**args) update!(**args)
end end
@ -897,6 +902,7 @@ module Google
# Update properties of this object # Update properties of this object
def update!(**args) def update!(**args)
@android_device = args[:android_device] if args.key?(:android_device) @android_device = args[:android_device] if args.key?(:android_device)
@ios_device = args[:ios_device] if args.key?(:ios_device)
end end
end end
@ -918,6 +924,11 @@ module Google
# @return [Google::Apis::TestingV1::AndroidMatrix] # @return [Google::Apis::TestingV1::AndroidMatrix]
attr_accessor :android_matrix attr_accessor :android_matrix
# A list of iOS device configurations in which the test is to be executed.
# Corresponds to the JSON property `iosDeviceList`
# @return [Google::Apis::TestingV1::IosDeviceList]
attr_accessor :ios_device_list
def initialize(**args) def initialize(**args)
update!(**args) update!(**args)
end end
@ -926,6 +937,7 @@ module Google
def update!(**args) def update!(**args)
@android_device_list = args[:android_device_list] if args.key?(:android_device_list) @android_device_list = args[:android_device_list] if args.key?(:android_device_list)
@android_matrix = args[:android_matrix] if args.key?(:android_matrix) @android_matrix = args[:android_matrix] if args.key?(:android_matrix)
@ios_device_list = args[:ios_device_list] if args.key?(:ios_device_list)
end end
end end
@ -1068,6 +1080,265 @@ module Google
end end
end end
# A single iOS device.
class IosDevice
include Google::Apis::Core::Hashable
# Required. The id of the iOS device to be used.
# Use the EnvironmentDiscoveryService to get supported options.
# Corresponds to the JSON property `iosModelId`
# @return [String]
attr_accessor :ios_model_id
# Required. The id of the iOS major software version to be used.
# Use the EnvironmentDiscoveryService to get supported options.
# Corresponds to the JSON property `iosVersionId`
# @return [String]
attr_accessor :ios_version_id
# Required. The locale the test device used for testing.
# Use the EnvironmentDiscoveryService to get supported options.
# Corresponds to the JSON property `locale`
# @return [String]
attr_accessor :locale
# Required. How the device is oriented during the test.
# Use the EnvironmentDiscoveryService to get supported options.
# Corresponds to the JSON property `orientation`
# @return [String]
attr_accessor :orientation
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@ios_model_id = args[:ios_model_id] if args.key?(:ios_model_id)
@ios_version_id = args[:ios_version_id] if args.key?(:ios_version_id)
@locale = args[:locale] if args.key?(:locale)
@orientation = args[:orientation] if args.key?(:orientation)
end
end
# The currently supported iOS devices.
class IosDeviceCatalog
include Google::Apis::Core::Hashable
# Output only. The set of supported iOS device models.
# Corresponds to the JSON property `models`
# @return [Array<Google::Apis::TestingV1::IosModel>]
attr_accessor :models
# iOS configuration that can be selected at the time a test is run.
# Corresponds to the JSON property `runtimeConfiguration`
# @return [Google::Apis::TestingV1::IosRuntimeConfiguration]
attr_accessor :runtime_configuration
# Output only. The set of supported iOS software versions.
# Corresponds to the JSON property `versions`
# @return [Array<Google::Apis::TestingV1::IosVersion>]
attr_accessor :versions
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@models = args[:models] if args.key?(:models)
@runtime_configuration = args[:runtime_configuration] if args.key?(:runtime_configuration)
@versions = args[:versions] if args.key?(:versions)
end
end
# A list of iOS device configurations in which the test is to be executed.
class IosDeviceList
include Google::Apis::Core::Hashable
# Required. A list of iOS devices
# Corresponds to the JSON property `iosDevices`
# @return [Array<Google::Apis::TestingV1::IosDevice>]
attr_accessor :ios_devices
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@ios_devices = args[:ios_devices] if args.key?(:ios_devices)
end
end
# A description of an iOS device tests may be run on.
class IosModel
include Google::Apis::Core::Hashable
# Output only. Device capabilities.
# Copied from
# https://developer.apple.com/library/archive/documentation/DeviceInformation/
# Reference/iOSDeviceCompatibility/DeviceCompatibilityMatrix/
# DeviceCompatibilityMatrix.html
# Corresponds to the JSON property `deviceCapabilities`
# @return [Array<String>]
attr_accessor :device_capabilities
# Output only. The unique opaque id for this model.
# Use this for invoking the TestExecutionService.
# Corresponds to the JSON property `id`
# @return [String]
attr_accessor :id
# Output only. The human-readable name for this device model.
# Examples: "iPhone 4s", "iPad Mini 2"
# Corresponds to the JSON property `name`
# @return [String]
attr_accessor :name
# Output only. The set of iOS major software versions this device supports.
# Corresponds to the JSON property `supportedVersionIds`
# @return [Array<String>]
attr_accessor :supported_version_ids
# Output only. Tags for this dimension.
# Examples: "default", "preview", "deprecated"
# Corresponds to the JSON property `tags`
# @return [Array<String>]
attr_accessor :tags
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@device_capabilities = args[:device_capabilities] if args.key?(:device_capabilities)
@id = args[:id] if args.key?(:id)
@name = args[:name] if args.key?(:name)
@supported_version_ids = args[:supported_version_ids] if args.key?(:supported_version_ids)
@tags = args[:tags] if args.key?(:tags)
end
end
# iOS configuration that can be selected at the time a test is run.
class IosRuntimeConfiguration
include Google::Apis::Core::Hashable
# Output only. The set of available locales.
# Corresponds to the JSON property `locales`
# @return [Array<Google::Apis::TestingV1::Locale>]
attr_accessor :locales
# Output only. The set of available orientations.
# Corresponds to the JSON property `orientations`
# @return [Array<Google::Apis::TestingV1::Orientation>]
attr_accessor :orientations
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@locales = args[:locales] if args.key?(:locales)
@orientations = args[:orientations] if args.key?(:orientations)
end
end
# A description of how to set up an iOS device prior to a test.
class IosTestSetup
include Google::Apis::Core::Hashable
# Optional. The network traffic profile used for running the test.
# Available network profiles can be queried by using the
# NETWORK_CONFIGURATION environment type when calling
# TestEnvironmentDiscoveryService.GetTestEnvironmentCatalog.
# Corresponds to the JSON property `networkProfile`
# @return [String]
attr_accessor :network_profile
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@network_profile = args[:network_profile] if args.key?(:network_profile)
end
end
# An iOS version
class IosVersion
include Google::Apis::Core::Hashable
# Output only. An opaque id for this iOS version.
# Use this id to invoke the TestExecutionService.
# Corresponds to the JSON property `id`
# @return [String]
attr_accessor :id
# Output only. An integer representing the major iOS version.
# Examples: "8", "9"
# Corresponds to the JSON property `majorVersion`
# @return [Fixnum]
attr_accessor :major_version
# Output only. An integer representing the minor iOS version.
# Examples: "1", "2"
# Corresponds to the JSON property `minorVersion`
# @return [Fixnum]
attr_accessor :minor_version
# Output only. Tags for this dimension.
# Examples: "default", "preview", "deprecated"
# Corresponds to the JSON property `tags`
# @return [Array<String>]
attr_accessor :tags
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@id = args[:id] if args.key?(:id)
@major_version = args[:major_version] if args.key?(:major_version)
@minor_version = args[:minor_version] if args.key?(:minor_version)
@tags = args[:tags] if args.key?(:tags)
end
end
# A test of an iOS application that uses the XCTest framework.
# Xcode supports the option to "build for testing", which generates an
# .xctestrun file that contains a test specification (arguments, test methods,
# etc). This test type accepts a zip file containing the .xctestrun file and
# the corresponding contents of the Build/Products directory that contains all
# the binaries needed to run the tests.
class IosXcTest
include Google::Apis::Core::Hashable
# A reference to a file, used for user inputs.
# Corresponds to the JSON property `testsZip`
# @return [Google::Apis::TestingV1::FileReference]
attr_accessor :tests_zip
# A reference to a file, used for user inputs.
# Corresponds to the JSON property `xctestrun`
# @return [Google::Apis::TestingV1::FileReference]
attr_accessor :xctestrun
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@tests_zip = args[:tests_zip] if args.key?(:tests_zip)
@xctestrun = args[:xctestrun] if args.key?(:xctestrun)
end
end
# Specifies an intent that starts the main launcher activity. # Specifies an intent that starts the main launcher activity.
class LauncherActivityIntent class LauncherActivityIntent
include Google::Apis::Core::Hashable include Google::Apis::Core::Hashable
@ -1487,6 +1758,11 @@ module Google
# @return [Google::Apis::TestingV1::AndroidDeviceCatalog] # @return [Google::Apis::TestingV1::AndroidDeviceCatalog]
attr_accessor :android_device_catalog attr_accessor :android_device_catalog
# The currently supported iOS devices.
# Corresponds to the JSON property `iosDeviceCatalog`
# @return [Google::Apis::TestingV1::IosDeviceCatalog]
attr_accessor :ios_device_catalog
# Supported network configurations # Supported network configurations
# Corresponds to the JSON property `networkConfigurationCatalog` # Corresponds to the JSON property `networkConfigurationCatalog`
# @return [Google::Apis::TestingV1::NetworkConfigurationCatalog] # @return [Google::Apis::TestingV1::NetworkConfigurationCatalog]
@ -1504,6 +1780,7 @@ module Google
# Update properties of this object # Update properties of this object
def update!(**args) def update!(**args)
@android_device_catalog = args[:android_device_catalog] if args.key?(:android_device_catalog) @android_device_catalog = args[:android_device_catalog] if args.key?(:android_device_catalog)
@ios_device_catalog = args[:ios_device_catalog] if args.key?(:ios_device_catalog)
@network_configuration_catalog = args[:network_configuration_catalog] if args.key?(:network_configuration_catalog) @network_configuration_catalog = args[:network_configuration_catalog] if args.key?(:network_configuration_catalog)
@software_catalog = args[:software_catalog] if args.key?(:software_catalog) @software_catalog = args[:software_catalog] if args.key?(:software_catalog)
end end
@ -1781,6 +2058,21 @@ module Google
attr_accessor :disable_video_recording attr_accessor :disable_video_recording
alias_method :disable_video_recording?, :disable_video_recording alias_method :disable_video_recording?, :disable_video_recording
# A description of how to set up an iOS device prior to a test.
# Corresponds to the JSON property `iosTestSetup`
# @return [Google::Apis::TestingV1::IosTestSetup]
attr_accessor :ios_test_setup
# A test of an iOS application that uses the XCTest framework.
# Xcode supports the option to "build for testing", which generates an
# .xctestrun file that contains a test specification (arguments, test methods,
# etc). This test type accepts a zip file containing the .xctestrun file and
# the corresponding contents of the Build/Products directory that contains all
# the binaries needed to run the tests.
# Corresponds to the JSON property `iosXcTest`
# @return [Google::Apis::TestingV1::IosXcTest]
attr_accessor :ios_xc_test
# A description of how to set up the Android device prior to running the test. # A description of how to set up the Android device prior to running the test.
# Corresponds to the JSON property `testSetup` # Corresponds to the JSON property `testSetup`
# @return [Google::Apis::TestingV1::TestSetup] # @return [Google::Apis::TestingV1::TestSetup]
@ -1805,6 +2097,8 @@ module Google
@auto_google_login = args[:auto_google_login] if args.key?(:auto_google_login) @auto_google_login = args[:auto_google_login] if args.key?(:auto_google_login)
@disable_performance_metrics = args[:disable_performance_metrics] if args.key?(:disable_performance_metrics) @disable_performance_metrics = args[:disable_performance_metrics] if args.key?(:disable_performance_metrics)
@disable_video_recording = args[:disable_video_recording] if args.key?(:disable_video_recording) @disable_video_recording = args[:disable_video_recording] if args.key?(:disable_video_recording)
@ios_test_setup = args[:ios_test_setup] if args.key?(:ios_test_setup)
@ios_xc_test = args[:ios_xc_test] if args.key?(:ios_xc_test)
@test_setup = args[:test_setup] if args.key?(:test_setup) @test_setup = args[:test_setup] if args.key?(:test_setup)
@test_timeout = args[:test_timeout] if args.key?(:test_timeout) @test_timeout = args[:test_timeout] if args.key?(:test_timeout)
end end

View File

@ -190,6 +190,54 @@ module Google
include Google::Apis::Core::JsonObjectSupport include Google::Apis::Core::JsonObjectSupport
end end
class IosDevice
class Representation < Google::Apis::Core::JsonRepresentation; end
include Google::Apis::Core::JsonObjectSupport
end
class IosDeviceCatalog
class Representation < Google::Apis::Core::JsonRepresentation; end
include Google::Apis::Core::JsonObjectSupport
end
class IosDeviceList
class Representation < Google::Apis::Core::JsonRepresentation; end
include Google::Apis::Core::JsonObjectSupport
end
class IosModel
class Representation < Google::Apis::Core::JsonRepresentation; end
include Google::Apis::Core::JsonObjectSupport
end
class IosRuntimeConfiguration
class Representation < Google::Apis::Core::JsonRepresentation; end
include Google::Apis::Core::JsonObjectSupport
end
class IosTestSetup
class Representation < Google::Apis::Core::JsonRepresentation; end
include Google::Apis::Core::JsonObjectSupport
end
class IosVersion
class Representation < Google::Apis::Core::JsonRepresentation; end
include Google::Apis::Core::JsonObjectSupport
end
class IosXcTest
class Representation < Google::Apis::Core::JsonRepresentation; end
include Google::Apis::Core::JsonObjectSupport
end
class LauncherActivityIntent class LauncherActivityIntent
class Representation < Google::Apis::Core::JsonRepresentation; end class Representation < Google::Apis::Core::JsonRepresentation; end
@ -544,6 +592,8 @@ module Google
class Representation < Google::Apis::Core::JsonRepresentation class Representation < Google::Apis::Core::JsonRepresentation
property :android_device, as: 'androidDevice', class: Google::Apis::TestingV1::AndroidDevice, decorator: Google::Apis::TestingV1::AndroidDevice::Representation property :android_device, as: 'androidDevice', class: Google::Apis::TestingV1::AndroidDevice, decorator: Google::Apis::TestingV1::AndroidDevice::Representation
property :ios_device, as: 'iosDevice', class: Google::Apis::TestingV1::IosDevice, decorator: Google::Apis::TestingV1::IosDevice::Representation
end end
end end
@ -554,6 +604,8 @@ module Google
property :android_matrix, as: 'androidMatrix', class: Google::Apis::TestingV1::AndroidMatrix, decorator: Google::Apis::TestingV1::AndroidMatrix::Representation property :android_matrix, as: 'androidMatrix', class: Google::Apis::TestingV1::AndroidMatrix, decorator: Google::Apis::TestingV1::AndroidMatrix::Representation
property :ios_device_list, as: 'iosDeviceList', class: Google::Apis::TestingV1::IosDeviceList, decorator: Google::Apis::TestingV1::IosDeviceList::Representation
end end
end end
@ -602,6 +654,84 @@ module Google
end end
end end
class IosDevice
# @private
class Representation < Google::Apis::Core::JsonRepresentation
property :ios_model_id, as: 'iosModelId'
property :ios_version_id, as: 'iosVersionId'
property :locale, as: 'locale'
property :orientation, as: 'orientation'
end
end
class IosDeviceCatalog
# @private
class Representation < Google::Apis::Core::JsonRepresentation
collection :models, as: 'models', class: Google::Apis::TestingV1::IosModel, decorator: Google::Apis::TestingV1::IosModel::Representation
property :runtime_configuration, as: 'runtimeConfiguration', class: Google::Apis::TestingV1::IosRuntimeConfiguration, decorator: Google::Apis::TestingV1::IosRuntimeConfiguration::Representation
collection :versions, as: 'versions', class: Google::Apis::TestingV1::IosVersion, decorator: Google::Apis::TestingV1::IosVersion::Representation
end
end
class IosDeviceList
# @private
class Representation < Google::Apis::Core::JsonRepresentation
collection :ios_devices, as: 'iosDevices', class: Google::Apis::TestingV1::IosDevice, decorator: Google::Apis::TestingV1::IosDevice::Representation
end
end
class IosModel
# @private
class Representation < Google::Apis::Core::JsonRepresentation
collection :device_capabilities, as: 'deviceCapabilities'
property :id, as: 'id'
property :name, as: 'name'
collection :supported_version_ids, as: 'supportedVersionIds'
collection :tags, as: 'tags'
end
end
class IosRuntimeConfiguration
# @private
class Representation < Google::Apis::Core::JsonRepresentation
collection :locales, as: 'locales', class: Google::Apis::TestingV1::Locale, decorator: Google::Apis::TestingV1::Locale::Representation
collection :orientations, as: 'orientations', class: Google::Apis::TestingV1::Orientation, decorator: Google::Apis::TestingV1::Orientation::Representation
end
end
class IosTestSetup
# @private
class Representation < Google::Apis::Core::JsonRepresentation
property :network_profile, as: 'networkProfile'
end
end
class IosVersion
# @private
class Representation < Google::Apis::Core::JsonRepresentation
property :id, as: 'id'
property :major_version, as: 'majorVersion'
property :minor_version, as: 'minorVersion'
collection :tags, as: 'tags'
end
end
class IosXcTest
# @private
class Representation < Google::Apis::Core::JsonRepresentation
property :tests_zip, as: 'testsZip', class: Google::Apis::TestingV1::FileReference, decorator: Google::Apis::TestingV1::FileReference::Representation
property :xctestrun, as: 'xctestrun', class: Google::Apis::TestingV1::FileReference, decorator: Google::Apis::TestingV1::FileReference::Representation
end
end
class LauncherActivityIntent class LauncherActivityIntent
# @private # @private
class Representation < Google::Apis::Core::JsonRepresentation class Representation < Google::Apis::Core::JsonRepresentation
@ -725,6 +855,8 @@ module Google
class Representation < Google::Apis::Core::JsonRepresentation class Representation < Google::Apis::Core::JsonRepresentation
property :android_device_catalog, as: 'androidDeviceCatalog', class: Google::Apis::TestingV1::AndroidDeviceCatalog, decorator: Google::Apis::TestingV1::AndroidDeviceCatalog::Representation property :android_device_catalog, as: 'androidDeviceCatalog', class: Google::Apis::TestingV1::AndroidDeviceCatalog, decorator: Google::Apis::TestingV1::AndroidDeviceCatalog::Representation
property :ios_device_catalog, as: 'iosDeviceCatalog', class: Google::Apis::TestingV1::IosDeviceCatalog, decorator: Google::Apis::TestingV1::IosDeviceCatalog::Representation
property :network_configuration_catalog, as: 'networkConfigurationCatalog', class: Google::Apis::TestingV1::NetworkConfigurationCatalog, decorator: Google::Apis::TestingV1::NetworkConfigurationCatalog::Representation property :network_configuration_catalog, as: 'networkConfigurationCatalog', class: Google::Apis::TestingV1::NetworkConfigurationCatalog, decorator: Google::Apis::TestingV1::NetworkConfigurationCatalog::Representation
property :software_catalog, as: 'softwareCatalog', class: Google::Apis::TestingV1::ProvidedSoftwareCatalog, decorator: Google::Apis::TestingV1::ProvidedSoftwareCatalog::Representation property :software_catalog, as: 'softwareCatalog', class: Google::Apis::TestingV1::ProvidedSoftwareCatalog, decorator: Google::Apis::TestingV1::ProvidedSoftwareCatalog::Representation
@ -800,6 +932,10 @@ module Google
property :auto_google_login, as: 'autoGoogleLogin' property :auto_google_login, as: 'autoGoogleLogin'
property :disable_performance_metrics, as: 'disablePerformanceMetrics' property :disable_performance_metrics, as: 'disablePerformanceMetrics'
property :disable_video_recording, as: 'disableVideoRecording' property :disable_video_recording, as: 'disableVideoRecording'
property :ios_test_setup, as: 'iosTestSetup', class: Google::Apis::TestingV1::IosTestSetup, decorator: Google::Apis::TestingV1::IosTestSetup::Representation
property :ios_xc_test, as: 'iosXcTest', class: Google::Apis::TestingV1::IosXcTest, decorator: Google::Apis::TestingV1::IosXcTest::Representation
property :test_setup, as: 'testSetup', class: Google::Apis::TestingV1::TestSetup, decorator: Google::Apis::TestingV1::TestSetup::Representation property :test_setup, as: 'testSetup', class: Google::Apis::TestingV1::TestSetup, decorator: Google::Apis::TestingV1::TestSetup::Representation
property :test_timeout, as: 'testTimeout' property :test_timeout, as: 'testTimeout'