# Canva

> Create, edit, and publish designs in Canva.

App · Images & Design · 5 actions · 1 trigger. Web page: https://docs.lodol.com/docs/integrations/canva

## Triggers

Start a workflow when something happens in Canva. See [how triggers work](https://docs.lodol.com/docs/concepts/triggers.md).

### Canva Export Complete

Triggers when a Canva design export finishes

**Filters**: Narrow which events start a run.

- `job_id` (required)
- `status_filter`

**Event fields**: What a run starts with. Later steps read each field with an @ reference.

- `job_id` (text)
- `status` (text)
- `urls` (list)

## Actions

### Create a Canva design

Create a new design in Canva with a specified type, dimensions, and optional title.

**Inputs**

- Design type (`design_type`, text, required): The type of design to create: 'doc', 'whiteboard', 'presentation', or 'custom'. Custom designs need a width and height.
- Title (`title`, text): Optional title for the design (1-255 characters).
- Width (`width`, number): Width in pixels (40-8000) for custom design type.
- Height (`height`, number): Height in pixels (40-8000) for custom design type.
- Asset ID (`asset_id`, text): Optional ID of an image already uploaded to Canva to add to the design.

**Outputs**

- `id` (text): The unique ID of the created design.
- `title` (text): The title of the design.
- `urls` (object): URLs associated with the design (edit, view).

**Example output**

```json
{
  "id": "DAFVcK_N123",
  "title": "My New Design",
  "urls": {
    "edit_url": "https://www.canva.com/design/DAFVcK_N123/edit",
    "view_url": "https://www.canva.com/design/DAFVcK_N123/view"
  }
}
```

### Export a Canva design

Export a Canva design to a file format like PDF, PNG, JPG, or MP4.

**Inputs**

- Design ID (`design_id`, text, required): The ID of the design to export.
- File format (`format_type`, text): The file format to export to: 'pdf', 'jpg', 'png', 'gif', 'pptx', or 'mp4'. Default: `png`.
- Quality (`quality`, text): Quality of the exported file: 'regular' or 'pro'. Applies to JPG and PDF exports.
- Width (`width`, number): Optional export width (respects aspect ratio).
- Height (`height`, number): Optional export height (respects aspect ratio).
- Pages (`pages`, list): Optional list of page numbers to export. The first page is 1.

**Outputs**

- `design_id` (text): The ID of the design being exported.
- `job_id` (text): The export job ID to check status.
- `status` (text): Current status of the export job.

**Example output**

```json
{
  "design_id": "DAFVcK_N123",
  "job_id": "export_job_123abc",
  "status": "in_progress"
}
```

### Get design details

Retrieve details about a specific Canva design.

**Inputs**

- Design ID (`design_id`, text, required): The ID of the design to retrieve.

**Outputs**

- `created_at` (text): Creation timestamp.
- `id` (text): The design ID.
- `owner` (object): Owner information.
- `title` (text): The design title.
- `updated_at` (text): Last update timestamp.
- `urls` (object): URLs for the design.

**Example output**

```json
{
  "created_at": "2024-01-15T10:30:00Z",
  "id": "DAFVcK_N123",
  "owner": {
    "team_id": "team_456",
    "user_id": "user_123"
  },
  "title": "My Design",
  "updated_at": "2024-01-16T14:45:00Z",
  "urls": {
    "edit_url": "https://www.canva.com/design/DAFVcK_N123/edit",
    "view_url": "https://www.canva.com/design/DAFVcK_N123/view"
  }
}
```

### Get export job status

Check the status and results of a Canva export job.

**Inputs**

- Job ID (`job_id`, text, required): The export job ID returned by the 'Export a Canva design' action.

**Outputs**

- `job_id` (text): The export job ID.
- `status` (text): Job status: 'in_progress', 'success', or 'failed'.
- `urls` (list): Download URLs when export is complete.

**Example output**

```json
{
  "job_id": "export_job_123abc",
  "status": "success",
  "urls": [
    "https://export.canva.com/export_job_123abc/design.png"
  ]
}
```

### List Canva designs

List the designs in your connected Canva account.

**Inputs**

- Search for (`query`, text): Optional text to search for to narrow down the list of designs.
- Next page token (`continuation`, text): To get the next page of results, pass the 'continuation' value returned by the previous run.

**Outputs**

- `continuation` (text): Token for fetching the next page of results.
- `designs` (list): List of design objects.

**Example output**

```json
{
  "continuation": "next_page_token_xyz",
  "designs": [
    {
      "id": "DAFVcK_N123",
      "thumbnail": {
        "url": "https://thumbnail.canva.com/123.png"
      },
      "title": "My First Design"
    },
    {
      "id": "DAFVcK_N456",
      "thumbnail": {
        "url": "https://thumbnail.canva.com/456.png"
      },
      "title": "My Second Design"
    }
  ]
}
```
