google-api-client 0.23.9 → 0.24.0

Sign up to get free protection for your applications and to get access to all the features.
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]