telegram-api-0.6.2.0: src/Web/Telegram/API/Bot/API/Payments.hs
{-# LANGUAGE DataKinds #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE TypeOperators #-}
module Web.Telegram.API.Bot.API.Payments
( -- * Functions
sendInvoiceM
, answerShippingQueryM
, answerPreCheckoutQueryM
-- * API
, TelegramBotPaymentsAPI
, paymentsApi
-- * Types
) where
import Data.Proxy
import Servant.API
import Servant.Client
import Web.Telegram.API.Bot.API.Core
import Web.Telegram.API.Bot.Requests
import Web.Telegram.API.Bot.Responses
type TelegramBotPaymentsAPI =
TelegramToken :> "sendInvoice"
:> ReqBody '[JSON] SendInvoiceRequest
:> Post '[JSON] MessageResponse
:<|> TelegramToken :> "answerShippingQuery"
:> ReqBody '[JSON] AnswerShippingQueryRequest
:> Post '[JSON] AnswerShippingQueryResponse
:<|> TelegramToken :> "answerPreCheckoutQuery"
:> ReqBody '[JSON] AnswerPreCheckoutQueryRequest
:> Post '[JSON] AnswerPreCheckoutQueryResponse
paymentsApi :: Proxy TelegramBotPaymentsAPI
paymentsApi = Proxy
sendInvoice_ :: Token -> SendInvoiceRequest -> ClientM MessageResponse
answerShippingQuery_ :: Token -> AnswerShippingQueryRequest -> ClientM AnswerShippingQueryResponse
answerPreCheckoutQuery_ :: Token -> AnswerPreCheckoutQueryRequest -> ClientM AnswerPreCheckoutQueryResponse
sendInvoice_
:<|> answerShippingQuery_
:<|> answerPreCheckoutQuery_
= client paymentsApi
sendInvoiceM :: SendInvoiceRequest -> TelegramClient MessageResponse
sendInvoiceM = run_ sendInvoice_
answerShippingQueryM :: AnswerShippingQueryRequest -> TelegramClient AnswerShippingQueryResponse
answerShippingQueryM = run_ answerShippingQuery_
answerPreCheckoutQueryM :: AnswerPreCheckoutQueryRequest -> TelegramClient AnswerPreCheckoutQueryResponse
answerPreCheckoutQueryM = run_ answerPreCheckoutQuery_