swagger: "2.0"
schemes:
  - https
  - http
host: demo.uat.naviplancentral.com
basePath: /factfinder
info:
  contact:
    x-twitter: AdvicentFP
  description: An API for accessing the NaviPlan Fact Finder.
  title: Advicent.FactFinderService
  version: v1
  x-apisguru-categories:
    - financial
  x-logo:
    url: https://twitter.com/Advicent/profile_image?size=original
  x-origin:
    - format: swagger
      url: https://demo.uat.naviplancentral.com/factfinder/swagger/docs/v1
      version: "2.0"
    - format: swagger
      url: https://demo.uat.naviplancentral.com/factfinder/swagger/docs/v1
      version: "2.0"
  x-providerName: naviplancentral.com
  x-serviceName: factfinder
paths:
  /api/AccountTypes:
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves all Account Types for the specified country.<br />\r

        \              Purpose: Provides access to the Account Types including id and type description."
      operationId: AccountTypes_GetByCountry
      parameters:
        - description: The country used to filter Account Types
          enum:
            - UnitedStates
            - Canada
          in: query
          name: country
          required: true
          type: string
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/AccountTypesModel"
        "400":
          description: The request is invalid.
        "404":
          description: Account Type not found
      tags:
        - AccountTypes
  "/api/AccountTypes/{id}":
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves all Account Types for the specified id.<br />\r

        \              Purpose: Provides access to the Account Types including id and type description."
      operationId: AccountTypes_GetById
      parameters:
        - description: The ID of Account Type used to retreive the Account Type information
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/AccountTypeModel"
        "400":
          description: The request is invalid.
        "404":
          description: Account Type not found
      tags:
        - AccountTypes
  /api/Accounts:
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves all Accounts for the specified Fact Finder ID and/or external source ID.<br />\r

        \              Purpose: Provides access to the Account information including description and market value."
      operationId: Accounts_GetAccountsByFactFinderIdByFactfinderidExternalsourceid
      parameters:
        - description: The ID of the Fact Finder used to retrieve Accounts
          format: int32
          in: query
          name: factFinderId
          required: true
          type: integer
        - description: The external ID used to filter Accounts
          in: query
          name: externalSourceId
          required: false
          type: string
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/AccountsModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Account data access.
        "403":
          description: Request is restricted for access to Account.
        "404":
          description: Account not found.
      tags:
        - Accounts
    post:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "Description: The operation creates an Account.<br />\r

        \              Purpose: Allows for creation of Accounts on a Fact Finder."
      operationId: Accounts_PostByModel
      parameters:
        - description: The Account to be added to the Fact Finder
          in: body
          name: model
          required: true
          schema:
            $ref: "#/definitions/AccountModel"
      produces:
        - application/json
        - text/json
      responses:
        "201":
          description: Created
          schema:
            $ref: "#/definitions/AccountWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Account data access.
        "403":
          description: Request is restricted for access to Account.
        "404":
          description: Account not found.
      tags:
        - Accounts
  "/api/Accounts/{accountId}/Holdings":
    get:
      consumes: []
      deprecated: false
      description: Retrieves all holdings in the specified Account.
      operationId: Accounts_GetAccountHoldingsByAccountid
      parameters:
        - description: The ID of the Account used to retrieve the Account Holding data
          format: int32
          in: path
          name: accountId
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/AccountHoldingsModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Account data access.
        "403":
          description: Request is restricted for access to Account.
        "404":
          description: Account not found.
      tags:
        - Accounts
    post:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: Creates a holding and adds it to an existing Account.
      operationId: Accounts_PostAccountHoldingByAccountidModel
      parameters:
        - description: The existing Account ID used to identify which Account to add the holding to
          format: int32
          in: path
          name: accountId
          required: true
          type: integer
        - description: The holding data
          in: body
          name: model
          required: true
          schema:
            $ref: "#/definitions/AccountHoldingModel"
      produces:
        - application/json
        - text/json
      responses:
        "201":
          description: Created
          schema:
            $ref: "#/definitions/AccountHoldingWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Account data access.
        "403":
          description: Request is restricted for access to Account.
        "404":
          description: Account not found.
      tags:
        - Accounts
    put:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: Updates all holdings associated with an account
      operationId: Accounts_PutHoldingsByAccountidHoldings
      parameters:
        - description: The account with the holding to be updated
          format: int32
          in: path
          name: accountId
          required: true
          type: integer
        - description: The list of holdings for an account
          in: body
          name: holdings
          required: true
          schema:
            $ref: "#/definitions/AccountHoldingsWithoutIdModel"
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/AccountHoldingsModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Account data access.
        "403":
          description: Request is restricted for access to Account.
        "404":
          description: Account not found.
      tags:
        - Accounts
  "/api/Accounts/{accountId}/Holdings/{id}":
    delete:
      consumes: []
      deprecated: false
      description: "Description: This operation deletes a single Account Holding for the specified Account Holding ID and Account ID.<br />\r

        \              Purpose: Provides the ability to remove individual holdings from a specified Account."
      operationId: Accounts_DeleteAccountHoldingByAccountidId
      parameters:
        - description: The ID of the Account used to retrieve the Account data that the specified holding belongs to.
          format: int32
          in: path
          name: accountId
          required: true
          type: integer
        - description: The ID of the Account Holding used to delete the Account Holding
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "204":
          description: Deleted
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Account data access.
        "403":
          description: Request is restricted for access to Account.
        "404":
          description: Account not found.
      tags:
        - Accounts
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves a single Account Holding for the specified Account Holding ID and Account ID.<br />\r

        \              Purpose: Provides access to the Account Holding information including description and market value."
      operationId: Accounts_GetAccountHoldingByAccountidId
      parameters:
        - description: The ID of the Account used to retrieve the Account Holding data
          format: int32
          in: path
          name: accountId
          required: true
          type: integer
        - description: The ID of the Account Holding used to retrieve the Account Holding data
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/AccountHoldingWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Account data access.
        "403":
          description: Request is restricted for access to Account.
        "404":
          description: Account not found.
      tags:
        - Accounts
    put:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: Updates a holding associated with an account
      operationId: Accounts_PutByAccountidIdHolding
      parameters:
        - description: The account with the holding to be updated
          format: int32
          in: path
          name: accountId
          required: true
          type: integer
        - description: The id of the holding to update
          format: int32
          in: path
          name: id
          required: true
          type: integer
        - description: The holding values used to update the current holding
          in: body
          name: holding
          required: true
          schema:
            $ref: "#/definitions/AccountHoldingModel"
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/AccountHoldingModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Account data access.
        "403":
          description: Request is restricted for access to Account.
        "404":
          description: Account not found.
      tags:
        - Accounts
  "/api/Accounts/{accountId}/SavingsStrategies":
    delete:
      consumes: []
      deprecated: false
      description: Deletes all savings strategies tied to an account
      operationId: Accounts_DeleteSavingsStrategiesByAccountid
      parameters:
        - description: Id of the account that holds the savings strategies
          format: int32
          in: path
          name: accountId
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "204":
          description: Deleted
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Account data access.
        "403":
          description: Request is restricted for access to Account.
        "404":
          description: Account not found.
      tags:
        - Accounts
    get:
      consumes: []
      deprecated: false
      description: Get all of the savings strategies for a specific account
      operationId: Accounts_GetSavingsStrategiesByAccountIdByAccountid
      parameters:
        - description: The id of the account to retrieve the savings strategies from
          format: int32
          in: path
          name: accountId
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/SavingsStrategiesModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Account data access.
        "403":
          description: Request is restricted for access to Account.
        "404":
          description: Account not found.
      tags:
        - Accounts
    post:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: Creates a savings strategy on a specific account
      operationId: Accounts_PostSavingsStrategyByAccountidSavingsstrategy
      parameters:
        - description: Id of the account to create a savings strategy for
          format: int32
          in: path
          name: accountId
          required: true
          type: integer
        - description: Values for the strategy to be created
          in: body
          name: savingsStrategy
          required: true
          schema:
            $ref: "#/definitions/SavingsStrategyModel"
      produces:
        - application/json
        - text/json
      responses:
        "201":
          description: Success
          schema:
            $ref: "#/definitions/SavingsStrategyWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Account data access.
        "403":
          description: Request is restricted for access to Account.
        "404":
          description: Account not found.
      tags:
        - Accounts
  "/api/Accounts/{accountId}/SavingsStrategies/{id}":
    delete:
      consumes: []
      deprecated: false
      description: Deletes a specific savings strategy
      operationId: Accounts_DeleteSavingsStrategyByAccountidId
      parameters:
        - description: Id of the account that holds the savings strategy
          format: int32
          in: path
          name: accountId
          required: true
          type: integer
        - description: Id of the savings strategy to be deleted
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "204":
          description: Deleted
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Account data access.
        "403":
          description: Request is restricted for access to Account.
        "404":
          description: Account not found.
      tags:
        - Accounts
    get:
      consumes: []
      deprecated: false
      description: Get a specific savings strategy for an account
      operationId: Accounts_GetSavingsStrategiesByAccountIdAndSavingsStrategyIdByAccountidId
      parameters:
        - description: The id of the account to retrieve the savings strategies from
          format: int32
          in: path
          name: accountId
          required: true
          type: integer
        - description: The id of the savings strategy to get
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/SavingsStrategyWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Account data access.
        "403":
          description: Request is restricted for access to Account.
        "404":
          description: Account not found.
      tags:
        - Accounts
    put:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: Updates a specific savings strategy
      operationId: Accounts_PutSavingsStrategyByAccountidIdSavingsstrategy
      parameters:
        - description: Id of the account that holds the savings strategy
          format: int32
          in: path
          name: accountId
          required: true
          type: integer
        - description: Id of the savings strategy to update
          format: int32
          in: path
          name: id
          required: true
          type: integer
        - description: The model with which to update the savings strategy with
          in: body
          name: savingsStrategy
          required: true
          schema:
            $ref: "#/definitions/SavingsStrategyModel"
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/SavingsStrategyWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Account data access.
        "403":
          description: Request is restricted for access to Account.
        "404":
          description: Account not found.
      tags:
        - Accounts
  "/api/Accounts/{id}":
    delete:
      consumes: []
      deprecated: false
      description: "Description: The operation removes an Account tied to a Fact Finder.<br />\r

        \              Purpose: Allows for removal of an Account from a Fact Finder."
      operationId: Accounts_DeleteAccountById
      parameters:
        - description: The Account ID used to identify which Account to remove
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "204":
          description: Deleted
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Account data access.
        "403":
          description: Request is restricted for access to Account.
        "404":
          description: Account not found.
      tags:
        - Accounts
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves a single Account for the specified Account ID.<br />\r

        \              Purpose: Provides access to the Account information including description and market value."
      operationId: Accounts_GetById
      parameters:
        - description: The ID of the Account used to retrieve the Account data
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/AccountWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Account data access.
        "403":
          description: Request is restricted for access to Account.
        "404":
          description: Account not found.
      tags:
        - Accounts
    put:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "Description: The operation updates an Account, deletes associated saving strategies if the account type changes.<br />\r

        \              Purpose: Allows for complete replacement of an Account on a Fact Finder."
      operationId: Accounts_PutByIdModel
      parameters:
        - description: The existing Account ID used to identify which Account to update
          format: int32
          in: path
          name: id
          required: true
          type: integer
        - description: The Account to be updated on a Fact Finder
          in: body
          name: model
          required: true
          schema:
            $ref: "#/definitions/AccountModel"
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/AccountWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Account data access.
        "403":
          description: Request is restricted for access to Account.
        "404":
          description: Account not found.
      tags:
        - Accounts
  /api/Clients:
    post:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "Description: This operation submits the Fact Finder data to an external system.<br />\r

        \              Purpose: Allows Fact Finder data to be persisted in another system for that system's consumption and use."
      operationId: Clients_PostByModel
      parameters:
        - in: body
          name: model
          required: true
          schema:
            $ref: "#/definitions/ClientsModel"
      produces:
        - application/json
        - text/json
      responses:
        "201":
          description: Created
          schema:
            $ref: "#/definitions/ClientModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Client data access.
        "403":
          description: Request is restricted for access to Client.
      tags:
        - Clients
  /api/CriticalIllnessInsurancePolicies:
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves all Critical Illness Insurance Policies for the specified Fact Finder ID.<br />\r

        \              Purpose: Provides access to the Critical Illness Insurance Policies including description and policy type."
      operationId: CriticalIllnessInsurancePolicies_GetCriticalIllnessInsurancePoliciesByFactFinderIdByFactfinderid
      parameters:
        - description: The ID of the Fact Finder used to retrieve Critical Illness Insurance Policies
          format: int32
          in: query
          name: factFinderId
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/CriticalIllnessInsurancePoliciesModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Critical Illness Insurance Policy data access.
        "403":
          description: Request is restricted for access to Critical Illness Insurance Policy.
        "404":
          description: Critical Illness Insurance Policy not found.
      tags:
        - CriticalIllnessInsurancePolicies
    post:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "Description: The operation creates a Critical Illness Insurance Policy.<br />\r

        \              Purpose: Allows for creation of Critical Illness Insurance Policies on a Fact Finder."
      operationId: CriticalIllnessInsurancePolicies_PostByModel
      parameters:
        - description: The Critical Illness Insurance Policy to be added to the Fact Finder
          in: body
          name: model
          required: true
          schema:
            $ref: "#/definitions/CriticalIllnessInsurancePolicyModel"
      produces:
        - application/json
        - text/json
      responses:
        "201":
          description: Created
          schema:
            $ref: "#/definitions/CriticalIllnessInsurancePolicyWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Critical Illness Insurance Policy data access.
        "403":
          description: Request is restricted for access to Critical Illness Insurance Policy.
        "404":
          description: Critical Illness Insurance Policy not found.
      tags:
        - CriticalIllnessInsurancePolicies
  "/api/CriticalIllnessInsurancePolicies/{id}":
    delete:
      consumes: []
      deprecated: false
      description: "Description: The operation removes a Critical Illness Insurance Policy tied to a Fact Finder.<br />\r

        \              Purpose: Allows for removal of a Critical Illness Insurance Policy from a Fact Finder."
      operationId: CriticalIllnessInsurancePolicies_DeleteById
      parameters:
        - description: The Critical Illness Insurance Policy ID used to identify which Critical Illness Insurance Policy to remove
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "204":
          description: Deleted
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Critical Illness Insurance Policy data access.
        "403":
          description: Request is restricted for access to Critical Illness Insurance Policy.
        "404":
          description: Critical Illness Insurance Policy not found.
      tags:
        - CriticalIllnessInsurancePolicies
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves a single Critical Illness Insurance Policy for the specified Critical Illness Insurance Policy ID.<br />\r

        \              Purpose: Provides access to the Critical Illness Insurance Policy including description and policy type."
      operationId: CriticalIllnessInsurancePolicies_GetById
      parameters:
        - description: The ID of the Critical Illness Insurance Policy used to retreive the Critical Illness Insurance Policy
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/CriticalIllnessInsurancePolicyWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Critical Illness Insurance Policy data access.
        "403":
          description: Request is restricted for access to Critical Illness Insurance Policy.
        "404":
          description: Critical Illness Insurance Policy not found.
      tags:
        - CriticalIllnessInsurancePolicies
    put:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "Description: The operation updates a Critical Illness Insurance Policy.<br />\r

        \              Purpose: Allows for complete replacement of a Critical Illness Insurance Policy on a Fact Finder."
      operationId: CriticalIllnessInsurancePolicies_PutByIdModel
      parameters:
        - description: The existing Critical Illness Insurance Policy ID used to identify which Critical Illness Insurance Policy to update
          format: int32
          in: path
          name: id
          required: true
          type: integer
        - description: The Critical Illness Insurance Policy to be updated on a Fact Finder
          in: body
          name: model
          required: true
          schema:
            $ref: "#/definitions/CriticalIllnessInsurancePolicyModel"
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/CriticalIllnessInsurancePolicyWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Critical Illness Insurance Policy data access.
        "403":
          description: Request is restricted for access to Critical Illness Insurance Policy.
        "404":
          description: Critical Illness Insurance Policy not found.
      tags:
        - CriticalIllnessInsurancePolicies
  /api/CriticalIllnessInsurancePolicyTypes:
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves all Critical Illness Insurance Policy Types for the specified country.<br />\r

        \              Purpose: Provides access to the Critical Illness Insurance Policy Types including id and type description."
      operationId: CriticalIllnessInsurancePolicyTypes_GetByCountry
      parameters:
        - description: The country used to filter Critical Illness Insurance Policy Types
          enum:
            - UnitedStates
            - Canada
          in: query
          name: country
          required: true
          type: string
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/CriticalIllnessInsurancePolicyTypesModel"
        "400":
          description: The request is invalid.
        "404":
          description: Critical Illness Insurance Policy Type not found.
      tags:
        - CriticalIllnessInsurancePolicyTypes
  "/api/CriticalIllnessInsurancePolicyTypes/{id}":
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves the Critical Illness Insurance Policy Type for the specified id.<br />\r

        \              Purpose: Provides access to the Critical Illness Insurance Policy Types including id and type description."
      operationId: CriticalIllnessInsurancePolicyTypes_GetById
      parameters:
        - description: The ID of Critical Illness Insurance Policy Type used to retreive the Critical Illness Insurance Policy Type information
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/CriticalIllnessInsurancePolicyTypeModel"
        "400":
          description: The request is invalid.
        "404":
          description: Critical Illness Insurance Policy Type not found.
      tags:
        - CriticalIllnessInsurancePolicyTypes
  /api/DefinedBenefitPensions:
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves all Defined Benefit Pensions for the specified Fact Finder ID.<br />\r

        \              Purpose: Provides access to the Defined Benefit Pensions including description and start date."
      operationId: DefinedBenefitPensions_GetDefinedBenefitPensionsByFactFinderIdByFactfinderid
      parameters:
        - description: The ID of the Fact Finder used to retrieve Defined Benefit Pensions
          format: int32
          in: query
          name: factFinderId
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/DefinedBenefitPensionsModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Defined Benefit Pension data access.
        "403":
          description: Request is restricted for access to Defined Benefit Pension.
        "404":
          description: Defined Benefit Pension not found.
      tags:
        - DefinedBenefitPensions
    post:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "Description: The operation creates a Defined Benefit Pension.<br />\r

        \              Purpose: Allows for creation of Defined Benefit Pensions on a Fact Finder."
      operationId: DefinedBenefitPensions_PostByModel
      parameters:
        - description: The Defined Benefit Pension to be added to the Fact Finder
          in: body
          name: model
          required: true
          schema:
            $ref: "#/definitions/DefinedBenefitPensionModel"
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: OK
          schema:
            $ref: "#/definitions/Object"
        "201":
          description: Created
          schema:
            $ref: "#/definitions/DefinedBenefitPensionWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Defined Benefit Pension data access.
        "403":
          description: Request is restricted for access to Defined Benefit Pension.
        "404":
          description: Defined Benefit Pension not found.
      tags:
        - DefinedBenefitPensions
  "/api/DefinedBenefitPensions/{id}":
    delete:
      consumes: []
      deprecated: false
      description: "Description: The operation removes a Defined Benefit Pension tied to a Fact Finder.<br />\r

        \              Purpose: Allows for removal of a Defined Benefit Pension from a Fact Finder."
      operationId: DefinedBenefitPensions_DeleteDefinedBenefitPensionById
      parameters:
        - description: The Defined Benefit Pension ID used to identify which Defined Benefit Pension to remove
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: OK
          schema:
            $ref: "#/definitions/Object"
        "204":
          description: Deleted
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Defined Benefit Pension data access.
        "403":
          description: Request is restricted for access to Defined Benefit Pension.
        "404":
          description: Defined Benefit Pension not found.
      tags:
        - DefinedBenefitPensions
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves a single Defined Benefit Pension for the specified Defined Benefit Pension ID.<br />\r

        \              Purpose: Provides access to the Defined Benefit Pension including description and start date."
      operationId: DefinedBenefitPensions_GetById
      parameters:
        - description: The ID of the Defined Benefit Pension used to retreive the Defined Benefit Pension
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/DefinedBenefitPensionWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Defined Benefit Pension data access.
        "403":
          description: Request is restricted for access to Defined Benefit Pension.
        "404":
          description: Defined Benefit Pension not found.
      tags:
        - DefinedBenefitPensions
    put:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "Description: The operation updates a Defined Benefit Pension.<br />\r

        \              Purpose: Allows for complete replacement of a Defined Benefit Pension on a Fact Finder."
      operationId: DefinedBenefitPensions_PutDefinedBenefitPensionByIdModel
      parameters:
        - description: The existing Defined Benefit Pension ID used to identify which Defined Benefit Pension to update
          format: int32
          in: path
          name: id
          required: true
          type: integer
        - description: The Defined Benefit Pension to be updated on a Fact Finder
          in: body
          name: model
          required: true
          schema:
            $ref: "#/definitions/DefinedBenefitPensionModel"
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/DefinedBenefitPensionModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Defined Benefit Pension data access.
        "403":
          description: Request is restricted for access to Defined Benefit Pension.
        "404":
          description: Defined Benefit Pension not found.
      tags:
        - DefinedBenefitPensions
  /api/Demographics:
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves all Demographic information for the specified Fact Finder ID.<br />\r

        \              Purpose: Provides access to the Demographic information including city and state."
      operationId: Demographics_GetDemographicsByFactFinderIdByFactfinderid
      parameters:
        - description: The ID of the Fact Finder used to retrieve Demographic information
          format: int32
          in: query
          name: factFinderId
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/DemographicsWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Demographic information data access.
        "403":
          description: Request is restricted for access to Demographic information.
        "404":
          description: Demographic information not found.
      tags:
        - Demographics
    post:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "Description: The operation creates Demographic information.<br />\r

        \              Purpose: Allows for creation of Demographic information on a Fact Finder."
      operationId: Demographics_PostByModel
      parameters:
        - description: The Demographic information to be added to the Fact Finder
          in: body
          name: model
          required: true
          schema:
            $ref: "#/definitions/DemographicsModel"
      produces:
        - application/json
        - text/json
      responses:
        "201":
          description: Created
          schema:
            $ref: "#/definitions/DemographicsWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Demographic information data access.
        "403":
          description: Request is restricted for access to Demographic information.
        "404":
          description: Demographic information not found.
      tags:
        - Demographics
  "/api/Demographics/{demographicId}/Dependents":
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves all Dependents for the specified Demographic information ID.<br />\r

        \              Purpose: Provides access to the Dependents including first and last name."
      operationId: Demographics_GetDependentsByDemographicid
      parameters:
        - description: The ID of the Demographic information used to retrieve Dependents
          format: int32
          in: path
          name: demographicId
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/DemographicsDependentsModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Demographic information data access.
        "403":
          description: Request is restricted for access to Demographic information.
        "404":
          description: Demographic information not found.
      tags:
        - Demographics
    post:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "Description: The operation creates a Dependent.<br />\r

        \              Purpose: Allows for creation of Dependents on a Fact Finder."
      operationId: Demographics_PostByDemographicidModel
      parameters:
        - description: The ID of the Demographic information to add the Dependent to
          format: int32
          in: path
          name: demographicId
          required: true
          type: integer
        - description: The Dependent to be added to the Fact Finder
          in: body
          name: model
          required: true
          schema:
            $ref: "#/definitions/DemographicsDependentModel"
      produces:
        - application/json
        - text/json
      responses:
        "201":
          description: Created
          schema:
            $ref: "#/definitions/DemographicsDependentWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Dependent information data access.
        "403":
          description: Request is restricted for access to Dependent information.
        "404":
          description: Dependent information not found.
        "409":
          description: The request cannot be completed.
      tags:
        - Demographics
  "/api/Demographics/{demographicId}/Dependents/{id}":
    delete:
      consumes: []
      deprecated: false
      description: "Description: The operation removes a Dependent tied to a Fact Finder.<br />\r

        \              Purpose: Allows for removal of a Dependent from a Fact Finder."
      operationId: Demographics_DeleteDependentByDemographicidId
      parameters:
        - description: The ID of the Demographic information used to identify which Dependent to remove
          format: int32
          in: path
          name: demographicId
          required: true
          type: integer
        - description: The Dependent ID used to identify which Dependent to remove
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "204":
          description: Deleted
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Dependent information data access.
        "403":
          description: Request is restricted for access to Dependent information.
        "404":
          description: Dependent information not found.
      tags:
        - Demographics
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves a single Dependent for the specified Dependent ID.<br />\r

        \              Purpose: Provides access to the Dependent including first and last name."
      operationId: Demographics_GetDependentByDemographicidId
      parameters:
        - description: The ID of the Demographic information used to retrieve Dependents
          format: int32
          in: path
          name: demographicId
          required: true
          type: integer
        - description: The ID of the Dependent used to retreive the Dependent
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/DemographicsDependentWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Demographic information data access.
        "403":
          description: Request is restricted for access to Demographic information.
        "404":
          description: Demographic information not found.
      tags:
        - Demographics
    put:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "Description: The operation updates a Dependent.<br />\r

        \              Purpose: Allows for complete replacement of a Dependent on a Fact Finder."
      operationId: Demographics_PutByDemographicidIdModel
      parameters:
        - description: The ID of the Demographic information used to identify which Dependent to update
          format: int32
          in: path
          name: demographicId
          required: true
          type: integer
        - description: The existing Dependent ID used to identify which Dependent to update
          format: int32
          in: path
          name: id
          required: true
          type: integer
        - description: The Dependent to be updated on a Fact Finder
          in: body
          name: model
          required: true
          schema:
            $ref: "#/definitions/DemographicsDependentModel"
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/DemographicsDependentWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Dependent information data access.
        "403":
          description: Request is restricted for access to Dependent information.
        "404":
          description: Dependent information not found.
      tags:
        - Demographics
  "/api/Demographics/{id}":
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves Demographic information for the specified Demographic information ID.<br />\r

        \              Purpose: Provides access to the Demographic information including city and state."
      operationId: Demographics_GetById
      parameters:
        - description: The ID of the Demographic information used to retreive the Demographic information
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/DemographicsWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Demographic information data access.
        "403":
          description: Request is restricted for access to Demographic information.
        "404":
          description: Demographic information not found.
      tags:
        - Demographics
    put:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "Description: The operation updates Demographic information.<br />\r

        \              Purpose: Allows for complete replacement of Demographic information on a Fact Finder."
      operationId: Demographics_PutByIdModel
      parameters:
        - description: The existing Demographic information ID used to identify which Demographic information to update
          format: int32
          in: path
          name: id
          required: true
          type: integer
        - description: The Demographic information to be updated on a Fact Finder
          in: body
          name: model
          required: true
          schema:
            $ref: "#/definitions/DemographicsModel"
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/DemographicsWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Demographic information data access.
        "403":
          description: Request is restricted for access to Demographic information.
        "404":
          description: Demographic information not found.
        "409":
          description: The request cannot be completed.
      tags:
        - Demographics
  /api/DisabilityInsurancePolicies:
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves all Disability Insurance Policies for the specified Fact Finder ID.<br />\r

        \              Purpose: Provides access to the Disability Insurance Policies including description and policy type."
      operationId: DisabilityInsurancePolicies_GetDisabilityInsurancePoliciesByFactFinderIdByFactfinderid
      parameters:
        - description: The ID of the Fact Finder used to retrieve Disability Insurance Policies
          format: int32
          in: query
          name: factFinderId
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/DisabilityInsurancePoliciesModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Disability Insurance Policy data access.
        "403":
          description: Request is restricted for access to Disability Insurance Policy.
        "404":
          description: Disability Insurance Policy not found.
      tags:
        - DisabilityInsurancePolicies
    post:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "Description: The operation creates a Disability Insurance Policy.<br />\r

        \              Purpose: Allows for creation of Disability Insurance Policies on a Fact Finder."
      operationId: DisabilityInsurancePolicies_PostByModel
      parameters:
        - description: The Disability Insurance Policy to be added to the Fact Finder
          in: body
          name: model
          required: true
          schema:
            $ref: "#/definitions/DisabilityInsurancePolicyModel"
      produces:
        - application/json
        - text/json
      responses:
        "201":
          description: Created
          schema:
            $ref: "#/definitions/DisabilityInsurancePolicyWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Disability Insurance Policy data access.
        "403":
          description: Request is restricted for access to Disability Insurance Policy.
        "404":
          description: Disability Insurance Policy not found.
      tags:
        - DisabilityInsurancePolicies
  "/api/DisabilityInsurancePolicies/{id}":
    delete:
      consumes: []
      deprecated: false
      description: "Description: The operation removes a Disability Insurance Policy tied to a Fact Finder.<br />\r

        \              Purpose: Allows for removal of a Disability Insurance Policy from a Fact Finder."
      operationId: DisabilityInsurancePolicies_DeleteById
      parameters:
        - description: The Disability Insurance Policy ID used to identify which Disability Insurance Policy to remove
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "204":
          description: Deleted
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Disability Insurance Policy data access.
        "403":
          description: Request is restricted for access to Disability Insurance Policy.
        "404":
          description: Disability Insurance Policy not found.
      tags:
        - DisabilityInsurancePolicies
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves a single Disability Insurance Policy for the specified Disability Insurance Policy ID.<br />\r

        \              Purpose: Provides access to the Disability Insurance Policy including description and policy type."
      operationId: DisabilityInsurancePolicies_GetById
      parameters:
        - description: The ID of the Disability Insurance Policy used to retreive the Disability Insurance Policy
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/DisabilityInsurancePolicyWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Disability Insurance Policy data access.
        "403":
          description: Request is restricted for access to Disability Insurance Policy.
        "404":
          description: Disability Insurance Policy not found.
      tags:
        - DisabilityInsurancePolicies
    put:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "Description: The operation updates a Disability Insurance Policy.<br />\r

        \              Purpose: Allows for complete replacement of a Disability Insurance Policy on a Fact Finder."
      operationId: DisabilityInsurancePolicies_PutByIdModel
      parameters:
        - description: The existing Disability Insurance Policy ID used to identify which Disability Insurance Policy to update
          format: int32
          in: path
          name: id
          required: true
          type: integer
        - description: The Disability Insurance Policy to be updated on a Fact Finder
          in: body
          name: model
          required: true
          schema:
            $ref: "#/definitions/DisabilityInsurancePolicyModel"
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/DisabilityInsurancePolicyWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Disability Insurance Policy data access.
        "403":
          description: Request is restricted for access to Disability Insurance Policy.
        "404":
          description: Disability Insurance Policy not found.
      tags:
        - DisabilityInsurancePolicies
  /api/DisabilityInsurancePolicyTypes:
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves all Disability Insurance Policy Types for the specified country.<br />\r

        \              Purpose: Provides access to the Disability Insurance Policy Types including id and type description."
      operationId: DisabilityInsurancePolicyTypes_GetByCountry
      parameters:
        - description: The country used to filter Disability Insurance Policy Types
          enum:
            - UnitedStates
            - Canada
          in: query
          name: country
          required: true
          type: string
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/DisabilityInsurancePolicyTypesModel"
        "400":
          description: The request is invalid.
        "404":
          description: Disability Insurance Policy Type not found.
      tags:
        - DisabilityInsurancePolicyTypes
  "/api/DisabilityInsurancePolicyTypes/{id}":
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves all Disability Insurance Policy Types for the specified id.<br />\r

        \              Purpose: Provides access to the Disability Insurance Policy Types including id and type description."
      operationId: DisabilityInsurancePolicyTypes_GetById
      parameters:
        - description: The ID of Disability Insurance Policy Type used to retreive the Disability Insurance Policy Type information
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/DisabilityInsurancePolicyTypeModel"
        "400":
          description: The request is invalid.
        "404":
          description: Disability Insurance Policy Type not found.
      tags:
        - DisabilityInsurancePolicyTypes
  /api/EducationGoals:
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves all Education Goals for the specified Fact Finder ID.<br />\r

        \              Purpose: Provides access to the Education Goals including description and projected cost."
      operationId: EducationGoals_GetEducationGoalsByFactFinderIdByFactfinderid
      parameters:
        - description: The ID of the Fact Finder used to retrieve Education Goals
          format: int32
          in: query
          name: factFinderId
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/EducationGoalsModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Education Goal data access.
        "403":
          description: Request is restricted for access to Education Goal.
        "404":
          description: Education Goal not found.
      tags:
        - EducationGoals
    post:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "Description: The operation creates an Education Goal.<br />\r

        \              Purpose: Allows for creation of Education Goals on a Fact Finder."
      operationId: EducationGoals_PostByModel
      parameters:
        - description: The Education Goal to be added to the Fact Finder
          in: body
          name: model
          required: true
          schema:
            $ref: "#/definitions/EducationGoalModel"
      produces:
        - application/json
        - text/json
      responses:
        "201":
          description: Created
          schema:
            $ref: "#/definitions/EducationGoalWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Education Goal data access.
        "403":
          description: Request is restricted for access to Education Goal.
        "404":
          description: Education Goal not found.
      tags:
        - EducationGoals
  "/api/EducationGoals/{educationGoalId}/Expenses":
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves all Education Goal Expenses for the specified Education Goal ID.<br />\r

        \              Purpose: Provides access to the Education Goal Expenses including description and annual cost."
      operationId: EducationGoals_GetEducationExpensesByEducationGoalIdByEducationgoalid
      parameters:
        - description: The ID of the Education Goal used to retrieve Education Goal Expenses
          format: int32
          in: path
          name: educationGoalId
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/EducationExpensesModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Education Goal Expense data access.
        "403":
          description: Request is restricted for access to Education Goal Expense.
        "404":
          description: Education Goal Expense not found.
      tags:
        - EducationGoals
    post:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "Description: The operation creates an Education Goal Expense.<br />\r

        \              Purpose: Allows for creation of Education Goal Expenses on a Fact Finder."
      operationId: EducationGoals_PostByEducationgoalidModel
      parameters:
        - description: The Education Goal ID used to locate the Goal to add the expense to
          format: int32
          in: path
          name: educationGoalId
          required: true
          type: integer
        - description: The Education Goal Expense to be added to the Fact Finder
          in: body
          name: model
          required: true
          schema:
            $ref: "#/definitions/EducationExpenseModel"
      produces:
        - application/json
        - text/json
      responses:
        "201":
          description: Created
          schema:
            $ref: "#/definitions/EducationExpenseWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Education Goal Expense data access.
        "403":
          description: Request is restricted for access to Education Goal Expense.
        "404":
          description: Education Goal Expense not found.
      tags:
        - EducationGoals
  "/api/EducationGoals/{educationGoalId}/Expenses/{id}":
    delete:
      consumes: []
      deprecated: false
      description: "Description: The operation removes an Education Goal Expense tied to a Fact Finder.<br />\r

        \              Purpose: Allows for removal of an Education Goal Expense from a Fact Finder."
      operationId: EducationGoals_DeleteByEducationgoalidId
      parameters:
        - description: The Education Goal ID used to locate the Goal to delete the Expense under
          format: int32
          in: path
          name: educationGoalId
          required: true
          type: integer
        - description: The Education Goal Expense ID used to identify which Education Goal Expense to remove
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "204":
          description: Deleted
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Education Goal Expense data access.
        "403":
          description: Request is restricted for access to Education Goal Expense.
        "404":
          description: Education Goal Expense not found.
      tags:
        - EducationGoals
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves a single Education Goal Expense for the specified Education Goal Expense ID.<br />\r

        \              Purpose: Provides access to the Education Goal Expense including description and annual cost."
      operationId: EducationGoals_GetEducationExpenseByEducationgoalidId
      parameters:
        - description: The ID of the Education Goal used to retrieve Education Goal Expenses
          format: int32
          in: path
          name: educationGoalId
          required: true
          type: integer
        - description: The ID of the Education Goal Expense used to retreive the Education Goal Expense
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/EducationExpenseWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Education Goal Expense data access.
        "403":
          description: Request is restricted for access to Education Goal Expense.
        "404":
          description: Education Goal Expense not found.
      tags:
        - EducationGoals
    put:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "Description: The operation updates an Education Goal Expense.<br />\r

        \              Purpose: Allows for complete replacement of an Education Goal Expense on a Fact Finder."
      operationId: EducationGoals_PutByEducationgoalidIdModel
      parameters:
        - description: The Education Goal ID used to locate the Goal to update the Expense under
          format: int32
          in: path
          name: educationGoalId
          required: true
          type: integer
        - description: The existing Education Goal Expense ID used to identify which Education Goal Expense to update
          format: int32
          in: path
          name: id
          required: true
          type: integer
        - description: The Education Goal Expense to be added to the Fact Finder
          in: body
          name: model
          required: true
          schema:
            $ref: "#/definitions/EducationExpenseModel"
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/EducationExpenseWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Education Goal Expense data access.
        "403":
          description: Request is restricted for access to Education Goal Expense.
        "404":
          description: Education Goal Expense not found.
      tags:
        - EducationGoals
  "/api/EducationGoals/{id}":
    delete:
      consumes: []
      deprecated: false
      description: "Description: The operation removes an Education Goal tied to a Fact Finder.<br />\r

        \              Purpose: Allows for removal of an Education Goal from a Fact Finder."
      operationId: EducationGoals_DeleteById
      parameters:
        - description: The Education Goal ID used to identify which Education Goal to remove
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "204":
          description: Deleted
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Education Goal data access.
        "403":
          description: Request is restricted for access to Education Goal.
        "404":
          description: Education Goal not found.
      tags:
        - EducationGoals
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves a single Education Goal for the specified Education Goal ID.<br />\r

        \              Purpose: Provides access to the Education Goal including description and projected cost."
      operationId: EducationGoals_GetById
      parameters:
        - description: The ID of the Education Goal used to retreive the Education Goal
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/EducationGoalWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Education Goal data access.
        "403":
          description: Request is restricted for access to Education Goal.
        "404":
          description: Education Goal not found.
      tags:
        - EducationGoals
    put:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "Description: The operation creates an Education Goal Expense.<br />\r

        \              Purpose: Allows for creation of Education Goal Expenses on a Fact Finder."
      operationId: EducationGoals_PutByIdModel
      parameters:
        - description: The Education Goal ID used to locate the Goal to add the Expense to
          format: int32
          in: path
          name: id
          required: true
          type: integer
        - description: The Education Goal Expense to be added to the Fact Finder
          in: body
          name: model
          required: true
          schema:
            $ref: "#/definitions/EducationGoalModel"
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/EducationGoalWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Education Goal Expense data access.
        "403":
          description: Request is restricted for access to Education Goal Expense.
        "404":
          description: Education Goal Expense not found.
      tags:
        - EducationGoals
  /api/ExpenseTypes:
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves all Expense Types for the specified country.<br />\r

        \              Purpose: Provides access to the Expense Types including id and type description."
      operationId: ExpenseTypes_GetByCountry
      parameters:
        - description: The country used to filter Expense Types
          enum:
            - UnitedStates
            - Canada
          in: query
          name: country
          required: true
          type: string
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/ExpenseTypesModel"
        "400":
          description: The request is invalid.
        "404":
          description: Expense Type not found.
      tags:
        - ExpenseTypes
  "/api/ExpenseTypes/{id}":
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves all Expense Types for the specified country.<br />\r

        \              Purpose: Provides access to the Expense Types including id and type description."
      operationId: ExpenseTypes_GetById
      parameters:
        - description: The ID of Expense Type used to retreive the Expense Type information
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/ExpenseTypeModel"
        "400":
          description: The request is invalid.
        "404":
          description: Expense Type not found.
      tags:
        - ExpenseTypes
  /api/Expenses:
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves all Expenses for the specified Fact Finder ID.<br />\r

        \              Purpose: Provides access to the Expenses including description and Expense type."
      operationId: Expenses_GetExpensesByFactFinderIdByFactfinderid
      parameters:
        - description: The ID of the Fact Finder used to retrieve Expenses
          format: int32
          in: query
          name: factFinderId
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/ExpensesModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Expense data access.
        "403":
          description: Request is restricted for access to Expense.
        "404":
          description: Expense not found.
      tags:
        - Expenses
    post:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "Description: The operation creates an Expense.<br />\r

        \              Purpose: Allows for creation of Expenses on a Fact Finder."
      operationId: Expenses_PostByModel
      parameters:
        - description: The Expense to be added to the Fact Finder
          in: body
          name: model
          required: true
          schema:
            $ref: "#/definitions/ExpenseModel"
      produces:
        - application/json
        - text/json
      responses:
        "201":
          description: Created
          schema:
            $ref: "#/definitions/ExpenseWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Expense data access.
        "403":
          description: Request is restricted for access to Expense.
        "404":
          description: Expense not found.
      tags:
        - Expenses
  "/api/Expenses/{id}":
    delete:
      consumes: []
      deprecated: false
      description: "Description: The operation removes an Expense tied to a Fact Finder.<br />\r

        \              Purpose: Allows for removal of an Expense from a Fact Finder."
      operationId: Expenses_DeleteById
      parameters:
        - description: The Expense ID used to identify which Expense to remove
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "204":
          description: Deleted
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Expense data access.
        "403":
          description: Request is restricted for access to Expense.
        "404":
          description: Expense not found.
      tags:
        - Expenses
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves a single Expense for the specified Expense ID.<br />\r

        \              Purpose: Provides access to the Expense including description and Expense type."
      operationId: Expenses_GetById
      parameters:
        - description: The ID of the Expense used to retreive the Expense
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/ExpenseWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Expense data access.
        "403":
          description: Request is restricted for access to Expense.
        "404":
          description: Expense not found.
      tags:
        - Expenses
    put:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "Description: The operation updates an Expense.<br />\r

        \              Purpose: Allows for complete replacement of an Expense on a Fact Finder. <br /><br />\r

        \              Note: Expense type cannot be changed for expenses prepopulated from NaviPlan."
      operationId: Expenses_PutByIdModel
      parameters:
        - description: The existing Expense ID used to identify which Expense to update
          format: int32
          in: path
          name: id
          required: true
          type: integer
        - description: The Expense to be updated on a Fact Finder
          in: body
          name: model
          required: true
          schema:
            $ref: "#/definitions/ExpenseModel"
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/ExpenseWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Expense data access.
        "403":
          description: Request is restricted for access to Expense.
        "404":
          description: Expense not found.
      tags:
        - Expenses
  /api/FactFinders:
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves all Fact Finders for the specified householdId, \r

        \              or if null, all households associated with the user.<br />\r

        \              Purpose: Provides access to the Fact Finder including status."
      operationId: FactFinders_GetByHouseholdIdByHouseholdid
      parameters:
        - description: The ID of the household used to retrieve the fact finders. If not set, uses all households associated with the user
          format: int32
          in: query
          name: householdId
          required: false
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            items:
              $ref: "#/definitions/FactFinderWithIdModel"
            type: array
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Fact Finder data access.
        "403":
          description: Request is restricted for access to Fact Finder.
        "404":
          description: Fact Finder not found.
      tags:
        - FactFinders
    post:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "Description: The operation creates a completely empty draft Fact Finder.<br />\r

        \              Requirements: A householdId and list of modules must be provided.<br />\r

        \              Purpose: Stages a Fact Finder for population."
      operationId: FactFinders_PostByModel
      parameters:
        - description: The Household the Fact Finder will belong to and the modules that are available.
          in: body
          name: model
          required: true
          schema:
            $ref: "#/definitions/FactFinderEntityModel"
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: OK
          schema:
            $ref: "#/definitions/Object"
        "201":
          description: Created
          schema:
            $ref: "#/definitions/FactFinderWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Fact Finder data access.
        "403":
          description: Request is restricted for access to Fact Finder.
        "404":
          description: Fact Finder not found.
        "409":
          description: The request cannot be completed.
      tags:
        - FactFinders
  /api/FactFinders/Populate:
    post:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "Description: The operation creates a new Populated Fact Finder.<br />\r

        \              Requirements: A householdId and list of modules must be provided.<br />\r

        \              Purpose: Creation of a Fact Finder."
      operationId: FactFinders_PostPopulateByModel
      parameters:
        - description: "The Household the Fact Finder will belong to and the modules that are available. \r

            \            Optional PlanId to populate from"
          in: body
          name: model
          required: true
          schema:
            $ref: "#/definitions/FactFinderPopulatableEntityModel"
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: OK
          schema:
            $ref: "#/definitions/Object"
        "201":
          description: Created
          schema:
            $ref: "#/definitions/FactFinderWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Fact Finder data access.
        "403":
          description: Request is restricted for access to Fact Finder.
        "404":
          description: Fact Finder not found.
        "409":
          description: The request cannot be completed.
      tags:
        - FactFinders
  "/api/FactFinders/{factFinderId}/Modules":
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves all Fact Finder Modules for the specified Fact Finder ID.<br />\r

        \              Purpose: Provides access to the Fact Finder Modules including description and policy type."
      operationId: FactFinderModules_GetByFactfinderid
      parameters:
        - description: The ID of the Fact Finder used to retrieve Fact Finder Modules
          format: int32
          in: path
          name: factFinderId
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/FactFinderModulesModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Fact Finder Module data access.
        "404":
          description: Fact Finder Module not found.
      tags:
        - FactFinderModules
  "/api/FactFinders/{factFinderId}/Modules/{id}":
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves a single Fact Finder Module for the specified Fact Finder Module ID.<br />\r

        \              Purpose: Provides access to the Fact Finder Module including description and policy type."
      operationId: FactFinderModules_GetByFactfinderidId
      parameters:
        - description: The ID of the Fact Finder used to retrieve Fact Finder Module
          format: int32
          in: path
          name: factFinderId
          required: true
          type: integer
        - description: The ID of the Fact Finder Module used to retreive the Fact Finder Module
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/FactFinderModuleWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Fact Finder Module data access.
        "404":
          description: Fact Finder Module not found.
      tags:
        - FactFinderModules
    put:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "Description: The operation updates a Fact Finder Module.<br />\r

        \              Purpose: Allows for complete replacement of a Fact Finder Module on a Fact Finder."
      operationId: FactFinderModules_PutByModelFactfinderidId
      parameters:
        - description: The Fact Finder Module to be updated on a Fact Finder
          in: body
          name: model
          required: true
          schema:
            $ref: "#/definitions/FactFinderModuleModel"
        - description: The ID of the Fact Finder used to identify the Fact Finder Module to update
          format: int32
          in: path
          name: factFinderId
          required: true
          type: integer
        - description: The existing Fact Finder Module ID used to identify which Fact Finder Module to update
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/FactFinderModuleWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Fact Finder Module data access.
        "404":
          description: Fact Finder Module not found.
      tags:
        - FactFinderModules
  "/api/FactFinders/{factFinderId}/Snapshots":
    get:
      consumes: []
      deprecated: false
      description: "Description: The operation retrieves Snapshots of a Fact Finder.<br />\r

        \              Purpose: Allows for advisors to view all Snapshots taken of a Fact Finder."
      operationId: FactFinders_GetSnapshotsByFactfinderid
      parameters:
        - description: The ID of the Fact Finder to retrieve Snapshots for
          format: int32
          in: path
          name: factFinderId
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Created
          schema:
            $ref: "#/definitions/FactFinderSnapshotsModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Fact Finder data access.
        "403":
          description: Request is restricted for access to Fact Finder.
        "404":
          description: Fact Finder not found.
      tags:
        - FactFinders
    post:
      consumes: []
      deprecated: false
      description: "Description: The operation creates a Snapshot of a Fact Finder.<br />\r

        \              Purpose: Allows for advisors to compare the current fact finder to a snapshot prior to acceptance."
      operationId: FactFinders_PostSnapshotsByFactfinderid
      parameters:
        - description: The ID of the Fact Finder used to create the Fact Finder Snapshot
          format: int32
          in: path
          name: factFinderId
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: OK
          schema:
            $ref: "#/definitions/Object"
        "201":
          description: Created
          schema:
            $ref: "#/definitions/FactFinderSnapshotWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Fact Finder data access.
        "403":
          description: Request is restricted for access to Fact Finder.
        "404":
          description: Fact Finder not found.
      tags:
        - FactFinders
  "/api/FactFinders/{id}":
    delete:
      consumes: []
      deprecated: false
      description: "Description: This operation deletes a single Fact Finder for the specified Fact Finder ID.<br />\r

        \              Purpose: Deletes the fact finder."
      operationId: FactFinders_DeleteById
      parameters:
        - description: The ID of the Fact Finder to be deleted
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: OK
          schema:
            $ref: "#/definitions/Object"
        "204":
          description: Deleted
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Fact Finder data access.
        "403":
          description: Request is restricted for access to Fact Finder.
        "404":
          description: Fact Finder not found.
      tags:
        - FactFinders
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves a single Fact Finder for the specified Fact Finder ID.<br />\r

        \              Purpose: Provides access to the Fact Finder including status."
      operationId: FactFinders_GetById
      parameters:
        - description: The ID of the Fact Finder used to retrieve the Fact Finder
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/FactFinderWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Fact Finder data access.
        "403":
          description: Request is restricted for access to Fact Finder.
        "404":
          description: Fact Finder not found.
      tags:
        - FactFinders
    put:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "Description: The operation updates a Fact Finder.<br />\r

        \              Purpose: Allows for the updating of a Fact Finder."
      operationId: FactFinders_PutByIdModel
      parameters:
        - description: The existing Fact Finder ID used to identify which Fact Finder to update
          format: int32
          in: path
          name: id
          required: true
          type: integer
        - description: The Fact Finder to be updated
          in: body
          name: model
          required: true
          schema:
            $ref: "#/definitions/FactFinderModel"
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/FactFinderWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Fact Finder data access.
        "403":
          description: Request is restricted for access to Fact Finder.
        "404":
          description: Fact Finder not found.
      tags:
        - FactFinders
  "/api/FactFinders/{id}/Populate":
    put:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "Description: The operation populates a fact finder.<br />\r

        \              Purpose: Allows for the population of a Fact Finder based on a NaviPlan plan or client. This\r

        \                       operation cannot be performed on a Fact Finder more than once."
      operationId: FactFinders_PutPopulateFactFinderByIdModel
      parameters:
        - description: The existing Fact Finder ID used to identify which Fact Finder to populate.
          format: int32
          in: path
          name: id
          required: true
          type: integer
        - description: The plan to populate a fact finder from. If not provided, the client id will be inferred.
          in: body
          name: model
          required: true
          schema:
            $ref: "#/definitions/FactFinderPopulationModel"
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Fact Finder was successfully populated.
          schema:
            $ref: "#/definitions/FactFinderWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Fact Finder data access.
        "403":
          description: Request is restricted for access to Fact Finder.
        "404":
          description: Fact Finder not found.
        "409":
          description: Fact Finder already populated.
      tags:
        - FactFinders
  /api/FilingStatusTypes:
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves all Filing Status Types for the specified country.<br />\r

        \              Purpose: Provides access to the Filing Status Types including id and type description."
      operationId: FilingStatusTypes_GetByCountry
      parameters:
        - description: The country used to filter Filing Status Types
          enum:
            - UnitedStates
            - Canada
          in: query
          name: country
          required: true
          type: string
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/FilingStatusTypesModel"
        "400":
          description: The request is invalid.
        "404":
          description: Filing Status Type not found.
      tags:
        - FilingStatusTypes
  "/api/FilingStatusTypes/{id}":
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves all Filing Status Type for the specified id.<br />\r

        \              Purpose: Provides access to the Filing Status Types including id and type description."
      operationId: FilingStatusTypes_GetById
      parameters:
        - description: The ID of Filing Status Type used to retreive the Filing Status Type information
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/FilingStatusTypeModel"
        "400":
          description: The request is invalid.
        "404":
          description: Filing Status Type not found.
      tags:
        - FilingStatusTypes
  /api/FrequencyTypes:
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves all Frequency Types for the specified country and entity.<br />\r

        \              Purpose: Provides access to the Frequency Types including id and type description."
      operationId: FrequencyTypes_GetByEntityCountry
      parameters:
        - description: The entity used to filter Frequency Types
          enum:
            - CriticalIllnessInsurancePolicies
            - DisabilityInsurancePoliciesPremium
            - DisabilityInsurancePoliciesBenefit
            - Expenses
            - Liabilities
            - LifeInsurancePolicies
            - LongTermCareInsurancePoliciesBenefit
            - LongTermCareInsurancePoliciesPremium
            - RealEstateAssets
            - RetirementExpenses
            - SavingsStrategies
          in: query
          name: entity
          required: true
          type: string
        - description: The country used to filter Frequency Types
          enum:
            - UnitedStates
            - Canada
          in: query
          name: country
          required: true
          type: string
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/FrequencyTypesModel"
        "400":
          description: The request is invalid.
        "404":
          description: Frequency Type not found.
      tags:
        - FrequencyTypes
  "/api/FrequencyTypes/{id}":
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves the Frequency Type for the specified id.<br />\r

        \              Purpose: Provides access to the Frequency Types including id and type description."
      operationId: FrequencyTypes_GetById
      parameters:
        - description: The ID of Frequency Type used to retreive the Frequency Type information
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/FrequencyTypeModel"
        "400":
          description: The request is invalid.
        "404":
          description: Frequency Type not found.
      tags:
        - FrequencyTypes
  /api/IncomeTypes:
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves all Income Types for the specified country.<br />\r

        \              Purpose: Provides access to the Income Types including id and type description."
      operationId: IncomeTypes_GetByCountry
      parameters:
        - description: The country used to filter Income Types
          enum:
            - UnitedStates
            - Canada
          in: query
          name: country
          required: true
          type: string
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/IncomeTypesModel"
        "400":
          description: The request is invalid.
        "404":
          description: Income Type not found.
      tags:
        - IncomeTypes
  "/api/IncomeTypes/{id}":
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves the Income Type for the specified id.<br />\r

        \              Purpose: Provides access to the Income Types including id and type description."
      operationId: IncomeTypes_GetById
      parameters:
        - description: The ID of Income Type used to retreive the Income Type information
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/IncomeTypeModel"
        "400":
          description: The request is invalid.
        "404":
          description: Income Type not found.
      tags:
        - IncomeTypes
  /api/Incomes:
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves all Incomes for the specified Fact Finder ID.<br />\r

        \              Purpose: Provides access to the Incomes including annual amount and start date."
      operationId: Incomes_GetIncomesByFactFinderIdByFactfinderid
      parameters:
        - description: The ID of the Fact Finder used to retrieve Incomes
          format: int32
          in: query
          name: factFinderId
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/IncomesModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Income data access.
        "403":
          description: Request is restricted for access to Income.
        "404":
          description: Income not found.
      tags:
        - Incomes
    post:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "Description: The operation creates an Income.<br />\r

        \              Purpose: Allows for creation of Incomes on a Fact Finder."
      operationId: Incomes_PostByModel
      parameters:
        - description: The Income to be added to the Fact Finder
          in: body
          name: model
          required: true
          schema:
            $ref: "#/definitions/IncomeModel"
      produces:
        - application/json
        - text/json
      responses:
        "201":
          description: Created
          schema:
            $ref: "#/definitions/IncomeWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Income data access.
        "403":
          description: Request is restricted for access to Income.
        "404":
          description: Income not found.
      tags:
        - Incomes
  "/api/Incomes/{id}":
    delete:
      consumes: []
      deprecated: false
      description: "Description: The operation removes an Income tied to a Fact Finder.<br />\r

        \              Purpose: Allows for removal of an Income from a Fact Finder."
      operationId: Incomes_DeleteById
      parameters:
        - description: The Income ID used to identify which Income to remove
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "204":
          description: Deleted
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Income data access.
        "403":
          description: Request is restricted for access to Income.
        "404":
          description: Income not found.
      tags:
        - Incomes
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves a single Income for the specified Income ID.<br />\r

        \              Purpose: Provides access to the Income including annual amount and start date."
      operationId: Incomes_GetById
      parameters:
        - description: The ID of the Income used to retreive the Income
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/IncomeWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Income data access.
        "403":
          description: Request is restricted for access to Income.
        "404":
          description: Income not found.
      tags:
        - Incomes
    put:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "Description: The operation updates an Income.<br />\r

        \              Purpose: Allows for complete replacement of an Income on a Fact Finder."
      operationId: Incomes_PutByIdModel
      parameters:
        - description: The existing Income ID used to identify which Income to update
          format: int32
          in: path
          name: id
          required: true
          type: integer
        - description: The Income to be updated on a Fact Finder
          in: body
          name: model
          required: true
          schema:
            $ref: "#/definitions/IncomeModel"
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/IncomeWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Income data access.
        "403":
          description: Request is restricted for access to Income.
        "404":
          description: Income not found.
      tags:
        - Incomes
  /api/Liabilities:
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves all Liabilities for the specified Fact Finder ID.<br />\r

        \              Purpose: Provides access to the Liabilities including owner and type."
      operationId: Liabilities_GetLiabilitiesByFactFinderIdByFactfinderidExternalsourceid
      parameters:
        - description: The ID of the Fact Finder used to retrieve Liabilities
          format: int32
          in: query
          name: factFinderId
          required: true
          type: integer
        - description: The external source ID used to filter Liabilities
          in: query
          name: externalSourceId
          required: false
          type: string
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/LiabilitiesModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Liability data access.
        "403":
          description: Request is restricted for access to Liability.
        "404":
          description: Liability not found.
      tags:
        - Liabilities
    post:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "Description: The operation creates a Liability.<br />\r

        \              Purpose: Allows for creation of Liabilities on a Fact Finder."
      operationId: Liabilities_PostByModel
      parameters:
        - description: The Liability to be added to the Fact Finder
          in: body
          name: model
          required: true
          schema:
            $ref: "#/definitions/LiabilityModel"
      produces:
        - application/json
        - text/json
      responses:
        "201":
          description: Created
          schema:
            $ref: "#/definitions/LiabilityWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Liability data access.
        "403":
          description: Request is restricted for access to Liability.
        "404":
          description: Liability not found.
      tags:
        - Liabilities
  "/api/Liabilities/{id}":
    delete:
      consumes: []
      deprecated: false
      description: "Description: The operation removes a Liability tied to a Fact Finder.<br />\r

        \              Purpose: Allows for removal of a Liability from a Fact Finder."
      operationId: Liabilities_DeleteById
      parameters:
        - description: The Liability ID used to identify which Liability to remove
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "204":
          description: Deleted
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Liability data access.
        "403":
          description: Request is restricted for access to Liability.
        "404":
          description: Liability not found.
      tags:
        - Liabilities
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves a single Liability for the specified Liability ID.<br />\r

        \              Purpose: Provides access to the Liability including owner and type."
      operationId: Liabilities_GetById
      parameters:
        - description: The ID of the Liability used to retreive the Liability
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/LiabilityWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Liability data access.
        "403":
          description: Request is restricted for access to Liability.
        "404":
          description: Liability not found.
      tags:
        - Liabilities
    put:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "Description: The operation updates a Liability.<br />\r

        \              Purpose: Allows for complete replacement of a Liability on a Fact Finder."
      operationId: Liabilities_PutByIdModel
      parameters:
        - description: The existing Liability ID used to identify which Liability to update
          format: int32
          in: path
          name: id
          required: true
          type: integer
        - description: The Liability to be updated on a Fact Finder
          in: body
          name: model
          required: true
          schema:
            $ref: "#/definitions/LiabilityModel"
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/LiabilityWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Liability data access.
        "403":
          description: Request is restricted for access to Liability.
        "404":
          description: Liability not found.
      tags:
        - Liabilities
  /api/LiabilityTypes:
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves all Liability Types for the specified country.<br />\r

        \              Purpose: Provides access to the Liability Types including id and type description."
      operationId: LiabilityTypes_GetByCountry
      parameters:
        - description: The country used to filter Liability Types
          enum:
            - UnitedStates
            - Canada
          in: query
          name: country
          required: true
          type: string
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/LiabilityTypesModel"
        "400":
          description: The request is invalid.
        "404":
          description: Liability Type not found.
      tags:
        - LiabilityTypes
  "/api/LiabilityTypes/{id}":
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves the Liability Type for the specified id.<br />\r

        \              Purpose: Provides access to the Liability Types including id and type description."
      operationId: LiabilityTypes_GetById
      parameters:
        - description: The ID of Liability Type used to retreive the Liability Type information
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/LiabilityTypeModel"
        "400":
          description: The request is invalid.
        "404":
          description: Liability Type not found.
      tags:
        - LiabilityTypes
  /api/LifeInsurancePolicies:
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves all Life Insurance Policies for the specified Fact Finder ID.<br />\r

        \              Purpose: Provides access to the Life Insurance Policies including description and policy type."
      operationId: LifeInsurancePolicies_GetLifeInsurancePoliciesByFactFinderIdByFactfinderid
      parameters:
        - description: The ID of the Fact Finder used to retrieve Life Insurance Policies
          format: int32
          in: query
          name: factFinderId
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/LifeInsurancePoliciesModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Life Insurance Policy data access.
        "403":
          description: Request is restricted for access to Life Insurance Policy.
        "404":
          description: Life Insurance Policy not found.
      tags:
        - LifeInsurancePolicies
    post:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "Description: The operation creates a Life Insurance Policy.<br />\r

        \              Purpose: Allows for creation of Life Insurance Policies on a Fact Finder."
      operationId: LifeInsurancePolicies_PostByModel
      parameters:
        - description: The Life Insurance Policy to be added to the Fact Finder
          in: body
          name: model
          required: true
          schema:
            $ref: "#/definitions/LifeInsurancePolicyModel"
      produces:
        - application/json
        - text/json
      responses:
        "201":
          description: Created
          schema:
            $ref: "#/definitions/LifeInsurancePolicyWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Life Insurance Policy data access.
        "403":
          description: Request is restricted for access to Life Insurance Policy.
        "404":
          description: Life Insurance Policy not found.
      tags:
        - LifeInsurancePolicies
  "/api/LifeInsurancePolicies/{id}":
    delete:
      consumes: []
      deprecated: false
      description: "Description: The operation removes a Life Insurance Policy tied to a Fact Finder.<br />\r

        \              Purpose: Allows for removal of a Life Insurance Policy and associated subaccounts from a Fact Finder."
      operationId: LifeInsurancePolicies_DeleteById
      parameters:
        - description: The Life Insurance Policy ID used to identify which Life Insurance Policy to remove
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "204":
          description: Deleted
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Life Insurance Policy data access.
        "403":
          description: Request is restricted for access to Life Insurance Policy.
        "404":
          description: Life Insurance Policy not found.
      tags:
        - LifeInsurancePolicies
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves a single Life Insurance Policy for the specified Life Insurance Policy ID.<br />\r

        \              Purpose: Provides access to the Life Insurance Policy including description and policy type."
      operationId: LifeInsurancePolicies_GetById
      parameters:
        - description: The ID of the Life Insurance Policy used to retreive the Life Insurance Policy
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/LifeInsurancePolicyWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Life Insurance Policy data access.
        "403":
          description: Request is restricted for access to Life Insurance Policy.
        "404":
          description: Life Insurance Policy not found.
      tags:
        - LifeInsurancePolicies
    put:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "Description: The operation updates a Life Insurance Policy, deletes associated sub-accounts if the policy type changes.<br />\r

        \              Purpose: Allows for complete replacement of a Life Insurance Policy on a Fact Finder."
      operationId: LifeInsurancePolicies_PutByIdModel
      parameters:
        - description: The existing Life Insurance Policy ID used to identify which Life Insurance Policy to update
          format: int32
          in: path
          name: id
          required: true
          type: integer
        - description: The Life Insurance Policy to be updated on a Fact Finder
          in: body
          name: model
          required: true
          schema:
            $ref: "#/definitions/LifeInsurancePolicyModel"
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/LifeInsurancePolicyWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Life Insurance Policy data access.
        "403":
          description: Request is restricted for access to Life Insurance Policy.
        "404":
          description: Life Insurance Policy not found.
      tags:
        - LifeInsurancePolicies
  "/api/LifeInsurancePolicies/{lifeInsurancePolicyId}/Subaccounts":
    get:
      consumes: []
      deprecated: false
      description: "Description: Get all the subaccounts for an existing Life Insurance Policy.<br />\r

        \              Purpose: Provides access to all the Life Insurance Policy subaccounts."
      operationId: LifeInsurancePolicies_GetSubaccountsByLifeinsurancepolicyid
      parameters:
        - description: The ID of the Life Insurance Policy used to retrieve the Life Insurance Policy Subaccounts.
          format: int32
          in: path
          name: lifeInsurancePolicyId
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/LifeInsurancePolicySubaccountsModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Life Insurance Policy data access.
        "403":
          description: Request is restricted for access to Life Insurance Policy.
        "404":
          description: Life Insurance Policy not found.
      tags:
        - LifeInsurancePolicies
    post:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "Description: Creates a subaccount and adds it to an existing Life Insurance Policy.<br />\r

        \              Purpose: Allows for creation of subaccount on a Life Insurance Policy."
      operationId: LifeInsurancePolicies_PostSubaccountByLifeinsurancepolicyidModel
      parameters:
        - description: The ID of the Life Insurance Policy used to create the Life Insurance Policy Subaccount.
          format: int32
          in: path
          name: lifeInsurancePolicyId
          required: true
          type: integer
        - description: The Life Insurance Policy Subaccount model.
          in: body
          name: model
          required: true
          schema:
            $ref: "#/definitions/LifeInsurancePolicySubaccountModel"
      produces:
        - application/json
        - text/json
      responses:
        "201":
          description: Created
          schema:
            $ref: "#/definitions/LifeInsurancePolicySubaccountWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Life Insurance Policy data access.
        "403":
          description: Request is restricted for access to Life Insurance Policy.
        "404":
          description: Life Insurance Policy not found.
      tags:
        - LifeInsurancePolicies
  "/api/LifeInsurancePolicies/{lifeInsurancePolicyId}/Subaccounts/{id}":
    delete:
      consumes: []
      deprecated: false
      description: "Description: Deletes an existing Life Insurance Policy Subaccount for an existing Life Insurance Policy.<br />\r

        \              Purpose: Allows for removal of a subaccount from a Life Insurance Policy."
      operationId: LifeInsurancePolicies_DeleteSubaccountByLifeinsurancepolicyidId
      parameters:
        - description: The ID of the Life Insurance Policy used to delete the Life Insurance Policy Subaccount.
          format: int32
          in: path
          name: lifeInsurancePolicyId
          required: true
          type: integer
        - description: The ID of the Life Insurance Policy Subaccount.
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "204":
          description: Deleted
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Life Insurance Policy data access.
        "403":
          description: Request is restricted for access to Life Insurance Policy.
        "404":
          description: Life Insurance Policy Subaccount not found.
      tags:
        - LifeInsurancePolicies
    get:
      consumes: []
      deprecated: false
      description: "Description: Get a specific subaccount for an existing Life Insurance Policy.<br />\r

        \              Purpose: Provides access to the Life Insurance Policy subaccount."
      operationId: LifeInsurancePolicies_GetSubaccountByLifeinsurancepolicyidId
      parameters:
        - description: The ID of the Life Insurance Policy used to retrieve the Life Insurance Policy Subaccount.
          format: int32
          in: path
          name: lifeInsurancePolicyId
          required: true
          type: integer
        - description: The ID of the Life Insurance Policy Subaccount.
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/LifeInsurancePolicySubaccountWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Life Insurance Policy data access.
        "403":
          description: Request is restricted for access to Life Insurance Policy.
        "404":
          description: Life Insurance Policy Subaccount not found.
      tags:
        - LifeInsurancePolicies
    put:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "Description: Updates an existing Life Insurance Policy Subaccount for an existing Life Insurance Policy.<br />\r

        \              Purpose: Allows for complete replacement of a subaccount on a Life Insurance Policy."
      operationId: LifeInsurancePolicies_PutSubaccountByLifeinsurancepolicyidIdModel
      parameters:
        - description: The ID of the Life Insurance Policy used to update the Life Insurance Policy Subaccount.
          format: int32
          in: path
          name: lifeInsurancePolicyId
          required: true
          type: integer
        - description: The ID of the Life Insurance Policy Subaccount.
          format: int32
          in: path
          name: id
          required: true
          type: integer
        - description: The Life Insurance Policy Subaccount model.
          in: body
          name: model
          required: true
          schema:
            $ref: "#/definitions/LifeInsurancePolicySubaccountModel"
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/LifeInsurancePolicySubaccountModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Life Insurance Policy data access.
        "403":
          description: Request is restricted for access to Life Insurance Policy.
        "404":
          description: Life Insurance Policy Subaccount not found.
      tags:
        - LifeInsurancePolicies
  /api/LifeInsurancePolicyTypes:
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves all Life Insurance Policy Types for the specified country.<br />\r

        \              Purpose: Provides access to the Life Insurance Policy Types including id and type description."
      operationId: LifeInsurancePolicyTypes_GetByCountry
      parameters:
        - description: The country used to filter Life Insurance Policy Types
          enum:
            - UnitedStates
            - Canada
          in: query
          name: country
          required: true
          type: string
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/LifeInsurancePolicyTypesModel"
        "400":
          description: The request is invalid.
        "404":
          description: Life Insurance Policy Type not found.
      tags:
        - LifeInsurancePolicyTypes
  "/api/LifeInsurancePolicyTypes/{id}":
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves the Life Insurance Policy Type for the specified id.<br />\r

        \              Purpose: Provides access to the Life Insurance Policy Types including id and type description."
      operationId: LifeInsurancePolicyTypes_GetById
      parameters:
        - description: The ID of Life Insurance Policy Type used to retreive the Life Insurance Policy Type information
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/LifeInsurancePolicyTypeModel"
        "400":
          description: The request is invalid.
        "404":
          description: Life Insurance Policy Type not found.
      tags:
        - LifeInsurancePolicyTypes
  /api/LifestyleAssetTypes:
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves all Lifestyle Asset Types for the specified country.<br />\r

        \              Purpose: Provides access to the Lifestyle Asset Types including id and type description."
      operationId: LifestyleAssetTypes_GetByCountry
      parameters:
        - description: The country used to filter Lifestyle Asset Types
          enum:
            - UnitedStates
            - Canada
          in: query
          name: country
          required: true
          type: string
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/LifestyleAssetTypesModel"
        "400":
          description: The request is invalid.
        "404":
          description: Lifestyle Asset Type not found.
      tags:
        - LifestyleAssetTypes
  "/api/LifestyleAssetTypes/{id}":
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves the Lifestyle Asset Type for the specified id.<br />\r

        \              Purpose: Provides access to the Lifestyle Asset Types including id and type description."
      operationId: LifestyleAssetTypes_GetById
      parameters:
        - description: The ID of Lifestyle Asset Type used to retreive the Lifestyle Asset Type information
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/LifestyleAssetTypeModel"
        "400":
          description: The request is invalid.
        "404":
          description: Lifestyle Asset Type not found.
      tags:
        - LifestyleAssetTypes
  /api/LifestyleAssets:
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves all Lifestyle Assets for the specified Fact Finder ID.<br />\r

        \              Purpose: Provides access to the Lifestyle Assets including description and market value."
      operationId: LifestyleAssets_GetLifestyleAssetsByFactFinderIdByFactfinderid
      parameters:
        - description: The ID of the Fact Finder used to retrieve Lifestyle Assets
          format: int32
          in: query
          name: factFinderId
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/LifestyleAssetsModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Lifestyle Asset data access.
        "403":
          description: Request is restricted for access to Lifestyle Asset.
        "404":
          description: Lifestyle Asset not found.
      tags:
        - LifestyleAssets
    post:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "Description: The operation creates a Lifestyle Asset.<br />\r

        \              Purpose: Allows for creation of Lifestyle Assets on a Fact Finder."
      operationId: LifestyleAssets_PostByModel
      parameters:
        - description: The Lifestyle Asset to be added to the Fact Finder
          in: body
          name: model
          required: true
          schema:
            $ref: "#/definitions/LifestyleAssetModel"
      produces:
        - application/json
        - text/json
      responses:
        "201":
          description: Created
          schema:
            $ref: "#/definitions/LifestyleAssetWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Lifestyle Asset data access.
        "403":
          description: Request is restricted for access to Lifestyle Asset.
        "404":
          description: Lifestyle Asset not found.
      tags:
        - LifestyleAssets
  "/api/LifestyleAssets/{id}":
    delete:
      consumes: []
      deprecated: false
      description: "Description: The operation removes a Lifestyle Asset tied to a Fact Finder.<br />\r

        \              Purpose: Allows for removal of a Lifestyle Asset from a Fact Finder."
      operationId: LifestyleAssets_DeleteById
      parameters:
        - description: The Lifestyle Asset ID used to identify which Lifestyle Asset to remove
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "204":
          description: Deleted
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Lifestyle Asset data access.
        "403":
          description: Request is restricted for access to Lifestyle Asset.
        "404":
          description: Lifestyle Asset not found.
      tags:
        - LifestyleAssets
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves a single Lifestyle Asset for the specified Lifestyle Asset ID.<br />\r

        \              Purpose: Provides access to the Lifestyle Asset including description and market value."
      operationId: LifestyleAssets_GetById
      parameters:
        - description: The ID of the Lifestyle Asset used to retreive the Lifestyle Asset
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/LifestyleAssetWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Lifestyle Asset data access.
        "403":
          description: Request is restricted for access to Lifestyle Asset.
        "404":
          description: Lifestyle Asset not found.
      tags:
        - LifestyleAssets
    put:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "Description: The operation updates a Lifestyle Asset.<br />\r

        \              Purpose: Allows for complete replacement of a Lifestyle Asset on a Fact Finder."
      operationId: LifestyleAssets_PutByIdModel
      parameters:
        - description: The existing Lifestyle Asset ID used to identify which Lifestyle Asset to update
          format: int32
          in: path
          name: id
          required: true
          type: integer
        - description: The Lifestyle Asset to be updated on a Fact Finder
          in: body
          name: model
          required: true
          schema:
            $ref: "#/definitions/LifestyleAssetModel"
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/LifestyleAssetWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Lifestyle Asset data access.
        "403":
          description: Request is restricted for access to Lifestyle Asset.
        "404":
          description: Lifestyle Asset not found.
      tags:
        - LifestyleAssets
  /api/LongTermCareInsurancePolicies:
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves all Long Term Care Insurance Policies for the specified Fact Finder ID.<br />\r

        \              Purpose: Provides access to the Long Term Care Insurance Policies including description and premium."
      operationId: LongTermCareInsurancePolicies_GetLongTermCareInsurancePoliciesByFactFinderIdByFactfinderid
      parameters:
        - description: The ID of the Fact Finder used to retrieve Long Term Care Insurance Policies
          format: int32
          in: query
          name: factFinderId
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/LongTermCareInsurancePoliciesModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Long Term Care Insurance Policy data access.
        "403":
          description: Request is restricted for access to Long Term Care Insurance Policy.
        "404":
          description: Long Term Care Insurance Policy not found.
      tags:
        - LongTermCareInsurancePolicies
    post:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "Description: The operation creates a Long Term Care Insurance Policy.<br />\r

        \              Purpose: Allows for creation of Long Term Care Insurance Policies on a Fact Finder."
      operationId: LongTermCareInsurancePolicies_PostByModel
      parameters:
        - description: The Long Term Care Insurance Policy to be added to the Fact Finder
          in: body
          name: model
          required: true
          schema:
            $ref: "#/definitions/LongTermCareInsurancePolicyModel"
      produces:
        - application/json
        - text/json
      responses:
        "201":
          description: Created
          schema:
            $ref: "#/definitions/LongTermCareInsurancePolicyWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Long Term Care Insurance Policy data access.
        "403":
          description: Request is restricted for access to Long Term Care Insurance Policy.
        "404":
          description: Long Term Care Insurance Policy not found.
      tags:
        - LongTermCareInsurancePolicies
  "/api/LongTermCareInsurancePolicies/{id}":
    delete:
      consumes: []
      deprecated: false
      description: "Description: The operation removes a Long Term Care Insurance Policy tied to a Fact Finder.<br />\r

        \              Purpose: Allows for removal of a Long Term Care Insurance Policy from a Fact Finder."
      operationId: LongTermCareInsurancePolicies_DeleteById
      parameters:
        - description: The Long Term Care Insurance Policy ID used to identify which Long Term Care Insurance Policy to remove
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "204":
          description: Deleted
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Long Term Care Insurance Policy data access.
        "403":
          description: Request is restricted for access to Long Term Care Insurance Policy.
        "404":
          description: Long Term Care Insurance Policy not found.
      tags:
        - LongTermCareInsurancePolicies
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves a single Long Term Care Insurance Policy for the specified Long Term Care Insurance Policy ID.<br />\r

        \              Purpose: Provides access to the Long Term Care Insurance Policy including description and premium."
      operationId: LongTermCareInsurancePolicies_GetById
      parameters:
        - description: The ID of the Long Term Care Insurance Policy used to retreive the Long Term Care Insurance Policy
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/LongTermCareInsurancePolicyWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Long Term Care Insurance Policy data access.
        "403":
          description: Request is restricted for access to Long Term Care Insurance Policy.
        "404":
          description: Long Term Care Insurance Policy not found.
      tags:
        - LongTermCareInsurancePolicies
    put:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "Description: The operation updates a Long Term Care Insurance Policy.<br />\r

        \              Purpose: Allows for complete replacement of a Long Term Care Insurance Policy on a Fact Finder."
      operationId: LongTermCareInsurancePolicies_PutByIdModel
      parameters:
        - description: The existing Long Term Care Insurance Policy ID used to identify which Long Term Care Insurance Policy to update
          format: int32
          in: path
          name: id
          required: true
          type: integer
        - description: The Long Term Care Insurance Policy to be updated on a Fact Finder
          in: body
          name: model
          required: true
          schema:
            $ref: "#/definitions/LongTermCareInsurancePolicyModel"
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/LongTermCareInsurancePolicyWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Long Term Care Insurance Policy data access.
        "403":
          description: Request is restricted for access to Long Term Care Insurance Policy.
        "404":
          description: Long Term Care Insurance Policy not found.
      tags:
        - LongTermCareInsurancePolicies
  /api/MajorPurchaseGoalTypes:
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves all Major Purchase Goal Types for the specified country.<br />\r

        \              Purpose: Provides access to the Major Purchase Goal Types including id and type description."
      operationId: MajorPurchaseGoalTypes_GetByCountry
      parameters:
        - description: The country used to filter Major Purchase Goal Types
          enum:
            - UnitedStates
            - Canada
          in: query
          name: country
          required: true
          type: string
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/MajorPurchaseGoalTypesModel"
        "400":
          description: The request is invalid.
        "404":
          description: Major Purchase Goal Type not found.
      tags:
        - MajorPurchaseGoalTypes
  "/api/MajorPurchaseGoalTypes/{id}":
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves the Major Purchase Goal Type for the specified id.<br />\r

        \              Purpose: Provides access to the Major Purchase Goal Types including id and type description."
      operationId: MajorPurchaseGoalTypes_GetById
      parameters:
        - description: The ID of Major Purchase Goal Type used to retreive the Major Purchase Goal Type information
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/MajorPurchaseGoalTypeModel"
        "400":
          description: The request is invalid.
        "404":
          description: Major Purchase Goal Type not found.
      tags:
        - MajorPurchaseGoalTypes
  /api/MajorPurchaseGoals:
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves all Major Purchases for the specified Fact Finder ID.<br />\r

        \              Purpose: Provides access to the Major Purchases including description and amount."
      operationId: MajorPurchaseGoals_GetMajorPurchaseGoalsByFactFinderIdByFactfinderid
      parameters:
        - description: The ID of the Fact Finder used to retrieve Major Purchases
          format: int32
          in: query
          name: factFinderId
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/MajorPurchaseGoalsModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Major Purchase data access.
        "403":
          description: Request is restricted for access to Major Purchase.
        "404":
          description: Major Purchase not found.
      tags:
        - MajorPurchaseGoals
    post:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "Description: The operation creates a Major Purchase.<br />\r

        \              Purpose: Allows for creation of Major Purchases on a Fact Finder."
      operationId: MajorPurchaseGoals_PostByModel
      parameters:
        - description: The Major Purchase to be added to the Fact Finder
          in: body
          name: model
          required: true
          schema:
            $ref: "#/definitions/MajorPurchaseGoalModel"
      produces:
        - application/json
        - text/json
      responses:
        "201":
          description: Created
          schema:
            $ref: "#/definitions/MajorPurchaseGoalWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Major Purchase data access.
        "403":
          description: Request is restricted for access to Major Purchase.
        "404":
          description: Major Purchase not found.
      tags:
        - MajorPurchaseGoals
  "/api/MajorPurchaseGoals/{id}":
    delete:
      consumes: []
      deprecated: false
      description: "Description: The operation removes a Major Purchase tied to a Fact Finder.<br />\r

        \              Purpose: Allows for removal of a Major Purchase from a Fact Finder."
      operationId: MajorPurchaseGoals_DeleteById
      parameters:
        - description: The Major Purchase ID used to identify which Major Purchase to remove
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "204":
          description: Deleted
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Major Purchase data access.
        "403":
          description: Request is restricted for access to Major Purchase.
        "404":
          description: Major Purchase not found.
      tags:
        - MajorPurchaseGoals
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves a single Major Purchase for the specified Major Purchase ID.<br />\r

        \              Purpose: Provides access to the Major Purchase including description and amount."
      operationId: MajorPurchaseGoals_GetById
      parameters:
        - description: The ID of the Major Purchase used to retreive the Major Purchase
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/MajorPurchaseGoalWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Major Purchase data access.
        "403":
          description: Request is restricted for access to Major Purchase.
        "404":
          description: Major Purchase not found.
      tags:
        - MajorPurchaseGoals
    put:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "Description: The operation updates a Major Purchase.<br />\r

        \              Purpose: Allows for complete replacement of a Major Purchase on a Fact Finder."
      operationId: MajorPurchaseGoals_PutByIdModel
      parameters:
        - description: The existing Major Purchase ID used to identify which Major Purchase to update
          format: int32
          in: path
          name: id
          required: true
          type: integer
        - description: The Major Purchase to be updated on a Fact Finder
          in: body
          name: model
          required: true
          schema:
            $ref: "#/definitions/MajorPurchaseGoalModel"
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/MajorPurchaseGoalWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Major Purchase data access.
        "403":
          description: Request is restricted for access to Major Purchase.
        "404":
          description: Major Purchase not found.
      tags:
        - MajorPurchaseGoals
  /api/Presentation/Accounts:
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves all current Accounts for the specified Fact Finder ID, as well as\r

        \                           all of the holdings and savings strategies belonging to those accounts.<br />\r

        \              Purpose: Provides access to the Accounts in a Fact Finder as well as any sub-entities belonging to them."
      operationId: Presentation_GetAccountsByFactfinderidExternalsourceid
      parameters:
        - description: The ID of the Fact Finder used to retrieve Accounts
          format: int32
          in: query
          name: factFinderId
          required: true
          type: integer
        - description: The external ID used to filter Accounts
          in: query
          name: externalSourceId
          required: false
          type: string
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/AccountsWithSubEntitiesModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Account data access.
        "403":
          description: Request is restricted for access to Account.
        "404":
          description: Account not found.
      tags:
        - Presentation
  /api/Presentation/Demographics/Owners:
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves owner values for the fact finder based on demographics data\r

        \              Purpose: Provides the list of valid options for owner, student, beneficiary, etc."
      operationId: Presentation_GetDemographicOwnersByFactfinderid
      parameters:
        - description: The ID of the Fact Finder used to retrieve owners.
          format: int32
          in: query
          name: factFinderId
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/OwnersModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Demographic information data access.
        "403":
          description: Request is restricted for access to Demographic information.
        "404":
          description: Fact Finder not found.
      tags:
        - Presentation
  /api/Presentation/Demographics/Relationships:
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves all relationship types relevant to demographics.<br />\r

        \              Purpose: Provides a list of relationship types organized by whether or not they can be defined as children."
      operationId: Presentation_GetDemographicRelationships
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/RelationshipTypesModel"
        "400":
          description: The request is invalid.
        "404":
          description: Object not found.
      tags:
        - Presentation
  /api/Presentation/Incomes:
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves all current Incomes for the specified Fact Finder ID.<br />\r

        \              Purpose: Provides access to the Incomes in a Fact Finder, filtered by Incomes that are current."
      operationId: Presentation_GetIncomesByFactfinderid
      parameters:
        - description: The ID of the Fact Finder used to retrieve Incomes
          format: int32
          in: query
          name: factFinderId
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/IncomesModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Income data access.
        "403":
          description: Request is restricted for access to Income.
        "404":
          description: Income not found.
      tags:
        - Presentation
  /api/Presentation/Liabilities:
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves all current Liabilities for the specified Fact Finder ID.<br />\r

        \              Purpose: Provides access to the Liabilities in a Fact Finder, filtered by Liabilities that are current."
      operationId: Presentation_GetLiabilitiesByFactfinderid
      parameters:
        - description: The ID of the Fact Finder used to retrieve Liabilities
          format: int32
          in: query
          name: factFinderId
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/LiabilitiesModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Liability data access.
        "403":
          description: Request is restricted for access to Liability.
        "404":
          description: Liability not found.
      tags:
        - Presentation
  /api/Presentation/LifeInsurancePolicies:
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves all life insurance policies, including subaccounts if available, for the specified Fact Finder ID.<br />\r

        \              Purpose: Provides access to the Life Insurance Policies in a Fact Finder."
      operationId: Presentation_GetLifeInsurancePoliciesByFactfinderid
      parameters:
        - description: The ID of the Fact Finder used to retrieve Life Insurance Policies.
          format: int32
          in: query
          name: factFinderId
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/LifeInsurancePoliciesWithSubEntitiesModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Life Insurance Policy data access.
        "403":
          description: Request is restricted for access to Life Insurance Policy.
        "404":
          description: Life Insurance Policy not found.
      tags:
        - Presentation
  /api/Presentation/Pensions:
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves all future Defined Benefit Pensions for the specified Fact Finder ID.<br />\r

        \              Purpose: Provides access to the Pensions in a Fact Finder, filtered by Pensions that are in the future."
      operationId: Presentation_GetPensionsByFactfinderid
      parameters:
        - description: The ID of the Fact Finder used to retrieve Pensions.
          format: int32
          in: query
          name: factFinderId
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/DefinedBenefitPensionsModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Defined Benefit Pension data access.
        "403":
          description: Request is restricted for access to Defined Benefit Pension.
        "404":
          description: Defined Benefit Pension not found.
      tags:
        - Presentation
  /api/RealEstateAssets:
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves all Real Estate Assets for the specified Fact Finder ID.<br />\r

        \              Purpose: Provides access to the Real Estate Assets including description and market value."
      operationId: RealEstateAssets_GetRealEstateAssetsByFactFinderIdByFactfinderid
      parameters:
        - description: The ID of the Fact Finder used to retrieve Real Estate Assets
          format: int32
          in: query
          name: factFinderId
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/RealEstateAssetsModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Real Estate Asset data access.
        "403":
          description: Request is restricted for access to Real Estate Asset.
        "404":
          description: Real Estate Asset not found.
      tags:
        - RealEstateAssets
    post:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "Description: The operation creates a Real Estate Asset.<br />\r

        \              Purpose: Allows for creation of Real Estate Assets on a Fact Finder."
      operationId: RealEstateAssets_PostByModel
      parameters:
        - description: The Real Estate Asset to be added to the Fact Finder
          in: body
          name: model
          required: true
          schema:
            $ref: "#/definitions/RealEstateAssetModel"
      produces:
        - application/json
        - text/json
      responses:
        "201":
          description: Created
          schema:
            $ref: "#/definitions/RealEstateAssetWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Real Estate Asset data access.
        "403":
          description: Request is restricted for access to Real Estate Asset.
        "404":
          description: Real Estate Asset not found.
      tags:
        - RealEstateAssets
  "/api/RealEstateAssets/{id}":
    delete:
      consumes: []
      deprecated: false
      description: "Description: The operation removes a Real Estate Asset tied to a Fact Finder.<br />\r

        \              Purpose: Allows for removal of a Real Estate Asset from a Fact Finder."
      operationId: RealEstateAssets_DeleteById
      parameters:
        - description: The Real Estate Asset ID used to identify which Real Estate Asset to remove
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "204":
          description: Deleted
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Real Estate Asset data access.
        "403":
          description: Request is restricted for access to Real Estate Asset.
        "404":
          description: Real Estate Asset not found.
      tags:
        - RealEstateAssets
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves a single Real Estate Asset for the specified Real Estate Asset ID.<br />\r

        \              Purpose: Provides access to the Real Estate Asset including description and market value."
      operationId: RealEstateAssets_GetById
      parameters:
        - description: The ID of the Real Estate Asset used to retreive the Real Estate Asset
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/RealEstateAssetWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Real Estate Asset data access.
        "403":
          description: Request is restricted for access to Real Estate Asset.
        "404":
          description: Real Estate Asset not found.
      tags:
        - RealEstateAssets
    put:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "Description: The operation updates a Real Estate Asset.<br />\r

        \              Purpose: Allows for complete replacement of a Real Estate Asset on a Fact Finder."
      operationId: RealEstateAssets_PutByIdModel
      parameters:
        - description: The existing Real Estate Asset ID used to identify which Real Estate Asset to update
          format: int32
          in: path
          name: id
          required: true
          type: integer
        - description: The Real Estate Asset to be updated on a Fact Finder
          in: body
          name: model
          required: true
          schema:
            $ref: "#/definitions/RealEstateAssetModel"
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/RealEstateAssetWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Real Estate Asset data access.
        "403":
          description: Request is restricted for access to Real Estate Asset.
        "404":
          description: Real Estate Asset not found.
      tags:
        - RealEstateAssets
  /api/RetirementGoals:
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves all Retirement Goals for the specified Fact Finder ID.<br />\r

        \              Purpose: Provides access to the Retirement Goals including retirement date."
      operationId: RetirementGoals_GetRetirementGoalsByFactFinderIdByFactfinderid
      parameters:
        - description: The ID of the Fact Finder used to retrieve Retirement Goals
          format: int32
          in: query
          name: factFinderId
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/RetirementGoalsModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Retirement Goal data access.
        "403":
          description: Request is restricted for access to Retirement Goal.
        "404":
          description: Retirement Goal not found.
      tags:
        - RetirementGoals
    post:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "Description: The operation creates a Retirement Goal.<br />\r

        \              Purpose: Allows for creation of Retirement Goals on a Fact Finder."
      operationId: RetirementGoals_PostByModel
      parameters:
        - description: The Retirement Goal to be added to the Fact Finder
          in: body
          name: model
          required: true
          schema:
            $ref: "#/definitions/RetirementGoalModel"
      produces:
        - application/json
        - text/json
      responses:
        "201":
          description: Created
          schema:
            $ref: "#/definitions/RetirementGoalWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Retirement Goal data access.
        "403":
          description: Request is restricted for access to Retirement Goal.
        "404":
          description: Retirement Goal not found.
      tags:
        - RetirementGoals
  "/api/RetirementGoals/{id}":
    delete:
      consumes: []
      deprecated: false
      description: "Description: The operation removes a Retirement Goal tied to a Fact Finder.<br />\r

        \              Purpose: Allows for removal of a Retirement Goal from a Fact Finder."
      operationId: RetirementGoals_DeleteById
      parameters:
        - description: The Retirement Goal ID used to identify which Retirement Goal to remove
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "204":
          description: Deleted
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Retirement Goal data access.
        "403":
          description: Request is restricted for access to Retirement Goal.
        "404":
          description: Retirement Goal not found.
      tags:
        - RetirementGoals
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves a single Retirement Goal for the specified Retirement Goal ID.<br />\r

        \              Purpose: Provides access to the Retirement Goal including retirement date."
      operationId: RetirementGoals_GetById
      parameters:
        - description: The ID of the Retirement Goal used to retreive the Retirement Goal
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/RetirementGoalWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Retirement Goal data access.
        "403":
          description: Request is restricted for access to Retirement Goal.
        "404":
          description: Retirement Goal not found.
      tags:
        - RetirementGoals
    put:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "Description: The operation updates a Retirement Goal.<br />\r

        \              Purpose: Allows for complete replacement of a Retirement Goal on a Fact Finder."
      operationId: RetirementGoals_PutByIdModel
      parameters:
        - description: The existing Retirement Goal ID used to identify which Retirement Goal to update
          format: int32
          in: path
          name: id
          required: true
          type: integer
        - description: The Retirement Goal to be updated on a Fact Finder
          in: body
          name: model
          required: true
          schema:
            $ref: "#/definitions/RetirementGoalModel"
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/RetirementGoalWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Retirement Goal data access.
        "403":
          description: Request is restricted for access to Retirement Goal.
        "404":
          description: Retirement Goal not found.
      tags:
        - RetirementGoals
  "/api/RetirementGoals/{retirementGoalId}/Expenses":
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves all Retirement Goal Expenses for the specified Retirement Goal ID.<br />\r

        \              Purpose: Provides access to the Retirement Goal Expenses including description and amount."
      operationId: RetirementGoals_GetRetirementExpensesByRetirementGoalIdByRetirementgoalid
      parameters:
        - description: The ID of the Retirement Goal used to retrieve Retirement Goal Expenses
          format: int32
          in: path
          name: retirementGoalId
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/RetirementExpensesModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Retirement Goal Expense data access.
        "403":
          description: Request is restricted for access to Retirement Goal Expense.
        "404":
          description: Retirement Goal Expense not found.
      tags:
        - RetirementGoals
    post:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "Description: The operation creates a Retirement Goal Expense.<br />\r

        \              Purpose: Allows for creation of Retirement Goal Expenses on a Fact Finder."
      operationId: RetirementGoals_PostByRetirementgoalidModel
      parameters:
        - description: The ID of the Retirement Goal to add the Retirement Goal Expense to
          format: int32
          in: path
          name: retirementGoalId
          required: true
          type: integer
        - description: The Retirement Goal Expense to be added to the Fact Finder
          in: body
          name: model
          required: true
          schema:
            $ref: "#/definitions/RetirementExpenseModel"
      produces:
        - application/json
        - text/json
      responses:
        "201":
          description: Created
          schema:
            $ref: "#/definitions/RetirementExpenseWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Retirement Goal Expense data access.
        "403":
          description: Request is restricted for access to Retirement Goal Expense.
        "404":
          description: Retirement Goal Expense not found.
      tags:
        - RetirementGoals
  "/api/RetirementGoals/{retirementGoalId}/Expenses/{id}":
    delete:
      consumes: []
      deprecated: false
      description: "Description: The operation removes a Retirement Goal Expense tied to a Fact Finder.<br />\r

        \              Purpose: Allows for removal of a Retirement Goal Expense from a Fact Finder."
      operationId: RetirementGoals_DeleteByRetirementgoalidId
      parameters:
        - description: The Retirement Goal ID used to locate the Goal to delete the Retirement Goal Expense under
          format: int32
          in: path
          name: retirementGoalId
          required: true
          type: integer
        - description: The Retirement Goal Expense ID used to identify which Retirement Goal Expense to remove
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "204":
          description: Deleted
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Retirement Goal Expense data access.
        "403":
          description: Request is restricted for access to Retirement Goal Expense.
        "404":
          description: Retirement Goal Expense not found.
      tags:
        - RetirementGoals
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves a single Retirement Goal Expense for the specified Retirement Goal Expense ID.<br />\r

        \              Purpose: Provides access to the Retirement Goal Expense including description and amount."
      operationId: RetirementGoals_GetRetirementExpenseByRetirementgoalidId
      parameters:
        - description: The ID of the Retirement Goal used to retrieve the Retirement Goal Expense
          format: int32
          in: path
          name: retirementGoalId
          required: true
          type: integer
        - description: The ID of the Retirement Goal Expense used to retreive the Retirement Goal Expense
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/RetirementExpenseWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Retirement Goal Expense data access.
        "403":
          description: Request is restricted for access to Retirement Goal Expense.
        "404":
          description: Retirement Goal Expense not found.
      tags:
        - RetirementGoals
    put:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "Description: The operation updates a Retirement Goal Expense.<br />\r

        \              Purpose: Allows for complete replacement of a Retirement Goal Expense on a Fact Finder."
      operationId: RetirementGoals_PutByRetirementgoalidIdModel
      parameters:
        - description: The Retirement Goal ID used to locate the Goal to update the Retirement Goal Expense under
          format: int32
          in: path
          name: retirementGoalId
          required: true
          type: integer
        - description: The existing Retirement Goal Expense ID used to identify which Retirement Goal Expense to update
          format: int32
          in: path
          name: id
          required: true
          type: integer
        - description: The Retirement Goal Expense to be updated on a Fact Finder
          in: body
          name: model
          required: true
          schema:
            $ref: "#/definitions/RetirementExpenseModel"
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/RetirementExpenseWithIdModel"
        "400":
          description: The request is invalid.
        "401":
          description: Unauthorized for Retirement Goal Expense data access.
        "403":
          description: Request is restricted for access to Retirement Goal Expense.
        "404":
          description: Retirement Goal Expense not found.
      tags:
        - RetirementGoals
  /api/ServiceInformation:
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves information statistics for the current service.<br />\r

        \              Purpose: Provides access to Service Information."
      operationId: FactFinderServiceInformation_Get
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/ServiceInformationModel"
        "404":
          description: Object not found.
      tags:
        - FactFinderServiceInformation
  /api/StatesProvinces:
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves all States and Provinces for the specified country.<br />\r

        \              Purpose: Provides access to the States and Provinces."
      operationId: StatesProvinces_GetByCountry
      parameters:
        - description: The country used to filter States and Provinces
          enum:
            - UnitedStates
            - Canada
          in: query
          name: country
          required: true
          type: string
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/StatesProvincesModel"
        "400":
          description: The request is invalid.
        "404":
          description: State or Province not found.
      tags:
        - StatesProvinces
  "/api/StatesProvinces/{id}":
    get:
      consumes: []
      deprecated: false
      description: "Description: This operation retrieves the States and Provinces for the specified id.<br />\r

        \              Purpose: Provides access to the States and Provinces."
      operationId: StatesProvinces_GetById
      parameters:
        - description: The ID of the State or Province used to retreive the State or Province information
          format: int32
          in: path
          name: id
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/StateProvinceModel"
        "400":
          description: The request is invalid.
        "404":
          description: State or Province not found.
      tags:
        - StatesProvinces
definitions:
  AccountHoldingModel:
    properties:
      costBasis:
        format: double
        type: number
      cusip:
        maxLength: 31
        minLength: 0
        type: string
      description:
        maxLength: 255
        minLength: 0
        type: string
      externalDestinationId:
        maxLength: 64
        minLength: 0
        type: string
      marketValue:
        format: double
        type: number
      symbol:
        maxLength: 31
        minLength: 0
        type: string
      valuationDate:
        format: date-time
        type: string
    required:
      - description
    type: object
  AccountHoldingWithIdModel:
    properties:
      accountHoldingId:
        format: int32
        type: integer
      accountId:
        format: int32
        type: integer
      costBasis:
        format: double
        type: number
      cusip:
        type: string
      description:
        type: string
      externalDestinationId:
        type: string
      links:
        items:
          $ref: "#/definitions/ObjectLink"
        type: array
      marketValue:
        format: double
        type: number
      symbol:
        type: string
      valuationDate:
        format: date-time
        type: string
    type: object
  AccountHoldingsModel:
    properties:
      holdings:
        items:
          $ref: "#/definitions/AccountHoldingWithIdModel"
        type: array
    type: object
  AccountHoldingsWithoutIdModel:
    properties:
      holdings:
        items:
          $ref: "#/definitions/AccountHoldingModel"
        type: array
    type: object
  AccountModel:
    properties:
      accountType:
        format: int32
        type: integer
      description:
        maxLength: 255
        minLength: 0
        type: string
      externalDestinationId:
        maxLength: 64
        minLength: 0
        type: string
      externalSourceId:
        maxLength: 64
        minLength: 0
        type: string
      externalSourceName:
        maxLength: 64
        minLength: 0
        type: string
      factFinderId:
        format: int32
        type: integer
      lastUpdated:
        format: date-time
        type: string
      marketValue:
        format: double
        type: number
      owner:
        enum:
          - Client
          - CoClient
          - Joint
          - Dependent
          - Other
        type: string
      ownerDependentId:
        format: int32
        type: integer
    required:
      - factFinderId
      - description
    type: object
  AccountTypeModel:
    properties:
      allowedSavingsTypes:
        items:
          $ref: "#/definitions/SavingsTypeDomainObject"
        type: array
      id:
        format: int32
        type: integer
      links:
        items:
          $ref: "#/definitions/ObjectLink"
        type: array
      name:
        type: string
    type: object
  AccountTypesModel:
    properties:
      accountTypes:
        items:
          $ref: "#/definitions/AccountTypeModel"
        type: array
    type: object
  AccountWithIdModel:
    properties:
      accountId:
        format: int32
        type: integer
      accountType:
        format: int32
        type: integer
      description:
        type: string
      externalDestinationId:
        type: string
      externalSourceId:
        type: string
      externalSourceName:
        type: string
      factFinderId:
        format: int32
        type: integer
      lastUpdated:
        format: date-time
        type: string
      links:
        items:
          $ref: "#/definitions/ObjectLink"
        type: array
      marketValue:
        format: double
        type: number
      owner:
        enum:
          - Client
          - CoClient
          - Joint
          - Dependent
          - Other
        type: string
      ownerDependentId:
        format: int32
        type: integer
    type: object
  AccountWithSubEntitiesModel:
    properties:
      accountId:
        format: int32
        type: integer
      accountType:
        format: int32
        type: integer
      description:
        type: string
      externalDestinationId:
        type: string
      externalSourceId:
        type: string
      externalSourceName:
        type: string
      factFinderId:
        format: int32
        type: integer
      holdings:
        items:
          $ref: "#/definitions/AccountHoldingWithIdModel"
        type: array
      lastUpdated:
        format: date-time
        type: string
      links:
        items:
          $ref: "#/definitions/ObjectLink"
        type: array
      marketValue:
        format: double
        type: number
      owner:
        enum:
          - Client
          - CoClient
          - Joint
          - Dependent
          - Other
        type: string
      ownerDependentId:
        format: int32
        type: integer
      savingsStrategies:
        items:
          $ref: "#/definitions/SavingsStrategyWithIdModel"
        type: array
    type: object
  AccountsModel:
    properties:
      accounts:
        items:
          $ref: "#/definitions/AccountWithIdModel"
        type: array
    type: object
  AccountsWithSubEntitiesModel:
    properties:
      accounts:
        items:
          $ref: "#/definitions/AccountWithSubEntitiesModel"
        type: array
    type: object
  ClientModel:
    properties:
      clientId:
        format: int32
        type: integer
      message:
        type: string
      ownerUser:
        type: string
      planId:
        format: int32
        type: integer
      success:
        type: boolean
    type: object
  ClientsModel:
    properties:
      externalDestinationName:
        maxLength: 49
        minLength: 0
        type: string
      factFinderId:
        format: int32
        type: integer
      planAction:
        enum:
          - New
          - Duplicate
          - Project
          - Update
        type: string
    required:
      - factFinderId
      - planAction
    type: object
  CriticalIllnessInsurancePoliciesModel:
    properties:
      criticalIllnessInsurancePolicies:
        items:
          $ref: "#/definitions/CriticalIllnessInsurancePolicyWithIdModel"
        type: array
    type: object
  CriticalIllnessInsurancePolicyModel:
    properties:
      benefit:
        format: double
        type: number
      description:
        maxLength: 255
        minLength: 0
        type: string
      externalDestinationId:
        maxLength: 64
        minLength: 0
        type: string
      factFinderId:
        format: int32
        type: integer
      frequency:
        format: int32
        type: integer
      insured:
        enum:
          - Client
          - CoClient
        type: string
      policyType:
        format: int32
        type: integer
      premium:
        format: double
        type: number
    required:
      - factFinderId
      - description
    type: object
  CriticalIllnessInsurancePolicyTypeModel:
    properties:
      id:
        format: int32
        type: integer
      links:
        items:
          $ref: "#/definitions/ObjectLink"
        type: array
      name:
        type: string
    type: object
  CriticalIllnessInsurancePolicyTypesModel:
    properties:
      insurancePolicyTypes:
        items:
          $ref: "#/definitions/CriticalIllnessInsurancePolicyTypeModel"
        type: array
    type: object
  CriticalIllnessInsurancePolicyWithIdModel:
    properties:
      benefit:
        format: double
        type: number
      description:
        type: string
      externalDestinationId:
        type: string
      factFinderId:
        format: int32
        type: integer
      frequency:
        format: int32
        type: integer
      insurancePolicyId:
        format: int32
        type: integer
      insured:
        enum:
          - Client
          - CoClient
        type: string
      links:
        items:
          $ref: "#/definitions/ObjectLink"
        type: array
      policyType:
        format: int32
        type: integer
      premium:
        format: double
        type: number
    type: object
  DefinedBenefitPensionModel:
    properties:
      description:
        maxLength: 255
        minLength: 0
        type: string
      estimatedAmount:
        format: double
        type: number
      externalDestinationId:
        maxLength: 64
        minLength: 0
        type: string
      factFinderId:
        format: int32
        type: integer
      member:
        enum:
          - Client
          - CoClient
        type: string
      startDate:
        format: date-time
        type: string
    required:
      - factFinderId
      - description
    type: object
  DefinedBenefitPensionWithIdModel:
    properties:
      definedBenefitPensionId:
        format: int32
        type: integer
      description:
        type: string
      estimatedAmount:
        format: double
        type: number
      externalDestinationId:
        type: string
      factFinderId:
        format: int32
        type: integer
      links:
        items:
          $ref: "#/definitions/ObjectLink"
        type: array
      member:
        enum:
          - Client
          - CoClient
        type: string
      startDate:
        format: date-time
        type: string
    type: object
  DefinedBenefitPensionsModel:
    properties:
      definedBenefitPensions:
        items:
          $ref: "#/definitions/DefinedBenefitPensionWithIdModel"
        type: array
    type: object
  DemographicsDependentModel:
    properties:
      birthDate:
        format: date-time
        type: string
      dependentOf:
        enum:
          - Client
          - CoClient
          - Joint
          - Other
        type: string
      externalDestinationId:
        maxLength: 64
        minLength: 0
        type: string
      firstName:
        maxLength: 255
        minLength: 0
        type: string
      lastName:
        maxLength: 255
        minLength: 0
        type: string
      relationship:
        enum:
          - Son
          - Daughter
          - FosterSon
          - FosterDaughter
          - Grandson
          - Granddaughter
          - Nephew
          - Niece
          - MaleCousin
          - FemaleCousin
          - Father
          - Mother
          - Grandfather
          - Grandmother
          - Uncle
          - Aunt
          - Brother
          - Sister
          - SonInLaw
          - DaughterInLaw
          - MaleOther
          - FemaleOther
        type: string
    required:
      - firstName
      - lastName
      - birthDate
      - relationship
      - dependentOf
    type: object
  DemographicsDependentWithIdModel:
    properties:
      birthDate:
        format: date-time
        type: string
      demographicsId:
        format: int32
        type: integer
      dependentId:
        format: int32
        type: integer
      dependentOf:
        enum:
          - Client
          - CoClient
          - Joint
          - Other
        type: string
      externalDestinationId:
        type: string
      firstName:
        type: string
      lastName:
        type: string
      links:
        items:
          $ref: "#/definitions/ObjectLink"
        type: array
      relationship:
        enum:
          - Son
          - Daughter
          - FosterSon
          - FosterDaughter
          - Grandson
          - Granddaughter
          - Nephew
          - Niece
          - MaleCousin
          - FemaleCousin
          - Father
          - Mother
          - Grandfather
          - Grandmother
          - Uncle
          - Aunt
          - Brother
          - Sister
          - SonInLaw
          - DaughterInLaw
          - MaleOther
          - FemaleOther
        type: string
    type: object
  DemographicsDependentsModel:
    properties:
      dependents:
        items:
          $ref: "#/definitions/DemographicsDependentWithIdModel"
        type: array
    type: object
  DemographicsModel:
    properties:
      city:
        type: string
      externalDestinationId:
        maxLength: 64
        minLength: 0
        type: string
      externalSourceId:
        type: string
      factFinderId:
        format: int32
        type: integer
      head1:
        $ref: "#/definitions/FamilyHeadModel"
      head2:
        $ref: "#/definitions/FamilyHeadModel"
      jointAnalysis:
        type: boolean
      state:
        format: int32
        type: integer
    required:
      - jointAnalysis
      - head1
      - factFinderId
      - city
      - state
    type: object
  DemographicsWithIdModel:
    properties:
      city:
        type: string
      created:
        format: date-time
        type: string
      demographicsId:
        format: int32
        type: integer
      externalDestinationId:
        type: string
      externalSourceId:
        type: string
      factFinderId:
        format: int32
        type: integer
      head1:
        $ref: "#/definitions/FamilyHeadModel"
      head2:
        $ref: "#/definitions/FamilyHeadModel"
      jointAnalysis:
        type: boolean
      links:
        items:
          $ref: "#/definitions/ObjectLink"
        type: array
      lockRetirement:
        type: boolean
      state:
        format: int32
        type: integer
    type: object
  DisabilityInsurancePoliciesModel:
    properties:
      disabilityInsurancePolicies:
        items:
          $ref: "#/definitions/DisabilityInsurancePolicyWithIdModel"
        type: array
    type: object
  DisabilityInsurancePolicyModel:
    properties:
      benefit:
        format: double
        type: number
      benefitFrequency:
        format: int32
        type: integer
      benefitType:
        enum:
          - Dollar
          - Percent
        type: string
      description:
        maxLength: 255
        minLength: 0
        type: string
      externalDestinationId:
        maxLength: 64
        minLength: 0
        type: string
      factFinderId:
        format: int32
        type: integer
      insured:
        enum:
          - Client
          - CoClient
        type: string
      policyType:
        format: int32
        type: integer
      premium:
        format: double
        type: number
      premiumFrequency:
        format: int32
        type: integer
    required:
      - factFinderId
      - description
    type: object
  DisabilityInsurancePolicyTypeModel:
    properties:
      id:
        format: int32
        type: integer
      links:
        items:
          $ref: "#/definitions/ObjectLink"
        type: array
      name:
        type: string
    type: object
  DisabilityInsurancePolicyTypesModel:
    properties:
      insurancePolicyTypes:
        items:
          $ref: "#/definitions/DisabilityInsurancePolicyTypeModel"
        type: array
    type: object
  DisabilityInsurancePolicyWithIdModel:
    properties:
      benefit:
        format: double
        type: number
      benefitFrequency:
        format: int32
        type: integer
      benefitType:
        enum:
          - Dollar
          - Percent
        type: string
      description:
        type: string
      externalDestinationId:
        type: string
      factFinderId:
        format: int32
        type: integer
      insurancePolicyId:
        format: int32
        type: integer
      insured:
        enum:
          - Client
          - CoClient
        type: string
      links:
        items:
          $ref: "#/definitions/ObjectLink"
        type: array
      policyType:
        format: int32
        type: integer
      premium:
        format: double
        type: number
      premiumFrequency:
        format: int32
        type: integer
    type: object
  EducationExpenseModel:
    properties:
      annualCost:
        format: double
        type: number
      externalDestinationId:
        maxLength: 64
        minLength: 0
        type: string
      member:
        enum:
          - Client
          - CoClient
          - Dependent
        type: string
      memberDependentId:
        format: int32
        type: integer
      startYear:
        format: date-time
        type: string
      years:
        format: int32
        maximum: 99
        minimum: 1
        type: integer
    type: object
  EducationExpenseWithIdModel:
    properties:
      annualCost:
        format: double
        type: number
      educationExpenseId:
        format: int32
        type: integer
      educationGoalId:
        format: int32
        type: integer
      externalDestinationId:
        type: string
      links:
        items:
          $ref: "#/definitions/ObjectLink"
        type: array
      member:
        enum:
          - Client
          - CoClient
          - Dependent
        type: string
      memberDependentId:
        format: int32
        type: integer
      startYear:
        format: date-time
        type: string
      years:
        format: int32
        type: integer
    type: object
  EducationExpensesModel:
    properties:
      educationExpenses:
        items:
          $ref: "#/definitions/EducationExpenseWithIdModel"
        type: array
    type: object
  EducationGoalModel:
    properties:
      description:
        maxLength: 255
        minLength: 0
        type: string
      externalDestinationId:
        maxLength: 64
        minLength: 0
        type: string
      factFinderId:
        format: int32
        type: integer
      projectedCost:
        format: double
        type: number
    required:
      - factFinderId
      - description
    type: object
  EducationGoalWithIdModel:
    properties:
      description:
        type: string
      educationGoalId:
        format: int32
        type: integer
      externalDestinationId:
        type: string
      factFinderId:
        format: int32
        type: integer
      links:
        items:
          $ref: "#/definitions/ObjectLink"
        type: array
      projectedCost:
        format: double
        type: number
    type: object
  EducationGoalsModel:
    properties:
      educationGoals:
        items:
          $ref: "#/definitions/EducationGoalWithIdModel"
        type: array
    type: object
  ExpenseModel:
    properties:
      annualPeriod:
        format: int32
        maximum: 99
        minimum: 1
        type: integer
      description:
        maxLength: 255
        minLength: 0
        type: string
      endDate:
        format: date-time
        type: string
      expenseAmount:
        format: double
        type: number
      expenseTypeId:
        format: int32
        type: integer
      externalDestinationId:
        maxLength: 64
        minLength: 0
        type: string
      factFinderId:
        format: int32
        type: integer
      frequency:
        format: int32
        type: integer
      member:
        enum:
          - Client
          - CoClient
          - Joint
        type: string
      startDate:
        format: date-time
        type: string
    required:
      - factFinderId
      - description
    type: object
  ExpenseTypeModel:
    properties:
      id:
        format: int32
        type: integer
      links:
        items:
          $ref: "#/definitions/ObjectLink"
        type: array
      name:
        type: string
    type: object
  ExpenseTypesModel:
    properties:
      expenseTypes:
        items:
          $ref: "#/definitions/ExpenseTypeModel"
        type: array
    type: object
  ExpenseWithIdModel:
    properties:
      annualPeriod:
        format: int32
        type: integer
      description:
        type: string
      endDate:
        format: date-time
        type: string
      expenseAmount:
        format: double
        type: number
      expenseId:
        format: int32
        type: integer
      expenseTypeId:
        format: int32
        type: integer
      externalDestinationId:
        type: string
      factFinderId:
        format: int32
        type: integer
      frequency:
        format: int32
        type: integer
      links:
        items:
          $ref: "#/definitions/ObjectLink"
        type: array
      member:
        enum:
          - Client
          - CoClient
          - Joint
        type: string
      startDate:
        format: date-time
        type: string
    type: object
  ExpensesModel:
    properties:
      expenses:
        items:
          $ref: "#/definitions/ExpenseWithIdModel"
        type: array
    type: object
  FactFinderEntityModel:
    properties:
      householdId:
        format: int32
        maximum: 2147483647
        minimum: 0
        type: integer
      modules:
        items:
          enum:
            - Demographics
            - Assets
            - Liabilities
            - Incomes
            - Expenses
            - Insurance
            - Retirement
            - Education
            - MajorPurchase
          type: string
        type: array
      planLevel:
        enum:
          - Level2
          - Level1
        type: string
    required:
      - householdId
    type: object
  FactFinderModel:
    properties:
      status:
        enum:
          - New
          - InProgress
          - ClientSubmitted
          - AdvisorAccepted
          - Canceled
          - Draft
          - Deleted
        type: string
    type: object
  FactFinderModuleModel:
    properties:
      available:
        type: boolean
      moduleName:
        enum:
          - Demographics
          - Assets
          - Liabilities
          - Incomes
          - Expenses
          - Insurance
          - Retirement
          - Education
          - MajorPurchase
        type: string
      visited:
        type: boolean
    required:
      - moduleName
    type: object
  FactFinderModuleWithIdModel:
    properties:
      available:
        type: boolean
      factFinderId:
        format: int32
        type: integer
      links:
        items:
          $ref: "#/definitions/ObjectLink"
        type: array
      moduleId:
        format: int32
        type: integer
      moduleName:
        enum:
          - Demographics
          - Assets
          - Liabilities
          - Incomes
          - Expenses
          - Insurance
          - Retirement
          - Education
          - MajorPurchase
        type: string
      visited:
        type: boolean
    type: object
  FactFinderModulesModel:
    properties:
      factFinderModules:
        items:
          $ref: "#/definitions/FactFinderModuleWithIdModel"
        type: array
    type: object
  FactFinderPopulatableEntityModel:
    properties:
      householdId:
        format: int32
        maximum: 2147483647
        minimum: 0
        type: integer
      modules:
        items:
          enum:
            - Demographics
            - Assets
            - Liabilities
            - Incomes
            - Expenses
            - Insurance
            - Retirement
            - Education
            - MajorPurchase
          type: string
        type: array
      planId:
        format: int32
        maximum: 2147483647
        minimum: 0
        type: integer
      planLevel:
        enum:
          - Level2
          - Level1
        type: string
    required:
      - householdId
    type: object
  FactFinderPopulationModel:
    properties:
      planId:
        format: int32
        maximum: 2147483647
        minimum: 0
        type: integer
    type: object
  FactFinderSnapshotWithIdModel:
    properties:
      created:
        format: date-time
        type: string
      factFinderData:
        $ref: "#/definitions/IFactFinderSnapshotDomainObject"
      factFinderId:
        format: int32
        type: integer
      factFinderStatus:
        enum:
          - New
          - InProgress
          - ClientSubmitted
          - AdvisorAccepted
          - Canceled
          - Draft
          - Deleted
        type: string
      snapshotId:
        format: int32
        type: integer
    type: object
  FactFinderSnapshotsModel:
    properties:
      snapshots:
        items:
          $ref: "#/definitions/FactFinderSnapshotWithIdModel"
        type: array
    type: object
  FactFinderWithIdModel:
    properties:
      countryCode:
        enum:
          - UnitedStates
          - Canada
        type: string
      created:
        format: date-time
        type: string
      factFinderId:
        format: int32
        type: integer
      householdId:
        format: int32
        type: integer
      lastStatusUpdate:
        format: date-time
        type: string
      links:
        items:
          $ref: "#/definitions/ObjectLink"
        type: array
      modules:
        $ref: "#/definitions/FactFinderModulesModel"
      planId:
        format: int32
        type: integer
      planLevel:
        enum:
          - Level2
          - Level1
        type: string
      status:
        enum:
          - New
          - InProgress
          - ClientSubmitted
          - AdvisorAccepted
          - Canceled
          - Draft
          - Deleted
        type: string
    type: object
  FamilyHeadModel:
    properties:
      alreadyRetired:
        type: boolean
      birthDate:
        format: date-time
        type: string
      externalDestinationId:
        type: string
      firstName:
        maxLength: 255
        minLength: 0
        type: string
      gender:
        enum:
          - Male
          - Female
          - None
        type: string
      lastName:
        maxLength: 255
        minLength: 0
        type: string
      taxFilingStatus:
        format: int32
        type: integer
    required:
      - firstName
      - lastName
      - birthDate
      - gender
      - taxFilingStatus
      - alreadyRetired
    type: object
  FilingStatusTypeModel:
    properties:
      filingStatusTypeId:
        format: int32
        type: integer
      filingStatusTypeName:
        type: string
      hasJointDependent:
        type: boolean
      links:
        items:
          $ref: "#/definitions/ObjectLink"
        type: array
      partnerStatuses:
        items:
          format: int32
          type: integer
        type: array
      validForSingleAnalysis:
        type: boolean
    type: object
  FilingStatusTypesModel:
    properties:
      filingStatusTypes:
        items:
          $ref: "#/definitions/FilingStatusTypeModel"
        type: array
    type: object
  FrequencyTypeModel:
    properties:
      id:
        format: int32
        type: integer
      links:
        items:
          $ref: "#/definitions/ObjectLink"
        type: array
      name:
        type: string
    type: object
  FrequencyTypesModel:
    properties:
      frequencyTypes:
        items:
          $ref: "#/definitions/FrequencyTypeModel"
        type: array
    type: object
  IAccountHoldingDomainObject:
    properties:
      accountHoldingId:
        format: int32
        type: integer
      accountId:
        format: int32
        type: integer
      costBasis:
        format: double
        type: number
      cusip:
        type: string
      description:
        type: string
      externalDestinationId:
        type: string
      heldAway:
        type: boolean
      marketValue:
        format: double
        type: number
      symbol:
        type: string
      valuationDate:
        format: date-time
        type: string
    type: object
  IAccountSavingsStrategyDomainObject:
    properties:
      accountId:
        format: int32
        type: integer
      employerSavingsAmount:
        format: double
        type: number
      employerSavingsAmountType:
        enum:
          - Dollar
          - Percent
          - Max
        type: string
      endDate:
        format: date-time
        type: string
      externalDestinationId:
        type: string
      frequencyId:
        format: int32
        type: integer
      mandatoryAmount:
        format: double
        type: number
      mandatoryAmountType:
        enum:
          - Dollar
          - Percent
          - Max
        type: string
      postTaxSavingsAmount:
        format: double
        type: number
      postTaxSavingsAmountType:
        enum:
          - Dollar
          - Percent
          - Max
        type: string
      preTaxSavingsAmount:
        format: double
        type: number
      preTaxSavingsAmountType:
        enum:
          - Dollar
          - Percent
          - Max
        type: string
      savingsStrategyId:
        format: int32
        type: integer
      startDate:
        format: date-time
        type: string
    type: object
  IAccountWithSubEntitiesDomainObject:
    properties:
      accountHoldings:
        items:
          $ref: "#/definitions/IAccountHoldingDomainObject"
        type: array
      accountId:
        format: int32
        type: integer
      accountType:
        format: int32
        type: integer
      description:
        type: string
      externalDestinationId:
        type: string
      externalSourceId:
        type: string
      externalSourceName:
        type: string
      factFinderId:
        format: int32
        type: integer
      lastUpdated:
        format: date-time
        type: string
      marketValue:
        format: double
        type: number
      owner:
        enum:
          - Client
          - CoClient
          - Joint
          - Dependent
          - Other
        type: string
      ownerDependentId:
        format: int32
        type: integer
      savingsStrategies:
        items:
          $ref: "#/definitions/IAccountSavingsStrategyDomainObject"
        type: array
    type: object
  ICriticalIllnessInsurancePolicyDomainObject:
    properties:
      benefit:
        format: double
        type: number
      criticalIllnessInsurancePolicyId:
        format: int32
        type: integer
      description:
        type: string
      externalDestinationId:
        type: string
      factFinderId:
        format: int32
        type: integer
      frequency:
        format: int32
        type: integer
      insured:
        enum:
          - Client
          - CoClient
        type: string
      policyType:
        format: int32
        type: integer
      premium:
        format: double
        type: number
    type: object
  IDemographicsDependentDomainObject:
    properties:
      birthDate:
        format: date-time
        type: string
      demographicsId:
        format: int32
        type: integer
      dependentId:
        format: int32
        type: integer
      dependentOf:
        enum:
          - Client
          - CoClient
          - Joint
          - Other
        type: string
      externalDestinationId:
        type: string
      firstName:
        type: string
      lastName:
        type: string
      relationship:
        enum:
          - Son
          - Daughter
          - FosterSon
          - FosterDaughter
          - Grandson
          - Granddaughter
          - Nephew
          - Niece
          - MaleCousin
          - FemaleCousin
          - Father
          - Mother
          - Grandfather
          - Grandmother
          - Uncle
          - Aunt
          - Brother
          - Sister
          - SonInLaw
          - DaughterInLaw
          - MaleOther
          - FemaleOther
        type: string
    type: object
  IDemographicsWithDependentsDomainObject:
    properties:
      city:
        type: string
      created:
        format: date-time
        type: string
      demographicsId:
        format: int32
        type: integer
      dependents:
        items:
          $ref: "#/definitions/IDemographicsDependentDomainObject"
        type: array
      externalDestinationId:
        type: string
      externalSourceId:
        type: string
      factFinderId:
        format: int32
        type: integer
      head1:
        $ref: "#/definitions/IFamilyHeadDomainObject"
      head2:
        $ref: "#/definitions/IFamilyHeadDomainObject"
      jointAnalysis:
        type: boolean
      lockRetirement:
        type: boolean
      state:
        format: int32
        type: integer
    type: object
  IDisabilityInsurancePolicyDomainObject:
    properties:
      benefit:
        format: double
        type: number
      benefitFrequency:
        format: int32
        type: integer
      benefitType:
        enum:
          - Dollar
          - Percent
        type: string
      description:
        type: string
      disabilityInsurancePolicyId:
        format: int32
        type: integer
      externalDestinationId:
        type: string
      factFinderId:
        format: int32
        type: integer
      insured:
        enum:
          - Client
          - CoClient
        type: string
      policyType:
        format: int32
        type: integer
      premium:
        format: double
        type: number
      premiumFrequency:
        format: int32
        type: integer
    type: object
  IEducationExpenseDomainObject:
    properties:
      annualCost:
        format: double
        type: number
      educationExpenseId:
        format: int32
        type: integer
      educationGoalId:
        format: int32
        type: integer
      externalDestinationId:
        type: string
      member:
        enum:
          - Client
          - CoClient
          - Dependent
        type: string
      memberDependentId:
        format: int32
        type: integer
      startYear:
        format: date-time
        type: string
      years:
        format: int32
        type: integer
    type: object
  IEducationGoalWithExpensesDomainObject:
    properties:
      description:
        type: string
      educationExpenses:
        items:
          $ref: "#/definitions/IEducationExpenseDomainObject"
        type: array
      educationGoalId:
        format: int32
        type: integer
      externalDestinationId:
        type: string
      factFinderId:
        format: int32
        type: integer
      projectedCost:
        format: double
        type: number
    type: object
  IExpenseDomainObject:
    properties:
      annualPeriod:
        format: int32
        type: integer
      description:
        type: string
      endDate:
        format: date-time
        type: string
      expenseAmount:
        format: double
        type: number
      expenseId:
        format: int32
        type: integer
      expenseTypeId:
        format: int32
        type: integer
      externalDestinationId:
        type: string
      factFinderId:
        format: int32
        type: integer
      frequency:
        format: int32
        type: integer
      member:
        enum:
          - Client
          - CoClient
          - Joint
        type: string
      startDate:
        format: date-time
        type: string
    type: object
  IFactFinderDefinedBenefitPensionDomainObject:
    properties:
      definedBenefitPensionId:
        format: int32
        readOnly: true
        type: integer
      description:
        readOnly: true
        type: string
      estimatedAmount:
        format: double
        readOnly: true
        type: number
      externalDestinationId:
        type: string
      factFinderId:
        format: int32
        type: integer
      member:
        enum:
          - Client
          - CoClient
        readOnly: true
        type: string
      startDate:
        format: date-time
        readOnly: true
        type: string
    type: object
  IFactFinderLiabilityDomainObject:
    properties:
      balance:
        format: double
        type: number
      balanceAsOfDate:
        format: date-time
        type: string
      description:
        type: string
      externalDestinationId:
        type: string
      externalSourceId:
        type: string
      factFinderId:
        format: int32
        type: integer
      frequency:
        format: int32
        type: integer
      importSource:
        type: string
      interestRate:
        format: double
        type: number
      lastUpdated:
        format: date-time
        type: string
      liabilityId:
        format: int32
        type: integer
      liabilityType:
        format: int32
        type: integer
      loanDate:
        format: date-time
        type: string
      originalPrincipal:
        format: double
        type: number
      owner:
        enum:
          - Client
          - CoClient
          - Joint
        type: string
      payment:
        format: double
        type: number
      paymentType:
        enum:
          - InterestOnly
          - PrincipalAndInterest
          - SetPrincipal
          - LastPeriod
        type: string
    type: object
  IFactFinderLifestyleAssetDomainObject:
    properties:
      description:
        readOnly: true
        type: string
      externalDestinationId:
        type: string
      factFinderId:
        format: int32
        type: integer
      lifestyleAssetId:
        format: int32
        readOnly: true
        type: integer
      marketValue:
        format: double
        readOnly: true
        type: number
      owner:
        enum:
          - Client
          - CoClient
          - Joint
        readOnly: true
        type: string
      purchaseAmount:
        format: double
        readOnly: true
        type: number
      purchaseDate:
        format: date-time
        readOnly: true
        type: string
      type:
        format: int32
        readOnly: true
        type: integer
    type: object
  IFactFinderSnapshotDomainObject:
    properties:
      accounts:
        items:
          $ref: "#/definitions/IAccountWithSubEntitiesDomainObject"
        type: array
      criticalIllnessInsurancePolicies:
        items:
          $ref: "#/definitions/ICriticalIllnessInsurancePolicyDomainObject"
        type: array
      definedBenefitPensions:
        items:
          $ref: "#/definitions/IFactFinderDefinedBenefitPensionDomainObject"
        type: array
      demographics:
        $ref: "#/definitions/IDemographicsWithDependentsDomainObject"
      disabilityInsurancePolicies:
        items:
          $ref: "#/definitions/IDisabilityInsurancePolicyDomainObject"
        type: array
      educationGoals:
        items:
          $ref: "#/definitions/IEducationGoalWithExpensesDomainObject"
        type: array
      expenses:
        items:
          $ref: "#/definitions/IExpenseDomainObject"
        type: array
      incomes:
        items:
          $ref: "#/definitions/IIncomeDomainObject"
        type: array
      liabilities:
        items:
          $ref: "#/definitions/IFactFinderLiabilityDomainObject"
        type: array
      lifeInsurancePolicies:
        items:
          $ref: "#/definitions/ILifeInsurancePolicyDomainObject"
        type: array
      lifestyleAssets:
        items:
          $ref: "#/definitions/IFactFinderLifestyleAssetDomainObject"
        type: array
      longTermCareInsurancePolicies:
        items:
          $ref: "#/definitions/ILongTermCareInsurancePolicyDomainObject"
        type: array
      majorPurchaseGoals:
        items:
          $ref: "#/definitions/IMajorPurchaseGoalDomainObject"
        type: array
      planYear:
        format: int32
        type: integer
      realEstateAssets:
        items:
          $ref: "#/definitions/IRealEstateAssetDomainObject"
        type: array
      retirementGoal:
        $ref: "#/definitions/IRetirementGoalWithExpensesDomainObject"
    type: object
  IFamilyHeadDomainObject:
    properties:
      alreadyRetired:
        type: boolean
      birthDate:
        format: date-time
        type: string
      externalDestinationId:
        type: string
      firstName:
        type: string
      gender:
        enum:
          - Male
          - Female
          - None
        type: string
      lastName:
        type: string
      taxFilingStatus:
        format: int32
        type: integer
    type: object
  IIncomeDomainObject:
    properties:
      annualAmount:
        format: double
        type: number
      description:
        type: string
      endDate:
        format: date-time
        type: string
      externalDestinationId:
        type: string
      factFinderId:
        format: int32
        type: integer
      incomeId:
        format: int32
        type: integer
      incomeTypeId:
        format: int32
        type: integer
      owner:
        enum:
          - Client
          - CoClient
        type: string
      startDate:
        format: date-time
        type: string
    type: object
  ILifeInsurancePolicyDomainObject:
    properties:
      beneficiary:
        enum:
          - Client
          - CoClient
          - Dependent
          - Other
        type: string
      beneficiaryDependentId:
        format: int32
        type: integer
      benefit:
        format: double
        type: number
      description:
        type: string
      externalDestinationId:
        type: string
      factFinderId:
        format: int32
        type: integer
      frequency:
        format: int32
        type: integer
      generalAccountMarketValue:
        format: double
        type: number
      insured:
        enum:
          - Client
          - CoClient
          - FirstToDie
          - SecondToDie
          - Other
        type: string
      lifeInsurancePolicyId:
        format: int32
        type: integer
      payer:
        enum:
          - Client
          - CoClient
          - Joint
          - Other
        type: string
      policyType:
        format: int32
        type: integer
      premium:
        format: double
        type: number
      subaccounts:
        items:
          $ref: "#/definitions/LifeInsurancePolicySubaccountDomainObject"
        type: array
    type: object
  ILongTermCareInsurancePolicyDomainObject:
    properties:
      benefit:
        format: double
        type: number
      benefitFrequency:
        format: int32
        type: integer
      description:
        type: string
      externalDestinationId:
        type: string
      factFinderId:
        format: int32
        type: integer
      insured:
        enum:
          - Client
          - CoClient
        type: string
      longTermCareInsurancePolicyId:
        format: int32
        type: integer
      premium:
        format: double
        type: number
      premiumFrequency:
        format: int32
        type: integer
    type: object
  IMajorPurchaseGoalDomainObject:
    properties:
      amount:
        format: double
        readOnly: true
        type: number
      description:
        readOnly: true
        type: string
      externalDestinationId:
        type: string
      factFinderId:
        format: int32
        type: integer
      majorPurchaseGoalId:
        format: int32
        readOnly: true
        type: integer
      majorPurchaseGoalTypeId:
        format: int32
        readOnly: true
        type: integer
      member:
        enum:
          - Client
          - CoClient
          - Joint
        readOnly: true
        type: string
      targetDate:
        format: date-time
        readOnly: true
        type: string
    type: object
  IRealEstateAssetDomainObject:
    properties:
      description:
        type: string
      externalDestinationId:
        type: string
      factFinderId:
        format: int32
        type: integer
      frequency:
        format: int32
        type: integer
      marketValue:
        format: double
        type: number
      owner:
        enum:
          - Client
          - CoClient
          - Joint
        type: string
      purchaseAmount:
        format: double
        type: number
      purchaseDate:
        format: date-time
        type: string
      realEstateAssetId:
        format: int32
        type: integer
      rentalIncome:
        format: double
        type: number
    type: object
  IRetirementExpenseDomainObject:
    properties:
      amount:
        format: double
        type: number
      annualPeriod:
        format: int32
        type: integer
      description:
        type: string
      endDate:
        format: date-time
        type: string
      externalDestinationId:
        type: string
      frequency:
        format: int32
        type: integer
      member:
        enum:
          - Client
          - CoClient
          - Joint
        type: string
      retirementExpenseId:
        format: int32
        type: integer
      retirementGoalId:
        format: int32
        type: integer
      startDate:
        format: date-time
        type: string
    type: object
  IRetirementGoalWithExpensesDomainObject:
    properties:
      externalDestinationId:
        type: string
      factFinderId:
        format: int32
        type: integer
      head1RetirementDate:
        format: date-time
        type: string
      head2RetirementDate:
        format: date-time
        type: string
      retirementExpenses:
        items:
          $ref: "#/definitions/IRetirementExpenseDomainObject"
        type: array
      retirementGoalId:
        format: int32
        type: integer
    type: object
  IncomeModel:
    properties:
      annualAmount:
        format: double
        type: number
      description:
        maxLength: 255
        minLength: 0
        type: string
      endDate:
        format: date-time
        type: string
      externalDestinationId:
        maxLength: 64
        minLength: 0
        type: string
      factFinderId:
        format: int32
        type: integer
      incomeTypeId:
        format: int32
        type: integer
      owner:
        enum:
          - Client
          - CoClient
        type: string
      startDate:
        format: date-time
        type: string
    required:
      - factFinderId
      - description
    type: object
  IncomeTypeModel:
    properties:
      id:
        format: int32
        type: integer
      links:
        items:
          $ref: "#/definitions/ObjectLink"
        type: array
      name:
        type: string
    type: object
  IncomeTypesModel:
    properties:
      incomeTypes:
        items:
          $ref: "#/definitions/IncomeTypeModel"
        type: array
    type: object
  IncomeWithIdModel:
    properties:
      annualAmount:
        format: double
        type: number
      description:
        type: string
      endDate:
        format: date-time
        type: string
      externalDestinationId:
        type: string
      factFinderId:
        format: int32
        type: integer
      incomeId:
        format: int32
        type: integer
      incomeTypeId:
        format: int32
        type: integer
      links:
        items:
          $ref: "#/definitions/ObjectLink"
        type: array
      owner:
        enum:
          - Client
          - CoClient
        type: string
      startDate:
        format: date-time
        type: string
    type: object
  IncomesModel:
    properties:
      incomes:
        items:
          $ref: "#/definitions/IncomeWithIdModel"
        type: array
    type: object
  LiabilitiesModel:
    properties:
      liabilities:
        items:
          $ref: "#/definitions/LiabilityWithIdModel"
        type: array
    type: object
  LiabilityModel:
    properties:
      balance:
        format: double
        type: number
      balanceAsOfDate:
        format: date-time
        type: string
      description:
        maxLength: 255
        minLength: 0
        type: string
      externalDestinationId:
        maxLength: 64
        minLength: 0
        type: string
      externalSourceId:
        maxLength: 64
        minLength: 0
        type: string
      externalSourceName:
        maxLength: 64
        minLength: 0
        type: string
      factFinderId:
        format: int32
        type: integer
      frequency:
        format: int32
        type: integer
      interestRate:
        format: double
        maximum: 50
        minimum: 0
        type: number
      lastUpdated:
        format: date-time
        type: string
      liabilityType:
        format: int32
        type: integer
      loanDate:
        format: date-time
        type: string
      originalPrincipal:
        format: double
        type: number
      owner:
        enum:
          - Client
          - CoClient
          - Joint
        type: string
      payment:
        format: double
        type: number
      paymentType:
        enum:
          - InterestOnly
          - PrincipalAndInterest
          - SetPrincipal
          - LastPeriod
        type: string
    required:
      - factFinderId
      - description
    type: object
  LiabilityTypeModel:
    properties:
      id:
        format: int32
        type: integer
      links:
        items:
          $ref: "#/definitions/ObjectLink"
        type: array
      name:
        type: string
    type: object
  LiabilityTypesModel:
    properties:
      liabilityTypes:
        items:
          $ref: "#/definitions/LiabilityTypeModel"
        type: array
    type: object
  LiabilityWithIdModel:
    properties:
      balance:
        format: double
        type: number
      balanceAsOfDate:
        format: date-time
        type: string
      description:
        type: string
      externalDestinationId:
        type: string
      externalSourceId:
        type: string
      externalSourceName:
        type: string
      factFinderId:
        format: int32
        type: integer
      frequency:
        format: int32
        type: integer
      interestRate:
        format: double
        type: number
      lastUpdated:
        format: date-time
        type: string
      liabilityId:
        format: int32
        type: integer
      liabilityType:
        format: int32
        type: integer
      links:
        items:
          $ref: "#/definitions/ObjectLink"
        type: array
      loanDate:
        format: date-time
        type: string
      originalPrincipal:
        format: double
        type: number
      owner:
        enum:
          - Client
          - CoClient
          - Joint
        type: string
      payment:
        format: double
        type: number
      paymentType:
        enum:
          - InterestOnly
          - PrincipalAndInterest
          - SetPrincipal
          - LastPeriod
        type: string
    type: object
  LifeInsurancePoliciesModel:
    properties:
      lifeInsurancePolicies:
        items:
          $ref: "#/definitions/LifeInsurancePolicyWithIdModel"
        type: array
    type: object
  LifeInsurancePoliciesWithSubEntitiesModel:
    properties:
      lifeInsurancePolicies:
        items:
          $ref: "#/definitions/LifeInsurancePolicyWithSubEntitiesModel"
        type: array
    type: object
  LifeInsurancePolicyModel:
    properties:
      beneficiary:
        enum:
          - Client
          - CoClient
          - Dependent
          - Other
        type: string
      beneficiaryDependentId:
        format: int32
        type: integer
      benefit:
        format: double
        type: number
      description:
        maxLength: 255
        minLength: 0
        type: string
      externalDestinationId:
        maxLength: 64
        minLength: 0
        type: string
      factFinderId:
        format: int32
        type: integer
      frequency:
        format: int32
        type: integer
      generalAccountMarketValue:
        format: double
        type: number
      insured:
        enum:
          - Client
          - CoClient
          - FirstToDie
          - SecondToDie
          - Other
        type: string
      payer:
        enum:
          - Client
          - CoClient
          - Joint
          - Other
        type: string
      policyType:
        format: int32
        type: integer
      premium:
        format: double
        type: number
    required:
      - factFinderId
      - description
    type: object
  LifeInsurancePolicySubaccountDomainObject:
    properties:
      description:
        type: string
      externalDestinationId:
        type: string
      lifeInsurancePolicyId:
        format: int32
        type: integer
      lifeInsurancePolicySubaccountId:
        format: int32
        type: integer
      marketValue:
        format: double
        type: number
      symbol:
        type: string
    type: object
  LifeInsurancePolicySubaccountModel:
    properties:
      description:
        maxLength: 255
        minLength: 0
        type: string
      externalDestinationId:
        maxLength: 64
        minLength: 0
        type: string
      marketValue:
        format: double
        type: number
      symbol:
        maxLength: 31
        minLength: 0
        type: string
    required:
      - description
    type: object
  LifeInsurancePolicySubaccountWithIdModel:
    properties:
      description:
        maxLength: 255
        minLength: 0
        type: string
      externalDestinationId:
        maxLength: 64
        minLength: 0
        type: string
      lifeInsurancePolicyId:
        format: int32
        type: integer
      lifeInsurancePolicySubaccountId:
        format: int32
        type: integer
      marketValue:
        format: double
        type: number
      symbol:
        maxLength: 31
        minLength: 0
        type: string
    required:
      - description
    type: object
  LifeInsurancePolicySubaccountsModel:
    properties:
      lifeInsurancePolicySubaccounts:
        items:
          $ref: "#/definitions/LifeInsurancePolicySubaccountWithIdModel"
        type: array
    type: object
  LifeInsurancePolicyTypeModel:
    properties:
      id:
        format: int32
        type: integer
      links:
        items:
          $ref: "#/definitions/ObjectLink"
        type: array
      name:
        type: string
    type: object
  LifeInsurancePolicyTypesModel:
    properties:
      insurancePolicyTypes:
        items:
          $ref: "#/definitions/LifeInsurancePolicyTypeModel"
        type: array
    type: object
  LifeInsurancePolicyWithIdModel:
    properties:
      beneficiary:
        enum:
          - Client
          - CoClient
          - Dependent
          - Other
        type: string
      beneficiaryDependentId:
        format: int32
        type: integer
      benefit:
        format: double
        type: number
      description:
        type: string
      externalDestinationId:
        type: string
      factFinderId:
        format: int32
        type: integer
      frequency:
        format: int32
        type: integer
      generalAccountMarketValue:
        format: double
        type: number
      insurancePolicyId:
        format: int32
        type: integer
      insured:
        enum:
          - Client
          - CoClient
          - FirstToDie
          - SecondToDie
          - Other
        type: string
      links:
        items:
          $ref: "#/definitions/ObjectLink"
        type: array
      payer:
        enum:
          - Client
          - CoClient
          - Joint
          - Other
        type: string
      policyType:
        format: int32
        type: integer
      premium:
        format: double
        type: number
    type: object
  LifeInsurancePolicyWithSubEntitiesModel:
    properties:
      beneficiary:
        enum:
          - Client
          - CoClient
          - Dependent
          - Other
        type: string
      beneficiaryDependentId:
        format: int32
        type: integer
      benefit:
        format: double
        type: number
      description:
        type: string
      externalDestinationId:
        type: string
      factFinderId:
        format: int32
        type: integer
      frequency:
        format: int32
        type: integer
      generalAccountMarketValue:
        format: double
        type: number
      insurancePolicyId:
        format: int32
        type: integer
      insured:
        enum:
          - Client
          - CoClient
          - FirstToDie
          - SecondToDie
          - Other
        type: string
      links:
        items:
          $ref: "#/definitions/ObjectLink"
        type: array
      payer:
        enum:
          - Client
          - CoClient
          - Joint
          - Other
        type: string
      policyType:
        format: int32
        type: integer
      premium:
        format: double
        type: number
      subaccounts:
        items:
          $ref: "#/definitions/LifeInsurancePolicySubaccountWithIdModel"
        type: array
    type: object
  LifestyleAssetModel:
    properties:
      description:
        maxLength: 255
        minLength: 0
        type: string
      externalDestinationId:
        maxLength: 64
        minLength: 0
        type: string
      factFinderId:
        format: int32
        type: integer
      marketValue:
        format: double
        type: number
      owner:
        enum:
          - Client
          - CoClient
          - Joint
        type: string
      purchaseAmount:
        format: double
        type: number
      purchaseDate:
        format: date-time
        type: string
      type:
        format: int32
        type: integer
    required:
      - factFinderId
      - description
    type: object
  LifestyleAssetTypeModel:
    properties:
      id:
        format: int32
        type: integer
      links:
        items:
          $ref: "#/definitions/ObjectLink"
        type: array
      name:
        type: string
    type: object
  LifestyleAssetTypesModel:
    properties:
      lifestyleAssetTypes:
        items:
          $ref: "#/definitions/LifestyleAssetTypeModel"
        type: array
    type: object
  LifestyleAssetWithIdModel:
    properties:
      description:
        type: string
      externalDestinationId:
        type: string
      factFinderId:
        format: int32
        type: integer
      lifestyleAssetId:
        format: int32
        type: integer
      links:
        items:
          $ref: "#/definitions/ObjectLink"
        type: array
      marketValue:
        format: double
        type: number
      owner:
        enum:
          - Client
          - CoClient
          - Joint
        type: string
      purchaseAmount:
        format: double
        type: number
      purchaseDate:
        format: date-time
        type: string
      type:
        format: int32
        type: integer
    type: object
  LifestyleAssetsModel:
    properties:
      lifestyleAssets:
        items:
          $ref: "#/definitions/LifestyleAssetWithIdModel"
        type: array
    type: object
  LongTermCareInsurancePoliciesModel:
    properties:
      longTermCareInsurancePolicies:
        items:
          $ref: "#/definitions/LongTermCareInsurancePolicyWithIdModel"
        type: array
    type: object
  LongTermCareInsurancePolicyModel:
    properties:
      benefit:
        format: double
        type: number
      benefitFrequency:
        format: int32
        type: integer
      description:
        maxLength: 255
        minLength: 0
        type: string
      externalDestinationId:
        maxLength: 64
        minLength: 0
        type: string
      factFinderId:
        format: int32
        type: integer
      insured:
        enum:
          - Client
          - CoClient
        type: string
      premium:
        format: double
        type: number
      premiumFrequency:
        format: int32
        type: integer
    required:
      - factFinderId
      - description
    type: object
  LongTermCareInsurancePolicyWithIdModel:
    properties:
      benefit:
        format: double
        type: number
      benefitFrequency:
        format: int32
        type: integer
      description:
        type: string
      externalDestinationId:
        type: string
      factFinderId:
        format: int32
        type: integer
      insurancePolicyId:
        format: int32
        type: integer
      insured:
        enum:
          - Client
          - CoClient
        type: string
      links:
        items:
          $ref: "#/definitions/ObjectLink"
        type: array
      premium:
        format: double
        type: number
      premiumFrequency:
        format: int32
        type: integer
    type: object
  MajorPurchaseGoalModel:
    properties:
      amount:
        format: double
        type: number
      description:
        maxLength: 255
        minLength: 0
        type: string
      externalDestinationId:
        maxLength: 64
        minLength: 0
        type: string
      factFinderId:
        format: int32
        type: integer
      majorPurchaseGoalTypeId:
        format: int32
        type: integer
      member:
        enum:
          - Client
          - CoClient
          - Joint
        type: string
      targetDate:
        format: date-time
        type: string
    required:
      - factFinderId
      - description
    type: object
  MajorPurchaseGoalTypeModel:
    properties:
      description:
        type: string
      links:
        items:
          $ref: "#/definitions/ObjectLink"
        type: array
      majorPurchaseGoalTypeId:
        format: int32
        type: integer
    type: object
  MajorPurchaseGoalTypesModel:
    properties:
      majorPurchaseGoalTypes:
        items:
          $ref: "#/definitions/MajorPurchaseGoalTypeModel"
        type: array
    type: object
  MajorPurchaseGoalWithIdModel:
    properties:
      amount:
        format: double
        type: number
      description:
        type: string
      externalDestinationId:
        type: string
      factFinderId:
        format: int32
        type: integer
      links:
        items:
          $ref: "#/definitions/ObjectLink"
        type: array
      majorPurchaseGoalId:
        format: int32
        type: integer
      majorPurchaseGoalTypeId:
        format: int32
        type: integer
      member:
        enum:
          - Client
          - CoClient
          - Joint
        type: string
      targetDate:
        format: date-time
        type: string
    type: object
  MajorPurchaseGoalsModel:
    properties:
      majorPurchaseGoals:
        items:
          $ref: "#/definitions/MajorPurchaseGoalWithIdModel"
        type: array
    type: object
  Object:
    properties: {}
    type: object
  ObjectLink:
    properties:
      href:
        type: string
      rel:
        type: string
    type: object
  OwnerModel:
    properties:
      displayName:
        type: string
      owner:
        type: string
      ownerDependentId:
        format: int32
        type: integer
    type: object
  OwnersModel:
    properties:
      owners:
        items:
          $ref: "#/definitions/OwnerModel"
        type: array
    type: object
  RealEstateAssetModel:
    properties:
      description:
        maxLength: 255
        minLength: 0
        type: string
      externalDestinationId:
        maxLength: 64
        minLength: 0
        type: string
      factFinderId:
        format: int32
        type: integer
      frequency:
        format: int32
        type: integer
      marketValue:
        format: double
        type: number
      owner:
        enum:
          - Client
          - CoClient
          - Joint
        type: string
      purchaseAmount:
        format: double
        type: number
      purchaseDate:
        format: date-time
        type: string
      rentalIncome:
        format: double
        type: number
    required:
      - factFinderId
      - description
    type: object
  RealEstateAssetWithIdModel:
    properties:
      description:
        type: string
      externalDestinationId:
        type: string
      factFinderId:
        format: int32
        type: integer
      frequency:
        format: int32
        type: integer
      links:
        items:
          $ref: "#/definitions/ObjectLink"
        type: array
      marketValue:
        format: double
        type: number
      owner:
        enum:
          - Client
          - CoClient
          - Joint
        type: string
      purchaseAmount:
        format: double
        type: number
      purchaseDate:
        format: date-time
        type: string
      realEstateAssetId:
        format: int32
        type: integer
      rentalIncome:
        format: double
        type: number
    type: object
  RealEstateAssetsModel:
    properties:
      realEstateAssets:
        items:
          $ref: "#/definitions/RealEstateAssetWithIdModel"
        type: array
    type: object
  RelationshipTypeModel:
    properties:
      id:
        format: int32
        type: integer
      isChildType:
        type: boolean
      relationshipType:
        enum:
          - Son
          - Daughter
          - FosterSon
          - FosterDaughter
          - Grandson
          - Granddaughter
          - Nephew
          - Niece
          - MaleCousin
          - FemaleCousin
          - Father
          - Mother
          - Grandfather
          - Grandmother
          - Uncle
          - Aunt
          - Brother
          - Sister
          - SonInLaw
          - DaughterInLaw
          - MaleOther
          - FemaleOther
        type: string
    type: object
  RelationshipTypesModel:
    properties:
      relationshipTypes:
        items:
          $ref: "#/definitions/RelationshipTypeModel"
        type: array
    type: object
  RetirementExpenseModel:
    properties:
      amount:
        format: double
        type: number
      annualPeriod:
        format: int32
        maximum: 99
        minimum: 1
        type: integer
      description:
        maxLength: 255
        minLength: 0
        type: string
      endDate:
        format: date-time
        type: string
      externalDestinationId:
        maxLength: 64
        minLength: 0
        type: string
      frequency:
        format: int32
        type: integer
      member:
        enum:
          - Client
          - CoClient
          - Joint
        type: string
      startDate:
        format: date-time
        type: string
    required:
      - description
    type: object
  RetirementExpenseWithIdModel:
    properties:
      amount:
        format: double
        type: number
      annualPeriod:
        format: int32
        type: integer
      description:
        type: string
      endDate:
        format: date-time
        type: string
      externalDestinationId:
        type: string
      frequency:
        format: int32
        type: integer
      links:
        items:
          $ref: "#/definitions/ObjectLink"
        type: array
      member:
        enum:
          - Client
          - CoClient
          - Joint
        type: string
      retirementExpenseId:
        format: int32
        type: integer
      retirementGoalId:
        format: int32
        type: integer
      startDate:
        format: date-time
        type: string
    type: object
  RetirementExpensesModel:
    properties:
      retirementExpenses:
        items:
          $ref: "#/definitions/RetirementExpenseWithIdModel"
        type: array
    type: object
  RetirementGoalModel:
    properties:
      externalDestinationId:
        maxLength: 64
        minLength: 0
        type: string
      factFinderId:
        format: int32
        type: integer
      head1RetirementDate:
        format: date-time
        type: string
      head2RetirementDate:
        format: date-time
        type: string
    required:
      - factFinderId
    type: object
  RetirementGoalWithIdModel:
    properties:
      externalDestinationId:
        type: string
      factFinderId:
        format: int32
        type: integer
      head1RetirementDate:
        format: date-time
        type: string
      head2RetirementDate:
        format: date-time
        type: string
      links:
        items:
          $ref: "#/definitions/ObjectLink"
        type: array
      retirementGoalId:
        format: int32
        type: integer
    type: object
  RetirementGoalsModel:
    properties:
      retirementGoals:
        items:
          $ref: "#/definitions/RetirementGoalWithIdModel"
        type: array
    type: object
  SavingsStrategiesModel:
    properties:
      savingsStrategies:
        items:
          $ref: "#/definitions/SavingsStrategyWithIdModel"
        type: array
    type: object
  SavingsStrategyModel:
    properties:
      employerSavingsAmount:
        format: double
        type: number
      employerSavingsAmountType:
        enum:
          - Dollar
          - Percent
          - Max
        type: string
      endDate:
        format: date-time
        type: string
      externalDestinationId:
        type: string
      frequencyId:
        format: int32
        type: integer
      mandatoryAmount:
        format: double
        type: number
      mandatoryAmountType:
        enum:
          - Dollar
          - Percent
          - Max
        type: string
      postTaxSavingsAmount:
        format: double
        type: number
      postTaxSavingsAmountType:
        enum:
          - Dollar
          - Percent
          - Max
        type: string
      preTaxSavingsAmount:
        format: double
        type: number
      preTaxSavingsAmountType:
        enum:
          - Dollar
          - Percent
          - Max
        type: string
      startDate:
        format: date-time
        type: string
    type: object
  SavingsStrategyWithIdModel:
    properties:
      accountId:
        format: int32
        type: integer
      employerSavingsAmount:
        format: double
        type: number
      employerSavingsAmountType:
        enum:
          - Dollar
          - Percent
          - Max
        type: string
      endDate:
        format: date-time
        type: string
      externalDestinationId:
        type: string
      frequencyId:
        format: int32
        type: integer
      mandatoryAmount:
        format: double
        type: number
      mandatoryAmountType:
        enum:
          - Dollar
          - Percent
          - Max
        type: string
      postTaxSavingsAmount:
        format: double
        type: number
      postTaxSavingsAmountType:
        enum:
          - Dollar
          - Percent
          - Max
        type: string
      preTaxSavingsAmount:
        format: double
        type: number
      preTaxSavingsAmountType:
        enum:
          - Dollar
          - Percent
          - Max
        type: string
      savingsStrategyId:
        format: int32
        type: integer
      startDate:
        format: date-time
        type: string
    type: object
  SavingsTypeDomainObject:
    properties:
      typeName:
        enum:
          - PostTaxSavings
          - PreTaxSavings
          - EmployerSavings
          - MandatorySavings
        type: string
      validAmountTypes:
        items:
          enum:
            - Dollar
            - Percent
            - Max
          type: string
        type: array
    type: object
  ServiceInformationModel:
    properties:
      name:
        type: string
      schemaVersion:
        format: int32
        type: integer
      serviceVersion:
        type: string
      status:
        type: string
    type: object
  StateProvinceModel:
    properties:
      links:
        items:
          $ref: "#/definitions/ObjectLink"
        type: array
      stateProvinceId:
        format: int32
        type: integer
      stateProvinceName:
        type: string
    type: object
  StatesProvincesModel:
    properties:
      statesProvinces:
        items:
          $ref: "#/definitions/StateProvinceModel"
        type: array
    type: object
