From ffbb67910d4420d6eb1f4f5f2be13b4c8511f6b4 Mon Sep 17 00:00:00 2001 From: devexperience Date: Tue, 17 Sep 2024 18:04:26 +0000 Subject: [PATCH] Generated version 0.38.0 This commit was automatically created by a GitHub Action to generate version 0.38.0 of this library. --- .openapi-generator/FILES | 36 + MX.Platform.CSharp.sln | 10 +- api/openapi.yaml | 629 +++++++++ docs/MicrodepositRequest.md | 16 + docs/MicrodepositRequestBody.md | 10 + docs/MicrodepositResponse.md | 23 + docs/MicrodepositResponseBody.md | 10 + docs/MicrodepositVerifyRequest.md | 11 + docs/MicrodepositVerifyRequestBody.md | 10 + docs/MicrodepositsApi.md | 491 +++++++ docs/MicrodepositsResponseBody.md | 11 + docs/TransactionCreateRequest.md | 21 + docs/TransactionCreateRequestBody.md | 10 + docs/TransactionCreateResponseBody.md | 53 + docs/TransactionsApi.md | 107 ++ openapi/config.yml | 2 +- .../Api/MicrodepositsApiTests.cs | 120 ++ .../Api/TransactionsApiTests.cs | 71 + .../Model/MicrodepositRequestBodyTests.cs | 66 + .../Model/MicrodepositRequestTests.cs | 120 ++ .../Model/MicrodepositResponseBodyTests.cs | 66 + .../Model/MicrodepositResponseTests.cs | 183 +++ .../MicrodepositVerifyRequestBodyTests.cs | 66 + .../Model/MicrodepositVerifyRequestTests.cs | 75 + .../Model/MicrodepositsResponseBodyTests.cs | 75 + .../TransactionCreateRequestBodyTests.cs | 66 + .../Model/TransactionCreateRequestTests.cs | 165 +++ .../TransactionCreateResponseBodyTests.cs | 453 ++++++ .../Api/MicrodepositsApi.cs | 1255 +++++++++++++++++ src/MX.Platform.CSharp/Api/TransactionsApi.cs | 409 ++++++ .../Client/Configuration.cs | 6 +- .../MX.Platform.CSharp.csproj | 2 +- .../Model/MicrodepositRequest.cs | 263 ++++ .../Model/MicrodepositRequestBody.cs | 128 ++ .../Model/MicrodepositResponse.cs | 374 +++++ .../Model/MicrodepositResponseBody.cs | 128 ++ .../Model/MicrodepositVerifyRequest.cs | 138 ++ .../Model/MicrodepositVerifyRequestBody.cs | 128 ++ .../Model/MicrodepositsResponseBody.cs | 147 ++ .../Model/TransactionCreateRequest.cs | 341 +++++ .../Model/TransactionCreateRequestBody.cs | 128 ++ .../Model/TransactionCreateResponseBody.cs | 927 ++++++++++++ 42 files changed, 7340 insertions(+), 10 deletions(-) create mode 100644 docs/MicrodepositRequest.md create mode 100644 docs/MicrodepositRequestBody.md create mode 100644 docs/MicrodepositResponse.md create mode 100644 docs/MicrodepositResponseBody.md create mode 100644 docs/MicrodepositVerifyRequest.md create mode 100644 docs/MicrodepositVerifyRequestBody.md create mode 100644 docs/MicrodepositsApi.md create mode 100644 docs/MicrodepositsResponseBody.md create mode 100644 docs/TransactionCreateRequest.md create mode 100644 docs/TransactionCreateRequestBody.md create mode 100644 docs/TransactionCreateResponseBody.md create mode 100644 docs/TransactionsApi.md create mode 100644 src/MX.Platform.CSharp.Test/Api/MicrodepositsApiTests.cs create mode 100644 src/MX.Platform.CSharp.Test/Api/TransactionsApiTests.cs create mode 100644 src/MX.Platform.CSharp.Test/Model/MicrodepositRequestBodyTests.cs create mode 100644 src/MX.Platform.CSharp.Test/Model/MicrodepositRequestTests.cs create mode 100644 src/MX.Platform.CSharp.Test/Model/MicrodepositResponseBodyTests.cs create mode 100644 src/MX.Platform.CSharp.Test/Model/MicrodepositResponseTests.cs create mode 100644 src/MX.Platform.CSharp.Test/Model/MicrodepositVerifyRequestBodyTests.cs create mode 100644 src/MX.Platform.CSharp.Test/Model/MicrodepositVerifyRequestTests.cs create mode 100644 src/MX.Platform.CSharp.Test/Model/MicrodepositsResponseBodyTests.cs create mode 100644 src/MX.Platform.CSharp.Test/Model/TransactionCreateRequestBodyTests.cs create mode 100644 src/MX.Platform.CSharp.Test/Model/TransactionCreateRequestTests.cs create mode 100644 src/MX.Platform.CSharp.Test/Model/TransactionCreateResponseBodyTests.cs create mode 100644 src/MX.Platform.CSharp/Api/MicrodepositsApi.cs create mode 100644 src/MX.Platform.CSharp/Api/TransactionsApi.cs create mode 100644 src/MX.Platform.CSharp/Model/MicrodepositRequest.cs create mode 100644 src/MX.Platform.CSharp/Model/MicrodepositRequestBody.cs create mode 100644 src/MX.Platform.CSharp/Model/MicrodepositResponse.cs create mode 100644 src/MX.Platform.CSharp/Model/MicrodepositResponseBody.cs create mode 100644 src/MX.Platform.CSharp/Model/MicrodepositVerifyRequest.cs create mode 100644 src/MX.Platform.CSharp/Model/MicrodepositVerifyRequestBody.cs create mode 100644 src/MX.Platform.CSharp/Model/MicrodepositsResponseBody.cs create mode 100644 src/MX.Platform.CSharp/Model/TransactionCreateRequest.cs create mode 100644 src/MX.Platform.CSharp/Model/TransactionCreateRequestBody.cs create mode 100644 src/MX.Platform.CSharp/Model/TransactionCreateResponseBody.cs diff --git a/.openapi-generator/FILES b/.openapi-generator/FILES index 8b171c0..c9743e9 100644 --- a/.openapi-generator/FILES +++ b/.openapi-generator/FILES @@ -94,6 +94,14 @@ docs/MerchantLocationResponseBody.md docs/MerchantResponse.md docs/MerchantResponseBody.md docs/MerchantsResponseBody.md +docs/MicrodepositRequest.md +docs/MicrodepositRequestBody.md +docs/MicrodepositResponse.md +docs/MicrodepositResponseBody.md +docs/MicrodepositVerifyRequest.md +docs/MicrodepositVerifyRequestBody.md +docs/MicrodepositsApi.md +docs/MicrodepositsResponseBody.md docs/MonthlyCashFlowProfileRequest.md docs/MonthlyCashFlowProfileRequestBody.md docs/MonthlyCashFlowResponse.md @@ -149,6 +157,9 @@ docs/TagsResponseBody.md docs/TaxDocumentResponse.md docs/TaxDocumentResponseBody.md docs/TaxDocumentsResponseBody.md +docs/TransactionCreateRequest.md +docs/TransactionCreateRequestBody.md +docs/TransactionCreateResponseBody.md docs/TransactionResponse.md docs/TransactionResponseBody.md docs/TransactionRuleCreateRequest.md @@ -160,6 +171,7 @@ docs/TransactionRuleUpdateRequestBody.md docs/TransactionRulesResponseBody.md docs/TransactionUpdateRequest.md docs/TransactionUpdateRequestBody.md +docs/TransactionsApi.md docs/TransactionsResponseBody.md docs/UpdateGoalRequest.md docs/UpdateGoalRequestBody.md @@ -177,8 +189,10 @@ docs/WidgetResponseBody.md src/MX.Platform.CSharp.Test/Api/BudgetsApiTests.cs src/MX.Platform.CSharp.Test/Api/GoalsApiTests.cs src/MX.Platform.CSharp.Test/Api/InsightsApiTests.cs +src/MX.Platform.CSharp.Test/Api/MicrodepositsApiTests.cs src/MX.Platform.CSharp.Test/Api/MxPlatformApiTests.cs src/MX.Platform.CSharp.Test/Api/SpendingPlanApiTests.cs +src/MX.Platform.CSharp.Test/Api/TransactionsApiTests.cs src/MX.Platform.CSharp.Test/MX.Platform.CSharp.Test.csproj src/MX.Platform.CSharp.Test/Model/AccountCreateRequestBodyTests.cs src/MX.Platform.CSharp.Test/Model/AccountCreateRequestTests.cs @@ -268,6 +282,13 @@ src/MX.Platform.CSharp.Test/Model/MerchantLocationResponseTests.cs src/MX.Platform.CSharp.Test/Model/MerchantResponseBodyTests.cs src/MX.Platform.CSharp.Test/Model/MerchantResponseTests.cs src/MX.Platform.CSharp.Test/Model/MerchantsResponseBodyTests.cs +src/MX.Platform.CSharp.Test/Model/MicrodepositRequestBodyTests.cs +src/MX.Platform.CSharp.Test/Model/MicrodepositRequestTests.cs +src/MX.Platform.CSharp.Test/Model/MicrodepositResponseBodyTests.cs +src/MX.Platform.CSharp.Test/Model/MicrodepositResponseTests.cs +src/MX.Platform.CSharp.Test/Model/MicrodepositVerifyRequestBodyTests.cs +src/MX.Platform.CSharp.Test/Model/MicrodepositVerifyRequestTests.cs +src/MX.Platform.CSharp.Test/Model/MicrodepositsResponseBodyTests.cs src/MX.Platform.CSharp.Test/Model/MonthlyCashFlowProfileRequestBodyTests.cs src/MX.Platform.CSharp.Test/Model/MonthlyCashFlowProfileRequestTests.cs src/MX.Platform.CSharp.Test/Model/MonthlyCashFlowResponseBodyTests.cs @@ -321,6 +342,9 @@ src/MX.Platform.CSharp.Test/Model/TagsResponseBodyTests.cs src/MX.Platform.CSharp.Test/Model/TaxDocumentResponseBodyTests.cs src/MX.Platform.CSharp.Test/Model/TaxDocumentResponseTests.cs src/MX.Platform.CSharp.Test/Model/TaxDocumentsResponseBodyTests.cs +src/MX.Platform.CSharp.Test/Model/TransactionCreateRequestBodyTests.cs +src/MX.Platform.CSharp.Test/Model/TransactionCreateRequestTests.cs +src/MX.Platform.CSharp.Test/Model/TransactionCreateResponseBodyTests.cs src/MX.Platform.CSharp.Test/Model/TransactionResponseBodyTests.cs src/MX.Platform.CSharp.Test/Model/TransactionResponseTests.cs src/MX.Platform.CSharp.Test/Model/TransactionRuleCreateRequestBodyTests.cs @@ -349,8 +373,10 @@ src/MX.Platform.CSharp.Test/Model/WidgetResponseTests.cs src/MX.Platform.CSharp/Api/BudgetsApi.cs src/MX.Platform.CSharp/Api/GoalsApi.cs src/MX.Platform.CSharp/Api/InsightsApi.cs +src/MX.Platform.CSharp/Api/MicrodepositsApi.cs src/MX.Platform.CSharp/Api/MxPlatformApi.cs src/MX.Platform.CSharp/Api/SpendingPlanApi.cs +src/MX.Platform.CSharp/Api/TransactionsApi.cs src/MX.Platform.CSharp/Client/ApiClient.cs src/MX.Platform.CSharp/Client/ApiException.cs src/MX.Platform.CSharp/Client/ApiResponse.cs @@ -457,6 +483,13 @@ src/MX.Platform.CSharp/Model/MerchantLocationResponseBody.cs src/MX.Platform.CSharp/Model/MerchantResponse.cs src/MX.Platform.CSharp/Model/MerchantResponseBody.cs src/MX.Platform.CSharp/Model/MerchantsResponseBody.cs +src/MX.Platform.CSharp/Model/MicrodepositRequest.cs +src/MX.Platform.CSharp/Model/MicrodepositRequestBody.cs +src/MX.Platform.CSharp/Model/MicrodepositResponse.cs +src/MX.Platform.CSharp/Model/MicrodepositResponseBody.cs +src/MX.Platform.CSharp/Model/MicrodepositVerifyRequest.cs +src/MX.Platform.CSharp/Model/MicrodepositVerifyRequestBody.cs +src/MX.Platform.CSharp/Model/MicrodepositsResponseBody.cs src/MX.Platform.CSharp/Model/MonthlyCashFlowProfileRequest.cs src/MX.Platform.CSharp/Model/MonthlyCashFlowProfileRequestBody.cs src/MX.Platform.CSharp/Model/MonthlyCashFlowResponse.cs @@ -510,6 +543,9 @@ src/MX.Platform.CSharp/Model/TagsResponseBody.cs src/MX.Platform.CSharp/Model/TaxDocumentResponse.cs src/MX.Platform.CSharp/Model/TaxDocumentResponseBody.cs src/MX.Platform.CSharp/Model/TaxDocumentsResponseBody.cs +src/MX.Platform.CSharp/Model/TransactionCreateRequest.cs +src/MX.Platform.CSharp/Model/TransactionCreateRequestBody.cs +src/MX.Platform.CSharp/Model/TransactionCreateResponseBody.cs src/MX.Platform.CSharp/Model/TransactionResponse.cs src/MX.Platform.CSharp/Model/TransactionResponseBody.cs src/MX.Platform.CSharp/Model/TransactionRuleCreateRequest.cs diff --git a/MX.Platform.CSharp.sln b/MX.Platform.CSharp.sln index f4714de..6c9b02b 100644 --- a/MX.Platform.CSharp.sln +++ b/MX.Platform.CSharp.sln @@ -2,7 +2,7 @@ Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio 2012 VisualStudioVersion = 12.0.0.0 MinimumVisualStudioVersion = 10.0.0.1 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MX.Platform.CSharp", "src\MX.Platform.CSharp\MX.Platform.CSharp.csproj", "{038AE141-B508-47A3-801A-CD166C7F27E1}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MX.Platform.CSharp", "src\MX.Platform.CSharp\MX.Platform.CSharp.csproj", "{7A3B779C-1B4A-4E3B-8402-E498270F90D1}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MX.Platform.CSharp.Test", "src\MX.Platform.CSharp.Test\MX.Platform.CSharp.Test.csproj", "{19F1DEBC-DE5E-4517-8062-F000CD499087}" EndProject @@ -12,10 +12,10 @@ Global Release|Any CPU = Release|Any CPU EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution - {038AE141-B508-47A3-801A-CD166C7F27E1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {038AE141-B508-47A3-801A-CD166C7F27E1}.Debug|Any CPU.Build.0 = Debug|Any CPU - {038AE141-B508-47A3-801A-CD166C7F27E1}.Release|Any CPU.ActiveCfg = Release|Any CPU - {038AE141-B508-47A3-801A-CD166C7F27E1}.Release|Any CPU.Build.0 = Release|Any CPU + {7A3B779C-1B4A-4E3B-8402-E498270F90D1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {7A3B779C-1B4A-4E3B-8402-E498270F90D1}.Debug|Any CPU.Build.0 = Debug|Any CPU + {7A3B779C-1B4A-4E3B-8402-E498270F90D1}.Release|Any CPU.ActiveCfg = Release|Any CPU + {7A3B779C-1B4A-4E3B-8402-E498270F90D1}.Release|Any CPU.Build.0 = Release|Any CPU {19F1DEBC-DE5E-4517-8062-F000CD499087}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {19F1DEBC-DE5E-4517-8062-F000CD499087}.Debug|Any CPU.Build.0 = Debug|Any CPU {19F1DEBC-DE5E-4517-8062-F000CD499087}.Release|Any CPU.ActiveCfg = Release|Any CPU diff --git a/api/openapi.yaml b/api/openapi.yaml index 8fb243a..ea47fac 100644 --- a/api/openapi.yaml +++ b/api/openapi.yaml @@ -1038,6 +1038,43 @@ paths: summary: List transactions by account tags: - mx_platform + post: + description: This endpoint can only be used to create manual transactions that + are under a manual account. This endpoint accepts the optional MX-Skip-Webhook + header and skip_webhook parameter. + parameters: + - description: The unique identifier for the user. + explode: false + in: path + name: user_guid + required: true + schema: + type: string + style: simple + - description: The unique identifier for the account. + explode: false + in: path + name: account_guid + required: true + schema: + type: string + style: simple + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/TransactionCreateRequestBody' + required: true + responses: + "200": + content: + application/vnd.mx.api.v1+json: + schema: + $ref: '#/components/schemas/TransactionCreateResponseBody' + description: OK + summary: Create manual transaction + tags: + - transactions /users/{user_guid}/budgets/generate: post: description: "This endpoint will automatically create budgets for several categories\ @@ -4294,6 +4331,148 @@ paths: summary: Verify member tags: - mx_platform + /users/{user_guid}/micro_deposits: + get: + description: Use this endpoint to read the attributes of a specific microdeposit + according to its unique GUID. + parameters: + - description: The unique identifier for the user. Defined by MX. + explode: false + in: path + name: user_guid + required: true + schema: + type: string + style: simple + responses: + "200": + content: + application/json: + schema: + $ref: '#/components/schemas/MicrodepositsResponseBody' + description: OK + summary: List all microdeposits for a user + tags: + - microdeposits + post: + description: Use this endpoint to create a microdeposit. The response will include + the new microdeposit record with a status of INITIATED. + parameters: + - description: The unique identifier for the user. Defined by MX. + explode: false + in: path + name: user_guid + required: true + schema: + type: string + style: simple + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/MicrodepositRequestBody' + required: true + responses: + "200": + content: + application/json: + schema: + $ref: '#/components/schemas/MicrodepositResponseBody' + description: OK + summary: Create a microdeposit + tags: + - microdeposits + /users/{user_guid}/micro_deposits/{micro_deposit_guid}: + delete: + description: Use this endpoint to delete the specified microdeposit. + parameters: + - description: The unique identifier for the microdeposit. Defined by MX. + example: MIC-09ba578e-8448-4f7f-89e1-b62ff2517edb + explode: false + in: path + name: micro_deposit_guid + required: true + schema: + type: string + style: simple + - description: The unique id for a `user`. + example: USR-fa7537f3-48aa-a683-a02a-b18940482f54 + explode: false + in: path + name: user_guid + required: true + schema: + type: string + style: simple + responses: + "204": + description: No Content + summary: Delete a microdeposit + tags: + - microdeposits + get: + description: Use this endpoint to read the attributes of a specific microdeposit + according to its unique GUID.

Webhooks for microdeposit status changes + are triggered when a status changes. The actual status of the microdeposit + guid updates every minute. You may force a status update by calling the read + microdeposit endpoint. + parameters: + - description: The unique identifier for the user. Defined by MX. + explode: false + in: path + name: user_guid + required: true + schema: + type: string + style: simple + - description: The unique identifier for the microdeposit. Defined by MX. + explode: false + in: path + name: micro_deposit_guid + required: true + schema: + type: string + style: simple + responses: + "200": + content: + application/json: + schema: + $ref: '#/components/schemas/MicrodepositResponseBody' + description: OK + summary: Read a microdeposit for a user + tags: + - microdeposits + /micro_deposits/{microdeposit_guid}/verify: + put: + description: "Use this endpoint to verify the amounts deposited into the account\ + \ during a microdeposit verification. The verification has not successfully\ + \ completed until the `status` is `VERIFIED`. Poll the `/users/{user_guid}/micro_deposits/{micro_deposit_guid}`\ + \ (read microdeposit) endpoint until you see this status or an error state." + parameters: + - description: The unique identifier for the microdeposit. Defined by MX. + explode: false + in: path + name: microdeposit_guid + required: true + schema: + type: string + style: simple + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/MicrodepositVerifyRequestBody' + responses: + "200": + content: + application/json: + schema: + $ref: '#/components/schemas/MicrodepositResponseBody' + description: OK + summary: Verify a Microdeposit + tags: + - microdeposits /users/{user_guid}/monthly_cash_flow_profile: get: parameters: @@ -8794,6 +8973,197 @@ components: pagination: $ref: '#/components/schemas/PaginationResponse' type: object + MicrodepositVerifyRequest: + example: + deposit_amount_1: 0 + deposit_amount_2: 6 + properties: + deposit_amount_1: + type: integer + deposit_amount_2: + type: integer + MicrodepositVerifyRequestBody: + example: + micro_deposit: + deposit_amount_1: 0 + deposit_amount_2: 6 + properties: + micro_deposit: + $ref: '#/components/schemas/MicrodepositVerifyRequest' + type: object + MicrodepositRequest: + example: + account_number: "3331261" + account_type: CHECKING + account_name: My test account + last_name: Grobanne + routing_number: "091000019" + first_name: Joshy + email: joshyboy2@example.com + properties: + account_number: + example: "3331261" + type: string + account_type: + example: CHECKING + type: string + routing_number: + example: "091000019" + type: string + account_name: + example: My test account + type: string + email: + example: joshyboy2@example.com + type: string + first_name: + example: Joshy + type: string + last_name: + example: Grobanne + type: string + required: + - account_number + - account_type + - routing_number + MicrodepositRequestBody: + example: + micro_deposit: + account_number: "3331261" + account_type: CHECKING + account_name: My test account + last_name: Grobanne + routing_number: "091000019" + first_name: Joshy + email: joshyboy2@example.com + properties: + micro_deposit: + $ref: '#/components/schemas/MicrodepositRequest' + type: object + MicrodepositResponse: + example: + error_message: error_message + account_number: "3331261" + account_type: CHECKING + last_name: Grobanne + routing_number: "091000019" + institution_name: MX Bank + institution_code: mxbank + updated_at: 2023-06-01T19:18:06Z + verified_at: verified_at + account_name: My test account + guid: MIC-09ba578e-8448-4f7f-89e1-b62ff2517edb + first_name: Joshy + email: joshyboy2@example.com + status: INITIATED + properties: + account_name: + example: My test account + type: string + account_number: + example: "3331261" + type: string + account_type: + example: CHECKING + type: string + email: + example: joshyboy2@example.com + type: string + first_name: + example: Joshy + type: string + last_name: + example: Grobanne + type: string + routing_number: + example: "091000019" + type: string + error_message: + type: string + example: null + guid: + example: MIC-09ba578e-8448-4f7f-89e1-b62ff2517edb + type: string + institution_code: + example: mxbank + type: string + institution_name: + example: MX Bank + type: string + status: + example: INITIATED + type: string + updated_at: + example: 2023-06-01T19:18:06Z + type: string + verified_at: + type: string + example: null + MicrodepositResponseBody: + example: + micro_deposit: + error_message: error_message + account_number: "3331261" + account_type: CHECKING + last_name: Grobanne + routing_number: "091000019" + institution_name: MX Bank + institution_code: mxbank + updated_at: 2023-06-01T19:18:06Z + verified_at: verified_at + account_name: My test account + guid: MIC-09ba578e-8448-4f7f-89e1-b62ff2517edb + first_name: Joshy + email: joshyboy2@example.com + status: INITIATED + properties: + micro_deposit: + $ref: '#/components/schemas/MicrodepositResponse' + type: object + MicrodepositsResponseBody: + example: + micro_deposits: + - error_message: error_message + account_number: "3331261" + account_type: CHECKING + last_name: Grobanne + routing_number: "091000019" + institution_name: MX Bank + institution_code: mxbank + updated_at: 2023-06-01T19:18:06Z + verified_at: verified_at + account_name: My test account + guid: MIC-09ba578e-8448-4f7f-89e1-b62ff2517edb + first_name: Joshy + email: joshyboy2@example.com + status: INITIATED + - error_message: error_message + account_number: "3331261" + account_type: CHECKING + last_name: Grobanne + routing_number: "091000019" + institution_name: MX Bank + institution_code: mxbank + updated_at: 2023-06-01T19:18:06Z + verified_at: verified_at + account_name: My test account + guid: MIC-09ba578e-8448-4f7f-89e1-b62ff2517edb + first_name: Joshy + email: joshyboy2@example.com + status: INITIATED + pagination: + per_page: 25 + total_pages: 1 + current_page: 1 + total_entries: 1 + properties: + micro_deposits: + items: + $ref: '#/components/schemas/MicrodepositResponse' + type: array + pagination: + $ref: '#/components/schemas/PaginationResponse' + type: object MonthlyCashFlowResponse: example: budgeted_income: 1200.12 @@ -9655,6 +10025,265 @@ components: $ref: '#/components/schemas/TaxDocumentResponse' type: array type: object + TransactionCreateRequest: + example: + date: 2016-10-06 + amount: 61.11 + metadata: some metadata + category_guid: CAT-b6d61a19-30a7-e852-2703-bdfb4072289e + is_hidden: false + description: Whole foods + memo: This is a memo + type: DEBIT + has_been_viewed: false + is_international: false + currency_code: USD + skip_webhook: true + properties: + amount: + example: 61.11 + type: number + date: + example: 2016-10-06 + type: string + description: + example: Whole foods + type: string + type: + description: "The type of transaction, which must be CREDIT or DEBIT. See\ + \ Transaction Fields for more information." + example: DEBIT + type: string + category_guid: + description: Unique identifier of the category. + example: CAT-b6d61a19-30a7-e852-2703-bdfb4072289e + type: string + currency_code: + example: USD + type: string + has_been_viewed: + example: false + type: boolean + is_hidden: + example: false + type: boolean + is_international: + example: false + type: boolean + memo: + example: This is a memo + type: string + metadata: + example: some metadata + type: string + skip_webhook: + description: "When set to true, this parameter will prevent a webhook from\ + \ being triggered by the request." + example: true + type: boolean + required: + - amount + - date + - description + - type + TransactionCreateRequestBody: + example: + transaction: + date: 2016-10-06 + amount: 61.11 + metadata: some metadata + category_guid: CAT-b6d61a19-30a7-e852-2703-bdfb4072289e + is_hidden: false + description: Whole foods + memo: This is a memo + type: DEBIT + has_been_viewed: false + is_international: false + currency_code: USD + skip_webhook: true + properties: + transaction: + $ref: '#/components/schemas/TransactionCreateRequest' + type: object + TransactionCreateResponseBody: + properties: + account_guid: + example: ACT-06d7f44b-caae-0f6e-1384-01f52e75dcb1 + nullable: true + type: string + account_id: + example: account123 + nullable: true + type: string + amount: + example: 61.11 + nullable: false + type: number + category: + example: Groceries + nullable: true + type: string + category_guid: + example: CAT-b6d61a19-30a7-e852-2703-bdfb4072289e + nullable: true + type: string + check_number_string: + nullable: true + type: string + example: null + created_at: + example: 2016-10-08T09:43:42.000Z + nullable: true + type: string + currency_code: + example: USD + nullable: true + type: string + date: + example: 2016-10-06T00:00:00.000Z + nullable: true + type: string + description: + example: Whole foods + nullable: true + type: string + extended_transaction_type: + nullable: true + type: string + example: null + guid: + example: TRN-265abee9-889b-af6a-c69b-25157db2bdd9 + nullable: true + type: string + id: + nullable: true + type: string + example: null + is_bill_pay: + example: false + nullable: true + type: boolean + is_direct_deposit: + example: false + nullable: true + type: boolean + is_expense: + example: true + nullable: true + type: boolean + is_fee: + example: false + nullable: true + type: boolean + is_income: + example: false + nullable: true + type: boolean + is_international: + example: false + nullable: true + type: boolean + is_manual: + example: true + nullable: true + type: boolean + is_overdraft_fee: + example: false + nullable: true + type: boolean + is_payroll_advance: + example: false + nullable: true + type: boolean + is_recurring: + nullable: true + type: boolean + example: null + is_subscription: + example: false + nullable: true + type: boolean + latitude: + nullable: true + type: number + example: null + localized_description: + nullable: true + type: string + example: null + localized_memo: + nullable: true + type: string + example: null + longitude: + nullable: true + type: number + example: null + member_guid: + example: MBR-7c6f361b-e582-15b6-60c0-358f12466b4b + nullable: true + type: string + member_is_managed_by_user: + example: true + nullable: true + type: boolean + memo: + example: This is a memo + nullable: true + type: string + merchant_category_code: + nullable: true + type: integer + example: null + merchant_guid: + nullable: true + type: string + example: null + merchant_location_guid: + nullable: true + type: string + example: null + metadata: + example: some metadata + nullable: true + type: string + original_description: + nullable: true + type: string + example: null + posted_at: + nullable: true + type: string + example: null + status: + nullable: true + type: string + example: null + top_level_category: + example: Food & Dining + nullable: true + type: string + transacted_at: + nullable: true + type: string + example: null + type: + example: DEBIT + nullable: false + type: string + updated_at: + example: 2016-10-08T05:49:12.000Z + nullable: false + type: string + user_guid: + example: USR-fa7537f3-48aa-a683-a02a-b18940482f54 + nullable: true + type: string + user_id: + example: user123 + nullable: true + type: string + type: object TransactionResponse: properties: account_guid: diff --git a/docs/MicrodepositRequest.md b/docs/MicrodepositRequest.md new file mode 100644 index 0000000..a175222 --- /dev/null +++ b/docs/MicrodepositRequest.md @@ -0,0 +1,16 @@ +# MX.Platform.CSharp.Model.MicrodepositRequest + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**AccountNumber** | **string** | | +**AccountType** | **string** | | +**RoutingNumber** | **string** | | +**AccountName** | **string** | | [optional] +**Email** | **string** | | [optional] +**FirstName** | **string** | | [optional] +**LastName** | **string** | | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + diff --git a/docs/MicrodepositRequestBody.md b/docs/MicrodepositRequestBody.md new file mode 100644 index 0000000..5648590 --- /dev/null +++ b/docs/MicrodepositRequestBody.md @@ -0,0 +1,10 @@ +# MX.Platform.CSharp.Model.MicrodepositRequestBody + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**MicroDeposit** | [**MicrodepositRequest**](MicrodepositRequest.md) | | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + diff --git a/docs/MicrodepositResponse.md b/docs/MicrodepositResponse.md new file mode 100644 index 0000000..7004e6b --- /dev/null +++ b/docs/MicrodepositResponse.md @@ -0,0 +1,23 @@ +# MX.Platform.CSharp.Model.MicrodepositResponse + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**AccountName** | **string** | | [optional] +**AccountNumber** | **string** | | [optional] +**AccountType** | **string** | | [optional] +**Email** | **string** | | [optional] +**FirstName** | **string** | | [optional] +**LastName** | **string** | | [optional] +**RoutingNumber** | **string** | | [optional] +**ErrorMessage** | **string** | | [optional] +**Guid** | **string** | | [optional] +**InstitutionCode** | **string** | | [optional] +**InstitutionName** | **string** | | [optional] +**Status** | **string** | | [optional] +**UpdatedAt** | **string** | | [optional] +**VerifiedAt** | **string** | | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + diff --git a/docs/MicrodepositResponseBody.md b/docs/MicrodepositResponseBody.md new file mode 100644 index 0000000..f0e8f6f --- /dev/null +++ b/docs/MicrodepositResponseBody.md @@ -0,0 +1,10 @@ +# MX.Platform.CSharp.Model.MicrodepositResponseBody + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**MicroDeposit** | [**MicrodepositResponse**](MicrodepositResponse.md) | | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + diff --git a/docs/MicrodepositVerifyRequest.md b/docs/MicrodepositVerifyRequest.md new file mode 100644 index 0000000..d25c9ca --- /dev/null +++ b/docs/MicrodepositVerifyRequest.md @@ -0,0 +1,11 @@ +# MX.Platform.CSharp.Model.MicrodepositVerifyRequest + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**DepositAmount1** | **int** | | [optional] +**DepositAmount2** | **int** | | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + diff --git a/docs/MicrodepositVerifyRequestBody.md b/docs/MicrodepositVerifyRequestBody.md new file mode 100644 index 0000000..e78e03a --- /dev/null +++ b/docs/MicrodepositVerifyRequestBody.md @@ -0,0 +1,10 @@ +# MX.Platform.CSharp.Model.MicrodepositVerifyRequestBody + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**MicroDeposit** | [**MicrodepositVerifyRequest**](MicrodepositVerifyRequest.md) | | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + diff --git a/docs/MicrodepositsApi.md b/docs/MicrodepositsApi.md new file mode 100644 index 0000000..5b31a6d --- /dev/null +++ b/docs/MicrodepositsApi.md @@ -0,0 +1,491 @@ +# MX.Platform.CSharp.Api.MicrodepositsApi + +All URIs are relative to *https://api.mx.com* + +| Method | HTTP request | Description | +|--------|--------------|-------------| +| [**MicroDepositsMicrodepositGuidVerifyPut**](MicrodepositsApi.md#microdepositsmicrodepositguidverifyput) | **PUT** /micro_deposits/{microdeposit_guid}/verify | Verify a Microdeposit | +| [**UsersUserGuidMicroDepositsGet**](MicrodepositsApi.md#usersuserguidmicrodepositsget) | **GET** /users/{user_guid}/micro_deposits | List all microdeposits for a user | +| [**UsersUserGuidMicroDepositsMicroDepositGuidDelete**](MicrodepositsApi.md#usersuserguidmicrodepositsmicrodepositguiddelete) | **DELETE** /users/{user_guid}/micro_deposits/{micro_deposit_guid} | Delete a microdeposit | +| [**UsersUserGuidMicroDepositsMicroDepositGuidGet**](MicrodepositsApi.md#usersuserguidmicrodepositsmicrodepositguidget) | **GET** /users/{user_guid}/micro_deposits/{micro_deposit_guid} | Read a microdeposit for a user | +| [**UsersUserGuidMicroDepositsPost**](MicrodepositsApi.md#usersuserguidmicrodepositspost) | **POST** /users/{user_guid}/micro_deposits | Create a microdeposit | + + +# **MicroDepositsMicrodepositGuidVerifyPut** +> MicrodepositResponseBody MicroDepositsMicrodepositGuidVerifyPut (string microdepositGuid, MicrodepositVerifyRequestBody? microdepositVerifyRequestBody = null) + +Verify a Microdeposit + +Use this endpoint to verify the amounts deposited into the account during a microdeposit verification. The verification has not successfully completed until the `status` is `VERIFIED`. Poll the `/users/{user_guid}/micro_deposits/{micro_deposit_guid}` (read microdeposit) endpoint until you see this status or an error state. + +### Example +```csharp +using System.Collections.Generic; +using System.Diagnostics; +using MX.Platform.CSharp.Api; +using MX.Platform.CSharp.Client; +using MX.Platform.CSharp.Model; + +namespace Example +{ + public class MicroDepositsMicrodepositGuidVerifyPutExample + { + public static void Main() + { + Configuration config = new Configuration(); + config.BasePath = "https://api.mx.com"; + // Configure HTTP basic authorization: basicAuth + config.Username = "YOUR_USERNAME"; + config.Password = "YOUR_PASSWORD"; + + var apiInstance = new MicrodepositsApi(config); + var microdepositGuid = "microdepositGuid_example"; // string | The unique identifier for the microdeposit. Defined by MX. + var microdepositVerifyRequestBody = new MicrodepositVerifyRequestBody?(); // MicrodepositVerifyRequestBody? | (optional) + + try + { + // Verify a Microdeposit + MicrodepositResponseBody result = apiInstance.MicroDepositsMicrodepositGuidVerifyPut(microdepositGuid, microdepositVerifyRequestBody); + Debug.WriteLine(result); + } + catch (ApiException e) + { + Debug.Print("Exception when calling MicrodepositsApi.MicroDepositsMicrodepositGuidVerifyPut: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); + } + } + } +} +``` + +#### Using the MicroDepositsMicrodepositGuidVerifyPutWithHttpInfo variant +This returns an ApiResponse object which contains the response data, status code and headers. + +```csharp +try +{ + // Verify a Microdeposit + ApiResponse response = apiInstance.MicroDepositsMicrodepositGuidVerifyPutWithHttpInfo(microdepositGuid, microdepositVerifyRequestBody); + Debug.Write("Status Code: " + response.StatusCode); + Debug.Write("Response Headers: " + response.Headers); + Debug.Write("Response Body: " + response.Data); +} +catch (ApiException e) +{ + Debug.Print("Exception when calling MicrodepositsApi.MicroDepositsMicrodepositGuidVerifyPutWithHttpInfo: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); +} +``` + +### Parameters + +| Name | Type | Description | Notes | +|------|------|-------------|-------| +| **microdepositGuid** | **string** | The unique identifier for the microdeposit. Defined by MX. | | +| **microdepositVerifyRequestBody** | [**MicrodepositVerifyRequestBody?**](MicrodepositVerifyRequestBody?.md) | | [optional] | + +### Return type + +[**MicrodepositResponseBody**](MicrodepositResponseBody.md) + +### Authorization + +[basicAuth](../README.md#basicAuth) + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: application/json + + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | OK | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + + +# **UsersUserGuidMicroDepositsGet** +> MicrodepositsResponseBody UsersUserGuidMicroDepositsGet (string userGuid) + +List all microdeposits for a user + +Use this endpoint to read the attributes of a specific microdeposit according to its unique GUID. + +### Example +```csharp +using System.Collections.Generic; +using System.Diagnostics; +using MX.Platform.CSharp.Api; +using MX.Platform.CSharp.Client; +using MX.Platform.CSharp.Model; + +namespace Example +{ + public class UsersUserGuidMicroDepositsGetExample + { + public static void Main() + { + Configuration config = new Configuration(); + config.BasePath = "https://api.mx.com"; + // Configure HTTP basic authorization: basicAuth + config.Username = "YOUR_USERNAME"; + config.Password = "YOUR_PASSWORD"; + + var apiInstance = new MicrodepositsApi(config); + var userGuid = "userGuid_example"; // string | The unique identifier for the user. Defined by MX. + + try + { + // List all microdeposits for a user + MicrodepositsResponseBody result = apiInstance.UsersUserGuidMicroDepositsGet(userGuid); + Debug.WriteLine(result); + } + catch (ApiException e) + { + Debug.Print("Exception when calling MicrodepositsApi.UsersUserGuidMicroDepositsGet: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); + } + } + } +} +``` + +#### Using the UsersUserGuidMicroDepositsGetWithHttpInfo variant +This returns an ApiResponse object which contains the response data, status code and headers. + +```csharp +try +{ + // List all microdeposits for a user + ApiResponse response = apiInstance.UsersUserGuidMicroDepositsGetWithHttpInfo(userGuid); + Debug.Write("Status Code: " + response.StatusCode); + Debug.Write("Response Headers: " + response.Headers); + Debug.Write("Response Body: " + response.Data); +} +catch (ApiException e) +{ + Debug.Print("Exception when calling MicrodepositsApi.UsersUserGuidMicroDepositsGetWithHttpInfo: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); +} +``` + +### Parameters + +| Name | Type | Description | Notes | +|------|------|-------------|-------| +| **userGuid** | **string** | The unique identifier for the user. Defined by MX. | | + +### Return type + +[**MicrodepositsResponseBody**](MicrodepositsResponseBody.md) + +### Authorization + +[basicAuth](../README.md#basicAuth) + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | OK | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + + +# **UsersUserGuidMicroDepositsMicroDepositGuidDelete** +> void UsersUserGuidMicroDepositsMicroDepositGuidDelete (string microDepositGuid, string userGuid) + +Delete a microdeposit + +Use this endpoint to delete the specified microdeposit. + +### Example +```csharp +using System.Collections.Generic; +using System.Diagnostics; +using MX.Platform.CSharp.Api; +using MX.Platform.CSharp.Client; +using MX.Platform.CSharp.Model; + +namespace Example +{ + public class UsersUserGuidMicroDepositsMicroDepositGuidDeleteExample + { + public static void Main() + { + Configuration config = new Configuration(); + config.BasePath = "https://api.mx.com"; + // Configure HTTP basic authorization: basicAuth + config.Username = "YOUR_USERNAME"; + config.Password = "YOUR_PASSWORD"; + + var apiInstance = new MicrodepositsApi(config); + var microDepositGuid = MIC-09ba578e-8448-4f7f-89e1-b62ff2517edb; // string | The unique identifier for the microdeposit. Defined by MX. + var userGuid = USR-fa7537f3-48aa-a683-a02a-b18940482f54; // string | The unique id for a `user`. + + try + { + // Delete a microdeposit + apiInstance.UsersUserGuidMicroDepositsMicroDepositGuidDelete(microDepositGuid, userGuid); + } + catch (ApiException e) + { + Debug.Print("Exception when calling MicrodepositsApi.UsersUserGuidMicroDepositsMicroDepositGuidDelete: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); + } + } + } +} +``` + +#### Using the UsersUserGuidMicroDepositsMicroDepositGuidDeleteWithHttpInfo variant +This returns an ApiResponse object which contains the response data, status code and headers. + +```csharp +try +{ + // Delete a microdeposit + apiInstance.UsersUserGuidMicroDepositsMicroDepositGuidDeleteWithHttpInfo(microDepositGuid, userGuid); +} +catch (ApiException e) +{ + Debug.Print("Exception when calling MicrodepositsApi.UsersUserGuidMicroDepositsMicroDepositGuidDeleteWithHttpInfo: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); +} +``` + +### Parameters + +| Name | Type | Description | Notes | +|------|------|-------------|-------| +| **microDepositGuid** | **string** | The unique identifier for the microdeposit. Defined by MX. | | +| **userGuid** | **string** | The unique id for a `user`. | | + +### Return type + +void (empty response body) + +### Authorization + +[basicAuth](../README.md#basicAuth) + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: Not defined + + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **204** | No Content | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + + +# **UsersUserGuidMicroDepositsMicroDepositGuidGet** +> MicrodepositResponseBody UsersUserGuidMicroDepositsMicroDepositGuidGet (string userGuid, string microDepositGuid) + +Read a microdeposit for a user + +Use this endpoint to read the attributes of a specific microdeposit according to its unique GUID.

Webhooks for microdeposit status changes are triggered when a status changes. The actual status of the microdeposit guid updates every minute. You may force a status update by calling the read microdeposit endpoint. + +### Example +```csharp +using System.Collections.Generic; +using System.Diagnostics; +using MX.Platform.CSharp.Api; +using MX.Platform.CSharp.Client; +using MX.Platform.CSharp.Model; + +namespace Example +{ + public class UsersUserGuidMicroDepositsMicroDepositGuidGetExample + { + public static void Main() + { + Configuration config = new Configuration(); + config.BasePath = "https://api.mx.com"; + // Configure HTTP basic authorization: basicAuth + config.Username = "YOUR_USERNAME"; + config.Password = "YOUR_PASSWORD"; + + var apiInstance = new MicrodepositsApi(config); + var userGuid = "userGuid_example"; // string | The unique identifier for the user. Defined by MX. + var microDepositGuid = "microDepositGuid_example"; // string | The unique identifier for the microdeposit. Defined by MX. + + try + { + // Read a microdeposit for a user + MicrodepositResponseBody result = apiInstance.UsersUserGuidMicroDepositsMicroDepositGuidGet(userGuid, microDepositGuid); + Debug.WriteLine(result); + } + catch (ApiException e) + { + Debug.Print("Exception when calling MicrodepositsApi.UsersUserGuidMicroDepositsMicroDepositGuidGet: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); + } + } + } +} +``` + +#### Using the UsersUserGuidMicroDepositsMicroDepositGuidGetWithHttpInfo variant +This returns an ApiResponse object which contains the response data, status code and headers. + +```csharp +try +{ + // Read a microdeposit for a user + ApiResponse response = apiInstance.UsersUserGuidMicroDepositsMicroDepositGuidGetWithHttpInfo(userGuid, microDepositGuid); + Debug.Write("Status Code: " + response.StatusCode); + Debug.Write("Response Headers: " + response.Headers); + Debug.Write("Response Body: " + response.Data); +} +catch (ApiException e) +{ + Debug.Print("Exception when calling MicrodepositsApi.UsersUserGuidMicroDepositsMicroDepositGuidGetWithHttpInfo: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); +} +``` + +### Parameters + +| Name | Type | Description | Notes | +|------|------|-------------|-------| +| **userGuid** | **string** | The unique identifier for the user. Defined by MX. | | +| **microDepositGuid** | **string** | The unique identifier for the microdeposit. Defined by MX. | | + +### Return type + +[**MicrodepositResponseBody**](MicrodepositResponseBody.md) + +### Authorization + +[basicAuth](../README.md#basicAuth) + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | OK | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + + +# **UsersUserGuidMicroDepositsPost** +> MicrodepositResponseBody UsersUserGuidMicroDepositsPost (string userGuid, MicrodepositRequestBody microdepositRequestBody) + +Create a microdeposit + +Use this endpoint to create a microdeposit. The response will include the new microdeposit record with a status of INITIATED. + +### Example +```csharp +using System.Collections.Generic; +using System.Diagnostics; +using MX.Platform.CSharp.Api; +using MX.Platform.CSharp.Client; +using MX.Platform.CSharp.Model; + +namespace Example +{ + public class UsersUserGuidMicroDepositsPostExample + { + public static void Main() + { + Configuration config = new Configuration(); + config.BasePath = "https://api.mx.com"; + // Configure HTTP basic authorization: basicAuth + config.Username = "YOUR_USERNAME"; + config.Password = "YOUR_PASSWORD"; + + var apiInstance = new MicrodepositsApi(config); + var userGuid = "userGuid_example"; // string | The unique identifier for the user. Defined by MX. + var microdepositRequestBody = new MicrodepositRequestBody(); // MicrodepositRequestBody | + + try + { + // Create a microdeposit + MicrodepositResponseBody result = apiInstance.UsersUserGuidMicroDepositsPost(userGuid, microdepositRequestBody); + Debug.WriteLine(result); + } + catch (ApiException e) + { + Debug.Print("Exception when calling MicrodepositsApi.UsersUserGuidMicroDepositsPost: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); + } + } + } +} +``` + +#### Using the UsersUserGuidMicroDepositsPostWithHttpInfo variant +This returns an ApiResponse object which contains the response data, status code and headers. + +```csharp +try +{ + // Create a microdeposit + ApiResponse response = apiInstance.UsersUserGuidMicroDepositsPostWithHttpInfo(userGuid, microdepositRequestBody); + Debug.Write("Status Code: " + response.StatusCode); + Debug.Write("Response Headers: " + response.Headers); + Debug.Write("Response Body: " + response.Data); +} +catch (ApiException e) +{ + Debug.Print("Exception when calling MicrodepositsApi.UsersUserGuidMicroDepositsPostWithHttpInfo: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); +} +``` + +### Parameters + +| Name | Type | Description | Notes | +|------|------|-------------|-------| +| **userGuid** | **string** | The unique identifier for the user. Defined by MX. | | +| **microdepositRequestBody** | [**MicrodepositRequestBody**](MicrodepositRequestBody.md) | | | + +### Return type + +[**MicrodepositResponseBody**](MicrodepositResponseBody.md) + +### Authorization + +[basicAuth](../README.md#basicAuth) + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: application/json + + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | OK | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + diff --git a/docs/MicrodepositsResponseBody.md b/docs/MicrodepositsResponseBody.md new file mode 100644 index 0000000..af32356 --- /dev/null +++ b/docs/MicrodepositsResponseBody.md @@ -0,0 +1,11 @@ +# MX.Platform.CSharp.Model.MicrodepositsResponseBody + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**MicroDeposits** | [**List<MicrodepositResponse>**](MicrodepositResponse.md) | | [optional] +**Pagination** | [**PaginationResponse**](PaginationResponse.md) | | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + diff --git a/docs/TransactionCreateRequest.md b/docs/TransactionCreateRequest.md new file mode 100644 index 0000000..4c6aaff --- /dev/null +++ b/docs/TransactionCreateRequest.md @@ -0,0 +1,21 @@ +# MX.Platform.CSharp.Model.TransactionCreateRequest + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**Amount** | **decimal** | | +**Date** | **string** | | +**Description** | **string** | | +**Type** | **string** | The type of transaction, which must be CREDIT or DEBIT. See Transaction Fields for more information. | +**CategoryGuid** | **string** | Unique identifier of the category. | [optional] +**CurrencyCode** | **string** | | [optional] +**HasBeenViewed** | **bool** | | [optional] +**IsHidden** | **bool** | | [optional] +**IsInternational** | **bool** | | [optional] +**Memo** | **string** | | [optional] +**Metadata** | **string** | | [optional] +**SkipWebhook** | **bool** | When set to true, this parameter will prevent a webhook from being triggered by the request. | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + diff --git a/docs/TransactionCreateRequestBody.md b/docs/TransactionCreateRequestBody.md new file mode 100644 index 0000000..3cdad5e --- /dev/null +++ b/docs/TransactionCreateRequestBody.md @@ -0,0 +1,10 @@ +# MX.Platform.CSharp.Model.TransactionCreateRequestBody + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**Transaction** | [**TransactionCreateRequest**](TransactionCreateRequest.md) | | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + diff --git a/docs/TransactionCreateResponseBody.md b/docs/TransactionCreateResponseBody.md new file mode 100644 index 0000000..ef1eb9b --- /dev/null +++ b/docs/TransactionCreateResponseBody.md @@ -0,0 +1,53 @@ +# MX.Platform.CSharp.Model.TransactionCreateResponseBody + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**AccountGuid** | **string** | | [optional] +**AccountId** | **string** | | [optional] +**Amount** | **decimal** | | [optional] +**Category** | **string** | | [optional] +**CategoryGuid** | **string** | | [optional] +**CheckNumberString** | **string** | | [optional] +**CreatedAt** | **string** | | [optional] +**CurrencyCode** | **string** | | [optional] +**Date** | **string** | | [optional] +**Description** | **string** | | [optional] +**ExtendedTransactionType** | **string** | | [optional] +**Guid** | **string** | | [optional] +**Id** | **string** | | [optional] +**IsBillPay** | **bool?** | | [optional] +**IsDirectDeposit** | **bool?** | | [optional] +**IsExpense** | **bool?** | | [optional] +**IsFee** | **bool?** | | [optional] +**IsIncome** | **bool?** | | [optional] +**IsInternational** | **bool?** | | [optional] +**IsManual** | **bool?** | | [optional] +**IsOverdraftFee** | **bool?** | | [optional] +**IsPayrollAdvance** | **bool?** | | [optional] +**IsRecurring** | **bool?** | | [optional] +**IsSubscription** | **bool?** | | [optional] +**Latitude** | **decimal?** | | [optional] +**LocalizedDescription** | **string** | | [optional] +**LocalizedMemo** | **string** | | [optional] +**Longitude** | **decimal?** | | [optional] +**MemberGuid** | **string** | | [optional] +**MemberIsManagedByUser** | **bool?** | | [optional] +**Memo** | **string** | | [optional] +**MerchantCategoryCode** | **int?** | | [optional] +**MerchantGuid** | **string** | | [optional] +**MerchantLocationGuid** | **string** | | [optional] +**Metadata** | **string** | | [optional] +**OriginalDescription** | **string** | | [optional] +**PostedAt** | **string** | | [optional] +**Status** | **string** | | [optional] +**TopLevelCategory** | **string** | | [optional] +**TransactedAt** | **string** | | [optional] +**Type** | **string** | | [optional] +**UpdatedAt** | **string** | | [optional] +**UserGuid** | **string** | | [optional] +**UserId** | **string** | | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + diff --git a/docs/TransactionsApi.md b/docs/TransactionsApi.md new file mode 100644 index 0000000..7b283f1 --- /dev/null +++ b/docs/TransactionsApi.md @@ -0,0 +1,107 @@ +# MX.Platform.CSharp.Api.TransactionsApi + +All URIs are relative to *https://api.mx.com* + +| Method | HTTP request | Description | +|--------|--------------|-------------| +| [**UsersUserGuidAccountsAccountGuidTransactionsPost**](TransactionsApi.md#usersuserguidaccountsaccountguidtransactionspost) | **POST** /users/{user_guid}/accounts/{account_guid}/transactions | Create manual transaction | + + +# **UsersUserGuidAccountsAccountGuidTransactionsPost** +> TransactionCreateResponseBody UsersUserGuidAccountsAccountGuidTransactionsPost (string userGuid, string accountGuid, TransactionCreateRequestBody transactionCreateRequestBody) + +Create manual transaction + +This endpoint can only be used to create manual transactions that are under a manual account. This endpoint accepts the optional MX-Skip-Webhook header and skip_webhook parameter. + +### Example +```csharp +using System.Collections.Generic; +using System.Diagnostics; +using MX.Platform.CSharp.Api; +using MX.Platform.CSharp.Client; +using MX.Platform.CSharp.Model; + +namespace Example +{ + public class UsersUserGuidAccountsAccountGuidTransactionsPostExample + { + public static void Main() + { + Configuration config = new Configuration(); + config.BasePath = "https://api.mx.com"; + // Configure HTTP basic authorization: basicAuth + config.Username = "YOUR_USERNAME"; + config.Password = "YOUR_PASSWORD"; + + var apiInstance = new TransactionsApi(config); + var userGuid = "userGuid_example"; // string | The unique identifier for the user. + var accountGuid = "accountGuid_example"; // string | The unique identifier for the account. + var transactionCreateRequestBody = new TransactionCreateRequestBody(); // TransactionCreateRequestBody | + + try + { + // Create manual transaction + TransactionCreateResponseBody result = apiInstance.UsersUserGuidAccountsAccountGuidTransactionsPost(userGuid, accountGuid, transactionCreateRequestBody); + Debug.WriteLine(result); + } + catch (ApiException e) + { + Debug.Print("Exception when calling TransactionsApi.UsersUserGuidAccountsAccountGuidTransactionsPost: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); + } + } + } +} +``` + +#### Using the UsersUserGuidAccountsAccountGuidTransactionsPostWithHttpInfo variant +This returns an ApiResponse object which contains the response data, status code and headers. + +```csharp +try +{ + // Create manual transaction + ApiResponse response = apiInstance.UsersUserGuidAccountsAccountGuidTransactionsPostWithHttpInfo(userGuid, accountGuid, transactionCreateRequestBody); + Debug.Write("Status Code: " + response.StatusCode); + Debug.Write("Response Headers: " + response.Headers); + Debug.Write("Response Body: " + response.Data); +} +catch (ApiException e) +{ + Debug.Print("Exception when calling TransactionsApi.UsersUserGuidAccountsAccountGuidTransactionsPostWithHttpInfo: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); +} +``` + +### Parameters + +| Name | Type | Description | Notes | +|------|------|-------------|-------| +| **userGuid** | **string** | The unique identifier for the user. | | +| **accountGuid** | **string** | The unique identifier for the account. | | +| **transactionCreateRequestBody** | [**TransactionCreateRequestBody**](TransactionCreateRequestBody.md) | | | + +### Return type + +[**TransactionCreateResponseBody**](TransactionCreateResponseBody.md) + +### Authorization + +[basicAuth](../README.md#basicAuth) + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: application/vnd.mx.api.v1+json + + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | OK | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + diff --git a/openapi/config.yml b/openapi/config.yml index 5c9f3ce..9ddb409 100644 --- a/openapi/config.yml +++ b/openapi/config.yml @@ -1,3 +1,3 @@ --- packageName: MX.Platform.CSharp -packageVersion: 0.37.0 +packageVersion: 0.38.0 diff --git a/src/MX.Platform.CSharp.Test/Api/MicrodepositsApiTests.cs b/src/MX.Platform.CSharp.Test/Api/MicrodepositsApiTests.cs new file mode 100644 index 0000000..8749abf --- /dev/null +++ b/src/MX.Platform.CSharp.Test/Api/MicrodepositsApiTests.cs @@ -0,0 +1,120 @@ +/* + * MX Platform API + * + * The MX Platform API is a powerful, fully-featured API designed to make aggregating and enhancing financial data easy and reliable. It can seamlessly connect your app or website to tens of thousands of financial institutions. + * + * The version of the OpenAPI document: 0.1.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +using System; +using System.IO; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.Reflection; +using RestSharp; +using Xunit; + +using MX.Platform.CSharp.Client; +using MX.Platform.CSharp.Api; +// uncomment below to import models +//using MX.Platform.CSharp.Model; + +namespace MX.Platform.CSharp.Test.Api +{ + /// + /// Class for testing MicrodepositsApi + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the API endpoint. + /// + public class MicrodepositsApiTests : IDisposable + { + private MicrodepositsApi instance; + + public MicrodepositsApiTests() + { + instance = new MicrodepositsApi(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of MicrodepositsApi + /// + [Fact] + public void InstanceTest() + { + // TODO uncomment below to test 'IsType' MicrodepositsApi + //Assert.IsType(instance); + } + + /// + /// Test MicroDepositsMicrodepositGuidVerifyPut + /// + [Fact] + public void MicroDepositsMicrodepositGuidVerifyPutTest() + { + // TODO uncomment below to test the method and replace null with proper value + //string microdepositGuid = null; + //MicrodepositVerifyRequestBody? microdepositVerifyRequestBody = null; + //var response = instance.MicroDepositsMicrodepositGuidVerifyPut(microdepositGuid, microdepositVerifyRequestBody); + //Assert.IsType(response); + } + + /// + /// Test UsersUserGuidMicroDepositsGet + /// + [Fact] + public void UsersUserGuidMicroDepositsGetTest() + { + // TODO uncomment below to test the method and replace null with proper value + //string userGuid = null; + //var response = instance.UsersUserGuidMicroDepositsGet(userGuid); + //Assert.IsType(response); + } + + /// + /// Test UsersUserGuidMicroDepositsMicroDepositGuidDelete + /// + [Fact] + public void UsersUserGuidMicroDepositsMicroDepositGuidDeleteTest() + { + // TODO uncomment below to test the method and replace null with proper value + //string microDepositGuid = null; + //string userGuid = null; + //instance.UsersUserGuidMicroDepositsMicroDepositGuidDelete(microDepositGuid, userGuid); + } + + /// + /// Test UsersUserGuidMicroDepositsMicroDepositGuidGet + /// + [Fact] + public void UsersUserGuidMicroDepositsMicroDepositGuidGetTest() + { + // TODO uncomment below to test the method and replace null with proper value + //string userGuid = null; + //string microDepositGuid = null; + //var response = instance.UsersUserGuidMicroDepositsMicroDepositGuidGet(userGuid, microDepositGuid); + //Assert.IsType(response); + } + + /// + /// Test UsersUserGuidMicroDepositsPost + /// + [Fact] + public void UsersUserGuidMicroDepositsPostTest() + { + // TODO uncomment below to test the method and replace null with proper value + //string userGuid = null; + //MicrodepositRequestBody microdepositRequestBody = null; + //var response = instance.UsersUserGuidMicroDepositsPost(userGuid, microdepositRequestBody); + //Assert.IsType(response); + } + } +} diff --git a/src/MX.Platform.CSharp.Test/Api/TransactionsApiTests.cs b/src/MX.Platform.CSharp.Test/Api/TransactionsApiTests.cs new file mode 100644 index 0000000..d9aba4a --- /dev/null +++ b/src/MX.Platform.CSharp.Test/Api/TransactionsApiTests.cs @@ -0,0 +1,71 @@ +/* + * MX Platform API + * + * The MX Platform API is a powerful, fully-featured API designed to make aggregating and enhancing financial data easy and reliable. It can seamlessly connect your app or website to tens of thousands of financial institutions. + * + * The version of the OpenAPI document: 0.1.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +using System; +using System.IO; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.Reflection; +using RestSharp; +using Xunit; + +using MX.Platform.CSharp.Client; +using MX.Platform.CSharp.Api; +// uncomment below to import models +//using MX.Platform.CSharp.Model; + +namespace MX.Platform.CSharp.Test.Api +{ + /// + /// Class for testing TransactionsApi + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the API endpoint. + /// + public class TransactionsApiTests : IDisposable + { + private TransactionsApi instance; + + public TransactionsApiTests() + { + instance = new TransactionsApi(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of TransactionsApi + /// + [Fact] + public void InstanceTest() + { + // TODO uncomment below to test 'IsType' TransactionsApi + //Assert.IsType(instance); + } + + /// + /// Test UsersUserGuidAccountsAccountGuidTransactionsPost + /// + [Fact] + public void UsersUserGuidAccountsAccountGuidTransactionsPostTest() + { + // TODO uncomment below to test the method and replace null with proper value + //string userGuid = null; + //string accountGuid = null; + //TransactionCreateRequestBody transactionCreateRequestBody = null; + //var response = instance.UsersUserGuidAccountsAccountGuidTransactionsPost(userGuid, accountGuid, transactionCreateRequestBody); + //Assert.IsType(response); + } + } +} diff --git a/src/MX.Platform.CSharp.Test/Model/MicrodepositRequestBodyTests.cs b/src/MX.Platform.CSharp.Test/Model/MicrodepositRequestBodyTests.cs new file mode 100644 index 0000000..0042669 --- /dev/null +++ b/src/MX.Platform.CSharp.Test/Model/MicrodepositRequestBodyTests.cs @@ -0,0 +1,66 @@ +/* + * MX Platform API + * + * The MX Platform API is a powerful, fully-featured API designed to make aggregating and enhancing financial data easy and reliable. It can seamlessly connect your app or website to tens of thousands of financial institutions. + * + * The version of the OpenAPI document: 0.1.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using MX.Platform.CSharp.Model; +using MX.Platform.CSharp.Client; +using System.Reflection; +using Newtonsoft.Json; + +namespace MX.Platform.CSharp.Test.Model +{ + /// + /// Class for testing MicrodepositRequestBody + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class MicrodepositRequestBodyTests : IDisposable + { + // TODO uncomment below to declare an instance variable for MicrodepositRequestBody + //private MicrodepositRequestBody instance; + + public MicrodepositRequestBodyTests() + { + // TODO uncomment below to create an instance of MicrodepositRequestBody + //instance = new MicrodepositRequestBody(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of MicrodepositRequestBody + /// + [Fact] + public void MicrodepositRequestBodyInstanceTest() + { + // TODO uncomment below to test "IsType" MicrodepositRequestBody + //Assert.IsType(instance); + } + + /// + /// Test the property 'MicroDeposit' + /// + [Fact] + public void MicroDepositTest() + { + // TODO unit test for the property 'MicroDeposit' + } + } +} diff --git a/src/MX.Platform.CSharp.Test/Model/MicrodepositRequestTests.cs b/src/MX.Platform.CSharp.Test/Model/MicrodepositRequestTests.cs new file mode 100644 index 0000000..b905669 --- /dev/null +++ b/src/MX.Platform.CSharp.Test/Model/MicrodepositRequestTests.cs @@ -0,0 +1,120 @@ +/* + * MX Platform API + * + * The MX Platform API is a powerful, fully-featured API designed to make aggregating and enhancing financial data easy and reliable. It can seamlessly connect your app or website to tens of thousands of financial institutions. + * + * The version of the OpenAPI document: 0.1.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using MX.Platform.CSharp.Model; +using MX.Platform.CSharp.Client; +using System.Reflection; +using Newtonsoft.Json; + +namespace MX.Platform.CSharp.Test.Model +{ + /// + /// Class for testing MicrodepositRequest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class MicrodepositRequestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for MicrodepositRequest + //private MicrodepositRequest instance; + + public MicrodepositRequestTests() + { + // TODO uncomment below to create an instance of MicrodepositRequest + //instance = new MicrodepositRequest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of MicrodepositRequest + /// + [Fact] + public void MicrodepositRequestInstanceTest() + { + // TODO uncomment below to test "IsType" MicrodepositRequest + //Assert.IsType(instance); + } + + /// + /// Test the property 'AccountNumber' + /// + [Fact] + public void AccountNumberTest() + { + // TODO unit test for the property 'AccountNumber' + } + + /// + /// Test the property 'AccountType' + /// + [Fact] + public void AccountTypeTest() + { + // TODO unit test for the property 'AccountType' + } + + /// + /// Test the property 'RoutingNumber' + /// + [Fact] + public void RoutingNumberTest() + { + // TODO unit test for the property 'RoutingNumber' + } + + /// + /// Test the property 'AccountName' + /// + [Fact] + public void AccountNameTest() + { + // TODO unit test for the property 'AccountName' + } + + /// + /// Test the property 'Email' + /// + [Fact] + public void EmailTest() + { + // TODO unit test for the property 'Email' + } + + /// + /// Test the property 'FirstName' + /// + [Fact] + public void FirstNameTest() + { + // TODO unit test for the property 'FirstName' + } + + /// + /// Test the property 'LastName' + /// + [Fact] + public void LastNameTest() + { + // TODO unit test for the property 'LastName' + } + } +} diff --git a/src/MX.Platform.CSharp.Test/Model/MicrodepositResponseBodyTests.cs b/src/MX.Platform.CSharp.Test/Model/MicrodepositResponseBodyTests.cs new file mode 100644 index 0000000..cc31f0d --- /dev/null +++ b/src/MX.Platform.CSharp.Test/Model/MicrodepositResponseBodyTests.cs @@ -0,0 +1,66 @@ +/* + * MX Platform API + * + * The MX Platform API is a powerful, fully-featured API designed to make aggregating and enhancing financial data easy and reliable. It can seamlessly connect your app or website to tens of thousands of financial institutions. + * + * The version of the OpenAPI document: 0.1.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using MX.Platform.CSharp.Model; +using MX.Platform.CSharp.Client; +using System.Reflection; +using Newtonsoft.Json; + +namespace MX.Platform.CSharp.Test.Model +{ + /// + /// Class for testing MicrodepositResponseBody + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class MicrodepositResponseBodyTests : IDisposable + { + // TODO uncomment below to declare an instance variable for MicrodepositResponseBody + //private MicrodepositResponseBody instance; + + public MicrodepositResponseBodyTests() + { + // TODO uncomment below to create an instance of MicrodepositResponseBody + //instance = new MicrodepositResponseBody(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of MicrodepositResponseBody + /// + [Fact] + public void MicrodepositResponseBodyInstanceTest() + { + // TODO uncomment below to test "IsType" MicrodepositResponseBody + //Assert.IsType(instance); + } + + /// + /// Test the property 'MicroDeposit' + /// + [Fact] + public void MicroDepositTest() + { + // TODO unit test for the property 'MicroDeposit' + } + } +} diff --git a/src/MX.Platform.CSharp.Test/Model/MicrodepositResponseTests.cs b/src/MX.Platform.CSharp.Test/Model/MicrodepositResponseTests.cs new file mode 100644 index 0000000..d7798f2 --- /dev/null +++ b/src/MX.Platform.CSharp.Test/Model/MicrodepositResponseTests.cs @@ -0,0 +1,183 @@ +/* + * MX Platform API + * + * The MX Platform API is a powerful, fully-featured API designed to make aggregating and enhancing financial data easy and reliable. It can seamlessly connect your app or website to tens of thousands of financial institutions. + * + * The version of the OpenAPI document: 0.1.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using MX.Platform.CSharp.Model; +using MX.Platform.CSharp.Client; +using System.Reflection; +using Newtonsoft.Json; + +namespace MX.Platform.CSharp.Test.Model +{ + /// + /// Class for testing MicrodepositResponse + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class MicrodepositResponseTests : IDisposable + { + // TODO uncomment below to declare an instance variable for MicrodepositResponse + //private MicrodepositResponse instance; + + public MicrodepositResponseTests() + { + // TODO uncomment below to create an instance of MicrodepositResponse + //instance = new MicrodepositResponse(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of MicrodepositResponse + /// + [Fact] + public void MicrodepositResponseInstanceTest() + { + // TODO uncomment below to test "IsType" MicrodepositResponse + //Assert.IsType(instance); + } + + /// + /// Test the property 'AccountName' + /// + [Fact] + public void AccountNameTest() + { + // TODO unit test for the property 'AccountName' + } + + /// + /// Test the property 'AccountNumber' + /// + [Fact] + public void AccountNumberTest() + { + // TODO unit test for the property 'AccountNumber' + } + + /// + /// Test the property 'AccountType' + /// + [Fact] + public void AccountTypeTest() + { + // TODO unit test for the property 'AccountType' + } + + /// + /// Test the property 'Email' + /// + [Fact] + public void EmailTest() + { + // TODO unit test for the property 'Email' + } + + /// + /// Test the property 'FirstName' + /// + [Fact] + public void FirstNameTest() + { + // TODO unit test for the property 'FirstName' + } + + /// + /// Test the property 'LastName' + /// + [Fact] + public void LastNameTest() + { + // TODO unit test for the property 'LastName' + } + + /// + /// Test the property 'RoutingNumber' + /// + [Fact] + public void RoutingNumberTest() + { + // TODO unit test for the property 'RoutingNumber' + } + + /// + /// Test the property 'ErrorMessage' + /// + [Fact] + public void ErrorMessageTest() + { + // TODO unit test for the property 'ErrorMessage' + } + + /// + /// Test the property 'Guid' + /// + [Fact] + public void GuidTest() + { + // TODO unit test for the property 'Guid' + } + + /// + /// Test the property 'InstitutionCode' + /// + [Fact] + public void InstitutionCodeTest() + { + // TODO unit test for the property 'InstitutionCode' + } + + /// + /// Test the property 'InstitutionName' + /// + [Fact] + public void InstitutionNameTest() + { + // TODO unit test for the property 'InstitutionName' + } + + /// + /// Test the property 'Status' + /// + [Fact] + public void StatusTest() + { + // TODO unit test for the property 'Status' + } + + /// + /// Test the property 'UpdatedAt' + /// + [Fact] + public void UpdatedAtTest() + { + // TODO unit test for the property 'UpdatedAt' + } + + /// + /// Test the property 'VerifiedAt' + /// + [Fact] + public void VerifiedAtTest() + { + // TODO unit test for the property 'VerifiedAt' + } + } +} diff --git a/src/MX.Platform.CSharp.Test/Model/MicrodepositVerifyRequestBodyTests.cs b/src/MX.Platform.CSharp.Test/Model/MicrodepositVerifyRequestBodyTests.cs new file mode 100644 index 0000000..88abe78 --- /dev/null +++ b/src/MX.Platform.CSharp.Test/Model/MicrodepositVerifyRequestBodyTests.cs @@ -0,0 +1,66 @@ +/* + * MX Platform API + * + * The MX Platform API is a powerful, fully-featured API designed to make aggregating and enhancing financial data easy and reliable. It can seamlessly connect your app or website to tens of thousands of financial institutions. + * + * The version of the OpenAPI document: 0.1.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using MX.Platform.CSharp.Model; +using MX.Platform.CSharp.Client; +using System.Reflection; +using Newtonsoft.Json; + +namespace MX.Platform.CSharp.Test.Model +{ + /// + /// Class for testing MicrodepositVerifyRequestBody + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class MicrodepositVerifyRequestBodyTests : IDisposable + { + // TODO uncomment below to declare an instance variable for MicrodepositVerifyRequestBody + //private MicrodepositVerifyRequestBody instance; + + public MicrodepositVerifyRequestBodyTests() + { + // TODO uncomment below to create an instance of MicrodepositVerifyRequestBody + //instance = new MicrodepositVerifyRequestBody(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of MicrodepositVerifyRequestBody + /// + [Fact] + public void MicrodepositVerifyRequestBodyInstanceTest() + { + // TODO uncomment below to test "IsType" MicrodepositVerifyRequestBody + //Assert.IsType(instance); + } + + /// + /// Test the property 'MicroDeposit' + /// + [Fact] + public void MicroDepositTest() + { + // TODO unit test for the property 'MicroDeposit' + } + } +} diff --git a/src/MX.Platform.CSharp.Test/Model/MicrodepositVerifyRequestTests.cs b/src/MX.Platform.CSharp.Test/Model/MicrodepositVerifyRequestTests.cs new file mode 100644 index 0000000..f6e53f4 --- /dev/null +++ b/src/MX.Platform.CSharp.Test/Model/MicrodepositVerifyRequestTests.cs @@ -0,0 +1,75 @@ +/* + * MX Platform API + * + * The MX Platform API is a powerful, fully-featured API designed to make aggregating and enhancing financial data easy and reliable. It can seamlessly connect your app or website to tens of thousands of financial institutions. + * + * The version of the OpenAPI document: 0.1.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using MX.Platform.CSharp.Model; +using MX.Platform.CSharp.Client; +using System.Reflection; +using Newtonsoft.Json; + +namespace MX.Platform.CSharp.Test.Model +{ + /// + /// Class for testing MicrodepositVerifyRequest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class MicrodepositVerifyRequestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for MicrodepositVerifyRequest + //private MicrodepositVerifyRequest instance; + + public MicrodepositVerifyRequestTests() + { + // TODO uncomment below to create an instance of MicrodepositVerifyRequest + //instance = new MicrodepositVerifyRequest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of MicrodepositVerifyRequest + /// + [Fact] + public void MicrodepositVerifyRequestInstanceTest() + { + // TODO uncomment below to test "IsType" MicrodepositVerifyRequest + //Assert.IsType(instance); + } + + /// + /// Test the property 'DepositAmount1' + /// + [Fact] + public void DepositAmount1Test() + { + // TODO unit test for the property 'DepositAmount1' + } + + /// + /// Test the property 'DepositAmount2' + /// + [Fact] + public void DepositAmount2Test() + { + // TODO unit test for the property 'DepositAmount2' + } + } +} diff --git a/src/MX.Platform.CSharp.Test/Model/MicrodepositsResponseBodyTests.cs b/src/MX.Platform.CSharp.Test/Model/MicrodepositsResponseBodyTests.cs new file mode 100644 index 0000000..dec3880 --- /dev/null +++ b/src/MX.Platform.CSharp.Test/Model/MicrodepositsResponseBodyTests.cs @@ -0,0 +1,75 @@ +/* + * MX Platform API + * + * The MX Platform API is a powerful, fully-featured API designed to make aggregating and enhancing financial data easy and reliable. It can seamlessly connect your app or website to tens of thousands of financial institutions. + * + * The version of the OpenAPI document: 0.1.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using MX.Platform.CSharp.Model; +using MX.Platform.CSharp.Client; +using System.Reflection; +using Newtonsoft.Json; + +namespace MX.Platform.CSharp.Test.Model +{ + /// + /// Class for testing MicrodepositsResponseBody + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class MicrodepositsResponseBodyTests : IDisposable + { + // TODO uncomment below to declare an instance variable for MicrodepositsResponseBody + //private MicrodepositsResponseBody instance; + + public MicrodepositsResponseBodyTests() + { + // TODO uncomment below to create an instance of MicrodepositsResponseBody + //instance = new MicrodepositsResponseBody(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of MicrodepositsResponseBody + /// + [Fact] + public void MicrodepositsResponseBodyInstanceTest() + { + // TODO uncomment below to test "IsType" MicrodepositsResponseBody + //Assert.IsType(instance); + } + + /// + /// Test the property 'MicroDeposits' + /// + [Fact] + public void MicroDepositsTest() + { + // TODO unit test for the property 'MicroDeposits' + } + + /// + /// Test the property 'Pagination' + /// + [Fact] + public void PaginationTest() + { + // TODO unit test for the property 'Pagination' + } + } +} diff --git a/src/MX.Platform.CSharp.Test/Model/TransactionCreateRequestBodyTests.cs b/src/MX.Platform.CSharp.Test/Model/TransactionCreateRequestBodyTests.cs new file mode 100644 index 0000000..e2b0a2f --- /dev/null +++ b/src/MX.Platform.CSharp.Test/Model/TransactionCreateRequestBodyTests.cs @@ -0,0 +1,66 @@ +/* + * MX Platform API + * + * The MX Platform API is a powerful, fully-featured API designed to make aggregating and enhancing financial data easy and reliable. It can seamlessly connect your app or website to tens of thousands of financial institutions. + * + * The version of the OpenAPI document: 0.1.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using MX.Platform.CSharp.Model; +using MX.Platform.CSharp.Client; +using System.Reflection; +using Newtonsoft.Json; + +namespace MX.Platform.CSharp.Test.Model +{ + /// + /// Class for testing TransactionCreateRequestBody + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class TransactionCreateRequestBodyTests : IDisposable + { + // TODO uncomment below to declare an instance variable for TransactionCreateRequestBody + //private TransactionCreateRequestBody instance; + + public TransactionCreateRequestBodyTests() + { + // TODO uncomment below to create an instance of TransactionCreateRequestBody + //instance = new TransactionCreateRequestBody(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of TransactionCreateRequestBody + /// + [Fact] + public void TransactionCreateRequestBodyInstanceTest() + { + // TODO uncomment below to test "IsType" TransactionCreateRequestBody + //Assert.IsType(instance); + } + + /// + /// Test the property 'Transaction' + /// + [Fact] + public void TransactionTest() + { + // TODO unit test for the property 'Transaction' + } + } +} diff --git a/src/MX.Platform.CSharp.Test/Model/TransactionCreateRequestTests.cs b/src/MX.Platform.CSharp.Test/Model/TransactionCreateRequestTests.cs new file mode 100644 index 0000000..ece2344 --- /dev/null +++ b/src/MX.Platform.CSharp.Test/Model/TransactionCreateRequestTests.cs @@ -0,0 +1,165 @@ +/* + * MX Platform API + * + * The MX Platform API is a powerful, fully-featured API designed to make aggregating and enhancing financial data easy and reliable. It can seamlessly connect your app or website to tens of thousands of financial institutions. + * + * The version of the OpenAPI document: 0.1.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using MX.Platform.CSharp.Model; +using MX.Platform.CSharp.Client; +using System.Reflection; +using Newtonsoft.Json; + +namespace MX.Platform.CSharp.Test.Model +{ + /// + /// Class for testing TransactionCreateRequest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class TransactionCreateRequestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for TransactionCreateRequest + //private TransactionCreateRequest instance; + + public TransactionCreateRequestTests() + { + // TODO uncomment below to create an instance of TransactionCreateRequest + //instance = new TransactionCreateRequest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of TransactionCreateRequest + /// + [Fact] + public void TransactionCreateRequestInstanceTest() + { + // TODO uncomment below to test "IsType" TransactionCreateRequest + //Assert.IsType(instance); + } + + /// + /// Test the property 'Amount' + /// + [Fact] + public void AmountTest() + { + // TODO unit test for the property 'Amount' + } + + /// + /// Test the property 'Date' + /// + [Fact] + public void DateTest() + { + // TODO unit test for the property 'Date' + } + + /// + /// Test the property 'Description' + /// + [Fact] + public void DescriptionTest() + { + // TODO unit test for the property 'Description' + } + + /// + /// Test the property 'Type' + /// + [Fact] + public void TypeTest() + { + // TODO unit test for the property 'Type' + } + + /// + /// Test the property 'CategoryGuid' + /// + [Fact] + public void CategoryGuidTest() + { + // TODO unit test for the property 'CategoryGuid' + } + + /// + /// Test the property 'CurrencyCode' + /// + [Fact] + public void CurrencyCodeTest() + { + // TODO unit test for the property 'CurrencyCode' + } + + /// + /// Test the property 'HasBeenViewed' + /// + [Fact] + public void HasBeenViewedTest() + { + // TODO unit test for the property 'HasBeenViewed' + } + + /// + /// Test the property 'IsHidden' + /// + [Fact] + public void IsHiddenTest() + { + // TODO unit test for the property 'IsHidden' + } + + /// + /// Test the property 'IsInternational' + /// + [Fact] + public void IsInternationalTest() + { + // TODO unit test for the property 'IsInternational' + } + + /// + /// Test the property 'Memo' + /// + [Fact] + public void MemoTest() + { + // TODO unit test for the property 'Memo' + } + + /// + /// Test the property 'Metadata' + /// + [Fact] + public void MetadataTest() + { + // TODO unit test for the property 'Metadata' + } + + /// + /// Test the property 'SkipWebhook' + /// + [Fact] + public void SkipWebhookTest() + { + // TODO unit test for the property 'SkipWebhook' + } + } +} diff --git a/src/MX.Platform.CSharp.Test/Model/TransactionCreateResponseBodyTests.cs b/src/MX.Platform.CSharp.Test/Model/TransactionCreateResponseBodyTests.cs new file mode 100644 index 0000000..714fddf --- /dev/null +++ b/src/MX.Platform.CSharp.Test/Model/TransactionCreateResponseBodyTests.cs @@ -0,0 +1,453 @@ +/* + * MX Platform API + * + * The MX Platform API is a powerful, fully-featured API designed to make aggregating and enhancing financial data easy and reliable. It can seamlessly connect your app or website to tens of thousands of financial institutions. + * + * The version of the OpenAPI document: 0.1.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using MX.Platform.CSharp.Model; +using MX.Platform.CSharp.Client; +using System.Reflection; +using Newtonsoft.Json; + +namespace MX.Platform.CSharp.Test.Model +{ + /// + /// Class for testing TransactionCreateResponseBody + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class TransactionCreateResponseBodyTests : IDisposable + { + // TODO uncomment below to declare an instance variable for TransactionCreateResponseBody + //private TransactionCreateResponseBody instance; + + public TransactionCreateResponseBodyTests() + { + // TODO uncomment below to create an instance of TransactionCreateResponseBody + //instance = new TransactionCreateResponseBody(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of TransactionCreateResponseBody + /// + [Fact] + public void TransactionCreateResponseBodyInstanceTest() + { + // TODO uncomment below to test "IsType" TransactionCreateResponseBody + //Assert.IsType(instance); + } + + /// + /// Test the property 'AccountGuid' + /// + [Fact] + public void AccountGuidTest() + { + // TODO unit test for the property 'AccountGuid' + } + + /// + /// Test the property 'AccountId' + /// + [Fact] + public void AccountIdTest() + { + // TODO unit test for the property 'AccountId' + } + + /// + /// Test the property 'Amount' + /// + [Fact] + public void AmountTest() + { + // TODO unit test for the property 'Amount' + } + + /// + /// Test the property 'Category' + /// + [Fact] + public void CategoryTest() + { + // TODO unit test for the property 'Category' + } + + /// + /// Test the property 'CategoryGuid' + /// + [Fact] + public void CategoryGuidTest() + { + // TODO unit test for the property 'CategoryGuid' + } + + /// + /// Test the property 'CheckNumberString' + /// + [Fact] + public void CheckNumberStringTest() + { + // TODO unit test for the property 'CheckNumberString' + } + + /// + /// Test the property 'CreatedAt' + /// + [Fact] + public void CreatedAtTest() + { + // TODO unit test for the property 'CreatedAt' + } + + /// + /// Test the property 'CurrencyCode' + /// + [Fact] + public void CurrencyCodeTest() + { + // TODO unit test for the property 'CurrencyCode' + } + + /// + /// Test the property 'Date' + /// + [Fact] + public void DateTest() + { + // TODO unit test for the property 'Date' + } + + /// + /// Test the property 'Description' + /// + [Fact] + public void DescriptionTest() + { + // TODO unit test for the property 'Description' + } + + /// + /// Test the property 'ExtendedTransactionType' + /// + [Fact] + public void ExtendedTransactionTypeTest() + { + // TODO unit test for the property 'ExtendedTransactionType' + } + + /// + /// Test the property 'Guid' + /// + [Fact] + public void GuidTest() + { + // TODO unit test for the property 'Guid' + } + + /// + /// Test the property 'Id' + /// + [Fact] + public void IdTest() + { + // TODO unit test for the property 'Id' + } + + /// + /// Test the property 'IsBillPay' + /// + [Fact] + public void IsBillPayTest() + { + // TODO unit test for the property 'IsBillPay' + } + + /// + /// Test the property 'IsDirectDeposit' + /// + [Fact] + public void IsDirectDepositTest() + { + // TODO unit test for the property 'IsDirectDeposit' + } + + /// + /// Test the property 'IsExpense' + /// + [Fact] + public void IsExpenseTest() + { + // TODO unit test for the property 'IsExpense' + } + + /// + /// Test the property 'IsFee' + /// + [Fact] + public void IsFeeTest() + { + // TODO unit test for the property 'IsFee' + } + + /// + /// Test the property 'IsIncome' + /// + [Fact] + public void IsIncomeTest() + { + // TODO unit test for the property 'IsIncome' + } + + /// + /// Test the property 'IsInternational' + /// + [Fact] + public void IsInternationalTest() + { + // TODO unit test for the property 'IsInternational' + } + + /// + /// Test the property 'IsManual' + /// + [Fact] + public void IsManualTest() + { + // TODO unit test for the property 'IsManual' + } + + /// + /// Test the property 'IsOverdraftFee' + /// + [Fact] + public void IsOverdraftFeeTest() + { + // TODO unit test for the property 'IsOverdraftFee' + } + + /// + /// Test the property 'IsPayrollAdvance' + /// + [Fact] + public void IsPayrollAdvanceTest() + { + // TODO unit test for the property 'IsPayrollAdvance' + } + + /// + /// Test the property 'IsRecurring' + /// + [Fact] + public void IsRecurringTest() + { + // TODO unit test for the property 'IsRecurring' + } + + /// + /// Test the property 'IsSubscription' + /// + [Fact] + public void IsSubscriptionTest() + { + // TODO unit test for the property 'IsSubscription' + } + + /// + /// Test the property 'Latitude' + /// + [Fact] + public void LatitudeTest() + { + // TODO unit test for the property 'Latitude' + } + + /// + /// Test the property 'LocalizedDescription' + /// + [Fact] + public void LocalizedDescriptionTest() + { + // TODO unit test for the property 'LocalizedDescription' + } + + /// + /// Test the property 'LocalizedMemo' + /// + [Fact] + public void LocalizedMemoTest() + { + // TODO unit test for the property 'LocalizedMemo' + } + + /// + /// Test the property 'Longitude' + /// + [Fact] + public void LongitudeTest() + { + // TODO unit test for the property 'Longitude' + } + + /// + /// Test the property 'MemberGuid' + /// + [Fact] + public void MemberGuidTest() + { + // TODO unit test for the property 'MemberGuid' + } + + /// + /// Test the property 'MemberIsManagedByUser' + /// + [Fact] + public void MemberIsManagedByUserTest() + { + // TODO unit test for the property 'MemberIsManagedByUser' + } + + /// + /// Test the property 'Memo' + /// + [Fact] + public void MemoTest() + { + // TODO unit test for the property 'Memo' + } + + /// + /// Test the property 'MerchantCategoryCode' + /// + [Fact] + public void MerchantCategoryCodeTest() + { + // TODO unit test for the property 'MerchantCategoryCode' + } + + /// + /// Test the property 'MerchantGuid' + /// + [Fact] + public void MerchantGuidTest() + { + // TODO unit test for the property 'MerchantGuid' + } + + /// + /// Test the property 'MerchantLocationGuid' + /// + [Fact] + public void MerchantLocationGuidTest() + { + // TODO unit test for the property 'MerchantLocationGuid' + } + + /// + /// Test the property 'Metadata' + /// + [Fact] + public void MetadataTest() + { + // TODO unit test for the property 'Metadata' + } + + /// + /// Test the property 'OriginalDescription' + /// + [Fact] + public void OriginalDescriptionTest() + { + // TODO unit test for the property 'OriginalDescription' + } + + /// + /// Test the property 'PostedAt' + /// + [Fact] + public void PostedAtTest() + { + // TODO unit test for the property 'PostedAt' + } + + /// + /// Test the property 'Status' + /// + [Fact] + public void StatusTest() + { + // TODO unit test for the property 'Status' + } + + /// + /// Test the property 'TopLevelCategory' + /// + [Fact] + public void TopLevelCategoryTest() + { + // TODO unit test for the property 'TopLevelCategory' + } + + /// + /// Test the property 'TransactedAt' + /// + [Fact] + public void TransactedAtTest() + { + // TODO unit test for the property 'TransactedAt' + } + + /// + /// Test the property 'Type' + /// + [Fact] + public void TypeTest() + { + // TODO unit test for the property 'Type' + } + + /// + /// Test the property 'UpdatedAt' + /// + [Fact] + public void UpdatedAtTest() + { + // TODO unit test for the property 'UpdatedAt' + } + + /// + /// Test the property 'UserGuid' + /// + [Fact] + public void UserGuidTest() + { + // TODO unit test for the property 'UserGuid' + } + + /// + /// Test the property 'UserId' + /// + [Fact] + public void UserIdTest() + { + // TODO unit test for the property 'UserId' + } + } +} diff --git a/src/MX.Platform.CSharp/Api/MicrodepositsApi.cs b/src/MX.Platform.CSharp/Api/MicrodepositsApi.cs new file mode 100644 index 0000000..0615bbf --- /dev/null +++ b/src/MX.Platform.CSharp/Api/MicrodepositsApi.cs @@ -0,0 +1,1255 @@ +/* + * MX Platform API + * + * The MX Platform API is a powerful, fully-featured API designed to make aggregating and enhancing financial data easy and reliable. It can seamlessly connect your app or website to tens of thousands of financial institutions. + * + * The version of the OpenAPI document: 0.1.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using System; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.Net; +using System.Net.Mime; +using MX.Platform.CSharp.Client; +using MX.Platform.CSharp.Model; + +namespace MX.Platform.CSharp.Api +{ + + /// + /// Represents a collection of functions to interact with the API endpoints + /// + public interface IMicrodepositsApiSync : IApiAccessor + { + #region Synchronous Operations + /// + /// Verify a Microdeposit + /// + /// + /// Use this endpoint to verify the amounts deposited into the account during a microdeposit verification. The verification has not successfully completed until the `status` is `VERIFIED`. Poll the `/users/{user_guid}/micro_deposits/{micro_deposit_guid}` (read microdeposit) endpoint until you see this status or an error state. + /// + /// Thrown when fails to make API call + /// The unique identifier for the microdeposit. Defined by MX. + /// (optional) + /// Index associated with the operation. + /// MicrodepositResponseBody + MicrodepositResponseBody MicroDepositsMicrodepositGuidVerifyPut(string microdepositGuid, MicrodepositVerifyRequestBody? microdepositVerifyRequestBody = default(MicrodepositVerifyRequestBody?), int operationIndex = 0); + + /// + /// Verify a Microdeposit + /// + /// + /// Use this endpoint to verify the amounts deposited into the account during a microdeposit verification. The verification has not successfully completed until the `status` is `VERIFIED`. Poll the `/users/{user_guid}/micro_deposits/{micro_deposit_guid}` (read microdeposit) endpoint until you see this status or an error state. + /// + /// Thrown when fails to make API call + /// The unique identifier for the microdeposit. Defined by MX. + /// (optional) + /// Index associated with the operation. + /// ApiResponse of MicrodepositResponseBody + ApiResponse MicroDepositsMicrodepositGuidVerifyPutWithHttpInfo(string microdepositGuid, MicrodepositVerifyRequestBody? microdepositVerifyRequestBody = default(MicrodepositVerifyRequestBody?), int operationIndex = 0); + /// + /// List all microdeposits for a user + /// + /// + /// Use this endpoint to read the attributes of a specific microdeposit according to its unique GUID. + /// + /// Thrown when fails to make API call + /// The unique identifier for the user. Defined by MX. + /// Index associated with the operation. + /// MicrodepositsResponseBody + MicrodepositsResponseBody UsersUserGuidMicroDepositsGet(string userGuid, int operationIndex = 0); + + /// + /// List all microdeposits for a user + /// + /// + /// Use this endpoint to read the attributes of a specific microdeposit according to its unique GUID. + /// + /// Thrown when fails to make API call + /// The unique identifier for the user. Defined by MX. + /// Index associated with the operation. + /// ApiResponse of MicrodepositsResponseBody + ApiResponse UsersUserGuidMicroDepositsGetWithHttpInfo(string userGuid, int operationIndex = 0); + /// + /// Delete a microdeposit + /// + /// + /// Use this endpoint to delete the specified microdeposit. + /// + /// Thrown when fails to make API call + /// The unique identifier for the microdeposit. Defined by MX. + /// The unique id for a `user`. + /// Index associated with the operation. + /// + void UsersUserGuidMicroDepositsMicroDepositGuidDelete(string microDepositGuid, string userGuid, int operationIndex = 0); + + /// + /// Delete a microdeposit + /// + /// + /// Use this endpoint to delete the specified microdeposit. + /// + /// Thrown when fails to make API call + /// The unique identifier for the microdeposit. Defined by MX. + /// The unique id for a `user`. + /// Index associated with the operation. + /// ApiResponse of Object(void) + ApiResponse UsersUserGuidMicroDepositsMicroDepositGuidDeleteWithHttpInfo(string microDepositGuid, string userGuid, int operationIndex = 0); + /// + /// Read a microdeposit for a user + /// + /// + /// Use this endpoint to read the attributes of a specific microdeposit according to its unique GUID. <br></br> Webhooks for microdeposit status changes are triggered when a status changes. The actual status of the microdeposit guid updates every minute. You may force a status update by calling the read microdeposit endpoint. + /// + /// Thrown when fails to make API call + /// The unique identifier for the user. Defined by MX. + /// The unique identifier for the microdeposit. Defined by MX. + /// Index associated with the operation. + /// MicrodepositResponseBody + MicrodepositResponseBody UsersUserGuidMicroDepositsMicroDepositGuidGet(string userGuid, string microDepositGuid, int operationIndex = 0); + + /// + /// Read a microdeposit for a user + /// + /// + /// Use this endpoint to read the attributes of a specific microdeposit according to its unique GUID. <br></br> Webhooks for microdeposit status changes are triggered when a status changes. The actual status of the microdeposit guid updates every minute. You may force a status update by calling the read microdeposit endpoint. + /// + /// Thrown when fails to make API call + /// The unique identifier for the user. Defined by MX. + /// The unique identifier for the microdeposit. Defined by MX. + /// Index associated with the operation. + /// ApiResponse of MicrodepositResponseBody + ApiResponse UsersUserGuidMicroDepositsMicroDepositGuidGetWithHttpInfo(string userGuid, string microDepositGuid, int operationIndex = 0); + /// + /// Create a microdeposit + /// + /// + /// Use this endpoint to create a microdeposit. The response will include the new microdeposit record with a status of INITIATED. + /// + /// Thrown when fails to make API call + /// The unique identifier for the user. Defined by MX. + /// + /// Index associated with the operation. + /// MicrodepositResponseBody + MicrodepositResponseBody UsersUserGuidMicroDepositsPost(string userGuid, MicrodepositRequestBody microdepositRequestBody, int operationIndex = 0); + + /// + /// Create a microdeposit + /// + /// + /// Use this endpoint to create a microdeposit. The response will include the new microdeposit record with a status of INITIATED. + /// + /// Thrown when fails to make API call + /// The unique identifier for the user. Defined by MX. + /// + /// Index associated with the operation. + /// ApiResponse of MicrodepositResponseBody + ApiResponse UsersUserGuidMicroDepositsPostWithHttpInfo(string userGuid, MicrodepositRequestBody microdepositRequestBody, int operationIndex = 0); + #endregion Synchronous Operations + } + + /// + /// Represents a collection of functions to interact with the API endpoints + /// + public interface IMicrodepositsApiAsync : IApiAccessor + { + #region Asynchronous Operations + /// + /// Verify a Microdeposit + /// + /// + /// Use this endpoint to verify the amounts deposited into the account during a microdeposit verification. The verification has not successfully completed until the `status` is `VERIFIED`. Poll the `/users/{user_guid}/micro_deposits/{micro_deposit_guid}` (read microdeposit) endpoint until you see this status or an error state. + /// + /// Thrown when fails to make API call + /// The unique identifier for the microdeposit. Defined by MX. + /// (optional) + /// Index associated with the operation. + /// Cancellation Token to cancel the request. + /// Task of MicrodepositResponseBody + System.Threading.Tasks.Task MicroDepositsMicrodepositGuidVerifyPutAsync(string microdepositGuid, MicrodepositVerifyRequestBody? microdepositVerifyRequestBody = default(MicrodepositVerifyRequestBody?), int operationIndex = 0, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + /// + /// Verify a Microdeposit + /// + /// + /// Use this endpoint to verify the amounts deposited into the account during a microdeposit verification. The verification has not successfully completed until the `status` is `VERIFIED`. Poll the `/users/{user_guid}/micro_deposits/{micro_deposit_guid}` (read microdeposit) endpoint until you see this status or an error state. + /// + /// Thrown when fails to make API call + /// The unique identifier for the microdeposit. Defined by MX. + /// (optional) + /// Index associated with the operation. + /// Cancellation Token to cancel the request. + /// Task of ApiResponse (MicrodepositResponseBody) + System.Threading.Tasks.Task> MicroDepositsMicrodepositGuidVerifyPutWithHttpInfoAsync(string microdepositGuid, MicrodepositVerifyRequestBody? microdepositVerifyRequestBody = default(MicrodepositVerifyRequestBody?), int operationIndex = 0, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + /// + /// List all microdeposits for a user + /// + /// + /// Use this endpoint to read the attributes of a specific microdeposit according to its unique GUID. + /// + /// Thrown when fails to make API call + /// The unique identifier for the user. Defined by MX. + /// Index associated with the operation. + /// Cancellation Token to cancel the request. + /// Task of MicrodepositsResponseBody + System.Threading.Tasks.Task UsersUserGuidMicroDepositsGetAsync(string userGuid, int operationIndex = 0, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + /// + /// List all microdeposits for a user + /// + /// + /// Use this endpoint to read the attributes of a specific microdeposit according to its unique GUID. + /// + /// Thrown when fails to make API call + /// The unique identifier for the user. Defined by MX. + /// Index associated with the operation. + /// Cancellation Token to cancel the request. + /// Task of ApiResponse (MicrodepositsResponseBody) + System.Threading.Tasks.Task> UsersUserGuidMicroDepositsGetWithHttpInfoAsync(string userGuid, int operationIndex = 0, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + /// + /// Delete a microdeposit + /// + /// + /// Use this endpoint to delete the specified microdeposit. + /// + /// Thrown when fails to make API call + /// The unique identifier for the microdeposit. Defined by MX. + /// The unique id for a `user`. + /// Index associated with the operation. + /// Cancellation Token to cancel the request. + /// Task of void + System.Threading.Tasks.Task UsersUserGuidMicroDepositsMicroDepositGuidDeleteAsync(string microDepositGuid, string userGuid, int operationIndex = 0, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + /// + /// Delete a microdeposit + /// + /// + /// Use this endpoint to delete the specified microdeposit. + /// + /// Thrown when fails to make API call + /// The unique identifier for the microdeposit. Defined by MX. + /// The unique id for a `user`. + /// Index associated with the operation. + /// Cancellation Token to cancel the request. + /// Task of ApiResponse + System.Threading.Tasks.Task> UsersUserGuidMicroDepositsMicroDepositGuidDeleteWithHttpInfoAsync(string microDepositGuid, string userGuid, int operationIndex = 0, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + /// + /// Read a microdeposit for a user + /// + /// + /// Use this endpoint to read the attributes of a specific microdeposit according to its unique GUID. <br></br> Webhooks for microdeposit status changes are triggered when a status changes. The actual status of the microdeposit guid updates every minute. You may force a status update by calling the read microdeposit endpoint. + /// + /// Thrown when fails to make API call + /// The unique identifier for the user. Defined by MX. + /// The unique identifier for the microdeposit. Defined by MX. + /// Index associated with the operation. + /// Cancellation Token to cancel the request. + /// Task of MicrodepositResponseBody + System.Threading.Tasks.Task UsersUserGuidMicroDepositsMicroDepositGuidGetAsync(string userGuid, string microDepositGuid, int operationIndex = 0, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + /// + /// Read a microdeposit for a user + /// + /// + /// Use this endpoint to read the attributes of a specific microdeposit according to its unique GUID. <br></br> Webhooks for microdeposit status changes are triggered when a status changes. The actual status of the microdeposit guid updates every minute. You may force a status update by calling the read microdeposit endpoint. + /// + /// Thrown when fails to make API call + /// The unique identifier for the user. Defined by MX. + /// The unique identifier for the microdeposit. Defined by MX. + /// Index associated with the operation. + /// Cancellation Token to cancel the request. + /// Task of ApiResponse (MicrodepositResponseBody) + System.Threading.Tasks.Task> UsersUserGuidMicroDepositsMicroDepositGuidGetWithHttpInfoAsync(string userGuid, string microDepositGuid, int operationIndex = 0, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + /// + /// Create a microdeposit + /// + /// + /// Use this endpoint to create a microdeposit. The response will include the new microdeposit record with a status of INITIATED. + /// + /// Thrown when fails to make API call + /// The unique identifier for the user. Defined by MX. + /// + /// Index associated with the operation. + /// Cancellation Token to cancel the request. + /// Task of MicrodepositResponseBody + System.Threading.Tasks.Task UsersUserGuidMicroDepositsPostAsync(string userGuid, MicrodepositRequestBody microdepositRequestBody, int operationIndex = 0, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + /// + /// Create a microdeposit + /// + /// + /// Use this endpoint to create a microdeposit. The response will include the new microdeposit record with a status of INITIATED. + /// + /// Thrown when fails to make API call + /// The unique identifier for the user. Defined by MX. + /// + /// Index associated with the operation. + /// Cancellation Token to cancel the request. + /// Task of ApiResponse (MicrodepositResponseBody) + System.Threading.Tasks.Task> UsersUserGuidMicroDepositsPostWithHttpInfoAsync(string userGuid, MicrodepositRequestBody microdepositRequestBody, int operationIndex = 0, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + #endregion Asynchronous Operations + } + + /// + /// Represents a collection of functions to interact with the API endpoints + /// + public interface IMicrodepositsApi : IMicrodepositsApiSync, IMicrodepositsApiAsync + { + + } + + /// + /// Represents a collection of functions to interact with the API endpoints + /// + public partial class MicrodepositsApi : IMicrodepositsApi + { + private MX.Platform.CSharp.Client.ExceptionFactory _exceptionFactory = (name, response) => null; + + /// + /// Initializes a new instance of the class. + /// + /// + public MicrodepositsApi() : this((string)null) + { + } + + /// + /// Initializes a new instance of the class. + /// + /// + public MicrodepositsApi(string basePath) + { + this.Configuration = MX.Platform.CSharp.Client.Configuration.MergeConfigurations( + MX.Platform.CSharp.Client.GlobalConfiguration.Instance, + new MX.Platform.CSharp.Client.Configuration { BasePath = basePath } + ); + this.Client = new MX.Platform.CSharp.Client.ApiClient(this.Configuration.BasePath); + this.AsynchronousClient = new MX.Platform.CSharp.Client.ApiClient(this.Configuration.BasePath); + this.ExceptionFactory = MX.Platform.CSharp.Client.Configuration.DefaultExceptionFactory; + } + + /// + /// Initializes a new instance of the class + /// using Configuration object + /// + /// An instance of Configuration + /// + public MicrodepositsApi(MX.Platform.CSharp.Client.Configuration configuration) + { + if (configuration == null) throw new ArgumentNullException("configuration"); + + this.Configuration = MX.Platform.CSharp.Client.Configuration.MergeConfigurations( + MX.Platform.CSharp.Client.GlobalConfiguration.Instance, + configuration + ); + this.Client = new MX.Platform.CSharp.Client.ApiClient(this.Configuration.BasePath); + this.AsynchronousClient = new MX.Platform.CSharp.Client.ApiClient(this.Configuration.BasePath); + ExceptionFactory = MX.Platform.CSharp.Client.Configuration.DefaultExceptionFactory; + } + + /// + /// Initializes a new instance of the class + /// using a Configuration object and client instance. + /// + /// The client interface for synchronous API access. + /// The client interface for asynchronous API access. + /// The configuration object. + public MicrodepositsApi(MX.Platform.CSharp.Client.ISynchronousClient client, MX.Platform.CSharp.Client.IAsynchronousClient asyncClient, MX.Platform.CSharp.Client.IReadableConfiguration configuration) + { + if (client == null) throw new ArgumentNullException("client"); + if (asyncClient == null) throw new ArgumentNullException("asyncClient"); + if (configuration == null) throw new ArgumentNullException("configuration"); + + this.Client = client; + this.AsynchronousClient = asyncClient; + this.Configuration = configuration; + this.ExceptionFactory = MX.Platform.CSharp.Client.Configuration.DefaultExceptionFactory; + } + + /// + /// The client for accessing this underlying API asynchronously. + /// + public MX.Platform.CSharp.Client.IAsynchronousClient AsynchronousClient { get; set; } + + /// + /// The client for accessing this underlying API synchronously. + /// + public MX.Platform.CSharp.Client.ISynchronousClient Client { get; set; } + + /// + /// Gets the base path of the API client. + /// + /// The base path + public string GetBasePath() + { + return this.Configuration.BasePath; + } + + /// + /// Gets or sets the configuration object + /// + /// An instance of the Configuration + public MX.Platform.CSharp.Client.IReadableConfiguration Configuration { get; set; } + + /// + /// Provides a factory method hook for the creation of exceptions. + /// + public MX.Platform.CSharp.Client.ExceptionFactory ExceptionFactory + { + get + { + if (_exceptionFactory != null && _exceptionFactory.GetInvocationList().Length > 1) + { + throw new InvalidOperationException("Multicast delegate for ExceptionFactory is unsupported."); + } + return _exceptionFactory; + } + set { _exceptionFactory = value; } + } + + /// + /// Verify a Microdeposit Use this endpoint to verify the amounts deposited into the account during a microdeposit verification. The verification has not successfully completed until the `status` is `VERIFIED`. Poll the `/users/{user_guid}/micro_deposits/{micro_deposit_guid}` (read microdeposit) endpoint until you see this status or an error state. + /// + /// Thrown when fails to make API call + /// The unique identifier for the microdeposit. Defined by MX. + /// (optional) + /// Index associated with the operation. + /// MicrodepositResponseBody + public MicrodepositResponseBody MicroDepositsMicrodepositGuidVerifyPut(string microdepositGuid, MicrodepositVerifyRequestBody? microdepositVerifyRequestBody = default(MicrodepositVerifyRequestBody?), int operationIndex = 0) + { + MX.Platform.CSharp.Client.ApiResponse localVarResponse = MicroDepositsMicrodepositGuidVerifyPutWithHttpInfo(microdepositGuid, microdepositVerifyRequestBody); + return localVarResponse.Data; + } + + /// + /// Verify a Microdeposit Use this endpoint to verify the amounts deposited into the account during a microdeposit verification. The verification has not successfully completed until the `status` is `VERIFIED`. Poll the `/users/{user_guid}/micro_deposits/{micro_deposit_guid}` (read microdeposit) endpoint until you see this status or an error state. + /// + /// Thrown when fails to make API call + /// The unique identifier for the microdeposit. Defined by MX. + /// (optional) + /// Index associated with the operation. + /// ApiResponse of MicrodepositResponseBody + public MX.Platform.CSharp.Client.ApiResponse MicroDepositsMicrodepositGuidVerifyPutWithHttpInfo(string microdepositGuid, MicrodepositVerifyRequestBody? microdepositVerifyRequestBody = default(MicrodepositVerifyRequestBody?), int operationIndex = 0) + { + // verify the required parameter 'microdepositGuid' is set + if (microdepositGuid == null) + { + throw new MX.Platform.CSharp.Client.ApiException(400, "Missing required parameter 'microdepositGuid' when calling MicrodepositsApi->MicroDepositsMicrodepositGuidVerifyPut"); + } + + MX.Platform.CSharp.Client.RequestOptions localVarRequestOptions = new MX.Platform.CSharp.Client.RequestOptions(); + + string[] _contentTypes = new string[] { + "application/json" + }; + + // to determine the Accept header + string[] _accepts = new string[] { + "application/json" + }; + + var localVarContentType = MX.Platform.CSharp.Client.ClientUtils.SelectHeaderContentType(_contentTypes); + if (localVarContentType != null) + { + localVarRequestOptions.HeaderParameters.Add("Content-Type", localVarContentType); + } + + var localVarAccept = MX.Platform.CSharp.Client.ClientUtils.SelectHeaderAccept(_accepts); + if (localVarAccept != null) + { + localVarRequestOptions.HeaderParameters.Add("Accept", localVarAccept); + } + + localVarRequestOptions.PathParameters.Add("microdeposit_guid", MX.Platform.CSharp.Client.ClientUtils.ParameterToString(microdepositGuid)); // path parameter + localVarRequestOptions.Data = microdepositVerifyRequestBody; + + localVarRequestOptions.Operation = "MicrodepositsApi.MicroDepositsMicrodepositGuidVerifyPut"; + localVarRequestOptions.OperationIndex = operationIndex; + + // authentication (basicAuth) required + // http basic authentication required + if (!string.IsNullOrEmpty(this.Configuration.Username) || !string.IsNullOrEmpty(this.Configuration.Password) && !localVarRequestOptions.HeaderParameters.ContainsKey("Authorization")) + { + localVarRequestOptions.HeaderParameters.Add("Authorization", "Basic " + MX.Platform.CSharp.Client.ClientUtils.Base64Encode(this.Configuration.Username + ":" + this.Configuration.Password)); + } + + // make the HTTP request + var localVarResponse = this.Client.Put("/micro_deposits/{microdeposit_guid}/verify", localVarRequestOptions, this.Configuration); + if (this.ExceptionFactory != null) + { + Exception _exception = this.ExceptionFactory("MicroDepositsMicrodepositGuidVerifyPut", localVarResponse); + if (_exception != null) + { + throw _exception; + } + } + + return localVarResponse; + } + + /// + /// Verify a Microdeposit Use this endpoint to verify the amounts deposited into the account during a microdeposit verification. The verification has not successfully completed until the `status` is `VERIFIED`. Poll the `/users/{user_guid}/micro_deposits/{micro_deposit_guid}` (read microdeposit) endpoint until you see this status or an error state. + /// + /// Thrown when fails to make API call + /// The unique identifier for the microdeposit. Defined by MX. + /// (optional) + /// Index associated with the operation. + /// Cancellation Token to cancel the request. + /// Task of MicrodepositResponseBody + public async System.Threading.Tasks.Task MicroDepositsMicrodepositGuidVerifyPutAsync(string microdepositGuid, MicrodepositVerifyRequestBody? microdepositVerifyRequestBody = default(MicrodepositVerifyRequestBody?), int operationIndex = 0, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + MX.Platform.CSharp.Client.ApiResponse localVarResponse = await MicroDepositsMicrodepositGuidVerifyPutWithHttpInfoAsync(microdepositGuid, microdepositVerifyRequestBody, operationIndex, cancellationToken).ConfigureAwait(false); + return localVarResponse.Data; + } + + /// + /// Verify a Microdeposit Use this endpoint to verify the amounts deposited into the account during a microdeposit verification. The verification has not successfully completed until the `status` is `VERIFIED`. Poll the `/users/{user_guid}/micro_deposits/{micro_deposit_guid}` (read microdeposit) endpoint until you see this status or an error state. + /// + /// Thrown when fails to make API call + /// The unique identifier for the microdeposit. Defined by MX. + /// (optional) + /// Index associated with the operation. + /// Cancellation Token to cancel the request. + /// Task of ApiResponse (MicrodepositResponseBody) + public async System.Threading.Tasks.Task> MicroDepositsMicrodepositGuidVerifyPutWithHttpInfoAsync(string microdepositGuid, MicrodepositVerifyRequestBody? microdepositVerifyRequestBody = default(MicrodepositVerifyRequestBody?), int operationIndex = 0, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + // verify the required parameter 'microdepositGuid' is set + if (microdepositGuid == null) + { + throw new MX.Platform.CSharp.Client.ApiException(400, "Missing required parameter 'microdepositGuid' when calling MicrodepositsApi->MicroDepositsMicrodepositGuidVerifyPut"); + } + + + MX.Platform.CSharp.Client.RequestOptions localVarRequestOptions = new MX.Platform.CSharp.Client.RequestOptions(); + + string[] _contentTypes = new string[] { + "application/json" + }; + + // to determine the Accept header + string[] _accepts = new string[] { + "application/json" + }; + + var localVarContentType = MX.Platform.CSharp.Client.ClientUtils.SelectHeaderContentType(_contentTypes); + if (localVarContentType != null) + { + localVarRequestOptions.HeaderParameters.Add("Content-Type", localVarContentType); + } + + var localVarAccept = MX.Platform.CSharp.Client.ClientUtils.SelectHeaderAccept(_accepts); + if (localVarAccept != null) + { + localVarRequestOptions.HeaderParameters.Add("Accept", localVarAccept); + } + + localVarRequestOptions.PathParameters.Add("microdeposit_guid", MX.Platform.CSharp.Client.ClientUtils.ParameterToString(microdepositGuid)); // path parameter + localVarRequestOptions.Data = microdepositVerifyRequestBody; + + localVarRequestOptions.Operation = "MicrodepositsApi.MicroDepositsMicrodepositGuidVerifyPut"; + localVarRequestOptions.OperationIndex = operationIndex; + + // authentication (basicAuth) required + // http basic authentication required + if (!string.IsNullOrEmpty(this.Configuration.Username) || !string.IsNullOrEmpty(this.Configuration.Password) && !localVarRequestOptions.HeaderParameters.ContainsKey("Authorization")) + { + localVarRequestOptions.HeaderParameters.Add("Authorization", "Basic " + MX.Platform.CSharp.Client.ClientUtils.Base64Encode(this.Configuration.Username + ":" + this.Configuration.Password)); + } + + // make the HTTP request + var localVarResponse = await this.AsynchronousClient.PutAsync("/micro_deposits/{microdeposit_guid}/verify", localVarRequestOptions, this.Configuration, cancellationToken).ConfigureAwait(false); + + if (this.ExceptionFactory != null) + { + Exception _exception = this.ExceptionFactory("MicroDepositsMicrodepositGuidVerifyPut", localVarResponse); + if (_exception != null) + { + throw _exception; + } + } + + return localVarResponse; + } + + /// + /// List all microdeposits for a user Use this endpoint to read the attributes of a specific microdeposit according to its unique GUID. + /// + /// Thrown when fails to make API call + /// The unique identifier for the user. Defined by MX. + /// Index associated with the operation. + /// MicrodepositsResponseBody + public MicrodepositsResponseBody UsersUserGuidMicroDepositsGet(string userGuid, int operationIndex = 0) + { + MX.Platform.CSharp.Client.ApiResponse localVarResponse = UsersUserGuidMicroDepositsGetWithHttpInfo(userGuid); + return localVarResponse.Data; + } + + /// + /// List all microdeposits for a user Use this endpoint to read the attributes of a specific microdeposit according to its unique GUID. + /// + /// Thrown when fails to make API call + /// The unique identifier for the user. Defined by MX. + /// Index associated with the operation. + /// ApiResponse of MicrodepositsResponseBody + public MX.Platform.CSharp.Client.ApiResponse UsersUserGuidMicroDepositsGetWithHttpInfo(string userGuid, int operationIndex = 0) + { + // verify the required parameter 'userGuid' is set + if (userGuid == null) + { + throw new MX.Platform.CSharp.Client.ApiException(400, "Missing required parameter 'userGuid' when calling MicrodepositsApi->UsersUserGuidMicroDepositsGet"); + } + + MX.Platform.CSharp.Client.RequestOptions localVarRequestOptions = new MX.Platform.CSharp.Client.RequestOptions(); + + string[] _contentTypes = new string[] { + }; + + // to determine the Accept header + string[] _accepts = new string[] { + "application/json" + }; + + var localVarContentType = MX.Platform.CSharp.Client.ClientUtils.SelectHeaderContentType(_contentTypes); + if (localVarContentType != null) + { + localVarRequestOptions.HeaderParameters.Add("Content-Type", localVarContentType); + } + + var localVarAccept = MX.Platform.CSharp.Client.ClientUtils.SelectHeaderAccept(_accepts); + if (localVarAccept != null) + { + localVarRequestOptions.HeaderParameters.Add("Accept", localVarAccept); + } + + localVarRequestOptions.PathParameters.Add("user_guid", MX.Platform.CSharp.Client.ClientUtils.ParameterToString(userGuid)); // path parameter + + localVarRequestOptions.Operation = "MicrodepositsApi.UsersUserGuidMicroDepositsGet"; + localVarRequestOptions.OperationIndex = operationIndex; + + // authentication (basicAuth) required + // http basic authentication required + if (!string.IsNullOrEmpty(this.Configuration.Username) || !string.IsNullOrEmpty(this.Configuration.Password) && !localVarRequestOptions.HeaderParameters.ContainsKey("Authorization")) + { + localVarRequestOptions.HeaderParameters.Add("Authorization", "Basic " + MX.Platform.CSharp.Client.ClientUtils.Base64Encode(this.Configuration.Username + ":" + this.Configuration.Password)); + } + + // make the HTTP request + var localVarResponse = this.Client.Get("/users/{user_guid}/micro_deposits", localVarRequestOptions, this.Configuration); + if (this.ExceptionFactory != null) + { + Exception _exception = this.ExceptionFactory("UsersUserGuidMicroDepositsGet", localVarResponse); + if (_exception != null) + { + throw _exception; + } + } + + return localVarResponse; + } + + /// + /// List all microdeposits for a user Use this endpoint to read the attributes of a specific microdeposit according to its unique GUID. + /// + /// Thrown when fails to make API call + /// The unique identifier for the user. Defined by MX. + /// Index associated with the operation. + /// Cancellation Token to cancel the request. + /// Task of MicrodepositsResponseBody + public async System.Threading.Tasks.Task UsersUserGuidMicroDepositsGetAsync(string userGuid, int operationIndex = 0, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + MX.Platform.CSharp.Client.ApiResponse localVarResponse = await UsersUserGuidMicroDepositsGetWithHttpInfoAsync(userGuid, operationIndex, cancellationToken).ConfigureAwait(false); + return localVarResponse.Data; + } + + /// + /// List all microdeposits for a user Use this endpoint to read the attributes of a specific microdeposit according to its unique GUID. + /// + /// Thrown when fails to make API call + /// The unique identifier for the user. Defined by MX. + /// Index associated with the operation. + /// Cancellation Token to cancel the request. + /// Task of ApiResponse (MicrodepositsResponseBody) + public async System.Threading.Tasks.Task> UsersUserGuidMicroDepositsGetWithHttpInfoAsync(string userGuid, int operationIndex = 0, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + // verify the required parameter 'userGuid' is set + if (userGuid == null) + { + throw new MX.Platform.CSharp.Client.ApiException(400, "Missing required parameter 'userGuid' when calling MicrodepositsApi->UsersUserGuidMicroDepositsGet"); + } + + + MX.Platform.CSharp.Client.RequestOptions localVarRequestOptions = new MX.Platform.CSharp.Client.RequestOptions(); + + string[] _contentTypes = new string[] { + }; + + // to determine the Accept header + string[] _accepts = new string[] { + "application/json" + }; + + var localVarContentType = MX.Platform.CSharp.Client.ClientUtils.SelectHeaderContentType(_contentTypes); + if (localVarContentType != null) + { + localVarRequestOptions.HeaderParameters.Add("Content-Type", localVarContentType); + } + + var localVarAccept = MX.Platform.CSharp.Client.ClientUtils.SelectHeaderAccept(_accepts); + if (localVarAccept != null) + { + localVarRequestOptions.HeaderParameters.Add("Accept", localVarAccept); + } + + localVarRequestOptions.PathParameters.Add("user_guid", MX.Platform.CSharp.Client.ClientUtils.ParameterToString(userGuid)); // path parameter + + localVarRequestOptions.Operation = "MicrodepositsApi.UsersUserGuidMicroDepositsGet"; + localVarRequestOptions.OperationIndex = operationIndex; + + // authentication (basicAuth) required + // http basic authentication required + if (!string.IsNullOrEmpty(this.Configuration.Username) || !string.IsNullOrEmpty(this.Configuration.Password) && !localVarRequestOptions.HeaderParameters.ContainsKey("Authorization")) + { + localVarRequestOptions.HeaderParameters.Add("Authorization", "Basic " + MX.Platform.CSharp.Client.ClientUtils.Base64Encode(this.Configuration.Username + ":" + this.Configuration.Password)); + } + + // make the HTTP request + var localVarResponse = await this.AsynchronousClient.GetAsync("/users/{user_guid}/micro_deposits", localVarRequestOptions, this.Configuration, cancellationToken).ConfigureAwait(false); + + if (this.ExceptionFactory != null) + { + Exception _exception = this.ExceptionFactory("UsersUserGuidMicroDepositsGet", localVarResponse); + if (_exception != null) + { + throw _exception; + } + } + + return localVarResponse; + } + + /// + /// Delete a microdeposit Use this endpoint to delete the specified microdeposit. + /// + /// Thrown when fails to make API call + /// The unique identifier for the microdeposit. Defined by MX. + /// The unique id for a `user`. + /// Index associated with the operation. + /// + public void UsersUserGuidMicroDepositsMicroDepositGuidDelete(string microDepositGuid, string userGuid, int operationIndex = 0) + { + UsersUserGuidMicroDepositsMicroDepositGuidDeleteWithHttpInfo(microDepositGuid, userGuid); + } + + /// + /// Delete a microdeposit Use this endpoint to delete the specified microdeposit. + /// + /// Thrown when fails to make API call + /// The unique identifier for the microdeposit. Defined by MX. + /// The unique id for a `user`. + /// Index associated with the operation. + /// ApiResponse of Object(void) + public MX.Platform.CSharp.Client.ApiResponse UsersUserGuidMicroDepositsMicroDepositGuidDeleteWithHttpInfo(string microDepositGuid, string userGuid, int operationIndex = 0) + { + // verify the required parameter 'microDepositGuid' is set + if (microDepositGuid == null) + { + throw new MX.Platform.CSharp.Client.ApiException(400, "Missing required parameter 'microDepositGuid' when calling MicrodepositsApi->UsersUserGuidMicroDepositsMicroDepositGuidDelete"); + } + + // verify the required parameter 'userGuid' is set + if (userGuid == null) + { + throw new MX.Platform.CSharp.Client.ApiException(400, "Missing required parameter 'userGuid' when calling MicrodepositsApi->UsersUserGuidMicroDepositsMicroDepositGuidDelete"); + } + + MX.Platform.CSharp.Client.RequestOptions localVarRequestOptions = new MX.Platform.CSharp.Client.RequestOptions(); + + string[] _contentTypes = new string[] { + }; + + // to determine the Accept header + string[] _accepts = new string[] { + }; + + var localVarContentType = MX.Platform.CSharp.Client.ClientUtils.SelectHeaderContentType(_contentTypes); + if (localVarContentType != null) + { + localVarRequestOptions.HeaderParameters.Add("Content-Type", localVarContentType); + } + + var localVarAccept = MX.Platform.CSharp.Client.ClientUtils.SelectHeaderAccept(_accepts); + if (localVarAccept != null) + { + localVarRequestOptions.HeaderParameters.Add("Accept", localVarAccept); + } + + localVarRequestOptions.PathParameters.Add("micro_deposit_guid", MX.Platform.CSharp.Client.ClientUtils.ParameterToString(microDepositGuid)); // path parameter + localVarRequestOptions.PathParameters.Add("user_guid", MX.Platform.CSharp.Client.ClientUtils.ParameterToString(userGuid)); // path parameter + + localVarRequestOptions.Operation = "MicrodepositsApi.UsersUserGuidMicroDepositsMicroDepositGuidDelete"; + localVarRequestOptions.OperationIndex = operationIndex; + + // authentication (basicAuth) required + // http basic authentication required + if (!string.IsNullOrEmpty(this.Configuration.Username) || !string.IsNullOrEmpty(this.Configuration.Password) && !localVarRequestOptions.HeaderParameters.ContainsKey("Authorization")) + { + localVarRequestOptions.HeaderParameters.Add("Authorization", "Basic " + MX.Platform.CSharp.Client.ClientUtils.Base64Encode(this.Configuration.Username + ":" + this.Configuration.Password)); + } + + // make the HTTP request + var localVarResponse = this.Client.Delete("/users/{user_guid}/micro_deposits/{micro_deposit_guid}", localVarRequestOptions, this.Configuration); + if (this.ExceptionFactory != null) + { + Exception _exception = this.ExceptionFactory("UsersUserGuidMicroDepositsMicroDepositGuidDelete", localVarResponse); + if (_exception != null) + { + throw _exception; + } + } + + return localVarResponse; + } + + /// + /// Delete a microdeposit Use this endpoint to delete the specified microdeposit. + /// + /// Thrown when fails to make API call + /// The unique identifier for the microdeposit. Defined by MX. + /// The unique id for a `user`. + /// Index associated with the operation. + /// Cancellation Token to cancel the request. + /// Task of void + public async System.Threading.Tasks.Task UsersUserGuidMicroDepositsMicroDepositGuidDeleteAsync(string microDepositGuid, string userGuid, int operationIndex = 0, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + await UsersUserGuidMicroDepositsMicroDepositGuidDeleteWithHttpInfoAsync(microDepositGuid, userGuid, operationIndex, cancellationToken).ConfigureAwait(false); + } + + /// + /// Delete a microdeposit Use this endpoint to delete the specified microdeposit. + /// + /// Thrown when fails to make API call + /// The unique identifier for the microdeposit. Defined by MX. + /// The unique id for a `user`. + /// Index associated with the operation. + /// Cancellation Token to cancel the request. + /// Task of ApiResponse + public async System.Threading.Tasks.Task> UsersUserGuidMicroDepositsMicroDepositGuidDeleteWithHttpInfoAsync(string microDepositGuid, string userGuid, int operationIndex = 0, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + // verify the required parameter 'microDepositGuid' is set + if (microDepositGuid == null) + { + throw new MX.Platform.CSharp.Client.ApiException(400, "Missing required parameter 'microDepositGuid' when calling MicrodepositsApi->UsersUserGuidMicroDepositsMicroDepositGuidDelete"); + } + + // verify the required parameter 'userGuid' is set + if (userGuid == null) + { + throw new MX.Platform.CSharp.Client.ApiException(400, "Missing required parameter 'userGuid' when calling MicrodepositsApi->UsersUserGuidMicroDepositsMicroDepositGuidDelete"); + } + + + MX.Platform.CSharp.Client.RequestOptions localVarRequestOptions = new MX.Platform.CSharp.Client.RequestOptions(); + + string[] _contentTypes = new string[] { + }; + + // to determine the Accept header + string[] _accepts = new string[] { + }; + + var localVarContentType = MX.Platform.CSharp.Client.ClientUtils.SelectHeaderContentType(_contentTypes); + if (localVarContentType != null) + { + localVarRequestOptions.HeaderParameters.Add("Content-Type", localVarContentType); + } + + var localVarAccept = MX.Platform.CSharp.Client.ClientUtils.SelectHeaderAccept(_accepts); + if (localVarAccept != null) + { + localVarRequestOptions.HeaderParameters.Add("Accept", localVarAccept); + } + + localVarRequestOptions.PathParameters.Add("micro_deposit_guid", MX.Platform.CSharp.Client.ClientUtils.ParameterToString(microDepositGuid)); // path parameter + localVarRequestOptions.PathParameters.Add("user_guid", MX.Platform.CSharp.Client.ClientUtils.ParameterToString(userGuid)); // path parameter + + localVarRequestOptions.Operation = "MicrodepositsApi.UsersUserGuidMicroDepositsMicroDepositGuidDelete"; + localVarRequestOptions.OperationIndex = operationIndex; + + // authentication (basicAuth) required + // http basic authentication required + if (!string.IsNullOrEmpty(this.Configuration.Username) || !string.IsNullOrEmpty(this.Configuration.Password) && !localVarRequestOptions.HeaderParameters.ContainsKey("Authorization")) + { + localVarRequestOptions.HeaderParameters.Add("Authorization", "Basic " + MX.Platform.CSharp.Client.ClientUtils.Base64Encode(this.Configuration.Username + ":" + this.Configuration.Password)); + } + + // make the HTTP request + var localVarResponse = await this.AsynchronousClient.DeleteAsync("/users/{user_guid}/micro_deposits/{micro_deposit_guid}", localVarRequestOptions, this.Configuration, cancellationToken).ConfigureAwait(false); + + if (this.ExceptionFactory != null) + { + Exception _exception = this.ExceptionFactory("UsersUserGuidMicroDepositsMicroDepositGuidDelete", localVarResponse); + if (_exception != null) + { + throw _exception; + } + } + + return localVarResponse; + } + + /// + /// Read a microdeposit for a user Use this endpoint to read the attributes of a specific microdeposit according to its unique GUID. <br></br> Webhooks for microdeposit status changes are triggered when a status changes. The actual status of the microdeposit guid updates every minute. You may force a status update by calling the read microdeposit endpoint. + /// + /// Thrown when fails to make API call + /// The unique identifier for the user. Defined by MX. + /// The unique identifier for the microdeposit. Defined by MX. + /// Index associated with the operation. + /// MicrodepositResponseBody + public MicrodepositResponseBody UsersUserGuidMicroDepositsMicroDepositGuidGet(string userGuid, string microDepositGuid, int operationIndex = 0) + { + MX.Platform.CSharp.Client.ApiResponse localVarResponse = UsersUserGuidMicroDepositsMicroDepositGuidGetWithHttpInfo(userGuid, microDepositGuid); + return localVarResponse.Data; + } + + /// + /// Read a microdeposit for a user Use this endpoint to read the attributes of a specific microdeposit according to its unique GUID. <br></br> Webhooks for microdeposit status changes are triggered when a status changes. The actual status of the microdeposit guid updates every minute. You may force a status update by calling the read microdeposit endpoint. + /// + /// Thrown when fails to make API call + /// The unique identifier for the user. Defined by MX. + /// The unique identifier for the microdeposit. Defined by MX. + /// Index associated with the operation. + /// ApiResponse of MicrodepositResponseBody + public MX.Platform.CSharp.Client.ApiResponse UsersUserGuidMicroDepositsMicroDepositGuidGetWithHttpInfo(string userGuid, string microDepositGuid, int operationIndex = 0) + { + // verify the required parameter 'userGuid' is set + if (userGuid == null) + { + throw new MX.Platform.CSharp.Client.ApiException(400, "Missing required parameter 'userGuid' when calling MicrodepositsApi->UsersUserGuidMicroDepositsMicroDepositGuidGet"); + } + + // verify the required parameter 'microDepositGuid' is set + if (microDepositGuid == null) + { + throw new MX.Platform.CSharp.Client.ApiException(400, "Missing required parameter 'microDepositGuid' when calling MicrodepositsApi->UsersUserGuidMicroDepositsMicroDepositGuidGet"); + } + + MX.Platform.CSharp.Client.RequestOptions localVarRequestOptions = new MX.Platform.CSharp.Client.RequestOptions(); + + string[] _contentTypes = new string[] { + }; + + // to determine the Accept header + string[] _accepts = new string[] { + "application/json" + }; + + var localVarContentType = MX.Platform.CSharp.Client.ClientUtils.SelectHeaderContentType(_contentTypes); + if (localVarContentType != null) + { + localVarRequestOptions.HeaderParameters.Add("Content-Type", localVarContentType); + } + + var localVarAccept = MX.Platform.CSharp.Client.ClientUtils.SelectHeaderAccept(_accepts); + if (localVarAccept != null) + { + localVarRequestOptions.HeaderParameters.Add("Accept", localVarAccept); + } + + localVarRequestOptions.PathParameters.Add("user_guid", MX.Platform.CSharp.Client.ClientUtils.ParameterToString(userGuid)); // path parameter + localVarRequestOptions.PathParameters.Add("micro_deposit_guid", MX.Platform.CSharp.Client.ClientUtils.ParameterToString(microDepositGuid)); // path parameter + + localVarRequestOptions.Operation = "MicrodepositsApi.UsersUserGuidMicroDepositsMicroDepositGuidGet"; + localVarRequestOptions.OperationIndex = operationIndex; + + // authentication (basicAuth) required + // http basic authentication required + if (!string.IsNullOrEmpty(this.Configuration.Username) || !string.IsNullOrEmpty(this.Configuration.Password) && !localVarRequestOptions.HeaderParameters.ContainsKey("Authorization")) + { + localVarRequestOptions.HeaderParameters.Add("Authorization", "Basic " + MX.Platform.CSharp.Client.ClientUtils.Base64Encode(this.Configuration.Username + ":" + this.Configuration.Password)); + } + + // make the HTTP request + var localVarResponse = this.Client.Get("/users/{user_guid}/micro_deposits/{micro_deposit_guid}", localVarRequestOptions, this.Configuration); + if (this.ExceptionFactory != null) + { + Exception _exception = this.ExceptionFactory("UsersUserGuidMicroDepositsMicroDepositGuidGet", localVarResponse); + if (_exception != null) + { + throw _exception; + } + } + + return localVarResponse; + } + + /// + /// Read a microdeposit for a user Use this endpoint to read the attributes of a specific microdeposit according to its unique GUID. <br></br> Webhooks for microdeposit status changes are triggered when a status changes. The actual status of the microdeposit guid updates every minute. You may force a status update by calling the read microdeposit endpoint. + /// + /// Thrown when fails to make API call + /// The unique identifier for the user. Defined by MX. + /// The unique identifier for the microdeposit. Defined by MX. + /// Index associated with the operation. + /// Cancellation Token to cancel the request. + /// Task of MicrodepositResponseBody + public async System.Threading.Tasks.Task UsersUserGuidMicroDepositsMicroDepositGuidGetAsync(string userGuid, string microDepositGuid, int operationIndex = 0, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + MX.Platform.CSharp.Client.ApiResponse localVarResponse = await UsersUserGuidMicroDepositsMicroDepositGuidGetWithHttpInfoAsync(userGuid, microDepositGuid, operationIndex, cancellationToken).ConfigureAwait(false); + return localVarResponse.Data; + } + + /// + /// Read a microdeposit for a user Use this endpoint to read the attributes of a specific microdeposit according to its unique GUID. <br></br> Webhooks for microdeposit status changes are triggered when a status changes. The actual status of the microdeposit guid updates every minute. You may force a status update by calling the read microdeposit endpoint. + /// + /// Thrown when fails to make API call + /// The unique identifier for the user. Defined by MX. + /// The unique identifier for the microdeposit. Defined by MX. + /// Index associated with the operation. + /// Cancellation Token to cancel the request. + /// Task of ApiResponse (MicrodepositResponseBody) + public async System.Threading.Tasks.Task> UsersUserGuidMicroDepositsMicroDepositGuidGetWithHttpInfoAsync(string userGuid, string microDepositGuid, int operationIndex = 0, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + // verify the required parameter 'userGuid' is set + if (userGuid == null) + { + throw new MX.Platform.CSharp.Client.ApiException(400, "Missing required parameter 'userGuid' when calling MicrodepositsApi->UsersUserGuidMicroDepositsMicroDepositGuidGet"); + } + + // verify the required parameter 'microDepositGuid' is set + if (microDepositGuid == null) + { + throw new MX.Platform.CSharp.Client.ApiException(400, "Missing required parameter 'microDepositGuid' when calling MicrodepositsApi->UsersUserGuidMicroDepositsMicroDepositGuidGet"); + } + + + MX.Platform.CSharp.Client.RequestOptions localVarRequestOptions = new MX.Platform.CSharp.Client.RequestOptions(); + + string[] _contentTypes = new string[] { + }; + + // to determine the Accept header + string[] _accepts = new string[] { + "application/json" + }; + + var localVarContentType = MX.Platform.CSharp.Client.ClientUtils.SelectHeaderContentType(_contentTypes); + if (localVarContentType != null) + { + localVarRequestOptions.HeaderParameters.Add("Content-Type", localVarContentType); + } + + var localVarAccept = MX.Platform.CSharp.Client.ClientUtils.SelectHeaderAccept(_accepts); + if (localVarAccept != null) + { + localVarRequestOptions.HeaderParameters.Add("Accept", localVarAccept); + } + + localVarRequestOptions.PathParameters.Add("user_guid", MX.Platform.CSharp.Client.ClientUtils.ParameterToString(userGuid)); // path parameter + localVarRequestOptions.PathParameters.Add("micro_deposit_guid", MX.Platform.CSharp.Client.ClientUtils.ParameterToString(microDepositGuid)); // path parameter + + localVarRequestOptions.Operation = "MicrodepositsApi.UsersUserGuidMicroDepositsMicroDepositGuidGet"; + localVarRequestOptions.OperationIndex = operationIndex; + + // authentication (basicAuth) required + // http basic authentication required + if (!string.IsNullOrEmpty(this.Configuration.Username) || !string.IsNullOrEmpty(this.Configuration.Password) && !localVarRequestOptions.HeaderParameters.ContainsKey("Authorization")) + { + localVarRequestOptions.HeaderParameters.Add("Authorization", "Basic " + MX.Platform.CSharp.Client.ClientUtils.Base64Encode(this.Configuration.Username + ":" + this.Configuration.Password)); + } + + // make the HTTP request + var localVarResponse = await this.AsynchronousClient.GetAsync("/users/{user_guid}/micro_deposits/{micro_deposit_guid}", localVarRequestOptions, this.Configuration, cancellationToken).ConfigureAwait(false); + + if (this.ExceptionFactory != null) + { + Exception _exception = this.ExceptionFactory("UsersUserGuidMicroDepositsMicroDepositGuidGet", localVarResponse); + if (_exception != null) + { + throw _exception; + } + } + + return localVarResponse; + } + + /// + /// Create a microdeposit Use this endpoint to create a microdeposit. The response will include the new microdeposit record with a status of INITIATED. + /// + /// Thrown when fails to make API call + /// The unique identifier for the user. Defined by MX. + /// + /// Index associated with the operation. + /// MicrodepositResponseBody + public MicrodepositResponseBody UsersUserGuidMicroDepositsPost(string userGuid, MicrodepositRequestBody microdepositRequestBody, int operationIndex = 0) + { + MX.Platform.CSharp.Client.ApiResponse localVarResponse = UsersUserGuidMicroDepositsPostWithHttpInfo(userGuid, microdepositRequestBody); + return localVarResponse.Data; + } + + /// + /// Create a microdeposit Use this endpoint to create a microdeposit. The response will include the new microdeposit record with a status of INITIATED. + /// + /// Thrown when fails to make API call + /// The unique identifier for the user. Defined by MX. + /// + /// Index associated with the operation. + /// ApiResponse of MicrodepositResponseBody + public MX.Platform.CSharp.Client.ApiResponse UsersUserGuidMicroDepositsPostWithHttpInfo(string userGuid, MicrodepositRequestBody microdepositRequestBody, int operationIndex = 0) + { + // verify the required parameter 'userGuid' is set + if (userGuid == null) + { + throw new MX.Platform.CSharp.Client.ApiException(400, "Missing required parameter 'userGuid' when calling MicrodepositsApi->UsersUserGuidMicroDepositsPost"); + } + + // verify the required parameter 'microdepositRequestBody' is set + if (microdepositRequestBody == null) + { + throw new MX.Platform.CSharp.Client.ApiException(400, "Missing required parameter 'microdepositRequestBody' when calling MicrodepositsApi->UsersUserGuidMicroDepositsPost"); + } + + MX.Platform.CSharp.Client.RequestOptions localVarRequestOptions = new MX.Platform.CSharp.Client.RequestOptions(); + + string[] _contentTypes = new string[] { + "application/json" + }; + + // to determine the Accept header + string[] _accepts = new string[] { + "application/json" + }; + + var localVarContentType = MX.Platform.CSharp.Client.ClientUtils.SelectHeaderContentType(_contentTypes); + if (localVarContentType != null) + { + localVarRequestOptions.HeaderParameters.Add("Content-Type", localVarContentType); + } + + var localVarAccept = MX.Platform.CSharp.Client.ClientUtils.SelectHeaderAccept(_accepts); + if (localVarAccept != null) + { + localVarRequestOptions.HeaderParameters.Add("Accept", localVarAccept); + } + + localVarRequestOptions.PathParameters.Add("user_guid", MX.Platform.CSharp.Client.ClientUtils.ParameterToString(userGuid)); // path parameter + localVarRequestOptions.Data = microdepositRequestBody; + + localVarRequestOptions.Operation = "MicrodepositsApi.UsersUserGuidMicroDepositsPost"; + localVarRequestOptions.OperationIndex = operationIndex; + + // authentication (basicAuth) required + // http basic authentication required + if (!string.IsNullOrEmpty(this.Configuration.Username) || !string.IsNullOrEmpty(this.Configuration.Password) && !localVarRequestOptions.HeaderParameters.ContainsKey("Authorization")) + { + localVarRequestOptions.HeaderParameters.Add("Authorization", "Basic " + MX.Platform.CSharp.Client.ClientUtils.Base64Encode(this.Configuration.Username + ":" + this.Configuration.Password)); + } + + // make the HTTP request + var localVarResponse = this.Client.Post("/users/{user_guid}/micro_deposits", localVarRequestOptions, this.Configuration); + if (this.ExceptionFactory != null) + { + Exception _exception = this.ExceptionFactory("UsersUserGuidMicroDepositsPost", localVarResponse); + if (_exception != null) + { + throw _exception; + } + } + + return localVarResponse; + } + + /// + /// Create a microdeposit Use this endpoint to create a microdeposit. The response will include the new microdeposit record with a status of INITIATED. + /// + /// Thrown when fails to make API call + /// The unique identifier for the user. Defined by MX. + /// + /// Index associated with the operation. + /// Cancellation Token to cancel the request. + /// Task of MicrodepositResponseBody + public async System.Threading.Tasks.Task UsersUserGuidMicroDepositsPostAsync(string userGuid, MicrodepositRequestBody microdepositRequestBody, int operationIndex = 0, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + MX.Platform.CSharp.Client.ApiResponse localVarResponse = await UsersUserGuidMicroDepositsPostWithHttpInfoAsync(userGuid, microdepositRequestBody, operationIndex, cancellationToken).ConfigureAwait(false); + return localVarResponse.Data; + } + + /// + /// Create a microdeposit Use this endpoint to create a microdeposit. The response will include the new microdeposit record with a status of INITIATED. + /// + /// Thrown when fails to make API call + /// The unique identifier for the user. Defined by MX. + /// + /// Index associated with the operation. + /// Cancellation Token to cancel the request. + /// Task of ApiResponse (MicrodepositResponseBody) + public async System.Threading.Tasks.Task> UsersUserGuidMicroDepositsPostWithHttpInfoAsync(string userGuid, MicrodepositRequestBody microdepositRequestBody, int operationIndex = 0, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + // verify the required parameter 'userGuid' is set + if (userGuid == null) + { + throw new MX.Platform.CSharp.Client.ApiException(400, "Missing required parameter 'userGuid' when calling MicrodepositsApi->UsersUserGuidMicroDepositsPost"); + } + + // verify the required parameter 'microdepositRequestBody' is set + if (microdepositRequestBody == null) + { + throw new MX.Platform.CSharp.Client.ApiException(400, "Missing required parameter 'microdepositRequestBody' when calling MicrodepositsApi->UsersUserGuidMicroDepositsPost"); + } + + + MX.Platform.CSharp.Client.RequestOptions localVarRequestOptions = new MX.Platform.CSharp.Client.RequestOptions(); + + string[] _contentTypes = new string[] { + "application/json" + }; + + // to determine the Accept header + string[] _accepts = new string[] { + "application/json" + }; + + var localVarContentType = MX.Platform.CSharp.Client.ClientUtils.SelectHeaderContentType(_contentTypes); + if (localVarContentType != null) + { + localVarRequestOptions.HeaderParameters.Add("Content-Type", localVarContentType); + } + + var localVarAccept = MX.Platform.CSharp.Client.ClientUtils.SelectHeaderAccept(_accepts); + if (localVarAccept != null) + { + localVarRequestOptions.HeaderParameters.Add("Accept", localVarAccept); + } + + localVarRequestOptions.PathParameters.Add("user_guid", MX.Platform.CSharp.Client.ClientUtils.ParameterToString(userGuid)); // path parameter + localVarRequestOptions.Data = microdepositRequestBody; + + localVarRequestOptions.Operation = "MicrodepositsApi.UsersUserGuidMicroDepositsPost"; + localVarRequestOptions.OperationIndex = operationIndex; + + // authentication (basicAuth) required + // http basic authentication required + if (!string.IsNullOrEmpty(this.Configuration.Username) || !string.IsNullOrEmpty(this.Configuration.Password) && !localVarRequestOptions.HeaderParameters.ContainsKey("Authorization")) + { + localVarRequestOptions.HeaderParameters.Add("Authorization", "Basic " + MX.Platform.CSharp.Client.ClientUtils.Base64Encode(this.Configuration.Username + ":" + this.Configuration.Password)); + } + + // make the HTTP request + var localVarResponse = await this.AsynchronousClient.PostAsync("/users/{user_guid}/micro_deposits", localVarRequestOptions, this.Configuration, cancellationToken).ConfigureAwait(false); + + if (this.ExceptionFactory != null) + { + Exception _exception = this.ExceptionFactory("UsersUserGuidMicroDepositsPost", localVarResponse); + if (_exception != null) + { + throw _exception; + } + } + + return localVarResponse; + } + + } +} diff --git a/src/MX.Platform.CSharp/Api/TransactionsApi.cs b/src/MX.Platform.CSharp/Api/TransactionsApi.cs new file mode 100644 index 0000000..e92cd4e --- /dev/null +++ b/src/MX.Platform.CSharp/Api/TransactionsApi.cs @@ -0,0 +1,409 @@ +/* + * MX Platform API + * + * The MX Platform API is a powerful, fully-featured API designed to make aggregating and enhancing financial data easy and reliable. It can seamlessly connect your app or website to tens of thousands of financial institutions. + * + * The version of the OpenAPI document: 0.1.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using System; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.Net; +using System.Net.Mime; +using MX.Platform.CSharp.Client; +using MX.Platform.CSharp.Model; + +namespace MX.Platform.CSharp.Api +{ + + /// + /// Represents a collection of functions to interact with the API endpoints + /// + public interface ITransactionsApiSync : IApiAccessor + { + #region Synchronous Operations + /// + /// Create manual transaction + /// + /// + /// This endpoint can only be used to create manual transactions that are under a manual account. This endpoint accepts the optional MX-Skip-Webhook header and skip_webhook parameter. + /// + /// Thrown when fails to make API call + /// The unique identifier for the user. + /// The unique identifier for the account. + /// + /// Index associated with the operation. + /// TransactionCreateResponseBody + TransactionCreateResponseBody UsersUserGuidAccountsAccountGuidTransactionsPost(string userGuid, string accountGuid, TransactionCreateRequestBody transactionCreateRequestBody, int operationIndex = 0); + + /// + /// Create manual transaction + /// + /// + /// This endpoint can only be used to create manual transactions that are under a manual account. This endpoint accepts the optional MX-Skip-Webhook header and skip_webhook parameter. + /// + /// Thrown when fails to make API call + /// The unique identifier for the user. + /// The unique identifier for the account. + /// + /// Index associated with the operation. + /// ApiResponse of TransactionCreateResponseBody + ApiResponse UsersUserGuidAccountsAccountGuidTransactionsPostWithHttpInfo(string userGuid, string accountGuid, TransactionCreateRequestBody transactionCreateRequestBody, int operationIndex = 0); + #endregion Synchronous Operations + } + + /// + /// Represents a collection of functions to interact with the API endpoints + /// + public interface ITransactionsApiAsync : IApiAccessor + { + #region Asynchronous Operations + /// + /// Create manual transaction + /// + /// + /// This endpoint can only be used to create manual transactions that are under a manual account. This endpoint accepts the optional MX-Skip-Webhook header and skip_webhook parameter. + /// + /// Thrown when fails to make API call + /// The unique identifier for the user. + /// The unique identifier for the account. + /// + /// Index associated with the operation. + /// Cancellation Token to cancel the request. + /// Task of TransactionCreateResponseBody + System.Threading.Tasks.Task UsersUserGuidAccountsAccountGuidTransactionsPostAsync(string userGuid, string accountGuid, TransactionCreateRequestBody transactionCreateRequestBody, int operationIndex = 0, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + /// + /// Create manual transaction + /// + /// + /// This endpoint can only be used to create manual transactions that are under a manual account. This endpoint accepts the optional MX-Skip-Webhook header and skip_webhook parameter. + /// + /// Thrown when fails to make API call + /// The unique identifier for the user. + /// The unique identifier for the account. + /// + /// Index associated with the operation. + /// Cancellation Token to cancel the request. + /// Task of ApiResponse (TransactionCreateResponseBody) + System.Threading.Tasks.Task> UsersUserGuidAccountsAccountGuidTransactionsPostWithHttpInfoAsync(string userGuid, string accountGuid, TransactionCreateRequestBody transactionCreateRequestBody, int operationIndex = 0, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + #endregion Asynchronous Operations + } + + /// + /// Represents a collection of functions to interact with the API endpoints + /// + public interface ITransactionsApi : ITransactionsApiSync, ITransactionsApiAsync + { + + } + + /// + /// Represents a collection of functions to interact with the API endpoints + /// + public partial class TransactionsApi : ITransactionsApi + { + private MX.Platform.CSharp.Client.ExceptionFactory _exceptionFactory = (name, response) => null; + + /// + /// Initializes a new instance of the class. + /// + /// + public TransactionsApi() : this((string)null) + { + } + + /// + /// Initializes a new instance of the class. + /// + /// + public TransactionsApi(string basePath) + { + this.Configuration = MX.Platform.CSharp.Client.Configuration.MergeConfigurations( + MX.Platform.CSharp.Client.GlobalConfiguration.Instance, + new MX.Platform.CSharp.Client.Configuration { BasePath = basePath } + ); + this.Client = new MX.Platform.CSharp.Client.ApiClient(this.Configuration.BasePath); + this.AsynchronousClient = new MX.Platform.CSharp.Client.ApiClient(this.Configuration.BasePath); + this.ExceptionFactory = MX.Platform.CSharp.Client.Configuration.DefaultExceptionFactory; + } + + /// + /// Initializes a new instance of the class + /// using Configuration object + /// + /// An instance of Configuration + /// + public TransactionsApi(MX.Platform.CSharp.Client.Configuration configuration) + { + if (configuration == null) throw new ArgumentNullException("configuration"); + + this.Configuration = MX.Platform.CSharp.Client.Configuration.MergeConfigurations( + MX.Platform.CSharp.Client.GlobalConfiguration.Instance, + configuration + ); + this.Client = new MX.Platform.CSharp.Client.ApiClient(this.Configuration.BasePath); + this.AsynchronousClient = new MX.Platform.CSharp.Client.ApiClient(this.Configuration.BasePath); + ExceptionFactory = MX.Platform.CSharp.Client.Configuration.DefaultExceptionFactory; + } + + /// + /// Initializes a new instance of the class + /// using a Configuration object and client instance. + /// + /// The client interface for synchronous API access. + /// The client interface for asynchronous API access. + /// The configuration object. + public TransactionsApi(MX.Platform.CSharp.Client.ISynchronousClient client, MX.Platform.CSharp.Client.IAsynchronousClient asyncClient, MX.Platform.CSharp.Client.IReadableConfiguration configuration) + { + if (client == null) throw new ArgumentNullException("client"); + if (asyncClient == null) throw new ArgumentNullException("asyncClient"); + if (configuration == null) throw new ArgumentNullException("configuration"); + + this.Client = client; + this.AsynchronousClient = asyncClient; + this.Configuration = configuration; + this.ExceptionFactory = MX.Platform.CSharp.Client.Configuration.DefaultExceptionFactory; + } + + /// + /// The client for accessing this underlying API asynchronously. + /// + public MX.Platform.CSharp.Client.IAsynchronousClient AsynchronousClient { get; set; } + + /// + /// The client for accessing this underlying API synchronously. + /// + public MX.Platform.CSharp.Client.ISynchronousClient Client { get; set; } + + /// + /// Gets the base path of the API client. + /// + /// The base path + public string GetBasePath() + { + return this.Configuration.BasePath; + } + + /// + /// Gets or sets the configuration object + /// + /// An instance of the Configuration + public MX.Platform.CSharp.Client.IReadableConfiguration Configuration { get; set; } + + /// + /// Provides a factory method hook for the creation of exceptions. + /// + public MX.Platform.CSharp.Client.ExceptionFactory ExceptionFactory + { + get + { + if (_exceptionFactory != null && _exceptionFactory.GetInvocationList().Length > 1) + { + throw new InvalidOperationException("Multicast delegate for ExceptionFactory is unsupported."); + } + return _exceptionFactory; + } + set { _exceptionFactory = value; } + } + + /// + /// Create manual transaction This endpoint can only be used to create manual transactions that are under a manual account. This endpoint accepts the optional MX-Skip-Webhook header and skip_webhook parameter. + /// + /// Thrown when fails to make API call + /// The unique identifier for the user. + /// The unique identifier for the account. + /// + /// Index associated with the operation. + /// TransactionCreateResponseBody + public TransactionCreateResponseBody UsersUserGuidAccountsAccountGuidTransactionsPost(string userGuid, string accountGuid, TransactionCreateRequestBody transactionCreateRequestBody, int operationIndex = 0) + { + MX.Platform.CSharp.Client.ApiResponse localVarResponse = UsersUserGuidAccountsAccountGuidTransactionsPostWithHttpInfo(userGuid, accountGuid, transactionCreateRequestBody); + return localVarResponse.Data; + } + + /// + /// Create manual transaction This endpoint can only be used to create manual transactions that are under a manual account. This endpoint accepts the optional MX-Skip-Webhook header and skip_webhook parameter. + /// + /// Thrown when fails to make API call + /// The unique identifier for the user. + /// The unique identifier for the account. + /// + /// Index associated with the operation. + /// ApiResponse of TransactionCreateResponseBody + public MX.Platform.CSharp.Client.ApiResponse UsersUserGuidAccountsAccountGuidTransactionsPostWithHttpInfo(string userGuid, string accountGuid, TransactionCreateRequestBody transactionCreateRequestBody, int operationIndex = 0) + { + // verify the required parameter 'userGuid' is set + if (userGuid == null) + { + throw new MX.Platform.CSharp.Client.ApiException(400, "Missing required parameter 'userGuid' when calling TransactionsApi->UsersUserGuidAccountsAccountGuidTransactionsPost"); + } + + // verify the required parameter 'accountGuid' is set + if (accountGuid == null) + { + throw new MX.Platform.CSharp.Client.ApiException(400, "Missing required parameter 'accountGuid' when calling TransactionsApi->UsersUserGuidAccountsAccountGuidTransactionsPost"); + } + + // verify the required parameter 'transactionCreateRequestBody' is set + if (transactionCreateRequestBody == null) + { + throw new MX.Platform.CSharp.Client.ApiException(400, "Missing required parameter 'transactionCreateRequestBody' when calling TransactionsApi->UsersUserGuidAccountsAccountGuidTransactionsPost"); + } + + MX.Platform.CSharp.Client.RequestOptions localVarRequestOptions = new MX.Platform.CSharp.Client.RequestOptions(); + + string[] _contentTypes = new string[] { + "application/json" + }; + + // to determine the Accept header + string[] _accepts = new string[] { + "application/vnd.mx.api.v1+json" + }; + + var localVarContentType = MX.Platform.CSharp.Client.ClientUtils.SelectHeaderContentType(_contentTypes); + if (localVarContentType != null) + { + localVarRequestOptions.HeaderParameters.Add("Content-Type", localVarContentType); + } + + var localVarAccept = MX.Platform.CSharp.Client.ClientUtils.SelectHeaderAccept(_accepts); + if (localVarAccept != null) + { + localVarRequestOptions.HeaderParameters.Add("Accept", localVarAccept); + } + + localVarRequestOptions.PathParameters.Add("user_guid", MX.Platform.CSharp.Client.ClientUtils.ParameterToString(userGuid)); // path parameter + localVarRequestOptions.PathParameters.Add("account_guid", MX.Platform.CSharp.Client.ClientUtils.ParameterToString(accountGuid)); // path parameter + localVarRequestOptions.Data = transactionCreateRequestBody; + + localVarRequestOptions.Operation = "TransactionsApi.UsersUserGuidAccountsAccountGuidTransactionsPost"; + localVarRequestOptions.OperationIndex = operationIndex; + + // authentication (basicAuth) required + // http basic authentication required + if (!string.IsNullOrEmpty(this.Configuration.Username) || !string.IsNullOrEmpty(this.Configuration.Password) && !localVarRequestOptions.HeaderParameters.ContainsKey("Authorization")) + { + localVarRequestOptions.HeaderParameters.Add("Authorization", "Basic " + MX.Platform.CSharp.Client.ClientUtils.Base64Encode(this.Configuration.Username + ":" + this.Configuration.Password)); + } + + // make the HTTP request + var localVarResponse = this.Client.Post("/users/{user_guid}/accounts/{account_guid}/transactions", localVarRequestOptions, this.Configuration); + if (this.ExceptionFactory != null) + { + Exception _exception = this.ExceptionFactory("UsersUserGuidAccountsAccountGuidTransactionsPost", localVarResponse); + if (_exception != null) + { + throw _exception; + } + } + + return localVarResponse; + } + + /// + /// Create manual transaction This endpoint can only be used to create manual transactions that are under a manual account. This endpoint accepts the optional MX-Skip-Webhook header and skip_webhook parameter. + /// + /// Thrown when fails to make API call + /// The unique identifier for the user. + /// The unique identifier for the account. + /// + /// Index associated with the operation. + /// Cancellation Token to cancel the request. + /// Task of TransactionCreateResponseBody + public async System.Threading.Tasks.Task UsersUserGuidAccountsAccountGuidTransactionsPostAsync(string userGuid, string accountGuid, TransactionCreateRequestBody transactionCreateRequestBody, int operationIndex = 0, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + MX.Platform.CSharp.Client.ApiResponse localVarResponse = await UsersUserGuidAccountsAccountGuidTransactionsPostWithHttpInfoAsync(userGuid, accountGuid, transactionCreateRequestBody, operationIndex, cancellationToken).ConfigureAwait(false); + return localVarResponse.Data; + } + + /// + /// Create manual transaction This endpoint can only be used to create manual transactions that are under a manual account. This endpoint accepts the optional MX-Skip-Webhook header and skip_webhook parameter. + /// + /// Thrown when fails to make API call + /// The unique identifier for the user. + /// The unique identifier for the account. + /// + /// Index associated with the operation. + /// Cancellation Token to cancel the request. + /// Task of ApiResponse (TransactionCreateResponseBody) + public async System.Threading.Tasks.Task> UsersUserGuidAccountsAccountGuidTransactionsPostWithHttpInfoAsync(string userGuid, string accountGuid, TransactionCreateRequestBody transactionCreateRequestBody, int operationIndex = 0, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + // verify the required parameter 'userGuid' is set + if (userGuid == null) + { + throw new MX.Platform.CSharp.Client.ApiException(400, "Missing required parameter 'userGuid' when calling TransactionsApi->UsersUserGuidAccountsAccountGuidTransactionsPost"); + } + + // verify the required parameter 'accountGuid' is set + if (accountGuid == null) + { + throw new MX.Platform.CSharp.Client.ApiException(400, "Missing required parameter 'accountGuid' when calling TransactionsApi->UsersUserGuidAccountsAccountGuidTransactionsPost"); + } + + // verify the required parameter 'transactionCreateRequestBody' is set + if (transactionCreateRequestBody == null) + { + throw new MX.Platform.CSharp.Client.ApiException(400, "Missing required parameter 'transactionCreateRequestBody' when calling TransactionsApi->UsersUserGuidAccountsAccountGuidTransactionsPost"); + } + + + MX.Platform.CSharp.Client.RequestOptions localVarRequestOptions = new MX.Platform.CSharp.Client.RequestOptions(); + + string[] _contentTypes = new string[] { + "application/json" + }; + + // to determine the Accept header + string[] _accepts = new string[] { + "application/vnd.mx.api.v1+json" + }; + + var localVarContentType = MX.Platform.CSharp.Client.ClientUtils.SelectHeaderContentType(_contentTypes); + if (localVarContentType != null) + { + localVarRequestOptions.HeaderParameters.Add("Content-Type", localVarContentType); + } + + var localVarAccept = MX.Platform.CSharp.Client.ClientUtils.SelectHeaderAccept(_accepts); + if (localVarAccept != null) + { + localVarRequestOptions.HeaderParameters.Add("Accept", localVarAccept); + } + + localVarRequestOptions.PathParameters.Add("user_guid", MX.Platform.CSharp.Client.ClientUtils.ParameterToString(userGuid)); // path parameter + localVarRequestOptions.PathParameters.Add("account_guid", MX.Platform.CSharp.Client.ClientUtils.ParameterToString(accountGuid)); // path parameter + localVarRequestOptions.Data = transactionCreateRequestBody; + + localVarRequestOptions.Operation = "TransactionsApi.UsersUserGuidAccountsAccountGuidTransactionsPost"; + localVarRequestOptions.OperationIndex = operationIndex; + + // authentication (basicAuth) required + // http basic authentication required + if (!string.IsNullOrEmpty(this.Configuration.Username) || !string.IsNullOrEmpty(this.Configuration.Password) && !localVarRequestOptions.HeaderParameters.ContainsKey("Authorization")) + { + localVarRequestOptions.HeaderParameters.Add("Authorization", "Basic " + MX.Platform.CSharp.Client.ClientUtils.Base64Encode(this.Configuration.Username + ":" + this.Configuration.Password)); + } + + // make the HTTP request + var localVarResponse = await this.AsynchronousClient.PostAsync("/users/{user_guid}/accounts/{account_guid}/transactions", localVarRequestOptions, this.Configuration, cancellationToken).ConfigureAwait(false); + + if (this.ExceptionFactory != null) + { + Exception _exception = this.ExceptionFactory("UsersUserGuidAccountsAccountGuidTransactionsPost", localVarResponse); + if (_exception != null) + { + throw _exception; + } + } + + return localVarResponse; + } + + } +} diff --git a/src/MX.Platform.CSharp/Client/Configuration.cs b/src/MX.Platform.CSharp/Client/Configuration.cs index 5c97931..eabd9fa 100644 --- a/src/MX.Platform.CSharp/Client/Configuration.cs +++ b/src/MX.Platform.CSharp/Client/Configuration.cs @@ -33,7 +33,7 @@ public class Configuration : IReadableConfiguration /// Version of the package. /// /// Version of the package. - public const string Version = "0.37.0"; + public const string Version = "0.38.0"; /// /// Identifier for ISO 8601 DateTime Format @@ -117,7 +117,7 @@ public class Configuration : IReadableConfiguration public Configuration() { Proxy = null; - UserAgent = WebUtility.UrlEncode("OpenAPI-Generator/0.37.0/csharp"); + UserAgent = WebUtility.UrlEncode("OpenAPI-Generator/0.38.0/csharp"); BasePath = "https://api.mx.com"; DefaultHeaders = new ConcurrentDictionary(); ApiKey = new ConcurrentDictionary(); @@ -546,7 +546,7 @@ public static string ToDebugReport() report += " OS: " + System.Environment.OSVersion + "\n"; report += " .NET Framework Version: " + System.Environment.Version + "\n"; report += " Version of the API: 0.1.0\n"; - report += " SDK Package Version: 0.37.0\n"; + report += " SDK Package Version: 0.38.0\n"; return report; } diff --git a/src/MX.Platform.CSharp/MX.Platform.CSharp.csproj b/src/MX.Platform.CSharp/MX.Platform.CSharp.csproj index c7299f4..8f4c248 100644 --- a/src/MX.Platform.CSharp/MX.Platform.CSharp.csproj +++ b/src/MX.Platform.CSharp/MX.Platform.CSharp.csproj @@ -12,7 +12,7 @@ A library generated from a OpenAPI doc No Copyright MX.Platform.CSharp - 0.37.0 + 0.38.0 bin\$(Configuration)\$(TargetFramework)\MX.Platform.CSharp.xml https://github.com/GIT_USER_ID/GIT_REPO_ID.git git diff --git a/src/MX.Platform.CSharp/Model/MicrodepositRequest.cs b/src/MX.Platform.CSharp/Model/MicrodepositRequest.cs new file mode 100644 index 0000000..0580919 --- /dev/null +++ b/src/MX.Platform.CSharp/Model/MicrodepositRequest.cs @@ -0,0 +1,263 @@ +/* + * MX Platform API + * + * The MX Platform API is a powerful, fully-featured API designed to make aggregating and enhancing financial data easy and reliable. It can seamlessly connect your app or website to tens of thousands of financial institutions. + * + * The version of the OpenAPI document: 0.1.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Runtime.Serialization; +using System.Text; +using System.Text.RegularExpressions; +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using Newtonsoft.Json.Linq; +using System.ComponentModel.DataAnnotations; +using OpenAPIDateConverter = MX.Platform.CSharp.Client.OpenAPIDateConverter; + +namespace MX.Platform.CSharp.Model +{ + /// + /// MicrodepositRequest + /// + [DataContract(Name = "MicrodepositRequest")] + public partial class MicrodepositRequest : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + [JsonConstructorAttribute] + protected MicrodepositRequest() { } + /// + /// Initializes a new instance of the class. + /// + /// accountNumber (required). + /// accountType (required). + /// routingNumber (required). + /// accountName. + /// email. + /// firstName. + /// lastName. + public MicrodepositRequest(string accountNumber = default(string), string accountType = default(string), string routingNumber = default(string), string accountName = default(string), string email = default(string), string firstName = default(string), string lastName = default(string)) + { + // to ensure "accountNumber" is required (not null) + if (accountNumber == null) + { + throw new ArgumentNullException("accountNumber is a required property for MicrodepositRequest and cannot be null"); + } + this.AccountNumber = accountNumber; + // to ensure "accountType" is required (not null) + if (accountType == null) + { + throw new ArgumentNullException("accountType is a required property for MicrodepositRequest and cannot be null"); + } + this.AccountType = accountType; + // to ensure "routingNumber" is required (not null) + if (routingNumber == null) + { + throw new ArgumentNullException("routingNumber is a required property for MicrodepositRequest and cannot be null"); + } + this.RoutingNumber = routingNumber; + this.AccountName = accountName; + this.Email = email; + this.FirstName = firstName; + this.LastName = lastName; + } + + /// + /// Gets or Sets AccountNumber + /// + /// 3331261 + [DataMember(Name = "account_number", IsRequired = true, EmitDefaultValue = true)] + public string AccountNumber { get; set; } + + /// + /// Gets or Sets AccountType + /// + /// CHECKING + [DataMember(Name = "account_type", IsRequired = true, EmitDefaultValue = true)] + public string AccountType { get; set; } + + /// + /// Gets or Sets RoutingNumber + /// + /// 091000019 + [DataMember(Name = "routing_number", IsRequired = true, EmitDefaultValue = true)] + public string RoutingNumber { get; set; } + + /// + /// Gets or Sets AccountName + /// + /// My test account + [DataMember(Name = "account_name", EmitDefaultValue = false)] + public string AccountName { get; set; } + + /// + /// Gets or Sets Email + /// + /// joshyboy2@example.com + [DataMember(Name = "email", EmitDefaultValue = false)] + public string Email { get; set; } + + /// + /// Gets or Sets FirstName + /// + /// Joshy + [DataMember(Name = "first_name", EmitDefaultValue = false)] + public string FirstName { get; set; } + + /// + /// Gets or Sets LastName + /// + /// Grobanne + [DataMember(Name = "last_name", EmitDefaultValue = false)] + public string LastName { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class MicrodepositRequest {\n"); + sb.Append(" AccountNumber: ").Append(AccountNumber).Append("\n"); + sb.Append(" AccountType: ").Append(AccountType).Append("\n"); + sb.Append(" RoutingNumber: ").Append(RoutingNumber).Append("\n"); + sb.Append(" AccountName: ").Append(AccountName).Append("\n"); + sb.Append(" Email: ").Append(Email).Append("\n"); + sb.Append(" FirstName: ").Append(FirstName).Append("\n"); + sb.Append(" LastName: ").Append(LastName).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as MicrodepositRequest); + } + + /// + /// Returns true if MicrodepositRequest instances are equal + /// + /// Instance of MicrodepositRequest to be compared + /// Boolean + public bool Equals(MicrodepositRequest input) + { + if (input == null) + { + return false; + } + return + ( + this.AccountNumber == input.AccountNumber || + (this.AccountNumber != null && + this.AccountNumber.Equals(input.AccountNumber)) + ) && + ( + this.AccountType == input.AccountType || + (this.AccountType != null && + this.AccountType.Equals(input.AccountType)) + ) && + ( + this.RoutingNumber == input.RoutingNumber || + (this.RoutingNumber != null && + this.RoutingNumber.Equals(input.RoutingNumber)) + ) && + ( + this.AccountName == input.AccountName || + (this.AccountName != null && + this.AccountName.Equals(input.AccountName)) + ) && + ( + this.Email == input.Email || + (this.Email != null && + this.Email.Equals(input.Email)) + ) && + ( + this.FirstName == input.FirstName || + (this.FirstName != null && + this.FirstName.Equals(input.FirstName)) + ) && + ( + this.LastName == input.LastName || + (this.LastName != null && + this.LastName.Equals(input.LastName)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.AccountNumber != null) + { + hashCode = (hashCode * 59) + this.AccountNumber.GetHashCode(); + } + if (this.AccountType != null) + { + hashCode = (hashCode * 59) + this.AccountType.GetHashCode(); + } + if (this.RoutingNumber != null) + { + hashCode = (hashCode * 59) + this.RoutingNumber.GetHashCode(); + } + if (this.AccountName != null) + { + hashCode = (hashCode * 59) + this.AccountName.GetHashCode(); + } + if (this.Email != null) + { + hashCode = (hashCode * 59) + this.Email.GetHashCode(); + } + if (this.FirstName != null) + { + hashCode = (hashCode * 59) + this.FirstName.GetHashCode(); + } + if (this.LastName != null) + { + hashCode = (hashCode * 59) + this.LastName.GetHashCode(); + } + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} diff --git a/src/MX.Platform.CSharp/Model/MicrodepositRequestBody.cs b/src/MX.Platform.CSharp/Model/MicrodepositRequestBody.cs new file mode 100644 index 0000000..b44308d --- /dev/null +++ b/src/MX.Platform.CSharp/Model/MicrodepositRequestBody.cs @@ -0,0 +1,128 @@ +/* + * MX Platform API + * + * The MX Platform API is a powerful, fully-featured API designed to make aggregating and enhancing financial data easy and reliable. It can seamlessly connect your app or website to tens of thousands of financial institutions. + * + * The version of the OpenAPI document: 0.1.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Runtime.Serialization; +using System.Text; +using System.Text.RegularExpressions; +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using Newtonsoft.Json.Linq; +using System.ComponentModel.DataAnnotations; +using OpenAPIDateConverter = MX.Platform.CSharp.Client.OpenAPIDateConverter; + +namespace MX.Platform.CSharp.Model +{ + /// + /// MicrodepositRequestBody + /// + [DataContract(Name = "MicrodepositRequestBody")] + public partial class MicrodepositRequestBody : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// microDeposit. + public MicrodepositRequestBody(MicrodepositRequest microDeposit = default(MicrodepositRequest)) + { + this.MicroDeposit = microDeposit; + } + + /// + /// Gets or Sets MicroDeposit + /// + [DataMember(Name = "micro_deposit", EmitDefaultValue = false)] + public MicrodepositRequest MicroDeposit { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class MicrodepositRequestBody {\n"); + sb.Append(" MicroDeposit: ").Append(MicroDeposit).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as MicrodepositRequestBody); + } + + /// + /// Returns true if MicrodepositRequestBody instances are equal + /// + /// Instance of MicrodepositRequestBody to be compared + /// Boolean + public bool Equals(MicrodepositRequestBody input) + { + if (input == null) + { + return false; + } + return + ( + this.MicroDeposit == input.MicroDeposit || + (this.MicroDeposit != null && + this.MicroDeposit.Equals(input.MicroDeposit)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.MicroDeposit != null) + { + hashCode = (hashCode * 59) + this.MicroDeposit.GetHashCode(); + } + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} diff --git a/src/MX.Platform.CSharp/Model/MicrodepositResponse.cs b/src/MX.Platform.CSharp/Model/MicrodepositResponse.cs new file mode 100644 index 0000000..105c0fb --- /dev/null +++ b/src/MX.Platform.CSharp/Model/MicrodepositResponse.cs @@ -0,0 +1,374 @@ +/* + * MX Platform API + * + * The MX Platform API is a powerful, fully-featured API designed to make aggregating and enhancing financial data easy and reliable. It can seamlessly connect your app or website to tens of thousands of financial institutions. + * + * The version of the OpenAPI document: 0.1.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Runtime.Serialization; +using System.Text; +using System.Text.RegularExpressions; +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using Newtonsoft.Json.Linq; +using System.ComponentModel.DataAnnotations; +using OpenAPIDateConverter = MX.Platform.CSharp.Client.OpenAPIDateConverter; + +namespace MX.Platform.CSharp.Model +{ + /// + /// MicrodepositResponse + /// + [DataContract(Name = "MicrodepositResponse")] + public partial class MicrodepositResponse : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// accountName. + /// accountNumber. + /// accountType. + /// email. + /// firstName. + /// lastName. + /// routingNumber. + /// errorMessage. + /// guid. + /// institutionCode. + /// institutionName. + /// status. + /// updatedAt. + /// verifiedAt. + public MicrodepositResponse(string accountName = default(string), string accountNumber = default(string), string accountType = default(string), string email = default(string), string firstName = default(string), string lastName = default(string), string routingNumber = default(string), string errorMessage = default(string), string guid = default(string), string institutionCode = default(string), string institutionName = default(string), string status = default(string), string updatedAt = default(string), string verifiedAt = default(string)) + { + this.AccountName = accountName; + this.AccountNumber = accountNumber; + this.AccountType = accountType; + this.Email = email; + this.FirstName = firstName; + this.LastName = lastName; + this.RoutingNumber = routingNumber; + this.ErrorMessage = errorMessage; + this.Guid = guid; + this.InstitutionCode = institutionCode; + this.InstitutionName = institutionName; + this.Status = status; + this.UpdatedAt = updatedAt; + this.VerifiedAt = verifiedAt; + } + + /// + /// Gets or Sets AccountName + /// + /// My test account + [DataMember(Name = "account_name", EmitDefaultValue = false)] + public string AccountName { get; set; } + + /// + /// Gets or Sets AccountNumber + /// + /// 3331261 + [DataMember(Name = "account_number", EmitDefaultValue = false)] + public string AccountNumber { get; set; } + + /// + /// Gets or Sets AccountType + /// + /// CHECKING + [DataMember(Name = "account_type", EmitDefaultValue = false)] + public string AccountType { get; set; } + + /// + /// Gets or Sets Email + /// + /// joshyboy2@example.com + [DataMember(Name = "email", EmitDefaultValue = false)] + public string Email { get; set; } + + /// + /// Gets or Sets FirstName + /// + /// Joshy + [DataMember(Name = "first_name", EmitDefaultValue = false)] + public string FirstName { get; set; } + + /// + /// Gets or Sets LastName + /// + /// Grobanne + [DataMember(Name = "last_name", EmitDefaultValue = false)] + public string LastName { get; set; } + + /// + /// Gets or Sets RoutingNumber + /// + /// 091000019 + [DataMember(Name = "routing_number", EmitDefaultValue = false)] + public string RoutingNumber { get; set; } + + /// + /// Gets or Sets ErrorMessage + /// + [DataMember(Name = "error_message", EmitDefaultValue = false)] + public string ErrorMessage { get; set; } + + /// + /// Gets or Sets Guid + /// + /// MIC-09ba578e-8448-4f7f-89e1-b62ff2517edb + [DataMember(Name = "guid", EmitDefaultValue = false)] + public string Guid { get; set; } + + /// + /// Gets or Sets InstitutionCode + /// + /// mxbank + [DataMember(Name = "institution_code", EmitDefaultValue = false)] + public string InstitutionCode { get; set; } + + /// + /// Gets or Sets InstitutionName + /// + /// MX Bank + [DataMember(Name = "institution_name", EmitDefaultValue = false)] + public string InstitutionName { get; set; } + + /// + /// Gets or Sets Status + /// + /// INITIATED + [DataMember(Name = "status", EmitDefaultValue = false)] + public string Status { get; set; } + + /// + /// Gets or Sets UpdatedAt + /// + /// 2023-06-01T19:18:06Z + [DataMember(Name = "updated_at", EmitDefaultValue = false)] + public string UpdatedAt { get; set; } + + /// + /// Gets or Sets VerifiedAt + /// + [DataMember(Name = "verified_at", EmitDefaultValue = false)] + public string VerifiedAt { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class MicrodepositResponse {\n"); + sb.Append(" AccountName: ").Append(AccountName).Append("\n"); + sb.Append(" AccountNumber: ").Append(AccountNumber).Append("\n"); + sb.Append(" AccountType: ").Append(AccountType).Append("\n"); + sb.Append(" Email: ").Append(Email).Append("\n"); + sb.Append(" FirstName: ").Append(FirstName).Append("\n"); + sb.Append(" LastName: ").Append(LastName).Append("\n"); + sb.Append(" RoutingNumber: ").Append(RoutingNumber).Append("\n"); + sb.Append(" ErrorMessage: ").Append(ErrorMessage).Append("\n"); + sb.Append(" Guid: ").Append(Guid).Append("\n"); + sb.Append(" InstitutionCode: ").Append(InstitutionCode).Append("\n"); + sb.Append(" InstitutionName: ").Append(InstitutionName).Append("\n"); + sb.Append(" Status: ").Append(Status).Append("\n"); + sb.Append(" UpdatedAt: ").Append(UpdatedAt).Append("\n"); + sb.Append(" VerifiedAt: ").Append(VerifiedAt).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as MicrodepositResponse); + } + + /// + /// Returns true if MicrodepositResponse instances are equal + /// + /// Instance of MicrodepositResponse to be compared + /// Boolean + public bool Equals(MicrodepositResponse input) + { + if (input == null) + { + return false; + } + return + ( + this.AccountName == input.AccountName || + (this.AccountName != null && + this.AccountName.Equals(input.AccountName)) + ) && + ( + this.AccountNumber == input.AccountNumber || + (this.AccountNumber != null && + this.AccountNumber.Equals(input.AccountNumber)) + ) && + ( + this.AccountType == input.AccountType || + (this.AccountType != null && + this.AccountType.Equals(input.AccountType)) + ) && + ( + this.Email == input.Email || + (this.Email != null && + this.Email.Equals(input.Email)) + ) && + ( + this.FirstName == input.FirstName || + (this.FirstName != null && + this.FirstName.Equals(input.FirstName)) + ) && + ( + this.LastName == input.LastName || + (this.LastName != null && + this.LastName.Equals(input.LastName)) + ) && + ( + this.RoutingNumber == input.RoutingNumber || + (this.RoutingNumber != null && + this.RoutingNumber.Equals(input.RoutingNumber)) + ) && + ( + this.ErrorMessage == input.ErrorMessage || + (this.ErrorMessage != null && + this.ErrorMessage.Equals(input.ErrorMessage)) + ) && + ( + this.Guid == input.Guid || + (this.Guid != null && + this.Guid.Equals(input.Guid)) + ) && + ( + this.InstitutionCode == input.InstitutionCode || + (this.InstitutionCode != null && + this.InstitutionCode.Equals(input.InstitutionCode)) + ) && + ( + this.InstitutionName == input.InstitutionName || + (this.InstitutionName != null && + this.InstitutionName.Equals(input.InstitutionName)) + ) && + ( + this.Status == input.Status || + (this.Status != null && + this.Status.Equals(input.Status)) + ) && + ( + this.UpdatedAt == input.UpdatedAt || + (this.UpdatedAt != null && + this.UpdatedAt.Equals(input.UpdatedAt)) + ) && + ( + this.VerifiedAt == input.VerifiedAt || + (this.VerifiedAt != null && + this.VerifiedAt.Equals(input.VerifiedAt)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.AccountName != null) + { + hashCode = (hashCode * 59) + this.AccountName.GetHashCode(); + } + if (this.AccountNumber != null) + { + hashCode = (hashCode * 59) + this.AccountNumber.GetHashCode(); + } + if (this.AccountType != null) + { + hashCode = (hashCode * 59) + this.AccountType.GetHashCode(); + } + if (this.Email != null) + { + hashCode = (hashCode * 59) + this.Email.GetHashCode(); + } + if (this.FirstName != null) + { + hashCode = (hashCode * 59) + this.FirstName.GetHashCode(); + } + if (this.LastName != null) + { + hashCode = (hashCode * 59) + this.LastName.GetHashCode(); + } + if (this.RoutingNumber != null) + { + hashCode = (hashCode * 59) + this.RoutingNumber.GetHashCode(); + } + if (this.ErrorMessage != null) + { + hashCode = (hashCode * 59) + this.ErrorMessage.GetHashCode(); + } + if (this.Guid != null) + { + hashCode = (hashCode * 59) + this.Guid.GetHashCode(); + } + if (this.InstitutionCode != null) + { + hashCode = (hashCode * 59) + this.InstitutionCode.GetHashCode(); + } + if (this.InstitutionName != null) + { + hashCode = (hashCode * 59) + this.InstitutionName.GetHashCode(); + } + if (this.Status != null) + { + hashCode = (hashCode * 59) + this.Status.GetHashCode(); + } + if (this.UpdatedAt != null) + { + hashCode = (hashCode * 59) + this.UpdatedAt.GetHashCode(); + } + if (this.VerifiedAt != null) + { + hashCode = (hashCode * 59) + this.VerifiedAt.GetHashCode(); + } + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} diff --git a/src/MX.Platform.CSharp/Model/MicrodepositResponseBody.cs b/src/MX.Platform.CSharp/Model/MicrodepositResponseBody.cs new file mode 100644 index 0000000..a96e18b --- /dev/null +++ b/src/MX.Platform.CSharp/Model/MicrodepositResponseBody.cs @@ -0,0 +1,128 @@ +/* + * MX Platform API + * + * The MX Platform API is a powerful, fully-featured API designed to make aggregating and enhancing financial data easy and reliable. It can seamlessly connect your app or website to tens of thousands of financial institutions. + * + * The version of the OpenAPI document: 0.1.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Runtime.Serialization; +using System.Text; +using System.Text.RegularExpressions; +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using Newtonsoft.Json.Linq; +using System.ComponentModel.DataAnnotations; +using OpenAPIDateConverter = MX.Platform.CSharp.Client.OpenAPIDateConverter; + +namespace MX.Platform.CSharp.Model +{ + /// + /// MicrodepositResponseBody + /// + [DataContract(Name = "MicrodepositResponseBody")] + public partial class MicrodepositResponseBody : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// microDeposit. + public MicrodepositResponseBody(MicrodepositResponse microDeposit = default(MicrodepositResponse)) + { + this.MicroDeposit = microDeposit; + } + + /// + /// Gets or Sets MicroDeposit + /// + [DataMember(Name = "micro_deposit", EmitDefaultValue = false)] + public MicrodepositResponse MicroDeposit { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class MicrodepositResponseBody {\n"); + sb.Append(" MicroDeposit: ").Append(MicroDeposit).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as MicrodepositResponseBody); + } + + /// + /// Returns true if MicrodepositResponseBody instances are equal + /// + /// Instance of MicrodepositResponseBody to be compared + /// Boolean + public bool Equals(MicrodepositResponseBody input) + { + if (input == null) + { + return false; + } + return + ( + this.MicroDeposit == input.MicroDeposit || + (this.MicroDeposit != null && + this.MicroDeposit.Equals(input.MicroDeposit)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.MicroDeposit != null) + { + hashCode = (hashCode * 59) + this.MicroDeposit.GetHashCode(); + } + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} diff --git a/src/MX.Platform.CSharp/Model/MicrodepositVerifyRequest.cs b/src/MX.Platform.CSharp/Model/MicrodepositVerifyRequest.cs new file mode 100644 index 0000000..58fcecd --- /dev/null +++ b/src/MX.Platform.CSharp/Model/MicrodepositVerifyRequest.cs @@ -0,0 +1,138 @@ +/* + * MX Platform API + * + * The MX Platform API is a powerful, fully-featured API designed to make aggregating and enhancing financial data easy and reliable. It can seamlessly connect your app or website to tens of thousands of financial institutions. + * + * The version of the OpenAPI document: 0.1.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Runtime.Serialization; +using System.Text; +using System.Text.RegularExpressions; +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using Newtonsoft.Json.Linq; +using System.ComponentModel.DataAnnotations; +using OpenAPIDateConverter = MX.Platform.CSharp.Client.OpenAPIDateConverter; + +namespace MX.Platform.CSharp.Model +{ + /// + /// MicrodepositVerifyRequest + /// + [DataContract(Name = "MicrodepositVerifyRequest")] + public partial class MicrodepositVerifyRequest : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// depositAmount1. + /// depositAmount2. + public MicrodepositVerifyRequest(int depositAmount1 = default(int), int depositAmount2 = default(int)) + { + this.DepositAmount1 = depositAmount1; + this.DepositAmount2 = depositAmount2; + } + + /// + /// Gets or Sets DepositAmount1 + /// + [DataMember(Name = "deposit_amount_1", EmitDefaultValue = false)] + public int DepositAmount1 { get; set; } + + /// + /// Gets or Sets DepositAmount2 + /// + [DataMember(Name = "deposit_amount_2", EmitDefaultValue = false)] + public int DepositAmount2 { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class MicrodepositVerifyRequest {\n"); + sb.Append(" DepositAmount1: ").Append(DepositAmount1).Append("\n"); + sb.Append(" DepositAmount2: ").Append(DepositAmount2).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as MicrodepositVerifyRequest); + } + + /// + /// Returns true if MicrodepositVerifyRequest instances are equal + /// + /// Instance of MicrodepositVerifyRequest to be compared + /// Boolean + public bool Equals(MicrodepositVerifyRequest input) + { + if (input == null) + { + return false; + } + return + ( + this.DepositAmount1 == input.DepositAmount1 || + this.DepositAmount1.Equals(input.DepositAmount1) + ) && + ( + this.DepositAmount2 == input.DepositAmount2 || + this.DepositAmount2.Equals(input.DepositAmount2) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + hashCode = (hashCode * 59) + this.DepositAmount1.GetHashCode(); + hashCode = (hashCode * 59) + this.DepositAmount2.GetHashCode(); + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} diff --git a/src/MX.Platform.CSharp/Model/MicrodepositVerifyRequestBody.cs b/src/MX.Platform.CSharp/Model/MicrodepositVerifyRequestBody.cs new file mode 100644 index 0000000..2e16844 --- /dev/null +++ b/src/MX.Platform.CSharp/Model/MicrodepositVerifyRequestBody.cs @@ -0,0 +1,128 @@ +/* + * MX Platform API + * + * The MX Platform API is a powerful, fully-featured API designed to make aggregating and enhancing financial data easy and reliable. It can seamlessly connect your app or website to tens of thousands of financial institutions. + * + * The version of the OpenAPI document: 0.1.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Runtime.Serialization; +using System.Text; +using System.Text.RegularExpressions; +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using Newtonsoft.Json.Linq; +using System.ComponentModel.DataAnnotations; +using OpenAPIDateConverter = MX.Platform.CSharp.Client.OpenAPIDateConverter; + +namespace MX.Platform.CSharp.Model +{ + /// + /// MicrodepositVerifyRequestBody + /// + [DataContract(Name = "MicrodepositVerifyRequestBody")] + public partial class MicrodepositVerifyRequestBody : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// microDeposit. + public MicrodepositVerifyRequestBody(MicrodepositVerifyRequest microDeposit = default(MicrodepositVerifyRequest)) + { + this.MicroDeposit = microDeposit; + } + + /// + /// Gets or Sets MicroDeposit + /// + [DataMember(Name = "micro_deposit", EmitDefaultValue = false)] + public MicrodepositVerifyRequest MicroDeposit { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class MicrodepositVerifyRequestBody {\n"); + sb.Append(" MicroDeposit: ").Append(MicroDeposit).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as MicrodepositVerifyRequestBody); + } + + /// + /// Returns true if MicrodepositVerifyRequestBody instances are equal + /// + /// Instance of MicrodepositVerifyRequestBody to be compared + /// Boolean + public bool Equals(MicrodepositVerifyRequestBody input) + { + if (input == null) + { + return false; + } + return + ( + this.MicroDeposit == input.MicroDeposit || + (this.MicroDeposit != null && + this.MicroDeposit.Equals(input.MicroDeposit)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.MicroDeposit != null) + { + hashCode = (hashCode * 59) + this.MicroDeposit.GetHashCode(); + } + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} diff --git a/src/MX.Platform.CSharp/Model/MicrodepositsResponseBody.cs b/src/MX.Platform.CSharp/Model/MicrodepositsResponseBody.cs new file mode 100644 index 0000000..ee7d2e9 --- /dev/null +++ b/src/MX.Platform.CSharp/Model/MicrodepositsResponseBody.cs @@ -0,0 +1,147 @@ +/* + * MX Platform API + * + * The MX Platform API is a powerful, fully-featured API designed to make aggregating and enhancing financial data easy and reliable. It can seamlessly connect your app or website to tens of thousands of financial institutions. + * + * The version of the OpenAPI document: 0.1.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Runtime.Serialization; +using System.Text; +using System.Text.RegularExpressions; +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using Newtonsoft.Json.Linq; +using System.ComponentModel.DataAnnotations; +using OpenAPIDateConverter = MX.Platform.CSharp.Client.OpenAPIDateConverter; + +namespace MX.Platform.CSharp.Model +{ + /// + /// MicrodepositsResponseBody + /// + [DataContract(Name = "MicrodepositsResponseBody")] + public partial class MicrodepositsResponseBody : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// microDeposits. + /// pagination. + public MicrodepositsResponseBody(List microDeposits = default(List), PaginationResponse pagination = default(PaginationResponse)) + { + this.MicroDeposits = microDeposits; + this.Pagination = pagination; + } + + /// + /// Gets or Sets MicroDeposits + /// + [DataMember(Name = "micro_deposits", EmitDefaultValue = false)] + public List MicroDeposits { get; set; } + + /// + /// Gets or Sets Pagination + /// + [DataMember(Name = "pagination", EmitDefaultValue = false)] + public PaginationResponse Pagination { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class MicrodepositsResponseBody {\n"); + sb.Append(" MicroDeposits: ").Append(MicroDeposits).Append("\n"); + sb.Append(" Pagination: ").Append(Pagination).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as MicrodepositsResponseBody); + } + + /// + /// Returns true if MicrodepositsResponseBody instances are equal + /// + /// Instance of MicrodepositsResponseBody to be compared + /// Boolean + public bool Equals(MicrodepositsResponseBody input) + { + if (input == null) + { + return false; + } + return + ( + this.MicroDeposits == input.MicroDeposits || + this.MicroDeposits != null && + input.MicroDeposits != null && + this.MicroDeposits.SequenceEqual(input.MicroDeposits) + ) && + ( + this.Pagination == input.Pagination || + (this.Pagination != null && + this.Pagination.Equals(input.Pagination)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.MicroDeposits != null) + { + hashCode = (hashCode * 59) + this.MicroDeposits.GetHashCode(); + } + if (this.Pagination != null) + { + hashCode = (hashCode * 59) + this.Pagination.GetHashCode(); + } + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} diff --git a/src/MX.Platform.CSharp/Model/TransactionCreateRequest.cs b/src/MX.Platform.CSharp/Model/TransactionCreateRequest.cs new file mode 100644 index 0000000..911a9e2 --- /dev/null +++ b/src/MX.Platform.CSharp/Model/TransactionCreateRequest.cs @@ -0,0 +1,341 @@ +/* + * MX Platform API + * + * The MX Platform API is a powerful, fully-featured API designed to make aggregating and enhancing financial data easy and reliable. It can seamlessly connect your app or website to tens of thousands of financial institutions. + * + * The version of the OpenAPI document: 0.1.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Runtime.Serialization; +using System.Text; +using System.Text.RegularExpressions; +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using Newtonsoft.Json.Linq; +using System.ComponentModel.DataAnnotations; +using OpenAPIDateConverter = MX.Platform.CSharp.Client.OpenAPIDateConverter; + +namespace MX.Platform.CSharp.Model +{ + /// + /// TransactionCreateRequest + /// + [DataContract(Name = "TransactionCreateRequest")] + public partial class TransactionCreateRequest : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + [JsonConstructorAttribute] + protected TransactionCreateRequest() { } + /// + /// Initializes a new instance of the class. + /// + /// amount (required). + /// date (required). + /// description (required). + /// The type of transaction, which must be CREDIT or DEBIT. See Transaction Fields for more information. (required). + /// Unique identifier of the category.. + /// currencyCode. + /// hasBeenViewed. + /// isHidden. + /// isInternational. + /// memo. + /// metadata. + /// When set to true, this parameter will prevent a webhook from being triggered by the request.. + public TransactionCreateRequest(decimal amount = default(decimal), string date = default(string), string description = default(string), string type = default(string), string categoryGuid = default(string), string currencyCode = default(string), bool hasBeenViewed = default(bool), bool isHidden = default(bool), bool isInternational = default(bool), string memo = default(string), string metadata = default(string), bool skipWebhook = default(bool)) + { + this.Amount = amount; + // to ensure "date" is required (not null) + if (date == null) + { + throw new ArgumentNullException("date is a required property for TransactionCreateRequest and cannot be null"); + } + this.Date = date; + // to ensure "description" is required (not null) + if (description == null) + { + throw new ArgumentNullException("description is a required property for TransactionCreateRequest and cannot be null"); + } + this.Description = description; + // to ensure "type" is required (not null) + if (type == null) + { + throw new ArgumentNullException("type is a required property for TransactionCreateRequest and cannot be null"); + } + this.Type = type; + this.CategoryGuid = categoryGuid; + this.CurrencyCode = currencyCode; + this.HasBeenViewed = hasBeenViewed; + this.IsHidden = isHidden; + this.IsInternational = isInternational; + this.Memo = memo; + this.Metadata = metadata; + this.SkipWebhook = skipWebhook; + } + + /// + /// Gets or Sets Amount + /// + /// 61.11 + [DataMember(Name = "amount", IsRequired = true, EmitDefaultValue = true)] + public decimal Amount { get; set; } + + /// + /// Gets or Sets Date + /// + /// 2016-10-06 + [DataMember(Name = "date", IsRequired = true, EmitDefaultValue = true)] + public string Date { get; set; } + + /// + /// Gets or Sets Description + /// + /// Whole foods + [DataMember(Name = "description", IsRequired = true, EmitDefaultValue = true)] + public string Description { get; set; } + + /// + /// The type of transaction, which must be CREDIT or DEBIT. See Transaction Fields for more information. + /// + /// The type of transaction, which must be CREDIT or DEBIT. See Transaction Fields for more information. + /// DEBIT + [DataMember(Name = "type", IsRequired = true, EmitDefaultValue = true)] + public string Type { get; set; } + + /// + /// Unique identifier of the category. + /// + /// Unique identifier of the category. + /// CAT-b6d61a19-30a7-e852-2703-bdfb4072289e + [DataMember(Name = "category_guid", EmitDefaultValue = false)] + public string CategoryGuid { get; set; } + + /// + /// Gets or Sets CurrencyCode + /// + /// USD + [DataMember(Name = "currency_code", EmitDefaultValue = false)] + public string CurrencyCode { get; set; } + + /// + /// Gets or Sets HasBeenViewed + /// + /// false + [DataMember(Name = "has_been_viewed", EmitDefaultValue = true)] + public bool HasBeenViewed { get; set; } + + /// + /// Gets or Sets IsHidden + /// + /// false + [DataMember(Name = "is_hidden", EmitDefaultValue = true)] + public bool IsHidden { get; set; } + + /// + /// Gets or Sets IsInternational + /// + /// false + [DataMember(Name = "is_international", EmitDefaultValue = true)] + public bool IsInternational { get; set; } + + /// + /// Gets or Sets Memo + /// + /// This is a memo + [DataMember(Name = "memo", EmitDefaultValue = false)] + public string Memo { get; set; } + + /// + /// Gets or Sets Metadata + /// + /// some metadata + [DataMember(Name = "metadata", EmitDefaultValue = false)] + public string Metadata { get; set; } + + /// + /// When set to true, this parameter will prevent a webhook from being triggered by the request. + /// + /// When set to true, this parameter will prevent a webhook from being triggered by the request. + /// true + [DataMember(Name = "skip_webhook", EmitDefaultValue = true)] + public bool SkipWebhook { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class TransactionCreateRequest {\n"); + sb.Append(" Amount: ").Append(Amount).Append("\n"); + sb.Append(" Date: ").Append(Date).Append("\n"); + sb.Append(" Description: ").Append(Description).Append("\n"); + sb.Append(" Type: ").Append(Type).Append("\n"); + sb.Append(" CategoryGuid: ").Append(CategoryGuid).Append("\n"); + sb.Append(" CurrencyCode: ").Append(CurrencyCode).Append("\n"); + sb.Append(" HasBeenViewed: ").Append(HasBeenViewed).Append("\n"); + sb.Append(" IsHidden: ").Append(IsHidden).Append("\n"); + sb.Append(" IsInternational: ").Append(IsInternational).Append("\n"); + sb.Append(" Memo: ").Append(Memo).Append("\n"); + sb.Append(" Metadata: ").Append(Metadata).Append("\n"); + sb.Append(" SkipWebhook: ").Append(SkipWebhook).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as TransactionCreateRequest); + } + + /// + /// Returns true if TransactionCreateRequest instances are equal + /// + /// Instance of TransactionCreateRequest to be compared + /// Boolean + public bool Equals(TransactionCreateRequest input) + { + if (input == null) + { + return false; + } + return + ( + this.Amount == input.Amount || + this.Amount.Equals(input.Amount) + ) && + ( + this.Date == input.Date || + (this.Date != null && + this.Date.Equals(input.Date)) + ) && + ( + this.Description == input.Description || + (this.Description != null && + this.Description.Equals(input.Description)) + ) && + ( + this.Type == input.Type || + (this.Type != null && + this.Type.Equals(input.Type)) + ) && + ( + this.CategoryGuid == input.CategoryGuid || + (this.CategoryGuid != null && + this.CategoryGuid.Equals(input.CategoryGuid)) + ) && + ( + this.CurrencyCode == input.CurrencyCode || + (this.CurrencyCode != null && + this.CurrencyCode.Equals(input.CurrencyCode)) + ) && + ( + this.HasBeenViewed == input.HasBeenViewed || + this.HasBeenViewed.Equals(input.HasBeenViewed) + ) && + ( + this.IsHidden == input.IsHidden || + this.IsHidden.Equals(input.IsHidden) + ) && + ( + this.IsInternational == input.IsInternational || + this.IsInternational.Equals(input.IsInternational) + ) && + ( + this.Memo == input.Memo || + (this.Memo != null && + this.Memo.Equals(input.Memo)) + ) && + ( + this.Metadata == input.Metadata || + (this.Metadata != null && + this.Metadata.Equals(input.Metadata)) + ) && + ( + this.SkipWebhook == input.SkipWebhook || + this.SkipWebhook.Equals(input.SkipWebhook) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + hashCode = (hashCode * 59) + this.Amount.GetHashCode(); + if (this.Date != null) + { + hashCode = (hashCode * 59) + this.Date.GetHashCode(); + } + if (this.Description != null) + { + hashCode = (hashCode * 59) + this.Description.GetHashCode(); + } + if (this.Type != null) + { + hashCode = (hashCode * 59) + this.Type.GetHashCode(); + } + if (this.CategoryGuid != null) + { + hashCode = (hashCode * 59) + this.CategoryGuid.GetHashCode(); + } + if (this.CurrencyCode != null) + { + hashCode = (hashCode * 59) + this.CurrencyCode.GetHashCode(); + } + hashCode = (hashCode * 59) + this.HasBeenViewed.GetHashCode(); + hashCode = (hashCode * 59) + this.IsHidden.GetHashCode(); + hashCode = (hashCode * 59) + this.IsInternational.GetHashCode(); + if (this.Memo != null) + { + hashCode = (hashCode * 59) + this.Memo.GetHashCode(); + } + if (this.Metadata != null) + { + hashCode = (hashCode * 59) + this.Metadata.GetHashCode(); + } + hashCode = (hashCode * 59) + this.SkipWebhook.GetHashCode(); + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} diff --git a/src/MX.Platform.CSharp/Model/TransactionCreateRequestBody.cs b/src/MX.Platform.CSharp/Model/TransactionCreateRequestBody.cs new file mode 100644 index 0000000..a567a56 --- /dev/null +++ b/src/MX.Platform.CSharp/Model/TransactionCreateRequestBody.cs @@ -0,0 +1,128 @@ +/* + * MX Platform API + * + * The MX Platform API is a powerful, fully-featured API designed to make aggregating and enhancing financial data easy and reliable. It can seamlessly connect your app or website to tens of thousands of financial institutions. + * + * The version of the OpenAPI document: 0.1.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Runtime.Serialization; +using System.Text; +using System.Text.RegularExpressions; +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using Newtonsoft.Json.Linq; +using System.ComponentModel.DataAnnotations; +using OpenAPIDateConverter = MX.Platform.CSharp.Client.OpenAPIDateConverter; + +namespace MX.Platform.CSharp.Model +{ + /// + /// TransactionCreateRequestBody + /// + [DataContract(Name = "TransactionCreateRequestBody")] + public partial class TransactionCreateRequestBody : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// transaction. + public TransactionCreateRequestBody(TransactionCreateRequest transaction = default(TransactionCreateRequest)) + { + this.Transaction = transaction; + } + + /// + /// Gets or Sets Transaction + /// + [DataMember(Name = "transaction", EmitDefaultValue = false)] + public TransactionCreateRequest Transaction { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class TransactionCreateRequestBody {\n"); + sb.Append(" Transaction: ").Append(Transaction).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as TransactionCreateRequestBody); + } + + /// + /// Returns true if TransactionCreateRequestBody instances are equal + /// + /// Instance of TransactionCreateRequestBody to be compared + /// Boolean + public bool Equals(TransactionCreateRequestBody input) + { + if (input == null) + { + return false; + } + return + ( + this.Transaction == input.Transaction || + (this.Transaction != null && + this.Transaction.Equals(input.Transaction)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Transaction != null) + { + hashCode = (hashCode * 59) + this.Transaction.GetHashCode(); + } + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} diff --git a/src/MX.Platform.CSharp/Model/TransactionCreateResponseBody.cs b/src/MX.Platform.CSharp/Model/TransactionCreateResponseBody.cs new file mode 100644 index 0000000..7175178 --- /dev/null +++ b/src/MX.Platform.CSharp/Model/TransactionCreateResponseBody.cs @@ -0,0 +1,927 @@ +/* + * MX Platform API + * + * The MX Platform API is a powerful, fully-featured API designed to make aggregating and enhancing financial data easy and reliable. It can seamlessly connect your app or website to tens of thousands of financial institutions. + * + * The version of the OpenAPI document: 0.1.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Runtime.Serialization; +using System.Text; +using System.Text.RegularExpressions; +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using Newtonsoft.Json.Linq; +using System.ComponentModel.DataAnnotations; +using OpenAPIDateConverter = MX.Platform.CSharp.Client.OpenAPIDateConverter; + +namespace MX.Platform.CSharp.Model +{ + /// + /// TransactionCreateResponseBody + /// + [DataContract(Name = "TransactionCreateResponseBody")] + public partial class TransactionCreateResponseBody : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// accountGuid. + /// accountId. + /// amount. + /// category. + /// categoryGuid. + /// checkNumberString. + /// createdAt. + /// currencyCode. + /// date. + /// description. + /// extendedTransactionType. + /// guid. + /// id. + /// isBillPay. + /// isDirectDeposit. + /// isExpense. + /// isFee. + /// isIncome. + /// isInternational. + /// isManual. + /// isOverdraftFee. + /// isPayrollAdvance. + /// isRecurring. + /// isSubscription. + /// latitude. + /// localizedDescription. + /// localizedMemo. + /// longitude. + /// memberGuid. + /// memberIsManagedByUser. + /// memo. + /// merchantCategoryCode. + /// merchantGuid. + /// merchantLocationGuid. + /// metadata. + /// originalDescription. + /// postedAt. + /// status. + /// topLevelCategory. + /// transactedAt. + /// type. + /// updatedAt. + /// userGuid. + /// userId. + public TransactionCreateResponseBody(string accountGuid = default(string), string accountId = default(string), decimal amount = default(decimal), string category = default(string), string categoryGuid = default(string), string checkNumberString = default(string), string createdAt = default(string), string currencyCode = default(string), string date = default(string), string description = default(string), string extendedTransactionType = default(string), string guid = default(string), string id = default(string), bool? isBillPay = default(bool?), bool? isDirectDeposit = default(bool?), bool? isExpense = default(bool?), bool? isFee = default(bool?), bool? isIncome = default(bool?), bool? isInternational = default(bool?), bool? isManual = default(bool?), bool? isOverdraftFee = default(bool?), bool? isPayrollAdvance = default(bool?), bool? isRecurring = default(bool?), bool? isSubscription = default(bool?), decimal? latitude = default(decimal?), string localizedDescription = default(string), string localizedMemo = default(string), decimal? longitude = default(decimal?), string memberGuid = default(string), bool? memberIsManagedByUser = default(bool?), string memo = default(string), int? merchantCategoryCode = default(int?), string merchantGuid = default(string), string merchantLocationGuid = default(string), string metadata = default(string), string originalDescription = default(string), string postedAt = default(string), string status = default(string), string topLevelCategory = default(string), string transactedAt = default(string), string type = default(string), string updatedAt = default(string), string userGuid = default(string), string userId = default(string)) + { + this.AccountGuid = accountGuid; + this.AccountId = accountId; + this.Amount = amount; + this.Category = category; + this.CategoryGuid = categoryGuid; + this.CheckNumberString = checkNumberString; + this.CreatedAt = createdAt; + this.CurrencyCode = currencyCode; + this.Date = date; + this.Description = description; + this.ExtendedTransactionType = extendedTransactionType; + this.Guid = guid; + this.Id = id; + this.IsBillPay = isBillPay; + this.IsDirectDeposit = isDirectDeposit; + this.IsExpense = isExpense; + this.IsFee = isFee; + this.IsIncome = isIncome; + this.IsInternational = isInternational; + this.IsManual = isManual; + this.IsOverdraftFee = isOverdraftFee; + this.IsPayrollAdvance = isPayrollAdvance; + this.IsRecurring = isRecurring; + this.IsSubscription = isSubscription; + this.Latitude = latitude; + this.LocalizedDescription = localizedDescription; + this.LocalizedMemo = localizedMemo; + this.Longitude = longitude; + this.MemberGuid = memberGuid; + this.MemberIsManagedByUser = memberIsManagedByUser; + this.Memo = memo; + this.MerchantCategoryCode = merchantCategoryCode; + this.MerchantGuid = merchantGuid; + this.MerchantLocationGuid = merchantLocationGuid; + this.Metadata = metadata; + this.OriginalDescription = originalDescription; + this.PostedAt = postedAt; + this.Status = status; + this.TopLevelCategory = topLevelCategory; + this.TransactedAt = transactedAt; + this.Type = type; + this.UpdatedAt = updatedAt; + this.UserGuid = userGuid; + this.UserId = userId; + } + + /// + /// Gets or Sets AccountGuid + /// + /// ACT-06d7f44b-caae-0f6e-1384-01f52e75dcb1 + [DataMember(Name = "account_guid", EmitDefaultValue = true)] + public string AccountGuid { get; set; } + + /// + /// Gets or Sets AccountId + /// + /// account123 + [DataMember(Name = "account_id", EmitDefaultValue = true)] + public string AccountId { get; set; } + + /// + /// Gets or Sets Amount + /// + /// 61.11 + [DataMember(Name = "amount", EmitDefaultValue = false)] + public decimal Amount { get; set; } + + /// + /// Gets or Sets Category + /// + /// Groceries + [DataMember(Name = "category", EmitDefaultValue = true)] + public string Category { get; set; } + + /// + /// Gets or Sets CategoryGuid + /// + /// CAT-b6d61a19-30a7-e852-2703-bdfb4072289e + [DataMember(Name = "category_guid", EmitDefaultValue = true)] + public string CategoryGuid { get; set; } + + /// + /// Gets or Sets CheckNumberString + /// + [DataMember(Name = "check_number_string", EmitDefaultValue = true)] + public string CheckNumberString { get; set; } + + /// + /// Gets or Sets CreatedAt + /// + /// 2016-10-08T09:43:42.000Z + [DataMember(Name = "created_at", EmitDefaultValue = true)] + public string CreatedAt { get; set; } + + /// + /// Gets or Sets CurrencyCode + /// + /// USD + [DataMember(Name = "currency_code", EmitDefaultValue = true)] + public string CurrencyCode { get; set; } + + /// + /// Gets or Sets Date + /// + /// 2016-10-06T00:00:00.000Z + [DataMember(Name = "date", EmitDefaultValue = true)] + public string Date { get; set; } + + /// + /// Gets or Sets Description + /// + /// Whole foods + [DataMember(Name = "description", EmitDefaultValue = true)] + public string Description { get; set; } + + /// + /// Gets or Sets ExtendedTransactionType + /// + [DataMember(Name = "extended_transaction_type", EmitDefaultValue = true)] + public string ExtendedTransactionType { get; set; } + + /// + /// Gets or Sets Guid + /// + /// TRN-265abee9-889b-af6a-c69b-25157db2bdd9 + [DataMember(Name = "guid", EmitDefaultValue = true)] + public string Guid { get; set; } + + /// + /// Gets or Sets Id + /// + [DataMember(Name = "id", EmitDefaultValue = true)] + public string Id { get; set; } + + /// + /// Gets or Sets IsBillPay + /// + /// false + [DataMember(Name = "is_bill_pay", EmitDefaultValue = true)] + public bool? IsBillPay { get; set; } + + /// + /// Gets or Sets IsDirectDeposit + /// + /// false + [DataMember(Name = "is_direct_deposit", EmitDefaultValue = true)] + public bool? IsDirectDeposit { get; set; } + + /// + /// Gets or Sets IsExpense + /// + /// true + [DataMember(Name = "is_expense", EmitDefaultValue = true)] + public bool? IsExpense { get; set; } + + /// + /// Gets or Sets IsFee + /// + /// false + [DataMember(Name = "is_fee", EmitDefaultValue = true)] + public bool? IsFee { get; set; } + + /// + /// Gets or Sets IsIncome + /// + /// false + [DataMember(Name = "is_income", EmitDefaultValue = true)] + public bool? IsIncome { get; set; } + + /// + /// Gets or Sets IsInternational + /// + /// false + [DataMember(Name = "is_international", EmitDefaultValue = true)] + public bool? IsInternational { get; set; } + + /// + /// Gets or Sets IsManual + /// + /// true + [DataMember(Name = "is_manual", EmitDefaultValue = true)] + public bool? IsManual { get; set; } + + /// + /// Gets or Sets IsOverdraftFee + /// + /// false + [DataMember(Name = "is_overdraft_fee", EmitDefaultValue = true)] + public bool? IsOverdraftFee { get; set; } + + /// + /// Gets or Sets IsPayrollAdvance + /// + /// false + [DataMember(Name = "is_payroll_advance", EmitDefaultValue = true)] + public bool? IsPayrollAdvance { get; set; } + + /// + /// Gets or Sets IsRecurring + /// + [DataMember(Name = "is_recurring", EmitDefaultValue = true)] + public bool? IsRecurring { get; set; } + + /// + /// Gets or Sets IsSubscription + /// + /// false + [DataMember(Name = "is_subscription", EmitDefaultValue = true)] + public bool? IsSubscription { get; set; } + + /// + /// Gets or Sets Latitude + /// + [DataMember(Name = "latitude", EmitDefaultValue = true)] + public decimal? Latitude { get; set; } + + /// + /// Gets or Sets LocalizedDescription + /// + [DataMember(Name = "localized_description", EmitDefaultValue = true)] + public string LocalizedDescription { get; set; } + + /// + /// Gets or Sets LocalizedMemo + /// + [DataMember(Name = "localized_memo", EmitDefaultValue = true)] + public string LocalizedMemo { get; set; } + + /// + /// Gets or Sets Longitude + /// + [DataMember(Name = "longitude", EmitDefaultValue = true)] + public decimal? Longitude { get; set; } + + /// + /// Gets or Sets MemberGuid + /// + /// MBR-7c6f361b-e582-15b6-60c0-358f12466b4b + [DataMember(Name = "member_guid", EmitDefaultValue = true)] + public string MemberGuid { get; set; } + + /// + /// Gets or Sets MemberIsManagedByUser + /// + /// true + [DataMember(Name = "member_is_managed_by_user", EmitDefaultValue = true)] + public bool? MemberIsManagedByUser { get; set; } + + /// + /// Gets or Sets Memo + /// + /// This is a memo + [DataMember(Name = "memo", EmitDefaultValue = true)] + public string Memo { get; set; } + + /// + /// Gets or Sets MerchantCategoryCode + /// + [DataMember(Name = "merchant_category_code", EmitDefaultValue = true)] + public int? MerchantCategoryCode { get; set; } + + /// + /// Gets or Sets MerchantGuid + /// + [DataMember(Name = "merchant_guid", EmitDefaultValue = true)] + public string MerchantGuid { get; set; } + + /// + /// Gets or Sets MerchantLocationGuid + /// + [DataMember(Name = "merchant_location_guid", EmitDefaultValue = true)] + public string MerchantLocationGuid { get; set; } + + /// + /// Gets or Sets Metadata + /// + /// some metadata + [DataMember(Name = "metadata", EmitDefaultValue = true)] + public string Metadata { get; set; } + + /// + /// Gets or Sets OriginalDescription + /// + [DataMember(Name = "original_description", EmitDefaultValue = true)] + public string OriginalDescription { get; set; } + + /// + /// Gets or Sets PostedAt + /// + [DataMember(Name = "posted_at", EmitDefaultValue = true)] + public string PostedAt { get; set; } + + /// + /// Gets or Sets Status + /// + [DataMember(Name = "status", EmitDefaultValue = true)] + public string Status { get; set; } + + /// + /// Gets or Sets TopLevelCategory + /// + /// Food & Dining + [DataMember(Name = "top_level_category", EmitDefaultValue = true)] + public string TopLevelCategory { get; set; } + + /// + /// Gets or Sets TransactedAt + /// + [DataMember(Name = "transacted_at", EmitDefaultValue = true)] + public string TransactedAt { get; set; } + + /// + /// Gets or Sets Type + /// + /// DEBIT + [DataMember(Name = "type", EmitDefaultValue = false)] + public string Type { get; set; } + + /// + /// Gets or Sets UpdatedAt + /// + /// 2016-10-08T05:49:12.000Z + [DataMember(Name = "updated_at", EmitDefaultValue = false)] + public string UpdatedAt { get; set; } + + /// + /// Gets or Sets UserGuid + /// + /// USR-fa7537f3-48aa-a683-a02a-b18940482f54 + [DataMember(Name = "user_guid", EmitDefaultValue = true)] + public string UserGuid { get; set; } + + /// + /// Gets or Sets UserId + /// + /// user123 + [DataMember(Name = "user_id", EmitDefaultValue = true)] + public string UserId { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class TransactionCreateResponseBody {\n"); + sb.Append(" AccountGuid: ").Append(AccountGuid).Append("\n"); + sb.Append(" AccountId: ").Append(AccountId).Append("\n"); + sb.Append(" Amount: ").Append(Amount).Append("\n"); + sb.Append(" Category: ").Append(Category).Append("\n"); + sb.Append(" CategoryGuid: ").Append(CategoryGuid).Append("\n"); + sb.Append(" CheckNumberString: ").Append(CheckNumberString).Append("\n"); + sb.Append(" CreatedAt: ").Append(CreatedAt).Append("\n"); + sb.Append(" CurrencyCode: ").Append(CurrencyCode).Append("\n"); + sb.Append(" Date: ").Append(Date).Append("\n"); + sb.Append(" Description: ").Append(Description).Append("\n"); + sb.Append(" ExtendedTransactionType: ").Append(ExtendedTransactionType).Append("\n"); + sb.Append(" Guid: ").Append(Guid).Append("\n"); + sb.Append(" Id: ").Append(Id).Append("\n"); + sb.Append(" IsBillPay: ").Append(IsBillPay).Append("\n"); + sb.Append(" IsDirectDeposit: ").Append(IsDirectDeposit).Append("\n"); + sb.Append(" IsExpense: ").Append(IsExpense).Append("\n"); + sb.Append(" IsFee: ").Append(IsFee).Append("\n"); + sb.Append(" IsIncome: ").Append(IsIncome).Append("\n"); + sb.Append(" IsInternational: ").Append(IsInternational).Append("\n"); + sb.Append(" IsManual: ").Append(IsManual).Append("\n"); + sb.Append(" IsOverdraftFee: ").Append(IsOverdraftFee).Append("\n"); + sb.Append(" IsPayrollAdvance: ").Append(IsPayrollAdvance).Append("\n"); + sb.Append(" IsRecurring: ").Append(IsRecurring).Append("\n"); + sb.Append(" IsSubscription: ").Append(IsSubscription).Append("\n"); + sb.Append(" Latitude: ").Append(Latitude).Append("\n"); + sb.Append(" LocalizedDescription: ").Append(LocalizedDescription).Append("\n"); + sb.Append(" LocalizedMemo: ").Append(LocalizedMemo).Append("\n"); + sb.Append(" Longitude: ").Append(Longitude).Append("\n"); + sb.Append(" MemberGuid: ").Append(MemberGuid).Append("\n"); + sb.Append(" MemberIsManagedByUser: ").Append(MemberIsManagedByUser).Append("\n"); + sb.Append(" Memo: ").Append(Memo).Append("\n"); + sb.Append(" MerchantCategoryCode: ").Append(MerchantCategoryCode).Append("\n"); + sb.Append(" MerchantGuid: ").Append(MerchantGuid).Append("\n"); + sb.Append(" MerchantLocationGuid: ").Append(MerchantLocationGuid).Append("\n"); + sb.Append(" Metadata: ").Append(Metadata).Append("\n"); + sb.Append(" OriginalDescription: ").Append(OriginalDescription).Append("\n"); + sb.Append(" PostedAt: ").Append(PostedAt).Append("\n"); + sb.Append(" Status: ").Append(Status).Append("\n"); + sb.Append(" TopLevelCategory: ").Append(TopLevelCategory).Append("\n"); + sb.Append(" TransactedAt: ").Append(TransactedAt).Append("\n"); + sb.Append(" Type: ").Append(Type).Append("\n"); + sb.Append(" UpdatedAt: ").Append(UpdatedAt).Append("\n"); + sb.Append(" UserGuid: ").Append(UserGuid).Append("\n"); + sb.Append(" UserId: ").Append(UserId).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as TransactionCreateResponseBody); + } + + /// + /// Returns true if TransactionCreateResponseBody instances are equal + /// + /// Instance of TransactionCreateResponseBody to be compared + /// Boolean + public bool Equals(TransactionCreateResponseBody input) + { + if (input == null) + { + return false; + } + return + ( + this.AccountGuid == input.AccountGuid || + (this.AccountGuid != null && + this.AccountGuid.Equals(input.AccountGuid)) + ) && + ( + this.AccountId == input.AccountId || + (this.AccountId != null && + this.AccountId.Equals(input.AccountId)) + ) && + ( + this.Amount == input.Amount || + this.Amount.Equals(input.Amount) + ) && + ( + this.Category == input.Category || + (this.Category != null && + this.Category.Equals(input.Category)) + ) && + ( + this.CategoryGuid == input.CategoryGuid || + (this.CategoryGuid != null && + this.CategoryGuid.Equals(input.CategoryGuid)) + ) && + ( + this.CheckNumberString == input.CheckNumberString || + (this.CheckNumberString != null && + this.CheckNumberString.Equals(input.CheckNumberString)) + ) && + ( + this.CreatedAt == input.CreatedAt || + (this.CreatedAt != null && + this.CreatedAt.Equals(input.CreatedAt)) + ) && + ( + this.CurrencyCode == input.CurrencyCode || + (this.CurrencyCode != null && + this.CurrencyCode.Equals(input.CurrencyCode)) + ) && + ( + this.Date == input.Date || + (this.Date != null && + this.Date.Equals(input.Date)) + ) && + ( + this.Description == input.Description || + (this.Description != null && + this.Description.Equals(input.Description)) + ) && + ( + this.ExtendedTransactionType == input.ExtendedTransactionType || + (this.ExtendedTransactionType != null && + this.ExtendedTransactionType.Equals(input.ExtendedTransactionType)) + ) && + ( + this.Guid == input.Guid || + (this.Guid != null && + this.Guid.Equals(input.Guid)) + ) && + ( + this.Id == input.Id || + (this.Id != null && + this.Id.Equals(input.Id)) + ) && + ( + this.IsBillPay == input.IsBillPay || + (this.IsBillPay != null && + this.IsBillPay.Equals(input.IsBillPay)) + ) && + ( + this.IsDirectDeposit == input.IsDirectDeposit || + (this.IsDirectDeposit != null && + this.IsDirectDeposit.Equals(input.IsDirectDeposit)) + ) && + ( + this.IsExpense == input.IsExpense || + (this.IsExpense != null && + this.IsExpense.Equals(input.IsExpense)) + ) && + ( + this.IsFee == input.IsFee || + (this.IsFee != null && + this.IsFee.Equals(input.IsFee)) + ) && + ( + this.IsIncome == input.IsIncome || + (this.IsIncome != null && + this.IsIncome.Equals(input.IsIncome)) + ) && + ( + this.IsInternational == input.IsInternational || + (this.IsInternational != null && + this.IsInternational.Equals(input.IsInternational)) + ) && + ( + this.IsManual == input.IsManual || + (this.IsManual != null && + this.IsManual.Equals(input.IsManual)) + ) && + ( + this.IsOverdraftFee == input.IsOverdraftFee || + (this.IsOverdraftFee != null && + this.IsOverdraftFee.Equals(input.IsOverdraftFee)) + ) && + ( + this.IsPayrollAdvance == input.IsPayrollAdvance || + (this.IsPayrollAdvance != null && + this.IsPayrollAdvance.Equals(input.IsPayrollAdvance)) + ) && + ( + this.IsRecurring == input.IsRecurring || + (this.IsRecurring != null && + this.IsRecurring.Equals(input.IsRecurring)) + ) && + ( + this.IsSubscription == input.IsSubscription || + (this.IsSubscription != null && + this.IsSubscription.Equals(input.IsSubscription)) + ) && + ( + this.Latitude == input.Latitude || + (this.Latitude != null && + this.Latitude.Equals(input.Latitude)) + ) && + ( + this.LocalizedDescription == input.LocalizedDescription || + (this.LocalizedDescription != null && + this.LocalizedDescription.Equals(input.LocalizedDescription)) + ) && + ( + this.LocalizedMemo == input.LocalizedMemo || + (this.LocalizedMemo != null && + this.LocalizedMemo.Equals(input.LocalizedMemo)) + ) && + ( + this.Longitude == input.Longitude || + (this.Longitude != null && + this.Longitude.Equals(input.Longitude)) + ) && + ( + this.MemberGuid == input.MemberGuid || + (this.MemberGuid != null && + this.MemberGuid.Equals(input.MemberGuid)) + ) && + ( + this.MemberIsManagedByUser == input.MemberIsManagedByUser || + (this.MemberIsManagedByUser != null && + this.MemberIsManagedByUser.Equals(input.MemberIsManagedByUser)) + ) && + ( + this.Memo == input.Memo || + (this.Memo != null && + this.Memo.Equals(input.Memo)) + ) && + ( + this.MerchantCategoryCode == input.MerchantCategoryCode || + (this.MerchantCategoryCode != null && + this.MerchantCategoryCode.Equals(input.MerchantCategoryCode)) + ) && + ( + this.MerchantGuid == input.MerchantGuid || + (this.MerchantGuid != null && + this.MerchantGuid.Equals(input.MerchantGuid)) + ) && + ( + this.MerchantLocationGuid == input.MerchantLocationGuid || + (this.MerchantLocationGuid != null && + this.MerchantLocationGuid.Equals(input.MerchantLocationGuid)) + ) && + ( + this.Metadata == input.Metadata || + (this.Metadata != null && + this.Metadata.Equals(input.Metadata)) + ) && + ( + this.OriginalDescription == input.OriginalDescription || + (this.OriginalDescription != null && + this.OriginalDescription.Equals(input.OriginalDescription)) + ) && + ( + this.PostedAt == input.PostedAt || + (this.PostedAt != null && + this.PostedAt.Equals(input.PostedAt)) + ) && + ( + this.Status == input.Status || + (this.Status != null && + this.Status.Equals(input.Status)) + ) && + ( + this.TopLevelCategory == input.TopLevelCategory || + (this.TopLevelCategory != null && + this.TopLevelCategory.Equals(input.TopLevelCategory)) + ) && + ( + this.TransactedAt == input.TransactedAt || + (this.TransactedAt != null && + this.TransactedAt.Equals(input.TransactedAt)) + ) && + ( + this.Type == input.Type || + (this.Type != null && + this.Type.Equals(input.Type)) + ) && + ( + this.UpdatedAt == input.UpdatedAt || + (this.UpdatedAt != null && + this.UpdatedAt.Equals(input.UpdatedAt)) + ) && + ( + this.UserGuid == input.UserGuid || + (this.UserGuid != null && + this.UserGuid.Equals(input.UserGuid)) + ) && + ( + this.UserId == input.UserId || + (this.UserId != null && + this.UserId.Equals(input.UserId)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.AccountGuid != null) + { + hashCode = (hashCode * 59) + this.AccountGuid.GetHashCode(); + } + if (this.AccountId != null) + { + hashCode = (hashCode * 59) + this.AccountId.GetHashCode(); + } + hashCode = (hashCode * 59) + this.Amount.GetHashCode(); + if (this.Category != null) + { + hashCode = (hashCode * 59) + this.Category.GetHashCode(); + } + if (this.CategoryGuid != null) + { + hashCode = (hashCode * 59) + this.CategoryGuid.GetHashCode(); + } + if (this.CheckNumberString != null) + { + hashCode = (hashCode * 59) + this.CheckNumberString.GetHashCode(); + } + if (this.CreatedAt != null) + { + hashCode = (hashCode * 59) + this.CreatedAt.GetHashCode(); + } + if (this.CurrencyCode != null) + { + hashCode = (hashCode * 59) + this.CurrencyCode.GetHashCode(); + } + if (this.Date != null) + { + hashCode = (hashCode * 59) + this.Date.GetHashCode(); + } + if (this.Description != null) + { + hashCode = (hashCode * 59) + this.Description.GetHashCode(); + } + if (this.ExtendedTransactionType != null) + { + hashCode = (hashCode * 59) + this.ExtendedTransactionType.GetHashCode(); + } + if (this.Guid != null) + { + hashCode = (hashCode * 59) + this.Guid.GetHashCode(); + } + if (this.Id != null) + { + hashCode = (hashCode * 59) + this.Id.GetHashCode(); + } + if (this.IsBillPay != null) + { + hashCode = (hashCode * 59) + this.IsBillPay.GetHashCode(); + } + if (this.IsDirectDeposit != null) + { + hashCode = (hashCode * 59) + this.IsDirectDeposit.GetHashCode(); + } + if (this.IsExpense != null) + { + hashCode = (hashCode * 59) + this.IsExpense.GetHashCode(); + } + if (this.IsFee != null) + { + hashCode = (hashCode * 59) + this.IsFee.GetHashCode(); + } + if (this.IsIncome != null) + { + hashCode = (hashCode * 59) + this.IsIncome.GetHashCode(); + } + if (this.IsInternational != null) + { + hashCode = (hashCode * 59) + this.IsInternational.GetHashCode(); + } + if (this.IsManual != null) + { + hashCode = (hashCode * 59) + this.IsManual.GetHashCode(); + } + if (this.IsOverdraftFee != null) + { + hashCode = (hashCode * 59) + this.IsOverdraftFee.GetHashCode(); + } + if (this.IsPayrollAdvance != null) + { + hashCode = (hashCode * 59) + this.IsPayrollAdvance.GetHashCode(); + } + if (this.IsRecurring != null) + { + hashCode = (hashCode * 59) + this.IsRecurring.GetHashCode(); + } + if (this.IsSubscription != null) + { + hashCode = (hashCode * 59) + this.IsSubscription.GetHashCode(); + } + if (this.Latitude != null) + { + hashCode = (hashCode * 59) + this.Latitude.GetHashCode(); + } + if (this.LocalizedDescription != null) + { + hashCode = (hashCode * 59) + this.LocalizedDescription.GetHashCode(); + } + if (this.LocalizedMemo != null) + { + hashCode = (hashCode * 59) + this.LocalizedMemo.GetHashCode(); + } + if (this.Longitude != null) + { + hashCode = (hashCode * 59) + this.Longitude.GetHashCode(); + } + if (this.MemberGuid != null) + { + hashCode = (hashCode * 59) + this.MemberGuid.GetHashCode(); + } + if (this.MemberIsManagedByUser != null) + { + hashCode = (hashCode * 59) + this.MemberIsManagedByUser.GetHashCode(); + } + if (this.Memo != null) + { + hashCode = (hashCode * 59) + this.Memo.GetHashCode(); + } + if (this.MerchantCategoryCode != null) + { + hashCode = (hashCode * 59) + this.MerchantCategoryCode.GetHashCode(); + } + if (this.MerchantGuid != null) + { + hashCode = (hashCode * 59) + this.MerchantGuid.GetHashCode(); + } + if (this.MerchantLocationGuid != null) + { + hashCode = (hashCode * 59) + this.MerchantLocationGuid.GetHashCode(); + } + if (this.Metadata != null) + { + hashCode = (hashCode * 59) + this.Metadata.GetHashCode(); + } + if (this.OriginalDescription != null) + { + hashCode = (hashCode * 59) + this.OriginalDescription.GetHashCode(); + } + if (this.PostedAt != null) + { + hashCode = (hashCode * 59) + this.PostedAt.GetHashCode(); + } + if (this.Status != null) + { + hashCode = (hashCode * 59) + this.Status.GetHashCode(); + } + if (this.TopLevelCategory != null) + { + hashCode = (hashCode * 59) + this.TopLevelCategory.GetHashCode(); + } + if (this.TransactedAt != null) + { + hashCode = (hashCode * 59) + this.TransactedAt.GetHashCode(); + } + if (this.Type != null) + { + hashCode = (hashCode * 59) + this.Type.GetHashCode(); + } + if (this.UpdatedAt != null) + { + hashCode = (hashCode * 59) + this.UpdatedAt.GetHashCode(); + } + if (this.UserGuid != null) + { + hashCode = (hashCode * 59) + this.UserGuid.GetHashCode(); + } + if (this.UserId != null) + { + hashCode = (hashCode * 59) + this.UserId.GetHashCode(); + } + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +}