Skip to main content
A dataSource node calls one of the catalogued providers (Sumsub, LSEG, BigDataCorp, Crystal Intelligence, ThreatMetrix, Socure, …). The provider is referenced by providerId, not by URL.

Configuration

{
  "id": "ds-sumsub-aml",
  "type": "dataSource",
  "data": {
    "label": "Sumsub — AML Screening",
    "providerId": "7",
    "providerName": "SumSub",
    "category": "Identity Suite",
    "timeout": 12000,
    "retryCount": 1,
    "outputVariable": "sumsub_aml",
    "sumsubConfig": {
      "activeClassId": "cls-aml"
    }
  }
}
FieldNotes
providerIdForeign key into datasources.json.
providerNameDenormalised label, for editor display.
categoryDenormalised category, for editor display.
timeoutMilliseconds.
retryCountOn timeout / 5xx.
outputVariableName under which the response is written to the run context.
<provider>ConfigProvider-specific config block (sumsubConfig, crystalConfig, …).

Provider-specific config

{
  "activeClassId": "cls-kyc" | "cls-aml" | "cls-fraud",
  "classes": [
    { "id": "cls-kyc", "key": "kyc", "label": "KYC",   "settings": {...}, "variables": [...] },
    { "id": "cls-aml", "key": "aml", "label": "AML",   "settings": {...}, "variables": [...] },
    { "id": "cls-fraud","key":"fraud","label":"FRAUD", "settings": {...}, "variables": [...] }
  ],
  "nodeSettings": {
    "verificationLevel": "basic-kyc",
    "applicantType": "individual",
    "externalUserId": "{{user_id}}",
    "sdkDelivery": "websdk",
    "mode": "async"
  }
}
See Sumsub for the full class settings + variables.

Outputs

The vendor’s response is written to outputVariable and is then available as {{outputVariable.<field>}} downstream. The exact field shape is documented per-provider in the Data Sources section.

Resold vs BYO behaviour

The node is identical whether the provider is resold or BYO — Frayme resolves credentials based on providerId. The editor shows a reselling notice when the targeted provider has resold: true, but the node config doesn’t change.

When the provider is disabled

If the provider’s enabled: false in the registry, the workflow engine skips the node and writes a stub output (null or a configured default). Downstream nodes can guard against this — e.g. treating missing device data as a soft signal rather than a hard fail.