{-# LANGUAGE DataKinds #-}
{-# LANGUAGE DeriveDataTypeable #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE FlexibleInstances #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE TypeFamilies #-}
{-# LANGUAGE TypeOperators #-}
{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
{-# OPTIONS_GHC -fno-warn-unused-binds #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
module Network.Google.Resource.Calendar.Events.Instances
(
EventsInstancesResource
, eventsInstances
, EventsInstances
, eCalendarId
, eTimeMin
, eShowDeleted
, eOriginalStart
, eMaxAttendees
, ePageToken
, eTimeZone
, eMaxResults
, eAlwaysIncludeEmail
, eTimeMax
, eEventId
) where
import Network.Google.AppsCalendar.Types
import Network.Google.Prelude
type EventsInstancesResource =
"calendar" :>
"v3" :>
"calendars" :>
Capture "calendarId" Text :>
"events" :>
Capture "eventId" Text :>
"instances" :>
QueryParam "timeMin" DateTime' :>
QueryParam "showDeleted" Bool :>
QueryParam "originalStart" Text :>
QueryParam "maxAttendees" (Textual Int32) :>
QueryParam "pageToken" Text :>
QueryParam "timeZone" Text :>
QueryParam "maxResults" (Textual Int32) :>
QueryParam "alwaysIncludeEmail" Bool :>
QueryParam "timeMax" DateTime' :>
QueryParam "alt" AltJSON :>
Get '[JSON] Events
data EventsInstances = EventsInstances'
{ _eCalendarId :: !Text
, _eTimeMin :: !(Maybe DateTime')
, _eShowDeleted :: !(Maybe Bool)
, _eOriginalStart :: !(Maybe Text)
, _eMaxAttendees :: !(Maybe (Textual Int32))
, _ePageToken :: !(Maybe Text)
, _eTimeZone :: !(Maybe Text)
, _eMaxResults :: !(Maybe (Textual Int32))
, _eAlwaysIncludeEmail :: !(Maybe Bool)
, _eTimeMax :: !(Maybe DateTime')
, _eEventId :: !Text
} deriving (Eq,Show,Data,Typeable,Generic)
eventsInstances
:: Text
-> Text
-> EventsInstances
eventsInstances pECalendarId_ pEEventId_ =
EventsInstances'
{ _eCalendarId = pECalendarId_
, _eTimeMin = Nothing
, _eShowDeleted = Nothing
, _eOriginalStart = Nothing
, _eMaxAttendees = Nothing
, _ePageToken = Nothing
, _eTimeZone = Nothing
, _eMaxResults = Nothing
, _eAlwaysIncludeEmail = Nothing
, _eTimeMax = Nothing
, _eEventId = pEEventId_
}
eCalendarId :: Lens' EventsInstances Text
eCalendarId
= lens _eCalendarId (\ s a -> s{_eCalendarId = a})
eTimeMin :: Lens' EventsInstances (Maybe UTCTime)
eTimeMin
= lens _eTimeMin (\ s a -> s{_eTimeMin = a}) .
mapping _DateTime
eShowDeleted :: Lens' EventsInstances (Maybe Bool)
eShowDeleted
= lens _eShowDeleted (\ s a -> s{_eShowDeleted = a})
eOriginalStart :: Lens' EventsInstances (Maybe Text)
eOriginalStart
= lens _eOriginalStart
(\ s a -> s{_eOriginalStart = a})
eMaxAttendees :: Lens' EventsInstances (Maybe Int32)
eMaxAttendees
= lens _eMaxAttendees
(\ s a -> s{_eMaxAttendees = a})
. mapping _Coerce
ePageToken :: Lens' EventsInstances (Maybe Text)
ePageToken
= lens _ePageToken (\ s a -> s{_ePageToken = a})
eTimeZone :: Lens' EventsInstances (Maybe Text)
eTimeZone
= lens _eTimeZone (\ s a -> s{_eTimeZone = a})
eMaxResults :: Lens' EventsInstances (Maybe Int32)
eMaxResults
= lens _eMaxResults (\ s a -> s{_eMaxResults = a}) .
mapping _Coerce
eAlwaysIncludeEmail :: Lens' EventsInstances (Maybe Bool)
eAlwaysIncludeEmail
= lens _eAlwaysIncludeEmail
(\ s a -> s{_eAlwaysIncludeEmail = a})
eTimeMax :: Lens' EventsInstances (Maybe UTCTime)
eTimeMax
= lens _eTimeMax (\ s a -> s{_eTimeMax = a}) .
mapping _DateTime
eEventId :: Lens' EventsInstances Text
eEventId = lens _eEventId (\ s a -> s{_eEventId = a})
instance GoogleRequest EventsInstances where
type Rs EventsInstances = Events
type Scopes EventsInstances =
'["https://www.googleapis.com/auth/calendar",
"https://www.googleapis.com/auth/calendar.events",
"https://www.googleapis.com/auth/calendar.events.readonly",
"https://www.googleapis.com/auth/calendar.readonly"]
requestClient EventsInstances'{..}
= go _eCalendarId _eEventId _eTimeMin _eShowDeleted
_eOriginalStart
_eMaxAttendees
_ePageToken
_eTimeZone
_eMaxResults
_eAlwaysIncludeEmail
_eTimeMax
(Just AltJSON)
appsCalendarService
where go
= buildClient
(Proxy :: Proxy EventsInstancesResource)
mempty