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

# List bundle stages (Stage View)

> Returns one row per stage of each bundle's policy. Non-admin callers see only stages in projects they can access; admins see all. Each row's status (NotStarted, InProgress, Done) reflects the stage's current evidence, approvals, and findings.



## OpenAPI

````yaml /api-specs/cloud/governance-api.json get /bundle-stages
openapi: 3.0.3
info:
  description: Service responsible for managing Domino Governance feature
  title: Domino Governance API
  contact:
    name: Domino Data Lab
    url: https://tickets.dominodatalab.com/hc/en-us
    email: support@dominodatalab.com
  license:
    name: Apache 2.0
    url: http://www.apache.org/licenses/LICENSE-2.0.html
  version: '1.0'
servers:
  - url: https://mycluster.domino.tech/api/governance/v1
    description: >-
      Replace 'mycluster.domino.tech' with your Domino cluster hostname. For
      Domino Cloud customers, that is `your-subdomain`.domino.tech (e.g.,
      acme.domino.tech). For self-hosted deployments, it is the hostname you
      reach the Domino UI at.
security: []
paths:
  /bundle-stages:
    get:
      tags:
        - bundle-stages
      summary: List bundle stages (Stage View)
      description: >-
        Returns one row per stage of each bundle's policy. Non-admin callers see
        only stages in projects they can access; admins see all. Each row's
        status (NotStarted, InProgress, Done) reflects the stage's current
        evidence, approvals, and findings.
      parameters:
        - description: Limit
          name: limit
          in: query
          schema:
            type: integer
        - description: Offset
          name: offset
          in: query
          schema:
            type: integer
        - description: Filter by project ID
          name: project_id
          in: query
          explode: true
          schema:
            type: array
            items:
              type: string
        - description: Filter by primary policy ID
          name: policy_id
          in: query
          explode: true
          schema:
            type: array
            items:
              type: string
        - description: Filter by bundle ID
          name: bundle_id
          in: query
          explode: true
          schema:
            type: array
            items:
              type: string
        - description: Filter by stage name
          name: stage
          in: query
          explode: true
          schema:
            type: array
            items:
              type: string
        - description: Filter by stage status (NotStarted, InProgress, Done)
          name: stage_status
          in: query
          explode: true
          schema:
            type: array
            items:
              type: string
        - description: Filter by assignee ID
          name: assignee_id
          in: query
          explode: true
          schema:
            type: array
            items:
              type: string
        - description: >-
            If true, only rows with no assignee; if false, only rows with an
            assignee
          name: assignee_unassigned
          in: query
          schema:
            type: boolean
        - description: Search bundle or stage name
          name: search
          in: query
          schema:
            type: string
        - description: >-
            Order by (bundle_name, policy_name, stage_order, assignee_name,
            updated_at). Append asc/desc.
          name: order_by
          in: query
          explode: true
          schema:
            type: array
            items:
              type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/server.PaginatedBundleStages'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/server.HTTPError'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/server.HTTPError'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/server.HTTPError'
components:
  schemas:
    server.PaginatedBundleStages:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/guardrails.EnrichedBundleStage'
        meta:
          $ref: '#/components/schemas/guardrails.Meta'
    server.HTTPError:
      type: object
      properties:
        code:
          description: >-
            Code is a stable machine-readable error identifier; absent on most
            errors.
          allOf:
            - $ref: '#/components/schemas/guardrails.ErrorCode'
        message:
          type: string
    guardrails.EnrichedBundleStage:
      type: object
      properties:
        assignee:
          $ref: '#/components/schemas/guardrails.BundleStageAssignee'
        bundleId:
          type: string
        bundleName:
          type: string
        canModify:
          description: >-
            CanModify reports whether the requesting user may reassign this
            stage, i.e. they

            have manage permission on the stage's project. Computed per request,
            not stored.
          type: boolean
        eligibleAssignees:
          description: >-
            EligibleAssignees lists the users this stage may be reassigned to
            (the stage's project

            collaborators, including the owner). Computed per request from a
            governance-scoped

            lookup, not stored.
          type: array
          items:
            $ref: '#/components/schemas/guardrails.BundleStageAssignee'
        isCurrentStage:
          type: boolean
        policyId:
          type: string
        policyName:
          type: string
        policySequentialWorkflowEnabled:
          type: boolean
        policyVersionId:
          type: string
        projectId:
          type: string
        projectName:
          type: string
        stageId:
          type: string
        stageName:
          type: string
        stageOrder:
          type: integer
        stageStatus:
          description: >-
            StageStatus is derived in the service layer from results and
            approvals, not stored.
          allOf:
            - $ref: '#/components/schemas/guardrails.StageStatus'
        updatedAt:
          type: string
    guardrails.Meta:
      type: object
      properties:
        filters:
          type: array
          items:
            $ref: '#/components/schemas/guardrails.Filter'
        pagination:
          $ref: '#/components/schemas/guardrails.Pagination'
        search:
          type: string
        sort:
          type: array
          items:
            $ref: '#/components/schemas/guardrails.Sorter'
    guardrails.ErrorCode:
      type: string
      enum:
        - BUNDLE_REQUIRES_POLICY
      x-enum-varnames:
        - CodeBundleRequiresPolicy
    guardrails.BundleStageAssignee:
      type: object
      required:
        - id
        - name
      properties:
        id:
          type: string
        name:
          type: string
    guardrails.StageStatus:
      type: string
      enum:
        - NotStarted
        - InProgress
        - Done
      x-enum-varnames:
        - NotStartedStageStatus
        - InProgressStageStatus
        - DoneStageStatus
    guardrails.Filter:
      type: object
      properties:
        key:
          type: string
        values:
          type: array
          items:
            type: string
    guardrails.Pagination:
      type: object
      properties:
        limit:
          type: integer
        offset:
          type: integer
        totalCount:
          type: integer
    guardrails.Sorter:
      type: object
      properties:
        key:
          type: string
        order:
          type: string

````

## Related topics

- [Audit Trail Data Glossary](/cloud/platform-capabilities/features/governance/audit-trail/audit-trail-glossary.md)
- [List bundles](/api-reference/bundles/list-bundles.md)
- [Bulk reassign bundle stages](/api-reference/bundle-stages/bulk-reassign-bundle-stages.md)
- [Update bundle stage by ID](/api-reference/bundles/update-bundle-stage-by-id.md)
