The Canva Apps SDK asset management library
npm install @canva/assetA package for Canva's Apps SDK that provides methods for working with assets.

- Introduction
- Installation
- Usage
- API reference
- Related packages
- Contributing
- License
@canva/asset is an npm package for Canva's Apps SDK. It provides methods for working with assets, such as image and video files. For example, the package exports a upload method that uploads assets to the user's media library.
Note: To get up and running with the Apps SDK, check out the quick start guide.
``bash`
npm install @canva/asset
1. Import a method or namespace from the @canva/asset package:
`ts`
import { upload } from '@canva/asset';
2. Call a method, passing in the required arguments (if any):
`ts`
await upload({
type: 'IMAGE',
id: 'uniqueIdGoesHere',
mimeType: 'image/jpeg',
url: 'https://www.canva.dev/example-assets/image-import/image.jpg',
thumbnailUrl: 'https://www.canva.dev/example-assets/image-import/thumbnail.jpg',
});
The Apps SDK is made up of the following packages:
- @canva/app-ui-kit - React-based component library for creating apps that mimic the look and feel of Canva.
- @canva/asset - Provides methods for working with assets, such as image and video files.
- @canva/design - Provides methods for interacting with the user's design, such as creating elements.
- @canva/error - Provides a CanvaError class for handling errors.@canva/platform
- - Provides utility methods, such as a method for opening external links.@canva/user
- - Provides methods for accessing user data and authenticating users.
We're actively developing this package but are not currently accepting third-party contributions. If you'd like to request any changes or additions to the package, submit a feature request via the Canva Developers Community.
See the LICENSE.md` file.