> For clean Markdown of any page, append .md to the page URL. > For a complete documentation index, see https://contentful.com/developers/docs/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://contentful.com/_mcp/server. # Get a snapshot of an entry GET https://api.contentful.com/spaces/{space_id}/environments/{environment_id}/entries/{entry_id}/snapshots/{snapshot_id} Reference: https://contentful.com/developers/docs/references/content-management-api/snapshots/get-a-snapshot-of-an-entry ## Authentication - `Authorization` header (bearer token, required) — Bearer authentication of the form `Bearer `, where token is your auth token. ## Request ### Path parameters - `space_id` (string, required) — ID of the Space in form of a string - `environment_id` (string, required) — environment_id identifier - `entry_id` (string, required) — ID of the entry in form of a string - `snapshot_id` (string, required) — ID of the snapshot in form of a string ## Response ### 200 OK - Request successful - `map from string to any` ## Examples **Response** ```json { "snapshot": { "fields": { "body": { "en-US": "Bacon is healthy!" }, "title": { "en-US": "Hello, World!" } }, "sys": { "contentType": { "sys": { "id": "hfM9RCJIk0wIm06WkEOQY", "linkType": "ContentType", "type": "Link" } }, "id": "cat", "space": { "sys": { "id": "yadj1kx9rmg0", "linkType": "Space", "type": "Link" } }, "type": "Entry" } }, "sys": { "createdAt": "2025-08-10T13:25:51.000Z", "createdBy": { "sys": { "id": "4FLrUHftHW3v2BLi9fzfjU", "linkType": "User", "type": "Link" } }, "id": "cat", "snapshotEntityType": "Entry", "snapshotType": "publish", "space": { "sys": { "id": "yadj1kx9rmg0", "linkType": "Space", "type": "Link" } }, "type": "Snapshot" } } ``` **SDK Code** ```android Android // Create the Contentful client. final CMAClient client = new CMAClient .Builder() .setAccessToken("") .setSpaceId("") .setEnvironmentId("") .build(); client .entries() .async() .fetchOne( "", "master", // only works on master right now ... "", new CMACallback() { @Override protected void onSuccess(CMAEntry entry) { client .entries() .async() .fetchOneSnapshot( entry, "", new CMACallback() { @Override protected void onSuccess(CMASnapshot snapshot) { new AlertDialog.Builder(context) .setTitle("Contentful") .setMessage("Snapshot found!" + "\n\nResult: " + snapshot) .show(); } @Override protected void onFailure(RuntimeException exception) { // An error occurred! Inform the user. new AlertDialog.Builder(context) .setTitle("Contentful Error") .setMessage("Could not find the entry snapshot." + "\n\nReason: " + exception.toString()) .show(); super.onFailure(exception); } } ); } @Override protected void onFailure(RuntimeException exception) { // An error occurred! Inform the user. new AlertDialog.Builder(context) .setTitle("Contentful Error") .setMessage("Could not get one entry." + "\n\nReason: " + exception.toString()) .show(); super.onFailure(exception); } } ); ``` ```java Java // Create the Contentful client. final CMAClient client = new CMAClient .Builder() .setAccessToken("") .setSpaceId("") .setEnvironmentId("") .build(); final CMAEntry entry = client .entries() .fetchOne( "", "master", // only works on master right now ""); final CMASnapshot snapshot = client .entries() .fetchOneSnapshot(entry, ""); ``` ```kotlin Kotlin // Create the Contentful client. val client = CMAClient.Builder() .setAccessToken("") .setSpaceId("") .setEnvironmentId("") .build() val entry = client .entries() .fetchOne( "", "master", // only works on master right now "") val snapshot = client .entries() .fetchOneSnapshot(entry, "") ``` ```swift Swift We currently don't provide a CMA SDK for this platform. ``` ```js-legacy JavaScript (legacy) import { createClient } from 'contentful-management' const client = createClient({ accessToken: '' }, { type: 'legacy' }) client.getSpace('') .then((space) => space.getEnvironment('')) .then((environment) => environment.getEntry('')) .then((entry) => entry.getSnapshot('')) .then((snapshot) => console.log(snapshot)) .catch(console.error) ``` ```javascript JavaScript import { createClient } from 'contentful-management' // Client init const client = contentful.createClient({ accessToken: '' }) const snapshot = await client.snapshot.getForEntry({ spaceId: '', environmentId: '', entryId: '', snapshotId: '', }) ``` ```php PHP $client = new \Contentful\Management\Client(''); $environment = $client->getEnvironmentProxy('', ''); $entrySnapshot = $environment->getEntrySnapshot('', ''); // Alternatively, from an entry $entry = $environment->getEntry(''); $entrySnapshot = $entry->getSnapshot(''); ``` ```ruby Ruby require 'contentful/management' client = Contentful::Management::Client.new('') entry = client.entries('', '').find('') snapshot = entry.snapshots.find('') ``` ```python Python from contentful_management import Client client = Client('') snapshot = client.snapshots('', '', '').find('') ``` ```.net .NET // This client should only be created once per application. var httpClient = new HttpClient(); var client = new ContentfulManagementClient(httpClient, "", ""); var singleSnapshot = await client.GetSnapshotForEntry("", ""); ```