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

# Google Calendar

> Connect Google Calendar so your agent can manage your schedule

Connect Google Calendar to let your agent check your availability, create events, and help you manage your schedule. Once connected, your agent can answer questions like "Am I free Thursday afternoon?" and book meetings on your behalf.

## Connecting Google Calendar

<Steps>
  <Step title="Go to Integrations">
    Navigate to **Settings → Integrations** and click **Google Calendar**.
  </Step>

  <Step title="Sign in with Google">
    Click **Connect** and sign in with the Google account whose calendar you want to use. This opens Google's OAuth flow — you'll see a permissions screen.
  </Step>

  <Step title="Grant Permissions">
    Spark requests permission to:

    * **View your calendars** — so your agent can check availability
    * **Create and edit events** — so your agent can book meetings

    Click **Allow** to grant access.
  </Step>

  <Step title="Select Default Calendar">
    Choose which calendar your agent should use as the default for creating new events. You can always specify a different calendar in conversation.
  </Step>
</Steps>

<Info>
  Spark uses OAuth 2.0 to connect to Google Calendar. Your Google password is never stored — only a secure access token that you can revoke at any time.
</Info>

## What Your Agent Can Do

### Check Availability

> "What's on my calendar today?"

> "Am I free between 2–4pm on Wednesday?"

> "What does my week look like?"

Your agent reads your calendar and gives you a summary, including event names, times, and attendees.

### Create Events

> "Book a call with Sarah for Thursday at 10am — 30 minutes"

> "Schedule a team meeting next Monday at 2pm, invite [alex@company.com](mailto:alex@company.com) and [jordan@company.com](mailto:jordan@company.com)"

> "Block off Friday afternoon for deep work"

Your agent creates the event on your Google Calendar with the details you specify. Invitees receive a standard Google Calendar invitation.

### Suggest Available Times

> "I need to book a 1-hour meeting with a client next week. When am I free?"

Your agent scans your calendar and suggests available time slots.

### Meeting Prep

With an automation or schedule, your agent can prepare for upcoming meetings:

> "15 minutes before each meeting today, look up the attendees in our CRM and give me a brief on who they are, their pipeline stage, and our last interaction."

## Calendar + CRM

Calendar becomes especially powerful combined with your CRM data:

* **Before a call:** "What do I know about the person I'm meeting at 3pm?"
* **After a call:** "I just finished my call with Jordan — move them to Qualified and create a follow-up task"
* **Scheduling:** "Find a time next week and send a calendar invite to our top 3 hot leads for a demo"

Your agent connects the dots between who's on your calendar and what's in your CRM.

## Tips

<Tip>
  When asking your agent to create events, include all the details upfront: date, time, duration, and attendees. This avoids back-and-forth.
</Tip>

<Tip>
  Set up a morning schedule that includes a calendar review. Your agent can post your daily agenda to chat along with relevant CRM context for each meeting.
</Tip>

## Troubleshooting

<AccordionGroup>
  <Accordion title="Agent can't see my calendar">
    Make sure you completed the OAuth flow and granted calendar read permissions. Go to **Settings → Integrations → Google Calendar** to verify the connection status. If it shows as disconnected, reconnect.
  </Accordion>

  <Accordion title="Events are on the wrong calendar">
    Check your default calendar setting in the integration configuration. You can also specify the calendar by name when asking your agent to create an event: "Add this to my Work calendar."
  </Accordion>

  <Accordion title="Want to revoke access">
    You can disconnect from **Settings → Integrations** in Spark, or revoke access from your [Google Account permissions](https://myaccount.google.com/permissions).
  </Accordion>
</AccordionGroup>

## Privacy

Your agent only accesses calendar data when needed — it doesn't continuously monitor your calendar. When you ask a calendar-related question or a schedule/automation requires it, the agent reads the relevant time range and responds.

Calendar data is not stored permanently in Spark. Event details are read in real-time from Google's API each time they're needed.
