Skip to content

feat: add Google Sheets action (#43) - #87

Open
raphael-goetz wants to merge 2 commits into
mainfrom
feat/#43-google-sheets-action
Open

raphael-goetz wants to merge 2 commits into
mainfrom
feat/#43-google-sheets-action

Conversation

@raphael-goetz

@raphael-goetz raphael-goetz commented Nov 1, 2026 •

Copy link
Copy Markdown
Member

What

Adds actions/google-sheets-action, a Google Sheets integration for the Hercules platform: append, read, update, look up, clear, create-sheet and batch-update over the Google Sheets REST API using service-account (JWT) authentication, plus two A1/value-range builder utilities, six SHEETS_* data types, and two poll-based triggers.

Why

Closes #43.

How

  • Functions (src/functions/): sheetsAppendRow, sheetsUpdateRange, sheetsGetRange, sheetsLookupRow, sheetsClearRange, sheetsCreateSheet, sheetsBatchUpdate.
  • Utils (src/functions/utils/): sheetsCreateValueRange, sheetsCreateA1Range.
  • Data types (src/data_types/): SHEETS_VALUE_RANGE, SHEETS_UPDATE_RESULT, SHEETS_BATCH_RESULT, SHEETS_ROW, SHEETS_SHEET, SHEETS_SPREADSHEET_META.
  • Triggers (src/events/): GoogleSheetsRowAdded, GoogleSheetsRowUpdated. The Sheets API has no push webhooks, so both poll on a schedule by extending the SDK's Cron runtime flow type — mirroring how the webhook events extend Rest.
  • Auth/config: service_account_json (TEXT) and optional scopes via ConfigurationDefinition; the service_account_json default is backed by GOOGLE_SERVICE_ACCOUNT_JSON. Auth uses google-auth-library (JWT), API calls use axios.
  • Registered google-sheets-action in the .gitlab-ci.yml node-actions matrix.

Testing

From actions/google-sheets-action/, all green:

  • npm run typecheck
  • npm run test (10 passed — A1/value-range builders and data-type defaults)
  • npm run build
  • npm ci (lockfile valid for CI)

🤖 Generated with Claude Code

Add actions/google-sheets-action: append, read, update, look up, clear,
create-sheet and batch-update functions over the Google Sheets REST API
with service-account (JWT) auth, two A1/value-range builder utilities,
six SHEETS_* data types, and two poll-based (Cron) triggers
(GoogleSheetsRowAdded, GoogleSheetsRowUpdated). Registered in the gitlab
CI node-actions matrix.

Refs #43

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@raphael-goetz raphael-goetz self-assigned this Nov 1, 2026
Signed-off-by: Raphael Götz <52959657+raphael-goetz@users.noreply.github.com>
@github-actions

github-actions Bot commented Nov 1, 2026

Copy link
Copy Markdown

GitLab Pipeline Action

General information

Link to pipeline: https://gitlab.com/code0-tech/development/centaurus/-/pipelines/3014992870

Status: Passed
Duration: 8 minutes

Job summaries

docs:preview

Documentation preview available at https://code0-tech.gitlab.io/-/development/telescopium/-/jobs/17645960367/artifacts/out/index.html

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat: add Google Sheets action

1 participant