Class Topic
A topic resource.
Implements
Inherited Members
Namespace: Google.Apis.Pubsub.v1.Data
Assembly: Google.Apis.Pubsub.v1.dll
Syntax
public class Topic : IDirectResponseSchema
Properties
ETag
The ETag of the item.
Declaration
public virtual string ETag { get; set; }
Property Value
Type | Description |
---|---|
string |
IngestionDataSourceSettings
Optional. Settings for ingestion from a data source into this topic.
Declaration
[JsonProperty("ingestionDataSourceSettings")]
public virtual IngestionDataSourceSettings IngestionDataSourceSettings { get; set; }
Property Value
Type | Description |
---|---|
IngestionDataSourceSettings |
KmsKeyName
Optional. 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/*
.
Declaration
[JsonProperty("kmsKeyName")]
public virtual string KmsKeyName { get; set; }
Property Value
Type | Description |
---|---|
string |
Labels
Optional. See [Creating and managing labels] (https://cloud.google.com/pubsub/docs/labels).
Declaration
[JsonProperty("labels")]
public virtual IDictionary<string, string> Labels { get; set; }
Property Value
Type | Description |
---|---|
IDictionary<string, string> |
MessageRetentionDuration
Optional. Indicates the minimum duration to retain a message after it is published to the topic. If this
field is set, messages published to the topic in the last message_retention_duration
are always available
to subscribers. For instance, it allows any attached subscription to seek to a
timestamp that is up to
message_retention_duration
in the past. If this field is not set, message retention is controlled by
settings on individual subscriptions. Cannot be more than 31 days or less than 10 minutes.
Declaration
[JsonProperty("messageRetentionDuration")]
public virtual object MessageRetentionDuration { get; set; }
Property Value
Type | Description |
---|---|
object |
MessageStoragePolicy
Optional. 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.
Declaration
[JsonProperty("messageStoragePolicy")]
public virtual MessageStoragePolicy MessageStoragePolicy { get; set; }
Property Value
Type | Description |
---|---|
MessageStoragePolicy |
Name
Required. The name of the topic. It must have the format "projects/{project}/topics/{topic}"
. {topic}
must start with a letter, and contain only letters ([A-Za-z]
), numbers ([0-9]
), dashes (-
),
underscores (_
), periods (.
), tildes (~
), plus (+
) or percent signs (%
). It must be between 3 and
255 characters in length, and it must not start with "goog"
.
Declaration
[JsonProperty("name")]
public virtual string Name { get; set; }
Property Value
Type | Description |
---|---|
string |
SatisfiesPzs
Optional. Reserved for future use. This field is set only in responses from the server; it is ignored if it is set in any requests.
Declaration
[JsonProperty("satisfiesPzs")]
public virtual bool? SatisfiesPzs { get; set; }
Property Value
Type | Description |
---|---|
bool? |
SchemaSettings
Optional. Settings for validating messages published against a schema.
Declaration
[JsonProperty("schemaSettings")]
public virtual SchemaSettings SchemaSettings { get; set; }
Property Value
Type | Description |
---|---|
SchemaSettings |
State
Output only. An output-only field indicating the state of the topic.
Declaration
[JsonProperty("state")]
public virtual string State { get; set; }
Property Value
Type | Description |
---|---|
string |