openDesign

API reference for the openDesign method.

This API is a preview. Preview APIs are unstable and may change without warning. You can't release public apps using this API until it's stable.

Reads (and optionally updates) a specified part of the user's design.

Reads (and optionally updates) the current page of the user's design.

Usage: Read the current page

import { openDesign } from "@canva/design";
await openDesign({ type: 'current_page' }, async (session) => {
// Do something with session.page
await session.sync();
});
TYPESCRIPT

Parameters

optionsDesignOpenCurrentPageOptions
Required

Options for configuring how the current page is read.

typestring
Required

The type of context.

The only valid value is "current_page".

callbackDesignOpenCurrentPageCallback
Required

A callback for operating on the current page.

Parameters

sessionDesignEditing.CurrentPageSession
Required

Session received by the openDesign callback when opening the current page.

pageDesignEditing.Page
Required

The current page of the design.

A page with either fixed or unbounded dimensions.

For more information, see AbsolutePage.

Represents something that's not supported by the Apps SDK.

typestringRead-only
Required

The only valid value is "unsupported".

helpersDesignEditing.PageHelpers
Required

These are various utilities that allow apps to do more complex operations on the page.

For more information, see PageHelpers.

syncfunction
Required

Saves any changes made during the session while keeping the session open.

  • Any changes in the session are only reflected in the design after this method is called.
  • Once this method is called, further changes in the session can still be made.

Returns

Promise<void>

Returns

Promise<void>

Returns

Promise<void>

Reads (and optionally updates) all pages of the user's design.

Usage: Read all pages

import { openDesign } from "@canva/design";
await openDesign({ type: 'all_pages' }, async (session) => {
// Do something with session.pageRefs
await session.sync();
});
TYPESCRIPT

Parameters

optionsDesignOpenAllPagesOptions
Required

Options for configuring how all pages are read.

typestring
Required

The type of context.

The only valid value is "all_pages".

callbackDesignOpenAllPagesCallback
Required

A callback for operating on all pages.

Parameters

sessionDesignEditing.AllPagesSession
Required

Session received by the openDesign callback when opening all pages.

pageRefsDesignEditing.PageRefList
Required

References to all pages of the design.

For more information, see PageRefList.

helpersDesignEditing.AllPagesHelpers
Required

These are various utilities that allow apps to do more complex operations on the page.

For more information, see AllPagesHelpers.

syncfunction
Required

Saves any changes made during the session while keeping the session open.

  • Any changes in the session are only reflected in the design after this method is called.
  • Once this method is called, further changes in the session can still be made.

Returns

Promise<void>

Returns

Promise<void>

Returns

Promise<void>