Library / Data quality / data-quality-001

Required field enforcement on contact creation (email or phone missing)

Data quality Sales Hub Professional Contact Simple ~20 min to build

Outcome. New contacts missing a usable email or phone number are flagged and routed to a cleanup queue instead of sitting incomplete and unnoticed.

Workflow mapEnrollment, branches and actions at a glance
flowchart TD
    A[Contact created] --> B{Email and phone present?}
    B -->|both missing| C[Flag: Missing contact info + list + task]
    B -->|email only| D[Flag: Missing phone + list]
    B -->|phone only| E[Flag: Missing email + list]
    B -->|both present| F[Flag: Complete]

When to use it / when not to

Prerequisites

Enrollment

Steps

  1. If/then branch: Email is unknown AND Phone number is unknown
    • Set property value: Data quality flag = Missing contact info
    • Add to static list: Needs contact info review
    • Create task: type "To-do", title "Get contact info - {{contact.firstname}} {{contact.lastname}}", due in 2 business days, assigned to data owner
  2. Else if: Email is known, Phone number is unknown
    • Set property value: Data quality flag = Missing phone
    • Add to static list: Needs contact info review
  3. Else if: Phone number is known, Email is unknown
    • Set property value: Data quality flag = Missing email
    • Add to static list: Needs contact info review
  4. Else (both present)
    • Set property value: Data quality flag = Complete

Known pitfalls

Test plan

  1. Create four test contacts: no email/no phone, email only, phone only, both present.
  2. Open workflow history (Automation > Workflows > this workflow > History) and confirm all four enrolled.
  3. Check each record's Data quality flag value matches the expected branch.
  4. Confirm the two incomplete-info records landed in the Needs contact info review list.
  5. Confirm the fully-missing record generated a task, visible in the assigned owner's task queue and on the record timeline.

Variants

Build spec

trigger:
  type: event-based
  event: contact_created
  criteria: []
  reenrollment: false
  suppression_list: null
branches:
  - condition: email_unknown AND phone_unknown
    actions:
      - type: set_property_value
        property: data_quality_flag
        value: "Missing contact info"
      - type: add_to_static_list
        list: "Needs contact info review"
      - type: create_task
        task_type: to_do
        title: "Get contact info - {{contact.firstname}} {{contact.lastname}}"
        due: +2_business_days
        assigned_to: data_owner
  - condition: email_known AND phone_unknown
    actions:
      - type: set_property_value
        property: data_quality_flag
        value: "Missing phone"
      - type: add_to_static_list
        list: "Needs contact info review"
  - condition: phone_known AND email_unknown
    actions:
      - type: set_property_value
        property: data_quality_flag
        value: "Missing email"
      - type: add_to_static_list
        list: "Needs contact info review"
  - condition: else
    actions:
      - type: set_property_value
        property: data_quality_flag
        value: "Complete"
This spec is one of the five free ones, complete as shown. Download all 5 free specs as PDF, Markdown and properties JSON. Paid packs add the same files for every spec in the pack, plus the custom coded actions.
Everything add-on Install this workflow in my portal Two clicks: authorise your portal, confirm. Properties created, workflow delivered switched off, ready to review. Coming to Everything and Pro buyers first.