Skip to main content
Business Processing Reporting shows how well documents are processed and provides end-to-end transaction traceability for auditing. The Warehouse captures all transactions—completed and in progress—for analysis and visualization in business intelligence tools. Data is retained for 12 months, enabling analysis and auditing over defined time periods. The following data is tracked:
  • Transaction ID.
  • Skill ID and version.
  • Processing path by steps:
    • Step types
    • Names
    • Date and time of the start and finish of the step
    • Duration (in seconds)
  • Manual Review Operator name and email.
  • Document and transaction registration parameters.
Note: The Warehouse does not store information about document processing events in activities that are never executed according to their settings. For example, the Assemble by files setting corresponds to the default behavior of Vantage, therefore document processing in this activity will be skipped in a workflow.

Migrating from v1 to v2

In Vantage 3.0 and above, the transaction-steps v1 endpoint has been deprecated. For backward compatibility, the v2 endpoint works similarly, with an endpoint name change and query parameters moved to the request body. The v2 endpoint has moved to an asynchronous model to better handle large data requests. After a report is requested, you can poll the status until the report is ready. Upon completion, you can download the results.
// v1: One synchronous call with query parameters
1. GET {{baseUrl}}/api/reporting/v1/transaction-steps?skillId=ABCD&startDate=2025-11-01&endDate=2025-11-18

// v2: Multiple async calls
1. POST {base_url}/api/reporting/v2/exports/transaction-steps
{
  "filters": {
    "skillId": "d0e27b2d-bcc6-4129-bfd1-c1e37ee3efae",
    "startDate": "2025-11-03T17:19:54.386Z",
    "endDate": "2025-11-17T20:05:26.097Z"
  },
  "sendEmailNotification": true
}
// Receive request Id

2. GET {{baseUrl}}/api/reporting/v2/exports/transaction-steps/{{requestId}}/status

// Once status = "Succeeded", download the report files
3. GET {{baseUrl}}/api/reporting/v2/exports/transaction-steps/{{requestId}}/result/{fileIndex}
Continue reading for details on how the v2 endpoint works below.

Downloading a data report

Note: Only users with the Tenant Administrator and Processing Supervisor role can download a data report from the Warehouse. For more information, see Role-Based Access Control.
You can obtain data from the Warehouse in a CSV file using the Vantage API. To do so, send a POST request to the following resource:
POST {base_url}/api/reporting/v2/exports/transaction-steps
A request body should include the following properties within a filters object:
  • skillId. The ID of the skill the transactions of which should be downloaded.
  • startDate. The first day of the period (sample formatting: 2022-01-07T13:03:38, time should be in UTC) for which the transactions should be downloaded.
  • endDate. The last day of the period (sample formatting: 2022-09-07T13:03:38, time should be in UTC) for which the transactions should be downloaded.
  • sendEmailNotification. Send an email to the user who created the report request, informing them the report is ready for download.
{
  "filters": {
    "skillId": "d0e27b2d-bcc6-4129-bfd1-c1e37ee3efae",
    "startDate": "2025-11-03T17:19:54.386Z",
    "endDate": "2025-11-17T20:05:26.097Z"
  },
  "sendEmailNotification": true
}
Report requests are executed asynchronously, so the response returns a requestId used to check the request status. Result:
{
  "requestId": "8f772512-099c-4050-8dd3-6c4d7af69747”
}
To check the status of the report, pass the requestId in the GET request:
GET {{baseUrl}}/api/reporting/v2/exports/transaction-steps/{{requestId}}/status
When the report has been created, the status is “Succeeded” and totalFileCount shows the number of files available to download:
{
  "status": "Succeeded",
  "totalFileCount": 3,
  "filters": {
      "skillId": "d0e27b2d-bcc6-4129-bfd1-c1e37ee3efae",
      "startDate": "2025-11-03T17:19:54.386+00:00",
      "endDate": "2025-11-17T20:05:26.097+00:00"
  }
}
To download the resulting report files, make a GET request to the following, once again passing the requestId and adding the fileIndex, the zero-based index of the file. For example, if "totalFileCount": 3, then available file indexes would be 0, 1, and 2.
GET {{baseUrl}}/api/reporting/v2/exports/transaction-steps/{{requestId}}/result/{fileIndex}
Here’s a sample of what the CSV response looks like:
SkillIdSkillVersionSkillNameTransactionIdStepNameStepTypeManualReviewOperatorNameManualReviewOperatorEmailStartedUtcCompletedUtcStatusDurationDocumentsCountPagesCountdocument_SourceFileNamedocument_SourceTypetransaction_App
d0e27b2d-bcc6-4129-bfd1-c1e37ee3efae1Redaction Test6d7e9eeb-86e3-4952-8e29-3f76b3fae59fInputInput11/17/2025 19:37:5211/17/2025 19:38:01FinishedSuccessfully9Invoice CA_2.pdfPublicAPIPublicAPI
d0e27b2d-bcc6-4129-bfd1-c1e37ee3efae1Redaction Test6d7e9eeb-86e3-4952-8e29-3f76b3fae59fOCROcr11/17/2025 19:38:0211/17/2025 19:38:17FinishedSuccessfully15Invoice CA_2.pdfPublicAPIPublicAPI
d0e27b2d-bcc6-4129-bfd1-c1e37ee3efae1Redaction Test6d7e9eeb-86e3-4952-8e29-3f76b3fae59fClassifyClassification11/17/2025 19:38:1711/17/2025 19:38:20FinishedSuccessfully3Invoice CA_2.pdfPublicAPIPublicAPI
d0e27b2d-bcc6-4129-bfd1-c1e37ee3efae1Redaction Test6d7e9eeb-86e3-4952-8e29-3f76b3fae59fExtractExtraction11/17/2025 19:38:2111/17/2025 19:38:44FinishedSuccessfully23Invoice CA_2.pdfPublicAPIPublicAPI
d0e27b2d-bcc6-4129-bfd1-c1e37ee3efae1Redaction Test6d7e9eeb-86e3-4952-8e29-3f76b3fae59fOutputOutput11/17/2025 19:38:4711/17/2025 19:39:01Failed13Invoice CA_2.pdfPublicAPIPublicAPI

Response Structure

Each row in a CSV file is an operation performed on a transaction. For example, the import of documents, recognition, or manual review. For each operation in the Warehouse, its details are stored in columns:
ColumnDescription
SkillIdThe skill ID.
SkillVersionThe version of the skill.
SkillNameThe name of the skill.
TransactionIdID of the transaction.
StepNameThe name of the event or the name of the activity in case of the Process skill.
StepTypeThe type of event. Possible values:
- Input (available for all skill types)
- Ocr (available for OCR skills or Process skills with added OCR activity)
- Classification (available for Classification skills or Process skills with added Classification activity)
- Extraction (available for all skill types)
- Condition (available for Process skills with added Condition activity)
- CustomActivity (available for Process skills with added Custom activity)
- WaitingForManualReview (available for Process skills with added Manual Review activity). The amount of time during which a transaction is waiting for manual review
- ManualReview (available for Process skills with added Manual Review activity). The amount of time during which the Operator is verifying a transaction
- Output (available for all skill types)
ManualReviewOperatorNameThe name of the Manual Review Operator.
ManualReviewOperatorEmailThe email of the Manual Review Operator.
StartedUtcStart time of the event (UTC). For example, 5/3/2022 1:59:02 PM.
CompletedUtcEnd time of the event (UTC).
StatusThe status of the event. Possible values:
- Processing
- Finished Successfully
- Canceled
- Failed
DurationDuration of the event (in seconds).
document_*, transaction_*The document or transaction parameters passed for processing. The prefix document_ is added to document parameters in the header, and the transaction_ prefix is added to the transaction parameters. For example, document_SourceFileName. If a transaction contains documents with parameters identical in name but different in value, the Warehouse will list all unique values of this parameter separated by commas. For example, all filenames within a transaction.
The prepared data is stored for 2 weeks after the request is completed. Data obtained in CSV format may be further analyzed in any BI tool.

Retrieving a List of Reporting Requests

To retrieve the list of reporting requests made within a designated time period, make a GET request to the following endpoint, where createdFrom and createdTo are the date range and statusFilter is one of the following values: New,Queued,Processing,Succeeded,Failed, or Cancelled. This is useful in the case of misplaced request ids.
GET {{baseUrl}}/api/reporting/v2/exports/transaction-steps?statusFilter=Succeeded&createdFrom=2025-11-05&createdTo=2025-11-17
The response includes an array of reporting requests.
{
  "requests": [
    {
      "requestId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
      "status": "New",
      "completedUtc": "2025-11-18T22:22:00.294Z",
      "createdUtc": "2025-11-18T22:20:49.294Z",
      "totalFileCount": "2",
      "filters": {
        "skillId": "d0e27b2d-bcc6-4129-bfd1-c1e37ee3efae",
        "startDate": "2025-11-03T17:19:54.386+00:00",
        "endDate": "2025-11-17T20:05:26.097+00:00"
      }
    },
    {
      "requestId": "48293032-5717-4562-b3fc-2c963f66afa6",
      "status": "Succeeded",
      "completedUtc": "2025-12-18T22:22:00.294Z",
      "createdUtc": "2025-12-18T22:20:49.294Z",
      "totalFileCount": "4",
      "filters": {
        "skillId": "dk3ioda-bcc6-4129-bfd1-c1e37ee3efae",
        "startDate": "2025-11-03T17:19:54.386+00:00",
        "endDate": "2025-11-17T20:05:26.097+00:00"
      }
    }
  ]
}