Deletion Condition

Deletion Condition

Configures which field in an incoming record signals that the entity has been deleted in the source system. When the configured field's value matches any of the configured expected values, the record is treated as deleted — removed from the event in ExpoPlatform and counted as a skip with reason deleted.

The mechanism is the same across every integration that supports it; only the default field path and values differ (see below).


How to configure

The setting appears in the entity's settings section of the integration configuration page, labelled Deletion Condition Settings. Each supported entity type has its own configuration block:

Field

Purpose

Default

Field Path

The path within the incoming record's data to check. Supports dot notation for nested fields (for example status.code or flags.removed).

Integration-specific

Expected Values

Comma-separated list. The record is considered deleted if the field's value equals any value in the list.

Integration-specific

Match Type

How the field's value is compared to the expected values: equals (exact match) or begins with (case-insensitive prefix match).

equals

Values are compared as strings (true/false booleans are converted to "true" / "false" first), so true and "true" both match true in the list.


Defaults by integration

Integration

Default Field Path

Default Expected Values

Match Type

Notes

Visit

deleted

true

equals

Configured separately on Visitor and Exhibitor. A hardcoded deleted: true check also fires first, ahead of the configured check.

D2i

StatusCode

CANCELLED

equals

A registration whose StatusCode equals CANCELLED is removed from the event.

Swoogo

(empty — manager sets the company-name field, e.g. c_XXXXXXX.value)

CANCELLED

begins with

Exhibitors only. Off by default until the field path is configured. Implements the convention of renaming a cancelled company with a CANCELLED prefix in Swoogo.

HubSpot

(empty — check off by default)

(empty)

equals

Available on visitors and exhibitors, deliberately off by default. Records leaving the event scope are handled by the full-sync cleanup step instead. Records archived in HubSpot are always treated as deleted via a hardcoded check that runs ahead of this one.

For Visit and HubSpot, the hardcoded check always runs first. The configurable field-path check is there to cover source systems that signal deletion in a different shape. Integrations without a hardcoded check apply only the configured check.


What happens when a record is deleted

Each incoming record is checked for deletion before field mapping runs.

  • Record already exists in the event (update path): the record is removed from the event before the sync run is finalised.

    • For exhibitors, team members and products on the exhibitor are deactivated first, then the exhibitor itself is unlinked from the event.

  • Record doesn't yet exist in the event (create path): the record is skipped — nothing is created.

ExpoPlatform retains the underlying account or exhibitor record itself. Only the link to this event is removed. The visitor or exhibitor still exists at the environment level and can be reused in other events.


Behaviour summary

Scenario

Result

Field path matches expected value; record exists in event

Record removed from event, skip recorded with reason deleted

Field path matches expected value; record does not exist in event

Skip recorded with reason deleted, nothing created

Field path doesn't match expected value

Record proceeds normally through the pipeline

Field path is empty (check disabled)

No deletion check runs (only the integration's hardcoded check, if any, applies)