Content servers will periodically compile summaries of the active entities they are hosting, called snapshots. They are regular files and can be downloaded using their identifier.

Separate snapshots are created for each entity type, as well as a global one for all content. Clients that want to systematically discover content can use these files as the starting point.

You can play around with snapshots in the practice section.

Format #

Snapshot files begin with this exact line:

### Decentraland json snapshot

After that, each line is a JSON document describing an entity with the following fields:

Field Value
entityId The immutable identifier for this entity.
entityType One of scene, profile, wearable, emote or store.
pointers An array of pointers that resolve (or used to resolve) to this entity.
localTimestamp The Unix UTC timestamp when this entity was uploaded.
authChain The authentication chain for this entity.

A typical entry looks like this:

  "entityId": "bafkreigrvaqynmiglpvewwhn2yd63q5dvagrrt5jbhimzvbrn5kimj5zne",
  "entityType": "wearable",
  "pointers": ["urn:decentraland:matic:collections-v2:0x11a6879861f36cbad632a4e7226816a16139fb33:0"],
  "localTimestamp": 1671117456129,
  "authChain": [
    // ... authentication chain payloads and signatures

If you intend to parse a snapshot line by line, remember to skip the first one with the header, and be ready to handle an empty line at the end of the file.

Dowloading Snapshots #

To locate the current set of snapshots, use the /snapshot endpoint. The response contains a reference to a global snapshot file for all entities, as well as individual ones for every entity type. Each entry lists the Unix UTC timestamp at the time of creation. For example:

  "hash": "bafybeiasjraajptih2ffc64hwnie2a7fbysalij7modahswdd54zrnsr4u",
  "lastIncludedDeploymentTimestamp": 1671294282247,

  "entities": {
    "wearable": {
      "hash": "bafybeihfpwdtow7qickcnryunu3smb4twrqlrmhbvzj5f25xvaxudiayyy",
      "lastIncludedDeploymentTimestamp": 1671294282247
    // ... same for emote, profile, etc

The global and profile snapshot files are enormous. You probably don’t want to download and save them locally.