{
  "openapi": "3.1.1",
  "info": {
    "title": "TFS.Api | v1",
    "version": "1.0.0"
  },
  "servers": [
    {
      "url": "https://tfsaor-mweb-cust-api-dev-usc-co.azurewebsites.net/"
    }
  ],
  "paths": {
    "/api/v1/wompi/acceptance-tokens": {
      "get": {
        "tags": [
          "Wompi"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/AcceptanceTokensResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AcceptanceTokensResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/AcceptanceTokensResponse"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "Bearer": [ ]
          }
        ]
      }
    },
    "/api/v1/wompi/pse/banks": {
      "get": {
        "tags": [
          "Wompi"
        ],
        "parameters": [
          {
            "name": "acceptanceToken",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PseBank"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PseBank"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PseBank"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "Bearer": [ ]
          }
        ]
      }
    },
    "/api/v1/wompi/payments": {
      "post": {
        "tags": [
          "Wompi"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SubmitPaymentRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SubmitPaymentRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SubmitPaymentRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/TransactionResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TransactionResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/TransactionResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "Bearer": [ ]
          }
        ]
      }
    },
    "/api/v1/wompi/payments/{transactionId}": {
      "get": {
        "tags": [
          "Wompi"
        ],
        "parameters": [
          {
            "name": "transactionId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/TransactionResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TransactionResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/TransactionResponse"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "Bearer": [ ]
          }
        ]
      }
    },
    "/api/v1/user": {
      "get": {
        "tags": [
          "User"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/UserDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UserDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/UserDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "Bearer": [ ]
          }
        ]
      }
    },
    "/api/v1/statements": {
      "get": {
        "tags": [
          "Statements"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/StatementsResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StatementsResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/StatementsResponse"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "Bearer": [ ]
          }
        ]
      }
    },
    "/api/v1/payments": {
      "get": {
        "tags": [
          "Payments"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PaymentDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PaymentDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PaymentDto"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "Bearer": [ ]
          }
        ]
      }
    },
    "/api/v1/loans": {
      "get": {
        "tags": [
          "Loans"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/LoanDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/LoanDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/LoanDto"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "Bearer": [ ]
          }
        ]
      }
    },
    "/api/v1/health": {
      "get": {
        "tags": [
          "HealthCheck"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "boolean"
                }
              },
              "application/json": {
                "schema": {
                  "type": "boolean"
                }
              },
              "text/json": {
                "schema": {
                  "type": "boolean"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/documents/{name}": {
      "get": {
        "tags": [
          "Documents"
        ],
        "parameters": [
          {
            "name": "name",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "download",
            "in": "query",
            "schema": {
              "type": "boolean",
              "default": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      },
      "head": {
        "tags": [
          "Documents"
        ],
        "parameters": [
          {
            "name": "name",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/user/consents": {
      "get": {
        "tags": [
          "Consents"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ConsentDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ConsentDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ConsentDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "Bearer": [ ]
          }
        ]
      }
    },
    "/api/v1/user/consents/terms-consent": {
      "post": {
        "tags": [
          "Consents"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TermsAndConditionsConsentRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/TermsAndConditionsConsentRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/TermsAndConditionsConsentRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "Bearer": [ ]
          }
        ]
      }
    },
    "/api/v1/cases/address": {
      "post": {
        "tags": [
          "Cases"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AddressDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/AddressDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/AddressDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "Bearer": [ ]
          }
        ]
      }
    },
    "/api/v1/cases/phone": {
      "post": {
        "tags": [
          "Cases"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PhoneDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/PhoneDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/PhoneDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "Bearer": [ ]
          }
        ]
      }
    },
    "/api/v1/auth/signin": {
      "post": {
        "tags": [
          "Auth"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SignInRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SignInRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SignInRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/AuthTokenResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AuthTokenResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/AuthTokenResponse"
                }
              }
            }
          },
          "202": {
            "description": "Accepted",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/OtpRequiredResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OtpRequiredResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/OtpRequiredResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/auth/signin/otp": {
      "post": {
        "tags": [
          "Auth"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SubmitOtpRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SubmitOtpRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SubmitOtpRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/AuthTokenResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AuthTokenResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/AuthTokenResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/auth/signup": {
      "post": {
        "tags": [
          "Auth"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SignUpRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SignUpRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SignUpRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "Accepted",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/OtpRequiredResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OtpRequiredResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/OtpRequiredResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/auth/signup/otp": {
      "post": {
        "tags": [
          "Auth"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SubmitOtpRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SubmitOtpRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SubmitOtpRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/SignUpSuccessResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SignUpSuccessResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SignUpSuccessResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/auth/reset-password": {
      "post": {
        "tags": [
          "Auth"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ResetPasswordStartRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/ResetPasswordStartRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/ResetPasswordStartRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "Accepted",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/OtpRequiredResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OtpRequiredResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/OtpRequiredResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/auth/reset-password/otp": {
      "post": {
        "tags": [
          "Auth"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ResetPasswordSubmitOtpRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/ResetPasswordSubmitOtpRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/ResetPasswordSubmitOtpRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ResetPasswordOtpResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ResetPasswordOtpResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ResetPasswordOtpResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "502": {
            "description": "Bad Gateway",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/auth/reset-password/new-password": {
      "post": {
        "tags": [
          "Auth"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ResetPasswordSubmitNewPasswordRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/ResetPasswordSubmitNewPasswordRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/ResetPasswordSubmitNewPasswordRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ResetPasswordSuccessResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ResetPasswordSuccessResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ResetPasswordSuccessResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/auth/refresh": {
      "post": {
        "tags": [
          "Auth"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RefreshTokenRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/RefreshTokenRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/RefreshTokenRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/AuthTokenResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AuthTokenResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/AuthTokenResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/accounts/validate": {
      "post": {
        "tags": [
          "Accounts"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ValidateAccountRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/ValidateAccountRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/ValidateAccountRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ValidateResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ValidateResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ValidateResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/": {
      "get": {
        "tags": [
          "TFS.Api"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "AcceptanceTokensResponse": {
        "required": [
          "presignedAcceptance",
          "presignedPersonalDataAuth"
        ],
        "type": "object",
        "properties": {
          "presignedAcceptance": {
            "oneOf": [
              {
                "type": "null"
              },
              {
                "$ref": "#/components/schemas/PresignedAcceptance"
              }
            ]
          },
          "presignedPersonalDataAuth": {
            "oneOf": [
              {
                "type": "null"
              },
              {
                "$ref": "#/components/schemas/PresignedAcceptance"
              }
            ]
          }
        }
      },
      "AddressDto": {
        "required": [
          "address1Line1",
          "address1Line2",
          "address1Line3",
          "address1City",
          "address1StateOrProvince",
          "address1PostalCode"
        ],
        "type": "object",
        "properties": {
          "address1Line1": {
            "type": "string"
          },
          "address1Line2": {
            "type": [
              "null",
              "string"
            ]
          },
          "address1Line3": {
            "type": [
              "null",
              "string"
            ]
          },
          "address1City": {
            "type": "string"
          },
          "address1StateOrProvince": {
            "type": "string"
          },
          "address1PostalCode": {
            "type": "string"
          }
        }
      },
      "AuthTokenResponse": {
        "required": [
          "accessToken",
          "idToken",
          "refreshToken",
          "tokenType",
          "expiresIn"
        ],
        "type": "object",
        "properties": {
          "accessToken": {
            "type": "string"
          },
          "idToken": {
            "type": "string"
          },
          "refreshToken": {
            "type": [
              "null",
              "string"
            ]
          },
          "tokenType": {
            "type": "string"
          },
          "expiresIn": {
            "type": "integer",
            "format": "int32"
          }
        }
      },
      "ConsentDto": {
        "required": [
          "dueDateReminderEmail",
          "generalAccountReminderEmail",
          "promotionalSMS",
          "securityAlertSMS",
          "termsAndConditionsConsentDate"
        ],
        "type": "object",
        "properties": {
          "dueDateReminderEmail": {
            "type": [
              "null",
              "boolean"
            ]
          },
          "generalAccountReminderEmail": {
            "type": [
              "null",
              "boolean"
            ]
          },
          "promotionalSMS": {
            "type": [
              "null",
              "boolean"
            ]
          },
          "securityAlertSMS": {
            "type": [
              "null",
              "boolean"
            ]
          },
          "termsAndConditionsConsentDate": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time"
          }
        }
      },
      "LoanDto": {
        "required": [
          "accountNumber",
          "vin",
          "year",
          "make",
          "model",
          "dealer",
          "amountDue",
          "amountDueDate",
          "amountDueCurrencyCode",
          "previousAmountDue",
          "previousAmountDueDate",
          "previousAmountDueCurrencyCode",
          "totalInvoiceArrearsAmount",
          "totalInvoiceArrearsCurrencyCode",
          "maturityDate",
          "amountFinanced",
          "remainingBalance",
          "remainingMonths",
          "apr",
          "status",
          "loanRelationship"
        ],
        "type": "object",
        "properties": {
          "accountNumber": {
            "type": [
              "null",
              "string"
            ]
          },
          "vin": {
            "type": [
              "null",
              "string"
            ]
          },
          "year": {
            "type": "integer",
            "format": "int32"
          },
          "make": {
            "type": [
              "null",
              "string"
            ]
          },
          "model": {
            "type": [
              "null",
              "string"
            ]
          },
          "dealer": {
            "type": [
              "null",
              "string"
            ]
          },
          "amountDue": {
            "type": [
              "null",
              "number"
            ],
            "format": "double"
          },
          "amountDueDate": {
            "type": [
              "null",
              "string"
            ],
            "format": "date"
          },
          "amountDueCurrencyCode": {
            "type": [
              "null",
              "string"
            ]
          },
          "previousAmountDue": {
            "type": [
              "null",
              "number"
            ],
            "format": "double"
          },
          "previousAmountDueDate": {
            "type": [
              "null",
              "string"
            ],
            "format": "date"
          },
          "previousAmountDueCurrencyCode": {
            "type": [
              "null",
              "string"
            ]
          },
          "totalInvoiceArrearsAmount": {
            "type": [
              "null",
              "number"
            ],
            "format": "double"
          },
          "totalInvoiceArrearsCurrencyCode": {
            "type": [
              "null",
              "string"
            ]
          },
          "maturityDate": {
            "type": [
              "null",
              "string"
            ],
            "format": "date"
          },
          "amountFinanced": {
            "type": [
              "null",
              "number"
            ],
            "format": "double"
          },
          "remainingBalance": {
            "type": [
              "null",
              "number"
            ],
            "format": "double"
          },
          "remainingMonths": {
            "type": [
              "null",
              "integer"
            ],
            "format": "int32"
          },
          "apr": {
            "type": [
              "null",
              "number"
            ],
            "format": "double"
          },
          "status": {
            "type": [
              "null",
              "string"
            ]
          },
          "loanRelationship": {
            "type": [
              "null",
              "array"
            ],
            "items": {
              "$ref": "#/components/schemas/RelationshipType"
            }
          }
        }
      },
      "OtpRequiredResponse": {
        "required": [
          "flowId",
          "challengeChannel",
          "challengeTargetLabel",
          "codeLength"
        ],
        "type": "object",
        "properties": {
          "flowId": {
            "type": "string"
          },
          "challengeChannel": {
            "type": "string"
          },
          "challengeTargetLabel": {
            "type": "string"
          },
          "codeLength": {
            "type": "integer",
            "format": "int32"
          }
        }
      },
      "PaymentDto": {
        "required": [
          "accountNumber",
          "paymentType",
          "dateReceived",
          "inputOn",
          "amount",
          "amountCurrencyCode",
          "paymentMethod",
          "reference",
          "paymentStatus",
          "isMyPayment",
          "paymentNumber"
        ],
        "type": "object",
        "properties": {
          "accountNumber": {
            "type": [
              "null",
              "string"
            ]
          },
          "paymentType": {
            "type": [
              "null",
              "string"
            ]
          },
          "dateReceived": {
            "type": [
              "null",
              "string"
            ],
            "format": "date"
          },
          "inputOn": {
            "type": [
              "null",
              "string"
            ],
            "format": "date"
          },
          "amount": {
            "type": [
              "null",
              "number"
            ],
            "format": "double"
          },
          "amountCurrencyCode": {
            "type": [
              "null",
              "string"
            ]
          },
          "paymentMethod": {
            "type": [
              "null",
              "string"
            ]
          },
          "reference": {
            "type": [
              "null",
              "string"
            ]
          },
          "paymentStatus": {
            "type": [
              "null",
              "string"
            ]
          },
          "isMyPayment": {
            "type": "boolean"
          },
          "paymentNumber": {
            "type": "integer",
            "format": "int32"
          }
        }
      },
      "PhoneDto": {
        "required": [
          "phoneType",
          "phone"
        ],
        "type": "object",
        "properties": {
          "phoneType": {
            "$ref": "#/components/schemas/PhoneType"
          },
          "phone": {
            "type": "string"
          }
        }
      },
      "PhoneType": {
        "enum": [
          "Landline",
          "Mobile"
        ]
      },
      "PresignedAcceptance": {
        "required": [
          "acceptanceToken",
          "permalink",
          "type"
        ],
        "type": "object",
        "properties": {
          "acceptanceToken": {
            "type": [
              "null",
              "string"
            ]
          },
          "permalink": {
            "type": [
              "null",
              "string"
            ]
          },
          "type": {
            "type": [
              "null",
              "string"
            ]
          }
        }
      },
      "ProblemDetails": {
        "type": "object",
        "properties": {
          "type": {
            "type": [
              "null",
              "string"
            ]
          },
          "title": {
            "type": [
              "null",
              "string"
            ]
          },
          "status": {
            "type": [
              "null",
              "integer"
            ],
            "format": "int32"
          },
          "detail": {
            "type": [
              "null",
              "string"
            ]
          },
          "instance": {
            "type": [
              "null",
              "string"
            ]
          }
        }
      },
      "PseBank": {
        "required": [
          "financialInstitutionCode",
          "financialInstitutionName"
        ],
        "type": "object",
        "properties": {
          "financialInstitutionCode": {
            "type": [
              "null",
              "string"
            ]
          },
          "financialInstitutionName": {
            "type": [
              "null",
              "string"
            ]
          }
        }
      },
      "RefreshTokenRequest": {
        "required": [
          "refreshToken"
        ],
        "type": "object",
        "properties": {
          "refreshToken": {
            "type": "string",
            "description": "The refresh token issued during authentication"
          }
        }
      },
      "RelationshipType": {
        "enum": [
          "INVOICE_CUSTOMER",
          "EXPOSURE_CUSTOMER",
          "DEALER",
          "SUPPLIER",
          "REPURCHASER",
          "GUARANTOR",
          "HEAD_LESSOR"
        ]
      },
      "ResetPasswordOtpResponse": {
        "required": [
          "flowId"
        ],
        "type": "object",
        "properties": {
          "flowId": {
            "type": "string"
          }
        }
      },
      "ResetPasswordStartRequest": {
        "required": [
          "email"
        ],
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "description": "User's email address"
          }
        }
      },
      "ResetPasswordSubmitNewPasswordRequest": {
        "required": [
          "flowId",
          "newPassword"
        ],
        "type": "object",
        "properties": {
          "flowId": {
            "type": "string",
            "description": "The flow identifier returned from a previous step"
          },
          "newPassword": {
            "minLength": 8,
            "type": "string",
            "description": "The new password"
          }
        }
      },
      "ResetPasswordSubmitOtpRequest": {
        "required": [
          "flowId",
          "otp"
        ],
        "type": "object",
        "properties": {
          "flowId": {
            "type": "string",
            "description": "The flow identifier returned from a previous step"
          },
          "otp": {
            "maxLength": 8,
            "minLength": 8,
            "type": "string",
            "description": "The one-time passcode sent to the user"
          }
        }
      },
      "ResetPasswordSuccessResponse": {
        "type": "object",
        "properties": {
          "message": {
            "type": "string",
            "default": "Password reset successful"
          }
        }
      },
      "SignInRequest": {
        "required": [
          "email",
          "password"
        ],
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "description": "User's email address"
          },
          "password": {
            "minLength": 8,
            "type": "string",
            "description": "User's password"
          }
        }
      },
      "SignUpRequest": {
        "required": [
          "email",
          "password"
        ],
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "description": "User's email address"
          },
          "password": {
            "minLength": 8,
            "type": "string",
            "description": "User's password"
          }
        }
      },
      "SignUpSuccessResponse": {
        "type": "object",
        "properties": {
          "message": {
            "type": "string",
            "default": "Sign-up successful"
          }
        }
      },
      "Statement": {
        "required": [
          "uuid",
          "description",
          "attachmentTypeCode",
          "fileMimeType",
          "fileName",
          "archivedDateTime",
          "sasUrl"
        ],
        "type": "object",
        "properties": {
          "uuid": {
            "type": "string",
            "format": "uuid"
          },
          "description": {
            "type": [
              "null",
              "string"
            ]
          },
          "attachmentTypeCode": {
            "type": [
              "null",
              "string"
            ]
          },
          "fileMimeType": {
            "type": [
              "null",
              "string"
            ]
          },
          "fileName": {
            "type": [
              "null",
              "string"
            ]
          },
          "archivedDateTime": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time"
          },
          "sasUrl": {
            "type": [
              "null",
              "string"
            ]
          }
        }
      },
      "StatementsResponse": {
        "required": [
          "statements"
        ],
        "type": "object",
        "properties": {
          "statements": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Statement"
            }
          }
        }
      },
      "SubmitOtpRequest": {
        "required": [
          "flowId",
          "otp"
        ],
        "type": "object",
        "properties": {
          "flowId": {
            "type": "string",
            "description": "The flow identifier returned from a previous step"
          },
          "otp": {
            "maxLength": 8,
            "minLength": 8,
            "type": "string",
            "description": "The one-time passcode sent to the user"
          }
        }
      },
      "SubmitPaymentRequest": {
        "required": [
          "accountNumber",
          "amountInCents",
          "currency",
          "acceptanceToken",
          "acceptPersonalAuth",
          "userLegalIdType",
          "userLegalId",
          "financialInstitutionCode",
          "phoneNumber",
          "fullName"
        ],
        "type": "object",
        "properties": {
          "accountNumber": {
            "type": "string"
          },
          "amountInCents": {
            "type": "integer",
            "format": "int64"
          },
          "currency": {
            "type": "string"
          },
          "acceptanceToken": {
            "type": "string"
          },
          "acceptPersonalAuth": {
            "type": "string"
          },
          "userLegalIdType": {
            "type": "string"
          },
          "userLegalId": {
            "type": "string"
          },
          "financialInstitutionCode": {
            "type": "string"
          },
          "phoneNumber": {
            "type": "string"
          },
          "fullName": {
            "type": "string"
          }
        }
      },
      "TermsAndConditionsConsentRequest": {
        "required": [
          "termsAndConditionsConsent"
        ],
        "type": "object",
        "properties": {
          "termsAndConditionsConsent": {
            "type": "boolean"
          }
        }
      },
      "TransactionPaymentMethod": {
        "required": [
          "type",
          "extra"
        ],
        "type": "object",
        "properties": {
          "type": {
            "type": [
              "null",
              "string"
            ]
          },
          "extra": {
            "oneOf": [
              {
                "type": "null"
              },
              {
                "$ref": "#/components/schemas/TransactionPaymentMethodExtra"
              }
            ]
          }
        }
      },
      "TransactionPaymentMethodExtra": {
        "required": [
          "asyncPaymentUrl"
        ],
        "type": "object",
        "properties": {
          "asyncPaymentUrl": {
            "type": [
              "null",
              "string"
            ]
          }
        }
      },
      "TransactionResponse": {
        "required": [
          "id",
          "reference",
          "status",
          "statusMessage",
          "amountInCents",
          "currency",
          "paymentMethodType",
          "paymentMethod"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": [
              "null",
              "string"
            ]
          },
          "reference": {
            "type": [
              "null",
              "string"
            ]
          },
          "status": {
            "type": [
              "null",
              "string"
            ]
          },
          "statusMessage": {
            "type": [
              "null",
              "string"
            ]
          },
          "amountInCents": {
            "type": [
              "null",
              "integer"
            ],
            "format": "int64"
          },
          "currency": {
            "type": [
              "null",
              "string"
            ]
          },
          "paymentMethodType": {
            "type": [
              "null",
              "string"
            ]
          },
          "paymentMethod": {
            "oneOf": [
              {
                "type": "null"
              },
              {
                "$ref": "#/components/schemas/TransactionPaymentMethod"
              }
            ]
          }
        }
      },
      "UserAddress": {
        "required": [
          "addressRole",
          "line1",
          "line2",
          "line3",
          "line4",
          "line5",
          "line6",
          "city",
          "stateOrProvince",
          "postalCode",
          "country",
          "isPrimary"
        ],
        "type": "object",
        "properties": {
          "addressRole": {
            "type": [
              "null",
              "string"
            ]
          },
          "line1": {
            "type": [
              "null",
              "string"
            ]
          },
          "line2": {
            "type": [
              "null",
              "string"
            ]
          },
          "line3": {
            "type": [
              "null",
              "string"
            ]
          },
          "line4": {
            "type": [
              "null",
              "string"
            ]
          },
          "line5": {
            "type": [
              "null",
              "string"
            ]
          },
          "line6": {
            "type": [
              "null",
              "string"
            ]
          },
          "city": {
            "type": [
              "null",
              "string"
            ]
          },
          "stateOrProvince": {
            "type": [
              "null",
              "string"
            ]
          },
          "postalCode": {
            "type": [
              "null",
              "string"
            ]
          },
          "country": {
            "type": [
              "null",
              "string"
            ]
          },
          "isPrimary": {
            "type": "boolean"
          }
        }
      },
      "UserContactMethod": {
        "required": [
          "mechanismType",
          "value",
          "isPrimary"
        ],
        "type": "object",
        "properties": {
          "mechanismType": {
            "type": [
              "null",
              "string"
            ]
          },
          "value": {
            "type": [
              "null",
              "string"
            ]
          },
          "isPrimary": {
            "type": "boolean"
          }
        }
      },
      "UserDto": {
        "required": [
          "displayName",
          "firstName",
          "middleName",
          "lastName",
          "title",
          "suffix",
          "addresses",
          "contactMethods"
        ],
        "type": "object",
        "properties": {
          "displayName": {
            "type": [
              "null",
              "string"
            ]
          },
          "firstName": {
            "type": [
              "null",
              "string"
            ]
          },
          "middleName": {
            "type": [
              "null",
              "string"
            ]
          },
          "lastName": {
            "type": [
              "null",
              "string"
            ]
          },
          "title": {
            "type": [
              "null",
              "string"
            ]
          },
          "suffix": {
            "type": [
              "null",
              "string"
            ]
          },
          "addresses": {
            "type": [
              "null",
              "array"
            ],
            "items": {
              "$ref": "#/components/schemas/UserAddress"
            }
          },
          "contactMethods": {
            "type": [
              "null",
              "array"
            ],
            "items": {
              "$ref": "#/components/schemas/UserContactMethod"
            }
          }
        }
      },
      "ValidateAccountRequest": {
        "required": [
          "taxId",
          "vin",
          "accountNumber"
        ],
        "type": "object",
        "properties": {
          "taxId": {
            "type": "string"
          },
          "vin": {
            "type": [
              "null",
              "string"
            ]
          },
          "accountNumber": {
            "type": [
              "null",
              "string"
            ]
          }
        }
      },
      "ValidateResponse": {
        "required": [
          "email"
        ],
        "type": "object",
        "properties": {
          "email": {
            "type": [
              "null",
              "string"
            ]
          }
        }
      }
    },
    "securitySchemes": {
      "Bearer": {
        "type": "http",
        "description": "Enter your JWT access token",
        "scheme": "bearer",
        "bearerFormat": "JWT"
      }
    }
  },
  "tags": [
    {
      "name": "Wompi"
    },
    {
      "name": "User"
    },
    {
      "name": "Statements"
    },
    {
      "name": "Payments"
    },
    {
      "name": "Loans"
    },
    {
      "name": "HealthCheck"
    },
    {
      "name": "Documents"
    },
    {
      "name": "Consents"
    },
    {
      "name": "Cases"
    },
    {
      "name": "Auth"
    },
    {
      "name": "Accounts"
    },
    {
      "name": "TFS.Api"
    }
  ]
}