# Report a technical issue button

> Diagnostic feedback tool in Action Center's Document Validation and Document Classification tasks, the data each report sends, how values are anonymized, and who can access them.

The **Report a technical issue** button is a diagnostic feedback tool available in two Action Center task types, a Document Validation task or a Document Classification one, and in any app that embeds the same validation or classification screen. It lets a user report a technical error, a crash, or unexpected screen behavior that is blocking their work, and send it to the UiPath Document Understanding engineering team without leaving the screen. It is available only in Automation Cloud, and it does not appear in coded app tasks.

Both task types use the same button and the same dialog. They differ in one respect only: the data each one can attach, because validation and classification produce different data structures. Everything else on this page applies to both.

## Finding the button

The button floats above the document and can be dragged to any position, so it does not have to cover the content being reviewed. Its position is remembered for the next visit.

![The Report a technical issue button, with the tooltip explaining that the button can be dragged anywhere on screen](https://dev-assets.cms.uipath.com/assets/images/action-center/report-an-issue-button-45d3868f.webp)

### First visit

On a user's first visit, a callout introduces the button and points out that it can be moved. Dismissing the callout with **Got it** stops it from appearing again.

![The first-visit callout above the Report a technical issue button, introducing the button and noting that it can be dragged anywhere on screen](https://dev-assets.cms.uipath.com/assets/images/action-center/report-an-issue-cs-onboarding-4550449d.webp)

## What the dialog contains

Selecting the button opens a dialog with three independent parts: a description of the problem, an optional diagnostic data attachment, and an optional version rollback. Each part is explained in the following sections.

![The Report a technical issue dialog, showing the description field, the selected data checkbox, and the cleared Try a previous version checkbox](https://dev-assets.cms.uipath.com/assets/images/action-center/report-an-issue-dialog-ab62469b.webp)

### Describing the problem

The **What went wrong?** field holds a free-text description of the problem. It is the only required part of the dialog: until it contains text, **Send report** stays unavailable. The dialog is scoped to technical problems, meaning an error, a crash, or unexpected screen behavior that blocks the user's work.

This field is sent exactly as it is typed. Unlike the data described in the following section, it is not obfuscated, aliased, or filtered in any way.

:::warning
Anything typed into the description is transmitted verbatim. Descriptions of the problem and the steps that led to it are what the engineering team needs.
:::

### Sending the results and taxonomy

The data checkbox is selected by default.

- In a document validation task, **Send the Extraction Result and Taxonomy**: the taxonomy contains the list of document types, each with its fields and field types. The extraction result is the information being validated: which fields were found, the confidence scores, and where on the page each value was located.
- In a document classification task, **Send the Classification Result and Taxonomy**: the taxonomy contains the list of document types. The classification result is the information being validated: which document type each set of pages was assigned to.

![The data checkbox in a document classification task, labelled Send the Classification Result and Taxonomy](https://dev-assets.cms.uipath.com/assets/images/action-center/report-an-issue-cs-dialog-8144abf9.webp)

In both cases, the document file itself is never captured, and no text read from it is included. Both structures reflect the state as the screen loaded them, so later changes are not sent.

When **Send report** is selected, the screen reloads the task as it was when it opened. This happens whenever the data checkbox is left selected, or a version is chosen in **Try a previous version**.

:::warning
The reload happens without a confirmation prompt, and any values changed in the screen but not yet saved are lost. Save the work before reporting an issue.
:::

For examples of what data is collected, see [Examples of the data that is sent](#examples-of-the-data-that-is-sent).

<!-- The "Read more" link beside the rollback option in the product links to
     #trying-a-previous-version (BUG_REPORT_PREVIOUS_VERSION_URL in DU-App).
     Renaming this heading breaks that link. -->

### Trying a previous version

The **Try a previous version** checkbox lists recent versions of the validation or classification screen itself, which helps when a problem appeared only after a recent update. Each entry shows the version's publication date and build identifier.

Only that screen changes. Action Center, the app hosting the screen, the task, the document, the taxonomy, and the extraction or classification result are all unaffected, and so are other users. The taxonomy and the results are read at runtime rather than built into the screen, so an earlier version still loads the same data the workflow produced, including any document types and fields added since that version was published. Only the screen's own code is older.

The choice applies to every task of that type for the user who made it, in the browser they made it in, and lasts up to 30 days, after which the newest version is restored automatically. A user can reopen the dialog at any point to pick a different version, or select **Use the latest version** to return to the newest one.

![The Report a technical issue dialog with Try a previous version selected, listing the recent versions a user can switch to](https://dev-assets.cms.uipath.com/assets/images/action-center/report-an-issue-version-rollback-de1dd18e.webp)

<!-- The "Read more" link beside the data checkbox in the product links to
     #what-data-is-sent (BUG_REPORT_DATA_SENT_URL in DU-App).
     Renaming this heading breaks that link. -->

## What data is sent

Two separate transmissions are involved when a report is submitted:

- **The report itself** is always sent. It carries the free-text description and which rollback option was chosen, if any.
- **The taxonomy and the extraction or classification result** are sent only when the data checkbox stays selected.

The report also contains: the document ID and Action Center task ID, which are UiPath-generated identifiers; the organization and tenant name, region, and build version, which identify the environment; and an anonymized user identifier.

### Document validation tasks

| Data | Sent to UiPath? | Details |
|---|---|---|
| The document file (PDF or image) | Never |  |
| The free-text problem description | Yes, verbatim | Not obfuscated or filtered |
| Extracted values of Boolean, Date, Number, Set, and Monetary Quantity fields | Yes, verbatim | Preserved because these types hold structured values rather than free text |
| Extracted values of all other field types, including text read from the document | No | Randomly anonymized |
| Field, group, category, and document type names | No | Replaced with sequential aliases, for example f1, g1, dt1 |
| Value positions, page dimensions, and confidence scores | Yes | These describe layout only, not document content |

### Document classification tasks

| Data | Sent to UiPath? | Details |
|---|---|---|
| The document file (PDF or image) | Never |  |
| The free-text problem description | Yes, verbatim | Not obfuscated or filtered |
| Document type, group, category, and field names | No | Replaced with sequential aliases, for example dt1, g1, c1, f1 |
| Page ranges and page counts | Yes | Preserved so a reported session still matches the document |
| Boxes of words, page dimensions, and confidence scores | Yes | These describe layout only, not document content, nor any word content. |

## What is never collected

The following are never captured, generated, or transmitted by this feature:

- HTTP Archive (HAR) files
- Network traffic of the surrounding page
- Screenshots and screen recordings
- The document file, its text layer, or its page images
- Cookies, browser storage contents, or credentials

## Examples of the data that is sent

The obfuscation happens in the browser, before anything is transmitted. Three transformations are applied:

- **Names become aliases.** Groups, categories, document types, fields, and table columns are replaced with sequential aliases such as `g1`, `c1`, `dt1`, `f1`, and `col1`. Relationships survive, so engineering can still see the shape of a taxonomy, but no customer-authored name does.
- **Values are randomly anonymized.** Every letter becomes a random letter and every digit a random digit, while punctuation, spacing, and length survive, so a purchase order held in a text field, such as `PO-4471/A`, becomes something like `qm-8213/x`. The substitution is random rather than a fixed hash, so two identical values never produce the same substitute.
- **Property names are shortened.** Long names are aliased to keep the payload small enough to transmit.

In document validation tasks, values of Number, Date, Boolean, Set, and Monetary Quantity fields are transmitted as they are, so the digits inside them are never replaced. In document classification tasks, page ranges are kept as they are, so that a reported session still matches the document.

### Document validation task data

#### Taxonomy

A taxonomy fragment as it exists in the browser:

```json
{
  "DataContractVersion": "1.0.0",
  "DocumentTypes": [
    {
      "DocumentTypeId": "Finance.AccountsPayable.VATInvoice",
      "Group": "Finance",
      "Category": "AccountsPayable",
      "Name": "VAT Invoice",
      "Fields": [
        {
          "FieldId": "Finance.AccountsPayable.VATInvoice.VendorName",
          "FieldName": "Vendor Name",
          "Type": "Text"
        },
        {
          "FieldId": "Finance.AccountsPayable.VATInvoice.TotalAmount",
          "FieldName": "Total Amount",
          "Type": "MonetaryQuantity"
        }
      ]
    }
  ]
}
```

The same fragment as it is transmitted:

```json
{
  "type": "taxonomy",
  "t": {
    "d": "1.0.0",
    "D": [
      {
        "i": "g1.c1.dt1",
        "g": "g1",
        "c": "c1",
        "n": "g1.c1.dt1",
        "F": [
          { "fi": "g1.c1.dt1.f1", "fn": "g1.c1.dt1.f1", "T": "txt" },
          { "fi": "g1.c1.dt1.f2", "fn": "g1.c1.dt1.f2", "T": "mq" }
        ]
      }
    ]
  },
  "i": { "DisplayMode": "compact" }
}
```

#### Extraction result

An extraction result as it exists in the browser:

```json
{
  "DocumentId": "7f3c1e90-4a2b-4c8d-9e11-6b5a0d2f8c43",
  "ResultsVersion": 1,
  "ResultsDocument": {
    "Language": "eng",
    "DocumentGroup": "Finance",
    "DocumentCategory": "AccountsPayable",
    "DocumentTypeId": "Finance.AccountsPayable.VATInvoice",
    "DocumentTypeName": "VAT Invoice",
    "Fields": [
      {
        "FieldId": "Finance.AccountsPayable.VATInvoice.VendorName",
        "FieldName": "Vendor Name",
        "FieldType": "Text",
        "OperatorConfirmed": true,
        "Values": [
          {
            "Value": "ACME Corporation Ltd",
            "Confidence": 0.987,
            "OcrConfidence": 0.994,
            "DataSource": "Extraction",
            "Reference": {
              "Tokens": [
                { "Page": 0, "PageWidth": 612, "PageHeight": 792, "Boxes": [[72.4, 118.9, 143.2, 12.7]] }
              ]
            }
          }
        ]
      },
      {
        "FieldId": "Finance.AccountsPayable.VATInvoice.TotalAmount",
        "FieldName": "Total Amount",
        "FieldType": "MonetaryQuantity",
        "Values": [
          { "Value": "1416.00", "Confidence": 0.912, "DataSource": "Extraction" }
        ]
      }
    ]
  }
}
```

The same result as it is transmitted:

```json
{
  "type": "extraction",
  "e": {
    "d": "4b9f7a21-8c6e-1d3f-5a44-2e8b9c1f0d76",
    "rv": 1,
    "rd": {
      "l": "eng",
      "g": "g1",
      "c": "c1",
      "i": "g1.c1.dt1",
      "n": "g1.c1.dt1",
      "F": [
        {
          "fi": "g1.c1.dt1.f1",
          "fn": "g1.c1.dt1.f1",
          "ft": "txt",
          "o": true,
          "V": [
            {
              "va": "xqmp lwzkqmpxrjd vbn",
              "cf": 0.987,
              "oc": 0.994,
              "ds": "ext",
              "r": { "tk": [ { "p": 0, "pw": 612, "ph": 792, "bx": [[72, 119, 143, 13]] } ] }
            }
          ]
        },
        {
          "fi": "g1.c1.dt1.f2",
          "fn": "g1.c1.dt1.f2",
          "ft": "mq",
          "V": [ { "va": "1416.00", "cf": 0.912, "ds": "ext" } ]
        }
      ]
    }
  }
}
```

### Document classification task data

#### Document types

A document type as it exists in the browser:

```json
{
  "DataContractVersion": "1.0.0",
  "DocumentTypes": [
    {
      "DocumentTypeId": "Finance.AccountsPayable.VATInvoice",
      "Group": "Finance",
      "Category": "AccountsPayable",
      "Name": "VAT Invoice",
      "Fields": [
        {
          "FieldId": "Finance.AccountsPayable.VATInvoice.VendorName",
          "FieldName": "Vendor Name",
          "Type": "Text"
        }
      ]
    }
  ]
}
```

The same document type as it is transmitted:

```json
{
  "type": "cs-taxonomy",
  "t": {
    "d": "1.0.0",
    "D": [
      {
        "i": "g1.c1.dt1",
        "g": "g1",
        "c": "c1",
        "n": "g1.c1.dt1",
        "F": [
          { "fi": "g1.c1.dt1.f1", "fn": "g1.c1.dt1.f1", "T": "txt" }
        ]
      }
    ]
  },
  "i": { "EnablePageReordering": true }
}
```

#### Classification result

A classification result as it exists in the browser:

```json
{
  "Classifications": [
    {
      "DocumentId": "7f3c1e90-4a2b-4c8d-9e11-6b5a0d2f8c43",
      "DocumentTypeId": "Finance.AccountsPayable.VATInvoice",
      "ClassifierName": "Invoice-Classifier-2",
      "Confidence": 0.964,
      "OcrConfidence": 0.991,
      "DocumentBounds": {
        "StartPage": 0,
        "PageCount": 3,
        "PageRange": "1-3"
      },
      "Reference": {
        "TextStartIndex": 0,
        "TextLength": 4821,
        "Tokens": [
          { "Page": 0, "PageWidth": 612, "PageHeight": 792, "Boxes": [[72.4, 118.9, 143.2, 12.7]] }
        ]
      }
    }
  ]
}
```

The same result as it is transmitted:

```json
{
  "type": "classification",
  "c": {
    "K": [
      {
        "d": "4b9f7a21-8c6e-1d3f-5a44-2e8b9c1f0d76",
        "i": "g1.c1.dt1",
        "cn": "wmqpjxk-Kqzmwpxjmb-7",
        "cf": 0.964,
        "oc": 0.991,
        "b": {
          "sp": 0,
          "pc": 3,
          "pr": "1-3"
        },
        "r": {
          "ti": 0,
          "tl": 4821,
          "tk": [
            { "p": 0, "pw": 612, "ph": 792, "bx": [[72, 119, 143, 13]] }
          ]
        }
      }
    ]
  }
}
```

## Who can access this data

Reports reach the UiPath Document Understanding engineering team, and are used to diagnose and fix technical issues only. Reports are never shared with anyone else.

The identifier attached to a report holds no name, no email address, and no other contact detail. The engineering team cannot tell from a report who submitted it, the feature provides no channel through which anyone at UiPath could contact that person, and reports are not answered individually.

## Availability and turning the feature off

The button's availability is controlled solely by the UiPath Document Understanding engineering team. There is no self-service way to turn it off, and changing its availability for an organization requires a request to UiPath.

## Related information

- [Create Document Validation Action](create-document-validation-action.md)
- [Create Document Classification Action](create-document-classification-action.md)
- [Document Understanding activities](document-understanding-activities.md)
- [Legal information](https://docs.uipath.com/document-understanding/automation-cloud/latest/user-guide/legal-information)
