Looking for SegmentStream Marketing Analytics? It moved to measure.segmentstream.com →
Built in

Google Sheets

Read spreadsheets one Google account can open: targets, budgets and mappings kept in Sheets. It asks only for read access and cannot list your files, so you name each spreadsheet by ID.

Moving off Google Sheets? We move you over with your history, and run both side by side until every team has switched.

Spreadsheet alternative →
Inside SegmentStream

Connected once, used everywhere.

Connections are declared in your repository and authorised in the console. The credentials stay with the platform; apps, pipelines, workflows and the agent use them under the same roles.

segmentstream.com
The console's connections page: Resend, Xero, Stripe, Supabase, LinkedIn and Telegram connections, each connected, with the key it is declared under in code
Connections declared in code and authorised here. The credentials stay with the platform, never in the repository.

What the connection reaches

  • Spreadsheet metadata and sheet titles
  • Cell values of one or several ranges
  • Read only
Status
Built into the pipeline SDK
Connection class
GoogleSheetsConnection
Credential
Google account that can open the spreadsheets

Connect Google Sheets

Three steps, the same for every connection. The credential goes to the platform, never into the repository or pipeline code.

  1. 1

    Declare it in connections/connections.py

    connections/connections.py
    from segmentstream.connections import GoogleSheetsConnection connections = (    GoogleSheetsConnection(key="google_sheets"),)
  2. 2

    Deploy

    $ segmentstream deploy
  3. 3

    Connect

    Open the connection in the console and sign in with the Google account that can open the spreadsheets, or authorise it from the terminal. Tokens are refreshed by the platform; pipeline code never sees them.

    $ segmentstream connection authorize google_sheets --open

Use it

Code asks for the connection by its key. The platform adds the credential on the way out.

pipeline/ingestion/…
import segmentstream as s with s.get_connection("google_sheets").get_http_client() as client:    response = client.get(        f"/spreadsheets/{spreadsheet_id}/values:batchGet",        params={"ranges": "Budget!A1:F40"},    )    response.raise_for_status()

Or ask your agent

“Load the budget tab of our planning spreadsheet every morning.”

Part of these solutions

More in Data & files

Enterprise pilot

Want Google Sheets set up for you?

Our forward-deployed engineers build one solution on your data, in your own workspace, as code you own. Tell us what you run today and what you want; your note goes straight to our founder.

  • One solution, on your data, in your own workspace
  • First version live in two weeks
  • Parity proven before anything is switched off
  • Fixed scope and price, credited to your contract if you continue

Not ready for a pilot? Send the form anyway with your question. An engineer will reply, not a sales rep.

How the pilot works

Goes to our founder’s inbox. No sales queue, no newsletter.

Connect what your company runs.

Start a pilot

Our engineers build the first version on your data in two weeks, at a fixed price.

Or build it yourself with your coding agent:

curl -fsSL https://segmentstream.com/install.sh | sh

We’ll email you product updates, tips and onboarding help. Unsubscribe anytime.