public sealed class Snapshot : IMessage<Snapshot>, IEquatable<Snapshot>, IDeepCloneable<Snapshot>, IBufferMessage, IMessage
A snapshot resource. Snapshots are used in
Seek
operations, which allow you to manage message acknowledgments in bulk. That
is, you can set the acknowledgment state of messages in an existing
subscription to the state captured by a snapshot.
The snapshot is guaranteed to exist up until this time.
A newly-created snapshot expires no later than 7 days from the time of its
creation. Its exact lifetime is determined at creation by the existing
backlog in the source subscription. Specifically, the lifetime of the
snapshot is 7 days - (age of oldest unacked message in the subscription).
For example, consider a subscription whose oldest unacked message is 3 days
old. If a snapshot is created from this subscription, the snapshot -- which
will always capture this 3-day-old backlog as long as the snapshot
exists -- will expire in 4 days. The service will refuse to create a
snapshot that would expire in less than 1 hour after creation.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-03-31 UTC."],[[["The webpage focuses on the `Snapshot` class within the `Google.Cloud.PubSub.V1` namespace, providing documentation for its different versions, ranging from 2.3.0 to 3.23.0, with 3.23.0 being the latest version."],["Snapshots in this context are resources utilized in Seek operations to handle message acknowledgments collectively, which can allow to set the acknowledgment status of messages in an existing subscription."],["The `Snapshot` class implements multiple interfaces, including `IMessage`, `IEquatable`, `IDeepCloneable`, and `IBufferMessage`, indicating its role in message handling and object management within the Google Pub/Sub environment."],["Key properties of the `Snapshot` class include `ExpireTime`, which determines the snapshot's lifespan based on the age of the oldest unacknowledged message, and `Name`, `Topic` and `SnapshotName`, which identify the snapshot and the topic it relates to, and `Labels`, which allow you to manage labels in pub/sub."],["Constructors for creating `Snapshot` objects are available, either defaultly or by copying an existing `Snapshot`, highlighting the flexibility in how these resources can be initialized and managed."]]],[]]