| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 | # JSON SchemaThe Excalidraw data format uses plaintext JSON.## Excalidraw filesWhen saving an Excalidraw scene locally to a file, the JSON file (`.excalidraw`) is using the below format.### Attributes| Attribute | Description | Value || --- | --- | --- || `type` | The type of the Excalidraw schema | `"excalidraw"` || `version` | The version of the Excalidraw schema | number || `source` | The source URL of the Excalidraw application | `"https://excalidraw.com"` || `elements` | An array of objects representing excalidraw elements on canvas | Array containing excalidraw element objects || `appState` | Additional application state/configuration | Object containing application state properties || `files` | Data for excalidraw `image` elements | Object containing image data |### JSON Schema example```json{  // schema information  "type": "excalidraw",  "version": 2,  "source": "https://excalidraw.com",  // elements on canvas  "elements": [    // example element    {      "id": "pologsyG-tAraPgiN9xP9b",      "type": "rectangle",      "x": 928,      "y": 319,      "width": 134,      "height": 90      /* ...other element properties */    }    /* other elements */  ],  // editor state (canvas config, preferences, ...)  "appState": {    "gridSize": null,    "viewBackgroundColor": "#ffffff"  },  // files data for "image" elements, using format `{ [fileId]: fileData }`  "files": {    // example of an image data object    "3cebd7720911620a3938ce77243696149da03861": {      "mimeType": "image/png",      "id": "3cebd7720911620a3938c.77243626149da03861",      "dataURL": "data:image/png;base64,iVBORWOKGgoAAAANSUhEUgA=",      "created": 1690295874454,      "lastRetrieved": 1690295874454    }    /* ...other image data objects */  }}```## Excalidraw clipboard formatWhen copying selected excalidraw elements to clipboard, the JSON schema is similar to `.excalidraw` format, except it differs in attributes.### Attributes| Attribute | Description | Example Value || --- | --- | --- || `type` | The type of the Excalidraw document. | "excalidraw/clipboard" || `elements` | An array of objects representing excalidraw elements on canvas. | Array containing excalidraw element objects (see example below) || `files` | Data for excalidraw `image` elements. | Object containing image data |
 |