Calendar & Scheduling Guide
Spritz integrates with Google Calendar to enable scheduling, availability management, and shareable scheduling links.
Overview
Calendar features include:
- Google Calendar Sync: Connect your Google Calendar
- Availability Windows: Set recurring availability
- Scheduling Links: Create shareable booking links
- Call Scheduling: Schedule calls with friends
- x402 Payments: Charge for scheduled calls using the x402 protocol
Connecting Google Calendar
Initial Setup
- Navigate to Settings → Calendar
- Click "Connect Google Calendar"
- Authorize Spritz to access your calendar
- Grant necessary permissions
- Calendar will sync automatically
Permissions Required
- Read Calendar: View your events
- Create Events: Schedule new events
- Modify Events: Update existing events
Availability Windows
Setting Availability
Create recurring availability windows:
- Go to Calendar Settings
- Click "Add Availability Window"
- Configure:
- Days: Which days of the week
- Time Range: Start and end time
- Timezone: Your timezone
- Duration: Meeting duration options
- Save your availability
Example Availability
Monday - Friday: 9:00 AM - 5:00 PM (PST)
Available for: 30min, 60min meetings
Scheduling Links
Create Shareable Link
- Go to Scheduling Settings
- Click "Create Shareable Link"
- Configure link settings:
- Name: Link identifier
- Availability: Which windows to use
- Duration: Default meeting length
- Buffer Time: Time between meetings
- Get your shareable link
- Share with others
Using a Scheduling Link
- Open the scheduling link
- See available time slots
- Select a time that works
- Provide your information
- Confirm the booking
- Calendar event is created automatically
Timezone Handling
Spritz handles timezones automatically:
- User Timezone: Detected from browser
- Availability: Stored in your timezone
- Display: Shown in viewer's timezone
- Events: Created in correct timezone
API Reference
Connect Calendar
GET / api / calendar / connect;
// Redirects to Google OAuth
Get Calendar Status
GET / api / calendar / status;
// Returns connection status
Get Availability
GET /api/calendar/availability?startDate=2024-01-01&endDate=2024-01-31
Set Availability Window
POST /api/calendar/availability
{
"dayOfWeek": 1, // Monday
"startTime": "09:00",
"endTime": "17:00",
"timezone": "America/Los_Angeles",
"durationMinutes": [30, 60]
}
Create Shareable Link
POST /api/scheduling/create-shareable
{
"name": "consultation",
"availabilityWindows": [...],
"defaultDuration": 60
}
Get Public Schedule
GET /api/public/cal/:slug
Or via the user-friendly URL:
https://spritz.chat/cal/:slug
Route Update
The scheduling URL has been changed from /book/ to /cal/ for brevity.
Best Practices
- Keep Updated: Regularly update your availability
- Buffer Time: Add buffer time between meetings
- Clear Communication: Set clear expectations
- Timezone Awareness: Be mindful of timezones
- Link Management: Organize your scheduling links
Troubleshooting
Calendar Not Syncing
- Reconnect your Google Calendar
- Check permissions in Google account
- Verify OAuth token is valid
- Check for API errors
Availability Not Showing
- Verify availability windows are set
- Check timezone settings
- Ensure windows don't conflict
- Verify calendar connection
Scheduling Errors
- Check calendar permissions
- Verify time slot availability
- Check for conflicting events
- Review error messages
Next Steps
- Learn about x402 Payments
- Explore Profile Settings
- Check out API Reference