The Send Webhook action step lets you send data to an external URL whenever an automation runs. Use it to connect GoCRM with third-party tools like Zapier, Make, Slack, or your own APIs
Configuration
Webhook Name
An optional label to help you identify this webhook. This is for your reference only — it is not sent with the request.
Webhook URL
The URL that will receive the POST request. This must be a valid, publicly accessible URL.
You can also insert a dynamic URL from a previous step's output by clicking the step output button and selecting a URL-type output.
Headers
Set custom HTTP headers as key-value pairs. By default, the Content-Type header is set to application/json.
You can add additional headers and use output references from previous automation steps as header values.
JSON Payload
The body of the POST request. You can configure this in two modes:
Simple mode: A key-value editor where you define fields and their values. By default, it includes a contact key with the Contact Payload, which sends the full contact record. You can add more keys with static values or insert dynamic values from previous steps using output references.
Raw mode: A free-form JSON editor for full control over the payload structure. Supports nested objects and arrays. Use the [contact-payload] placeholder as a value anywhere in your JSON to inject the full contact record at that location. A
Beautify button is available to format your JSON.
You can switch between Simple and Raw mode at any time. Note: switching from Raw to Simple is only possible if your JSON has no nested objects.
Using Output References
Any field that supports output references (URL, header values, payload values) lets you insert dynamic data from previous steps in the automation. For example, if a previous step outputs a URL or a text value, you can reference it in your webhook configuration. These references are resolved at execution time with the actual values from the automation run.
Contact Payload
The contact payload includes the full contact record with the following related data:
{
"id": "xk9m2v34adg",
"first_name": "John",
"last_name": "Smith",
"email": "[email protected]",
"post": "Marketing Director",
"website": "https://acme.com",
"contact_type": "person",
"adding_method": "manual",
"details_confirmed": true,
"created_at": 1711468800,
"updated_at": 1711555200,
"deleted_at": null,
"user": {
"id": "ab3k7p",
"first_name": "Sarah",
"last_name": "Jones",
"email": "[email protected]",
"active": true,
"team_admin": false,
"team_owner": false,
"thumbnail": "https://assets.example.com/storage/avatars/sarah.jpg"
},
"status": {
"id": 1,
"name": "lead",
"title": "Lead",
"order": 1
},
"company": {
"id": "rm4n8w",
"first_name": "Acme Corp",
"last_name": null,
"email": "[email protected]",
"contact_type": "company",
"company_name": "Acme Corp"
},
"address": {
"country": "US",
"state": "CA",
"city": "San Francisco",
"street": "123 Market St",
"zip_code": "94105",
"lat": 37.7749,
"lon": -122.4194
},
"channels": [
{
"id": 1,
"name": "Google Ads",
"pages": [],
"landings": [],
"referrers": [],
"utm_sources": ["google"],
"utm_mediums": ["cpc"]
}
],
"campaigns": [
{
"id": 1,
"name": "Spring 2024",
"utm_campaigns": ["spring_2024"]
}
],
"work_phone": {
"id": 1,
"type": "work",
"number": "+14155551234",
"voip": false,
"toll_free": false
},
"mobile_phone": {
"id": 2,
"type": "mobile",
"number": "+14155555678",
"voip": false,
"toll_free": false
},
"collaborators": [
{
"id": "cd5j9q",
"first_name": "Mike",
"last_name": "Chen",
"email": "[email protected]"
}
],
"custom_attributes": [
{
"id": 1,
"type_id": 10,
"value": "Enterprise"
},
{
"id": 2,
"type_id": 11,
"value": "50000"
}
]
}
Test Request
Before activating your automation, you can send a test request to verify your webhook is configured correctly:
Select a contact from the dropdown — this contact's data will be used in the test
Click Send Test Request
The response status code will appear below the button (green for success, red for errors)
This sends a real HTTP request to your webhook URL using the selected contact's data, so you can confirm your receiving service handles it correctly.
Retry Behavior
If the webhook request fails, GoCRM will automatically retry up to 3 times before marking the step as failed.
Outputs
The step outputs the HTTP status code from the response, which can be referenced by subsequent steps in the automation.
