Make.com is a powerful integration platform connecting Nimble CRM with various third-party apps and websites. Nimble is a smart CRM that helps you manage relationships, automate workflows, and streamline communication.
You can leverage Make.com to automate processes, enhance productivity, and create seamless workflows across multiple platforms by generating an API key in Nimble. Whether you want to sync contacts, trigger actions, or update data, Make.com makes it easy to connect Nimble to the tools you use daily.
While this integration offers various possibilities, we’ll focus on a common workflow in this article:
Setting up a webhook to receive data from a service such as a lead generation tool or a customer feedback platform.
Use the webhook data to search for existing contacts in Nimble.
Based on the search results:
If the contact is found: Update the existing contact with new information.
If the contact is not found: Create a new contact entry in Nimble
Tools You'll Need:
Nimble API Documentation: Nimble API Docs
JSON Formatter: Use a tool like jsonformatter to format and validate your JSON data.
Webhook Testing Tool: A tool to test and troubleshoot your webhook integration
Step 1: Generate an API key in Nimble
Log in to Nimble: Access your Nimble CRM account
Navigate to API Settings: Go to "Settings" >> API and generate a new API key
Copy the API Key: You'll need this to authenticate requests from Make.com
Step 2: Create a New Scenario
Log in to Make.com: Start by logging into your Make.com account
Create New Scenario: Click on the "Create a new scenario" button on your dashboard
Step 3: Add the Webhook Module
Search for Webhooks: In the scenario editor, search for the "Webhooks" module in the module library.
Select "Custom Webhook": Choose the "Custom Webhook" trigger option.
Create a Webhook: Click on "Add," and Make.com will generate a unique webhook URL for you.
Copy the Webhook URL: Copy this URL, as you will need to use it in the service or application that will be sending data to this webhook.
Step 4: Add the HTTP: Make a Request Module
Using the HTTP module allows you to connect to any REST API. View our API documentation here: Nimble API Access
Search for HTTP Module: In the scenario editor, search for the "HTTP" module in the module library.
Select "Make a Request": Choose the "Make a Request" action.
Configure the HTTP Request:
Method: Choose the HTTP method (GET, POST, PUT, DELETE, etc.).
URL: Enter the API endpoint or URL where the request should be sent.
Headers: Add any required headers, such as `Authorization` or `Content-Type`
This is where you'll add the API token mentioned in Step 1. Under "Value" add "Bearer" then the API token.
Query Parameters: Add any required query parameters.
Under Name add "query" lowercase
Under Value - This is where you'll add your JSON with an advanced search query
Request Body: If you're using POST or PUT, specify the body of the request, which could include data received from the webhook.
Search for Contacts
Search for HTTP Module: In the scenario editor on Make.com, find the "HTTP" module in the module library.
Select "Make a Request": Choose the "Make a Request" action to initiate the search.
Configure the HTTP Request:
Method: Select the appropriate HTTP method (typically GET for searching).
URL: Input the Nimble API endpoint URL for searching contacts.
Headers: Add any necessary headers, such as
Authorization
with "Bearer" followed by the Nimble API token.Query Parameters: Add lowercase "query" as the Name, and under Value, insert the JSON containing your advanced search criteria, such as:
{
"and": [
{
"linkedin": {
"is": "{{3.linkedin}}"
}
},
{
"record type": {
"is": "person"
}
}
]
}
Send the Request: This request will query Nimble for any contacts matching the criteria specified in your JSON.
Verify the Search Results: Check the response to see if the contact information was retrieved successfully from Nimble.
Edit an Existing Contact
Setup HTTP Request:
Method: Choose PUT as the HTTP method.
URL: Enter the Nimble API endpoint for updating contacts.
Headers: Add required headers, including
Authorization
with "Bearer" followed by the Nimble API token.
Prepare Your JSON:
Include the contact ID and any fields you want to update. For example:
{
"fields": {
"first name": [
{
"value": "{{3.first_name}}"
}
],
"linkedin": [
{
"value": "{{3.linkedin}}"
}
],
"last name": [
{
"value": "{{3.last_name}}"
}
]
},
"record_type": "person"
}
Send the Request: POST this JSON to the Nimble API endpoint using Make.com.
Verify the Update: Check the response to ensure the contact was successfully updated.
Create a New Contact
Setup HTTP Request:
Method: Choose POST as the HTTP method.
URL: Input the Nimble API endpoint URL for creating new contacts.
Headers: Include headers such as
Authorization
with "Bearer" followed by the Nimble API token.
Prepare Your JSON:
Structure the JSON with the necessary contact details, like this:
{
"fields": {
"first name": [
{
"value": "{{3.first_name}}"
}
],
"linkedin": [
{
"value": "{{3.linkedin}}"
}
],
"last name": [
{
"value": "{{3.last_name}}"
}
]
},
"record_type": "person"
}
Send the Request: POST the JSON to the Nimble API endpoint.
Verify the Creation: Ensure the contact was created successfully by checking the response.
Step 5: Add the Router
Insert a Router:
Click on the plus (+) sign between the Webhook and HTTP modules
Select "Router" to split the scenario into multiple paths
Configure Paths:
Click on the Router to add new paths
For each path, add a new "HTTP: Make a Request" module
Set up the HTTP requests as needed, similar to Step 4
Step 6: Set Up AND/OR Rules in the Router
Define Conditions for Each Path:
Click on the three dots (...) on each path connected to the Router and select "Set up a filter."
Define the conditions that determine which path the data should take. For example:
Path 1 (Update Existing Contact):
Condition: Check if the data includes an existing contact (e.g., resource = contact AND email contains a known domain).
Action: This path might trigger an HTTP request to update the contact's details in Nimble
Path 2 (Create New Contact):
Condition: Check if the contact does not already exist (e.g., resource = contact AND email is not found in Nimble).
Action: This path could trigger an HTTP request to create a new contact in Nimble.
You can combine multiple conditions using AND/OR logic
Step 7: Test the Scenario
Run a Test:
Run the scenario with test data to ensure that everything is working as expected
Check that the Webhook triggers, the HTTP requests are made correctly, and the Router paths follow the correct conditions
Step 8: Activate the Scenario
Activate:
Once everything is tested and working, activate your scenario by clicking the "On/Off" switch at the bottom left
Your scenario is now live and will run whenever the webhook is triggered
Summary of the Flow
Webhook: Receives incoming data from an external source
HTTP Request: Processes the data by interacting with an external API
Router: Splits the scenario into multiple paths based on custom conditions
HTTP Requests in Paths: Sends further requests based on the Router’s conditions
This setup allows you to automate complex workflows, ensuring that your data is handled correctly and efficiently at every step.
If you have any questions, please write us at care@nimble.com, initiate a chat from this FAQ, or join one of our Nimble Onboarding and Best Practices sessions, held every weekday at 9 AM PT.