Accessing snapshots over api

I am trying to understand whether Grist works for my use-case or not. One of the important requirement I have is to version the sheets. I see that Grist already has snapshotting capability on the UI, but couldn’t find any associated API. I was wondering if there is a way I can have named snapshots and can access the entire document (say as CSV) at a particular snapshot.


Named snapshots have been requested a few times, but are not yet implemented. Feel free to upvote the issue on Github for them: [Enhancement] Named snapshots · Issue #486 · gristlabs/grist-core · GitHub

There is an undocumented endpoint to list snapshot metadata: https://$HOST/api/docs/$DOC_ID/snapshots (replace $HOST and $DOC_ID as appropriate). Each docId you find in the response should be usable as a read-only document in its own right, including for using it in endpoints to export data as a CSV.

Keep in mind that it’s undocumented, so not officially supported, and there is some chance that it would change. It is the API that the frontend uses to get snapshot information.