# elixir_google_spreadsheets v1.0.1 - Table of Contents

> Elixir library to read and write data of Google Spreadsheets.

## Pages

- [Elixir Google Spreadsheets](readme.md)

## Modules

- [GSS](GSS.md): Bootstrap Google Spreadsheet application.

- [GSS.Auth](GSS.Auth.md): Authentication for the Google Sheets API.
- [GSS.Client](GSS.Client.md): Model of Client abstraction
This process is a Producer for this GenStage pipeline.

- [GSS.Client.Limiter](GSS.Client.Limiter.md): Model of Limiter request subscribed to Client with partition :write or :read
- [GSS.Client.Request](GSS.Client.Request.md): Worker of Request subscribed to Limiter, call request to API and send an answer to Client.
- [GSS.Client.RequestParams](GSS.Client.RequestParams.md): Request parameters flowing through the client GenStage pipeline.
- [GSS.Client.Supervisor](GSS.Client.Supervisor.md): Supervisor to keep track of initialized Client, Limiter and Request processes.

- [GSS.Registry](GSS.Registry.md): Thin facade over Elixir's `Registry` for locating running spreadsheet processes.
- [GSS.Spreadsheet](GSS.Spreadsheet.md): Model of Google Spreadsheet for external interaction.

- [GSS.Spreadsheet.Supervisor](GSS.Spreadsheet.Supervisor.md): Supervisor to keep track of initialized spreadsheet processes.

- Exceptions
  - [GSS.GoogleApiError](GSS.GoogleApiError.md): Raised in case non 200 response code from Google Cloud API.

  - [GSS.InvalidColumnIndex](GSS.InvalidColumnIndex.md): Raised in case more than 255 columns is queried.

  - [GSS.InvalidInput](GSS.InvalidInput.md): Raised in case invalid input params are passed

  - [GSS.InvalidRange](GSS.InvalidRange.md): Raised in case invalid range is defined.

  - [GSS.MissingAuthConfig](GSS.MissingAuthConfig.md): Raised on the first API request when no authentication is configured for
`:elixir_google_spreadsheets`.

