Shapes are organized into libraries. Currently, JSON standard import supports shapes from the Standard Library, Shape Library, Container Library, Flowchart Library, and Lucidspark Library.

Common Properties

These properties are used on most or all shapes. Properties that are exclusive to a small set of shapes are defined near the shapes they're used on.

PropertyDescription
idID
Identifier for a given shape (must be unique).
Required
typeString
The type of shape. An example of each shape is listed below.
Required
boundingBoxBounding Box
The associated Bounding Box for the shape.
Required
styleStyle
The style that will apply to the shape.
Optional
textText
Text to display on the shape.
Optional
actionsArray[Action]
An array of all actions linked to the shape.
Optional
customDataArray[Custom Data]
An array of all custom data connected to the shape.
Optional
linkedDataArray[Linked Data]
An array of all linked data connected to the shape.
Optional
opacityNumber
A whole number between 0 (transparent) and 100 (completely opaque) inclusive, representing the opacity of the shape. Defaults to 100 when not provided.
Optional
noteText
Text to add as a note to the shape.
Optional
zIndexInteger
Defines the ordering between different shapes, lines, and groups. (like the z-index css attribute) If the shape is in a group, the shape’s order is based on the relative zIndex of other objects in the group. If items have the same zIndex, then item type (groups on top, then lines, and lastly shapes) will determine order. Multiple shapes with the same zIndex will have the later shape in the JSON on top. Defaults to 0.
Optional