# Google Calendar Integration via LowCodeAPI
## Overview
Google Calendar API provides programmatic access to calendar events and settings. Create, read, update, and delete events, manage calendars, and sync scheduling data.
## Base Endpoint
```
https://api.lowcodeapi.com/googlecalendar/
```
## Authentication
LowCodeAPI handles authentication automatically using OAuth2.0 credentials.
**Auth Type**: OAuth2.0
## Common Endpoints
### Category: Events
#### List Events
**Method**: `GET` | **LowCodeAPI Path**: `/calendar/v3/calendars/calendarId/events`
**Full URL**:
```
https://api.lowcodeapi.com/googlecalendar/calendar/v3/calendars/calendarId/events?calendarId={calendarId}&api_token={api_token}
```
**Query Parameters**:
| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `calendarId` | string | Yes | Calendar identifier (use 'primary' for main calendar) |
| `timeMin` | string | No | Start of event range (RFC 3339 timestamp) |
| `timeMax` | string | No | End of event range (RFC 3339 timestamp) |
| `q` | string | No | Free text search |
| `maxResults` | number | No | Maximum results to return |
| `api_token` | string | Yes | Your LowCodeAPI authentication token |
**Example Request**:
```bash
curl -X GET "https://api.lowcodeapi.com/googlecalendar/calendar/v3/calendars/calendarId/events?calendarId=primary&timeMin=2024-01-01T00:00:00Z&api_token=YOUR_API_TOKEN"
```
---
#### Create Event
**Method**: `POST` | **LowCodeAPI Path**: `/calendar/v3/calendars/calendarId/events`
**Full URL**:
```
https://api.lowcodeapi.com/googlecalendar/calendar/v3/calendars/calendarId/events?calendarId={calendarId}&api_token={api_token}
```
**Description**: Create a new event
**Query Parameters**:
| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `calendarId` | string | Yes | Calendar identifier (use 'primary') |
| `api_token` | string | Yes | Your LowCodeAPI authentication token |
**Body Parameters**:
| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `summary` | string | No | Event title |
| `start` | object | Yes | Event start time |
| `end` | object | Yes | Event end time |
| `description` | string | No | Event description |
| `location` | string | No | Event location |
| `attendees` | array | No | List of attendees |
**Example Request**:
```bash
curl -X POST "https://api.lowcodeapi.com/googlecalendar/calendar/v3/calendars/calendarId/events?calendarId=primary&api_token=YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"summary": "Team Meeting",
"start": {
"dateTime": "2024-01-15T10:00:00Z"
},
"end": {
"dateTime": "2024-01-15T11:00:00Z"
},
"description": "Weekly team sync",
"location": "Conference Room A"
}'
```
---
## Usage Examples
### Example 1: Calendar Event Management
```bash
# Step 1: List upcoming events
# Use 'primary' for your main calendar (no calendar ID needed)
curl -X GET "https://api.lowcodeapi.com/googlecalendar/calendar/v3/calendars/calendarId/events?calendarId=primary&timeMin=2024-01-01T00:00:00Z&maxResults=10&api_token=YOUR_API_TOKEN"
# Step 2: Create a new event
# No ID required - creates event and returns event ID
curl -X POST "https://api.lowcodeapi.com/googlecalendar/calendar/v3/calendars/calendarId/events?calendarId=primary&api_token=YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"summary": "Important Meeting",
"start": {"dateTime": "2024-12-25T14:00:00Z"},
"end": {"dateTime": "2024-12-25T15:00:00Z"},
"description": "Annual review meeting"
}'
# Step 3: Get specific event details
# Replace EVENT_ID with the ID returned from Step 2
curl -X GET "https://api.lowcodeapi.com/googlecalendar/calendar/v3/calendars/calendarId/events/eventId?calendarId=primary&eventId=EVENT_ID&api_token=YOUR_API_TOKEN"
```
## Complete Endpoint Reference
- **Official Documentation**: [https://developers.google.com/calendar/api](https://developers.google.com/calendar/api)