GActionGoHighLevelUpdated September 2026

How do I add a contact to GoHighLevel?

Short answer: You can create gohighlevel contact in GoHighLevel by hand from its own interface, but it won’t repeat itself. On TinyCommand, add the GoHighLevel Create GoHighLevel Contact action to a workflow, map its 8 inputs from any upstream app, and it runs automatically every time the trigger fires. No code, and a free tier to start.

Create GoHighLevel Contact in GoHighLevel — start free
Inputs

The fields this action accepts.

Every field can be mapped from an upstream trigger, AI step, table row, or hard-coded literal.

FieldTypeRequiredDescription
Location ID
locationId
stringRequiredThe GoHighLevel sub-account (location) the contact belongs to.
Email
email
stringOptionalEmail. e.g. "user@example.com"
Phone
phone
stringOptionalPhone in E.164 format. e.g. "+15551234567"
First Name
firstName
stringOptionalFirst Name. e.g. "Jane"
Last Name
lastName
stringOptionalLast Name. e.g. "Smith"
Company
companyName
stringOptionalCompany Name. e.g. "Acme Inc"
Source
source
stringOptionalWhere this contact came from (used in GoHighLevel reporting). e.g. "Website Form"
Tags
tags
stringOptionalComma-separated tags to apply on creation.
Sample request
{
"locationId": "e.g. ve9EPM428h8vShlRW1KT",
"email": "user@example.com",
"phone": "+15551234567",
"firstName": "Jane",
"lastName": "Smith"
}
Returns
{
"contact": {
"id": "ocQHyuzHvysMo5N5VsXc",
"tags": [
"newsletter",
"lead"
],
"email": "jane@example.com",
"phone": "+15551234567",
"source": "Website Form",
"lastName": "Smith",
"dateAdded": "2026-04-11T10:00:00.000Z",
"firstName": "Jane",
"locationId": "ve9EPM428h8vShlRW1KT",
"companyName": "Acme Inc"
}
}

Use these fields in downstream nodes for routing, logging, or error handling.

Triggered by

Apps that pair well as the trigger for Create GoHighLevel Contact.

Any of these apps can fire this action as part of a workflow.

FAQ

Questions about Create GoHighLevel Contact.

What does the Create GoHighLevel Contact action do in GoHighLevel?
Inserts a contact with email, name, phone, custom fields, and starting tags. The base hook for "form submission → push to GHL" sync workflows in agency-managed sub-accounts.
What inputs does Create GoHighLevel Contact require?
Required: Location ID. Every input accepts a static value or a variable from any upstream node in your workflow.
Can I use dynamic inputs from earlier workflow nodes?
Yes. Any field on this action can pull values from upstream nodes, whether that's a form response, a trigger payload, an AI output, or a lookup result.
What happens if GoHighLevel returns an error?
The run history shows the failed step with its input and the error message GoHighLevel returned, so you can fix the input and run the workflow again. Automatic retries are built into HTTP steps only, where you can also set your own retry count and delay.
Does Create GoHighLevel Contact support batch operations?
Run Create GoHighLevel Contact inside a loop to process each item in an array. TinyCommand does not throttle calls for you, so for large arrays add a Delay step if you need to stay within GoHighLevel's rate limits.
More actions

Other GoHighLevel actions.

Create GoHighLevel Contact in GoHighLevel — start free