Embeds
When creating a content extension, one of the available options for the Content type field is Embeds. If you select this option, the extension can import embeddable media into Canva, such as YouTube videos or Instagram photos.
If you're looking for the API reference, see /content/resources/find.

Examples

These are some examples of apps with content extensions that support embeds:
To find more examples, see canva.com/apps.

Supported embed types

Canva uses Iframely to embed media into designs. This means an extension can import any Iframely supported content into Canva. The media itself is embedded via an iframe.
To check if a URL is supported by Iframely, see URLs supported by Iframely.

Limitations

  • Users can't apply effects to embeds. They can only manipulate the size, position, and rotation of the embed.
  • Canva only stores a reference to the embedded media. If the original media is deleted or otherwise becomes unavailable, an error appears in place of the media.

Example

This example assumes the extension is configured to support embeds.
1
const express = require("express");
2
3
const app = express();
4
5
app.use(express.json());
6
app.use(express.static("public"));
7
8
app.post("/content/resources/find", async (request, response) => {
9
response.send({
10
type: "SUCCESS",
11
resources: [
12
{
13
id: "dQw4w9WgXcQ",
14
name: "Rick Astley - Never Gonna Give You Up",
15
type: "EMBED",
16
thumbnail: {
17
url: "https://i.imgur.com/Q2Unw.gif",
18
},
19
url: "https://www.youtube.com/watch?v=dQw4w9WgXcQ",
20
},
21
],
22
});
23
});
24
25
app.listen(process.env.PORT || 3000);
Copied!
Last modified 27d ago