LogoLogo
Sypht AppHelp CenterMarketplace
  • Introduction
  • Setup
    • Authentication
  • Upload and Extract
    • Upload and Extract (v2)
    • Upload and Extract (v1)
    • File management
  • Workflows (v1)
    • Real-time validation
    • Smart document split
    • Entity matching
  • Workflows (v2)
    • extraction (sypht.extract)
    • Real-time validation (sypht.validate)
    • Smart document split (sypht.split)
  • Field types
    • Line Items
    • Classification fields
    • Signals
    • Values
  • API Docs
    • API Introduction
    • Authentication
      • POST - Authentication Token
    • Upload Document
      • POST - Upload Document
      • POST - Upload JSON
    • Results
      • GET - Document Results
      • GET - Image Results
    • Upload Annotation
      • PUT - Upload Annotation
Powered by GitBook
On this page
  • How it works
  • Getting started

Was this helpful?

  1. Workflows (v1)

Real-time validation

Add real-time human-in-the-loop validation to predictions.

PreviousFile managementNextSmart document split

Last updated 4 years ago

Was this helpful?

How it works

Getting started

To upload documents under the conditional validation workflow, a few changes to the standard fileupload form-data parameters are required:

  • Specify the validation workflow type by setting: workflowId=validate

  • Specify the fieldSet or fieldSets parameter to predict against

  • Configure the workflowOptions according to the required validation rules

Validation workflows are a BETA feature and subject to change. This guide is under-construction.

Validation Parameters

Workflow options are strings which contain a JSON-formatted object that controls how the steps in the validation workflow are executed. Here's a sample workflowOptions string which validates the confidence of the bpay.crn field:

{
   "prediction":{
      "fieldset": "sypht.bpay",
      "conditions":[
         {
            "type": "field-confidence-range",
            "field": "bpay.crn",
            "min": 0.5
         }
      ],
      "createTask":{
         "submit": true,
         "priority": 1
      }
   }
}

For the sample above, extractions which include a bpay.crn with confidence less than 0.5 will produce a validation task for the sypht.bpay specification.

The fieldset specified to validate in the workflowOptions should be contained in the fieldSets requested to predict against on the base /fileupload/ request

The full set of validation conditions includes:

  • field-confidence-range

    • Validates whether a given field's prediction condidence value falls within an expected range.

    • Predictions with values outside the allowed range will trigger validation of the field.

    • Typically used to identify and review low confidence predictions.

    • Required

      • field - Id of the field to validate

    • Options

      • min - The minimum value for the predicted field confidence

        • Inclusive

        • Default = null for no minimum

      • max - The maximum value for the predicted field confidence

        • Inclusive

        • Default = null for no maximum

  • field-value-range

    • Validates whether a given field's normalised value falls within an expected range.

    • Predictions with values outside the allowed range will trigger validation of the field.

    • Required

      • field - Id of the field to validate

    • Options

      • min - The minimum value for the predicted field confidence

        • Inclusive

        • Default = null for no minimum

      • max - The maximum value for the predicted field confidence

        • Inclusive

        • Default = null for no maximum

  • field-present

    • Verifies the presence of a value for a field on a document.

    • Documents missing values for this field will trigger validation of the field.

    • Required

      • field - Id of the field to validate

Response
{
    "fileId": "815c63f6-6152-467c-9182-f07223d057cb",
    "uploadedAt": "2020-08-20T03:19:07.319Z",
    "status": "RECEIVED"
}

Tasks

Collecting results

While tasks are in progress, the results endpoint will block requests for up-to 30 seconds and return an IN PROGRESS status.

GET https://api.sypht.com/result/final/815c63f6-6152-467c-9182-f07223d057cb

Response
{
    "fileId": "1111111-6152-467c-9182-f07223d057cb",
    "status": "IN PROGRESS"
}

One complete, results will be returned normally.

Response (once prediction/ is complete)
{
    "fileId": "1111111-6152-467c-9182-f07223d057cb",
    "status": "FINALISED",
    "results": {
        "timestamp": "2020-08-20T03:30:09.703Z",
        "fields": [
            {
                "name": "vehicle.odometerKm",
                "value": "148500",
                "confidence": 0.9958282699555642,
                ...
            },
            ...
        ]
    }
}

https://app.sypht.com/tasks
Sample Postman configuration for a file-upload with the validate workflow