Skip to main content

Send Webhook

Written by Oriol Zertuche
Updated over a week ago

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:

  1. Select a contact from the dropdown — this contact's data will be used in the test

  2. Click Send Test Request

  3. 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.

Did this answer your question?