Multi-Signal Requests

You can combine a document_type with more than one value in the signals array. This is known as a Multi-Signal Request. Multi-signal requests can be used to analyze several combinations at once, such as a barcode analysis (idcheck) with a selfie check (selfie) for a North American driver license (na_dl). The private_data request object might look like this:

{  
  "private_data": {  
    "document_type": "na_dl", 
    "signals": [
      "idcheck",
      "selfie"
    ]
  }
}

Signal Combinations

Certain signal and document type combinations require special consideration.

Required

The following signals are required for each document type:

  • idcheck is required for the na_dl document type.
  • ocr_scan is required for the passport document type.
  • ocr_scan is required for the other document type.

Interdependent

There is one interdependent signal:

  • ocr_match is interdependent with ocr_scan.

Invalid

There are two invalid signal and document type combinations:

  • idcheck is invalid for the passport document type.
  • idcheck is invalid for the other document type.

The following table shows these required, interdependent, and invalid combinations.

idcheckocr_scanocr_match
na_dlRequiredValidInterdependent with ocr_scan
otherInvalidRequiredInterdependent with ocr_scan
passportInvalidRequiredInterdependent with ocr_scan

Good Requests

Here's a good na_dl request.

{  
  "private_data": {  
    "document_type": "na_dl",
    "signals": [
      "idcheck",
      "ocr_match",
      "ocr_scan"
    ]
  }
}

Here's a good passport request.

{  
  "private_data": {  
    "document_type": "passport",  
    "signals": [
      "ocr_match",
      "ocr_scan"
    ]
  }
}

Bad Requests

Here's a bad na_dl request because idcheck is missing. This request would result in an unsuccessful idcheck response object.

{  
  "private_data": {  
    "document_type": "na_dl",
    "signals": [
      "ocr_match",
      "ocr_scan",
    ]
  }
}

Here's a bad passport request because idcheck should not be requested. Only request idcheck for na_dl documents.

{  
  "private_data": {  
    "document_type": "passport",  
    "signals": [
      "ocr_match",
      "ocr_scan",
      "idcheck"
    ]
  }
}