Skip to Content
IntegrationMake (Integromat) Templates

Make.com Automation Templates

Yes, I can create importable JSON blueprints for Make.com based on the 5 scenario templates I outlined earlier. These are constructed using the standard Make.com blueprint format, with filled-in mappers for data flow, parameters for module configurations, and metadata to ensure they import without errors. Upon import, you’ll need to: - Connect your accounts (e.g., HubSpot, Google Calendar) in the Make.com editor. - Replace placeholder values (e.g., webhook IDs, API keys if needed, or specific fields like email addresses) with your own. - Test with sample data from Dialora.ai. Each blueprint is a complete, self-contained JSON object. Copy-paste it into a .json file and import via Make.com’s “Import Blueprint” option. I’ve kept them minimal and functional, avoiding null mappers or error messages.

Make (Integromat) Templates

Advanced Calendar Booking with Conflict Detection

Scenario Name: Dialora Smart Calendar Booking

{ modules: [ { module: "webhook", name: "Dialora Trigger", webhook_url: "https://hook.eu1.make.com/[YOUR_UNIQUE_ID]", }, { module: "google_calendar.searchEvents", name: "Check Conflicts", parameters: { calendar: "primary", timeMin: "{{payload.requested_start}}", timeMax: "{{payload.requested_end}}", }, }, { module: "router", routes: [ { condition: "{{length(2.events) = 0}}", path: "booking_available", }, { condition: "{{length(2.events) > 0}}", path: "suggest_alternatives", }, ], }, { module: "google_calendar.createEvent", name: "Book Meeting", route: "booking_available", }, { module: "tools.setVariable", name: "Find Alternatives", route: "suggest_alternatives", value: "{{generateAlternativeSlots()}}", }, { module: "http.makeRequest", name: "Callback to Dialora", url: "{{dialora_callback_url}}", method: "POST", body: "{{booking_result}}", }, ], }, null, 2 )

Multi-Channel Follow-Up Sequence

Scenario Name: Dialora Omnichannel Follow-Up

// Make.com Scenario Flow Webhook Trigger → Data Store (Check if contact exists) → Router: Path A: New Contact - Create in CRM - Send Welcome Email - Schedule SMS (delay 1 hour) - Add to Nurture Campaign Path B: Existing Contact - Update last contact date - Check engagement score - Route to appropriate sequence Aggregator (Collect all actions) → Webhook Response to Dialora

Intelligent Lead Scoring & Routing

// Lead Scoring Logic Module function scoreAndRoute(callData) { let score = 0; // Scoring criteria if (callData.company_size > 100) score += 30; if (callData.budget > 10000) score += 40; if (callData.timeline === "immediate") score += 30; if (callData.decision_maker === true) score += 20; // Routing logic if (score >= 80) { return { route: "high_priority", assignTo: "senior_sales", action: "immediate_callback", }; } else if (score >= 50) { return { route: "qualified", assignTo: "sales_team", action: "email_sequence", }; } else { return { route: "nurture", assignTo: "marketing", action: "drip_campaign", }; } }

Log Call Transcription to CRM (HubSpot)

{ name: "Dialora Fetch Contacts from Google Sheets", flow: [ { id: 1, module: "gateway:CustomWebHook", version: 1, parameters: { hook: 1234572, maxResults: 1, }, mapper: {}, metadata: { designer: { x: 0, y: 0 }, }, }, { id: 2, module: "google-sheets:SearchRows", version: 1, parameters: {}, mapper: { spreadsheetId: "your_spreadsheet_id", sheetName: "Contacts", filter: "Phone IS NOT NULL", limit: "{{ifempty(1.limit; 5)}}", }, metadata: { designer: { x: 300, y: 0 }, }, }, { id: 3, module: "builtin:ArrayAggregator", version: 1, parameters: {}, mapper: { source: "{{2.rows}}", target: "contacts", }, metadata: { designer: { x: 600, y: 0 }, }, }, { id: 4, module: "gateway:WebhookRespond", version: 1, parameters: {}, mapper: { status: 200, body: '{"contacts": {{3.array}}}', }, metadata: { designer: { x: 900, y: 0 }, }, }, ], metadata: { instant: false, version: 1, scenario: { roundtrips: 1, maxErrors: 3, autoCommit: true, autoCommitTriggerLast: true, sequential: false, confidential: false, dataloss: false, dlq: false, freshVariables: false, }, designer: { orphans: [] }, zone: "eu1.make.com", notes: [], }, },

Create Calendar Appointment from Call Transcription (Google Calendar)

{ name: "Dialora Create Google Calendar Event", flow: [ { id: 1, module: "gateway:CustomWebHook", version: 1, parameters: { hook: 1234568, maxResults: 1, }, mapper: {}, metadata: { designer: { x: 0, y: 0, }, }, }, { id: 2, module: "util:TextParserMatchPattern", version: 1, parameters: {}, mapper: { text: "{{1.transcription}}", pattern: "(book|schedule) (appointment|meeting) for (?\\w+) at (?\\d+:\\d+)", }, metadata: { designer: { x: 300, y: 0, }, }, }, { id: 3, module: "builtin:DateFormat", version: 1, parameters: {}, mapper: { date: "{{2.date}} {{2.time}}", format: "YYYY-MM-DD HH:mm", }, metadata: { designer: { x: 600, y: 0, }, }, }, { id: 4, module: "google-calendar:CreateEvent", version: 5, parameters: {}, mapper: { summary: "Appointment with {{1.caller_number}}", start: { dateTime: "{{3.date}}", }, end: { dateTime: "{{add(3.date; 3600)}}", }, description: "{{1.transcription}} - Recording: {{1.recording_url}}", }, metadata: { designer: { x: 900, y: 0, }, }, }, { id: 5, module: "gateway:WebhookRespond", version: 1, parameters: {}, mapper: { status: 200, body: '{"appointment_id": "{{4.id}}", "status": "booked"}', }, metadata: { designer: { x: 1200, y: 0, }, }, }, ], metadata: { instant: false, version: 1, scenario: { roundtrips: 1, maxErrors: 3, autoCommit: true, autoCommitTriggerLast: true, sequential: false, confidential: false, dataloss: false, dlq: false, freshVariables: false, }, designer: { orphans: [], }, zone: "eu1.make.com", notes: [], }, },

Send Follow-Up Email/SMS After Call (Gmail/Twilio)

{ name: "Dialora Send Follow-Up", flow: [ { id: 1, module: "gateway:CustomWebHook", version: 1, parameters: { hook: 1234569, maxResults: 1, }, mapper: {}, metadata: { designer: { x: 0, y: 0, }, }, }, { id: 2, module: "openai:ClassifyText", version: 1, parameters: {}, mapper: { text: "{{1.transcription}}", prompt: "Classify call as: interested, followup_needed, closed.", }, metadata: { designer: { x: 300, y: 0, }, }, }, { id: 3, module: "builtin:BasicRouter", version: 1, mapper: {}, metadata: { designer: { x: 600, y: 0, }, }, routes: [ { flow: [ { id: 4, module: "gmail:SendEmail", version: 1, parameters: {}, mapper: { to: "{{1.caller_email}}", subject: "Follow-Up on Our Call", content: "Transcription: {{1.transcription}}", }, metadata: { designer: { x: 900, y: -100, }, }, }, ], filter: { name: "Interested", conditions: [ [ { a: "{{2.classification}}", o: "textcontains", b: "interested", }, ], ], }, }, { flow: [ { id: 5, module: "twilio:SendMessage", version: 1, parameters: {}, mapper: { to: "{{1.caller_number}}", body: "Thanks for the call! Next steps: ...", }, metadata: { designer: { x: 900, y: 100, }, }, }, ], filter: { name: "Followup Needed", conditions: [ [ { a: "{{2.classification}}", o: "textcontains", b: "followup_needed", }, ], ], }, }, ], }, { id: 6, module: "gateway:WebhookRespond", version: 1, parameters: {}, mapper: { status: 200, body: '{"followup_sent": true}', }, metadata: { designer: { x: 1200, y: 0, }, }, }, ], metadata: { instant: false, version: 1, scenario: { roundtrips: 1, maxErrors: 3, autoCommit: true, autoCommitTriggerLast: true, sequential: false, confidential: false, dataloss: false, dlq: false, freshVariables: false, }, designer: { orphans: [], }, zone: "eu1.make.com", notes: [], }, },

Update Lead Status in CRM After Outbound Call (Salesforce)

{ name: "Dialora Update Salesforce Lead", flow: [ { id: 1, module: "gateway:CustomWebHook", version: 1, parameters: { hook: 1234570, maxResults: 1, }, mapper: {}, metadata: { designer: { x: 0, y: 0, }, }, }, { id: 2, module: "util:SetVariable", version: 1, parameters: {}, mapper: { name: "call_type", scope: "roundtrip", value: "{{1.call_type}}", }, metadata: { designer: { x: 300, y: 0, }, }, }, { id: 3, module: "salesforce:SearchRecords", version: 1, parameters: {}, mapper: { object: "Lead", query: "Phone = '{{1.caller_number}}'", }, metadata: { designer: { x: 600, y: 0, }, }, }, { id: 4, module: "util:TextParserExtractText", version: 1, parameters: {}, mapper: { text: "{{1.transcription}}", pattern: "interested|booked demo", }, metadata: { designer: { x: 900, y: 0, }, }, }, { id: 5, module: "salesforce:UpdateRecord", version: 1, parameters: {}, mapper: { object: "Lead", id: "{{3.records[1].Id}}", fields: { Status: '{{if(contains(4.text; "demo"); "Demo Scheduled"; "Qualified")}}', }, }, metadata: { designer: { x: 1200, y: 0, }, }, }, { id: 6, module: "gateway:WebhookRespond", version: 1, parameters: {}, mapper: { status: 200, body: '{"status_updated": "qualified"}', }, metadata: { designer: { x: 1500, y: 0, }, }, }, ], metadata: { instant: false, version: 1, scenario: { roundtrips: 1, maxErrors: 3, autoCommit: true, autoCommitTriggerLast: true, sequential: false, confidential: false, dataloss: false, dlq: false, freshVariables: false, }, designer: { orphans: [], }, zone: "eu1.make.com", notes: [], }, },

Fetch Calendar Availability During Call (Google Calendar)

{ name: "Dialora Check Google Calendar Availability", flow: [ { id: 1, module: "gateway:CustomWebHook", version: 1, parameters: { hook: 1234571, maxResults: 1, }, mapper: {}, metadata: { designer: { x: 0, y: 0, }, }, }, { id: 2, module: "google-calendar:SearchEvents", version: 1, parameters: {}, mapper: { timeMin: "{{1.date}}T00:00:00Z", timeMax: "{{1.date}}T23:59:59Z", }, metadata: { designer: { x: 300, y: 0, }, }, }, { id: 3, module: "builtin:ArrayAggregator", version: 1, parameters: {}, mapper: { source: "{{2.events}}", target: "busy_times", }, metadata: { designer: { x: 600, y: 0, }, }, }, { id: 4, module: "builtin:Iterator", version: 1, parameters: {}, mapper: { array: "{{generateAvailableSlots(9:00-17:00; 30 minutes; exclude 3.busy_times)}}", }, metadata: { designer: { x: 900, y: 0, }, }, }, { id: 5, module: "gateway:WebhookRespond", version: 1, parameters: {}, mapper: { status: 200, body: '{"available_slots": {{4.array}}}', }, metadata: { designer: { x: 1200, y: 0, }, }, }, ], metadata: { instant: false, version: 1, scenario: { roundtrips: 1, maxErrors: 3, autoCommit: true, autoCommitTriggerLast: true, sequential: false, confidential: false, dataloss: false, dlq: false, freshVariables: false, }, designer: { orphans: [], }, zone: "eu1.make.com", notes: [], }, },

Overview: Dialora sends a request to the webhook (e.g., with parameters like “campaign_id” or empty for next batch). Make.com searches Google Sheets for contacts (e.g., rows with phone numbers), formats them, and responds synchronously with a list of contacts to call. Assumptions: Sheets has columns like Name, Phone, Email. Webhook payload from Dialora: ( “action”: “fetch_contacts”, “limit”: 5 )

{ name: "Dialora Log Call to HubSpot", flow: [ { id: 1, module: "gateway:CustomWebHook", version: 1, parameters: { hook: 1234567, maxResults: 1, }, mapper: {}, metadata: { x: 0, y: 0, parameters: [ { name: "hook", type: "hook:gateway-webhook", label: "Webhook", required: true, }, ], }, }, { id: 2, module: "hubspot:SearchContacts", version: 1, parameters: {}, mapper: { query: "{{1.caller_number}}", limit: 1, }, metadata: { x: 300, y: 0, expect: [ { name: "query", type: "text", label: "Search Query", }, ], }, }, { id: 3, module: "builtin:BasicRouter", version: 1, mapper: {}, metadata: { x: 600, y: 0 }, routes: [ { flow: [ { id: 4, module: "hubspot:CreateEngagement", version: 1, parameters: {}, mapper: { type: "NOTE", body: "{{1.transcription}} - Recording: {{1.recording_url}}", associations: [ { associationType: "contact", id: "{{2.contacts[1].id}}", }, ], }, metadata: { x: 900, y: -100 }, }, ], filter: { name: "Contact Exists", conditions: [ [ { a: "{{length(2.contacts)}}", o: "gt", b: "0", }, ], ], }, }, { flow: [ { id: 5, module: "hubspot:CreateContact", version: 1, parameters: {}, mapper: { properties: { phone: "{{1.caller_number}}", }, }, metadata: { x: 900, y: 100 }, }, { id: 6, module: "hubspot:CreateEngagement", version: 1, parameters: {}, mapper: { type: "NOTE", body: "{{1.transcription}} - Recording: {{1.recording_url}}", associations: [ { associationType: "contact", id: "{{5.id}}", }, ], }, metadata: { x: 1200, y: 100 }, }, ], filter: { name: "No Contact", conditions: [ [ { a: "{{length(2.contacts)}}", o: "equal", b: "0", }, ], ], }, }, ], }, { id: 7, module: "gateway:WebhookRespond", version: 1, parameters: {}, mapper: { status: 200, body: '{"status": "logged"}', }, metadata: { x: 1500, y: 0 }, }, ], metadata: { instant: false, version: 1, scenario: { roundtrips: 1, maxErrors: 3, autoCommit: true, autoCommitTriggerLast: true, sequential: false, confidential: false, dataloss: false, dlq: false, freshVariables: false, }, designer: { orphans: [] }, zone: "eu1.make.com", notes: [], }, },

Fetch Contacts from CRM (HubSpot Example) for Outbound Calls

Overview: Similar to above, but fetches from HubSpot CRM. Dialora requests via webhook, Make searches contacts (e.g., by filter like “lifecycle_stage: lead”), responds with list including phones. Assumptions: Use for other CRMs by swapping modules (e.g., Salesforce Search Records, Pipedrive List Persons).

{ name: "Dialora Fetch Contacts from HubSpot", flow: [ { id: 1, module: "gateway:CustomWebHook", version: 1, parameters: { hook: 1234573, maxResults: 1, }, mapper: {}, metadata: { designer: { x: 0, y: 0, }, }, }, { id: 2, module: "hubspot:SearchContacts", version: 1, parameters: {}, mapper: { query: "lifecycle_stage:lead", limit: "{{ifempty(1.limit; 5)}}", }, metadata: { designer: { x: 300, y: 0, }, }, }, { id: 3, module: "builtin:ArrayAggregator", version: 1, parameters: {}, mapper: { source: "{{2.contacts}}", target: "contacts", }, metadata: { designer: { x: 600, y: 0, }, }, }, { id: 4, module: "gateway:WebhookRespond", version: 1, parameters: {}, mapper: { status: 200, body: '{"contacts": {{3.array}}}', }, metadata: { designer: { x: 900, y: 0, }, }, }, ], metadata: { instant: false, version: 1, scenario: { roundtrips: 1, maxErrors: 3, autoCommit: true, autoCommitTriggerLast: true, sequential: false, confidential: false, dataloss: false, dlq: false, freshVariables: false, }, designer: { orphans: [], }, zone: "eu1.make.com", notes: [], }, },

Update Contact, Log Call, and Add Note in CRM (HubSpot Example)

Overview: Post-call, webhook receives data from Dialora (e.g., caller_number, transcription, updated_info). Searches contact, updates fields (e.g., email if new), creates engagement for call log with transcription as note. Assumptions: For Salesforce: Use Update Record (Contact/Lead), Create Record (Task/Note). For Pipedrive: Update Person, Add Note. For HighLevel: Update Contact, Add Note.

{ name: "Dialora Update HubSpot Contact and Log Call", flow: [ { id: 1, module: "gateway:CustomWebHook", version: 1, parameters: { hook: 1234574, maxResults: 1, }, mapper: {}, metadata: { designer: { x: 0, y: 0, }, }, }, { id: 2, module: "hubspot:SearchContacts", version: 1, parameters: {}, mapper: { query: "{{1.caller_number}}", limit: 1, }, metadata: { designer: { x: 300, y: 0, }, }, }, { id: 3, module: "hubspot:UpdateContact", version: 1, parameters: {}, mapper: { contactId: "{{2.contacts[1].id}}", properties: { email: "{{1.updated_email}}", lastname: "{{1.updated_lastname}}", }, }, metadata: { designer: { x: 600, y: 0, }, }, }, { id: 4, module: "hubspot:CreateEngagement", version: 1, parameters: {}, mapper: { type: "CALL", body: "Call Log: {{1.transcription}} - Recording: {{1.recording_url}}", associations: [ { associationType: "contact", id: "{{3.id}}", }, ], }, metadata: { designer: { x: 900, y: 0, }, }, }, { id: 5, module: "gateway:WebhookRespond", version: 1, parameters: {}, mapper: { status: 200, body: '{"status": "updated"}', }, metadata: { designer: { x: 1200, y: 0, }, }, }, ], metadata: { instant: false, version: 1, scenario: { roundtrips: 1, maxErrors: 3, autoCommit: true, autoCommitTriggerLast: true, sequential: false, confidential: false, dataloss: false, dlq: false, freshVariables: false, }, designer: { orphans: [], }, zone: "eu1.make.com", notes: [], }, },

Update Contact, Log Call, and Add Note in CRM (Salesforce Example)

Overview: Similar to HubSpot, but for Salesforce. Updates Lead/Contact, creates a Task for log with transcription.

{ name: "Dialora Update Salesforce Lead and Log Call", flow: [ { id: 1, module: "gateway:CustomWebHook", version: 1, parameters: { hook: 1234575, maxResults: 1, }, mapper: {}, metadata: { designer: { x: 0, y: 0, }, }, }, { id: 2, module: "salesforce:SearchRecords", version: 1, parameters: {}, mapper: { object: "Lead", query: "Phone = '{{1.caller_number}}'", }, metadata: { designer: { x: 300, y: 0, }, }, }, { id: 3, module: "salesforce:UpdateRecord", version: 1, parameters: {}, mapper: { object: "Lead", id: "{{2.records[1].Id}}", fields: { Email: "{{1.updated_email}}", LastName: "{{1.updated_lastname}}", }, }, metadata: { designer: { x: 600, y: 0, }, }, }, { id: 4, module: "salesforce:CreateRecord", version: 1, parameters: {}, mapper: { object: "Task", fields: { Subject: "Call Log", Description: "{{1.transcription}} - Recording: {{1.recording_url}}", WhoId: "{{3.Id}}", }, }, metadata: { designer: { x: 900, y: 0, }, }, }, { id: 5, module: "gateway:WebhookRespond", version: 1, parameters: {}, mapper: { status: 200, body: '{"status": "updated"}', }, metadata: { designer: { x: 1200, y: 0, }, }, }, ], metadata: { instant: false, version: 1, scenario: { roundtrips: 1, maxErrors: 3, autoCommit: true, autoCommitTriggerLast: true, sequential: false, confidential: false, dataloss: false, dlq: false, freshVariables: false, }, designer: { orphans: [], }, zone: "eu1.make.com", notes: [], }, },

Scenario E: Update Contact, Log Call, and Add Note in CRM (Pipedrive Example)

Overview: Updates Person, adds Note with transcription.

{ name: "Dialora Update Pipedrive Person and Add Note", flow: [ { id: 1, module: "gateway:CustomWebHook", version: 1, parameters: { hook: 1234576, maxResults: 1, }, mapper: {}, metadata: { designer: { x: 0, y: 0, }, }, }, { id: 2, module: "pipedrive:SearchPersons", version: 1, parameters: {}, mapper: { term: "{{1.caller_number}}", limit: 1, }, metadata: { designer: { x: 300, y: 0, }, }, }, { id: 3, module: "pipedrive:UpdatePerson", version: 1, parameters: {}, mapper: { id: "{{2.items[1].id}}", email: "{{1.updated_email}}", name: "{{1.updated_name}}", }, metadata: { designer: { x: 600, y: 0, }, }, }, { id: 4, module: "pipedrive:CreateNote", version: 1, parameters: {}, mapper: { content: "{{1.transcription}} - Recording: {{1.recording_url}}", person_id: "{{3.id}}", }, metadata: { designer: { x: 900, y: 0, }, }, }, { id: 5, module: "gateway:WebhookRespond", version: 1, parameters: {}, mapper: { status: 200, body: '{"status": "updated"}', }, metadata: { designer: { x: 1200, y: 0, }, }, }, ], metadata: { instant: false, version: 1, scenario: { roundtrips: 1, maxErrors: 3, autoCommit: true, autoCommitTriggerLast: true, sequential: false, confidential: false, dataloss: false, dlq: false, freshVariables: false, }, designer: { orphans: [], }, zone: "eu1.make.com", notes: [], }, },

Update Contact, Log Call, and Add Note in CRM (HighLevel Example)

Overview: Updates Contact, adds Note for log.

{ name: "Dialora Update HighLevel Contact and Add Note", flow: [ { id: 1, module: "gateway:CustomWebHook", version: 1, parameters: { hook: 1234577, maxResults: 1, }, mapper: {}, metadata: { designer: { x: 0, y: 0, }, }, }, { id: 2, module: "highlevel:SearchContacts", version: 1, parameters: {}, mapper: { query: "{{1.caller_number}}", }, metadata: { designer: { x: 300, y: 0, }, }, }, { id: 3, module: "highlevel:UpdateContact", version: 1, parameters: {}, mapper: { id: "{{2.contacts[1].id}}", email: "{{1.updated_email}}", last_name: "{{1.updated_lastname}}", }, metadata: { designer: { x: 600, y: 0, }, }, }, { id: 4, module: "highlevel:CreateNote", version: 1, parameters: {}, mapper: { body: "{{1.transcription}} - Recording: {{1.recording_url}}", contactId: "{{3.id}}", }, metadata: { designer: { x: 900, y: 0, }, }, }, { id: 5, module: "gateway:WebhookRespond", version: 1, parameters: {}, mapper: { status: 200, body: '{"status": "updated"}', }, metadata: { designer: { x: 1200, y: 0, }, }, }, ], metadata: { instant: false, version: 1, scenario: { roundtrips: 1, maxErrors: 3, autoCommit: true, autoCommitTriggerLast: true, sequential: false, confidential: false, dataloss: false, dlq: false, freshVariables: false, }, designer: { orphans: [], }, zone: "eu1.make.com", notes: [], }, },