Skip to main content
Mixpeek reads files directly from Google Drive — personal folders, shared drives, and team collaboration folders. You create a storage connection (how to authenticate), then a bucket sync that points at a folder. New and changed files are picked up automatically.
Mixpeek only reads from your Drive. It never writes or deletes files in your Drive.

1. Authenticate

Two auth methods are supported. Service account is recommended for unattended, server-to-server sync. The response includes a connection_id (conn_...).
List folders and files the connection can see with GET /v1/connections/{connection_id}/google-drive/folders and …/files — handy for finding the folder ID to sync.

2. Sync a folder into a bucket

Create a bucket first, then attach a sync. source_path is the Drive folder ID (the trailing segment of the folder’s URL, e.g. 1A2b3C...):
curl -sS -X POST "$MP_API_URL/v1/buckets/$BUCKET_ID/syncs" \
  -H "Authorization: Bearer $MP_API_KEY" \
  -H "X-Namespace: $MP_NAMESPACE" \
  -H "Content-Type: application/json" \
  -d '{
    "provider_type": "google_drive",
    "connection_id": "conn_abc123",
    "sync_config": {
      "source_path": "1A2b3C4d5E6f7G8h9I",
      "sync_mode": "continuous",
      "polling_interval_seconds": 3600
    }
  }'
Then trigger the first sync:
curl -sS -X POST "$MP_API_URL/v1/buckets/$BUCKET_ID/syncs/$SYNC_ID/trigger" \
  -H "Authorization: Bearer $MP_API_KEY" -H "X-Namespace: $MP_NAMESPACE"
After the initial sync, new and changed files in the folder are picked up automatically at the polling interval. See Syncs for file/metadata filters, on_delete cascade behavior, and monitoring.

Next steps