{-# LANGUAGE ExplicitForAll #-}
{-# LANGUAGE MultiWayIf #-}
-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
{-# LANGUAGE OverloadedStrings #-}

-- | Contains the different functions to run the operation postAccountsAccount
module StripeAPI.Operations.PostAccountsAccount where

import qualified Control.Monad.Fail
import qualified Control.Monad.Trans.Reader
import qualified Data.Aeson
import qualified Data.Aeson as Data.Aeson.Encoding.Internal
import qualified Data.Aeson as Data.Aeson.Types
import qualified Data.Aeson as Data.Aeson.Types.FromJSON
import qualified Data.Aeson as Data.Aeson.Types.Internal
import qualified Data.Aeson as Data.Aeson.Types.ToJSON
import qualified Data.ByteString.Char8
import qualified Data.ByteString.Char8 as Data.ByteString.Internal
import qualified Data.Either
import qualified Data.Functor
import qualified Data.Scientific
import qualified Data.Text
import qualified Data.Text.Internal
import qualified Data.Time.Calendar as Data.Time.Calendar.Days
import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
import qualified Data.Vector
import qualified GHC.Base
import qualified GHC.Classes
import qualified GHC.Int
import qualified GHC.Show
import qualified GHC.Types
import qualified Network.HTTP.Client
import qualified Network.HTTP.Client as Network.HTTP.Client.Request
import qualified Network.HTTP.Client as Network.HTTP.Client.Types
import qualified Network.HTTP.Simple
import qualified Network.HTTP.Types
import qualified Network.HTTP.Types as Network.HTTP.Types.Status
import qualified Network.HTTP.Types as Network.HTTP.Types.URI
import qualified StripeAPI.Common
import StripeAPI.Types
import qualified Prelude as GHC.Integer.Type
import qualified Prelude as GHC.Maybe

-- | > POST /v1/accounts/{account}
--
-- \<p>Updates a \<a href=\"\/docs\/connect\/accounts\">connected account\<\/a> by setting the values of the parameters passed. Any parameters not provided are left unchanged. Most parameters can be changed only for Custom accounts. (These are marked \<strong>Custom Only\<\/strong> below.) Parameters marked \<strong>Custom and Express\<\/strong> are not supported for Standard accounts.\<\/p>
--
-- \<p>To update your own account, use the \<a href=\"https:\/\/dashboard.stripe.com\/account\">Dashboard\<\/a>. Refer to our \<a href=\"\/docs\/connect\/updating-accounts\">Connect\<\/a> documentation to learn more about updating accounts.\<\/p>
postAccountsAccount ::
  forall m.
  StripeAPI.Common.MonadHTTP m =>
  -- | account | Constraints: Maximum length of 5000
  Data.Text.Internal.Text ->
  -- | The request body to send
  GHC.Maybe.Maybe PostAccountsAccountRequestBody ->
  -- | Monadic computation which returns the result of the operation
  StripeAPI.Common.StripeT m (Network.HTTP.Client.Types.Response PostAccountsAccountResponse)
postAccountsAccount :: Text
-> Maybe PostAccountsAccountRequestBody
-> StripeT m (Response PostAccountsAccountResponse)
postAccountsAccount
  Text
account
  Maybe PostAccountsAccountRequestBody
body =
    (Response ByteString -> Response PostAccountsAccountResponse)
-> StripeT m (Response ByteString)
-> StripeT m (Response PostAccountsAccountResponse)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
GHC.Base.fmap
      ( \Response ByteString
response_0 ->
          (ByteString -> PostAccountsAccountResponse)
-> Response ByteString -> Response PostAccountsAccountResponse
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
GHC.Base.fmap
            ( (String -> PostAccountsAccountResponse)
-> (PostAccountsAccountResponse -> PostAccountsAccountResponse)
-> Either String PostAccountsAccountResponse
-> PostAccountsAccountResponse
forall a c b. (a -> c) -> (b -> c) -> Either a b -> c
Data.Either.either String -> PostAccountsAccountResponse
PostAccountsAccountResponseError PostAccountsAccountResponse -> PostAccountsAccountResponse
forall a. a -> a
GHC.Base.id
                (Either String PostAccountsAccountResponse
 -> PostAccountsAccountResponse)
-> (ByteString -> Either String PostAccountsAccountResponse)
-> ByteString
-> PostAccountsAccountResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
GHC.Base.. ( \Response ByteString
response ByteString
body ->
                               if
                                   | (\Status
status_1 -> Status -> Int
Network.HTTP.Types.Status.statusCode Status
status_1 Int -> Int -> Bool
forall a. Eq a => a -> a -> Bool
GHC.Classes.== Int
200) (Response ByteString -> Status
forall body. Response body -> Status
Network.HTTP.Client.Types.responseStatus Response ByteString
response) ->
                                     Account -> PostAccountsAccountResponse
PostAccountsAccountResponse200
                                       (Account -> PostAccountsAccountResponse)
-> Either String Account
-> Either String PostAccountsAccountResponse
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Data.Functor.<$> ( ByteString -> Either String Account
forall a. FromJSON a => ByteString -> Either String a
Data.Aeson.eitherDecodeStrict ByteString
body ::
                                                            Data.Either.Either
                                                              GHC.Base.String
                                                              Account
                                                        )
                                   | Bool -> Status -> Bool
forall a b. a -> b -> a
GHC.Base.const Bool
GHC.Types.True (Response ByteString -> Status
forall body. Response body -> Status
Network.HTTP.Client.Types.responseStatus Response ByteString
response) ->
                                     Error -> PostAccountsAccountResponse
PostAccountsAccountResponseDefault
                                       (Error -> PostAccountsAccountResponse)
-> Either String Error -> Either String PostAccountsAccountResponse
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Data.Functor.<$> ( ByteString -> Either String Error
forall a. FromJSON a => ByteString -> Either String a
Data.Aeson.eitherDecodeStrict ByteString
body ::
                                                            Data.Either.Either
                                                              GHC.Base.String
                                                              Error
                                                        )
                                   | Bool
GHC.Base.otherwise -> String -> Either String PostAccountsAccountResponse
forall a b. a -> Either a b
Data.Either.Left String
"Missing default response type"
                           )
                  Response ByteString
response_0
            )
            Response ByteString
response_0
      )
      (Text
-> Text
-> [QueryParameter]
-> Maybe PostAccountsAccountRequestBody
-> RequestBodyEncoding
-> StripeT m (Response ByteString)
forall (m :: * -> *) body.
(MonadHTTP m, ToJSON body) =>
Text
-> Text
-> [QueryParameter]
-> Maybe body
-> RequestBodyEncoding
-> StripeT m (Response ByteString)
StripeAPI.Common.doBodyCallWithConfigurationM (Text -> Text
Data.Text.toUpper (Text -> Text) -> Text -> Text
forall a b. (a -> b) -> a -> b
GHC.Base.$ String -> Text
Data.Text.pack String
"POST") (String -> Text
Data.Text.pack (String
"/v1/accounts/" String -> String -> String
forall a. [a] -> [a] -> [a]
GHC.Base.++ (ByteString -> String
Data.ByteString.Char8.unpack (Bool -> ByteString -> ByteString
Network.HTTP.Types.URI.urlEncode Bool
GHC.Types.True (ByteString -> ByteString) -> ByteString -> ByteString
forall a b. (a -> b) -> a -> b
GHC.Base.$ (String -> ByteString
Data.ByteString.Char8.pack (String -> ByteString) -> String -> ByteString
forall a b. (a -> b) -> a -> b
GHC.Base.$ Text -> String
forall a. StringifyModel a => a -> String
StripeAPI.Common.stringifyModel Text
account)) String -> String -> String
forall a. [a] -> [a] -> [a]
GHC.Base.++ String
""))) [QueryParameter]
forall a. Monoid a => a
GHC.Base.mempty Maybe PostAccountsAccountRequestBody
body RequestBodyEncoding
StripeAPI.Common.RequestBodyEncodingFormData)

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema@ in the specification.
data PostAccountsAccountRequestBody = PostAccountsAccountRequestBody
  { -- | account_token: An [account token](https:\/\/stripe.com\/docs\/api\#create_account_token), used to securely provide details to the account.
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBody -> Maybe Text
postAccountsAccountRequestBodyAccountToken :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | bank_account: Either a token, like the ones returned by [Stripe.js](https:\/\/stripe.com\/docs\/stripe.js), or a dictionary containing a user\'s bank account details.
    PostAccountsAccountRequestBody
-> Maybe PostAccountsAccountRequestBodyBankAccount'Variants
postAccountsAccountRequestBodyBankAccount :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyBankAccount'Variants),
    -- | business_profile: Business information about the account.
    PostAccountsAccountRequestBody
-> Maybe PostAccountsAccountRequestBodyBusinessProfile'
postAccountsAccountRequestBodyBusinessProfile :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyBusinessProfile'),
    -- | business_type: The business type.
    PostAccountsAccountRequestBody
-> Maybe PostAccountsAccountRequestBodyBusinessType'
postAccountsAccountRequestBodyBusinessType :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyBusinessType'),
    -- | capabilities: Each key of the dictionary represents a capability, and each capability maps to its settings (e.g. whether it has been requested or not). Each capability will be inactive until you have provided its specific requirements and Stripe has verified them. An account may have some of its requested capabilities be active and some be inactive.
    PostAccountsAccountRequestBody
-> Maybe PostAccountsAccountRequestBodyCapabilities'
postAccountsAccountRequestBodyCapabilities :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyCapabilities'),
    -- | company: Information about the company or business. This field is available for any \`business_type\`.
    PostAccountsAccountRequestBody
-> Maybe PostAccountsAccountRequestBodyCompany'
postAccountsAccountRequestBodyCompany :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyCompany'),
    -- | default_currency: Three-letter ISO currency code representing the default currency for the account. This must be a currency that [Stripe supports in the account\'s country](https:\/\/stripe.com\/docs\/payouts).
    PostAccountsAccountRequestBody -> Maybe Text
postAccountsAccountRequestBodyDefaultCurrency :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | documents: Documents that may be submitted to satisfy various informational requests.
    PostAccountsAccountRequestBody
-> Maybe PostAccountsAccountRequestBodyDocuments'
postAccountsAccountRequestBodyDocuments :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyDocuments'),
    -- | email: The email address of the account holder. This is only to make the account easier to identify to you. Stripe will never directly email Custom accounts.
    PostAccountsAccountRequestBody -> Maybe Text
postAccountsAccountRequestBodyEmail :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | expand: Specifies which fields in the response should be expanded.
    PostAccountsAccountRequestBody -> Maybe [Text]
postAccountsAccountRequestBodyExpand :: (GHC.Maybe.Maybe ([Data.Text.Internal.Text])),
    -- | external_account: A card or bank account to attach to the account for receiving [payouts](https:\/\/stripe.com\/docs\/connect\/bank-debit-card-payouts) (you won’t be able to use it for top-ups). You can provide either a token, like the ones returned by [Stripe.js](https:\/\/stripe.com\/docs\/stripe.js), or a dictionary, as documented in the \`external_account\` parameter for [bank account](https:\/\/stripe.com\/docs\/api\#account_create_bank_account) creation. \<br>\<br>By default, providing an external account sets it as the new default external account for its currency, and deletes the old default if one exists. To add additional external accounts without replacing the existing default for the currency, use the bank account or card creation API.
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBody -> Maybe Text
postAccountsAccountRequestBodyExternalAccount :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | individual: Information about the person represented by the account. This field is null unless \`business_type\` is set to \`individual\`.
    PostAccountsAccountRequestBody
-> Maybe PostAccountsAccountRequestBodyIndividual'
postAccountsAccountRequestBodyIndividual :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyIndividual'),
    -- | metadata: Set of [key-value pairs](https:\/\/stripe.com\/docs\/api\/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to \`metadata\`.
    PostAccountsAccountRequestBody
-> Maybe PostAccountsAccountRequestBodyMetadata'Variants
postAccountsAccountRequestBodyMetadata :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyMetadata'Variants),
    -- | settings: Options for customizing how the account functions within Stripe.
    PostAccountsAccountRequestBody
-> Maybe PostAccountsAccountRequestBodySettings'
postAccountsAccountRequestBodySettings :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodySettings'),
    -- | tos_acceptance: Details on the account\'s acceptance of the [Stripe Services Agreement](https:\/\/stripe.com\/docs\/connect\/updating-accounts\#tos-acceptance).
    PostAccountsAccountRequestBody
-> Maybe PostAccountsAccountRequestBodyTosAcceptance'
postAccountsAccountRequestBodyTosAcceptance :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyTosAcceptance')
  }
  deriving
    ( Int -> PostAccountsAccountRequestBody -> String -> String
[PostAccountsAccountRequestBody] -> String -> String
PostAccountsAccountRequestBody -> String
(Int -> PostAccountsAccountRequestBody -> String -> String)
-> (PostAccountsAccountRequestBody -> String)
-> ([PostAccountsAccountRequestBody] -> String -> String)
-> Show PostAccountsAccountRequestBody
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBody] -> String -> String
$cshowList :: [PostAccountsAccountRequestBody] -> String -> String
show :: PostAccountsAccountRequestBody -> String
$cshow :: PostAccountsAccountRequestBody -> String
showsPrec :: Int -> PostAccountsAccountRequestBody -> String -> String
$cshowsPrec :: Int -> PostAccountsAccountRequestBody -> String -> String
GHC.Show.Show,
      PostAccountsAccountRequestBody
-> PostAccountsAccountRequestBody -> Bool
(PostAccountsAccountRequestBody
 -> PostAccountsAccountRequestBody -> Bool)
-> (PostAccountsAccountRequestBody
    -> PostAccountsAccountRequestBody -> Bool)
-> Eq PostAccountsAccountRequestBody
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBody
-> PostAccountsAccountRequestBody -> Bool
$c/= :: PostAccountsAccountRequestBody
-> PostAccountsAccountRequestBody -> Bool
== :: PostAccountsAccountRequestBody
-> PostAccountsAccountRequestBody -> Bool
$c== :: PostAccountsAccountRequestBody
-> PostAccountsAccountRequestBody -> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBody where
  toJSON :: PostAccountsAccountRequestBody -> Value
toJSON PostAccountsAccountRequestBody
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"account_token" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBody -> Maybe Text
postAccountsAccountRequestBodyAccountToken PostAccountsAccountRequestBody
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"bank_account" Text
-> Maybe PostAccountsAccountRequestBodyBankAccount'Variants -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBody
-> Maybe PostAccountsAccountRequestBodyBankAccount'Variants
postAccountsAccountRequestBodyBankAccount PostAccountsAccountRequestBody
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"business_profile" Text
-> Maybe PostAccountsAccountRequestBodyBusinessProfile' -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBody
-> Maybe PostAccountsAccountRequestBodyBusinessProfile'
postAccountsAccountRequestBodyBusinessProfile PostAccountsAccountRequestBody
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"business_type" Text -> Maybe PostAccountsAccountRequestBodyBusinessType' -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBody
-> Maybe PostAccountsAccountRequestBodyBusinessType'
postAccountsAccountRequestBodyBusinessType PostAccountsAccountRequestBody
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"capabilities" Text -> Maybe PostAccountsAccountRequestBodyCapabilities' -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBody
-> Maybe PostAccountsAccountRequestBodyCapabilities'
postAccountsAccountRequestBodyCapabilities PostAccountsAccountRequestBody
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"company" Text -> Maybe PostAccountsAccountRequestBodyCompany' -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBody
-> Maybe PostAccountsAccountRequestBodyCompany'
postAccountsAccountRequestBodyCompany PostAccountsAccountRequestBody
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"default_currency" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBody -> Maybe Text
postAccountsAccountRequestBodyDefaultCurrency PostAccountsAccountRequestBody
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"documents" Text -> Maybe PostAccountsAccountRequestBodyDocuments' -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBody
-> Maybe PostAccountsAccountRequestBodyDocuments'
postAccountsAccountRequestBodyDocuments PostAccountsAccountRequestBody
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"email" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBody -> Maybe Text
postAccountsAccountRequestBodyEmail PostAccountsAccountRequestBody
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"expand" Text -> Maybe [Text] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBody -> Maybe [Text]
postAccountsAccountRequestBodyExpand PostAccountsAccountRequestBody
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"external_account" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBody -> Maybe Text
postAccountsAccountRequestBodyExternalAccount PostAccountsAccountRequestBody
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"individual" Text -> Maybe PostAccountsAccountRequestBodyIndividual' -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBody
-> Maybe PostAccountsAccountRequestBodyIndividual'
postAccountsAccountRequestBodyIndividual PostAccountsAccountRequestBody
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"metadata" Text
-> Maybe PostAccountsAccountRequestBodyMetadata'Variants -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBody
-> Maybe PostAccountsAccountRequestBodyMetadata'Variants
postAccountsAccountRequestBodyMetadata PostAccountsAccountRequestBody
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"settings" Text -> Maybe PostAccountsAccountRequestBodySettings' -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBody
-> Maybe PostAccountsAccountRequestBodySettings'
postAccountsAccountRequestBodySettings PostAccountsAccountRequestBody
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"tos_acceptance" Text -> Maybe PostAccountsAccountRequestBodyTosAcceptance' -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBody
-> Maybe PostAccountsAccountRequestBodyTosAcceptance'
postAccountsAccountRequestBodyTosAcceptance PostAccountsAccountRequestBody
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBody -> Encoding
toEncoding PostAccountsAccountRequestBody
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs ((Text
"account_token" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBody -> Maybe Text
postAccountsAccountRequestBodyAccountToken PostAccountsAccountRequestBody
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"bank_account" Text
-> Maybe PostAccountsAccountRequestBodyBankAccount'Variants
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBody
-> Maybe PostAccountsAccountRequestBodyBankAccount'Variants
postAccountsAccountRequestBodyBankAccount PostAccountsAccountRequestBody
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"business_profile" Text
-> Maybe PostAccountsAccountRequestBodyBusinessProfile' -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBody
-> Maybe PostAccountsAccountRequestBodyBusinessProfile'
postAccountsAccountRequestBodyBusinessProfile PostAccountsAccountRequestBody
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"business_type" Text -> Maybe PostAccountsAccountRequestBodyBusinessType' -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBody
-> Maybe PostAccountsAccountRequestBodyBusinessType'
postAccountsAccountRequestBodyBusinessType PostAccountsAccountRequestBody
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"capabilities" Text -> Maybe PostAccountsAccountRequestBodyCapabilities' -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBody
-> Maybe PostAccountsAccountRequestBodyCapabilities'
postAccountsAccountRequestBodyCapabilities PostAccountsAccountRequestBody
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"company" Text -> Maybe PostAccountsAccountRequestBodyCompany' -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBody
-> Maybe PostAccountsAccountRequestBodyCompany'
postAccountsAccountRequestBodyCompany PostAccountsAccountRequestBody
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"default_currency" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBody -> Maybe Text
postAccountsAccountRequestBodyDefaultCurrency PostAccountsAccountRequestBody
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"documents" Text -> Maybe PostAccountsAccountRequestBodyDocuments' -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBody
-> Maybe PostAccountsAccountRequestBodyDocuments'
postAccountsAccountRequestBodyDocuments PostAccountsAccountRequestBody
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"email" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBody -> Maybe Text
postAccountsAccountRequestBodyEmail PostAccountsAccountRequestBody
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"expand" Text -> Maybe [Text] -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBody -> Maybe [Text]
postAccountsAccountRequestBodyExpand PostAccountsAccountRequestBody
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"external_account" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBody -> Maybe Text
postAccountsAccountRequestBodyExternalAccount PostAccountsAccountRequestBody
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"individual" Text -> Maybe PostAccountsAccountRequestBodyIndividual' -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBody
-> Maybe PostAccountsAccountRequestBodyIndividual'
postAccountsAccountRequestBodyIndividual PostAccountsAccountRequestBody
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"metadata" Text
-> Maybe PostAccountsAccountRequestBodyMetadata'Variants -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBody
-> Maybe PostAccountsAccountRequestBodyMetadata'Variants
postAccountsAccountRequestBodyMetadata PostAccountsAccountRequestBody
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"settings" Text -> Maybe PostAccountsAccountRequestBodySettings' -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBody
-> Maybe PostAccountsAccountRequestBodySettings'
postAccountsAccountRequestBodySettings PostAccountsAccountRequestBody
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> (Text
"tos_acceptance" Text
-> Maybe PostAccountsAccountRequestBodyTosAcceptance' -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBody
-> Maybe PostAccountsAccountRequestBodyTosAcceptance'
postAccountsAccountRequestBodyTosAcceptance PostAccountsAccountRequestBody
obj)))))))))))))))

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBody where
  parseJSON :: Value -> Parser PostAccountsAccountRequestBody
parseJSON = String
-> (Object -> Parser PostAccountsAccountRequestBody)
-> Value
-> Parser PostAccountsAccountRequestBody
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBody" (\Object
obj -> (((((((((((((((Maybe Text
 -> Maybe PostAccountsAccountRequestBodyBankAccount'Variants
 -> Maybe PostAccountsAccountRequestBodyBusinessProfile'
 -> Maybe PostAccountsAccountRequestBodyBusinessType'
 -> Maybe PostAccountsAccountRequestBodyCapabilities'
 -> Maybe PostAccountsAccountRequestBodyCompany'
 -> Maybe Text
 -> Maybe PostAccountsAccountRequestBodyDocuments'
 -> Maybe Text
 -> Maybe [Text]
 -> Maybe Text
 -> Maybe PostAccountsAccountRequestBodyIndividual'
 -> Maybe PostAccountsAccountRequestBodyMetadata'Variants
 -> Maybe PostAccountsAccountRequestBodySettings'
 -> Maybe PostAccountsAccountRequestBodyTosAcceptance'
 -> PostAccountsAccountRequestBody)
-> Parser
     (Maybe Text
      -> Maybe PostAccountsAccountRequestBodyBankAccount'Variants
      -> Maybe PostAccountsAccountRequestBodyBusinessProfile'
      -> Maybe PostAccountsAccountRequestBodyBusinessType'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'
      -> Maybe PostAccountsAccountRequestBodyCompany'
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyDocuments'
      -> Maybe Text
      -> Maybe [Text]
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyIndividual'
      -> Maybe PostAccountsAccountRequestBodyMetadata'Variants
      -> Maybe PostAccountsAccountRequestBodySettings'
      -> Maybe PostAccountsAccountRequestBodyTosAcceptance'
      -> PostAccountsAccountRequestBody)
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe Text
-> Maybe PostAccountsAccountRequestBodyBankAccount'Variants
-> Maybe PostAccountsAccountRequestBodyBusinessProfile'
-> Maybe PostAccountsAccountRequestBodyBusinessType'
-> Maybe PostAccountsAccountRequestBodyCapabilities'
-> Maybe PostAccountsAccountRequestBodyCompany'
-> Maybe Text
-> Maybe PostAccountsAccountRequestBodyDocuments'
-> Maybe Text
-> Maybe [Text]
-> Maybe Text
-> Maybe PostAccountsAccountRequestBodyIndividual'
-> Maybe PostAccountsAccountRequestBodyMetadata'Variants
-> Maybe PostAccountsAccountRequestBodySettings'
-> Maybe PostAccountsAccountRequestBodyTosAcceptance'
-> PostAccountsAccountRequestBody
PostAccountsAccountRequestBody Parser
  (Maybe Text
   -> Maybe PostAccountsAccountRequestBodyBankAccount'Variants
   -> Maybe PostAccountsAccountRequestBodyBusinessProfile'
   -> Maybe PostAccountsAccountRequestBodyBusinessType'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'
   -> Maybe PostAccountsAccountRequestBodyCompany'
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyDocuments'
   -> Maybe Text
   -> Maybe [Text]
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyIndividual'
   -> Maybe PostAccountsAccountRequestBodyMetadata'Variants
   -> Maybe PostAccountsAccountRequestBodySettings'
   -> Maybe PostAccountsAccountRequestBodyTosAcceptance'
   -> PostAccountsAccountRequestBody)
-> Parser (Maybe Text)
-> Parser
     (Maybe PostAccountsAccountRequestBodyBankAccount'Variants
      -> Maybe PostAccountsAccountRequestBodyBusinessProfile'
      -> Maybe PostAccountsAccountRequestBodyBusinessType'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'
      -> Maybe PostAccountsAccountRequestBodyCompany'
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyDocuments'
      -> Maybe Text
      -> Maybe [Text]
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyIndividual'
      -> Maybe PostAccountsAccountRequestBodyMetadata'Variants
      -> Maybe PostAccountsAccountRequestBodySettings'
      -> Maybe PostAccountsAccountRequestBodyTosAcceptance'
      -> PostAccountsAccountRequestBody)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"account_token")) Parser
  (Maybe PostAccountsAccountRequestBodyBankAccount'Variants
   -> Maybe PostAccountsAccountRequestBodyBusinessProfile'
   -> Maybe PostAccountsAccountRequestBodyBusinessType'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'
   -> Maybe PostAccountsAccountRequestBodyCompany'
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyDocuments'
   -> Maybe Text
   -> Maybe [Text]
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyIndividual'
   -> Maybe PostAccountsAccountRequestBodyMetadata'Variants
   -> Maybe PostAccountsAccountRequestBodySettings'
   -> Maybe PostAccountsAccountRequestBodyTosAcceptance'
   -> PostAccountsAccountRequestBody)
-> Parser
     (Maybe PostAccountsAccountRequestBodyBankAccount'Variants)
-> Parser
     (Maybe PostAccountsAccountRequestBodyBusinessProfile'
      -> Maybe PostAccountsAccountRequestBodyBusinessType'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'
      -> Maybe PostAccountsAccountRequestBodyCompany'
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyDocuments'
      -> Maybe Text
      -> Maybe [Text]
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyIndividual'
      -> Maybe PostAccountsAccountRequestBodyMetadata'Variants
      -> Maybe PostAccountsAccountRequestBodySettings'
      -> Maybe PostAccountsAccountRequestBodyTosAcceptance'
      -> PostAccountsAccountRequestBody)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe PostAccountsAccountRequestBodyBankAccount'Variants)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"bank_account")) Parser
  (Maybe PostAccountsAccountRequestBodyBusinessProfile'
   -> Maybe PostAccountsAccountRequestBodyBusinessType'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'
   -> Maybe PostAccountsAccountRequestBodyCompany'
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyDocuments'
   -> Maybe Text
   -> Maybe [Text]
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyIndividual'
   -> Maybe PostAccountsAccountRequestBodyMetadata'Variants
   -> Maybe PostAccountsAccountRequestBodySettings'
   -> Maybe PostAccountsAccountRequestBodyTosAcceptance'
   -> PostAccountsAccountRequestBody)
-> Parser (Maybe PostAccountsAccountRequestBodyBusinessProfile')
-> Parser
     (Maybe PostAccountsAccountRequestBodyBusinessType'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'
      -> Maybe PostAccountsAccountRequestBodyCompany'
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyDocuments'
      -> Maybe Text
      -> Maybe [Text]
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyIndividual'
      -> Maybe PostAccountsAccountRequestBodyMetadata'Variants
      -> Maybe PostAccountsAccountRequestBodySettings'
      -> Maybe PostAccountsAccountRequestBodyTosAcceptance'
      -> PostAccountsAccountRequestBody)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser (Maybe PostAccountsAccountRequestBodyBusinessProfile')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"business_profile")) Parser
  (Maybe PostAccountsAccountRequestBodyBusinessType'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'
   -> Maybe PostAccountsAccountRequestBodyCompany'
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyDocuments'
   -> Maybe Text
   -> Maybe [Text]
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyIndividual'
   -> Maybe PostAccountsAccountRequestBodyMetadata'Variants
   -> Maybe PostAccountsAccountRequestBodySettings'
   -> Maybe PostAccountsAccountRequestBodyTosAcceptance'
   -> PostAccountsAccountRequestBody)
-> Parser (Maybe PostAccountsAccountRequestBodyBusinessType')
-> Parser
     (Maybe PostAccountsAccountRequestBodyCapabilities'
      -> Maybe PostAccountsAccountRequestBodyCompany'
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyDocuments'
      -> Maybe Text
      -> Maybe [Text]
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyIndividual'
      -> Maybe PostAccountsAccountRequestBodyMetadata'Variants
      -> Maybe PostAccountsAccountRequestBodySettings'
      -> Maybe PostAccountsAccountRequestBodyTosAcceptance'
      -> PostAccountsAccountRequestBody)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser (Maybe PostAccountsAccountRequestBodyBusinessType')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"business_type")) Parser
  (Maybe PostAccountsAccountRequestBodyCapabilities'
   -> Maybe PostAccountsAccountRequestBodyCompany'
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyDocuments'
   -> Maybe Text
   -> Maybe [Text]
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyIndividual'
   -> Maybe PostAccountsAccountRequestBodyMetadata'Variants
   -> Maybe PostAccountsAccountRequestBodySettings'
   -> Maybe PostAccountsAccountRequestBodyTosAcceptance'
   -> PostAccountsAccountRequestBody)
-> Parser (Maybe PostAccountsAccountRequestBodyCapabilities')
-> Parser
     (Maybe PostAccountsAccountRequestBodyCompany'
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyDocuments'
      -> Maybe Text
      -> Maybe [Text]
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyIndividual'
      -> Maybe PostAccountsAccountRequestBodyMetadata'Variants
      -> Maybe PostAccountsAccountRequestBodySettings'
      -> Maybe PostAccountsAccountRequestBodyTosAcceptance'
      -> PostAccountsAccountRequestBody)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser (Maybe PostAccountsAccountRequestBodyCapabilities')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"capabilities")) Parser
  (Maybe PostAccountsAccountRequestBodyCompany'
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyDocuments'
   -> Maybe Text
   -> Maybe [Text]
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyIndividual'
   -> Maybe PostAccountsAccountRequestBodyMetadata'Variants
   -> Maybe PostAccountsAccountRequestBodySettings'
   -> Maybe PostAccountsAccountRequestBodyTosAcceptance'
   -> PostAccountsAccountRequestBody)
-> Parser (Maybe PostAccountsAccountRequestBodyCompany')
-> Parser
     (Maybe Text
      -> Maybe PostAccountsAccountRequestBodyDocuments'
      -> Maybe Text
      -> Maybe [Text]
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyIndividual'
      -> Maybe PostAccountsAccountRequestBodyMetadata'Variants
      -> Maybe PostAccountsAccountRequestBodySettings'
      -> Maybe PostAccountsAccountRequestBodyTosAcceptance'
      -> PostAccountsAccountRequestBody)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text -> Parser (Maybe PostAccountsAccountRequestBodyCompany')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"company")) Parser
  (Maybe Text
   -> Maybe PostAccountsAccountRequestBodyDocuments'
   -> Maybe Text
   -> Maybe [Text]
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyIndividual'
   -> Maybe PostAccountsAccountRequestBodyMetadata'Variants
   -> Maybe PostAccountsAccountRequestBodySettings'
   -> Maybe PostAccountsAccountRequestBodyTosAcceptance'
   -> PostAccountsAccountRequestBody)
-> Parser (Maybe Text)
-> Parser
     (Maybe PostAccountsAccountRequestBodyDocuments'
      -> Maybe Text
      -> Maybe [Text]
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyIndividual'
      -> Maybe PostAccountsAccountRequestBodyMetadata'Variants
      -> Maybe PostAccountsAccountRequestBodySettings'
      -> Maybe PostAccountsAccountRequestBodyTosAcceptance'
      -> PostAccountsAccountRequestBody)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"default_currency")) Parser
  (Maybe PostAccountsAccountRequestBodyDocuments'
   -> Maybe Text
   -> Maybe [Text]
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyIndividual'
   -> Maybe PostAccountsAccountRequestBodyMetadata'Variants
   -> Maybe PostAccountsAccountRequestBodySettings'
   -> Maybe PostAccountsAccountRequestBodyTosAcceptance'
   -> PostAccountsAccountRequestBody)
-> Parser (Maybe PostAccountsAccountRequestBodyDocuments')
-> Parser
     (Maybe Text
      -> Maybe [Text]
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyIndividual'
      -> Maybe PostAccountsAccountRequestBodyMetadata'Variants
      -> Maybe PostAccountsAccountRequestBodySettings'
      -> Maybe PostAccountsAccountRequestBodyTosAcceptance'
      -> PostAccountsAccountRequestBody)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text -> Parser (Maybe PostAccountsAccountRequestBodyDocuments')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"documents")) Parser
  (Maybe Text
   -> Maybe [Text]
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyIndividual'
   -> Maybe PostAccountsAccountRequestBodyMetadata'Variants
   -> Maybe PostAccountsAccountRequestBodySettings'
   -> Maybe PostAccountsAccountRequestBodyTosAcceptance'
   -> PostAccountsAccountRequestBody)
-> Parser (Maybe Text)
-> Parser
     (Maybe [Text]
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyIndividual'
      -> Maybe PostAccountsAccountRequestBodyMetadata'Variants
      -> Maybe PostAccountsAccountRequestBodySettings'
      -> Maybe PostAccountsAccountRequestBodyTosAcceptance'
      -> PostAccountsAccountRequestBody)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"email")) Parser
  (Maybe [Text]
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyIndividual'
   -> Maybe PostAccountsAccountRequestBodyMetadata'Variants
   -> Maybe PostAccountsAccountRequestBodySettings'
   -> Maybe PostAccountsAccountRequestBodyTosAcceptance'
   -> PostAccountsAccountRequestBody)
-> Parser (Maybe [Text])
-> Parser
     (Maybe Text
      -> Maybe PostAccountsAccountRequestBodyIndividual'
      -> Maybe PostAccountsAccountRequestBodyMetadata'Variants
      -> Maybe PostAccountsAccountRequestBodySettings'
      -> Maybe PostAccountsAccountRequestBodyTosAcceptance'
      -> PostAccountsAccountRequestBody)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe [Text])
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"expand")) Parser
  (Maybe Text
   -> Maybe PostAccountsAccountRequestBodyIndividual'
   -> Maybe PostAccountsAccountRequestBodyMetadata'Variants
   -> Maybe PostAccountsAccountRequestBodySettings'
   -> Maybe PostAccountsAccountRequestBodyTosAcceptance'
   -> PostAccountsAccountRequestBody)
-> Parser (Maybe Text)
-> Parser
     (Maybe PostAccountsAccountRequestBodyIndividual'
      -> Maybe PostAccountsAccountRequestBodyMetadata'Variants
      -> Maybe PostAccountsAccountRequestBodySettings'
      -> Maybe PostAccountsAccountRequestBodyTosAcceptance'
      -> PostAccountsAccountRequestBody)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"external_account")) Parser
  (Maybe PostAccountsAccountRequestBodyIndividual'
   -> Maybe PostAccountsAccountRequestBodyMetadata'Variants
   -> Maybe PostAccountsAccountRequestBodySettings'
   -> Maybe PostAccountsAccountRequestBodyTosAcceptance'
   -> PostAccountsAccountRequestBody)
-> Parser (Maybe PostAccountsAccountRequestBodyIndividual')
-> Parser
     (Maybe PostAccountsAccountRequestBodyMetadata'Variants
      -> Maybe PostAccountsAccountRequestBodySettings'
      -> Maybe PostAccountsAccountRequestBodyTosAcceptance'
      -> PostAccountsAccountRequestBody)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text -> Parser (Maybe PostAccountsAccountRequestBodyIndividual')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"individual")) Parser
  (Maybe PostAccountsAccountRequestBodyMetadata'Variants
   -> Maybe PostAccountsAccountRequestBodySettings'
   -> Maybe PostAccountsAccountRequestBodyTosAcceptance'
   -> PostAccountsAccountRequestBody)
-> Parser (Maybe PostAccountsAccountRequestBodyMetadata'Variants)
-> Parser
     (Maybe PostAccountsAccountRequestBodySettings'
      -> Maybe PostAccountsAccountRequestBodyTosAcceptance'
      -> PostAccountsAccountRequestBody)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser (Maybe PostAccountsAccountRequestBodyMetadata'Variants)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"metadata")) Parser
  (Maybe PostAccountsAccountRequestBodySettings'
   -> Maybe PostAccountsAccountRequestBodyTosAcceptance'
   -> PostAccountsAccountRequestBody)
-> Parser (Maybe PostAccountsAccountRequestBodySettings')
-> Parser
     (Maybe PostAccountsAccountRequestBodyTosAcceptance'
      -> PostAccountsAccountRequestBody)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text -> Parser (Maybe PostAccountsAccountRequestBodySettings')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"settings")) Parser
  (Maybe PostAccountsAccountRequestBodyTosAcceptance'
   -> PostAccountsAccountRequestBody)
-> Parser (Maybe PostAccountsAccountRequestBodyTosAcceptance')
-> Parser PostAccountsAccountRequestBody
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser (Maybe PostAccountsAccountRequestBodyTosAcceptance')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"tos_acceptance"))

-- | Create a new 'PostAccountsAccountRequestBody' with all required fields.
mkPostAccountsAccountRequestBody :: PostAccountsAccountRequestBody
mkPostAccountsAccountRequestBody :: PostAccountsAccountRequestBody
mkPostAccountsAccountRequestBody =
  PostAccountsAccountRequestBody :: Maybe Text
-> Maybe PostAccountsAccountRequestBodyBankAccount'Variants
-> Maybe PostAccountsAccountRequestBodyBusinessProfile'
-> Maybe PostAccountsAccountRequestBodyBusinessType'
-> Maybe PostAccountsAccountRequestBodyCapabilities'
-> Maybe PostAccountsAccountRequestBodyCompany'
-> Maybe Text
-> Maybe PostAccountsAccountRequestBodyDocuments'
-> Maybe Text
-> Maybe [Text]
-> Maybe Text
-> Maybe PostAccountsAccountRequestBodyIndividual'
-> Maybe PostAccountsAccountRequestBodyMetadata'Variants
-> Maybe PostAccountsAccountRequestBodySettings'
-> Maybe PostAccountsAccountRequestBodyTosAcceptance'
-> PostAccountsAccountRequestBody
PostAccountsAccountRequestBody
    { postAccountsAccountRequestBodyAccountToken :: Maybe Text
postAccountsAccountRequestBodyAccountToken = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyBankAccount :: Maybe PostAccountsAccountRequestBodyBankAccount'Variants
postAccountsAccountRequestBodyBankAccount = Maybe PostAccountsAccountRequestBodyBankAccount'Variants
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyBusinessProfile :: Maybe PostAccountsAccountRequestBodyBusinessProfile'
postAccountsAccountRequestBodyBusinessProfile = Maybe PostAccountsAccountRequestBodyBusinessProfile'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyBusinessType :: Maybe PostAccountsAccountRequestBodyBusinessType'
postAccountsAccountRequestBodyBusinessType = Maybe PostAccountsAccountRequestBodyBusinessType'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCapabilities :: Maybe PostAccountsAccountRequestBodyCapabilities'
postAccountsAccountRequestBodyCapabilities = Maybe PostAccountsAccountRequestBodyCapabilities'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCompany :: Maybe PostAccountsAccountRequestBodyCompany'
postAccountsAccountRequestBodyCompany = Maybe PostAccountsAccountRequestBodyCompany'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyDefaultCurrency :: Maybe Text
postAccountsAccountRequestBodyDefaultCurrency = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyDocuments :: Maybe PostAccountsAccountRequestBodyDocuments'
postAccountsAccountRequestBodyDocuments = Maybe PostAccountsAccountRequestBodyDocuments'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyEmail :: Maybe Text
postAccountsAccountRequestBodyEmail = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyExpand :: Maybe [Text]
postAccountsAccountRequestBodyExpand = Maybe [Text]
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyExternalAccount :: Maybe Text
postAccountsAccountRequestBodyExternalAccount = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyIndividual :: Maybe PostAccountsAccountRequestBodyIndividual'
postAccountsAccountRequestBodyIndividual = Maybe PostAccountsAccountRequestBodyIndividual'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyMetadata :: Maybe PostAccountsAccountRequestBodyMetadata'Variants
postAccountsAccountRequestBodyMetadata = Maybe PostAccountsAccountRequestBodyMetadata'Variants
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodySettings :: Maybe PostAccountsAccountRequestBodySettings'
postAccountsAccountRequestBodySettings = Maybe PostAccountsAccountRequestBodySettings'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyTosAcceptance :: Maybe PostAccountsAccountRequestBodyTosAcceptance'
postAccountsAccountRequestBodyTosAcceptance = Maybe PostAccountsAccountRequestBodyTosAcceptance'
forall a. Maybe a
GHC.Maybe.Nothing
    }

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.bank_account.anyOf@ in the specification.
data PostAccountsAccountRequestBodyBankAccount'OneOf1 = PostAccountsAccountRequestBodyBankAccount'OneOf1
  { -- | account_holder_name
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyBankAccount'OneOf1 -> Maybe Text
postAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderName :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | account_holder_type
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyBankAccount'OneOf1
-> Maybe
     PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
postAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'),
    -- | account_number
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyBankAccount'OneOf1 -> Text
postAccountsAccountRequestBodyBankAccount'OneOf1AccountNumber :: Data.Text.Internal.Text,
    -- | country
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyBankAccount'OneOf1 -> Text
postAccountsAccountRequestBodyBankAccount'OneOf1Country :: Data.Text.Internal.Text,
    -- | currency
    PostAccountsAccountRequestBodyBankAccount'OneOf1 -> Maybe Text
postAccountsAccountRequestBodyBankAccount'OneOf1Currency :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | routing_number
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyBankAccount'OneOf1 -> Maybe Text
postAccountsAccountRequestBodyBankAccount'OneOf1RoutingNumber :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodyBankAccount'OneOf1
-> String
-> String
[PostAccountsAccountRequestBodyBankAccount'OneOf1]
-> String -> String
PostAccountsAccountRequestBodyBankAccount'OneOf1 -> String
(Int
 -> PostAccountsAccountRequestBodyBankAccount'OneOf1
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyBankAccount'OneOf1 -> String)
-> ([PostAccountsAccountRequestBodyBankAccount'OneOf1]
    -> String -> String)
-> Show PostAccountsAccountRequestBodyBankAccount'OneOf1
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyBankAccount'OneOf1]
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyBankAccount'OneOf1]
-> String -> String
show :: PostAccountsAccountRequestBodyBankAccount'OneOf1 -> String
$cshow :: PostAccountsAccountRequestBodyBankAccount'OneOf1 -> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyBankAccount'OneOf1
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyBankAccount'OneOf1
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyBankAccount'OneOf1
-> PostAccountsAccountRequestBodyBankAccount'OneOf1 -> Bool
(PostAccountsAccountRequestBodyBankAccount'OneOf1
 -> PostAccountsAccountRequestBodyBankAccount'OneOf1 -> Bool)
-> (PostAccountsAccountRequestBodyBankAccount'OneOf1
    -> PostAccountsAccountRequestBodyBankAccount'OneOf1 -> Bool)
-> Eq PostAccountsAccountRequestBodyBankAccount'OneOf1
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyBankAccount'OneOf1
-> PostAccountsAccountRequestBodyBankAccount'OneOf1 -> Bool
$c/= :: PostAccountsAccountRequestBodyBankAccount'OneOf1
-> PostAccountsAccountRequestBodyBankAccount'OneOf1 -> Bool
== :: PostAccountsAccountRequestBodyBankAccount'OneOf1
-> PostAccountsAccountRequestBodyBankAccount'OneOf1 -> Bool
$c== :: PostAccountsAccountRequestBodyBankAccount'OneOf1
-> PostAccountsAccountRequestBodyBankAccount'OneOf1 -> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyBankAccount'OneOf1 where
  toJSON :: PostAccountsAccountRequestBodyBankAccount'OneOf1 -> Value
toJSON PostAccountsAccountRequestBodyBankAccount'OneOf1
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"account_holder_name" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyBankAccount'OneOf1 -> Maybe Text
postAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderName PostAccountsAccountRequestBodyBankAccount'OneOf1
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"account_holder_type" Text
-> Maybe
     PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyBankAccount'OneOf1
-> Maybe
     PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
postAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType PostAccountsAccountRequestBodyBankAccount'OneOf1
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"account_number" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyBankAccount'OneOf1 -> Text
postAccountsAccountRequestBodyBankAccount'OneOf1AccountNumber PostAccountsAccountRequestBodyBankAccount'OneOf1
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"country" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyBankAccount'OneOf1 -> Text
postAccountsAccountRequestBodyBankAccount'OneOf1Country PostAccountsAccountRequestBodyBankAccount'OneOf1
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"currency" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyBankAccount'OneOf1 -> Maybe Text
postAccountsAccountRequestBodyBankAccount'OneOf1Currency PostAccountsAccountRequestBodyBankAccount'OneOf1
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"routing_number" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyBankAccount'OneOf1 -> Maybe Text
postAccountsAccountRequestBodyBankAccount'OneOf1RoutingNumber PostAccountsAccountRequestBodyBankAccount'OneOf1
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"object" Text -> Value -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= Text -> Value
Data.Aeson.Types.Internal.String Text
"bank_account" Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyBankAccount'OneOf1 -> Encoding
toEncoding PostAccountsAccountRequestBodyBankAccount'OneOf1
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs ((Text
"account_holder_name" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyBankAccount'OneOf1 -> Maybe Text
postAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderName PostAccountsAccountRequestBodyBankAccount'OneOf1
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"account_holder_type" Text
-> Maybe
     PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyBankAccount'OneOf1
-> Maybe
     PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
postAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType PostAccountsAccountRequestBodyBankAccount'OneOf1
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"account_number" Text -> Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyBankAccount'OneOf1 -> Text
postAccountsAccountRequestBodyBankAccount'OneOf1AccountNumber PostAccountsAccountRequestBodyBankAccount'OneOf1
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"country" Text -> Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyBankAccount'OneOf1 -> Text
postAccountsAccountRequestBodyBankAccount'OneOf1Country PostAccountsAccountRequestBodyBankAccount'OneOf1
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"currency" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyBankAccount'OneOf1 -> Maybe Text
postAccountsAccountRequestBodyBankAccount'OneOf1Currency PostAccountsAccountRequestBodyBankAccount'OneOf1
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"routing_number" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyBankAccount'OneOf1 -> Maybe Text
postAccountsAccountRequestBodyBankAccount'OneOf1RoutingNumber PostAccountsAccountRequestBodyBankAccount'OneOf1
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> (Text
"object" Text -> Value -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= Text -> Value
Data.Aeson.Types.Internal.String Text
"bank_account")))))))

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyBankAccount'OneOf1 where
  parseJSON :: Value -> Parser PostAccountsAccountRequestBodyBankAccount'OneOf1
parseJSON = String
-> (Object
    -> Parser PostAccountsAccountRequestBodyBankAccount'OneOf1)
-> Value
-> Parser PostAccountsAccountRequestBodyBankAccount'OneOf1
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyBankAccount'OneOf1" (\Object
obj -> ((((((Maybe Text
 -> Maybe
      PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
 -> Text
 -> Text
 -> Maybe Text
 -> Maybe Text
 -> PostAccountsAccountRequestBodyBankAccount'OneOf1)
-> Parser
     (Maybe Text
      -> Maybe
           PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
      -> Text
      -> Text
      -> Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodyBankAccount'OneOf1)
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe Text
-> Maybe
     PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
-> Text
-> Text
-> Maybe Text
-> Maybe Text
-> PostAccountsAccountRequestBodyBankAccount'OneOf1
PostAccountsAccountRequestBodyBankAccount'OneOf1 Parser
  (Maybe Text
   -> Maybe
        PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
   -> Text
   -> Text
   -> Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodyBankAccount'OneOf1)
-> Parser (Maybe Text)
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
      -> Text
      -> Text
      -> Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodyBankAccount'OneOf1)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"account_holder_name")) Parser
  (Maybe
     PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
   -> Text
   -> Text
   -> Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodyBankAccount'OneOf1)
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType')
-> Parser
     (Text
      -> Text
      -> Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodyBankAccount'OneOf1)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"account_holder_type")) Parser
  (Text
   -> Text
   -> Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodyBankAccount'OneOf1)
-> Parser Text
-> Parser
     (Text
      -> Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodyBankAccount'OneOf1)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
Data.Aeson.Types.FromJSON..: Text
"account_number")) Parser
  (Text
   -> Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodyBankAccount'OneOf1)
-> Parser Text
-> Parser
     (Maybe Text
      -> Maybe Text -> PostAccountsAccountRequestBodyBankAccount'OneOf1)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
Data.Aeson.Types.FromJSON..: Text
"country")) Parser
  (Maybe Text
   -> Maybe Text -> PostAccountsAccountRequestBodyBankAccount'OneOf1)
-> Parser (Maybe Text)
-> Parser
     (Maybe Text -> PostAccountsAccountRequestBodyBankAccount'OneOf1)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"currency")) Parser
  (Maybe Text -> PostAccountsAccountRequestBodyBankAccount'OneOf1)
-> Parser (Maybe Text)
-> Parser PostAccountsAccountRequestBodyBankAccount'OneOf1
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"routing_number"))

-- | Create a new 'PostAccountsAccountRequestBodyBankAccount'OneOf1' with all required fields.
mkPostAccountsAccountRequestBodyBankAccount'OneOf1 ::
  -- | 'postAccountsAccountRequestBodyBankAccount'OneOf1AccountNumber'
  Data.Text.Internal.Text ->
  -- | 'postAccountsAccountRequestBodyBankAccount'OneOf1Country'
  Data.Text.Internal.Text ->
  PostAccountsAccountRequestBodyBankAccount'OneOf1
mkPostAccountsAccountRequestBodyBankAccount'OneOf1 :: Text -> Text -> PostAccountsAccountRequestBodyBankAccount'OneOf1
mkPostAccountsAccountRequestBodyBankAccount'OneOf1 Text
postAccountsAccountRequestBodyBankAccount'OneOf1AccountNumber Text
postAccountsAccountRequestBodyBankAccount'OneOf1Country =
  PostAccountsAccountRequestBodyBankAccount'OneOf1 :: Maybe Text
-> Maybe
     PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
-> Text
-> Text
-> Maybe Text
-> Maybe Text
-> PostAccountsAccountRequestBodyBankAccount'OneOf1
PostAccountsAccountRequestBodyBankAccount'OneOf1
    { postAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderName :: Maybe Text
postAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderName = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType :: Maybe
  PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
postAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType = Maybe
  PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyBankAccount'OneOf1AccountNumber :: Text
postAccountsAccountRequestBodyBankAccount'OneOf1AccountNumber = Text
postAccountsAccountRequestBodyBankAccount'OneOf1AccountNumber,
      postAccountsAccountRequestBodyBankAccount'OneOf1Country :: Text
postAccountsAccountRequestBodyBankAccount'OneOf1Country = Text
postAccountsAccountRequestBodyBankAccount'OneOf1Country,
      postAccountsAccountRequestBodyBankAccount'OneOf1Currency :: Maybe Text
postAccountsAccountRequestBodyBankAccount'OneOf1Currency = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyBankAccount'OneOf1RoutingNumber :: Maybe Text
postAccountsAccountRequestBodyBankAccount'OneOf1RoutingNumber = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing
    }

-- | Defines the enum schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.bank_account.anyOf.properties.account_holder_type@ in the specification.
data PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
  = -- | This case is used if the value encountered during decoding does not match any of the provided cases in the specification.
    PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'Other Data.Aeson.Types.Internal.Value
  | -- | This constructor can be used to send values to the server which are not present in the specification yet.
    PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'Typed Data.Text.Internal.Text
  | -- | Represents the JSON value @"company"@
    PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'EnumCompany
  | -- | Represents the JSON value @"individual"@
    PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'EnumIndividual
  deriving (Int
-> PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
-> String
-> String
[PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType']
-> String -> String
PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
-> String
(Int
 -> PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
    -> String)
-> ([PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType']
    -> String -> String)
-> Show
     PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType']
-> String -> String
show :: PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
-> String
$cshow :: PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
-> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
-> String
-> String
GHC.Show.Show, PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
-> PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
-> Bool
(PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
 -> PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
 -> Bool)
-> (PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
    -> PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
    -> Bool)
-> Eq
     PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
-> PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
-> Bool
$c/= :: PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
-> PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
-> Bool
== :: PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
-> PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
-> Bool
$c== :: PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
-> PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
-> Bool
GHC.Classes.Eq)

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType' where
  toJSON :: PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
-> Value
toJSON (PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'Other Value
val) = Value
val
  toJSON (PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'Typed Text
val) = Text -> Value
forall a. ToJSON a => a -> Value
Data.Aeson.Types.ToJSON.toJSON Text
val
  toJSON (PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'EnumCompany) = Value
"company"
  toJSON (PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'EnumIndividual) = Value
"individual"

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType' where
  parseJSON :: Value
-> Parser
     PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
parseJSON Value
val =
    PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
-> Parser
     PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure
      ( if
            | Value
val Value -> Value -> Bool
forall a. Eq a => a -> a -> Bool
GHC.Classes.== Value
"company" -> PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'EnumCompany
            | Value
val Value -> Value -> Bool
forall a. Eq a => a -> a -> Bool
GHC.Classes.== Value
"individual" -> PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'EnumIndividual
            | Bool
GHC.Base.otherwise -> Value
-> PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'
PostAccountsAccountRequestBodyBankAccount'OneOf1AccountHolderType'Other Value
val
      )

-- | Defines the oneOf schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.bank_account.anyOf@ in the specification.
--
-- Either a token, like the ones returned by [Stripe.js](https:\/\/stripe.com\/docs\/stripe.js), or a dictionary containing a user\'s bank account details.
data PostAccountsAccountRequestBodyBankAccount'Variants
  = PostAccountsAccountRequestBodyBankAccount'PostAccountsAccountRequestBodyBankAccount'OneOf1 PostAccountsAccountRequestBodyBankAccount'OneOf1
  | PostAccountsAccountRequestBodyBankAccount'Text Data.Text.Internal.Text
  deriving (Int
-> PostAccountsAccountRequestBodyBankAccount'Variants
-> String
-> String
[PostAccountsAccountRequestBodyBankAccount'Variants]
-> String -> String
PostAccountsAccountRequestBodyBankAccount'Variants -> String
(Int
 -> PostAccountsAccountRequestBodyBankAccount'Variants
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyBankAccount'Variants -> String)
-> ([PostAccountsAccountRequestBodyBankAccount'Variants]
    -> String -> String)
-> Show PostAccountsAccountRequestBodyBankAccount'Variants
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyBankAccount'Variants]
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyBankAccount'Variants]
-> String -> String
show :: PostAccountsAccountRequestBodyBankAccount'Variants -> String
$cshow :: PostAccountsAccountRequestBodyBankAccount'Variants -> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyBankAccount'Variants
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyBankAccount'Variants
-> String
-> String
GHC.Show.Show, PostAccountsAccountRequestBodyBankAccount'Variants
-> PostAccountsAccountRequestBodyBankAccount'Variants -> Bool
(PostAccountsAccountRequestBodyBankAccount'Variants
 -> PostAccountsAccountRequestBodyBankAccount'Variants -> Bool)
-> (PostAccountsAccountRequestBodyBankAccount'Variants
    -> PostAccountsAccountRequestBodyBankAccount'Variants -> Bool)
-> Eq PostAccountsAccountRequestBodyBankAccount'Variants
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyBankAccount'Variants
-> PostAccountsAccountRequestBodyBankAccount'Variants -> Bool
$c/= :: PostAccountsAccountRequestBodyBankAccount'Variants
-> PostAccountsAccountRequestBodyBankAccount'Variants -> Bool
== :: PostAccountsAccountRequestBodyBankAccount'Variants
-> PostAccountsAccountRequestBodyBankAccount'Variants -> Bool
$c== :: PostAccountsAccountRequestBodyBankAccount'Variants
-> PostAccountsAccountRequestBodyBankAccount'Variants -> Bool
GHC.Classes.Eq)

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyBankAccount'Variants where
  toJSON :: PostAccountsAccountRequestBodyBankAccount'Variants -> Value
toJSON (PostAccountsAccountRequestBodyBankAccount'PostAccountsAccountRequestBodyBankAccount'OneOf1 PostAccountsAccountRequestBodyBankAccount'OneOf1
a) = PostAccountsAccountRequestBodyBankAccount'OneOf1 -> Value
forall a. ToJSON a => a -> Value
Data.Aeson.Types.ToJSON.toJSON PostAccountsAccountRequestBodyBankAccount'OneOf1
a
  toJSON (PostAccountsAccountRequestBodyBankAccount'Text Text
a) = Text -> Value
forall a. ToJSON a => a -> Value
Data.Aeson.Types.ToJSON.toJSON Text
a

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyBankAccount'Variants where
  parseJSON :: Value -> Parser PostAccountsAccountRequestBodyBankAccount'Variants
parseJSON Value
val = case (PostAccountsAccountRequestBodyBankAccount'OneOf1
-> PostAccountsAccountRequestBodyBankAccount'Variants
PostAccountsAccountRequestBodyBankAccount'PostAccountsAccountRequestBodyBankAccount'OneOf1 (PostAccountsAccountRequestBodyBankAccount'OneOf1
 -> PostAccountsAccountRequestBodyBankAccount'Variants)
-> Result PostAccountsAccountRequestBodyBankAccount'OneOf1
-> Result PostAccountsAccountRequestBodyBankAccount'Variants
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Data.Functor.<$> Value -> Result PostAccountsAccountRequestBodyBankAccount'OneOf1
forall a. FromJSON a => Value -> Result a
Data.Aeson.Types.FromJSON.fromJSON Value
val) Result PostAccountsAccountRequestBodyBankAccount'Variants
-> Result PostAccountsAccountRequestBodyBankAccount'Variants
-> Result PostAccountsAccountRequestBodyBankAccount'Variants
forall (f :: * -> *) a. Alternative f => f a -> f a -> f a
GHC.Base.<|> ((Text -> PostAccountsAccountRequestBodyBankAccount'Variants
PostAccountsAccountRequestBodyBankAccount'Text (Text -> PostAccountsAccountRequestBodyBankAccount'Variants)
-> Result Text
-> Result PostAccountsAccountRequestBodyBankAccount'Variants
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Data.Functor.<$> Value -> Result Text
forall a. FromJSON a => Value -> Result a
Data.Aeson.Types.FromJSON.fromJSON Value
val) Result PostAccountsAccountRequestBodyBankAccount'Variants
-> Result PostAccountsAccountRequestBodyBankAccount'Variants
-> Result PostAccountsAccountRequestBodyBankAccount'Variants
forall (f :: * -> *) a. Alternative f => f a -> f a -> f a
GHC.Base.<|> String -> Result PostAccountsAccountRequestBodyBankAccount'Variants
forall a. String -> Result a
Data.Aeson.Types.Internal.Error String
"No variant matched") of
    Data.Aeson.Types.Internal.Success PostAccountsAccountRequestBodyBankAccount'Variants
a -> PostAccountsAccountRequestBodyBankAccount'Variants
-> Parser PostAccountsAccountRequestBodyBankAccount'Variants
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure PostAccountsAccountRequestBodyBankAccount'Variants
a
    Data.Aeson.Types.Internal.Error String
a -> String -> Parser PostAccountsAccountRequestBodyBankAccount'Variants
forall (m :: * -> *) a. MonadFail m => String -> m a
Control.Monad.Fail.fail String
a

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.business_profile@ in the specification.
--
-- Business information about the account.
data PostAccountsAccountRequestBodyBusinessProfile' = PostAccountsAccountRequestBodyBusinessProfile'
  { -- | mcc
    --
    -- Constraints:
    --
    -- * Maximum length of 4
    PostAccountsAccountRequestBodyBusinessProfile' -> Maybe Text
postAccountsAccountRequestBodyBusinessProfile'Mcc :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | name
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyBusinessProfile' -> Maybe Text
postAccountsAccountRequestBodyBusinessProfile'Name :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | product_description
    --
    -- Constraints:
    --
    -- * Maximum length of 40000
    PostAccountsAccountRequestBodyBusinessProfile' -> Maybe Text
postAccountsAccountRequestBodyBusinessProfile'ProductDescription :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | support_address
    PostAccountsAccountRequestBodyBusinessProfile'
-> Maybe
     PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
postAccountsAccountRequestBodyBusinessProfile'SupportAddress :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'),
    -- | support_email
    PostAccountsAccountRequestBodyBusinessProfile' -> Maybe Text
postAccountsAccountRequestBodyBusinessProfile'SupportEmail :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | support_phone
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyBusinessProfile' -> Maybe Text
postAccountsAccountRequestBodyBusinessProfile'SupportPhone :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | support_url
    PostAccountsAccountRequestBodyBusinessProfile'
-> Maybe
     PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
postAccountsAccountRequestBodyBusinessProfile'SupportUrl :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants),
    -- | url
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyBusinessProfile' -> Maybe Text
postAccountsAccountRequestBodyBusinessProfile'Url :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodyBusinessProfile'
-> String
-> String
[PostAccountsAccountRequestBodyBusinessProfile']
-> String -> String
PostAccountsAccountRequestBodyBusinessProfile' -> String
(Int
 -> PostAccountsAccountRequestBodyBusinessProfile'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyBusinessProfile' -> String)
-> ([PostAccountsAccountRequestBodyBusinessProfile']
    -> String -> String)
-> Show PostAccountsAccountRequestBodyBusinessProfile'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyBusinessProfile']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyBusinessProfile']
-> String -> String
show :: PostAccountsAccountRequestBodyBusinessProfile' -> String
$cshow :: PostAccountsAccountRequestBodyBusinessProfile' -> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyBusinessProfile'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyBusinessProfile'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyBusinessProfile'
-> PostAccountsAccountRequestBodyBusinessProfile' -> Bool
(PostAccountsAccountRequestBodyBusinessProfile'
 -> PostAccountsAccountRequestBodyBusinessProfile' -> Bool)
-> (PostAccountsAccountRequestBodyBusinessProfile'
    -> PostAccountsAccountRequestBodyBusinessProfile' -> Bool)
-> Eq PostAccountsAccountRequestBodyBusinessProfile'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyBusinessProfile'
-> PostAccountsAccountRequestBodyBusinessProfile' -> Bool
$c/= :: PostAccountsAccountRequestBodyBusinessProfile'
-> PostAccountsAccountRequestBodyBusinessProfile' -> Bool
== :: PostAccountsAccountRequestBodyBusinessProfile'
-> PostAccountsAccountRequestBodyBusinessProfile' -> Bool
$c== :: PostAccountsAccountRequestBodyBusinessProfile'
-> PostAccountsAccountRequestBodyBusinessProfile' -> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyBusinessProfile' where
  toJSON :: PostAccountsAccountRequestBodyBusinessProfile' -> Value
toJSON PostAccountsAccountRequestBodyBusinessProfile'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"mcc" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyBusinessProfile' -> Maybe Text
postAccountsAccountRequestBodyBusinessProfile'Mcc PostAccountsAccountRequestBodyBusinessProfile'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"name" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyBusinessProfile' -> Maybe Text
postAccountsAccountRequestBodyBusinessProfile'Name PostAccountsAccountRequestBodyBusinessProfile'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"product_description" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyBusinessProfile' -> Maybe Text
postAccountsAccountRequestBodyBusinessProfile'ProductDescription PostAccountsAccountRequestBodyBusinessProfile'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"support_address" Text
-> Maybe
     PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyBusinessProfile'
-> Maybe
     PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
postAccountsAccountRequestBodyBusinessProfile'SupportAddress PostAccountsAccountRequestBodyBusinessProfile'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"support_email" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyBusinessProfile' -> Maybe Text
postAccountsAccountRequestBodyBusinessProfile'SupportEmail PostAccountsAccountRequestBodyBusinessProfile'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"support_phone" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyBusinessProfile' -> Maybe Text
postAccountsAccountRequestBodyBusinessProfile'SupportPhone PostAccountsAccountRequestBodyBusinessProfile'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"support_url" Text
-> Maybe
     PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyBusinessProfile'
-> Maybe
     PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
postAccountsAccountRequestBodyBusinessProfile'SupportUrl PostAccountsAccountRequestBodyBusinessProfile'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"url" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyBusinessProfile' -> Maybe Text
postAccountsAccountRequestBodyBusinessProfile'Url PostAccountsAccountRequestBodyBusinessProfile'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyBusinessProfile' -> Encoding
toEncoding PostAccountsAccountRequestBodyBusinessProfile'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs ((Text
"mcc" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyBusinessProfile' -> Maybe Text
postAccountsAccountRequestBodyBusinessProfile'Mcc PostAccountsAccountRequestBodyBusinessProfile'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"name" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyBusinessProfile' -> Maybe Text
postAccountsAccountRequestBodyBusinessProfile'Name PostAccountsAccountRequestBodyBusinessProfile'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"product_description" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyBusinessProfile' -> Maybe Text
postAccountsAccountRequestBodyBusinessProfile'ProductDescription PostAccountsAccountRequestBodyBusinessProfile'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"support_address" Text
-> Maybe
     PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyBusinessProfile'
-> Maybe
     PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
postAccountsAccountRequestBodyBusinessProfile'SupportAddress PostAccountsAccountRequestBodyBusinessProfile'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"support_email" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyBusinessProfile' -> Maybe Text
postAccountsAccountRequestBodyBusinessProfile'SupportEmail PostAccountsAccountRequestBodyBusinessProfile'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"support_phone" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyBusinessProfile' -> Maybe Text
postAccountsAccountRequestBodyBusinessProfile'SupportPhone PostAccountsAccountRequestBodyBusinessProfile'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"support_url" Text
-> Maybe
     PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyBusinessProfile'
-> Maybe
     PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
postAccountsAccountRequestBodyBusinessProfile'SupportUrl PostAccountsAccountRequestBodyBusinessProfile'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> (Text
"url" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyBusinessProfile' -> Maybe Text
postAccountsAccountRequestBodyBusinessProfile'Url PostAccountsAccountRequestBodyBusinessProfile'
obj))))))))

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyBusinessProfile' where
  parseJSON :: Value -> Parser PostAccountsAccountRequestBodyBusinessProfile'
parseJSON = String
-> (Object
    -> Parser PostAccountsAccountRequestBodyBusinessProfile')
-> Value
-> Parser PostAccountsAccountRequestBodyBusinessProfile'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyBusinessProfile'" (\Object
obj -> ((((((((Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe
      PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
 -> Maybe Text
 -> Maybe Text
 -> Maybe
      PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
 -> Maybe Text
 -> PostAccountsAccountRequestBodyBusinessProfile')
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe
           PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
      -> Maybe Text
      -> Maybe Text
      -> Maybe
           PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
      -> Maybe Text
      -> PostAccountsAccountRequestBodyBusinessProfile')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe
     PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
-> Maybe Text
-> Maybe Text
-> Maybe
     PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
-> Maybe Text
-> PostAccountsAccountRequestBodyBusinessProfile'
PostAccountsAccountRequestBodyBusinessProfile' Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe
        PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
   -> Maybe Text
   -> Maybe Text
   -> Maybe
        PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
   -> Maybe Text
   -> PostAccountsAccountRequestBodyBusinessProfile')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe
           PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
      -> Maybe Text
      -> Maybe Text
      -> Maybe
           PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
      -> Maybe Text
      -> PostAccountsAccountRequestBodyBusinessProfile')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"mcc")) Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe
        PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
   -> Maybe Text
   -> Maybe Text
   -> Maybe
        PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
   -> Maybe Text
   -> PostAccountsAccountRequestBodyBusinessProfile')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe
           PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
      -> Maybe Text
      -> Maybe Text
      -> Maybe
           PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
      -> Maybe Text
      -> PostAccountsAccountRequestBodyBusinessProfile')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"name")) Parser
  (Maybe Text
   -> Maybe
        PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
   -> Maybe Text
   -> Maybe Text
   -> Maybe
        PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
   -> Maybe Text
   -> PostAccountsAccountRequestBodyBusinessProfile')
-> Parser (Maybe Text)
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
      -> Maybe Text
      -> Maybe Text
      -> Maybe
           PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
      -> Maybe Text
      -> PostAccountsAccountRequestBodyBusinessProfile')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"product_description")) Parser
  (Maybe
     PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
   -> Maybe Text
   -> Maybe Text
   -> Maybe
        PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
   -> Maybe Text
   -> PostAccountsAccountRequestBodyBusinessProfile')
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyBusinessProfile'SupportAddress')
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe
           PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
      -> Maybe Text
      -> PostAccountsAccountRequestBodyBusinessProfile')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyBusinessProfile'SupportAddress')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"support_address")) Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe
        PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
   -> Maybe Text
   -> PostAccountsAccountRequestBodyBusinessProfile')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe
           PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
      -> Maybe Text
      -> PostAccountsAccountRequestBodyBusinessProfile')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"support_email")) Parser
  (Maybe Text
   -> Maybe
        PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
   -> Maybe Text
   -> PostAccountsAccountRequestBodyBusinessProfile')
-> Parser (Maybe Text)
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
      -> Maybe Text -> PostAccountsAccountRequestBodyBusinessProfile')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"support_phone")) Parser
  (Maybe
     PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
   -> Maybe Text -> PostAccountsAccountRequestBodyBusinessProfile')
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants)
-> Parser
     (Maybe Text -> PostAccountsAccountRequestBodyBusinessProfile')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"support_url")) Parser
  (Maybe Text -> PostAccountsAccountRequestBodyBusinessProfile')
-> Parser (Maybe Text)
-> Parser PostAccountsAccountRequestBodyBusinessProfile'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"url"))

-- | Create a new 'PostAccountsAccountRequestBodyBusinessProfile'' with all required fields.
mkPostAccountsAccountRequestBodyBusinessProfile' :: PostAccountsAccountRequestBodyBusinessProfile'
mkPostAccountsAccountRequestBodyBusinessProfile' :: PostAccountsAccountRequestBodyBusinessProfile'
mkPostAccountsAccountRequestBodyBusinessProfile' =
  PostAccountsAccountRequestBodyBusinessProfile' :: Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe
     PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
-> Maybe Text
-> Maybe Text
-> Maybe
     PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
-> Maybe Text
-> PostAccountsAccountRequestBodyBusinessProfile'
PostAccountsAccountRequestBodyBusinessProfile'
    { postAccountsAccountRequestBodyBusinessProfile'Mcc :: Maybe Text
postAccountsAccountRequestBodyBusinessProfile'Mcc = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyBusinessProfile'Name :: Maybe Text
postAccountsAccountRequestBodyBusinessProfile'Name = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyBusinessProfile'ProductDescription :: Maybe Text
postAccountsAccountRequestBodyBusinessProfile'ProductDescription = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyBusinessProfile'SupportAddress :: Maybe PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
postAccountsAccountRequestBodyBusinessProfile'SupportAddress = Maybe PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyBusinessProfile'SupportEmail :: Maybe Text
postAccountsAccountRequestBodyBusinessProfile'SupportEmail = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyBusinessProfile'SupportPhone :: Maybe Text
postAccountsAccountRequestBodyBusinessProfile'SupportPhone = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyBusinessProfile'SupportUrl :: Maybe
  PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
postAccountsAccountRequestBodyBusinessProfile'SupportUrl = Maybe
  PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyBusinessProfile'Url :: Maybe Text
postAccountsAccountRequestBodyBusinessProfile'Url = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing
    }

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.business_profile.properties.support_address@ in the specification.
data PostAccountsAccountRequestBodyBusinessProfile'SupportAddress' = PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
  { -- | city
    --
    -- Constraints:
    --
    -- * Maximum length of 100
    PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
-> Maybe Text
postAccountsAccountRequestBodyBusinessProfile'SupportAddress'City :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | country
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
-> Maybe Text
postAccountsAccountRequestBodyBusinessProfile'SupportAddress'Country :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | line1
    --
    -- Constraints:
    --
    -- * Maximum length of 200
    PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
-> Maybe Text
postAccountsAccountRequestBodyBusinessProfile'SupportAddress'Line1 :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | line2
    --
    -- Constraints:
    --
    -- * Maximum length of 200
    PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
-> Maybe Text
postAccountsAccountRequestBodyBusinessProfile'SupportAddress'Line2 :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | postal_code
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
-> Maybe Text
postAccountsAccountRequestBodyBusinessProfile'SupportAddress'PostalCode :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | state
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
-> Maybe Text
postAccountsAccountRequestBodyBusinessProfile'SupportAddress'State :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
-> String
-> String
[PostAccountsAccountRequestBodyBusinessProfile'SupportAddress']
-> String -> String
PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
-> String
(Int
 -> PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
    -> String)
-> ([PostAccountsAccountRequestBodyBusinessProfile'SupportAddress']
    -> String -> String)
-> Show
     PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyBusinessProfile'SupportAddress']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyBusinessProfile'SupportAddress']
-> String -> String
show :: PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
-> String
$cshow :: PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
-> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
-> PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
-> Bool
(PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
 -> PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
 -> Bool)
-> (PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
    -> PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
    -> Bool)
-> Eq PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
-> PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
-> Bool
$c/= :: PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
-> PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
-> Bool
== :: PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
-> PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
-> Bool
$c== :: PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
-> PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
-> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyBusinessProfile'SupportAddress' where
  toJSON :: PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
-> Value
toJSON PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"city" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
-> Maybe Text
postAccountsAccountRequestBodyBusinessProfile'SupportAddress'City PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"country" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
-> Maybe Text
postAccountsAccountRequestBodyBusinessProfile'SupportAddress'Country PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"line1" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
-> Maybe Text
postAccountsAccountRequestBodyBusinessProfile'SupportAddress'Line1 PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"line2" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
-> Maybe Text
postAccountsAccountRequestBodyBusinessProfile'SupportAddress'Line2 PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"postal_code" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
-> Maybe Text
postAccountsAccountRequestBodyBusinessProfile'SupportAddress'PostalCode PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"state" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
-> Maybe Text
postAccountsAccountRequestBodyBusinessProfile'SupportAddress'State PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
-> Encoding
toEncoding PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs ((Text
"city" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
-> Maybe Text
postAccountsAccountRequestBodyBusinessProfile'SupportAddress'City PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"country" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
-> Maybe Text
postAccountsAccountRequestBodyBusinessProfile'SupportAddress'Country PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"line1" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
-> Maybe Text
postAccountsAccountRequestBodyBusinessProfile'SupportAddress'Line1 PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"line2" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
-> Maybe Text
postAccountsAccountRequestBodyBusinessProfile'SupportAddress'Line2 PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"postal_code" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
-> Maybe Text
postAccountsAccountRequestBodyBusinessProfile'SupportAddress'PostalCode PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> (Text
"state" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
-> Maybe Text
postAccountsAccountRequestBodyBusinessProfile'SupportAddress'State PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
obj))))))

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyBusinessProfile'SupportAddress' where
  parseJSON :: Value
-> Parser
     PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
parseJSON = String
-> (Object
    -> Parser
         PostAccountsAccountRequestBodyBusinessProfile'SupportAddress')
-> Value
-> Parser
     PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'" (\Object
obj -> ((((((Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> PostAccountsAccountRequestBodyBusinessProfile'SupportAddress')
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodyBusinessProfile'SupportAddress')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
PostAccountsAccountRequestBodyBusinessProfile'SupportAddress' Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodyBusinessProfile'SupportAddress')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodyBusinessProfile'SupportAddress')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"city")) Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodyBusinessProfile'SupportAddress')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodyBusinessProfile'SupportAddress')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"country")) Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodyBusinessProfile'SupportAddress')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodyBusinessProfile'SupportAddress')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"line1")) Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodyBusinessProfile'SupportAddress')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodyBusinessProfile'SupportAddress')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"line2")) Parser
  (Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodyBusinessProfile'SupportAddress')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> PostAccountsAccountRequestBodyBusinessProfile'SupportAddress')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"postal_code")) Parser
  (Maybe Text
   -> PostAccountsAccountRequestBodyBusinessProfile'SupportAddress')
-> Parser (Maybe Text)
-> Parser
     PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"state"))

-- | Create a new 'PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'' with all required fields.
mkPostAccountsAccountRequestBodyBusinessProfile'SupportAddress' :: PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
mkPostAccountsAccountRequestBodyBusinessProfile'SupportAddress' :: PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
mkPostAccountsAccountRequestBodyBusinessProfile'SupportAddress' =
  PostAccountsAccountRequestBodyBusinessProfile'SupportAddress' :: Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
PostAccountsAccountRequestBodyBusinessProfile'SupportAddress'
    { postAccountsAccountRequestBodyBusinessProfile'SupportAddress'City :: Maybe Text
postAccountsAccountRequestBodyBusinessProfile'SupportAddress'City = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyBusinessProfile'SupportAddress'Country :: Maybe Text
postAccountsAccountRequestBodyBusinessProfile'SupportAddress'Country = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyBusinessProfile'SupportAddress'Line1 :: Maybe Text
postAccountsAccountRequestBodyBusinessProfile'SupportAddress'Line1 = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyBusinessProfile'SupportAddress'Line2 :: Maybe Text
postAccountsAccountRequestBodyBusinessProfile'SupportAddress'Line2 = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyBusinessProfile'SupportAddress'PostalCode :: Maybe Text
postAccountsAccountRequestBodyBusinessProfile'SupportAddress'PostalCode = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyBusinessProfile'SupportAddress'State :: Maybe Text
postAccountsAccountRequestBodyBusinessProfile'SupportAddress'State = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing
    }

-- | Defines the oneOf schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.business_profile.properties.support_url.anyOf@ in the specification.
data PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
  = -- | Represents the JSON value @""@
    PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'EmptyString
  | PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Text Data.Text.Internal.Text
  deriving (Int
-> PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
-> String
-> String
[PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants]
-> String -> String
PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
-> String
(Int
 -> PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
    -> String)
-> ([PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants]
    -> String -> String)
-> Show
     PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants]
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants]
-> String -> String
show :: PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
-> String
$cshow :: PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
-> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
-> String
-> String
GHC.Show.Show, PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
-> PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
-> Bool
(PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
 -> PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
 -> Bool)
-> (PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
    -> PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
    -> Bool)
-> Eq
     PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
-> PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
-> Bool
$c/= :: PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
-> PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
-> Bool
== :: PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
-> PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
-> Bool
$c== :: PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
-> PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
-> Bool
GHC.Classes.Eq)

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants where
  toJSON :: PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
-> Value
toJSON (PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Text Text
a) = Text -> Value
forall a. ToJSON a => a -> Value
Data.Aeson.Types.ToJSON.toJSON Text
a
  toJSON (PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'EmptyString) = Value
""

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants where
  parseJSON :: Value
-> Parser
     PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
parseJSON Value
val =
    if
        | Value
val Value -> Value -> Bool
forall a. Eq a => a -> a -> Bool
GHC.Classes.== Value
"" -> PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
-> Parser
     PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'EmptyString
        | Bool
GHC.Base.otherwise -> case (Text
-> PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Text (Text
 -> PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants)
-> Result Text
-> Result
     PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Data.Functor.<$> Value -> Result Text
forall a. FromJSON a => Value -> Result a
Data.Aeson.Types.FromJSON.fromJSON Value
val) Result
  PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
-> Result
     PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
-> Result
     PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
forall (f :: * -> *) a. Alternative f => f a -> f a -> f a
GHC.Base.<|> String
-> Result
     PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
forall a. String -> Result a
Data.Aeson.Types.Internal.Error String
"No variant matched" of
          Data.Aeson.Types.Internal.Success PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
a -> PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
-> Parser
     PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
a
          Data.Aeson.Types.Internal.Error String
a -> String
-> Parser
     PostAccountsAccountRequestBodyBusinessProfile'SupportUrl'Variants
forall (m :: * -> *) a. MonadFail m => String -> m a
Control.Monad.Fail.fail String
a

-- | Defines the enum schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.business_type@ in the specification.
--
-- The business type.
data PostAccountsAccountRequestBodyBusinessType'
  = -- | This case is used if the value encountered during decoding does not match any of the provided cases in the specification.
    PostAccountsAccountRequestBodyBusinessType'Other Data.Aeson.Types.Internal.Value
  | -- | This constructor can be used to send values to the server which are not present in the specification yet.
    PostAccountsAccountRequestBodyBusinessType'Typed Data.Text.Internal.Text
  | -- | Represents the JSON value @"company"@
    PostAccountsAccountRequestBodyBusinessType'EnumCompany
  | -- | Represents the JSON value @"government_entity"@
    PostAccountsAccountRequestBodyBusinessType'EnumGovernmentEntity
  | -- | Represents the JSON value @"individual"@
    PostAccountsAccountRequestBodyBusinessType'EnumIndividual
  | -- | Represents the JSON value @"non_profit"@
    PostAccountsAccountRequestBodyBusinessType'EnumNonProfit
  deriving (Int
-> PostAccountsAccountRequestBodyBusinessType' -> String -> String
[PostAccountsAccountRequestBodyBusinessType'] -> String -> String
PostAccountsAccountRequestBodyBusinessType' -> String
(Int
 -> PostAccountsAccountRequestBodyBusinessType' -> String -> String)
-> (PostAccountsAccountRequestBodyBusinessType' -> String)
-> ([PostAccountsAccountRequestBodyBusinessType']
    -> String -> String)
-> Show PostAccountsAccountRequestBodyBusinessType'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyBusinessType'] -> String -> String
$cshowList :: [PostAccountsAccountRequestBodyBusinessType'] -> String -> String
show :: PostAccountsAccountRequestBodyBusinessType' -> String
$cshow :: PostAccountsAccountRequestBodyBusinessType' -> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyBusinessType' -> String -> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyBusinessType' -> String -> String
GHC.Show.Show, PostAccountsAccountRequestBodyBusinessType'
-> PostAccountsAccountRequestBodyBusinessType' -> Bool
(PostAccountsAccountRequestBodyBusinessType'
 -> PostAccountsAccountRequestBodyBusinessType' -> Bool)
-> (PostAccountsAccountRequestBodyBusinessType'
    -> PostAccountsAccountRequestBodyBusinessType' -> Bool)
-> Eq PostAccountsAccountRequestBodyBusinessType'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyBusinessType'
-> PostAccountsAccountRequestBodyBusinessType' -> Bool
$c/= :: PostAccountsAccountRequestBodyBusinessType'
-> PostAccountsAccountRequestBodyBusinessType' -> Bool
== :: PostAccountsAccountRequestBodyBusinessType'
-> PostAccountsAccountRequestBodyBusinessType' -> Bool
$c== :: PostAccountsAccountRequestBodyBusinessType'
-> PostAccountsAccountRequestBodyBusinessType' -> Bool
GHC.Classes.Eq)

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyBusinessType' where
  toJSON :: PostAccountsAccountRequestBodyBusinessType' -> Value
toJSON (PostAccountsAccountRequestBodyBusinessType'Other Value
val) = Value
val
  toJSON (PostAccountsAccountRequestBodyBusinessType'Typed Text
val) = Text -> Value
forall a. ToJSON a => a -> Value
Data.Aeson.Types.ToJSON.toJSON Text
val
  toJSON (PostAccountsAccountRequestBodyBusinessType'
PostAccountsAccountRequestBodyBusinessType'EnumCompany) = Value
"company"
  toJSON (PostAccountsAccountRequestBodyBusinessType'
PostAccountsAccountRequestBodyBusinessType'EnumGovernmentEntity) = Value
"government_entity"
  toJSON (PostAccountsAccountRequestBodyBusinessType'
PostAccountsAccountRequestBodyBusinessType'EnumIndividual) = Value
"individual"
  toJSON (PostAccountsAccountRequestBodyBusinessType'
PostAccountsAccountRequestBodyBusinessType'EnumNonProfit) = Value
"non_profit"

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyBusinessType' where
  parseJSON :: Value -> Parser PostAccountsAccountRequestBodyBusinessType'
parseJSON Value
val =
    PostAccountsAccountRequestBodyBusinessType'
-> Parser PostAccountsAccountRequestBodyBusinessType'
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure
      ( if
            | Value
val Value -> Value -> Bool
forall a. Eq a => a -> a -> Bool
GHC.Classes.== Value
"company" -> PostAccountsAccountRequestBodyBusinessType'
PostAccountsAccountRequestBodyBusinessType'EnumCompany
            | Value
val Value -> Value -> Bool
forall a. Eq a => a -> a -> Bool
GHC.Classes.== Value
"government_entity" -> PostAccountsAccountRequestBodyBusinessType'
PostAccountsAccountRequestBodyBusinessType'EnumGovernmentEntity
            | Value
val Value -> Value -> Bool
forall a. Eq a => a -> a -> Bool
GHC.Classes.== Value
"individual" -> PostAccountsAccountRequestBodyBusinessType'
PostAccountsAccountRequestBodyBusinessType'EnumIndividual
            | Value
val Value -> Value -> Bool
forall a. Eq a => a -> a -> Bool
GHC.Classes.== Value
"non_profit" -> PostAccountsAccountRequestBodyBusinessType'
PostAccountsAccountRequestBodyBusinessType'EnumNonProfit
            | Bool
GHC.Base.otherwise -> Value -> PostAccountsAccountRequestBodyBusinessType'
PostAccountsAccountRequestBodyBusinessType'Other Value
val
      )

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.capabilities@ in the specification.
--
-- Each key of the dictionary represents a capability, and each capability maps to its settings (e.g. whether it has been requested or not). Each capability will be inactive until you have provided its specific requirements and Stripe has verified them. An account may have some of its requested capabilities be active and some be inactive.
data PostAccountsAccountRequestBodyCapabilities' = PostAccountsAccountRequestBodyCapabilities'
  { -- | acss_debit_payments
    PostAccountsAccountRequestBodyCapabilities'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
postAccountsAccountRequestBodyCapabilities'AcssDebitPayments :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'),
    -- | afterpay_clearpay_payments
    PostAccountsAccountRequestBodyCapabilities'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
postAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'),
    -- | au_becs_debit_payments
    PostAccountsAccountRequestBodyCapabilities'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
postAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'),
    -- | bacs_debit_payments
    PostAccountsAccountRequestBodyCapabilities'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
postAccountsAccountRequestBodyCapabilities'BacsDebitPayments :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'),
    -- | bancontact_payments
    PostAccountsAccountRequestBodyCapabilities'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
postAccountsAccountRequestBodyCapabilities'BancontactPayments :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyCapabilities'BancontactPayments'),
    -- | card_issuing
    PostAccountsAccountRequestBodyCapabilities'
-> Maybe PostAccountsAccountRequestBodyCapabilities'CardIssuing'
postAccountsAccountRequestBodyCapabilities'CardIssuing :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyCapabilities'CardIssuing'),
    -- | card_payments
    PostAccountsAccountRequestBodyCapabilities'
-> Maybe PostAccountsAccountRequestBodyCapabilities'CardPayments'
postAccountsAccountRequestBodyCapabilities'CardPayments :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyCapabilities'CardPayments'),
    -- | cartes_bancaires_payments
    PostAccountsAccountRequestBodyCapabilities'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
postAccountsAccountRequestBodyCapabilities'CartesBancairesPayments :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'),
    -- | eps_payments
    PostAccountsAccountRequestBodyCapabilities'
-> Maybe PostAccountsAccountRequestBodyCapabilities'EpsPayments'
postAccountsAccountRequestBodyCapabilities'EpsPayments :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyCapabilities'EpsPayments'),
    -- | fpx_payments
    PostAccountsAccountRequestBodyCapabilities'
-> Maybe PostAccountsAccountRequestBodyCapabilities'FpxPayments'
postAccountsAccountRequestBodyCapabilities'FpxPayments :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyCapabilities'FpxPayments'),
    -- | giropay_payments
    PostAccountsAccountRequestBodyCapabilities'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
postAccountsAccountRequestBodyCapabilities'GiropayPayments :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyCapabilities'GiropayPayments'),
    -- | grabpay_payments
    PostAccountsAccountRequestBodyCapabilities'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
postAccountsAccountRequestBodyCapabilities'GrabpayPayments :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'),
    -- | ideal_payments
    PostAccountsAccountRequestBodyCapabilities'
-> Maybe PostAccountsAccountRequestBodyCapabilities'IdealPayments'
postAccountsAccountRequestBodyCapabilities'IdealPayments :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyCapabilities'IdealPayments'),
    -- | jcb_payments
    PostAccountsAccountRequestBodyCapabilities'
-> Maybe PostAccountsAccountRequestBodyCapabilities'JcbPayments'
postAccountsAccountRequestBodyCapabilities'JcbPayments :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyCapabilities'JcbPayments'),
    -- | legacy_payments
    PostAccountsAccountRequestBodyCapabilities'
-> Maybe PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
postAccountsAccountRequestBodyCapabilities'LegacyPayments :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyCapabilities'LegacyPayments'),
    -- | oxxo_payments
    PostAccountsAccountRequestBodyCapabilities'
-> Maybe PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
postAccountsAccountRequestBodyCapabilities'OxxoPayments :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyCapabilities'OxxoPayments'),
    -- | p24_payments
    PostAccountsAccountRequestBodyCapabilities'
-> Maybe PostAccountsAccountRequestBodyCapabilities'P24Payments'
postAccountsAccountRequestBodyCapabilities'P24Payments :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyCapabilities'P24Payments'),
    -- | sepa_debit_payments
    PostAccountsAccountRequestBodyCapabilities'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
postAccountsAccountRequestBodyCapabilities'SepaDebitPayments :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'),
    -- | sofort_payments
    PostAccountsAccountRequestBodyCapabilities'
-> Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
postAccountsAccountRequestBodyCapabilities'SofortPayments :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'),
    -- | tax_reporting_us_1099_k
    PostAccountsAccountRequestBodyCapabilities'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
postAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'),
    -- | tax_reporting_us_1099_misc
    PostAccountsAccountRequestBodyCapabilities'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
postAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'),
    -- | transfers
    PostAccountsAccountRequestBodyCapabilities'
-> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
postAccountsAccountRequestBodyCapabilities'Transfers :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyCapabilities'Transfers')
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodyCapabilities' -> String -> String
[PostAccountsAccountRequestBodyCapabilities'] -> String -> String
PostAccountsAccountRequestBodyCapabilities' -> String
(Int
 -> PostAccountsAccountRequestBodyCapabilities' -> String -> String)
-> (PostAccountsAccountRequestBodyCapabilities' -> String)
-> ([PostAccountsAccountRequestBodyCapabilities']
    -> String -> String)
-> Show PostAccountsAccountRequestBodyCapabilities'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyCapabilities'] -> String -> String
$cshowList :: [PostAccountsAccountRequestBodyCapabilities'] -> String -> String
show :: PostAccountsAccountRequestBodyCapabilities' -> String
$cshow :: PostAccountsAccountRequestBodyCapabilities' -> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyCapabilities' -> String -> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyCapabilities' -> String -> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyCapabilities'
-> PostAccountsAccountRequestBodyCapabilities' -> Bool
(PostAccountsAccountRequestBodyCapabilities'
 -> PostAccountsAccountRequestBodyCapabilities' -> Bool)
-> (PostAccountsAccountRequestBodyCapabilities'
    -> PostAccountsAccountRequestBodyCapabilities' -> Bool)
-> Eq PostAccountsAccountRequestBodyCapabilities'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyCapabilities'
-> PostAccountsAccountRequestBodyCapabilities' -> Bool
$c/= :: PostAccountsAccountRequestBodyCapabilities'
-> PostAccountsAccountRequestBodyCapabilities' -> Bool
== :: PostAccountsAccountRequestBodyCapabilities'
-> PostAccountsAccountRequestBodyCapabilities' -> Bool
$c== :: PostAccountsAccountRequestBodyCapabilities'
-> PostAccountsAccountRequestBodyCapabilities' -> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyCapabilities' where
  toJSON :: PostAccountsAccountRequestBodyCapabilities' -> Value
toJSON PostAccountsAccountRequestBodyCapabilities'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"acss_debit_payments" Text
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
postAccountsAccountRequestBodyCapabilities'AcssDebitPayments PostAccountsAccountRequestBodyCapabilities'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"afterpay_clearpay_payments" Text
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
postAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments PostAccountsAccountRequestBodyCapabilities'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"au_becs_debit_payments" Text
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
postAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments PostAccountsAccountRequestBodyCapabilities'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"bacs_debit_payments" Text
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
postAccountsAccountRequestBodyCapabilities'BacsDebitPayments PostAccountsAccountRequestBodyCapabilities'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"bancontact_payments" Text
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
postAccountsAccountRequestBodyCapabilities'BancontactPayments PostAccountsAccountRequestBodyCapabilities'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"card_issuing" Text
-> Maybe PostAccountsAccountRequestBodyCapabilities'CardIssuing'
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'
-> Maybe PostAccountsAccountRequestBodyCapabilities'CardIssuing'
postAccountsAccountRequestBodyCapabilities'CardIssuing PostAccountsAccountRequestBodyCapabilities'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"card_payments" Text
-> Maybe PostAccountsAccountRequestBodyCapabilities'CardPayments'
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'
-> Maybe PostAccountsAccountRequestBodyCapabilities'CardPayments'
postAccountsAccountRequestBodyCapabilities'CardPayments PostAccountsAccountRequestBodyCapabilities'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"cartes_bancaires_payments" Text
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
postAccountsAccountRequestBodyCapabilities'CartesBancairesPayments PostAccountsAccountRequestBodyCapabilities'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"eps_payments" Text
-> Maybe PostAccountsAccountRequestBodyCapabilities'EpsPayments'
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'
-> Maybe PostAccountsAccountRequestBodyCapabilities'EpsPayments'
postAccountsAccountRequestBodyCapabilities'EpsPayments PostAccountsAccountRequestBodyCapabilities'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"fpx_payments" Text
-> Maybe PostAccountsAccountRequestBodyCapabilities'FpxPayments'
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'
-> Maybe PostAccountsAccountRequestBodyCapabilities'FpxPayments'
postAccountsAccountRequestBodyCapabilities'FpxPayments PostAccountsAccountRequestBodyCapabilities'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"giropay_payments" Text
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
postAccountsAccountRequestBodyCapabilities'GiropayPayments PostAccountsAccountRequestBodyCapabilities'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"grabpay_payments" Text
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
postAccountsAccountRequestBodyCapabilities'GrabpayPayments PostAccountsAccountRequestBodyCapabilities'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"ideal_payments" Text
-> Maybe PostAccountsAccountRequestBodyCapabilities'IdealPayments'
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'
-> Maybe PostAccountsAccountRequestBodyCapabilities'IdealPayments'
postAccountsAccountRequestBodyCapabilities'IdealPayments PostAccountsAccountRequestBodyCapabilities'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"jcb_payments" Text
-> Maybe PostAccountsAccountRequestBodyCapabilities'JcbPayments'
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'
-> Maybe PostAccountsAccountRequestBodyCapabilities'JcbPayments'
postAccountsAccountRequestBodyCapabilities'JcbPayments PostAccountsAccountRequestBodyCapabilities'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"legacy_payments" Text
-> Maybe PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'
-> Maybe PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
postAccountsAccountRequestBodyCapabilities'LegacyPayments PostAccountsAccountRequestBodyCapabilities'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"oxxo_payments" Text
-> Maybe PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'
-> Maybe PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
postAccountsAccountRequestBodyCapabilities'OxxoPayments PostAccountsAccountRequestBodyCapabilities'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"p24_payments" Text
-> Maybe PostAccountsAccountRequestBodyCapabilities'P24Payments'
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'
-> Maybe PostAccountsAccountRequestBodyCapabilities'P24Payments'
postAccountsAccountRequestBodyCapabilities'P24Payments PostAccountsAccountRequestBodyCapabilities'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"sepa_debit_payments" Text
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
postAccountsAccountRequestBodyCapabilities'SepaDebitPayments PostAccountsAccountRequestBodyCapabilities'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"sofort_payments" Text
-> Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'
-> Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
postAccountsAccountRequestBodyCapabilities'SofortPayments PostAccountsAccountRequestBodyCapabilities'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"tax_reporting_us_1099_k" Text
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
postAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K PostAccountsAccountRequestBodyCapabilities'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"tax_reporting_us_1099_misc" Text
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
postAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc PostAccountsAccountRequestBodyCapabilities'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"transfers" Text
-> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'
-> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
postAccountsAccountRequestBodyCapabilities'Transfers PostAccountsAccountRequestBodyCapabilities'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyCapabilities' -> Encoding
toEncoding PostAccountsAccountRequestBodyCapabilities'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs ((Text
"acss_debit_payments" Text
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
postAccountsAccountRequestBodyCapabilities'AcssDebitPayments PostAccountsAccountRequestBodyCapabilities'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"afterpay_clearpay_payments" Text
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
postAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments PostAccountsAccountRequestBodyCapabilities'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"au_becs_debit_payments" Text
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
postAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments PostAccountsAccountRequestBodyCapabilities'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"bacs_debit_payments" Text
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
postAccountsAccountRequestBodyCapabilities'BacsDebitPayments PostAccountsAccountRequestBodyCapabilities'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"bancontact_payments" Text
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
postAccountsAccountRequestBodyCapabilities'BancontactPayments PostAccountsAccountRequestBodyCapabilities'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"card_issuing" Text
-> Maybe PostAccountsAccountRequestBodyCapabilities'CardIssuing'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'
-> Maybe PostAccountsAccountRequestBodyCapabilities'CardIssuing'
postAccountsAccountRequestBodyCapabilities'CardIssuing PostAccountsAccountRequestBodyCapabilities'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"card_payments" Text
-> Maybe PostAccountsAccountRequestBodyCapabilities'CardPayments'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'
-> Maybe PostAccountsAccountRequestBodyCapabilities'CardPayments'
postAccountsAccountRequestBodyCapabilities'CardPayments PostAccountsAccountRequestBodyCapabilities'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"cartes_bancaires_payments" Text
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
postAccountsAccountRequestBodyCapabilities'CartesBancairesPayments PostAccountsAccountRequestBodyCapabilities'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"eps_payments" Text
-> Maybe PostAccountsAccountRequestBodyCapabilities'EpsPayments'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'
-> Maybe PostAccountsAccountRequestBodyCapabilities'EpsPayments'
postAccountsAccountRequestBodyCapabilities'EpsPayments PostAccountsAccountRequestBodyCapabilities'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"fpx_payments" Text
-> Maybe PostAccountsAccountRequestBodyCapabilities'FpxPayments'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'
-> Maybe PostAccountsAccountRequestBodyCapabilities'FpxPayments'
postAccountsAccountRequestBodyCapabilities'FpxPayments PostAccountsAccountRequestBodyCapabilities'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"giropay_payments" Text
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
postAccountsAccountRequestBodyCapabilities'GiropayPayments PostAccountsAccountRequestBodyCapabilities'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"grabpay_payments" Text
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
postAccountsAccountRequestBodyCapabilities'GrabpayPayments PostAccountsAccountRequestBodyCapabilities'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"ideal_payments" Text
-> Maybe PostAccountsAccountRequestBodyCapabilities'IdealPayments'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'
-> Maybe PostAccountsAccountRequestBodyCapabilities'IdealPayments'
postAccountsAccountRequestBodyCapabilities'IdealPayments PostAccountsAccountRequestBodyCapabilities'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"jcb_payments" Text
-> Maybe PostAccountsAccountRequestBodyCapabilities'JcbPayments'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'
-> Maybe PostAccountsAccountRequestBodyCapabilities'JcbPayments'
postAccountsAccountRequestBodyCapabilities'JcbPayments PostAccountsAccountRequestBodyCapabilities'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"legacy_payments" Text
-> Maybe PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'
-> Maybe PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
postAccountsAccountRequestBodyCapabilities'LegacyPayments PostAccountsAccountRequestBodyCapabilities'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"oxxo_payments" Text
-> Maybe PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'
-> Maybe PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
postAccountsAccountRequestBodyCapabilities'OxxoPayments PostAccountsAccountRequestBodyCapabilities'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"p24_payments" Text
-> Maybe PostAccountsAccountRequestBodyCapabilities'P24Payments'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'
-> Maybe PostAccountsAccountRequestBodyCapabilities'P24Payments'
postAccountsAccountRequestBodyCapabilities'P24Payments PostAccountsAccountRequestBodyCapabilities'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"sepa_debit_payments" Text
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
postAccountsAccountRequestBodyCapabilities'SepaDebitPayments PostAccountsAccountRequestBodyCapabilities'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"sofort_payments" Text
-> Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'
-> Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
postAccountsAccountRequestBodyCapabilities'SofortPayments PostAccountsAccountRequestBodyCapabilities'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"tax_reporting_us_1099_k" Text
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
postAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K PostAccountsAccountRequestBodyCapabilities'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"tax_reporting_us_1099_misc" Text
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
postAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc PostAccountsAccountRequestBodyCapabilities'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> (Text
"transfers" Text
-> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'
-> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
postAccountsAccountRequestBodyCapabilities'Transfers PostAccountsAccountRequestBodyCapabilities'
obj))))))))))))))))))))))

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyCapabilities' where
  parseJSON :: Value -> Parser PostAccountsAccountRequestBodyCapabilities'
parseJSON = String
-> (Object -> Parser PostAccountsAccountRequestBodyCapabilities')
-> Value
-> Parser PostAccountsAccountRequestBodyCapabilities'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyCapabilities'" (\Object
obj -> ((((((((((((((((((((((Maybe
   PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
 -> Maybe
      PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
 -> Maybe
      PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
 -> Maybe
      PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
 -> Maybe
      PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
 -> Maybe PostAccountsAccountRequestBodyCapabilities'CardIssuing'
 -> Maybe PostAccountsAccountRequestBodyCapabilities'CardPayments'
 -> Maybe
      PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
 -> Maybe PostAccountsAccountRequestBodyCapabilities'EpsPayments'
 -> Maybe PostAccountsAccountRequestBodyCapabilities'FpxPayments'
 -> Maybe
      PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
 -> Maybe
      PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
 -> Maybe PostAccountsAccountRequestBodyCapabilities'IdealPayments'
 -> Maybe PostAccountsAccountRequestBodyCapabilities'JcbPayments'
 -> Maybe PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
 -> Maybe PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
 -> Maybe PostAccountsAccountRequestBodyCapabilities'P24Payments'
 -> Maybe
      PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
 -> Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
 -> Maybe
      PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
 -> Maybe
      PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
 -> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
 -> PostAccountsAccountRequestBodyCapabilities')
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'CardIssuing'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'CardPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'EpsPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'FpxPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'IdealPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'JcbPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'P24Payments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
      -> PostAccountsAccountRequestBodyCapabilities')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
-> Maybe PostAccountsAccountRequestBodyCapabilities'CardIssuing'
-> Maybe PostAccountsAccountRequestBodyCapabilities'CardPayments'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
-> Maybe PostAccountsAccountRequestBodyCapabilities'EpsPayments'
-> Maybe PostAccountsAccountRequestBodyCapabilities'FpxPayments'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
-> Maybe PostAccountsAccountRequestBodyCapabilities'IdealPayments'
-> Maybe PostAccountsAccountRequestBodyCapabilities'JcbPayments'
-> Maybe PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
-> Maybe PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
-> Maybe PostAccountsAccountRequestBodyCapabilities'P24Payments'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
-> Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
-> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
-> PostAccountsAccountRequestBodyCapabilities'
PostAccountsAccountRequestBodyCapabilities' Parser
  (Maybe
     PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'CardIssuing'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'CardPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'EpsPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'FpxPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'IdealPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'JcbPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'P24Payments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
   -> PostAccountsAccountRequestBodyCapabilities')
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments')
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'CardIssuing'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'CardPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'EpsPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'FpxPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'IdealPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'JcbPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'P24Payments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
      -> PostAccountsAccountRequestBodyCapabilities')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"acss_debit_payments")) Parser
  (Maybe
     PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'CardIssuing'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'CardPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'EpsPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'FpxPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'IdealPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'JcbPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'P24Payments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
   -> PostAccountsAccountRequestBodyCapabilities')
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments')
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'CardIssuing'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'CardPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'EpsPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'FpxPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'IdealPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'JcbPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'P24Payments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
      -> PostAccountsAccountRequestBodyCapabilities')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"afterpay_clearpay_payments")) Parser
  (Maybe
     PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'CardIssuing'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'CardPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'EpsPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'FpxPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'IdealPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'JcbPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'P24Payments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
   -> PostAccountsAccountRequestBodyCapabilities')
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments')
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'CardIssuing'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'CardPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'EpsPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'FpxPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'IdealPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'JcbPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'P24Payments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
      -> PostAccountsAccountRequestBodyCapabilities')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"au_becs_debit_payments")) Parser
  (Maybe
     PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'CardIssuing'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'CardPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'EpsPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'FpxPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'IdealPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'JcbPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'P24Payments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
   -> PostAccountsAccountRequestBodyCapabilities')
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments')
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'CardIssuing'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'CardPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'EpsPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'FpxPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'IdealPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'JcbPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'P24Payments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
      -> PostAccountsAccountRequestBodyCapabilities')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"bacs_debit_payments")) Parser
  (Maybe
     PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'CardIssuing'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'CardPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'EpsPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'FpxPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'IdealPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'JcbPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'P24Payments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
   -> PostAccountsAccountRequestBodyCapabilities')
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyCapabilities'BancontactPayments')
-> Parser
     (Maybe PostAccountsAccountRequestBodyCapabilities'CardIssuing'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'CardPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'EpsPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'FpxPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'IdealPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'JcbPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'P24Payments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
      -> PostAccountsAccountRequestBodyCapabilities')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyCapabilities'BancontactPayments')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"bancontact_payments")) Parser
  (Maybe PostAccountsAccountRequestBodyCapabilities'CardIssuing'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'CardPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'EpsPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'FpxPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'IdealPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'JcbPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'P24Payments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
   -> PostAccountsAccountRequestBodyCapabilities')
-> Parser
     (Maybe PostAccountsAccountRequestBodyCapabilities'CardIssuing')
-> Parser
     (Maybe PostAccountsAccountRequestBodyCapabilities'CardPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'EpsPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'FpxPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'IdealPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'JcbPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'P24Payments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
      -> PostAccountsAccountRequestBodyCapabilities')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe PostAccountsAccountRequestBodyCapabilities'CardIssuing')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"card_issuing")) Parser
  (Maybe PostAccountsAccountRequestBodyCapabilities'CardPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'EpsPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'FpxPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'IdealPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'JcbPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'P24Payments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
   -> PostAccountsAccountRequestBodyCapabilities')
-> Parser
     (Maybe PostAccountsAccountRequestBodyCapabilities'CardPayments')
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'EpsPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'FpxPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'IdealPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'JcbPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'P24Payments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
      -> PostAccountsAccountRequestBodyCapabilities')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe PostAccountsAccountRequestBodyCapabilities'CardPayments')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"card_payments")) Parser
  (Maybe
     PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'EpsPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'FpxPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'IdealPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'JcbPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'P24Payments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
   -> PostAccountsAccountRequestBodyCapabilities')
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments')
-> Parser
     (Maybe PostAccountsAccountRequestBodyCapabilities'EpsPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'FpxPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'IdealPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'JcbPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'P24Payments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
      -> PostAccountsAccountRequestBodyCapabilities')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"cartes_bancaires_payments")) Parser
  (Maybe PostAccountsAccountRequestBodyCapabilities'EpsPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'FpxPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'IdealPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'JcbPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'P24Payments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
   -> PostAccountsAccountRequestBodyCapabilities')
-> Parser
     (Maybe PostAccountsAccountRequestBodyCapabilities'EpsPayments')
-> Parser
     (Maybe PostAccountsAccountRequestBodyCapabilities'FpxPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'IdealPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'JcbPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'P24Payments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
      -> PostAccountsAccountRequestBodyCapabilities')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe PostAccountsAccountRequestBodyCapabilities'EpsPayments')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"eps_payments")) Parser
  (Maybe PostAccountsAccountRequestBodyCapabilities'FpxPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'IdealPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'JcbPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'P24Payments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
   -> PostAccountsAccountRequestBodyCapabilities')
-> Parser
     (Maybe PostAccountsAccountRequestBodyCapabilities'FpxPayments')
-> Parser
     (Maybe PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'IdealPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'JcbPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'P24Payments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
      -> PostAccountsAccountRequestBodyCapabilities')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe PostAccountsAccountRequestBodyCapabilities'FpxPayments')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"fpx_payments")) Parser
  (Maybe PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'IdealPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'JcbPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'P24Payments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
   -> PostAccountsAccountRequestBodyCapabilities')
-> Parser
     (Maybe PostAccountsAccountRequestBodyCapabilities'GiropayPayments')
-> Parser
     (Maybe PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'IdealPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'JcbPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'P24Payments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
      -> PostAccountsAccountRequestBodyCapabilities')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe PostAccountsAccountRequestBodyCapabilities'GiropayPayments')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"giropay_payments")) Parser
  (Maybe PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'IdealPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'JcbPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'P24Payments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
   -> PostAccountsAccountRequestBodyCapabilities')
-> Parser
     (Maybe PostAccountsAccountRequestBodyCapabilities'GrabpayPayments')
-> Parser
     (Maybe PostAccountsAccountRequestBodyCapabilities'IdealPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'JcbPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'P24Payments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
      -> PostAccountsAccountRequestBodyCapabilities')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe PostAccountsAccountRequestBodyCapabilities'GrabpayPayments')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"grabpay_payments")) Parser
  (Maybe PostAccountsAccountRequestBodyCapabilities'IdealPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'JcbPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'P24Payments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
   -> PostAccountsAccountRequestBodyCapabilities')
-> Parser
     (Maybe PostAccountsAccountRequestBodyCapabilities'IdealPayments')
-> Parser
     (Maybe PostAccountsAccountRequestBodyCapabilities'JcbPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'P24Payments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
      -> PostAccountsAccountRequestBodyCapabilities')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe PostAccountsAccountRequestBodyCapabilities'IdealPayments')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"ideal_payments")) Parser
  (Maybe PostAccountsAccountRequestBodyCapabilities'JcbPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'P24Payments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
   -> PostAccountsAccountRequestBodyCapabilities')
-> Parser
     (Maybe PostAccountsAccountRequestBodyCapabilities'JcbPayments')
-> Parser
     (Maybe PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'P24Payments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
      -> PostAccountsAccountRequestBodyCapabilities')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe PostAccountsAccountRequestBodyCapabilities'JcbPayments')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"jcb_payments")) Parser
  (Maybe PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'P24Payments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
   -> PostAccountsAccountRequestBodyCapabilities')
-> Parser
     (Maybe PostAccountsAccountRequestBodyCapabilities'LegacyPayments')
-> Parser
     (Maybe PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'P24Payments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
      -> PostAccountsAccountRequestBodyCapabilities')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe PostAccountsAccountRequestBodyCapabilities'LegacyPayments')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"legacy_payments")) Parser
  (Maybe PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'P24Payments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
   -> PostAccountsAccountRequestBodyCapabilities')
-> Parser
     (Maybe PostAccountsAccountRequestBodyCapabilities'OxxoPayments')
-> Parser
     (Maybe PostAccountsAccountRequestBodyCapabilities'P24Payments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
      -> PostAccountsAccountRequestBodyCapabilities')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe PostAccountsAccountRequestBodyCapabilities'OxxoPayments')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"oxxo_payments")) Parser
  (Maybe PostAccountsAccountRequestBodyCapabilities'P24Payments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
   -> PostAccountsAccountRequestBodyCapabilities')
-> Parser
     (Maybe PostAccountsAccountRequestBodyCapabilities'P24Payments')
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
      -> PostAccountsAccountRequestBodyCapabilities')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe PostAccountsAccountRequestBodyCapabilities'P24Payments')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"p24_payments")) Parser
  (Maybe
     PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
   -> PostAccountsAccountRequestBodyCapabilities')
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments')
-> Parser
     (Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
      -> PostAccountsAccountRequestBodyCapabilities')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"sepa_debit_payments")) Parser
  (Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
   -> PostAccountsAccountRequestBodyCapabilities')
-> Parser
     (Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments')
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
      -> Maybe
           PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
      -> PostAccountsAccountRequestBodyCapabilities')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"sofort_payments")) Parser
  (Maybe
     PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
   -> Maybe
        PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
   -> PostAccountsAccountRequestBodyCapabilities')
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K')
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
      -> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
      -> PostAccountsAccountRequestBodyCapabilities')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"tax_reporting_us_1099_k")) Parser
  (Maybe
     PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
   -> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
   -> PostAccountsAccountRequestBodyCapabilities')
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc')
-> Parser
     (Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
      -> PostAccountsAccountRequestBodyCapabilities')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"tax_reporting_us_1099_misc")) Parser
  (Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
   -> PostAccountsAccountRequestBodyCapabilities')
-> Parser
     (Maybe PostAccountsAccountRequestBodyCapabilities'Transfers')
-> Parser PostAccountsAccountRequestBodyCapabilities'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe PostAccountsAccountRequestBodyCapabilities'Transfers')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"transfers"))

-- | Create a new 'PostAccountsAccountRequestBodyCapabilities'' with all required fields.
mkPostAccountsAccountRequestBodyCapabilities' :: PostAccountsAccountRequestBodyCapabilities'
mkPostAccountsAccountRequestBodyCapabilities' :: PostAccountsAccountRequestBodyCapabilities'
mkPostAccountsAccountRequestBodyCapabilities' =
  PostAccountsAccountRequestBodyCapabilities' :: Maybe PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
-> Maybe PostAccountsAccountRequestBodyCapabilities'CardIssuing'
-> Maybe PostAccountsAccountRequestBodyCapabilities'CardPayments'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
-> Maybe PostAccountsAccountRequestBodyCapabilities'EpsPayments'
-> Maybe PostAccountsAccountRequestBodyCapabilities'FpxPayments'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
-> Maybe PostAccountsAccountRequestBodyCapabilities'IdealPayments'
-> Maybe PostAccountsAccountRequestBodyCapabilities'JcbPayments'
-> Maybe PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
-> Maybe PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
-> Maybe PostAccountsAccountRequestBodyCapabilities'P24Payments'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
-> Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
-> Maybe
     PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
-> Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
-> PostAccountsAccountRequestBodyCapabilities'
PostAccountsAccountRequestBodyCapabilities'
    { postAccountsAccountRequestBodyCapabilities'AcssDebitPayments :: Maybe PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
postAccountsAccountRequestBodyCapabilities'AcssDebitPayments = Maybe PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments :: Maybe
  PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
postAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments = Maybe
  PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments :: Maybe
  PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
postAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments = Maybe
  PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCapabilities'BacsDebitPayments :: Maybe PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
postAccountsAccountRequestBodyCapabilities'BacsDebitPayments = Maybe PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCapabilities'BancontactPayments :: Maybe
  PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
postAccountsAccountRequestBodyCapabilities'BancontactPayments = Maybe
  PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCapabilities'CardIssuing :: Maybe PostAccountsAccountRequestBodyCapabilities'CardIssuing'
postAccountsAccountRequestBodyCapabilities'CardIssuing = Maybe PostAccountsAccountRequestBodyCapabilities'CardIssuing'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCapabilities'CardPayments :: Maybe PostAccountsAccountRequestBodyCapabilities'CardPayments'
postAccountsAccountRequestBodyCapabilities'CardPayments = Maybe PostAccountsAccountRequestBodyCapabilities'CardPayments'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCapabilities'CartesBancairesPayments :: Maybe
  PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
postAccountsAccountRequestBodyCapabilities'CartesBancairesPayments = Maybe
  PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCapabilities'EpsPayments :: Maybe PostAccountsAccountRequestBodyCapabilities'EpsPayments'
postAccountsAccountRequestBodyCapabilities'EpsPayments = Maybe PostAccountsAccountRequestBodyCapabilities'EpsPayments'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCapabilities'FpxPayments :: Maybe PostAccountsAccountRequestBodyCapabilities'FpxPayments'
postAccountsAccountRequestBodyCapabilities'FpxPayments = Maybe PostAccountsAccountRequestBodyCapabilities'FpxPayments'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCapabilities'GiropayPayments :: Maybe PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
postAccountsAccountRequestBodyCapabilities'GiropayPayments = Maybe PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCapabilities'GrabpayPayments :: Maybe PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
postAccountsAccountRequestBodyCapabilities'GrabpayPayments = Maybe PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCapabilities'IdealPayments :: Maybe PostAccountsAccountRequestBodyCapabilities'IdealPayments'
postAccountsAccountRequestBodyCapabilities'IdealPayments = Maybe PostAccountsAccountRequestBodyCapabilities'IdealPayments'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCapabilities'JcbPayments :: Maybe PostAccountsAccountRequestBodyCapabilities'JcbPayments'
postAccountsAccountRequestBodyCapabilities'JcbPayments = Maybe PostAccountsAccountRequestBodyCapabilities'JcbPayments'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCapabilities'LegacyPayments :: Maybe PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
postAccountsAccountRequestBodyCapabilities'LegacyPayments = Maybe PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCapabilities'OxxoPayments :: Maybe PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
postAccountsAccountRequestBodyCapabilities'OxxoPayments = Maybe PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCapabilities'P24Payments :: Maybe PostAccountsAccountRequestBodyCapabilities'P24Payments'
postAccountsAccountRequestBodyCapabilities'P24Payments = Maybe PostAccountsAccountRequestBodyCapabilities'P24Payments'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCapabilities'SepaDebitPayments :: Maybe PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
postAccountsAccountRequestBodyCapabilities'SepaDebitPayments = Maybe PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCapabilities'SofortPayments :: Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
postAccountsAccountRequestBodyCapabilities'SofortPayments = Maybe PostAccountsAccountRequestBodyCapabilities'SofortPayments'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K :: Maybe
  PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
postAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K = Maybe
  PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc :: Maybe
  PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
postAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc = Maybe
  PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCapabilities'Transfers :: Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
postAccountsAccountRequestBodyCapabilities'Transfers = Maybe PostAccountsAccountRequestBodyCapabilities'Transfers'
forall a. Maybe a
GHC.Maybe.Nothing
    }

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.capabilities.properties.acss_debit_payments@ in the specification.
data PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments' = PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
  { -- | requested
    PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'AcssDebitPayments'Requested :: (GHC.Maybe.Maybe GHC.Types.Bool)
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
-> String
-> String
[PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments']
-> String -> String
PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
-> String
(Int
 -> PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
    -> String)
-> ([PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments']
    -> String -> String)
-> Show
     PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments']
-> String -> String
show :: PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
-> String
$cshow :: PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
-> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
-> PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
-> Bool
(PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
 -> PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
 -> Bool)
-> (PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
    -> PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
    -> Bool)
-> Eq PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
-> PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
-> Bool
$c/= :: PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
-> PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
-> Bool
== :: PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
-> PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
-> Bool
$c== :: PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
-> PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
-> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments' where
  toJSON :: PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
-> Value
toJSON PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"requested" Text -> Maybe Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'AcssDebitPayments'Requested PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
-> Encoding
toEncoding PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs (Text
"requested" Text -> Maybe Bool -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'AcssDebitPayments'Requested PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
obj)

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments' where
  parseJSON :: Value
-> Parser
     PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
parseJSON = String
-> (Object
    -> Parser
         PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments')
-> Value
-> Parser
     PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'" (\Object
obj -> (Maybe Bool
 -> PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments')
-> Parser
     (Maybe Bool
      -> PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe Bool
-> PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments' Parser
  (Maybe Bool
   -> PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments')
-> Parser (Maybe Bool)
-> Parser
     PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"requested"))

-- | Create a new 'PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'' with all required fields.
mkPostAccountsAccountRequestBodyCapabilities'AcssDebitPayments' :: PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
mkPostAccountsAccountRequestBodyCapabilities'AcssDebitPayments' :: PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
mkPostAccountsAccountRequestBodyCapabilities'AcssDebitPayments' = PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments' :: Maybe Bool
-> PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments'
PostAccountsAccountRequestBodyCapabilities'AcssDebitPayments' {postAccountsAccountRequestBodyCapabilities'AcssDebitPayments'Requested :: Maybe Bool
postAccountsAccountRequestBodyCapabilities'AcssDebitPayments'Requested = Maybe Bool
forall a. Maybe a
GHC.Maybe.Nothing}

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.capabilities.properties.afterpay_clearpay_payments@ in the specification.
data PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments' = PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
  { -- | requested
    PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'Requested :: (GHC.Maybe.Maybe GHC.Types.Bool)
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
-> String
-> String
[PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments']
-> String -> String
PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
-> String
(Int
 -> PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
    -> String)
-> ([PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments']
    -> String -> String)
-> Show
     PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments']
-> String -> String
show :: PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
-> String
$cshow :: PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
-> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
-> PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
-> Bool
(PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
 -> PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
 -> Bool)
-> (PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
    -> PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
    -> Bool)
-> Eq
     PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
-> PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
-> Bool
$c/= :: PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
-> PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
-> Bool
== :: PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
-> PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
-> Bool
$c== :: PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
-> PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
-> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments' where
  toJSON :: PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
-> Value
toJSON PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"requested" Text -> Maybe Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'Requested PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
-> Encoding
toEncoding PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs (Text
"requested" Text -> Maybe Bool -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'Requested PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
obj)

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments' where
  parseJSON :: Value
-> Parser
     PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
parseJSON = String
-> (Object
    -> Parser
         PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments')
-> Value
-> Parser
     PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'" (\Object
obj -> (Maybe Bool
 -> PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments')
-> Parser
     (Maybe Bool
      -> PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe Bool
-> PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments' Parser
  (Maybe Bool
   -> PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments')
-> Parser (Maybe Bool)
-> Parser
     PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"requested"))

-- | Create a new 'PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'' with all required fields.
mkPostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments' :: PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
mkPostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments' :: PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
mkPostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments' = PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments' :: Maybe Bool
-> PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'
PostAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments' {postAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'Requested :: Maybe Bool
postAccountsAccountRequestBodyCapabilities'AfterpayClearpayPayments'Requested = Maybe Bool
forall a. Maybe a
GHC.Maybe.Nothing}

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.capabilities.properties.au_becs_debit_payments@ in the specification.
data PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments' = PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
  { -- | requested
    PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'Requested :: (GHC.Maybe.Maybe GHC.Types.Bool)
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
-> String
-> String
[PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments']
-> String -> String
PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
-> String
(Int
 -> PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
    -> String)
-> ([PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments']
    -> String -> String)
-> Show
     PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments']
-> String -> String
show :: PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
-> String
$cshow :: PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
-> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
-> PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
-> Bool
(PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
 -> PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
 -> Bool)
-> (PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
    -> PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
    -> Bool)
-> Eq
     PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
-> PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
-> Bool
$c/= :: PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
-> PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
-> Bool
== :: PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
-> PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
-> Bool
$c== :: PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
-> PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
-> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments' where
  toJSON :: PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
-> Value
toJSON PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"requested" Text -> Maybe Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'Requested PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
-> Encoding
toEncoding PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs (Text
"requested" Text -> Maybe Bool -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'Requested PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
obj)

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments' where
  parseJSON :: Value
-> Parser
     PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
parseJSON = String
-> (Object
    -> Parser
         PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments')
-> Value
-> Parser
     PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'" (\Object
obj -> (Maybe Bool
 -> PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments')
-> Parser
     (Maybe Bool
      -> PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe Bool
-> PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments' Parser
  (Maybe Bool
   -> PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments')
-> Parser (Maybe Bool)
-> Parser
     PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"requested"))

-- | Create a new 'PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'' with all required fields.
mkPostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments' :: PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
mkPostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments' :: PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
mkPostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments' = PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments' :: Maybe Bool
-> PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'
PostAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments' {postAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'Requested :: Maybe Bool
postAccountsAccountRequestBodyCapabilities'AuBecsDebitPayments'Requested = Maybe Bool
forall a. Maybe a
GHC.Maybe.Nothing}

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.capabilities.properties.bacs_debit_payments@ in the specification.
data PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments' = PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
  { -- | requested
    PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'BacsDebitPayments'Requested :: (GHC.Maybe.Maybe GHC.Types.Bool)
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
-> String
-> String
[PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments']
-> String -> String
PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
-> String
(Int
 -> PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
    -> String)
-> ([PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments']
    -> String -> String)
-> Show
     PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments']
-> String -> String
show :: PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
-> String
$cshow :: PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
-> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
-> PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
-> Bool
(PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
 -> PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
 -> Bool)
-> (PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
    -> PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
    -> Bool)
-> Eq PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
-> PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
-> Bool
$c/= :: PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
-> PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
-> Bool
== :: PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
-> PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
-> Bool
$c== :: PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
-> PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
-> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments' where
  toJSON :: PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
-> Value
toJSON PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"requested" Text -> Maybe Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'BacsDebitPayments'Requested PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
-> Encoding
toEncoding PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs (Text
"requested" Text -> Maybe Bool -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'BacsDebitPayments'Requested PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
obj)

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments' where
  parseJSON :: Value
-> Parser
     PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
parseJSON = String
-> (Object
    -> Parser
         PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments')
-> Value
-> Parser
     PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'" (\Object
obj -> (Maybe Bool
 -> PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments')
-> Parser
     (Maybe Bool
      -> PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe Bool
-> PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments' Parser
  (Maybe Bool
   -> PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments')
-> Parser (Maybe Bool)
-> Parser
     PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"requested"))

-- | Create a new 'PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'' with all required fields.
mkPostAccountsAccountRequestBodyCapabilities'BacsDebitPayments' :: PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
mkPostAccountsAccountRequestBodyCapabilities'BacsDebitPayments' :: PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
mkPostAccountsAccountRequestBodyCapabilities'BacsDebitPayments' = PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments' :: Maybe Bool
-> PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments'
PostAccountsAccountRequestBodyCapabilities'BacsDebitPayments' {postAccountsAccountRequestBodyCapabilities'BacsDebitPayments'Requested :: Maybe Bool
postAccountsAccountRequestBodyCapabilities'BacsDebitPayments'Requested = Maybe Bool
forall a. Maybe a
GHC.Maybe.Nothing}

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.capabilities.properties.bancontact_payments@ in the specification.
data PostAccountsAccountRequestBodyCapabilities'BancontactPayments' = PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
  { -- | requested
    PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'BancontactPayments'Requested :: (GHC.Maybe.Maybe GHC.Types.Bool)
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
-> String
-> String
[PostAccountsAccountRequestBodyCapabilities'BancontactPayments']
-> String -> String
PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
-> String
(Int
 -> PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
    -> String)
-> ([PostAccountsAccountRequestBodyCapabilities'BancontactPayments']
    -> String -> String)
-> Show
     PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyCapabilities'BancontactPayments']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyCapabilities'BancontactPayments']
-> String -> String
show :: PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
-> String
$cshow :: PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
-> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
-> PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
-> Bool
(PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
 -> PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
 -> Bool)
-> (PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
    -> PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
    -> Bool)
-> Eq
     PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
-> PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
-> Bool
$c/= :: PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
-> PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
-> Bool
== :: PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
-> PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
-> Bool
$c== :: PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
-> PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
-> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyCapabilities'BancontactPayments' where
  toJSON :: PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
-> Value
toJSON PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"requested" Text -> Maybe Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'BancontactPayments'Requested PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
-> Encoding
toEncoding PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs (Text
"requested" Text -> Maybe Bool -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'BancontactPayments'Requested PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
obj)

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyCapabilities'BancontactPayments' where
  parseJSON :: Value
-> Parser
     PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
parseJSON = String
-> (Object
    -> Parser
         PostAccountsAccountRequestBodyCapabilities'BancontactPayments')
-> Value
-> Parser
     PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyCapabilities'BancontactPayments'" (\Object
obj -> (Maybe Bool
 -> PostAccountsAccountRequestBodyCapabilities'BancontactPayments')
-> Parser
     (Maybe Bool
      -> PostAccountsAccountRequestBodyCapabilities'BancontactPayments')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe Bool
-> PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
PostAccountsAccountRequestBodyCapabilities'BancontactPayments' Parser
  (Maybe Bool
   -> PostAccountsAccountRequestBodyCapabilities'BancontactPayments')
-> Parser (Maybe Bool)
-> Parser
     PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"requested"))

-- | Create a new 'PostAccountsAccountRequestBodyCapabilities'BancontactPayments'' with all required fields.
mkPostAccountsAccountRequestBodyCapabilities'BancontactPayments' :: PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
mkPostAccountsAccountRequestBodyCapabilities'BancontactPayments' :: PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
mkPostAccountsAccountRequestBodyCapabilities'BancontactPayments' = PostAccountsAccountRequestBodyCapabilities'BancontactPayments' :: Maybe Bool
-> PostAccountsAccountRequestBodyCapabilities'BancontactPayments'
PostAccountsAccountRequestBodyCapabilities'BancontactPayments' {postAccountsAccountRequestBodyCapabilities'BancontactPayments'Requested :: Maybe Bool
postAccountsAccountRequestBodyCapabilities'BancontactPayments'Requested = Maybe Bool
forall a. Maybe a
GHC.Maybe.Nothing}

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.capabilities.properties.card_issuing@ in the specification.
data PostAccountsAccountRequestBodyCapabilities'CardIssuing' = PostAccountsAccountRequestBodyCapabilities'CardIssuing'
  { -- | requested
    PostAccountsAccountRequestBodyCapabilities'CardIssuing'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'CardIssuing'Requested :: (GHC.Maybe.Maybe GHC.Types.Bool)
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodyCapabilities'CardIssuing'
-> String
-> String
[PostAccountsAccountRequestBodyCapabilities'CardIssuing']
-> String -> String
PostAccountsAccountRequestBodyCapabilities'CardIssuing' -> String
(Int
 -> PostAccountsAccountRequestBodyCapabilities'CardIssuing'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyCapabilities'CardIssuing'
    -> String)
-> ([PostAccountsAccountRequestBodyCapabilities'CardIssuing']
    -> String -> String)
-> Show PostAccountsAccountRequestBodyCapabilities'CardIssuing'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyCapabilities'CardIssuing']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyCapabilities'CardIssuing']
-> String -> String
show :: PostAccountsAccountRequestBodyCapabilities'CardIssuing' -> String
$cshow :: PostAccountsAccountRequestBodyCapabilities'CardIssuing' -> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyCapabilities'CardIssuing'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyCapabilities'CardIssuing'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyCapabilities'CardIssuing'
-> PostAccountsAccountRequestBodyCapabilities'CardIssuing' -> Bool
(PostAccountsAccountRequestBodyCapabilities'CardIssuing'
 -> PostAccountsAccountRequestBodyCapabilities'CardIssuing' -> Bool)
-> (PostAccountsAccountRequestBodyCapabilities'CardIssuing'
    -> PostAccountsAccountRequestBodyCapabilities'CardIssuing' -> Bool)
-> Eq PostAccountsAccountRequestBodyCapabilities'CardIssuing'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyCapabilities'CardIssuing'
-> PostAccountsAccountRequestBodyCapabilities'CardIssuing' -> Bool
$c/= :: PostAccountsAccountRequestBodyCapabilities'CardIssuing'
-> PostAccountsAccountRequestBodyCapabilities'CardIssuing' -> Bool
== :: PostAccountsAccountRequestBodyCapabilities'CardIssuing'
-> PostAccountsAccountRequestBodyCapabilities'CardIssuing' -> Bool
$c== :: PostAccountsAccountRequestBodyCapabilities'CardIssuing'
-> PostAccountsAccountRequestBodyCapabilities'CardIssuing' -> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyCapabilities'CardIssuing' where
  toJSON :: PostAccountsAccountRequestBodyCapabilities'CardIssuing' -> Value
toJSON PostAccountsAccountRequestBodyCapabilities'CardIssuing'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"requested" Text -> Maybe Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'CardIssuing'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'CardIssuing'Requested PostAccountsAccountRequestBodyCapabilities'CardIssuing'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyCapabilities'CardIssuing' -> Encoding
toEncoding PostAccountsAccountRequestBodyCapabilities'CardIssuing'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs (Text
"requested" Text -> Maybe Bool -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'CardIssuing'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'CardIssuing'Requested PostAccountsAccountRequestBodyCapabilities'CardIssuing'
obj)

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyCapabilities'CardIssuing' where
  parseJSON :: Value
-> Parser PostAccountsAccountRequestBodyCapabilities'CardIssuing'
parseJSON = String
-> (Object
    -> Parser PostAccountsAccountRequestBodyCapabilities'CardIssuing')
-> Value
-> Parser PostAccountsAccountRequestBodyCapabilities'CardIssuing'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyCapabilities'CardIssuing'" (\Object
obj -> (Maybe Bool
 -> PostAccountsAccountRequestBodyCapabilities'CardIssuing')
-> Parser
     (Maybe Bool
      -> PostAccountsAccountRequestBodyCapabilities'CardIssuing')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe Bool
-> PostAccountsAccountRequestBodyCapabilities'CardIssuing'
PostAccountsAccountRequestBodyCapabilities'CardIssuing' Parser
  (Maybe Bool
   -> PostAccountsAccountRequestBodyCapabilities'CardIssuing')
-> Parser (Maybe Bool)
-> Parser PostAccountsAccountRequestBodyCapabilities'CardIssuing'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"requested"))

-- | Create a new 'PostAccountsAccountRequestBodyCapabilities'CardIssuing'' with all required fields.
mkPostAccountsAccountRequestBodyCapabilities'CardIssuing' :: PostAccountsAccountRequestBodyCapabilities'CardIssuing'
mkPostAccountsAccountRequestBodyCapabilities'CardIssuing' :: PostAccountsAccountRequestBodyCapabilities'CardIssuing'
mkPostAccountsAccountRequestBodyCapabilities'CardIssuing' = PostAccountsAccountRequestBodyCapabilities'CardIssuing' :: Maybe Bool
-> PostAccountsAccountRequestBodyCapabilities'CardIssuing'
PostAccountsAccountRequestBodyCapabilities'CardIssuing' {postAccountsAccountRequestBodyCapabilities'CardIssuing'Requested :: Maybe Bool
postAccountsAccountRequestBodyCapabilities'CardIssuing'Requested = Maybe Bool
forall a. Maybe a
GHC.Maybe.Nothing}

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.capabilities.properties.card_payments@ in the specification.
data PostAccountsAccountRequestBodyCapabilities'CardPayments' = PostAccountsAccountRequestBodyCapabilities'CardPayments'
  { -- | requested
    PostAccountsAccountRequestBodyCapabilities'CardPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'CardPayments'Requested :: (GHC.Maybe.Maybe GHC.Types.Bool)
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodyCapabilities'CardPayments'
-> String
-> String
[PostAccountsAccountRequestBodyCapabilities'CardPayments']
-> String -> String
PostAccountsAccountRequestBodyCapabilities'CardPayments' -> String
(Int
 -> PostAccountsAccountRequestBodyCapabilities'CardPayments'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyCapabilities'CardPayments'
    -> String)
-> ([PostAccountsAccountRequestBodyCapabilities'CardPayments']
    -> String -> String)
-> Show PostAccountsAccountRequestBodyCapabilities'CardPayments'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyCapabilities'CardPayments']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyCapabilities'CardPayments']
-> String -> String
show :: PostAccountsAccountRequestBodyCapabilities'CardPayments' -> String
$cshow :: PostAccountsAccountRequestBodyCapabilities'CardPayments' -> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyCapabilities'CardPayments'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyCapabilities'CardPayments'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyCapabilities'CardPayments'
-> PostAccountsAccountRequestBodyCapabilities'CardPayments' -> Bool
(PostAccountsAccountRequestBodyCapabilities'CardPayments'
 -> PostAccountsAccountRequestBodyCapabilities'CardPayments'
 -> Bool)
-> (PostAccountsAccountRequestBodyCapabilities'CardPayments'
    -> PostAccountsAccountRequestBodyCapabilities'CardPayments'
    -> Bool)
-> Eq PostAccountsAccountRequestBodyCapabilities'CardPayments'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyCapabilities'CardPayments'
-> PostAccountsAccountRequestBodyCapabilities'CardPayments' -> Bool
$c/= :: PostAccountsAccountRequestBodyCapabilities'CardPayments'
-> PostAccountsAccountRequestBodyCapabilities'CardPayments' -> Bool
== :: PostAccountsAccountRequestBodyCapabilities'CardPayments'
-> PostAccountsAccountRequestBodyCapabilities'CardPayments' -> Bool
$c== :: PostAccountsAccountRequestBodyCapabilities'CardPayments'
-> PostAccountsAccountRequestBodyCapabilities'CardPayments' -> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyCapabilities'CardPayments' where
  toJSON :: PostAccountsAccountRequestBodyCapabilities'CardPayments' -> Value
toJSON PostAccountsAccountRequestBodyCapabilities'CardPayments'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"requested" Text -> Maybe Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'CardPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'CardPayments'Requested PostAccountsAccountRequestBodyCapabilities'CardPayments'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyCapabilities'CardPayments'
-> Encoding
toEncoding PostAccountsAccountRequestBodyCapabilities'CardPayments'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs (Text
"requested" Text -> Maybe Bool -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'CardPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'CardPayments'Requested PostAccountsAccountRequestBodyCapabilities'CardPayments'
obj)

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyCapabilities'CardPayments' where
  parseJSON :: Value
-> Parser PostAccountsAccountRequestBodyCapabilities'CardPayments'
parseJSON = String
-> (Object
    -> Parser PostAccountsAccountRequestBodyCapabilities'CardPayments')
-> Value
-> Parser PostAccountsAccountRequestBodyCapabilities'CardPayments'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyCapabilities'CardPayments'" (\Object
obj -> (Maybe Bool
 -> PostAccountsAccountRequestBodyCapabilities'CardPayments')
-> Parser
     (Maybe Bool
      -> PostAccountsAccountRequestBodyCapabilities'CardPayments')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe Bool
-> PostAccountsAccountRequestBodyCapabilities'CardPayments'
PostAccountsAccountRequestBodyCapabilities'CardPayments' Parser
  (Maybe Bool
   -> PostAccountsAccountRequestBodyCapabilities'CardPayments')
-> Parser (Maybe Bool)
-> Parser PostAccountsAccountRequestBodyCapabilities'CardPayments'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"requested"))

-- | Create a new 'PostAccountsAccountRequestBodyCapabilities'CardPayments'' with all required fields.
mkPostAccountsAccountRequestBodyCapabilities'CardPayments' :: PostAccountsAccountRequestBodyCapabilities'CardPayments'
mkPostAccountsAccountRequestBodyCapabilities'CardPayments' :: PostAccountsAccountRequestBodyCapabilities'CardPayments'
mkPostAccountsAccountRequestBodyCapabilities'CardPayments' = PostAccountsAccountRequestBodyCapabilities'CardPayments' :: Maybe Bool
-> PostAccountsAccountRequestBodyCapabilities'CardPayments'
PostAccountsAccountRequestBodyCapabilities'CardPayments' {postAccountsAccountRequestBodyCapabilities'CardPayments'Requested :: Maybe Bool
postAccountsAccountRequestBodyCapabilities'CardPayments'Requested = Maybe Bool
forall a. Maybe a
GHC.Maybe.Nothing}

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.capabilities.properties.cartes_bancaires_payments@ in the specification.
data PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments' = PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
  { -- | requested
    PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'Requested :: (GHC.Maybe.Maybe GHC.Types.Bool)
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
-> String
-> String
[PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments']
-> String -> String
PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
-> String
(Int
 -> PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
    -> String)
-> ([PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments']
    -> String -> String)
-> Show
     PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments']
-> String -> String
show :: PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
-> String
$cshow :: PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
-> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
-> PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
-> Bool
(PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
 -> PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
 -> Bool)
-> (PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
    -> PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
    -> Bool)
-> Eq
     PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
-> PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
-> Bool
$c/= :: PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
-> PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
-> Bool
== :: PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
-> PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
-> Bool
$c== :: PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
-> PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
-> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments' where
  toJSON :: PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
-> Value
toJSON PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"requested" Text -> Maybe Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'Requested PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
-> Encoding
toEncoding PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs (Text
"requested" Text -> Maybe Bool -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'Requested PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
obj)

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments' where
  parseJSON :: Value
-> Parser
     PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
parseJSON = String
-> (Object
    -> Parser
         PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments')
-> Value
-> Parser
     PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'" (\Object
obj -> (Maybe Bool
 -> PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments')
-> Parser
     (Maybe Bool
      -> PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe Bool
-> PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments' Parser
  (Maybe Bool
   -> PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments')
-> Parser (Maybe Bool)
-> Parser
     PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"requested"))

-- | Create a new 'PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'' with all required fields.
mkPostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments' :: PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
mkPostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments' :: PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
mkPostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments' = PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments' :: Maybe Bool
-> PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'
PostAccountsAccountRequestBodyCapabilities'CartesBancairesPayments' {postAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'Requested :: Maybe Bool
postAccountsAccountRequestBodyCapabilities'CartesBancairesPayments'Requested = Maybe Bool
forall a. Maybe a
GHC.Maybe.Nothing}

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.capabilities.properties.eps_payments@ in the specification.
data PostAccountsAccountRequestBodyCapabilities'EpsPayments' = PostAccountsAccountRequestBodyCapabilities'EpsPayments'
  { -- | requested
    PostAccountsAccountRequestBodyCapabilities'EpsPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'EpsPayments'Requested :: (GHC.Maybe.Maybe GHC.Types.Bool)
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodyCapabilities'EpsPayments'
-> String
-> String
[PostAccountsAccountRequestBodyCapabilities'EpsPayments']
-> String -> String
PostAccountsAccountRequestBodyCapabilities'EpsPayments' -> String
(Int
 -> PostAccountsAccountRequestBodyCapabilities'EpsPayments'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyCapabilities'EpsPayments'
    -> String)
-> ([PostAccountsAccountRequestBodyCapabilities'EpsPayments']
    -> String -> String)
-> Show PostAccountsAccountRequestBodyCapabilities'EpsPayments'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyCapabilities'EpsPayments']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyCapabilities'EpsPayments']
-> String -> String
show :: PostAccountsAccountRequestBodyCapabilities'EpsPayments' -> String
$cshow :: PostAccountsAccountRequestBodyCapabilities'EpsPayments' -> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyCapabilities'EpsPayments'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyCapabilities'EpsPayments'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyCapabilities'EpsPayments'
-> PostAccountsAccountRequestBodyCapabilities'EpsPayments' -> Bool
(PostAccountsAccountRequestBodyCapabilities'EpsPayments'
 -> PostAccountsAccountRequestBodyCapabilities'EpsPayments' -> Bool)
-> (PostAccountsAccountRequestBodyCapabilities'EpsPayments'
    -> PostAccountsAccountRequestBodyCapabilities'EpsPayments' -> Bool)
-> Eq PostAccountsAccountRequestBodyCapabilities'EpsPayments'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyCapabilities'EpsPayments'
-> PostAccountsAccountRequestBodyCapabilities'EpsPayments' -> Bool
$c/= :: PostAccountsAccountRequestBodyCapabilities'EpsPayments'
-> PostAccountsAccountRequestBodyCapabilities'EpsPayments' -> Bool
== :: PostAccountsAccountRequestBodyCapabilities'EpsPayments'
-> PostAccountsAccountRequestBodyCapabilities'EpsPayments' -> Bool
$c== :: PostAccountsAccountRequestBodyCapabilities'EpsPayments'
-> PostAccountsAccountRequestBodyCapabilities'EpsPayments' -> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyCapabilities'EpsPayments' where
  toJSON :: PostAccountsAccountRequestBodyCapabilities'EpsPayments' -> Value
toJSON PostAccountsAccountRequestBodyCapabilities'EpsPayments'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"requested" Text -> Maybe Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'EpsPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'EpsPayments'Requested PostAccountsAccountRequestBodyCapabilities'EpsPayments'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyCapabilities'EpsPayments' -> Encoding
toEncoding PostAccountsAccountRequestBodyCapabilities'EpsPayments'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs (Text
"requested" Text -> Maybe Bool -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'EpsPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'EpsPayments'Requested PostAccountsAccountRequestBodyCapabilities'EpsPayments'
obj)

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyCapabilities'EpsPayments' where
  parseJSON :: Value
-> Parser PostAccountsAccountRequestBodyCapabilities'EpsPayments'
parseJSON = String
-> (Object
    -> Parser PostAccountsAccountRequestBodyCapabilities'EpsPayments')
-> Value
-> Parser PostAccountsAccountRequestBodyCapabilities'EpsPayments'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyCapabilities'EpsPayments'" (\Object
obj -> (Maybe Bool
 -> PostAccountsAccountRequestBodyCapabilities'EpsPayments')
-> Parser
     (Maybe Bool
      -> PostAccountsAccountRequestBodyCapabilities'EpsPayments')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe Bool
-> PostAccountsAccountRequestBodyCapabilities'EpsPayments'
PostAccountsAccountRequestBodyCapabilities'EpsPayments' Parser
  (Maybe Bool
   -> PostAccountsAccountRequestBodyCapabilities'EpsPayments')
-> Parser (Maybe Bool)
-> Parser PostAccountsAccountRequestBodyCapabilities'EpsPayments'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"requested"))

-- | Create a new 'PostAccountsAccountRequestBodyCapabilities'EpsPayments'' with all required fields.
mkPostAccountsAccountRequestBodyCapabilities'EpsPayments' :: PostAccountsAccountRequestBodyCapabilities'EpsPayments'
mkPostAccountsAccountRequestBodyCapabilities'EpsPayments' :: PostAccountsAccountRequestBodyCapabilities'EpsPayments'
mkPostAccountsAccountRequestBodyCapabilities'EpsPayments' = PostAccountsAccountRequestBodyCapabilities'EpsPayments' :: Maybe Bool
-> PostAccountsAccountRequestBodyCapabilities'EpsPayments'
PostAccountsAccountRequestBodyCapabilities'EpsPayments' {postAccountsAccountRequestBodyCapabilities'EpsPayments'Requested :: Maybe Bool
postAccountsAccountRequestBodyCapabilities'EpsPayments'Requested = Maybe Bool
forall a. Maybe a
GHC.Maybe.Nothing}

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.capabilities.properties.fpx_payments@ in the specification.
data PostAccountsAccountRequestBodyCapabilities'FpxPayments' = PostAccountsAccountRequestBodyCapabilities'FpxPayments'
  { -- | requested
    PostAccountsAccountRequestBodyCapabilities'FpxPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'FpxPayments'Requested :: (GHC.Maybe.Maybe GHC.Types.Bool)
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodyCapabilities'FpxPayments'
-> String
-> String
[PostAccountsAccountRequestBodyCapabilities'FpxPayments']
-> String -> String
PostAccountsAccountRequestBodyCapabilities'FpxPayments' -> String
(Int
 -> PostAccountsAccountRequestBodyCapabilities'FpxPayments'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyCapabilities'FpxPayments'
    -> String)
-> ([PostAccountsAccountRequestBodyCapabilities'FpxPayments']
    -> String -> String)
-> Show PostAccountsAccountRequestBodyCapabilities'FpxPayments'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyCapabilities'FpxPayments']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyCapabilities'FpxPayments']
-> String -> String
show :: PostAccountsAccountRequestBodyCapabilities'FpxPayments' -> String
$cshow :: PostAccountsAccountRequestBodyCapabilities'FpxPayments' -> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyCapabilities'FpxPayments'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyCapabilities'FpxPayments'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyCapabilities'FpxPayments'
-> PostAccountsAccountRequestBodyCapabilities'FpxPayments' -> Bool
(PostAccountsAccountRequestBodyCapabilities'FpxPayments'
 -> PostAccountsAccountRequestBodyCapabilities'FpxPayments' -> Bool)
-> (PostAccountsAccountRequestBodyCapabilities'FpxPayments'
    -> PostAccountsAccountRequestBodyCapabilities'FpxPayments' -> Bool)
-> Eq PostAccountsAccountRequestBodyCapabilities'FpxPayments'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyCapabilities'FpxPayments'
-> PostAccountsAccountRequestBodyCapabilities'FpxPayments' -> Bool
$c/= :: PostAccountsAccountRequestBodyCapabilities'FpxPayments'
-> PostAccountsAccountRequestBodyCapabilities'FpxPayments' -> Bool
== :: PostAccountsAccountRequestBodyCapabilities'FpxPayments'
-> PostAccountsAccountRequestBodyCapabilities'FpxPayments' -> Bool
$c== :: PostAccountsAccountRequestBodyCapabilities'FpxPayments'
-> PostAccountsAccountRequestBodyCapabilities'FpxPayments' -> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyCapabilities'FpxPayments' where
  toJSON :: PostAccountsAccountRequestBodyCapabilities'FpxPayments' -> Value
toJSON PostAccountsAccountRequestBodyCapabilities'FpxPayments'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"requested" Text -> Maybe Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'FpxPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'FpxPayments'Requested PostAccountsAccountRequestBodyCapabilities'FpxPayments'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyCapabilities'FpxPayments' -> Encoding
toEncoding PostAccountsAccountRequestBodyCapabilities'FpxPayments'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs (Text
"requested" Text -> Maybe Bool -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'FpxPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'FpxPayments'Requested PostAccountsAccountRequestBodyCapabilities'FpxPayments'
obj)

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyCapabilities'FpxPayments' where
  parseJSON :: Value
-> Parser PostAccountsAccountRequestBodyCapabilities'FpxPayments'
parseJSON = String
-> (Object
    -> Parser PostAccountsAccountRequestBodyCapabilities'FpxPayments')
-> Value
-> Parser PostAccountsAccountRequestBodyCapabilities'FpxPayments'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyCapabilities'FpxPayments'" (\Object
obj -> (Maybe Bool
 -> PostAccountsAccountRequestBodyCapabilities'FpxPayments')
-> Parser
     (Maybe Bool
      -> PostAccountsAccountRequestBodyCapabilities'FpxPayments')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe Bool
-> PostAccountsAccountRequestBodyCapabilities'FpxPayments'
PostAccountsAccountRequestBodyCapabilities'FpxPayments' Parser
  (Maybe Bool
   -> PostAccountsAccountRequestBodyCapabilities'FpxPayments')
-> Parser (Maybe Bool)
-> Parser PostAccountsAccountRequestBodyCapabilities'FpxPayments'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"requested"))

-- | Create a new 'PostAccountsAccountRequestBodyCapabilities'FpxPayments'' with all required fields.
mkPostAccountsAccountRequestBodyCapabilities'FpxPayments' :: PostAccountsAccountRequestBodyCapabilities'FpxPayments'
mkPostAccountsAccountRequestBodyCapabilities'FpxPayments' :: PostAccountsAccountRequestBodyCapabilities'FpxPayments'
mkPostAccountsAccountRequestBodyCapabilities'FpxPayments' = PostAccountsAccountRequestBodyCapabilities'FpxPayments' :: Maybe Bool
-> PostAccountsAccountRequestBodyCapabilities'FpxPayments'
PostAccountsAccountRequestBodyCapabilities'FpxPayments' {postAccountsAccountRequestBodyCapabilities'FpxPayments'Requested :: Maybe Bool
postAccountsAccountRequestBodyCapabilities'FpxPayments'Requested = Maybe Bool
forall a. Maybe a
GHC.Maybe.Nothing}

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.capabilities.properties.giropay_payments@ in the specification.
data PostAccountsAccountRequestBodyCapabilities'GiropayPayments' = PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
  { -- | requested
    PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'GiropayPayments'Requested :: (GHC.Maybe.Maybe GHC.Types.Bool)
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
-> String
-> String
[PostAccountsAccountRequestBodyCapabilities'GiropayPayments']
-> String -> String
PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
-> String
(Int
 -> PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
    -> String)
-> ([PostAccountsAccountRequestBodyCapabilities'GiropayPayments']
    -> String -> String)
-> Show PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyCapabilities'GiropayPayments']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyCapabilities'GiropayPayments']
-> String -> String
show :: PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
-> String
$cshow :: PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
-> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
-> PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
-> Bool
(PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
 -> PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
 -> Bool)
-> (PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
    -> PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
    -> Bool)
-> Eq PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
-> PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
-> Bool
$c/= :: PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
-> PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
-> Bool
== :: PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
-> PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
-> Bool
$c== :: PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
-> PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
-> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyCapabilities'GiropayPayments' where
  toJSON :: PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
-> Value
toJSON PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"requested" Text -> Maybe Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'GiropayPayments'Requested PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
-> Encoding
toEncoding PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs (Text
"requested" Text -> Maybe Bool -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'GiropayPayments'Requested PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
obj)

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyCapabilities'GiropayPayments' where
  parseJSON :: Value
-> Parser
     PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
parseJSON = String
-> (Object
    -> Parser
         PostAccountsAccountRequestBodyCapabilities'GiropayPayments')
-> Value
-> Parser
     PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyCapabilities'GiropayPayments'" (\Object
obj -> (Maybe Bool
 -> PostAccountsAccountRequestBodyCapabilities'GiropayPayments')
-> Parser
     (Maybe Bool
      -> PostAccountsAccountRequestBodyCapabilities'GiropayPayments')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe Bool
-> PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
PostAccountsAccountRequestBodyCapabilities'GiropayPayments' Parser
  (Maybe Bool
   -> PostAccountsAccountRequestBodyCapabilities'GiropayPayments')
-> Parser (Maybe Bool)
-> Parser
     PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"requested"))

-- | Create a new 'PostAccountsAccountRequestBodyCapabilities'GiropayPayments'' with all required fields.
mkPostAccountsAccountRequestBodyCapabilities'GiropayPayments' :: PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
mkPostAccountsAccountRequestBodyCapabilities'GiropayPayments' :: PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
mkPostAccountsAccountRequestBodyCapabilities'GiropayPayments' = PostAccountsAccountRequestBodyCapabilities'GiropayPayments' :: Maybe Bool
-> PostAccountsAccountRequestBodyCapabilities'GiropayPayments'
PostAccountsAccountRequestBodyCapabilities'GiropayPayments' {postAccountsAccountRequestBodyCapabilities'GiropayPayments'Requested :: Maybe Bool
postAccountsAccountRequestBodyCapabilities'GiropayPayments'Requested = Maybe Bool
forall a. Maybe a
GHC.Maybe.Nothing}

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.capabilities.properties.grabpay_payments@ in the specification.
data PostAccountsAccountRequestBodyCapabilities'GrabpayPayments' = PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
  { -- | requested
    PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'GrabpayPayments'Requested :: (GHC.Maybe.Maybe GHC.Types.Bool)
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
-> String
-> String
[PostAccountsAccountRequestBodyCapabilities'GrabpayPayments']
-> String -> String
PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
-> String
(Int
 -> PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
    -> String)
-> ([PostAccountsAccountRequestBodyCapabilities'GrabpayPayments']
    -> String -> String)
-> Show PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyCapabilities'GrabpayPayments']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyCapabilities'GrabpayPayments']
-> String -> String
show :: PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
-> String
$cshow :: PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
-> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
-> PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
-> Bool
(PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
 -> PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
 -> Bool)
-> (PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
    -> PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
    -> Bool)
-> Eq PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
-> PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
-> Bool
$c/= :: PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
-> PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
-> Bool
== :: PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
-> PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
-> Bool
$c== :: PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
-> PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
-> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyCapabilities'GrabpayPayments' where
  toJSON :: PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
-> Value
toJSON PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"requested" Text -> Maybe Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'GrabpayPayments'Requested PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
-> Encoding
toEncoding PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs (Text
"requested" Text -> Maybe Bool -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'GrabpayPayments'Requested PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
obj)

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyCapabilities'GrabpayPayments' where
  parseJSON :: Value
-> Parser
     PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
parseJSON = String
-> (Object
    -> Parser
         PostAccountsAccountRequestBodyCapabilities'GrabpayPayments')
-> Value
-> Parser
     PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'" (\Object
obj -> (Maybe Bool
 -> PostAccountsAccountRequestBodyCapabilities'GrabpayPayments')
-> Parser
     (Maybe Bool
      -> PostAccountsAccountRequestBodyCapabilities'GrabpayPayments')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe Bool
-> PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
PostAccountsAccountRequestBodyCapabilities'GrabpayPayments' Parser
  (Maybe Bool
   -> PostAccountsAccountRequestBodyCapabilities'GrabpayPayments')
-> Parser (Maybe Bool)
-> Parser
     PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"requested"))

-- | Create a new 'PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'' with all required fields.
mkPostAccountsAccountRequestBodyCapabilities'GrabpayPayments' :: PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
mkPostAccountsAccountRequestBodyCapabilities'GrabpayPayments' :: PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
mkPostAccountsAccountRequestBodyCapabilities'GrabpayPayments' = PostAccountsAccountRequestBodyCapabilities'GrabpayPayments' :: Maybe Bool
-> PostAccountsAccountRequestBodyCapabilities'GrabpayPayments'
PostAccountsAccountRequestBodyCapabilities'GrabpayPayments' {postAccountsAccountRequestBodyCapabilities'GrabpayPayments'Requested :: Maybe Bool
postAccountsAccountRequestBodyCapabilities'GrabpayPayments'Requested = Maybe Bool
forall a. Maybe a
GHC.Maybe.Nothing}

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.capabilities.properties.ideal_payments@ in the specification.
data PostAccountsAccountRequestBodyCapabilities'IdealPayments' = PostAccountsAccountRequestBodyCapabilities'IdealPayments'
  { -- | requested
    PostAccountsAccountRequestBodyCapabilities'IdealPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'IdealPayments'Requested :: (GHC.Maybe.Maybe GHC.Types.Bool)
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodyCapabilities'IdealPayments'
-> String
-> String
[PostAccountsAccountRequestBodyCapabilities'IdealPayments']
-> String -> String
PostAccountsAccountRequestBodyCapabilities'IdealPayments' -> String
(Int
 -> PostAccountsAccountRequestBodyCapabilities'IdealPayments'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyCapabilities'IdealPayments'
    -> String)
-> ([PostAccountsAccountRequestBodyCapabilities'IdealPayments']
    -> String -> String)
-> Show PostAccountsAccountRequestBodyCapabilities'IdealPayments'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyCapabilities'IdealPayments']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyCapabilities'IdealPayments']
-> String -> String
show :: PostAccountsAccountRequestBodyCapabilities'IdealPayments' -> String
$cshow :: PostAccountsAccountRequestBodyCapabilities'IdealPayments' -> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyCapabilities'IdealPayments'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyCapabilities'IdealPayments'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyCapabilities'IdealPayments'
-> PostAccountsAccountRequestBodyCapabilities'IdealPayments'
-> Bool
(PostAccountsAccountRequestBodyCapabilities'IdealPayments'
 -> PostAccountsAccountRequestBodyCapabilities'IdealPayments'
 -> Bool)
-> (PostAccountsAccountRequestBodyCapabilities'IdealPayments'
    -> PostAccountsAccountRequestBodyCapabilities'IdealPayments'
    -> Bool)
-> Eq PostAccountsAccountRequestBodyCapabilities'IdealPayments'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyCapabilities'IdealPayments'
-> PostAccountsAccountRequestBodyCapabilities'IdealPayments'
-> Bool
$c/= :: PostAccountsAccountRequestBodyCapabilities'IdealPayments'
-> PostAccountsAccountRequestBodyCapabilities'IdealPayments'
-> Bool
== :: PostAccountsAccountRequestBodyCapabilities'IdealPayments'
-> PostAccountsAccountRequestBodyCapabilities'IdealPayments'
-> Bool
$c== :: PostAccountsAccountRequestBodyCapabilities'IdealPayments'
-> PostAccountsAccountRequestBodyCapabilities'IdealPayments'
-> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyCapabilities'IdealPayments' where
  toJSON :: PostAccountsAccountRequestBodyCapabilities'IdealPayments' -> Value
toJSON PostAccountsAccountRequestBodyCapabilities'IdealPayments'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"requested" Text -> Maybe Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'IdealPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'IdealPayments'Requested PostAccountsAccountRequestBodyCapabilities'IdealPayments'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyCapabilities'IdealPayments'
-> Encoding
toEncoding PostAccountsAccountRequestBodyCapabilities'IdealPayments'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs (Text
"requested" Text -> Maybe Bool -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'IdealPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'IdealPayments'Requested PostAccountsAccountRequestBodyCapabilities'IdealPayments'
obj)

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyCapabilities'IdealPayments' where
  parseJSON :: Value
-> Parser PostAccountsAccountRequestBodyCapabilities'IdealPayments'
parseJSON = String
-> (Object
    -> Parser
         PostAccountsAccountRequestBodyCapabilities'IdealPayments')
-> Value
-> Parser PostAccountsAccountRequestBodyCapabilities'IdealPayments'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyCapabilities'IdealPayments'" (\Object
obj -> (Maybe Bool
 -> PostAccountsAccountRequestBodyCapabilities'IdealPayments')
-> Parser
     (Maybe Bool
      -> PostAccountsAccountRequestBodyCapabilities'IdealPayments')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe Bool
-> PostAccountsAccountRequestBodyCapabilities'IdealPayments'
PostAccountsAccountRequestBodyCapabilities'IdealPayments' Parser
  (Maybe Bool
   -> PostAccountsAccountRequestBodyCapabilities'IdealPayments')
-> Parser (Maybe Bool)
-> Parser PostAccountsAccountRequestBodyCapabilities'IdealPayments'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"requested"))

-- | Create a new 'PostAccountsAccountRequestBodyCapabilities'IdealPayments'' with all required fields.
mkPostAccountsAccountRequestBodyCapabilities'IdealPayments' :: PostAccountsAccountRequestBodyCapabilities'IdealPayments'
mkPostAccountsAccountRequestBodyCapabilities'IdealPayments' :: PostAccountsAccountRequestBodyCapabilities'IdealPayments'
mkPostAccountsAccountRequestBodyCapabilities'IdealPayments' = PostAccountsAccountRequestBodyCapabilities'IdealPayments' :: Maybe Bool
-> PostAccountsAccountRequestBodyCapabilities'IdealPayments'
PostAccountsAccountRequestBodyCapabilities'IdealPayments' {postAccountsAccountRequestBodyCapabilities'IdealPayments'Requested :: Maybe Bool
postAccountsAccountRequestBodyCapabilities'IdealPayments'Requested = Maybe Bool
forall a. Maybe a
GHC.Maybe.Nothing}

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.capabilities.properties.jcb_payments@ in the specification.
data PostAccountsAccountRequestBodyCapabilities'JcbPayments' = PostAccountsAccountRequestBodyCapabilities'JcbPayments'
  { -- | requested
    PostAccountsAccountRequestBodyCapabilities'JcbPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'JcbPayments'Requested :: (GHC.Maybe.Maybe GHC.Types.Bool)
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodyCapabilities'JcbPayments'
-> String
-> String
[PostAccountsAccountRequestBodyCapabilities'JcbPayments']
-> String -> String
PostAccountsAccountRequestBodyCapabilities'JcbPayments' -> String
(Int
 -> PostAccountsAccountRequestBodyCapabilities'JcbPayments'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyCapabilities'JcbPayments'
    -> String)
-> ([PostAccountsAccountRequestBodyCapabilities'JcbPayments']
    -> String -> String)
-> Show PostAccountsAccountRequestBodyCapabilities'JcbPayments'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyCapabilities'JcbPayments']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyCapabilities'JcbPayments']
-> String -> String
show :: PostAccountsAccountRequestBodyCapabilities'JcbPayments' -> String
$cshow :: PostAccountsAccountRequestBodyCapabilities'JcbPayments' -> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyCapabilities'JcbPayments'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyCapabilities'JcbPayments'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyCapabilities'JcbPayments'
-> PostAccountsAccountRequestBodyCapabilities'JcbPayments' -> Bool
(PostAccountsAccountRequestBodyCapabilities'JcbPayments'
 -> PostAccountsAccountRequestBodyCapabilities'JcbPayments' -> Bool)
-> (PostAccountsAccountRequestBodyCapabilities'JcbPayments'
    -> PostAccountsAccountRequestBodyCapabilities'JcbPayments' -> Bool)
-> Eq PostAccountsAccountRequestBodyCapabilities'JcbPayments'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyCapabilities'JcbPayments'
-> PostAccountsAccountRequestBodyCapabilities'JcbPayments' -> Bool
$c/= :: PostAccountsAccountRequestBodyCapabilities'JcbPayments'
-> PostAccountsAccountRequestBodyCapabilities'JcbPayments' -> Bool
== :: PostAccountsAccountRequestBodyCapabilities'JcbPayments'
-> PostAccountsAccountRequestBodyCapabilities'JcbPayments' -> Bool
$c== :: PostAccountsAccountRequestBodyCapabilities'JcbPayments'
-> PostAccountsAccountRequestBodyCapabilities'JcbPayments' -> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyCapabilities'JcbPayments' where
  toJSON :: PostAccountsAccountRequestBodyCapabilities'JcbPayments' -> Value
toJSON PostAccountsAccountRequestBodyCapabilities'JcbPayments'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"requested" Text -> Maybe Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'JcbPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'JcbPayments'Requested PostAccountsAccountRequestBodyCapabilities'JcbPayments'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyCapabilities'JcbPayments' -> Encoding
toEncoding PostAccountsAccountRequestBodyCapabilities'JcbPayments'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs (Text
"requested" Text -> Maybe Bool -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'JcbPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'JcbPayments'Requested PostAccountsAccountRequestBodyCapabilities'JcbPayments'
obj)

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyCapabilities'JcbPayments' where
  parseJSON :: Value
-> Parser PostAccountsAccountRequestBodyCapabilities'JcbPayments'
parseJSON = String
-> (Object
    -> Parser PostAccountsAccountRequestBodyCapabilities'JcbPayments')
-> Value
-> Parser PostAccountsAccountRequestBodyCapabilities'JcbPayments'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyCapabilities'JcbPayments'" (\Object
obj -> (Maybe Bool
 -> PostAccountsAccountRequestBodyCapabilities'JcbPayments')
-> Parser
     (Maybe Bool
      -> PostAccountsAccountRequestBodyCapabilities'JcbPayments')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe Bool
-> PostAccountsAccountRequestBodyCapabilities'JcbPayments'
PostAccountsAccountRequestBodyCapabilities'JcbPayments' Parser
  (Maybe Bool
   -> PostAccountsAccountRequestBodyCapabilities'JcbPayments')
-> Parser (Maybe Bool)
-> Parser PostAccountsAccountRequestBodyCapabilities'JcbPayments'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"requested"))

-- | Create a new 'PostAccountsAccountRequestBodyCapabilities'JcbPayments'' with all required fields.
mkPostAccountsAccountRequestBodyCapabilities'JcbPayments' :: PostAccountsAccountRequestBodyCapabilities'JcbPayments'
mkPostAccountsAccountRequestBodyCapabilities'JcbPayments' :: PostAccountsAccountRequestBodyCapabilities'JcbPayments'
mkPostAccountsAccountRequestBodyCapabilities'JcbPayments' = PostAccountsAccountRequestBodyCapabilities'JcbPayments' :: Maybe Bool
-> PostAccountsAccountRequestBodyCapabilities'JcbPayments'
PostAccountsAccountRequestBodyCapabilities'JcbPayments' {postAccountsAccountRequestBodyCapabilities'JcbPayments'Requested :: Maybe Bool
postAccountsAccountRequestBodyCapabilities'JcbPayments'Requested = Maybe Bool
forall a. Maybe a
GHC.Maybe.Nothing}

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.capabilities.properties.legacy_payments@ in the specification.
data PostAccountsAccountRequestBodyCapabilities'LegacyPayments' = PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
  { -- | requested
    PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'LegacyPayments'Requested :: (GHC.Maybe.Maybe GHC.Types.Bool)
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
-> String
-> String
[PostAccountsAccountRequestBodyCapabilities'LegacyPayments']
-> String -> String
PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
-> String
(Int
 -> PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
    -> String)
-> ([PostAccountsAccountRequestBodyCapabilities'LegacyPayments']
    -> String -> String)
-> Show PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyCapabilities'LegacyPayments']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyCapabilities'LegacyPayments']
-> String -> String
show :: PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
-> String
$cshow :: PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
-> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
-> PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
-> Bool
(PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
 -> PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
 -> Bool)
-> (PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
    -> PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
    -> Bool)
-> Eq PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
-> PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
-> Bool
$c/= :: PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
-> PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
-> Bool
== :: PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
-> PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
-> Bool
$c== :: PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
-> PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
-> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyCapabilities'LegacyPayments' where
  toJSON :: PostAccountsAccountRequestBodyCapabilities'LegacyPayments' -> Value
toJSON PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"requested" Text -> Maybe Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'LegacyPayments'Requested PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
-> Encoding
toEncoding PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs (Text
"requested" Text -> Maybe Bool -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'LegacyPayments'Requested PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
obj)

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyCapabilities'LegacyPayments' where
  parseJSON :: Value
-> Parser
     PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
parseJSON = String
-> (Object
    -> Parser
         PostAccountsAccountRequestBodyCapabilities'LegacyPayments')
-> Value
-> Parser
     PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyCapabilities'LegacyPayments'" (\Object
obj -> (Maybe Bool
 -> PostAccountsAccountRequestBodyCapabilities'LegacyPayments')
-> Parser
     (Maybe Bool
      -> PostAccountsAccountRequestBodyCapabilities'LegacyPayments')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe Bool
-> PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
PostAccountsAccountRequestBodyCapabilities'LegacyPayments' Parser
  (Maybe Bool
   -> PostAccountsAccountRequestBodyCapabilities'LegacyPayments')
-> Parser (Maybe Bool)
-> Parser
     PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"requested"))

-- | Create a new 'PostAccountsAccountRequestBodyCapabilities'LegacyPayments'' with all required fields.
mkPostAccountsAccountRequestBodyCapabilities'LegacyPayments' :: PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
mkPostAccountsAccountRequestBodyCapabilities'LegacyPayments' :: PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
mkPostAccountsAccountRequestBodyCapabilities'LegacyPayments' = PostAccountsAccountRequestBodyCapabilities'LegacyPayments' :: Maybe Bool
-> PostAccountsAccountRequestBodyCapabilities'LegacyPayments'
PostAccountsAccountRequestBodyCapabilities'LegacyPayments' {postAccountsAccountRequestBodyCapabilities'LegacyPayments'Requested :: Maybe Bool
postAccountsAccountRequestBodyCapabilities'LegacyPayments'Requested = Maybe Bool
forall a. Maybe a
GHC.Maybe.Nothing}

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.capabilities.properties.oxxo_payments@ in the specification.
data PostAccountsAccountRequestBodyCapabilities'OxxoPayments' = PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
  { -- | requested
    PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'OxxoPayments'Requested :: (GHC.Maybe.Maybe GHC.Types.Bool)
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
-> String
-> String
[PostAccountsAccountRequestBodyCapabilities'OxxoPayments']
-> String -> String
PostAccountsAccountRequestBodyCapabilities'OxxoPayments' -> String
(Int
 -> PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
    -> String)
-> ([PostAccountsAccountRequestBodyCapabilities'OxxoPayments']
    -> String -> String)
-> Show PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyCapabilities'OxxoPayments']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyCapabilities'OxxoPayments']
-> String -> String
show :: PostAccountsAccountRequestBodyCapabilities'OxxoPayments' -> String
$cshow :: PostAccountsAccountRequestBodyCapabilities'OxxoPayments' -> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
-> PostAccountsAccountRequestBodyCapabilities'OxxoPayments' -> Bool
(PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
 -> PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
 -> Bool)
-> (PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
    -> PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
    -> Bool)
-> Eq PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
-> PostAccountsAccountRequestBodyCapabilities'OxxoPayments' -> Bool
$c/= :: PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
-> PostAccountsAccountRequestBodyCapabilities'OxxoPayments' -> Bool
== :: PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
-> PostAccountsAccountRequestBodyCapabilities'OxxoPayments' -> Bool
$c== :: PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
-> PostAccountsAccountRequestBodyCapabilities'OxxoPayments' -> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyCapabilities'OxxoPayments' where
  toJSON :: PostAccountsAccountRequestBodyCapabilities'OxxoPayments' -> Value
toJSON PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"requested" Text -> Maybe Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'OxxoPayments'Requested PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
-> Encoding
toEncoding PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs (Text
"requested" Text -> Maybe Bool -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'OxxoPayments'Requested PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
obj)

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyCapabilities'OxxoPayments' where
  parseJSON :: Value
-> Parser PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
parseJSON = String
-> (Object
    -> Parser PostAccountsAccountRequestBodyCapabilities'OxxoPayments')
-> Value
-> Parser PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyCapabilities'OxxoPayments'" (\Object
obj -> (Maybe Bool
 -> PostAccountsAccountRequestBodyCapabilities'OxxoPayments')
-> Parser
     (Maybe Bool
      -> PostAccountsAccountRequestBodyCapabilities'OxxoPayments')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe Bool
-> PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
PostAccountsAccountRequestBodyCapabilities'OxxoPayments' Parser
  (Maybe Bool
   -> PostAccountsAccountRequestBodyCapabilities'OxxoPayments')
-> Parser (Maybe Bool)
-> Parser PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"requested"))

-- | Create a new 'PostAccountsAccountRequestBodyCapabilities'OxxoPayments'' with all required fields.
mkPostAccountsAccountRequestBodyCapabilities'OxxoPayments' :: PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
mkPostAccountsAccountRequestBodyCapabilities'OxxoPayments' :: PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
mkPostAccountsAccountRequestBodyCapabilities'OxxoPayments' = PostAccountsAccountRequestBodyCapabilities'OxxoPayments' :: Maybe Bool
-> PostAccountsAccountRequestBodyCapabilities'OxxoPayments'
PostAccountsAccountRequestBodyCapabilities'OxxoPayments' {postAccountsAccountRequestBodyCapabilities'OxxoPayments'Requested :: Maybe Bool
postAccountsAccountRequestBodyCapabilities'OxxoPayments'Requested = Maybe Bool
forall a. Maybe a
GHC.Maybe.Nothing}

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.capabilities.properties.p24_payments@ in the specification.
data PostAccountsAccountRequestBodyCapabilities'P24Payments' = PostAccountsAccountRequestBodyCapabilities'P24Payments'
  { -- | requested
    PostAccountsAccountRequestBodyCapabilities'P24Payments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'P24Payments'Requested :: (GHC.Maybe.Maybe GHC.Types.Bool)
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodyCapabilities'P24Payments'
-> String
-> String
[PostAccountsAccountRequestBodyCapabilities'P24Payments']
-> String -> String
PostAccountsAccountRequestBodyCapabilities'P24Payments' -> String
(Int
 -> PostAccountsAccountRequestBodyCapabilities'P24Payments'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyCapabilities'P24Payments'
    -> String)
-> ([PostAccountsAccountRequestBodyCapabilities'P24Payments']
    -> String -> String)
-> Show PostAccountsAccountRequestBodyCapabilities'P24Payments'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyCapabilities'P24Payments']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyCapabilities'P24Payments']
-> String -> String
show :: PostAccountsAccountRequestBodyCapabilities'P24Payments' -> String
$cshow :: PostAccountsAccountRequestBodyCapabilities'P24Payments' -> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyCapabilities'P24Payments'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyCapabilities'P24Payments'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyCapabilities'P24Payments'
-> PostAccountsAccountRequestBodyCapabilities'P24Payments' -> Bool
(PostAccountsAccountRequestBodyCapabilities'P24Payments'
 -> PostAccountsAccountRequestBodyCapabilities'P24Payments' -> Bool)
-> (PostAccountsAccountRequestBodyCapabilities'P24Payments'
    -> PostAccountsAccountRequestBodyCapabilities'P24Payments' -> Bool)
-> Eq PostAccountsAccountRequestBodyCapabilities'P24Payments'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyCapabilities'P24Payments'
-> PostAccountsAccountRequestBodyCapabilities'P24Payments' -> Bool
$c/= :: PostAccountsAccountRequestBodyCapabilities'P24Payments'
-> PostAccountsAccountRequestBodyCapabilities'P24Payments' -> Bool
== :: PostAccountsAccountRequestBodyCapabilities'P24Payments'
-> PostAccountsAccountRequestBodyCapabilities'P24Payments' -> Bool
$c== :: PostAccountsAccountRequestBodyCapabilities'P24Payments'
-> PostAccountsAccountRequestBodyCapabilities'P24Payments' -> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyCapabilities'P24Payments' where
  toJSON :: PostAccountsAccountRequestBodyCapabilities'P24Payments' -> Value
toJSON PostAccountsAccountRequestBodyCapabilities'P24Payments'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"requested" Text -> Maybe Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'P24Payments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'P24Payments'Requested PostAccountsAccountRequestBodyCapabilities'P24Payments'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyCapabilities'P24Payments' -> Encoding
toEncoding PostAccountsAccountRequestBodyCapabilities'P24Payments'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs (Text
"requested" Text -> Maybe Bool -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'P24Payments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'P24Payments'Requested PostAccountsAccountRequestBodyCapabilities'P24Payments'
obj)

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyCapabilities'P24Payments' where
  parseJSON :: Value
-> Parser PostAccountsAccountRequestBodyCapabilities'P24Payments'
parseJSON = String
-> (Object
    -> Parser PostAccountsAccountRequestBodyCapabilities'P24Payments')
-> Value
-> Parser PostAccountsAccountRequestBodyCapabilities'P24Payments'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyCapabilities'P24Payments'" (\Object
obj -> (Maybe Bool
 -> PostAccountsAccountRequestBodyCapabilities'P24Payments')
-> Parser
     (Maybe Bool
      -> PostAccountsAccountRequestBodyCapabilities'P24Payments')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe Bool
-> PostAccountsAccountRequestBodyCapabilities'P24Payments'
PostAccountsAccountRequestBodyCapabilities'P24Payments' Parser
  (Maybe Bool
   -> PostAccountsAccountRequestBodyCapabilities'P24Payments')
-> Parser (Maybe Bool)
-> Parser PostAccountsAccountRequestBodyCapabilities'P24Payments'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"requested"))

-- | Create a new 'PostAccountsAccountRequestBodyCapabilities'P24Payments'' with all required fields.
mkPostAccountsAccountRequestBodyCapabilities'P24Payments' :: PostAccountsAccountRequestBodyCapabilities'P24Payments'
mkPostAccountsAccountRequestBodyCapabilities'P24Payments' :: PostAccountsAccountRequestBodyCapabilities'P24Payments'
mkPostAccountsAccountRequestBodyCapabilities'P24Payments' = PostAccountsAccountRequestBodyCapabilities'P24Payments' :: Maybe Bool
-> PostAccountsAccountRequestBodyCapabilities'P24Payments'
PostAccountsAccountRequestBodyCapabilities'P24Payments' {postAccountsAccountRequestBodyCapabilities'P24Payments'Requested :: Maybe Bool
postAccountsAccountRequestBodyCapabilities'P24Payments'Requested = Maybe Bool
forall a. Maybe a
GHC.Maybe.Nothing}

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.capabilities.properties.sepa_debit_payments@ in the specification.
data PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments' = PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
  { -- | requested
    PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'SepaDebitPayments'Requested :: (GHC.Maybe.Maybe GHC.Types.Bool)
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
-> String
-> String
[PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments']
-> String -> String
PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
-> String
(Int
 -> PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
    -> String)
-> ([PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments']
    -> String -> String)
-> Show
     PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments']
-> String -> String
show :: PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
-> String
$cshow :: PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
-> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
-> PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
-> Bool
(PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
 -> PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
 -> Bool)
-> (PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
    -> PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
    -> Bool)
-> Eq PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
-> PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
-> Bool
$c/= :: PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
-> PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
-> Bool
== :: PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
-> PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
-> Bool
$c== :: PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
-> PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
-> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments' where
  toJSON :: PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
-> Value
toJSON PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"requested" Text -> Maybe Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'SepaDebitPayments'Requested PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
-> Encoding
toEncoding PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs (Text
"requested" Text -> Maybe Bool -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'SepaDebitPayments'Requested PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
obj)

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments' where
  parseJSON :: Value
-> Parser
     PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
parseJSON = String
-> (Object
    -> Parser
         PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments')
-> Value
-> Parser
     PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'" (\Object
obj -> (Maybe Bool
 -> PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments')
-> Parser
     (Maybe Bool
      -> PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe Bool
-> PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments' Parser
  (Maybe Bool
   -> PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments')
-> Parser (Maybe Bool)
-> Parser
     PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"requested"))

-- | Create a new 'PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'' with all required fields.
mkPostAccountsAccountRequestBodyCapabilities'SepaDebitPayments' :: PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
mkPostAccountsAccountRequestBodyCapabilities'SepaDebitPayments' :: PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
mkPostAccountsAccountRequestBodyCapabilities'SepaDebitPayments' = PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments' :: Maybe Bool
-> PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments'
PostAccountsAccountRequestBodyCapabilities'SepaDebitPayments' {postAccountsAccountRequestBodyCapabilities'SepaDebitPayments'Requested :: Maybe Bool
postAccountsAccountRequestBodyCapabilities'SepaDebitPayments'Requested = Maybe Bool
forall a. Maybe a
GHC.Maybe.Nothing}

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.capabilities.properties.sofort_payments@ in the specification.
data PostAccountsAccountRequestBodyCapabilities'SofortPayments' = PostAccountsAccountRequestBodyCapabilities'SofortPayments'
  { -- | requested
    PostAccountsAccountRequestBodyCapabilities'SofortPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'SofortPayments'Requested :: (GHC.Maybe.Maybe GHC.Types.Bool)
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodyCapabilities'SofortPayments'
-> String
-> String
[PostAccountsAccountRequestBodyCapabilities'SofortPayments']
-> String -> String
PostAccountsAccountRequestBodyCapabilities'SofortPayments'
-> String
(Int
 -> PostAccountsAccountRequestBodyCapabilities'SofortPayments'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyCapabilities'SofortPayments'
    -> String)
-> ([PostAccountsAccountRequestBodyCapabilities'SofortPayments']
    -> String -> String)
-> Show PostAccountsAccountRequestBodyCapabilities'SofortPayments'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyCapabilities'SofortPayments']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyCapabilities'SofortPayments']
-> String -> String
show :: PostAccountsAccountRequestBodyCapabilities'SofortPayments'
-> String
$cshow :: PostAccountsAccountRequestBodyCapabilities'SofortPayments'
-> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyCapabilities'SofortPayments'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyCapabilities'SofortPayments'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyCapabilities'SofortPayments'
-> PostAccountsAccountRequestBodyCapabilities'SofortPayments'
-> Bool
(PostAccountsAccountRequestBodyCapabilities'SofortPayments'
 -> PostAccountsAccountRequestBodyCapabilities'SofortPayments'
 -> Bool)
-> (PostAccountsAccountRequestBodyCapabilities'SofortPayments'
    -> PostAccountsAccountRequestBodyCapabilities'SofortPayments'
    -> Bool)
-> Eq PostAccountsAccountRequestBodyCapabilities'SofortPayments'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyCapabilities'SofortPayments'
-> PostAccountsAccountRequestBodyCapabilities'SofortPayments'
-> Bool
$c/= :: PostAccountsAccountRequestBodyCapabilities'SofortPayments'
-> PostAccountsAccountRequestBodyCapabilities'SofortPayments'
-> Bool
== :: PostAccountsAccountRequestBodyCapabilities'SofortPayments'
-> PostAccountsAccountRequestBodyCapabilities'SofortPayments'
-> Bool
$c== :: PostAccountsAccountRequestBodyCapabilities'SofortPayments'
-> PostAccountsAccountRequestBodyCapabilities'SofortPayments'
-> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyCapabilities'SofortPayments' where
  toJSON :: PostAccountsAccountRequestBodyCapabilities'SofortPayments' -> Value
toJSON PostAccountsAccountRequestBodyCapabilities'SofortPayments'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"requested" Text -> Maybe Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'SofortPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'SofortPayments'Requested PostAccountsAccountRequestBodyCapabilities'SofortPayments'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyCapabilities'SofortPayments'
-> Encoding
toEncoding PostAccountsAccountRequestBodyCapabilities'SofortPayments'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs (Text
"requested" Text -> Maybe Bool -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'SofortPayments'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'SofortPayments'Requested PostAccountsAccountRequestBodyCapabilities'SofortPayments'
obj)

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyCapabilities'SofortPayments' where
  parseJSON :: Value
-> Parser
     PostAccountsAccountRequestBodyCapabilities'SofortPayments'
parseJSON = String
-> (Object
    -> Parser
         PostAccountsAccountRequestBodyCapabilities'SofortPayments')
-> Value
-> Parser
     PostAccountsAccountRequestBodyCapabilities'SofortPayments'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyCapabilities'SofortPayments'" (\Object
obj -> (Maybe Bool
 -> PostAccountsAccountRequestBodyCapabilities'SofortPayments')
-> Parser
     (Maybe Bool
      -> PostAccountsAccountRequestBodyCapabilities'SofortPayments')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe Bool
-> PostAccountsAccountRequestBodyCapabilities'SofortPayments'
PostAccountsAccountRequestBodyCapabilities'SofortPayments' Parser
  (Maybe Bool
   -> PostAccountsAccountRequestBodyCapabilities'SofortPayments')
-> Parser (Maybe Bool)
-> Parser
     PostAccountsAccountRequestBodyCapabilities'SofortPayments'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"requested"))

-- | Create a new 'PostAccountsAccountRequestBodyCapabilities'SofortPayments'' with all required fields.
mkPostAccountsAccountRequestBodyCapabilities'SofortPayments' :: PostAccountsAccountRequestBodyCapabilities'SofortPayments'
mkPostAccountsAccountRequestBodyCapabilities'SofortPayments' :: PostAccountsAccountRequestBodyCapabilities'SofortPayments'
mkPostAccountsAccountRequestBodyCapabilities'SofortPayments' = PostAccountsAccountRequestBodyCapabilities'SofortPayments' :: Maybe Bool
-> PostAccountsAccountRequestBodyCapabilities'SofortPayments'
PostAccountsAccountRequestBodyCapabilities'SofortPayments' {postAccountsAccountRequestBodyCapabilities'SofortPayments'Requested :: Maybe Bool
postAccountsAccountRequestBodyCapabilities'SofortPayments'Requested = Maybe Bool
forall a. Maybe a
GHC.Maybe.Nothing}

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.capabilities.properties.tax_reporting_us_1099_k@ in the specification.
data PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K' = PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
  { -- | requested
    PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'Requested :: (GHC.Maybe.Maybe GHC.Types.Bool)
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
-> String
-> String
[PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K']
-> String -> String
PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
-> String
(Int
 -> PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
    -> String)
-> ([PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K']
    -> String -> String)
-> Show
     PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K']
-> String -> String
show :: PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
-> String
$cshow :: PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
-> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
-> PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
-> Bool
(PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
 -> PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
 -> Bool)
-> (PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
    -> PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
    -> Bool)
-> Eq
     PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
-> PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
-> Bool
$c/= :: PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
-> PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
-> Bool
== :: PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
-> PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
-> Bool
$c== :: PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
-> PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
-> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K' where
  toJSON :: PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
-> Value
toJSON PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"requested" Text -> Maybe Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'Requested PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
-> Encoding
toEncoding PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs (Text
"requested" Text -> Maybe Bool -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'Requested PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
obj)

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K' where
  parseJSON :: Value
-> Parser
     PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
parseJSON = String
-> (Object
    -> Parser
         PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K')
-> Value
-> Parser
     PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'" (\Object
obj -> (Maybe Bool
 -> PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K')
-> Parser
     (Maybe Bool
      -> PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe Bool
-> PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K' Parser
  (Maybe Bool
   -> PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K')
-> Parser (Maybe Bool)
-> Parser
     PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"requested"))

-- | Create a new 'PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'' with all required fields.
mkPostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K' :: PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
mkPostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K' :: PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
mkPostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K' = PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K' :: Maybe Bool
-> PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'
PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K' {postAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'Requested :: Maybe Bool
postAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099K'Requested = Maybe Bool
forall a. Maybe a
GHC.Maybe.Nothing}

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.capabilities.properties.tax_reporting_us_1099_misc@ in the specification.
data PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc' = PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
  { -- | requested
    PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'Requested :: (GHC.Maybe.Maybe GHC.Types.Bool)
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
-> String
-> String
[PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc']
-> String -> String
PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
-> String
(Int
 -> PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
    -> String)
-> ([PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc']
    -> String -> String)
-> Show
     PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc']
-> String -> String
show :: PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
-> String
$cshow :: PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
-> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
-> PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
-> Bool
(PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
 -> PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
 -> Bool)
-> (PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
    -> PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
    -> Bool)
-> Eq
     PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
-> PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
-> Bool
$c/= :: PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
-> PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
-> Bool
== :: PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
-> PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
-> Bool
$c== :: PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
-> PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
-> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc' where
  toJSON :: PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
-> Value
toJSON PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"requested" Text -> Maybe Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'Requested PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
-> Encoding
toEncoding PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs (Text
"requested" Text -> Maybe Bool -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
-> Maybe Bool
postAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'Requested PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
obj)

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc' where
  parseJSON :: Value
-> Parser
     PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
parseJSON = String
-> (Object
    -> Parser
         PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc')
-> Value
-> Parser
     PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'" (\Object
obj -> (Maybe Bool
 -> PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc')
-> Parser
     (Maybe Bool
      -> PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe Bool
-> PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc' Parser
  (Maybe Bool
   -> PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc')
-> Parser (Maybe Bool)
-> Parser
     PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"requested"))

-- | Create a new 'PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'' with all required fields.
mkPostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc' :: PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
mkPostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc' :: PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
mkPostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc' = PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc' :: Maybe Bool
-> PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'
PostAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc' {postAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'Requested :: Maybe Bool
postAccountsAccountRequestBodyCapabilities'TaxReportingUs_1099Misc'Requested = Maybe Bool
forall a. Maybe a
GHC.Maybe.Nothing}

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.capabilities.properties.transfers@ in the specification.
data PostAccountsAccountRequestBodyCapabilities'Transfers' = PostAccountsAccountRequestBodyCapabilities'Transfers'
  { -- | requested
    PostAccountsAccountRequestBodyCapabilities'Transfers' -> Maybe Bool
postAccountsAccountRequestBodyCapabilities'Transfers'Requested :: (GHC.Maybe.Maybe GHC.Types.Bool)
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodyCapabilities'Transfers'
-> String
-> String
[PostAccountsAccountRequestBodyCapabilities'Transfers']
-> String -> String
PostAccountsAccountRequestBodyCapabilities'Transfers' -> String
(Int
 -> PostAccountsAccountRequestBodyCapabilities'Transfers'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyCapabilities'Transfers'
    -> String)
-> ([PostAccountsAccountRequestBodyCapabilities'Transfers']
    -> String -> String)
-> Show PostAccountsAccountRequestBodyCapabilities'Transfers'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyCapabilities'Transfers']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyCapabilities'Transfers']
-> String -> String
show :: PostAccountsAccountRequestBodyCapabilities'Transfers' -> String
$cshow :: PostAccountsAccountRequestBodyCapabilities'Transfers' -> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyCapabilities'Transfers'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyCapabilities'Transfers'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyCapabilities'Transfers'
-> PostAccountsAccountRequestBodyCapabilities'Transfers' -> Bool
(PostAccountsAccountRequestBodyCapabilities'Transfers'
 -> PostAccountsAccountRequestBodyCapabilities'Transfers' -> Bool)
-> (PostAccountsAccountRequestBodyCapabilities'Transfers'
    -> PostAccountsAccountRequestBodyCapabilities'Transfers' -> Bool)
-> Eq PostAccountsAccountRequestBodyCapabilities'Transfers'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyCapabilities'Transfers'
-> PostAccountsAccountRequestBodyCapabilities'Transfers' -> Bool
$c/= :: PostAccountsAccountRequestBodyCapabilities'Transfers'
-> PostAccountsAccountRequestBodyCapabilities'Transfers' -> Bool
== :: PostAccountsAccountRequestBodyCapabilities'Transfers'
-> PostAccountsAccountRequestBodyCapabilities'Transfers' -> Bool
$c== :: PostAccountsAccountRequestBodyCapabilities'Transfers'
-> PostAccountsAccountRequestBodyCapabilities'Transfers' -> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyCapabilities'Transfers' where
  toJSON :: PostAccountsAccountRequestBodyCapabilities'Transfers' -> Value
toJSON PostAccountsAccountRequestBodyCapabilities'Transfers'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"requested" Text -> Maybe Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'Transfers' -> Maybe Bool
postAccountsAccountRequestBodyCapabilities'Transfers'Requested PostAccountsAccountRequestBodyCapabilities'Transfers'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyCapabilities'Transfers' -> Encoding
toEncoding PostAccountsAccountRequestBodyCapabilities'Transfers'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs (Text
"requested" Text -> Maybe Bool -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCapabilities'Transfers' -> Maybe Bool
postAccountsAccountRequestBodyCapabilities'Transfers'Requested PostAccountsAccountRequestBodyCapabilities'Transfers'
obj)

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyCapabilities'Transfers' where
  parseJSON :: Value
-> Parser PostAccountsAccountRequestBodyCapabilities'Transfers'
parseJSON = String
-> (Object
    -> Parser PostAccountsAccountRequestBodyCapabilities'Transfers')
-> Value
-> Parser PostAccountsAccountRequestBodyCapabilities'Transfers'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyCapabilities'Transfers'" (\Object
obj -> (Maybe Bool
 -> PostAccountsAccountRequestBodyCapabilities'Transfers')
-> Parser
     (Maybe Bool
      -> PostAccountsAccountRequestBodyCapabilities'Transfers')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe Bool -> PostAccountsAccountRequestBodyCapabilities'Transfers'
PostAccountsAccountRequestBodyCapabilities'Transfers' Parser
  (Maybe Bool
   -> PostAccountsAccountRequestBodyCapabilities'Transfers')
-> Parser (Maybe Bool)
-> Parser PostAccountsAccountRequestBodyCapabilities'Transfers'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"requested"))

-- | Create a new 'PostAccountsAccountRequestBodyCapabilities'Transfers'' with all required fields.
mkPostAccountsAccountRequestBodyCapabilities'Transfers' :: PostAccountsAccountRequestBodyCapabilities'Transfers'
mkPostAccountsAccountRequestBodyCapabilities'Transfers' :: PostAccountsAccountRequestBodyCapabilities'Transfers'
mkPostAccountsAccountRequestBodyCapabilities'Transfers' = PostAccountsAccountRequestBodyCapabilities'Transfers' :: Maybe Bool -> PostAccountsAccountRequestBodyCapabilities'Transfers'
PostAccountsAccountRequestBodyCapabilities'Transfers' {postAccountsAccountRequestBodyCapabilities'Transfers'Requested :: Maybe Bool
postAccountsAccountRequestBodyCapabilities'Transfers'Requested = Maybe Bool
forall a. Maybe a
GHC.Maybe.Nothing}

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.company@ in the specification.
--
-- Information about the company or business. This field is available for any \`business_type\`.
data PostAccountsAccountRequestBodyCompany' = PostAccountsAccountRequestBodyCompany'
  { -- | address
    PostAccountsAccountRequestBodyCompany'
-> Maybe PostAccountsAccountRequestBodyCompany'Address'
postAccountsAccountRequestBodyCompany'Address :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyCompany'Address'),
    -- | address_kana
    PostAccountsAccountRequestBodyCompany'
-> Maybe PostAccountsAccountRequestBodyCompany'AddressKana'
postAccountsAccountRequestBodyCompany'AddressKana :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyCompany'AddressKana'),
    -- | address_kanji
    PostAccountsAccountRequestBodyCompany'
-> Maybe PostAccountsAccountRequestBodyCompany'AddressKanji'
postAccountsAccountRequestBodyCompany'AddressKanji :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyCompany'AddressKanji'),
    -- | directors_provided
    PostAccountsAccountRequestBodyCompany' -> Maybe Bool
postAccountsAccountRequestBodyCompany'DirectorsProvided :: (GHC.Maybe.Maybe GHC.Types.Bool),
    -- | executives_provided
    PostAccountsAccountRequestBodyCompany' -> Maybe Bool
postAccountsAccountRequestBodyCompany'ExecutivesProvided :: (GHC.Maybe.Maybe GHC.Types.Bool),
    -- | name
    --
    -- Constraints:
    --
    -- * Maximum length of 100
    PostAccountsAccountRequestBodyCompany' -> Maybe Text
postAccountsAccountRequestBodyCompany'Name :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | name_kana
    --
    -- Constraints:
    --
    -- * Maximum length of 100
    PostAccountsAccountRequestBodyCompany' -> Maybe Text
postAccountsAccountRequestBodyCompany'NameKana :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | name_kanji
    --
    -- Constraints:
    --
    -- * Maximum length of 100
    PostAccountsAccountRequestBodyCompany' -> Maybe Text
postAccountsAccountRequestBodyCompany'NameKanji :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | owners_provided
    PostAccountsAccountRequestBodyCompany' -> Maybe Bool
postAccountsAccountRequestBodyCompany'OwnersProvided :: (GHC.Maybe.Maybe GHC.Types.Bool),
    -- | phone
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyCompany' -> Maybe Text
postAccountsAccountRequestBodyCompany'Phone :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | registration_number
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyCompany' -> Maybe Text
postAccountsAccountRequestBodyCompany'RegistrationNumber :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | structure
    PostAccountsAccountRequestBodyCompany'
-> Maybe PostAccountsAccountRequestBodyCompany'Structure'
postAccountsAccountRequestBodyCompany'Structure :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyCompany'Structure'),
    -- | tax_id
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyCompany' -> Maybe Text
postAccountsAccountRequestBodyCompany'TaxId :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | tax_id_registrar
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyCompany' -> Maybe Text
postAccountsAccountRequestBodyCompany'TaxIdRegistrar :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | vat_id
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyCompany' -> Maybe Text
postAccountsAccountRequestBodyCompany'VatId :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | verification
    PostAccountsAccountRequestBodyCompany'
-> Maybe PostAccountsAccountRequestBodyCompany'Verification'
postAccountsAccountRequestBodyCompany'Verification :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyCompany'Verification')
  }
  deriving
    ( Int -> PostAccountsAccountRequestBodyCompany' -> String -> String
[PostAccountsAccountRequestBodyCompany'] -> String -> String
PostAccountsAccountRequestBodyCompany' -> String
(Int -> PostAccountsAccountRequestBodyCompany' -> String -> String)
-> (PostAccountsAccountRequestBodyCompany' -> String)
-> ([PostAccountsAccountRequestBodyCompany'] -> String -> String)
-> Show PostAccountsAccountRequestBodyCompany'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyCompany'] -> String -> String
$cshowList :: [PostAccountsAccountRequestBodyCompany'] -> String -> String
show :: PostAccountsAccountRequestBodyCompany' -> String
$cshow :: PostAccountsAccountRequestBodyCompany' -> String
showsPrec :: Int -> PostAccountsAccountRequestBodyCompany' -> String -> String
$cshowsPrec :: Int -> PostAccountsAccountRequestBodyCompany' -> String -> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyCompany'
-> PostAccountsAccountRequestBodyCompany' -> Bool
(PostAccountsAccountRequestBodyCompany'
 -> PostAccountsAccountRequestBodyCompany' -> Bool)
-> (PostAccountsAccountRequestBodyCompany'
    -> PostAccountsAccountRequestBodyCompany' -> Bool)
-> Eq PostAccountsAccountRequestBodyCompany'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyCompany'
-> PostAccountsAccountRequestBodyCompany' -> Bool
$c/= :: PostAccountsAccountRequestBodyCompany'
-> PostAccountsAccountRequestBodyCompany' -> Bool
== :: PostAccountsAccountRequestBodyCompany'
-> PostAccountsAccountRequestBodyCompany' -> Bool
$c== :: PostAccountsAccountRequestBodyCompany'
-> PostAccountsAccountRequestBodyCompany' -> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyCompany' where
  toJSON :: PostAccountsAccountRequestBodyCompany' -> Value
toJSON PostAccountsAccountRequestBodyCompany'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"address" Text
-> Maybe PostAccountsAccountRequestBodyCompany'Address' -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'
-> Maybe PostAccountsAccountRequestBodyCompany'Address'
postAccountsAccountRequestBodyCompany'Address PostAccountsAccountRequestBodyCompany'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"address_kana" Text
-> Maybe PostAccountsAccountRequestBodyCompany'AddressKana' -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'
-> Maybe PostAccountsAccountRequestBodyCompany'AddressKana'
postAccountsAccountRequestBodyCompany'AddressKana PostAccountsAccountRequestBodyCompany'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"address_kanji" Text
-> Maybe PostAccountsAccountRequestBodyCompany'AddressKanji'
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'
-> Maybe PostAccountsAccountRequestBodyCompany'AddressKanji'
postAccountsAccountRequestBodyCompany'AddressKanji PostAccountsAccountRequestBodyCompany'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"directors_provided" Text -> Maybe Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany' -> Maybe Bool
postAccountsAccountRequestBodyCompany'DirectorsProvided PostAccountsAccountRequestBodyCompany'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"executives_provided" Text -> Maybe Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany' -> Maybe Bool
postAccountsAccountRequestBodyCompany'ExecutivesProvided PostAccountsAccountRequestBodyCompany'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"name" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany' -> Maybe Text
postAccountsAccountRequestBodyCompany'Name PostAccountsAccountRequestBodyCompany'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"name_kana" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany' -> Maybe Text
postAccountsAccountRequestBodyCompany'NameKana PostAccountsAccountRequestBodyCompany'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"name_kanji" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany' -> Maybe Text
postAccountsAccountRequestBodyCompany'NameKanji PostAccountsAccountRequestBodyCompany'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"owners_provided" Text -> Maybe Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany' -> Maybe Bool
postAccountsAccountRequestBodyCompany'OwnersProvided PostAccountsAccountRequestBodyCompany'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"phone" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany' -> Maybe Text
postAccountsAccountRequestBodyCompany'Phone PostAccountsAccountRequestBodyCompany'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"registration_number" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany' -> Maybe Text
postAccountsAccountRequestBodyCompany'RegistrationNumber PostAccountsAccountRequestBodyCompany'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"structure" Text
-> Maybe PostAccountsAccountRequestBodyCompany'Structure' -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'
-> Maybe PostAccountsAccountRequestBodyCompany'Structure'
postAccountsAccountRequestBodyCompany'Structure PostAccountsAccountRequestBodyCompany'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"tax_id" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany' -> Maybe Text
postAccountsAccountRequestBodyCompany'TaxId PostAccountsAccountRequestBodyCompany'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"tax_id_registrar" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany' -> Maybe Text
postAccountsAccountRequestBodyCompany'TaxIdRegistrar PostAccountsAccountRequestBodyCompany'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"vat_id" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany' -> Maybe Text
postAccountsAccountRequestBodyCompany'VatId PostAccountsAccountRequestBodyCompany'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"verification" Text
-> Maybe PostAccountsAccountRequestBodyCompany'Verification'
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'
-> Maybe PostAccountsAccountRequestBodyCompany'Verification'
postAccountsAccountRequestBodyCompany'Verification PostAccountsAccountRequestBodyCompany'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyCompany' -> Encoding
toEncoding PostAccountsAccountRequestBodyCompany'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs ((Text
"address" Text
-> Maybe PostAccountsAccountRequestBodyCompany'Address' -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'
-> Maybe PostAccountsAccountRequestBodyCompany'Address'
postAccountsAccountRequestBodyCompany'Address PostAccountsAccountRequestBodyCompany'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"address_kana" Text
-> Maybe PostAccountsAccountRequestBodyCompany'AddressKana'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'
-> Maybe PostAccountsAccountRequestBodyCompany'AddressKana'
postAccountsAccountRequestBodyCompany'AddressKana PostAccountsAccountRequestBodyCompany'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"address_kanji" Text
-> Maybe PostAccountsAccountRequestBodyCompany'AddressKanji'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'
-> Maybe PostAccountsAccountRequestBodyCompany'AddressKanji'
postAccountsAccountRequestBodyCompany'AddressKanji PostAccountsAccountRequestBodyCompany'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"directors_provided" Text -> Maybe Bool -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany' -> Maybe Bool
postAccountsAccountRequestBodyCompany'DirectorsProvided PostAccountsAccountRequestBodyCompany'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"executives_provided" Text -> Maybe Bool -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany' -> Maybe Bool
postAccountsAccountRequestBodyCompany'ExecutivesProvided PostAccountsAccountRequestBodyCompany'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"name" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany' -> Maybe Text
postAccountsAccountRequestBodyCompany'Name PostAccountsAccountRequestBodyCompany'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"name_kana" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany' -> Maybe Text
postAccountsAccountRequestBodyCompany'NameKana PostAccountsAccountRequestBodyCompany'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"name_kanji" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany' -> Maybe Text
postAccountsAccountRequestBodyCompany'NameKanji PostAccountsAccountRequestBodyCompany'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"owners_provided" Text -> Maybe Bool -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany' -> Maybe Bool
postAccountsAccountRequestBodyCompany'OwnersProvided PostAccountsAccountRequestBodyCompany'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"phone" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany' -> Maybe Text
postAccountsAccountRequestBodyCompany'Phone PostAccountsAccountRequestBodyCompany'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"registration_number" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany' -> Maybe Text
postAccountsAccountRequestBodyCompany'RegistrationNumber PostAccountsAccountRequestBodyCompany'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"structure" Text
-> Maybe PostAccountsAccountRequestBodyCompany'Structure' -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'
-> Maybe PostAccountsAccountRequestBodyCompany'Structure'
postAccountsAccountRequestBodyCompany'Structure PostAccountsAccountRequestBodyCompany'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"tax_id" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany' -> Maybe Text
postAccountsAccountRequestBodyCompany'TaxId PostAccountsAccountRequestBodyCompany'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"tax_id_registrar" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany' -> Maybe Text
postAccountsAccountRequestBodyCompany'TaxIdRegistrar PostAccountsAccountRequestBodyCompany'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"vat_id" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany' -> Maybe Text
postAccountsAccountRequestBodyCompany'VatId PostAccountsAccountRequestBodyCompany'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> (Text
"verification" Text
-> Maybe PostAccountsAccountRequestBodyCompany'Verification'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'
-> Maybe PostAccountsAccountRequestBodyCompany'Verification'
postAccountsAccountRequestBodyCompany'Verification PostAccountsAccountRequestBodyCompany'
obj))))))))))))))))

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyCompany' where
  parseJSON :: Value -> Parser PostAccountsAccountRequestBodyCompany'
parseJSON = String
-> (Object -> Parser PostAccountsAccountRequestBodyCompany')
-> Value
-> Parser PostAccountsAccountRequestBodyCompany'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyCompany'" (\Object
obj -> ((((((((((((((((Maybe PostAccountsAccountRequestBodyCompany'Address'
 -> Maybe PostAccountsAccountRequestBodyCompany'AddressKana'
 -> Maybe PostAccountsAccountRequestBodyCompany'AddressKanji'
 -> Maybe Bool
 -> Maybe Bool
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Bool
 -> Maybe Text
 -> Maybe Text
 -> Maybe PostAccountsAccountRequestBodyCompany'Structure'
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe PostAccountsAccountRequestBodyCompany'Verification'
 -> PostAccountsAccountRequestBodyCompany')
-> Parser
     (Maybe PostAccountsAccountRequestBodyCompany'Address'
      -> Maybe PostAccountsAccountRequestBodyCompany'AddressKana'
      -> Maybe PostAccountsAccountRequestBodyCompany'AddressKanji'
      -> Maybe Bool
      -> Maybe Bool
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Bool
      -> Maybe Text
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyCompany'Structure'
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyCompany'Verification'
      -> PostAccountsAccountRequestBodyCompany')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe PostAccountsAccountRequestBodyCompany'Address'
-> Maybe PostAccountsAccountRequestBodyCompany'AddressKana'
-> Maybe PostAccountsAccountRequestBodyCompany'AddressKanji'
-> Maybe Bool
-> Maybe Bool
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Bool
-> Maybe Text
-> Maybe Text
-> Maybe PostAccountsAccountRequestBodyCompany'Structure'
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe PostAccountsAccountRequestBodyCompany'Verification'
-> PostAccountsAccountRequestBodyCompany'
PostAccountsAccountRequestBodyCompany' Parser
  (Maybe PostAccountsAccountRequestBodyCompany'Address'
   -> Maybe PostAccountsAccountRequestBodyCompany'AddressKana'
   -> Maybe PostAccountsAccountRequestBodyCompany'AddressKanji'
   -> Maybe Bool
   -> Maybe Bool
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Bool
   -> Maybe Text
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyCompany'Structure'
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyCompany'Verification'
   -> PostAccountsAccountRequestBodyCompany')
-> Parser (Maybe PostAccountsAccountRequestBodyCompany'Address')
-> Parser
     (Maybe PostAccountsAccountRequestBodyCompany'AddressKana'
      -> Maybe PostAccountsAccountRequestBodyCompany'AddressKanji'
      -> Maybe Bool
      -> Maybe Bool
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Bool
      -> Maybe Text
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyCompany'Structure'
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyCompany'Verification'
      -> PostAccountsAccountRequestBodyCompany')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser (Maybe PostAccountsAccountRequestBodyCompany'Address')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"address")) Parser
  (Maybe PostAccountsAccountRequestBodyCompany'AddressKana'
   -> Maybe PostAccountsAccountRequestBodyCompany'AddressKanji'
   -> Maybe Bool
   -> Maybe Bool
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Bool
   -> Maybe Text
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyCompany'Structure'
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyCompany'Verification'
   -> PostAccountsAccountRequestBodyCompany')
-> Parser
     (Maybe PostAccountsAccountRequestBodyCompany'AddressKana')
-> Parser
     (Maybe PostAccountsAccountRequestBodyCompany'AddressKanji'
      -> Maybe Bool
      -> Maybe Bool
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Bool
      -> Maybe Text
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyCompany'Structure'
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyCompany'Verification'
      -> PostAccountsAccountRequestBodyCompany')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe PostAccountsAccountRequestBodyCompany'AddressKana')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"address_kana")) Parser
  (Maybe PostAccountsAccountRequestBodyCompany'AddressKanji'
   -> Maybe Bool
   -> Maybe Bool
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Bool
   -> Maybe Text
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyCompany'Structure'
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyCompany'Verification'
   -> PostAccountsAccountRequestBodyCompany')
-> Parser
     (Maybe PostAccountsAccountRequestBodyCompany'AddressKanji')
-> Parser
     (Maybe Bool
      -> Maybe Bool
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Bool
      -> Maybe Text
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyCompany'Structure'
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyCompany'Verification'
      -> PostAccountsAccountRequestBodyCompany')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe PostAccountsAccountRequestBodyCompany'AddressKanji')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"address_kanji")) Parser
  (Maybe Bool
   -> Maybe Bool
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Bool
   -> Maybe Text
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyCompany'Structure'
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyCompany'Verification'
   -> PostAccountsAccountRequestBodyCompany')
-> Parser (Maybe Bool)
-> Parser
     (Maybe Bool
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Bool
      -> Maybe Text
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyCompany'Structure'
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyCompany'Verification'
      -> PostAccountsAccountRequestBodyCompany')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"directors_provided")) Parser
  (Maybe Bool
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Bool
   -> Maybe Text
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyCompany'Structure'
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyCompany'Verification'
   -> PostAccountsAccountRequestBodyCompany')
-> Parser (Maybe Bool)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Bool
      -> Maybe Text
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyCompany'Structure'
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyCompany'Verification'
      -> PostAccountsAccountRequestBodyCompany')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"executives_provided")) Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Bool
   -> Maybe Text
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyCompany'Structure'
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyCompany'Verification'
   -> PostAccountsAccountRequestBodyCompany')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Bool
      -> Maybe Text
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyCompany'Structure'
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyCompany'Verification'
      -> PostAccountsAccountRequestBodyCompany')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"name")) Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Bool
   -> Maybe Text
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyCompany'Structure'
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyCompany'Verification'
   -> PostAccountsAccountRequestBodyCompany')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Bool
      -> Maybe Text
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyCompany'Structure'
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyCompany'Verification'
      -> PostAccountsAccountRequestBodyCompany')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"name_kana")) Parser
  (Maybe Text
   -> Maybe Bool
   -> Maybe Text
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyCompany'Structure'
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyCompany'Verification'
   -> PostAccountsAccountRequestBodyCompany')
-> Parser (Maybe Text)
-> Parser
     (Maybe Bool
      -> Maybe Text
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyCompany'Structure'
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyCompany'Verification'
      -> PostAccountsAccountRequestBodyCompany')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"name_kanji")) Parser
  (Maybe Bool
   -> Maybe Text
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyCompany'Structure'
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyCompany'Verification'
   -> PostAccountsAccountRequestBodyCompany')
-> Parser (Maybe Bool)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyCompany'Structure'
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyCompany'Verification'
      -> PostAccountsAccountRequestBodyCompany')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"owners_provided")) Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyCompany'Structure'
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyCompany'Verification'
   -> PostAccountsAccountRequestBodyCompany')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe PostAccountsAccountRequestBodyCompany'Structure'
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyCompany'Verification'
      -> PostAccountsAccountRequestBodyCompany')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"phone")) Parser
  (Maybe Text
   -> Maybe PostAccountsAccountRequestBodyCompany'Structure'
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyCompany'Verification'
   -> PostAccountsAccountRequestBodyCompany')
-> Parser (Maybe Text)
-> Parser
     (Maybe PostAccountsAccountRequestBodyCompany'Structure'
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyCompany'Verification'
      -> PostAccountsAccountRequestBodyCompany')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"registration_number")) Parser
  (Maybe PostAccountsAccountRequestBodyCompany'Structure'
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyCompany'Verification'
   -> PostAccountsAccountRequestBodyCompany')
-> Parser (Maybe PostAccountsAccountRequestBodyCompany'Structure')
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyCompany'Verification'
      -> PostAccountsAccountRequestBodyCompany')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser (Maybe PostAccountsAccountRequestBodyCompany'Structure')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"structure")) Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyCompany'Verification'
   -> PostAccountsAccountRequestBodyCompany')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyCompany'Verification'
      -> PostAccountsAccountRequestBodyCompany')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"tax_id")) Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyCompany'Verification'
   -> PostAccountsAccountRequestBodyCompany')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe PostAccountsAccountRequestBodyCompany'Verification'
      -> PostAccountsAccountRequestBodyCompany')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"tax_id_registrar")) Parser
  (Maybe Text
   -> Maybe PostAccountsAccountRequestBodyCompany'Verification'
   -> PostAccountsAccountRequestBodyCompany')
-> Parser (Maybe Text)
-> Parser
     (Maybe PostAccountsAccountRequestBodyCompany'Verification'
      -> PostAccountsAccountRequestBodyCompany')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"vat_id")) Parser
  (Maybe PostAccountsAccountRequestBodyCompany'Verification'
   -> PostAccountsAccountRequestBodyCompany')
-> Parser
     (Maybe PostAccountsAccountRequestBodyCompany'Verification')
-> Parser PostAccountsAccountRequestBodyCompany'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe PostAccountsAccountRequestBodyCompany'Verification')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"verification"))

-- | Create a new 'PostAccountsAccountRequestBodyCompany'' with all required fields.
mkPostAccountsAccountRequestBodyCompany' :: PostAccountsAccountRequestBodyCompany'
mkPostAccountsAccountRequestBodyCompany' :: PostAccountsAccountRequestBodyCompany'
mkPostAccountsAccountRequestBodyCompany' =
  PostAccountsAccountRequestBodyCompany' :: Maybe PostAccountsAccountRequestBodyCompany'Address'
-> Maybe PostAccountsAccountRequestBodyCompany'AddressKana'
-> Maybe PostAccountsAccountRequestBodyCompany'AddressKanji'
-> Maybe Bool
-> Maybe Bool
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Bool
-> Maybe Text
-> Maybe Text
-> Maybe PostAccountsAccountRequestBodyCompany'Structure'
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe PostAccountsAccountRequestBodyCompany'Verification'
-> PostAccountsAccountRequestBodyCompany'
PostAccountsAccountRequestBodyCompany'
    { postAccountsAccountRequestBodyCompany'Address :: Maybe PostAccountsAccountRequestBodyCompany'Address'
postAccountsAccountRequestBodyCompany'Address = Maybe PostAccountsAccountRequestBodyCompany'Address'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCompany'AddressKana :: Maybe PostAccountsAccountRequestBodyCompany'AddressKana'
postAccountsAccountRequestBodyCompany'AddressKana = Maybe PostAccountsAccountRequestBodyCompany'AddressKana'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCompany'AddressKanji :: Maybe PostAccountsAccountRequestBodyCompany'AddressKanji'
postAccountsAccountRequestBodyCompany'AddressKanji = Maybe PostAccountsAccountRequestBodyCompany'AddressKanji'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCompany'DirectorsProvided :: Maybe Bool
postAccountsAccountRequestBodyCompany'DirectorsProvided = Maybe Bool
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCompany'ExecutivesProvided :: Maybe Bool
postAccountsAccountRequestBodyCompany'ExecutivesProvided = Maybe Bool
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCompany'Name :: Maybe Text
postAccountsAccountRequestBodyCompany'Name = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCompany'NameKana :: Maybe Text
postAccountsAccountRequestBodyCompany'NameKana = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCompany'NameKanji :: Maybe Text
postAccountsAccountRequestBodyCompany'NameKanji = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCompany'OwnersProvided :: Maybe Bool
postAccountsAccountRequestBodyCompany'OwnersProvided = Maybe Bool
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCompany'Phone :: Maybe Text
postAccountsAccountRequestBodyCompany'Phone = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCompany'RegistrationNumber :: Maybe Text
postAccountsAccountRequestBodyCompany'RegistrationNumber = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCompany'Structure :: Maybe PostAccountsAccountRequestBodyCompany'Structure'
postAccountsAccountRequestBodyCompany'Structure = Maybe PostAccountsAccountRequestBodyCompany'Structure'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCompany'TaxId :: Maybe Text
postAccountsAccountRequestBodyCompany'TaxId = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCompany'TaxIdRegistrar :: Maybe Text
postAccountsAccountRequestBodyCompany'TaxIdRegistrar = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCompany'VatId :: Maybe Text
postAccountsAccountRequestBodyCompany'VatId = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCompany'Verification :: Maybe PostAccountsAccountRequestBodyCompany'Verification'
postAccountsAccountRequestBodyCompany'Verification = Maybe PostAccountsAccountRequestBodyCompany'Verification'
forall a. Maybe a
GHC.Maybe.Nothing
    }

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.company.properties.address@ in the specification.
data PostAccountsAccountRequestBodyCompany'Address' = PostAccountsAccountRequestBodyCompany'Address'
  { -- | city
    --
    -- Constraints:
    --
    -- * Maximum length of 100
    PostAccountsAccountRequestBodyCompany'Address' -> Maybe Text
postAccountsAccountRequestBodyCompany'Address'City :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | country
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyCompany'Address' -> Maybe Text
postAccountsAccountRequestBodyCompany'Address'Country :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | line1
    --
    -- Constraints:
    --
    -- * Maximum length of 200
    PostAccountsAccountRequestBodyCompany'Address' -> Maybe Text
postAccountsAccountRequestBodyCompany'Address'Line1 :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | line2
    --
    -- Constraints:
    --
    -- * Maximum length of 200
    PostAccountsAccountRequestBodyCompany'Address' -> Maybe Text
postAccountsAccountRequestBodyCompany'Address'Line2 :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | postal_code
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyCompany'Address' -> Maybe Text
postAccountsAccountRequestBodyCompany'Address'PostalCode :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | state
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyCompany'Address' -> Maybe Text
postAccountsAccountRequestBodyCompany'Address'State :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodyCompany'Address'
-> String
-> String
[PostAccountsAccountRequestBodyCompany'Address']
-> String -> String
PostAccountsAccountRequestBodyCompany'Address' -> String
(Int
 -> PostAccountsAccountRequestBodyCompany'Address'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyCompany'Address' -> String)
-> ([PostAccountsAccountRequestBodyCompany'Address']
    -> String -> String)
-> Show PostAccountsAccountRequestBodyCompany'Address'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyCompany'Address']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyCompany'Address']
-> String -> String
show :: PostAccountsAccountRequestBodyCompany'Address' -> String
$cshow :: PostAccountsAccountRequestBodyCompany'Address' -> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyCompany'Address'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyCompany'Address'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyCompany'Address'
-> PostAccountsAccountRequestBodyCompany'Address' -> Bool
(PostAccountsAccountRequestBodyCompany'Address'
 -> PostAccountsAccountRequestBodyCompany'Address' -> Bool)
-> (PostAccountsAccountRequestBodyCompany'Address'
    -> PostAccountsAccountRequestBodyCompany'Address' -> Bool)
-> Eq PostAccountsAccountRequestBodyCompany'Address'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyCompany'Address'
-> PostAccountsAccountRequestBodyCompany'Address' -> Bool
$c/= :: PostAccountsAccountRequestBodyCompany'Address'
-> PostAccountsAccountRequestBodyCompany'Address' -> Bool
== :: PostAccountsAccountRequestBodyCompany'Address'
-> PostAccountsAccountRequestBodyCompany'Address' -> Bool
$c== :: PostAccountsAccountRequestBodyCompany'Address'
-> PostAccountsAccountRequestBodyCompany'Address' -> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyCompany'Address' where
  toJSON :: PostAccountsAccountRequestBodyCompany'Address' -> Value
toJSON PostAccountsAccountRequestBodyCompany'Address'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"city" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'Address' -> Maybe Text
postAccountsAccountRequestBodyCompany'Address'City PostAccountsAccountRequestBodyCompany'Address'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"country" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'Address' -> Maybe Text
postAccountsAccountRequestBodyCompany'Address'Country PostAccountsAccountRequestBodyCompany'Address'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"line1" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'Address' -> Maybe Text
postAccountsAccountRequestBodyCompany'Address'Line1 PostAccountsAccountRequestBodyCompany'Address'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"line2" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'Address' -> Maybe Text
postAccountsAccountRequestBodyCompany'Address'Line2 PostAccountsAccountRequestBodyCompany'Address'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"postal_code" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'Address' -> Maybe Text
postAccountsAccountRequestBodyCompany'Address'PostalCode PostAccountsAccountRequestBodyCompany'Address'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"state" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'Address' -> Maybe Text
postAccountsAccountRequestBodyCompany'Address'State PostAccountsAccountRequestBodyCompany'Address'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyCompany'Address' -> Encoding
toEncoding PostAccountsAccountRequestBodyCompany'Address'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs ((Text
"city" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'Address' -> Maybe Text
postAccountsAccountRequestBodyCompany'Address'City PostAccountsAccountRequestBodyCompany'Address'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"country" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'Address' -> Maybe Text
postAccountsAccountRequestBodyCompany'Address'Country PostAccountsAccountRequestBodyCompany'Address'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"line1" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'Address' -> Maybe Text
postAccountsAccountRequestBodyCompany'Address'Line1 PostAccountsAccountRequestBodyCompany'Address'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"line2" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'Address' -> Maybe Text
postAccountsAccountRequestBodyCompany'Address'Line2 PostAccountsAccountRequestBodyCompany'Address'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"postal_code" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'Address' -> Maybe Text
postAccountsAccountRequestBodyCompany'Address'PostalCode PostAccountsAccountRequestBodyCompany'Address'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> (Text
"state" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'Address' -> Maybe Text
postAccountsAccountRequestBodyCompany'Address'State PostAccountsAccountRequestBodyCompany'Address'
obj))))))

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyCompany'Address' where
  parseJSON :: Value -> Parser PostAccountsAccountRequestBodyCompany'Address'
parseJSON = String
-> (Object
    -> Parser PostAccountsAccountRequestBodyCompany'Address')
-> Value
-> Parser PostAccountsAccountRequestBodyCompany'Address'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyCompany'Address'" (\Object
obj -> ((((((Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> PostAccountsAccountRequestBodyCompany'Address')
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodyCompany'Address')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> PostAccountsAccountRequestBodyCompany'Address'
PostAccountsAccountRequestBodyCompany'Address' Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodyCompany'Address')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodyCompany'Address')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"city")) Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodyCompany'Address')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodyCompany'Address')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"country")) Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodyCompany'Address')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodyCompany'Address')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"line1")) Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodyCompany'Address')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text -> PostAccountsAccountRequestBodyCompany'Address')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"line2")) Parser
  (Maybe Text
   -> Maybe Text -> PostAccountsAccountRequestBodyCompany'Address')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text -> PostAccountsAccountRequestBodyCompany'Address')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"postal_code")) Parser
  (Maybe Text -> PostAccountsAccountRequestBodyCompany'Address')
-> Parser (Maybe Text)
-> Parser PostAccountsAccountRequestBodyCompany'Address'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"state"))

-- | Create a new 'PostAccountsAccountRequestBodyCompany'Address'' with all required fields.
mkPostAccountsAccountRequestBodyCompany'Address' :: PostAccountsAccountRequestBodyCompany'Address'
mkPostAccountsAccountRequestBodyCompany'Address' :: PostAccountsAccountRequestBodyCompany'Address'
mkPostAccountsAccountRequestBodyCompany'Address' =
  PostAccountsAccountRequestBodyCompany'Address' :: Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> PostAccountsAccountRequestBodyCompany'Address'
PostAccountsAccountRequestBodyCompany'Address'
    { postAccountsAccountRequestBodyCompany'Address'City :: Maybe Text
postAccountsAccountRequestBodyCompany'Address'City = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCompany'Address'Country :: Maybe Text
postAccountsAccountRequestBodyCompany'Address'Country = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCompany'Address'Line1 :: Maybe Text
postAccountsAccountRequestBodyCompany'Address'Line1 = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCompany'Address'Line2 :: Maybe Text
postAccountsAccountRequestBodyCompany'Address'Line2 = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCompany'Address'PostalCode :: Maybe Text
postAccountsAccountRequestBodyCompany'Address'PostalCode = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCompany'Address'State :: Maybe Text
postAccountsAccountRequestBodyCompany'Address'State = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing
    }

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.company.properties.address_kana@ in the specification.
data PostAccountsAccountRequestBodyCompany'AddressKana' = PostAccountsAccountRequestBodyCompany'AddressKana'
  { -- | city
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyCompany'AddressKana' -> Maybe Text
postAccountsAccountRequestBodyCompany'AddressKana'City :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | country
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyCompany'AddressKana' -> Maybe Text
postAccountsAccountRequestBodyCompany'AddressKana'Country :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | line1
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyCompany'AddressKana' -> Maybe Text
postAccountsAccountRequestBodyCompany'AddressKana'Line1 :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | line2
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyCompany'AddressKana' -> Maybe Text
postAccountsAccountRequestBodyCompany'AddressKana'Line2 :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | postal_code
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyCompany'AddressKana' -> Maybe Text
postAccountsAccountRequestBodyCompany'AddressKana'PostalCode :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | state
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyCompany'AddressKana' -> Maybe Text
postAccountsAccountRequestBodyCompany'AddressKana'State :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | town
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyCompany'AddressKana' -> Maybe Text
postAccountsAccountRequestBodyCompany'AddressKana'Town :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodyCompany'AddressKana'
-> String
-> String
[PostAccountsAccountRequestBodyCompany'AddressKana']
-> String -> String
PostAccountsAccountRequestBodyCompany'AddressKana' -> String
(Int
 -> PostAccountsAccountRequestBodyCompany'AddressKana'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyCompany'AddressKana' -> String)
-> ([PostAccountsAccountRequestBodyCompany'AddressKana']
    -> String -> String)
-> Show PostAccountsAccountRequestBodyCompany'AddressKana'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyCompany'AddressKana']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyCompany'AddressKana']
-> String -> String
show :: PostAccountsAccountRequestBodyCompany'AddressKana' -> String
$cshow :: PostAccountsAccountRequestBodyCompany'AddressKana' -> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyCompany'AddressKana'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyCompany'AddressKana'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyCompany'AddressKana'
-> PostAccountsAccountRequestBodyCompany'AddressKana' -> Bool
(PostAccountsAccountRequestBodyCompany'AddressKana'
 -> PostAccountsAccountRequestBodyCompany'AddressKana' -> Bool)
-> (PostAccountsAccountRequestBodyCompany'AddressKana'
    -> PostAccountsAccountRequestBodyCompany'AddressKana' -> Bool)
-> Eq PostAccountsAccountRequestBodyCompany'AddressKana'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyCompany'AddressKana'
-> PostAccountsAccountRequestBodyCompany'AddressKana' -> Bool
$c/= :: PostAccountsAccountRequestBodyCompany'AddressKana'
-> PostAccountsAccountRequestBodyCompany'AddressKana' -> Bool
== :: PostAccountsAccountRequestBodyCompany'AddressKana'
-> PostAccountsAccountRequestBodyCompany'AddressKana' -> Bool
$c== :: PostAccountsAccountRequestBodyCompany'AddressKana'
-> PostAccountsAccountRequestBodyCompany'AddressKana' -> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyCompany'AddressKana' where
  toJSON :: PostAccountsAccountRequestBodyCompany'AddressKana' -> Value
toJSON PostAccountsAccountRequestBodyCompany'AddressKana'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"city" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'AddressKana' -> Maybe Text
postAccountsAccountRequestBodyCompany'AddressKana'City PostAccountsAccountRequestBodyCompany'AddressKana'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"country" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'AddressKana' -> Maybe Text
postAccountsAccountRequestBodyCompany'AddressKana'Country PostAccountsAccountRequestBodyCompany'AddressKana'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"line1" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'AddressKana' -> Maybe Text
postAccountsAccountRequestBodyCompany'AddressKana'Line1 PostAccountsAccountRequestBodyCompany'AddressKana'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"line2" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'AddressKana' -> Maybe Text
postAccountsAccountRequestBodyCompany'AddressKana'Line2 PostAccountsAccountRequestBodyCompany'AddressKana'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"postal_code" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'AddressKana' -> Maybe Text
postAccountsAccountRequestBodyCompany'AddressKana'PostalCode PostAccountsAccountRequestBodyCompany'AddressKana'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"state" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'AddressKana' -> Maybe Text
postAccountsAccountRequestBodyCompany'AddressKana'State PostAccountsAccountRequestBodyCompany'AddressKana'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"town" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'AddressKana' -> Maybe Text
postAccountsAccountRequestBodyCompany'AddressKana'Town PostAccountsAccountRequestBodyCompany'AddressKana'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyCompany'AddressKana' -> Encoding
toEncoding PostAccountsAccountRequestBodyCompany'AddressKana'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs ((Text
"city" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'AddressKana' -> Maybe Text
postAccountsAccountRequestBodyCompany'AddressKana'City PostAccountsAccountRequestBodyCompany'AddressKana'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"country" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'AddressKana' -> Maybe Text
postAccountsAccountRequestBodyCompany'AddressKana'Country PostAccountsAccountRequestBodyCompany'AddressKana'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"line1" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'AddressKana' -> Maybe Text
postAccountsAccountRequestBodyCompany'AddressKana'Line1 PostAccountsAccountRequestBodyCompany'AddressKana'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"line2" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'AddressKana' -> Maybe Text
postAccountsAccountRequestBodyCompany'AddressKana'Line2 PostAccountsAccountRequestBodyCompany'AddressKana'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"postal_code" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'AddressKana' -> Maybe Text
postAccountsAccountRequestBodyCompany'AddressKana'PostalCode PostAccountsAccountRequestBodyCompany'AddressKana'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"state" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'AddressKana' -> Maybe Text
postAccountsAccountRequestBodyCompany'AddressKana'State PostAccountsAccountRequestBodyCompany'AddressKana'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> (Text
"town" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'AddressKana' -> Maybe Text
postAccountsAccountRequestBodyCompany'AddressKana'Town PostAccountsAccountRequestBodyCompany'AddressKana'
obj)))))))

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyCompany'AddressKana' where
  parseJSON :: Value -> Parser PostAccountsAccountRequestBodyCompany'AddressKana'
parseJSON = String
-> (Object
    -> Parser PostAccountsAccountRequestBodyCompany'AddressKana')
-> Value
-> Parser PostAccountsAccountRequestBodyCompany'AddressKana'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyCompany'AddressKana'" (\Object
obj -> (((((((Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> PostAccountsAccountRequestBodyCompany'AddressKana')
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodyCompany'AddressKana')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> PostAccountsAccountRequestBodyCompany'AddressKana'
PostAccountsAccountRequestBodyCompany'AddressKana' Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodyCompany'AddressKana')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodyCompany'AddressKana')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"city")) Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodyCompany'AddressKana')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodyCompany'AddressKana')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"country")) Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodyCompany'AddressKana')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodyCompany'AddressKana')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"line1")) Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodyCompany'AddressKana')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodyCompany'AddressKana')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"line2")) Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodyCompany'AddressKana')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodyCompany'AddressKana')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"postal_code")) Parser
  (Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodyCompany'AddressKana')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text -> PostAccountsAccountRequestBodyCompany'AddressKana')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"state")) Parser
  (Maybe Text -> PostAccountsAccountRequestBodyCompany'AddressKana')
-> Parser (Maybe Text)
-> Parser PostAccountsAccountRequestBodyCompany'AddressKana'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"town"))

-- | Create a new 'PostAccountsAccountRequestBodyCompany'AddressKana'' with all required fields.
mkPostAccountsAccountRequestBodyCompany'AddressKana' :: PostAccountsAccountRequestBodyCompany'AddressKana'
mkPostAccountsAccountRequestBodyCompany'AddressKana' :: PostAccountsAccountRequestBodyCompany'AddressKana'
mkPostAccountsAccountRequestBodyCompany'AddressKana' =
  PostAccountsAccountRequestBodyCompany'AddressKana' :: Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> PostAccountsAccountRequestBodyCompany'AddressKana'
PostAccountsAccountRequestBodyCompany'AddressKana'
    { postAccountsAccountRequestBodyCompany'AddressKana'City :: Maybe Text
postAccountsAccountRequestBodyCompany'AddressKana'City = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCompany'AddressKana'Country :: Maybe Text
postAccountsAccountRequestBodyCompany'AddressKana'Country = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCompany'AddressKana'Line1 :: Maybe Text
postAccountsAccountRequestBodyCompany'AddressKana'Line1 = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCompany'AddressKana'Line2 :: Maybe Text
postAccountsAccountRequestBodyCompany'AddressKana'Line2 = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCompany'AddressKana'PostalCode :: Maybe Text
postAccountsAccountRequestBodyCompany'AddressKana'PostalCode = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCompany'AddressKana'State :: Maybe Text
postAccountsAccountRequestBodyCompany'AddressKana'State = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCompany'AddressKana'Town :: Maybe Text
postAccountsAccountRequestBodyCompany'AddressKana'Town = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing
    }

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.company.properties.address_kanji@ in the specification.
data PostAccountsAccountRequestBodyCompany'AddressKanji' = PostAccountsAccountRequestBodyCompany'AddressKanji'
  { -- | city
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyCompany'AddressKanji' -> Maybe Text
postAccountsAccountRequestBodyCompany'AddressKanji'City :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | country
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyCompany'AddressKanji' -> Maybe Text
postAccountsAccountRequestBodyCompany'AddressKanji'Country :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | line1
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyCompany'AddressKanji' -> Maybe Text
postAccountsAccountRequestBodyCompany'AddressKanji'Line1 :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | line2
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyCompany'AddressKanji' -> Maybe Text
postAccountsAccountRequestBodyCompany'AddressKanji'Line2 :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | postal_code
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyCompany'AddressKanji' -> Maybe Text
postAccountsAccountRequestBodyCompany'AddressKanji'PostalCode :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | state
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyCompany'AddressKanji' -> Maybe Text
postAccountsAccountRequestBodyCompany'AddressKanji'State :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | town
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyCompany'AddressKanji' -> Maybe Text
postAccountsAccountRequestBodyCompany'AddressKanji'Town :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodyCompany'AddressKanji'
-> String
-> String
[PostAccountsAccountRequestBodyCompany'AddressKanji']
-> String -> String
PostAccountsAccountRequestBodyCompany'AddressKanji' -> String
(Int
 -> PostAccountsAccountRequestBodyCompany'AddressKanji'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyCompany'AddressKanji' -> String)
-> ([PostAccountsAccountRequestBodyCompany'AddressKanji']
    -> String -> String)
-> Show PostAccountsAccountRequestBodyCompany'AddressKanji'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyCompany'AddressKanji']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyCompany'AddressKanji']
-> String -> String
show :: PostAccountsAccountRequestBodyCompany'AddressKanji' -> String
$cshow :: PostAccountsAccountRequestBodyCompany'AddressKanji' -> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyCompany'AddressKanji'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyCompany'AddressKanji'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyCompany'AddressKanji'
-> PostAccountsAccountRequestBodyCompany'AddressKanji' -> Bool
(PostAccountsAccountRequestBodyCompany'AddressKanji'
 -> PostAccountsAccountRequestBodyCompany'AddressKanji' -> Bool)
-> (PostAccountsAccountRequestBodyCompany'AddressKanji'
    -> PostAccountsAccountRequestBodyCompany'AddressKanji' -> Bool)
-> Eq PostAccountsAccountRequestBodyCompany'AddressKanji'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyCompany'AddressKanji'
-> PostAccountsAccountRequestBodyCompany'AddressKanji' -> Bool
$c/= :: PostAccountsAccountRequestBodyCompany'AddressKanji'
-> PostAccountsAccountRequestBodyCompany'AddressKanji' -> Bool
== :: PostAccountsAccountRequestBodyCompany'AddressKanji'
-> PostAccountsAccountRequestBodyCompany'AddressKanji' -> Bool
$c== :: PostAccountsAccountRequestBodyCompany'AddressKanji'
-> PostAccountsAccountRequestBodyCompany'AddressKanji' -> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyCompany'AddressKanji' where
  toJSON :: PostAccountsAccountRequestBodyCompany'AddressKanji' -> Value
toJSON PostAccountsAccountRequestBodyCompany'AddressKanji'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"city" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'AddressKanji' -> Maybe Text
postAccountsAccountRequestBodyCompany'AddressKanji'City PostAccountsAccountRequestBodyCompany'AddressKanji'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"country" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'AddressKanji' -> Maybe Text
postAccountsAccountRequestBodyCompany'AddressKanji'Country PostAccountsAccountRequestBodyCompany'AddressKanji'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"line1" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'AddressKanji' -> Maybe Text
postAccountsAccountRequestBodyCompany'AddressKanji'Line1 PostAccountsAccountRequestBodyCompany'AddressKanji'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"line2" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'AddressKanji' -> Maybe Text
postAccountsAccountRequestBodyCompany'AddressKanji'Line2 PostAccountsAccountRequestBodyCompany'AddressKanji'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"postal_code" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'AddressKanji' -> Maybe Text
postAccountsAccountRequestBodyCompany'AddressKanji'PostalCode PostAccountsAccountRequestBodyCompany'AddressKanji'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"state" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'AddressKanji' -> Maybe Text
postAccountsAccountRequestBodyCompany'AddressKanji'State PostAccountsAccountRequestBodyCompany'AddressKanji'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"town" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'AddressKanji' -> Maybe Text
postAccountsAccountRequestBodyCompany'AddressKanji'Town PostAccountsAccountRequestBodyCompany'AddressKanji'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyCompany'AddressKanji' -> Encoding
toEncoding PostAccountsAccountRequestBodyCompany'AddressKanji'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs ((Text
"city" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'AddressKanji' -> Maybe Text
postAccountsAccountRequestBodyCompany'AddressKanji'City PostAccountsAccountRequestBodyCompany'AddressKanji'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"country" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'AddressKanji' -> Maybe Text
postAccountsAccountRequestBodyCompany'AddressKanji'Country PostAccountsAccountRequestBodyCompany'AddressKanji'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"line1" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'AddressKanji' -> Maybe Text
postAccountsAccountRequestBodyCompany'AddressKanji'Line1 PostAccountsAccountRequestBodyCompany'AddressKanji'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"line2" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'AddressKanji' -> Maybe Text
postAccountsAccountRequestBodyCompany'AddressKanji'Line2 PostAccountsAccountRequestBodyCompany'AddressKanji'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"postal_code" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'AddressKanji' -> Maybe Text
postAccountsAccountRequestBodyCompany'AddressKanji'PostalCode PostAccountsAccountRequestBodyCompany'AddressKanji'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"state" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'AddressKanji' -> Maybe Text
postAccountsAccountRequestBodyCompany'AddressKanji'State PostAccountsAccountRequestBodyCompany'AddressKanji'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> (Text
"town" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'AddressKanji' -> Maybe Text
postAccountsAccountRequestBodyCompany'AddressKanji'Town PostAccountsAccountRequestBodyCompany'AddressKanji'
obj)))))))

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyCompany'AddressKanji' where
  parseJSON :: Value -> Parser PostAccountsAccountRequestBodyCompany'AddressKanji'
parseJSON = String
-> (Object
    -> Parser PostAccountsAccountRequestBodyCompany'AddressKanji')
-> Value
-> Parser PostAccountsAccountRequestBodyCompany'AddressKanji'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyCompany'AddressKanji'" (\Object
obj -> (((((((Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> PostAccountsAccountRequestBodyCompany'AddressKanji')
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodyCompany'AddressKanji')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> PostAccountsAccountRequestBodyCompany'AddressKanji'
PostAccountsAccountRequestBodyCompany'AddressKanji' Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodyCompany'AddressKanji')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodyCompany'AddressKanji')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"city")) Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodyCompany'AddressKanji')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodyCompany'AddressKanji')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"country")) Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodyCompany'AddressKanji')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodyCompany'AddressKanji')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"line1")) Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodyCompany'AddressKanji')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodyCompany'AddressKanji')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"line2")) Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodyCompany'AddressKanji')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodyCompany'AddressKanji')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"postal_code")) Parser
  (Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodyCompany'AddressKanji')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text -> PostAccountsAccountRequestBodyCompany'AddressKanji')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"state")) Parser
  (Maybe Text -> PostAccountsAccountRequestBodyCompany'AddressKanji')
-> Parser (Maybe Text)
-> Parser PostAccountsAccountRequestBodyCompany'AddressKanji'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"town"))

-- | Create a new 'PostAccountsAccountRequestBodyCompany'AddressKanji'' with all required fields.
mkPostAccountsAccountRequestBodyCompany'AddressKanji' :: PostAccountsAccountRequestBodyCompany'AddressKanji'
mkPostAccountsAccountRequestBodyCompany'AddressKanji' :: PostAccountsAccountRequestBodyCompany'AddressKanji'
mkPostAccountsAccountRequestBodyCompany'AddressKanji' =
  PostAccountsAccountRequestBodyCompany'AddressKanji' :: Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> PostAccountsAccountRequestBodyCompany'AddressKanji'
PostAccountsAccountRequestBodyCompany'AddressKanji'
    { postAccountsAccountRequestBodyCompany'AddressKanji'City :: Maybe Text
postAccountsAccountRequestBodyCompany'AddressKanji'City = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCompany'AddressKanji'Country :: Maybe Text
postAccountsAccountRequestBodyCompany'AddressKanji'Country = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCompany'AddressKanji'Line1 :: Maybe Text
postAccountsAccountRequestBodyCompany'AddressKanji'Line1 = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCompany'AddressKanji'Line2 :: Maybe Text
postAccountsAccountRequestBodyCompany'AddressKanji'Line2 = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCompany'AddressKanji'PostalCode :: Maybe Text
postAccountsAccountRequestBodyCompany'AddressKanji'PostalCode = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCompany'AddressKanji'State :: Maybe Text
postAccountsAccountRequestBodyCompany'AddressKanji'State = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCompany'AddressKanji'Town :: Maybe Text
postAccountsAccountRequestBodyCompany'AddressKanji'Town = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing
    }

-- | Defines the enum schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.company.properties.structure@ in the specification.
data PostAccountsAccountRequestBodyCompany'Structure'
  = -- | This case is used if the value encountered during decoding does not match any of the provided cases in the specification.
    PostAccountsAccountRequestBodyCompany'Structure'Other Data.Aeson.Types.Internal.Value
  | -- | This constructor can be used to send values to the server which are not present in the specification yet.
    PostAccountsAccountRequestBodyCompany'Structure'Typed Data.Text.Internal.Text
  | -- | Represents the JSON value @""@
    PostAccountsAccountRequestBodyCompany'Structure'EnumEmptyString
  | -- | Represents the JSON value @"free_zone_establishment"@
    PostAccountsAccountRequestBodyCompany'Structure'EnumFreeZoneEstablishment
  | -- | Represents the JSON value @"free_zone_llc"@
    PostAccountsAccountRequestBodyCompany'Structure'EnumFreeZoneLlc
  | -- | Represents the JSON value @"government_instrumentality"@
    PostAccountsAccountRequestBodyCompany'Structure'EnumGovernmentInstrumentality
  | -- | Represents the JSON value @"governmental_unit"@
    PostAccountsAccountRequestBodyCompany'Structure'EnumGovernmentalUnit
  | -- | Represents the JSON value @"incorporated_non_profit"@
    PostAccountsAccountRequestBodyCompany'Structure'EnumIncorporatedNonProfit
  | -- | Represents the JSON value @"limited_liability_partnership"@
    PostAccountsAccountRequestBodyCompany'Structure'EnumLimitedLiabilityPartnership
  | -- | Represents the JSON value @"llc"@
    PostAccountsAccountRequestBodyCompany'Structure'EnumLlc
  | -- | Represents the JSON value @"multi_member_llc"@
    PostAccountsAccountRequestBodyCompany'Structure'EnumMultiMemberLlc
  | -- | Represents the JSON value @"private_company"@
    PostAccountsAccountRequestBodyCompany'Structure'EnumPrivateCompany
  | -- | Represents the JSON value @"private_corporation"@
    PostAccountsAccountRequestBodyCompany'Structure'EnumPrivateCorporation
  | -- | Represents the JSON value @"private_partnership"@
    PostAccountsAccountRequestBodyCompany'Structure'EnumPrivatePartnership
  | -- | Represents the JSON value @"public_company"@
    PostAccountsAccountRequestBodyCompany'Structure'EnumPublicCompany
  | -- | Represents the JSON value @"public_corporation"@
    PostAccountsAccountRequestBodyCompany'Structure'EnumPublicCorporation
  | -- | Represents the JSON value @"public_partnership"@
    PostAccountsAccountRequestBodyCompany'Structure'EnumPublicPartnership
  | -- | Represents the JSON value @"single_member_llc"@
    PostAccountsAccountRequestBodyCompany'Structure'EnumSingleMemberLlc
  | -- | Represents the JSON value @"sole_establishment"@
    PostAccountsAccountRequestBodyCompany'Structure'EnumSoleEstablishment
  | -- | Represents the JSON value @"sole_proprietorship"@
    PostAccountsAccountRequestBodyCompany'Structure'EnumSoleProprietorship
  | -- | Represents the JSON value @"tax_exempt_government_instrumentality"@
    PostAccountsAccountRequestBodyCompany'Structure'EnumTaxExemptGovernmentInstrumentality
  | -- | Represents the JSON value @"unincorporated_association"@
    PostAccountsAccountRequestBodyCompany'Structure'EnumUnincorporatedAssociation
  | -- | Represents the JSON value @"unincorporated_non_profit"@
    PostAccountsAccountRequestBodyCompany'Structure'EnumUnincorporatedNonProfit
  deriving (Int
-> PostAccountsAccountRequestBodyCompany'Structure'
-> String
-> String
[PostAccountsAccountRequestBodyCompany'Structure']
-> String -> String
PostAccountsAccountRequestBodyCompany'Structure' -> String
(Int
 -> PostAccountsAccountRequestBodyCompany'Structure'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyCompany'Structure' -> String)
-> ([PostAccountsAccountRequestBodyCompany'Structure']
    -> String -> String)
-> Show PostAccountsAccountRequestBodyCompany'Structure'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyCompany'Structure']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyCompany'Structure']
-> String -> String
show :: PostAccountsAccountRequestBodyCompany'Structure' -> String
$cshow :: PostAccountsAccountRequestBodyCompany'Structure' -> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyCompany'Structure'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyCompany'Structure'
-> String
-> String
GHC.Show.Show, PostAccountsAccountRequestBodyCompany'Structure'
-> PostAccountsAccountRequestBodyCompany'Structure' -> Bool
(PostAccountsAccountRequestBodyCompany'Structure'
 -> PostAccountsAccountRequestBodyCompany'Structure' -> Bool)
-> (PostAccountsAccountRequestBodyCompany'Structure'
    -> PostAccountsAccountRequestBodyCompany'Structure' -> Bool)
-> Eq PostAccountsAccountRequestBodyCompany'Structure'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyCompany'Structure'
-> PostAccountsAccountRequestBodyCompany'Structure' -> Bool
$c/= :: PostAccountsAccountRequestBodyCompany'Structure'
-> PostAccountsAccountRequestBodyCompany'Structure' -> Bool
== :: PostAccountsAccountRequestBodyCompany'Structure'
-> PostAccountsAccountRequestBodyCompany'Structure' -> Bool
$c== :: PostAccountsAccountRequestBodyCompany'Structure'
-> PostAccountsAccountRequestBodyCompany'Structure' -> Bool
GHC.Classes.Eq)

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyCompany'Structure' where
  toJSON :: PostAccountsAccountRequestBodyCompany'Structure' -> Value
toJSON (PostAccountsAccountRequestBodyCompany'Structure'Other Value
val) = Value
val
  toJSON (PostAccountsAccountRequestBodyCompany'Structure'Typed Text
val) = Text -> Value
forall a. ToJSON a => a -> Value
Data.Aeson.Types.ToJSON.toJSON Text
val
  toJSON (PostAccountsAccountRequestBodyCompany'Structure'
PostAccountsAccountRequestBodyCompany'Structure'EnumEmptyString) = Value
""
  toJSON (PostAccountsAccountRequestBodyCompany'Structure'
PostAccountsAccountRequestBodyCompany'Structure'EnumFreeZoneEstablishment) = Value
"free_zone_establishment"
  toJSON (PostAccountsAccountRequestBodyCompany'Structure'
PostAccountsAccountRequestBodyCompany'Structure'EnumFreeZoneLlc) = Value
"free_zone_llc"
  toJSON (PostAccountsAccountRequestBodyCompany'Structure'
PostAccountsAccountRequestBodyCompany'Structure'EnumGovernmentInstrumentality) = Value
"government_instrumentality"
  toJSON (PostAccountsAccountRequestBodyCompany'Structure'
PostAccountsAccountRequestBodyCompany'Structure'EnumGovernmentalUnit) = Value
"governmental_unit"
  toJSON (PostAccountsAccountRequestBodyCompany'Structure'
PostAccountsAccountRequestBodyCompany'Structure'EnumIncorporatedNonProfit) = Value
"incorporated_non_profit"
  toJSON (PostAccountsAccountRequestBodyCompany'Structure'
PostAccountsAccountRequestBodyCompany'Structure'EnumLimitedLiabilityPartnership) = Value
"limited_liability_partnership"
  toJSON (PostAccountsAccountRequestBodyCompany'Structure'
PostAccountsAccountRequestBodyCompany'Structure'EnumLlc) = Value
"llc"
  toJSON (PostAccountsAccountRequestBodyCompany'Structure'
PostAccountsAccountRequestBodyCompany'Structure'EnumMultiMemberLlc) = Value
"multi_member_llc"
  toJSON (PostAccountsAccountRequestBodyCompany'Structure'
PostAccountsAccountRequestBodyCompany'Structure'EnumPrivateCompany) = Value
"private_company"
  toJSON (PostAccountsAccountRequestBodyCompany'Structure'
PostAccountsAccountRequestBodyCompany'Structure'EnumPrivateCorporation) = Value
"private_corporation"
  toJSON (PostAccountsAccountRequestBodyCompany'Structure'
PostAccountsAccountRequestBodyCompany'Structure'EnumPrivatePartnership) = Value
"private_partnership"
  toJSON (PostAccountsAccountRequestBodyCompany'Structure'
PostAccountsAccountRequestBodyCompany'Structure'EnumPublicCompany) = Value
"public_company"
  toJSON (PostAccountsAccountRequestBodyCompany'Structure'
PostAccountsAccountRequestBodyCompany'Structure'EnumPublicCorporation) = Value
"public_corporation"
  toJSON (PostAccountsAccountRequestBodyCompany'Structure'
PostAccountsAccountRequestBodyCompany'Structure'EnumPublicPartnership) = Value
"public_partnership"
  toJSON (PostAccountsAccountRequestBodyCompany'Structure'
PostAccountsAccountRequestBodyCompany'Structure'EnumSingleMemberLlc) = Value
"single_member_llc"
  toJSON (PostAccountsAccountRequestBodyCompany'Structure'
PostAccountsAccountRequestBodyCompany'Structure'EnumSoleEstablishment) = Value
"sole_establishment"
  toJSON (PostAccountsAccountRequestBodyCompany'Structure'
PostAccountsAccountRequestBodyCompany'Structure'EnumSoleProprietorship) = Value
"sole_proprietorship"
  toJSON (PostAccountsAccountRequestBodyCompany'Structure'
PostAccountsAccountRequestBodyCompany'Structure'EnumTaxExemptGovernmentInstrumentality) = Value
"tax_exempt_government_instrumentality"
  toJSON (PostAccountsAccountRequestBodyCompany'Structure'
PostAccountsAccountRequestBodyCompany'Structure'EnumUnincorporatedAssociation) = Value
"unincorporated_association"
  toJSON (PostAccountsAccountRequestBodyCompany'Structure'
PostAccountsAccountRequestBodyCompany'Structure'EnumUnincorporatedNonProfit) = Value
"unincorporated_non_profit"

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyCompany'Structure' where
  parseJSON :: Value -> Parser PostAccountsAccountRequestBodyCompany'Structure'
parseJSON Value
val =
    PostAccountsAccountRequestBodyCompany'Structure'
-> Parser PostAccountsAccountRequestBodyCompany'Structure'
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure
      ( if
            | Value
val Value -> Value -> Bool
forall a. Eq a => a -> a -> Bool
GHC.Classes.== Value
"" -> PostAccountsAccountRequestBodyCompany'Structure'
PostAccountsAccountRequestBodyCompany'Structure'EnumEmptyString
            | Value
val Value -> Value -> Bool
forall a. Eq a => a -> a -> Bool
GHC.Classes.== Value
"free_zone_establishment" -> PostAccountsAccountRequestBodyCompany'Structure'
PostAccountsAccountRequestBodyCompany'Structure'EnumFreeZoneEstablishment
            | Value
val Value -> Value -> Bool
forall a. Eq a => a -> a -> Bool
GHC.Classes.== Value
"free_zone_llc" -> PostAccountsAccountRequestBodyCompany'Structure'
PostAccountsAccountRequestBodyCompany'Structure'EnumFreeZoneLlc
            | Value
val Value -> Value -> Bool
forall a. Eq a => a -> a -> Bool
GHC.Classes.== Value
"government_instrumentality" -> PostAccountsAccountRequestBodyCompany'Structure'
PostAccountsAccountRequestBodyCompany'Structure'EnumGovernmentInstrumentality
            | Value
val Value -> Value -> Bool
forall a. Eq a => a -> a -> Bool
GHC.Classes.== Value
"governmental_unit" -> PostAccountsAccountRequestBodyCompany'Structure'
PostAccountsAccountRequestBodyCompany'Structure'EnumGovernmentalUnit
            | Value
val Value -> Value -> Bool
forall a. Eq a => a -> a -> Bool
GHC.Classes.== Value
"incorporated_non_profit" -> PostAccountsAccountRequestBodyCompany'Structure'
PostAccountsAccountRequestBodyCompany'Structure'EnumIncorporatedNonProfit
            | Value
val Value -> Value -> Bool
forall a. Eq a => a -> a -> Bool
GHC.Classes.== Value
"limited_liability_partnership" -> PostAccountsAccountRequestBodyCompany'Structure'
PostAccountsAccountRequestBodyCompany'Structure'EnumLimitedLiabilityPartnership
            | Value
val Value -> Value -> Bool
forall a. Eq a => a -> a -> Bool
GHC.Classes.== Value
"llc" -> PostAccountsAccountRequestBodyCompany'Structure'
PostAccountsAccountRequestBodyCompany'Structure'EnumLlc
            | Value
val Value -> Value -> Bool
forall a. Eq a => a -> a -> Bool
GHC.Classes.== Value
"multi_member_llc" -> PostAccountsAccountRequestBodyCompany'Structure'
PostAccountsAccountRequestBodyCompany'Structure'EnumMultiMemberLlc
            | Value
val Value -> Value -> Bool
forall a. Eq a => a -> a -> Bool
GHC.Classes.== Value
"private_company" -> PostAccountsAccountRequestBodyCompany'Structure'
PostAccountsAccountRequestBodyCompany'Structure'EnumPrivateCompany
            | Value
val Value -> Value -> Bool
forall a. Eq a => a -> a -> Bool
GHC.Classes.== Value
"private_corporation" -> PostAccountsAccountRequestBodyCompany'Structure'
PostAccountsAccountRequestBodyCompany'Structure'EnumPrivateCorporation
            | Value
val Value -> Value -> Bool
forall a. Eq a => a -> a -> Bool
GHC.Classes.== Value
"private_partnership" -> PostAccountsAccountRequestBodyCompany'Structure'
PostAccountsAccountRequestBodyCompany'Structure'EnumPrivatePartnership
            | Value
val Value -> Value -> Bool
forall a. Eq a => a -> a -> Bool
GHC.Classes.== Value
"public_company" -> PostAccountsAccountRequestBodyCompany'Structure'
PostAccountsAccountRequestBodyCompany'Structure'EnumPublicCompany
            | Value
val Value -> Value -> Bool
forall a. Eq a => a -> a -> Bool
GHC.Classes.== Value
"public_corporation" -> PostAccountsAccountRequestBodyCompany'Structure'
PostAccountsAccountRequestBodyCompany'Structure'EnumPublicCorporation
            | Value
val Value -> Value -> Bool
forall a. Eq a => a -> a -> Bool
GHC.Classes.== Value
"public_partnership" -> PostAccountsAccountRequestBodyCompany'Structure'
PostAccountsAccountRequestBodyCompany'Structure'EnumPublicPartnership
            | Value
val Value -> Value -> Bool
forall a. Eq a => a -> a -> Bool
GHC.Classes.== Value
"single_member_llc" -> PostAccountsAccountRequestBodyCompany'Structure'
PostAccountsAccountRequestBodyCompany'Structure'EnumSingleMemberLlc
            | Value
val Value -> Value -> Bool
forall a. Eq a => a -> a -> Bool
GHC.Classes.== Value
"sole_establishment" -> PostAccountsAccountRequestBodyCompany'Structure'
PostAccountsAccountRequestBodyCompany'Structure'EnumSoleEstablishment
            | Value
val Value -> Value -> Bool
forall a. Eq a => a -> a -> Bool
GHC.Classes.== Value
"sole_proprietorship" -> PostAccountsAccountRequestBodyCompany'Structure'
PostAccountsAccountRequestBodyCompany'Structure'EnumSoleProprietorship
            | Value
val Value -> Value -> Bool
forall a. Eq a => a -> a -> Bool
GHC.Classes.== Value
"tax_exempt_government_instrumentality" -> PostAccountsAccountRequestBodyCompany'Structure'
PostAccountsAccountRequestBodyCompany'Structure'EnumTaxExemptGovernmentInstrumentality
            | Value
val Value -> Value -> Bool
forall a. Eq a => a -> a -> Bool
GHC.Classes.== Value
"unincorporated_association" -> PostAccountsAccountRequestBodyCompany'Structure'
PostAccountsAccountRequestBodyCompany'Structure'EnumUnincorporatedAssociation
            | Value
val Value -> Value -> Bool
forall a. Eq a => a -> a -> Bool
GHC.Classes.== Value
"unincorporated_non_profit" -> PostAccountsAccountRequestBodyCompany'Structure'
PostAccountsAccountRequestBodyCompany'Structure'EnumUnincorporatedNonProfit
            | Bool
GHC.Base.otherwise -> Value -> PostAccountsAccountRequestBodyCompany'Structure'
PostAccountsAccountRequestBodyCompany'Structure'Other Value
val
      )

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.company.properties.verification@ in the specification.
data PostAccountsAccountRequestBodyCompany'Verification' = PostAccountsAccountRequestBodyCompany'Verification'
  { -- | document
    PostAccountsAccountRequestBodyCompany'Verification'
-> Maybe
     PostAccountsAccountRequestBodyCompany'Verification'Document'
postAccountsAccountRequestBodyCompany'Verification'Document :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyCompany'Verification'Document')
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodyCompany'Verification'
-> String
-> String
[PostAccountsAccountRequestBodyCompany'Verification']
-> String -> String
PostAccountsAccountRequestBodyCompany'Verification' -> String
(Int
 -> PostAccountsAccountRequestBodyCompany'Verification'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyCompany'Verification' -> String)
-> ([PostAccountsAccountRequestBodyCompany'Verification']
    -> String -> String)
-> Show PostAccountsAccountRequestBodyCompany'Verification'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyCompany'Verification']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyCompany'Verification']
-> String -> String
show :: PostAccountsAccountRequestBodyCompany'Verification' -> String
$cshow :: PostAccountsAccountRequestBodyCompany'Verification' -> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyCompany'Verification'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyCompany'Verification'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyCompany'Verification'
-> PostAccountsAccountRequestBodyCompany'Verification' -> Bool
(PostAccountsAccountRequestBodyCompany'Verification'
 -> PostAccountsAccountRequestBodyCompany'Verification' -> Bool)
-> (PostAccountsAccountRequestBodyCompany'Verification'
    -> PostAccountsAccountRequestBodyCompany'Verification' -> Bool)
-> Eq PostAccountsAccountRequestBodyCompany'Verification'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyCompany'Verification'
-> PostAccountsAccountRequestBodyCompany'Verification' -> Bool
$c/= :: PostAccountsAccountRequestBodyCompany'Verification'
-> PostAccountsAccountRequestBodyCompany'Verification' -> Bool
== :: PostAccountsAccountRequestBodyCompany'Verification'
-> PostAccountsAccountRequestBodyCompany'Verification' -> Bool
$c== :: PostAccountsAccountRequestBodyCompany'Verification'
-> PostAccountsAccountRequestBodyCompany'Verification' -> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyCompany'Verification' where
  toJSON :: PostAccountsAccountRequestBodyCompany'Verification' -> Value
toJSON PostAccountsAccountRequestBodyCompany'Verification'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"document" Text
-> Maybe
     PostAccountsAccountRequestBodyCompany'Verification'Document'
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'Verification'
-> Maybe
     PostAccountsAccountRequestBodyCompany'Verification'Document'
postAccountsAccountRequestBodyCompany'Verification'Document PostAccountsAccountRequestBodyCompany'Verification'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyCompany'Verification' -> Encoding
toEncoding PostAccountsAccountRequestBodyCompany'Verification'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs (Text
"document" Text
-> Maybe
     PostAccountsAccountRequestBodyCompany'Verification'Document'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'Verification'
-> Maybe
     PostAccountsAccountRequestBodyCompany'Verification'Document'
postAccountsAccountRequestBodyCompany'Verification'Document PostAccountsAccountRequestBodyCompany'Verification'
obj)

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyCompany'Verification' where
  parseJSON :: Value -> Parser PostAccountsAccountRequestBodyCompany'Verification'
parseJSON = String
-> (Object
    -> Parser PostAccountsAccountRequestBodyCompany'Verification')
-> Value
-> Parser PostAccountsAccountRequestBodyCompany'Verification'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyCompany'Verification'" (\Object
obj -> (Maybe PostAccountsAccountRequestBodyCompany'Verification'Document'
 -> PostAccountsAccountRequestBodyCompany'Verification')
-> Parser
     (Maybe PostAccountsAccountRequestBodyCompany'Verification'Document'
      -> PostAccountsAccountRequestBodyCompany'Verification')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe PostAccountsAccountRequestBodyCompany'Verification'Document'
-> PostAccountsAccountRequestBodyCompany'Verification'
PostAccountsAccountRequestBodyCompany'Verification' Parser
  (Maybe PostAccountsAccountRequestBodyCompany'Verification'Document'
   -> PostAccountsAccountRequestBodyCompany'Verification')
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyCompany'Verification'Document')
-> Parser PostAccountsAccountRequestBodyCompany'Verification'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyCompany'Verification'Document')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"document"))

-- | Create a new 'PostAccountsAccountRequestBodyCompany'Verification'' with all required fields.
mkPostAccountsAccountRequestBodyCompany'Verification' :: PostAccountsAccountRequestBodyCompany'Verification'
mkPostAccountsAccountRequestBodyCompany'Verification' :: PostAccountsAccountRequestBodyCompany'Verification'
mkPostAccountsAccountRequestBodyCompany'Verification' = PostAccountsAccountRequestBodyCompany'Verification' :: Maybe PostAccountsAccountRequestBodyCompany'Verification'Document'
-> PostAccountsAccountRequestBodyCompany'Verification'
PostAccountsAccountRequestBodyCompany'Verification' {postAccountsAccountRequestBodyCompany'Verification'Document :: Maybe PostAccountsAccountRequestBodyCompany'Verification'Document'
postAccountsAccountRequestBodyCompany'Verification'Document = Maybe PostAccountsAccountRequestBodyCompany'Verification'Document'
forall a. Maybe a
GHC.Maybe.Nothing}

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.company.properties.verification.properties.document@ in the specification.
data PostAccountsAccountRequestBodyCompany'Verification'Document' = PostAccountsAccountRequestBodyCompany'Verification'Document'
  { -- | back
    --
    -- Constraints:
    --
    -- * Maximum length of 500
    PostAccountsAccountRequestBodyCompany'Verification'Document'
-> Maybe Text
postAccountsAccountRequestBodyCompany'Verification'Document'Back :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | front
    --
    -- Constraints:
    --
    -- * Maximum length of 500
    PostAccountsAccountRequestBodyCompany'Verification'Document'
-> Maybe Text
postAccountsAccountRequestBodyCompany'Verification'Document'Front :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodyCompany'Verification'Document'
-> String
-> String
[PostAccountsAccountRequestBodyCompany'Verification'Document']
-> String -> String
PostAccountsAccountRequestBodyCompany'Verification'Document'
-> String
(Int
 -> PostAccountsAccountRequestBodyCompany'Verification'Document'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyCompany'Verification'Document'
    -> String)
-> ([PostAccountsAccountRequestBodyCompany'Verification'Document']
    -> String -> String)
-> Show
     PostAccountsAccountRequestBodyCompany'Verification'Document'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyCompany'Verification'Document']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyCompany'Verification'Document']
-> String -> String
show :: PostAccountsAccountRequestBodyCompany'Verification'Document'
-> String
$cshow :: PostAccountsAccountRequestBodyCompany'Verification'Document'
-> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyCompany'Verification'Document'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyCompany'Verification'Document'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyCompany'Verification'Document'
-> PostAccountsAccountRequestBodyCompany'Verification'Document'
-> Bool
(PostAccountsAccountRequestBodyCompany'Verification'Document'
 -> PostAccountsAccountRequestBodyCompany'Verification'Document'
 -> Bool)
-> (PostAccountsAccountRequestBodyCompany'Verification'Document'
    -> PostAccountsAccountRequestBodyCompany'Verification'Document'
    -> Bool)
-> Eq PostAccountsAccountRequestBodyCompany'Verification'Document'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyCompany'Verification'Document'
-> PostAccountsAccountRequestBodyCompany'Verification'Document'
-> Bool
$c/= :: PostAccountsAccountRequestBodyCompany'Verification'Document'
-> PostAccountsAccountRequestBodyCompany'Verification'Document'
-> Bool
== :: PostAccountsAccountRequestBodyCompany'Verification'Document'
-> PostAccountsAccountRequestBodyCompany'Verification'Document'
-> Bool
$c== :: PostAccountsAccountRequestBodyCompany'Verification'Document'
-> PostAccountsAccountRequestBodyCompany'Verification'Document'
-> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyCompany'Verification'Document' where
  toJSON :: PostAccountsAccountRequestBodyCompany'Verification'Document'
-> Value
toJSON PostAccountsAccountRequestBodyCompany'Verification'Document'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"back" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'Verification'Document'
-> Maybe Text
postAccountsAccountRequestBodyCompany'Verification'Document'Back PostAccountsAccountRequestBodyCompany'Verification'Document'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"front" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'Verification'Document'
-> Maybe Text
postAccountsAccountRequestBodyCompany'Verification'Document'Front PostAccountsAccountRequestBodyCompany'Verification'Document'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyCompany'Verification'Document'
-> Encoding
toEncoding PostAccountsAccountRequestBodyCompany'Verification'Document'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs ((Text
"back" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'Verification'Document'
-> Maybe Text
postAccountsAccountRequestBodyCompany'Verification'Document'Back PostAccountsAccountRequestBodyCompany'Verification'Document'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> (Text
"front" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyCompany'Verification'Document'
-> Maybe Text
postAccountsAccountRequestBodyCompany'Verification'Document'Front PostAccountsAccountRequestBodyCompany'Verification'Document'
obj))

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyCompany'Verification'Document' where
  parseJSON :: Value
-> Parser
     PostAccountsAccountRequestBodyCompany'Verification'Document'
parseJSON = String
-> (Object
    -> Parser
         PostAccountsAccountRequestBodyCompany'Verification'Document')
-> Value
-> Parser
     PostAccountsAccountRequestBodyCompany'Verification'Document'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyCompany'Verification'Document'" (\Object
obj -> ((Maybe Text
 -> Maybe Text
 -> PostAccountsAccountRequestBodyCompany'Verification'Document')
-> Parser
     (Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodyCompany'Verification'Document')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe Text
-> Maybe Text
-> PostAccountsAccountRequestBodyCompany'Verification'Document'
PostAccountsAccountRequestBodyCompany'Verification'Document' Parser
  (Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodyCompany'Verification'Document')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> PostAccountsAccountRequestBodyCompany'Verification'Document')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"back")) Parser
  (Maybe Text
   -> PostAccountsAccountRequestBodyCompany'Verification'Document')
-> Parser (Maybe Text)
-> Parser
     PostAccountsAccountRequestBodyCompany'Verification'Document'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"front"))

-- | Create a new 'PostAccountsAccountRequestBodyCompany'Verification'Document'' with all required fields.
mkPostAccountsAccountRequestBodyCompany'Verification'Document' :: PostAccountsAccountRequestBodyCompany'Verification'Document'
mkPostAccountsAccountRequestBodyCompany'Verification'Document' :: PostAccountsAccountRequestBodyCompany'Verification'Document'
mkPostAccountsAccountRequestBodyCompany'Verification'Document' =
  PostAccountsAccountRequestBodyCompany'Verification'Document' :: Maybe Text
-> Maybe Text
-> PostAccountsAccountRequestBodyCompany'Verification'Document'
PostAccountsAccountRequestBodyCompany'Verification'Document'
    { postAccountsAccountRequestBodyCompany'Verification'Document'Back :: Maybe Text
postAccountsAccountRequestBodyCompany'Verification'Document'Back = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyCompany'Verification'Document'Front :: Maybe Text
postAccountsAccountRequestBodyCompany'Verification'Document'Front = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing
    }

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.documents@ in the specification.
--
-- Documents that may be submitted to satisfy various informational requests.
data PostAccountsAccountRequestBodyDocuments' = PostAccountsAccountRequestBodyDocuments'
  { -- | bank_account_ownership_verification
    PostAccountsAccountRequestBodyDocuments'
-> Maybe
     PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
postAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'),
    -- | company_license
    PostAccountsAccountRequestBodyDocuments'
-> Maybe PostAccountsAccountRequestBodyDocuments'CompanyLicense'
postAccountsAccountRequestBodyDocuments'CompanyLicense :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyDocuments'CompanyLicense'),
    -- | company_memorandum_of_association
    PostAccountsAccountRequestBodyDocuments'
-> Maybe
     PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
postAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'),
    -- | company_ministerial_decree
    PostAccountsAccountRequestBodyDocuments'
-> Maybe
     PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
postAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'),
    -- | company_registration_verification
    PostAccountsAccountRequestBodyDocuments'
-> Maybe
     PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
postAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'),
    -- | company_tax_id_verification
    PostAccountsAccountRequestBodyDocuments'
-> Maybe
     PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
postAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification')
  }
  deriving
    ( Int -> PostAccountsAccountRequestBodyDocuments' -> String -> String
[PostAccountsAccountRequestBodyDocuments'] -> String -> String
PostAccountsAccountRequestBodyDocuments' -> String
(Int
 -> PostAccountsAccountRequestBodyDocuments' -> String -> String)
-> (PostAccountsAccountRequestBodyDocuments' -> String)
-> ([PostAccountsAccountRequestBodyDocuments'] -> String -> String)
-> Show PostAccountsAccountRequestBodyDocuments'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyDocuments'] -> String -> String
$cshowList :: [PostAccountsAccountRequestBodyDocuments'] -> String -> String
show :: PostAccountsAccountRequestBodyDocuments' -> String
$cshow :: PostAccountsAccountRequestBodyDocuments' -> String
showsPrec :: Int -> PostAccountsAccountRequestBodyDocuments' -> String -> String
$cshowsPrec :: Int -> PostAccountsAccountRequestBodyDocuments' -> String -> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyDocuments'
-> PostAccountsAccountRequestBodyDocuments' -> Bool
(PostAccountsAccountRequestBodyDocuments'
 -> PostAccountsAccountRequestBodyDocuments' -> Bool)
-> (PostAccountsAccountRequestBodyDocuments'
    -> PostAccountsAccountRequestBodyDocuments' -> Bool)
-> Eq PostAccountsAccountRequestBodyDocuments'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyDocuments'
-> PostAccountsAccountRequestBodyDocuments' -> Bool
$c/= :: PostAccountsAccountRequestBodyDocuments'
-> PostAccountsAccountRequestBodyDocuments' -> Bool
== :: PostAccountsAccountRequestBodyDocuments'
-> PostAccountsAccountRequestBodyDocuments' -> Bool
$c== :: PostAccountsAccountRequestBodyDocuments'
-> PostAccountsAccountRequestBodyDocuments' -> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyDocuments' where
  toJSON :: PostAccountsAccountRequestBodyDocuments' -> Value
toJSON PostAccountsAccountRequestBodyDocuments'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"bank_account_ownership_verification" Text
-> Maybe
     PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyDocuments'
-> Maybe
     PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
postAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification PostAccountsAccountRequestBodyDocuments'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"company_license" Text
-> Maybe PostAccountsAccountRequestBodyDocuments'CompanyLicense'
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyDocuments'
-> Maybe PostAccountsAccountRequestBodyDocuments'CompanyLicense'
postAccountsAccountRequestBodyDocuments'CompanyLicense PostAccountsAccountRequestBodyDocuments'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"company_memorandum_of_association" Text
-> Maybe
     PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyDocuments'
-> Maybe
     PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
postAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation PostAccountsAccountRequestBodyDocuments'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"company_ministerial_decree" Text
-> Maybe
     PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyDocuments'
-> Maybe
     PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
postAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree PostAccountsAccountRequestBodyDocuments'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"company_registration_verification" Text
-> Maybe
     PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyDocuments'
-> Maybe
     PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
postAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification PostAccountsAccountRequestBodyDocuments'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"company_tax_id_verification" Text
-> Maybe
     PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyDocuments'
-> Maybe
     PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
postAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification PostAccountsAccountRequestBodyDocuments'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyDocuments' -> Encoding
toEncoding PostAccountsAccountRequestBodyDocuments'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs ((Text
"bank_account_ownership_verification" Text
-> Maybe
     PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyDocuments'
-> Maybe
     PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
postAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification PostAccountsAccountRequestBodyDocuments'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"company_license" Text
-> Maybe PostAccountsAccountRequestBodyDocuments'CompanyLicense'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyDocuments'
-> Maybe PostAccountsAccountRequestBodyDocuments'CompanyLicense'
postAccountsAccountRequestBodyDocuments'CompanyLicense PostAccountsAccountRequestBodyDocuments'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"company_memorandum_of_association" Text
-> Maybe
     PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyDocuments'
-> Maybe
     PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
postAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation PostAccountsAccountRequestBodyDocuments'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"company_ministerial_decree" Text
-> Maybe
     PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyDocuments'
-> Maybe
     PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
postAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree PostAccountsAccountRequestBodyDocuments'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"company_registration_verification" Text
-> Maybe
     PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyDocuments'
-> Maybe
     PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
postAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification PostAccountsAccountRequestBodyDocuments'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> (Text
"company_tax_id_verification" Text
-> Maybe
     PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyDocuments'
-> Maybe
     PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
postAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification PostAccountsAccountRequestBodyDocuments'
obj))))))

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyDocuments' where
  parseJSON :: Value -> Parser PostAccountsAccountRequestBodyDocuments'
parseJSON = String
-> (Object -> Parser PostAccountsAccountRequestBodyDocuments')
-> Value
-> Parser PostAccountsAccountRequestBodyDocuments'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyDocuments'" (\Object
obj -> ((((((Maybe
   PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
 -> Maybe PostAccountsAccountRequestBodyDocuments'CompanyLicense'
 -> Maybe
      PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
 -> Maybe
      PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
 -> Maybe
      PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
 -> Maybe
      PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
 -> PostAccountsAccountRequestBodyDocuments')
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
      -> Maybe PostAccountsAccountRequestBodyDocuments'CompanyLicense'
      -> Maybe
           PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
      -> Maybe
           PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
      -> Maybe
           PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
      -> Maybe
           PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
      -> PostAccountsAccountRequestBodyDocuments')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe
  PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
-> Maybe PostAccountsAccountRequestBodyDocuments'CompanyLicense'
-> Maybe
     PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
-> Maybe
     PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
-> Maybe
     PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
-> Maybe
     PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
-> PostAccountsAccountRequestBodyDocuments'
PostAccountsAccountRequestBodyDocuments' Parser
  (Maybe
     PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
   -> Maybe PostAccountsAccountRequestBodyDocuments'CompanyLicense'
   -> Maybe
        PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
   -> Maybe
        PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
   -> Maybe
        PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
   -> Maybe
        PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
   -> PostAccountsAccountRequestBodyDocuments')
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification')
-> Parser
     (Maybe PostAccountsAccountRequestBodyDocuments'CompanyLicense'
      -> Maybe
           PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
      -> Maybe
           PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
      -> Maybe
           PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
      -> Maybe
           PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
      -> PostAccountsAccountRequestBodyDocuments')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"bank_account_ownership_verification")) Parser
  (Maybe PostAccountsAccountRequestBodyDocuments'CompanyLicense'
   -> Maybe
        PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
   -> Maybe
        PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
   -> Maybe
        PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
   -> Maybe
        PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
   -> PostAccountsAccountRequestBodyDocuments')
-> Parser
     (Maybe PostAccountsAccountRequestBodyDocuments'CompanyLicense')
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
      -> Maybe
           PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
      -> Maybe
           PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
      -> Maybe
           PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
      -> PostAccountsAccountRequestBodyDocuments')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe PostAccountsAccountRequestBodyDocuments'CompanyLicense')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"company_license")) Parser
  (Maybe
     PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
   -> Maybe
        PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
   -> Maybe
        PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
   -> Maybe
        PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
   -> PostAccountsAccountRequestBodyDocuments')
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation')
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
      -> Maybe
           PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
      -> Maybe
           PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
      -> PostAccountsAccountRequestBodyDocuments')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"company_memorandum_of_association")) Parser
  (Maybe
     PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
   -> Maybe
        PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
   -> Maybe
        PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
   -> PostAccountsAccountRequestBodyDocuments')
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree')
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
      -> Maybe
           PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
      -> PostAccountsAccountRequestBodyDocuments')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"company_ministerial_decree")) Parser
  (Maybe
     PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
   -> Maybe
        PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
   -> PostAccountsAccountRequestBodyDocuments')
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification')
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
      -> PostAccountsAccountRequestBodyDocuments')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"company_registration_verification")) Parser
  (Maybe
     PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
   -> PostAccountsAccountRequestBodyDocuments')
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification')
-> Parser PostAccountsAccountRequestBodyDocuments'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"company_tax_id_verification"))

-- | Create a new 'PostAccountsAccountRequestBodyDocuments'' with all required fields.
mkPostAccountsAccountRequestBodyDocuments' :: PostAccountsAccountRequestBodyDocuments'
mkPostAccountsAccountRequestBodyDocuments' :: PostAccountsAccountRequestBodyDocuments'
mkPostAccountsAccountRequestBodyDocuments' =
  PostAccountsAccountRequestBodyDocuments' :: Maybe
  PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
-> Maybe PostAccountsAccountRequestBodyDocuments'CompanyLicense'
-> Maybe
     PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
-> Maybe
     PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
-> Maybe
     PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
-> Maybe
     PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
-> PostAccountsAccountRequestBodyDocuments'
PostAccountsAccountRequestBodyDocuments'
    { postAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification :: Maybe
  PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
postAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification = Maybe
  PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyDocuments'CompanyLicense :: Maybe PostAccountsAccountRequestBodyDocuments'CompanyLicense'
postAccountsAccountRequestBodyDocuments'CompanyLicense = Maybe PostAccountsAccountRequestBodyDocuments'CompanyLicense'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation :: Maybe
  PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
postAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation = Maybe
  PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree :: Maybe
  PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
postAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree = Maybe
  PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification :: Maybe
  PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
postAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification = Maybe
  PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification :: Maybe
  PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
postAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification = Maybe
  PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
forall a. Maybe a
GHC.Maybe.Nothing
    }

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.documents.properties.bank_account_ownership_verification@ in the specification.
data PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification' = PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
  { -- | files
    PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
-> Maybe [Text]
postAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'Files :: (GHC.Maybe.Maybe ([Data.Text.Internal.Text]))
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
-> String
-> String
[PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification']
-> String -> String
PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
-> String
(Int
 -> PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
    -> String)
-> ([PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification']
    -> String -> String)
-> Show
     PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification']
-> String -> String
show :: PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
-> String
$cshow :: PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
-> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
-> PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
-> Bool
(PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
 -> PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
 -> Bool)
-> (PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
    -> PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
    -> Bool)
-> Eq
     PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
-> PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
-> Bool
$c/= :: PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
-> PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
-> Bool
== :: PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
-> PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
-> Bool
$c== :: PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
-> PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
-> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification' where
  toJSON :: PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
-> Value
toJSON PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"files" Text -> Maybe [Text] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
-> Maybe [Text]
postAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'Files PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
-> Encoding
toEncoding PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs (Text
"files" Text -> Maybe [Text] -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
-> Maybe [Text]
postAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'Files PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
obj)

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification' where
  parseJSON :: Value
-> Parser
     PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
parseJSON = String
-> (Object
    -> Parser
         PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification')
-> Value
-> Parser
     PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'" (\Object
obj -> (Maybe [Text]
 -> PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification')
-> Parser
     (Maybe [Text]
      -> PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe [Text]
-> PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification' Parser
  (Maybe [Text]
   -> PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification')
-> Parser (Maybe [Text])
-> Parser
     PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe [Text])
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"files"))

-- | Create a new 'PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'' with all required fields.
mkPostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification' :: PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
mkPostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification' :: PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
mkPostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification' = PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification' :: Maybe [Text]
-> PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'
PostAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification' {postAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'Files :: Maybe [Text]
postAccountsAccountRequestBodyDocuments'BankAccountOwnershipVerification'Files = Maybe [Text]
forall a. Maybe a
GHC.Maybe.Nothing}

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.documents.properties.company_license@ in the specification.
data PostAccountsAccountRequestBodyDocuments'CompanyLicense' = PostAccountsAccountRequestBodyDocuments'CompanyLicense'
  { -- | files
    PostAccountsAccountRequestBodyDocuments'CompanyLicense'
-> Maybe [Text]
postAccountsAccountRequestBodyDocuments'CompanyLicense'Files :: (GHC.Maybe.Maybe ([Data.Text.Internal.Text]))
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodyDocuments'CompanyLicense'
-> String
-> String
[PostAccountsAccountRequestBodyDocuments'CompanyLicense']
-> String -> String
PostAccountsAccountRequestBodyDocuments'CompanyLicense' -> String
(Int
 -> PostAccountsAccountRequestBodyDocuments'CompanyLicense'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyDocuments'CompanyLicense'
    -> String)
-> ([PostAccountsAccountRequestBodyDocuments'CompanyLicense']
    -> String -> String)
-> Show PostAccountsAccountRequestBodyDocuments'CompanyLicense'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyDocuments'CompanyLicense']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyDocuments'CompanyLicense']
-> String -> String
show :: PostAccountsAccountRequestBodyDocuments'CompanyLicense' -> String
$cshow :: PostAccountsAccountRequestBodyDocuments'CompanyLicense' -> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyDocuments'CompanyLicense'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyDocuments'CompanyLicense'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyDocuments'CompanyLicense'
-> PostAccountsAccountRequestBodyDocuments'CompanyLicense' -> Bool
(PostAccountsAccountRequestBodyDocuments'CompanyLicense'
 -> PostAccountsAccountRequestBodyDocuments'CompanyLicense' -> Bool)
-> (PostAccountsAccountRequestBodyDocuments'CompanyLicense'
    -> PostAccountsAccountRequestBodyDocuments'CompanyLicense' -> Bool)
-> Eq PostAccountsAccountRequestBodyDocuments'CompanyLicense'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyDocuments'CompanyLicense'
-> PostAccountsAccountRequestBodyDocuments'CompanyLicense' -> Bool
$c/= :: PostAccountsAccountRequestBodyDocuments'CompanyLicense'
-> PostAccountsAccountRequestBodyDocuments'CompanyLicense' -> Bool
== :: PostAccountsAccountRequestBodyDocuments'CompanyLicense'
-> PostAccountsAccountRequestBodyDocuments'CompanyLicense' -> Bool
$c== :: PostAccountsAccountRequestBodyDocuments'CompanyLicense'
-> PostAccountsAccountRequestBodyDocuments'CompanyLicense' -> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyDocuments'CompanyLicense' where
  toJSON :: PostAccountsAccountRequestBodyDocuments'CompanyLicense' -> Value
toJSON PostAccountsAccountRequestBodyDocuments'CompanyLicense'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"files" Text -> Maybe [Text] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyDocuments'CompanyLicense'
-> Maybe [Text]
postAccountsAccountRequestBodyDocuments'CompanyLicense'Files PostAccountsAccountRequestBodyDocuments'CompanyLicense'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyDocuments'CompanyLicense' -> Encoding
toEncoding PostAccountsAccountRequestBodyDocuments'CompanyLicense'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs (Text
"files" Text -> Maybe [Text] -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyDocuments'CompanyLicense'
-> Maybe [Text]
postAccountsAccountRequestBodyDocuments'CompanyLicense'Files PostAccountsAccountRequestBodyDocuments'CompanyLicense'
obj)

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyDocuments'CompanyLicense' where
  parseJSON :: Value
-> Parser PostAccountsAccountRequestBodyDocuments'CompanyLicense'
parseJSON = String
-> (Object
    -> Parser PostAccountsAccountRequestBodyDocuments'CompanyLicense')
-> Value
-> Parser PostAccountsAccountRequestBodyDocuments'CompanyLicense'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyDocuments'CompanyLicense'" (\Object
obj -> (Maybe [Text]
 -> PostAccountsAccountRequestBodyDocuments'CompanyLicense')
-> Parser
     (Maybe [Text]
      -> PostAccountsAccountRequestBodyDocuments'CompanyLicense')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe [Text]
-> PostAccountsAccountRequestBodyDocuments'CompanyLicense'
PostAccountsAccountRequestBodyDocuments'CompanyLicense' Parser
  (Maybe [Text]
   -> PostAccountsAccountRequestBodyDocuments'CompanyLicense')
-> Parser (Maybe [Text])
-> Parser PostAccountsAccountRequestBodyDocuments'CompanyLicense'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe [Text])
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"files"))

-- | Create a new 'PostAccountsAccountRequestBodyDocuments'CompanyLicense'' with all required fields.
mkPostAccountsAccountRequestBodyDocuments'CompanyLicense' :: PostAccountsAccountRequestBodyDocuments'CompanyLicense'
mkPostAccountsAccountRequestBodyDocuments'CompanyLicense' :: PostAccountsAccountRequestBodyDocuments'CompanyLicense'
mkPostAccountsAccountRequestBodyDocuments'CompanyLicense' = PostAccountsAccountRequestBodyDocuments'CompanyLicense' :: Maybe [Text]
-> PostAccountsAccountRequestBodyDocuments'CompanyLicense'
PostAccountsAccountRequestBodyDocuments'CompanyLicense' {postAccountsAccountRequestBodyDocuments'CompanyLicense'Files :: Maybe [Text]
postAccountsAccountRequestBodyDocuments'CompanyLicense'Files = Maybe [Text]
forall a. Maybe a
GHC.Maybe.Nothing}

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.documents.properties.company_memorandum_of_association@ in the specification.
data PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation' = PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
  { -- | files
    PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
-> Maybe [Text]
postAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'Files :: (GHC.Maybe.Maybe ([Data.Text.Internal.Text]))
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
-> String
-> String
[PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation']
-> String -> String
PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
-> String
(Int
 -> PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
    -> String)
-> ([PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation']
    -> String -> String)
-> Show
     PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation']
-> String -> String
show :: PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
-> String
$cshow :: PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
-> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
-> PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
-> Bool
(PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
 -> PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
 -> Bool)
-> (PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
    -> PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
    -> Bool)
-> Eq
     PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
-> PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
-> Bool
$c/= :: PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
-> PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
-> Bool
== :: PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
-> PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
-> Bool
$c== :: PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
-> PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
-> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation' where
  toJSON :: PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
-> Value
toJSON PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"files" Text -> Maybe [Text] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
-> Maybe [Text]
postAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'Files PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
-> Encoding
toEncoding PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs (Text
"files" Text -> Maybe [Text] -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
-> Maybe [Text]
postAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'Files PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
obj)

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation' where
  parseJSON :: Value
-> Parser
     PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
parseJSON = String
-> (Object
    -> Parser
         PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation')
-> Value
-> Parser
     PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'" (\Object
obj -> (Maybe [Text]
 -> PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation')
-> Parser
     (Maybe [Text]
      -> PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe [Text]
-> PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation' Parser
  (Maybe [Text]
   -> PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation')
-> Parser (Maybe [Text])
-> Parser
     PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe [Text])
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"files"))

-- | Create a new 'PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'' with all required fields.
mkPostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation' :: PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
mkPostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation' :: PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
mkPostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation' = PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation' :: Maybe [Text]
-> PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'
PostAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation' {postAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'Files :: Maybe [Text]
postAccountsAccountRequestBodyDocuments'CompanyMemorandumOfAssociation'Files = Maybe [Text]
forall a. Maybe a
GHC.Maybe.Nothing}

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.documents.properties.company_ministerial_decree@ in the specification.
data PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree' = PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
  { -- | files
    PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
-> Maybe [Text]
postAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'Files :: (GHC.Maybe.Maybe ([Data.Text.Internal.Text]))
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
-> String
-> String
[PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree']
-> String -> String
PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
-> String
(Int
 -> PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
    -> String)
-> ([PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree']
    -> String -> String)
-> Show
     PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree']
-> String -> String
show :: PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
-> String
$cshow :: PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
-> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
-> PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
-> Bool
(PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
 -> PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
 -> Bool)
-> (PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
    -> PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
    -> Bool)
-> Eq
     PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
-> PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
-> Bool
$c/= :: PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
-> PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
-> Bool
== :: PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
-> PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
-> Bool
$c== :: PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
-> PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
-> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree' where
  toJSON :: PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
-> Value
toJSON PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"files" Text -> Maybe [Text] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
-> Maybe [Text]
postAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'Files PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
-> Encoding
toEncoding PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs (Text
"files" Text -> Maybe [Text] -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
-> Maybe [Text]
postAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'Files PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
obj)

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree' where
  parseJSON :: Value
-> Parser
     PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
parseJSON = String
-> (Object
    -> Parser
         PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree')
-> Value
-> Parser
     PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'" (\Object
obj -> (Maybe [Text]
 -> PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree')
-> Parser
     (Maybe [Text]
      -> PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe [Text]
-> PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree' Parser
  (Maybe [Text]
   -> PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree')
-> Parser (Maybe [Text])
-> Parser
     PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe [Text])
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"files"))

-- | Create a new 'PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'' with all required fields.
mkPostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree' :: PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
mkPostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree' :: PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
mkPostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree' = PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree' :: Maybe [Text]
-> PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'
PostAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree' {postAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'Files :: Maybe [Text]
postAccountsAccountRequestBodyDocuments'CompanyMinisterialDecree'Files = Maybe [Text]
forall a. Maybe a
GHC.Maybe.Nothing}

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.documents.properties.company_registration_verification@ in the specification.
data PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification' = PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
  { -- | files
    PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
-> Maybe [Text]
postAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'Files :: (GHC.Maybe.Maybe ([Data.Text.Internal.Text]))
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
-> String
-> String
[PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification']
-> String -> String
PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
-> String
(Int
 -> PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
    -> String)
-> ([PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification']
    -> String -> String)
-> Show
     PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification']
-> String -> String
show :: PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
-> String
$cshow :: PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
-> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
-> PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
-> Bool
(PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
 -> PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
 -> Bool)
-> (PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
    -> PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
    -> Bool)
-> Eq
     PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
-> PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
-> Bool
$c/= :: PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
-> PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
-> Bool
== :: PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
-> PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
-> Bool
$c== :: PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
-> PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
-> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification' where
  toJSON :: PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
-> Value
toJSON PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"files" Text -> Maybe [Text] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
-> Maybe [Text]
postAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'Files PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
-> Encoding
toEncoding PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs (Text
"files" Text -> Maybe [Text] -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
-> Maybe [Text]
postAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'Files PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
obj)

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification' where
  parseJSON :: Value
-> Parser
     PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
parseJSON = String
-> (Object
    -> Parser
         PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification')
-> Value
-> Parser
     PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'" (\Object
obj -> (Maybe [Text]
 -> PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification')
-> Parser
     (Maybe [Text]
      -> PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe [Text]
-> PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification' Parser
  (Maybe [Text]
   -> PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification')
-> Parser (Maybe [Text])
-> Parser
     PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe [Text])
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"files"))

-- | Create a new 'PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'' with all required fields.
mkPostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification' :: PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
mkPostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification' :: PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
mkPostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification' = PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification' :: Maybe [Text]
-> PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'
PostAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification' {postAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'Files :: Maybe [Text]
postAccountsAccountRequestBodyDocuments'CompanyRegistrationVerification'Files = Maybe [Text]
forall a. Maybe a
GHC.Maybe.Nothing}

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.documents.properties.company_tax_id_verification@ in the specification.
data PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification' = PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
  { -- | files
    PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
-> Maybe [Text]
postAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'Files :: (GHC.Maybe.Maybe ([Data.Text.Internal.Text]))
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
-> String
-> String
[PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification']
-> String -> String
PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
-> String
(Int
 -> PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
    -> String)
-> ([PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification']
    -> String -> String)
-> Show
     PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification']
-> String -> String
show :: PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
-> String
$cshow :: PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
-> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
-> PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
-> Bool
(PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
 -> PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
 -> Bool)
-> (PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
    -> PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
    -> Bool)
-> Eq
     PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
-> PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
-> Bool
$c/= :: PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
-> PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
-> Bool
== :: PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
-> PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
-> Bool
$c== :: PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
-> PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
-> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification' where
  toJSON :: PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
-> Value
toJSON PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"files" Text -> Maybe [Text] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
-> Maybe [Text]
postAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'Files PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
-> Encoding
toEncoding PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs (Text
"files" Text -> Maybe [Text] -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
-> Maybe [Text]
postAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'Files PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
obj)

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification' where
  parseJSON :: Value
-> Parser
     PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
parseJSON = String
-> (Object
    -> Parser
         PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification')
-> Value
-> Parser
     PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'" (\Object
obj -> (Maybe [Text]
 -> PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification')
-> Parser
     (Maybe [Text]
      -> PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe [Text]
-> PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification' Parser
  (Maybe [Text]
   -> PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification')
-> Parser (Maybe [Text])
-> Parser
     PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe [Text])
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"files"))

-- | Create a new 'PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'' with all required fields.
mkPostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification' :: PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
mkPostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification' :: PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
mkPostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification' = PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification' :: Maybe [Text]
-> PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'
PostAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification' {postAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'Files :: Maybe [Text]
postAccountsAccountRequestBodyDocuments'CompanyTaxIdVerification'Files = Maybe [Text]
forall a. Maybe a
GHC.Maybe.Nothing}

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.individual@ in the specification.
--
-- Information about the person represented by the account. This field is null unless \`business_type\` is set to \`individual\`.
data PostAccountsAccountRequestBodyIndividual' = PostAccountsAccountRequestBodyIndividual'
  { -- | address
    PostAccountsAccountRequestBodyIndividual'
-> Maybe PostAccountsAccountRequestBodyIndividual'Address'
postAccountsAccountRequestBodyIndividual'Address :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyIndividual'Address'),
    -- | address_kana
    PostAccountsAccountRequestBodyIndividual'
-> Maybe PostAccountsAccountRequestBodyIndividual'AddressKana'
postAccountsAccountRequestBodyIndividual'AddressKana :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyIndividual'AddressKana'),
    -- | address_kanji
    PostAccountsAccountRequestBodyIndividual'
-> Maybe PostAccountsAccountRequestBodyIndividual'AddressKanji'
postAccountsAccountRequestBodyIndividual'AddressKanji :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyIndividual'AddressKanji'),
    -- | dob
    PostAccountsAccountRequestBodyIndividual'
-> Maybe PostAccountsAccountRequestBodyIndividual'Dob'Variants
postAccountsAccountRequestBodyIndividual'Dob :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyIndividual'Dob'Variants),
    -- | email
    PostAccountsAccountRequestBodyIndividual' -> Maybe Text
postAccountsAccountRequestBodyIndividual'Email :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | first_name
    --
    -- Constraints:
    --
    -- * Maximum length of 100
    PostAccountsAccountRequestBodyIndividual' -> Maybe Text
postAccountsAccountRequestBodyIndividual'FirstName :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | first_name_kana
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyIndividual' -> Maybe Text
postAccountsAccountRequestBodyIndividual'FirstNameKana :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | first_name_kanji
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyIndividual' -> Maybe Text
postAccountsAccountRequestBodyIndividual'FirstNameKanji :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | gender
    PostAccountsAccountRequestBodyIndividual' -> Maybe Text
postAccountsAccountRequestBodyIndividual'Gender :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | id_number
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyIndividual' -> Maybe Text
postAccountsAccountRequestBodyIndividual'IdNumber :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | last_name
    --
    -- Constraints:
    --
    -- * Maximum length of 100
    PostAccountsAccountRequestBodyIndividual' -> Maybe Text
postAccountsAccountRequestBodyIndividual'LastName :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | last_name_kana
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyIndividual' -> Maybe Text
postAccountsAccountRequestBodyIndividual'LastNameKana :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | last_name_kanji
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyIndividual' -> Maybe Text
postAccountsAccountRequestBodyIndividual'LastNameKanji :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | maiden_name
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyIndividual' -> Maybe Text
postAccountsAccountRequestBodyIndividual'MaidenName :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | metadata
    PostAccountsAccountRequestBodyIndividual'
-> Maybe PostAccountsAccountRequestBodyIndividual'Metadata'Variants
postAccountsAccountRequestBodyIndividual'Metadata :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyIndividual'Metadata'Variants),
    -- | phone
    PostAccountsAccountRequestBodyIndividual' -> Maybe Text
postAccountsAccountRequestBodyIndividual'Phone :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | political_exposure
    PostAccountsAccountRequestBodyIndividual'
-> Maybe
     PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
postAccountsAccountRequestBodyIndividual'PoliticalExposure :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyIndividual'PoliticalExposure'),
    -- | ssn_last_4
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyIndividual' -> Maybe Text
postAccountsAccountRequestBodyIndividual'SsnLast_4 :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | verification
    PostAccountsAccountRequestBodyIndividual'
-> Maybe PostAccountsAccountRequestBodyIndividual'Verification'
postAccountsAccountRequestBodyIndividual'Verification :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyIndividual'Verification')
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodyIndividual' -> String -> String
[PostAccountsAccountRequestBodyIndividual'] -> String -> String
PostAccountsAccountRequestBodyIndividual' -> String
(Int
 -> PostAccountsAccountRequestBodyIndividual' -> String -> String)
-> (PostAccountsAccountRequestBodyIndividual' -> String)
-> ([PostAccountsAccountRequestBodyIndividual']
    -> String -> String)
-> Show PostAccountsAccountRequestBodyIndividual'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyIndividual'] -> String -> String
$cshowList :: [PostAccountsAccountRequestBodyIndividual'] -> String -> String
show :: PostAccountsAccountRequestBodyIndividual' -> String
$cshow :: PostAccountsAccountRequestBodyIndividual' -> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyIndividual' -> String -> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyIndividual' -> String -> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyIndividual'
-> PostAccountsAccountRequestBodyIndividual' -> Bool
(PostAccountsAccountRequestBodyIndividual'
 -> PostAccountsAccountRequestBodyIndividual' -> Bool)
-> (PostAccountsAccountRequestBodyIndividual'
    -> PostAccountsAccountRequestBodyIndividual' -> Bool)
-> Eq PostAccountsAccountRequestBodyIndividual'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyIndividual'
-> PostAccountsAccountRequestBodyIndividual' -> Bool
$c/= :: PostAccountsAccountRequestBodyIndividual'
-> PostAccountsAccountRequestBodyIndividual' -> Bool
== :: PostAccountsAccountRequestBodyIndividual'
-> PostAccountsAccountRequestBodyIndividual' -> Bool
$c== :: PostAccountsAccountRequestBodyIndividual'
-> PostAccountsAccountRequestBodyIndividual' -> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyIndividual' where
  toJSON :: PostAccountsAccountRequestBodyIndividual' -> Value
toJSON PostAccountsAccountRequestBodyIndividual'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"address" Text
-> Maybe PostAccountsAccountRequestBodyIndividual'Address' -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'
-> Maybe PostAccountsAccountRequestBodyIndividual'Address'
postAccountsAccountRequestBodyIndividual'Address PostAccountsAccountRequestBodyIndividual'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"address_kana" Text
-> Maybe PostAccountsAccountRequestBodyIndividual'AddressKana'
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'
-> Maybe PostAccountsAccountRequestBodyIndividual'AddressKana'
postAccountsAccountRequestBodyIndividual'AddressKana PostAccountsAccountRequestBodyIndividual'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"address_kanji" Text
-> Maybe PostAccountsAccountRequestBodyIndividual'AddressKanji'
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'
-> Maybe PostAccountsAccountRequestBodyIndividual'AddressKanji'
postAccountsAccountRequestBodyIndividual'AddressKanji PostAccountsAccountRequestBodyIndividual'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"dob" Text
-> Maybe PostAccountsAccountRequestBodyIndividual'Dob'Variants
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'
-> Maybe PostAccountsAccountRequestBodyIndividual'Dob'Variants
postAccountsAccountRequestBodyIndividual'Dob PostAccountsAccountRequestBodyIndividual'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"email" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual' -> Maybe Text
postAccountsAccountRequestBodyIndividual'Email PostAccountsAccountRequestBodyIndividual'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"first_name" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual' -> Maybe Text
postAccountsAccountRequestBodyIndividual'FirstName PostAccountsAccountRequestBodyIndividual'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"first_name_kana" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual' -> Maybe Text
postAccountsAccountRequestBodyIndividual'FirstNameKana PostAccountsAccountRequestBodyIndividual'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"first_name_kanji" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual' -> Maybe Text
postAccountsAccountRequestBodyIndividual'FirstNameKanji PostAccountsAccountRequestBodyIndividual'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"gender" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual' -> Maybe Text
postAccountsAccountRequestBodyIndividual'Gender PostAccountsAccountRequestBodyIndividual'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"id_number" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual' -> Maybe Text
postAccountsAccountRequestBodyIndividual'IdNumber PostAccountsAccountRequestBodyIndividual'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"last_name" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual' -> Maybe Text
postAccountsAccountRequestBodyIndividual'LastName PostAccountsAccountRequestBodyIndividual'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"last_name_kana" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual' -> Maybe Text
postAccountsAccountRequestBodyIndividual'LastNameKana PostAccountsAccountRequestBodyIndividual'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"last_name_kanji" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual' -> Maybe Text
postAccountsAccountRequestBodyIndividual'LastNameKanji PostAccountsAccountRequestBodyIndividual'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"maiden_name" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual' -> Maybe Text
postAccountsAccountRequestBodyIndividual'MaidenName PostAccountsAccountRequestBodyIndividual'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"metadata" Text
-> Maybe PostAccountsAccountRequestBodyIndividual'Metadata'Variants
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'
-> Maybe PostAccountsAccountRequestBodyIndividual'Metadata'Variants
postAccountsAccountRequestBodyIndividual'Metadata PostAccountsAccountRequestBodyIndividual'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"phone" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual' -> Maybe Text
postAccountsAccountRequestBodyIndividual'Phone PostAccountsAccountRequestBodyIndividual'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"political_exposure" Text
-> Maybe
     PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'
-> Maybe
     PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
postAccountsAccountRequestBodyIndividual'PoliticalExposure PostAccountsAccountRequestBodyIndividual'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"ssn_last_4" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual' -> Maybe Text
postAccountsAccountRequestBodyIndividual'SsnLast_4 PostAccountsAccountRequestBodyIndividual'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"verification" Text
-> Maybe PostAccountsAccountRequestBodyIndividual'Verification'
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'
-> Maybe PostAccountsAccountRequestBodyIndividual'Verification'
postAccountsAccountRequestBodyIndividual'Verification PostAccountsAccountRequestBodyIndividual'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyIndividual' -> Encoding
toEncoding PostAccountsAccountRequestBodyIndividual'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs ((Text
"address" Text
-> Maybe PostAccountsAccountRequestBodyIndividual'Address'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'
-> Maybe PostAccountsAccountRequestBodyIndividual'Address'
postAccountsAccountRequestBodyIndividual'Address PostAccountsAccountRequestBodyIndividual'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"address_kana" Text
-> Maybe PostAccountsAccountRequestBodyIndividual'AddressKana'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'
-> Maybe PostAccountsAccountRequestBodyIndividual'AddressKana'
postAccountsAccountRequestBodyIndividual'AddressKana PostAccountsAccountRequestBodyIndividual'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"address_kanji" Text
-> Maybe PostAccountsAccountRequestBodyIndividual'AddressKanji'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'
-> Maybe PostAccountsAccountRequestBodyIndividual'AddressKanji'
postAccountsAccountRequestBodyIndividual'AddressKanji PostAccountsAccountRequestBodyIndividual'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"dob" Text
-> Maybe PostAccountsAccountRequestBodyIndividual'Dob'Variants
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'
-> Maybe PostAccountsAccountRequestBodyIndividual'Dob'Variants
postAccountsAccountRequestBodyIndividual'Dob PostAccountsAccountRequestBodyIndividual'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"email" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual' -> Maybe Text
postAccountsAccountRequestBodyIndividual'Email PostAccountsAccountRequestBodyIndividual'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"first_name" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual' -> Maybe Text
postAccountsAccountRequestBodyIndividual'FirstName PostAccountsAccountRequestBodyIndividual'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"first_name_kana" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual' -> Maybe Text
postAccountsAccountRequestBodyIndividual'FirstNameKana PostAccountsAccountRequestBodyIndividual'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"first_name_kanji" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual' -> Maybe Text
postAccountsAccountRequestBodyIndividual'FirstNameKanji PostAccountsAccountRequestBodyIndividual'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"gender" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual' -> Maybe Text
postAccountsAccountRequestBodyIndividual'Gender PostAccountsAccountRequestBodyIndividual'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"id_number" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual' -> Maybe Text
postAccountsAccountRequestBodyIndividual'IdNumber PostAccountsAccountRequestBodyIndividual'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"last_name" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual' -> Maybe Text
postAccountsAccountRequestBodyIndividual'LastName PostAccountsAccountRequestBodyIndividual'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"last_name_kana" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual' -> Maybe Text
postAccountsAccountRequestBodyIndividual'LastNameKana PostAccountsAccountRequestBodyIndividual'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"last_name_kanji" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual' -> Maybe Text
postAccountsAccountRequestBodyIndividual'LastNameKanji PostAccountsAccountRequestBodyIndividual'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"maiden_name" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual' -> Maybe Text
postAccountsAccountRequestBodyIndividual'MaidenName PostAccountsAccountRequestBodyIndividual'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"metadata" Text
-> Maybe PostAccountsAccountRequestBodyIndividual'Metadata'Variants
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'
-> Maybe PostAccountsAccountRequestBodyIndividual'Metadata'Variants
postAccountsAccountRequestBodyIndividual'Metadata PostAccountsAccountRequestBodyIndividual'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"phone" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual' -> Maybe Text
postAccountsAccountRequestBodyIndividual'Phone PostAccountsAccountRequestBodyIndividual'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"political_exposure" Text
-> Maybe
     PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'
-> Maybe
     PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
postAccountsAccountRequestBodyIndividual'PoliticalExposure PostAccountsAccountRequestBodyIndividual'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"ssn_last_4" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual' -> Maybe Text
postAccountsAccountRequestBodyIndividual'SsnLast_4 PostAccountsAccountRequestBodyIndividual'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> (Text
"verification" Text
-> Maybe PostAccountsAccountRequestBodyIndividual'Verification'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'
-> Maybe PostAccountsAccountRequestBodyIndividual'Verification'
postAccountsAccountRequestBodyIndividual'Verification PostAccountsAccountRequestBodyIndividual'
obj)))))))))))))))))))

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyIndividual' where
  parseJSON :: Value -> Parser PostAccountsAccountRequestBodyIndividual'
parseJSON = String
-> (Object -> Parser PostAccountsAccountRequestBodyIndividual')
-> Value
-> Parser PostAccountsAccountRequestBodyIndividual'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyIndividual'" (\Object
obj -> (((((((((((((((((((Maybe PostAccountsAccountRequestBodyIndividual'Address'
 -> Maybe PostAccountsAccountRequestBodyIndividual'AddressKana'
 -> Maybe PostAccountsAccountRequestBodyIndividual'AddressKanji'
 -> Maybe PostAccountsAccountRequestBodyIndividual'Dob'Variants
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe PostAccountsAccountRequestBodyIndividual'Metadata'Variants
 -> Maybe Text
 -> Maybe
      PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
 -> Maybe Text
 -> Maybe PostAccountsAccountRequestBodyIndividual'Verification'
 -> PostAccountsAccountRequestBodyIndividual')
-> Parser
     (Maybe PostAccountsAccountRequestBodyIndividual'Address'
      -> Maybe PostAccountsAccountRequestBodyIndividual'AddressKana'
      -> Maybe PostAccountsAccountRequestBodyIndividual'AddressKanji'
      -> Maybe PostAccountsAccountRequestBodyIndividual'Dob'Variants
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyIndividual'Metadata'Variants
      -> Maybe Text
      -> Maybe
           PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyIndividual'Verification'
      -> PostAccountsAccountRequestBodyIndividual')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe PostAccountsAccountRequestBodyIndividual'Address'
-> Maybe PostAccountsAccountRequestBodyIndividual'AddressKana'
-> Maybe PostAccountsAccountRequestBodyIndividual'AddressKanji'
-> Maybe PostAccountsAccountRequestBodyIndividual'Dob'Variants
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe PostAccountsAccountRequestBodyIndividual'Metadata'Variants
-> Maybe Text
-> Maybe
     PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
-> Maybe Text
-> Maybe PostAccountsAccountRequestBodyIndividual'Verification'
-> PostAccountsAccountRequestBodyIndividual'
PostAccountsAccountRequestBodyIndividual' Parser
  (Maybe PostAccountsAccountRequestBodyIndividual'Address'
   -> Maybe PostAccountsAccountRequestBodyIndividual'AddressKana'
   -> Maybe PostAccountsAccountRequestBodyIndividual'AddressKanji'
   -> Maybe PostAccountsAccountRequestBodyIndividual'Dob'Variants
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyIndividual'Metadata'Variants
   -> Maybe Text
   -> Maybe
        PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyIndividual'Verification'
   -> PostAccountsAccountRequestBodyIndividual')
-> Parser (Maybe PostAccountsAccountRequestBodyIndividual'Address')
-> Parser
     (Maybe PostAccountsAccountRequestBodyIndividual'AddressKana'
      -> Maybe PostAccountsAccountRequestBodyIndividual'AddressKanji'
      -> Maybe PostAccountsAccountRequestBodyIndividual'Dob'Variants
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyIndividual'Metadata'Variants
      -> Maybe Text
      -> Maybe
           PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyIndividual'Verification'
      -> PostAccountsAccountRequestBodyIndividual')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser (Maybe PostAccountsAccountRequestBodyIndividual'Address')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"address")) Parser
  (Maybe PostAccountsAccountRequestBodyIndividual'AddressKana'
   -> Maybe PostAccountsAccountRequestBodyIndividual'AddressKanji'
   -> Maybe PostAccountsAccountRequestBodyIndividual'Dob'Variants
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyIndividual'Metadata'Variants
   -> Maybe Text
   -> Maybe
        PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyIndividual'Verification'
   -> PostAccountsAccountRequestBodyIndividual')
-> Parser
     (Maybe PostAccountsAccountRequestBodyIndividual'AddressKana')
-> Parser
     (Maybe PostAccountsAccountRequestBodyIndividual'AddressKanji'
      -> Maybe PostAccountsAccountRequestBodyIndividual'Dob'Variants
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyIndividual'Metadata'Variants
      -> Maybe Text
      -> Maybe
           PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyIndividual'Verification'
      -> PostAccountsAccountRequestBodyIndividual')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe PostAccountsAccountRequestBodyIndividual'AddressKana')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"address_kana")) Parser
  (Maybe PostAccountsAccountRequestBodyIndividual'AddressKanji'
   -> Maybe PostAccountsAccountRequestBodyIndividual'Dob'Variants
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyIndividual'Metadata'Variants
   -> Maybe Text
   -> Maybe
        PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyIndividual'Verification'
   -> PostAccountsAccountRequestBodyIndividual')
-> Parser
     (Maybe PostAccountsAccountRequestBodyIndividual'AddressKanji')
-> Parser
     (Maybe PostAccountsAccountRequestBodyIndividual'Dob'Variants
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyIndividual'Metadata'Variants
      -> Maybe Text
      -> Maybe
           PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyIndividual'Verification'
      -> PostAccountsAccountRequestBodyIndividual')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe PostAccountsAccountRequestBodyIndividual'AddressKanji')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"address_kanji")) Parser
  (Maybe PostAccountsAccountRequestBodyIndividual'Dob'Variants
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyIndividual'Metadata'Variants
   -> Maybe Text
   -> Maybe
        PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyIndividual'Verification'
   -> PostAccountsAccountRequestBodyIndividual')
-> Parser
     (Maybe PostAccountsAccountRequestBodyIndividual'Dob'Variants)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyIndividual'Metadata'Variants
      -> Maybe Text
      -> Maybe
           PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyIndividual'Verification'
      -> PostAccountsAccountRequestBodyIndividual')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe PostAccountsAccountRequestBodyIndividual'Dob'Variants)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"dob")) Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyIndividual'Metadata'Variants
   -> Maybe Text
   -> Maybe
        PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyIndividual'Verification'
   -> PostAccountsAccountRequestBodyIndividual')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyIndividual'Metadata'Variants
      -> Maybe Text
      -> Maybe
           PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyIndividual'Verification'
      -> PostAccountsAccountRequestBodyIndividual')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"email")) Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyIndividual'Metadata'Variants
   -> Maybe Text
   -> Maybe
        PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyIndividual'Verification'
   -> PostAccountsAccountRequestBodyIndividual')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyIndividual'Metadata'Variants
      -> Maybe Text
      -> Maybe
           PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyIndividual'Verification'
      -> PostAccountsAccountRequestBodyIndividual')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"first_name")) Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyIndividual'Metadata'Variants
   -> Maybe Text
   -> Maybe
        PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyIndividual'Verification'
   -> PostAccountsAccountRequestBodyIndividual')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyIndividual'Metadata'Variants
      -> Maybe Text
      -> Maybe
           PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyIndividual'Verification'
      -> PostAccountsAccountRequestBodyIndividual')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"first_name_kana")) Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyIndividual'Metadata'Variants
   -> Maybe Text
   -> Maybe
        PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyIndividual'Verification'
   -> PostAccountsAccountRequestBodyIndividual')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyIndividual'Metadata'Variants
      -> Maybe Text
      -> Maybe
           PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyIndividual'Verification'
      -> PostAccountsAccountRequestBodyIndividual')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"first_name_kanji")) Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyIndividual'Metadata'Variants
   -> Maybe Text
   -> Maybe
        PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyIndividual'Verification'
   -> PostAccountsAccountRequestBodyIndividual')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyIndividual'Metadata'Variants
      -> Maybe Text
      -> Maybe
           PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyIndividual'Verification'
      -> PostAccountsAccountRequestBodyIndividual')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"gender")) Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyIndividual'Metadata'Variants
   -> Maybe Text
   -> Maybe
        PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyIndividual'Verification'
   -> PostAccountsAccountRequestBodyIndividual')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyIndividual'Metadata'Variants
      -> Maybe Text
      -> Maybe
           PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyIndividual'Verification'
      -> PostAccountsAccountRequestBodyIndividual')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"id_number")) Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyIndividual'Metadata'Variants
   -> Maybe Text
   -> Maybe
        PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyIndividual'Verification'
   -> PostAccountsAccountRequestBodyIndividual')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyIndividual'Metadata'Variants
      -> Maybe Text
      -> Maybe
           PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyIndividual'Verification'
      -> PostAccountsAccountRequestBodyIndividual')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"last_name")) Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyIndividual'Metadata'Variants
   -> Maybe Text
   -> Maybe
        PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyIndividual'Verification'
   -> PostAccountsAccountRequestBodyIndividual')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyIndividual'Metadata'Variants
      -> Maybe Text
      -> Maybe
           PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyIndividual'Verification'
      -> PostAccountsAccountRequestBodyIndividual')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"last_name_kana")) Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyIndividual'Metadata'Variants
   -> Maybe Text
   -> Maybe
        PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyIndividual'Verification'
   -> PostAccountsAccountRequestBodyIndividual')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe PostAccountsAccountRequestBodyIndividual'Metadata'Variants
      -> Maybe Text
      -> Maybe
           PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyIndividual'Verification'
      -> PostAccountsAccountRequestBodyIndividual')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"last_name_kanji")) Parser
  (Maybe Text
   -> Maybe PostAccountsAccountRequestBodyIndividual'Metadata'Variants
   -> Maybe Text
   -> Maybe
        PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyIndividual'Verification'
   -> PostAccountsAccountRequestBodyIndividual')
-> Parser (Maybe Text)
-> Parser
     (Maybe PostAccountsAccountRequestBodyIndividual'Metadata'Variants
      -> Maybe Text
      -> Maybe
           PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyIndividual'Verification'
      -> PostAccountsAccountRequestBodyIndividual')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"maiden_name")) Parser
  (Maybe PostAccountsAccountRequestBodyIndividual'Metadata'Variants
   -> Maybe Text
   -> Maybe
        PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyIndividual'Verification'
   -> PostAccountsAccountRequestBodyIndividual')
-> Parser
     (Maybe PostAccountsAccountRequestBodyIndividual'Metadata'Variants)
-> Parser
     (Maybe Text
      -> Maybe
           PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyIndividual'Verification'
      -> PostAccountsAccountRequestBodyIndividual')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe PostAccountsAccountRequestBodyIndividual'Metadata'Variants)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"metadata")) Parser
  (Maybe Text
   -> Maybe
        PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyIndividual'Verification'
   -> PostAccountsAccountRequestBodyIndividual')
-> Parser (Maybe Text)
-> Parser
     (Maybe PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
      -> Maybe Text
      -> Maybe PostAccountsAccountRequestBodyIndividual'Verification'
      -> PostAccountsAccountRequestBodyIndividual')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"phone")) Parser
  (Maybe PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
   -> Maybe Text
   -> Maybe PostAccountsAccountRequestBodyIndividual'Verification'
   -> PostAccountsAccountRequestBodyIndividual')
-> Parser
     (Maybe PostAccountsAccountRequestBodyIndividual'PoliticalExposure')
-> Parser
     (Maybe Text
      -> Maybe PostAccountsAccountRequestBodyIndividual'Verification'
      -> PostAccountsAccountRequestBodyIndividual')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe PostAccountsAccountRequestBodyIndividual'PoliticalExposure')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"political_exposure")) Parser
  (Maybe Text
   -> Maybe PostAccountsAccountRequestBodyIndividual'Verification'
   -> PostAccountsAccountRequestBodyIndividual')
-> Parser (Maybe Text)
-> Parser
     (Maybe PostAccountsAccountRequestBodyIndividual'Verification'
      -> PostAccountsAccountRequestBodyIndividual')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"ssn_last_4")) Parser
  (Maybe PostAccountsAccountRequestBodyIndividual'Verification'
   -> PostAccountsAccountRequestBodyIndividual')
-> Parser
     (Maybe PostAccountsAccountRequestBodyIndividual'Verification')
-> Parser PostAccountsAccountRequestBodyIndividual'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe PostAccountsAccountRequestBodyIndividual'Verification')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"verification"))

-- | Create a new 'PostAccountsAccountRequestBodyIndividual'' with all required fields.
mkPostAccountsAccountRequestBodyIndividual' :: PostAccountsAccountRequestBodyIndividual'
mkPostAccountsAccountRequestBodyIndividual' :: PostAccountsAccountRequestBodyIndividual'
mkPostAccountsAccountRequestBodyIndividual' =
  PostAccountsAccountRequestBodyIndividual' :: Maybe PostAccountsAccountRequestBodyIndividual'Address'
-> Maybe PostAccountsAccountRequestBodyIndividual'AddressKana'
-> Maybe PostAccountsAccountRequestBodyIndividual'AddressKanji'
-> Maybe PostAccountsAccountRequestBodyIndividual'Dob'Variants
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe PostAccountsAccountRequestBodyIndividual'Metadata'Variants
-> Maybe Text
-> Maybe
     PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
-> Maybe Text
-> Maybe PostAccountsAccountRequestBodyIndividual'Verification'
-> PostAccountsAccountRequestBodyIndividual'
PostAccountsAccountRequestBodyIndividual'
    { postAccountsAccountRequestBodyIndividual'Address :: Maybe PostAccountsAccountRequestBodyIndividual'Address'
postAccountsAccountRequestBodyIndividual'Address = Maybe PostAccountsAccountRequestBodyIndividual'Address'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyIndividual'AddressKana :: Maybe PostAccountsAccountRequestBodyIndividual'AddressKana'
postAccountsAccountRequestBodyIndividual'AddressKana = Maybe PostAccountsAccountRequestBodyIndividual'AddressKana'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyIndividual'AddressKanji :: Maybe PostAccountsAccountRequestBodyIndividual'AddressKanji'
postAccountsAccountRequestBodyIndividual'AddressKanji = Maybe PostAccountsAccountRequestBodyIndividual'AddressKanji'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyIndividual'Dob :: Maybe PostAccountsAccountRequestBodyIndividual'Dob'Variants
postAccountsAccountRequestBodyIndividual'Dob = Maybe PostAccountsAccountRequestBodyIndividual'Dob'Variants
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyIndividual'Email :: Maybe Text
postAccountsAccountRequestBodyIndividual'Email = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyIndividual'FirstName :: Maybe Text
postAccountsAccountRequestBodyIndividual'FirstName = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyIndividual'FirstNameKana :: Maybe Text
postAccountsAccountRequestBodyIndividual'FirstNameKana = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyIndividual'FirstNameKanji :: Maybe Text
postAccountsAccountRequestBodyIndividual'FirstNameKanji = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyIndividual'Gender :: Maybe Text
postAccountsAccountRequestBodyIndividual'Gender = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyIndividual'IdNumber :: Maybe Text
postAccountsAccountRequestBodyIndividual'IdNumber = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyIndividual'LastName :: Maybe Text
postAccountsAccountRequestBodyIndividual'LastName = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyIndividual'LastNameKana :: Maybe Text
postAccountsAccountRequestBodyIndividual'LastNameKana = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyIndividual'LastNameKanji :: Maybe Text
postAccountsAccountRequestBodyIndividual'LastNameKanji = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyIndividual'MaidenName :: Maybe Text
postAccountsAccountRequestBodyIndividual'MaidenName = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyIndividual'Metadata :: Maybe PostAccountsAccountRequestBodyIndividual'Metadata'Variants
postAccountsAccountRequestBodyIndividual'Metadata = Maybe PostAccountsAccountRequestBodyIndividual'Metadata'Variants
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyIndividual'Phone :: Maybe Text
postAccountsAccountRequestBodyIndividual'Phone = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyIndividual'PoliticalExposure :: Maybe PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
postAccountsAccountRequestBodyIndividual'PoliticalExposure = Maybe PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyIndividual'SsnLast_4 :: Maybe Text
postAccountsAccountRequestBodyIndividual'SsnLast_4 = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyIndividual'Verification :: Maybe PostAccountsAccountRequestBodyIndividual'Verification'
postAccountsAccountRequestBodyIndividual'Verification = Maybe PostAccountsAccountRequestBodyIndividual'Verification'
forall a. Maybe a
GHC.Maybe.Nothing
    }

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.individual.properties.address@ in the specification.
data PostAccountsAccountRequestBodyIndividual'Address' = PostAccountsAccountRequestBodyIndividual'Address'
  { -- | city
    --
    -- Constraints:
    --
    -- * Maximum length of 100
    PostAccountsAccountRequestBodyIndividual'Address' -> Maybe Text
postAccountsAccountRequestBodyIndividual'Address'City :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | country
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyIndividual'Address' -> Maybe Text
postAccountsAccountRequestBodyIndividual'Address'Country :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | line1
    --
    -- Constraints:
    --
    -- * Maximum length of 200
    PostAccountsAccountRequestBodyIndividual'Address' -> Maybe Text
postAccountsAccountRequestBodyIndividual'Address'Line1 :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | line2
    --
    -- Constraints:
    --
    -- * Maximum length of 200
    PostAccountsAccountRequestBodyIndividual'Address' -> Maybe Text
postAccountsAccountRequestBodyIndividual'Address'Line2 :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | postal_code
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyIndividual'Address' -> Maybe Text
postAccountsAccountRequestBodyIndividual'Address'PostalCode :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | state
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyIndividual'Address' -> Maybe Text
postAccountsAccountRequestBodyIndividual'Address'State :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodyIndividual'Address'
-> String
-> String
[PostAccountsAccountRequestBodyIndividual'Address']
-> String -> String
PostAccountsAccountRequestBodyIndividual'Address' -> String
(Int
 -> PostAccountsAccountRequestBodyIndividual'Address'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyIndividual'Address' -> String)
-> ([PostAccountsAccountRequestBodyIndividual'Address']
    -> String -> String)
-> Show PostAccountsAccountRequestBodyIndividual'Address'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyIndividual'Address']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyIndividual'Address']
-> String -> String
show :: PostAccountsAccountRequestBodyIndividual'Address' -> String
$cshow :: PostAccountsAccountRequestBodyIndividual'Address' -> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyIndividual'Address'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyIndividual'Address'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyIndividual'Address'
-> PostAccountsAccountRequestBodyIndividual'Address' -> Bool
(PostAccountsAccountRequestBodyIndividual'Address'
 -> PostAccountsAccountRequestBodyIndividual'Address' -> Bool)
-> (PostAccountsAccountRequestBodyIndividual'Address'
    -> PostAccountsAccountRequestBodyIndividual'Address' -> Bool)
-> Eq PostAccountsAccountRequestBodyIndividual'Address'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyIndividual'Address'
-> PostAccountsAccountRequestBodyIndividual'Address' -> Bool
$c/= :: PostAccountsAccountRequestBodyIndividual'Address'
-> PostAccountsAccountRequestBodyIndividual'Address' -> Bool
== :: PostAccountsAccountRequestBodyIndividual'Address'
-> PostAccountsAccountRequestBodyIndividual'Address' -> Bool
$c== :: PostAccountsAccountRequestBodyIndividual'Address'
-> PostAccountsAccountRequestBodyIndividual'Address' -> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyIndividual'Address' where
  toJSON :: PostAccountsAccountRequestBodyIndividual'Address' -> Value
toJSON PostAccountsAccountRequestBodyIndividual'Address'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"city" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'Address' -> Maybe Text
postAccountsAccountRequestBodyIndividual'Address'City PostAccountsAccountRequestBodyIndividual'Address'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"country" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'Address' -> Maybe Text
postAccountsAccountRequestBodyIndividual'Address'Country PostAccountsAccountRequestBodyIndividual'Address'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"line1" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'Address' -> Maybe Text
postAccountsAccountRequestBodyIndividual'Address'Line1 PostAccountsAccountRequestBodyIndividual'Address'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"line2" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'Address' -> Maybe Text
postAccountsAccountRequestBodyIndividual'Address'Line2 PostAccountsAccountRequestBodyIndividual'Address'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"postal_code" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'Address' -> Maybe Text
postAccountsAccountRequestBodyIndividual'Address'PostalCode PostAccountsAccountRequestBodyIndividual'Address'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"state" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'Address' -> Maybe Text
postAccountsAccountRequestBodyIndividual'Address'State PostAccountsAccountRequestBodyIndividual'Address'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyIndividual'Address' -> Encoding
toEncoding PostAccountsAccountRequestBodyIndividual'Address'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs ((Text
"city" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'Address' -> Maybe Text
postAccountsAccountRequestBodyIndividual'Address'City PostAccountsAccountRequestBodyIndividual'Address'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"country" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'Address' -> Maybe Text
postAccountsAccountRequestBodyIndividual'Address'Country PostAccountsAccountRequestBodyIndividual'Address'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"line1" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'Address' -> Maybe Text
postAccountsAccountRequestBodyIndividual'Address'Line1 PostAccountsAccountRequestBodyIndividual'Address'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"line2" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'Address' -> Maybe Text
postAccountsAccountRequestBodyIndividual'Address'Line2 PostAccountsAccountRequestBodyIndividual'Address'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"postal_code" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'Address' -> Maybe Text
postAccountsAccountRequestBodyIndividual'Address'PostalCode PostAccountsAccountRequestBodyIndividual'Address'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> (Text
"state" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'Address' -> Maybe Text
postAccountsAccountRequestBodyIndividual'Address'State PostAccountsAccountRequestBodyIndividual'Address'
obj))))))

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyIndividual'Address' where
  parseJSON :: Value -> Parser PostAccountsAccountRequestBodyIndividual'Address'
parseJSON = String
-> (Object
    -> Parser PostAccountsAccountRequestBodyIndividual'Address')
-> Value
-> Parser PostAccountsAccountRequestBodyIndividual'Address'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyIndividual'Address'" (\Object
obj -> ((((((Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> PostAccountsAccountRequestBodyIndividual'Address')
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodyIndividual'Address')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> PostAccountsAccountRequestBodyIndividual'Address'
PostAccountsAccountRequestBodyIndividual'Address' Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodyIndividual'Address')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodyIndividual'Address')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"city")) Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodyIndividual'Address')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodyIndividual'Address')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"country")) Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodyIndividual'Address')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodyIndividual'Address')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"line1")) Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodyIndividual'Address')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text -> PostAccountsAccountRequestBodyIndividual'Address')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"line2")) Parser
  (Maybe Text
   -> Maybe Text -> PostAccountsAccountRequestBodyIndividual'Address')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text -> PostAccountsAccountRequestBodyIndividual'Address')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"postal_code")) Parser
  (Maybe Text -> PostAccountsAccountRequestBodyIndividual'Address')
-> Parser (Maybe Text)
-> Parser PostAccountsAccountRequestBodyIndividual'Address'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"state"))

-- | Create a new 'PostAccountsAccountRequestBodyIndividual'Address'' with all required fields.
mkPostAccountsAccountRequestBodyIndividual'Address' :: PostAccountsAccountRequestBodyIndividual'Address'
mkPostAccountsAccountRequestBodyIndividual'Address' :: PostAccountsAccountRequestBodyIndividual'Address'
mkPostAccountsAccountRequestBodyIndividual'Address' =
  PostAccountsAccountRequestBodyIndividual'Address' :: Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> PostAccountsAccountRequestBodyIndividual'Address'
PostAccountsAccountRequestBodyIndividual'Address'
    { postAccountsAccountRequestBodyIndividual'Address'City :: Maybe Text
postAccountsAccountRequestBodyIndividual'Address'City = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyIndividual'Address'Country :: Maybe Text
postAccountsAccountRequestBodyIndividual'Address'Country = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyIndividual'Address'Line1 :: Maybe Text
postAccountsAccountRequestBodyIndividual'Address'Line1 = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyIndividual'Address'Line2 :: Maybe Text
postAccountsAccountRequestBodyIndividual'Address'Line2 = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyIndividual'Address'PostalCode :: Maybe Text
postAccountsAccountRequestBodyIndividual'Address'PostalCode = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyIndividual'Address'State :: Maybe Text
postAccountsAccountRequestBodyIndividual'Address'State = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing
    }

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.individual.properties.address_kana@ in the specification.
data PostAccountsAccountRequestBodyIndividual'AddressKana' = PostAccountsAccountRequestBodyIndividual'AddressKana'
  { -- | city
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyIndividual'AddressKana' -> Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKana'City :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | country
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyIndividual'AddressKana' -> Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKana'Country :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | line1
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyIndividual'AddressKana' -> Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKana'Line1 :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | line2
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyIndividual'AddressKana' -> Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKana'Line2 :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | postal_code
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyIndividual'AddressKana' -> Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKana'PostalCode :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | state
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyIndividual'AddressKana' -> Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKana'State :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | town
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyIndividual'AddressKana' -> Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKana'Town :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodyIndividual'AddressKana'
-> String
-> String
[PostAccountsAccountRequestBodyIndividual'AddressKana']
-> String -> String
PostAccountsAccountRequestBodyIndividual'AddressKana' -> String
(Int
 -> PostAccountsAccountRequestBodyIndividual'AddressKana'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyIndividual'AddressKana'
    -> String)
-> ([PostAccountsAccountRequestBodyIndividual'AddressKana']
    -> String -> String)
-> Show PostAccountsAccountRequestBodyIndividual'AddressKana'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyIndividual'AddressKana']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyIndividual'AddressKana']
-> String -> String
show :: PostAccountsAccountRequestBodyIndividual'AddressKana' -> String
$cshow :: PostAccountsAccountRequestBodyIndividual'AddressKana' -> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyIndividual'AddressKana'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyIndividual'AddressKana'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyIndividual'AddressKana'
-> PostAccountsAccountRequestBodyIndividual'AddressKana' -> Bool
(PostAccountsAccountRequestBodyIndividual'AddressKana'
 -> PostAccountsAccountRequestBodyIndividual'AddressKana' -> Bool)
-> (PostAccountsAccountRequestBodyIndividual'AddressKana'
    -> PostAccountsAccountRequestBodyIndividual'AddressKana' -> Bool)
-> Eq PostAccountsAccountRequestBodyIndividual'AddressKana'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyIndividual'AddressKana'
-> PostAccountsAccountRequestBodyIndividual'AddressKana' -> Bool
$c/= :: PostAccountsAccountRequestBodyIndividual'AddressKana'
-> PostAccountsAccountRequestBodyIndividual'AddressKana' -> Bool
== :: PostAccountsAccountRequestBodyIndividual'AddressKana'
-> PostAccountsAccountRequestBodyIndividual'AddressKana' -> Bool
$c== :: PostAccountsAccountRequestBodyIndividual'AddressKana'
-> PostAccountsAccountRequestBodyIndividual'AddressKana' -> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyIndividual'AddressKana' where
  toJSON :: PostAccountsAccountRequestBodyIndividual'AddressKana' -> Value
toJSON PostAccountsAccountRequestBodyIndividual'AddressKana'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"city" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'AddressKana' -> Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKana'City PostAccountsAccountRequestBodyIndividual'AddressKana'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"country" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'AddressKana' -> Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKana'Country PostAccountsAccountRequestBodyIndividual'AddressKana'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"line1" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'AddressKana' -> Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKana'Line1 PostAccountsAccountRequestBodyIndividual'AddressKana'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"line2" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'AddressKana' -> Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKana'Line2 PostAccountsAccountRequestBodyIndividual'AddressKana'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"postal_code" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'AddressKana' -> Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKana'PostalCode PostAccountsAccountRequestBodyIndividual'AddressKana'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"state" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'AddressKana' -> Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKana'State PostAccountsAccountRequestBodyIndividual'AddressKana'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"town" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'AddressKana' -> Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKana'Town PostAccountsAccountRequestBodyIndividual'AddressKana'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyIndividual'AddressKana' -> Encoding
toEncoding PostAccountsAccountRequestBodyIndividual'AddressKana'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs ((Text
"city" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'AddressKana' -> Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKana'City PostAccountsAccountRequestBodyIndividual'AddressKana'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"country" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'AddressKana' -> Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKana'Country PostAccountsAccountRequestBodyIndividual'AddressKana'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"line1" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'AddressKana' -> Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKana'Line1 PostAccountsAccountRequestBodyIndividual'AddressKana'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"line2" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'AddressKana' -> Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKana'Line2 PostAccountsAccountRequestBodyIndividual'AddressKana'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"postal_code" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'AddressKana' -> Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKana'PostalCode PostAccountsAccountRequestBodyIndividual'AddressKana'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"state" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'AddressKana' -> Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKana'State PostAccountsAccountRequestBodyIndividual'AddressKana'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> (Text
"town" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'AddressKana' -> Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKana'Town PostAccountsAccountRequestBodyIndividual'AddressKana'
obj)))))))

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyIndividual'AddressKana' where
  parseJSON :: Value
-> Parser PostAccountsAccountRequestBodyIndividual'AddressKana'
parseJSON = String
-> (Object
    -> Parser PostAccountsAccountRequestBodyIndividual'AddressKana')
-> Value
-> Parser PostAccountsAccountRequestBodyIndividual'AddressKana'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyIndividual'AddressKana'" (\Object
obj -> (((((((Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> PostAccountsAccountRequestBodyIndividual'AddressKana')
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodyIndividual'AddressKana')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> PostAccountsAccountRequestBodyIndividual'AddressKana'
PostAccountsAccountRequestBodyIndividual'AddressKana' Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodyIndividual'AddressKana')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodyIndividual'AddressKana')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"city")) Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodyIndividual'AddressKana')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodyIndividual'AddressKana')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"country")) Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodyIndividual'AddressKana')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodyIndividual'AddressKana')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"line1")) Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodyIndividual'AddressKana')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodyIndividual'AddressKana')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"line2")) Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodyIndividual'AddressKana')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodyIndividual'AddressKana')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"postal_code")) Parser
  (Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodyIndividual'AddressKana')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> PostAccountsAccountRequestBodyIndividual'AddressKana')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"state")) Parser
  (Maybe Text
   -> PostAccountsAccountRequestBodyIndividual'AddressKana')
-> Parser (Maybe Text)
-> Parser PostAccountsAccountRequestBodyIndividual'AddressKana'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"town"))

-- | Create a new 'PostAccountsAccountRequestBodyIndividual'AddressKana'' with all required fields.
mkPostAccountsAccountRequestBodyIndividual'AddressKana' :: PostAccountsAccountRequestBodyIndividual'AddressKana'
mkPostAccountsAccountRequestBodyIndividual'AddressKana' :: PostAccountsAccountRequestBodyIndividual'AddressKana'
mkPostAccountsAccountRequestBodyIndividual'AddressKana' =
  PostAccountsAccountRequestBodyIndividual'AddressKana' :: Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> PostAccountsAccountRequestBodyIndividual'AddressKana'
PostAccountsAccountRequestBodyIndividual'AddressKana'
    { postAccountsAccountRequestBodyIndividual'AddressKana'City :: Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKana'City = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyIndividual'AddressKana'Country :: Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKana'Country = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyIndividual'AddressKana'Line1 :: Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKana'Line1 = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyIndividual'AddressKana'Line2 :: Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKana'Line2 = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyIndividual'AddressKana'PostalCode :: Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKana'PostalCode = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyIndividual'AddressKana'State :: Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKana'State = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyIndividual'AddressKana'Town :: Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKana'Town = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing
    }

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.individual.properties.address_kanji@ in the specification.
data PostAccountsAccountRequestBodyIndividual'AddressKanji' = PostAccountsAccountRequestBodyIndividual'AddressKanji'
  { -- | city
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyIndividual'AddressKanji'
-> Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKanji'City :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | country
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyIndividual'AddressKanji'
-> Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKanji'Country :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | line1
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyIndividual'AddressKanji'
-> Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKanji'Line1 :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | line2
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyIndividual'AddressKanji'
-> Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKanji'Line2 :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | postal_code
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyIndividual'AddressKanji'
-> Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKanji'PostalCode :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | state
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyIndividual'AddressKanji'
-> Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKanji'State :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | town
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyIndividual'AddressKanji'
-> Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKanji'Town :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodyIndividual'AddressKanji'
-> String
-> String
[PostAccountsAccountRequestBodyIndividual'AddressKanji']
-> String -> String
PostAccountsAccountRequestBodyIndividual'AddressKanji' -> String
(Int
 -> PostAccountsAccountRequestBodyIndividual'AddressKanji'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyIndividual'AddressKanji'
    -> String)
-> ([PostAccountsAccountRequestBodyIndividual'AddressKanji']
    -> String -> String)
-> Show PostAccountsAccountRequestBodyIndividual'AddressKanji'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyIndividual'AddressKanji']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyIndividual'AddressKanji']
-> String -> String
show :: PostAccountsAccountRequestBodyIndividual'AddressKanji' -> String
$cshow :: PostAccountsAccountRequestBodyIndividual'AddressKanji' -> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyIndividual'AddressKanji'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyIndividual'AddressKanji'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyIndividual'AddressKanji'
-> PostAccountsAccountRequestBodyIndividual'AddressKanji' -> Bool
(PostAccountsAccountRequestBodyIndividual'AddressKanji'
 -> PostAccountsAccountRequestBodyIndividual'AddressKanji' -> Bool)
-> (PostAccountsAccountRequestBodyIndividual'AddressKanji'
    -> PostAccountsAccountRequestBodyIndividual'AddressKanji' -> Bool)
-> Eq PostAccountsAccountRequestBodyIndividual'AddressKanji'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyIndividual'AddressKanji'
-> PostAccountsAccountRequestBodyIndividual'AddressKanji' -> Bool
$c/= :: PostAccountsAccountRequestBodyIndividual'AddressKanji'
-> PostAccountsAccountRequestBodyIndividual'AddressKanji' -> Bool
== :: PostAccountsAccountRequestBodyIndividual'AddressKanji'
-> PostAccountsAccountRequestBodyIndividual'AddressKanji' -> Bool
$c== :: PostAccountsAccountRequestBodyIndividual'AddressKanji'
-> PostAccountsAccountRequestBodyIndividual'AddressKanji' -> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyIndividual'AddressKanji' where
  toJSON :: PostAccountsAccountRequestBodyIndividual'AddressKanji' -> Value
toJSON PostAccountsAccountRequestBodyIndividual'AddressKanji'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"city" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'AddressKanji'
-> Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKanji'City PostAccountsAccountRequestBodyIndividual'AddressKanji'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"country" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'AddressKanji'
-> Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKanji'Country PostAccountsAccountRequestBodyIndividual'AddressKanji'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"line1" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'AddressKanji'
-> Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKanji'Line1 PostAccountsAccountRequestBodyIndividual'AddressKanji'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"line2" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'AddressKanji'
-> Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKanji'Line2 PostAccountsAccountRequestBodyIndividual'AddressKanji'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"postal_code" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'AddressKanji'
-> Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKanji'PostalCode PostAccountsAccountRequestBodyIndividual'AddressKanji'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"state" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'AddressKanji'
-> Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKanji'State PostAccountsAccountRequestBodyIndividual'AddressKanji'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"town" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'AddressKanji'
-> Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKanji'Town PostAccountsAccountRequestBodyIndividual'AddressKanji'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyIndividual'AddressKanji' -> Encoding
toEncoding PostAccountsAccountRequestBodyIndividual'AddressKanji'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs ((Text
"city" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'AddressKanji'
-> Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKanji'City PostAccountsAccountRequestBodyIndividual'AddressKanji'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"country" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'AddressKanji'
-> Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKanji'Country PostAccountsAccountRequestBodyIndividual'AddressKanji'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"line1" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'AddressKanji'
-> Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKanji'Line1 PostAccountsAccountRequestBodyIndividual'AddressKanji'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"line2" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'AddressKanji'
-> Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKanji'Line2 PostAccountsAccountRequestBodyIndividual'AddressKanji'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"postal_code" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'AddressKanji'
-> Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKanji'PostalCode PostAccountsAccountRequestBodyIndividual'AddressKanji'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"state" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'AddressKanji'
-> Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKanji'State PostAccountsAccountRequestBodyIndividual'AddressKanji'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> (Text
"town" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'AddressKanji'
-> Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKanji'Town PostAccountsAccountRequestBodyIndividual'AddressKanji'
obj)))))))

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyIndividual'AddressKanji' where
  parseJSON :: Value
-> Parser PostAccountsAccountRequestBodyIndividual'AddressKanji'
parseJSON = String
-> (Object
    -> Parser PostAccountsAccountRequestBodyIndividual'AddressKanji')
-> Value
-> Parser PostAccountsAccountRequestBodyIndividual'AddressKanji'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyIndividual'AddressKanji'" (\Object
obj -> (((((((Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> PostAccountsAccountRequestBodyIndividual'AddressKanji')
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodyIndividual'AddressKanji')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> PostAccountsAccountRequestBodyIndividual'AddressKanji'
PostAccountsAccountRequestBodyIndividual'AddressKanji' Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodyIndividual'AddressKanji')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodyIndividual'AddressKanji')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"city")) Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodyIndividual'AddressKanji')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodyIndividual'AddressKanji')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"country")) Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodyIndividual'AddressKanji')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodyIndividual'AddressKanji')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"line1")) Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodyIndividual'AddressKanji')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodyIndividual'AddressKanji')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"line2")) Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodyIndividual'AddressKanji')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodyIndividual'AddressKanji')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"postal_code")) Parser
  (Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodyIndividual'AddressKanji')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> PostAccountsAccountRequestBodyIndividual'AddressKanji')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"state")) Parser
  (Maybe Text
   -> PostAccountsAccountRequestBodyIndividual'AddressKanji')
-> Parser (Maybe Text)
-> Parser PostAccountsAccountRequestBodyIndividual'AddressKanji'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"town"))

-- | Create a new 'PostAccountsAccountRequestBodyIndividual'AddressKanji'' with all required fields.
mkPostAccountsAccountRequestBodyIndividual'AddressKanji' :: PostAccountsAccountRequestBodyIndividual'AddressKanji'
mkPostAccountsAccountRequestBodyIndividual'AddressKanji' :: PostAccountsAccountRequestBodyIndividual'AddressKanji'
mkPostAccountsAccountRequestBodyIndividual'AddressKanji' =
  PostAccountsAccountRequestBodyIndividual'AddressKanji' :: Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> PostAccountsAccountRequestBodyIndividual'AddressKanji'
PostAccountsAccountRequestBodyIndividual'AddressKanji'
    { postAccountsAccountRequestBodyIndividual'AddressKanji'City :: Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKanji'City = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyIndividual'AddressKanji'Country :: Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKanji'Country = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyIndividual'AddressKanji'Line1 :: Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKanji'Line1 = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyIndividual'AddressKanji'Line2 :: Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKanji'Line2 = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyIndividual'AddressKanji'PostalCode :: Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKanji'PostalCode = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyIndividual'AddressKanji'State :: Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKanji'State = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyIndividual'AddressKanji'Town :: Maybe Text
postAccountsAccountRequestBodyIndividual'AddressKanji'Town = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing
    }

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.individual.properties.dob.anyOf@ in the specification.
data PostAccountsAccountRequestBodyIndividual'Dob'OneOf1 = PostAccountsAccountRequestBodyIndividual'Dob'OneOf1
  { -- | day
    PostAccountsAccountRequestBodyIndividual'Dob'OneOf1 -> Int
postAccountsAccountRequestBodyIndividual'Dob'OneOf1Day :: GHC.Types.Int,
    -- | month
    PostAccountsAccountRequestBodyIndividual'Dob'OneOf1 -> Int
postAccountsAccountRequestBodyIndividual'Dob'OneOf1Month :: GHC.Types.Int,
    -- | year
    PostAccountsAccountRequestBodyIndividual'Dob'OneOf1 -> Int
postAccountsAccountRequestBodyIndividual'Dob'OneOf1Year :: GHC.Types.Int
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodyIndividual'Dob'OneOf1
-> String
-> String
[PostAccountsAccountRequestBodyIndividual'Dob'OneOf1]
-> String -> String
PostAccountsAccountRequestBodyIndividual'Dob'OneOf1 -> String
(Int
 -> PostAccountsAccountRequestBodyIndividual'Dob'OneOf1
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyIndividual'Dob'OneOf1 -> String)
-> ([PostAccountsAccountRequestBodyIndividual'Dob'OneOf1]
    -> String -> String)
-> Show PostAccountsAccountRequestBodyIndividual'Dob'OneOf1
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyIndividual'Dob'OneOf1]
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyIndividual'Dob'OneOf1]
-> String -> String
show :: PostAccountsAccountRequestBodyIndividual'Dob'OneOf1 -> String
$cshow :: PostAccountsAccountRequestBodyIndividual'Dob'OneOf1 -> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyIndividual'Dob'OneOf1
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyIndividual'Dob'OneOf1
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyIndividual'Dob'OneOf1
-> PostAccountsAccountRequestBodyIndividual'Dob'OneOf1 -> Bool
(PostAccountsAccountRequestBodyIndividual'Dob'OneOf1
 -> PostAccountsAccountRequestBodyIndividual'Dob'OneOf1 -> Bool)
-> (PostAccountsAccountRequestBodyIndividual'Dob'OneOf1
    -> PostAccountsAccountRequestBodyIndividual'Dob'OneOf1 -> Bool)
-> Eq PostAccountsAccountRequestBodyIndividual'Dob'OneOf1
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyIndividual'Dob'OneOf1
-> PostAccountsAccountRequestBodyIndividual'Dob'OneOf1 -> Bool
$c/= :: PostAccountsAccountRequestBodyIndividual'Dob'OneOf1
-> PostAccountsAccountRequestBodyIndividual'Dob'OneOf1 -> Bool
== :: PostAccountsAccountRequestBodyIndividual'Dob'OneOf1
-> PostAccountsAccountRequestBodyIndividual'Dob'OneOf1 -> Bool
$c== :: PostAccountsAccountRequestBodyIndividual'Dob'OneOf1
-> PostAccountsAccountRequestBodyIndividual'Dob'OneOf1 -> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyIndividual'Dob'OneOf1 where
  toJSON :: PostAccountsAccountRequestBodyIndividual'Dob'OneOf1 -> Value
toJSON PostAccountsAccountRequestBodyIndividual'Dob'OneOf1
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"day" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'Dob'OneOf1 -> Int
postAccountsAccountRequestBodyIndividual'Dob'OneOf1Day PostAccountsAccountRequestBodyIndividual'Dob'OneOf1
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"month" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'Dob'OneOf1 -> Int
postAccountsAccountRequestBodyIndividual'Dob'OneOf1Month PostAccountsAccountRequestBodyIndividual'Dob'OneOf1
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"year" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'Dob'OneOf1 -> Int
postAccountsAccountRequestBodyIndividual'Dob'OneOf1Year PostAccountsAccountRequestBodyIndividual'Dob'OneOf1
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyIndividual'Dob'OneOf1 -> Encoding
toEncoding PostAccountsAccountRequestBodyIndividual'Dob'OneOf1
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs ((Text
"day" Text -> Int -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'Dob'OneOf1 -> Int
postAccountsAccountRequestBodyIndividual'Dob'OneOf1Day PostAccountsAccountRequestBodyIndividual'Dob'OneOf1
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"month" Text -> Int -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'Dob'OneOf1 -> Int
postAccountsAccountRequestBodyIndividual'Dob'OneOf1Month PostAccountsAccountRequestBodyIndividual'Dob'OneOf1
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> (Text
"year" Text -> Int -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'Dob'OneOf1 -> Int
postAccountsAccountRequestBodyIndividual'Dob'OneOf1Year PostAccountsAccountRequestBodyIndividual'Dob'OneOf1
obj)))

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyIndividual'Dob'OneOf1 where
  parseJSON :: Value -> Parser PostAccountsAccountRequestBodyIndividual'Dob'OneOf1
parseJSON = String
-> (Object
    -> Parser PostAccountsAccountRequestBodyIndividual'Dob'OneOf1)
-> Value
-> Parser PostAccountsAccountRequestBodyIndividual'Dob'OneOf1
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyIndividual'Dob'OneOf1" (\Object
obj -> (((Int
 -> Int
 -> Int
 -> PostAccountsAccountRequestBodyIndividual'Dob'OneOf1)
-> Parser
     (Int
      -> Int
      -> Int
      -> PostAccountsAccountRequestBodyIndividual'Dob'OneOf1)
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Int
-> Int
-> Int
-> PostAccountsAccountRequestBodyIndividual'Dob'OneOf1
PostAccountsAccountRequestBodyIndividual'Dob'OneOf1 Parser
  (Int
   -> Int
   -> Int
   -> PostAccountsAccountRequestBodyIndividual'Dob'OneOf1)
-> Parser Int
-> Parser
     (Int -> Int -> PostAccountsAccountRequestBodyIndividual'Dob'OneOf1)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
Data.Aeson.Types.FromJSON..: Text
"day")) Parser
  (Int -> Int -> PostAccountsAccountRequestBodyIndividual'Dob'OneOf1)
-> Parser Int
-> Parser
     (Int -> PostAccountsAccountRequestBodyIndividual'Dob'OneOf1)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
Data.Aeson.Types.FromJSON..: Text
"month")) Parser (Int -> PostAccountsAccountRequestBodyIndividual'Dob'OneOf1)
-> Parser Int
-> Parser PostAccountsAccountRequestBodyIndividual'Dob'OneOf1
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
Data.Aeson.Types.FromJSON..: Text
"year"))

-- | Create a new 'PostAccountsAccountRequestBodyIndividual'Dob'OneOf1' with all required fields.
mkPostAccountsAccountRequestBodyIndividual'Dob'OneOf1 ::
  -- | 'postAccountsAccountRequestBodyIndividual'Dob'OneOf1Day'
  GHC.Types.Int ->
  -- | 'postAccountsAccountRequestBodyIndividual'Dob'OneOf1Month'
  GHC.Types.Int ->
  -- | 'postAccountsAccountRequestBodyIndividual'Dob'OneOf1Year'
  GHC.Types.Int ->
  PostAccountsAccountRequestBodyIndividual'Dob'OneOf1
mkPostAccountsAccountRequestBodyIndividual'Dob'OneOf1 :: Int
-> Int
-> Int
-> PostAccountsAccountRequestBodyIndividual'Dob'OneOf1
mkPostAccountsAccountRequestBodyIndividual'Dob'OneOf1 Int
postAccountsAccountRequestBodyIndividual'Dob'OneOf1Day Int
postAccountsAccountRequestBodyIndividual'Dob'OneOf1Month Int
postAccountsAccountRequestBodyIndividual'Dob'OneOf1Year =
  PostAccountsAccountRequestBodyIndividual'Dob'OneOf1 :: Int
-> Int
-> Int
-> PostAccountsAccountRequestBodyIndividual'Dob'OneOf1
PostAccountsAccountRequestBodyIndividual'Dob'OneOf1
    { postAccountsAccountRequestBodyIndividual'Dob'OneOf1Day :: Int
postAccountsAccountRequestBodyIndividual'Dob'OneOf1Day = Int
postAccountsAccountRequestBodyIndividual'Dob'OneOf1Day,
      postAccountsAccountRequestBodyIndividual'Dob'OneOf1Month :: Int
postAccountsAccountRequestBodyIndividual'Dob'OneOf1Month = Int
postAccountsAccountRequestBodyIndividual'Dob'OneOf1Month,
      postAccountsAccountRequestBodyIndividual'Dob'OneOf1Year :: Int
postAccountsAccountRequestBodyIndividual'Dob'OneOf1Year = Int
postAccountsAccountRequestBodyIndividual'Dob'OneOf1Year
    }

-- | Defines the oneOf schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.individual.properties.dob.anyOf@ in the specification.
data PostAccountsAccountRequestBodyIndividual'Dob'Variants
  = -- | Represents the JSON value @""@
    PostAccountsAccountRequestBodyIndividual'Dob'EmptyString
  | PostAccountsAccountRequestBodyIndividual'Dob'PostAccountsAccountRequestBodyIndividual'Dob'OneOf1 PostAccountsAccountRequestBodyIndividual'Dob'OneOf1
  deriving (Int
-> PostAccountsAccountRequestBodyIndividual'Dob'Variants
-> String
-> String
[PostAccountsAccountRequestBodyIndividual'Dob'Variants]
-> String -> String
PostAccountsAccountRequestBodyIndividual'Dob'Variants -> String
(Int
 -> PostAccountsAccountRequestBodyIndividual'Dob'Variants
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyIndividual'Dob'Variants
    -> String)
-> ([PostAccountsAccountRequestBodyIndividual'Dob'Variants]
    -> String -> String)
-> Show PostAccountsAccountRequestBodyIndividual'Dob'Variants
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyIndividual'Dob'Variants]
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyIndividual'Dob'Variants]
-> String -> String
show :: PostAccountsAccountRequestBodyIndividual'Dob'Variants -> String
$cshow :: PostAccountsAccountRequestBodyIndividual'Dob'Variants -> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyIndividual'Dob'Variants
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyIndividual'Dob'Variants
-> String
-> String
GHC.Show.Show, PostAccountsAccountRequestBodyIndividual'Dob'Variants
-> PostAccountsAccountRequestBodyIndividual'Dob'Variants -> Bool
(PostAccountsAccountRequestBodyIndividual'Dob'Variants
 -> PostAccountsAccountRequestBodyIndividual'Dob'Variants -> Bool)
-> (PostAccountsAccountRequestBodyIndividual'Dob'Variants
    -> PostAccountsAccountRequestBodyIndividual'Dob'Variants -> Bool)
-> Eq PostAccountsAccountRequestBodyIndividual'Dob'Variants
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyIndividual'Dob'Variants
-> PostAccountsAccountRequestBodyIndividual'Dob'Variants -> Bool
$c/= :: PostAccountsAccountRequestBodyIndividual'Dob'Variants
-> PostAccountsAccountRequestBodyIndividual'Dob'Variants -> Bool
== :: PostAccountsAccountRequestBodyIndividual'Dob'Variants
-> PostAccountsAccountRequestBodyIndividual'Dob'Variants -> Bool
$c== :: PostAccountsAccountRequestBodyIndividual'Dob'Variants
-> PostAccountsAccountRequestBodyIndividual'Dob'Variants -> Bool
GHC.Classes.Eq)

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyIndividual'Dob'Variants where
  toJSON :: PostAccountsAccountRequestBodyIndividual'Dob'Variants -> Value
toJSON (PostAccountsAccountRequestBodyIndividual'Dob'PostAccountsAccountRequestBodyIndividual'Dob'OneOf1 PostAccountsAccountRequestBodyIndividual'Dob'OneOf1
a) = PostAccountsAccountRequestBodyIndividual'Dob'OneOf1 -> Value
forall a. ToJSON a => a -> Value
Data.Aeson.Types.ToJSON.toJSON PostAccountsAccountRequestBodyIndividual'Dob'OneOf1
a
  toJSON (PostAccountsAccountRequestBodyIndividual'Dob'Variants
PostAccountsAccountRequestBodyIndividual'Dob'EmptyString) = Value
""

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyIndividual'Dob'Variants where
  parseJSON :: Value
-> Parser PostAccountsAccountRequestBodyIndividual'Dob'Variants
parseJSON Value
val =
    if
        | Value
val Value -> Value -> Bool
forall a. Eq a => a -> a -> Bool
GHC.Classes.== Value
"" -> PostAccountsAccountRequestBodyIndividual'Dob'Variants
-> Parser PostAccountsAccountRequestBodyIndividual'Dob'Variants
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure PostAccountsAccountRequestBodyIndividual'Dob'Variants
PostAccountsAccountRequestBodyIndividual'Dob'EmptyString
        | Bool
GHC.Base.otherwise -> case (PostAccountsAccountRequestBodyIndividual'Dob'OneOf1
-> PostAccountsAccountRequestBodyIndividual'Dob'Variants
PostAccountsAccountRequestBodyIndividual'Dob'PostAccountsAccountRequestBodyIndividual'Dob'OneOf1 (PostAccountsAccountRequestBodyIndividual'Dob'OneOf1
 -> PostAccountsAccountRequestBodyIndividual'Dob'Variants)
-> Result PostAccountsAccountRequestBodyIndividual'Dob'OneOf1
-> Result PostAccountsAccountRequestBodyIndividual'Dob'Variants
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Data.Functor.<$> Value -> Result PostAccountsAccountRequestBodyIndividual'Dob'OneOf1
forall a. FromJSON a => Value -> Result a
Data.Aeson.Types.FromJSON.fromJSON Value
val) Result PostAccountsAccountRequestBodyIndividual'Dob'Variants
-> Result PostAccountsAccountRequestBodyIndividual'Dob'Variants
-> Result PostAccountsAccountRequestBodyIndividual'Dob'Variants
forall (f :: * -> *) a. Alternative f => f a -> f a -> f a
GHC.Base.<|> String
-> Result PostAccountsAccountRequestBodyIndividual'Dob'Variants
forall a. String -> Result a
Data.Aeson.Types.Internal.Error String
"No variant matched" of
          Data.Aeson.Types.Internal.Success PostAccountsAccountRequestBodyIndividual'Dob'Variants
a -> PostAccountsAccountRequestBodyIndividual'Dob'Variants
-> Parser PostAccountsAccountRequestBodyIndividual'Dob'Variants
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure PostAccountsAccountRequestBodyIndividual'Dob'Variants
a
          Data.Aeson.Types.Internal.Error String
a -> String
-> Parser PostAccountsAccountRequestBodyIndividual'Dob'Variants
forall (m :: * -> *) a. MonadFail m => String -> m a
Control.Monad.Fail.fail String
a

-- | Defines the oneOf schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.individual.properties.metadata.anyOf@ in the specification.
data PostAccountsAccountRequestBodyIndividual'Metadata'Variants
  = -- | Represents the JSON value @""@
    PostAccountsAccountRequestBodyIndividual'Metadata'EmptyString
  | PostAccountsAccountRequestBodyIndividual'Metadata'Object Data.Aeson.Types.Internal.Object
  deriving (Int
-> PostAccountsAccountRequestBodyIndividual'Metadata'Variants
-> String
-> String
[PostAccountsAccountRequestBodyIndividual'Metadata'Variants]
-> String -> String
PostAccountsAccountRequestBodyIndividual'Metadata'Variants
-> String
(Int
 -> PostAccountsAccountRequestBodyIndividual'Metadata'Variants
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyIndividual'Metadata'Variants
    -> String)
-> ([PostAccountsAccountRequestBodyIndividual'Metadata'Variants]
    -> String -> String)
-> Show PostAccountsAccountRequestBodyIndividual'Metadata'Variants
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyIndividual'Metadata'Variants]
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyIndividual'Metadata'Variants]
-> String -> String
show :: PostAccountsAccountRequestBodyIndividual'Metadata'Variants
-> String
$cshow :: PostAccountsAccountRequestBodyIndividual'Metadata'Variants
-> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyIndividual'Metadata'Variants
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyIndividual'Metadata'Variants
-> String
-> String
GHC.Show.Show, PostAccountsAccountRequestBodyIndividual'Metadata'Variants
-> PostAccountsAccountRequestBodyIndividual'Metadata'Variants
-> Bool
(PostAccountsAccountRequestBodyIndividual'Metadata'Variants
 -> PostAccountsAccountRequestBodyIndividual'Metadata'Variants
 -> Bool)
-> (PostAccountsAccountRequestBodyIndividual'Metadata'Variants
    -> PostAccountsAccountRequestBodyIndividual'Metadata'Variants
    -> Bool)
-> Eq PostAccountsAccountRequestBodyIndividual'Metadata'Variants
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyIndividual'Metadata'Variants
-> PostAccountsAccountRequestBodyIndividual'Metadata'Variants
-> Bool
$c/= :: PostAccountsAccountRequestBodyIndividual'Metadata'Variants
-> PostAccountsAccountRequestBodyIndividual'Metadata'Variants
-> Bool
== :: PostAccountsAccountRequestBodyIndividual'Metadata'Variants
-> PostAccountsAccountRequestBodyIndividual'Metadata'Variants
-> Bool
$c== :: PostAccountsAccountRequestBodyIndividual'Metadata'Variants
-> PostAccountsAccountRequestBodyIndividual'Metadata'Variants
-> Bool
GHC.Classes.Eq)

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyIndividual'Metadata'Variants where
  toJSON :: PostAccountsAccountRequestBodyIndividual'Metadata'Variants -> Value
toJSON (PostAccountsAccountRequestBodyIndividual'Metadata'Object Object
a) = Object -> Value
forall a. ToJSON a => a -> Value
Data.Aeson.Types.ToJSON.toJSON Object
a
  toJSON (PostAccountsAccountRequestBodyIndividual'Metadata'Variants
PostAccountsAccountRequestBodyIndividual'Metadata'EmptyString) = Value
""

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyIndividual'Metadata'Variants where
  parseJSON :: Value
-> Parser
     PostAccountsAccountRequestBodyIndividual'Metadata'Variants
parseJSON Value
val =
    if
        | Value
val Value -> Value -> Bool
forall a. Eq a => a -> a -> Bool
GHC.Classes.== Value
"" -> PostAccountsAccountRequestBodyIndividual'Metadata'Variants
-> Parser
     PostAccountsAccountRequestBodyIndividual'Metadata'Variants
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure PostAccountsAccountRequestBodyIndividual'Metadata'Variants
PostAccountsAccountRequestBodyIndividual'Metadata'EmptyString
        | Bool
GHC.Base.otherwise -> case (Object
-> PostAccountsAccountRequestBodyIndividual'Metadata'Variants
PostAccountsAccountRequestBodyIndividual'Metadata'Object (Object
 -> PostAccountsAccountRequestBodyIndividual'Metadata'Variants)
-> Result Object
-> Result
     PostAccountsAccountRequestBodyIndividual'Metadata'Variants
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Data.Functor.<$> Value -> Result Object
forall a. FromJSON a => Value -> Result a
Data.Aeson.Types.FromJSON.fromJSON Value
val) Result PostAccountsAccountRequestBodyIndividual'Metadata'Variants
-> Result
     PostAccountsAccountRequestBodyIndividual'Metadata'Variants
-> Result
     PostAccountsAccountRequestBodyIndividual'Metadata'Variants
forall (f :: * -> *) a. Alternative f => f a -> f a -> f a
GHC.Base.<|> String
-> Result
     PostAccountsAccountRequestBodyIndividual'Metadata'Variants
forall a. String -> Result a
Data.Aeson.Types.Internal.Error String
"No variant matched" of
          Data.Aeson.Types.Internal.Success PostAccountsAccountRequestBodyIndividual'Metadata'Variants
a -> PostAccountsAccountRequestBodyIndividual'Metadata'Variants
-> Parser
     PostAccountsAccountRequestBodyIndividual'Metadata'Variants
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure PostAccountsAccountRequestBodyIndividual'Metadata'Variants
a
          Data.Aeson.Types.Internal.Error String
a -> String
-> Parser
     PostAccountsAccountRequestBodyIndividual'Metadata'Variants
forall (m :: * -> *) a. MonadFail m => String -> m a
Control.Monad.Fail.fail String
a

-- | Defines the enum schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.individual.properties.political_exposure@ in the specification.
data PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
  = -- | This case is used if the value encountered during decoding does not match any of the provided cases in the specification.
    PostAccountsAccountRequestBodyIndividual'PoliticalExposure'Other Data.Aeson.Types.Internal.Value
  | -- | This constructor can be used to send values to the server which are not present in the specification yet.
    PostAccountsAccountRequestBodyIndividual'PoliticalExposure'Typed Data.Text.Internal.Text
  | -- | Represents the JSON value @"existing"@
    PostAccountsAccountRequestBodyIndividual'PoliticalExposure'EnumExisting
  | -- | Represents the JSON value @"none"@
    PostAccountsAccountRequestBodyIndividual'PoliticalExposure'EnumNone
  deriving (Int
-> PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
-> String
-> String
[PostAccountsAccountRequestBodyIndividual'PoliticalExposure']
-> String -> String
PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
-> String
(Int
 -> PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
    -> String)
-> ([PostAccountsAccountRequestBodyIndividual'PoliticalExposure']
    -> String -> String)
-> Show PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyIndividual'PoliticalExposure']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyIndividual'PoliticalExposure']
-> String -> String
show :: PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
-> String
$cshow :: PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
-> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
-> String
-> String
GHC.Show.Show, PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
-> PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
-> Bool
(PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
 -> PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
 -> Bool)
-> (PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
    -> PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
    -> Bool)
-> Eq PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
-> PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
-> Bool
$c/= :: PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
-> PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
-> Bool
== :: PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
-> PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
-> Bool
$c== :: PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
-> PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
-> Bool
GHC.Classes.Eq)

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyIndividual'PoliticalExposure' where
  toJSON :: PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
-> Value
toJSON (PostAccountsAccountRequestBodyIndividual'PoliticalExposure'Other Value
val) = Value
val
  toJSON (PostAccountsAccountRequestBodyIndividual'PoliticalExposure'Typed Text
val) = Text -> Value
forall a. ToJSON a => a -> Value
Data.Aeson.Types.ToJSON.toJSON Text
val
  toJSON (PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
PostAccountsAccountRequestBodyIndividual'PoliticalExposure'EnumExisting) = Value
"existing"
  toJSON (PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
PostAccountsAccountRequestBodyIndividual'PoliticalExposure'EnumNone) = Value
"none"

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyIndividual'PoliticalExposure' where
  parseJSON :: Value
-> Parser
     PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
parseJSON Value
val =
    PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
-> Parser
     PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure
      ( if
            | Value
val Value -> Value -> Bool
forall a. Eq a => a -> a -> Bool
GHC.Classes.== Value
"existing" -> PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
PostAccountsAccountRequestBodyIndividual'PoliticalExposure'EnumExisting
            | Value
val Value -> Value -> Bool
forall a. Eq a => a -> a -> Bool
GHC.Classes.== Value
"none" -> PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
PostAccountsAccountRequestBodyIndividual'PoliticalExposure'EnumNone
            | Bool
GHC.Base.otherwise -> Value
-> PostAccountsAccountRequestBodyIndividual'PoliticalExposure'
PostAccountsAccountRequestBodyIndividual'PoliticalExposure'Other Value
val
      )

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.individual.properties.verification@ in the specification.
data PostAccountsAccountRequestBodyIndividual'Verification' = PostAccountsAccountRequestBodyIndividual'Verification'
  { -- | additional_document
    PostAccountsAccountRequestBodyIndividual'Verification'
-> Maybe
     PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
postAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'),
    -- | document
    PostAccountsAccountRequestBodyIndividual'Verification'
-> Maybe
     PostAccountsAccountRequestBodyIndividual'Verification'Document'
postAccountsAccountRequestBodyIndividual'Verification'Document :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodyIndividual'Verification'Document')
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodyIndividual'Verification'
-> String
-> String
[PostAccountsAccountRequestBodyIndividual'Verification']
-> String -> String
PostAccountsAccountRequestBodyIndividual'Verification' -> String
(Int
 -> PostAccountsAccountRequestBodyIndividual'Verification'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyIndividual'Verification'
    -> String)
-> ([PostAccountsAccountRequestBodyIndividual'Verification']
    -> String -> String)
-> Show PostAccountsAccountRequestBodyIndividual'Verification'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyIndividual'Verification']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyIndividual'Verification']
-> String -> String
show :: PostAccountsAccountRequestBodyIndividual'Verification' -> String
$cshow :: PostAccountsAccountRequestBodyIndividual'Verification' -> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyIndividual'Verification'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyIndividual'Verification'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyIndividual'Verification'
-> PostAccountsAccountRequestBodyIndividual'Verification' -> Bool
(PostAccountsAccountRequestBodyIndividual'Verification'
 -> PostAccountsAccountRequestBodyIndividual'Verification' -> Bool)
-> (PostAccountsAccountRequestBodyIndividual'Verification'
    -> PostAccountsAccountRequestBodyIndividual'Verification' -> Bool)
-> Eq PostAccountsAccountRequestBodyIndividual'Verification'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyIndividual'Verification'
-> PostAccountsAccountRequestBodyIndividual'Verification' -> Bool
$c/= :: PostAccountsAccountRequestBodyIndividual'Verification'
-> PostAccountsAccountRequestBodyIndividual'Verification' -> Bool
== :: PostAccountsAccountRequestBodyIndividual'Verification'
-> PostAccountsAccountRequestBodyIndividual'Verification' -> Bool
$c== :: PostAccountsAccountRequestBodyIndividual'Verification'
-> PostAccountsAccountRequestBodyIndividual'Verification' -> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyIndividual'Verification' where
  toJSON :: PostAccountsAccountRequestBodyIndividual'Verification' -> Value
toJSON PostAccountsAccountRequestBodyIndividual'Verification'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"additional_document" Text
-> Maybe
     PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'Verification'
-> Maybe
     PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
postAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument PostAccountsAccountRequestBodyIndividual'Verification'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"document" Text
-> Maybe
     PostAccountsAccountRequestBodyIndividual'Verification'Document'
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'Verification'
-> Maybe
     PostAccountsAccountRequestBodyIndividual'Verification'Document'
postAccountsAccountRequestBodyIndividual'Verification'Document PostAccountsAccountRequestBodyIndividual'Verification'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyIndividual'Verification' -> Encoding
toEncoding PostAccountsAccountRequestBodyIndividual'Verification'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs ((Text
"additional_document" Text
-> Maybe
     PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'Verification'
-> Maybe
     PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
postAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument PostAccountsAccountRequestBodyIndividual'Verification'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> (Text
"document" Text
-> Maybe
     PostAccountsAccountRequestBodyIndividual'Verification'Document'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'Verification'
-> Maybe
     PostAccountsAccountRequestBodyIndividual'Verification'Document'
postAccountsAccountRequestBodyIndividual'Verification'Document PostAccountsAccountRequestBodyIndividual'Verification'
obj))

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyIndividual'Verification' where
  parseJSON :: Value
-> Parser PostAccountsAccountRequestBodyIndividual'Verification'
parseJSON = String
-> (Object
    -> Parser PostAccountsAccountRequestBodyIndividual'Verification')
-> Value
-> Parser PostAccountsAccountRequestBodyIndividual'Verification'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyIndividual'Verification'" (\Object
obj -> ((Maybe
   PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
 -> Maybe
      PostAccountsAccountRequestBodyIndividual'Verification'Document'
 -> PostAccountsAccountRequestBodyIndividual'Verification')
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
      -> Maybe
           PostAccountsAccountRequestBodyIndividual'Verification'Document'
      -> PostAccountsAccountRequestBodyIndividual'Verification')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe
  PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
-> Maybe
     PostAccountsAccountRequestBodyIndividual'Verification'Document'
-> PostAccountsAccountRequestBodyIndividual'Verification'
PostAccountsAccountRequestBodyIndividual'Verification' Parser
  (Maybe
     PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
   -> Maybe
        PostAccountsAccountRequestBodyIndividual'Verification'Document'
   -> PostAccountsAccountRequestBodyIndividual'Verification')
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument')
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyIndividual'Verification'Document'
      -> PostAccountsAccountRequestBodyIndividual'Verification')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"additional_document")) Parser
  (Maybe
     PostAccountsAccountRequestBodyIndividual'Verification'Document'
   -> PostAccountsAccountRequestBodyIndividual'Verification')
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyIndividual'Verification'Document')
-> Parser PostAccountsAccountRequestBodyIndividual'Verification'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe
        PostAccountsAccountRequestBodyIndividual'Verification'Document')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"document"))

-- | Create a new 'PostAccountsAccountRequestBodyIndividual'Verification'' with all required fields.
mkPostAccountsAccountRequestBodyIndividual'Verification' :: PostAccountsAccountRequestBodyIndividual'Verification'
mkPostAccountsAccountRequestBodyIndividual'Verification' :: PostAccountsAccountRequestBodyIndividual'Verification'
mkPostAccountsAccountRequestBodyIndividual'Verification' =
  PostAccountsAccountRequestBodyIndividual'Verification' :: Maybe
  PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
-> Maybe
     PostAccountsAccountRequestBodyIndividual'Verification'Document'
-> PostAccountsAccountRequestBodyIndividual'Verification'
PostAccountsAccountRequestBodyIndividual'Verification'
    { postAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument :: Maybe
  PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
postAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument = Maybe
  PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyIndividual'Verification'Document :: Maybe
  PostAccountsAccountRequestBodyIndividual'Verification'Document'
postAccountsAccountRequestBodyIndividual'Verification'Document = Maybe
  PostAccountsAccountRequestBodyIndividual'Verification'Document'
forall a. Maybe a
GHC.Maybe.Nothing
    }

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.individual.properties.verification.properties.additional_document@ in the specification.
data PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument' = PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
  { -- | back
    --
    -- Constraints:
    --
    -- * Maximum length of 500
    PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
-> Maybe Text
postAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'Back :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | front
    --
    -- Constraints:
    --
    -- * Maximum length of 500
    PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
-> Maybe Text
postAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'Front :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
-> String
-> String
[PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument']
-> String -> String
PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
-> String
(Int
 -> PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
    -> String)
-> ([PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument']
    -> String -> String)
-> Show
     PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument']
-> String -> String
show :: PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
-> String
$cshow :: PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
-> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
-> PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
-> Bool
(PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
 -> PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
 -> Bool)
-> (PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
    -> PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
    -> Bool)
-> Eq
     PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
-> PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
-> Bool
$c/= :: PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
-> PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
-> Bool
== :: PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
-> PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
-> Bool
$c== :: PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
-> PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
-> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument' where
  toJSON :: PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
-> Value
toJSON PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"back" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
-> Maybe Text
postAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'Back PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"front" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
-> Maybe Text
postAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'Front PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
-> Encoding
toEncoding PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs ((Text
"back" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
-> Maybe Text
postAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'Back PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> (Text
"front" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
-> Maybe Text
postAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'Front PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
obj))

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument' where
  parseJSON :: Value
-> Parser
     PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
parseJSON = String
-> (Object
    -> Parser
         PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument')
-> Value
-> Parser
     PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'" (\Object
obj -> ((Maybe Text
 -> Maybe Text
 -> PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument')
-> Parser
     (Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe Text
-> Maybe Text
-> PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument' Parser
  (Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"back")) Parser
  (Maybe Text
   -> PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument')
-> Parser (Maybe Text)
-> Parser
     PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"front"))

-- | Create a new 'PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'' with all required fields.
mkPostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument' :: PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
mkPostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument' :: PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
mkPostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument' =
  PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument' :: Maybe Text
-> Maybe Text
-> PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
PostAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'
    { postAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'Back :: Maybe Text
postAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'Back = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'Front :: Maybe Text
postAccountsAccountRequestBodyIndividual'Verification'AdditionalDocument'Front = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing
    }

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.individual.properties.verification.properties.document@ in the specification.
data PostAccountsAccountRequestBodyIndividual'Verification'Document' = PostAccountsAccountRequestBodyIndividual'Verification'Document'
  { -- | back
    --
    -- Constraints:
    --
    -- * Maximum length of 500
    PostAccountsAccountRequestBodyIndividual'Verification'Document'
-> Maybe Text
postAccountsAccountRequestBodyIndividual'Verification'Document'Back :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | front
    --
    -- Constraints:
    --
    -- * Maximum length of 500
    PostAccountsAccountRequestBodyIndividual'Verification'Document'
-> Maybe Text
postAccountsAccountRequestBodyIndividual'Verification'Document'Front :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodyIndividual'Verification'Document'
-> String
-> String
[PostAccountsAccountRequestBodyIndividual'Verification'Document']
-> String -> String
PostAccountsAccountRequestBodyIndividual'Verification'Document'
-> String
(Int
 -> PostAccountsAccountRequestBodyIndividual'Verification'Document'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyIndividual'Verification'Document'
    -> String)
-> ([PostAccountsAccountRequestBodyIndividual'Verification'Document']
    -> String -> String)
-> Show
     PostAccountsAccountRequestBodyIndividual'Verification'Document'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyIndividual'Verification'Document']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyIndividual'Verification'Document']
-> String -> String
show :: PostAccountsAccountRequestBodyIndividual'Verification'Document'
-> String
$cshow :: PostAccountsAccountRequestBodyIndividual'Verification'Document'
-> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyIndividual'Verification'Document'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyIndividual'Verification'Document'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyIndividual'Verification'Document'
-> PostAccountsAccountRequestBodyIndividual'Verification'Document'
-> Bool
(PostAccountsAccountRequestBodyIndividual'Verification'Document'
 -> PostAccountsAccountRequestBodyIndividual'Verification'Document'
 -> Bool)
-> (PostAccountsAccountRequestBodyIndividual'Verification'Document'
    -> PostAccountsAccountRequestBodyIndividual'Verification'Document'
    -> Bool)
-> Eq
     PostAccountsAccountRequestBodyIndividual'Verification'Document'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyIndividual'Verification'Document'
-> PostAccountsAccountRequestBodyIndividual'Verification'Document'
-> Bool
$c/= :: PostAccountsAccountRequestBodyIndividual'Verification'Document'
-> PostAccountsAccountRequestBodyIndividual'Verification'Document'
-> Bool
== :: PostAccountsAccountRequestBodyIndividual'Verification'Document'
-> PostAccountsAccountRequestBodyIndividual'Verification'Document'
-> Bool
$c== :: PostAccountsAccountRequestBodyIndividual'Verification'Document'
-> PostAccountsAccountRequestBodyIndividual'Verification'Document'
-> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyIndividual'Verification'Document' where
  toJSON :: PostAccountsAccountRequestBodyIndividual'Verification'Document'
-> Value
toJSON PostAccountsAccountRequestBodyIndividual'Verification'Document'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"back" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'Verification'Document'
-> Maybe Text
postAccountsAccountRequestBodyIndividual'Verification'Document'Back PostAccountsAccountRequestBodyIndividual'Verification'Document'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"front" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'Verification'Document'
-> Maybe Text
postAccountsAccountRequestBodyIndividual'Verification'Document'Front PostAccountsAccountRequestBodyIndividual'Verification'Document'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyIndividual'Verification'Document'
-> Encoding
toEncoding PostAccountsAccountRequestBodyIndividual'Verification'Document'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs ((Text
"back" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'Verification'Document'
-> Maybe Text
postAccountsAccountRequestBodyIndividual'Verification'Document'Back PostAccountsAccountRequestBodyIndividual'Verification'Document'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> (Text
"front" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyIndividual'Verification'Document'
-> Maybe Text
postAccountsAccountRequestBodyIndividual'Verification'Document'Front PostAccountsAccountRequestBodyIndividual'Verification'Document'
obj))

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyIndividual'Verification'Document' where
  parseJSON :: Value
-> Parser
     PostAccountsAccountRequestBodyIndividual'Verification'Document'
parseJSON = String
-> (Object
    -> Parser
         PostAccountsAccountRequestBodyIndividual'Verification'Document')
-> Value
-> Parser
     PostAccountsAccountRequestBodyIndividual'Verification'Document'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyIndividual'Verification'Document'" (\Object
obj -> ((Maybe Text
 -> Maybe Text
 -> PostAccountsAccountRequestBodyIndividual'Verification'Document')
-> Parser
     (Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodyIndividual'Verification'Document')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe Text
-> Maybe Text
-> PostAccountsAccountRequestBodyIndividual'Verification'Document'
PostAccountsAccountRequestBodyIndividual'Verification'Document' Parser
  (Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodyIndividual'Verification'Document')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> PostAccountsAccountRequestBodyIndividual'Verification'Document')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"back")) Parser
  (Maybe Text
   -> PostAccountsAccountRequestBodyIndividual'Verification'Document')
-> Parser (Maybe Text)
-> Parser
     PostAccountsAccountRequestBodyIndividual'Verification'Document'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"front"))

-- | Create a new 'PostAccountsAccountRequestBodyIndividual'Verification'Document'' with all required fields.
mkPostAccountsAccountRequestBodyIndividual'Verification'Document' :: PostAccountsAccountRequestBodyIndividual'Verification'Document'
mkPostAccountsAccountRequestBodyIndividual'Verification'Document' :: PostAccountsAccountRequestBodyIndividual'Verification'Document'
mkPostAccountsAccountRequestBodyIndividual'Verification'Document' =
  PostAccountsAccountRequestBodyIndividual'Verification'Document' :: Maybe Text
-> Maybe Text
-> PostAccountsAccountRequestBodyIndividual'Verification'Document'
PostAccountsAccountRequestBodyIndividual'Verification'Document'
    { postAccountsAccountRequestBodyIndividual'Verification'Document'Back :: Maybe Text
postAccountsAccountRequestBodyIndividual'Verification'Document'Back = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyIndividual'Verification'Document'Front :: Maybe Text
postAccountsAccountRequestBodyIndividual'Verification'Document'Front = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing
    }

-- | Defines the oneOf schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.metadata.anyOf@ in the specification.
--
-- Set of [key-value pairs](https:\/\/stripe.com\/docs\/api\/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to \`metadata\`.
data PostAccountsAccountRequestBodyMetadata'Variants
  = -- | Represents the JSON value @""@
    PostAccountsAccountRequestBodyMetadata'EmptyString
  | PostAccountsAccountRequestBodyMetadata'Object Data.Aeson.Types.Internal.Object
  deriving (Int
-> PostAccountsAccountRequestBodyMetadata'Variants
-> String
-> String
[PostAccountsAccountRequestBodyMetadata'Variants]
-> String -> String
PostAccountsAccountRequestBodyMetadata'Variants -> String
(Int
 -> PostAccountsAccountRequestBodyMetadata'Variants
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyMetadata'Variants -> String)
-> ([PostAccountsAccountRequestBodyMetadata'Variants]
    -> String -> String)
-> Show PostAccountsAccountRequestBodyMetadata'Variants
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyMetadata'Variants]
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodyMetadata'Variants]
-> String -> String
show :: PostAccountsAccountRequestBodyMetadata'Variants -> String
$cshow :: PostAccountsAccountRequestBodyMetadata'Variants -> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyMetadata'Variants
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyMetadata'Variants
-> String
-> String
GHC.Show.Show, PostAccountsAccountRequestBodyMetadata'Variants
-> PostAccountsAccountRequestBodyMetadata'Variants -> Bool
(PostAccountsAccountRequestBodyMetadata'Variants
 -> PostAccountsAccountRequestBodyMetadata'Variants -> Bool)
-> (PostAccountsAccountRequestBodyMetadata'Variants
    -> PostAccountsAccountRequestBodyMetadata'Variants -> Bool)
-> Eq PostAccountsAccountRequestBodyMetadata'Variants
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyMetadata'Variants
-> PostAccountsAccountRequestBodyMetadata'Variants -> Bool
$c/= :: PostAccountsAccountRequestBodyMetadata'Variants
-> PostAccountsAccountRequestBodyMetadata'Variants -> Bool
== :: PostAccountsAccountRequestBodyMetadata'Variants
-> PostAccountsAccountRequestBodyMetadata'Variants -> Bool
$c== :: PostAccountsAccountRequestBodyMetadata'Variants
-> PostAccountsAccountRequestBodyMetadata'Variants -> Bool
GHC.Classes.Eq)

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyMetadata'Variants where
  toJSON :: PostAccountsAccountRequestBodyMetadata'Variants -> Value
toJSON (PostAccountsAccountRequestBodyMetadata'Object Object
a) = Object -> Value
forall a. ToJSON a => a -> Value
Data.Aeson.Types.ToJSON.toJSON Object
a
  toJSON (PostAccountsAccountRequestBodyMetadata'Variants
PostAccountsAccountRequestBodyMetadata'EmptyString) = Value
""

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyMetadata'Variants where
  parseJSON :: Value -> Parser PostAccountsAccountRequestBodyMetadata'Variants
parseJSON Value
val =
    if
        | Value
val Value -> Value -> Bool
forall a. Eq a => a -> a -> Bool
GHC.Classes.== Value
"" -> PostAccountsAccountRequestBodyMetadata'Variants
-> Parser PostAccountsAccountRequestBodyMetadata'Variants
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure PostAccountsAccountRequestBodyMetadata'Variants
PostAccountsAccountRequestBodyMetadata'EmptyString
        | Bool
GHC.Base.otherwise -> case (Object -> PostAccountsAccountRequestBodyMetadata'Variants
PostAccountsAccountRequestBodyMetadata'Object (Object -> PostAccountsAccountRequestBodyMetadata'Variants)
-> Result Object
-> Result PostAccountsAccountRequestBodyMetadata'Variants
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Data.Functor.<$> Value -> Result Object
forall a. FromJSON a => Value -> Result a
Data.Aeson.Types.FromJSON.fromJSON Value
val) Result PostAccountsAccountRequestBodyMetadata'Variants
-> Result PostAccountsAccountRequestBodyMetadata'Variants
-> Result PostAccountsAccountRequestBodyMetadata'Variants
forall (f :: * -> *) a. Alternative f => f a -> f a -> f a
GHC.Base.<|> String -> Result PostAccountsAccountRequestBodyMetadata'Variants
forall a. String -> Result a
Data.Aeson.Types.Internal.Error String
"No variant matched" of
          Data.Aeson.Types.Internal.Success PostAccountsAccountRequestBodyMetadata'Variants
a -> PostAccountsAccountRequestBodyMetadata'Variants
-> Parser PostAccountsAccountRequestBodyMetadata'Variants
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure PostAccountsAccountRequestBodyMetadata'Variants
a
          Data.Aeson.Types.Internal.Error String
a -> String -> Parser PostAccountsAccountRequestBodyMetadata'Variants
forall (m :: * -> *) a. MonadFail m => String -> m a
Control.Monad.Fail.fail String
a

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.settings@ in the specification.
--
-- Options for customizing how the account functions within Stripe.
data PostAccountsAccountRequestBodySettings' = PostAccountsAccountRequestBodySettings'
  { -- | branding
    PostAccountsAccountRequestBodySettings'
-> Maybe PostAccountsAccountRequestBodySettings'Branding'
postAccountsAccountRequestBodySettings'Branding :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodySettings'Branding'),
    -- | card_issuing
    PostAccountsAccountRequestBodySettings'
-> Maybe PostAccountsAccountRequestBodySettings'CardIssuing'
postAccountsAccountRequestBodySettings'CardIssuing :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodySettings'CardIssuing'),
    -- | card_payments
    PostAccountsAccountRequestBodySettings'
-> Maybe PostAccountsAccountRequestBodySettings'CardPayments'
postAccountsAccountRequestBodySettings'CardPayments :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodySettings'CardPayments'),
    -- | payments
    PostAccountsAccountRequestBodySettings'
-> Maybe PostAccountsAccountRequestBodySettings'Payments'
postAccountsAccountRequestBodySettings'Payments :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodySettings'Payments'),
    -- | payouts
    PostAccountsAccountRequestBodySettings'
-> Maybe PostAccountsAccountRequestBodySettings'Payouts'
postAccountsAccountRequestBodySettings'Payouts :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodySettings'Payouts')
  }
  deriving
    ( Int -> PostAccountsAccountRequestBodySettings' -> String -> String
[PostAccountsAccountRequestBodySettings'] -> String -> String
PostAccountsAccountRequestBodySettings' -> String
(Int
 -> PostAccountsAccountRequestBodySettings' -> String -> String)
-> (PostAccountsAccountRequestBodySettings' -> String)
-> ([PostAccountsAccountRequestBodySettings'] -> String -> String)
-> Show PostAccountsAccountRequestBodySettings'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodySettings'] -> String -> String
$cshowList :: [PostAccountsAccountRequestBodySettings'] -> String -> String
show :: PostAccountsAccountRequestBodySettings' -> String
$cshow :: PostAccountsAccountRequestBodySettings' -> String
showsPrec :: Int -> PostAccountsAccountRequestBodySettings' -> String -> String
$cshowsPrec :: Int -> PostAccountsAccountRequestBodySettings' -> String -> String
GHC.Show.Show,
      PostAccountsAccountRequestBodySettings'
-> PostAccountsAccountRequestBodySettings' -> Bool
(PostAccountsAccountRequestBodySettings'
 -> PostAccountsAccountRequestBodySettings' -> Bool)
-> (PostAccountsAccountRequestBodySettings'
    -> PostAccountsAccountRequestBodySettings' -> Bool)
-> Eq PostAccountsAccountRequestBodySettings'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodySettings'
-> PostAccountsAccountRequestBodySettings' -> Bool
$c/= :: PostAccountsAccountRequestBodySettings'
-> PostAccountsAccountRequestBodySettings' -> Bool
== :: PostAccountsAccountRequestBodySettings'
-> PostAccountsAccountRequestBodySettings' -> Bool
$c== :: PostAccountsAccountRequestBodySettings'
-> PostAccountsAccountRequestBodySettings' -> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodySettings' where
  toJSON :: PostAccountsAccountRequestBodySettings' -> Value
toJSON PostAccountsAccountRequestBodySettings'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"branding" Text
-> Maybe PostAccountsAccountRequestBodySettings'Branding' -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'
-> Maybe PostAccountsAccountRequestBodySettings'Branding'
postAccountsAccountRequestBodySettings'Branding PostAccountsAccountRequestBodySettings'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"card_issuing" Text
-> Maybe PostAccountsAccountRequestBodySettings'CardIssuing'
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'
-> Maybe PostAccountsAccountRequestBodySettings'CardIssuing'
postAccountsAccountRequestBodySettings'CardIssuing PostAccountsAccountRequestBodySettings'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"card_payments" Text
-> Maybe PostAccountsAccountRequestBodySettings'CardPayments'
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'
-> Maybe PostAccountsAccountRequestBodySettings'CardPayments'
postAccountsAccountRequestBodySettings'CardPayments PostAccountsAccountRequestBodySettings'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"payments" Text
-> Maybe PostAccountsAccountRequestBodySettings'Payments' -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'
-> Maybe PostAccountsAccountRequestBodySettings'Payments'
postAccountsAccountRequestBodySettings'Payments PostAccountsAccountRequestBodySettings'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"payouts" Text
-> Maybe PostAccountsAccountRequestBodySettings'Payouts' -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'
-> Maybe PostAccountsAccountRequestBodySettings'Payouts'
postAccountsAccountRequestBodySettings'Payouts PostAccountsAccountRequestBodySettings'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodySettings' -> Encoding
toEncoding PostAccountsAccountRequestBodySettings'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs ((Text
"branding" Text
-> Maybe PostAccountsAccountRequestBodySettings'Branding' -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'
-> Maybe PostAccountsAccountRequestBodySettings'Branding'
postAccountsAccountRequestBodySettings'Branding PostAccountsAccountRequestBodySettings'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"card_issuing" Text
-> Maybe PostAccountsAccountRequestBodySettings'CardIssuing'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'
-> Maybe PostAccountsAccountRequestBodySettings'CardIssuing'
postAccountsAccountRequestBodySettings'CardIssuing PostAccountsAccountRequestBodySettings'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"card_payments" Text
-> Maybe PostAccountsAccountRequestBodySettings'CardPayments'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'
-> Maybe PostAccountsAccountRequestBodySettings'CardPayments'
postAccountsAccountRequestBodySettings'CardPayments PostAccountsAccountRequestBodySettings'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"payments" Text
-> Maybe PostAccountsAccountRequestBodySettings'Payments' -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'
-> Maybe PostAccountsAccountRequestBodySettings'Payments'
postAccountsAccountRequestBodySettings'Payments PostAccountsAccountRequestBodySettings'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> (Text
"payouts" Text
-> Maybe PostAccountsAccountRequestBodySettings'Payouts' -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'
-> Maybe PostAccountsAccountRequestBodySettings'Payouts'
postAccountsAccountRequestBodySettings'Payouts PostAccountsAccountRequestBodySettings'
obj)))))

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodySettings' where
  parseJSON :: Value -> Parser PostAccountsAccountRequestBodySettings'
parseJSON = String
-> (Object -> Parser PostAccountsAccountRequestBodySettings')
-> Value
-> Parser PostAccountsAccountRequestBodySettings'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodySettings'" (\Object
obj -> (((((Maybe PostAccountsAccountRequestBodySettings'Branding'
 -> Maybe PostAccountsAccountRequestBodySettings'CardIssuing'
 -> Maybe PostAccountsAccountRequestBodySettings'CardPayments'
 -> Maybe PostAccountsAccountRequestBodySettings'Payments'
 -> Maybe PostAccountsAccountRequestBodySettings'Payouts'
 -> PostAccountsAccountRequestBodySettings')
-> Parser
     (Maybe PostAccountsAccountRequestBodySettings'Branding'
      -> Maybe PostAccountsAccountRequestBodySettings'CardIssuing'
      -> Maybe PostAccountsAccountRequestBodySettings'CardPayments'
      -> Maybe PostAccountsAccountRequestBodySettings'Payments'
      -> Maybe PostAccountsAccountRequestBodySettings'Payouts'
      -> PostAccountsAccountRequestBodySettings')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe PostAccountsAccountRequestBodySettings'Branding'
-> Maybe PostAccountsAccountRequestBodySettings'CardIssuing'
-> Maybe PostAccountsAccountRequestBodySettings'CardPayments'
-> Maybe PostAccountsAccountRequestBodySettings'Payments'
-> Maybe PostAccountsAccountRequestBodySettings'Payouts'
-> PostAccountsAccountRequestBodySettings'
PostAccountsAccountRequestBodySettings' Parser
  (Maybe PostAccountsAccountRequestBodySettings'Branding'
   -> Maybe PostAccountsAccountRequestBodySettings'CardIssuing'
   -> Maybe PostAccountsAccountRequestBodySettings'CardPayments'
   -> Maybe PostAccountsAccountRequestBodySettings'Payments'
   -> Maybe PostAccountsAccountRequestBodySettings'Payouts'
   -> PostAccountsAccountRequestBodySettings')
-> Parser (Maybe PostAccountsAccountRequestBodySettings'Branding')
-> Parser
     (Maybe PostAccountsAccountRequestBodySettings'CardIssuing'
      -> Maybe PostAccountsAccountRequestBodySettings'CardPayments'
      -> Maybe PostAccountsAccountRequestBodySettings'Payments'
      -> Maybe PostAccountsAccountRequestBodySettings'Payouts'
      -> PostAccountsAccountRequestBodySettings')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser (Maybe PostAccountsAccountRequestBodySettings'Branding')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"branding")) Parser
  (Maybe PostAccountsAccountRequestBodySettings'CardIssuing'
   -> Maybe PostAccountsAccountRequestBodySettings'CardPayments'
   -> Maybe PostAccountsAccountRequestBodySettings'Payments'
   -> Maybe PostAccountsAccountRequestBodySettings'Payouts'
   -> PostAccountsAccountRequestBodySettings')
-> Parser
     (Maybe PostAccountsAccountRequestBodySettings'CardIssuing')
-> Parser
     (Maybe PostAccountsAccountRequestBodySettings'CardPayments'
      -> Maybe PostAccountsAccountRequestBodySettings'Payments'
      -> Maybe PostAccountsAccountRequestBodySettings'Payouts'
      -> PostAccountsAccountRequestBodySettings')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe PostAccountsAccountRequestBodySettings'CardIssuing')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"card_issuing")) Parser
  (Maybe PostAccountsAccountRequestBodySettings'CardPayments'
   -> Maybe PostAccountsAccountRequestBodySettings'Payments'
   -> Maybe PostAccountsAccountRequestBodySettings'Payouts'
   -> PostAccountsAccountRequestBodySettings')
-> Parser
     (Maybe PostAccountsAccountRequestBodySettings'CardPayments')
-> Parser
     (Maybe PostAccountsAccountRequestBodySettings'Payments'
      -> Maybe PostAccountsAccountRequestBodySettings'Payouts'
      -> PostAccountsAccountRequestBodySettings')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe PostAccountsAccountRequestBodySettings'CardPayments')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"card_payments")) Parser
  (Maybe PostAccountsAccountRequestBodySettings'Payments'
   -> Maybe PostAccountsAccountRequestBodySettings'Payouts'
   -> PostAccountsAccountRequestBodySettings')
-> Parser (Maybe PostAccountsAccountRequestBodySettings'Payments')
-> Parser
     (Maybe PostAccountsAccountRequestBodySettings'Payouts'
      -> PostAccountsAccountRequestBodySettings')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser (Maybe PostAccountsAccountRequestBodySettings'Payments')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"payments")) Parser
  (Maybe PostAccountsAccountRequestBodySettings'Payouts'
   -> PostAccountsAccountRequestBodySettings')
-> Parser (Maybe PostAccountsAccountRequestBodySettings'Payouts')
-> Parser PostAccountsAccountRequestBodySettings'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser (Maybe PostAccountsAccountRequestBodySettings'Payouts')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"payouts"))

-- | Create a new 'PostAccountsAccountRequestBodySettings'' with all required fields.
mkPostAccountsAccountRequestBodySettings' :: PostAccountsAccountRequestBodySettings'
mkPostAccountsAccountRequestBodySettings' :: PostAccountsAccountRequestBodySettings'
mkPostAccountsAccountRequestBodySettings' =
  PostAccountsAccountRequestBodySettings' :: Maybe PostAccountsAccountRequestBodySettings'Branding'
-> Maybe PostAccountsAccountRequestBodySettings'CardIssuing'
-> Maybe PostAccountsAccountRequestBodySettings'CardPayments'
-> Maybe PostAccountsAccountRequestBodySettings'Payments'
-> Maybe PostAccountsAccountRequestBodySettings'Payouts'
-> PostAccountsAccountRequestBodySettings'
PostAccountsAccountRequestBodySettings'
    { postAccountsAccountRequestBodySettings'Branding :: Maybe PostAccountsAccountRequestBodySettings'Branding'
postAccountsAccountRequestBodySettings'Branding = Maybe PostAccountsAccountRequestBodySettings'Branding'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodySettings'CardIssuing :: Maybe PostAccountsAccountRequestBodySettings'CardIssuing'
postAccountsAccountRequestBodySettings'CardIssuing = Maybe PostAccountsAccountRequestBodySettings'CardIssuing'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodySettings'CardPayments :: Maybe PostAccountsAccountRequestBodySettings'CardPayments'
postAccountsAccountRequestBodySettings'CardPayments = Maybe PostAccountsAccountRequestBodySettings'CardPayments'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodySettings'Payments :: Maybe PostAccountsAccountRequestBodySettings'Payments'
postAccountsAccountRequestBodySettings'Payments = Maybe PostAccountsAccountRequestBodySettings'Payments'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodySettings'Payouts :: Maybe PostAccountsAccountRequestBodySettings'Payouts'
postAccountsAccountRequestBodySettings'Payouts = Maybe PostAccountsAccountRequestBodySettings'Payouts'
forall a. Maybe a
GHC.Maybe.Nothing
    }

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.settings.properties.branding@ in the specification.
data PostAccountsAccountRequestBodySettings'Branding' = PostAccountsAccountRequestBodySettings'Branding'
  { -- | icon
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodySettings'Branding' -> Maybe Text
postAccountsAccountRequestBodySettings'Branding'Icon :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | logo
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
     :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | primary_color
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodySettings'Branding' -> Maybe Text
postAccountsAccountRequestBodySettings'Branding'PrimaryColor :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | secondary_color
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodySettings'Branding' -> Maybe Text
postAccountsAccountRequestBodySettings'Branding'SecondaryColor :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodySettings'Branding'
-> String
-> String
[PostAccountsAccountRequestBodySettings'Branding']
-> String -> String
PostAccountsAccountRequestBodySettings'Branding' -> String
(Int
 -> PostAccountsAccountRequestBodySettings'Branding'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodySettings'Branding' -> String)
-> ([PostAccountsAccountRequestBodySettings'Branding']
    -> String -> String)
-> Show PostAccountsAccountRequestBodySettings'Branding'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodySettings'Branding']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodySettings'Branding']
-> String -> String
show :: PostAccountsAccountRequestBodySettings'Branding' -> String
$cshow :: PostAccountsAccountRequestBodySettings'Branding' -> String
showsPrec :: Int
-> PostAccountsAccountRequestBodySettings'Branding'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodySettings'Branding'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodySettings'Branding'
-> PostAccountsAccountRequestBodySettings'Branding' -> Bool
(PostAccountsAccountRequestBodySettings'Branding'
 -> PostAccountsAccountRequestBodySettings'Branding' -> Bool)
-> (PostAccountsAccountRequestBodySettings'Branding'
    -> PostAccountsAccountRequestBodySettings'Branding' -> Bool)
-> Eq PostAccountsAccountRequestBodySettings'Branding'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodySettings'Branding'
-> PostAccountsAccountRequestBodySettings'Branding' -> Bool
$c/= :: PostAccountsAccountRequestBodySettings'Branding'
-> PostAccountsAccountRequestBodySettings'Branding' -> Bool
== :: PostAccountsAccountRequestBodySettings'Branding'
-> PostAccountsAccountRequestBodySettings'Branding' -> Bool
$c== :: PostAccountsAccountRequestBodySettings'Branding'
-> PostAccountsAccountRequestBodySettings'Branding' -> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodySettings'Branding' where
  toJSON :: PostAccountsAccountRequestBodySettings'Branding' -> Value
toJSON PostAccountsAccountRequestBodySettings'Branding'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"icon" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'Branding' -> Maybe Text
postAccountsAccountRequestBodySettings'Branding'Icon PostAccountsAccountRequestBodySettings'Branding'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"logo" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'Branding' -> Maybe Text
postAccountsAccountRequestBodySettings'Branding'Logo PostAccountsAccountRequestBodySettings'Branding'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"primary_color" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'Branding' -> Maybe Text
postAccountsAccountRequestBodySettings'Branding'PrimaryColor PostAccountsAccountRequestBodySettings'Branding'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"secondary_color" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'Branding' -> Maybe Text
postAccountsAccountRequestBodySettings'Branding'SecondaryColor PostAccountsAccountRequestBodySettings'Branding'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodySettings'Branding' -> Encoding
toEncoding PostAccountsAccountRequestBodySettings'Branding'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs ((Text
"icon" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'Branding' -> Maybe Text
postAccountsAccountRequestBodySettings'Branding'Icon PostAccountsAccountRequestBodySettings'Branding'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"logo" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'Branding' -> Maybe Text
postAccountsAccountRequestBodySettings'Branding'Logo PostAccountsAccountRequestBodySettings'Branding'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"primary_color" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'Branding' -> Maybe Text
postAccountsAccountRequestBodySettings'Branding'PrimaryColor PostAccountsAccountRequestBodySettings'Branding'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> (Text
"secondary_color" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'Branding' -> Maybe Text
postAccountsAccountRequestBodySettings'Branding'SecondaryColor PostAccountsAccountRequestBodySettings'Branding'
obj))))

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodySettings'Branding' where
  parseJSON :: Value -> Parser PostAccountsAccountRequestBodySettings'Branding'
parseJSON = String
-> (Object
    -> Parser PostAccountsAccountRequestBodySettings'Branding')
-> Value
-> Parser PostAccountsAccountRequestBodySettings'Branding'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodySettings'Branding'" (\Object
obj -> ((((Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> PostAccountsAccountRequestBodySettings'Branding')
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodySettings'Branding')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> PostAccountsAccountRequestBodySettings'Branding'
PostAccountsAccountRequestBodySettings'Branding' Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodySettings'Branding')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodySettings'Branding')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"icon")) Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodySettings'Branding')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text -> PostAccountsAccountRequestBodySettings'Branding')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"logo")) Parser
  (Maybe Text
   -> Maybe Text -> PostAccountsAccountRequestBodySettings'Branding')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text -> PostAccountsAccountRequestBodySettings'Branding')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"primary_color")) Parser
  (Maybe Text -> PostAccountsAccountRequestBodySettings'Branding')
-> Parser (Maybe Text)
-> Parser PostAccountsAccountRequestBodySettings'Branding'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"secondary_color"))

-- | Create a new 'PostAccountsAccountRequestBodySettings'Branding'' with all required fields.
mkPostAccountsAccountRequestBodySettings'Branding' :: PostAccountsAccountRequestBodySettings'Branding'
mkPostAccountsAccountRequestBodySettings'Branding' :: PostAccountsAccountRequestBodySettings'Branding'
mkPostAccountsAccountRequestBodySettings'Branding' =
  PostAccountsAccountRequestBodySettings'Branding' :: Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> PostAccountsAccountRequestBodySettings'Branding'
PostAccountsAccountRequestBodySettings'Branding'
    { postAccountsAccountRequestBodySettings'Branding'Icon :: Maybe Text
postAccountsAccountRequestBodySettings'Branding'Icon = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodySettings'Branding'Logo :: Maybe Text
postAccountsAccountRequestBodySettings'Branding'Logo = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodySettings'Branding'PrimaryColor :: Maybe Text
postAccountsAccountRequestBodySettings'Branding'PrimaryColor = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodySettings'Branding'SecondaryColor :: Maybe Text
postAccountsAccountRequestBodySettings'Branding'SecondaryColor = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing
    }

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.settings.properties.card_issuing@ in the specification.
data PostAccountsAccountRequestBodySettings'CardIssuing' = PostAccountsAccountRequestBodySettings'CardIssuing'
  { -- | tos_acceptance
    PostAccountsAccountRequestBodySettings'CardIssuing'
-> Maybe
     PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
postAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance')
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodySettings'CardIssuing'
-> String
-> String
[PostAccountsAccountRequestBodySettings'CardIssuing']
-> String -> String
PostAccountsAccountRequestBodySettings'CardIssuing' -> String
(Int
 -> PostAccountsAccountRequestBodySettings'CardIssuing'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodySettings'CardIssuing' -> String)
-> ([PostAccountsAccountRequestBodySettings'CardIssuing']
    -> String -> String)
-> Show PostAccountsAccountRequestBodySettings'CardIssuing'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodySettings'CardIssuing']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodySettings'CardIssuing']
-> String -> String
show :: PostAccountsAccountRequestBodySettings'CardIssuing' -> String
$cshow :: PostAccountsAccountRequestBodySettings'CardIssuing' -> String
showsPrec :: Int
-> PostAccountsAccountRequestBodySettings'CardIssuing'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodySettings'CardIssuing'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodySettings'CardIssuing'
-> PostAccountsAccountRequestBodySettings'CardIssuing' -> Bool
(PostAccountsAccountRequestBodySettings'CardIssuing'
 -> PostAccountsAccountRequestBodySettings'CardIssuing' -> Bool)
-> (PostAccountsAccountRequestBodySettings'CardIssuing'
    -> PostAccountsAccountRequestBodySettings'CardIssuing' -> Bool)
-> Eq PostAccountsAccountRequestBodySettings'CardIssuing'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodySettings'CardIssuing'
-> PostAccountsAccountRequestBodySettings'CardIssuing' -> Bool
$c/= :: PostAccountsAccountRequestBodySettings'CardIssuing'
-> PostAccountsAccountRequestBodySettings'CardIssuing' -> Bool
== :: PostAccountsAccountRequestBodySettings'CardIssuing'
-> PostAccountsAccountRequestBodySettings'CardIssuing' -> Bool
$c== :: PostAccountsAccountRequestBodySettings'CardIssuing'
-> PostAccountsAccountRequestBodySettings'CardIssuing' -> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodySettings'CardIssuing' where
  toJSON :: PostAccountsAccountRequestBodySettings'CardIssuing' -> Value
toJSON PostAccountsAccountRequestBodySettings'CardIssuing'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"tos_acceptance" Text
-> Maybe
     PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'CardIssuing'
-> Maybe
     PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
postAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance PostAccountsAccountRequestBodySettings'CardIssuing'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodySettings'CardIssuing' -> Encoding
toEncoding PostAccountsAccountRequestBodySettings'CardIssuing'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs (Text
"tos_acceptance" Text
-> Maybe
     PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'CardIssuing'
-> Maybe
     PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
postAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance PostAccountsAccountRequestBodySettings'CardIssuing'
obj)

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodySettings'CardIssuing' where
  parseJSON :: Value -> Parser PostAccountsAccountRequestBodySettings'CardIssuing'
parseJSON = String
-> (Object
    -> Parser PostAccountsAccountRequestBodySettings'CardIssuing')
-> Value
-> Parser PostAccountsAccountRequestBodySettings'CardIssuing'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodySettings'CardIssuing'" (\Object
obj -> (Maybe
   PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
 -> PostAccountsAccountRequestBodySettings'CardIssuing')
-> Parser
     (Maybe
        PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
      -> PostAccountsAccountRequestBodySettings'CardIssuing')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe
  PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
-> PostAccountsAccountRequestBodySettings'CardIssuing'
PostAccountsAccountRequestBodySettings'CardIssuing' Parser
  (Maybe
     PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
   -> PostAccountsAccountRequestBodySettings'CardIssuing')
-> Parser
     (Maybe
        PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance')
-> Parser PostAccountsAccountRequestBodySettings'CardIssuing'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe
        PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"tos_acceptance"))

-- | Create a new 'PostAccountsAccountRequestBodySettings'CardIssuing'' with all required fields.
mkPostAccountsAccountRequestBodySettings'CardIssuing' :: PostAccountsAccountRequestBodySettings'CardIssuing'
mkPostAccountsAccountRequestBodySettings'CardIssuing' :: PostAccountsAccountRequestBodySettings'CardIssuing'
mkPostAccountsAccountRequestBodySettings'CardIssuing' = PostAccountsAccountRequestBodySettings'CardIssuing' :: Maybe
  PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
-> PostAccountsAccountRequestBodySettings'CardIssuing'
PostAccountsAccountRequestBodySettings'CardIssuing' {postAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance :: Maybe
  PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
postAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance = Maybe
  PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
forall a. Maybe a
GHC.Maybe.Nothing}

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.settings.properties.card_issuing.properties.tos_acceptance@ in the specification.
data PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance' = PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
  { -- | date
    PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
-> Maybe Int
postAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'Date :: (GHC.Maybe.Maybe GHC.Types.Int),
    -- | ip
    PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
-> Maybe Text
postAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'Ip :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | user_agent
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
-> Maybe Text
postAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'UserAgent :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
-> String
-> String
[PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance']
-> String -> String
PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
-> String
(Int
 -> PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
    -> String)
-> ([PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance']
    -> String -> String)
-> Show
     PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance']
-> String -> String
show :: PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
-> String
$cshow :: PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
-> String
showsPrec :: Int
-> PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
-> PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
-> Bool
(PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
 -> PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
 -> Bool)
-> (PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
    -> PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
    -> Bool)
-> Eq
     PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
-> PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
-> Bool
$c/= :: PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
-> PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
-> Bool
== :: PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
-> PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
-> Bool
$c== :: PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
-> PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
-> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance' where
  toJSON :: PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
-> Value
toJSON PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"date" Text -> Maybe Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
-> Maybe Int
postAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'Date PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"ip" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
-> Maybe Text
postAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'Ip PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"user_agent" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
-> Maybe Text
postAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'UserAgent PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
-> Encoding
toEncoding PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs ((Text
"date" Text -> Maybe Int -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
-> Maybe Int
postAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'Date PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"ip" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
-> Maybe Text
postAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'Ip PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> (Text
"user_agent" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
-> Maybe Text
postAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'UserAgent PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
obj)))

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance' where
  parseJSON :: Value
-> Parser
     PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
parseJSON = String
-> (Object
    -> Parser
         PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance')
-> Value
-> Parser
     PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'" (\Object
obj -> (((Maybe Int
 -> Maybe Text
 -> Maybe Text
 -> PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance')
-> Parser
     (Maybe Int
      -> Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe Int
-> Maybe Text
-> Maybe Text
-> PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance' Parser
  (Maybe Int
   -> Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance')
-> Parser (Maybe Int)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Int)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"date")) Parser
  (Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"ip")) Parser
  (Maybe Text
   -> PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance')
-> Parser (Maybe Text)
-> Parser
     PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"user_agent"))

-- | Create a new 'PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'' with all required fields.
mkPostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance' :: PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
mkPostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance' :: PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
mkPostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance' =
  PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance' :: Maybe Int
-> Maybe Text
-> Maybe Text
-> PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
PostAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'
    { postAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'Date :: Maybe Int
postAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'Date = Maybe Int
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'Ip :: Maybe Text
postAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'Ip = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'UserAgent :: Maybe Text
postAccountsAccountRequestBodySettings'CardIssuing'TosAcceptance'UserAgent = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing
    }

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.settings.properties.card_payments@ in the specification.
data PostAccountsAccountRequestBodySettings'CardPayments' = PostAccountsAccountRequestBodySettings'CardPayments'
  { -- | decline_on
    PostAccountsAccountRequestBodySettings'CardPayments'
-> Maybe
     PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
postAccountsAccountRequestBodySettings'CardPayments'DeclineOn :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'),
    -- | statement_descriptor_prefix
    --
    -- Constraints:
    --
    -- * Maximum length of 10
    PostAccountsAccountRequestBodySettings'CardPayments' -> Maybe Text
postAccountsAccountRequestBodySettings'CardPayments'StatementDescriptorPrefix :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodySettings'CardPayments'
-> String
-> String
[PostAccountsAccountRequestBodySettings'CardPayments']
-> String -> String
PostAccountsAccountRequestBodySettings'CardPayments' -> String
(Int
 -> PostAccountsAccountRequestBodySettings'CardPayments'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodySettings'CardPayments' -> String)
-> ([PostAccountsAccountRequestBodySettings'CardPayments']
    -> String -> String)
-> Show PostAccountsAccountRequestBodySettings'CardPayments'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodySettings'CardPayments']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodySettings'CardPayments']
-> String -> String
show :: PostAccountsAccountRequestBodySettings'CardPayments' -> String
$cshow :: PostAccountsAccountRequestBodySettings'CardPayments' -> String
showsPrec :: Int
-> PostAccountsAccountRequestBodySettings'CardPayments'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodySettings'CardPayments'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodySettings'CardPayments'
-> PostAccountsAccountRequestBodySettings'CardPayments' -> Bool
(PostAccountsAccountRequestBodySettings'CardPayments'
 -> PostAccountsAccountRequestBodySettings'CardPayments' -> Bool)
-> (PostAccountsAccountRequestBodySettings'CardPayments'
    -> PostAccountsAccountRequestBodySettings'CardPayments' -> Bool)
-> Eq PostAccountsAccountRequestBodySettings'CardPayments'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodySettings'CardPayments'
-> PostAccountsAccountRequestBodySettings'CardPayments' -> Bool
$c/= :: PostAccountsAccountRequestBodySettings'CardPayments'
-> PostAccountsAccountRequestBodySettings'CardPayments' -> Bool
== :: PostAccountsAccountRequestBodySettings'CardPayments'
-> PostAccountsAccountRequestBodySettings'CardPayments' -> Bool
$c== :: PostAccountsAccountRequestBodySettings'CardPayments'
-> PostAccountsAccountRequestBodySettings'CardPayments' -> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodySettings'CardPayments' where
  toJSON :: PostAccountsAccountRequestBodySettings'CardPayments' -> Value
toJSON PostAccountsAccountRequestBodySettings'CardPayments'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"decline_on" Text
-> Maybe
     PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'CardPayments'
-> Maybe
     PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
postAccountsAccountRequestBodySettings'CardPayments'DeclineOn PostAccountsAccountRequestBodySettings'CardPayments'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"statement_descriptor_prefix" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'CardPayments' -> Maybe Text
postAccountsAccountRequestBodySettings'CardPayments'StatementDescriptorPrefix PostAccountsAccountRequestBodySettings'CardPayments'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodySettings'CardPayments' -> Encoding
toEncoding PostAccountsAccountRequestBodySettings'CardPayments'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs ((Text
"decline_on" Text
-> Maybe
     PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'CardPayments'
-> Maybe
     PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
postAccountsAccountRequestBodySettings'CardPayments'DeclineOn PostAccountsAccountRequestBodySettings'CardPayments'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> (Text
"statement_descriptor_prefix" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'CardPayments' -> Maybe Text
postAccountsAccountRequestBodySettings'CardPayments'StatementDescriptorPrefix PostAccountsAccountRequestBodySettings'CardPayments'
obj))

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodySettings'CardPayments' where
  parseJSON :: Value
-> Parser PostAccountsAccountRequestBodySettings'CardPayments'
parseJSON = String
-> (Object
    -> Parser PostAccountsAccountRequestBodySettings'CardPayments')
-> Value
-> Parser PostAccountsAccountRequestBodySettings'CardPayments'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodySettings'CardPayments'" (\Object
obj -> ((Maybe
   PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
 -> Maybe Text
 -> PostAccountsAccountRequestBodySettings'CardPayments')
-> Parser
     (Maybe
        PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
      -> Maybe Text
      -> PostAccountsAccountRequestBodySettings'CardPayments')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe
  PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
-> Maybe Text
-> PostAccountsAccountRequestBodySettings'CardPayments'
PostAccountsAccountRequestBodySettings'CardPayments' Parser
  (Maybe
     PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
   -> Maybe Text
   -> PostAccountsAccountRequestBodySettings'CardPayments')
-> Parser
     (Maybe
        PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn')
-> Parser
     (Maybe Text
      -> PostAccountsAccountRequestBodySettings'CardPayments')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe
        PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"decline_on")) Parser
  (Maybe Text
   -> PostAccountsAccountRequestBodySettings'CardPayments')
-> Parser (Maybe Text)
-> Parser PostAccountsAccountRequestBodySettings'CardPayments'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"statement_descriptor_prefix"))

-- | Create a new 'PostAccountsAccountRequestBodySettings'CardPayments'' with all required fields.
mkPostAccountsAccountRequestBodySettings'CardPayments' :: PostAccountsAccountRequestBodySettings'CardPayments'
mkPostAccountsAccountRequestBodySettings'CardPayments' :: PostAccountsAccountRequestBodySettings'CardPayments'
mkPostAccountsAccountRequestBodySettings'CardPayments' =
  PostAccountsAccountRequestBodySettings'CardPayments' :: Maybe
  PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
-> Maybe Text
-> PostAccountsAccountRequestBodySettings'CardPayments'
PostAccountsAccountRequestBodySettings'CardPayments'
    { postAccountsAccountRequestBodySettings'CardPayments'DeclineOn :: Maybe
  PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
postAccountsAccountRequestBodySettings'CardPayments'DeclineOn = Maybe
  PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodySettings'CardPayments'StatementDescriptorPrefix :: Maybe Text
postAccountsAccountRequestBodySettings'CardPayments'StatementDescriptorPrefix = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing
    }

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.settings.properties.card_payments.properties.decline_on@ in the specification.
data PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn' = PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
  { -- | avs_failure
    PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
-> Maybe Bool
postAccountsAccountRequestBodySettings'CardPayments'DeclineOn'AvsFailure :: (GHC.Maybe.Maybe GHC.Types.Bool),
    -- | cvc_failure
    PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
-> Maybe Bool
postAccountsAccountRequestBodySettings'CardPayments'DeclineOn'CvcFailure :: (GHC.Maybe.Maybe GHC.Types.Bool)
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
-> String
-> String
[PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn']
-> String -> String
PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
-> String
(Int
 -> PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
    -> String)
-> ([PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn']
    -> String -> String)
-> Show
     PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn']
-> String -> String
show :: PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
-> String
$cshow :: PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
-> String
showsPrec :: Int
-> PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
-> PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
-> Bool
(PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
 -> PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
 -> Bool)
-> (PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
    -> PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
    -> Bool)
-> Eq
     PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
-> PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
-> Bool
$c/= :: PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
-> PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
-> Bool
== :: PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
-> PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
-> Bool
$c== :: PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
-> PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
-> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn' where
  toJSON :: PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
-> Value
toJSON PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"avs_failure" Text -> Maybe Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
-> Maybe Bool
postAccountsAccountRequestBodySettings'CardPayments'DeclineOn'AvsFailure PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"cvc_failure" Text -> Maybe Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
-> Maybe Bool
postAccountsAccountRequestBodySettings'CardPayments'DeclineOn'CvcFailure PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
-> Encoding
toEncoding PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs ((Text
"avs_failure" Text -> Maybe Bool -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
-> Maybe Bool
postAccountsAccountRequestBodySettings'CardPayments'DeclineOn'AvsFailure PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> (Text
"cvc_failure" Text -> Maybe Bool -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
-> Maybe Bool
postAccountsAccountRequestBodySettings'CardPayments'DeclineOn'CvcFailure PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
obj))

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn' where
  parseJSON :: Value
-> Parser
     PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
parseJSON = String
-> (Object
    -> Parser
         PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn')
-> Value
-> Parser
     PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'" (\Object
obj -> ((Maybe Bool
 -> Maybe Bool
 -> PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn')
-> Parser
     (Maybe Bool
      -> Maybe Bool
      -> PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe Bool
-> Maybe Bool
-> PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn' Parser
  (Maybe Bool
   -> Maybe Bool
   -> PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn')
-> Parser (Maybe Bool)
-> Parser
     (Maybe Bool
      -> PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"avs_failure")) Parser
  (Maybe Bool
   -> PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn')
-> Parser (Maybe Bool)
-> Parser
     PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"cvc_failure"))

-- | Create a new 'PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'' with all required fields.
mkPostAccountsAccountRequestBodySettings'CardPayments'DeclineOn' :: PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
mkPostAccountsAccountRequestBodySettings'CardPayments'DeclineOn' :: PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
mkPostAccountsAccountRequestBodySettings'CardPayments'DeclineOn' =
  PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn' :: Maybe Bool
-> Maybe Bool
-> PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
PostAccountsAccountRequestBodySettings'CardPayments'DeclineOn'
    { postAccountsAccountRequestBodySettings'CardPayments'DeclineOn'AvsFailure :: Maybe Bool
postAccountsAccountRequestBodySettings'CardPayments'DeclineOn'AvsFailure = Maybe Bool
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodySettings'CardPayments'DeclineOn'CvcFailure :: Maybe Bool
postAccountsAccountRequestBodySettings'CardPayments'DeclineOn'CvcFailure = Maybe Bool
forall a. Maybe a
GHC.Maybe.Nothing
    }

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.settings.properties.payments@ in the specification.
data PostAccountsAccountRequestBodySettings'Payments' = PostAccountsAccountRequestBodySettings'Payments'
  { -- | statement_descriptor
    --
    -- Constraints:
    --
    -- * Maximum length of 22
    PostAccountsAccountRequestBodySettings'Payments' -> Maybe Text
postAccountsAccountRequestBodySettings'Payments'StatementDescriptor :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | statement_descriptor_kana
    --
    -- Constraints:
    --
    -- * Maximum length of 22
    PostAccountsAccountRequestBodySettings'Payments' -> Maybe Text
postAccountsAccountRequestBodySettings'Payments'StatementDescriptorKana :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | statement_descriptor_kanji
    --
    -- Constraints:
    --
    -- * Maximum length of 22
    PostAccountsAccountRequestBodySettings'Payments' -> Maybe Text
postAccountsAccountRequestBodySettings'Payments'StatementDescriptorKanji :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodySettings'Payments'
-> String
-> String
[PostAccountsAccountRequestBodySettings'Payments']
-> String -> String
PostAccountsAccountRequestBodySettings'Payments' -> String
(Int
 -> PostAccountsAccountRequestBodySettings'Payments'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodySettings'Payments' -> String)
-> ([PostAccountsAccountRequestBodySettings'Payments']
    -> String -> String)
-> Show PostAccountsAccountRequestBodySettings'Payments'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodySettings'Payments']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodySettings'Payments']
-> String -> String
show :: PostAccountsAccountRequestBodySettings'Payments' -> String
$cshow :: PostAccountsAccountRequestBodySettings'Payments' -> String
showsPrec :: Int
-> PostAccountsAccountRequestBodySettings'Payments'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodySettings'Payments'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodySettings'Payments'
-> PostAccountsAccountRequestBodySettings'Payments' -> Bool
(PostAccountsAccountRequestBodySettings'Payments'
 -> PostAccountsAccountRequestBodySettings'Payments' -> Bool)
-> (PostAccountsAccountRequestBodySettings'Payments'
    -> PostAccountsAccountRequestBodySettings'Payments' -> Bool)
-> Eq PostAccountsAccountRequestBodySettings'Payments'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodySettings'Payments'
-> PostAccountsAccountRequestBodySettings'Payments' -> Bool
$c/= :: PostAccountsAccountRequestBodySettings'Payments'
-> PostAccountsAccountRequestBodySettings'Payments' -> Bool
== :: PostAccountsAccountRequestBodySettings'Payments'
-> PostAccountsAccountRequestBodySettings'Payments' -> Bool
$c== :: PostAccountsAccountRequestBodySettings'Payments'
-> PostAccountsAccountRequestBodySettings'Payments' -> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodySettings'Payments' where
  toJSON :: PostAccountsAccountRequestBodySettings'Payments' -> Value
toJSON PostAccountsAccountRequestBodySettings'Payments'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"statement_descriptor" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'Payments' -> Maybe Text
postAccountsAccountRequestBodySettings'Payments'StatementDescriptor PostAccountsAccountRequestBodySettings'Payments'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"statement_descriptor_kana" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'Payments' -> Maybe Text
postAccountsAccountRequestBodySettings'Payments'StatementDescriptorKana PostAccountsAccountRequestBodySettings'Payments'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"statement_descriptor_kanji" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'Payments' -> Maybe Text
postAccountsAccountRequestBodySettings'Payments'StatementDescriptorKanji PostAccountsAccountRequestBodySettings'Payments'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodySettings'Payments' -> Encoding
toEncoding PostAccountsAccountRequestBodySettings'Payments'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs ((Text
"statement_descriptor" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'Payments' -> Maybe Text
postAccountsAccountRequestBodySettings'Payments'StatementDescriptor PostAccountsAccountRequestBodySettings'Payments'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"statement_descriptor_kana" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'Payments' -> Maybe Text
postAccountsAccountRequestBodySettings'Payments'StatementDescriptorKana PostAccountsAccountRequestBodySettings'Payments'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> (Text
"statement_descriptor_kanji" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'Payments' -> Maybe Text
postAccountsAccountRequestBodySettings'Payments'StatementDescriptorKanji PostAccountsAccountRequestBodySettings'Payments'
obj)))

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodySettings'Payments' where
  parseJSON :: Value -> Parser PostAccountsAccountRequestBodySettings'Payments'
parseJSON = String
-> (Object
    -> Parser PostAccountsAccountRequestBodySettings'Payments')
-> Value
-> Parser PostAccountsAccountRequestBodySettings'Payments'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodySettings'Payments'" (\Object
obj -> (((Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> PostAccountsAccountRequestBodySettings'Payments')
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodySettings'Payments')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe Text
-> Maybe Text
-> Maybe Text
-> PostAccountsAccountRequestBodySettings'Payments'
PostAccountsAccountRequestBodySettings'Payments' Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodySettings'Payments')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text -> PostAccountsAccountRequestBodySettings'Payments')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"statement_descriptor")) Parser
  (Maybe Text
   -> Maybe Text -> PostAccountsAccountRequestBodySettings'Payments')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text -> PostAccountsAccountRequestBodySettings'Payments')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"statement_descriptor_kana")) Parser
  (Maybe Text -> PostAccountsAccountRequestBodySettings'Payments')
-> Parser (Maybe Text)
-> Parser PostAccountsAccountRequestBodySettings'Payments'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"statement_descriptor_kanji"))

-- | Create a new 'PostAccountsAccountRequestBodySettings'Payments'' with all required fields.
mkPostAccountsAccountRequestBodySettings'Payments' :: PostAccountsAccountRequestBodySettings'Payments'
mkPostAccountsAccountRequestBodySettings'Payments' :: PostAccountsAccountRequestBodySettings'Payments'
mkPostAccountsAccountRequestBodySettings'Payments' =
  PostAccountsAccountRequestBodySettings'Payments' :: Maybe Text
-> Maybe Text
-> Maybe Text
-> PostAccountsAccountRequestBodySettings'Payments'
PostAccountsAccountRequestBodySettings'Payments'
    { postAccountsAccountRequestBodySettings'Payments'StatementDescriptor :: Maybe Text
postAccountsAccountRequestBodySettings'Payments'StatementDescriptor = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodySettings'Payments'StatementDescriptorKana :: Maybe Text
postAccountsAccountRequestBodySettings'Payments'StatementDescriptorKana = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodySettings'Payments'StatementDescriptorKanji :: Maybe Text
postAccountsAccountRequestBodySettings'Payments'StatementDescriptorKanji = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing
    }

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.settings.properties.payouts@ in the specification.
data PostAccountsAccountRequestBodySettings'Payouts' = PostAccountsAccountRequestBodySettings'Payouts'
  { -- | debit_negative_balances
    PostAccountsAccountRequestBodySettings'Payouts' -> Maybe Bool
postAccountsAccountRequestBodySettings'Payouts'DebitNegativeBalances :: (GHC.Maybe.Maybe GHC.Types.Bool),
    -- | schedule
    PostAccountsAccountRequestBodySettings'Payouts'
-> Maybe PostAccountsAccountRequestBodySettings'Payouts'Schedule'
postAccountsAccountRequestBodySettings'Payouts'Schedule :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodySettings'Payouts'Schedule'),
    -- | statement_descriptor
    --
    -- Constraints:
    --
    -- * Maximum length of 22
    PostAccountsAccountRequestBodySettings'Payouts' -> Maybe Text
postAccountsAccountRequestBodySettings'Payouts'StatementDescriptor :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodySettings'Payouts'
-> String
-> String
[PostAccountsAccountRequestBodySettings'Payouts']
-> String -> String
PostAccountsAccountRequestBodySettings'Payouts' -> String
(Int
 -> PostAccountsAccountRequestBodySettings'Payouts'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodySettings'Payouts' -> String)
-> ([PostAccountsAccountRequestBodySettings'Payouts']
    -> String -> String)
-> Show PostAccountsAccountRequestBodySettings'Payouts'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodySettings'Payouts']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodySettings'Payouts']
-> String -> String
show :: PostAccountsAccountRequestBodySettings'Payouts' -> String
$cshow :: PostAccountsAccountRequestBodySettings'Payouts' -> String
showsPrec :: Int
-> PostAccountsAccountRequestBodySettings'Payouts'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodySettings'Payouts'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodySettings'Payouts'
-> PostAccountsAccountRequestBodySettings'Payouts' -> Bool
(PostAccountsAccountRequestBodySettings'Payouts'
 -> PostAccountsAccountRequestBodySettings'Payouts' -> Bool)
-> (PostAccountsAccountRequestBodySettings'Payouts'
    -> PostAccountsAccountRequestBodySettings'Payouts' -> Bool)
-> Eq PostAccountsAccountRequestBodySettings'Payouts'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodySettings'Payouts'
-> PostAccountsAccountRequestBodySettings'Payouts' -> Bool
$c/= :: PostAccountsAccountRequestBodySettings'Payouts'
-> PostAccountsAccountRequestBodySettings'Payouts' -> Bool
== :: PostAccountsAccountRequestBodySettings'Payouts'
-> PostAccountsAccountRequestBodySettings'Payouts' -> Bool
$c== :: PostAccountsAccountRequestBodySettings'Payouts'
-> PostAccountsAccountRequestBodySettings'Payouts' -> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodySettings'Payouts' where
  toJSON :: PostAccountsAccountRequestBodySettings'Payouts' -> Value
toJSON PostAccountsAccountRequestBodySettings'Payouts'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"debit_negative_balances" Text -> Maybe Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'Payouts' -> Maybe Bool
postAccountsAccountRequestBodySettings'Payouts'DebitNegativeBalances PostAccountsAccountRequestBodySettings'Payouts'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"schedule" Text
-> Maybe PostAccountsAccountRequestBodySettings'Payouts'Schedule'
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'Payouts'
-> Maybe PostAccountsAccountRequestBodySettings'Payouts'Schedule'
postAccountsAccountRequestBodySettings'Payouts'Schedule PostAccountsAccountRequestBodySettings'Payouts'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"statement_descriptor" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'Payouts' -> Maybe Text
postAccountsAccountRequestBodySettings'Payouts'StatementDescriptor PostAccountsAccountRequestBodySettings'Payouts'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodySettings'Payouts' -> Encoding
toEncoding PostAccountsAccountRequestBodySettings'Payouts'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs ((Text
"debit_negative_balances" Text -> Maybe Bool -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'Payouts' -> Maybe Bool
postAccountsAccountRequestBodySettings'Payouts'DebitNegativeBalances PostAccountsAccountRequestBodySettings'Payouts'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"schedule" Text
-> Maybe PostAccountsAccountRequestBodySettings'Payouts'Schedule'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'Payouts'
-> Maybe PostAccountsAccountRequestBodySettings'Payouts'Schedule'
postAccountsAccountRequestBodySettings'Payouts'Schedule PostAccountsAccountRequestBodySettings'Payouts'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> (Text
"statement_descriptor" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'Payouts' -> Maybe Text
postAccountsAccountRequestBodySettings'Payouts'StatementDescriptor PostAccountsAccountRequestBodySettings'Payouts'
obj)))

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodySettings'Payouts' where
  parseJSON :: Value -> Parser PostAccountsAccountRequestBodySettings'Payouts'
parseJSON = String
-> (Object
    -> Parser PostAccountsAccountRequestBodySettings'Payouts')
-> Value
-> Parser PostAccountsAccountRequestBodySettings'Payouts'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodySettings'Payouts'" (\Object
obj -> (((Maybe Bool
 -> Maybe PostAccountsAccountRequestBodySettings'Payouts'Schedule'
 -> Maybe Text
 -> PostAccountsAccountRequestBodySettings'Payouts')
-> Parser
     (Maybe Bool
      -> Maybe PostAccountsAccountRequestBodySettings'Payouts'Schedule'
      -> Maybe Text
      -> PostAccountsAccountRequestBodySettings'Payouts')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe Bool
-> Maybe PostAccountsAccountRequestBodySettings'Payouts'Schedule'
-> Maybe Text
-> PostAccountsAccountRequestBodySettings'Payouts'
PostAccountsAccountRequestBodySettings'Payouts' Parser
  (Maybe Bool
   -> Maybe PostAccountsAccountRequestBodySettings'Payouts'Schedule'
   -> Maybe Text
   -> PostAccountsAccountRequestBodySettings'Payouts')
-> Parser (Maybe Bool)
-> Parser
     (Maybe PostAccountsAccountRequestBodySettings'Payouts'Schedule'
      -> Maybe Text -> PostAccountsAccountRequestBodySettings'Payouts')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"debit_negative_balances")) Parser
  (Maybe PostAccountsAccountRequestBodySettings'Payouts'Schedule'
   -> Maybe Text -> PostAccountsAccountRequestBodySettings'Payouts')
-> Parser
     (Maybe PostAccountsAccountRequestBodySettings'Payouts'Schedule')
-> Parser
     (Maybe Text -> PostAccountsAccountRequestBodySettings'Payouts')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe PostAccountsAccountRequestBodySettings'Payouts'Schedule')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"schedule")) Parser
  (Maybe Text -> PostAccountsAccountRequestBodySettings'Payouts')
-> Parser (Maybe Text)
-> Parser PostAccountsAccountRequestBodySettings'Payouts'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"statement_descriptor"))

-- | Create a new 'PostAccountsAccountRequestBodySettings'Payouts'' with all required fields.
mkPostAccountsAccountRequestBodySettings'Payouts' :: PostAccountsAccountRequestBodySettings'Payouts'
mkPostAccountsAccountRequestBodySettings'Payouts' :: PostAccountsAccountRequestBodySettings'Payouts'
mkPostAccountsAccountRequestBodySettings'Payouts' =
  PostAccountsAccountRequestBodySettings'Payouts' :: Maybe Bool
-> Maybe PostAccountsAccountRequestBodySettings'Payouts'Schedule'
-> Maybe Text
-> PostAccountsAccountRequestBodySettings'Payouts'
PostAccountsAccountRequestBodySettings'Payouts'
    { postAccountsAccountRequestBodySettings'Payouts'DebitNegativeBalances :: Maybe Bool
postAccountsAccountRequestBodySettings'Payouts'DebitNegativeBalances = Maybe Bool
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodySettings'Payouts'Schedule :: Maybe PostAccountsAccountRequestBodySettings'Payouts'Schedule'
postAccountsAccountRequestBodySettings'Payouts'Schedule = Maybe PostAccountsAccountRequestBodySettings'Payouts'Schedule'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodySettings'Payouts'StatementDescriptor :: Maybe Text
postAccountsAccountRequestBodySettings'Payouts'StatementDescriptor = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing
    }

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.settings.properties.payouts.properties.schedule@ in the specification.
data PostAccountsAccountRequestBodySettings'Payouts'Schedule' = PostAccountsAccountRequestBodySettings'Payouts'Schedule'
  { -- | delay_days
    PostAccountsAccountRequestBodySettings'Payouts'Schedule'
-> Maybe
     PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
postAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants),
    -- | interval
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodySettings'Payouts'Schedule'
-> Maybe
     PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
postAccountsAccountRequestBodySettings'Payouts'Schedule'Interval :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'),
    -- | monthly_anchor
    PostAccountsAccountRequestBodySettings'Payouts'Schedule'
-> Maybe Int
postAccountsAccountRequestBodySettings'Payouts'Schedule'MonthlyAnchor :: (GHC.Maybe.Maybe GHC.Types.Int),
    -- | weekly_anchor
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodySettings'Payouts'Schedule'
-> Maybe
     PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
postAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor :: (GHC.Maybe.Maybe PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor')
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodySettings'Payouts'Schedule'
-> String
-> String
[PostAccountsAccountRequestBodySettings'Payouts'Schedule']
-> String -> String
PostAccountsAccountRequestBodySettings'Payouts'Schedule' -> String
(Int
 -> PostAccountsAccountRequestBodySettings'Payouts'Schedule'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodySettings'Payouts'Schedule'
    -> String)
-> ([PostAccountsAccountRequestBodySettings'Payouts'Schedule']
    -> String -> String)
-> Show PostAccountsAccountRequestBodySettings'Payouts'Schedule'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodySettings'Payouts'Schedule']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodySettings'Payouts'Schedule']
-> String -> String
show :: PostAccountsAccountRequestBodySettings'Payouts'Schedule' -> String
$cshow :: PostAccountsAccountRequestBodySettings'Payouts'Schedule' -> String
showsPrec :: Int
-> PostAccountsAccountRequestBodySettings'Payouts'Schedule'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodySettings'Payouts'Schedule'
-> String
-> String
GHC.Show.Show,
      PostAccountsAccountRequestBodySettings'Payouts'Schedule'
-> PostAccountsAccountRequestBodySettings'Payouts'Schedule' -> Bool
(PostAccountsAccountRequestBodySettings'Payouts'Schedule'
 -> PostAccountsAccountRequestBodySettings'Payouts'Schedule'
 -> Bool)
-> (PostAccountsAccountRequestBodySettings'Payouts'Schedule'
    -> PostAccountsAccountRequestBodySettings'Payouts'Schedule'
    -> Bool)
-> Eq PostAccountsAccountRequestBodySettings'Payouts'Schedule'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodySettings'Payouts'Schedule'
-> PostAccountsAccountRequestBodySettings'Payouts'Schedule' -> Bool
$c/= :: PostAccountsAccountRequestBodySettings'Payouts'Schedule'
-> PostAccountsAccountRequestBodySettings'Payouts'Schedule' -> Bool
== :: PostAccountsAccountRequestBodySettings'Payouts'Schedule'
-> PostAccountsAccountRequestBodySettings'Payouts'Schedule' -> Bool
$c== :: PostAccountsAccountRequestBodySettings'Payouts'Schedule'
-> PostAccountsAccountRequestBodySettings'Payouts'Schedule' -> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodySettings'Payouts'Schedule' where
  toJSON :: PostAccountsAccountRequestBodySettings'Payouts'Schedule' -> Value
toJSON PostAccountsAccountRequestBodySettings'Payouts'Schedule'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"delay_days" Text
-> Maybe
     PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'Payouts'Schedule'
-> Maybe
     PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
postAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays PostAccountsAccountRequestBodySettings'Payouts'Schedule'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"interval" Text
-> Maybe
     PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'Payouts'Schedule'
-> Maybe
     PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
postAccountsAccountRequestBodySettings'Payouts'Schedule'Interval PostAccountsAccountRequestBodySettings'Payouts'Schedule'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"monthly_anchor" Text -> Maybe Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'Payouts'Schedule'
-> Maybe Int
postAccountsAccountRequestBodySettings'Payouts'Schedule'MonthlyAnchor PostAccountsAccountRequestBodySettings'Payouts'Schedule'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"weekly_anchor" Text
-> Maybe
     PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'Payouts'Schedule'
-> Maybe
     PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
postAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor PostAccountsAccountRequestBodySettings'Payouts'Schedule'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodySettings'Payouts'Schedule'
-> Encoding
toEncoding PostAccountsAccountRequestBodySettings'Payouts'Schedule'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs ((Text
"delay_days" Text
-> Maybe
     PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'Payouts'Schedule'
-> Maybe
     PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
postAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays PostAccountsAccountRequestBodySettings'Payouts'Schedule'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"interval" Text
-> Maybe
     PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'Payouts'Schedule'
-> Maybe
     PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
postAccountsAccountRequestBodySettings'Payouts'Schedule'Interval PostAccountsAccountRequestBodySettings'Payouts'Schedule'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"monthly_anchor" Text -> Maybe Int -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'Payouts'Schedule'
-> Maybe Int
postAccountsAccountRequestBodySettings'Payouts'Schedule'MonthlyAnchor PostAccountsAccountRequestBodySettings'Payouts'Schedule'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> (Text
"weekly_anchor" Text
-> Maybe
     PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
-> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodySettings'Payouts'Schedule'
-> Maybe
     PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
postAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor PostAccountsAccountRequestBodySettings'Payouts'Schedule'
obj))))

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodySettings'Payouts'Schedule' where
  parseJSON :: Value
-> Parser PostAccountsAccountRequestBodySettings'Payouts'Schedule'
parseJSON = String
-> (Object
    -> Parser PostAccountsAccountRequestBodySettings'Payouts'Schedule')
-> Value
-> Parser PostAccountsAccountRequestBodySettings'Payouts'Schedule'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodySettings'Payouts'Schedule'" (\Object
obj -> ((((Maybe
   PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
 -> Maybe
      PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
 -> Maybe Int
 -> Maybe
      PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
 -> PostAccountsAccountRequestBodySettings'Payouts'Schedule')
-> Parser
     (Maybe
        PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
      -> Maybe
           PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
      -> Maybe Int
      -> Maybe
           PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
      -> PostAccountsAccountRequestBodySettings'Payouts'Schedule')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe
  PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
-> Maybe
     PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
-> Maybe Int
-> Maybe
     PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
-> PostAccountsAccountRequestBodySettings'Payouts'Schedule'
PostAccountsAccountRequestBodySettings'Payouts'Schedule' Parser
  (Maybe
     PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
   -> Maybe
        PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
   -> Maybe Int
   -> Maybe
        PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
   -> PostAccountsAccountRequestBodySettings'Payouts'Schedule')
-> Parser
     (Maybe
        PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants)
-> Parser
     (Maybe
        PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
      -> Maybe Int
      -> Maybe
           PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
      -> PostAccountsAccountRequestBodySettings'Payouts'Schedule')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe
        PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"delay_days")) Parser
  (Maybe
     PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
   -> Maybe Int
   -> Maybe
        PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
   -> PostAccountsAccountRequestBodySettings'Payouts'Schedule')
-> Parser
     (Maybe
        PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval')
-> Parser
     (Maybe Int
      -> Maybe
           PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
      -> PostAccountsAccountRequestBodySettings'Payouts'Schedule')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe
        PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"interval")) Parser
  (Maybe Int
   -> Maybe
        PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
   -> PostAccountsAccountRequestBodySettings'Payouts'Schedule')
-> Parser (Maybe Int)
-> Parser
     (Maybe
        PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
      -> PostAccountsAccountRequestBodySettings'Payouts'Schedule')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Int)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"monthly_anchor")) Parser
  (Maybe
     PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
   -> PostAccountsAccountRequestBodySettings'Payouts'Schedule')
-> Parser
     (Maybe
        PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor')
-> Parser PostAccountsAccountRequestBodySettings'Payouts'Schedule'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text
-> Parser
     (Maybe
        PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"weekly_anchor"))

-- | Create a new 'PostAccountsAccountRequestBodySettings'Payouts'Schedule'' with all required fields.
mkPostAccountsAccountRequestBodySettings'Payouts'Schedule' :: PostAccountsAccountRequestBodySettings'Payouts'Schedule'
mkPostAccountsAccountRequestBodySettings'Payouts'Schedule' :: PostAccountsAccountRequestBodySettings'Payouts'Schedule'
mkPostAccountsAccountRequestBodySettings'Payouts'Schedule' =
  PostAccountsAccountRequestBodySettings'Payouts'Schedule' :: Maybe
  PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
-> Maybe
     PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
-> Maybe Int
-> Maybe
     PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
-> PostAccountsAccountRequestBodySettings'Payouts'Schedule'
PostAccountsAccountRequestBodySettings'Payouts'Schedule'
    { postAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays :: Maybe
  PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
postAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays = Maybe
  PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodySettings'Payouts'Schedule'Interval :: Maybe
  PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
postAccountsAccountRequestBodySettings'Payouts'Schedule'Interval = Maybe
  PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodySettings'Payouts'Schedule'MonthlyAnchor :: Maybe Int
postAccountsAccountRequestBodySettings'Payouts'Schedule'MonthlyAnchor = Maybe Int
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor :: Maybe
  PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
postAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor = Maybe
  PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
forall a. Maybe a
GHC.Maybe.Nothing
    }

-- | Defines the oneOf schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.settings.properties.payouts.properties.schedule.properties.delay_days.anyOf@ in the specification.
data PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
  = -- | Represents the JSON value @"minimum"@
    PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Minimum
  | PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Int GHC.Types.Int
  deriving (Int
-> PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
-> String
-> String
[PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants]
-> String -> String
PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
-> String
(Int
 -> PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
 -> String
 -> String)
-> (PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
    -> String)
-> ([PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants]
    -> String -> String)
-> Show
     PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants]
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants]
-> String -> String
show :: PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
-> String
$cshow :: PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
-> String
showsPrec :: Int
-> PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
-> String
-> String
GHC.Show.Show, PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
-> PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
-> Bool
(PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
 -> PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
 -> Bool)
-> (PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
    -> PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
    -> Bool)
-> Eq
     PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
-> PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
-> Bool
$c/= :: PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
-> PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
-> Bool
== :: PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
-> PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
-> Bool
$c== :: PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
-> PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
-> Bool
GHC.Classes.Eq)

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants where
  toJSON :: PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
-> Value
toJSON (PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Int Int
a) = Int -> Value
forall a. ToJSON a => a -> Value
Data.Aeson.Types.ToJSON.toJSON Int
a
  toJSON (PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Minimum) = Value
"minimum"

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants where
  parseJSON :: Value
-> Parser
     PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
parseJSON Value
val =
    if
        | Value
val Value -> Value -> Bool
forall a. Eq a => a -> a -> Bool
GHC.Classes.== Value
"minimum" -> PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
-> Parser
     PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Minimum
        | Bool
GHC.Base.otherwise -> case (Int
-> PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Int (Int
 -> PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants)
-> Result Int
-> Result
     PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Data.Functor.<$> Value -> Result Int
forall a. FromJSON a => Value -> Result a
Data.Aeson.Types.FromJSON.fromJSON Value
val) Result
  PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
-> Result
     PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
-> Result
     PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
forall (f :: * -> *) a. Alternative f => f a -> f a -> f a
GHC.Base.<|> String
-> Result
     PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
forall a. String -> Result a
Data.Aeson.Types.Internal.Error String
"No variant matched" of
          Data.Aeson.Types.Internal.Success PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
a -> PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
-> Parser
     PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
a
          Data.Aeson.Types.Internal.Error String
a -> String
-> Parser
     PostAccountsAccountRequestBodySettings'Payouts'Schedule'DelayDays'Variants
forall (m :: * -> *) a. MonadFail m => String -> m a
Control.Monad.Fail.fail String
a

-- | Defines the enum schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.settings.properties.payouts.properties.schedule.properties.interval@ in the specification.
data PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
  = -- | This case is used if the value encountered during decoding does not match any of the provided cases in the specification.
    PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'Other Data.Aeson.Types.Internal.Value
  | -- | This constructor can be used to send values to the server which are not present in the specification yet.
    PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'Typed Data.Text.Internal.Text
  | -- | Represents the JSON value @"daily"@
    PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'EnumDaily
  | -- | Represents the JSON value @"manual"@
    PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'EnumManual
  | -- | Represents the JSON value @"monthly"@
    PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'EnumMonthly
  | -- | Represents the JSON value @"weekly"@
    PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'EnumWeekly
  deriving (Int
-> PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
-> String
-> String
[PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval']
-> String -> String
PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
-> String
(Int
 -> PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
    -> String)
-> ([PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval']
    -> String -> String)
-> Show
     PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval']
-> String -> String
show :: PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
-> String
$cshow :: PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
-> String
showsPrec :: Int
-> PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
-> String
-> String
GHC.Show.Show, PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
-> PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
-> Bool
(PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
 -> PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
 -> Bool)
-> (PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
    -> PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
    -> Bool)
-> Eq
     PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
-> PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
-> Bool
$c/= :: PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
-> PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
-> Bool
== :: PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
-> PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
-> Bool
$c== :: PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
-> PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
-> Bool
GHC.Classes.Eq)

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval' where
  toJSON :: PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
-> Value
toJSON (PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'Other Value
val) = Value
val
  toJSON (PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'Typed Text
val) = Text -> Value
forall a. ToJSON a => a -> Value
Data.Aeson.Types.ToJSON.toJSON Text
val
  toJSON (PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'EnumDaily) = Value
"daily"
  toJSON (PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'EnumManual) = Value
"manual"
  toJSON (PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'EnumMonthly) = Value
"monthly"
  toJSON (PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'EnumWeekly) = Value
"weekly"

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval' where
  parseJSON :: Value
-> Parser
     PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
parseJSON Value
val =
    PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
-> Parser
     PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure
      ( if
            | Value
val Value -> Value -> Bool
forall a. Eq a => a -> a -> Bool
GHC.Classes.== Value
"daily" -> PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'EnumDaily
            | Value
val Value -> Value -> Bool
forall a. Eq a => a -> a -> Bool
GHC.Classes.== Value
"manual" -> PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'EnumManual
            | Value
val Value -> Value -> Bool
forall a. Eq a => a -> a -> Bool
GHC.Classes.== Value
"monthly" -> PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'EnumMonthly
            | Value
val Value -> Value -> Bool
forall a. Eq a => a -> a -> Bool
GHC.Classes.== Value
"weekly" -> PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'EnumWeekly
            | Bool
GHC.Base.otherwise -> Value
-> PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'
PostAccountsAccountRequestBodySettings'Payouts'Schedule'Interval'Other Value
val
      )

-- | Defines the enum schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.settings.properties.payouts.properties.schedule.properties.weekly_anchor@ in the specification.
data PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
  = -- | This case is used if the value encountered during decoding does not match any of the provided cases in the specification.
    PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'Other Data.Aeson.Types.Internal.Value
  | -- | This constructor can be used to send values to the server which are not present in the specification yet.
    PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'Typed Data.Text.Internal.Text
  | -- | Represents the JSON value @"friday"@
    PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'EnumFriday
  | -- | Represents the JSON value @"monday"@
    PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'EnumMonday
  | -- | Represents the JSON value @"saturday"@
    PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'EnumSaturday
  | -- | Represents the JSON value @"sunday"@
    PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'EnumSunday
  | -- | Represents the JSON value @"thursday"@
    PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'EnumThursday
  | -- | Represents the JSON value @"tuesday"@
    PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'EnumTuesday
  | -- | Represents the JSON value @"wednesday"@
    PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'EnumWednesday
  deriving (Int
-> PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
-> String
-> String
[PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor']
-> String -> String
PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
-> String
(Int
 -> PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
    -> String)
-> ([PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor']
    -> String -> String)
-> Show
     PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor']
-> String -> String
$cshowList :: [PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor']
-> String -> String
show :: PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
-> String
$cshow :: PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
-> String
showsPrec :: Int
-> PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
-> String
-> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
-> String
-> String
GHC.Show.Show, PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
-> PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
-> Bool
(PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
 -> PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
 -> Bool)
-> (PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
    -> PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
    -> Bool)
-> Eq
     PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
-> PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
-> Bool
$c/= :: PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
-> PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
-> Bool
== :: PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
-> PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
-> Bool
$c== :: PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
-> PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
-> Bool
GHC.Classes.Eq)

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor' where
  toJSON :: PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
-> Value
toJSON (PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'Other Value
val) = Value
val
  toJSON (PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'Typed Text
val) = Text -> Value
forall a. ToJSON a => a -> Value
Data.Aeson.Types.ToJSON.toJSON Text
val
  toJSON (PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'EnumFriday) = Value
"friday"
  toJSON (PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'EnumMonday) = Value
"monday"
  toJSON (PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'EnumSaturday) = Value
"saturday"
  toJSON (PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'EnumSunday) = Value
"sunday"
  toJSON (PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'EnumThursday) = Value
"thursday"
  toJSON (PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'EnumTuesday) = Value
"tuesday"
  toJSON (PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'EnumWednesday) = Value
"wednesday"

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor' where
  parseJSON :: Value
-> Parser
     PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
parseJSON Value
val =
    PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
-> Parser
     PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure
      ( if
            | Value
val Value -> Value -> Bool
forall a. Eq a => a -> a -> Bool
GHC.Classes.== Value
"friday" -> PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'EnumFriday
            | Value
val Value -> Value -> Bool
forall a. Eq a => a -> a -> Bool
GHC.Classes.== Value
"monday" -> PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'EnumMonday
            | Value
val Value -> Value -> Bool
forall a. Eq a => a -> a -> Bool
GHC.Classes.== Value
"saturday" -> PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'EnumSaturday
            | Value
val Value -> Value -> Bool
forall a. Eq a => a -> a -> Bool
GHC.Classes.== Value
"sunday" -> PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'EnumSunday
            | Value
val Value -> Value -> Bool
forall a. Eq a => a -> a -> Bool
GHC.Classes.== Value
"thursday" -> PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'EnumThursday
            | Value
val Value -> Value -> Bool
forall a. Eq a => a -> a -> Bool
GHC.Classes.== Value
"tuesday" -> PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'EnumTuesday
            | Value
val Value -> Value -> Bool
forall a. Eq a => a -> a -> Bool
GHC.Classes.== Value
"wednesday" -> PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'EnumWednesday
            | Bool
GHC.Base.otherwise -> Value
-> PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'
PostAccountsAccountRequestBodySettings'Payouts'Schedule'WeeklyAnchor'Other Value
val
      )

-- | Defines the object schema located at @paths.\/v1\/accounts\/{account}.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.tos_acceptance@ in the specification.
--
-- Details on the account\'s acceptance of the [Stripe Services Agreement](https:\/\/stripe.com\/docs\/connect\/updating-accounts\#tos-acceptance).
data PostAccountsAccountRequestBodyTosAcceptance' = PostAccountsAccountRequestBodyTosAcceptance'
  { -- | date
    PostAccountsAccountRequestBodyTosAcceptance' -> Maybe Int
postAccountsAccountRequestBodyTosAcceptance'Date :: (GHC.Maybe.Maybe GHC.Types.Int),
    -- | ip
    PostAccountsAccountRequestBodyTosAcceptance' -> Maybe Text
postAccountsAccountRequestBodyTosAcceptance'Ip :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | service_agreement
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyTosAcceptance' -> Maybe Text
postAccountsAccountRequestBodyTosAcceptance'ServiceAgreement :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
    -- | user_agent
    --
    -- Constraints:
    --
    -- * Maximum length of 5000
    PostAccountsAccountRequestBodyTosAcceptance' -> Maybe Text
postAccountsAccountRequestBodyTosAcceptance'UserAgent :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
  }
  deriving
    ( Int
-> PostAccountsAccountRequestBodyTosAcceptance' -> String -> String
[PostAccountsAccountRequestBodyTosAcceptance'] -> String -> String
PostAccountsAccountRequestBodyTosAcceptance' -> String
(Int
 -> PostAccountsAccountRequestBodyTosAcceptance'
 -> String
 -> String)
-> (PostAccountsAccountRequestBodyTosAcceptance' -> String)
-> ([PostAccountsAccountRequestBodyTosAcceptance']
    -> String -> String)
-> Show PostAccountsAccountRequestBodyTosAcceptance'
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountRequestBodyTosAcceptance'] -> String -> String
$cshowList :: [PostAccountsAccountRequestBodyTosAcceptance'] -> String -> String
show :: PostAccountsAccountRequestBodyTosAcceptance' -> String
$cshow :: PostAccountsAccountRequestBodyTosAcceptance' -> String
showsPrec :: Int
-> PostAccountsAccountRequestBodyTosAcceptance' -> String -> String
$cshowsPrec :: Int
-> PostAccountsAccountRequestBodyTosAcceptance' -> String -> String
GHC.Show.Show,
      PostAccountsAccountRequestBodyTosAcceptance'
-> PostAccountsAccountRequestBodyTosAcceptance' -> Bool
(PostAccountsAccountRequestBodyTosAcceptance'
 -> PostAccountsAccountRequestBodyTosAcceptance' -> Bool)
-> (PostAccountsAccountRequestBodyTosAcceptance'
    -> PostAccountsAccountRequestBodyTosAcceptance' -> Bool)
-> Eq PostAccountsAccountRequestBodyTosAcceptance'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountRequestBodyTosAcceptance'
-> PostAccountsAccountRequestBodyTosAcceptance' -> Bool
$c/= :: PostAccountsAccountRequestBodyTosAcceptance'
-> PostAccountsAccountRequestBodyTosAcceptance' -> Bool
== :: PostAccountsAccountRequestBodyTosAcceptance'
-> PostAccountsAccountRequestBodyTosAcceptance' -> Bool
$c== :: PostAccountsAccountRequestBodyTosAcceptance'
-> PostAccountsAccountRequestBodyTosAcceptance' -> Bool
GHC.Classes.Eq
    )

instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountRequestBodyTosAcceptance' where
  toJSON :: PostAccountsAccountRequestBodyTosAcceptance' -> Value
toJSON PostAccountsAccountRequestBodyTosAcceptance'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"date" Text -> Maybe Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyTosAcceptance' -> Maybe Int
postAccountsAccountRequestBodyTosAcceptance'Date PostAccountsAccountRequestBodyTosAcceptance'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"ip" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyTosAcceptance' -> Maybe Text
postAccountsAccountRequestBodyTosAcceptance'Ip PostAccountsAccountRequestBodyTosAcceptance'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"service_agreement" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyTosAcceptance' -> Maybe Text
postAccountsAccountRequestBodyTosAcceptance'ServiceAgreement PostAccountsAccountRequestBodyTosAcceptance'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"user_agent" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyTosAcceptance' -> Maybe Text
postAccountsAccountRequestBodyTosAcceptance'UserAgent PostAccountsAccountRequestBodyTosAcceptance'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
  toEncoding :: PostAccountsAccountRequestBodyTosAcceptance' -> Encoding
toEncoding PostAccountsAccountRequestBodyTosAcceptance'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs ((Text
"date" Text -> Maybe Int -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyTosAcceptance' -> Maybe Int
postAccountsAccountRequestBodyTosAcceptance'Date PostAccountsAccountRequestBodyTosAcceptance'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"ip" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyTosAcceptance' -> Maybe Text
postAccountsAccountRequestBodyTosAcceptance'Ip PostAccountsAccountRequestBodyTosAcceptance'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"service_agreement" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyTosAcceptance' -> Maybe Text
postAccountsAccountRequestBodyTosAcceptance'ServiceAgreement PostAccountsAccountRequestBodyTosAcceptance'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> (Text
"user_agent" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= PostAccountsAccountRequestBodyTosAcceptance' -> Maybe Text
postAccountsAccountRequestBodyTosAcceptance'UserAgent PostAccountsAccountRequestBodyTosAcceptance'
obj))))

instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountRequestBodyTosAcceptance' where
  parseJSON :: Value -> Parser PostAccountsAccountRequestBodyTosAcceptance'
parseJSON = String
-> (Object -> Parser PostAccountsAccountRequestBodyTosAcceptance')
-> Value
-> Parser PostAccountsAccountRequestBodyTosAcceptance'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"PostAccountsAccountRequestBodyTosAcceptance'" (\Object
obj -> ((((Maybe Int
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> PostAccountsAccountRequestBodyTosAcceptance')
-> Parser
     (Maybe Int
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodyTosAcceptance')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe Int
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> PostAccountsAccountRequestBodyTosAcceptance'
PostAccountsAccountRequestBodyTosAcceptance' Parser
  (Maybe Int
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodyTosAcceptance')
-> Parser (Maybe Int)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> PostAccountsAccountRequestBodyTosAcceptance')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Int)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"date")) Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> PostAccountsAccountRequestBodyTosAcceptance')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text -> PostAccountsAccountRequestBodyTosAcceptance')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"ip")) Parser
  (Maybe Text
   -> Maybe Text -> PostAccountsAccountRequestBodyTosAcceptance')
-> Parser (Maybe Text)
-> Parser
     (Maybe Text -> PostAccountsAccountRequestBodyTosAcceptance')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"service_agreement")) Parser (Maybe Text -> PostAccountsAccountRequestBodyTosAcceptance')
-> Parser (Maybe Text)
-> Parser PostAccountsAccountRequestBodyTosAcceptance'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"user_agent"))

-- | Create a new 'PostAccountsAccountRequestBodyTosAcceptance'' with all required fields.
mkPostAccountsAccountRequestBodyTosAcceptance' :: PostAccountsAccountRequestBodyTosAcceptance'
mkPostAccountsAccountRequestBodyTosAcceptance' :: PostAccountsAccountRequestBodyTosAcceptance'
mkPostAccountsAccountRequestBodyTosAcceptance' =
  PostAccountsAccountRequestBodyTosAcceptance' :: Maybe Int
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> PostAccountsAccountRequestBodyTosAcceptance'
PostAccountsAccountRequestBodyTosAcceptance'
    { postAccountsAccountRequestBodyTosAcceptance'Date :: Maybe Int
postAccountsAccountRequestBodyTosAcceptance'Date = Maybe Int
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyTosAcceptance'Ip :: Maybe Text
postAccountsAccountRequestBodyTosAcceptance'Ip = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyTosAcceptance'ServiceAgreement :: Maybe Text
postAccountsAccountRequestBodyTosAcceptance'ServiceAgreement = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
      postAccountsAccountRequestBodyTosAcceptance'UserAgent :: Maybe Text
postAccountsAccountRequestBodyTosAcceptance'UserAgent = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing
    }

-- | Represents a response of the operation 'postAccountsAccount'.
--
-- The response constructor is chosen by the status code of the response. If no case matches (no specific case for the response code, no range case, no default case), 'PostAccountsAccountResponseError' is used.
data PostAccountsAccountResponse
  = -- | Means either no matching case available or a parse error
    PostAccountsAccountResponseError GHC.Base.String
  | -- | Successful response.
    PostAccountsAccountResponse200 Account
  | -- | Error response.
    PostAccountsAccountResponseDefault Error
  deriving (Int -> PostAccountsAccountResponse -> String -> String
[PostAccountsAccountResponse] -> String -> String
PostAccountsAccountResponse -> String
(Int -> PostAccountsAccountResponse -> String -> String)
-> (PostAccountsAccountResponse -> String)
-> ([PostAccountsAccountResponse] -> String -> String)
-> Show PostAccountsAccountResponse
forall a.
(Int -> a -> String -> String)
-> (a -> String) -> ([a] -> String -> String) -> Show a
showList :: [PostAccountsAccountResponse] -> String -> String
$cshowList :: [PostAccountsAccountResponse] -> String -> String
show :: PostAccountsAccountResponse -> String
$cshow :: PostAccountsAccountResponse -> String
showsPrec :: Int -> PostAccountsAccountResponse -> String -> String
$cshowsPrec :: Int -> PostAccountsAccountResponse -> String -> String
GHC.Show.Show, PostAccountsAccountResponse -> PostAccountsAccountResponse -> Bool
(PostAccountsAccountResponse
 -> PostAccountsAccountResponse -> Bool)
-> (PostAccountsAccountResponse
    -> PostAccountsAccountResponse -> Bool)
-> Eq PostAccountsAccountResponse
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PostAccountsAccountResponse -> PostAccountsAccountResponse -> Bool
$c/= :: PostAccountsAccountResponse -> PostAccountsAccountResponse -> Bool
== :: PostAccountsAccountResponse -> PostAccountsAccountResponse -> Bool
$c== :: PostAccountsAccountResponse -> PostAccountsAccountResponse -> Bool
GHC.Classes.Eq)