HomeGuidesAPI Reference
API Reference

Webhooks events and payloads

Read more about webhooks in spektr here.

All webhook events are sent in batches of the following shape:

{  
  "results": [
    event1,
    event2,
		...
  ]
}

In the above representation, the results array contains individual events as described below.

🚧

WIP

These events are work in progress and their definition might slightly change in the final version.

WebhookDescriptionStatus
PROCESS_RUN_STARTEvent created when a process starts runningAvailable
LOOP_RUN_STARTEvent created when a loop starts runningAvailable
PROCESS_RUN_ENDEvent created when a process finishes runningAvailable
SERVICE_RUNEvent created when a service response is receivedAvailable
ALERT_ESCALATEDEvent created when an alert is createdAvailable
ALERT_RESOLVEDEvent created when an alert is resolvedAvailable
CUSTOMER_TAG_ADDEDEvent created when a tag is added to a customer by a process or a userAvailable
CUSTOMER_TAG_REMOVEDEvent created when a tag is removed from a customer by a userAvailable
CUSTOMER_STATUS_CHANGE(deprecated)Event created when the status of a customer changes through a status node or manually by a userAvailable
CUSTOMER_STATUS_CHANGEDEvent created when the status of a customer changes through a status node or manually by a userAvailable
CUSTOMER_DUPLICATE_DETECTIONEvent created when a customer is found as duplicateAvailable
CUSTOMER_RECORD_UPDATE(deprecated)Event created when a customer receives an external updateAvailable
CUSTOMER_RECORD_CHANGEDEvent created when a customer receives an updateAvailable
OWNERSHIP_AI_CREATEDEvent created when a customer is created by AI discovery.Available
OWNERSHIP_AI_ADDED_OWNEREvent created when an owner is added in the connection graph using AI discovery.Available
CLIENT_RECORD_SYNCEvent created when an imported customer through a connector is synced.Available
STEP_INITEvent created when a form is rendered in the skyhub form editor application.Available
STEP_SUBMITEvent created when a form is submitted in the skyhub form editor application.Available

PROCESS_RUN_START

{
  "id": "<event-id>",
  "spektrId": "<id end-user related to this event>",
  "eventType": "process_run_start",
  "timestamp": 1672531199000,
  "workspaceId": "<id of workspace>",
  "data": {
    "processType": "risk",
    "processName": "Risk Assessment",
    "processId": "12345",
    "contextId": "67890",
    "token": "<the token>",
    "reference": "optional-reference",
    "parentProcessId": "<id-of-parent-linked-process>",
    "parentSpektrId": "<spektrId-of-parent-entity>"
  }
}
NameTypeDescription
idstringEvent ID.
spektrIdstringID of the end-user related to this event.
eventTypestringType of event, e.g., process_run_start.
timestampnumberEpoch timestamp when the event was created.
workspaceIdstringID of the workspace.
data.processTypestringType of process, e.g., 'risk', 'monitoring', 'onboarding', etc.
data.processNamestringName of the process.
data.processIdstringID of the process.
data.contextIdstringID of the run.
data.tokenstring \undefinedThe token associated with this process run.
data.referencestring \undefinedOptional value passed to the onboarding process through a query param.
data.parentProcessIdstring \undefinedOptional value passed if the process that issues the event is triggered by another process
data.parentSpektrIdstring \undefinedOptional values passed if the process that issues the event is triggered by another process linked to an UBO block

LOOP_RUN_START

{
  "id": "<event-id>",
  "spektrId": "<id end-user related to this event>",
  "eventType": "loop_run_start",
  "timestamp": 1672531199000,
	"workspaceId": "<id of workspace>",
  "data": {
    "processType": "risk",
    "processName": "Risk Assessment",
    "processId": "12345",
    "contextId": "67890",
		"stepType": "form",
    "stepId": "686660b873833dea357e8702",
		"token": "<the token>",
    "reference": "optional-reference",
    "spektr_id": "<id of the client related to this event>",
    "parentProcessId": "<id-of-parent-linked-process>",
    "parentSpektrId": "<spektrId-of-parent-entity>",

    // ...all execution related spektr data fields (e.g. form submitted values, service mapped values, scores, etc.
    
    "loopHeader": "Any header value", // Header set in loop settings
    "loopMessage": "Any loop message", // Message set in loop settings
		"loopUrl": "https://actions.spektr.com/form?token=eyJpZCI6ImI2NzllNzcw....", // Form filling URL
  }
}
NameTypeDescription
idstringEvent ID.
spektrIdstringID of the end-user related to this event.
eventTypestringType of event, e.g., loop_run_start.
timestampnumberEpoch timestamp when the event was created.
workspaceIdstringID of the workspace.
data.processTypestringType of process, e.g., 'risk', 'monitoring', 'onboarding', etc.
data.processNamestringName of the process.
data.processIdstringID of the process.
data.contextIdstringID of the run.
data.stepTypestringThe type of the step that was inited, e.g. 'form' or 'ownershipTreeForm'.
data.stepIdstringThe ID of the step that was inited.
data.tokenstring \undefinedThe token associated with this process run.
data.referencestring \undefinedOptional value passed to the onboarding process through a query param.
data.spektr_idstring \undefinedId of the client related to this event
data.*objectRest of the execution related spektr data fields (e.g. form submitted values, service mapped values, scores, etc
loopHeaderstring \undefinedHeader set in loop settings
loopMessagestring \undefinedMessage set in loop settings
loopUrlstring \undefinedForm filling URL
data.parentProcessIdstring \undefinedOptional value passed if the process that issues the event is triggered by another process
data.parentSpektrIdstring \undefinedOptional values passed if the process that issues the event is triggered by another process linked to an UBO block

Samples

{
  id: '6867b8db50ffa326d667ac63',
  workspaceId: 'd861cbbc0b5b5a0fcf201910cf8aa8c2',
  eventType: 'loop_run_start',
  timestamp: 1751627995564,
  spektrId: '6867b8db50ffa326d667ac5f',
  data: {
    processType: 'onboarding',
    processName: 'test stringList startOnboarding',
    processId: '686660b573833dea357e86f6',
    contextId: '6867b8db50ffa326d667ac60',
    token:
      'eyJpZCI6ImQ4NjFjYmJjMGI1YjVhMGZjZjIwMTkxMGNmOGFhOGMyIiwidG9rZW4iOiJiZTFjMTE3NDI3YjQ4NTdjMmExODQ2ZjU4YjljM2I0ZDI1ZjkxYmJmZjcyMWQ4YzNlNTVmZWNkZDc0ZDQ3ZTEyIn0=',
    spektr_id: '6867b8db50ffa326d667ac5f',
      
		score: 0,

		loopHeader: 'Any header value',
    loopMessage: 'Any loop message',
		loopUrl: 'https://actions.spektr.com/form?token=eyJpZCI6ImQ4NjFjYmJjMGI1YjVhMGZjZjIwMTkxMGNmOGFhOGMyIiwidG9rZW4iOiJiZTFjMTE3NDI3YjQ4NTdjMmExODQ2ZjU4YjljM2I0ZDI1ZjkxYmJmZjcyMWQ4YzNlNTVmZWNkZDc0ZDQ3ZTEyIn0='
  },
},

PROCESS_RUN_END

{
  "id": "<event-id>",
  "spektrId": "<id end-user related to this event>",
  "eventType": "<event-type>",
  "timestamp": 1672531199000,
  "workspaceId": "<id of workspace>",
  "data": {
    "company_name": "unilever",
    "company_number": "123",
    "country_of_incorporation": "GB",
    // other client record and execution fields

    "processType": "onboarding",
    "processOutput": "<output of the process>",
    "processName": "<process-name>",
    "processId": "12345",
    "reference": "optional-reference",
    "customerStatus": "pending",
    "score": 0,
    "contextId": "6850ea584ee798c166e36802",
    "tags": [
      { "color": "rgba(0,0,0,1)", "label": "xxx" },
      { "color": "rgba(255,0,0,1)", "label": "red", "icon": "Siren" },
    ],
  }
}
NameTypeDescription
idstringEvent identifier.
spektrIdstringID of the end-user related to this event.
eventTypestringEvent type, e.g. process_run_end
timestampnumberEpoch timestamp when the event was created.
workspaceIdstringID of the workspace.
dataobjectkey-value entries from end-user or external services. 'key' corresponds to field.key when entry was submitted by end-user.
data.*...all client record and/or execution fields
data.processNamestringName of the process.
data.processTypestringType of process, e.g. 'onboarding'
data.processOutputstringOutput of the process, e.g. 'unknown'
data.processIdstringID of the process
data.referencestring \undefinedOptional value passed to the onboarding process through a query param.
data.scorenumberScore of the process run or 0
data.contextIdstringID of the execution of the process
data.customerStatusstringpending \rejected \approved
data.tagsobject[]Array of tags
data.tags[].colorstring \undefinedColor of tag, e.g. rgba(255,0,0,1)
data.tags[].labelstring \undefinedLabel of tag, e.g. 'Some tag'
data.tags[].iconstring \undefinedIcon of tag, e.g. 'Siren'

Samples

{
  id: '686f58da3b9059f19eb2d066',
  workspaceId: '559ae2249db800a7b0fa02ad58b196ae',
  eventType: 'process_run_end',
  timestamp: 1752127706390,
  spektrId: '686e28baebd46db5a35beccb',
  data: {
    company_name: 'test1',
    vat_number: '123',
    customerStatus: 'approved',
    processType: 'loop',
    processOutput: 'unknown',
    processName: 'loop',
    processId: '6863946a7addd2ed37a96af8',
    score: 0,
    contextId: '686f589e1926bef99eda763e',
    tags: []
  },
},

SERVICE_RUN

{
  "id": "<event-id>",
  "spektrId": "<id of the client related to this event>",
  "eventType": "service_run",
  "timestamp": 1672531199000,
  "workspaceId": "<id of workspace>",
  "data": {
    "vendorType": "service type",
    "stepType": "service type",
    "stepId": "<step id>",
    "contextId":"<process run id",
    "processId":"<process id>",
    "processName": "process name",
    "processType": "process type",
    "reference": "optional-reference",
    "vendorData": {}
  }
}
NameTypeDescription
idstringEvent ID.
spektrIdstringID of the end-user related to this event.
timestampnumberEpoch timestamp when the event was created.
eventTypestringservice_run
workspaceIdstringID of the workspace.
stepTypestringType of the step
stepIdstringID of the step
data.vendorTypestringType of the vendor.
data.vendorData.*...all client record and/or execution fields
data.contextIdstringID of the process run.
data.processIdstringID of the process.
data.processNamestringName of the process.
data.processTypestringType of process, e.g., 'risk', 'monitoring', 'onboarding', etc.
data.referencestring \undefinedOptional value passed to the onboarding process through a query param.

Samples

{
  "id": "6895df57920b519635cd08ff",
  "workspaceId": "559ae2249db800a7b0fa02ad58b196ae",
  "eventType": "service_run",
  "timestamp": 1754652503978,
  "spektrId": "6895df2c8ecdcab40a53e5c8",
  "data": {
    "stepType": "complyAdvantageKyc",
    "stepId": "689520965b9adf44780d2b6d",
    "vendorType": "complyAdvantageKyc",
    "contextId": "6895df2c8ecdcab40a53e5c9",
    "processId": "6890970bb7a99f6e058e6254",
    "processName": "test customers",
    "processType": "onboarding",
    "vendorData": {
      "complyAdvantageKyc_has_sanctions": true,
      "complyAdvantageKyc_has_adverse_media": true,
      "complyAdvantageKyc_is_PEP": true,
      "complyAdvantageKyc_is_PEP_class_1": true,
      "complyAdvantageKyc_has_sanctions_hit_count": 2,
      "complyAdvantageKyc_has_adverse_media_hit_count": 15,
      "complyAdvantageKyc_is_PEP_hit_count": 1,
      "complyAdvantageKyc_is_PEP_class_1_hit_count": 1,
      "complyAdvantageKyc_has_warnings": false,
      "complyAdvantageKyc_service_failure": false,
      "has_sanctions_unresolved_alerts": true,
      "has_sanctions_alerts_with_no_matches": false,
      "has_adverse_media_unresolved_alerts": true,
      "has_adverse_media_alerts_with_no_matches": false,
      "has_is_pep_unresolved_alerts": true,
      "has_is_pep_alerts_with_no_matches": false
    }
  }
}

ALERT_ESCALATED

{
  "id": "<event-id>",
  "spektrId": "<id end-user related to this event>",
  "eventType": "alert_resolved",
  "timestamp": 1672531199000,
	"workspaceId": "<id of workspace>",
  "data": {
    "contextId":"<process-run-id",
    "processId":"<process-id>",
    "alertType":"<type of alert>",
    "alertId":"<alert-id>",
    "alertName": "<alert name>",
    "reference": "<associated reference if present, or else undefined>",
		"datasetId": "<dataset-id>",
    "status": "open"
  }
}
NameTypeDescription
idstringEvent ID.
spektrIdstringID of the end-user related to this event.
eventTypestringType of event, e.g., "alert_resolved".
timestampnumberEpoch timestamp when the event was created.
workspaceIdstringID of the workspace.
data.contextIdstringID of the process run.
data.alertTypestringThe type of alert e.g. "manual_review"
data.datasetIdstringThe dataset for the customer the alert pertains to
data.alertIdstringAlert ID.
data.alertNamestringName of the alert.
data.statusstringThe status of the alert e.g. "open"

ALERT_RESOLVED

{
  "id": "<event-id>",
  "spektrId": "<id end-user related to this event>",
  "eventType": "alert_resolved",
  "timestamp": 1672531199000,
	"workspaceId": "<id of workspace>",
  "data": {
    "contextId":"<process-run-id",
    "processId":"<process-id>",
    "userId":"<user-id that resolved alert>",
    "alertId":"<alert-id>",
    "alertName": "<alert name>",
    "reference": "<associated reference if present, or else undefined>"
  }
}
NameTypeDescription
idstringEvent ID.
spektrIdstringID of the end-user related to this event.
eventTypestringType of event, e.g., "alert_resolved".
timestampnumberEpoch timestamp when the event was created.
workspaceIdstringID of the workspace.
data.contextIdstringID of the process run.
data.processIdstringProcess ID.
data.userIdstringID of the user who resolved the alert.
data.alertIdstringAlert ID.
data.alertNamestringName of the alert.
data.referencestring \undefinedAssociated reference if present, or else undefined.

Samples

{
  id: '685bee5fc7097fb20c2d0693',
  workspaceId: '559ae2249db800a7b0fa02ad58b196ae',
  eventType: 'alert_resolved',
  timestamp: 1750855263822,
  spektrId: '6867939d9a16445cb538a881',
  data: {
    processId: '67ea79350b4c07c041a50db7',
    contextId: '67eba5f9ce9a594e4519cc88',
    alertId: '67eba62500dd50ed396deb0c',
    alertName: 'ComplyAdvantage PEP Alert'
  },
},

CUSTOMER_TAG<>

{
  "id": "<event-id>",
  "spektrId": "<id end-user to/from which the tag was added/removed>",
  "eventType": "customer_tag_add" | "customer_tag_remove",
  "timestamp": 1672531199000,
	"workspaceId": "<id of workspace>",
  "data": {
    "tagId": "<tag-id>",
		"tagName": "<tag name if present, or else undefined>",
    "action": "add" | "remove",
    "userId":"<user-id that added/removed the tag>",
    "processId":"<process-id that added/removed>",
    "reference": "<associated reference if present, or else undefined>"
  }
NameTypeDescription
idstringEvent ID.
spektrIdstringID of the end-user to which the tag was added.
eventTypestringType of event, e.g., "customer_tag_add" or "customer_tag_remove"
timestampnumberEpoch timestamp when the event was created.
workspaceIdstringID of the workspace.
data.tagIdstringTag ID.
data.tagNamestring \undefinedTag name if present, or else undefined.
data.actionstringAction performed, i.e., 'add' or 'remove'.
data.userIdstring \nullID of the user who added the tag, may be null.
data.processIdstring \nullProcess ID, may be null.
data.referencestring \undefinedAssociated reference if present, or else undefined.

Samples

{
  id: '6852bca704fe27794144fec3',
  workspaceId: '559ae2249db800a7b0fa02ad58b196ae',
  eventType: 'customer_tag_add',
  timestamp: 1750252711466,
  spektrId: '6867939d9a16445cb538a881',
  data: {
    tagName: 'dfs',
    action: 'add'
  },
},

CUSTOMER_STATUS_CHANGE (deprecated)

{
  "id": "<event-id>",
  "spektrId": "<id end-user to which the tag was added>",
  "eventType": "customer_status_change",
  "timestamp": 1672531199000,
  "data": {
    "oldStatus": "<old status>",
    "newStatus":"<new status>",
    "customerName": "name of the end-user (individual or corporation)",
    "userId":"<user-id that changed the status if changed by user>",
    "processId": "<process-id that changed the status if changed by a process>",
    "processName": "<process name that changed the status if changed by a process>"
  }
}
NameTypeDescription
idstringEvent ID.
spektrIdstringID of the end-user to which the tag was added.
eventTypestringType of event: customer_tag_add
timestampnumberEpoch timestamp when the event was created.
data.oldStatusstringOld status before the change.
Possible values are "pending" | "approved" | "rejected" | "archived" | undefined
data.newStatusstringPossible values are "pending" | "approved" | "rejected" | "archived" | undefined
data.customerNamestringName of the end-user (individual or corporation).
data.processIdstring | nullProcess ID that changed the status, if changed by a process.
data.processNamestring | nullProcess name that changed the status, if changed by a process.

CUSTOMER_STATUS_CHANGED

{
  "id": "<event-id>",
  "spektrId": "<id end-user to which the tag was added>",
  "eventType": "customer_status_changed",
  "timestamp": 1672531199000,
  "workspaceId": "<id of workspace>",
  "data": {
    "oldStatus": "<old status>",
    "newStatus":"<new status>",
    "method": {
      "type": "process" | "user",
      "processId": "<process-id>",	
			"userId": "<user-id>"
    },
  }
}
NameTypeDescription
idstringEvent ID.
spektrIdstringID of the end-user to which the tag was added.
eventTypestringType of event: customer_tag_add
timestampnumberEpoch timestamp when the event was created.
data.oldStatusstringOld status before the change.
Possible values are "pending" | "approved" | "rejected" | "archived" | undefined
data.newStatusstringPossible values are "pending" | "approved" | "rejected" | "archived" | undefined
data.methodobjectMetadata about the update method.
data.method.typestringThe source of the update (i.e. "process" or "user")
data.method.processIdstring | undefinedProcess ID that caused the update, if the type is "process"
data.method.userIdstring | undefinedUser ID that caused the update, if the type is "user"

Samples

{
  id: '6879f8090e380801df2a3e92',
  workspaceId: '559ae2249db800a7b0fa02ad58b196ae',
  eventType: 'customer_status_changed',
  timestamp: 1752823817954,
  spektrId: '68777232009ac594ff34644f',
  data: {
    oldStatus: 'pending',
    newStatus: 'approved',
    method: { type: 'process' },
    spektr_id: '68777232009ac594ff34644f',
  },
},

CUSTOMER_DUPLICATE_DETECTION

{
  "id": "<event-id>",
  "spektrId": "<id end-user related to this event>",
  "eventType": "customer_duplicate_detection",
  "timestamp": 1672531199000,
  "workspaceId": "<id of workspace>",
  "data": {
    "processId": "12345",
    "contextId": "67890", 
    "reference": "optional-reference",
    "spektr_id": "ID of the end-user to which the tag was added.",
    "customerDuplicateData": { "newRecordId": "<spektrId>", "oldRecordId": "<spektrId>" }
  }
}
NameTypeDescription
idstringEvent ID.
spektrIdstringID of the end-user related to this event.
eventTypestringType of event, e.g., customer_duplicate_detection.
timestampnumberEpoch timestamp when the event was created.
processIdstringID of the process.
contextIdstringID of the run.
workspaceIdstringID of the workspace.
data.processIdstring \undefinedID of the process.
data.contextIdstring \undefinedID of the execution context.
data.referencestring \undefinedAssociated reference if present, or else undefined.
data.spektr_idstring \undefinedRelated spektrId if present, or else undefined.
data.customerDuplicateDataObjectContains the spektrId of the original record and the duplicate
data.customerDuplicateData.newRecordIdstring \undefinedThe spektrId of the new record.
data.customerDuplicateData.oldRecordIdstring \undefinedThe spektrId of the old record.

Samples

{
  id: '68416dd53ed4ba72512d7a70',
  workspaceId: '559ae2249db800a7b0fa02ad58b196ae',
  eventType: 'customer_duplicate_detection',
  timestamp: 1749118421121,
  spektrId: '686cc916dab2db293799a2c3',
  data: {
    contextId: '68416db4aec0b0c8bd26d5fc',
    processId: '67d1301295adc080b6a01719',
    customerDuplicateData: { newRecordId: '68416db4aec0b0c8bd26d5fb' },
    spektr_id: '686cc916dab2db293799a2c3',
  },
},

CUSTOMER_RECORD_UPDATE (deprecated)

{
  "id": "<event-id>",
  "spektrId": "<id end-user related to this event>",
  "eventType": "customer_record_update",
  "timestamp": 1672531199000,
  "workspaceId": "<id of workspace>",
  "data": {
		"reference": "optional-reference",
    "first_name": "new name"
  }
}
NameTypeDescription
idstringEvent ID.
spektrIdstringID of the end-user to which the update was performed.
eventTypestringType of event, e.g., "customer_tag_add".
timestampnumberEpoch timestamp when the event was created.
workspaceIdstringID of the workspace.
dataobjectData that has been updated.

CUSTOMER_RECORD_CHANGED

{
  "id": "<event-id>",
  "spektrId": "<id end-user related to this event>",
  "eventType": "customer_record_changed",
  "timestamp": 1672531199000,
  "workspaceId": "<id of workspace>",
  "data": {
    "changes": [
      {
        "fieldId": "<field ID that changed>",
        "oldValue": "<old value of the field>",
        "newValue": "<new value of the field>"
			}
    ],
    "method": {
			"type": "api"
    },
		"reference": "optional-reference",
  }
}
NameTypeDescription
idstringEvent ID.
spektrIdstringID of the end-user to which the update was performed.
eventTypestringType of event, e.g., "customer_tag_add".
timestampnumberEpoch timestamp when the event was created.
workspaceIdstringID of the workspace.
dataobjectData that has been updated.
data.changesarrayAn array of field changes.
data.changes[].fieldIdstringThe ID of the field that changed
data.changes[].oldValueanyThe old value of the field that changed
data.changes[].newValueanyThe new value of the field that changed
data.methodobjectMetadata related to the method that triggered the update
data.method.typestringThe method type that triggered the update, e.g. 'api'

Samples

{
  id: '6878e0ed4a0ed103aad2517d',
  workspaceId: '559ae2249db800a7b0fa02ad58b196ae',
  eventType: 'customer_record_changed',
  timestamp: 1752752365392,
  spektrId: '6878df333cf39b7d3199f16e',
  data: {
    changes: [
      { fieldId: 'a0', newValue: 'a0' },
      { fieldId: 'a1', oldValue: 'v2', newValue: 'v99' },
      {
        fieldId: 'company_name',
        oldValue: 'company name 2',
        newValue: 'company name 3',
      },
    ],
    method: { type: 'api' }
  },
},

OWNERSHIP_AI_CREATED

{
  "id": "<event-id>",
  "spektrId": "<id of end-user related to this event>",
  "eventType": "ownership_ai_created",
  "timestamp": 1672531199000,
  "workspaceId": "<id of workspace>",
  "data": {
    "parentId":"<parent-spektrId>",
		"spektr_id": '<id of end-user related to this event>'
  }
}
NameTypeDescription
idstringEvent ID.
spektrIdstringID of the end-user to which the update was performed.
eventTypestringType of event, e.g., "ownership_ai_created".
timestampnumberEpoch timestamp when the event was created.
workspaceIdstringID of the workspace.
data.parentIdstringThe id of the parent customer.
data.spektr_idstringThe id of the end user related to this event.

Samples

{
  id: '6853e5c8ab3b749662feb3a6',
  workspaceId: '559ae2249db800a7b0fa02ad58b196ae',
  eventType: 'ownership_ai_created',
  timestamp: 1750328776922,
  spektrId: '6853e5c8ab3b749662feb39f',
  data: {
    parentId: '6853e5c8ab3b749662feb39f',
    spektr_id: '6853e5c8ab3b749662feb39f',
  },
},

OWNERSHIP_AI_ADDED_OWNER

{
  "id": "<event-id>",
  "workspaceId": "<id of workspace>",
  "spektrId": "<id end-user related to this event>",
  "eventType": "ownership_ai_added_owner",
  "timestamp": 1672531199000,
  "data": {
    "childId": "<spektrId of the child>",
		"spektr_id": "<id end-user related to this event>",
  }
}
NameTypeDescription
idstringEvent ID.
spektrIdstringID of the end-user to which the update was performed.
eventTypestringType of event, e.g., "ownership_ai_added_owner".
timestampnumberEpoch timestamp when the event was created.
workspaceIdstringID of the workspace.
data.childIdstringThe id of the child customer which was AI discovered.
data.spektr_idstringThe id of the end user related to this event.

Samples

{
  id: '6810bfcdc656e5f3e1594362',
  workspaceId: '559ae2249db800a7b0fa02ad58b196ae',
  eventType: 'ownership_ai_added_owner',
  timestamp: 1745928141388,
  spektrId: '680f4a0f0d9a0fe44154de02',
  data: {
    childId: '6810bfccc656e5f3e1594353',
    spektr_id: '680f4a0f0d9a0fe44154de02',
  },
},

CLIENT_RECORD_SYNC

{
  "id": "<event-id>",
  "workspaceId": "<id of workspace>",
  "spektrId": "<id end-user related to this event>",
  "eventType": "client_record_sync",
  "timestamp": 1672531199000,
  "data": {
    "lastSyncedAt": 1672531199000,
    "vendor":"<vendor name, e.g. hubspot>",
    "objectType":"<object type>"
  }
}
NameTypeDescription
idstringEvent ID.
spektrIdstringID of the end-user to which the update was performed.
eventTypestringType of event, e.g., "client_record_sync".
timestampnumberEpoch timestamp when the event was created.
workspaceIdstringID of the workspace.
data.lastSyncedAtnumberThe time when the customer was synced, in millis since epoch
data.vendorstringThe vendor that was used to sync the customer data, e.g. hubspot
data.objectTypestringThe object type of the customer in relation with the vendor, e.g. hubspot contacts

Samples

{
  id: '6811c9c1516c28952cfb5fc3',
  workspaceId: '559ae2249db800a7b0fa02ad58b196ae',
  eventType: 'client_record_sync',
  timestamp: 1745996225926,
  spektrId: '6811c9318c21029ae05832bd',
  data: {
    lastSyncedAt: 1745996225915,
    vendor: 'hubspot',
    objectType: 'hubspot contacts',
    spektr_id: '6811c9318c21029ae05832bd',
  },
},

STEP_INIT

{
  "id": "<event-id>",
  "workspaceId": "<id of workspace>",
  "spektrId": "<id end-user related to this event>",
  "eventType": "step_init",
  "timestamp": 1672531199000,
  "data": {
    "processType": "risk",
    "processName": "Risk Assessment",
    "processId": "12345",
    "contextId": "67890",
		"stepId": "<ID of the inited step>",
    "stepType": "<step type, 'form' or 'ownershipTreeForm'>",
		"token": "<the token>",
    "reference": "optional-reference"
  }
}
NameTypeDescription
idstringEvent ID.
spektrIdstringID of the end-user to which the update was performed.
eventTypestringType of event, e.g., "client_record_sync".
timestampnumberEpoch timestamp when the event was created.
workspaceIdstringID of the workspace.
dataobjectkey-value entries from end-user or external services. 'key' corresponds to field.key when entry was submitted by end-user.
data.processNamestringName of the process.
data.processTypestringType of process, e.g. 'onboarding'
data.processIdstringID of the process
data.stepIdstringID of the inited step.
data.stepTypestringType of the inited step, 'form' or 'ownershipTreeForm'.
data.referencestring \undefinedOptional value passed to the onboarding process through a query param.
data.contextIdstringID of the execution of the process

Samples

{
  id: '687782e92f8e4aaa7c857e3c',
  workspaceId: '559ae2249db800a7b0fa02ad58b196ae',
  eventType: 'step_init',
  timestamp: 1752662761594,
  spektrId: '687782da2f8e4aaa7c857dda',
  data: {
    processType: 'onboarding',
    processName: 'test stringList startOnboarding',
    processId: '686660b573833dea357e86f6',
    contextId: '687782da2f8e4aaa7c857ddb',
    stepType: 'form',
    stepId: '686660b873833dea357e8702',
    token:
      'eyJpZCI6ImQ4NjFjYmJjMGI1YjVhMGZjZjIwMTkxMGNmOGFhOGMyIiwidG9rZW4iOiJkMTRkN2YwMWI5MGZkNThmMmYxMjNlMmM2NzNkZTE0MmFjNDZlMzBkZjdmMDgzYjk3ZWRlYTM4MmU2YTE3YjRmIn0='
  },
},

STEP_SUBMIT

{
  "id": "<event-id>",
  "workspaceId": "<id of workspace>",
  "spektrId": "<id end-user related to this event>",
  "eventType": "step_init",
  "timestamp": 1672531199000,
  "data": {
    "processType": "risk",
    "processName": "Risk Assessment",
    "processId": "12345",
    "contextId": "67890",
		"stepId": "<ID of the submitted step>",
    "stepType": "<step type, 'form' or 'ownershipTreeForm'>",
		"token": "<the token>",
    "reference": "optional-reference"
  }
}
NameTypeDescription
idstringEvent ID.
spektrIdstringID of the end-user to which the update was performed.
eventTypestringType of event, e.g., "client_record_sync".
timestampnumberEpoch timestamp when the event was created.
workspaceIdstringID of the workspace.
dataobjectkey-value entries from end-user or external services. 'key' corresponds to field.key when entry was submitted by end-user.
data.processNamestringName of the process.
data.processTypestringType of process, e.g. 'onboarding'
data.processIdstringID of the process
data.stepIdstringID of the submitted step.
data.stepTypestringType of the submitted step, 'form' or 'ownershipTreeForm'.
data.contextIdstringID of the execution of the process

Samples

{
  id: '687782e92f8e4aaa7c857e3c',
  workspaceId: '559ae2249db800a7b0fa02ad58b196ae',
  eventType: 'step_submit',
  timestamp: 1752662761594,
  spektrId: '687782da2f8e4aaa7c857dda',
  data: {
    processType: 'onboarding',
    processName: 'test stringList startOnboarding',
    processId: '686660b573833dea357e86f6',
    contextId: '687782da2f8e4aaa7c857ddb',
    stepType: 'form',
    stepId: '686660b873833dea357e8702',
    token:
      'eyJpZCI6ImQ4NjFjYmJjMGI1YjVhMGZjZjIwMTkxMGNmOGFhOGMyIiwidG9rZW4iOiJkMTRkN2YwMWI5MGZkNThmMmYxMjNlMmM2NzNkZTE0MmFjNDZlMzBkZjdmMDgzYjk3ZWRlYTM4MmU2YTE3YjRmIn0='
  },
},