Back to Job / Project Scheduling

Process Runbook / SOP

How the automation works day-to-day: what is automatic, what needs a human, how exceptions are handled, and who to contact.

4 pagesPDF · Operations
FS-DOC-03Operations

Process Runbook / SOP

Job / Project Scheduling

[YourCompany.com] · Operations Department · Prepared by FullSpec · [Today's Date]

This runbook is the day-to-day operating guide for the Job / Project Scheduling automation. It explains what the automation does at each step, what your team is responsible for, how to handle exceptions when they arise, and how to keep the system running well over time. FullSpec has built and tested the automation end to end. Your team's role is limited to a single decision point for genuine scheduling conflicts plus routine maintenance tasks described in Section 05.

01Process overview

When a job is confirmed in Jobber, the automation takes over immediately. It queries Google Calendar to find an available crew member, assigns them, creates the calendar event, updates the Jobber record, logs the scheduled date in HubSpot, sends the crew a Slack notification, and emails the customer a confirmation. The entire chain runs in under two minutes for a clean job. The only moment a human is needed is when the system cannot automatically resolve a crew conflict, in which case it flags the job and waits for the scheduler to intervene. This replaces eight previously manual steps that collectively consumed around six hours of scheduler time per week.

Process name
Job / Project Scheduling
Trigger
A job is marked confirmed in Jobber (webhook fires automatically)
Final output
Crew assigned, calendar event created, Jobber and HubSpot updated, crew notified via Slack, customer emailed via Gmail
Agents running
Availability and Assignment Agent; Notifications and CRM Sync Agent
Tools involved
Jobber, Google Calendar, HubSpot, Slack, Gmail
Weekly volume
Approximately 10 to 20 jobs per week (40 to 80 per month)
Human checkpoint
Conflict resolution only: scheduler manually assigns crew when the system cannot find an available match
Process owner
[Your name] — Operations Manager
Process Runbook / SOPPage 1 of 4
FS-DOC-03Operations

02Step-by-step: what happens and who acts

What you actually need to do: There is exactly one human step in this process. When the Availability and Assignment Agent cannot find a free crew member automatically, it flags the job and sends an alert to the scheduler. The scheduler reviews the conflict, manually assigns a crew member, and updates Google Calendar. Once that is done, the automation resumes and completes the remaining steps (Jobber update, HubSpot log, Slack notification, customer email) without further input.
Step
What happens
Who acts
Type
1
A job is marked confirmed in Jobber. The Jobber webhook fires and passes the job details, required date window, site address, and scope notes to the automation platform.
Automation
Automated
2
The Availability and Assignment Agent queries Google Calendar for each eligible crew member, building a ranked list of who is free during the required job window based on availability and proximity rules.
Automation
Automated
3
The system checks whether at least one crew member is available without a conflict. If yes, it proceeds automatically to Step 4. If no suitable crew member is found, the job is flagged and routed to the scheduler for manual resolution (see Step 3a).
Automation
Automated
3a
Exception only: the scheduler receives an alert (via Slack or email) that a conflict exists and that the job needs manual crew assignment. The scheduler reviews the situation, selects a crew member, and updates Google Calendar directly. The automation resumes from Step 4 once the calendar event exists.
Scheduler
Human
4
The Availability and Assignment Agent creates a Google Calendar event for the assigned crew member, populating it with the job address, customer contact details, arrival window, and scope notes from Jobber.
Automation
Automated
5
The automation updates the Jobber job record with the confirmed schedule date, arrival time, and assigned crew member so Jobber remains the single source of truth for the operations team.
Automation
Automated
6
The Notifications and CRM Sync Agent logs the confirmed scheduled date and assigned crew back into the relevant HubSpot deal or contact record so the account and sales teams can see current status without asking the scheduler.
Automation
Automated
7
A Slack message is sent to the assigned crew member or crew channel, including the job address, start time, customer name, and any special instructions attached to the job.
Automation
Automated
8
A confirmation email is sent to the customer via Gmail with the booked date, arrival window, crew lead name, and a contact number for the day of the job.
Automation
Automated
Process Runbook / SOPPage 2 of 4
FS-DOC-03Operations

03Handling exceptions

Situation
What the system does
What you do
No crew available for the required window
The Availability and Assignment Agent detects that no eligible crew member is free. It stops the auto-assignment, flags the job as a conflict exception, and sends an alert to the scheduler via Slack with the job details attached.
Review the flagged job in Jobber, decide on the best available crew member (even if it requires moving another job or contacting someone directly), and update Google Calendar with the manual assignment. The automation will detect the calendar entry and resume steps 5 through 8 automatically.
Job confirmed in Jobber with missing required fields (address, date window, or scope notes)
The trigger fires but the automation detects that one or more required fields are empty. It pauses the run, logs the incomplete job in the error log, and sends an alert to the scheduler listing which fields are missing.
Open the job in Jobber, fill in the missing details, and save the record. The automation will re-trigger on the next status change or can be manually re-run by the FullSpec team if needed. Contact support@gofullspec.com if the re-trigger does not fire within 10 minutes.
Duplicate job detected (same customer, same address, overlapping date window)
The automation compares incoming job details against existing Google Calendar events for the same site and date. If a likely duplicate is detected, the job is flagged and held rather than scheduled, and an alert is sent to the scheduler.
Open both jobs in Jobber and confirm whether one is a duplicate or a legitimate separate booking (for example, a follow-up visit). Cancel or merge the duplicate in Jobber, then confirm the correct job. The automation will proceed once the conflict is resolved.
Scheduler does not act on a flagged exception within a defined window
If the flagged job has not been resolved within four business hours, the automation sends a follow-up reminder to the scheduler and copies the process owner. The job remains on hold and is not scheduled until a human acts.
Assign the crew as soon as possible and update Google Calendar. If you are unavailable, escalate to the backup scheduler or process owner so the customer is not left without a confirmation. The automation holds the job safely and does not drop it.
A connected tool is temporarily unavailable (for example, Jobber webhook fails or Google Calendar API times out)
The automation platform retries the failed step up to three times with a short delay between each attempt. If all retries fail, the run is logged as an error and an alert is sent to the scheduler and to the FullSpec team automatically.
Check the alert to understand which step failed. For Jobber webhook failures, confirm the job status in Jobber and re-save the record to re-fire the webhook. For Google Calendar issues, wait for the service to recover and contact support@gofullspec.com if the problem persists beyond 30 minutes. Do not attempt to schedule manually in parallel, as this can create duplicates once the automation resumes.
Customer confirmation email fails to deliver (Gmail delivery error or bounce)
The Notifications and CRM Sync Agent logs the delivery failure and marks the customer confirmation step as failed in the run log. An alert is sent to the scheduler with the customer's email address and the job details.
Check whether the customer email address on the Jobber record is correct. If it is wrong, update it in Jobber and ask the FullSpec team to resend the confirmation. If the address is correct but delivery failed, contact the customer directly by phone to confirm the booking, then log a note on the HubSpot record confirming verbal confirmation was given.
Process Runbook / SOPPage 3 of 4
FS-DOC-03Operations

04Who to contact and when

Fill in the rows below once your team is confirmed. Keep this table updated whenever roles or contact details change. The FullSpec rows are fixed and do not need to be edited.

Role
Name
How to reach them
Process owner (Operations Manager)
[Your name]
[Your email / phone]
Lead Scheduler (day-to-day exceptions)
[Scheduler name]
[Scheduler email / Slack handle]
Backup Scheduler (cover when lead is unavailable)
[Backup name]
[Backup email / Slack handle]
IT or systems contact (internal tool access issues)
[IT contact name]
[IT email / phone]
FullSpec builder (build changes, logic updates, new rules)
FullSpec team
support@gofullspec.com
FullSpec support (errors, outages, unexpected behaviour)
FullSpec support
support@gofullspec.com
For any issue where the automation has stopped running entirely, a step is producing wrong outputs, or a customer has not received a confirmation they should have, contact FullSpec support at support@gofullspec.com as the first step. Do not attempt to reconfigure the automation logic directly without guidance, as changes to one step can affect downstream steps.

05Ongoing maintenance

When
What to do
Who
Whenever a crew member joins, leaves, or changes role
Update the crew member's Google Calendar access and sharing permissions. Notify the FullSpec team so the assignment logic can be updated to include or exclude them from eligibility. Also update HubSpot and Slack with the correct name and contact details.
Process owner + FullSpec team
Whenever email or Slack notification templates need updating (wording, branding, new instructions)
Send the updated template copy to the FullSpec team at support@gofullspec.com. Do not attempt to edit template content directly in Gmail or Slack outside of the automation, as this will cause the live and manual versions to diverge.
Process owner, then FullSpec team to implement
Monthly spot-check (first week of each month)
Review five to ten recent completed runs in the automation platform's run log. Confirm that crew assignments, Jobber updates, HubSpot records, Slack messages, and customer emails all match the expected outputs. Flag any discrepancy to the FullSpec team.
Lead Scheduler
Weekly error log review (every Monday morning)
Check the error log or alert channel for any failed runs, retry events, or flagged exceptions from the previous week. Confirm that all flagged jobs were resolved and that no job was left in an unscheduled state.
Lead Scheduler
Whenever Jobber, HubSpot, Google Calendar, Slack, or Gmail credentials are rotated or API access changes
Contact the FullSpec team immediately at support@gofullspec.com before rotating any credentials connected to the automation. Rotating credentials without updating the automation platform will cause the entire workflow to stop firing.
Process owner + FullSpec team
Quarterly volume review (every three months)
Review actual job volumes against the assumed 40 to 80 jobs per month. If volumes have grown significantly or new job types have been introduced, discuss with the FullSpec team whether assignment rules, capacity thresholds, or notification logic need to be adjusted.
Operations Manager + FullSpec team
The single most common maintenance issue for this process is crew calendars falling out of sync with actual availability. If crew members stop updating their Google Calendar regularly, the assignment agent will assign jobs to people who are unavailable, which re-introduces the conflict problem the automation is designed to prevent. A brief monthly reminder to crew to keep their calendars current is the simplest and most effective maintenance action your team can take.
Process Runbook / SOPPage 4 of 4

More documents for this process

Every document generated for Job / Project Scheduling.

Launch Plan
Operations · Owner
View
ROI and Business Case
Finance · Owner
View
Developer Handover Pack
Technical · Developer
View
Integration and API Spec
Technical · Developer
View
Test and QA Plan
Quality · Developer
View