workflows

A workflow is an automated process that connects your spreadsheets and files and moves data between them — on a schedule or on demand — so a task that would otherwise be manual runs by itself. It is the top-level container that holds automations, forms and triggers.

Use these endpoints to list, create, read, update, run and archive workflows, and to inspect their combined sources and destinations.

Base URL: https://dev-api.sheetgo.com. Paths are complete, version included (/rest/beta/...): append them to the base URL exactly as shown. Start page: https://dev-api.sheetgo.com/rest/reference.md

This page documents every endpoint of the group. Request and response shapes link to model pages; fetch the model pages an endpoint links before building a body.

Guide: Rate Limiting

Every endpoint is rate limited; see the guide Rate Limiting.

POST /rest/beta/workflows/run/{id}

(Obsolete) Use POST /rest/beta/workflows/{id}/run instead

Deprecated

This endpoint will be removed

Authentication, any one of: default; Developer Access; sheetgo-api-key.

Parameters

Name In Type Required Description Allowed values / default / constraints
id path string yes Workflow identification

Responses

Read next: HTTPValidationError, SuccessResponse.

GET /rest/beta/workflows/{id}/run

Get a workflow's last-run status

Last-run execution status of the workflow, with a per-automation breakdown.

Reflects each automation's most recent execution (latest only — no history).

Authentication, any one of: default; Developer Access; sheetgo-api-key.

Parameters

Name In Type Required Description Allowed values / default / constraints
id path string yes Workflow identification

Responses

Read next: HTTPValidationError, WorkflowRunStatus.

POST /rest/beta/workflows/{id}/run

Run a single workflow

Given a workflow id, the workflow will start its execution

Authentication, any one of: default; Developer Access; sheetgo-api-key.

Parameters

Name In Type Required Description Allowed values / default / constraints
id path string yes Workflow identification

Responses

Read next: HTTPValidationError, SuccessResponse.

GET /rest/beta/workflows/{id}/files

Get file sources and destinations of all automations in a workflow

Return the sources and destinations of each automation in a workflow.

Every source type is included (file, folder, api, webhook, integration, bigquery, outlook); write-only fields such as an api source's headers are omitted.

Destinations include generated-document and PDF destinations, which are backed by a Drive folder (and, for documents, the Docs template).

Authentication, any one of: default; Developer Access; sheetgo-api-key.

Parameters

Name In Type Required Description Allowed values / default / constraints
id path string yes Workflow identification

Responses

Read next: HTTPValidationError.

GET /rest/beta/workflows/{id}/sources

Get file sources of all automations in a workflow

Return the sources of each automation in a workflow.

Every source type is included (file, folder, api, webhook, integration, bigquery, outlook); write-only fields such as an api source's headers are omitted.

Authentication, any one of: default; Developer Access; sheetgo-api-key.

Parameters

Name In Type Required Description Allowed values / default / constraints
id path string yes Workflow identification

Responses

Read next: HTTPValidationError.

GET /rest/beta/workflows/{id}/destinations

Get file destinations of all automations in a workflow

Return the file/folder destinations of each automation in a workflow.

Destinations include generated-document and PDF destinations, which are backed by a Drive folder (and, for documents, the Docs template).

Authentication, any one of: default; Developer Access; sheetgo-api-key.

Parameters

Name In Type Required Description Allowed values / default / constraints
id path string yes Workflow identification

Responses

Read next: HTTPValidationError.

GET /rest/beta/workflows/{id}

Get a single workflow

Given a workflow id, returns the workflow model data

Authentication, any one of: default; Developer Access; sheetgo-api-key.

Parameters

Name In Type Required Description Allowed values / default / constraints
id path string yes Workflow identification

Responses

Read next: HTTPValidationError, WorkflowModel.

PATCH /rest/beta/workflows/{id}

Update an existing workflow

Updates a workflow identified by id with the given arguments

Authentication, any one of: default; Developer Access; sheetgo-api-key.

Parameters

Name In Type Required Description Allowed values / default / constraints
id path string yes Workflow identification

Request body

Content type application/json. Optional.

Body: WorkflowPatch

Responses

Read next: HTTPValidationError, WorkflowModel, WorkflowPatch.

DELETE /rest/beta/workflows/{id}

Archive a workflow

Given a workflow id, archive the workflow

Authentication, any one of: default; Developer Access; sheetgo-api-key.

Parameters

Name In Type Required Description Allowed values / default / constraints
id path string yes Workflow identification

Request body

Content type application/json. Required.

Body: WorkflowArchive

Responses

Read next: HTTPValidationError, SuccessResponse, WorkflowArchive.

GET /rest/beta/workflows/

Get a paginated list of workflows

Return a list of workflows following the pagination parameters

Authentication, any one of: default; Developer Access; sheetgo-api-key.

Parameters

Name In Type Required Description Allowed values / default / constraints
page query integer no Page number, 1-based default: 1; min: 1
per_page query integer no Number of items per page (1-100; values above 100 are clamped to 100 and the effective size is echoed in the response) default: 50; min: 1

Responses

Read next: HTTPValidationError, PaginatedResponse_WorkflowModel_.

POST /rest/beta/workflows/

Create a new workflow

Create a new workflow with the given arguments

Authentication, any one of: default; Developer Access; sheetgo-api-key.

Request body

Content type application/json. Optional.

Body: WorkflowCreate

Responses

Read next: HTTPValidationError, WorkflowCreate, WorkflowModel.

GET /rest/beta/workflows/{id}/collaborators

List a workflow's collaborators

Members and their roles (owner included).

Authentication, any one of: default; Developer Access; sheetgo-api-key.

Parameters

Name In Type Required Description Allowed values / default / constraints
id path string yes Workflow identification

Responses

Read next: CollaboratorsOut, HTTPValidationError.

POST /rest/beta/workflows/{id}/collaborators

Add collaborators to a workflow

Invite one or more collaborators. Sends an invitation email unless skip_invitation.

Authentication, any one of: default; Developer Access; sheetgo-api-key.

Parameters

Name In Type Required Description Allowed values / default / constraints
id path string yes Workflow identification

Request body

Content type application/json. Required.

Body: CollaboratorsAdd

Responses

Read next: CollaboratorsAdd, CollaboratorsOut, HTTPValidationError.

DELETE /rest/beta/workflows/{id}/collaborators

Remove all collaborators from a workflow

Remove every collaborator at once. The owner is always kept.

Reports per-email outcomes; a partial failure does not abort the rest. Does not change general (domain/team) access - use DELETE /rest/beta/workflows/{id}/general-access for that.

Authentication, any one of: default; Developer Access; sheetgo-api-key.

Parameters

Name In Type Required Description Allowed values / default / constraints
id path string yes Workflow identification
confirm query boolean no Must be true - removes every collaborator default: false
remove_file_access query boolean no Also revoke their access to the files default: false

Responses

Read next: HTTPValidationError.

PATCH /rest/beta/workflows/{id}/collaborators/{email}

Change a collaborator's role

Promote or demote a collaborator (manager | collaborator).

Authentication, any one of: default; Developer Access; sheetgo-api-key.

Parameters

Name In Type Required Description Allowed values / default / constraints
id path string yes Workflow identification
email path string yes Collaborator email

Request body

Content type application/json. Required.

Body: CollaboratorRoleUpdate

Responses

Read next: CollaboratorRoleUpdate, CollaboratorsOut, HTTPValidationError.

DELETE /rest/beta/workflows/{id}/collaborators/{email}

Remove a collaborator

Remove a collaborator, optionally revoking their file permissions.

Authentication, any one of: default; Developer Access; sheetgo-api-key.

Parameters

Name In Type Required Description Allowed values / default / constraints
id path string yes Workflow identification
email path string yes Collaborator email
remove_file_access query boolean no Also revoke their access to the files default: false

Responses

Read next: CollaboratorsOut, HTTPValidationError.

GET /rest/beta/workflows/{id}/general-access

Get a workflow's general (domain/team) access

Whether the workflow is restricted, domain-wide, or team-wide.

Authentication, any one of: default; Developer Access; sheetgo-api-key.

Parameters

Name In Type Required Description Allowed values / default / constraints
id path string yes Workflow identification

Responses

Read next: GeneralAccessOut, HTTPValidationError.

PUT /rest/beta/workflows/{id}/general-access

Set a workflow's general (domain/team) access

restrict clears domain/team; domain/team are derived from the owner's account.

Authentication, any one of: default; Developer Access; sheetgo-api-key.

Parameters

Name In Type Required Description Allowed values / default / constraints
id path string yes Workflow identification

Request body

Content type application/json. Required.

Body: GeneralAccessSet

Responses

Read next: GeneralAccessOut, GeneralAccessSet, HTTPValidationError.

DELETE /rest/beta/workflows/{id}/general-access

Revoke a workflow's general (domain/team) access

Reset general access to restrict - the same as PUT {"access_type": "restrict"}.

Note: because scopes derive from the HTTP method, this requires workflows.delete while the equivalent PUT requires workflows.write.

Authentication, any one of: default; Developer Access; sheetgo-api-key.

Parameters

Name In Type Required Description Allowed values / default / constraints
id path string yes Workflow identification

Responses

Read next: GeneralAccessOut, HTTPValidationError.

POST /rest/beta/workflows/{id}/leave

Leave a shared workflow

Remove yourself from a workflow shared with you.

Authentication, any one of: default; Developer Access; sheetgo-api-key.

Parameters

Name In Type Required Description Allowed values / default / constraints
id path string yes Workflow identification

Responses

Read next: HTTPValidationError.

POST /rest/beta/workflows/{id}/request-access

Ask a workflow's owner for access

Email the owner an access request. Approval happens in the Sheetgo app.

Authentication, any one of: default; Developer Access; sheetgo-api-key.

Parameters

Name In Type Required Description Allowed values / default / constraints
id path string yes Workflow identification

Responses

Read next: HTTPValidationError.

POST /rest/beta/workflows/{id}/change-owner

Transfer workflow ownership

Transfer ownership to another Sheetgo user. Owner only; irreversible.

Authentication, any one of: default; Developer Access; sheetgo-api-key.

Parameters

Name In Type Required Description Allowed values / default / constraints
id path string yes Workflow identification
confirm query boolean no Must be true - this cannot be undone default: false

Request body

Content type application/json. Required.

Body: ChangeOwnerIn

Responses

Read next: ChangeOwnerIn.


More: start page https://dev-api.sheetgo.com/rest/reference.md, everything in one file https://dev-api.sheetgo.com/rest/llms-full.txt, OpenAPI https://dev-api.sheetgo.com/rest/openapi.json.