Before you begin
- Use current HighLevel API documentation for new work and avoid starting new builds on unsupported legacy API versions.
- Create a Private Integration Token for a single location or OAuth app for a marketplace/multi-location integration.
- Confirm the target Location and duplicate contact settings.
- Create tags or custom fields for InstaChime source, campaign, score, and lead ID.
HighLevel setup
- Receive `lead.created` in a bridge, Zapier Zap, or Make scenario.
- Map lead name, email, phone, source, campaign, and message to the HighLevel contact model.
- Call the contacts upsert endpoint so existing contacts are updated according to the Location duplicate settings.
- Optionally add a tag such as `InstaChime` and create an opportunity or workflow trigger in HighLevel.
- Return the HighLevel contact ID to InstaChime in the destination response.
Upsert contact shape
{
"email": "jamie@example.com",
"phone": "+15555550123",
"firstName": "Jamie",
"lastName": "Lee",
"source": "InstaChime",
"tags": ["InstaChime", "google_ads"]
}Verify
- Send a sample lead and confirm the contact is created or updated in the correct Location.
- Confirm duplicate settings behave correctly when email and phone already exist on separate contacts.
- Confirm tags, custom fields, and workflow triggers are applied.
- Confirm the contact ID is visible in the InstaChime webhook delivery response.
Exact HighLevel setup
- Confirm the target Location where contacts should be created.
- Create a Private Integration Token for that Location, or set up OAuth for a multi-location app.
- Review the Location duplicate contact settings.
- Create custom fields for InstaChime lead ID, source platform, campaign, score, and sentiment.
- Build a bridge, Zap, or Make scenario that receives `lead.created`.
- Call HighLevel upsert contact with email, phone, name, source, tags, and custom fields.
- Optionally create an opportunity or trigger a HighLevel workflow after the contact upsert.
- Return the HighLevel contact ID to InstaChime.
HighLevel mapping choices
- Map `lead.customer_name` into first and last name when possible.
- Map phone in E.164 format if your SMS workflows depend on it.
- Use tags such as `InstaChime`, source platform, and campaign name for segmentation.
- Use custom fields for values that should not overwrite standard contact fields.
- Send source as `InstaChime` plus original source details in custom fields if the account already has source conventions.
HighLevel troubleshooting
- If contacts duplicate, review Location duplicate contact settings and the upsert payload.
- If token calls fail, confirm the token is for the correct Location.
- If tags are missing, add tags after contact creation if the upsert endpoint does not apply them as expected.
- If workflows do not run, confirm the workflow trigger watches the fields/tags your integration sets.
- If custom fields are blank, confirm custom field IDs/internal names in HighLevel.
Official references
These vendor-owned pages explain the controls and requirements referenced in this guide.
- HighLevel API docsOfficial documentation used to verify this setup path and its current vendor requirements.
- HighLevel upsert contactOfficial documentation used to verify this setup path and its current vendor requirements.
- HighLevel Contacts APIOfficial documentation used to verify this setup path and its current vendor requirements.