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"]],[["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 details the \u003ccode\u003eSnapshot\u003c/code\u003e class within the \u003ccode\u003eGoogle.Cloud.PubSub.V1\u003c/code\u003e namespace, which is used for managing message acknowledgments in bulk through "Seek" operations.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eSnapshot\u003c/code\u003e class implements interfaces like \u003ccode\u003eIMessage\u003c/code\u003e, \u003ccode\u003eIEquatable\u003c/code\u003e, \u003ccode\u003eIDeepCloneable\u003c/code\u003e, \u003ccode\u003eIBufferMessage\u003c/code\u003e, and inherits from \u003ccode\u003eObject\u003c/code\u003e, providing various functionalities such as message handling, equality checks, deep cloning, and buffered message management.\u003c/p\u003e\n"],["\u003cp\u003eThe latest version available is 3.23.0, with a list of other available versions ranging down to 2.3.0, all within the \u003ccode\u003eGoogle.Cloud.PubSub.V1\u003c/code\u003e namespace, and the listed links allow for further navigation of specific versions.\u003c/p\u003e\n"],["\u003cp\u003eKey properties of the \u003ccode\u003eSnapshot\u003c/code\u003e class include \u003ccode\u003eExpireTime\u003c/code\u003e, which defines the snapshot's expiration time, \u003ccode\u003eLabels\u003c/code\u003e for managing labels, \u003ccode\u003eName\u003c/code\u003e for identifying the snapshot, \u003ccode\u003eSnapshotName\u003c/code\u003e for a typed view of the name, \u003ccode\u003eTopic\u003c/code\u003e for the related topic, and \u003ccode\u003eTopicAsTopicName\u003c/code\u003e for a typed view of the topic name.\u003c/p\u003e\n"]]],[],null,[]]