---
title: "POST /v1/url-imports"
method: POST
path: "/v1/url-imports"
tags: ["design_import"]
---

# POST /v1/url-imports

`POST /v1/url-imports`

Starts a new [asynchronous job](https://www.canva.dev/docs/connect/api-requests-responses/#asynchronous-job-endpoints) to import an external file from a URL as a new design in Canva.

Supported file types for imports are listed in [Design imports overview](https://www.canva.dev/docs/connect/api-reference/design-imports/#supported-file-types).

<Note>

For more information on the workflow for using asynchronous jobs, see [API requests and responses](https://www.canva.dev/docs/connect/api-requests-responses/#asynchronous-job-endpoints). You can check the status and get the results of design import jobs created with this API using the [Get URL import job API](https://www.canva.dev/docs/connect/api-reference/design-imports/get-url-import-job/).

</Note>

## Request body

- CreateUrlImportJobRequest
  - `title` string, required — A title for the design.
  - `url` string, required — The URL of the file to import. This URL must be accessible from the internet and be publicly available.
  - `mime_type` string — The MIME type of the file being imported. If not provided, Canva attempts to automatically detect the type of the file.

## Response `200`

OK

- CreateUrlImportJobResponse
  - `job` DesignImportJob, required — The status of the design import job.
    - `id` string, required — The ID of the design import job.
    - `status` 'failed' | 'in_progress' | 'success', required — The status of the design import job.
    - `result` DesignImportJobResult
      - `designs` DesignSummary[], required — A list of designs imported from the external file. It usually contains one item. Imports with a large number of pages or assets are split into multiple designs.
        - `id` string, required — The design ID.
        - `title` string — The design title.
        - `url` string — URL of the design.
        - `thumbnail` Thumbnail — A thumbnail image representing the object.
          - `width` integer, required — The width of the thumbnail image in pixels.
          - `height` integer, required — The height of the thumbnail image in pixels.
          - `url` string, required — A URL for retrieving the thumbnail image. This URL expires after 15 minutes. This URL includes a query string that's required for retrieving the thumbnail.
        - `urls` DesignLinks, required — A temporary set of URLs for viewing or editing the design.
          - `edit_url` string, required — A temporary editing URL for the design. This URL is only accessible to the user that made the API request, and is designed to support [return navigation](https://www.canva.dev/docs/connect/return-navigation-guide/) workflows. NOTE: This is not a permanent URL, it is only valid for 30 days.
          - `view_url` string, required — A temporary viewing URL for the design. This URL is only accessible to the user that made the API request, and is designed to support [return navigation](https://www.canva.dev/docs/connect/return-navigation-guide/) workflows. NOTE: This is not a permanent URL, it is only valid for 30 days.
        - `created_at` integer, required — When the design was created in Canva, as a Unix timestamp (in seconds since the Unix Epoch).
        - `updated_at` integer, required — When the design was last updated in Canva, as a Unix timestamp (in seconds since the Unix Epoch).
        - `page_count` integer — The total number of pages in the design. Some design types don't have pages (for example, Canva docs).
    - `error` DesignImportError — If the import job fails, this object provides details about the error.
      - `code` 'design_creation_throttled' | 'design_import_throttled' | 'duplicate_import' | 'internal_error' | 'invalid_file' | 'fetch_failed', required — A short string about why the import failed. This field can be used to handle errors programmatically.
      - `message` string, required — A human-readable description of what went wrong.

## Other responses

- `400` — Bad Request
- `404` — Not Found
- `default` — Error Response

---

[API](https://skmtc.net/canva/apis/canva-connect-api.md) · [All operations](https://skmtc.net/canva/apis/canva-connect-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/canva/canva-connect-api/revisions/499c392c7720/schema)
