> ## Documentation Index
> Fetch the complete documentation index at: https://docs.findtempo.co/llms.txt
> Use this file to discover all available pages before exploring further.

# Poll a canvas generation job by run id



## OpenAPI

````yaml /api-reference/openapi.json get /api/v1/canvas/generate/{runId}
openapi: 3.0.0
info:
  title: Tempo API
  description: >-
    The Tempo API gives you programmatic access to Deal Brain over HTTP.


    Authenticate with an API key passed as a Bearer token in the `Authorization`
    header.


    If you are building an AI agent rather than a traditional integration, the
    [MCP server](/integrations/mcp) exposes a richer surface and handles auth
    over OAuth.
  version: '1.0'
  contact: {}
servers:
  - url: https://findtempo.co
    description: Production
security: []
tags: []
paths:
  /api/v1/canvas/generate/{runId}:
    get:
      tags:
        - Canvas Generation
      summary: Poll a canvas generation job by run id
      operationId: CanvasGenerateController_getRun_v1
      parameters:
        - name: runId
          required: true
          in: path
          description: The run id returned by POST.
          schema:
            type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: object
                required:
                  - run_id
                  - status
                  - result
                  - error
                  - created_at
                  - completed_at
                properties:
                  run_id:
                    type: string
                  status:
                    type: string
                    enum:
                      - pending
                      - running
                      - completed
                      - failed
                  result:
                    type: object
                    nullable: true
                    description: Present once status is completed.
                  error:
                    type: string
                    nullable: true
                    description: Present once status is failed.
                  created_at:
                    type: string
                  completed_at:
                    type: string
                    nullable: true
                  warnings:
                    type: array
                    items:
                      type: string
                    description: >-
                      Trigger responses only: non-fatal request problems
                      (unrecognized chips, template_options keys the template
                      does not declare).
        '400':
          description: Malformed run id (not a UUID).
        '401':
          description: Missing or invalid API key.
        '404':
          description: No such run in the caller's organization.
      security:
        - api-key: []
components:
  securitySchemes:
    api-key:
      type: apiKey
      in: header
      name: Authorization
      description: API key passed as Bearer token (e.g. "Bearer your-api-key")

````