google-api-client 0.23.9 → 0.24.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (110) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +42 -0
  3. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  4. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +2030 -58
  5. data/generated/google/apis/adexchangebuyer2_v2beta1/representations.rb +878 -43
  6. data/generated/google/apis/adexchangebuyer2_v2beta1/service.rb +604 -0
  7. data/generated/google/apis/adexperiencereport_v1.rb +1 -1
  8. data/generated/google/apis/adexperiencereport_v1/classes.rb +0 -1
  9. data/generated/google/apis/admin_directory_v1.rb +1 -1
  10. data/generated/google/apis/admin_directory_v1/classes.rb +8 -2
  11. data/generated/google/apis/admin_directory_v1/representations.rb +1 -0
  12. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  13. data/generated/google/apis/androidenterprise_v1/classes.rb +108 -5
  14. data/generated/google/apis/androidenterprise_v1/representations.rb +60 -0
  15. data/generated/google/apis/appengine_v1.rb +1 -1
  16. data/generated/google/apis/appengine_v1/classes.rb +1 -1
  17. data/generated/google/apis/appengine_v1/service.rb +3 -3
  18. data/generated/google/apis/appengine_v1beta.rb +1 -1
  19. data/generated/google/apis/appengine_v1beta/classes.rb +1 -1
  20. data/generated/google/apis/appengine_v1beta/service.rb +3 -3
  21. data/generated/google/apis/classroom_v1.rb +1 -1
  22. data/generated/google/apis/classroom_v1/classes.rb +14 -14
  23. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  24. data/generated/google/apis/cloudbuild_v1/classes.rb +6 -0
  25. data/generated/google/apis/cloudbuild_v1/representations.rb +1 -0
  26. data/generated/google/apis/cloudtrace_v1.rb +1 -1
  27. data/generated/google/apis/cloudtrace_v1/classes.rb +3 -2
  28. data/generated/google/apis/composer_v1.rb +1 -1
  29. data/generated/google/apis/composer_v1/classes.rb +1 -1
  30. data/generated/google/apis/composer_v1/service.rb +6 -6
  31. data/generated/google/apis/composer_v1beta1.rb +1 -1
  32. data/generated/google/apis/composer_v1beta1/classes.rb +1 -1
  33. data/generated/google/apis/dataproc_v1.rb +1 -1
  34. data/generated/google/apis/dataproc_v1/classes.rb +475 -0
  35. data/generated/google/apis/dataproc_v1/representations.rb +188 -0
  36. data/generated/google/apis/dataproc_v1/service.rb +550 -0
  37. data/generated/google/apis/dlp_v2.rb +1 -1
  38. data/generated/google/apis/dlp_v2/classes.rb +21 -21
  39. data/generated/google/apis/file_v1beta1.rb +34 -0
  40. data/generated/google/apis/file_v1beta1/classes.rb +810 -0
  41. data/generated/google/apis/file_v1beta1/representations.rb +298 -0
  42. data/generated/google/apis/file_v1beta1/service.rb +472 -0
  43. data/generated/google/apis/jobs_v3.rb +1 -1
  44. data/generated/google/apis/jobs_v3/classes.rb +16 -17
  45. data/generated/google/apis/logging_v2.rb +1 -1
  46. data/generated/google/apis/logging_v2/classes.rb +8 -9
  47. data/generated/google/apis/logging_v2/service.rb +9 -9
  48. data/generated/google/apis/logging_v2beta1.rb +1 -1
  49. data/generated/google/apis/logging_v2beta1/classes.rb +8 -9
  50. data/generated/google/apis/logging_v2beta1/service.rb +1 -1
  51. data/generated/google/apis/proximitybeacon_v1beta1.rb +1 -1
  52. data/generated/google/apis/proximitybeacon_v1beta1/classes.rb +14 -14
  53. data/generated/google/apis/serviceconsumermanagement_v1.rb +1 -1
  54. data/generated/google/apis/serviceconsumermanagement_v1/classes.rb +142 -98
  55. data/generated/google/apis/servicecontrol_v1.rb +1 -1
  56. data/generated/google/apis/servicecontrol_v1/classes.rb +0 -2
  57. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  58. data/generated/google/apis/servicemanagement_v1/classes.rb +142 -98
  59. data/generated/google/apis/serviceusage_v1.rb +1 -1
  60. data/generated/google/apis/serviceusage_v1/classes.rb +142 -98
  61. data/generated/google/apis/serviceusage_v1beta1.rb +1 -1
  62. data/generated/google/apis/serviceusage_v1beta1/classes.rb +142 -98
  63. data/generated/google/apis/serviceuser_v1.rb +1 -1
  64. data/generated/google/apis/serviceuser_v1/classes.rb +142 -98
  65. data/generated/google/apis/speech_v1.rb +1 -1
  66. data/generated/google/apis/speech_v1/classes.rb +91 -0
  67. data/generated/google/apis/speech_v1/representations.rb +18 -0
  68. data/generated/google/apis/speech_v1/service.rb +47 -0
  69. data/generated/google/apis/speech_v1beta1.rb +1 -1
  70. data/generated/google/apis/speech_v1beta1/classes.rb +25 -0
  71. data/generated/google/apis/speech_v1beta1/representations.rb +15 -0
  72. data/generated/google/apis/speech_v1beta1/service.rb +47 -0
  73. data/generated/google/apis/sqladmin_v1beta4.rb +3 -3
  74. data/generated/google/apis/sqladmin_v1beta4/classes.rb +34 -31
  75. data/generated/google/apis/sqladmin_v1beta4/service.rb +8 -8
  76. data/generated/google/apis/storage_v1.rb +1 -1
  77. data/generated/google/apis/storage_v1/classes.rb +3 -4
  78. data/generated/google/apis/storage_v1/service.rb +2 -1
  79. data/generated/google/apis/storage_v1beta2.rb +1 -1
  80. data/generated/google/apis/storage_v1beta2/classes.rb +1 -2
  81. data/generated/google/apis/storage_v1beta2/service.rb +2 -1
  82. data/generated/google/apis/storagetransfer_v1.rb +1 -1
  83. data/generated/google/apis/storagetransfer_v1/classes.rb +21 -21
  84. data/generated/google/apis/testing_v1.rb +1 -1
  85. data/generated/google/apis/testing_v1/classes.rb +308 -14
  86. data/generated/google/apis/testing_v1/representations.rb +136 -0
  87. data/generated/google/apis/vision_v1.rb +1 -1
  88. data/generated/google/apis/vision_v1/classes.rb +156 -2
  89. data/generated/google/apis/vision_v1/representations.rb +60 -0
  90. data/generated/google/apis/vision_v1p1beta1.rb +1 -1
  91. data/generated/google/apis/vision_v1p1beta1/classes.rb +156 -2
  92. data/generated/google/apis/vision_v1p1beta1/representations.rb +60 -0
  93. data/generated/google/apis/vision_v1p2beta1.rb +1 -1
  94. data/generated/google/apis/vision_v1p2beta1/classes.rb +156 -2
  95. data/generated/google/apis/vision_v1p2beta1/representations.rb +60 -0
  96. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  97. data/lib/google/apis/version.rb +1 -1
  98. metadata +6 -14
  99. data/generated/google/apis/adexchangeseller_v1.rb +0 -37
  100. data/generated/google/apis/adexchangeseller_v1/classes.rb +0 -557
  101. data/generated/google/apis/adexchangeseller_v1/representations.rb +0 -248
  102. data/generated/google/apis/adexchangeseller_v1/service.rb +0 -544
  103. data/generated/google/apis/adexchangeseller_v1_1.rb +0 -37
  104. data/generated/google/apis/adexchangeseller_v1_1/classes.rb +0 -842
  105. data/generated/google/apis/adexchangeseller_v1_1/representations.rb +0 -364
  106. data/generated/google/apis/adexchangeseller_v1_1/service.rb +0 -735
  107. data/generated/google/apis/adexchangeseller_v2_0.rb +0 -37
  108. data/generated/google/apis/adexchangeseller_v2_0/classes.rb +0 -792
  109. data/generated/google/apis/adexchangeseller_v2_0/representations.rb +0 -347
  110. data/generated/google/apis/adexchangeseller_v2_0/service.rb +0 -638
@@ -26,7 +26,7 @@ module Google
26
26
  # @see https://cloud.google.com/service-control/
27
27
  module ServicecontrolV1
28
28
  VERSION = 'V1'
29
- REVISION = '20180901'
29
+ REVISION = '20180908'
30
30
 
31
31
  # View and manage your data across Google Cloud Platform services
32
32
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
@@ -861,7 +861,6 @@ module Google
861
861
  # A common proto for logging HTTP requests. Only contains semantics
862
862
  # defined by the HTTP specification. Product-specific logging
863
863
  # information MUST be defined in a separate message.
864
- # This is an exact copy of HttpRequest message defined in Stackdriver.
865
864
  class HttpRequest
866
865
  include Google::Apis::Core::Hashable
867
866
 
@@ -1028,7 +1027,6 @@ module Google
1028
1027
  # A common proto for logging HTTP requests. Only contains semantics
1029
1028
  # defined by the HTTP specification. Product-specific logging
1030
1029
  # information MUST be defined in a separate message.
1031
- # This is an exact copy of HttpRequest message defined in Stackdriver.
1032
1030
  # Corresponds to the JSON property `httpRequest`
1033
1031
  # @return [Google::Apis::ServicecontrolV1::HttpRequest]
1034
1032
  attr_accessor :http_request
@@ -27,7 +27,7 @@ module Google
27
27
  # @see https://cloud.google.com/service-management/
28
28
  module ServicemanagementV1
29
29
  VERSION = 'V1'
30
- REVISION = '20180825'
30
+ REVISION = '20180907'
31
31
 
32
32
  # View and manage your data across Google Cloud Platform services
33
33
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
@@ -1669,79 +1669,79 @@ module Google
1669
1669
  end
1670
1670
  end
1671
1671
 
1672
- # `HttpRule` defines the mapping of an RPC method to one or more HTTP
1673
- # REST API methods. The mapping specifies how different portions of the RPC
1674
- # request message are mapped to URL path, URL query parameters, and
1675
- # HTTP request body. The mapping is typically specified as an
1676
- # `google.api.http` annotation on the RPC method,
1677
- # see "google/api/annotations.proto" for details.
1678
- # The mapping consists of a field specifying the path template and
1679
- # method kind. The path template can refer to fields in the request
1680
- # message, as in the example below which describes a REST GET
1681
- # operation on a resource collection of messages:
1672
+ # # gRPC Transcoding
1673
+ # gRPC Transcoding is a feature for mapping between a gRPC method and one or
1674
+ # more HTTP REST endpoints. It allows developers to build a single API service
1675
+ # that supports both gRPC APIs and REST APIs. Many systems, including [Google
1676
+ # APIs](https://github.com/googleapis/googleapis),
1677
+ # [Cloud Endpoints](https://cloud.google.com/endpoints), [gRPC
1678
+ # Gateway](https://github.com/grpc-ecosystem/grpc-gateway),
1679
+ # and [Envoy](https://github.com/envoyproxy/envoy) proxy support this feature
1680
+ # and use it for large scale production services.
1681
+ # `HttpRule` defines the schema of the gRPC/REST mapping. The mapping specifies
1682
+ # how different portions of the gRPC request message are mapped to the URL
1683
+ # path, URL query parameters, and HTTP request body. It also controls how the
1684
+ # gRPC response message is mapped to the HTTP response body. `HttpRule` is
1685
+ # typically specified as an `google.api.http` annotation on the gRPC method.
1686
+ # Each mapping specifies a URL path template and an HTTP method. The path
1687
+ # template may refer to one or more fields in the gRPC request message, as long
1688
+ # as each field is a non-repeated field with a primitive (non-message) type.
1689
+ # The path template controls how fields of the request message are mapped to
1690
+ # the URL path.
1691
+ # Example:
1682
1692
  # service Messaging `
1683
1693
  # rpc GetMessage(GetMessageRequest) returns (Message) `
1684
- # option (google.api.http).get = "/v1/messages/`message_id`/`sub.
1685
- # subfield`";
1694
+ # option (google.api.http) = `
1695
+ # get: "/v1/`name=messages/*"`"
1696
+ # `;
1686
1697
  # `
1687
1698
  # `
1688
1699
  # message GetMessageRequest `
1689
- # message SubMessage `
1690
- # string subfield = 1;
1691
- # `
1692
- # string message_id = 1; // mapped to the URL
1693
- # SubMessage sub = 2; // `sub.subfield` is url-mapped
1700
+ # string name = 1; // Mapped to URL path.
1694
1701
  # `
1695
1702
  # message Message `
1696
- # string text = 1; // content of the resource
1703
+ # string text = 1; // The resource content.
1697
1704
  # `
1698
- # The same http annotation can alternatively be expressed inside the
1699
- # `GRPC API Configuration` YAML file.
1700
- # http:
1701
- # rules:
1702
- # - selector: <proto_package_name>.Messaging.GetMessage
1703
- # get: /v1/messages/`message_id`/`sub.subfield`
1704
- # This definition enables an automatic, bidrectional mapping of HTTP
1705
- # JSON to RPC. Example:
1706
- # HTTP | RPC
1705
+ # This enables an HTTP REST to gRPC mapping as below:
1706
+ # HTTP | gRPC
1707
1707
  # -----|-----
1708
- # `GET /v1/messages/123456/foo` | `GetMessage(message_id: "123456" sub:
1709
- # SubMessage(subfield: "foo"))`
1710
- # In general, not only fields but also field paths can be referenced
1711
- # from a path pattern. Fields mapped to the path pattern cannot be
1712
- # repeated and must have a primitive (non-message) type.
1713
- # Any fields in the request message which are not bound by the path
1714
- # pattern automatically become (optional) HTTP query
1715
- # parameters. Assume the following definition of the request message:
1708
+ # `GET /v1/messages/123456` | `GetMessage(name: "messages/123456")`
1709
+ # Any fields in the request message which are not bound by the path template
1710
+ # automatically become HTTP query parameters if there is no HTTP request body.
1711
+ # For example:
1716
1712
  # service Messaging `
1717
1713
  # rpc GetMessage(GetMessageRequest) returns (Message) `
1718
- # option (google.api.http).get = "/v1/messages/`message_id`";
1714
+ # option (google.api.http) = `
1715
+ # get:"/v1/messages/`message_id`"
1716
+ # `;
1719
1717
  # `
1720
1718
  # `
1721
1719
  # message GetMessageRequest `
1722
1720
  # message SubMessage `
1723
1721
  # string subfield = 1;
1724
1722
  # `
1725
- # string message_id = 1; // mapped to the URL
1726
- # int64 revision = 2; // becomes a parameter
1727
- # SubMessage sub = 3; // `sub.subfield` becomes a parameter
1723
+ # string message_id = 1; // Mapped to URL path.
1724
+ # int64 revision = 2; // Mapped to URL query parameter `revision`.
1725
+ # SubMessage sub = 3; // Mapped to URL query parameter `sub.subfield`.
1728
1726
  # `
1729
1727
  # This enables a HTTP JSON to RPC mapping as below:
1730
- # HTTP | RPC
1728
+ # HTTP | gRPC
1731
1729
  # -----|-----
1732
1730
  # `GET /v1/messages/123456?revision=2&sub.subfield=foo` | `GetMessage(message_id:
1733
1731
  # "123456" revision: 2 sub: SubMessage(subfield: "foo"))`
1734
- # Note that fields which are mapped to HTTP parameters must have a
1735
- # primitive type or a repeated primitive type. Message types are not
1736
- # allowed. In the case of a repeated type, the parameter can be
1737
- # repeated in the URL, as in `...?param=A&param=B`.
1738
- # For HTTP method kinds which allow a request body, the `body` field
1732
+ # Note that fields which are mapped to URL query parameters must have a
1733
+ # primitive type or a repeated primitive type or a non-repeated message type.
1734
+ # In the case of a repeated type, the parameter can be repeated in the URL
1735
+ # as `...?param=A&param=B`. In the case of a message type, each field of the
1736
+ # message is mapped to a separate parameter, such as
1737
+ # `...?foo.a=A&foo.b=B&foo.c=C`.
1738
+ # For HTTP methods that allow a request body, the `body` field
1739
1739
  # specifies the mapping. Consider a REST update method on the
1740
1740
  # message resource collection:
1741
1741
  # service Messaging `
1742
1742
  # rpc UpdateMessage(UpdateMessageRequest) returns (Message) `
1743
1743
  # option (google.api.http) = `
1744
- # put: "/v1/messages/`message_id`"
1744
+ # patch: "/v1/messages/`message_id`"
1745
1745
  # body: "message"
1746
1746
  # `;
1747
1747
  # `
@@ -1753,9 +1753,9 @@ module Google
1753
1753
  # The following HTTP JSON to RPC mapping is enabled, where the
1754
1754
  # representation of the JSON in the request body is determined by
1755
1755
  # protos JSON encoding:
1756
- # HTTP | RPC
1756
+ # HTTP | gRPC
1757
1757
  # -----|-----
1758
- # `PUT /v1/messages/123456 ` "text": "Hi!" `` | `UpdateMessage(message_id: "
1758
+ # `PATCH /v1/messages/123456 ` "text": "Hi!" `` | `UpdateMessage(message_id: "
1759
1759
  # 123456" message ` text: "Hi!" `)`
1760
1760
  # The special name `*` can be used in the body mapping to define that
1761
1761
  # every field not bound by the path template should be mapped to the
@@ -1764,7 +1764,7 @@ module Google
1764
1764
  # service Messaging `
1765
1765
  # rpc UpdateMessage(Message) returns (Message) `
1766
1766
  # option (google.api.http) = `
1767
- # put: "/v1/messages/`message_id`"
1767
+ # patch: "/v1/messages/`message_id`"
1768
1768
  # body: "*"
1769
1769
  # `;
1770
1770
  # `
@@ -1774,13 +1774,13 @@ module Google
1774
1774
  # string text = 2;
1775
1775
  # `
1776
1776
  # The following HTTP JSON to RPC mapping is enabled:
1777
- # HTTP | RPC
1777
+ # HTTP | gRPC
1778
1778
  # -----|-----
1779
- # `PUT /v1/messages/123456 ` "text": "Hi!" `` | `UpdateMessage(message_id: "
1779
+ # `PATCH /v1/messages/123456 ` "text": "Hi!" `` | `UpdateMessage(message_id: "
1780
1780
  # 123456" text: "Hi!")`
1781
1781
  # Note that when using `*` in the body mapping, it is not possible to
1782
1782
  # have HTTP parameters, as all fields not bound by the path end in
1783
- # the body. This makes this option more rarely used in practice of
1783
+ # the body. This makes this option more rarely used in practice when
1784
1784
  # defining REST APIs. The common usage of `*` is in custom methods
1785
1785
  # which don't use the URL at all for transferring data.
1786
1786
  # It is possible to define multiple HTTP methods for one RPC by using
@@ -1799,56 +1799,96 @@ module Google
1799
1799
  # string message_id = 1;
1800
1800
  # string user_id = 2;
1801
1801
  # `
1802
- # This enables the following two alternative HTTP JSON to RPC
1803
- # mappings:
1804
- # HTTP | RPC
1802
+ # This enables the following two alternative HTTP JSON to RPC mappings:
1803
+ # HTTP | gRPC
1805
1804
  # -----|-----
1806
1805
  # `GET /v1/messages/123456` | `GetMessage(message_id: "123456")`
1807
1806
  # `GET /v1/users/me/messages/123456` | `GetMessage(user_id: "me" message_id: "
1808
1807
  # 123456")`
1809
- # # Rules for HTTP mapping
1810
- # The rules for mapping HTTP path, query parameters, and body fields
1811
- # to the request message are as follows:
1812
- # 1. The `body` field specifies either `*` or a field path, or is
1813
- # omitted. If omitted, it indicates there is no HTTP request body.
1814
- # 2. Leaf fields (recursive expansion of nested messages in the
1815
- # request) can be classified into three types:
1816
- # (a) Matched in the URL template.
1817
- # (b) Covered by body (if body is `*`, everything except (a) fields;
1818
- # else everything under the body field)
1819
- # (c) All other fields.
1820
- # 3. URL query parameters found in the HTTP request are mapped to (c) fields.
1821
- # 4. Any body sent with an HTTP request can contain only (b) fields.
1822
- # The syntax of the path template is as follows:
1808
+ # ## Rules for HTTP mapping
1809
+ # 1. Leaf request fields (recursive expansion nested messages in the request
1810
+ # message) are classified into three categories:
1811
+ # - Fields referred by the path template. They are passed via the URL path.
1812
+ # - Fields referred by the HttpRule.body. They are passed via the HTTP
1813
+ # request body.
1814
+ # - All other fields are passed via the URL query parameters, and the
1815
+ # parameter name is the field path in the request message. A repeated
1816
+ # field can be represented as multiple query parameters under the same
1817
+ # name.
1818
+ # 2. If HttpRule.body is "*", there is no URL query parameter, all fields
1819
+ # are passed via URL path and HTTP request body.
1820
+ # 3. If HttpRule.body is omitted, there is no HTTP request body, all
1821
+ # fields are passed via URL path and URL query parameters.
1822
+ # ### Path template syntax
1823
1823
  # Template = "/" Segments [ Verb ] ;
1824
1824
  # Segments = Segment ` "/" Segment ` ;
1825
1825
  # Segment = "*" | "**" | LITERAL | Variable ;
1826
1826
  # Variable = "`" FieldPath [ "=" Segments ] "`" ;
1827
1827
  # FieldPath = IDENT ` "." IDENT ` ;
1828
1828
  # Verb = ":" LITERAL ;
1829
- # The syntax `*` matches a single path segment. The syntax `**` matches zero
1830
- # or more path segments, which must be the last part of the path except the
1831
- # `Verb`. The syntax `LITERAL` matches literal text in the path.
1829
+ # The syntax `*` matches a single URL path segment. The syntax `**` matches
1830
+ # zero or more URL path segments, which must be the last part of the URL path
1831
+ # except the `Verb`.
1832
1832
  # The syntax `Variable` matches part of the URL path as specified by its
1833
1833
  # template. A variable template must not contain other variables. If a variable
1834
1834
  # matches a single path segment, its template may be omitted, e.g. ``var``
1835
1835
  # is equivalent to ``var=*``.
1836
+ # The syntax `LITERAL` matches literal text in the URL path. If the `LITERAL`
1837
+ # contains any reserved character, such characters should be percent-encoded
1838
+ # before the matching.
1836
1839
  # If a variable contains exactly one path segment, such as `"`var`"` or
1837
- # `"`var=*`"`, when such a variable is expanded into a URL path, all characters
1838
- # except `[-_.~0-9a-zA-Z]` are percent-encoded. Such variables show up in the
1839
- # Discovery Document as ``var``.
1840
- # If a variable contains one or more path segments, such as `"`var=foo/*`"`
1841
- # or `"`var=**`"`, when such a variable is expanded into a URL path, all
1842
- # characters except `[-_.~/0-9a-zA-Z]` are percent-encoded. Such variables
1843
- # show up in the Discovery Document as ``+var``.
1844
- # NOTE: While the single segment variable matches the semantics of
1845
- # [RFC 6570](https://tools.ietf.org/html/rfc6570) Section 3.2.2
1846
- # Simple String Expansion, the multi segment variable **does not** match
1847
- # RFC 6570 Reserved Expansion. The reason is that the Reserved Expansion
1840
+ # `"`var=*`"`, when such a variable is expanded into a URL path on the client
1841
+ # side, all characters except `[-_.~0-9a-zA-Z]` are percent-encoded. The
1842
+ # server side does the reverse decoding. Such variables show up in the
1843
+ # [Discovery Document](https://developers.google.com/discovery/v1/reference/apis)
1844
+ # as ``var``.
1845
+ # If a variable contains multiple path segments, such as `"`var=foo/*`"`
1846
+ # or `"`var=**`"`, when such a variable is expanded into a URL path on the
1847
+ # client side, all characters except `[-_.~/0-9a-zA-Z]` are percent-encoded.
1848
+ # The server side does the reverse decoding, except "%2F" and "%2f" are left
1849
+ # unchanged. Such variables show up in the
1850
+ # [Discovery Document](https://developers.google.com/discovery/v1/reference/apis)
1851
+ # as ``+var``.
1852
+ # ## Using gRPC API Service Configuration
1853
+ # gRPC API Service Configuration (service config) is a configuration language
1854
+ # for configuring a gRPC service to become a user-facing product. The
1855
+ # service config is simply the YAML representation of the `google.api.Service`
1856
+ # proto message.
1857
+ # As an alternative to annotating your proto file, you can configure gRPC
1858
+ # transcoding in your service config YAML files. You do this by specifying a
1859
+ # `HttpRule` that maps the gRPC method to a REST endpoint, achieving the same
1860
+ # effect as the proto annotation. This can be particularly useful if you
1861
+ # have a proto that is reused in multiple services. Note that any transcoding
1862
+ # specified in the service config will override any matching transcoding
1863
+ # configuration in the proto.
1864
+ # Example:
1865
+ # http:
1866
+ # rules:
1867
+ # # Selects a gRPC method and applies HttpRule to it.
1868
+ # - selector: example.v1.Messaging.GetMessage
1869
+ # get: /v1/messages/`message_id`/`sub.subfield`
1870
+ # ## Special notes
1871
+ # When gRPC Transcoding is used to map a gRPC to JSON REST endpoints, the
1872
+ # proto to JSON conversion must follow the [proto3
1873
+ # specification](https://developers.google.com/protocol-buffers/docs/proto3#json)
1874
+ # .
1875
+ # While the single segment variable follows the semantics of
1876
+ # [RFC 6570](https://tools.ietf.org/html/rfc6570) Section 3.2.2 Simple String
1877
+ # Expansion, the multi segment variable **does not** follow RFC 6570 Section
1878
+ # 3.2.3 Reserved Expansion. The reason is that the Reserved Expansion
1848
1879
  # does not expand special characters like `?` and `#`, which would lead
1849
- # to invalid URLs.
1850
- # NOTE: the field paths in variables and in the `body` must not refer to
1851
- # repeated fields or map fields.
1880
+ # to invalid URLs. As the result, gRPC Transcoding uses a custom encoding
1881
+ # for multi segment variables.
1882
+ # The path variables **must not** refer to any repeated or mapped field,
1883
+ # because client libraries are not capable of handling such variable expansion.
1884
+ # The path variables **must not** capture the leading "/" character. The reason
1885
+ # is that the most common use case "`var`" does not capture the leading "/"
1886
+ # character. For consistency, all path variables must share the same behavior.
1887
+ # Repeated message fields must not be mapped to URL query parameters, because
1888
+ # no client library can support such complicated mapping.
1889
+ # If an API needs to use a JSON array for request or response body, it can map
1890
+ # the request or response body to a repeated field. However, some gRPC
1891
+ # Transcoding implementations may not support this feature.
1852
1892
  class HttpRule
1853
1893
  include Google::Apis::Core::Hashable
1854
1894
 
@@ -1859,10 +1899,11 @@ module Google
1859
1899
  # @return [Array<Google::Apis::ServicemanagementV1::HttpRule>]
1860
1900
  attr_accessor :additional_bindings
1861
1901
 
1862
- # The name of the request field whose value is mapped to the HTTP body, or
1863
- # `*` for mapping all fields not captured by the path pattern to the HTTP
1864
- # body. NOTE: the referred field must not be a repeated field and must be
1865
- # present at the top-level of request message type.
1902
+ # The name of the request field whose value is mapped to the HTTP request
1903
+ # body, or `*` for mapping all request fields not captured by the path
1904
+ # pattern to the HTTP body, or omitted for not having any HTTP request body.
1905
+ # NOTE: the referred field must be present at the top-level of the request
1906
+ # message type.
1866
1907
  # Corresponds to the JSON property `body`
1867
1908
  # @return [String]
1868
1909
  attr_accessor :body
@@ -1872,12 +1913,13 @@ module Google
1872
1913
  # @return [Google::Apis::ServicemanagementV1::CustomHttpPattern]
1873
1914
  attr_accessor :custom
1874
1915
 
1875
- # Used for deleting a resource.
1916
+ # Maps to HTTP DELETE. Used for deleting a resource.
1876
1917
  # Corresponds to the JSON property `delete`
1877
1918
  # @return [String]
1878
1919
  attr_accessor :delete
1879
1920
 
1880
- # Used for listing and getting information about resources.
1921
+ # Maps to HTTP GET. Used for listing and getting information about
1922
+ # resources.
1881
1923
  # Corresponds to the JSON property `get`
1882
1924
  # @return [String]
1883
1925
  attr_accessor :get
@@ -1898,29 +1940,31 @@ module Google
1898
1940
  # @return [Google::Apis::ServicemanagementV1::MediaUpload]
1899
1941
  attr_accessor :media_upload
1900
1942
 
1901
- # Used for updating a resource.
1943
+ # Maps to HTTP PATCH. Used for updating a resource.
1902
1944
  # Corresponds to the JSON property `patch`
1903
1945
  # @return [String]
1904
1946
  attr_accessor :patch
1905
1947
 
1906
- # Used for creating a resource.
1948
+ # Maps to HTTP POST. Used for creating a resource or performing an action.
1907
1949
  # Corresponds to the JSON property `post`
1908
1950
  # @return [String]
1909
1951
  attr_accessor :post
1910
1952
 
1911
- # Used for updating a resource.
1953
+ # Maps to HTTP PUT. Used for replacing a resource.
1912
1954
  # Corresponds to the JSON property `put`
1913
1955
  # @return [String]
1914
1956
  attr_accessor :put
1915
1957
 
1916
1958
  # Optional. The name of the response field whose value is mapped to the HTTP
1917
- # body of response. Other response fields are ignored. When
1918
- # not set, the response message will be used as HTTP body of response.
1959
+ # response body. When omitted, the entire response message will be used
1960
+ # as the HTTP response body.
1961
+ # NOTE: The referred field must be present at the top-level of the response
1962
+ # message type.
1919
1963
  # Corresponds to the JSON property `responseBody`
1920
1964
  # @return [String]
1921
1965
  attr_accessor :response_body
1922
1966
 
1923
- # Selects methods to which this rule applies.
1967
+ # Selects a method to which this rule applies.
1924
1968
  # Refer to selector for syntax details.
1925
1969
  # Corresponds to the JSON property `selector`
1926
1970
  # @return [String]
@@ -27,7 +27,7 @@ module Google
27
27
  # @see https://cloud.google.com/service-usage/
28
28
  module ServiceusageV1
29
29
  VERSION = 'V1'
30
- REVISION = '20180820'
30
+ REVISION = '20180908'
31
31
 
32
32
  # View and manage your data across Google Cloud Platform services
33
33
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
@@ -1999,79 +1999,79 @@ module Google
1999
1999
  end
2000
2000
  end
2001
2001
 
2002
- # `HttpRule` defines the mapping of an RPC method to one or more HTTP
2003
- # REST API methods. The mapping specifies how different portions of the RPC
2004
- # request message are mapped to URL path, URL query parameters, and
2005
- # HTTP request body. The mapping is typically specified as an
2006
- # `google.api.http` annotation on the RPC method,
2007
- # see "google/api/annotations.proto" for details.
2008
- # The mapping consists of a field specifying the path template and
2009
- # method kind. The path template can refer to fields in the request
2010
- # message, as in the example below which describes a REST GET
2011
- # operation on a resource collection of messages:
2002
+ # # gRPC Transcoding
2003
+ # gRPC Transcoding is a feature for mapping between a gRPC method and one or
2004
+ # more HTTP REST endpoints. It allows developers to build a single API service
2005
+ # that supports both gRPC APIs and REST APIs. Many systems, including [Google
2006
+ # APIs](https://github.com/googleapis/googleapis),
2007
+ # [Cloud Endpoints](https://cloud.google.com/endpoints), [gRPC
2008
+ # Gateway](https://github.com/grpc-ecosystem/grpc-gateway),
2009
+ # and [Envoy](https://github.com/envoyproxy/envoy) proxy support this feature
2010
+ # and use it for large scale production services.
2011
+ # `HttpRule` defines the schema of the gRPC/REST mapping. The mapping specifies
2012
+ # how different portions of the gRPC request message are mapped to the URL
2013
+ # path, URL query parameters, and HTTP request body. It also controls how the
2014
+ # gRPC response message is mapped to the HTTP response body. `HttpRule` is
2015
+ # typically specified as an `google.api.http` annotation on the gRPC method.
2016
+ # Each mapping specifies a URL path template and an HTTP method. The path
2017
+ # template may refer to one or more fields in the gRPC request message, as long
2018
+ # as each field is a non-repeated field with a primitive (non-message) type.
2019
+ # The path template controls how fields of the request message are mapped to
2020
+ # the URL path.
2021
+ # Example:
2012
2022
  # service Messaging `
2013
2023
  # rpc GetMessage(GetMessageRequest) returns (Message) `
2014
- # option (google.api.http).get = "/v1/messages/`message_id`/`sub.
2015
- # subfield`";
2024
+ # option (google.api.http) = `
2025
+ # get: "/v1/`name=messages/*"`"
2026
+ # `;
2016
2027
  # `
2017
2028
  # `
2018
2029
  # message GetMessageRequest `
2019
- # message SubMessage `
2020
- # string subfield = 1;
2021
- # `
2022
- # string message_id = 1; // mapped to the URL
2023
- # SubMessage sub = 2; // `sub.subfield` is url-mapped
2030
+ # string name = 1; // Mapped to URL path.
2024
2031
  # `
2025
2032
  # message Message `
2026
- # string text = 1; // content of the resource
2033
+ # string text = 1; // The resource content.
2027
2034
  # `
2028
- # The same http annotation can alternatively be expressed inside the
2029
- # `GRPC API Configuration` YAML file.
2030
- # http:
2031
- # rules:
2032
- # - selector: <proto_package_name>.Messaging.GetMessage
2033
- # get: /v1/messages/`message_id`/`sub.subfield`
2034
- # This definition enables an automatic, bidrectional mapping of HTTP
2035
- # JSON to RPC. Example:
2036
- # HTTP | RPC
2035
+ # This enables an HTTP REST to gRPC mapping as below:
2036
+ # HTTP | gRPC
2037
2037
  # -----|-----
2038
- # `GET /v1/messages/123456/foo` | `GetMessage(message_id: "123456" sub:
2039
- # SubMessage(subfield: "foo"))`
2040
- # In general, not only fields but also field paths can be referenced
2041
- # from a path pattern. Fields mapped to the path pattern cannot be
2042
- # repeated and must have a primitive (non-message) type.
2043
- # Any fields in the request message which are not bound by the path
2044
- # pattern automatically become (optional) HTTP query
2045
- # parameters. Assume the following definition of the request message:
2038
+ # `GET /v1/messages/123456` | `GetMessage(name: "messages/123456")`
2039
+ # Any fields in the request message which are not bound by the path template
2040
+ # automatically become HTTP query parameters if there is no HTTP request body.
2041
+ # For example:
2046
2042
  # service Messaging `
2047
2043
  # rpc GetMessage(GetMessageRequest) returns (Message) `
2048
- # option (google.api.http).get = "/v1/messages/`message_id`";
2044
+ # option (google.api.http) = `
2045
+ # get:"/v1/messages/`message_id`"
2046
+ # `;
2049
2047
  # `
2050
2048
  # `
2051
2049
  # message GetMessageRequest `
2052
2050
  # message SubMessage `
2053
2051
  # string subfield = 1;
2054
2052
  # `
2055
- # string message_id = 1; // mapped to the URL
2056
- # int64 revision = 2; // becomes a parameter
2057
- # SubMessage sub = 3; // `sub.subfield` becomes a parameter
2053
+ # string message_id = 1; // Mapped to URL path.
2054
+ # int64 revision = 2; // Mapped to URL query parameter `revision`.
2055
+ # SubMessage sub = 3; // Mapped to URL query parameter `sub.subfield`.
2058
2056
  # `
2059
2057
  # This enables a HTTP JSON to RPC mapping as below:
2060
- # HTTP | RPC
2058
+ # HTTP | gRPC
2061
2059
  # -----|-----
2062
2060
  # `GET /v1/messages/123456?revision=2&sub.subfield=foo` | `GetMessage(message_id:
2063
2061
  # "123456" revision: 2 sub: SubMessage(subfield: "foo"))`
2064
- # Note that fields which are mapped to HTTP parameters must have a
2065
- # primitive type or a repeated primitive type. Message types are not
2066
- # allowed. In the case of a repeated type, the parameter can be
2067
- # repeated in the URL, as in `...?param=A&param=B`.
2068
- # For HTTP method kinds which allow a request body, the `body` field
2062
+ # Note that fields which are mapped to URL query parameters must have a
2063
+ # primitive type or a repeated primitive type or a non-repeated message type.
2064
+ # In the case of a repeated type, the parameter can be repeated in the URL
2065
+ # as `...?param=A&param=B`. In the case of a message type, each field of the
2066
+ # message is mapped to a separate parameter, such as
2067
+ # `...?foo.a=A&foo.b=B&foo.c=C`.
2068
+ # For HTTP methods that allow a request body, the `body` field
2069
2069
  # specifies the mapping. Consider a REST update method on the
2070
2070
  # message resource collection:
2071
2071
  # service Messaging `
2072
2072
  # rpc UpdateMessage(UpdateMessageRequest) returns (Message) `
2073
2073
  # option (google.api.http) = `
2074
- # put: "/v1/messages/`message_id`"
2074
+ # patch: "/v1/messages/`message_id`"
2075
2075
  # body: "message"
2076
2076
  # `;
2077
2077
  # `
@@ -2083,9 +2083,9 @@ module Google
2083
2083
  # The following HTTP JSON to RPC mapping is enabled, where the
2084
2084
  # representation of the JSON in the request body is determined by
2085
2085
  # protos JSON encoding:
2086
- # HTTP | RPC
2086
+ # HTTP | gRPC
2087
2087
  # -----|-----
2088
- # `PUT /v1/messages/123456 ` "text": "Hi!" `` | `UpdateMessage(message_id: "
2088
+ # `PATCH /v1/messages/123456 ` "text": "Hi!" `` | `UpdateMessage(message_id: "
2089
2089
  # 123456" message ` text: "Hi!" `)`
2090
2090
  # The special name `*` can be used in the body mapping to define that
2091
2091
  # every field not bound by the path template should be mapped to the
@@ -2094,7 +2094,7 @@ module Google
2094
2094
  # service Messaging `
2095
2095
  # rpc UpdateMessage(Message) returns (Message) `
2096
2096
  # option (google.api.http) = `
2097
- # put: "/v1/messages/`message_id`"
2097
+ # patch: "/v1/messages/`message_id`"
2098
2098
  # body: "*"
2099
2099
  # `;
2100
2100
  # `
@@ -2104,13 +2104,13 @@ module Google
2104
2104
  # string text = 2;
2105
2105
  # `
2106
2106
  # The following HTTP JSON to RPC mapping is enabled:
2107
- # HTTP | RPC
2107
+ # HTTP | gRPC
2108
2108
  # -----|-----
2109
- # `PUT /v1/messages/123456 ` "text": "Hi!" `` | `UpdateMessage(message_id: "
2109
+ # `PATCH /v1/messages/123456 ` "text": "Hi!" `` | `UpdateMessage(message_id: "
2110
2110
  # 123456" text: "Hi!")`
2111
2111
  # Note that when using `*` in the body mapping, it is not possible to
2112
2112
  # have HTTP parameters, as all fields not bound by the path end in
2113
- # the body. This makes this option more rarely used in practice of
2113
+ # the body. This makes this option more rarely used in practice when
2114
2114
  # defining REST APIs. The common usage of `*` is in custom methods
2115
2115
  # which don't use the URL at all for transferring data.
2116
2116
  # It is possible to define multiple HTTP methods for one RPC by using
@@ -2129,56 +2129,96 @@ module Google
2129
2129
  # string message_id = 1;
2130
2130
  # string user_id = 2;
2131
2131
  # `
2132
- # This enables the following two alternative HTTP JSON to RPC
2133
- # mappings:
2134
- # HTTP | RPC
2132
+ # This enables the following two alternative HTTP JSON to RPC mappings:
2133
+ # HTTP | gRPC
2135
2134
  # -----|-----
2136
2135
  # `GET /v1/messages/123456` | `GetMessage(message_id: "123456")`
2137
2136
  # `GET /v1/users/me/messages/123456` | `GetMessage(user_id: "me" message_id: "
2138
2137
  # 123456")`
2139
- # # Rules for HTTP mapping
2140
- # The rules for mapping HTTP path, query parameters, and body fields
2141
- # to the request message are as follows:
2142
- # 1. The `body` field specifies either `*` or a field path, or is
2143
- # omitted. If omitted, it indicates there is no HTTP request body.
2144
- # 2. Leaf fields (recursive expansion of nested messages in the
2145
- # request) can be classified into three types:
2146
- # (a) Matched in the URL template.
2147
- # (b) Covered by body (if body is `*`, everything except (a) fields;
2148
- # else everything under the body field)
2149
- # (c) All other fields.
2150
- # 3. URL query parameters found in the HTTP request are mapped to (c) fields.
2151
- # 4. Any body sent with an HTTP request can contain only (b) fields.
2152
- # The syntax of the path template is as follows:
2138
+ # ## Rules for HTTP mapping
2139
+ # 1. Leaf request fields (recursive expansion nested messages in the request
2140
+ # message) are classified into three categories:
2141
+ # - Fields referred by the path template. They are passed via the URL path.
2142
+ # - Fields referred by the HttpRule.body. They are passed via the HTTP
2143
+ # request body.
2144
+ # - All other fields are passed via the URL query parameters, and the
2145
+ # parameter name is the field path in the request message. A repeated
2146
+ # field can be represented as multiple query parameters under the same
2147
+ # name.
2148
+ # 2. If HttpRule.body is "*", there is no URL query parameter, all fields
2149
+ # are passed via URL path and HTTP request body.
2150
+ # 3. If HttpRule.body is omitted, there is no HTTP request body, all
2151
+ # fields are passed via URL path and URL query parameters.
2152
+ # ### Path template syntax
2153
2153
  # Template = "/" Segments [ Verb ] ;
2154
2154
  # Segments = Segment ` "/" Segment ` ;
2155
2155
  # Segment = "*" | "**" | LITERAL | Variable ;
2156
2156
  # Variable = "`" FieldPath [ "=" Segments ] "`" ;
2157
2157
  # FieldPath = IDENT ` "." IDENT ` ;
2158
2158
  # Verb = ":" LITERAL ;
2159
- # The syntax `*` matches a single path segment. The syntax `**` matches zero
2160
- # or more path segments, which must be the last part of the path except the
2161
- # `Verb`. The syntax `LITERAL` matches literal text in the path.
2159
+ # The syntax `*` matches a single URL path segment. The syntax `**` matches
2160
+ # zero or more URL path segments, which must be the last part of the URL path
2161
+ # except the `Verb`.
2162
2162
  # The syntax `Variable` matches part of the URL path as specified by its
2163
2163
  # template. A variable template must not contain other variables. If a variable
2164
2164
  # matches a single path segment, its template may be omitted, e.g. ``var``
2165
2165
  # is equivalent to ``var=*``.
2166
+ # The syntax `LITERAL` matches literal text in the URL path. If the `LITERAL`
2167
+ # contains any reserved character, such characters should be percent-encoded
2168
+ # before the matching.
2166
2169
  # If a variable contains exactly one path segment, such as `"`var`"` or
2167
- # `"`var=*`"`, when such a variable is expanded into a URL path, all characters
2168
- # except `[-_.~0-9a-zA-Z]` are percent-encoded. Such variables show up in the
2169
- # Discovery Document as ``var``.
2170
- # If a variable contains one or more path segments, such as `"`var=foo/*`"`
2171
- # or `"`var=**`"`, when such a variable is expanded into a URL path, all
2172
- # characters except `[-_.~/0-9a-zA-Z]` are percent-encoded. Such variables
2173
- # show up in the Discovery Document as ``+var``.
2174
- # NOTE: While the single segment variable matches the semantics of
2175
- # [RFC 6570](https://tools.ietf.org/html/rfc6570) Section 3.2.2
2176
- # Simple String Expansion, the multi segment variable **does not** match
2177
- # RFC 6570 Reserved Expansion. The reason is that the Reserved Expansion
2170
+ # `"`var=*`"`, when such a variable is expanded into a URL path on the client
2171
+ # side, all characters except `[-_.~0-9a-zA-Z]` are percent-encoded. The
2172
+ # server side does the reverse decoding. Such variables show up in the
2173
+ # [Discovery Document](https://developers.google.com/discovery/v1/reference/apis)
2174
+ # as ``var``.
2175
+ # If a variable contains multiple path segments, such as `"`var=foo/*`"`
2176
+ # or `"`var=**`"`, when such a variable is expanded into a URL path on the
2177
+ # client side, all characters except `[-_.~/0-9a-zA-Z]` are percent-encoded.
2178
+ # The server side does the reverse decoding, except "%2F" and "%2f" are left
2179
+ # unchanged. Such variables show up in the
2180
+ # [Discovery Document](https://developers.google.com/discovery/v1/reference/apis)
2181
+ # as ``+var``.
2182
+ # ## Using gRPC API Service Configuration
2183
+ # gRPC API Service Configuration (service config) is a configuration language
2184
+ # for configuring a gRPC service to become a user-facing product. The
2185
+ # service config is simply the YAML representation of the `google.api.Service`
2186
+ # proto message.
2187
+ # As an alternative to annotating your proto file, you can configure gRPC
2188
+ # transcoding in your service config YAML files. You do this by specifying a
2189
+ # `HttpRule` that maps the gRPC method to a REST endpoint, achieving the same
2190
+ # effect as the proto annotation. This can be particularly useful if you
2191
+ # have a proto that is reused in multiple services. Note that any transcoding
2192
+ # specified in the service config will override any matching transcoding
2193
+ # configuration in the proto.
2194
+ # Example:
2195
+ # http:
2196
+ # rules:
2197
+ # # Selects a gRPC method and applies HttpRule to it.
2198
+ # - selector: example.v1.Messaging.GetMessage
2199
+ # get: /v1/messages/`message_id`/`sub.subfield`
2200
+ # ## Special notes
2201
+ # When gRPC Transcoding is used to map a gRPC to JSON REST endpoints, the
2202
+ # proto to JSON conversion must follow the [proto3
2203
+ # specification](https://developers.google.com/protocol-buffers/docs/proto3#json)
2204
+ # .
2205
+ # While the single segment variable follows the semantics of
2206
+ # [RFC 6570](https://tools.ietf.org/html/rfc6570) Section 3.2.2 Simple String
2207
+ # Expansion, the multi segment variable **does not** follow RFC 6570 Section
2208
+ # 3.2.3 Reserved Expansion. The reason is that the Reserved Expansion
2178
2209
  # does not expand special characters like `?` and `#`, which would lead
2179
- # to invalid URLs.
2180
- # NOTE: the field paths in variables and in the `body` must not refer to
2181
- # repeated fields or map fields.
2210
+ # to invalid URLs. As the result, gRPC Transcoding uses a custom encoding
2211
+ # for multi segment variables.
2212
+ # The path variables **must not** refer to any repeated or mapped field,
2213
+ # because client libraries are not capable of handling such variable expansion.
2214
+ # The path variables **must not** capture the leading "/" character. The reason
2215
+ # is that the most common use case "`var`" does not capture the leading "/"
2216
+ # character. For consistency, all path variables must share the same behavior.
2217
+ # Repeated message fields must not be mapped to URL query parameters, because
2218
+ # no client library can support such complicated mapping.
2219
+ # If an API needs to use a JSON array for request or response body, it can map
2220
+ # the request or response body to a repeated field. However, some gRPC
2221
+ # Transcoding implementations may not support this feature.
2182
2222
  class HttpRule
2183
2223
  include Google::Apis::Core::Hashable
2184
2224
 
@@ -2197,10 +2237,11 @@ module Google
2197
2237
  # @return [Array<Google::Apis::ServiceusageV1::AuthorizationRule>]
2198
2238
  attr_accessor :authorizations
2199
2239
 
2200
- # The name of the request field whose value is mapped to the HTTP body, or
2201
- # `*` for mapping all fields not captured by the path pattern to the HTTP
2202
- # body. NOTE: the referred field must not be a repeated field and must be
2203
- # present at the top-level of request message type.
2240
+ # The name of the request field whose value is mapped to the HTTP request
2241
+ # body, or `*` for mapping all request fields not captured by the path
2242
+ # pattern to the HTTP body, or omitted for not having any HTTP request body.
2243
+ # NOTE: the referred field must be present at the top-level of the request
2244
+ # message type.
2204
2245
  # Corresponds to the JSON property `body`
2205
2246
  # @return [String]
2206
2247
  attr_accessor :body
@@ -2210,12 +2251,13 @@ module Google
2210
2251
  # @return [Google::Apis::ServiceusageV1::CustomHttpPattern]
2211
2252
  attr_accessor :custom
2212
2253
 
2213
- # Used for deleting a resource.
2254
+ # Maps to HTTP DELETE. Used for deleting a resource.
2214
2255
  # Corresponds to the JSON property `delete`
2215
2256
  # @return [String]
2216
2257
  attr_accessor :delete
2217
2258
 
2218
- # Used for listing and getting information about resources.
2259
+ # Maps to HTTP GET. Used for listing and getting information about
2260
+ # resources.
2219
2261
  # Corresponds to the JSON property `get`
2220
2262
  # @return [String]
2221
2263
  attr_accessor :get
@@ -2236,24 +2278,26 @@ module Google
2236
2278
  # @return [Google::Apis::ServiceusageV1::MediaUpload]
2237
2279
  attr_accessor :media_upload
2238
2280
 
2239
- # Used for updating a resource.
2281
+ # Maps to HTTP PATCH. Used for updating a resource.
2240
2282
  # Corresponds to the JSON property `patch`
2241
2283
  # @return [String]
2242
2284
  attr_accessor :patch
2243
2285
 
2244
- # Used for creating a resource.
2286
+ # Maps to HTTP POST. Used for creating a resource or performing an action.
2245
2287
  # Corresponds to the JSON property `post`
2246
2288
  # @return [String]
2247
2289
  attr_accessor :post
2248
2290
 
2249
- # Used for updating a resource.
2291
+ # Maps to HTTP PUT. Used for replacing a resource.
2250
2292
  # Corresponds to the JSON property `put`
2251
2293
  # @return [String]
2252
2294
  attr_accessor :put
2253
2295
 
2254
2296
  # Optional. The name of the response field whose value is mapped to the HTTP
2255
- # body of response. Other response fields are ignored. When
2256
- # not set, the response message will be used as HTTP body of response.
2297
+ # response body. When omitted, the entire response message will be used
2298
+ # as the HTTP response body.
2299
+ # NOTE: The referred field must be present at the top-level of the response
2300
+ # message type.
2257
2301
  # Corresponds to the JSON property `responseBody`
2258
2302
  # @return [String]
2259
2303
  attr_accessor :response_body
@@ -2296,7 +2340,7 @@ module Google
2296
2340
  # @return [String]
2297
2341
  attr_accessor :rest_method_name
2298
2342
 
2299
- # Selects methods to which this rule applies.
2343
+ # Selects a method to which this rule applies.
2300
2344
  # Refer to selector for syntax details.
2301
2345
  # Corresponds to the JSON property `selector`
2302
2346
  # @return [String]