{-# 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 postAccountsAccountPersons module StripeAPI.Operations.PostAccountsAccountPersons 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.Foldable import qualified Data.Functor import qualified Data.Maybe 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}/persons -- -- \

Creates a new person.\<\/p> postAccountsAccountPersons :: forall m. StripeAPI.Common.MonadHTTP m => -- | account | Constraints: Maximum length of 5000 Data.Text.Internal.Text -> -- | The request body to send GHC.Maybe.Maybe PostAccountsAccountPersonsRequestBody -> -- | Monadic computation which returns the result of the operation StripeAPI.Common.ClientT m (Network.HTTP.Client.Types.Response PostAccountsAccountPersonsResponse) postAccountsAccountPersons account body = GHC.Base.fmap ( \response_0 -> GHC.Base.fmap ( Data.Either.either PostAccountsAccountPersonsResponseError GHC.Base.id GHC.Base.. ( \response body -> if | (\status_1 -> Network.HTTP.Types.Status.statusCode status_1 GHC.Classes.== 200) (Network.HTTP.Client.Types.responseStatus response) -> PostAccountsAccountPersonsResponse200 Data.Functor.<$> ( Data.Aeson.eitherDecodeStrict body :: Data.Either.Either GHC.Base.String Person ) | GHC.Base.const GHC.Types.True (Network.HTTP.Client.Types.responseStatus response) -> PostAccountsAccountPersonsResponseDefault Data.Functor.<$> ( Data.Aeson.eitherDecodeStrict body :: Data.Either.Either GHC.Base.String Error ) | GHC.Base.otherwise -> Data.Either.Left "Missing default response type" ) response_0 ) response_0 ) (StripeAPI.Common.doBodyCallWithConfigurationM (Data.Text.toUpper GHC.Base.$ Data.Text.pack "POST") (Data.Text.pack ("/v1/accounts/" GHC.Base.++ (Data.ByteString.Char8.unpack (Network.HTTP.Types.URI.urlEncode GHC.Types.True GHC.Base.$ (Data.ByteString.Char8.pack GHC.Base.$ StripeAPI.Common.stringifyModel account)) GHC.Base.++ "/persons"))) GHC.Base.mempty body StripeAPI.Common.RequestBodyEncodingFormData) -- | Defines the object schema located at @paths.\/v1\/accounts\/{account}\/persons.POST.requestBody.content.application\/x-www-form-urlencoded.schema@ in the specification. data PostAccountsAccountPersonsRequestBody = PostAccountsAccountPersonsRequestBody { -- | address: The person\'s address. postAccountsAccountPersonsRequestBodyAddress :: (GHC.Maybe.Maybe PostAccountsAccountPersonsRequestBodyAddress'), -- | address_kana: The Kana variation of the person\'s address (Japan only). postAccountsAccountPersonsRequestBodyAddressKana :: (GHC.Maybe.Maybe PostAccountsAccountPersonsRequestBodyAddressKana'), -- | address_kanji: The Kanji variation of the person\'s address (Japan only). postAccountsAccountPersonsRequestBodyAddressKanji :: (GHC.Maybe.Maybe PostAccountsAccountPersonsRequestBodyAddressKanji'), -- | dob: The person\'s date of birth. postAccountsAccountPersonsRequestBodyDob :: (GHC.Maybe.Maybe PostAccountsAccountPersonsRequestBodyDob'Variants), -- | documents: Documents that may be submitted to satisfy various informational requests. postAccountsAccountPersonsRequestBodyDocuments :: (GHC.Maybe.Maybe PostAccountsAccountPersonsRequestBodyDocuments'), -- | email: The person\'s email address. postAccountsAccountPersonsRequestBodyEmail :: (GHC.Maybe.Maybe Data.Text.Internal.Text), -- | expand: Specifies which fields in the response should be expanded. postAccountsAccountPersonsRequestBodyExpand :: (GHC.Maybe.Maybe ([Data.Text.Internal.Text])), -- | first_name: The person\'s first name. -- -- Constraints: -- -- * Maximum length of 5000 postAccountsAccountPersonsRequestBodyFirstName :: (GHC.Maybe.Maybe Data.Text.Internal.Text), -- | first_name_kana: The Kana variation of the person\'s first name (Japan only). -- -- Constraints: -- -- * Maximum length of 5000 postAccountsAccountPersonsRequestBodyFirstNameKana :: (GHC.Maybe.Maybe Data.Text.Internal.Text), -- | first_name_kanji: The Kanji variation of the person\'s first name (Japan only). -- -- Constraints: -- -- * Maximum length of 5000 postAccountsAccountPersonsRequestBodyFirstNameKanji :: (GHC.Maybe.Maybe Data.Text.Internal.Text), -- | full_name_aliases: A list of alternate names or aliases that the person is known by. postAccountsAccountPersonsRequestBodyFullNameAliases :: (GHC.Maybe.Maybe PostAccountsAccountPersonsRequestBodyFullNameAliases'Variants), -- | gender: The person\'s gender (International regulations require either \"male\" or \"female\"). postAccountsAccountPersonsRequestBodyGender :: (GHC.Maybe.Maybe Data.Text.Internal.Text), -- | id_number: The person\'s ID number, as appropriate for their country. For example, a social security number in the U.S., social insurance number in Canada, etc. Instead of the number itself, you can also provide a [PII token provided by Stripe.js](https:\/\/stripe.com\/docs\/js\/tokens_sources\/create_token?type=pii). -- -- Constraints: -- -- * Maximum length of 5000 postAccountsAccountPersonsRequestBodyIdNumber :: (GHC.Maybe.Maybe Data.Text.Internal.Text), -- | id_number_secondary: The person\'s secondary ID number, as appropriate for their country, will be used for enhanced verification checks. In Thailand, this would be the laser code found on the back of an ID card. Instead of the number itself, you can also provide a [PII token provided by Stripe.js](https:\/\/stripe.com\/docs\/js\/tokens_sources\/create_token?type=pii). -- -- Constraints: -- -- * Maximum length of 5000 postAccountsAccountPersonsRequestBodyIdNumberSecondary :: (GHC.Maybe.Maybe Data.Text.Internal.Text), -- | last_name: The person\'s last name. -- -- Constraints: -- -- * Maximum length of 5000 postAccountsAccountPersonsRequestBodyLastName :: (GHC.Maybe.Maybe Data.Text.Internal.Text), -- | last_name_kana: The Kana variation of the person\'s last name (Japan only). -- -- Constraints: -- -- * Maximum length of 5000 postAccountsAccountPersonsRequestBodyLastNameKana :: (GHC.Maybe.Maybe Data.Text.Internal.Text), -- | last_name_kanji: The Kanji variation of the person\'s last name (Japan only). -- -- Constraints: -- -- * Maximum length of 5000 postAccountsAccountPersonsRequestBodyLastNameKanji :: (GHC.Maybe.Maybe Data.Text.Internal.Text), -- | maiden_name: The person\'s maiden name. -- -- Constraints: -- -- * Maximum length of 5000 postAccountsAccountPersonsRequestBodyMaidenName :: (GHC.Maybe.Maybe Data.Text.Internal.Text), -- | 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\`. postAccountsAccountPersonsRequestBodyMetadata :: (GHC.Maybe.Maybe PostAccountsAccountPersonsRequestBodyMetadata'Variants), -- | nationality: The country where the person is a national. Two-letter country code ([ISO 3166-1 alpha-2](https:\/\/en.wikipedia.org\/wiki\/ISO_3166-1_alpha-2)), or \"XX\" if unavailable. -- -- Constraints: -- -- * Maximum length of 5000 postAccountsAccountPersonsRequestBodyNationality :: (GHC.Maybe.Maybe Data.Text.Internal.Text), -- | person_token: A [person token](https:\/\/stripe.com\/docs\/connect\/account-tokens), used to securely provide details to the person. -- -- Constraints: -- -- * Maximum length of 5000 postAccountsAccountPersonsRequestBodyPersonToken :: (GHC.Maybe.Maybe Data.Text.Internal.Text), -- | phone: The person\'s phone number. postAccountsAccountPersonsRequestBodyPhone :: (GHC.Maybe.Maybe Data.Text.Internal.Text), -- | political_exposure: Indicates if the person or any of their representatives, family members, or other closely related persons, declares that they hold or have held an important public job or function, in any jurisdiction. -- -- Constraints: -- -- * Maximum length of 5000 postAccountsAccountPersonsRequestBodyPoliticalExposure :: (GHC.Maybe.Maybe Data.Text.Internal.Text), -- | registered_address: The person\'s registered address. postAccountsAccountPersonsRequestBodyRegisteredAddress :: (GHC.Maybe.Maybe PostAccountsAccountPersonsRequestBodyRegisteredAddress'), -- | relationship: The relationship that this person has with the account\'s legal entity. postAccountsAccountPersonsRequestBodyRelationship :: (GHC.Maybe.Maybe PostAccountsAccountPersonsRequestBodyRelationship'), -- | ssn_last_4: The last four digits of the person\'s Social Security number (U.S. only). postAccountsAccountPersonsRequestBodySsnLast_4 :: (GHC.Maybe.Maybe Data.Text.Internal.Text), -- | verification: The person\'s verification status. postAccountsAccountPersonsRequestBodyVerification :: (GHC.Maybe.Maybe PostAccountsAccountPersonsRequestBodyVerification') } deriving ( GHC.Show.Show, GHC.Classes.Eq ) instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountPersonsRequestBody where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("address" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyAddress obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("address_kana" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyAddressKana obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("address_kanji" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyAddressKanji obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("dob" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyDob obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("documents" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyDocuments obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("email" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyEmail obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("expand" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyExpand obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("first_name" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyFirstName obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("first_name_kana" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyFirstNameKana obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("first_name_kanji" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyFirstNameKanji obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("full_name_aliases" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyFullNameAliases obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("gender" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyGender obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("id_number" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyIdNumber obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("id_number_secondary" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyIdNumberSecondary obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("last_name" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyLastName obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("last_name_kana" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyLastNameKana obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("last_name_kanji" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyLastNameKanji obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("maiden_name" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyMaidenName obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("metadata" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyMetadata obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("nationality" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyNationality obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("person_token" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyPersonToken obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("phone" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyPhone obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("political_exposure" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyPoliticalExposure obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("registered_address" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyRegisteredAddress obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("relationship" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyRelationship obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("ssn_last_4" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodySsnLast_4 obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("verification" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyVerification obj) : GHC.Base.mempty)) toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("address" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyAddress obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("address_kana" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyAddressKana obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("address_kanji" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyAddressKanji obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("dob" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyDob obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("documents" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyDocuments obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("email" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyEmail obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("expand" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyExpand obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("first_name" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyFirstName obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("first_name_kana" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyFirstNameKana obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("first_name_kanji" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyFirstNameKanji obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("full_name_aliases" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyFullNameAliases obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("gender" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyGender obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("id_number" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyIdNumber obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("id_number_secondary" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyIdNumberSecondary obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("last_name" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyLastName obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("last_name_kana" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyLastNameKana obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("last_name_kanji" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyLastNameKanji obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("maiden_name" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyMaidenName obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("metadata" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyMetadata obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("nationality" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyNationality obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("person_token" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyPersonToken obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("phone" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyPhone obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("political_exposure" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyPoliticalExposure obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("registered_address" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyRegisteredAddress obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("relationship" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyRelationship obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("ssn_last_4" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodySsnLast_4 obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("verification" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyVerification obj) : GHC.Base.mempty))) instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountPersonsRequestBody where parseJSON = Data.Aeson.Types.FromJSON.withObject "PostAccountsAccountPersonsRequestBody" (\obj -> ((((((((((((((((((((((((((GHC.Base.pure PostAccountsAccountPersonsRequestBody GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "address")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "address_kana")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "address_kanji")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "dob")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "documents")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "email")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "expand")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "first_name")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "first_name_kana")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "first_name_kanji")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "full_name_aliases")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "gender")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "id_number")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "id_number_secondary")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "last_name")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "last_name_kana")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "last_name_kanji")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "maiden_name")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "metadata")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "nationality")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "person_token")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "phone")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "political_exposure")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "registered_address")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "relationship")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "ssn_last_4")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "verification")) -- | Create a new 'PostAccountsAccountPersonsRequestBody' with all required fields. mkPostAccountsAccountPersonsRequestBody :: PostAccountsAccountPersonsRequestBody mkPostAccountsAccountPersonsRequestBody = PostAccountsAccountPersonsRequestBody { postAccountsAccountPersonsRequestBodyAddress = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyAddressKana = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyAddressKanji = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyDob = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyDocuments = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyEmail = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyExpand = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyFirstName = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyFirstNameKana = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyFirstNameKanji = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyFullNameAliases = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyGender = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyIdNumber = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyIdNumberSecondary = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyLastName = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyLastNameKana = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyLastNameKanji = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyMaidenName = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyMetadata = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyNationality = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyPersonToken = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyPhone = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyPoliticalExposure = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyRegisteredAddress = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyRelationship = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodySsnLast_4 = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyVerification = GHC.Maybe.Nothing } -- | Defines the object schema located at @paths.\/v1\/accounts\/{account}\/persons.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.address@ in the specification. -- -- The person\'s address. data PostAccountsAccountPersonsRequestBodyAddress' = PostAccountsAccountPersonsRequestBodyAddress' { -- | city -- -- Constraints: -- -- * Maximum length of 100 postAccountsAccountPersonsRequestBodyAddress'City :: (GHC.Maybe.Maybe Data.Text.Internal.Text), -- | country -- -- Constraints: -- -- * Maximum length of 5000 postAccountsAccountPersonsRequestBodyAddress'Country :: (GHC.Maybe.Maybe Data.Text.Internal.Text), -- | line1 -- -- Constraints: -- -- * Maximum length of 200 postAccountsAccountPersonsRequestBodyAddress'Line1 :: (GHC.Maybe.Maybe Data.Text.Internal.Text), -- | line2 -- -- Constraints: -- -- * Maximum length of 200 postAccountsAccountPersonsRequestBodyAddress'Line2 :: (GHC.Maybe.Maybe Data.Text.Internal.Text), -- | postal_code -- -- Constraints: -- -- * Maximum length of 5000 postAccountsAccountPersonsRequestBodyAddress'PostalCode :: (GHC.Maybe.Maybe Data.Text.Internal.Text), -- | state -- -- Constraints: -- -- * Maximum length of 5000 postAccountsAccountPersonsRequestBodyAddress'State :: (GHC.Maybe.Maybe Data.Text.Internal.Text) } deriving ( GHC.Show.Show, GHC.Classes.Eq ) instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountPersonsRequestBodyAddress' where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("city" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyAddress'City obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("country" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyAddress'Country obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("line1" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyAddress'Line1 obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("line2" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyAddress'Line2 obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("postal_code" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyAddress'PostalCode obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("state" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyAddress'State obj) : GHC.Base.mempty)) toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("city" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyAddress'City obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("country" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyAddress'Country obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("line1" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyAddress'Line1 obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("line2" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyAddress'Line2 obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("postal_code" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyAddress'PostalCode obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("state" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyAddress'State obj) : GHC.Base.mempty))) instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountPersonsRequestBodyAddress' where parseJSON = Data.Aeson.Types.FromJSON.withObject "PostAccountsAccountPersonsRequestBodyAddress'" (\obj -> (((((GHC.Base.pure PostAccountsAccountPersonsRequestBodyAddress' GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "city")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "country")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "line1")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "line2")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "postal_code")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "state")) -- | Create a new 'PostAccountsAccountPersonsRequestBodyAddress'' with all required fields. mkPostAccountsAccountPersonsRequestBodyAddress' :: PostAccountsAccountPersonsRequestBodyAddress' mkPostAccountsAccountPersonsRequestBodyAddress' = PostAccountsAccountPersonsRequestBodyAddress' { postAccountsAccountPersonsRequestBodyAddress'City = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyAddress'Country = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyAddress'Line1 = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyAddress'Line2 = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyAddress'PostalCode = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyAddress'State = GHC.Maybe.Nothing } -- | Defines the object schema located at @paths.\/v1\/accounts\/{account}\/persons.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.address_kana@ in the specification. -- -- The Kana variation of the person\'s address (Japan only). data PostAccountsAccountPersonsRequestBodyAddressKana' = PostAccountsAccountPersonsRequestBodyAddressKana' { -- | city -- -- Constraints: -- -- * Maximum length of 5000 postAccountsAccountPersonsRequestBodyAddressKana'City :: (GHC.Maybe.Maybe Data.Text.Internal.Text), -- | country -- -- Constraints: -- -- * Maximum length of 5000 postAccountsAccountPersonsRequestBodyAddressKana'Country :: (GHC.Maybe.Maybe Data.Text.Internal.Text), -- | line1 -- -- Constraints: -- -- * Maximum length of 5000 postAccountsAccountPersonsRequestBodyAddressKana'Line1 :: (GHC.Maybe.Maybe Data.Text.Internal.Text), -- | line2 -- -- Constraints: -- -- * Maximum length of 5000 postAccountsAccountPersonsRequestBodyAddressKana'Line2 :: (GHC.Maybe.Maybe Data.Text.Internal.Text), -- | postal_code -- -- Constraints: -- -- * Maximum length of 5000 postAccountsAccountPersonsRequestBodyAddressKana'PostalCode :: (GHC.Maybe.Maybe Data.Text.Internal.Text), -- | state -- -- Constraints: -- -- * Maximum length of 5000 postAccountsAccountPersonsRequestBodyAddressKana'State :: (GHC.Maybe.Maybe Data.Text.Internal.Text), -- | town -- -- Constraints: -- -- * Maximum length of 5000 postAccountsAccountPersonsRequestBodyAddressKana'Town :: (GHC.Maybe.Maybe Data.Text.Internal.Text) } deriving ( GHC.Show.Show, GHC.Classes.Eq ) instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountPersonsRequestBodyAddressKana' where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("city" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyAddressKana'City obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("country" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyAddressKana'Country obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("line1" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyAddressKana'Line1 obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("line2" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyAddressKana'Line2 obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("postal_code" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyAddressKana'PostalCode obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("state" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyAddressKana'State obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("town" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyAddressKana'Town obj) : GHC.Base.mempty)) toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("city" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyAddressKana'City obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("country" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyAddressKana'Country obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("line1" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyAddressKana'Line1 obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("line2" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyAddressKana'Line2 obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("postal_code" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyAddressKana'PostalCode obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("state" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyAddressKana'State obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("town" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyAddressKana'Town obj) : GHC.Base.mempty))) instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountPersonsRequestBodyAddressKana' where parseJSON = Data.Aeson.Types.FromJSON.withObject "PostAccountsAccountPersonsRequestBodyAddressKana'" (\obj -> ((((((GHC.Base.pure PostAccountsAccountPersonsRequestBodyAddressKana' GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "city")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "country")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "line1")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "line2")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "postal_code")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "state")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "town")) -- | Create a new 'PostAccountsAccountPersonsRequestBodyAddressKana'' with all required fields. mkPostAccountsAccountPersonsRequestBodyAddressKana' :: PostAccountsAccountPersonsRequestBodyAddressKana' mkPostAccountsAccountPersonsRequestBodyAddressKana' = PostAccountsAccountPersonsRequestBodyAddressKana' { postAccountsAccountPersonsRequestBodyAddressKana'City = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyAddressKana'Country = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyAddressKana'Line1 = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyAddressKana'Line2 = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyAddressKana'PostalCode = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyAddressKana'State = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyAddressKana'Town = GHC.Maybe.Nothing } -- | Defines the object schema located at @paths.\/v1\/accounts\/{account}\/persons.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.address_kanji@ in the specification. -- -- The Kanji variation of the person\'s address (Japan only). data PostAccountsAccountPersonsRequestBodyAddressKanji' = PostAccountsAccountPersonsRequestBodyAddressKanji' { -- | city -- -- Constraints: -- -- * Maximum length of 5000 postAccountsAccountPersonsRequestBodyAddressKanji'City :: (GHC.Maybe.Maybe Data.Text.Internal.Text), -- | country -- -- Constraints: -- -- * Maximum length of 5000 postAccountsAccountPersonsRequestBodyAddressKanji'Country :: (GHC.Maybe.Maybe Data.Text.Internal.Text), -- | line1 -- -- Constraints: -- -- * Maximum length of 5000 postAccountsAccountPersonsRequestBodyAddressKanji'Line1 :: (GHC.Maybe.Maybe Data.Text.Internal.Text), -- | line2 -- -- Constraints: -- -- * Maximum length of 5000 postAccountsAccountPersonsRequestBodyAddressKanji'Line2 :: (GHC.Maybe.Maybe Data.Text.Internal.Text), -- | postal_code -- -- Constraints: -- -- * Maximum length of 5000 postAccountsAccountPersonsRequestBodyAddressKanji'PostalCode :: (GHC.Maybe.Maybe Data.Text.Internal.Text), -- | state -- -- Constraints: -- -- * Maximum length of 5000 postAccountsAccountPersonsRequestBodyAddressKanji'State :: (GHC.Maybe.Maybe Data.Text.Internal.Text), -- | town -- -- Constraints: -- -- * Maximum length of 5000 postAccountsAccountPersonsRequestBodyAddressKanji'Town :: (GHC.Maybe.Maybe Data.Text.Internal.Text) } deriving ( GHC.Show.Show, GHC.Classes.Eq ) instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountPersonsRequestBodyAddressKanji' where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("city" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyAddressKanji'City obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("country" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyAddressKanji'Country obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("line1" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyAddressKanji'Line1 obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("line2" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyAddressKanji'Line2 obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("postal_code" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyAddressKanji'PostalCode obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("state" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyAddressKanji'State obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("town" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyAddressKanji'Town obj) : GHC.Base.mempty)) toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("city" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyAddressKanji'City obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("country" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyAddressKanji'Country obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("line1" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyAddressKanji'Line1 obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("line2" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyAddressKanji'Line2 obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("postal_code" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyAddressKanji'PostalCode obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("state" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyAddressKanji'State obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("town" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyAddressKanji'Town obj) : GHC.Base.mempty))) instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountPersonsRequestBodyAddressKanji' where parseJSON = Data.Aeson.Types.FromJSON.withObject "PostAccountsAccountPersonsRequestBodyAddressKanji'" (\obj -> ((((((GHC.Base.pure PostAccountsAccountPersonsRequestBodyAddressKanji' GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "city")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "country")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "line1")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "line2")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "postal_code")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "state")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "town")) -- | Create a new 'PostAccountsAccountPersonsRequestBodyAddressKanji'' with all required fields. mkPostAccountsAccountPersonsRequestBodyAddressKanji' :: PostAccountsAccountPersonsRequestBodyAddressKanji' mkPostAccountsAccountPersonsRequestBodyAddressKanji' = PostAccountsAccountPersonsRequestBodyAddressKanji' { postAccountsAccountPersonsRequestBodyAddressKanji'City = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyAddressKanji'Country = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyAddressKanji'Line1 = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyAddressKanji'Line2 = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyAddressKanji'PostalCode = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyAddressKanji'State = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyAddressKanji'Town = GHC.Maybe.Nothing } -- | Defines the object schema located at @paths.\/v1\/accounts\/{account}\/persons.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.dob.anyOf@ in the specification. data PostAccountsAccountPersonsRequestBodyDob'OneOf1 = PostAccountsAccountPersonsRequestBodyDob'OneOf1 { -- | day postAccountsAccountPersonsRequestBodyDob'OneOf1Day :: GHC.Types.Int, -- | month postAccountsAccountPersonsRequestBodyDob'OneOf1Month :: GHC.Types.Int, -- | year postAccountsAccountPersonsRequestBodyDob'OneOf1Year :: GHC.Types.Int } deriving ( GHC.Show.Show, GHC.Classes.Eq ) instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountPersonsRequestBodyDob'OneOf1 where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (["day" Data.Aeson.Types.ToJSON..= postAccountsAccountPersonsRequestBodyDob'OneOf1Day obj] : ["month" Data.Aeson.Types.ToJSON..= postAccountsAccountPersonsRequestBodyDob'OneOf1Month obj] : ["year" Data.Aeson.Types.ToJSON..= postAccountsAccountPersonsRequestBodyDob'OneOf1Year obj] : GHC.Base.mempty)) toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (["day" Data.Aeson.Types.ToJSON..= postAccountsAccountPersonsRequestBodyDob'OneOf1Day obj] : ["month" Data.Aeson.Types.ToJSON..= postAccountsAccountPersonsRequestBodyDob'OneOf1Month obj] : ["year" Data.Aeson.Types.ToJSON..= postAccountsAccountPersonsRequestBodyDob'OneOf1Year obj] : GHC.Base.mempty))) instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountPersonsRequestBodyDob'OneOf1 where parseJSON = Data.Aeson.Types.FromJSON.withObject "PostAccountsAccountPersonsRequestBodyDob'OneOf1" (\obj -> ((GHC.Base.pure PostAccountsAccountPersonsRequestBodyDob'OneOf1 GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..: "day")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..: "month")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..: "year")) -- | Create a new 'PostAccountsAccountPersonsRequestBodyDob'OneOf1' with all required fields. mkPostAccountsAccountPersonsRequestBodyDob'OneOf1 :: -- | 'postAccountsAccountPersonsRequestBodyDob'OneOf1Day' GHC.Types.Int -> -- | 'postAccountsAccountPersonsRequestBodyDob'OneOf1Month' GHC.Types.Int -> -- | 'postAccountsAccountPersonsRequestBodyDob'OneOf1Year' GHC.Types.Int -> PostAccountsAccountPersonsRequestBodyDob'OneOf1 mkPostAccountsAccountPersonsRequestBodyDob'OneOf1 postAccountsAccountPersonsRequestBodyDob'OneOf1Day postAccountsAccountPersonsRequestBodyDob'OneOf1Month postAccountsAccountPersonsRequestBodyDob'OneOf1Year = PostAccountsAccountPersonsRequestBodyDob'OneOf1 { postAccountsAccountPersonsRequestBodyDob'OneOf1Day = postAccountsAccountPersonsRequestBodyDob'OneOf1Day, postAccountsAccountPersonsRequestBodyDob'OneOf1Month = postAccountsAccountPersonsRequestBodyDob'OneOf1Month, postAccountsAccountPersonsRequestBodyDob'OneOf1Year = postAccountsAccountPersonsRequestBodyDob'OneOf1Year } -- | Defines the oneOf schema located at @paths.\/v1\/accounts\/{account}\/persons.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.dob.anyOf@ in the specification. -- -- The person\'s date of birth. data PostAccountsAccountPersonsRequestBodyDob'Variants = -- | Represents the JSON value @""@ PostAccountsAccountPersonsRequestBodyDob'EmptyString | PostAccountsAccountPersonsRequestBodyDob'PostAccountsAccountPersonsRequestBodyDob'OneOf1 PostAccountsAccountPersonsRequestBodyDob'OneOf1 deriving (GHC.Show.Show, GHC.Classes.Eq) instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountPersonsRequestBodyDob'Variants where toJSON (PostAccountsAccountPersonsRequestBodyDob'PostAccountsAccountPersonsRequestBodyDob'OneOf1 a) = Data.Aeson.Types.ToJSON.toJSON a toJSON (PostAccountsAccountPersonsRequestBodyDob'EmptyString) = "" instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountPersonsRequestBodyDob'Variants where parseJSON val = if | val GHC.Classes.== "" -> GHC.Base.pure PostAccountsAccountPersonsRequestBodyDob'EmptyString | GHC.Base.otherwise -> case (PostAccountsAccountPersonsRequestBodyDob'PostAccountsAccountPersonsRequestBodyDob'OneOf1 Data.Functor.<$> Data.Aeson.Types.FromJSON.fromJSON val) GHC.Base.<|> Data.Aeson.Types.Internal.Error "No variant matched" of Data.Aeson.Types.Internal.Success a -> GHC.Base.pure a Data.Aeson.Types.Internal.Error a -> Control.Monad.Fail.fail a -- | Defines the object schema located at @paths.\/v1\/accounts\/{account}\/persons.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 PostAccountsAccountPersonsRequestBodyDocuments' = PostAccountsAccountPersonsRequestBodyDocuments' { -- | company_authorization postAccountsAccountPersonsRequestBodyDocuments'CompanyAuthorization :: (GHC.Maybe.Maybe PostAccountsAccountPersonsRequestBodyDocuments'CompanyAuthorization'), -- | passport postAccountsAccountPersonsRequestBodyDocuments'Passport :: (GHC.Maybe.Maybe PostAccountsAccountPersonsRequestBodyDocuments'Passport'), -- | visa postAccountsAccountPersonsRequestBodyDocuments'Visa :: (GHC.Maybe.Maybe PostAccountsAccountPersonsRequestBodyDocuments'Visa') } deriving ( GHC.Show.Show, GHC.Classes.Eq ) instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountPersonsRequestBodyDocuments' where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("company_authorization" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyDocuments'CompanyAuthorization obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("passport" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyDocuments'Passport obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("visa" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyDocuments'Visa obj) : GHC.Base.mempty)) toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("company_authorization" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyDocuments'CompanyAuthorization obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("passport" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyDocuments'Passport obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("visa" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyDocuments'Visa obj) : GHC.Base.mempty))) instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountPersonsRequestBodyDocuments' where parseJSON = Data.Aeson.Types.FromJSON.withObject "PostAccountsAccountPersonsRequestBodyDocuments'" (\obj -> ((GHC.Base.pure PostAccountsAccountPersonsRequestBodyDocuments' GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "company_authorization")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "passport")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "visa")) -- | Create a new 'PostAccountsAccountPersonsRequestBodyDocuments'' with all required fields. mkPostAccountsAccountPersonsRequestBodyDocuments' :: PostAccountsAccountPersonsRequestBodyDocuments' mkPostAccountsAccountPersonsRequestBodyDocuments' = PostAccountsAccountPersonsRequestBodyDocuments' { postAccountsAccountPersonsRequestBodyDocuments'CompanyAuthorization = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyDocuments'Passport = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyDocuments'Visa = GHC.Maybe.Nothing } -- | Defines the object schema located at @paths.\/v1\/accounts\/{account}\/persons.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.documents.properties.company_authorization@ in the specification. data PostAccountsAccountPersonsRequestBodyDocuments'CompanyAuthorization' = PostAccountsAccountPersonsRequestBodyDocuments'CompanyAuthorization' { -- | files postAccountsAccountPersonsRequestBodyDocuments'CompanyAuthorization'Files :: (GHC.Maybe.Maybe ([Data.Text.Internal.Text])) } deriving ( GHC.Show.Show, GHC.Classes.Eq ) instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountPersonsRequestBodyDocuments'CompanyAuthorization' where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("files" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyDocuments'CompanyAuthorization'Files obj) : GHC.Base.mempty)) toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("files" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyDocuments'CompanyAuthorization'Files obj) : GHC.Base.mempty))) instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountPersonsRequestBodyDocuments'CompanyAuthorization' where parseJSON = Data.Aeson.Types.FromJSON.withObject "PostAccountsAccountPersonsRequestBodyDocuments'CompanyAuthorization'" (\obj -> GHC.Base.pure PostAccountsAccountPersonsRequestBodyDocuments'CompanyAuthorization' GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "files")) -- | Create a new 'PostAccountsAccountPersonsRequestBodyDocuments'CompanyAuthorization'' with all required fields. mkPostAccountsAccountPersonsRequestBodyDocuments'CompanyAuthorization' :: PostAccountsAccountPersonsRequestBodyDocuments'CompanyAuthorization' mkPostAccountsAccountPersonsRequestBodyDocuments'CompanyAuthorization' = PostAccountsAccountPersonsRequestBodyDocuments'CompanyAuthorization' {postAccountsAccountPersonsRequestBodyDocuments'CompanyAuthorization'Files = GHC.Maybe.Nothing} -- | Defines the object schema located at @paths.\/v1\/accounts\/{account}\/persons.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.documents.properties.passport@ in the specification. data PostAccountsAccountPersonsRequestBodyDocuments'Passport' = PostAccountsAccountPersonsRequestBodyDocuments'Passport' { -- | files postAccountsAccountPersonsRequestBodyDocuments'Passport'Files :: (GHC.Maybe.Maybe ([Data.Text.Internal.Text])) } deriving ( GHC.Show.Show, GHC.Classes.Eq ) instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountPersonsRequestBodyDocuments'Passport' where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("files" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyDocuments'Passport'Files obj) : GHC.Base.mempty)) toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("files" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyDocuments'Passport'Files obj) : GHC.Base.mempty))) instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountPersonsRequestBodyDocuments'Passport' where parseJSON = Data.Aeson.Types.FromJSON.withObject "PostAccountsAccountPersonsRequestBodyDocuments'Passport'" (\obj -> GHC.Base.pure PostAccountsAccountPersonsRequestBodyDocuments'Passport' GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "files")) -- | Create a new 'PostAccountsAccountPersonsRequestBodyDocuments'Passport'' with all required fields. mkPostAccountsAccountPersonsRequestBodyDocuments'Passport' :: PostAccountsAccountPersonsRequestBodyDocuments'Passport' mkPostAccountsAccountPersonsRequestBodyDocuments'Passport' = PostAccountsAccountPersonsRequestBodyDocuments'Passport' {postAccountsAccountPersonsRequestBodyDocuments'Passport'Files = GHC.Maybe.Nothing} -- | Defines the object schema located at @paths.\/v1\/accounts\/{account}\/persons.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.documents.properties.visa@ in the specification. data PostAccountsAccountPersonsRequestBodyDocuments'Visa' = PostAccountsAccountPersonsRequestBodyDocuments'Visa' { -- | files postAccountsAccountPersonsRequestBodyDocuments'Visa'Files :: (GHC.Maybe.Maybe ([Data.Text.Internal.Text])) } deriving ( GHC.Show.Show, GHC.Classes.Eq ) instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountPersonsRequestBodyDocuments'Visa' where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("files" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyDocuments'Visa'Files obj) : GHC.Base.mempty)) toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("files" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyDocuments'Visa'Files obj) : GHC.Base.mempty))) instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountPersonsRequestBodyDocuments'Visa' where parseJSON = Data.Aeson.Types.FromJSON.withObject "PostAccountsAccountPersonsRequestBodyDocuments'Visa'" (\obj -> GHC.Base.pure PostAccountsAccountPersonsRequestBodyDocuments'Visa' GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "files")) -- | Create a new 'PostAccountsAccountPersonsRequestBodyDocuments'Visa'' with all required fields. mkPostAccountsAccountPersonsRequestBodyDocuments'Visa' :: PostAccountsAccountPersonsRequestBodyDocuments'Visa' mkPostAccountsAccountPersonsRequestBodyDocuments'Visa' = PostAccountsAccountPersonsRequestBodyDocuments'Visa' {postAccountsAccountPersonsRequestBodyDocuments'Visa'Files = GHC.Maybe.Nothing} -- | Defines the oneOf schema located at @paths.\/v1\/accounts\/{account}\/persons.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.full_name_aliases.anyOf@ in the specification. -- -- A list of alternate names or aliases that the person is known by. data PostAccountsAccountPersonsRequestBodyFullNameAliases'Variants = -- | Represents the JSON value @""@ PostAccountsAccountPersonsRequestBodyFullNameAliases'EmptyString | PostAccountsAccountPersonsRequestBodyFullNameAliases'ListTText ([Data.Text.Internal.Text]) deriving (GHC.Show.Show, GHC.Classes.Eq) instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountPersonsRequestBodyFullNameAliases'Variants where toJSON (PostAccountsAccountPersonsRequestBodyFullNameAliases'ListTText a) = Data.Aeson.Types.ToJSON.toJSON a toJSON (PostAccountsAccountPersonsRequestBodyFullNameAliases'EmptyString) = "" instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountPersonsRequestBodyFullNameAliases'Variants where parseJSON val = if | val GHC.Classes.== "" -> GHC.Base.pure PostAccountsAccountPersonsRequestBodyFullNameAliases'EmptyString | GHC.Base.otherwise -> case (PostAccountsAccountPersonsRequestBodyFullNameAliases'ListTText Data.Functor.<$> Data.Aeson.Types.FromJSON.fromJSON val) GHC.Base.<|> Data.Aeson.Types.Internal.Error "No variant matched" of Data.Aeson.Types.Internal.Success a -> GHC.Base.pure a Data.Aeson.Types.Internal.Error a -> Control.Monad.Fail.fail a -- | Defines the oneOf schema located at @paths.\/v1\/accounts\/{account}\/persons.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 PostAccountsAccountPersonsRequestBodyMetadata'Variants = -- | Represents the JSON value @""@ PostAccountsAccountPersonsRequestBodyMetadata'EmptyString | PostAccountsAccountPersonsRequestBodyMetadata'Object Data.Aeson.Types.Internal.Object deriving (GHC.Show.Show, GHC.Classes.Eq) instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountPersonsRequestBodyMetadata'Variants where toJSON (PostAccountsAccountPersonsRequestBodyMetadata'Object a) = Data.Aeson.Types.ToJSON.toJSON a toJSON (PostAccountsAccountPersonsRequestBodyMetadata'EmptyString) = "" instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountPersonsRequestBodyMetadata'Variants where parseJSON val = if | val GHC.Classes.== "" -> GHC.Base.pure PostAccountsAccountPersonsRequestBodyMetadata'EmptyString | GHC.Base.otherwise -> case (PostAccountsAccountPersonsRequestBodyMetadata'Object Data.Functor.<$> Data.Aeson.Types.FromJSON.fromJSON val) GHC.Base.<|> Data.Aeson.Types.Internal.Error "No variant matched" of Data.Aeson.Types.Internal.Success a -> GHC.Base.pure a Data.Aeson.Types.Internal.Error a -> Control.Monad.Fail.fail a -- | Defines the object schema located at @paths.\/v1\/accounts\/{account}\/persons.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.registered_address@ in the specification. -- -- The person\'s registered address. data PostAccountsAccountPersonsRequestBodyRegisteredAddress' = PostAccountsAccountPersonsRequestBodyRegisteredAddress' { -- | city -- -- Constraints: -- -- * Maximum length of 100 postAccountsAccountPersonsRequestBodyRegisteredAddress'City :: (GHC.Maybe.Maybe Data.Text.Internal.Text), -- | country -- -- Constraints: -- -- * Maximum length of 5000 postAccountsAccountPersonsRequestBodyRegisteredAddress'Country :: (GHC.Maybe.Maybe Data.Text.Internal.Text), -- | line1 -- -- Constraints: -- -- * Maximum length of 200 postAccountsAccountPersonsRequestBodyRegisteredAddress'Line1 :: (GHC.Maybe.Maybe Data.Text.Internal.Text), -- | line2 -- -- Constraints: -- -- * Maximum length of 200 postAccountsAccountPersonsRequestBodyRegisteredAddress'Line2 :: (GHC.Maybe.Maybe Data.Text.Internal.Text), -- | postal_code -- -- Constraints: -- -- * Maximum length of 5000 postAccountsAccountPersonsRequestBodyRegisteredAddress'PostalCode :: (GHC.Maybe.Maybe Data.Text.Internal.Text), -- | state -- -- Constraints: -- -- * Maximum length of 5000 postAccountsAccountPersonsRequestBodyRegisteredAddress'State :: (GHC.Maybe.Maybe Data.Text.Internal.Text) } deriving ( GHC.Show.Show, GHC.Classes.Eq ) instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountPersonsRequestBodyRegisteredAddress' where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("city" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyRegisteredAddress'City obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("country" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyRegisteredAddress'Country obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("line1" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyRegisteredAddress'Line1 obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("line2" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyRegisteredAddress'Line2 obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("postal_code" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyRegisteredAddress'PostalCode obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("state" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyRegisteredAddress'State obj) : GHC.Base.mempty)) toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("city" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyRegisteredAddress'City obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("country" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyRegisteredAddress'Country obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("line1" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyRegisteredAddress'Line1 obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("line2" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyRegisteredAddress'Line2 obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("postal_code" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyRegisteredAddress'PostalCode obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("state" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyRegisteredAddress'State obj) : GHC.Base.mempty))) instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountPersonsRequestBodyRegisteredAddress' where parseJSON = Data.Aeson.Types.FromJSON.withObject "PostAccountsAccountPersonsRequestBodyRegisteredAddress'" (\obj -> (((((GHC.Base.pure PostAccountsAccountPersonsRequestBodyRegisteredAddress' GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "city")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "country")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "line1")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "line2")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "postal_code")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "state")) -- | Create a new 'PostAccountsAccountPersonsRequestBodyRegisteredAddress'' with all required fields. mkPostAccountsAccountPersonsRequestBodyRegisteredAddress' :: PostAccountsAccountPersonsRequestBodyRegisteredAddress' mkPostAccountsAccountPersonsRequestBodyRegisteredAddress' = PostAccountsAccountPersonsRequestBodyRegisteredAddress' { postAccountsAccountPersonsRequestBodyRegisteredAddress'City = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyRegisteredAddress'Country = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyRegisteredAddress'Line1 = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyRegisteredAddress'Line2 = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyRegisteredAddress'PostalCode = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyRegisteredAddress'State = GHC.Maybe.Nothing } -- | Defines the object schema located at @paths.\/v1\/accounts\/{account}\/persons.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.relationship@ in the specification. -- -- The relationship that this person has with the account\'s legal entity. data PostAccountsAccountPersonsRequestBodyRelationship' = PostAccountsAccountPersonsRequestBodyRelationship' { -- | director postAccountsAccountPersonsRequestBodyRelationship'Director :: (GHC.Maybe.Maybe GHC.Types.Bool), -- | executive postAccountsAccountPersonsRequestBodyRelationship'Executive :: (GHC.Maybe.Maybe GHC.Types.Bool), -- | owner postAccountsAccountPersonsRequestBodyRelationship'Owner :: (GHC.Maybe.Maybe GHC.Types.Bool), -- | percent_ownership postAccountsAccountPersonsRequestBodyRelationship'PercentOwnership :: (GHC.Maybe.Maybe PostAccountsAccountPersonsRequestBodyRelationship'PercentOwnership'Variants), -- | representative postAccountsAccountPersonsRequestBodyRelationship'Representative :: (GHC.Maybe.Maybe GHC.Types.Bool), -- | title -- -- Constraints: -- -- * Maximum length of 5000 postAccountsAccountPersonsRequestBodyRelationship'Title :: (GHC.Maybe.Maybe Data.Text.Internal.Text) } deriving ( GHC.Show.Show, GHC.Classes.Eq ) instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountPersonsRequestBodyRelationship' where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("director" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyRelationship'Director obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("executive" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyRelationship'Executive obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("owner" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyRelationship'Owner obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("percent_ownership" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyRelationship'PercentOwnership obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("representative" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyRelationship'Representative obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("title" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyRelationship'Title obj) : GHC.Base.mempty)) toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("director" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyRelationship'Director obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("executive" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyRelationship'Executive obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("owner" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyRelationship'Owner obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("percent_ownership" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyRelationship'PercentOwnership obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("representative" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyRelationship'Representative obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("title" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyRelationship'Title obj) : GHC.Base.mempty))) instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountPersonsRequestBodyRelationship' where parseJSON = Data.Aeson.Types.FromJSON.withObject "PostAccountsAccountPersonsRequestBodyRelationship'" (\obj -> (((((GHC.Base.pure PostAccountsAccountPersonsRequestBodyRelationship' GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "director")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "executive")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "owner")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "percent_ownership")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "representative")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "title")) -- | Create a new 'PostAccountsAccountPersonsRequestBodyRelationship'' with all required fields. mkPostAccountsAccountPersonsRequestBodyRelationship' :: PostAccountsAccountPersonsRequestBodyRelationship' mkPostAccountsAccountPersonsRequestBodyRelationship' = PostAccountsAccountPersonsRequestBodyRelationship' { postAccountsAccountPersonsRequestBodyRelationship'Director = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyRelationship'Executive = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyRelationship'Owner = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyRelationship'PercentOwnership = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyRelationship'Representative = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyRelationship'Title = GHC.Maybe.Nothing } -- | Defines the oneOf schema located at @paths.\/v1\/accounts\/{account}\/persons.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.relationship.properties.percent_ownership.anyOf@ in the specification. data PostAccountsAccountPersonsRequestBodyRelationship'PercentOwnership'Variants = -- | Represents the JSON value @""@ PostAccountsAccountPersonsRequestBodyRelationship'PercentOwnership'EmptyString | PostAccountsAccountPersonsRequestBodyRelationship'PercentOwnership'Double GHC.Types.Double deriving (GHC.Show.Show, GHC.Classes.Eq) instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountPersonsRequestBodyRelationship'PercentOwnership'Variants where toJSON (PostAccountsAccountPersonsRequestBodyRelationship'PercentOwnership'Double a) = Data.Aeson.Types.ToJSON.toJSON a toJSON (PostAccountsAccountPersonsRequestBodyRelationship'PercentOwnership'EmptyString) = "" instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountPersonsRequestBodyRelationship'PercentOwnership'Variants where parseJSON val = if | val GHC.Classes.== "" -> GHC.Base.pure PostAccountsAccountPersonsRequestBodyRelationship'PercentOwnership'EmptyString | GHC.Base.otherwise -> case (PostAccountsAccountPersonsRequestBodyRelationship'PercentOwnership'Double Data.Functor.<$> Data.Aeson.Types.FromJSON.fromJSON val) GHC.Base.<|> Data.Aeson.Types.Internal.Error "No variant matched" of Data.Aeson.Types.Internal.Success a -> GHC.Base.pure a Data.Aeson.Types.Internal.Error a -> Control.Monad.Fail.fail a -- | Defines the object schema located at @paths.\/v1\/accounts\/{account}\/persons.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.verification@ in the specification. -- -- The person\'s verification status. data PostAccountsAccountPersonsRequestBodyVerification' = PostAccountsAccountPersonsRequestBodyVerification' { -- | additional_document postAccountsAccountPersonsRequestBodyVerification'AdditionalDocument :: (GHC.Maybe.Maybe PostAccountsAccountPersonsRequestBodyVerification'AdditionalDocument'), -- | document postAccountsAccountPersonsRequestBodyVerification'Document :: (GHC.Maybe.Maybe PostAccountsAccountPersonsRequestBodyVerification'Document') } deriving ( GHC.Show.Show, GHC.Classes.Eq ) instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountPersonsRequestBodyVerification' where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("additional_document" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyVerification'AdditionalDocument obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("document" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyVerification'Document obj) : GHC.Base.mempty)) toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("additional_document" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyVerification'AdditionalDocument obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("document" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyVerification'Document obj) : GHC.Base.mempty))) instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountPersonsRequestBodyVerification' where parseJSON = Data.Aeson.Types.FromJSON.withObject "PostAccountsAccountPersonsRequestBodyVerification'" (\obj -> (GHC.Base.pure PostAccountsAccountPersonsRequestBodyVerification' GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "additional_document")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "document")) -- | Create a new 'PostAccountsAccountPersonsRequestBodyVerification'' with all required fields. mkPostAccountsAccountPersonsRequestBodyVerification' :: PostAccountsAccountPersonsRequestBodyVerification' mkPostAccountsAccountPersonsRequestBodyVerification' = PostAccountsAccountPersonsRequestBodyVerification' { postAccountsAccountPersonsRequestBodyVerification'AdditionalDocument = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyVerification'Document = GHC.Maybe.Nothing } -- | Defines the object schema located at @paths.\/v1\/accounts\/{account}\/persons.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.verification.properties.additional_document@ in the specification. data PostAccountsAccountPersonsRequestBodyVerification'AdditionalDocument' = PostAccountsAccountPersonsRequestBodyVerification'AdditionalDocument' { -- | back -- -- Constraints: -- -- * Maximum length of 500 postAccountsAccountPersonsRequestBodyVerification'AdditionalDocument'Back :: (GHC.Maybe.Maybe Data.Text.Internal.Text), -- | front -- -- Constraints: -- -- * Maximum length of 500 postAccountsAccountPersonsRequestBodyVerification'AdditionalDocument'Front :: (GHC.Maybe.Maybe Data.Text.Internal.Text) } deriving ( GHC.Show.Show, GHC.Classes.Eq ) instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountPersonsRequestBodyVerification'AdditionalDocument' where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("back" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyVerification'AdditionalDocument'Back obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("front" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyVerification'AdditionalDocument'Front obj) : GHC.Base.mempty)) toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("back" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyVerification'AdditionalDocument'Back obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("front" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyVerification'AdditionalDocument'Front obj) : GHC.Base.mempty))) instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountPersonsRequestBodyVerification'AdditionalDocument' where parseJSON = Data.Aeson.Types.FromJSON.withObject "PostAccountsAccountPersonsRequestBodyVerification'AdditionalDocument'" (\obj -> (GHC.Base.pure PostAccountsAccountPersonsRequestBodyVerification'AdditionalDocument' GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "back")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "front")) -- | Create a new 'PostAccountsAccountPersonsRequestBodyVerification'AdditionalDocument'' with all required fields. mkPostAccountsAccountPersonsRequestBodyVerification'AdditionalDocument' :: PostAccountsAccountPersonsRequestBodyVerification'AdditionalDocument' mkPostAccountsAccountPersonsRequestBodyVerification'AdditionalDocument' = PostAccountsAccountPersonsRequestBodyVerification'AdditionalDocument' { postAccountsAccountPersonsRequestBodyVerification'AdditionalDocument'Back = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyVerification'AdditionalDocument'Front = GHC.Maybe.Nothing } -- | Defines the object schema located at @paths.\/v1\/accounts\/{account}\/persons.POST.requestBody.content.application\/x-www-form-urlencoded.schema.properties.verification.properties.document@ in the specification. data PostAccountsAccountPersonsRequestBodyVerification'Document' = PostAccountsAccountPersonsRequestBodyVerification'Document' { -- | back -- -- Constraints: -- -- * Maximum length of 500 postAccountsAccountPersonsRequestBodyVerification'Document'Back :: (GHC.Maybe.Maybe Data.Text.Internal.Text), -- | front -- -- Constraints: -- -- * Maximum length of 500 postAccountsAccountPersonsRequestBodyVerification'Document'Front :: (GHC.Maybe.Maybe Data.Text.Internal.Text) } deriving ( GHC.Show.Show, GHC.Classes.Eq ) instance Data.Aeson.Types.ToJSON.ToJSON PostAccountsAccountPersonsRequestBodyVerification'Document' where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("back" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyVerification'Document'Back obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("front" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyVerification'Document'Front obj) : GHC.Base.mempty)) toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("back" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyVerification'Document'Back obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("front" Data.Aeson.Types.ToJSON..=)) (postAccountsAccountPersonsRequestBodyVerification'Document'Front obj) : GHC.Base.mempty))) instance Data.Aeson.Types.FromJSON.FromJSON PostAccountsAccountPersonsRequestBodyVerification'Document' where parseJSON = Data.Aeson.Types.FromJSON.withObject "PostAccountsAccountPersonsRequestBodyVerification'Document'" (\obj -> (GHC.Base.pure PostAccountsAccountPersonsRequestBodyVerification'Document' GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "back")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "front")) -- | Create a new 'PostAccountsAccountPersonsRequestBodyVerification'Document'' with all required fields. mkPostAccountsAccountPersonsRequestBodyVerification'Document' :: PostAccountsAccountPersonsRequestBodyVerification'Document' mkPostAccountsAccountPersonsRequestBodyVerification'Document' = PostAccountsAccountPersonsRequestBodyVerification'Document' { postAccountsAccountPersonsRequestBodyVerification'Document'Back = GHC.Maybe.Nothing, postAccountsAccountPersonsRequestBodyVerification'Document'Front = GHC.Maybe.Nothing } -- | Represents a response of the operation 'postAccountsAccountPersons'. -- -- 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), 'PostAccountsAccountPersonsResponseError' is used. data PostAccountsAccountPersonsResponse = -- | Means either no matching case available or a parse error PostAccountsAccountPersonsResponseError GHC.Base.String | -- | Successful response. PostAccountsAccountPersonsResponse200 Person | -- | Error response. PostAccountsAccountPersonsResponseDefault Error deriving (GHC.Show.Show, GHC.Classes.Eq)