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

# List workbooks accessible to an embed tenant

**🔒 Admin only.** Requires administrator privileges — the authenticated principal (API key, embed JWT, or any bearer token) must belong to a user with the admin role.

Return every workbook the named embed tenant can access in this deployment. Effective access includes workbooks shared directly with the tenant, workbooks shared with all embed users, and workbooks inherited from shared folders. Supports `first`/`after` cursor pagination.

Filter workbooks by how access is granted:

* `tenant`: the workbook itself is explicitly shared with the named embed tenant. Excludes workbooks available only through the all-embed-users group or a shared folder.
* `allEmbedUsers`: the workbook itself is explicitly shared with the built-in all-embed-users group, making it available to every embed tenant. Excludes tenant-specific direct shares and folder-inherited access.
* `folder`: access is inherited because the workbook is inside a shared folder or any of its descendant folders. The folder may be shared specifically with the named tenant or with all embed users.

Omit this parameter to return the union of all three access sources. A workbook can match more than one source.


## OpenAPI

````yaml /api-reference/api.yaml get /api/v1/deployments/{deploymentId}/embed-tenants/{embedTenantName}/workbooks
openapi: 3.1.0
info:
  title: Cube Platform API
  version: 1.0.0
  description: >-
    Programmatically manage Cube: deployments and everything scoped to them

    (environments, folders, reports, workbooks, notifications, workspace, and
    agents),

    plus account-level users, groups, policies, embedding, and AI settings.
    Data-model

    authoring, dev mode, branches, and uploads live under /build/api/v1 — same
    host and

    token, routed to the build pods.
servers:
  - url: https://{tenant}.cubecloud.dev
    description: Your tenant host. Replace the whole host if you use a custom domain.
    variables:
      tenant:
        default: your-tenant
        description: Your Cube tenant subdomain
security:
  - bearerAuth: []
tags:
  - name: Deployments
  - name: Deployment Creation
  - name: Environments
  - name: Env Variables
  - name: Regions
  - name: Data Model
  - name: Data Model Uploads
  - name: GitHub
  - name: GitHub Connection
  - name: dbt Sync
  - name: Databricks Metric View Publication
  - name: Databricks Metric View Integration
  - name: Folders
  - name: Reports
  - name: Workbooks
  - name: Dashboard Exports
  - name: Notifications
  - name: Workspace
  - name: Users
  - name: Users Admin
  - name: User Attributes
  - name: User Attribute Values
  - name: Tenant Settings
  - name: OAuth Integrations
  - name: User OAuth Tokens
  - name: OIDC Token Configs
  - name: App Theme
  - name: Embed
  - name: Embed Tenants
  - name: Dashboard Embed Access
  - name: Usage Analytics
  - name: OpenAPI Spec
paths:
  /api/v1/deployments/{deploymentId}/embed-tenants/{embedTenantName}/workbooks:
    get:
      tags:
        - Dashboard Embed Access
      summary: List workbooks accessible to an embed tenant
      operationId: listEmbedTenantWorkbooks
      parameters:
        - in: path
          name: deploymentId
          required: true
          schema:
            type: number
        - in: path
          name: embedTenantName
          required: true
          schema:
            type: string
        - in: query
          name: accessSource
          schema:
            oneOf:
              - $ref: '#/components/schemas/EmbedTenantWorkbooksListQueryAccessSource'
              - type: 'null'
        - in: query
          name: after
          schema:
            type: string
        - in: query
          name: first
          schema:
            minimum: 1
            type: integer
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EmbedTenantWorkbooksListResponse'
          description: ''
components:
  schemas:
    EmbedTenantWorkbooksListQueryAccessSource:
      enum:
        - tenant
        - allEmbedUsers
        - folder
      type: string
    EmbedTenantWorkbooksListResponse:
      properties:
        items:
          items:
            $ref: '#/components/schemas/Workbook'
          type: array
        pageInfo:
          $ref: '#/components/schemas/PageInfo'
      required:
        - items
        - pageInfo
      type: object
    Workbook:
      properties:
        calculatedFields:
          type: object
        createdAt:
          oneOf:
            - format: date
              type: string
            - format: date-time
              type: string
        createdBy:
          type: integer
        dashboardDraft:
          oneOf:
            - $ref: '#/components/schemas/DashboardConfig'
            - type: 'null'
        dashboardPublished:
          oneOf:
            - $ref: '#/components/schemas/DashboardConfig'
            - type: 'null'
        deploymentId:
          type: integer
        folderId:
          oneOf:
            - type: number
            - type: 'null'
        folderPath:
          items:
            $ref: '#/components/schemas/WorkspaceFolderPathEntry'
          type: array
        id:
          type: integer
        isFavorite:
          oneOf:
            - type: boolean
            - type: 'null'
        meta:
          additionalProperties: true
          type: object
        name:
          type: string
        publishedDashboard:
          oneOf:
            - $ref: '#/components/schemas/Dashboard'
            - type: 'null'
        slug:
          oneOf:
            - type: string
            - type: 'null'
        type:
          $ref: '#/components/schemas/WorkbookDtoType'
        updatedAt:
          oneOf:
            - format: date
              type: string
            - format: date-time
              type: string
        user:
          oneOf:
            - $ref: '#/components/schemas/ResourceOwner'
            - type: 'null'
        userId:
          oneOf:
            - type: number
            - type: 'null'
      required:
        - name
        - meta
        - calculatedFields
        - id
        - deploymentId
        - createdAt
        - updatedAt
        - type
      type: object
    PageInfo:
      properties:
        endCursor:
          oneOf:
            - type: string
            - type: 'null'
        hasNextPage:
          type: boolean
        hasPreviousPage:
          type: boolean
        startCursor:
          oneOf:
            - type: string
            - type: 'null'
      required:
        - hasNextPage
        - hasPreviousPage
      type: object
    DashboardConfig:
      properties:
        app:
          oneOf:
            - $ref: '#/components/schemas/DashboardAppSource'
            - type: 'null'
        description:
          oneOf:
            - type: string
            - type: 'null'
        kind:
          oneOf:
            - $ref: '#/components/schemas/DashboardConfigKind'
            - type: 'null'
        layout:
          oneOf:
            - $ref: '#/components/schemas/DashboardLayout'
            - type: 'null'
        settings:
          oneOf:
            - additionalProperties: true
              type: object
            - type: 'null'
        theme:
          oneOf:
            - additionalProperties: true
              type: object
            - type: 'null'
        title:
          oneOf:
            - type: string
            - type: 'null'
        widgets:
          oneOf:
            - items:
                $ref: '#/components/schemas/DashboardWidget'
              type: array
            - type: 'null'
      type: object
    WorkspaceFolderPathEntry:
      properties:
        id:
          type: integer
        name:
          type: string
      required:
        - id
        - name
      type: object
    Dashboard:
      properties:
        allowEmbed:
          type: boolean
        config:
          $ref: '#/components/schemas/DashboardConfig'
        createdBy:
          oneOf:
            - type: integer
            - type: 'null'
        deploymentId:
          type: integer
        description:
          oneOf:
            - type: string
            - type: 'null'
        fromSharedWorkspace:
          oneOf:
            - type: boolean
            - type: 'null'
        id:
          type: integer
        publicId:
          type: string
        reportSnapshots:
          items:
            $ref: '#/components/schemas/ReportSnapshot'
          type: array
        restrictDataDownload:
          oneOf:
            - type: boolean
            - type: 'null'
        status:
          $ref: '#/components/schemas/DashboardDtoStatus'
        title:
          oneOf:
            - type: string
            - type: 'null'
        useBoardDashboards:
          oneOf:
            - type: boolean
            - type: 'null'
        versionId:
          type: integer
        versionNumber:
          type: integer
        workbookId:
          type: integer
      required:
        - id
        - publicId
        - deploymentId
        - workbookId
        - status
        - allowEmbed
        - config
        - versionNumber
        - versionId
        - reportSnapshots
      type: object
    WorkbookDtoType:
      enum:
        - FOLDER
        - WORKBOOK
        - REPORT
      type: string
    ResourceOwner:
      properties:
        email:
          type: string
        firstName:
          oneOf:
            - type: string
            - type: 'null'
        id:
          type: integer
        picture:
          oneOf:
            - type: string
            - type: 'null'
      required:
        - id
        - email
      type: object
    DashboardAppSource:
      properties:
        entry:
          oneOf:
            - maxLength: 255
              type: string
            - type: 'null'
        files:
          oneOf:
            - type: object
              additionalProperties:
                type: string
            - type: 'null'
        html:
          oneOf:
            - type: string
            - type: 'null'
        manifest:
          oneOf:
            - $ref: '#/components/schemas/DashboardAppManifest'
            - type: 'null'
      type: object
    DashboardConfigKind:
      enum:
        - CLASSIC
        - APP
      type: string
    DashboardLayout:
      properties:
        breakpoints:
          oneOf:
            - $ref: '#/components/schemas/DashboardBreakpoints'
            - type: 'null'
        cols:
          oneOf:
            - $ref: '#/components/schemas/DashboardBreakpointCols'
            - type: 'null'
        containerPadding:
          oneOf:
            - items:
                type: integer
              type: array
            - type: 'null'
        margin:
          oneOf:
            - items:
                type: integer
              type: array
            - type: 'null'
        rowHeight:
          oneOf:
            - type: integer
            - type: 'null'
      type: object
    DashboardWidget:
      properties:
        config:
          oneOf:
            - additionalProperties: true
              type: object
            - type: 'null'
        id:
          type: string
        position:
          $ref: '#/components/schemas/DashboardWidgetPosition'
        responsiveLayouts:
          oneOf:
            - $ref: '#/components/schemas/DashboardResponsiveLayouts'
            - type: 'null'
        style:
          oneOf:
            - additionalProperties: true
              type: object
            - type: 'null'
        type:
          $ref: '#/components/schemas/DashboardWidgetDtoType'
      required:
        - id
        - type
        - position
      type: object
    ReportSnapshot:
      properties:
        description:
          oneOf:
            - type: string
            - type: 'null'
        fillMissingRows:
          oneOf:
            - $ref: '#/components/schemas/FillMissingRows'
            - type: 'null'
        id:
          type: integer
        isSourceReport:
          oneOf:
            - type: boolean
            - type: 'null'
        kind:
          oneOf:
            - $ref: '#/components/schemas/ReportSnapshotDtoKind'
            - type: 'null'
        meta:
          oneOf:
            - additionalProperties: true
              type: object
            - type: 'null'
        name:
          oneOf:
            - type: string
            - type: 'null'
        periodComparisons:
          oneOf:
            - items:
                $ref: '#/components/schemas/PeriodComparison'
              type: array
            - type: 'null'
        preferences:
          oneOf:
            - $ref: '#/components/schemas/ReportSnapshotPreferences'
            - type: 'null'
        pythonCode:
          oneOf:
            - type: string
            - type: 'null'
        reportId:
          type: integer
        spec:
          oneOf:
            - oneOf:
                - type: string
                - type: object
            - type: 'null'
        sqlQuery:
          oneOf:
            - type: string
            - type: 'null'
        title:
          oneOf:
            - type: string
            - type: 'null'
        versionNumber:
          type: integer
      required:
        - id
        - reportId
        - versionNumber
      type: object
    DashboardDtoStatus:
      enum:
        - draft
        - published
        - archived
      type: string
    DashboardAppManifest:
      properties:
        dependencies:
          oneOf:
            - type: object
              additionalProperties:
                type: string
            - type: 'null'
        version:
          oneOf:
            - type: integer
            - type: 'null'
      type: object
    DashboardBreakpoints:
      properties:
        lg:
          oneOf:
            - type: integer
            - type: 'null'
        md:
          oneOf:
            - type: integer
            - type: 'null'
        sm:
          oneOf:
            - type: integer
            - type: 'null'
        xs:
          oneOf:
            - type: integer
            - type: 'null'
        xxs:
          oneOf:
            - type: integer
            - type: 'null'
      title: DashboardBreakpointsDto
      type: object
    DashboardBreakpointCols:
      properties:
        lg:
          oneOf:
            - type: integer
            - type: 'null'
        md:
          oneOf:
            - type: integer
            - type: 'null'
        sm:
          oneOf:
            - type: integer
            - type: 'null'
        xs:
          oneOf:
            - type: integer
            - type: 'null'
        xxs:
          oneOf:
            - type: integer
            - type: 'null'
      title: DashboardBreakpointColsDto
      type: object
    DashboardWidgetPosition:
      properties:
        h:
          type: integer
        w:
          type: integer
        x:
          type: integer
        'y':
          type: integer
      required:
        - x
        - 'y'
        - w
        - h
      type: object
    DashboardResponsiveLayouts:
      properties:
        lg:
          oneOf:
            - $ref: '#/components/schemas/DashboardWidgetPosition'
            - type: 'null'
        md:
          oneOf:
            - $ref: '#/components/schemas/DashboardWidgetPosition'
            - type: 'null'
        sm:
          oneOf:
            - $ref: '#/components/schemas/DashboardWidgetPosition'
            - type: 'null'
        xs:
          oneOf:
            - $ref: '#/components/schemas/DashboardWidgetPosition'
            - type: 'null'
        xxs:
          oneOf:
            - $ref: '#/components/schemas/DashboardWidgetPosition'
            - type: 'null'
      type: object
    DashboardWidgetDtoType:
      enum:
        - CHART
        - TEXT
        - FILTER
        - AI
        - TIME_GRAIN
        - FIELD
        - PARENT
        - SPACER
        - DIVIDER
        - CONTAINER
      type: string
    FillMissingRows:
      properties:
        excludedDimensions:
          oneOf:
            - items:
                type: string
              type: array
            - type: 'null'
        member:
          type: string
      required:
        - member
      type: object
    ReportSnapshotDtoKind:
      enum:
        - vega
        - table
        - kpi
        - html
        - map
        - sankey
      type: string
    PeriodComparison:
      properties:
        measure:
          type: string
        offset:
          $ref: '#/components/schemas/PeriodComparisonOffset'
        outputs:
          oneOf:
            - items:
                type: string
              type: array
            - type: 'null'
        timeDimension:
          type: string
      required:
        - measure
        - timeDimension
        - offset
      type: object
    ReportSnapshotPreferences:
      properties:
        columnFormats:
          oneOf:
            - type: object
              additionalProperties:
                $ref: '#/components/schemas/ColumnFormatOverride'
            - type: 'null'
      type: object
    PeriodComparisonOffset:
      properties:
        amount:
          type: integer
        unit:
          type: string
      required:
        - amount
        - unit
      type: object
    ColumnFormatOverride:
      properties:
        decimalPlaces:
          oneOf:
            - type: integer
            - type: 'null'
        type:
          $ref: '#/components/schemas/ColumnFormatOverrideDtoType'
      required:
        - type
      type: object
    ColumnFormatOverrideDtoType:
      enum:
        - currency
        - percent
        - number
      type: string
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: 'Token authentication. Send `Authorization: Bearer <YOUR_TOKEN>`.'

````