/lovable-integrations

Lovable and Freshsales integration: Step-by-Step Guide 2025

Discover how to seamlessly integrate Lovable with Freshsales and boost productivity. Follow our step-by-step guide for a quick and efficient setup.

Matt Graham, CEO of Rapid Developers

Book a call with an Expert

Starting a new venture? Need to upgrade your web app? RapidDev builds application with your growth in mind.

Book a free No-Code consultation

How to integrate Lovable with Freshsales?

 

Creating the Freshsales Integration File

 

In your Lovable project’s source directory, create a new file named freshsalesIntegration.ts inside a folder called integrations (create the folder if it doesn’t already exist). This file will contain all the code to communicate with Freshsales using their API.


// File: src/integrations/freshsalesIntegration.ts

// Define the shape of a Freshsales contact
interface FreshsalesContact {
  first_name: string;
  last_name: string;
  email: string;
  phone?: string;
  // You can add additional fields here if needed
}

// Replace with your actual Freshsales subdomain and API key
const FRESHSALES_DOMAIN = 'yourdomain.freshsales.io';
const APIKEY = 'YOURAPIKEYHERE';

// This function sends a POST request to Freshsales to create a new contact.
export async function createFreshsalesContact(contact: FreshsalesContact): Promise {
  const url = https://${FRESHSALES_DOMAIN}/api/contacts;

  const response = await fetch(url, {
    method: 'POST',
    headers: {
      'Authorization': Token token=${API_KEY},
      'Content-Type': 'application/json'
    },
    body: JSON.stringify({ contact })
  });

  if (!response.ok) {
    const errorText = await response.text();
    throw new Error(Freshsales API error: ${errorText});
  }

  return response.json();
}

 

Integrating Freshsales in Your Main Code

 

Open the file where your Lovable project handles new contact submissions. This might be a main controller file or a handler function file. Import the createFreshsalesContact function from the integration file, then use it to send new contact data to Freshsales when needed.


// Example usage in your main TypeScript file (e.g., src/main.ts or wherever new contacts are processed)
import { createFreshsalesContact } from './integrations/freshsalesIntegration';

// Define the structure of your contact data as per your project needs.
interface ContactData {
  firstName: string;
  lastName: string;
  email: string;
  phone?: string;
}

// When a new contact is added in Lovable, call this function.
async function handleNewContact(contact: ContactData) {
  try {
    // Map your contact data to the structure expected by Freshsales
    const result = await createFreshsalesContact({
      first_name: contact.firstName,
      last_name: contact.lastName,
      email: contact.email,
      phone: contact.phone
    });
    console.log('Freshsales contact created successfully:', result);
  } catch (error) {
    console.error('Error creating Freshsales contact:', error);
  }
}

// Call handleNewContact when a contact is created, for example:
// handleNewContact({ firstName: 'John', lastName: 'Doe', email: '[email protected]', phone: '1234567890' });

 

Installing Dependencies Without a Terminal

 

Lovable projects do not have a terminal. Therefore, if your TypeScript code or project requires additional libraries (for example, if you need a fetch polyfill for older environments), add them directly via a CDN or inline script. For instance, if fetch is not available, add this script tag in your HTML file where the project loads its modules:


<script src="https://cdnjs.cloudflare.com/ajax/libs/whatwg-fetch/3.6.2/fetch.umd.js"></script>

Make sure this script tag is added before your bundled TypeScript code is run.

 

Final Integration Check

 

Review that:

  • Your freshsalesIntegration.ts file is correctly placed under src/integrations/.
  • The API credentials (FRESHSALESDOMAIN and APIKEY) are updated with your actual Freshsales account details.
  • The main file that processes contact information imports and calls createFreshsalesContact properly.
  • If necessary, the fetch polyfill is added via a script tag to support environments without a native fetch.

By following these steps, your Lovable project will be integrated with Freshsales to create new contacts via the Freshsales API.

Still stuck?
Copy this prompt into ChatGPT and get a clear, personalized explanation.

This prompt helps an AI assistant understand your setup and guide you through the fix step by step, without assuming technical knowledge.

AI AI Prompt

Want to explore opportunities to work with us?

Connect with our team to unlock the full potential of no-code solutions with a no-commitment consultation!

Book a Free Consultation

Client trust and success are our top priorities

When it comes to serving you, we sweat the little things. That’s why our work makes a big impact.

Rapid Dev was an exceptional project management organization and the best development collaborators I've had the pleasure of working with. They do complex work on extremely fast timelines and effectively manage the testing and pre-launch process to deliver the best possible product. I'm extremely impressed with their execution ability.

CPO, Praction - Arkady Sokolov

May 2, 2023

Working with Matt was comparable to having another co-founder on the team, but without the commitment or cost. He has a strategic mindset and willing to change the scope of the project in real time based on the needs of the client. A true strategic thought partner!

Co-Founder, Arc - Donald Muir

Dec 27, 2022

Rapid Dev are 10/10, excellent communicators - the best I've ever encountered in the tech dev space. They always go the extra mile, they genuinely care, they respond quickly, they're flexible, adaptable and their enthusiasm is amazing.

Co-CEO, Grantify - Mat Westergreen-Thorne

Oct 15, 2022

Rapid Dev is an excellent developer for no-code and low-code solutions.
We’ve had great success since launching the platform in November 2023. In a few months, we’ve gained over 1,000 new active users. We’ve also secured several dozen bookings on the platform and seen about 70% new user month-over-month growth since the launch.

Co-Founder, Church Real Estate Marketplace - Emmanuel Brown

May 1, 2024 

Matt’s dedication to executing our vision and his commitment to the project deadline were impressive. 
This was such a specific project, and Matt really delivered. We worked with a really fast turnaround, and he always delivered. The site was a perfect prop for us!

Production Manager, Media Production Company - Samantha Fekete

Sep 23, 2022