> ## Documentation Index
> Fetch the complete documentation index at: https://docs.shopwrk.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Sync your shop's jobs and schedule with Google Calendar

> Connect Google Calendar to automatically mirror your jobs, blocked time, and consultations so your shop schedule stays in sync wherever your team works.

ShopWrk can sync your schedule to Google Calendar in real time. When you connect, every job, blocked time slot, and consultation you create in ShopWrk appears as a Google Calendar event — and updates you make in either place are reflected in the other. Individual technicians can also connect their own Google Calendars to receive their personal job assignments.

## Connect your shop calendar

Go to **Settings → Calendar** and scroll to the **Google Calendar** section.

<Steps>
  <Step title="Click 'Connect Google Calendar'">
    ShopWrk redirects you to Google's OAuth consent screen. Sign in with the Google account that owns the calendar you want to use.
  </Step>

  <Step title="Grant calendar permissions">
    Approve read and write access so ShopWrk can create, update, and delete events on your behalf.
  </Step>

  <Step title="Confirm the connection">
    You'll be returned to ShopWrk. The Google Calendar section shows a **Connected** badge and the name of the linked calendar.
  </Step>
</Steps>

<Note>
  ShopWrk syncs to whichever calendar Google selects by default for the account you authorized. If you need to use a specific calendar, make sure it's the primary calendar on that Google account, or create a dedicated calendar and set it as default before connecting.
</Note>

## What syncs

Once connected, the following ShopWrk items are mirrored to Google Calendar:

<CardGroup cols={3}>
  <Card title="Jobs" icon="wrench" href="/workflows/jobs">
    Customer name, vehicle, and service details appear in the event description.
  </Card>

  <Card title="Blocked time" icon="ban" href="/features/calendar-booking">
    Lunch breaks, meetings, and time off are blocked on the calendar.
  </Card>

  <Card title="Consultations" icon="calendar-check" href="/features/calendar-booking">
    Customer consultation appointments sync with full details.
  </Card>
</CardGroup>

Changes you make to a job in ShopWrk (rescheduling, reassigning, or cancelling) update the corresponding Google Calendar event automatically. Deleting an event from Google Calendar does not delete the job in ShopWrk, but ShopWrk will stop updating that event.

## Technician calendars

After your shop calendar is connected, you can optionally sync each technician's assigned jobs to their personal Google Calendar.

In the **Technician Calendars** section, each team member on your roster is listed. Click **Connect** next to a technician's name to send them a Google OAuth link. Once they authorize it, their assigned jobs appear on their personal Google Calendar.

<Tip>
  This is useful for mobile technicians who check their phone calendar throughout the day. They see only their own jobs, not the full shop schedule.
</Tip>

## Technician calendar access in ShopWrk

Separately from the Google sync, you can also control what technicians see inside ShopWrk's own calendar view. In the **Technician Calendar Access** section of **Settings → Calendar**, toggle each technician between:

* **Full shop calendar** — they see all jobs across all bays and technicians.
* **Own schedule only** — they see only jobs assigned to them.

This setting affects the ShopWrk in-app view and does not change what syncs to Google Calendar.

## Scheduling rules and buffer time

The top of **Settings → Calendar** contains scheduling configuration that affects how ShopWrk handles bookings, including online booking requests from customers.

<Tabs>
  <Tab title="Buffer time">
    Add padding around each job to give technicians time to prepare and clean up:

    * **Before job** — minutes blocked before the job start time (0–120 min).
    * **After job** — minutes blocked after the job end time (0–120 min, default 15 min).
  </Tab>

  <Tab title="Scheduling rules">
    * **Minimum notice** — how many hours in advance a booking must be made (0 = same day).
    * **Max advance days** — how far ahead customers can book (7–365 days, default 90).
    * **Allow double booking** — lets multiple jobs overlap in the same bay.
    * **Allow overbooking** — ignores all scheduling conflicts entirely. Use with caution.
  </Tab>

  <Tab title="Display preferences">
    Customize the ShopWrk calendar view:

    * **Default view** — day, week, or month.
    * **Time slot increment** — 15, 30, or 60 minutes.
    * **Calendar start / end hour** — the first and last hour visible on the grid.
  </Tab>
</Tabs>

## Sync status and troubleshooting

When your shop calendar is connected, a **Sync Status** panel shows:

* **Synced today** — events successfully pushed to Google Calendar today.
* **Pending** — events queued for sync.
* **Failed** — events that could not be synced.

If failed events appear, click **Retry Failed** to re-attempt the sync. If failures persist, disconnect and reconnect your Google Calendar to refresh the authorization token.

<Warning>
  If ShopWrk shows a **Needs Reconnect** badge on your calendar connection, your authorization has expired. Click **Reconnect** and complete the Google OAuth flow again. No calendar data is lost.
</Warning>

## Disconnecting

Click **Disconnect** in the Google Calendar section. This stops all future syncs. Events already in Google Calendar are not removed — they remain but will no longer receive updates from ShopWrk.
