diff --git a/google/pubsub/v1/BUILD.bazel b/google/pubsub/v1/BUILD.bazel index f1512dc6da..78d98d2729 100644 --- a/google/pubsub/v1/BUILD.bazel +++ b/google/pubsub/v1/BUILD.bazel @@ -11,7 +11,7 @@ proto_library( srcs = ["pubsub.proto"], deps = [ "//google/api:annotations_proto", - "//google/api:resource_proto", + "//google/api:client_proto", "@com_google_protobuf//:duration_proto", "@com_google_protobuf//:empty_proto", "@com_google_protobuf//:field_mask_proto", diff --git a/google/pubsub/v1/pubsub.proto b/google/pubsub/v1/pubsub.proto index 7cea47b1e5..ea0d4c7e53 100644 --- a/google/pubsub/v1/pubsub.proto +++ b/google/pubsub/v1/pubsub.proto @@ -18,7 +18,7 @@ syntax = "proto3"; package google.pubsub.v1; import "google/api/annotations.proto"; -import "google/api/resource.proto"; +import "google/api/client.proto"; import "google/protobuf/duration.proto"; import "google/protobuf/empty.proto"; import "google/protobuf/field_mask.proto"; @@ -36,6 +36,11 @@ option ruby_package = "Google::Cloud::PubSub::V1"; // The service that an application uses to manipulate topics, and to send // messages to a topic. service Publisher { + option (google.api.default_host) = "pubsub.googleapis.com"; + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/cloud-platform," + "https://www.googleapis.com/auth/pubsub"; + // Creates the given topic with the given name. See the // // resource name rules. @@ -112,12 +117,11 @@ service Publisher { } message MessageStoragePolicy { - // The list of GCP region IDs where messages that are published to the topic + // A list of IDs of GCP regions where messages that are published to the topic // may be persisted in storage. Messages published by publishers running in // non-allowed GCP regions (or running outside of GCP altogether) will be - // routed for storage in one of the allowed regions. An empty list indicates a - // misconfiguration at the project or organization level, which will result in - // all Publish operations failing. + // routed for storage in one of the allowed regions. An empty list means that + // no regions are allowed, and is not a valid configuration. repeated string allowed_persistence_regions = 1; } @@ -135,21 +139,15 @@ message Topic { // managing labels. map labels = 2; - // Policy constraining how messages published to the topic may be stored. It - // is determined when the topic is created based on the policy configured at - // the project level. It must not be set by the caller in the request to - // CreateTopic or to UpdateTopic. This field will be populated in the - // responses for GetTopic, CreateTopic, and UpdateTopic: if not present in the - // response, then no constraints are in effect. + // Policy constraining the set of Google Cloud Platform regions where messages + // published to the topic may be stored. If not present, then no constraints + // are in effect. MessageStoragePolicy message_storage_policy = 3; // The resource name of the Cloud KMS CryptoKey to be used to protect access // to messages published on this topic. // // The expected format is `projects/*/locations/*/keyRings/*/cryptoKeys/*`. - // EXPERIMENTAL: This feature is part of a closed alpha release. This - // API might be changed in backward-incompatible ways and is not recommended - // for production use. It is not subject to any SLA or deprecation policy. string kms_key_name = 5; } @@ -316,6 +314,11 @@ message DeleteTopicRequest { // consume messages from a subscription via the `Pull` method or by // establishing a bi-directional stream using the `StreamingPull` method. service Subscriber { + option (google.api.default_host) = "pubsub.googleapis.com"; + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/cloud-platform," + "https://www.googleapis.com/auth/pubsub"; + // Creates a subscription to a given topic. See the // // resource name rules. @@ -646,27 +649,27 @@ message PushConfig { // For example, a Webhook endpoint might use "https://example.com/push". string push_endpoint = 1; - // Endpoint configuration attributes. + // Endpoint configuration attributes that can be used to control different + // aspects of the message delivery. // - // Every endpoint has a set of API supported attributes that can be used to - // control different aspects of the message delivery. - // - // The currently supported attribute is `x-goog-version`, which you can + // The only currently supported attribute is `x-goog-version`, which you can // use to change the format of the pushed message. This attribute // indicates the version of the data expected by the endpoint. This // controls the shape of the pushed message (i.e., its fields and metadata). - // The endpoint version is based on the version of the Pub/Sub API. // // If not present during the `CreateSubscription` call, it will default to - // the version of the API used to make such call. If not present during a + // the version of the Pub/Sub API used to make such call. If not present in a // `ModifyPushConfig` call, its value will not be changed. `GetSubscription` // calls will always return a valid version, even if the subscription was // created without this attribute. // - // The possible values for this attribute are: + // The only supported values for the `x-goog-version` attribute are: // // * `v1beta1`: uses the push format defined in the v1beta1 Pub/Sub API. // * `v1` or `v1beta2`: uses the push format defined in the v1 Pub/Sub API. + // + // For example: + //
attributes { "x-goog-version": "v1" } 
map attributes = 2; // An authentication method used by push endpoints to verify the source of