Skip to main content
Actions are how a Zap pushes data into Goliath. The current integration focuses entirely on contacts: you can create them from structured fields, create them from raw text using AI, update existing contacts, and look them up. Every contact created via a Zapier action is automatically labeled with Source: Zapier, so you can filter for them in the Goliath contact list and see a running count under Automations → Integrations.
Goliath de-duplicates contacts automatically. If a Zap creates a contact that matches an existing one, the new information is merged into the existing record instead of creating a duplicate — so it’s safe to re-run a Zap.

Create Contact

Create a new contact from structured fields like name, phone, email, and address.

Fields

full_name
string
The contact’s full name.
phone_number
string
Phone number in any format. Include the country code for international numbers.
contact_email
string
Email address.
contact_address
string
A property address. Goliath will resolve it to a structured property and link it to the contact.
note
string
An internal note attached to the contact.
tags
string[]
Tag names to apply to the contact. New tags are created automatically if they don’t exist yet in your workspace.
contributors
string[]
Full names of Goliath users to add as contributors on the contact.

Example

A typical mapping from a web-form Zap might look like this:
Zap step fieldMapped from
full_nameForm: Name
phone_numberForm: Phone
contact_emailForm: Email
contact_addressForm: Property Address
tagsInbound Lead, Web Form
noteForm: Message

Create Contact from Text (AI)

Create a contact from a blob of unstructured text — call notes, a forwarded email, a transcribed voicemail, a form submission. Goliath’s extraction model parses the text and pulls out the contact’s name, phone, email, address, and any other relevant context. You can also pass any of the structured fields from Create Contact alongside the text. Structured fields take precedence over what the AI extracts, so use them when you already know the answer.

Fields

unstructured_text
string
required
Raw text describing the contact. Map this from the message body, voicemail transcript, or call notes in your trigger app.
full_name
string
Override the AI-extracted name.
phone_number
string
Override the AI-extracted phone.
contact_email
string
Override the AI-extracted email.
contact_address
string
Override the AI-extracted address.
tags
string[]
Tag names to apply to the resulting contact.
note
string
An additional internal note, on top of the unstructured text.
contributors
string[]
Full names of users to assign as contributors.

Example

A voicemail transcription Zap might pass something like:
“Just got off the phone with Paul Davis. He’s at 123 Main Street in Austin and wants to sell. His cell is 555-555-0123 and you can also reach him at paul@example.com. He mentioned he’s looking at a 60-day close.”
Goliath will create a contact named Paul Davis with the phone, email, and property address all extracted automatically.
Use this action when you’re wiring Zapier to email parsers, voicemail transcribers, or any other source that produces messy text rather than clean fields.

Update Contact

Add new information to an existing contact without overwriting what’s already there. You’ll need the contact’s Goliath ID, which you can get from the Find Contact action or from the Contact Tag Added trigger. Updates are additive:
  • New phone numbers and emails are appended; existing ones are kept.
  • New tags are added; existing ones are kept.
  • The note is replaced if you provide one.
  • Contributors are added; existing contributors are not removed.

Fields

contact_id
string
required
The Goliath contact ID. Map this from a previous Find Contact step or from the Contact Tag Added trigger.
All fields from Create Contact are also accepted and optional.

Example

A common pattern is a follow-up Zap that watches your dialer for completed calls, finds the matching contact in Goliath, and adds a note plus a Followed Up tag:
Zap step fieldMapped from
contact_idFind Contact step → id
tagsFollowed Up
noteDialer: Call Notes

Find Contact

Look up an existing contact by name, phone, or email. Returns a list of matches — usually 0 or 1, but more if duplicates exist in your workspace. By default, the search requires all the fields you provide to match. Turn on Match any to fall back to a looser search if the strict match returns nothing.

Fields

full_name
string
Full name to search for.
phone_number
string
Phone number in any format.
contact_email
string
Email address.
match_any
boolean
default:"false"
When on, if no contact matches all the fields you provided, Goliath retries with a looser search and returns matches on any of them, in priority order: name, then phone, then email.
You must provide at least one of Full Name, Phone Number, or Email. The step will fail if all three are empty.

What you get back

Each result includes the contact’s ID, name, all phone numbers, all emails, all linked property addresses, contributors, and tags — so you can map any of those into the next step of your Zap.

Common patterns

  • Idempotent enrichment. In a Zap that processes inbound leads, run Find Contact first. If it returns nothing, run Create Contact. Otherwise run Update Contact with the returned ID.
  • Routing. Use Find Contact to resolve a phone number from an inbound SMS to the right Goliath contact, then push the message into a Slack thread tagged with the contact’s name.