Experience Canvas Toolbar
The Experience Canvas Toolbar is an app location that lets your app render inside the experience canvas and fragment canvas toolbar in Experience Orchestration. This page explains the concepts you need before writing code against it — for method signatures, see sdk.experiences in the App SDK reference.
One location, two editing contexts
Apps installed to locations.LOCATION_EXPERIENCE_TOOLBAR render in the toolbar for both the experience canvas and the fragment canvas — there is a single location constant.
To identify which editor your app is running inside, read sdk.experiences.context.type, which is 'experience' or 'fragment':
'experienceFragment', reserved for an upcoming rename of the Fragment entity. The host does not emit it yet — treat any non-'experience' value as a fragment, as in the example above.Your app can also react to context changes without a page reload — for example, when an editor navigates from a fragment into the experience that contains it. See Getting the experience context in the App SDK reference for the full context and change-notification API.
Content vs. design properties
Every node in an experience or fragment separates content from design, and each has a different update path:
- Content is written through the node-scoped Data Assembly parameter API —
dataAssembly.setParameterValue()anddataAssembly.setParameterValues(). There is no content-property setter on a node. - Design properties (layout, spacing, and similar visual settings) are written with
node.setDesignProperty(). node.getProperties()is read-only — it returns descriptors for inspection, not a channel for writing content or design values.
Selecting and highlighting nodes
The toolbar can read and drive the editor’s canvas selection through the Selection API (sdk.experiences.experience.selection) — for example, to highlight a node your app is referencing.
Next steps
sdk.experiencesreference — full method signatures for the Experience API, Selection API, and Data Assembly.