# integrations

**Integrations** are pre-configured sources for third-party services — currently Shopify and QuickBooks. Instead of describing an HTTP request yourself, you pick a *data source* from a menu and Sheetgo supplies the URL, credentials, pagination and response parsing for the account you authorized.

Use `GET /rest/beta/integrations` to see which providers you have connected and under which accounts, and `GET /rest/beta/integrations/{provider}/options` to list the data sources you can pull and the parameters each accepts. Then create an automation with an `integration` source.

Authorizing a provider is a browser sign-in in the Sheetgo web app and cannot be done through the API — these endpoints report the result.

Base URL: `https://api.sheetgo.com`. Paths are complete, version included (`/rest/beta/...`): append them to the base URL exactly as shown. Start page: https://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](https://api.sheetgo.com/rest/guides/rate-limiting.md)

Every endpoint is rate limited; see the guide [Rate Limiting](https://api.sheetgo.com/rest/guides/rate-limiting.md).

<a id="get-rest-beta-integrations"></a>
## GET /rest/beta/integrations

**List integrations and connected accounts**

Every integration, whether or not you have authorized it.

`accounts[].account` is what an automation's `sources[].account` expects.
With exactly one account for a provider you can omit that field and Sheetgo
resolves it; with several, naming one is required.

Authorization itself happens in the Sheetgo web app — it is a browser OAuth
flow and cannot be driven from an API key.

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

**Responses**

- `200` Providers and your authorized accounts. Schema: [IntegrationListResponse](https://api.sheetgo.com/rest/reference/models/IntegrationListResponse.md)
- `401` Authentication failed or token is invalid

Read next: [IntegrationListResponse](https://api.sheetgo.com/rest/reference/models/IntegrationListResponse.md).

<a id="get-rest-beta-integrations-provider-options"></a>
## GET /rest/beta/integrations/{provider}/options

**List a provider's data sources**

What you can ask this provider for.

Static per provider and identical for every account, so this answers even
before you have authorized one — useful for exploring first. `id` is what
`sources[].data_source` expects; `parameters` is what `sources[].parameters`
accepts, and only QuickBooks reports declare any.

Retired data sources are omitted: they would raise mid-run rather than
return data.

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

**Parameters**

| Name | In | Type | Required | Description | Allowed values / default / constraints |
| --- | --- | --- | --- | --- | --- |
| `provider` | path | [IntegrationProvider](https://api.sheetgo.com/rest/reference/models/IntegrationProvider.md) | yes | Integration provider: shopify or quickbooks |  |

**Responses**

- `200` Selectable data sources. Schema: [IntegrationOptionsResponse](https://api.sheetgo.com/rest/reference/models/IntegrationOptionsResponse.md)
- `401` Authentication failed or token is invalid
- `422` Validation Error. Schema: [HTTPValidationError](https://api.sheetgo.com/rest/reference/models/HTTPValidationError.md)

Read next: [HTTPValidationError](https://api.sheetgo.com/rest/reference/models/HTTPValidationError.md), [IntegrationOptionsResponse](https://api.sheetgo.com/rest/reference/models/IntegrationOptionsResponse.md).

---

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