!/      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~(c) Naoto Shimazaki 2017MIT (see the file LICENSE)https://github.com/nshimaza experimentalNoneQwebex-teams-apipParsed entire Link header value. It keeps URI-Reference part untouched for farther processing in different way.webex-teams-api9Parsed Link header parameter. Convert only rel param to  and keeps other params as-is.webex-teams-api/Drop given number of characters from the given t then change first character of the remaining string to lowercase. This function is intended to be used for fieldLabelModifier and constructorTagModifier argument of  DeriveJSONC from DATA.Aeson.TH. You can find how this function is used in  source code.webex-teams-apiMatches to double quote. webex-teams-apiMatches to semicolon. webex-teams-apiMatches to equal character. webex-teams-apiMatches to less-than character. webex-teams-api"Matches to greater-than character. webex-teams-apiSkips white spaces.webex-teams-apiParse RFC7230 token.webex-teams-apiParse RFC7230 quoted-pair.webex-teams-apiParse RFC7230 quoted-string.webex-teams-api'Parse a parameter value in Link header.webex-teams-api+Convert parameter name string to LinkParam.webex-teams-api$Parse parameter part of Link header.webex-teams-apiUAttoparsec parser of RFC5988 HTTP Link Header. Link header is defined in RFC5988  #https://tools.ietf.org/html/rfc5988. This parser doesn't parse complete spec of RFC5988 but only parses rel="next" link for simple pagination. It doesn't parse obs-fold defined in RFC7230  #https://tools.ietf.org/html/rfc7230>. It assumes Header in Response never contains CRLF or LF.webex-teams-apieAccept all RFC5988 Link HTTP header, filter first header containing rel="next" param, parse URL part.webex-teams-api8Return URL for next page if it exists in given response.webex-teams-api0Validate extracted URL from HTTP Link Header by H. Check if it has same scheme and URI authority as original request.webex-teams-apiNumber of characters to dropwebex-teams-api,Field name to be modified to JSON field name  NoneR (c) Naoto Shimazaki 2017MIT (see the file LICENSE)https://github.com/nshimaza experimentalNone 79>HV=webex-teams-api: represent concrete error code and reason. It appears in G.webex-teams-api7Error code of element level error in List API response.webex-teams-api Reason explanation of the error. webex-teams-apiOError code for element level error potentially contained in List API responses."webex-teams-apiPType representing timestamp. For now, it is just copied from API response JSON.$webex-teams-api4Type class for parameter type for update entity API.%webex-teams-api4Type class for parameter type for create entity API.&webex-teams-apiRConvert given filter condition parameter in a concrete type to HTTP query strings.(webex-teams-api=Extract containing entity ID string from given type of value.*webex-teams-apiHType family to associate a type appears in an argument to response type.+webex-teams-apirAssociate response type to input parameter type such as filter criteria, entity key or create / update parameters.,webex-teams-apiIType class for getting URL path of API category from given type of value..webex-teams-apiNWebexTeamsListItem is a type class grouping types with following common usage./It is used for return value of get-detail APIs.4It is used for element of return value of list APIs.YWebexTeamsListItem also associates the above type to wrapping list type (e.g. associates  to ). Wrapping type (PersonList in this case) is necessary for parsing JSON from REST API but what we are interested in is bare list such like [Person]. Type family association defined in this class is used for type translation from type of items to type of wrapper./webex-teams-api*Associate item type to wrapping list type.0webex-teams-apiGGet bare list from wrapped type which can be parsed directly from JSON.1webex-teams-apiURL path for people API.2webex-teams-apiURL path for rooms API.3webex-teams-apiURL path for memberships API.4webex-teams-apiURL path for messages API.5webex-teams-apiURL path for teams API.6webex-teams-api"URL path for team memberships API.7webex-teams-apiURL path for organizations API.8webex-teams-apiURL path for licenes API.9webex-teams-apiURL path for roles API.:webex-teams-apiURL path for webhooks API.Gwebex-teams-apiG 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  'https://developer.webex.com/errors.html API Document for more detail.Jwebex-teams-apiF derives ToJSON and FromJSON via deriveJSON template haskell function.Nwebex-teams-apiN3 indicates whether the Person is real human or bot.Owebex-teams-apiThe ) is a real human. Decoded from "person".Pwebex-teams-apiThe  is a bot. Decoded from "bot".Qwebex-teams-apiCurrent status of . It can be updated automatically by recent activity or explicitly updated by user's operation or propagated from vacation setting on email system.Rwebex-teams-apiThe - is currently active. Decoded from "active".Swebex-teams-apiThe 3 is currently not active. Decoded from "inactive".Twebex-teams-apiEmail system of the 6 currently sets vacation. Decoded from "OutOfOffice".Uwebex-teams-apiThe F is explicitly indicated do-not-disturb. Decoded from "DoNotDisturb".Vwebex-teams-apiThe status of the % is unknown. Decoded from "unknown".Wwebex-teams-apiTimezone in timezone name.Ywebex-teams-api/ identifier which can be enabled on user. See  too.[webex-teams-api0 identifier which can be assigned to user. See  too.]webex-teams-apiz* identifier which user or team belongs to._webex-teams-api%URL pointing to image file of Avatar.awebex-teams-apiLast name of user.cwebex-teams-apiFirst name of user.ewebex-teams-apiNickname of user.gwebex-teams-apiDisplay name of user.iwebex-teams-apiEmail address of user.kwebex-teams-api Identifying . describing detail of Webex Teams user or bot.mwebex-teams-apiGF derives ToJSON and FromJSON via deriveJSON template haskell function.owebex-teams-apiQ implements , to decode JSON enum value to a constructor.pwebex-teams-apiQ implements 1 to encode each constructor into JSON enum value.webex-teams-api is detail description of Webex Teams 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.webex-teams-apiIdentifier of the Person.webex-teams-api<Element level error possibly contained in List API response.webex-teams-api-List of email addresses which the Person has.webex-teams-apiDisplay name of the Person.webex-teams-apiNickname of the Person.webex-teams-apiFirst name of the Person.webex-teams-apiLast name of the Person.webex-teams-api3URL pointing a image used for Avatar of the Person.webex-teams-apiz which the Person belongs to.webex-teams-api%List of roles assigned to the Person.webex-teams-api)List of licenses effective on the Person.webex-teams-api&Timestamp when the Person was created.webex-teams-apiTimezone of the Person.webex-teams-api/Timestamp of the latest activity of the Person.webex-teams-apiCurrent status of the Personwebex-teams-api-True if invitation for the Person is pending.webex-teams-api'True if login of the Person is enabled.webex-teams-api.Indicating if the Person is real human or bot.webex-teams-apiNF derives ToJSON and FromJSON via deriveJSON template haskell function.webex-teams-apiH is decoded from response JSON of List People REST call. It is list of .webex-teams-api User can get detail of a person.webex-teams-api:Get detail for a person API uses "PersonId' and responses .webex-teams-api!Get detail for a person API uses k and path "people".webex-teams-apiF derives ToJSON and FromJSON via deriveJSON template haskell function.webex-teams-api> is encoded to request body JSON of Create a Person REST call.webex-teams-api-List of email addresses which the Person has.webex-teams-apiDisplay name of the Person.webex-teams-apiFirst name of the Person.webex-teams-apiLast name of the Person.webex-teams-api3URL pointing a image used for Avatar of the Person.webex-teams-api)Organization which the Person belongs to.webex-teams-api%List of roles assigned to the person.webex-teams-api)List of licenses effective on the Person.webex-teams-api+Optional query strings for people list API.webex-teams-api(Find person who has given email address.webex-teams-api'Find person who has given display name.webex-teams-api.Find person who belongs to given organization.webex-teams-api wraps .webex-teams-apiF derives ToJSON and FromJSON via deriveJSON template haskell function.webex-teams-api+User can list people with filter parameter.webex-teams-apiList people API uses  and responses .webex-teams-apiList people API uses  and path "people".webex-teams-api> is encoded to request body JSON of Update a Person REST call.webex-teams-apiDisplay name of the Person.webex-teams-apiFirst name of the Person.webex-teams-apiLast name of the Person.webex-teams-api3URL pointing a image used for Avatar of the Person.webex-teams-api)Organization which the Person belongs to.webex-teams-api%List of roles assigned to the person.webex-teams-api)List of licenses effective on the Person.webex-teams-apiUser can create a person.webex-teams-api4Create person API uses "CreatePerson' and responses .webex-teams-apiCreate person API uses  and path "people".webex-teams-apiF derives ToJSON and FromJSON via deriveJSON template haskell function.webex-teams-api is group of  and group of . 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.webex-teams-apiIdentifier of the Team.webex-teams-api<Element level error possibly contained in List API response.webex-teams-apiName of the Team.webex-teams-api.Identifier of the Person who created the Team.webex-teams-api$Timestamp when the Team was created.webex-teams-api Name of Teamwebex-teams-apiIdentifying Team.webex-teams-apiUser can update a person.webex-teams-api4Update person API uses "UpdatePerson' and responses .webex-teams-apiUpdate person API uses  and path "people".webex-teams-apiF derives ToJSON and FromJSON via deriveJSON template haskell function.webex-teams-apiG is decoded from response JSON of List Teams REST call. It is list of .webex-teams-apiUser can get detail of a team.webex-teams-api6Get detail for a team API uses "TeamId' and responses .webex-teams-apiGet detail for a team API uses  and path "teams".webex-teams-apiF derives ToJSON and FromJSON via deriveJSON template haskell function. webex-teams-api < is encoded to request body JSON of Create a Team REST call.#webex-teams-api wraps $webex-teams-apiF derives ToJSON and FromJSON via deriveJSON template haskell function.(webex-teams-api(< is encoded to request body JSON of Update a Team REST call.+webex-teams-apiUser can create a team.,webex-teams-api0Create team API uses "CreateTeam' and responses .-webex-teams-apiCreate team API uses   and path "teams"..webex-teams-api F derives ToJSON and FromJSON via deriveJSON template haskell function.2webex-teams-api2 is association between  and . 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.4webex-teams-api'Identifier of the TeamMembership entry.5webex-teams-api<Element level error possibly contained in List API response.6webex-teams-apiIdentifier of the  which the Person belongs to.7webex-teams-api+Identifier of user who belongs to the Team.8webex-teams-api5Email address of the user identified by the PersonId.9webex-teams-api4Display name of the user identified by the PersonId.:webex-teams-apiIdentifier of z which the Team blongs to.;webex-teams-api.The Person is moderator of the Team when True.<webex-teams-api0Timestamp when the TeamMembership entry created.=webex-teams-apiIdentifying TeamMembership.?webex-teams-apiUser can update a team.@webex-teams-api0Update team API uses "UpdateTeam' and responses .Awebex-teams-apiUpdate team API uses ( and path "teams".Bwebex-teams-api(F derives ToJSON and FromJSON via deriveJSON template haskell function.Kwebex-teams-apiKR is decoded from response JSON of List Team Memberships REST call. It is list of 2.Nwebex-teams-api)User can get detail of a team membership.Owebex-teams-apiKGet detail for a team membership API uses "TeamMembershipId' and responses 2.Pwebex-teams-api*Get detail for a team membership API uses = and path "team/memberships".Qwebex-teams-api2F derives ToJSON and FromJSON via deriveJSON template haskell function.Uwebex-teams-apiUG is encoded to request body JSON of Create a Team Membership REST call.Wwebex-teams-apiIdentifier of ! which the user will be added to.Xwebex-teams-apiIdentifier of  who will be added to the Team.Ywebex-teams-api Email of the Person to be added.Zwebex-teams-api1The user becomes a moderator of the team if True.[webex-teams-api3Optional query strings for team membership list API]webex-teams-api#List membership only in given team.^webex-teams-apiIDefault value of query strings for team membership list API. Because  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 [/ is used for providing consistent API like streamEntityWithFilter._webex-teams-apiK wraps 2`webex-teams-apiKF derives ToJSON and FromJSON via deriveJSON template haskell function.bwebex-teams-api4User can list team membership with filter parameter.cwebex-teams-apiList team memberships API uses [ and responses 2.dwebex-teams-apiList team memberships API uses [ and path "team/memberships".iwebex-teams-apiiG is encoded to request body JSON of Update a Team Membership REST call.lwebex-teams-api!User can create a teamMembership.mwebex-teams-apiDCreate teamMembership API uses "CreateTeamMembership' and responses 2.nwebex-teams-apiCreate teamMembership API uses U and path "team/memberships".owebex-teams-apiUF derives ToJSON and FromJSON via deriveJSON template haskell function.swebex-teams-apis indicates if the # is for 1:1 user or group of users.twebex-teams-api,The Room is for 1:1. Decoded from "direct".uwebex-teams-api-The Room is for group. Decoded from "group".vwebex-teams-api SIP address.xwebex-teams-apiTitle text of .zwebex-teams-api Identifying .|webex-teams-api!User can update a teamMembership.}webex-teams-apiDUpdate teamMembership API uses "UpdateTeamMembership' and responses 2.~webex-teams-apiUpdate teamMembership API uses i and path "team/memberships".webex-teams-apiiF derives ToJSON and FromJSON via deriveJSON template haskell function.webex-teams-apiR is communication space in Webex Teams 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 Webex Teams. 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.webex-teams-apiIdentifier of the Room.webex-teams-api<Element level error possibly contained in List API response.webex-teams-apiTitle text of the Room.webex-teams-api*Indicates if the Room is for 1:1 or group.webex-teams-apiTrue if the Room is locked.webex-teams-apiSIP address of the Room.webex-teams-api8Timestamp when the last activity was happen on the Room.webex-teams-apiIdentifier of the  which the Room belongs to.webex-teams-apiIdentifier of  who created the Room.webex-teams-api$Timestamp when the Room was created.webex-teams-apisF derives ToJSON and FromJSON via deriveJSON template haskell function.webex-teams-apiG is decoded from response JSON of List Rooms REST call. It is list of .webex-teams-apiUser can get detail of a room.webex-teams-api6Get detail for a room API uses "RoomId' and responses .webex-teams-apiGet detail for a room API uses z and path "rooms".webex-teams-apiF derives ToJSON and FromJSON via deriveJSON template haskell function.webex-teams-api< is encoded to request body JSON of Create a Room REST call.webex-teams-api!Title text of newly created Room.webex-teams-apiIdentifier of M which the Room will belong to. If Nothing, the new Room will be standalone.webex-teams-api(Optional query strings for room list APIwebex-teams-apiList rooms only in given team.webex-teams-apiList given type rooms only.webex-teams-apiSort response by given option.webex-teams-api!Sorting option for room list API.webex-teams-api%Sum type to ByteString converter for s.webex-teams-api%Sum type to ByteString converter for .webex-teams-api wraps webex-teams-apiF derives ToJSON and FromJSON via deriveJSON template haskell function.webex-teams-api*User can list rooms with filter parameter.webex-teams-apiList rooms API uses  and responses .webex-teams-apiList rooms API uses  and path "rooms".webex-teams-api< is encoded to request body JSON of Update a Room REST call.webex-teams-apiUser can create a room.webex-teams-api0Create room API uses "CreateRoom' and responses .webex-teams-apiCreate room API uses  and path "rooms".webex-teams-apiF derives ToJSON and FromJSON via deriveJSON template haskell function.webex-teams-api is association between  and . 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.webex-teams-api#Identifier of the Membership entry.webex-teams-api<Element level error possibly contained in List API response.webex-teams-apiIdentifier of the  associated to the Personwebex-teams-apiIdentifier of the  associated to the Roomwebex-teams-apiEmail of the Personwebex-teams-apiDisplay name of the Personwebex-teams-apiIdentifier of z which the Person belongs to.webex-teams-api.True if the Person is a moderator of the room.webex-teams-api*True if the Person is monitoring the Room.webex-teams-api*Timestamp when the Membership was created.webex-teams-api Identifying .webex-teams-apiUser can update a room.webex-teams-api0Update room API uses "UpdateRoom' and responses .webex-teams-apiUpdate room API uses  and path "rooms".webex-teams-apiF derives ToJSON and FromJSON via deriveJSON template haskell function.webex-teams-apiM is decoded from response JSON of List Memberships REST call. It is list of .webex-teams-api$User can get detail of a membership.webex-teams-apiBGet detail for a membership API uses "MembershipId' and responses .webex-teams-api%Get detail for a membership API uses  and path "memberships".webex-teams-apiF derives ToJSON and FromJSON via deriveJSON template haskell function.webex-teams-apiB is encoded to request body JSON of Create a Membership REST call.webex-teams-apiIdentifier of # which the Person will be added to.webex-teams-apiIdentifier of  who will be added to the Room.webex-teams-api Email of the Person to be added.webex-teams-api3The Person becomes a moderator of the Room if True.webex-teams-api3Optional query strings for room membership list APIwebex-teams-api#List membership only in given room.webex-teams-api4List membership related to given person of personId.webex-teams-api1List membership related to given person of email.webex-teams-api wraps webex-teams-apiF derives ToJSON and FromJSON via deriveJSON template haskell function.webex-teams-api0User can list memberships with filter parameter.webex-teams-apiList memberships API uses  and responses .webex-teams-apiList memberships API uses  and path "memberships".webex-teams-apiB is encoded to request body JSON of Update a Membership REST call.webex-teams-apiUser can create a membership.webex-teams-api<Create membership API uses "CreateMembership' and responses .webex-teams-apiCreate membership API uses  and path "memberships".webex-teams-apiF derives ToJSON and FromJSON via deriveJSON template haskell function.webex-teams-api is a message posted to a  by some . Room is decoded from response JSON of Get Message Details REST call. It is also element type of response of List Messages call.webex-teams-apiIdentifier of the Message.webex-teams-api<Element level error possibly contained in List API response.webex-teams-api2Identifier of the room where the Message was sent.webex-teams-api%Type of Room the message was sent to.webex-teams-apiDPresents in documentation but doesn't appear in actual API response.webex-teams-apiDPresents in documentation but doesn't appear in actual API response. webex-teams-apiMessage body in plain text.!webex-teams-apiMessage body in HTML."webex-teams-api%URL to files attached to the message.#webex-teams-apiIdentifier of  who sent the message.$webex-teams-api%Email of Person who sent the message.%webex-teams-api$Timestamp when the massage was sent.&webex-teams-api<List of identifiers of Person were mentioned in the message.'webex-teams-api&URL pointing attached file of message.)webex-teams-apiBody of message in markdown.+webex-teams-apiBody of message in html.-webex-teams-apiBody of message in plain text./webex-teams-api Identifying .1webex-teams-apiUser can update a membership.2webex-teams-api<Update membership API uses "UpdateMembership' and responses .3webex-teams-apiUpdate membership API uses  and path "memberships".4webex-teams-apiF derives ToJSON and FromJSON via deriveJSON template haskell function.Qwebex-teams-apiQJ is decoded from response JSON of List Messages REST call. It is list of .Twebex-teams-api!User can get detail of a message.Uwebex-teams-api<Get detail for a message API uses "MessageId' and responses .Vwebex-teams-api Get detail for message API uses / and path "messages".Wwebex-teams-apiF derives ToJSON and FromJSON via deriveJSON template haskell function.[webex-teams-api[? is encoded to request body JSON of Create a Message REST call.]webex-teams-apiIdentifier of the  the message will be posted to.^webex-teams-apiIdentifier of the ) to whom the direct message will be sent._webex-teams-api)Email of Person who receives the Message.`webex-teams-apiMessage body in plain text.awebex-teams-api Message body in markdown format.bwebex-teams-api&URLs of Attached files to the message.cwebex-teams-api+Optional query strings for message list APIewebex-teams-api)Mandatory parameter which room to search.fwebex-teams-api-List messages only mentioned to given person.gwebex-teams-api,List messages posted before given timestamp.hwebex-teams-api*List messages posted before given message.iwebex-teams-api>Sum type for mentionedPeople query string. It can be "me" or k.lwebex-teams-apiADefault value of query strings for message list API. Because zG is mandatory, user have to supply it in order to get rest of defaults.mwebex-teams-apiBSum type to ByteString converter for mentionedPeople query string.nwebex-teams-apiQ wraps owebex-teams-apiQF derives ToJSON and FromJSON via deriveJSON template haskell function.qwebex-teams-api-User can list messages with filter parameter.rwebex-teams-apiList messages API uses c and responses .swebex-teams-apiList messages API uses c and path "messages".zwebex-teams-apiz; is an administrative group of Webex Teams users. Each  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.|webex-teams-apiIdentifier of the Organization.}webex-teams-api<Element level error possibly contained in List API response.~webex-teams-api!Display name of the Organization.webex-teams-api,Timestamp when the Organization was created.webex-teams-apiDisplay name of zwebex-teams-apiUser can create a message.webex-teams-api6Create message API uses "CreateMessage' and responses .webex-teams-apiCreate message API uses [ and path "messages".webex-teams-api[F derives ToJSON and FromJSON via deriveJSON template haskell function.webex-teams-apiO is decoded from response JSON of List Organizations REST call. It is list of z.webex-teams-api&User can get detail of a organization.webex-teams-apiFGet detail for a organization API uses "OrganizationId' and responses z.webex-teams-api%Get detail for organization API uses ] and path "organizations".webex-teams-apizF derives ToJSON and FromJSON via deriveJSON template haskell function.webex-teams-api is allowance for features and services of Webex Teams subscription. License is decoded from response JSON of Get License Details REST call. It is also element type of response of List Licenses call.webex-teams-apiIdentifier of the License.webex-teams-api<Element level error possibly contained in List API response.webex-teams-apiName of the License.webex-teams-apiNumber of granted License.webex-teams-api%Number of currently consumed License.webex-teams-api.Counting number of granted or consumed Licensewebex-teams-apiDisplay name of Licensewebex-teams-api wraps zwebex-teams-apiF derives ToJSON and FromJSON via deriveJSON template haskell function.webex-teams-apiJ is decoded from response JSON of List Licenses REST call. It is list of .webex-teams-api!User can get detail of a license.webex-teams-api<Get detail for a license API uses "LicenseId' and responses .webex-teams-api Get detail for license API uses Y and path "licenses".webex-teams-apiF derives ToJSON and FromJSON via deriveJSON template haskell function.webex-teams-apiA 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.webex-teams-apiIdentifier of the Rolewebex-teams-api<Element level error possibly contained in List API response.webex-teams-apiName of the Rolewebex-teams-apiName of .webex-teams-api+Optional query strings for license list APIwebex-teams-api4List licenses only applicable to given organization.webex-teams-api wraps webex-teams-apiF derives ToJSON and FromJSON via deriveJSON template haskell function.webex-teams-api-User can list licenses with filter parameter.webex-teams-apiList licenses API uses  and responses .webex-teams-apiList licenses API uses  and path "licenses".webex-teams-apiF is decoded from response JSON of List Role REST call. It is list of .webex-teams-apiUser can get detail of a role.webex-teams-api6Get detail for a role API uses "RoleId' and responses .webex-teams-apiGet detail for role API uses [ and path "roles".webex-teams-apiF derives ToJSON and FromJSON via deriveJSON template haskell function.webex-teams-api: indicates source of event which triggered webhook access.webex-teams-apiOShared secret supplied by user to authenticate Webex Cloud by webhook receiver.webex-teams-api.URL-encoded set of webhook filtering criteria.webex-teams-apiURL pointing to webhook target.webex-teams-apiName of .webex-teams-api0 identifier which can be assigned to user. See  too.webex-teams-api wraps webex-teams-apiF derives ToJSON and FromJSON via deriveJSON template haskell function.webex-teams-api<WebhookEvent indicates which event triggered Webhook access.webex-teams-apiF derives ToJSON and FromJSON via deriveJSON template haskell function.webex-teams-api allow your app to be notified via HTTP when a specific event occurs on Webex Teams. For example, your app can register a webhook to be notified when a new message is posted into a specific room.webex-teams-apiIdentifier of the Webhook.webex-teams-api<Element level error possibly contained in List API response.webex-teams-apiName of the Webhook.webex-teams-apiURL pointing to webhook target.webex-teams-api)Resource type where events are monitored.webex-teams-api#Event type which will be monitored. webex-teams-api.URL-encoded set of webhook filtering criteria.!webex-teams-api/User supplied shared secret for authentication."webex-teams-api'Timestamp when the Webhook was created.#webex-teams-apiF derives ToJSON and FromJSON via deriveJSON template haskell function.'webex-teams-api'I is decoded from response JSON of List Webhook REST call. It is list of .*webex-teams-api!User can get detail of a webhook.+webex-teams-api<Get detail for a webhook API uses "WebhookId' and responses .,webex-teams-api Get detail for webhook API uses  and path "webhooks".-webex-teams-apiF derives ToJSON and FromJSON via deriveJSON template haskell function.1webex-teams-api1? is encoded to request body JSON of Create a Webhook REST call.3webex-teams-apiName of Webhook to be created.4webex-teams-apiURL pointing to webhook target.5webex-teams-api-Resource type where events will be monitored.6webex-teams-api#Event type which will be monitored.7webex-teams-api.URL-encoded set of webhook filtering criteria.8webex-teams-api/User supplied shared secret for authentication.9webex-teams-api' wraps :webex-teams-api'F derives ToJSON and FromJSON via deriveJSON template haskell function.>webex-teams-api>? is encoded to request body JSON of Update a Webhook REST call.@webex-teams-apiName of Webhook to be created.Awebex-teams-apiURL pointing to webhook target.Bwebex-teams-apiUser can create a webhook.Cwebex-teams-api6Create webhook API uses "CreateWebhook' and responses .Dwebex-teams-apiCreate webhook API uses 1 and path "webhooks".Ewebex-teams-api1F derives ToJSON and FromJSON via deriveJSON template haskell function.Iwebex-teams-apiI= indicates if the webhook is owned by the org or the creator.Lwebex-teams-apiIdentifier of app.Nwebex-teams-api&Optional query strings for room event.Pwebex-teams-api%Feed events only for given room type.Qwebex-teams-api1Feed events only locked unlocked rooms when true.Rwebex-teams-api)Optional query strings for message event.Twebex-teams-api Feed events only for given room.Uwebex-teams-api%Feed events only for given room type.Vwebex-teams-api"Feed events only for given person.Wwebex-teams-api,Feed events only person who has given email.Xwebex-teams-api,Feed events only mentioned for given person.Ywebex-teams-api-Feed events only messages with attached file.Zwebex-teams-api,Optional query strings for membership event.\webex-teams-api Feed events only for given room.]webex-teams-api"Feed events only for given person.^webex-teams-api,Feed events only person who has given email._webex-teams-api2Feed events only for moderator membership changes.`webex-teams-apiUser can update a webhook.awebex-teams-api6Update webhook API uses "UpdateWebhook' and responses .bwebex-teams-apiUpdate webhook API uses > and path "webhooks".cwebex-teams-api>F derives ToJSON and FromJSON via deriveJSON template haskell function.ewebex-teams-api/User can filter Webhook events from membership.fwebex-teams-api"List team memberships API accepts Z and responses .gwebex-teams-apiCreate webhook API accepts Z and uses path "webhooks".hwebex-teams-api,User can filter Webhook events from message.iwebex-teams-api"List team memberships API accepts R and responses .jwebex-teams-apiCreate webhook API accepts R and uses path "webhooks".kwebex-teams-api)User can filter Webhook events from room.lwebex-teams-api"List team memberships API accepts N and responses .mwebex-teams-apiCreate webhook API accepts N and uses path "webhooks".{webex-teams-api{$ indicates if the webhook is active.~webex-teams-apiIF derives ToJSON and FromJSON via deriveJSON template haskell function.webex-teams-api_ decodes webhook notification from Webex Cloud except data field. Data field can be one of ,  or >. Type of data field is shown as value of resource field.webex-teams-api{F derives ToJSON and FromJSON via deriveJSON template haskell function.webex-teams-api0Data part of webhook notification is decoded to , when resource field value is "memberships".webex-teams-apiF derives ToJSON and FromJSON via deriveJSON template haskell function.webex-teams-api0Data part of webhook notification is decoded to ) when resource field value is "messages".webex-teams-apiF derives ToJSON and FromJSON via deriveJSON template haskell function.webex-teams-api0Data part of webhook notification is decoded to & when resource field value is "rooms".webex-teams-apiF derives ToJSON and FromJSON via deriveJSON template haskell function.webex-teams-apiF derives ToJSON and FromJSON via deriveJSON template haskell function. !"#$%&'()*+,-.0/123456789:GHINPOQVUTSRWXYZ[\]^_`abcdefghijkl !"()*23<;:987654=>KLMUVZYXW[\]^ijksutvwxyz{&%$#"! '()*+,-./0QRS[\ba`_^]cdhgfeijklmz{~}|"! '()12876543>?A@IKJLMNOQPRSYXWVUTZ[_^]\{}|123456789:.0/,-*+()&'%$"# !GHIklijghefcdab_`]^[\YZWXQVUTSRNPO !"()*=>23<;:987654KLM[\]^UVZYXWijkz{xyvwsut/0-.+,)*'(&%$#"! QRSijkcdhgfelm[\ba`_^]z{~}|"! '()12876543>?A@Z[_^]\RSYXWVUTNOQPLMIKJ{}|(c) Naoto Shimazaki 2017,2018MIT (see the file LICENSE)https://github.com/nshimaza experimentalNone>n"webex-teams-api2 is IO action returned by functions for list API (, D etc). It is containing URL inside to be accessed. When you call the IO action, it accesses to Webex Teams REST API, parse next page URL if available, then return new IO action. The new IO action contains list of responded items and new URL for next page so you can call the new IO action to get the next page.JFollowing example demonstrates how you can get all items into single list.  readAllList :: ListReader i -> IO [i] readAllList reader = go [] where go xs = reader >>= chunk -> case chunk of [] -> pure xs ys -> go (xs <> ys) 2Note that this example is only for explaining how  works. Practically you should not do the above because it eagerly creates entire list. You should use streaming APIs instead. Streaming APIs are available via webex-teams-conduit and webex-teams-pipes package.webex-teams-api(Type synonym for backward compatibility.webex-teams-api Wrapping P in order to provide easy default value specifically for Webex Teams public API.webex-teams-apiHolds pre-set  for REST API.webex-teams-api!Should be "https:" in production.webex-teams-apiAuthority part of request URI.webex-teams-apikAuthorization string against Webex Teams API to be contained in HTTP Authorization header of every request.webex-teams-apiCommon part of  against Webex Teams API.webex-teams-api,Add given Authorization into request header.webex-teams-apiBuilding common part of  for List APIs.webex-teams-apiJCommon worker function for List APIs. It accesses List API with given , unwrap result into list of items, stream them to Conduit pipe and finally it automatically accesses next page designated via HTTP Link header if available.webex-teams-api*Processing pagination by HTTP Link header.webex-teams-apiqGet list of entities with query parameter and stream it into Conduit pipe. It automatically performs pagination.webex-teams-apiList of H and stream it into Conduit pipe. It automatically performs pagination.webex-teams-apiFilter list of zH and stream it into Conduit pipe. It automatically performs pagination.webex-teams-apiList of H and stream it into Conduit pipe. It automatically performs pagination.webex-teams-apiReturns common worker function < for List APIs. ListReader accesses List API with given  then return responded list of items. ListReader also keeps next URL if response is pagenated and next page is available. Next call of ListReader causes another List API access for the next page. ListReader returns [] when there is no more page.webex-teams-apiGet list with query parameter.webex-teams-apiReturn  for .webex-teams-apiReturn  for .webex-teams-apiReturn  for .webex-teams-api$Get details of a Webex Teams entity.hObtaining detail of an entity identified by key. The key can be a value in one of following types: k, z, , /, , =, ], Y, [. API is automatically selected by type of the key. A JSONException runtime exception will be thrown on an JSON parse errors.webex-teams-api\Get details of a Webex Teams entity. A Left value will be returned on an JSON parse errors.webex-teams-api2Create a Webex Teams entity with given parameters.Creating a new entity of Webex Teams 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.webex-teams-apijCreate a Webex Teams entity with given parameters. A Left value will be returned on an JSON parse errors.webex-teams-api2Update a Webex Teams entity with given parameters.Creating a new entity of Webex Teams 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.webex-teams-apijUpdate a Webex Teams entity with given parameters. A Left value will be returned on an JSON parse errors.webex-teams-apiSPolymorphic version of delete. Intentionally not exposed to outside of the module.webex-teams-apiDeletes a room, by ID.webex-teams-apiDeletes a membership, by ID.webex-teams-apiDeletes a message, by ID.webex-teams-apiDeletes a team, by ID.webex-teams-api Deletes a teamMembership, by ID.webex-teams-api<Default parameters for HTTP request to Webex Teams REST API. webex-teams-apiCommon request componentswebex-teams-api"API category part of REST URL pathwebex-teams-apiCommon request components.webex-teams-api-Authorization string against Webex Teams API.webex-teams-api#API category part of REST URL path.webex-teams-api(Identifier string part of REST URL path.webex-teams-api-Authorization string against Webex Teams API.webex-teams-apiPredefined part of # commonly used for Webex Teams API.webex-teams-apitOne of PersonId, RoomId, MembershipId, MessageId, TeamId, TeamMembershipId, OrganizationId, LicenseId and RoleId.webex-teams-api-Authorization string against Webex Teams API.webex-teams-apiPredefined part of # commonly used for Webex Teams API.webex-teams-apiOne of , , , [,   and U.webex-teams-api-Authorization string against Webex Teams API.webex-teams-apiPredefined part of # commonly used for Webex Teams API.webex-teams-apiOne of , , , ( and i.webex-teams-api-Authorization string against Webex Teams API.webex-teams-apiCommon request components.webex-teams-api#API category part of REST URL path.webex-teams-api(Identifier string part of REST URL path.webex-teams-api-Authorization string against Webex Teams API.webex-teams-apiPredefined part of # commonly used for Webex Teams API.webex-teams-apiKOne of PersonId, RoomId, MembershipId, MessageId, TeamId, TeamMembershipId.webex-teams-api-Authorization string against Webex Teams API.webex-teams-apiPredefined part of # commonly used for Webex Teams API.webex-teams-api$Identifier of a space to be deleted.webex-teams-api-Authorization string against Webex Teams API.webex-teams-apiPredefined part of # commonly used for Webex Teams API.webex-teams-api$Identifier of a space to be deleted.webex-teams-api-Authorization string against Webex Teams API.webex-teams-apiPredefined part of # commonly used for Webex Teams API.webex-teams-api$Identifier of a space to be deleted.webex-teams-api-Authorization string against Webex Teams API.webex-teams-apiPredefined part of # commonly used for Webex Teams API.webex-teams-api$Identifier of a space to be deleted.webex-teams-api-Authorization string against Webex Teams API.webex-teams-apiPredefined part of # commonly used for Webex Teams API.webex-teams-api$Identifier of a space to be deleted.D !"#&+.GHINOPQRSTUVWXYZ[\]^_`abcdefghijkl !"()*23456789:;<=>KLMUVWXYZ[\]^ijkstuvwxyz{ !"#$%&'()*+,-./0QRS[\]^_`abcdefghikjlz{|}~D&.+"# !GHIklijghefcdab_`WXQRSTUVNOPz{xystuvw !"#$%&/0-.+,)*'(QRScdefghikj[\]^_`ab !"()*23456789:;<=>KLM[\]UVWXYZijkz{|}~]^YZ[\l^NoneD !"#&+.GHINOPQRSTUVWXYZ[\]^_`abcdefghijkl !"()*23456789:;<=>KLMUVWXYZ[\]^ijkstuvwxyz{ !"#$%&'()*+,-./0QRS[\]^_`abcdefghikjlz{|}~None !"#$%&'()*+,-./0123456789:GHINOPQRSTUVWXYZ[\]^_`abcdefghijkl !"()*23456789:;<=>KLMUVWXYZ[\]^ijkstuvwxyz{ !"#$%&'()*+,-./0QRS[\]^_`abcdefghikjlmz{|}~ !"'()12345678>?@AIJKLMNOPQRSTUVWXYZ[\]^_{|} Safe      !"#$%%&'(())*+,-./0123456789:;<=>?@ABCDEFGHIJKLMMNOPQRSTUVWXYZ[\\]]^^__``aabbccddeeffghijklmnopqrstuvwxyz{|}~      !!"#$%&'()*++,-./01234567889:;<=>?@AABCDEFFGHIJKLMNOPQRSSTUVWXYZ[\]^__``aabcdefghijklmnopqrstuvwxxyz{|}~      !"#$%&&'()*+,-.//01234566789:;<;=>?@ABCDEFGHIJKKLMNOPPQRSTUVWXYZ[\]]^_`abcdeffghijkllmmnopqrstuvwxyz{|}}~         !"#$%&'()*+,-./0123456789:;;<=>?@ABCDEFGHIJKKLMNOPQQRSTUVWWXYZ[\]^_`aabcdeefghijklmnopqrstuvwxyz{|}~        -webex-teams-api-0.2.0.1-q6fXIzP74m9qzihYCvefhNetwork.WebexTeams.InternalNetwork.WebexTeams.TypesNetwork.WebexTeamsNetwork WebexTeamsNetwork.CiscoSpark.InternalNetwork.CiscoSparkNetwork.CiscoSpark.TypesPaths_webex_teams_api LinkHeader linkHeaderUrllinkHeaderParams LinkParamRelOther dropAndLowdQuote semicolon equalCharlessThan greaterThan skipSpacetoken quotedPair quotedString paramValue paramNameparam linkHeaderextractNextUrl getNextUrl validateUrl $fEqLinkParam$fShowLinkParam$fEqLinkHeader$fShowLinkHeader ErrorTitleerrorTitleCodeerrorTitleReason ErrorCode TimestampWebexTeamsUpdateWebexTeamsCreateWebexTeamsFilter toFilterListWebexTeamsDetailtoIdStrWebexTeamsResponse ToResponseWebexTeamsApiPathapiPathWebexTeamsListItemToListunwrap peoplePath roomsPathmembershipsPath messagesPath teamsPathteamMembershipsPathorganizationsPath licensesPath rolesPath webhooksPath $fEqTimestamp$fShowTimestamp$fGenericTimestamp$fToJSONTimestamp$fFromJSONTimestamp $fEqErrorCode$fShowErrorCode$fGenericErrorCode$fToJSONErrorCode$fFromJSONErrorCode$fEqErrorTitle$fShowErrorTitleErrors errorsTitle$fFromJSONErrorTitle$fToJSONErrorTitle $fEqErrors $fShowErrors PersonTypePersonTypePerson PersonTypeBot PersonStatusPersonStatusActivePersonStatusInactivePersonStatusOutOfOfficePersonStatusDoNotDisturbPersonStatusUnknownTimezone LicenseIdRoleIdOrganizationId AvatarUrlLastName FirstNameNickName DisplayNameEmailPersonId$fFromJSONErrors$fToJSONErrors$fFromJSONPersonStatus$fToJSONPersonStatus $fEqPersonId$fShowPersonId$fGenericPersonId$fToJSONPersonId$fFromJSONPersonId $fEqEmail $fShowEmail$fGenericEmail $fToJSONEmail$fFromJSONEmail$fEqDisplayName$fShowDisplayName$fGenericDisplayName$fToJSONDisplayName$fFromJSONDisplayName $fEqNickName$fShowNickName$fGenericNickName$fToJSONNickName$fFromJSONNickName $fEqFirstName$fShowFirstName$fGenericFirstName$fToJSONFirstName$fFromJSONFirstName $fEqLastName$fShowLastName$fGenericLastName$fToJSONLastName$fFromJSONLastName $fEqAvatarUrl$fShowAvatarUrl$fGenericAvatarUrl$fToJSONAvatarUrl$fFromJSONAvatarUrl$fEqOrganizationId$fShowOrganizationId$fGenericOrganizationId$fToJSONOrganizationId$fFromJSONOrganizationId $fEqRoleId $fShowRoleId$fGenericRoleId$fToJSONRoleId$fFromJSONRoleId $fEqLicenseId$fShowLicenseId$fGenericLicenseId$fToJSONLicenseId$fFromJSONLicenseId $fEqTimezone$fShowTimezone$fGenericTimezone$fToJSONTimezone$fFromJSONTimezone$fEqPersonStatus$fGenericPersonStatus$fShowPersonStatus$fEqPersonType$fShowPersonTypePersonpersonId personErrors personEmailspersonDisplayNamepersonNickNamepersonFirstNamepersonLastName personAvatar personOrgId personRolespersonLicenses personCreatedpersonTimezonepersonLastActivity personStatuspersonInvitePendingpersonLoginEnabled personType$fFromJSONPersonType$fToJSONPersonType $fEqPerson $fShowPerson PersonListpersonListItems$fWebexTeamsDetailPersonId$fWebexTeamsResponsePersonId$fWebexTeamsApiPathPersonId$fFromJSONPerson$fToJSONPerson$fEqPersonList$fShowPersonList CreatePersoncreatePersonEmailscreatePersonDisplayNamecreatePersonFirstNamecreatePersonLastNamecreatePersonAvatarcreatePersonOrgIdcreatePersonRolescreatePersonLicenses PersonFilterpersonFilterEmailpersonFilterDisplayNamepersonFilterOrgId$fWebexTeamsListItemPerson$fFromJSONPersonList$fToJSONPersonList$fWebexTeamsFilterPersonFilter $fWebexTeamsResponsePersonFilter$fWebexTeamsApiPathPersonFilter$fDefaultPersonFilter$fEqPersonFilter$fGenericPersonFilter$fShowPersonFilter$fEqCreatePerson$fShowCreatePerson UpdatePersonupdatePersonDisplayNameupdatePersonFirstNameupdatePersonLastNameupdatePersonAvatarupdatePersonOrgIdupdatePersonRolesupdatePersonLicenses$fWebexTeamsCreateCreatePerson $fWebexTeamsResponseCreatePerson$fWebexTeamsApiPathCreatePerson$fFromJSONCreatePerson$fToJSONCreatePerson$fEqUpdatePerson$fShowUpdatePersonTeamteamId teamErrorsteamName teamCreatorId teamCreatedTeamNameTeamId$fWebexTeamsUpdateUpdatePerson $fWebexTeamsResponseUpdatePerson$fWebexTeamsApiPathUpdatePerson$fFromJSONUpdatePerson$fToJSONUpdatePerson $fEqTeamId $fShowTeamId$fGenericTeamId$fToJSONTeamId$fFromJSONTeamId $fEqTeamName$fShowTeamName$fGenericTeamName$fToJSONTeamName$fFromJSONTeamName$fEqTeam $fShowTeamTeamList teamListItems$fWebexTeamsDetailTeamId$fWebexTeamsResponseTeamId$fWebexTeamsApiPathTeamId$fFromJSONTeam $fToJSONTeam $fEqTeamList$fShowTeamList CreateTeamcreateTeamName$fWebexTeamsListItemTeam$fFromJSONTeamList$fToJSONTeamList$fEqCreateTeam$fShowCreateTeam UpdateTeamupdateTeamName$fWebexTeamsCreateCreateTeam$fWebexTeamsResponseCreateTeam$fWebexTeamsApiPathCreateTeam$fFromJSONCreateTeam$fToJSONCreateTeam$fEqUpdateTeam$fShowUpdateTeamTeamMembershipteamMembershipIdteamMembershipErrorsteamMembershipTeamIdteamMembershipPersonIdteamMembershipPersonEmailteamMembershipPersonDisplayNameteamMembershipPersonOrgIdteamMembershipIsModeratorteamMembershipCreatedTeamMembershipId$fWebexTeamsUpdateUpdateTeam$fWebexTeamsResponseUpdateTeam$fWebexTeamsApiPathUpdateTeam$fFromJSONUpdateTeam$fToJSONUpdateTeam$fEqTeamMembershipId$fShowTeamMembershipId$fGenericTeamMembershipId$fToJSONTeamMembershipId$fFromJSONTeamMembershipId$fEqTeamMembership$fShowTeamMembershipTeamMembershipListteamMembershipListItems"$fWebexTeamsDetailTeamMembershipId$$fWebexTeamsResponseTeamMembershipId#$fWebexTeamsApiPathTeamMembershipId$fFromJSONTeamMembership$fToJSONTeamMembership$fEqTeamMembershipList$fShowTeamMembershipListCreateTeamMembershipcreateTeamMembershipTeamIdcreateTeamMembershipPersonIdcreateTeamMembershipPersonEmailcreateTeamMembershipIsModeratorTeamMembershipFilterteamMembershipFilterTeamIddefaultTeamMembershipFilter"$fWebexTeamsListItemTeamMembership$fFromJSONTeamMembershipList$fToJSONTeamMembershipList&$fWebexTeamsFilterTeamMembershipFilter($fWebexTeamsResponseTeamMembershipFilter'$fWebexTeamsApiPathTeamMembershipFilter$fEqTeamMembershipFilter$fShowTeamMembershipFilter$fEqCreateTeamMembership$fShowCreateTeamMembershipUpdateTeamMembershipupdateTeamMembershipIsModerator&$fWebexTeamsCreateCreateTeamMembership($fWebexTeamsResponseCreateTeamMembership'$fWebexTeamsApiPathCreateTeamMembership$fFromJSONCreateTeamMembership$fToJSONCreateTeamMembership$fEqUpdateTeamMembership$fShowUpdateTeamMembershipRoomTypeRoomTypeDirect RoomTypeGroupSipAddr RoomTitleRoomId&$fWebexTeamsUpdateUpdateTeamMembership($fWebexTeamsResponseUpdateTeamMembership'$fWebexTeamsApiPathUpdateTeamMembership$fFromJSONUpdateTeamMembership$fToJSONUpdateTeamMembership $fEqRoomId $fShowRoomId$fGenericRoomId$fToJSONRoomId$fFromJSONRoomId $fEqRoomTitle$fShowRoomTitle$fGenericRoomTitle$fToJSONRoomTitle$fFromJSONRoomTitle $fEqSipAddr $fShowSipAddr$fGenericSipAddr$fToJSONSipAddr$fFromJSONSipAddr $fEqRoomType$fShowRoomTypeRoomroomId roomErrors roomTitleroomType roomIsLockedroomSipAddressroomLastActivity roomTeamId roomCreatorId roomCreated$fFromJSONRoomType$fToJSONRoomType$fEqRoom $fShowRoomRoomList roomListItems$fWebexTeamsDetailRoomId$fWebexTeamsResponseRoomId$fWebexTeamsApiPathRoomId$fFromJSONRoom $fToJSONRoom $fEqRoomList$fShowRoomList CreateRoomcreateRoomTitlecreateRoomTeamId RoomFilterroomFilterTeamIdroomFilterRoomTyperoomFilterSortByRoomFilterSortByRoomFilterSortByIdRoomFilterSortByLastActivityRoomFilterSortByCreatedroomTypeToFilterStringroomFilterSortByToFilterString$fWebexTeamsListItemRoom$fFromJSONRoomList$fToJSONRoomList$fWebexTeamsFilterRoomFilter$fWebexTeamsResponseRoomFilter$fWebexTeamsApiPathRoomFilter$fEqRoomFilterSortBy$fShowRoomFilterSortBy$fDefaultRoomFilter$fEqRoomFilter$fGenericRoomFilter$fShowRoomFilter$fEqCreateRoom$fShowCreateRoom UpdateRoomupdateRoomTitle$fWebexTeamsCreateCreateRoom$fWebexTeamsResponseCreateRoom$fWebexTeamsApiPathCreateRoom$fFromJSONCreateRoom$fToJSONCreateRoom$fEqUpdateRoom$fShowUpdateRoom Membership membershipIdmembershipErrorsmembershipRoomIdmembershipPersonIdmembershipPersonEmailmembershipPersonDisplayNamemembershipPersonOrgIdmembershipIsModeratormembershipIsMonitormembershipCreated MembershipId$fWebexTeamsUpdateUpdateRoom$fWebexTeamsResponseUpdateRoom$fWebexTeamsApiPathUpdateRoom$fFromJSONUpdateRoom$fToJSONUpdateRoom$fEqMembershipId$fShowMembershipId$fGenericMembershipId$fToJSONMembershipId$fFromJSONMembershipId$fEqMembership$fShowMembershipMembershipListmembershipListItems$fWebexTeamsDetailMembershipId $fWebexTeamsResponseMembershipId$fWebexTeamsApiPathMembershipId$fFromJSONMembership$fToJSONMembership$fEqMembershipList$fShowMembershipListCreateMembershipcreateMembershipRoomIdcreateMembershipPersonIdcreateMembershipPersonEmailcreateMembershipIsModeratorMembershipFiltermembershipFilterRoomIdmembershipFilterPersonIdmembershipFilterPersonEmail$fWebexTeamsListItemMembership$fFromJSONMembershipList$fToJSONMembershipList"$fWebexTeamsFilterMembershipFilter$$fWebexTeamsResponseMembershipFilter#$fWebexTeamsApiPathMembershipFilter$fDefaultMembershipFilter$fEqMembershipFilter$fGenericMembershipFilter$fShowMembershipFilter$fEqCreateMembership$fShowCreateMembershipUpdateMembershipupdateMembershipIsModerator"$fWebexTeamsCreateCreateMembership$$fWebexTeamsResponseCreateMembership#$fWebexTeamsApiPathCreateMembership$fFromJSONCreateMembership$fToJSONCreateMembership$fEqUpdateMembership$fShowUpdateMembershipMessage messageId messageErrors messageRoomIdmessageRoomTypemessageToPersonIdmessageToPersonEmail messageText messageHtml messageFilesmessagePersonIdmessagePersonEmailmessageCreatedmessageMentionedPeopleFileUrlMessageMarkdown MessageHtml MessageText MessageId"$fWebexTeamsUpdateUpdateMembership$$fWebexTeamsResponseUpdateMembership#$fWebexTeamsApiPathUpdateMembership$fFromJSONUpdateMembership$fToJSONUpdateMembership $fEqMessageId$fShowMessageId$fGenericMessageId$fToJSONMessageId$fFromJSONMessageId$fEqMessageText$fShowMessageText$fGenericMessageText$fToJSONMessageText$fFromJSONMessageText$fEqMessageHtml$fShowMessageHtml$fGenericMessageHtml$fToJSONMessageHtml$fFromJSONMessageHtml$fEqMessageMarkdown$fShowMessageMarkdown$fGenericMessageMarkdown$fToJSONMessageMarkdown$fFromJSONMessageMarkdown $fEqFileUrl $fShowFileUrl$fGenericFileUrl$fToJSONFileUrl$fFromJSONFileUrl $fEqMessage $fShowMessage MessageListmessageListItems$fWebexTeamsDetailMessageId$fWebexTeamsResponseMessageId$fWebexTeamsApiPathMessageId$fFromJSONMessage$fToJSONMessage$fEqMessageList$fShowMessageList CreateMessagecreateMessageRoomIdcreateMessageToPersonIdcreateMessageToPersonEmailcreateMessageTextcreateMessageMarkdowncreateMessageFiles MessageFiltermessageFilterRoomIdmessageFilterMentionedPeoplemessageFilterBeforemessageFilterBeforeMessageMentionedPeopleMentionedPeopleMedefaultMessageFiltermentionedPeopleToFilterString$fWebexTeamsListItemMessage$fFromJSONMessageList$fToJSONMessageList$fWebexTeamsFilterMessageFilter!$fWebexTeamsResponseMessageFilter $fWebexTeamsApiPathMessageFilter$fEqMentionedPeople$fShowMentionedPeople$fEqMessageFilter$fShowMessageFilter$fEqCreateMessage$fShowCreateMessage OrganizationorganizationIdorganizationErrorsorganizationDisplayNameorganizationCreatedOrganizationDisplayName$fWebexTeamsCreateCreateMessage!$fWebexTeamsResponseCreateMessage $fWebexTeamsApiPathCreateMessage$fFromJSONCreateMessage$fToJSONCreateMessage$fEqOrganizationDisplayName$fShowOrganizationDisplayName $fGenericOrganizationDisplayName$fToJSONOrganizationDisplayName!$fFromJSONOrganizationDisplayName$fEqOrganization$fShowOrganizationOrganizationListorganizationListItems $fWebexTeamsDetailOrganizationId"$fWebexTeamsResponseOrganizationId!$fWebexTeamsApiPathOrganizationId$fFromJSONOrganization$fToJSONOrganization$fEqOrganizationList$fShowOrganizationListLicense licenseId licenseErrors licenseNamelicenseTotalUnitslicenseConsumedUnits LicenseUnit LicenseName $fWebexTeamsListItemOrganization$fFromJSONOrganizationList$fToJSONOrganizationList$fEqLicenseName$fShowLicenseName$fGenericLicenseName$fToJSONLicenseName$fFromJSONLicenseName$fEqLicenseUnit$fShowLicenseUnit$fGenericLicenseUnit$fToJSONLicenseUnit$fFromJSONLicenseUnit $fEqLicense $fShowLicense LicenseListlicenseListItems$fWebexTeamsDetailLicenseId$fWebexTeamsResponseLicenseId$fWebexTeamsApiPathLicenseId$fFromJSONLicense$fToJSONLicense$fEqLicenseList$fShowLicenseListRoleroleId roleErrorsroleNameRoleName LicenseFilterlicenseFilterOrgId$fWebexTeamsListItemLicense$fFromJSONLicenseList$fToJSONLicenseList$fWebexTeamsFilterLicenseFilter!$fWebexTeamsResponseLicenseFilter $fWebexTeamsApiPathLicenseFilter$fDefaultLicenseFilter$fEqLicenseFilter$fGenericLicenseFilter$fShowLicenseFilter $fEqRoleName$fShowRoleName$fGenericRoleName$fToJSONRoleName$fFromJSONRoleName$fEqRole $fShowRoleRoleList roleListItems$fWebexTeamsDetailRoleId$fWebexTeamsResponseRoleId$fWebexTeamsApiPathRoleId$fFromJSONRole $fToJSONRole $fEqRoleList$fShowRoleListWebhookResourceWebhookResourceAllWebhookResourceTeamsWebhookResourceMembershipsWebhookResourceMessagesWebhookResourceRooms WebhookSecret WebhookFilter WebhookUrl WebhookName WebhookId$fWebexTeamsListItemRole$fFromJSONRoleList$fToJSONRoleList $fEqWebhookId$fShowWebhookId$fGenericWebhookId$fToJSONWebhookId$fFromJSONWebhookId$fEqWebhookName$fShowWebhookName$fGenericWebhookName$fToJSONWebhookName$fFromJSONWebhookName$fEqWebhookUrl$fShowWebhookUrl$fGenericWebhookUrl$fToJSONWebhookUrl$fFromJSONWebhookUrl$fEqWebhookFilter$fShowWebhookFilter$fGenericWebhookFilter$fToJSONWebhookFilter$fFromJSONWebhookFilter$fEqWebhookSecret$fShowWebhookSecret$fGenericWebhookSecret$fToJSONWebhookSecret$fFromJSONWebhookSecret$fEqWebhookResource$fShowWebhookResource WebhookEventWebhookEventAllWebhookEventCreatedWebhookEventUpdatedWebhookEventDeleted$fFromJSONWebhookResource$fToJSONWebhookResource$fEqWebhookEvent$fShowWebhookEventWebhook webhookId webhookErrors webhookNamewebhookTargetUrlwebhookResource webhookEvent webhookFilter webhookSecretwebhookCreated$fFromJSONWebhookEvent$fToJSONWebhookEvent $fEqWebhook $fShowWebhook WebhookListwebhookListItems$fWebexTeamsDetailWebhookId$fWebexTeamsResponseWebhookId$fWebexTeamsApiPathWebhookId$fFromJSONWebhook$fToJSONWebhook$fEqWebhookList$fShowWebhookList CreateWebhookcreateWebhookNamecreateWebhookTargetUrlcreateWebhookResourcecreateWebhookEventcreateWebhookFiltercreateWebhookSecret$fWebexTeamsListItemWebhook$fFromJSONWebhookList$fToJSONWebhookList$fEqCreateWebhook$fShowCreateWebhook UpdateWebhookupdateWebhookNameupdateWebhookTargetUrl$fWebexTeamsCreateCreateWebhook!$fWebexTeamsResponseCreateWebhook $fWebexTeamsApiPathCreateWebhook$fFromJSONCreateWebhook$fToJSONCreateWebhook$fEqUpdateWebhook$fShowUpdateWebhookWebhookNotifyOwnedByWebhookNotifyOwnedByOrgWebhookNotifyOwnedByCreatorAppIdWebhookRoomFilterwebhookFilterRoomTypewebhookFilterRoomIsLockedWebhookMessageFilterwebhookFilterMessageRoomIdwebhookFilterMessageRoomTypewebhookFilterMessagePersonIdwebhookFilterMessagePersonEmail#webhookFilterMessagememtionedPeoplewebhookFilterMessageHasFilesWebhookMembershipFilterwebhookFilterMembershipRoomIdwebhookFilterMembershipPersonId"webhookFilterMembershipPersonEmail"webhookFilterMembershipIsModerator$fWebexTeamsUpdateUpdateWebhook!$fWebexTeamsResponseUpdateWebhook $fWebexTeamsApiPathUpdateWebhook$fFromJSONUpdateWebhook$fToJSONUpdateWebhook)$fWebexTeamsFilterWebhookMembershipFilter+$fWebexTeamsResponseWebhookMembershipFilter*$fWebexTeamsApiPathWebhookMembershipFilter&$fWebexTeamsFilterWebhookMessageFilter($fWebexTeamsResponseWebhookMessageFilter'$fWebexTeamsApiPathWebhookMessageFilter#$fWebexTeamsFilterWebhookRoomFilter%$fWebexTeamsResponseWebhookRoomFilter$$fWebexTeamsApiPathWebhookRoomFilter$fEqWebhookMembershipFilter$fShowWebhookMembershipFilter$fEqWebhookMessageFilter$fShowWebhookMessageFilter$fEqWebhookRoomFilter$fShowWebhookRoomFilter $fEqAppId $fShowAppId$fGenericAppId $fToJSONAppId$fFromJSONAppId$fEqWebhookNotifyOwnedBy$fShowWebhookNotifyOwnedByWebhookNotifyStatusWebhookNotifyStatusActiveWebhookNotifyStatusDesabled$fFromJSONWebhookNotifyOwnedBy$fToJSONWebhookNotifyOwnedBy$fEqWebhookNotifyStatus$fShowWebhookNotifyStatus WebhookNotifywebhookNotifyIdwebhookNotifyNamewebhookNotifyResourcewebhookNotifyEventwebhookNotifyFilterwebhookNotifyOrgIdwebhookNotifyCreatedBywebhookNotifyAppIdwebhookNotifyOwnedBywebhookNotifyStatuswebhookNotifyActorId$fFromJSONWebhookNotifyStatus$fToJSONWebhookNotifyStatus$fEqWebhookNotify$fShowWebhookNotifyWebhookNotifyMembershipwebhookNotifyMembershipData$fFromJSONWebhookNotify$fToJSONWebhookNotify$fEqWebhookNotifyMembership$fShowWebhookNotifyMembershipWebhookNotifyMessagewebhookNotifyMessageData!$fFromJSONWebhookNotifyMembership$fToJSONWebhookNotifyMembership$fEqWebhookNotifyMessage$fShowWebhookNotifyMessageWebhookNotifyRoomwebhookNotifyRoomData$fFromJSONWebhookNotifyMessage$fToJSONWebhookNotifyMessage$fEqWebhookNotifyRoom$fShowWebhookNotifyRoom$fFromJSONWebhookNotifyRoom$fToJSONWebhookNotifyRoom ListReaderCiscoSparkRequestWebexTeamsRequestwebexTeamsRequestRequestwebexTeamsRequestSchemewebexTeamsRequestAuthority AuthorizationstreamEntityWithFilterstreamTeamListstreamOrganizationListstreamRoleListgetListWithFilter getTeamListgetOrganizationList getRoleList getDetailgetDetailEither createEntitycreateEntityEither updateEntityupdateEntityEither deleteRoomdeleteMembership deleteMessage deleteTeamdeleteTeamMembership$fDefaultWebexTeamsRequest$fEqAuthorization$fShowAuthorization$fShowWebexTeamsRequestbaseGHC.BaseString$aeson-1.2.1.0-IUbMqe0bYbJFWArkz63xeWData.Aeson.Types.FromJSON parseJSONData.Aeson.Types.ToJSON toEncoding(http-client-0.7.1-G0XJOYTOpGVFGPViY80FKCNetwork.HTTP.Client.TypesRequestwebexTeamsBaseRequestaddAuthorizationHeadermakeCommonListReq streamListstreamListLoopgetList deleteEntitymakeCommonDetailReqmakeCommonDeleteReqversion getBinDir getLibDir getDynLibDir getDataDir getLibexecDir getSysconfDirgetDataFileName