Sourcier Contact icon

Sourcier Contact

Manage Bullhorn contacts — CRUD, notes, parent company

Upsert

AI-generated

Summary

Upsert a ClientContact record in Bullhorn by searching for an existing record using a matched entity ID or a custom field/value pair, then update it according to the chosen update mode or create a new record if none is found and creation is enabled.

Inputs

  • Authentication (required) — Choose between User Credentials (Email & Password) or Enterprise Credentials (API Key) to authenticate the operation.
  • Enable Operations Log — Optionally emit an audit log entry for each write operation to aid in maintaining an audit trail.
  • Matched Entity ID — Use a pre-resolved Bullhorn entity ID to skip internal search for matching records. If not provided, use matchField and matchValue for search.
  • Match Field — Bullhorn contact field to search within for an existing record; ignored if Matched Entity ID is provided.
  • Match Value — Value to search for in the match field; not required if Matched Entity ID is specified.
  • Update Mode (required) — Determine how to handle existing fields on matched records: update only empty fields, overwrite all fields, or do not update existing records (match only).
  • Create If Not Found (required) — Whether to create a new contact if no existing record matches
  • Input Mode (required) — Source of upsert field data: from a Sourcier Importer node's mapped output or manual field-value mappings.
  • Mapped Data Reference — Expression returning the mapped field object for importer mode; defaults to reading from the direct input's $json.mapped.
  • Values to Send — Manually map Bullhorn fields to values for the upsert when Input Mode is manual.

Output shape

a list of records detailing upsert actions, including created, updated, enriched, matched, unchanged, ambiguous, or not found outcomes; optionally an operations log output if enabled.

The operation returns separate outputs for positive results, no results found, and an optional Operations Log when enabled. It handles multiple input items and continues on failure if configured. The upsert fails if neither a matched entity ID nor both match field and match value are provided, or if no field data is found for update or creation.

Examples

Example 1: Upsert using a pre-resolved entity ID

Provide Matched Entity ID, set Update Mode to 'Overwrite All Fields' or 'Update Empty Fields Only', and provide upsert fields from importer or manual mapping.

Example 2: Upsert by matching a field-value pair

Leave Matched Entity ID blank; set Match Field to e.g. 'email' and Match Value to the corresponding email; configure the desired update mode and creation behavior; provide mapped data accordingly.

Links

Discussion