Make Automations

Workflows

A closer look at the automations I've built in Make.com.

Back to portfolio

JotForm Submission Manager

Click to zoom

How the Workflow runs

When a Jotform submission arrives, it checks Google Sheets using the submission ID or email. If it already exists, the row is updated. If it does not exist, a new row is added. Each result receives a timestamp.

  1. 01Wait For New Form Submission Node

    • Watches for a new Jotform response through the configured webhook.
  2. 02Find Matching Row Node

    • Searches the Sheet table in your Google spreadsheet:
    • Column A = Jotform submission ID
    • Column B = email address
  3. 03Match Result Router Node

    • Splits the workflow based on whether a matching row was found.
  4. 04Update Existing Row Node

    • If a matching row exists, it updates all the details on that specific row, for example:
    • Column A: Submission ID
    • Column B: Email
    • Column C: Name
    • Column D: Phone
  5. 05Mark As Updated Node

    • Writes an updated timestamp into column Z of that row.
  6. 06Add New Row Node

    • If no matching row exists, it adds the submission as a new row using the same columns A–D.
  7. 07Mark As Added Node

    • Writes an added timestamp into column Z of the new row.

Auto-Sort Gmail Attachments on Google Drive

Click to zoom

How the Workflow runs

This workflow automatically takes email attachments from Gmail, gives them a new name using Gemini AI, saves them to Google Drive, records the details in Google Sheets, and sends a summary email. This workflow eliminates the need to manually download, rename, organize, record, and report email attachments.

  1. 01Watch for New Email with Attachments Node

    • Monitors the Gmail inbox for new mails with attachments. It also has a filter node wherein it will only continue to the next step if mail has an attachment.
  2. 02Check and Retrieve Attachments Node

    • Retrieves attachment data from each matching email, and returns the attachment file, filename, and data type.
  3. 03Upload and Analyze by Gemini AI Node

    • Sends each attachment's file data to Gemini. It also has a filter node wherein it will only continue if the file type is not officedocument since Gemini won't upload Microsoft Word or Excel document types.
  4. 04Generate a New File Name Node

    • Gemini creates a new filename based on the uploaded/analyzed file. The result is used as the filename in the next step.
  5. 05Upload the File to Google Drive Node

    • Uploads the original attachment data to a specific Google Drive folder and uses Gemini's generated filename.
  6. 06Log New File Data to Google Sheets Node

    • Adds a row to Sheet1 for record. The logged fields are:
    • Current date/time
    • Original filename
    • New Gemini-generated filename
    • Document type
    • Google Drive web link
  7. 07Send Summary Email to Recipient Node

    • Send Summary Email about the attachment to Recipient.

Asana Xero Reporting Automation

Click to zoom

How the Workflow runs

Check Asana for newly completed tasks and automatically takes transaction information from Xero. Turns it into a report, and attaches that report to a completed Asana task.

  1. 01Watch Completed Tasks Node

    • Tracks completed Asana tasks and triggers the workflow automatically.
  2. 02Xero – Make an API Call Node

    • Connects to Xero and pulls account transactions from the previous year.
  3. 03Router Node

    • Divides the process into two paths to handle and prepare the transaction data.
  4. 04Iterator Node

    • Goes through each transaction individually for processing.
  5. 05Google Sheets – Add a Row Node

    • Saves each transaction as a new row in Google Sheets.
  6. 06Tools – Sleep Node

    • Adds a short delay to ensure all transaction data is properly recorded.
  7. 07Google Sheets – Get Range Values Node

    • Collects the transaction records stored in Google Sheets.
  8. 08Asana – Upload an Attachment Node

    • Uploads the CSV report and attaches it to the completed Asana task.
  9. 09Google Sheets – Clear Values from a Range Node

    • Removes the processed transaction data to prepare the sheet for the next run.