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

> ## Agent Instructions
> Internal links on these pages omit the .md extension. Append .md to a docs page URL, or send an Accept: text/markdown header, to get that page as markdown.

# List tests

> <Info>This API is in beta. Endpoints, fields, and behavior may still change, so avoid depending on it in production.</Info>

Returns every test in the app, newest first. An app has at most 250 tests, so the list is never paged.

This is limited to 6000 requests per minute per caller for each app. Some workspaces have a different limit.

<Note>This endpoint accepts a personal API key belonging to a user with access to the app, including a read-only key. Workspace API keys are not accepted.</Note>



## OpenAPI

````yaml /developers/references/app-management/app-management-openapi.json get /api/apps/{app_id}/testing-agent/flows
openapi: 3.1.0
info:
  title: Base44 App Management API
  version: 1.0.0
servers:
  - url: https://app.base44.com
security:
  - PersonalAccessTokenAuth: []
paths:
  /api/apps/{app_id}/testing-agent/flows:
    get:
      summary: List tests
      description: >-
        <Info>This API is in beta. Endpoints, fields, and behavior may still
        change, so avoid depending on it in production.</Info>


        Returns every test in the app, newest first. An app has at most 250
        tests, so the list is never paged.


        This is limited to 6000 requests per minute per caller for each app.
        Some workspaces have a different limit.


        <Note>This endpoint accepts a personal API key belonging to a user with
        access to the app, including a read-only key. Workspace API keys are not
        accepted.</Note>
      operationId: list_flows_api_apps__app_id__testing_agent_flows_get
      parameters:
        - name: app_id
          in: path
          required: true
          schema:
            type: string
            description: ID of the app.
            title: App Id
          description: ID of the app.
          example: 6820f3a4e7b91d003c45a1f2
      responses:
        '200':
          description: The app's tests.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/FlowResponse'
                title: Tests
        '401':
          description: Missing or invalid credentials.
        '403':
          description: >-
            You don't have access to this app, the app is blocked, or you used a
            workspace API key.
        '404':
          description: App not found.
        '409':
          description: Your workspace requires an unlocked SSO session.
        '429':
          description: Rate limit exceeded.
      security:
        - PersonalAccessTokenAuth:
            - read_only
components:
  schemas:
    FlowResponse:
      properties:
        id:
          type: string
          title: Id
          description: ID of the test.
          example: 68a1c2e4f0b3d9001a7e5c21
        app_id:
          type: string
          title: App Id
          description: ID of the app the test belongs to.
          example: 6820f3a4e7b91d003c45a1f2
        name:
          type: string
          title: Name
          description: Short name of the test.
          example: Create a project
        goal:
          type: string
          title: Goal
          description: What the testing agent tries to do, in plain language.
          example: >-
            Sign up, create a project called Launch, and check that it appears
            on the dashboard.
        role:
          anyOf:
            - type: string
            - type: 'null'
          title: Role
          description: >-
            Role set on the test, or `null` when none is set. A test without one
            can still run as a role its name or goal names. The run's
            `flow_role` shows the role actually used.
          example: admin
        source:
          type: string
          title: Source
          description: >-
            `manual` for a test you created, `app_context` for one Base44
            generated from the app.
          example: manual
        revision:
          type: integer
          title: Revision
          description: Starts at 1 and goes up each time the test is edited.
          example: 1
        created_date:
          type: string
          title: Created Date
          description: When the test was created, as an ISO 8601 UTC timestamp.
          example: '2026-09-28T10:15:00+00:00'
        updated_date:
          type: string
          title: Updated Date
          description: When the test last changed, as an ISO 8601 UTC timestamp.
          example: '2026-09-28T10:15:00+00:00'
      type: object
      required:
        - id
        - app_id
        - name
        - goal
        - source
        - revision
        - created_date
        - updated_date
      title: FlowResponse
      description: 'A test: a goal the testing agent tries to accomplish in a browser.'
  securitySchemes:
    PersonalAccessTokenAuth:
      type: http
      scheme: bearer
      description: >-
        Personal access token, sent as `Authorization: Bearer <token>`. Each
        operation lists the permission it needs: `read_only` or `full_access`. A
        full-access token can call every operation. A read-only token can call
        only the operations that list `read_only`; anything else returns 403
        `read_only_credential_route_not_allowed`.

````

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