> ## 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.

# Resolve test run issue

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

Marks an issue in a run's report as fixed and removes it from the report. Unlike [Delete test run issue](/api-reference/delete-test-run-issue), it doesn't hide the issue from future runs, so the next run of the test reports it again if the problem is still there.

The issue is matched by `title` against the run's current report. Every issue with that title is removed. Resolving it again returns the report unchanged, so retrying is safe.

This is limited to 300 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 editor access to the app. Read-only keys and workspace API keys are refused.</Note>



## OpenAPI

````yaml /developers/references/app-management/app-management-openapi.json post /api/apps/{app_id}/testing-agent/analysis/{execution_id}/issues/resolve
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/analysis/{execution_id}/issues/resolve:
    post:
      summary: Resolve test run issue
      description: >-
        <Info>This API is in beta. Endpoints, fields, and behavior may still
        change, so avoid depending on it in production.</Info>


        Marks an issue in a run's report as fixed and removes it from the
        report. Unlike [Delete test run
        issue](/api-reference/delete-test-run-issue), it doesn't hide the issue
        from future runs, so the next run of the test reports it again if the
        problem is still there.


        The issue is matched by `title` against the run's current report. Every
        issue with that title is removed. Resolving it again returns the report
        unchanged, so retrying is safe.


        This is limited to 300 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
        editor access to the app. Read-only keys and workspace API keys are
        refused.</Note>
      operationId: >-
        resolve_analysis_issue_api_apps__app_id__testing_agent_analysis__execution_id__issues_resolve_post
      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
        - name: execution_id
          in: path
          required: true
          schema:
            type: string
            description: ID of the run whose report to change.
            title: Execution Id
          description: ID of the run whose report to change.
          example: 68a1c9b7f0b3d9001a7e5d04
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ResolveIssueRequest'
      responses:
        '200':
          description: The report, without the issue.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TestRunReport'
        '400':
          description: '`title` is empty once punctuation and spaces are removed.'
        '401':
          description: Missing or invalid credentials.
        '403':
          description: >-
            You don't have editor access to this app, the app is blocked, or
            your API key is read-only or a workspace API key.
        '404':
          description: >-
            App, run, or report not found, or the report has no issue with that
            title.
        '409':
          description: Your workspace requires an unlocked SSO session.
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
        '429':
          description: Rate limit exceeded.
components:
  schemas:
    ResolveIssueRequest:
      properties:
        title:
          type: string
          maxLength: 400
          title: Title
          description: >-
            The issue's `title`, as the report shows it. Case and punctuation
            don't matter.
          example: Project doesn't appear after creation
      type: object
      required:
        - title
      title: ResolveIssueRequest
    TestRunReport:
      properties:
        id:
          type: string
          title: Id
          description: ID of the report.
          example: 68a1ca02f0b3d9001a7e5d11
        app_id:
          type: string
          title: App Id
          description: ID of the app.
          example: 6820f3a4e7b91d003c45a1f2
        flow_id:
          type: string
          title: Flow Id
          description: ID of the test.
          example: 68a1c2e4f0b3d9001a7e5c21
        execution_id:
          type: string
          title: Execution Id
          description: ID of the run.
          example: 68a1c9b7f0b3d9001a7e5d04
        flow_goal:
          type: string
          title: Flow Goal
          description: The test's goal when the run started.
          example: >-
            Sign up, create a project called Launch, and check that it appears
            on the dashboard.
        status:
          type: string
          enum:
            - goal_accomplished
            - goal_not_accomplished
            - failed
            - timeout
          title: Status
          description: >-
            The verdict. `failed` and `timeout` mean the report couldn't reach
            one, and `summary` says what happened.
          example: goal_accomplished
        summary:
          type: string
          title: Summary
          description: Plain-language summary of the run.
          example: >-
            The project was created and listed on the dashboard, but only after
            a reload.
        issues:
          items:
            $ref: '#/components/schemas/TestRunIssue'
          type: array
          title: Issues
          description: Problems found during the run. Empty when there were none.
          example:
            - category: functionality
              related_step_number: 3
              severity: warning
              summary: >-
                After saving, the dashboard still shows no projects until the
                page is reloaded.
              title: Project doesn't appear after creation
        created_date:
          type: string
          title: Created Date
          description: When the report was written, as an ISO 8601 UTC timestamp.
          example: '2026-09-28T10:18:39+00:00'
        updated_date:
          type: string
          title: Updated Date
          description: When the report last changed, as an ISO 8601 UTC timestamp.
          example: '2026-09-28T10:18:39+00:00'
      type: object
      required:
        - id
        - app_id
        - flow_id
        - execution_id
        - flow_goal
        - status
        - summary
        - issues
        - created_date
        - updated_date
      title: TestRunReport
      description: The report for a finished run.
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    TestRunIssue:
      properties:
        title:
          type: string
          title: Title
          description: Short name of the problem.
          example: Project doesn't appear after creation
        summary:
          type: string
          title: Summary
          description: What went wrong, as seen from the app's user.
          example: >-
            After saving, the dashboard still shows no projects until the page
            is reloaded.
        severity:
          type: string
          title: Severity
          description: How serious the problem is. Usually `critical`, `warning` or `info`.
          example: warning
        category:
          type: string
          title: Category
          description: >-
            Kind of problem. Usually `ui_interaction`, `form_validation`,
            `navigation`, `content`, `performance`, `accessibility` or
            `functionality`. Base44 also adds advisory issues with
            `seed_data_gap`, `auth_required` or `permission_gap` when the test
            data, sign-in, or the test's role got in the way. Those describe the
            test setup, not a bug in your app.
          example: functionality
        related_step_number:
          anyOf:
            - type: integer
            - type: 'null'
          title: Related Step Number
          description: >-
            Step in the run's `actions` where the problem showed, counting from
            1, or `null`.
          example: 3
      type: object
      required:
        - title
        - summary
        - severity
        - category
        - related_step_number
      title: TestRunIssue
      description: A problem the testing agent found during a run.
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
      type: object
      required:
        - loc
        - msg
        - type
      title: ValidationError
  securitySchemes:
    PersonalAccessTokenAuth:
      type: http
      scheme: bearer
      description: 'Personal access token, sent as `Authorization: Bearer <token>`.'

````

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