# snapshot property

Information noteSTABLE.   
  
This API is reliable and breaking changes are unlikely.

snapshot(enable)

Enables or disables the ability to take snapshots of the visualization extension for use in Data Storytelling.

Information noteA new implementation of the snapshot property was introduced in version 3.0. Extensions using the legacy implementation of the snapshot property will continue to work but use this new implementation when creating new extensions.

## Version history

Version history

| Version state | Details |
| --- | --- |
| Introduced | 1.0 |
| Updated | 3.0 |

## Parameters

### enable

Type: Boolean

Set to true to enable snapshots of the extension, and set to false to disable.

Default is false.

## Examples

Example: Basic example

```
var ext = {
	support: {
		snapshot: true,
		export: false
	}
};
```

Example: snapshot as a function

In this example, the snapshot property is used as a function and does not allow snapshots when no data is available in the visualization extension.

```
{
	support: {
		snapshot: function( layout ) {
			return layout.qHyperCube.qDataPages[0].qMatrix.length;
		}
	}
}
```

## Legacy implementation

snapshot(canTakeSnapshot)

Property used to enable or disable the ability to take snapshots of the visualization extension for use in Data Storytelling.

### Parameters

Parameters

| Name | Description |
| --- | --- |
| canTakeSnapshot | Set to true to enable snapshots of the extension and set to false to disable.<br><br>Default is false. |

### Example

```
snapshot: {
	canTakeSnapshot: true
}
```