원클릭으로
google-sheets
Read from or append rows to Google Sheets
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Read from or append rows to Google Sheets
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Read or update contacts, opportunities, notes, and conversations in GoHighLevel
Save or retrieve records from Airtable bases
Send emails, SMS, or manage contacts via Brevo (formerly Sendinblue)
Manage bookings, availability, and event types in Cal.com
Check availability, create scheduling links, or list upcoming events in Calendly
Create or update tasks and lists in ClickUp
| name | google_sheets |
| display_name | Google Sheets |
| description | Read from or append rows to Google Sheets |
| auth_type | oauth2 |
| category | database |
When the user wants their voice agent to log data to or read from Google Sheets during a phone call. Common triggers:
Check connection via check_connection("google_sheets").
If not connected: Use secret("google_sheets") in tool scripts.
The system will automatically emit the correct action card based on the
platform configuration. Do NOT emit action cards manually.
Discover spreadsheets (Google supports auto-discovery):
api_call("google_sheets", "GET", "https://www.googleapis.com/drive/v3/files?q=mimeType='application/vnd.google-apps.spreadsheet'&fields=files(id,name)") → list spreadsheetsapi_call("google_sheets", "GET", "https://sheets.googleapis.com/v4/spreadsheets/{id}?fields=sheets.properties") → list sheet tabsUse the real spreadsheet ID and sheet name in the tool config.
If discovery fails, ask the user for the spreadsheet URL (they can
copy-paste it from their browser — the ID is between /d/ and /edit).
{
"name": "google_sheets.append_row",
"description": "Log caller information to the Leads spreadsheet",
"params": [
{"name": "Name", "description": "Caller's full name", "type": "string", "required": true},
{"name": "Phone", "description": "Caller's phone number", "type": "string", "required": true},
{"name": "Notes", "description": "Call summary", "type": "string", "required": false}
],
"script": "let key = secret('google_sheets');\nlet resp = http_post_h('https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID/values/Sheet1:append?valueInputOption=USER_ENTERED', {values: [[Name, Phone, Notes]]}, {'Authorization': 'Bearer ' + key, 'Content-Type': 'application/json'});\nif (resp.status >= 200 && resp.status < 300) { return 'Recorded.'; }\nthrow new Error(`Google Sheets ${resp.status}: ${resp.body}`);",
"side_effect": true
}
IMPORTANT: Replace SPREADSHEET_ID and Sheet1 with real values obtained
from api_call discovery.
secret("google_sheets") for credentialsapi_call to discover the spreadsheet ID and sheet namethrow using resp.status/resp.body instead of returning a plain-text error string