Send ad leads straight into ServiceM8 as a Company, Contact, and Quote-ready Job -- so your tradies see new jobs in their queue without you re-typing a thing.
Connect ServiceM8 with 4 lead sources
When a Facebook lead comes in, LeadSync creates three linked records in your ServiceM8 account in sequence: a Company (named after the lead's company or full name), a CompanyContact attached to it with the lead's email, phone, and mobile, and a Job with status set to Quote so it lands in your team's quote queue ready for scheduling or follow-up. The job's job_description includes the form name, submission timestamp, and any extra questions you captured on the lead form, so the assigned tech sees the full context the moment they open it.
ServiceM8 stores email and phone on the Contact rather than the Company itself, so LeadSync follows ServiceM8's data model exactly -- creating the Contact in a separate API call linked to the Company by company_uuid. The street address goes on the Company in structured fields (address_street, address_city, address_state, address_postcode, address_country) so ServiceM8 can geocode it for routing.
Before creating a new Company, LeadSync searches ServiceM8's CompanyContact endpoint by email. If a contact with that email already exists -- a returning client, or a prospect who filled out a different ad form for the same business -- LeadSync skips the Company and Contact creation steps and goes straight to creating the new Job under the existing company_uuid. Your customer list stays clean and the new quote threads onto the existing record rather than forking a parallel one.
This matters more for field service than other verticals: ServiceM8 doesn't merge duplicate Companies automatically, and a tech opening the wrong customer record can mean travelling to the wrong address. Threading new jobs onto existing customer records keeps the dispatcher's view accurate.
ServiceM8 uses OAuth -- click connect, authorize from your ServiceM8 account, and LeadSync handles the rest. Access tokens are valid for one hour and refresh automatically when an API call returns 401; the rotated refresh token is persisted back to your connection record so the next refresh works cleanly.
If the refresh token itself becomes permanently invalid -- for example, the LeadSync app was removed from inside ServiceM8, or the connection sat idle long enough for the OAuth server to time it out -- LeadSync detects this on the next lead, marks the connection as needing reconnection, and sends you a one-time email with a direct link to reconnect. Any leads that arrived while the connection was dead are automatically re-queued the moment you reconnect, so no submissions are lost in the gap.
Set up your ServiceM8 integration in under 60 seconds. Free 7-day trial, no credit card required.
Start Your Free Trial