Join a video meeting as an AI bot with voice, avatar, and screenshare across four operating modes.
Memory
Google Drive
Try itConnect agents to Google Drive through managed OAuth for file and folder operations.
What it does
Routes Google Drive API requests through an authenticated gateway that automatically injects OAuth tokens. Supports listing, searching, retrieving metadata, downloading, creating, copying, moving, renaming, sharing, and deleting files and folders, plus exporting Google Workspace documents to formats like PDF. The connection lifecycle — create, list, get, delete — is managed through the Maton control plane.
When to use it
- Listing and searching files in a Drive account
- Creating folders or new file metadata entries
- Exporting Google Docs or Sheets to PDF
- Sharing files with specific users via permissions
The skill document
Google Drive
Access the Google Drive API with managed OAuth authentication. List, search, create, and manage files and folders.
Quick Start
# List files
curl -s -X GET 'https://gateway.maton.ai/google-drive/drive/v3/files?pageSize=10' \
-H 'Authorization: Bearer YOUR_API_KEY'
Base URL
https://gateway.maton.ai/google-drive/drive/v3/{endpoint}
The gateway proxies requests to www.googleapis.com and automatically injects your OAuth token.
Authentication
All requests require the Maton API key in the Authorization header:
Authorization: Bearer YOUR_API_KEY
Environment Variable: Set your API key as MATON_API_KEY:
export MATON_API_KEY="YOUR_API_KEY"
Getting Your API Key
- Sign in at maton.ai
- Go to maton.ai/settings
- Copy your API key
Connection Management
Manage your Google OAuth connections at https://ctrl.maton.ai.
List Connections
curl -s -X GET 'https://ctrl.maton.ai/connections?app=google-drive&status=ACTIVE' \
-H 'Authorization: Bearer YOUR_API_KEY'
Create Connection
curl -s -X POST 'https://ctrl.maton.ai/connections' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-d '{"app": "google-drive"}'
Get Connection
curl -s -X GET 'https://ctrl.maton.ai/connections/{connection_id}' \
-H 'Authorization: Bearer YOUR_API_KEY'
Response:
{
"connection": {
"connection_id": "21fd90f9-5935-43cd-b6c8-bde9d915ca80",
"status": "ACTIVE",
"url": "https://connect.maton.ai/?session_token=...",
"app": "google-drive"
}
}
Open the returned url in a browser to complete OAuth authorization.
Delete Connection
curl -s -X DELETE 'https://ctrl.maton.ai/connections/{connection_id}' \
-H 'Authorization: Bearer YOUR_API_KEY'
API Reference
List Files
GET /google-drive/drive/v3/files?pageSize=10
With query:
GET /google-drive/drive/v3/files?q=name%20contains%20'report'&pageSize=10
Only folders:
GET /google-drive/drive/v3/files?q=mimeType='application/vnd.google-apps.folder'
Files in specific folder:
GET /google-drive/drive/v3/files?q='FOLDER_ID'+in+parents
With fields:
GET /google-drive/drive/v3/files?fields=files(id,name,mimeType,createdTime,modifiedTime,size)
Get File Metadata
GET /google-drive/drive/v3/files/{fileId}?fields=id,name,mimeType,size,createdTime
Download File Content
GET /google-drive/drive/v3/files/{fileId}?alt=media
Export Google Docs
GET /google-drive/drive/v3/files/{fileId}/export?mimeType=application/pdf
Create File (metadata only)
POST /google-drive/drive/v3/files
Content-Type: application/json
{
"name": "New Document",
"mimeType": "application/vnd.google-apps.document"
}
Create Folder
POST /google-drive/drive/v3/files
Content-Type: application/json
{
"name": "New Folder",
"mimeType": "application/vnd.google-apps.folder"
}
Update File Metadata
PATCH /google-drive/drive/v3/files/{fileId}
Content-Type: application/json
{
"name": "Renamed File"
}
Move File to Folder
PATCH /google-drive/drive/v3/files/{fileId}?addParents=NEW_FOLDER_ID&removeParents=OLD_FOLDER_ID
Delete File
DELETE /google-drive/drive/v3/files/{fileId}
Copy File
POST /google-drive/drive/v3/files/{fileId}/copy
Content-Type: application/json
{
"name": "Copy of File"
}
Share File
POST /google-drive/drive/v3/files/{fileId}/permissions
Content-Type: application/json
{
"role": "reader",
"type": "user",
"emailAddress": "user@example.com"
}
Query Operators
Use in the q parameter:
name = 'exact name'name contains 'partial'mimeType = 'application/pdf''folderId' in parentstrashed = falsemodifiedTime > '2024-01-01T00:00:00'
Combine with and:
name contains 'report' and mimeType = 'application/pdf'
Common MIME Types
application/vnd.google-apps.document- Google Docsapplication/vnd.google-apps.spreadsheet- Google Sheetsapplication/vnd.google-apps.presentation- Google Slidesapplication/vnd.google-apps.folder- Folderapplication/pdf- PDF
Code Examples
JavaScript
const response = await fetch(
'https://gateway.maton.ai/google-drive/drive/v3/files?pageSize=10',
{
headers: {
'Authorization': `Bearer ${process.env.MATON_API_KEY}`
}
}
);
Python
import os
import requests
response = requests.get(
'https://gateway.maton.ai/google-drive/drive/v3/files',
headers={'Authorization': f'Bearer {os.environ["MATON_API_KEY"]}'},
params={'pageSize': 10}
)
Notes
- Use
fieldsparameter to limit response data - Pagination uses
pageTokenfrom previous response'snextPageToken - Export is for Google Workspace files only
Error Handling
| Status | Meaning |
|---|---|
| 400 | Missing Google Drive connection |
| 401 | Invalid or missing Maton API key |
| 429 | Rate limited (10 req/sec per account) |
| 4xx/5xx | Passthrough error from Google Drive API |
Resources
Questions people ask
- How is authentication handled?
- A Maton API key is sent as a Bearer token to the gateway; Google OAuth is set up via the connections endpoint at ctrl.maton.ai, and the gateway injects tokens on every request.
- What file operations are supported?
- List, search, get metadata, download, export Workspace files, create file metadata, create folders, update metadata, move, copy, delete, and share through the permissions endpoint.
- Are there usage limits?
- Yes. The gateway is rate-limited to 10 requests per second per account, and 4xx/5xx responses are passed through unchanged from the underlying Google Drive API.
Related skills
Read and write Excel workbooks, worksheets, ranges, tables, and charts in OneDrive through Microsoft Graph with managed OAuth.
Post videos, photos, text, and documents to 10 social platforms through a single REST API call.
Find why your productivity system keeps failing, then apply the smallest fix — capacity math, bottleneck routing, durable local notes.
Fetch raw ad creative, app, ranking, and revenue data from AdMapix as structured JSON.
Stores durable facts in a categorized, plain-markdown vault on disk, alongside your agent's built-in memory.
More from byungkyu
Browse all skillsManage Google Meet spaces, records, participants, recordings, and transcripts with managed OAuth.
Read and write Google Sheets data with managed OAuth authentication through a single API gateway.
Create and manage Google Slides presentations via the Slides API through a managed OAuth proxy.
Read and write Zoho Books invoices, contacts, bills, and expenses through the Maton-managed OAuth API.
Read, search, and edit your Google Contacts through the Google People API with managed OAuth.
Search a global news database refreshed weekly with 1M+ articles, filtered by topic, country, language, and category.