client.proto 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. // Copyright 2019 Google LLC.
  2. //
  3. // Licensed under the Apache License, Version 2.0 (the "License");
  4. // you may not use this file except in compliance with the License.
  5. // You may obtain a copy of the License at
  6. //
  7. // https://www.apache.org/licenses/LICENSE-2.0
  8. //
  9. // Unless required by applicable law or agreed to in writing, software
  10. // distributed under the License is distributed on an "AS IS" BASIS,
  11. // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  12. // See the License for the specific language governing permissions and
  13. // limitations under the License.
  14. syntax = "proto3";
  15. package google.api;
  16. import "google/protobuf/descriptor.proto";
  17. option go_package = "google.golang.org/genproto/googleapis/api/annotations;annotations";
  18. option java_multiple_files = true;
  19. option java_outer_classname = "ClientProto";
  20. option java_package = "com.google.api";
  21. option objc_class_prefix = "GAPI";
  22. extend google.protobuf.ServiceOptions {
  23. // The hostname for this service.
  24. // This should be specified with no prefix or protocol.
  25. //
  26. // Example:
  27. //
  28. // service Foo {
  29. // option (google.api.default_host) = "foo.googleapi.com";
  30. // ...
  31. // }
  32. string default_host = 1049;
  33. // OAuth scopes needed for the client.
  34. //
  35. // Example:
  36. //
  37. // service Foo {
  38. // option (google.api.oauth_scopes) = \
  39. // "https://www.googleapis.com/auth/cloud-platform";
  40. // ...
  41. // }
  42. //
  43. // If there is more than one scope, use a comma-separated string:
  44. //
  45. // Example:
  46. //
  47. // service Foo {
  48. // option (google.api.oauth_scopes) = \
  49. // "https://www.googleapis.com/auth/cloud-platform,"
  50. // "https://www.googleapis.com/auth/monitoring";
  51. // ...
  52. // }
  53. string oauth_scopes = 1050;
  54. }
  55. extend google.protobuf.MethodOptions {
  56. // A definition of a client library method signature.
  57. //
  58. // In client libraries, each proto RPC corresponds to one or more methods
  59. // which the end user is able to call, and calls the underlying RPC.
  60. // Normally, this method receives a single argument (a struct or instance
  61. // corresponding to the RPC request object). Defining this field will
  62. // add one or more overloads providing flattened or simpler method signatures
  63. // in some languages.
  64. //
  65. // The fields on the method signature are provided as a comma-separated
  66. // string.
  67. //
  68. // For example, the proto RPC and annotation:
  69. //
  70. // rpc CreateSubscription(CreateSubscriptionRequest)
  71. // returns (Subscription) {
  72. // option (google.api.method_signature) = "name,topic";
  73. // }
  74. //
  75. // Would add the following Java overload (in addition to the method accepting
  76. // the request object):
  77. //
  78. // public final Subscription createSubscription(String name, String topic)
  79. //
  80. // The following backwards-compatibility guidelines apply:
  81. //
  82. // * Adding this annotation to an unannotated method is backwards
  83. // compatible.
  84. // * Adding this annotation to a method which already has existing
  85. // method signature annotations is backwards compatible if and only if
  86. // the new method signature annotation is last in the sequence.
  87. // * Modifying or removing an existing method signature annotation is
  88. // a breaking change.
  89. // * Re-ordering existing method signature annotations is a breaking
  90. // change.
  91. repeated string method_signature = 1051;
  92. }