public sealed class Snapshot : IMessage<Snapshot>, IEquatable<Snapshot>, IDeepCloneable<Snapshot>, IBufferMessage, IMessage
Reference documentation and code samples for the Cloud Pub/Sub v1 API class Snapshot.
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"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-07 UTC."],[[["\u003cp\u003eThe page provides reference documentation for the \u003ccode\u003eSnapshot\u003c/code\u003e class within the Google Cloud Pub/Sub v1 API for .NET, with the latest version being 3.23.0 and the current page referring to 3.7.0.\u003c/p\u003e\n"],["\u003cp\u003eSnapshots in Google Cloud Pub/Sub are used for \u003ccode\u003eSeek\u003c/code\u003e operations to manage message acknowledgments in bulk, enabling the setting of message acknowledgment states within a subscription to match the state captured by a snapshot.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eSnapshot\u003c/code\u003e class implements interfaces such as \u003ccode\u003eIMessage\u003c/code\u003e, \u003ccode\u003eIEquatable\u003c/code\u003e, \u003ccode\u003eIDeepCloneable\u003c/code\u003e, and \u003ccode\u003eIBufferMessage\u003c/code\u003e, and has properties including \u003ccode\u003eExpireTime\u003c/code\u003e, \u003ccode\u003eLabels\u003c/code\u003e, \u003ccode\u003eName\u003c/code\u003e, \u003ccode\u003eSnapshotName\u003c/code\u003e, \u003ccode\u003eTopic\u003c/code\u003e, and \u003ccode\u003eTopicAsTopicName\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eThe lifetime of a snapshot is dynamically determined at its creation, calculated as \u003ccode\u003e7 days - (age of oldest unacknowledged message in the subscription)\u003c/code\u003e, ensuring that the snapshot exists for at least 1 hour.\u003c/p\u003e\n"],["\u003cp\u003eThe page displays a list of versions for the snapshot class, ranging from 3.23.0 all the way to 2.3.0, each being linked to their respective documentation.\u003c/p\u003e\n"]]],[],null,[]]