---
title: "Get a specific Maestro run"
method: GET
path: "/v1/app-automate/maestro/{project_id}/{id}"
tags: ["App-automate Maestro"]
---

# Get a specific Maestro run

`GET /v1/app-automate/maestro/{project_id}/{id}`

Returns the detail record for a single Maestro run inside a project, including capability used, status, and per-flow results.

## Path parameters

- `project_id` integer, required
- `id` integer, required

## Response `200`

Get a specific Maestro run

- TestingbotEntitiesMaestroRunDetail — Testingbot_Entities_MaestroRunDetail model
  - `id` integer, required — Unique numeric Maestro run ID.
  - `status` string, required — WAITING, READY, DONE, FAILED or CANCELLED, computed from the newest attempt of each flow.
  - `success` integer, required — 1 when every flow passed, 0 otherwise.
  - `capabilities` object, required — Capabilities the run was started with.
  - `options` object, required — Maestro options the run was started with; `{}` when none were given.
  - `created_at` string, date-time, required
  - `completed` boolean, required — Whether every run in the parent project has reached a terminal state.
  - `assets_synced` boolean, required — Whether asset processing has finished for every flow in the run.
  - `meta` object, required — Metadata supplied at submission. Only present when the run carries any.
  - `report` string, required — JUnit XML for the run. Only present once a report exists.
  - `test` TestingbotEntitiesAppAutomateSession, required
    - `sessionId` string, required — Session ID, usable against the /v1/tests endpoints.
    - `environment` TestingbotEntitiesAppAutomateSessionEnvironment, required
      - `name` string, required — Browser or platform name.
      - `os` string, required — Full OS name.
      - `version` string, required — OS or browser version.
  - `assets` TestingbotEntitiesAppAutomateAssets, required
    - `logs` string[], required — Signed URLs to the collected log files.
    - `video` string, required — Signed URL to the recording, or false when video was disabled.
    - `screenshots` string[], required — Signed URLs to captured screenshots. Only present when the run produced any.
  - `environment` TestingbotEntitiesMaestroRunEnvironment, required
    - `device` string, required — Device the run was allocated.
    - `name` string, required — Full OS name.
    - `version` string, required — OS version.
  - `flows` TestingbotEntitiesMaestroFlowResult[], required — Every flow attempt, including retries. Only present once the run has flows.
    - `id` integer, required — Unique numeric flow-attempt ID.
    - `maestro_flow_id` integer, required — The flow this attempt ran.
    - `status` string, required — WAITING, READY, DONE, FAILED or CANCELLED.
    - `name` string, required — Flow name(s) covered by this attempt.
    - `requested_at` string, date-time, required
    - `test_case_id` integer, required — Test session backing this attempt. Only present once one has been allocated.
    - `completed_at` string, date-time, required — Only present once the attempt has finished.
    - `report` string, required — JUnit XML for this attempt. Only present once a report exists.
    - `shard_index` integer, required — Shard this attempt covered. Only present on a sharded run.
    - `success` integer, required — 1 when the flow passed. Only present on a terminal status.
    - `error_messages` string[], required — Failure detail. Only present on a terminal status.
    - `test` TestingbotEntitiesAppAutomateSession, required
      - `sessionId` string, required — Session ID, usable against the /v1/tests endpoints.
      - `environment` TestingbotEntitiesAppAutomateSessionEnvironment, required
        - `name` string, required — Browser or platform name.
        - `os` string, required — Full OS name.
        - `version` string, required — OS or browser version.
    - `assets` TestingbotEntitiesAppAutomateAssets, required
      - `logs` string[], required — Signed URLs to the collected log files.
      - `video` string, required — Signed URL to the recording, or false when video was disabled.
      - `screenshots` string[], required — Signed URLs to captured screenshots. Only present when the run produced any.
    - `assets_synced` boolean, required — Whether this attempt's assets have finished processing.
  - `error_messages` string[], required — Run-level failures from the newest attempt of each flow, so a failure a retry has since fixed does not linger. Only present when the latest attempts reported any.

---

[API](https://skmtc.net/testingbot/apis/testingbot-rest-api.md) · [All operations](https://skmtc.net/testingbot/apis/testingbot-rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/testingbot/testingbot-rest-api/versions/8f493cca8f92/schema)
