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

# Get Version

> Get one published version of a workspace



## OpenAPI

````yaml get /v2/api/projects/{projectId}/workspaces/{workspaceId}/versions/{version}
openapi: 3.1.0
info:
  title: Upsolve API
  version: 1.5.0
servers:
  - url: https://api.upsolve.ai
security: []
tags: []
paths:
  /v2/api/projects/{projectId}/workspaces/{workspaceId}/versions/{version}:
    get:
      summary: Get one published version of a workspace
      description: Get one published version of a workspace
      operationId: GetV2ApiProjectsProjectIdWorkspacesWorkspaceIdVersionsVersion
      parameters:
        - name: apiKey
          in: query
          required: false
          description: >-
            Upsolve API key, generated under Account → Developer settings in the
            Upsolve Hub. Keys are user-scoped: pass organizationId alongside the
            key to select which org to act on.
          schema:
            type: string
            minLength: 1
            description: >-
              Upsolve API key, generated under Account → Developer settings in
              the Upsolve Hub. Keys are user-scoped: pass organizationId
              alongside the key to select which org to act on.
            examples:
              - up_embed_************
          examples:
            example1:
              value: up_embed_************
        - name: organizationId
          in: query
          required: false
          description: >-
            Your Upsolve organization's UUID — the org that owns the API key and
            project. This is NOT a project organization: do not pass a value
            registered via /projects/register-organization, and do not pass an
            `externalId` (only `projectOrganizationId` accepts those). Omit it
            when using an org-bound API key — the org is read from the key and
            any value sent here is ignored. Required only for user-scoped API
            keys (created under Account → Developer settings) and for the
            Supabase JWT path, where the org is ambiguous and membership is
            verified against it.
          schema:
            description: >-
              Your Upsolve organization's UUID — the org that owns the API key
              and project. This is NOT a project organization: do not pass a
              value registered via /projects/register-organization, and do not
              pass an `externalId` (only `projectOrganizationId` accepts those).
              Omit it when using an org-bound API key — the org is read from the
              key and any value sent here is ignored. Required only for
              user-scoped API keys (created under Account → Developer settings)
              and for the Supabase JWT path, where the org is ambiguous and
              membership is verified against it.
            examples:
              - 123e4567-e89b-12d3-a456-426614174000
            type: string
            format: uuid
            pattern: >-
              ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$
          examples:
            example1:
              value: 123e4567-e89b-12d3-a456-426614174000
        - name: projectId
          in: path
          required: true
          description: >-
            GET
            /v2/api/projects/:projectId/workspaces/:workspaceId/versions/:version
            Parameter
          schema:
            type: string
            format: uuid
            pattern: >-
              ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$
        - name: workspaceId
          in: path
          required: true
          description: >-
            GET
            /v2/api/projects/:projectId/workspaces/:workspaceId/versions/:version
            Parameter
          schema:
            type: string
            format: uuid
            pattern: >-
              ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$
        - name: version
          in: path
          required: true
          description: >-
            GET
            /v2/api/projects/:projectId/workspaces/:workspaceId/versions/:version
            Parameter
          schema:
            type: integer
            minimum: 1
            maximum: 9007199254740991
      responses:
        '200':
          description: >-
            GET
            /v2/api/projects/:projectId/workspaces/:workspaceId/versions/:version
            Positive response
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: string
                    const: success
                  data:
                    type: object
                    properties:
                      version:
                        type: number
                      status:
                        type: string
                        enum:
                          - publishing
                          - published
                          - failed
                      name:
                        type: string
                      description:
                        type:
                          - string
                          - 'null'
                      connectionId:
                        type:
                          - string
                          - 'null'
                      tablesSnapshot:
                        type: object
                        propertyNames:
                          type: string
                        additionalProperties: {}
                      rlsSnapshot:
                        type:
                          - object
                          - 'null'
                        propertyNames:
                          type: string
                        additionalProperties: {}
                      tablesRls:
                        type:
                          - object
                          - 'null'
                        propertyNames:
                          type: string
                        additionalProperties: {}
                      tablesRlsOverrides:
                        type:
                          - array
                          - 'null'
                        items:
                          type: string
                      createdBy:
                        type:
                          - string
                          - 'null'
                      createdAt:
                        type: string
                      error:
                        type:
                          - string
                          - 'null'
                      prompts:
                        type: object
                        properties:
                          systemPrompt:
                            type:
                              - string
                              - 'null'
                          sqlGenPrompt:
                            type:
                              - string
                              - 'null'
                          chartGenPrompt:
                            type:
                              - string
                              - 'null'
                          workingMemoryPrompt:
                            type:
                              - string
                              - 'null'
                          lockVersion:
                            type:
                              - number
                              - 'null'
                          createdAt:
                            type:
                              - string
                              - 'null'
                          updatedAt:
                            type:
                              - string
                              - 'null'
                        required:
                          - systemPrompt
                          - sqlGenPrompt
                          - chartGenPrompt
                          - workingMemoryPrompt
                          - lockVersion
                          - createdAt
                          - updatedAt
                        additionalProperties: false
                      skills:
                        type: array
                        items:
                          type: object
                          properties:
                            id:
                              type: string
                            name:
                              type: string
                            description:
                              type:
                                - string
                                - 'null'
                            instructions:
                              type:
                                - string
                                - 'null'
                            agentEditable:
                              type: boolean
                            lockVersion:
                              type: 'null'
                            createdAt:
                              type: string
                            updatedAt:
                              type: string
                          required:
                            - id
                            - name
                            - description
                            - instructions
                            - agentEditable
                            - lockVersion
                            - createdAt
                            - updatedAt
                          additionalProperties: false
                      assets:
                        type: array
                        items:
                          type: object
                          properties:
                            id:
                              type: string
                            assetId:
                              type: string
                            lockVersion:
                              type: 'null'
                            createdAt:
                              type: string
                            updatedAt:
                              type: string
                          required:
                            - id
                            - assetId
                            - lockVersion
                            - createdAt
                            - updatedAt
                          additionalProperties: false
                        description: The golden assets this version serves the agent.
                      testCases:
                        type: array
                        items:
                          type: object
                          properties:
                            id:
                              type: string
                            assetId:
                              type: string
                            lockVersion:
                              type: 'null'
                            createdAt:
                              type: string
                            updatedAt:
                              type: string
                          required:
                            - id
                            - assetId
                            - lockVersion
                            - createdAt
                            - updatedAt
                          additionalProperties: false
                        description: The test suite this version froze.
                      theme:
                        type: object
                        properties:
                          config:
                            type: object
                            properties:
                              prompt:
                                default: ''
                                description: >-
                                  The design brief in the builder's own words —
                                  colours (as hex), light or dark, type, tone,
                                  density. The preview run designs from this
                                  alone, with the reference files as context
                                type: string
                                maxLength: 8000
                              url:
                                default: null
                                description: >-
                                  The brand's website. Kept as an asset;
                                  scanning it appends its colours and fonts to
                                  the prompt
                                type:
                                  - string
                                  - 'null'
                                maxLength: 2048
                              logo:
                                default: null
                                description: >-
                                  The brand logo, shown in a designed chart's
                                  header and in canvas apps
                                type:
                                  - object
                                  - 'null'
                                properties:
                                  name:
                                    type: string
                                    maxLength: 200
                                    description: The uploaded file's name
                                  dataUri:
                                    type: string
                                    maxLength: 300000
                                    pattern: >-
                                      ^data:image\/(png|jpeg|webp|svg\+xml);base64,[A-Za-z0-9+/=]+$
                                    description: >-
                                      The logo, downscaled in the browser, as a
                                      base64 data URI
                                  palette:
                                    default: []
                                    description: >-
                                      The logo's dominant colours, extracted in
                                      the browser
                                    maxItems: 8
                                    type: array
                                    items:
                                      type: string
                                      pattern: ^#[0-9a-fA-F]{6}$
                                      description: 'A colour as #RRGGBB hex'
                                required:
                                  - name
                                  - dataUri
                                  - palette
                                additionalProperties: false
                              files:
                                default: []
                                description: >-
                                  Reference files the preview run reads
                                  alongside the prompt
                                maxItems: 6
                                type: array
                                items:
                                  type: object
                                  properties:
                                    id:
                                      type: string
                                      minLength: 1
                                      maxLength: 64
                                      description: Client-assigned id of the file
                                    name:
                                      type: string
                                      maxLength: 200
                                      description: The uploaded file's name
                                    mimeType:
                                      type: string
                                      maxLength: 120
                                      description: The file's MIME type
                                    size:
                                      type: integer
                                      minimum: 0
                                      maximum: 9007199254740991
                                      description: Original size of the file in bytes
                                    kind:
                                      type: string
                                      enum:
                                        - text
                                        - image
                                      description: >-
                                        text: its contents are read into the
                                        design prompt. image: its palette is.
                                    text:
                                      description: >-
                                        A text file's contents (brand
                                        guidelines, CSS, tokens)
                                      type: string
                                      maxLength: 24000
                                    thumbnail:
                                      description: An image file, downscaled, as a data URI
                                      type: string
                                      maxLength: 100000
                                      pattern: >-
                                        ^data:image\/(png|jpeg|webp);base64,[A-Za-z0-9+/=]+$
                                    palette:
                                      default: []
                                      description: An image file's dominant colours
                                      maxItems: 8
                                      type: array
                                      items:
                                        type: string
                                        pattern: ^#[0-9a-fA-F]{6}$
                                        description: 'A colour as #RRGGBB hex'
                                  required:
                                    - id
                                    - name
                                    - mimeType
                                    - size
                                    - kind
                                    - palette
                                  additionalProperties: false
                            required:
                              - prompt
                              - url
                              - logo
                              - files
                            additionalProperties: false
                            description: >-
                              What the builder edits: the design prompt, the
                              brand website, the logo and reference files.
                          design:
                            type: object
                            properties:
                              version:
                                type: number
                                const: 1
                              name:
                                type: string
                                maxLength: 80
                                description: A short name for the design language
                              styleGuide:
                                type: string
                                maxLength: 2400
                                description: >-
                                  The design language in prose. Fed to every
                                  generator that draws in this theme (canvas
                                  apps included)
                              mode:
                                type: string
                                enum:
                                  - light
                                  - dark
                                description: >-
                                  Whether the theme draws on a light or a dark
                                  background
                              palette:
                                type: object
                                properties:
                                  background:
                                    type: string
                                    pattern: ^#[0-9a-fA-F]{6}$
                                    description: 'A colour as #RRGGBB hex'
                                  surface:
                                    type: string
                                    pattern: ^#[0-9a-fA-F]{6}$
                                    description: 'A colour as #RRGGBB hex'
                                  surfaceAlt:
                                    type: string
                                    pattern: ^#[0-9a-fA-F]{6}$
                                    description: 'A colour as #RRGGBB hex'
                                  text:
                                    type: string
                                    pattern: ^#[0-9a-fA-F]{6}$
                                    description: 'A colour as #RRGGBB hex'
                                  mutedText:
                                    type: string
                                    pattern: ^#[0-9a-fA-F]{6}$
                                    description: 'A colour as #RRGGBB hex'
                                  border:
                                    type: string
                                    pattern: ^#[0-9a-fA-F]{6}$
                                    description: 'A colour as #RRGGBB hex'
                                  primary:
                                    type: string
                                    pattern: ^#[0-9a-fA-F]{6}$
                                    description: 'A colour as #RRGGBB hex'
                                  accent:
                                    type: string
                                    pattern: ^#[0-9a-fA-F]{6}$
                                    description: 'A colour as #RRGGBB hex'
                                  positive:
                                    type: string
                                    pattern: ^#[0-9a-fA-F]{6}$
                                    description: 'A colour as #RRGGBB hex'
                                  negative:
                                    type: string
                                    pattern: ^#[0-9a-fA-F]{6}$
                                    description: 'A colour as #RRGGBB hex'
                                  series:
                                    minItems: 3
                                    maxItems: 10
                                    type: array
                                    items:
                                      type: string
                                      pattern: ^#[0-9a-fA-F]{6}$
                                      description: 'A colour as #RRGGBB hex'
                                required:
                                  - background
                                  - surface
                                  - surfaceAlt
                                  - text
                                  - mutedText
                                  - border
                                  - primary
                                  - accent
                                  - positive
                                  - negative
                                  - series
                                additionalProperties: false
                              typography:
                                type: object
                                properties:
                                  body:
                                    type: string
                                    enum:
                                      - inter
                                      - system
                                      - geometric
                                      - humanist
                                      - serif
                                      - editorial
                                      - rounded
                                      - mono
                                    description: One of the theme's font stacks
                                  heading:
                                    type: string
                                    enum:
                                      - inter
                                      - system
                                      - geometric
                                      - humanist
                                      - serif
                                      - editorial
                                      - rounded
                                      - mono
                                    description: One of the theme's font stacks
                                  numeric:
                                    type: string
                                    enum:
                                      - inter
                                      - system
                                      - geometric
                                      - humanist
                                      - serif
                                      - editorial
                                      - rounded
                                      - mono
                                    description: One of the theme's font stacks
                                  baseSize:
                                    type: integer
                                    minimum: 11
                                    maximum: 16
                                  titleSize:
                                    type: integer
                                    minimum: 13
                                    maximum: 24
                                  titleWeight:
                                    type: integer
                                    minimum: 400
                                    maximum: 900
                                  titleAlign:
                                    type: string
                                    enum:
                                      - left
                                      - center
                                  uppercaseLabels:
                                    type: boolean
                                required:
                                  - body
                                  - heading
                                  - numeric
                                  - baseSize
                                  - titleSize
                                  - titleWeight
                                  - titleAlign
                                  - uppercaseLabels
                                additionalProperties: false
                              shape:
                                type: object
                                properties:
                                  radius:
                                    type: integer
                                    minimum: 0
                                    maximum: 28
                                  cardPadding:
                                    type: integer
                                    minimum: 8
                                    maximum: 40
                                  shadow:
                                    type: string
                                    enum:
                                      - none
                                      - subtle
                                      - soft
                                      - bold
                                  borderWidth:
                                    type: integer
                                    minimum: 0
                                    maximum: 2
                                  density:
                                    type: string
                                    enum:
                                      - compact
                                      - comfortable
                                      - airy
                                required:
                                  - radius
                                  - cardPadding
                                  - shadow
                                  - borderWidth
                                  - density
                                additionalProperties: false
                              chart:
                                type: object
                                properties:
                                  barRadius:
                                    type: integer
                                    minimum: 0
                                    maximum: 16
                                  barGapPercent:
                                    type: integer
                                    minimum: 0
                                    maximum: 80
                                  lineWidth:
                                    type: number
                                    minimum: 1
                                    maximum: 6
                                  lineSmooth:
                                    type: boolean
                                  showSymbols:
                                    type: boolean
                                  areaOpacity:
                                    type: number
                                    minimum: 0
                                    maximum: 1
                                  areaGradient:
                                    type: boolean
                                  gridLines:
                                    type: string
                                    enum:
                                      - none
                                      - horizontal
                                      - both
                                  gridLineStyle:
                                    type: string
                                    enum:
                                      - solid
                                      - dashed
                                      - dotted
                                  axisLine:
                                    type: boolean
                                  legendPosition:
                                    type: string
                                    enum:
                                      - top
                                      - bottom
                                      - right
                                      - none
                                  showDataLabels:
                                    type: boolean
                                  donutInnerRadius:
                                    type: integer
                                    minimum: 0
                                    maximum: 80
                                  funnelGap:
                                    type: integer
                                    minimum: 0
                                    maximum: 16
                                  tooltipStyle:
                                    type: string
                                    enum:
                                      - surface
                                      - inverted
                                      - accent
                                  compactNumbers:
                                    type: boolean
                                required:
                                  - barRadius
                                  - barGapPercent
                                  - lineWidth
                                  - lineSmooth
                                  - showSymbols
                                  - areaOpacity
                                  - areaGradient
                                  - gridLines
                                  - gridLineStyle
                                  - axisLine
                                  - legendPosition
                                  - showDataLabels
                                  - donutInnerRadius
                                  - funnelGap
                                  - tooltipStyle
                                  - compactNumbers
                                additionalProperties: false
                              chartKinds:
                                type: object
                                propertyNames:
                                  type: string
                                  enum:
                                    - bar
                                    - horizontalBar
                                    - stackedBar
                                    - line
                                    - area
                                    - combo
                                    - pie
                                    - donut
                                    - funnel
                                    - gauge
                                    - treemap
                                    - scatter
                                    - heatmap
                                    - radar
                                    - kpi
                                    - table
                                    - list
                                    - status
                                    - keyValue
                                additionalProperties:
                                  type: object
                                  properties:
                                    barRadius:
                                      type: integer
                                      minimum: 0
                                      maximum: 16
                                    barGapPercent:
                                      type: integer
                                      minimum: 0
                                      maximum: 80
                                    lineWidth:
                                      type: number
                                      minimum: 1
                                      maximum: 6
                                    lineSmooth:
                                      type: boolean
                                    showSymbols:
                                      type: boolean
                                    areaOpacity:
                                      type: number
                                      minimum: 0
                                      maximum: 1
                                    areaGradient:
                                      type: boolean
                                    gridLines:
                                      type: string
                                      enum:
                                        - none
                                        - horizontal
                                        - both
                                    gridLineStyle:
                                      type: string
                                      enum:
                                        - solid
                                        - dashed
                                        - dotted
                                    axisLine:
                                      type: boolean
                                    legendPosition:
                                      type: string
                                      enum:
                                        - top
                                        - bottom
                                        - right
                                        - none
                                    showDataLabels:
                                      type: boolean
                                    donutInnerRadius:
                                      type: integer
                                      minimum: 0
                                      maximum: 80
                                    funnelGap:
                                      type: integer
                                      minimum: 0
                                      maximum: 16
                                    tooltipStyle:
                                      type: string
                                      enum:
                                        - surface
                                        - inverted
                                        - accent
                                    compactNumbers:
                                      type: boolean
                                    colors:
                                      description: >-
                                        This kind's series colours, in order;
                                        the first is its primary. Replaces the
                                        theme's series for this kind
                                      minItems: 1
                                      maxItems: 10
                                      type: array
                                      items:
                                        type: string
                                        pattern: ^#[0-9a-fA-F]{6}$
                                        description: 'A colour as #RRGGBB hex'
                                    labelPosition:
                                      type: string
                                      enum:
                                        - inside
                                        - outside
                                      description: >-
                                        Where a pie's, donut's or funnel's
                                        labels sit: on the slice or stage, or
                                        beside it
                                    funnelAlign:
                                      type: string
                                      enum:
                                        - left
                                        - center
                                        - right
                                      description: Which side a funnel's stages line up on
                                    funnelColors:
                                      type: string
                                      enum:
                                        - ramp
                                        - series
                                      description: >-
                                        ramp: the stages are shades of the
                                        primary colour, fading stage by stage.
                                        series: each stage takes the next series
                                        colour
                                  additionalProperties: false
                                description: >-
                                  Per chart kind (funnel, donut, line, …), how
                                  every chart of that kind is drawn, over the
                                  base chart style
                              table:
                                type: object
                                properties:
                                  headerBackground:
                                    type: string
                                    pattern: ^#[0-9a-fA-F]{6}$
                                    description: 'A colour as #RRGGBB hex'
                                  headerText:
                                    type: string
                                    pattern: ^#[0-9a-fA-F]{6}$
                                    description: 'A colour as #RRGGBB hex'
                                  zebra:
                                    type: boolean
                                  rowDividers:
                                    type: boolean
                                required:
                                  - headerBackground
                                  - headerText
                                  - zebra
                                  - rowDividers
                                additionalProperties: false
                              kpi:
                                type: object
                                properties:
                                  valueSize:
                                    type: integer
                                    minimum: 24
                                    maximum: 72
                                  valueWeight:
                                    type: integer
                                    minimum: 400
                                    maximum: 900
                                  accentBar:
                                    type: boolean
                                required:
                                  - valueSize
                                  - valueWeight
                                  - accentBar
                                additionalProperties: false
                              css:
                                type: string
                                maxLength: 16000
                                description: >-
                                  Extra CSS for the documented .ud-* classes,
                                  sanitized: no @import, no external url()
                            required:
                              - version
                              - name
                              - styleGuide
                              - mode
                              - palette
                              - typography
                              - shape
                              - chart
                              - table
                              - kpi
                              - css
                            additionalProperties: false
                            description: >-
                              What every chart is drawn from: the compiled
                              tokens, style guide and CSS.
                          designSource:
                            type: string
                            enum:
                              - ai
                              - deterministic
                            description: >-
                              ai when a preview run's LLM designed it from the
                              prompt; deterministic for the default look a
                              workspace has before any preview run.
                          designConfigHash:
                            type:
                              - string
                              - 'null'
                          configHash:
                            type: string
                            description: The hash of the current config.
                          designIsStale:
                            type: boolean
                            description: >-
                              True when the config changed after the design was
                              compiled. Run a preview to bring the design up to
                              date.
                          isDefault:
                            type: boolean
                            description: >-
                              True while the theme is still the one every
                              workspace starts with: nothing set, nothing
                              previewed by AI.
                          stylePrompt:
                            type: string
                            description: >-
                              The theme as the standard prompt other generators
                              (canvas designs and presentations) are given.
                              Derived; read only.
                          lockVersion:
                            type:
                              - number
                              - 'null'
                          createdAt:
                            type:
                              - string
                              - 'null'
                          updatedAt:
                            type:
                              - string
                              - 'null'
                        required:
                          - config
                          - design
                          - designSource
                          - designConfigHash
                          - configHash
                          - designIsStale
                          - isDefault
                          - stylePrompt
                          - lockVersion
                          - createdAt
                          - updatedAt
                        additionalProperties: false
                        description: >-
                          The theme this version publishes. The default theme
                          when it published none.
                      defaultView:
                        type:
                          - object
                          - 'null'
                        properties:
                          canvasId:
                            type:
                              - string
                              - 'null'
                            format: uuid
                            pattern: >-
                              ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$
                        required:
                          - canvasId
                        additionalProperties: false
                    required:
                      - version
                      - status
                      - name
                      - description
                      - connectionId
                      - tablesSnapshot
                      - rlsSnapshot
                      - tablesRls
                      - tablesRlsOverrides
                      - createdBy
                      - createdAt
                      - error
                      - prompts
                      - skills
                      - assets
                      - testCases
                      - theme
                      - defaultView
                    additionalProperties: false
                required:
                  - status
                  - data
                additionalProperties: false
        '400':
          description: >-
            GET
            /v2/api/projects/:projectId/workspaces/:workspaceId/versions/:version
            Negative response
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: string
                    const: error
                  error:
                    type: object
                    properties:
                      message:
                        type: string
                      code:
                        type: string
                      details:
                        type: object
                        propertyNames:
                          type: string
                        additionalProperties: {}
                    required:
                      - message
                    additionalProperties: false
                required:
                  - status
                  - error
                additionalProperties: false
      security:
        - APIKEY_2: []
components:
  securitySchemes:
    APIKEY_2:
      type: apiKey
      in: query
      name: apiKey

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.