socure · Arazzo Workflow

Socure Watchlist Alert Triage

Version 1.0.0

List open watchlist monitoring alerts for a profile and move a selected alert through its disposition.

1 workflow 1 source API 1 provider
View Spec View on GitHub ArazzoWorkflows

Provider

socure

Workflows

watchlist-alert-triage
Pull a profile's new alerts, set the first to in_review, and record its final disposition.
Lists new monitoring alerts for a profile, transitions the first alert into review, and then writes a final disposition with analyst notes.
3 steps inputs: apiKey, dispositionNotes, finalStatus, profileId, reviewNotes outputs: alertId, sourceListName
1
listNewAlerts
listMonitoringAlerts
List the new (unworked) alerts for the monitoring profile and capture the first alert id to triage.
2
openReview
updateMonitoringAlert
Move the selected alert into the in_review state with analyst notes.
3
recordDisposition
updateMonitoringAlert
Record the final disposition for the alert, clearing or confirming the match with analyst notes.

Source API Descriptions

Arazzo Workflow Specification

socure-watchlist-alert-triage-workflow.yml Raw ↑
arazzo: 1.0.1
info:
  title: Socure Watchlist Alert Triage
  summary: List open watchlist monitoring alerts for a profile and move a selected alert through its disposition.
  description: >-
    The analyst triage flow for ongoing watchlist monitoring. The workflow lists
    new alerts for a monitoring profile, takes the first open alert, moves it into
    review, and then records a final disposition of cleared or confirmed. Every
    step inlines its request so the alert triage flow can be read and executed
    without opening the underlying OpenAPI description.
  version: 1.0.0
sourceDescriptions:
- name: watchlistApi
  url: ../openapi/socure-watchlist-monitoring-api-openapi.yml
  type: openapi
workflows:
- workflowId: watchlist-alert-triage
  summary: Pull a profile's new alerts, set the first to in_review, and record its final disposition.
  description: >-
    Lists new monitoring alerts for a profile, transitions the first alert into
    review, and then writes a final disposition with analyst notes.
  inputs:
    type: object
    required:
    - apiKey
    - profileId
    - finalStatus
    properties:
      apiKey:
        type: string
        description: Socure API key presented as `SocureApiKey <api-key>`.
      profileId:
        type: string
        description: Monitoring profile whose alerts are being triaged.
      finalStatus:
        type: string
        description: Final disposition for the alert (cleared or confirmed).
      reviewNotes:
        type: string
        description: Analyst notes recorded when moving the alert into review.
      dispositionNotes:
        type: string
        description: Analyst notes recorded with the final disposition.
  steps:
  - stepId: listNewAlerts
    description: >-
      List the new (unworked) alerts for the monitoring profile and capture the
      first alert id to triage.
    operationId: listMonitoringAlerts
    parameters:
    - name: Authorization
      in: header
      value: SocureApiKey $inputs.apiKey
    - name: profileId
      in: query
      value: $inputs.profileId
    - name: status
      in: query
      value: new
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      firstAlertId: $response.body#/0/alertId
      sourceListName: $response.body#/0/sourceListName
    onSuccess:
    - name: hasAlert
      type: goto
      stepId: openReview
      criteria:
      - context: $response.body
        condition: $.length > 0
        type: jsonpath
    - name: noAlerts
      type: end
      criteria:
      - context: $response.body
        condition: $.length == 0
        type: jsonpath
  - stepId: openReview
    description: >-
      Move the selected alert into the in_review state with analyst notes.
    operationId: updateMonitoringAlert
    parameters:
    - name: Authorization
      in: header
      value: SocureApiKey $inputs.apiKey
    - name: alertId
      in: path
      value: $steps.listNewAlerts.outputs.firstAlertId
    requestBody:
      contentType: application/json
      payload:
        status: in_review
        notes: $inputs.reviewNotes
    successCriteria:
    - condition: $statusCode == 200
  - stepId: recordDisposition
    description: >-
      Record the final disposition for the alert, clearing or confirming the
      match with analyst notes.
    operationId: updateMonitoringAlert
    parameters:
    - name: Authorization
      in: header
      value: SocureApiKey $inputs.apiKey
    - name: alertId
      in: path
      value: $steps.listNewAlerts.outputs.firstAlertId
    requestBody:
      contentType: application/json
      payload:
        status: $inputs.finalStatus
        notes: $inputs.dispositionNotes
    successCriteria:
    - condition: $statusCode == 200
  outputs:
    alertId: $steps.listNewAlerts.outputs.firstAlertId
    sourceListName: $steps.listNewAlerts.outputs.sourceListName