NinjaPipe icon

NinjaPipe

Production-ready NinjaPipe node with one action interface, safer validation, Databin webhook support, and update-friendly UX

Contact → Create Or Update Contact By Email

AI-generated

Summary

Creates a new contact or updates an existing one matching the provided email address.

Inputs

  • useGuidedFields — When true, guided contact fields are used to build the request body; when false, rawBodyJson is sent as the full request body. Defaults to true.
  • contactEmail — Email address; used to check for an existing contact and as the primary identifier in the API request.
  • contactFirstName — First name of the contact, included in the request body when useGuidedFields is true.
  • contactLastName — Last name of the contact, included in the request body when useGuidedFields is true.
  • contactPhone — Phone number of the contact, included in the request body when useGuidedFields is true.
  • contactCompanyName — Company name of the contact, included in the request body when useGuidedFields is true.
  • contactStatus — Status of the contact, included in the request body when useGuidedFields is true.
  • contactCountry — Country code for the contact (default DE); determines which states are available for contactState.
  • contactState — State or Bundesland; shown for supported countries like DE, AT, and CH, depends on contactCountry.
  • contactNotes — Notes for the contact, included in the request body when useGuidedFields is true.
  • customFields — Custom fields sent as custom_fields in the request body. Each entry has a field name, type (string/number/boolean/json/null), and value.
  • advancedBodyJson — Optional advanced JSON payload merged after the guided fields. Takes precedence over guided fields for overlapping keys. Defaults to {}.
  • rawBodyJson — Optional raw JSON body used when useGuidedFields is false. When useGuidedFields is true, this field is hidden. Defaults to {}.
  • resourcePathOverride — Override the default endpoint path (e.g., /contacts). Only effective when showAdvanced is true. Defaults to
  • showAdvanced — When true, reveals resourcePathOverride and rawBodyJson fields for special cases. Defaults to false.

Output shape

An array of items, each containing { json: } from the NinjaPipe API response. No custom field flattening is applied for this operation.

The operation first checks whether a contact with the given email already exists via a GET request. If an existing contact is found, a PUT request updates it; otherwise, a POST request creates a new contact.

Links

Discussion