cisco-spark-api-0.1.0.3: A Haskell bindings for Webex Teams API

Copyright(c) Naoto Shimazaki 2017
LicenseMIT (see the file LICENSE)
Maintainerhttps://github.com/nshimaza
Stabilityexperimental
Safe HaskellNone
LanguageHaskell2010

Network.CiscoSpark

Contents

Description

This module provides types and functions for accessing Cisco Spark REST API.

The module is designed to improve type safety over the API. Each entity is separately typed. JSON messages contained in REST responses are decoded into appropriate type of Haskell record. JSON messages sent in REST requests are encoded only from correct type of record.

Some Spark REST API return list of objects. Those APIs require HTTP Link Header based pagination. Haskell functions for those APIs automatically request subsequent pages as needed. Also those functions transform chunky response into seamless stream of elements.

Examples

    -- Sending a message to a room.
    let auth        = Authorization "your authorization token"
        roomId      = RoomId "Room ID your message to be sent"
        messageText = MessageText "your message"
        message     = CreateMessage (Just roomId) Nothing Nothing (Just messageText) Nothing Nothing
    createEntity auth def createMessage >>= print . getResponseBody

    -- Obtaining detail of a user.
    let personId    = PersonId "your person ID"
    getDetail auth def personId >>= print . getResponseBody

    -- Obtaining membership of a room as stream of object representing each membership relation.
    let filter = MembershipFilter yourRoomId Nothing Nothing
    runConduit $ streamEntityWithFilter auth def filter .| takeC 200 .| mapM_C print

    -- Create a room.
    let createRoom  = CreateRoom "Title of the new room" Nothing
    createEntity auth def createRoom >>= print . getResponseBody

    -- Delete a room.
    deleteRoom auth def roomId >>= print . getResponseBody

Support for Lens

This package provides many of records representing objects communicated via Cisco Spark REST API. Those records are designed to allow create lenses by Control.Lens.TH.makeFields.

Following example creates overloaded accessors for Person, Room and Team.

makeFields ''Person
makeFields ''Room
makeFields ''Team

You can access personId, roomId and teamId via overloaded accessor function id like this.

    let yourPersonId = yourPerson ^. id
        yourRoomId = yourRoom ^. id
        yourTeamId = yourTeam ^. id

This package does not provide pre-generated lenses for you because not everyone need it but you can make it by yourself so easily as described.

Synopsis

Types

Common Types

newtype Authorization Source #

Authorization string against Spark API to be contained in HTTP Authorization header of every request.

data CiscoSparkRequest Source #

Wrapping Request in order to provide easy default value specifically for Cisco Spark public API.

Constructors

CiscoSparkRequest 

Fields

Instances
Show CiscoSparkRequest Source # 
Instance details

Defined in Network.CiscoSpark

Default CiscoSparkRequest Source #

Default parameters for HTTP request to Cisco Spark REST API.

Instance details

Defined in Network.CiscoSpark

newtype Timestamp Source #

Type representing timestamp. For now, it is just copied from API response JSON.

Constructors

Timestamp Text 
Instances
Eq Timestamp Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show Timestamp Source # 
Instance details

Defined in Network.CiscoSpark.Types

Generic Timestamp Source # 
Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type Rep Timestamp :: * -> * #

FromJSON Timestamp Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser Timestamp

parseJSONList :: Value -> Parser [Timestamp]

ToJSON Timestamp Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: Timestamp -> Value

toEncoding :: Timestamp -> Encoding

toJSONList :: [Timestamp] -> Value

toEncodingList :: [Timestamp] -> Encoding

type Rep Timestamp Source # 
Instance details

Defined in Network.CiscoSpark.Types

type Rep Timestamp = D1 (MetaData "Timestamp" "Network.CiscoSpark.Types" "cisco-spark-api-0.1.0.3-inplace" True) (C1 (MetaCons "Timestamp" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text)))

newtype ErrorCode Source #

Error code for element level error potentially contained in List API responses.

Constructors

ErrorCode Text 
Instances
Eq ErrorCode Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show ErrorCode Source # 
Instance details

Defined in Network.CiscoSpark.Types

Generic ErrorCode Source # 
Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type Rep ErrorCode :: * -> * #

FromJSON ErrorCode Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser ErrorCode

parseJSONList :: Value -> Parser [ErrorCode]

ToJSON ErrorCode Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: ErrorCode -> Value

toEncoding :: ErrorCode -> Encoding

toJSONList :: [ErrorCode] -> Value

toEncodingList :: [ErrorCode] -> Encoding

type Rep ErrorCode Source # 
Instance details

Defined in Network.CiscoSpark.Types

type Rep ErrorCode = D1 (MetaData "ErrorCode" "Network.CiscoSpark.Types" "cisco-spark-api-0.1.0.3-inplace" True) (C1 (MetaCons "ErrorCode" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text)))

data ErrorTitle Source #

ErrorTitle represent concrete error code and reason. It appears in Errors.

Constructors

ErrorTitle 

Fields

Instances
Eq ErrorTitle Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show ErrorTitle Source # 
Instance details

Defined in Network.CiscoSpark.Types

FromJSON ErrorTitle Source #

ErrorTitle derives ToJSON and FromJSON via deriveJSON template haskell function.

Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser ErrorTitle

parseJSONList :: Value -> Parser [ErrorTitle]

ToJSON ErrorTitle Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: ErrorTitle -> Value

toEncoding :: ErrorTitle -> Encoding

toJSONList :: [ErrorTitle] -> Value

toEncodingList :: [ErrorTitle] -> Encoding

newtype Errors Source #

Errors is used for element level error in List API. When list API failed to retrieve an element, it returns this object for the element and response API status as successful instead of failing entire API request.

Refer to API Document for more detail.

Constructors

Errors 
Instances
Eq Errors Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

(==) :: Errors -> Errors -> Bool #

(/=) :: Errors -> Errors -> Bool #

Show Errors Source # 
Instance details

Defined in Network.CiscoSpark.Types

FromJSON Errors Source #

Errors derives ToJSON and FromJSON via deriveJSON template haskell function.

Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser Errors

parseJSONList :: Value -> Parser [Errors]

ToJSON Errors Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: Errors -> Value

toEncoding :: Errors -> Encoding

toJSONList :: [Errors] -> Value

toEncodingList :: [Errors] -> Encoding

People related types

data Person Source #

Person is detail description of Cisco Spark user or bot. Person is decoded from response JSON of Get Person Details REST call. It is also element type of response of List People call.

Constructors

Person 

Fields

Instances
Eq Person Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

(==) :: Person -> Person -> Bool #

(/=) :: Person -> Person -> Bool #

Show Person Source # 
Instance details

Defined in Network.CiscoSpark.Types

FromJSON Person Source #

Person derives ToJSON and FromJSON via deriveJSON template haskell function.

Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser Person

parseJSONList :: Value -> Parser [Person]

ToJSON Person Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: Person -> Value

toEncoding :: Person -> Encoding

toJSONList :: [Person] -> Value

toEncodingList :: [Person] -> Encoding

SparkListItem Person Source #

PersonList wraps Person.

Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type ToList Person :: * Source #

type ToList Person Source # 
Instance details

Defined in Network.CiscoSpark.Types

newtype PersonId Source #

Identifying Person describing detail of Cisco Spark user or bot.

Constructors

PersonId Text 
Instances
Eq PersonId Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show PersonId Source # 
Instance details

Defined in Network.CiscoSpark.Types

Generic PersonId Source # 
Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type Rep PersonId :: * -> * #

Methods

from :: PersonId -> Rep PersonId x #

to :: Rep PersonId x -> PersonId #

FromJSON PersonId Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser PersonId

parseJSONList :: Value -> Parser [PersonId]

ToJSON PersonId Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: PersonId -> Value

toEncoding :: PersonId -> Encoding

toJSONList :: [PersonId] -> Value

toEncodingList :: [PersonId] -> Encoding

SparkDetail PersonId Source #

User can get detail of a person.

Instance details

Defined in Network.CiscoSpark.Types

SparkResponse PersonId Source #

Get detail for a person API uses "PersonId' and responses Person.

Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type ToResponse PersonId :: * Source #

SparkApiPath PersonId Source #

Get detail for a person API uses PersonId and path "people".

Instance details

Defined in Network.CiscoSpark.Types

type Rep PersonId Source # 
Instance details

Defined in Network.CiscoSpark.Types

type Rep PersonId = D1 (MetaData "PersonId" "Network.CiscoSpark.Types" "cisco-spark-api-0.1.0.3-inplace" True) (C1 (MetaCons "PersonId" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text)))
type ToResponse PersonId Source # 
Instance details

Defined in Network.CiscoSpark.Types

newtype Email Source #

Email address of user.

Constructors

Email Text 
Instances
Eq Email Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

(==) :: Email -> Email -> Bool #

(/=) :: Email -> Email -> Bool #

Show Email Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

showsPrec :: Int -> Email -> ShowS #

show :: Email -> String #

showList :: [Email] -> ShowS #

Generic Email Source # 
Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type Rep Email :: * -> * #

Methods

from :: Email -> Rep Email x #

to :: Rep Email x -> Email #

FromJSON Email Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser Email

parseJSONList :: Value -> Parser [Email]

ToJSON Email Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: Email -> Value

toEncoding :: Email -> Encoding

toJSONList :: [Email] -> Value

toEncodingList :: [Email] -> Encoding

type Rep Email Source # 
Instance details

Defined in Network.CiscoSpark.Types

type Rep Email = D1 (MetaData "Email" "Network.CiscoSpark.Types" "cisco-spark-api-0.1.0.3-inplace" True) (C1 (MetaCons "Email" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text)))

newtype DisplayName Source #

Display name of user.

Constructors

DisplayName Text 
Instances
Eq DisplayName Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show DisplayName Source # 
Instance details

Defined in Network.CiscoSpark.Types

Generic DisplayName Source # 
Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type Rep DisplayName :: * -> * #

FromJSON DisplayName Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser DisplayName

parseJSONList :: Value -> Parser [DisplayName]

ToJSON DisplayName Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: DisplayName -> Value

toEncoding :: DisplayName -> Encoding

toJSONList :: [DisplayName] -> Value

toEncodingList :: [DisplayName] -> Encoding

type Rep DisplayName Source # 
Instance details

Defined in Network.CiscoSpark.Types

type Rep DisplayName = D1 (MetaData "DisplayName" "Network.CiscoSpark.Types" "cisco-spark-api-0.1.0.3-inplace" True) (C1 (MetaCons "DisplayName" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text)))

newtype NickName Source #

Nickname of user.

Constructors

NickName Text 
Instances
Eq NickName Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show NickName Source # 
Instance details

Defined in Network.CiscoSpark.Types

Generic NickName Source # 
Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type Rep NickName :: * -> * #

Methods

from :: NickName -> Rep NickName x #

to :: Rep NickName x -> NickName #

FromJSON NickName Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser NickName

parseJSONList :: Value -> Parser [NickName]

ToJSON NickName Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: NickName -> Value

toEncoding :: NickName -> Encoding

toJSONList :: [NickName] -> Value

toEncodingList :: [NickName] -> Encoding

type Rep NickName Source # 
Instance details

Defined in Network.CiscoSpark.Types

type Rep NickName = D1 (MetaData "NickName" "Network.CiscoSpark.Types" "cisco-spark-api-0.1.0.3-inplace" True) (C1 (MetaCons "NickName" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text)))

newtype FirstName Source #

First name of user.

Constructors

FirstName Text 
Instances
Eq FirstName Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show FirstName Source # 
Instance details

Defined in Network.CiscoSpark.Types

Generic FirstName Source # 
Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type Rep FirstName :: * -> * #

FromJSON FirstName Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser FirstName

parseJSONList :: Value -> Parser [FirstName]

ToJSON FirstName Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: FirstName -> Value

toEncoding :: FirstName -> Encoding

toJSONList :: [FirstName] -> Value

toEncodingList :: [FirstName] -> Encoding

type Rep FirstName Source # 
Instance details

Defined in Network.CiscoSpark.Types

type Rep FirstName = D1 (MetaData "FirstName" "Network.CiscoSpark.Types" "cisco-spark-api-0.1.0.3-inplace" True) (C1 (MetaCons "FirstName" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text)))

newtype LastName Source #

Last name of user.

Constructors

LastName Text 
Instances
Eq LastName Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show LastName Source # 
Instance details

Defined in Network.CiscoSpark.Types

Generic LastName Source # 
Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type Rep LastName :: * -> * #

Methods

from :: LastName -> Rep LastName x #

to :: Rep LastName x -> LastName #

FromJSON LastName Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser LastName

parseJSONList :: Value -> Parser [LastName]

ToJSON LastName Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: LastName -> Value

toEncoding :: LastName -> Encoding

toJSONList :: [LastName] -> Value

toEncodingList :: [LastName] -> Encoding

type Rep LastName Source # 
Instance details

Defined in Network.CiscoSpark.Types

type Rep LastName = D1 (MetaData "LastName" "Network.CiscoSpark.Types" "cisco-spark-api-0.1.0.3-inplace" True) (C1 (MetaCons "LastName" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text)))

newtype AvatarUrl Source #

URL pointing to image file of Avatar.

Constructors

AvatarUrl Text 
Instances
Eq AvatarUrl Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show AvatarUrl Source # 
Instance details

Defined in Network.CiscoSpark.Types

Generic AvatarUrl Source # 
Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type Rep AvatarUrl :: * -> * #

FromJSON AvatarUrl Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser AvatarUrl

parseJSONList :: Value -> Parser [AvatarUrl]

ToJSON AvatarUrl Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: AvatarUrl -> Value

toEncoding :: AvatarUrl -> Encoding

toJSONList :: [AvatarUrl] -> Value

toEncodingList :: [AvatarUrl] -> Encoding

type Rep AvatarUrl Source # 
Instance details

Defined in Network.CiscoSpark.Types

type Rep AvatarUrl = D1 (MetaData "AvatarUrl" "Network.CiscoSpark.Types" "cisco-spark-api-0.1.0.3-inplace" True) (C1 (MetaCons "AvatarUrl" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text)))

newtype Timezone Source #

Timezone in timezone name.

Constructors

Timezone Text 
Instances
Eq Timezone Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show Timezone Source # 
Instance details

Defined in Network.CiscoSpark.Types

Generic Timezone Source # 
Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type Rep Timezone :: * -> * #

Methods

from :: Timezone -> Rep Timezone x #

to :: Rep Timezone x -> Timezone #

FromJSON Timezone Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser Timezone

parseJSONList :: Value -> Parser [Timezone]

ToJSON Timezone Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: Timezone -> Value

toEncoding :: Timezone -> Encoding

toJSONList :: [Timezone] -> Value

toEncodingList :: [Timezone] -> Encoding

type Rep Timezone Source # 
Instance details

Defined in Network.CiscoSpark.Types

type Rep Timezone = D1 (MetaData "Timezone" "Network.CiscoSpark.Types" "cisco-spark-api-0.1.0.3-inplace" True) (C1 (MetaCons "Timezone" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text)))

data PersonStatus Source #

Current status of Person. It can be updated automatically by recent activity or explicitly updated by user's operation or propagated from vacation setting on email system.

Constructors

PersonStatusActive

The Person is currently active. Decoded from "active".

PersonStatusInactive

The Person is currently not active. Decoded from "inactive".

PersonStatusOutOfOffice

Email system of the Person currently sets vacation. Decoded from "OutOfOffice".

PersonStatusDoNotDisturb

The Person is explicitly indicated do-not-disturb. Decoded from "DoNotDisturb".

PersonStatusUnknown

The status of the Person is unknown. Decoded from "unknown".

Instances
Eq PersonStatus Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show PersonStatus Source # 
Instance details

Defined in Network.CiscoSpark.Types

Generic PersonStatus Source # 
Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type Rep PersonStatus :: * -> * #

FromJSON PersonStatus Source #

PersonStatus implements parseJSON to decode JSON enum value to a constructor.

Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser PersonStatus

parseJSONList :: Value -> Parser [PersonStatus]

ToJSON PersonStatus Source #

PersonStatus implements toEncoding to encode each constructor into JSON enum value.

Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: PersonStatus -> Value

toEncoding :: PersonStatus -> Encoding

toJSONList :: [PersonStatus] -> Value

toEncodingList :: [PersonStatus] -> Encoding

type Rep PersonStatus Source # 
Instance details

Defined in Network.CiscoSpark.Types

type Rep PersonStatus = D1 (MetaData "PersonStatus" "Network.CiscoSpark.Types" "cisco-spark-api-0.1.0.3-inplace" False) ((C1 (MetaCons "PersonStatusActive" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "PersonStatusInactive" PrefixI False) (U1 :: * -> *)) :+: (C1 (MetaCons "PersonStatusOutOfOffice" PrefixI False) (U1 :: * -> *) :+: (C1 (MetaCons "PersonStatusDoNotDisturb" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "PersonStatusUnknown" PrefixI False) (U1 :: * -> *))))

data PersonType Source #

PersonType indicates whether the Person is real human or bot.

Constructors

PersonTypePerson

The Person is a real human. Decoded from "person".

PersonTypeBot

The Person is a bot. Decoded from "bot".

Instances
Eq PersonType Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show PersonType Source # 
Instance details

Defined in Network.CiscoSpark.Types

FromJSON PersonType Source #

PersonType derives ToJSON and FromJSON via deriveJSON template haskell function.

Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser PersonType

parseJSONList :: Value -> Parser [PersonType]

ToJSON PersonType Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: PersonType -> Value

toEncoding :: PersonType -> Encoding

toJSONList :: [PersonType] -> Value

toEncodingList :: [PersonType] -> Encoding

newtype PersonList Source #

PersonList is decoded from response JSON of List People REST call. It is list of Person.

Constructors

PersonList 

Fields

Instances
Eq PersonList Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show PersonList Source # 
Instance details

Defined in Network.CiscoSpark.Types

FromJSON PersonList Source #

PersonList derives ToJSON and FromJSON via deriveJSON template haskell function.

Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser PersonList

parseJSONList :: Value -> Parser [PersonList]

ToJSON PersonList Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: PersonList -> Value

toEncoding :: PersonList -> Encoding

toJSONList :: [PersonList] -> Value

toEncodingList :: [PersonList] -> Encoding

data PersonFilter Source #

Optional query strings for people list API.

Constructors

PersonFilter 

Fields

Instances
Eq PersonFilter Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show PersonFilter Source # 
Instance details

Defined in Network.CiscoSpark.Types

Generic PersonFilter Source # 
Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type Rep PersonFilter :: * -> * #

Default PersonFilter Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

def :: PersonFilter

SparkFilter PersonFilter Source #

User can list people with filter parameter.

Instance details

Defined in Network.CiscoSpark.Types

SparkResponse PersonFilter Source #

List people API uses PersonFilter and responses Person.

Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type ToResponse PersonFilter :: * Source #

SparkApiPath PersonFilter Source #

List people API uses PersonFilter and path "people".

Instance details

Defined in Network.CiscoSpark.Types

type Rep PersonFilter Source # 
Instance details

Defined in Network.CiscoSpark.Types

type Rep PersonFilter = D1 (MetaData "PersonFilter" "Network.CiscoSpark.Types" "cisco-spark-api-0.1.0.3-inplace" False) (C1 (MetaCons "PersonFilter" PrefixI True) (S1 (MetaSel (Just "personFilterEmail") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe Email)) :*: (S1 (MetaSel (Just "personFilterDisplayName") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe DisplayName)) :*: S1 (MetaSel (Just "personFilterOrgId") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe OrganizationId)))))
type ToResponse PersonFilter Source # 
Instance details

Defined in Network.CiscoSpark.Types

data CreatePerson Source #

CreatePerson is encoded to request body JSON of Create a Person REST call.

Constructors

CreatePerson 

Fields

Instances
Eq CreatePerson Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show CreatePerson Source # 
Instance details

Defined in Network.CiscoSpark.Types

FromJSON CreatePerson Source #

CreatePerson derives ToJSON and FromJSON via deriveJSON template haskell function.

Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser CreatePerson

parseJSONList :: Value -> Parser [CreatePerson]

ToJSON CreatePerson Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: CreatePerson -> Value

toEncoding :: CreatePerson -> Encoding

toJSONList :: [CreatePerson] -> Value

toEncodingList :: [CreatePerson] -> Encoding

SparkCreate CreatePerson Source #

User can create a person.

Instance details

Defined in Network.CiscoSpark.Types

SparkResponse CreatePerson Source #

Create person API uses "CreatePerson' and responses Person.

Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type ToResponse CreatePerson :: * Source #

SparkApiPath CreatePerson Source #

Create person API uses CreatePerson and path "people".

Instance details

Defined in Network.CiscoSpark.Types

type ToResponse CreatePerson Source # 
Instance details

Defined in Network.CiscoSpark.Types

data UpdatePerson Source #

UpdatePerson is encoded to request body JSON of Update a Person REST call.

Constructors

UpdatePerson 

Fields

Instances
Eq UpdatePerson Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show UpdatePerson Source # 
Instance details

Defined in Network.CiscoSpark.Types

FromJSON UpdatePerson Source #

UpdatePerson derives ToJSON and FromJSON via deriveJSON template haskell function.

Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser UpdatePerson

parseJSONList :: Value -> Parser [UpdatePerson]

ToJSON UpdatePerson Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: UpdatePerson -> Value

toEncoding :: UpdatePerson -> Encoding

toJSONList :: [UpdatePerson] -> Value

toEncodingList :: [UpdatePerson] -> Encoding

SparkUpdate UpdatePerson Source #

User can update a person.

Instance details

Defined in Network.CiscoSpark.Types

SparkResponse UpdatePerson Source #

Update person API uses "UpdatePerson' and responses Person.

Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type ToResponse UpdatePerson :: * Source #

SparkApiPath UpdatePerson Source #

Update person API uses UpdatePerson and path "people".

Instance details

Defined in Network.CiscoSpark.Types

type ToResponse UpdatePerson Source # 
Instance details

Defined in Network.CiscoSpark.Types

Room related types

data Room Source #

Room is communication space in Cisco Spark and called "Space" on UI. Historically it was called Room on UI too but UI has been changed to "Space" in order to avoid confusion with the concept "Room" associated to hardware facility of video conferencing on Spark. The name of Room is kept unchanged for backward compatibility.

Room is decoded from response JSON of Get Room Details REST call. It is also element type of response of List Rooms call.

Constructors

Room 

Fields

Instances
Eq Room Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

(==) :: Room -> Room -> Bool #

(/=) :: Room -> Room -> Bool #

Show Room Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

showsPrec :: Int -> Room -> ShowS #

show :: Room -> String #

showList :: [Room] -> ShowS #

FromJSON Room Source #

Room derives ToJSON and FromJSON via deriveJSON template haskell function.

Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser Room

parseJSONList :: Value -> Parser [Room]

ToJSON Room Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: Room -> Value

toEncoding :: Room -> Encoding

toJSONList :: [Room] -> Value

toEncodingList :: [Room] -> Encoding

SparkListItem Room Source #

RoomList wraps Room

Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type ToList Room :: * Source #

Methods

unwrap :: ToList Room -> [Room] Source #

type ToList Room Source # 
Instance details

Defined in Network.CiscoSpark.Types

newtype RoomId Source #

Identifying Room.

Constructors

RoomId Text 
Instances
Eq RoomId Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

(==) :: RoomId -> RoomId -> Bool #

(/=) :: RoomId -> RoomId -> Bool #

Show RoomId Source # 
Instance details

Defined in Network.CiscoSpark.Types

Generic RoomId Source # 
Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type Rep RoomId :: * -> * #

Methods

from :: RoomId -> Rep RoomId x #

to :: Rep RoomId x -> RoomId #

FromJSON RoomId Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser RoomId

parseJSONList :: Value -> Parser [RoomId]

ToJSON RoomId Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: RoomId -> Value

toEncoding :: RoomId -> Encoding

toJSONList :: [RoomId] -> Value

toEncodingList :: [RoomId] -> Encoding

SparkDetail RoomId Source #

User can get detail of a room.

Instance details

Defined in Network.CiscoSpark.Types

Methods

toIdStr :: RoomId -> Text Source #

SparkResponse RoomId Source #

Get detail for a room API uses "RoomId' and responses Room.

Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type ToResponse RoomId :: * Source #

SparkApiPath RoomId Source #

Get detail for a room API uses RoomId and path "rooms".

Instance details

Defined in Network.CiscoSpark.Types

type Rep RoomId Source # 
Instance details

Defined in Network.CiscoSpark.Types

type Rep RoomId = D1 (MetaData "RoomId" "Network.CiscoSpark.Types" "cisco-spark-api-0.1.0.3-inplace" True) (C1 (MetaCons "RoomId" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text)))
type ToResponse RoomId Source # 
Instance details

Defined in Network.CiscoSpark.Types

newtype RoomTitle Source #

Title text of Room.

Constructors

RoomTitle Text 
Instances
Eq RoomTitle Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show RoomTitle Source # 
Instance details

Defined in Network.CiscoSpark.Types

Generic RoomTitle Source # 
Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type Rep RoomTitle :: * -> * #

FromJSON RoomTitle Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser RoomTitle

parseJSONList :: Value -> Parser [RoomTitle]

ToJSON RoomTitle Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: RoomTitle -> Value

toEncoding :: RoomTitle -> Encoding

toJSONList :: [RoomTitle] -> Value

toEncodingList :: [RoomTitle] -> Encoding

type Rep RoomTitle Source # 
Instance details

Defined in Network.CiscoSpark.Types

type Rep RoomTitle = D1 (MetaData "RoomTitle" "Network.CiscoSpark.Types" "cisco-spark-api-0.1.0.3-inplace" True) (C1 (MetaCons "RoomTitle" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text)))

data RoomType Source #

RoomType indicates if the Room is for 1:1 user or group of users.

Constructors

RoomTypeDirect

The Room is for 1:1. Decoded from "direct".

RoomTypeGroup

The Room is for group. Decoded from "group".

Instances
Eq RoomType Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show RoomType Source # 
Instance details

Defined in Network.CiscoSpark.Types

FromJSON RoomType Source #

RoomType derives ToJSON and FromJSON via deriveJSON template haskell function.

Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser RoomType

parseJSONList :: Value -> Parser [RoomType]

ToJSON RoomType Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: RoomType -> Value

toEncoding :: RoomType -> Encoding

toJSONList :: [RoomType] -> Value

toEncodingList :: [RoomType] -> Encoding

newtype SipAddr Source #

SIP address.

Constructors

SipAddr Text 
Instances
Eq SipAddr Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

(==) :: SipAddr -> SipAddr -> Bool #

(/=) :: SipAddr -> SipAddr -> Bool #

Show SipAddr Source # 
Instance details

Defined in Network.CiscoSpark.Types

Generic SipAddr Source # 
Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type Rep SipAddr :: * -> * #

Methods

from :: SipAddr -> Rep SipAddr x #

to :: Rep SipAddr x -> SipAddr #

FromJSON SipAddr Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser SipAddr

parseJSONList :: Value -> Parser [SipAddr]

ToJSON SipAddr Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: SipAddr -> Value

toEncoding :: SipAddr -> Encoding

toJSONList :: [SipAddr] -> Value

toEncodingList :: [SipAddr] -> Encoding

type Rep SipAddr Source # 
Instance details

Defined in Network.CiscoSpark.Types

type Rep SipAddr = D1 (MetaData "SipAddr" "Network.CiscoSpark.Types" "cisco-spark-api-0.1.0.3-inplace" True) (C1 (MetaCons "SipAddr" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text)))

newtype RoomList Source #

RoomList is decoded from response JSON of List Rooms REST call. It is list of Room.

Constructors

RoomList 

Fields

Instances
Eq RoomList Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show RoomList Source # 
Instance details

Defined in Network.CiscoSpark.Types

FromJSON RoomList Source #

RoomList derives ToJSON and FromJSON via deriveJSON template haskell function.

Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser RoomList

parseJSONList :: Value -> Parser [RoomList]

ToJSON RoomList Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: RoomList -> Value

toEncoding :: RoomList -> Encoding

toJSONList :: [RoomList] -> Value

toEncodingList :: [RoomList] -> Encoding

data RoomFilter Source #

Optional query strings for room list API

Constructors

RoomFilter 

Fields

Instances
Eq RoomFilter Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show RoomFilter Source # 
Instance details

Defined in Network.CiscoSpark.Types

Generic RoomFilter Source # 
Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type Rep RoomFilter :: * -> * #

Default RoomFilter Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

def :: RoomFilter

SparkFilter RoomFilter Source #

User can list rooms with filter parameter.

Instance details

Defined in Network.CiscoSpark.Types

SparkResponse RoomFilter Source #

List rooms API uses RoomFilter and responses Room.

Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type ToResponse RoomFilter :: * Source #

SparkApiPath RoomFilter Source #

List rooms API uses RoomFilter and path "rooms".

Instance details

Defined in Network.CiscoSpark.Types

type Rep RoomFilter Source # 
Instance details

Defined in Network.CiscoSpark.Types

type Rep RoomFilter = D1 (MetaData "RoomFilter" "Network.CiscoSpark.Types" "cisco-spark-api-0.1.0.3-inplace" False) (C1 (MetaCons "RoomFilter" PrefixI True) (S1 (MetaSel (Just "roomFilterTeamId") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe TeamId)) :*: (S1 (MetaSel (Just "roomFilterRoomType") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe RoomType)) :*: S1 (MetaSel (Just "roomFilterSortBy") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe RoomFilterSortBy)))))
type ToResponse RoomFilter Source # 
Instance details

Defined in Network.CiscoSpark.Types

data CreateRoom Source #

CreateRoom is encoded to request body JSON of Create a Room REST call.

Constructors

CreateRoom 

Fields

Instances
Eq CreateRoom Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show CreateRoom Source # 
Instance details

Defined in Network.CiscoSpark.Types

FromJSON CreateRoom Source #

CreateRoom derives ToJSON and FromJSON via deriveJSON template haskell function.

Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser CreateRoom

parseJSONList :: Value -> Parser [CreateRoom]

ToJSON CreateRoom Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: CreateRoom -> Value

toEncoding :: CreateRoom -> Encoding

toJSONList :: [CreateRoom] -> Value

toEncodingList :: [CreateRoom] -> Encoding

SparkCreate CreateRoom Source #

User can create a room.

Instance details

Defined in Network.CiscoSpark.Types

SparkResponse CreateRoom Source #

Create room API uses "CreateRoom' and responses Room.

Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type ToResponse CreateRoom :: * Source #

SparkApiPath CreateRoom Source #

Create room API uses CreateRoom and path "rooms".

Instance details

Defined in Network.CiscoSpark.Types

type ToResponse CreateRoom Source # 
Instance details

Defined in Network.CiscoSpark.Types

newtype UpdateRoom Source #

UpdateRoom is encoded to request body JSON of Update a Room REST call.

Constructors

UpdateRoom 
Instances
Eq UpdateRoom Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show UpdateRoom Source # 
Instance details

Defined in Network.CiscoSpark.Types

FromJSON UpdateRoom Source #

UpdateRoom derives ToJSON and FromJSON via deriveJSON template haskell function.

Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser UpdateRoom

parseJSONList :: Value -> Parser [UpdateRoom]

ToJSON UpdateRoom Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: UpdateRoom -> Value

toEncoding :: UpdateRoom -> Encoding

toJSONList :: [UpdateRoom] -> Value

toEncodingList :: [UpdateRoom] -> Encoding

SparkUpdate UpdateRoom Source #

User can update a room.

Instance details

Defined in Network.CiscoSpark.Types

SparkResponse UpdateRoom Source #

Update room API uses "UpdateRoom' and responses Room.

Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type ToResponse UpdateRoom :: * Source #

SparkApiPath UpdateRoom Source #

Update room API uses UpdateRoom and path "rooms".

Instance details

Defined in Network.CiscoSpark.Types

type ToResponse UpdateRoom Source # 
Instance details

Defined in Network.CiscoSpark.Types

Membership related types

data Membership Source #

Membership is association between Room and Person. It can be N:N relation. A Person can belong to multiple Room. Membership is decoded from response JSON of Get Membership Details REST call. It is also element type of response of List Memberships call.

Constructors

Membership 

Fields

Instances
Eq Membership Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show Membership Source # 
Instance details

Defined in Network.CiscoSpark.Types

FromJSON Membership Source #

Membership derives ToJSON and FromJSON via deriveJSON template haskell function.

Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser Membership

parseJSONList :: Value -> Parser [Membership]

ToJSON Membership Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: Membership -> Value

toEncoding :: Membership -> Encoding

toJSONList :: [Membership] -> Value

toEncodingList :: [Membership] -> Encoding

SparkListItem Membership Source #

MembershipList wraps Membership

Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type ToList Membership :: * Source #

type ToList Membership Source # 
Instance details

Defined in Network.CiscoSpark.Types

newtype MembershipId Source #

Identifying Membership.

Constructors

MembershipId Text 
Instances
Eq MembershipId Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show MembershipId Source # 
Instance details

Defined in Network.CiscoSpark.Types

Generic MembershipId Source # 
Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type Rep MembershipId :: * -> * #

FromJSON MembershipId Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser MembershipId

parseJSONList :: Value -> Parser [MembershipId]

ToJSON MembershipId Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: MembershipId -> Value

toEncoding :: MembershipId -> Encoding

toJSONList :: [MembershipId] -> Value

toEncodingList :: [MembershipId] -> Encoding

SparkDetail MembershipId Source #

User can get detail of a membership.

Instance details

Defined in Network.CiscoSpark.Types

SparkResponse MembershipId Source #

Get detail for a membership API uses "MembershipId' and responses Membership.

Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type ToResponse MembershipId :: * Source #

SparkApiPath MembershipId Source #

Get detail for a membership API uses MembershipId and path "memberships".

Instance details

Defined in Network.CiscoSpark.Types

type Rep MembershipId Source # 
Instance details

Defined in Network.CiscoSpark.Types

type Rep MembershipId = D1 (MetaData "MembershipId" "Network.CiscoSpark.Types" "cisco-spark-api-0.1.0.3-inplace" True) (C1 (MetaCons "MembershipId" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text)))
type ToResponse MembershipId Source # 
Instance details

Defined in Network.CiscoSpark.Types

newtype MembershipList Source #

MembershipList is decoded from response JSON of List Memberships REST call. It is list of Membership.

Instances
Eq MembershipList Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show MembershipList Source # 
Instance details

Defined in Network.CiscoSpark.Types

FromJSON MembershipList Source #

MembershipList derives ToJSON and FromJSON via deriveJSON template haskell function.

Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser MembershipList

parseJSONList :: Value -> Parser [MembershipList]

ToJSON MembershipList Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: MembershipList -> Value

toEncoding :: MembershipList -> Encoding

toJSONList :: [MembershipList] -> Value

toEncodingList :: [MembershipList] -> Encoding

data MembershipFilter Source #

Optional query strings for room membership list API

Constructors

MembershipFilter 

Fields

Instances
Eq MembershipFilter Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show MembershipFilter Source # 
Instance details

Defined in Network.CiscoSpark.Types

Generic MembershipFilter Source # 
Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type Rep MembershipFilter :: * -> * #

Default MembershipFilter Source # 
Instance details

Defined in Network.CiscoSpark.Types

SparkFilter MembershipFilter Source #

User can list memberships with filter parameter.

Instance details

Defined in Network.CiscoSpark.Types

SparkResponse MembershipFilter Source #

List memberships API uses MembershipFilter and responses Membership.

Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type ToResponse MembershipFilter :: * Source #

SparkApiPath MembershipFilter Source #

List memberships API uses MembershipFilter and path "memberships".

Instance details

Defined in Network.CiscoSpark.Types

type Rep MembershipFilter Source # 
Instance details

Defined in Network.CiscoSpark.Types

type Rep MembershipFilter = D1 (MetaData "MembershipFilter" "Network.CiscoSpark.Types" "cisco-spark-api-0.1.0.3-inplace" False) (C1 (MetaCons "MembershipFilter" PrefixI True) (S1 (MetaSel (Just "membershipFilterRoomId") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe RoomId)) :*: (S1 (MetaSel (Just "membershipFilterPersonId") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe PersonId)) :*: S1 (MetaSel (Just "membershipFilterPersonEmail") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe Email)))))
type ToResponse MembershipFilter Source # 
Instance details

Defined in Network.CiscoSpark.Types

data CreateMembership Source #

CreateMembership is encoded to request body JSON of Create a Membership REST call.

Constructors

CreateMembership 

Fields

Instances
Eq CreateMembership Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show CreateMembership Source # 
Instance details

Defined in Network.CiscoSpark.Types

FromJSON CreateMembership Source #

CreateMembership derives ToJSON and FromJSON via deriveJSON template haskell function.

Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser CreateMembership

parseJSONList :: Value -> Parser [CreateMembership]

ToJSON CreateMembership Source # 
Instance details

Defined in Network.CiscoSpark.Types

SparkCreate CreateMembership Source #

User can create a membership.

Instance details

Defined in Network.CiscoSpark.Types

SparkResponse CreateMembership Source #

Create membership API uses "CreateMembership' and responses Membership.

Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type ToResponse CreateMembership :: * Source #

SparkApiPath CreateMembership Source #

Create membership API uses CreateMembership and path "memberships".

Instance details

Defined in Network.CiscoSpark.Types

type ToResponse CreateMembership Source # 
Instance details

Defined in Network.CiscoSpark.Types

newtype UpdateMembership Source #

UpdateMembership is encoded to request body JSON of Update a Membership REST call.

Instances
Eq UpdateMembership Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show UpdateMembership Source # 
Instance details

Defined in Network.CiscoSpark.Types

FromJSON UpdateMembership Source #

UpdateMembership derives ToJSON and FromJSON via deriveJSON template haskell function.

Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser UpdateMembership

parseJSONList :: Value -> Parser [UpdateMembership]

ToJSON UpdateMembership Source # 
Instance details

Defined in Network.CiscoSpark.Types

SparkUpdate UpdateMembership Source #

User can update a membership.

Instance details

Defined in Network.CiscoSpark.Types

SparkResponse UpdateMembership Source #

Update membership API uses "UpdateMembership' and responses Membership.

Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type ToResponse UpdateMembership :: * Source #

SparkApiPath UpdateMembership Source #

Update membership API uses UpdateMembership and path "memberships".

Instance details

Defined in Network.CiscoSpark.Types

type ToResponse UpdateMembership Source # 
Instance details

Defined in Network.CiscoSpark.Types

Message related types

data Message Source #

Message is a message posted to a Room by some Person. Room is decoded from response JSON of Get Message Details REST call. It is also element type of response of List Messages call.

Constructors

Message 

Fields

Instances
Eq Message Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

(==) :: Message -> Message -> Bool #

(/=) :: Message -> Message -> Bool #

Show Message Source # 
Instance details

Defined in Network.CiscoSpark.Types

FromJSON Message Source #

Message derives ToJSON and FromJSON via deriveJSON template haskell function.

Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser Message

parseJSONList :: Value -> Parser [Message]

ToJSON Message Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: Message -> Value

toEncoding :: Message -> Encoding

toJSONList :: [Message] -> Value

toEncodingList :: [Message] -> Encoding

SparkListItem Message Source #

MessageList wraps Message

Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type ToList Message :: * Source #

type ToList Message Source # 
Instance details

Defined in Network.CiscoSpark.Types

newtype MessageId Source #

Identifying Message.

Constructors

MessageId Text 
Instances
Eq MessageId Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show MessageId Source # 
Instance details

Defined in Network.CiscoSpark.Types

Generic MessageId Source # 
Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type Rep MessageId :: * -> * #

FromJSON MessageId Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser MessageId

parseJSONList :: Value -> Parser [MessageId]

ToJSON MessageId Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: MessageId -> Value

toEncoding :: MessageId -> Encoding

toJSONList :: [MessageId] -> Value

toEncodingList :: [MessageId] -> Encoding

SparkDetail MessageId Source #

User can get detail of a message.

Instance details

Defined in Network.CiscoSpark.Types

SparkResponse MessageId Source #

Get detail for a message API uses "MessageId' and responses Message.

Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type ToResponse MessageId :: * Source #

SparkApiPath MessageId Source #

Get detail for message API uses MessageId and path "messages".

Instance details

Defined in Network.CiscoSpark.Types

type Rep MessageId Source # 
Instance details

Defined in Network.CiscoSpark.Types

type Rep MessageId = D1 (MetaData "MessageId" "Network.CiscoSpark.Types" "cisco-spark-api-0.1.0.3-inplace" True) (C1 (MetaCons "MessageId" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text)))
type ToResponse MessageId Source # 
Instance details

Defined in Network.CiscoSpark.Types

newtype MessageText Source #

Body of message in plain text.

Constructors

MessageText Text 
Instances
Eq MessageText Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show MessageText Source # 
Instance details

Defined in Network.CiscoSpark.Types

Generic MessageText Source # 
Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type Rep MessageText :: * -> * #

FromJSON MessageText Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser MessageText

parseJSONList :: Value -> Parser [MessageText]

ToJSON MessageText Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: MessageText -> Value

toEncoding :: MessageText -> Encoding

toJSONList :: [MessageText] -> Value

toEncodingList :: [MessageText] -> Encoding

type Rep MessageText Source # 
Instance details

Defined in Network.CiscoSpark.Types

type Rep MessageText = D1 (MetaData "MessageText" "Network.CiscoSpark.Types" "cisco-spark-api-0.1.0.3-inplace" True) (C1 (MetaCons "MessageText" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text)))

newtype MessageHtml Source #

Body of message in html.

Constructors

MessageHtml Text 
Instances
Eq MessageHtml Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show MessageHtml Source # 
Instance details

Defined in Network.CiscoSpark.Types

Generic MessageHtml Source # 
Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type Rep MessageHtml :: * -> * #

FromJSON MessageHtml Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser MessageHtml

parseJSONList :: Value -> Parser [MessageHtml]

ToJSON MessageHtml Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: MessageHtml -> Value

toEncoding :: MessageHtml -> Encoding

toJSONList :: [MessageHtml] -> Value

toEncodingList :: [MessageHtml] -> Encoding

type Rep MessageHtml Source # 
Instance details

Defined in Network.CiscoSpark.Types

type Rep MessageHtml = D1 (MetaData "MessageHtml" "Network.CiscoSpark.Types" "cisco-spark-api-0.1.0.3-inplace" True) (C1 (MetaCons "MessageHtml" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text)))

newtype MessageMarkdown Source #

Body of message in markdown.

Constructors

MessageMarkdown Text 
Instances
Eq MessageMarkdown Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show MessageMarkdown Source # 
Instance details

Defined in Network.CiscoSpark.Types

Generic MessageMarkdown Source # 
Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type Rep MessageMarkdown :: * -> * #

FromJSON MessageMarkdown Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser MessageMarkdown

parseJSONList :: Value -> Parser [MessageMarkdown]

ToJSON MessageMarkdown Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: MessageMarkdown -> Value

toEncoding :: MessageMarkdown -> Encoding

toJSONList :: [MessageMarkdown] -> Value

toEncodingList :: [MessageMarkdown] -> Encoding

type Rep MessageMarkdown Source # 
Instance details

Defined in Network.CiscoSpark.Types

type Rep MessageMarkdown = D1 (MetaData "MessageMarkdown" "Network.CiscoSpark.Types" "cisco-spark-api-0.1.0.3-inplace" True) (C1 (MetaCons "MessageMarkdown" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text)))

newtype FileUrl Source #

URL pointing attached file of message.

Constructors

FileUrl Text 
Instances
Eq FileUrl Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

(==) :: FileUrl -> FileUrl -> Bool #

(/=) :: FileUrl -> FileUrl -> Bool #

Show FileUrl Source # 
Instance details

Defined in Network.CiscoSpark.Types

Generic FileUrl Source # 
Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type Rep FileUrl :: * -> * #

Methods

from :: FileUrl -> Rep FileUrl x #

to :: Rep FileUrl x -> FileUrl #

FromJSON FileUrl Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser FileUrl

parseJSONList :: Value -> Parser [FileUrl]

ToJSON FileUrl Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: FileUrl -> Value

toEncoding :: FileUrl -> Encoding

toJSONList :: [FileUrl] -> Value

toEncodingList :: [FileUrl] -> Encoding

type Rep FileUrl Source # 
Instance details

Defined in Network.CiscoSpark.Types

type Rep FileUrl = D1 (MetaData "FileUrl" "Network.CiscoSpark.Types" "cisco-spark-api-0.1.0.3-inplace" True) (C1 (MetaCons "FileUrl" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text)))

newtype MessageList Source #

MessageList is decoded from response JSON of List Messages REST call. It is list of Message.

Constructors

MessageList 
Instances
Eq MessageList Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show MessageList Source # 
Instance details

Defined in Network.CiscoSpark.Types

FromJSON MessageList Source #

MessageList derives ToJSON and FromJSON via deriveJSON template haskell function.

Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser MessageList

parseJSONList :: Value -> Parser [MessageList]

ToJSON MessageList Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: MessageList -> Value

toEncoding :: MessageList -> Encoding

toJSONList :: [MessageList] -> Value

toEncodingList :: [MessageList] -> Encoding

data MessageFilter Source #

Optional query strings for message list API

Constructors

MessageFilter 

Fields

Instances
Eq MessageFilter Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show MessageFilter Source # 
Instance details

Defined in Network.CiscoSpark.Types

SparkFilter MessageFilter Source #

User can list messages with filter parameter.

Instance details

Defined in Network.CiscoSpark.Types

SparkResponse MessageFilter Source #

List messages API uses MessageFilter and responses Message.

Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type ToResponse MessageFilter :: * Source #

SparkApiPath MessageFilter Source #

List messages API uses MessageFilter and path "messages".

Instance details

Defined in Network.CiscoSpark.Types

type ToResponse MessageFilter Source # 
Instance details

Defined in Network.CiscoSpark.Types

data MentionedPeople Source #

Sum type for mentionedPeople query string. It can be "me" or PersonId.

data CreateMessage Source #

CreateMessage is encoded to request body JSON of Create a Message REST call.

Constructors

CreateMessage 

Fields

Instances
Eq CreateMessage Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show CreateMessage Source # 
Instance details

Defined in Network.CiscoSpark.Types

FromJSON CreateMessage Source #

CreateMessage derives ToJSON and FromJSON via deriveJSON template haskell function.

Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser CreateMessage

parseJSONList :: Value -> Parser [CreateMessage]

ToJSON CreateMessage Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: CreateMessage -> Value

toEncoding :: CreateMessage -> Encoding

toJSONList :: [CreateMessage] -> Value

toEncodingList :: [CreateMessage] -> Encoding

SparkCreate CreateMessage Source #

User can create a message.

Instance details

Defined in Network.CiscoSpark.Types

SparkResponse CreateMessage Source #

Create message API uses "CreateMessage' and responses Message.

Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type ToResponse CreateMessage :: * Source #

SparkApiPath CreateMessage Source #

Create message API uses CreateMessage and path "messages".

Instance details

Defined in Network.CiscoSpark.Types

type ToResponse CreateMessage Source # 
Instance details

Defined in Network.CiscoSpark.Types

Team related types

newtype TeamName Source #

Name of Team

Constructors

TeamName Text 
Instances
Eq TeamName Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show TeamName Source # 
Instance details

Defined in Network.CiscoSpark.Types

Generic TeamName Source # 
Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type Rep TeamName :: * -> * #

Methods

from :: TeamName -> Rep TeamName x #

to :: Rep TeamName x -> TeamName #

FromJSON TeamName Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser TeamName

parseJSONList :: Value -> Parser [TeamName]

ToJSON TeamName Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: TeamName -> Value

toEncoding :: TeamName -> Encoding

toJSONList :: [TeamName] -> Value

toEncodingList :: [TeamName] -> Encoding

type Rep TeamName Source # 
Instance details

Defined in Network.CiscoSpark.Types

type Rep TeamName = D1 (MetaData "TeamName" "Network.CiscoSpark.Types" "cisco-spark-api-0.1.0.3-inplace" True) (C1 (MetaCons "TeamName" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text)))

newtype TeamId Source #

Identifying Team.

Constructors

TeamId Text 
Instances
Eq TeamId Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

(==) :: TeamId -> TeamId -> Bool #

(/=) :: TeamId -> TeamId -> Bool #

Show TeamId Source # 
Instance details

Defined in Network.CiscoSpark.Types

Generic TeamId Source # 
Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type Rep TeamId :: * -> * #

Methods

from :: TeamId -> Rep TeamId x #

to :: Rep TeamId x -> TeamId #

FromJSON TeamId Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser TeamId

parseJSONList :: Value -> Parser [TeamId]

ToJSON TeamId Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: TeamId -> Value

toEncoding :: TeamId -> Encoding

toJSONList :: [TeamId] -> Value

toEncodingList :: [TeamId] -> Encoding

SparkDetail TeamId Source #

User can get detail of a team.

Instance details

Defined in Network.CiscoSpark.Types

Methods

toIdStr :: TeamId -> Text Source #

SparkResponse TeamId Source #

Get detail for a team API uses "TeamId' and responses Team.

Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type ToResponse TeamId :: * Source #

SparkApiPath TeamId Source #

Get detail for a team API uses TeamId and path "teams".

Instance details

Defined in Network.CiscoSpark.Types

type Rep TeamId Source # 
Instance details

Defined in Network.CiscoSpark.Types

type Rep TeamId = D1 (MetaData "TeamId" "Network.CiscoSpark.Types" "cisco-spark-api-0.1.0.3-inplace" True) (C1 (MetaCons "TeamId" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text)))
type ToResponse TeamId Source # 
Instance details

Defined in Network.CiscoSpark.Types

data Team Source #

Team is group of Person and group of Room. A Person can belong to multiple Team but a Room can belong to at most one Team. Team is decoded from response JSON of Get Team Details REST call. It is also element type of response of List Teams call.

Constructors

Team 

Fields

Instances
Eq Team Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

(==) :: Team -> Team -> Bool #

(/=) :: Team -> Team -> Bool #

Show Team Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

showsPrec :: Int -> Team -> ShowS #

show :: Team -> String #

showList :: [Team] -> ShowS #

FromJSON Team Source #

Team derives ToJSON and FromJSON via deriveJSON template haskell function.

Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser Team

parseJSONList :: Value -> Parser [Team]

ToJSON Team Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: Team -> Value

toEncoding :: Team -> Encoding

toJSONList :: [Team] -> Value

toEncodingList :: [Team] -> Encoding

SparkListItem Team Source #

TeamList wraps Team

Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type ToList Team :: * Source #

Methods

unwrap :: ToList Team -> [Team] Source #

type ToList Team Source # 
Instance details

Defined in Network.CiscoSpark.Types

newtype TeamList Source #

TeamList is decoded from response JSON of List Teams REST call. It is list of Team.

Constructors

TeamList 

Fields

Instances
Eq TeamList Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show TeamList Source # 
Instance details

Defined in Network.CiscoSpark.Types

FromJSON TeamList Source #

TeamList derives ToJSON and FromJSON via deriveJSON template haskell function.

Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser TeamList

parseJSONList :: Value -> Parser [TeamList]

ToJSON TeamList Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: TeamList -> Value

toEncoding :: TeamList -> Encoding

toJSONList :: [TeamList] -> Value

toEncodingList :: [TeamList] -> Encoding

newtype CreateTeam Source #

CreateTeam is encoded to request body JSON of Create a Team REST call.

Constructors

CreateTeam 
Instances
Eq CreateTeam Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show CreateTeam Source # 
Instance details

Defined in Network.CiscoSpark.Types

FromJSON CreateTeam Source #

CreateTeam derives ToJSON and FromJSON via deriveJSON template haskell function.

Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser CreateTeam

parseJSONList :: Value -> Parser [CreateTeam]

ToJSON CreateTeam Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: CreateTeam -> Value

toEncoding :: CreateTeam -> Encoding

toJSONList :: [CreateTeam] -> Value

toEncodingList :: [CreateTeam] -> Encoding

SparkCreate CreateTeam Source #

User can create a team.

Instance details

Defined in Network.CiscoSpark.Types

SparkResponse CreateTeam Source #

Create team API uses "CreateTeam' and responses Team.

Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type ToResponse CreateTeam :: * Source #

SparkApiPath CreateTeam Source #

Create team API uses CreateTeam and path "teams".

Instance details

Defined in Network.CiscoSpark.Types

type ToResponse CreateTeam Source # 
Instance details

Defined in Network.CiscoSpark.Types

newtype UpdateTeam Source #

UpdateTeam is encoded to request body JSON of Update a Team REST call.

Constructors

UpdateTeam 
Instances
Eq UpdateTeam Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show UpdateTeam Source # 
Instance details

Defined in Network.CiscoSpark.Types

FromJSON UpdateTeam Source #

UpdateTeam derives ToJSON and FromJSON via deriveJSON template haskell function.

Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser UpdateTeam

parseJSONList :: Value -> Parser [UpdateTeam]

ToJSON UpdateTeam Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: UpdateTeam -> Value

toEncoding :: UpdateTeam -> Encoding

toJSONList :: [UpdateTeam] -> Value

toEncodingList :: [UpdateTeam] -> Encoding

SparkUpdate UpdateTeam Source #

User can update a team.

Instance details

Defined in Network.CiscoSpark.Types

SparkResponse UpdateTeam Source #

Update team API uses "UpdateTeam' and responses Team.

Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type ToResponse UpdateTeam :: * Source #

SparkApiPath UpdateTeam Source #

Update team API uses UpdateTeam and path "teams".

Instance details

Defined in Network.CiscoSpark.Types

type ToResponse UpdateTeam Source # 
Instance details

Defined in Network.CiscoSpark.Types

Team Membership related types

data TeamMembership Source #

TeamMembership is association between Team and Person. It can be N:N relation. A Person can belong to multiple Team. TeamMembership is decoded from response JSON of Get Team Membership Details REST call. It is also element type of response of List Team Memberships call.

Constructors

TeamMembership 

Fields

Instances
Eq TeamMembership Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show TeamMembership Source # 
Instance details

Defined in Network.CiscoSpark.Types

FromJSON TeamMembership Source #

TeamMembership derives ToJSON and FromJSON via deriveJSON template haskell function.

Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser TeamMembership

parseJSONList :: Value -> Parser [TeamMembership]

ToJSON TeamMembership Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: TeamMembership -> Value

toEncoding :: TeamMembership -> Encoding

toJSONList :: [TeamMembership] -> Value

toEncodingList :: [TeamMembership] -> Encoding

SparkListItem TeamMembership Source #

TeamMembershipList wraps TeamMembership

Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type ToList TeamMembership :: * Source #

type ToList TeamMembership Source # 
Instance details

Defined in Network.CiscoSpark.Types

newtype TeamMembershipId Source #

Identifying TeamMembership.

Constructors

TeamMembershipId Text 
Instances
Eq TeamMembershipId Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show TeamMembershipId Source # 
Instance details

Defined in Network.CiscoSpark.Types

Generic TeamMembershipId Source # 
Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type Rep TeamMembershipId :: * -> * #

FromJSON TeamMembershipId Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser TeamMembershipId

parseJSONList :: Value -> Parser [TeamMembershipId]

ToJSON TeamMembershipId Source # 
Instance details

Defined in Network.CiscoSpark.Types

SparkDetail TeamMembershipId Source #

User can get detail of a team membership.

Instance details

Defined in Network.CiscoSpark.Types

SparkResponse TeamMembershipId Source #

Get detail for a team membership API uses "TeamMembershipId' and responses TeamMembership.

Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type ToResponse TeamMembershipId :: * Source #

SparkApiPath TeamMembershipId Source #

Get detail for a team membership API uses TeamMembershipId and path "team/memberships".

Instance details

Defined in Network.CiscoSpark.Types

type Rep TeamMembershipId Source # 
Instance details

Defined in Network.CiscoSpark.Types

type Rep TeamMembershipId = D1 (MetaData "TeamMembershipId" "Network.CiscoSpark.Types" "cisco-spark-api-0.1.0.3-inplace" True) (C1 (MetaCons "TeamMembershipId" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text)))
type ToResponse TeamMembershipId Source # 
Instance details

Defined in Network.CiscoSpark.Types

newtype TeamMembershipList Source #

TeamMembershipList is decoded from response JSON of List Team Memberships REST call. It is list of TeamMembership.

Instances
Eq TeamMembershipList Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show TeamMembershipList Source # 
Instance details

Defined in Network.CiscoSpark.Types

FromJSON TeamMembershipList Source #

TeamMembershipList derives ToJSON and FromJSON via deriveJSON template haskell function.

Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser TeamMembershipList

parseJSONList :: Value -> Parser [TeamMembershipList]

ToJSON TeamMembershipList Source # 
Instance details

Defined in Network.CiscoSpark.Types

newtype TeamMembershipFilter Source #

Optional query strings for team membership list API

Constructors

TeamMembershipFilter 

Fields

data CreateTeamMembership Source #

CreateTeamMembership is encoded to request body JSON of Create a Team Membership REST call.

Constructors

CreateTeamMembership 

Fields

Instances
Eq CreateTeamMembership Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show CreateTeamMembership Source # 
Instance details

Defined in Network.CiscoSpark.Types

FromJSON CreateTeamMembership Source #

CreateTeamMembership derives ToJSON and FromJSON via deriveJSON template haskell function.

Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser CreateTeamMembership

parseJSONList :: Value -> Parser [CreateTeamMembership]

ToJSON CreateTeamMembership Source # 
Instance details

Defined in Network.CiscoSpark.Types

SparkCreate CreateTeamMembership Source #

User can create a teamMembership.

Instance details

Defined in Network.CiscoSpark.Types

SparkResponse CreateTeamMembership Source #

Create teamMembership API uses "CreateTeamMembership' and responses TeamMembership.

Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type ToResponse CreateTeamMembership :: * Source #

SparkApiPath CreateTeamMembership Source #

Create teamMembership API uses CreateTeamMembership and path "team/memberships".

Instance details

Defined in Network.CiscoSpark.Types

type ToResponse CreateTeamMembership Source # 
Instance details

Defined in Network.CiscoSpark.Types

newtype UpdateTeamMembership Source #

UpdateTeamMembership is encoded to request body JSON of Update a Team Membership REST call.

Instances
Eq UpdateTeamMembership Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show UpdateTeamMembership Source # 
Instance details

Defined in Network.CiscoSpark.Types

FromJSON UpdateTeamMembership Source #

UpdateTeamMembership derives ToJSON and FromJSON via deriveJSON template haskell function.

Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser UpdateTeamMembership

parseJSONList :: Value -> Parser [UpdateTeamMembership]

ToJSON UpdateTeamMembership Source # 
Instance details

Defined in Network.CiscoSpark.Types

SparkUpdate UpdateTeamMembership Source #

User can update a teamMembership.

Instance details

Defined in Network.CiscoSpark.Types

SparkResponse UpdateTeamMembership Source #

Update teamMembership API uses "UpdateTeamMembership' and responses TeamMembership.

Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type ToResponse UpdateTeamMembership :: * Source #

SparkApiPath UpdateTeamMembership Source #

Update teamMembership API uses UpdateTeamMembership and path "team/memberships".

Instance details

Defined in Network.CiscoSpark.Types

type ToResponse UpdateTeamMembership Source # 
Instance details

Defined in Network.CiscoSpark.Types

Organization related types

data Organization Source #

Organization is an administrative group of Cisco Spark users. Each Person belongs to one Organization. Organization is decoded from response JSON of Get Organization Details REST call. It is also element type of response of List Organizations call.

Constructors

Organization 

Fields

Instances
Eq Organization Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show Organization Source # 
Instance details

Defined in Network.CiscoSpark.Types

FromJSON Organization Source #

Organization derives ToJSON and FromJSON via deriveJSON template haskell function.

Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser Organization

parseJSONList :: Value -> Parser [Organization]

ToJSON Organization Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: Organization -> Value

toEncoding :: Organization -> Encoding

toJSONList :: [Organization] -> Value

toEncodingList :: [Organization] -> Encoding

SparkListItem Organization Source #

OrganizationList wraps Organization

Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type ToList Organization :: * Source #

type ToList Organization Source # 
Instance details

Defined in Network.CiscoSpark.Types

newtype OrganizationId Source #

Organization identifier which user or team belongs to.

Constructors

OrganizationId Text 
Instances
Eq OrganizationId Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show OrganizationId Source # 
Instance details

Defined in Network.CiscoSpark.Types

Generic OrganizationId Source # 
Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type Rep OrganizationId :: * -> * #

FromJSON OrganizationId Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser OrganizationId

parseJSONList :: Value -> Parser [OrganizationId]

ToJSON OrganizationId Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: OrganizationId -> Value

toEncoding :: OrganizationId -> Encoding

toJSONList :: [OrganizationId] -> Value

toEncodingList :: [OrganizationId] -> Encoding

SparkDetail OrganizationId Source #

User can get detail of a organization.

Instance details

Defined in Network.CiscoSpark.Types

SparkResponse OrganizationId Source #

Get detail for a organization API uses "OrganizationId' and responses Organization.

Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type ToResponse OrganizationId :: * Source #

SparkApiPath OrganizationId Source #

Get detail for organization API uses OrganizationId and path "organizations".

Instance details

Defined in Network.CiscoSpark.Types

type Rep OrganizationId Source # 
Instance details

Defined in Network.CiscoSpark.Types

type Rep OrganizationId = D1 (MetaData "OrganizationId" "Network.CiscoSpark.Types" "cisco-spark-api-0.1.0.3-inplace" True) (C1 (MetaCons "OrganizationId" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text)))
type ToResponse OrganizationId Source # 
Instance details

Defined in Network.CiscoSpark.Types

newtype OrganizationDisplayName Source #

Display name of Organization

Instances
Eq OrganizationDisplayName Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show OrganizationDisplayName Source # 
Instance details

Defined in Network.CiscoSpark.Types

Generic OrganizationDisplayName Source # 
Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type Rep OrganizationDisplayName :: * -> * #

FromJSON OrganizationDisplayName Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser OrganizationDisplayName

parseJSONList :: Value -> Parser [OrganizationDisplayName]

ToJSON OrganizationDisplayName Source # 
Instance details

Defined in Network.CiscoSpark.Types

type Rep OrganizationDisplayName Source # 
Instance details

Defined in Network.CiscoSpark.Types

type Rep OrganizationDisplayName = D1 (MetaData "OrganizationDisplayName" "Network.CiscoSpark.Types" "cisco-spark-api-0.1.0.3-inplace" True) (C1 (MetaCons "OrganizationDisplayName" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text)))

newtype OrganizationList Source #

OrganizationList is decoded from response JSON of List Organizations REST call. It is list of Organization.

Instances
Eq OrganizationList Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show OrganizationList Source # 
Instance details

Defined in Network.CiscoSpark.Types

FromJSON OrganizationList Source #

OrganizationList derives ToJSON and FromJSON via deriveJSON template haskell function.

Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser OrganizationList

parseJSONList :: Value -> Parser [OrganizationList]

ToJSON OrganizationList Source # 
Instance details

Defined in Network.CiscoSpark.Types

License related types

data License Source #

License is allowance for features and services of Cisco Spark subscription. License is decoded from response JSON of Get License Details REST call. It is also element type of response of List Licenses call.

Constructors

License 

Fields

Instances
Eq License Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

(==) :: License -> License -> Bool #

(/=) :: License -> License -> Bool #

Show License Source # 
Instance details

Defined in Network.CiscoSpark.Types

FromJSON License Source #

License derives ToJSON and FromJSON via deriveJSON template haskell function.

Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser License

parseJSONList :: Value -> Parser [License]

ToJSON License Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: License -> Value

toEncoding :: License -> Encoding

toJSONList :: [License] -> Value

toEncodingList :: [License] -> Encoding

SparkListItem License Source #

LicenseList wraps License

Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type ToList License :: * Source #

type ToList License Source # 
Instance details

Defined in Network.CiscoSpark.Types

newtype LicenseId Source #

License identifier which can be enabled on user. See License too.

Constructors

LicenseId Text 
Instances
Eq LicenseId Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show LicenseId Source # 
Instance details

Defined in Network.CiscoSpark.Types

Generic LicenseId Source # 
Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type Rep LicenseId :: * -> * #

FromJSON LicenseId Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser LicenseId

parseJSONList :: Value -> Parser [LicenseId]

ToJSON LicenseId Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: LicenseId -> Value

toEncoding :: LicenseId -> Encoding

toJSONList :: [LicenseId] -> Value

toEncodingList :: [LicenseId] -> Encoding

SparkDetail LicenseId Source #

User can get detail of a license.

Instance details

Defined in Network.CiscoSpark.Types

SparkResponse LicenseId Source #

Get detail for a license API uses "LicenseId' and responses License.

Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type ToResponse LicenseId :: * Source #

SparkApiPath LicenseId Source #

Get detail for license API uses LicenseId and path "licenses".

Instance details

Defined in Network.CiscoSpark.Types

type Rep LicenseId Source # 
Instance details

Defined in Network.CiscoSpark.Types

type Rep LicenseId = D1 (MetaData "LicenseId" "Network.CiscoSpark.Types" "cisco-spark-api-0.1.0.3-inplace" True) (C1 (MetaCons "LicenseId" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text)))
type ToResponse LicenseId Source # 
Instance details

Defined in Network.CiscoSpark.Types

newtype LicenseName Source #

Display name of License

Constructors

LicenseName Text 
Instances
Eq LicenseName Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show LicenseName Source # 
Instance details

Defined in Network.CiscoSpark.Types

Generic LicenseName Source # 
Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type Rep LicenseName :: * -> * #

FromJSON LicenseName Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser LicenseName

parseJSONList :: Value -> Parser [LicenseName]

ToJSON LicenseName Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: LicenseName -> Value

toEncoding :: LicenseName -> Encoding

toJSONList :: [LicenseName] -> Value

toEncodingList :: [LicenseName] -> Encoding

type Rep LicenseName Source # 
Instance details

Defined in Network.CiscoSpark.Types

type Rep LicenseName = D1 (MetaData "LicenseName" "Network.CiscoSpark.Types" "cisco-spark-api-0.1.0.3-inplace" True) (C1 (MetaCons "LicenseName" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text)))

newtype LicenseUnit Source #

Counting number of granted or consumed License

Constructors

LicenseUnit Integer 
Instances
Eq LicenseUnit Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show LicenseUnit Source # 
Instance details

Defined in Network.CiscoSpark.Types

Generic LicenseUnit Source # 
Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type Rep LicenseUnit :: * -> * #

FromJSON LicenseUnit Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser LicenseUnit

parseJSONList :: Value -> Parser [LicenseUnit]

ToJSON LicenseUnit Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: LicenseUnit -> Value

toEncoding :: LicenseUnit -> Encoding

toJSONList :: [LicenseUnit] -> Value

toEncodingList :: [LicenseUnit] -> Encoding

type Rep LicenseUnit Source # 
Instance details

Defined in Network.CiscoSpark.Types

type Rep LicenseUnit = D1 (MetaData "LicenseUnit" "Network.CiscoSpark.Types" "cisco-spark-api-0.1.0.3-inplace" True) (C1 (MetaCons "LicenseUnit" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Integer)))

newtype LicenseList Source #

LicenseList is decoded from response JSON of List Licenses REST call. It is list of License.

Constructors

LicenseList 
Instances
Eq LicenseList Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show LicenseList Source # 
Instance details

Defined in Network.CiscoSpark.Types

FromJSON LicenseList Source #

LicenseList derives ToJSON and FromJSON via deriveJSON template haskell function.

Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser LicenseList

parseJSONList :: Value -> Parser [LicenseList]

ToJSON LicenseList Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: LicenseList -> Value

toEncoding :: LicenseList -> Encoding

toJSONList :: [LicenseList] -> Value

toEncodingList :: [LicenseList] -> Encoding

newtype LicenseFilter Source #

Optional query strings for license list API

Constructors

LicenseFilter 

Fields

Instances
Eq LicenseFilter Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show LicenseFilter Source # 
Instance details

Defined in Network.CiscoSpark.Types

Generic LicenseFilter Source # 
Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type Rep LicenseFilter :: * -> * #

Default LicenseFilter Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

def :: LicenseFilter

SparkFilter LicenseFilter Source #

User can list licenses with filter parameter.

Instance details

Defined in Network.CiscoSpark.Types

SparkResponse LicenseFilter Source #

List licenses API uses LicenseFilter and responses License.

Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type ToResponse LicenseFilter :: * Source #

SparkApiPath LicenseFilter Source #

List licenses API uses LicenseFilter and path "licenses".

Instance details

Defined in Network.CiscoSpark.Types

type Rep LicenseFilter Source # 
Instance details

Defined in Network.CiscoSpark.Types

type Rep LicenseFilter = D1 (MetaData "LicenseFilter" "Network.CiscoSpark.Types" "cisco-spark-api-0.1.0.3-inplace" True) (C1 (MetaCons "LicenseFilter" PrefixI True) (S1 (MetaSel (Just "licenseFilterOrgId") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe OrganizationId))))
type ToResponse LicenseFilter Source # 
Instance details

Defined in Network.CiscoSpark.Types

Role related types

data Role Source #

A persona for an authenticated user, corresponding to a set of privileges within an organization. Role is decoded from response JSON of Get Role Details REST call. It is also element type of response of List Roles call.

Constructors

Role 

Fields

Instances
Eq Role Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

(==) :: Role -> Role -> Bool #

(/=) :: Role -> Role -> Bool #

Show Role Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

showsPrec :: Int -> Role -> ShowS #

show :: Role -> String #

showList :: [Role] -> ShowS #

FromJSON Role Source #

Role derives ToJSON and FromJSON via deriveJSON template haskell function.

Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser Role

parseJSONList :: Value -> Parser [Role]

ToJSON Role Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: Role -> Value

toEncoding :: Role -> Encoding

toJSONList :: [Role] -> Value

toEncodingList :: [Role] -> Encoding

SparkListItem Role Source #

RoleList wraps Role

Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type ToList Role :: * Source #

Methods

unwrap :: ToList Role -> [Role] Source #

type ToList Role Source # 
Instance details

Defined in Network.CiscoSpark.Types

newtype RoleId Source #

Role identifier which can be assigned to user. See Role too.

Constructors

RoleId Text 
Instances
Eq RoleId Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

(==) :: RoleId -> RoleId -> Bool #

(/=) :: RoleId -> RoleId -> Bool #

Show RoleId Source # 
Instance details

Defined in Network.CiscoSpark.Types

Generic RoleId Source # 
Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type Rep RoleId :: * -> * #

Methods

from :: RoleId -> Rep RoleId x #

to :: Rep RoleId x -> RoleId #

FromJSON RoleId Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser RoleId

parseJSONList :: Value -> Parser [RoleId]

ToJSON RoleId Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: RoleId -> Value

toEncoding :: RoleId -> Encoding

toJSONList :: [RoleId] -> Value

toEncodingList :: [RoleId] -> Encoding

SparkDetail RoleId Source #

User can get detail of a role.

Instance details

Defined in Network.CiscoSpark.Types

Methods

toIdStr :: RoleId -> Text Source #

SparkResponse RoleId Source #

Get detail for a role API uses "RoleId' and responses Role.

Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type ToResponse RoleId :: * Source #

SparkApiPath RoleId Source #

Get detail for role API uses RoleId and path "roles".

Instance details

Defined in Network.CiscoSpark.Types

type Rep RoleId Source # 
Instance details

Defined in Network.CiscoSpark.Types

type Rep RoleId = D1 (MetaData "RoleId" "Network.CiscoSpark.Types" "cisco-spark-api-0.1.0.3-inplace" True) (C1 (MetaCons "RoleId" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text)))
type ToResponse RoleId Source # 
Instance details

Defined in Network.CiscoSpark.Types

newtype RoleName Source #

Name of Role.

Constructors

RoleName Text 
Instances
Eq RoleName Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show RoleName Source # 
Instance details

Defined in Network.CiscoSpark.Types

Generic RoleName Source # 
Instance details

Defined in Network.CiscoSpark.Types

Associated Types

type Rep RoleName :: * -> * #

Methods

from :: RoleName -> Rep RoleName x #

to :: Rep RoleName x -> RoleName #

FromJSON RoleName Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser RoleName

parseJSONList :: Value -> Parser [RoleName]

ToJSON RoleName Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: RoleName -> Value

toEncoding :: RoleName -> Encoding

toJSONList :: [RoleName] -> Value

toEncodingList :: [RoleName] -> Encoding

type Rep RoleName Source # 
Instance details

Defined in Network.CiscoSpark.Types

type Rep RoleName = D1 (MetaData "RoleName" "Network.CiscoSpark.Types" "cisco-spark-api-0.1.0.3-inplace" True) (C1 (MetaCons "RoleName" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text)))

newtype RoleList Source #

RoleList is decoded from response JSON of List Role REST call. It is list of Role.

Constructors

RoleList 

Fields

Instances
Eq RoleList Source # 
Instance details

Defined in Network.CiscoSpark.Types

Show RoleList Source # 
Instance details

Defined in Network.CiscoSpark.Types

FromJSON RoleList Source #

RoleList derives ToJSON and FromJSON via deriveJSON template haskell function.

Instance details

Defined in Network.CiscoSpark.Types

Methods

parseJSON :: Value -> Parser RoleList

parseJSONList :: Value -> Parser [RoleList]

ToJSON RoleList Source # 
Instance details

Defined in Network.CiscoSpark.Types

Methods

toJSON :: RoleList -> Value

toEncoding :: RoleList -> Encoding

toJSONList :: [RoleList] -> Value

toEncodingList :: [RoleList] -> Encoding

Functions

Getting detail of an entity

getDetail Source #

Arguments

:: (MonadIO m, SparkDetail key) 
=> Authorization

Authorization string against Spark API.

-> CiscoSparkRequest

Predefined part of Request commonly used for Cisco Spark API.

-> key

One of PersonId, RoomId, MembershipId, MessageId, TeamId, TeamMembershipId, OrganizationId, LicenseId and RoleId.

-> m (Response (ToResponse key)) 

Get details of a Spark entity.

Obtaining detail of an entity identified by key. The key can be a value in one of following types: PersonId, RoomId, MembershipId, MessageId, TeamId, TeamMembershipId, OrganizationId, LicenseId, RoleId. API is automatically selected by type of the key. A JSONException runtime exception will be thrown on an JSON parse errors.

getDetailEither :: (MonadIO m, SparkDetail key) => Authorization -> CiscoSparkRequest -> key -> m (Response (Either JSONException (ToResponse key))) Source #

Get details of a Spark entity. A Left value will be returned on an JSON parse errors.

Streaming response of List API with auto pagenation

streamEntityWithFilter :: (MonadIO m, SparkFilter filter, SparkListItem (ToResponse filter)) => Authorization -> CiscoSparkRequest -> filter -> ConduitT () (ToResponse filter) m () Source #

Get list of entities with query parameter and stream it into Conduit pipe. It automatically performs pagination.

streamTeamList :: MonadIO m => Authorization -> CiscoSparkRequest -> ConduitT () Team m () Source #

List of Team and stream it into Conduit pipe. It automatically performs pagination.

streamOrganizationList :: MonadIO m => Authorization -> CiscoSparkRequest -> ConduitT () Organization m () Source #

Filter list of Organization and stream it into Conduit pipe. It automatically performs pagination.

streamRoleList :: MonadIO m => Authorization -> CiscoSparkRequest -> ConduitT () Role m () Source #

List of Role and stream it into Conduit pipe. It automatically performs pagination.

Creating an entity

createEntity Source #

Arguments

:: (MonadIO m, SparkCreate createParams) 
=> Authorization

Authorization string against Spark API.

-> CiscoSparkRequest

Predefined part of Request commonly used for Cisco Spark API.

-> createParams

One of CreatePerson, CreateRoom, CreateMembership, CreateMessage, CreateTeam and CreateTeamMembership.

-> m (Response (ToResponse createParams)) 

Create a Spark entity with given parameters.

Creating a new entity of Spark such as space, team, membership or message. REST API path is automatically selected by type of createParams. A JSONException runtime exception will be thrown on an JSON parse errors.

createEntityEither :: (MonadIO m, SparkCreate createParams) => Authorization -> CiscoSparkRequest -> createParams -> m (Response (Either JSONException (ToResponse createParams))) Source #

Create a Spark entity with given parameters. A Left value will be returned on an JSON parse errors.

Updating an entity

updateEntity Source #

Arguments

:: (MonadIO m, SparkUpdate updateParams) 
=> Authorization

Authorization string against Spark API.

-> CiscoSparkRequest

Predefined part of Request commonly used for Cisco Spark API.

-> updateParams

One of UpdatePerson, UpdateRoom, UpdateMembership, UpdateTeam and UpdateTeamMembership.

-> m (Response (ToResponse updateParams)) 

Update a Spark entity with given parameters.

Creating a new entity of Spark such as space, team, or membership. REST API path is automatically selected by type of updateParams. A JSONException runtime exception will be thrown on an JSON parse errors.

updateEntityEither :: (MonadIO m, SparkUpdate updateParams) => Authorization -> CiscoSparkRequest -> updateParams -> m (Response (Either JSONException (ToResponse updateParams))) Source #

Update a Spark entity with given parameters. A Left value will be returned on an JSON parse errors.

Creating default filter spec from mandatory field

defaultMessageFilter :: RoomId -> MessageFilter Source #

Default value of query strings for message list API. Because RoomId is mandatory, user have to supply it in order to get rest of defaults.

defaultTeamMembershipFilter :: TeamId -> TeamMembershipFilter Source #

Default value of query strings for team membership list API. Because TeamId is mandatory, user have to supply it in order to get rest of defaults. As of writing, there is no filter parameter other than TeamId but TeamMembershipFilter is used for providing consistent API like streamEntityWithFilter.

Deleting an entity

deleteRoom Source #

Arguments

:: MonadIO m 
=> Authorization

Authorization string against Spark API.

-> CiscoSparkRequest

Predefined part of Request commonly used for Cisco Spark API.

-> RoomId

Identifier of a space to be deleted.

-> m (Response ()) 

Deletes a room, by ID.

deleteMembership Source #

Arguments

:: MonadIO m 
=> Authorization

Authorization string against Spark API.

-> CiscoSparkRequest

Predefined part of Request commonly used for Cisco Spark API.

-> MembershipId

Identifier of a space to be deleted.

-> m (Response ()) 

Deletes a membership, by ID.

deleteMessage Source #

Arguments

:: MonadIO m 
=> Authorization

Authorization string against Spark API.

-> CiscoSparkRequest

Predefined part of Request commonly used for Cisco Spark API.

-> MessageId

Identifier of a space to be deleted.

-> m (Response ()) 

Deletes a message, by ID.

deleteTeam Source #

Arguments

:: MonadIO m 
=> Authorization

Authorization string against Spark API.

-> CiscoSparkRequest

Predefined part of Request commonly used for Cisco Spark API.

-> TeamId

Identifier of a space to be deleted.

-> m (Response ()) 

Deletes a team, by ID.

deleteTeamMembership Source #

Arguments

:: MonadIO m 
=> Authorization

Authorization string against Spark API.

-> CiscoSparkRequest

Predefined part of Request commonly used for Cisco Spark API.

-> TeamMembershipId

Identifier of a space to be deleted.

-> m (Response ()) 

Deletes a teamMembership, by ID.