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

# Get apiv1projects homepagebuilder



## OpenAPI

````yaml https://raw.githubusercontent.com/lightdash/lightdash/refs/heads/main/packages/backend/src/generated/swagger.json get /api/v1/projects/{projectUuid}/homepage/builder
openapi: 3.0.0
info:
  title: Lightdash API
  version: 0.3392.0
  description: >
    Open API documentation for all public Lightdash API endpoints. #
    Authentication Before you get started, you might need to create a Personal
    Access Token to authenticate via the API. You can create a token by
    following this guide: https://docs.lightdash.com/references/personal_tokens
  license:
    name: MIT
  contact:
    name: Lightdash Support
    email: support@lightdash.com
    url: https://docs.lightdash.com/help-and-contact/contact/contact_info/
servers:
  - url: /
security: []
tags:
  - name: My Account
    description: These routes allow users to manage their own user account.
  - name: Organizations
    description: >-
      Each user is a member of a single organization. These routes allow users
      to manage their organization. Most actions are only available to admin
      users.
  - name: Projects
    description: >-
      Projects belong to a single organization. These routes allow users to
      manage their projects, browse content, and execute queries. Users inside
      an organization might have access to a project from an organization-level
      role or they might be granted access to a project directly.
  - name: Spaces
    description: >-
      Spaces allow you to organize charts and dashboards within a project. They
      also allow granular access to content by allowing you to create private
      spaces, which are only accessible to the creator and admins.
  - name: Roles & Permissions
    description: >-
      These routes allow users to manage roles and permissions for their
      organization.
    externalDocs:
      url: https://docs.lightdash.com/references/roles
  - name: Query
    description: >-
      These routes allow users to execute and manage queries against their data
      warehouse. This includes metric queries, SQL queries, and retrieving query
      results.
paths:
  /api/v1/projects/{projectUuid}/homepage/builder:
    get:
      tags:
        - Homepage
      operationId: getProjectHomepageForBuilder
      parameters:
        - in: path
          name: projectUuid
          required: true
          schema:
            $ref: '#/components/schemas/UUID'
        - in: query
          name: homepageUuid
          required: false
          schema:
            $ref: '#/components/schemas/UUID'
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiProjectHomepageOrNullResponse'
        default:
          description: Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorPayload'
      security: []
components:
  schemas:
    UUID:
      type: string
      format: uuid
      description: |-
        Stringified UUIDv4.
        See [RFC 4112](https://tools.ietf.org/html/rfc4122)
      pattern: >-
        [0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-4[0-9A-Fa-f]{3}-[89ABab][0-9A-Fa-f]{3}-[0-9A-Fa-f]{12}
    ApiProjectHomepageOrNullResponse:
      $ref: '#/components/schemas/ApiSuccess_ProjectHomepage-or-null_'
    ApiErrorPayload:
      properties:
        error:
          properties:
            data:
              $ref: '#/components/schemas/AnyType'
              description: Optional data containing details of the error
            message:
              type: string
              description: A friendly message summarising the error
            name:
              type: string
              description: Unique name for the type of error
            statusCode:
              type: number
              format: integer
              description: HTTP status code
          required:
            - name
            - statusCode
          type: object
        status:
          type: string
          enum:
            - error
          nullable: false
      required:
        - error
        - status
      type: object
      description: |-
        The Error object is returned from the api any time there is an error.
        The message contains
    ApiSuccess_ProjectHomepage-or-null_:
      properties:
        results:
          allOf:
            - $ref: '#/components/schemas/ProjectHomepage'
          nullable: true
        status:
          type: string
          enum:
            - ok
          nullable: false
      required:
        - results
        - status
      type: object
    AnyType:
      description: |-
        This AnyType is an alias for any
        The goal is to make it easier to identify any type in the codebase
        without having to eslint-disable all the time
        These are only used on legacy `any` types, don't use it for new types.
        This is added on a separate file to avoid circular dependencies.
    ProjectHomepage:
      properties:
        updatedAt:
          type: string
          format: date-time
        createdAt:
          type: string
          format: date-time
        createdByUserUuid:
          type: string
          nullable: true
        allowPersonal:
          type: boolean
        isDefault:
          type: boolean
        publishedConfig:
          allOf:
            - $ref: '#/components/schemas/HomepageConfig'
          nullable: true
        draftConfig:
          $ref: '#/components/schemas/HomepageConfig'
        name:
          type: string
        projectUuid:
          type: string
        homepageUuid:
          type: string
      required:
        - updatedAt
        - createdAt
        - createdByUserUuid
        - allowPersonal
        - isDefault
        - publishedConfig
        - draftConfig
        - name
        - projectUuid
        - homepageUuid
      type: object
    HomepageConfig:
      properties:
        rows:
          items:
            $ref: '#/components/schemas/HomepageRow'
          type: array
        version:
          type: number
          enum:
            - 1
          nullable: false
      required:
        - rows
        - version
      type: object
    HomepageRow:
      properties:
        blocks:
          items:
            $ref: '#/components/schemas/HomepageBlock'
          type: array
        id:
          type: string
      required:
        - blocks
        - id
      type: object
    HomepageBlock:
      anyOf:
        - $ref: '#/components/schemas/HomepageMarkdownBlock'
        - $ref: '#/components/schemas/HomepageHeroBlock'
        - $ref: '#/components/schemas/HomepageAskAiHeroBlock'
        - $ref: '#/components/schemas/HomepageCollectionBlock'
        - $ref: '#/components/schemas/HomepageResourcesBlock'
        - $ref: '#/components/schemas/HomepageAnnouncementsBlock'
        - $ref: '#/components/schemas/HomepageMetricsBlock'
        - $ref: '#/components/schemas/HomepageQuickActionsBlock'
        - $ref: '#/components/schemas/HomepageFavoritesBlock'
        - $ref: '#/components/schemas/HomepageRecentBlock'
    HomepageMarkdownBlock:
      properties:
        config:
          properties:
            content:
              type: string
          required:
            - content
          type: object
        type:
          type: string
          enum:
            - markdown
          nullable: false
        id:
          type: string
      required:
        - config
        - type
        - id
      type: object
    HomepageHeroBlock:
      properties:
        config:
          properties:
            subtitle:
              type: string
            title:
              type: string
          required:
            - subtitle
            - title
          type: object
        type:
          type: string
          enum:
            - hero
          nullable: false
        id:
          type: string
      required:
        - config
        - type
        - id
      type: object
    HomepageAskAiHeroBlock:
      properties:
        config:
          properties:
            showGreeting:
              type: boolean
          required:
            - showGreeting
          type: object
        type:
          type: string
          enum:
            - ask-ai-hero
          nullable: false
        id:
          type: string
      required:
        - config
        - type
        - id
      type: object
    HomepageCollectionBlock:
      properties:
        config:
          properties:
            items:
              items:
                $ref: '#/components/schemas/HomepageCollectionItemRef'
              type: array
            title:
              type: string
          required:
            - items
            - title
          type: object
        type:
          type: string
          enum:
            - collection
          nullable: false
        id:
          type: string
      required:
        - config
        - type
        - id
      type: object
    HomepageResourcesBlock:
      properties:
        config:
          properties:
            items:
              items:
                $ref: '#/components/schemas/HomepageResourceItem'
              type: array
            title:
              type: string
          required:
            - items
            - title
          type: object
        type:
          type: string
          enum:
            - resources
          nullable: false
        id:
          type: string
      required:
        - config
        - type
        - id
      type: object
    HomepageAnnouncementsBlock:
      properties:
        config:
          properties:
            items:
              items:
                $ref: '#/components/schemas/HomepageAnnouncementItem'
              type: array
            title:
              type: string
          required:
            - items
            - title
          type: object
        type:
          type: string
          enum:
            - announcements
          nullable: false
        id:
          type: string
      required:
        - config
        - type
        - id
      type: object
    HomepageMetricsBlock:
      properties:
        config:
          properties:
            items:
              items:
                $ref: '#/components/schemas/HomepageMetricRef'
              type: array
            title:
              type: string
          required:
            - items
            - title
          type: object
        type:
          type: string
          enum:
            - metrics
          nullable: false
        id:
          type: string
      required:
        - config
        - type
        - id
      type: object
    HomepageQuickActionsBlock:
      properties:
        config:
          properties:
            actions:
              items:
                $ref: '#/components/schemas/HomepageQuickAction'
              type: array
          required:
            - actions
          type: object
        type:
          type: string
          enum:
            - quick-actions
          nullable: false
        id:
          type: string
      required:
        - config
        - type
        - id
      type: object
    HomepageFavoritesBlock:
      properties:
        config:
          properties:
            title:
              type: string
          required:
            - title
          type: object
        type:
          type: string
          enum:
            - favorites
          nullable: false
        id:
          type: string
      required:
        - config
        - type
        - id
      type: object
    HomepageRecentBlock:
      properties:
        config:
          properties:
            title:
              type: string
          required:
            - title
          type: object
        type:
          type: string
          enum:
            - recent
          nullable: false
        id:
          type: string
      required:
        - config
        - type
        - id
      type: object
    HomepageCollectionItemRef:
      properties:
        uuid:
          type: string
        contentType:
          type: string
          enum:
            - chart
            - dashboard
      required:
        - uuid
        - contentType
      type: object
    HomepageResourceItem:
      properties:
        kind:
          $ref: '#/components/schemas/HomepageResourceKind'
        url:
          type: string
        title:
          type: string
      required:
        - kind
        - url
        - title
      type: object
    HomepageAnnouncementItem:
      properties:
        author:
          type: string
        date:
          type: string
        text:
          type: string
      required:
        - author
        - date
        - text
      type: object
    HomepageMetricRef:
      properties:
        label:
          type: string
        metricName:
          type: string
        tableName:
          type: string
      required:
        - label
        - metricName
        - tableName
      type: object
    HomepageQuickAction:
      anyOf:
        - properties:
            type:
              type: string
              enum:
                - ask-ai
              nullable: false
          required:
            - type
          type: object
        - properties:
            type:
              type: string
              enum:
                - run-query
              nullable: false
          required:
            - type
          type: object
        - properties:
            type:
              type: string
              enum:
                - browse-dashboards
              nullable: false
          required:
            - type
          type: object
        - properties:
            type:
              type: string
              enum:
                - browse-spaces
              nullable: false
          required:
            - type
          type: object
        - properties:
            label:
              type: string
            dashboardUuid:
              type: string
            type:
              type: string
              enum:
                - dashboard
              nullable: false
          required:
            - label
            - dashboardUuid
            - type
          type: object
    HomepageResourceKind:
      type: string
      enum:
        - video
        - doc
        - link

````