# uip tm perf-scenario report

> Syntax and options for `uip tm perf-scenario report`, which renders authored performance reports and comparisons and returns an in-app view URL.

`uip tm perf-scenario report` renders a report you author yourself (markdown or HTML) into a hosted view and returns its in-app view URL. Neither verb generates report content from execution data on its own.

This page is part of the [`uip tm perf-scenario`](./uip-test-manager-perf-scenario.md) command group — see that page for scenario lifecycle verbs (`create`, `get`, `list`, `execute`, `stop`, `list-dry-run-reports`) and shared concepts.

## Synopsis

```text
uip tm perf-scenario report generate --execution-id <uuid> --format <pdf|html> --report-file <path> [--project-key <key>] [--query <expr>]
uip tm perf-scenario report compare --scenario-id <uuid> --execution-ids <uuid...> --report-file <path> [--project-key <key>] [--query <expr>]
```

All verbs honor the [global options](./global-options.md) and the standard [exit codes](./exit-codes.md). Every verb accepts `--log-level <level>` (default `Information`).

:::note
`--project-key` is optional on both verbs here — pass it only when you want the returned link to open the in-app report page instead of a bare view URL.
:::

## uip tm perf-scenario report generate

Render an authored report file and return its in-app view URL.

### Options

| Flag | Description |
|---|---|
| `--execution-id <uuid>` | **Required.** Scenario execution id. |
| `--format <format>` | **Required.** `pdf` or `html`. `pdf` expects `--report-file` to contain markdown; `html` expects it to contain HTML. |
| `--report-file <path>` | **Required.** Path to the authored report content (markdown for `pdf`, HTML for `html`). |
| `--project-key <key>` | Test Manager project key. Optional — when provided, the returned link opens the in-app report page instead of a bare view URL. |
| `--query <expr>` | jq-style filter applied to the output data. |

### Examples

```bash
uip tm perf-scenario report generate \
  --execution-id a1b2c3d4-0000-0000-0000-000000000001 \
  --format pdf \
  --report-file ./report.md \
  --project-key DEMO
```

```bash
uip tm perf-scenario report generate \
  --execution-id a1b2c3d4-0000-0000-0000-000000000001 \
  --format html \
  --report-file ./report.html \
  --project-key DEMO
```

### Data shape

```json
{
  "Code": "PerfReportGenerate",
  "Data": {
    "ViewUrl": "https://.../DEMO/testexecutions/performance-scenario/a1b2c3d4-0000-0000-0000-000000000001/report?format=pdf"
  }
}
```

## uip tm perf-scenario report compare

Render an authored HTML comparison across several executions of the same scenario and return its in-app view URL.

### Options

| Flag | Description |
|---|---|
| `--scenario-id <uuid>` | **Required.** Scenario UUID being compared (not the `SP1:7` key). |
| `--execution-ids <uuid...>` | **Required.** The compared scenario execution ids, oldest to newest, space-separated. |
| `--report-file <path>` | **Required.** File with the authored comparison HTML. |
| `--project-key <key>` | Test Manager project key. Optional — when provided, the returned link opens the in-app report page. |
| `--query <expr>` | jq-style filter applied to the output data. |

### Example

```bash
uip tm perf-scenario report compare \
  --scenario-id 756e8ebf-c227-0000-8a9f-0b49fd934bef \
  --execution-ids a1b2c3d4-0000-0000-0000-000000000001 a1b2c3d4-0000-0000-0000-000000000002 \
  --report-file ./compare.html \
  --project-key DEMO
```

### Data shape

```json
{
  "Code": "PerfReportCompare",
  "Data": {
    "ViewUrl": "https://.../DEMO/testexecutions/performance-scenario/compare?ids=..."
  }
}
```

## Related

- [uip tm perf-scenario](./uip-test-manager-perf-scenario.md) — scenario lifecycle and shared concepts.
- [Execution data](./uip-test-manager-perf-scenario-execution-data.md) — source of the `--execution-id` values used above.

## See also

- [Test Manager overview](./uip-test-manager.md)
