gogol-sheets-1.0.0: gen/Gogol/Sheets/Spreadsheets/GetByDataFilter.hs
{-# LANGUAGE DataKinds #-}
{-# LANGUAGE DerivingStrategies #-}
{-# LANGUAGE DuplicateRecordFields #-}
{-# LANGUAGE ImportQualifiedPost #-}
{-# LANGUAGE LambdaCase #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TypeFamilies #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
{-# OPTIONS_GHC -fno-warn-unused-binds #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}
-- |
-- Module : Gogol.Sheets.Spreadsheets.GetByDataFilter
-- Copyright : (c) 2015-2025 Brendan Hay
-- License : Mozilla Public License, v. 2.0.
-- Maintainer : Brendan Hay <brendan.g.hay+gogol@gmail.com>
-- Toni Cebrián <toni@tonicebrian.com>
-- Stability : auto-generated
-- Portability : non-portable (GHC extensions)
--
-- Returns the spreadsheet at the given ID. The caller must specify the spreadsheet ID. This method differs from GetSpreadsheet in that it allows selecting which subsets of spreadsheet data to return by specifying a dataFilters parameter. Multiple DataFilters can be specified. Specifying one or more data filters returns the portions of the spreadsheet that intersect ranges matched by any of the filters. By default, data within grids is not returned. You can include grid data one of 2 ways: * Specify a <https://developers.google.com/sheets/api/guides/field-masks field mask> listing your desired fields using the @fields@ URL parameter in HTTP * Set the includeGridData parameter to true. If a field mask is set, the @includeGridData@ parameter is ignored For large spreadsheets, as a best practice, retrieve only the specific spreadsheet fields that you want.
--
-- /See:/ <https://developers.google.com/sheets/ Google Sheets API Reference> for @sheets.spreadsheets.getByDataFilter@.
module Gogol.Sheets.Spreadsheets.GetByDataFilter
( -- * Resource
SheetsSpreadsheetsGetByDataFilterResource,
-- ** Constructing a Request
SheetsSpreadsheetsGetByDataFilter (..),
newSheetsSpreadsheetsGetByDataFilter,
)
where
import Gogol.Prelude qualified as Core
import Gogol.Sheets.Types
-- | A resource alias for @sheets.spreadsheets.getByDataFilter@ method which the
-- 'SheetsSpreadsheetsGetByDataFilter' request conforms to.
type SheetsSpreadsheetsGetByDataFilterResource =
"v4"
Core.:> "spreadsheets"
Core.:> Core.CaptureMode "spreadsheetId" "getByDataFilter" Core.Text
Core.:> Core.QueryParam "$.xgafv" Xgafv
Core.:> Core.QueryParam "access_token" Core.Text
Core.:> Core.QueryParam "callback" Core.Text
Core.:> Core.QueryParam "uploadType" Core.Text
Core.:> Core.QueryParam "upload_protocol" Core.Text
Core.:> Core.QueryParam "alt" Core.AltJSON
Core.:> Core.ReqBody '[Core.JSON] GetSpreadsheetByDataFilterRequest
Core.:> Core.Post '[Core.JSON] Spreadsheet
-- | Returns the spreadsheet at the given ID. The caller must specify the spreadsheet ID. This method differs from GetSpreadsheet in that it allows selecting which subsets of spreadsheet data to return by specifying a dataFilters parameter. Multiple DataFilters can be specified. Specifying one or more data filters returns the portions of the spreadsheet that intersect ranges matched by any of the filters. By default, data within grids is not returned. You can include grid data one of 2 ways: * Specify a <https://developers.google.com/sheets/api/guides/field-masks field mask> listing your desired fields using the @fields@ URL parameter in HTTP * Set the includeGridData parameter to true. If a field mask is set, the @includeGridData@ parameter is ignored For large spreadsheets, as a best practice, retrieve only the specific spreadsheet fields that you want.
--
-- /See:/ 'newSheetsSpreadsheetsGetByDataFilter' smart constructor.
data SheetsSpreadsheetsGetByDataFilter = SheetsSpreadsheetsGetByDataFilter
{ -- | V1 error format.
xgafv :: (Core.Maybe Xgafv),
-- | OAuth access token.
accessToken :: (Core.Maybe Core.Text),
-- | JSONP
callback :: (Core.Maybe Core.Text),
-- | Multipart request metadata.
payload :: GetSpreadsheetByDataFilterRequest,
-- | The spreadsheet to request.
spreadsheetId :: Core.Text,
-- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
uploadType :: (Core.Maybe Core.Text),
-- | Upload protocol for media (e.g. \"raw\", \"multipart\").
uploadProtocol :: (Core.Maybe Core.Text)
}
deriving (Core.Eq, Core.Show, Core.Generic)
-- | Creates a value of 'SheetsSpreadsheetsGetByDataFilter' with the minimum fields required to make a request.
newSheetsSpreadsheetsGetByDataFilter ::
-- | Multipart request metadata. See 'payload'.
GetSpreadsheetByDataFilterRequest ->
-- | The spreadsheet to request. See 'spreadsheetId'.
Core.Text ->
SheetsSpreadsheetsGetByDataFilter
newSheetsSpreadsheetsGetByDataFilter payload spreadsheetId =
SheetsSpreadsheetsGetByDataFilter
{ xgafv = Core.Nothing,
accessToken = Core.Nothing,
callback = Core.Nothing,
payload = payload,
spreadsheetId = spreadsheetId,
uploadType = Core.Nothing,
uploadProtocol = Core.Nothing
}
instance Core.GoogleRequest SheetsSpreadsheetsGetByDataFilter where
type Rs SheetsSpreadsheetsGetByDataFilter = Spreadsheet
type
Scopes SheetsSpreadsheetsGetByDataFilter =
'[Drive'FullControl, Drive'File, Spreadsheets'FullControl]
requestClient SheetsSpreadsheetsGetByDataFilter {..} =
go
spreadsheetId
xgafv
accessToken
callback
uploadType
uploadProtocol
(Core.Just Core.AltJSON)
payload
sheetsService
where
go =
Core.buildClient
( Core.Proxy ::
Core.Proxy SheetsSpreadsheetsGetByDataFilterResource
)
Core.mempty