Connect TeamLeader Focus to your AI Employee to let customers check technician availability, book service visits, and cancel or reschedule appointments — all through a phone or chat conversation.
Prerequisites
An active TeamLeader Focus account with the Planning feature enabled
Technician users with active accounts, valid email addresses, and configured working hours
Access to the TeamLeader developer marketplace to create an OAuth application
Access to the Builder with publish permissions
Prepare your TeamLeader account
Before creating the integration, confirm your TeamLeader setup is ready:
Verify all technician users are active with valid email addresses and a configured timezone.
Set job titles (Functions) for each technician if you plan to route bookings by function.
Create teams in TeamLeader if you plan to route by team name.
Configure working hours per technician so availability queries return accurate results.
Register an OAuth application in TeamLeader
Go to the TeamLeader developer marketplace and create a new private integration.
Grant the following API scopes:
users,events,todos,contacts.Copy the Client ID and Client Secret generated by TeamLeader.
Create the TeamLeader project
Add the TeamLeader integration module to the customer's Builder. Follow the steps in Create a new project using these values:
Field | Value |
|
|
|
|
|
|
|
|
Ensure Auto update enabled is turned on, then click Create.
Once the project is created, click the three dots icon and select Force Update Project to pull the latest module version.
Authorize and configure the integration
In the Builder, go to Attributes and enable Show Hidden.
Paste the Client ID and Client Secret into the corresponding hidden fields and click Save.
Click the OAuth install link that appears to generate a one-time authorization code in TeamLeader.
Paste the authorization code back into the Builder when prompted.
Once authorized, the technician dropdown populates automatically. Select the default technician.
Click Publish All.
Routing modes
When multiple technicians are available, the integration uses a routing strategy to assign bookings. Set the routing mode in the integration attributes:
Mode | How it works |
| All bookings go to one designated technician |
| Matches the caller's request to technician job titles (Functions) set in TeamLeader |
| Assigns bookings based on TeamLeader team membership |
| Uses custom keyword-based rules written in plain text directly in the attribute |
What the AI Employee can do
Once configured, the AI Employee can handle the following:
Availability checking — queries live TeamLeader calendar slots for the relevant technician
Booking — creates a meeting (and optionally a task) in TeamLeader when the customer selects a time
Returning customer recognition — matches callers by phone number or email across sessions
Cancellation and rescheduling — modifies existing appointments without requiring a new booking flow
Complaint handling — recognizes when a caller is unhappy and avoids offering booking tools until the complaint is addressed
Customization guidelines
You can safely:
Reword the language around booking, cancellation, and reschedule steps
Add new questions between existing stages
Translate non-English scenario text
Do not change:
Code phrases that trigger API calls (e.g.,
Let me check the technician's calendar)Prompt section names such as
<AvailableSlots>and<BookingResult>The order or sequence of stages in a scenario
Test the integration
After publishing, verify the following:
Technician dropdown — confirm it is populated. An empty dropdown indicates an OAuth exchange failure — repeat the authorization steps.
Availability — ask to book a service visit and confirm the AI Employee returns real TeamLeader calendar slots.
Booking — complete a booking and verify the meeting appears in TeamLeader under the correct technician.
Reschedule — request a time change and verify the original appointment is updated, not duplicated.
Cancellation — request a cancellation and confirm the event is removed from TeamLeader.
Routing — if using a multi-technician mode, test that the correct technician is assigned based on your routing configuration.
Troubleshooting
Empty technician dropdown: The OAuth exchange did not complete. Repeat the authorization steps from the install link.
Wrong technician assigned: Verify the routing mode matches how your TeamLeader account is structured (Functions, teams, or config rules).
No availability returned: Confirm the technician's TeamLeader account has the Planning feature enabled and working hours configured.
Returning customer not recognized: Confirm customer lookup is enabled and that the phone number or email on file matches the caller's format exactly.
Bookings not found on follow-up calls: If using task-only booking mode, switch to "both" mode (meetings and tasks) for reliable cross-session lookup.
Limitations
Rescheduling preserves the original appointment duration unless the customer specifies otherwise.
Break times are only excluded from availability if calendar blocks already exist in TeamLeader for those periods.
One TeamLeader account per Newo project. For multiple accounts, create separate projects.
