---
title: "GET /v1/generations/{jobId}"
method: GET
path: "/v1/generations/{jobId}"
tags: ["design_generation"]
---

# GET /v1/generations/{jobId}

`GET /v1/generations/{jobId}`

<Warning>

This API is currently provided as a preview. Be aware of the following:

- There might be unannounced breaking changes.
- Any breaking changes to preview APIs won't produce a new [API version](https://www.canva.dev/docs/apps/rest-apis/versions/).
- Public integrations that use preview APIs will not pass the review process, and can't be made available to all Canva users.

</Warning>

Gets the status and result of a design generation job created using the [Create design generation job v2 API](https://www.canva.dev/docs/apps/rest-apis/reference/generations/create-design-generation-job/).

You might need to make multiple requests until the job has a `success` or `failed` status. For more information on the workflow for using asynchronous jobs, see [API requests and responses](https://www.canva.dev/docs/apps/rest-apis/requests-responses/#asynchronous-job-endpoints).

Only the user and integration that created the job can retrieve it, and the user must be in the same team. Jobs expire 24 hours after creation.

Polling doesn't consume the user's [AI credit allowance](https://www.canva.com/help/ai-access/). Reaching the AI allowance limit after job creation doesn't prevent retrieving the result.

Requires the `design_generation` capability.

## Path parameters

- `jobId` string, required

## Response `200`

OK

- GetDesignGenerationJobResponseV2
  - `job` DesignGenerationJobV2, required — The status and result of a public design generation job.
    - `id` string, required — The public design generation job ID.
    - `status` 'failed' | 'in_progress' | 'success', required — The public status of the job. `result` is present only for `success`, and `error` is present only for `failed`.
    - `result` DesignGenerationJobResultV2 — Present only when the job status is `success`.
      - `design` DesignSummary, required — Basic details about the design, such as the design's ID, title, and URL.
        - `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/apps/rest-apis/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/apps/rest-apis/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` DesignGenerationJobErrorV2 — Details about a failed design generation job.
      - `code` 'content_not_allowed' | 'generation_failed', required — The reason the design generation job failed.
      - `message` string, required — A human-readable description of what went wrong.
  - `quota_usage` CreditQuotaSuccessInfo — Credit quota usage information returned on a successful generation request.
    - `used_percentage` integer — The percentage of the caller's credit quota that has been consumed in the current billing interval, from 0 to 100.
    - `resets_at` integer — Unix timestamp (seconds from the Unix epoch) of when the credit quota resets for the caller.
    - `using_bonus_credits` boolean — Whether the caller is currently consuming bonus credits (credits beyond their base plan allocation).
    - `usage_review_link` string — A URL to the Canva credit usage dashboard where the caller can review their current credit consumption. Not present if unavailable.

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `403` — Forbidden
- `404` — Not Found
- `429` — Too Many Requests
- `default` — Error Response

## Changes

- **2026-10-01** `bfef8d5a788a` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/canva/apis/canva-connect-api/changes/v1/generations/:jobId/get.md)

---

[API](https://skmtc.dev/canva/apis/canva-connect-api.md) · [All operations](https://skmtc.dev/canva/apis/canva-connect-api/llms.txt) · [OpenAPI document](https://skmtc.dev/canva/apis/canva-connect-api/revisions/328682d29ec4?raw)
