Fresh start - excluded large ROM JSON files
This commit is contained in:
158
skills/api-gateway/references/google-drive.md
Normal file
158
skills/api-gateway/references/google-drive.md
Normal file
@@ -0,0 +1,158 @@
|
||||
# Google Drive Routing Reference
|
||||
|
||||
**App name:** `google-drive`
|
||||
**Base URL proxied:** `www.googleapis.com`
|
||||
|
||||
## API Path Pattern
|
||||
|
||||
```
|
||||
/google-drive/drive/v3/{endpoint}
|
||||
```
|
||||
|
||||
## Common Endpoints
|
||||
|
||||
### List Files
|
||||
```bash
|
||||
GET /google-drive/drive/v3/files?pageSize=10
|
||||
```
|
||||
|
||||
With query:
|
||||
```bash
|
||||
GET /google-drive/drive/v3/files?q=name%20contains%20'report'&pageSize=10
|
||||
```
|
||||
|
||||
Only folders:
|
||||
```bash
|
||||
GET /google-drive/drive/v3/files?q=mimeType='application/vnd.google-apps.folder'
|
||||
```
|
||||
|
||||
Files in specific folder:
|
||||
```bash
|
||||
GET /google-drive/drive/v3/files?q='FOLDER_ID'+in+parents
|
||||
```
|
||||
|
||||
With fields:
|
||||
```bash
|
||||
GET /google-drive/drive/v3/files?fields=files(id,name,mimeType,createdTime,modifiedTime,size)
|
||||
```
|
||||
|
||||
### Get File Metadata
|
||||
```bash
|
||||
GET /google-drive/drive/v3/files/{fileId}?fields=id,name,mimeType,size,createdTime
|
||||
```
|
||||
|
||||
### Download File Content
|
||||
```bash
|
||||
GET /google-drive/drive/v3/files/{fileId}?alt=media
|
||||
```
|
||||
|
||||
### Export Google Docs (to PDF, DOCX, etc.)
|
||||
```bash
|
||||
GET /google-drive/drive/v3/files/{fileId}/export?mimeType=application/pdf
|
||||
```
|
||||
|
||||
### Create File (metadata only)
|
||||
```bash
|
||||
POST /google-drive/drive/v3/files
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"name": "New Document",
|
||||
"mimeType": "application/vnd.google-apps.document"
|
||||
}
|
||||
```
|
||||
|
||||
### Create Folder
|
||||
```bash
|
||||
POST /google-drive/drive/v3/files
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"name": "New Folder",
|
||||
"mimeType": "application/vnd.google-apps.folder"
|
||||
}
|
||||
```
|
||||
|
||||
### Update File Metadata
|
||||
```bash
|
||||
PATCH /google-drive/drive/v3/files/{fileId}
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"name": "Renamed File"
|
||||
}
|
||||
```
|
||||
|
||||
### Move File to Folder
|
||||
```bash
|
||||
PATCH /google-drive/drive/v3/files/{fileId}?addParents=NEW_FOLDER_ID&removeParents=OLD_FOLDER_ID
|
||||
```
|
||||
|
||||
### Delete File
|
||||
```bash
|
||||
DELETE /google-drive/drive/v3/files/{fileId}
|
||||
```
|
||||
|
||||
### Copy File
|
||||
```bash
|
||||
POST /google-drive/drive/v3/files/{fileId}/copy
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"name": "Copy of File"
|
||||
}
|
||||
```
|
||||
|
||||
### Create Permission (Share File)
|
||||
```bash
|
||||
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 parents`
|
||||
- `trashed = false`
|
||||
- `modifiedTime > '2024-01-01T00:00:00'`
|
||||
|
||||
Combine with `and`:
|
||||
```
|
||||
name contains 'report' and mimeType = 'application/pdf'
|
||||
```
|
||||
|
||||
## Common MIME Types
|
||||
|
||||
- `application/vnd.google-apps.document` - Google Docs
|
||||
- `application/vnd.google-apps.spreadsheet` - Google Sheets
|
||||
- `application/vnd.google-apps.presentation` - Google Slides
|
||||
- `application/vnd.google-apps.folder` - Folder
|
||||
- `application/pdf` - PDF
|
||||
|
||||
## Notes
|
||||
|
||||
- Authentication is automatic - the router injects the OAuth token
|
||||
- Use `fields` parameter to limit response data
|
||||
- Pagination uses `pageToken` from previous response's `nextPageToken`
|
||||
|
||||
## Resources
|
||||
|
||||
- [API Overview](https://developers.google.com/workspace/drive/api/reference/rest/v3#rest-resource:-v3.about)
|
||||
- [List Files](https://developers.google.com/drive/api/reference/rest/v3/files/list)
|
||||
- [Get File](https://developers.google.com/drive/api/reference/rest/v3/files/get)
|
||||
- [Create File](https://developers.google.com/drive/api/reference/rest/v3/files/create)
|
||||
- [Update File](https://developers.google.com/drive/api/reference/rest/v3/files/update)
|
||||
- [Delete File](https://developers.google.com/drive/api/reference/rest/v3/files/delete)
|
||||
- [Copy File](https://developers.google.com/drive/api/reference/rest/v3/files/copy)
|
||||
- [Export File](https://developers.google.com/drive/api/reference/rest/v3/files/export)
|
||||
- [Create Permission](https://developers.google.com/workspace/drive/api/reference/rest/v3/permissions/create)
|
||||
- [Search Query Syntax](https://developers.google.com/drive/api/guides/search-files)
|
||||
Reference in New Issue
Block a user