openapi: '3.0.0'
info:
  contact:
    name: Nexus API
    url: https://www.mx.com
  version: '1.0.0'
  title: 'Nexus API'
  description: Legacy clients can use Nexus API for all their connectivity needs. If you are a new client refer to our Platform API. Review our [Nexus API Guides](/nexus) for more information. 
paths:
  /beats:
    get: 
      tags: 
        - beats
      summary: List beats (deprecated)
      operationId: listBeats
      description: This endpoint returns a list of information about all beat resources associated with the user for which the Nexus session is open.
      responses:
        '200':
          description: OK
          content:
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/Beats'
  /beats/{beat_guid}:
    put: 
      tags:
        - beats
      summary: Update beat (deprecated)
      operationId: updateBeat
      description: Use this endpoint to update the attributes of a particular beat according to its unique GUID. No specific parameter is required, but the request body cannot be empty.
      parameters:
            - in: path
              name: beat_guid
              required: true
              schema:
                type: string
              description: The ID of the beat to update.
      requestBody:
        required: true
        content:
          application/vnd.mx.nexus.v1+json:
            schema:
              type: object
              properties:
                beat:
                  type: object
                  properties:
                    has_been_displayed:
                      type: boolean
                      description: Indicates if the beat has been displayed.
                      example: true
                    is_dismissed:
                      type: boolean
                      description: Indicates if the user dismissed the beat. 
                      example: false
      responses:
        '200':
          description: OK
          content:
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/Beat'
    get: 
      tags:
        - beats
      summary: Read a beat (deprecated)
      operationId: readBeat
      description: This endpoint returns information about a specific beat according to its MX-defined GUID.
      parameters:
        - in: path
          name: beat_guid
          required: true
          schema:
            type: string
          description: The ID of the beat to update.
      responses:
        '200':
          description: OK
          content:
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/Beat'
  /micro_deposits:
    post:
      tags: 
       - microdeposits
      summary: Create or Preinitiate a Microdeposit
      operationId: createMicrodeposit
      description: Use this endpoint to create a microdeposit. To create a microdeposit include the `first_name`, `last_name`, `email`, `account_number`, `routing_number`, and `account_type` in the request body. The response will include the new microdeposit record with a status of `INITIATED`. <br></br> You can also use this endpoint to pre-initiate a microdeposit. If you want to preinitiate only include the `first_name`, `last_name`, and `email` in the request body. The response will include the new microdeposit record with a status of `PREINITIATED`.<br></br> Pre-initiating a microdeposit is optional. However, if you choose to implement this flow, it should be used for all Connect Widget sessions in verification mode.<br></br>Pre-initiating a microdeposit enables you to pass the end user's first name, last name, and email, if this data has already been collected. If the end user selects an institution which requires the microdeposit flow, the pre-initiated `micro_deposit` will be used and the Connect Widget step that normally requests this info from the end user will be skipped. However, if the end user selects an institution which supports IAV, the pre-initiated `micro_deposit` will be deleted and IAV will be used instead. When requesting a Connect Widget URL after pre-inititiating, make sure to set the `current_microdeposit_guid` to the resulting microdeposit's guid and set the mode to verification.
      requestBody:
        required: true
        content:
          application/vnd.mx.nexus.v1+json:
            schema:
              $ref: '#/components/schemas/MicrodepositRequest'
      responses:
        '200':
          description: OK
          content:
            application/vnd.mx.nexus.v1+json:
              schema:
                oneOf:
                  - $ref: '#/components/schemas/MicrodepositResponse'
                  - $ref: '#/components/schemas/PreinitiateResponse'
    get:
      tags: 
        - microdeposits
      summary: List all microdeposits for a user
      operationId: listMicrodeposits
      description: Use this endpoint to list all the microdeposits associated with the user for which the Nexus session is open.
      responses:
        '200':
          description: OK
          content:
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/MicrodepositsResponse'
  /micro_deposits/{micro_deposit_guid}:
    get:
      tags: 
        - microdeposits
      summary: Read a microdeposit
      operationId: readMicrodeposit
      description: Use this endpoint to read the attributes of a specific microdeposit according to its unique GUID. <br></br> Webhooks for microdeposit status changes are triggered when a status changes. However, the actual status of the microdeposit guid only updates once per hour on the 15th minute of the hour. For example, if the guid status updates on the 16th minute of the hour, you would have to wait for 59 minutes to see a status change. You may force a status update by calling the read microdeposit endpoint.
      parameters:
        - name: micro_deposit_guid
          required: true 
          in: path
          description: The unique identifier for a microdeposit. Defined by MX. 
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/MicrodepositResponse'
    put:
      tags:
        - microdeposits
      summary: Verify a microdeposit
      operationId: verifyMicrodeposit
      description: Use this endpoint to verify the amounts deposited into the account during a microdeposit verification. The verification has not successfully completed until the microdeposit status is `VERIFIED`.  Poll the [Read a Microdeposit](/api-reference/nexus/reference/read-microdeposit) endpoint until you see this status or an error state.
      parameters:
        - name: micro_deposit_guid
          required: true 
          in: path
          description: The unique identifier for a microdeposit. Defined by MX. 
          schema:
            type: string
      requestBody:
        required: true
        content:
          application/vnd.mx.nexus.v1+json:
            schema:
              type: object
              properties:
                deposit_amount_1:
                  type: number
                  description: The first deposit amount.
                  example: 0.09
                deposit_amount_2:
                  type: number
                  description: The second deposit amount.
                  example: 0.09
              required:
              - deposit_amount_1
              - deposit_amount_2
      responses:
        '200':
          description: OK
          content:
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/MicrodepositVerifyResponse'
    delete:
      tags: 
        - microdeposits
      summary: Delete a microdeposit
      operationId: deleteMicrodeposit
      description: Use this endpoint to delete the specified microdeposit.
      parameters:
        - name: micro_deposit_guid
          required: true 
          in: path
          description: The unique identifier for a microdeposit. Defined by MX. 
          schema:
            type: string
      responses:
        "204":
          description: No content
  /accounts:
    post:
      tags: 
        - accounts
      summary: Create manual accounts
      operationId: createManualAccounts
      description: Creating a manual account will automatically create it under the Manual Institution member. Since a manual account has no credentials tied to the member, the account will never aggregate or include data from a data feed.    This endpoint accepts the optional `MX-Skip-Webhook` header and `skip_webhook parameter`.
      parameters:
        - in: header
          name: MD-SESSION-TOKEN
          schema:
            type: string
          required: true
      requestBody:
        required: true
        content:
          application/vnd.mx.nexus.v1+json:
            schema:
              "$ref": '#/components/schemas/AccountCreateRequestBody'
      responses:
        '200':
          description: OK
          content:
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/AccountResponseBody'
    get:
      tags:
        - accounts
      summary: List all accounts
      operationId: listAllAccounts
      parameters:
        - name: use_case
          description: The use case associated with the member to which the account belongs. Accounts returned will correspond to the specified use cases of their respective members. Valid values are `PFM` and `MONEY_MOVEMENT`. For example, if you're using the List Members request you can append either `?use_case=PFM` or `?use_case=MONEY_MOVEMENT`.
          required: false
          in: query
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/AccountsResponseBody'
  /accounts/user_created:
    get:
      tags:
        - accounts
      summary: List accounts created by a user
      operationId: listUserCreatedAccounts
      description: This endpoint returns accounts belonging only to user-created members. User-created members are those for which `is_user_created == true.`
      parameters:
        - name: use_case
          description: The use case associated with the member to which the account belongs. Accounts returned will correspond to the specified use cases of their respective members. Valid values are `PFM` and `MONEY_MOVEMENT`.
          required: false
          in: query
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/AccountsResponseBody'
  /accounts/{account_guid}/transactions:
    post:
      tags: 
        - transactions
      summary: Create manual transaction
      operationId: createManualTransaction
      description: This endpoint can only be used to create manual transactions that are under a manual account. This endpoint accepts the optional `MX-Skip-Webhook` header and `skip_webhook` parameter.
      parameters:
        - name: account_guid
          description: The unique identifier for the account. Defined by MX. 
          in: path
          required: true
          schema:
            type: string
      requestBody: 
        required: true
        content:
          application/vnd.mx.nexus.v1+json:
            schema:
              "$ref": '#/components/schemas/TransactionCreateRequestBody'
      responses:
        '200':
          description: OK
          content:
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/TransactionResponseBody'
    get: 
      tags:
        - accounts
      summary: List account transactions
      description: For paginated data resulting in multiple pages, each page will need to be requested separately to retrieve the data on that page. The `total_pages` field returns an integer representing the total pages to be requested. 
      operationId: listAccountTransactions
      parameters:
        - name: account_guid
          description: The unique identifier for the account. Defined by MX.
          required: true
          in: path
          schema:
            type: string
        - name: from_date
          description: Return transactions starting from this day, based on the transaction date. Defaults to 120 days ago if not provided. Format should be ISO 8601 format (2013-05-28).
          required: false
          in: query
          schema:
            type: string
        - name: to_date
          description: Return transactions ending with this day, based on the transaction date. Defaults to 5 days forward from the day the request is made so as to capture pending transactions. Format should be ISO 8601 format (2013-05-28).
          required: false
          in: query
          schema:
            type: string            
        - name: page
          description: Results are returned in paginated sets, this is the page of the results you would like to view. Defaults to page 1 if no page is specified.
          required: false
          in: query
          schema:
            type: integer 
        - name: records_per_page
          description: Requests to all list endpoints that return multiple transactions (e.g. list transactions) should specify the desired records_per_page. The supported range is from 10 to 1000. If the records_per_page parameter is not specified or is outside this range, a default of 25 records per page will be used.
          required: false
          in: query
          schema:
            type: integer             
      responses:
        '200':
          description: OK
          content:
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/TransactionsResponseBody'
  /accounts/partner_created:
    get: 
      tags:
        - accounts
      summary: List accounts created by a partner
      operationId: listAccountsCreatedByPartner
      description: This endpoint returns accounts belonging only to partner-created members. Partner-created members are those for which `is_user_created == true.`
      parameters:
        - name: use_case
          description: The use case associated with the member to which the account belongs. Accounts returned will correspond to the specified use cases of their respective members. Valid values are `PFM` and `MONEY_MOVEMENT`.
          required: false
          in: query
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/AccountsResponseBody'
  /accounts/{account_guid}:
    get:
      tags:
        - accounts
      summary: Read an account
      operationId: readAccount
      parameters:
        - name: account_guid
          description: The unique identifier for the account that is MX-defined. 
          example: ACT-00266e24-5980-0213-96aa-649246a418af
          in: path
          required: true
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/AccountResponseBody'  
    put: 
      tags: 
        - accounts
      summary: Update an account
      operationId: updateAccount
      description: Update an account. The endpoint accepts the optional MX-Skip-Webhook header and `skip_webhook` parameter.
      parameters:
        - name: account_guid
          description: The unique identifier for the account that is MX-defined. 
          example: ACT-00266e24-5980-0213-96aa-649246a418af
          in: path
          required: true
          schema:
            type: string
      requestBody:
        required: true
        content:
          application/vnd.mx.nexus.v1+json:
            schema:
              "$ref": '#/components/schemas/AccountUpdateRequestBody'
      responses:
        '200':
          description: OK
          content:
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/AccountResponseBody'
    delete:
      tags:
        - accounts
      summary: Delete a manual account
      description: Delete a manual account. This endpoint accepts the optional `MX-SKIP-Webhook` header.
      responses:
        "204":
          description: No content
      parameters:
        - name: account_guid
          description: The unique identifier for the account that is MX-defined. 
          example: ACT-00266e24-5980-0213-96aa-649246a418af
          in: path
          required: true
          schema:
            type: string
  /accounts/{account_guid}/transactions/created_between/{start_date}/{end_date}:
    get:
      tags:
        - accounts
      summary: List account transactions created between two dates
      operationId: listTransactionsCreatedBetweenTwoDates
      description: This endpoint allows you to list transactions that were created between two dates for a specific account. Dates should be ISO 8601 formatted (2013-10-25). For paginated data resulting in multiple pages, each page will need to be requested separately to retrieve the data on that page. The `total_pages` field returns an integer representing the total pages to be requested. 
      responses:
        '200':
          description: OK
          content:
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/TransactionsResponseBody'
      parameters:
        - name: account_guid
          description: The unique identifier for the account that is MX-defined. 
          example: ACT-00266e24-5980-0213-96aa-649246a418af
          in: path
          required: true
          schema:
            type: string
        - name: start_date
          description: The earliest date from which you need transaction data. 
          example: 2016-09-01
          in: path
          required: true
          schema:
            type: string
        - name: end_date
          description: The latest date from which you need transaction data. 
          example: 2017-04-01
          in: path
          required: true
          schema:
            type: string
        - name: page
          description: Results are returned in paginated sets, this is the page of the results you would like to view. Defaults to page 1 if no page is specified.
          example: 2
          in: query
          required: false
          schema:
            type: integer
        - name: records_per_page
          description: Requests to all list endpoints that return multiple transactions (e.g. list transactions) should specify the desired records_per_page. The supported range is from 10 to 1000. If the records_per_page parameter is not specified or is outside this range, a default of 25 records per page will be used.
          example: 100
          in: query
          required: false
          schema:
            type: integer
  /accounts/{account_guid}/transactions/updated_between/{start_date}/{end_date}:
    get:
      tags:
        - accounts
      summary: List account transactions updated between two dates
      operationId: listTransactionsUpdatedBetweenTwoDates
      description: Allows you to list transactions that were updated between two dates for a specific account. Dates should be ISO 8601 formatted (2013-10-25). For paginated data resulting in multiple pages, each page will need to be requested separately to retrieve the data on that page. The `total_pages` field returns an integer representing the total pages to be requested. 
      responses:
        '200':
          description: OK
          content:
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/TransactionsResponseBody'
      parameters:
        - name: account_guid
          description: The unique identifier for the account that is MX-defined. 
          example: ACT-00266e24-5980-0213-96aa-649246a418af
          in: path
          required: true
          schema:
            type: string
        - name: start_date
          description: The earliest date from which you need transaction data. 
          example: 2016-09-01
          in: path
          required: true
          schema:
            type: string
        - name: end_date
          description: The latest date from which you need transaction data. 
          example: 2017-04-01
          in: path
          required: true
          schema:
            type: string
        - name: page
          description: Results are returned in paginated sets, this is the page of the results you would like to view. Defaults to page 1 if no page is specified.
          example: 2
          in: query
          required: false
          schema:
            type: integer
        - name: records_per_page
          description: Requests to all list endpoints that return multiple transactions (e.g. list transactions) should specify the desired records_per_page. The supported range is from 10 to 1000. If the records_per_page parameter is not specified or is outside this range, a default of 25 records per page will be used.
          example: 100
          in: query
          required: false
          schema:
            type: integer
  /accounts/{account_guid}/monthly_account_balance:
    get: 
      tags:
        - accounts
      summary: List account balances by month
      description: List account balances by month.
      operationId: listAccountBalancesbyMonth
      parameters:
        - name: account_guid
          description: The unique identifier for the account. Defined by MX
          required: true
          in: path
          schema:
            type: string
        - name: from_date
          description: Return transactions starting from this day, based on the transaction date. Defaults to 120 days ago if not provided. Format should be ISO 8601 format (2013-05-28).
          required: false
          in: query
          schema:
            type: string
        - name: to_date
          description: Return transactions ending with this day, based on the transaction date. Defaults to 5 days forward from the day the request is made so as to capture pending transactions. Format should be ISO 8601 format (2013-05-28).
          required: false
          in: query
          schema:
            type: string   
      responses:
        '200':
          description: OK
          content:
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/MonthlyAccountBalanceResponseBody'
  /accounts/merge:
    put: 
      tags:
        - accounts
      summary: Merge duplicate accounts
      operationId: mergeDuplicateAccounts
      description: This endpoint should only be used to merge accounts that have been identified by the user as being duplicates. The response from performing this action will be the details of the remaining account. Two accounts must be provided, both accounts must exist, and at least one account must be from a non-partner-managed member (i.e. `member_is_managed_by_user=true`). <br></br> The order of the accounts in the request does not matter. MX uses internal logic to determine which account will remain and which will be merged. However, if one of the accounts is from a partner-managed member, then it will always be the account that remains.  
      requestBody:
        required: true
        content:
          application/vnd.mx.nexus.v1+json:
            schema:
              type: object
              properties:
                accounts:
                  type: array
                  description: An array containing the two account guids to be merged.
                  items:
                    type: string
                  example: ["ACT-15f3a4de-cb45-d892-4480-6d05576011a8", "ACT-33fe5ab2-aaff-d88e-2221-66d63fbc101a"]
      responses:
        '200':
          description: OK
          content:
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/AccountResponseBody'
  /accounts/{account_guid}/block:
    put:
      tags:
        - accounts
      summary: Block an account
      operationId: blockAccount
      description: |
        This endpoint is used to delete existing data and block new data from being stored on the specified account. This may be necessary in order to comply with certain rules, regulations, or standards. <br></br>   This endpoint does several things.<ol><li>It immediately and permanently deletes most data from the account object. Certain information is retained that is necessary for MX to prevent the account from being re-added.</li><li>It prevents MX from creating or storing any additional data associated with the account, for example transactions, holdings, statements, etc. </li><li>  It immediately and permanently deletes all data associated with the account, for example transactions, holdings, statements, etc. </li></ol>  This action is scoped to the member the account belongs to. This means that if the real world account is connected or reconnected via another member, the block will have no effect on that account. <br></br>  This action cannot be taken on manual accounts, in other words accounts with `is_manual` is `true`. Attempting to perform a block on a manual account will result in a `400 Bad Request` error with the message Manually created accounts cannot be blocked. <br></br>  Objects deleted as a result of blocking an account will issue a webhook for that object with the action set to deleted. For example, account deleted, transaction deleted, etc. There is no special webhook or action for blocking.  <br></br>  This endpoint accepts the optional `MX-Skip-Webhook` header and `skip_webhook` parameter.  
      parameters:
        - name: account_guid
          description: The unique identifier for the account. Defined by MX
          required: true
          in: path
          schema:
            type: string
      responses:
        '200':
          description: OK
  /budgets/generate:
    post: 
      tags:
        - budgets
      summary: Auto-generate budgets 
      operationId: generateBudgets
      description: |
        This endpoint will automatically create budgets for several categories based on existing transactions; these budgets are returned as an array. Specifically, budgets will only be generated if the `user` has at least one `transaction` in a given category during each of the two previous calendar months. For example, if the request is made on March 6, and there is at least one "Bills & Utilities" `transaction` in both January and February, a budget will be generated for "Bills & Utilities." <br></br> If there are two "Bills & Utilities" transactions in February but none in January, no budget will be generated for that category. If budgets already exist for particular categories, new budgets will be generated and returned based on the available transactions. If one or more budgets remain unchanged, they will nevertheless be returned in the response. If no transaction data for the `user` meet the above criteria, a `422 Unprocessable Entity` error will be returned with status code 4221 along with the message, `There aren't enough transactions to automatically create any budgets`. Autogenerated categories include: `Auto & Transport`, `Bills & Utilities`, `Business Services`, `Education`, `Entertainment`, `Fees & Charges`, `Financial`, `Food & Dining`, `Health & Fitness`, `Home`, `Kids`, `Personal Care`, `Shopping`, `Taxes`, `Travel`, `Uncategorized`, and `Income`.
      responses:
        '200':
          description: OK
          content:
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/BudgetResponseBody'
  /budgets:
    post: 
      tags:
        - budgets
      summary: Create a budget
      operationId: createBudget
      description: Create a budget. This endpoint accepts the optional `MX-Skip-Webhook` header and `skip_webhook` parameter.
      requestBody:
        required: true
        content:
          application/vnd.mx.nexus.v1+json:
            schema:
              "$ref": '#/components/schemas/BudgetCreateRequestBody'
      responses:
        '200':
          description: OK
          content:
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/BudgetResponseBody'
    get: 
      tags:
        - budgets
      summary: List all budgets
      operationId: listBudgets
      description: List all budgets 
      responses:
        '200':
          description: OK
          content:
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/BudgetsResponseBody'
  /budgets/{budget_guid}:
    get: 
      tags:
        - budgets
      summary: Read a specific budget
      operationId: readBudget
      description: Read a specific budget
      parameters:
        - name: budget_guid
          description: The unique identifier for the budget. Defined by MX. 
          required: true
          in: path 
          schema: 
            type: string
      responses:
        '200':
          description: OK
          content:
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/BudgetResponseBody'
    put:
      tags:
        - budgets
      summary: Update a specific budget 
      operationId: updateBudget
      description: Update a specific budget 
      parameters:
        - name: budget_guid
          description: The unique identifier for the budget. Defined by MX. 
          required: true
          in: path 
          schema: 
            type: string
      requestBody:
        required: false
        content:
          application/vnd.mx.nexus.v1+json:
            schema:
              "$ref": '#/components/schemas/BudgetUpdateRequestBody'
      responses:
        '200':
          description: OK
          content:
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/BudgetResponseBody'
    delete: 
      tags:
        - budgets
      summary: Delete a budget
      operationId: deleteBudget
      description: Delete a budget. 
      parameters:
        - name: budget_guid
          description: The unique identifier for the budget. Defined by MX. 
          required: true
          in: path 
          schema: 
            type: string
      responses:
        "204":
          description: No content
  /categories:
    post: 
      tags:
        - categories
      summary: Create a subcategory
      operationId: createSubcategory
      description: Create a subcategory to an already existing parent category. 
      requestBody:
        required: true
        content:
          application/vnd.mx.nexus.v1+json:
            schema:
              "$ref": '#/components/schemas/CreateSubcategoryRequestBody'
      responses:
        '200':
          description: OK
          content:
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/SubcategoryResponseBody'
    get:
      tags:
        - categories
      summary: List categories
      operationId: listCategories
      description: This returns an array of all the categories that users can choose from, including custom user-created categories.
      responses:
        '200':
          description: OK
          content:
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/CategoriesResponseBody'
  /categories/{category_guid}:
    delete: 
      tags:
        - categories
      summary: Delete a subcategory
      operationId: deleteSubcategory
      description: Delete a subcategory. 
      parameters:
        - name: category_guid
          description: The unique identifier for the category. Defined by MX. 
          required: true
          in: path 
          schema: 
            type: string
      responses:
        "204":
          description: No content                    
    put: 
      tags:
        - categories
      summary: Update a subcategory
      operationId: updateSubcategory
      description: | 
        Only user-defined subcategories can be updated, i.e., those where the `is_default` field is `false`.
        The `metadata` field can be used to add information to user-defined subcategories. For default categories, this field will be null and can not be changed via Nexus.
        This endpoint accepts the optional MX-Skip-Webhook header and skip_webhook parameter.
      parameters:
        - name: category_guid
          description: The unique identifier for the category. Defined by MX. 
          required: true
          in: path 
          schema: 
            type: string
      requestBody:
        required: false
        content:
          application/vnd.mx.nexus.v1+json:
            schema:
              "$ref": '#/components/schemas/UpdateSubcategoryRequestBody'
      responses:
        '200':
          description: OK
          content:
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/SubcategoryResponseBody'
    get: 
      tags:
        - categories
      description: Read a category.
      summary: Read a category
      operationId: readCategory
      parameters:
        - name: category_guid
          description: The unique identifier for the category. Defined by MX. 
          required: true
          in: path 
          schema: 
            type: string
      responses:
        '200':
          description: OK
          content:
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/SubcategoryResponseBody'

  /categories/default:
    get: 
      tags:
        - categories
      summary: List  default categories 
      operationId: listDefaultCategories
      description: List all default categories that users can choose from. 
      responses:
        '200':
          description: OK
          content:
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/CategoriesResponseBody'
  /date_range_category_totals/from/{start_date}/to/{end_date}:
    get:
      tags:
        - categories
      summary: List category totals between two dates
      operationId: listCategoryTotalsByDateRange
      description: Returns a list of categories that have transactions dated within the provided date range, and the total of all transactions that belong to each category. A single account GUID can be specified by providing an `account_guid` parameter. An array of account GUIDs can be specified by providing a series of `account_guid[]` parameters. Dates should be in ISO 8601 format (2013-10-25).
      parameters:
        - name: start_date
          description: The start date of the window for which transactions will be returned. Given in ISO 8106 format without a timestamp, e.g., 2013-10-25.
          required: true
          in: path
          schema:
            type: string
        - name: end_date
          description: The end date of the window for which transactions will be returned. Given in ISO 8106 format without a timestamp, e.g., 2013-10-25.
          required: true
          in: path
          schema:
            type: string
        - name: account_guid
          description: Return totals for transactions belonging only to the specified account GUID.
          required: false
          in: query
          schema:
            type: string
        - name: account_guid[]
          description: Return totals for transactions that belong to any of the specified array of account GUID.
          required: false
          in: query
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/CategoryDateRangeResponseBody'
  /members/{member_guid}/extend_history:
    post:
      tags:
        - extended transaction history
      summary: Extend transaction history
      operationId: extendTransactionHistory
      description: Some institutions allow developers to access an extended transaction history with up to 24 months of data associated with a particular `member`. The process for fetching and then reading this extended transaction history is much like standard aggregation, and it may trigger multi-factor authentication. Use this endpoint to gather an extended transaction history for a particular member. <br></br> This longer history can then be accessed though the standard transaction endpoints. If this feature is not enabled, a `403 Forbidden` error will be returned. If an institution does not support extended history, a `400 Bad Request` error will be returned. If an extended transaction process is already running, a `202 Accepted` status will be returned. If another aggregation-type process is already running — like standard aggregation or verification — a `409 Conflict` will be returned. For more information on this and other aggregation-type processes, please see our developer guide.
      parameters:
        - name: member_guid
          description: The unique identifier for the member. Defined by MX. 
          required: true
          in: path
          schema:
            type: string  
      responses:
        '200':
          description: OK
          content:
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/MemberResponseBody'   
  /goals:
    post:
      tags:
        - goals
      summary: Create a goal
      operationId: createGoal
      description: Create a goal. This endpoint accepts the optional `MX-Skip-Webhook` header and `skip_webhook` parameter. 
      requestBody:
        required: true
        content:
          application/vnd.mx.nexus.v1+json:
            schema:
              "$ref": '#/components/schemas/GoalRequestBody'
      responses:
        '200':
          description: OK
          content:
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/GoalResponseBody'  
    get:
      tags:
        - goals
      summary: List goals
      operationId: listGoals
      description: List all goals a user can set. 
      responses:
        '200':
          description: OK
          content:
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/GoalsResponseBody' 
  /goals/{goal_guid}:
    delete: 
      tags:
        - goals
      summary: Delete a goal
      operationId: deleteGoal
      description: Delete a goal. 
      parameters:
        - name: goal_guid
          description: The unique identifier for a goal. Defined by MX. 
          required: true
          in: path 
          schema: 
            type: string
      responses:
        "204":
          description: No content
    get:
      tags:
        - goals
      summary: Read a goal
      operationId: readGoal
      description: Read a specific goal
      parameters:
        - name: goal_guid
          description: The unique identifier for a goal. Defined by MX. 
          required: true
          in: path 
          schema: 
            type: string
      responses:
        '200':
          description: OK
          content:
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/GoalResponseBody' 
    put:
      tags:
        - goals
      summary: Update a goal
      operationId: updateGoal
      description: This endpoint updates a specific goal. This endpoint accepts the optional `MX-Skip-Webhook` header and `skip_webhook parameter`.
      parameters:
        - name: goal_guid
          description: The unique identifier for a goal. Defined by MX. 
          required: true
          in: path 
          schema: 
            type: string
      requestBody:
        required: true
        content:
          application/vnd.mx.nexus.v1+json:
            schema:
              "$ref": '#/components/schemas/UpdateGoalRequestBody'
      responses:
        '200':
          description: OK
          content:
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/GoalResponseBody' 
  /goals/reposition:
    put:
      tags:
        - goals
      summary: Reposition goals
      operationId: repositionGoals
      description: This endpoint repositions goal priority levels. If one goal is set to a lower priority, then any other goals need to be adjusted accordingly.
      requestBody:
        required: true
        content:
          application/vnd.mx.nexus.v1+json:
            schema:
              "$ref": '#/components/schemas/RepositionRequestBody'
      responses:
        '200':
          description: OK
          content:
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/RepositionResponseBody' 
  /holdings:
    get:
      tags:
        - holdings
      summary: List all holdings
      operationId: listHoldings
      description: List all holdings. 
      responses:
        '200':
          description: OK
          content:
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/HoldingsResponseBody' 
  /holdings/{holding_guid}:
    get:
      tags:
        - holdings
      summary: Read holding
      operationId: readHolding
      description: Read a specific holding.
      parameters:
        - name: holding_guid
          description: The unique identifier for a holding. Defined by MX. 
          required: true
          in: path 
          schema: 
            type: string
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/HoldingResponseBody'
    put:
      tags:
        - holdings
      summary: Update holding
      operationId: updateHolding
      description: Update holding 
      parameters:
        - name: holding_guid
          description: The unique identifier for a holding. Defined by MX. 
          required: true
          in: path 
          schema: 
            type: string
      requestBody:
        required: true
        content:
          application/vnd.mx.nexus.v1+json:
            schema:
              "$ref": '#/components/schemas/UpdateHoldingRequestBody'
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/HoldingResponseBody'
  /members/{member_guid}/account_owners:
    get:
      tags:
        - identity
      summary: List Account Owners
      operationId: listAccountOwners
      description: Use this endpoint to list all the account owners for for a specific member.
      parameters:
        - name: member_guid
          description: The unique identifier for a member. Defined by MX. 
          required: true
          in: path 
          schema: 
            type: string
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/IdentityResponseBody'
  /members/{member_guid}/identify:
    post:
      tags:
        - identity
      summary: Identify
      operationId: identifyMember
      description: This endpoint gathers information about account owners. Partners may optionally choose to include transaction data in this request, potentially avoiding a separate aggregate member request. The identification workflow is similar to standard aggregation -  Start the identification, poll the member, answer MFA if necessary by using the list member MFA challenges endpoint and the update member endpoint, poll the status again, then read the member's `account_owners`. <br></br> Before making a request to this endpoint, partners must make sure identification is enabled for the member's `institution`. Specifically, the institution's `supports_account_identification` field must be true. If the `institution` does not support identification, a `400 Bad Request` error will be returned with the message,` Member's institution does not support instant account identification`.
      parameters:
        - name: member_guid
          description: The unique identifier for a member. Defined by MX. 
          required: true
          in: path 
          schema: 
            type: string
      requestBody:
        required: false 
        content:
          application/vnd.mx.nexus.v1+json:
            schema:
              type: object
              properties:
                include_transactions:
                  type: boolean
                  description: When set to true, the identification will gather transaction data along with account number data. Defaults to false.
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/MemberResponseBody'
  /institutions/{institution_guid}:
    get:
      tags:
        - institutions
      summary: Read institution
      operationId: readInstitution
      description: Read institution details.
      parameters:
        - name: institution_guid
          description: The unique identifier for an institution. Defined by MX. 
          required: true
          in: path 
          schema: 
            type: string
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/InstitutionResponseBody'
  /institutions/search:
    post:
      tags:
        - institutions
      summary: Search institutions
      operationId: searchInstitutions
      description: This endpoint will return a list of institutions which can be filtered. Responses are paginated. A list of all supported institutions can be obtained by sending a request with only the `name` parameter and setting the value to an empty string. If you cache this list, you must update the cached version at least once each day. We recommend you use this endpoint rather than the deprecated list institutions endpoint to get updated information about institutions. 
      parameters:
        - name: iso_country_code
          description: An array of strings that filters institutions in the widget by the specified country code. Acceptable codes include `US`, `CA`, and `MX` (Mexico).
          required: false
          in: query
          example: ["US", "CA"]
          schema:
            type: array
            items:
              type: string
        - name: page
          description: Results are returned in paginated sets, this is the page of the results you would like to view. Defaults to page 1 if no page is specified.
          required: false
          in: query 
          schema: 
            type: string
        - name: records_per_age
          description: List from `10` to `1000` to determine how many records per page will be used. 
          required: false
          in: query 
          schema: 
            type: string
      requestBody:
        required: true
        content:
          application/vnd.mx.nexus.v1+json:
            schema:
              "$ref": '#/components/schemas/InstitutionRequestBody'
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/InstitutionsResponseBody'
  /institutions:
    get: 
      tags:
        - institutions
      summary: (Deprecated) List institutions
      operationId: listInstitutions
      description: Calling this endpoint will kick off the downloading of an institutions.csv file. Data in this file can change daily. MX recommends that partners using this file pull it on a daily basis to update any outdated information. This endpoint has been deprecated. Partners are encouraged to use the search institutions endpoint instead. Search institutions provides the most up-to-date information, whereas list institutions provides a CSV file that is only updated once a day. Additionally, new institution fields will not be added to the CSV file; they will be available only through the search institutions response.
      responses:
        '200':
          description: OK
          content: 
            text/csv:
              schema:
                type: string
              example: guid,name,instructions,created_at,updated_at,url,popularity,is_hidden,has_checking_accounts,has_savings_accounts,has_loan_accounts,has_credit_card_accounts,has_investment_accounts,has_line_of_credit_accounts,has_mortgage_accounts,external_guid,medium_logo_url,small_logo_url INS-8cf20d3c-e481-5617-931a-f26adc3a2e6a,Regions Bank,,2016-11-09T20:10:22+00:00,2021-07-13T17:19:27+00:00,https://www.regions.com/personal_banking.rf,3553002,false,true,true,true,true,true,true,true,,https://content.moneydesktop.com/storage/MD_Assets/Ipad%20Logos/100x100/INS-8cf20d3c-e481-5617-931a-f26adc3a2e6a_100x100.png,https://content.moneydesktop.com/storage/MD_Assets/Ipad%20Logos/50x50/INS-8cf20d3c-e481-5617-931a-f26adc3a2e6a_50x50.png INS-d5082d2a-cbed-4f25-8af1-2bfe5142d399,Suncoast Credit Union,,2020-01-13T18:08:09+00:00,2022-04-25T01:00:10+00:00,https://www.suncoastcreditunion.com/,467167,false,false,false,false,false,false,false,false,,https://content.moneydesktop.com/storage/MD_Assets/Ipad%20Logos/100x100/default_100x100.png,https://content.moneydesktop.com/storage/MD_Assets/Ipad%20Logos/50x50/default_50x50.png INS-b2cbbc1a-5d65-8807-1fb5-cd3309e7941d,WaFed Test,,2015-05-15T21:30:11+00:00,2019-06-13T16:26:00+00:00,https://www.washingtonfederal.com/,177124,false,true,true,true,true,true,true,true,,https://content.moneydesktop.com/storage/MD_Assets/Ipad%20Logos/100x100/default_100x100.png,https://content.moneydesktop.com/storage/MD_Assets/Ipad%20Logos/50x50/default_50x50.png
  /institutions/{institution_guid}/credentials:
    get:
      tags:
        - institutions
      summary: Institution required credentials
      operationId: listInstitutionCredentials
      description: Use this endpoint to view all credentials needed to create a member for a given institution. Intitution-required credentials are subject to change; these credentials must be requested each time a new member is created, or, if being cached, requested daily along with the institution list. If the wrong institution-required credentials are used in a request, the following error and message will be returned. `400 Bad Request The credential guids submitted are no longer valid. Check the Institution Required Credentials endpoint for the most recent credentials.`
      parameters:
        - name: institution_guid
          description: The unique identifier for the institution. Defined by MX. 
          required: true
          in: path 
          schema: 
            type: string
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/CredentialsResponseBody'
  /jobs/{job_guid}:
    get:
      tags:
        - jobs
      summary: Read job
      operationId: readJob
      description: Read a job.
      parameters:
        - name: job_guid
          description: The unique identifier for the job. Defined by MX. 
          required: true
          in: path 
          schema:
            type: string
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/JobResponseBody'
  /jobs/{job_guid}/mfa_credentials:
    get:
      tags:
        - jobs
      summary: MFA credentials
      operationId: listJobMfaCredentials
      description:  Best practice is to use the list member challenges endpoint to list challenges that need to be answered; however, MX continues to support partners who use the mfa credentials endpoint for this purpose.<br></br> Institutions often require MFA (multi-factor authentication) in order to refresh a member. This form of authentication is typically a question/answer about the user - similar to "Where did you go to high school?" or "Where would you like an authentication token to be sent?". <br></br> In the event that we do not have the answer to the question being asked by the institution, the aggregation job will be returned with a "CHALLENGED" status. This will require the user to answer the mfa question(s) to aggregate the member. <br></br>This endpoint will return the credentials that need to be created (questions that need to be answered) to aggregate the member.
      parameters:
        - name: job_guid
          description: The unique identifier for the job. Defined by MX. 
          required: true
          in: path
          schema:
            type: string
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/CredentialsResponseBody'
  /jobs/{job_guid}/resume:
    get:
      tags:
        - jobs
      summary: (Deprecated) Resume job 
      operationId: resumeJob
      description: This endpoint has been deprecated. Partners should use the resume aggregation endpoint in its place, as outlined in the Nexus guide. When an institution allows for multi-factor authentication and MFA member credentials aren't yet created for that user, the job enters a `CHALLENGED` state. Once member credentials have been created, the resume endpoint is called for that job to resume the aggregation.
      parameters:
        - name: job_guid
          description: The unique identifier for the job. Defined by MX. 
          required: true
          in: path
          schema:
            type: string
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/JobResponseBody'
  /members/{member_guid}/credentials:
    post:
      tags: 
        - member credentials 
      summary: (Deprecated) Member credentials
      operationId: createMemberCredentials
      description:  This endpoint has been deprecated and should no longer be used. Use the update member endpoint to update a member when the member's connection_status is DENIED. Use the resume aggregation endpoint to answer an MFA challenge.  This endpoint was part of a deprecated workflow that required several requests be made to add credentials and resume aggregation. A newer, simpler, and more reliable workflow is now available, as outlined in the [Nexus guide](/nexus/). This endpoint is still supported for existing integrations, but all partners are encouraged to use the       
      parameters:
        - name: member_guid
          description: The unique identifier for the member. Defined by MX. 
          required: true
          in: path
          schema:
            type: string
      requestBody:
        content:
          application/vnd.mx.nexus.v1+json:
            schema:
              "$ref": "#/components/schemas/MemberCredentialRequestBody"
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/MemberCredentialResponseBody'
  /members/{member_guid}/check_balance:
    post:
      tags:
        - members 
      summary: Check Balances
      operationId: checkMemberBalance
      description: Use this endpoint to gather account balance information for all accounts associated with the member. This endpoint operates much like the aggregate member endpoint except that it gathers only account balance information; it does not gather any transaction data. You must use the read member endpoint to check on the status of the balance process, and the list member accounts endpoint to actually retrieve the data that has been gathered by the process.
      parameters:
        - name: member_guid
          description: The unique identifier for the member. Defined by MX. 
          required: true
          in: path
          schema:
            type: string
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/MemberResponseBody'
  /members:
    get: 
      tags:
        - members
      summary: List members
      operationId: listMembers
      description: List all members for a user.
      parameters:
        - name: use_case
          description: The use case associated with the member.
          required: false
          in: query
          schema:
            type: string
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/MemberResponseBody'
    post: 
      tags:
        - members
      summary: Create member
      operationId: createMember
      description: This endpoint allows you to create a new member. Standard members are created with the required parameters credentials and `institution_guid`. When creating a standard member, you'll need to include the correct type of credential required by the financial institution, with values provided by the end user. You can find out which credential type is required with the read institution credentials endpoint. <br></br><br></br>   Once you successfully create a standard member, MX will immediately validate the provided credentials and attempt to aggregate data for accounts and transactions. You can prevent this automatic aggregation by setting the `skip_aggregation` parameter to true. OAuth members can only be created with institutions that support it. OAuth members require no credentials, but do require you to set the is_oauth parameter to true. OAuth members will be created with a connection status of `PENDING`; a one-time use redirect URI will be provided in the `oauth_window_uri` field of the response. Making a separate request to the `oauth_window_uri` will then take the end user to the registered OAuth application where they can provide credentials and choose what data to share with MX. <br></br><br></br>   After completing the OAuth process, aggregation will automatically begin and the connection status will be updated, unless the `skip_aggregation` parameter was set to true. Partners should not add multiple members to a user if they are connecting to the same institution using the same credentials. This is not supported by many data providers and will result in undefined behavior. This restriction also applies to OAuth members. In addition, it is important to note that the name field is rarely necessary in a member create request. The preferred option is to omit the field and use the default name, i.e. the name of the institution set up by an MX Integration Engineer. <br></br> <br></br>  Only in rare circumstances would the name field be supplied in a member create request, and it should not be used unless you have discussed it with a MX Integration Engineer. This endpoint accepts the optional `MX-Skip-Webhook` header and `skip_webhook` parameter.
      requestBody:
        content:
          application/vnd.mx.nexus.v1+json:
            schema:
              "$ref": "#/components/schemas/MemberCreateRequestBody"
        description: The parameters to create a member.
        required: true
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/MemberResponseBody'
  /members/{member_guid}:
    get:
      tags:
        - members
      summary: Read member
      operationId: readMember
      description: Read a member.
      parameters:
        - name: member_guid
          description: The unique identifier for the member. Defined by MX. 
          required: true
          in: path
          schema:
            type: string
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/MemberResponseBody'
    put:
      tags:
        - members
      summary: Update member
      operationId: updateMember
      description:  This request was previously documented as non-rooted or not wrapped in the "member" object. We have added backwards compatibility to partners coded to the non-rooted format but all new integrations will use rooted requests as documented below.    The use of this endpoint to answer an MFA challenge and resume aggregation has been deprecated. Partners should use the resume aggregation endpoint in its place, as outlined in the Nexus guide. MX continues to support partners who leverage the update member endpoint for this purpose, but MX encourages all partners to switch to the resume aggregation endpoint instead. <br></br><br></br>   This endpoint should be used to update a member's credentials, e.g., login and password, when the member's connection_status is `DENIED` or `PREVENTED`. Partners should make a request to the list member credentials endpoint to get the list of that member's required credentials before gathering them from the user and making a request to the update member endpoint.   An aggregation job will be initiated automatically when a member's credentials are updated unless the `skip_aggregation` field is used to prevent it. However, a new job will not be initiated if there is already a job in process for that member. <br></br><br></br> The skip_aggregation field should not be provided with a value of true when the update member endpoint is being used to answer an MFA challenge. That said, the best practice is to use the newer resume aggregation endpoint to answer MFA challenges.   This endpoint accepts the optional `MX-Skip-Webhook` header and `skip_webhook` parameter.
      parameters:
        - name: member_guid
          description: The unique identifier for the member. Defined by MX. 
          required: true
          in: path
          schema:
            type: string
      requestBody:
        content:
          application/vnd.mx.nexus.v1+json:
            schema:
              "$ref": "#/components/schemas/MemberUpdateRequestBody"
        description: The parameters to update a member.
        required: true
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/MemberResponseBody'
    delete: 
      tags:
        - members
      summary: Delete member
      operationId: deleteMember
      description: The endpoint accepts the optional MX-Skip-Webhook header. 
      responses:
        "204":
          description: No content
      parameters:
        - name: member_guid
          description: The unique identifier for the member that is MX-defined. 
          example: MBR-7aa13bdb-2866-ba38-b326-d9fb32268f9b
          in: path
          required: true
          schema:
            type: string
  /members/{member_guid}/aggregate:
    get:
      tags:
        - members
      summary: Aggregate member
      operationId: aggregateMember
      description: Use this endpoint to create a new aggregation job, which is the process that gathers updated account, transaction, and holding data for a given member. If you've set the `use_cases` field when creating the member, then the member's `use_case` must be set to `PFM`, otherwise a 403 will return. The response will include important information about the member's aggregation including the `is_being_aggregated` and `connection_status` fields. The aggregation can take some time to finish; you can use the the read member endpoint and track the status and completion of the aggregation as it progresses.      
      parameters:
        - name: member_guid
          description: The unique identifier for the member. Defined by MX. 
          in: path
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/vnd.mx.nexus.v1+json:
            schema:
              "$ref": '#/components/schemas/AggregateMemberRequest'
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/MemberResponseBody'
  /members/aggregate: 
    get: 
      tags:
        - members
      summary: Aggregate all members
      operationId: aggregateAllMembers
      description: This endpoint will kick off a new aggregation job for each member which belongs to the user. If you've set the `use_cases` field when creating the member, then the member's `use_case` must be set to `PFM`, otherwise a 403 will return. The response will include important information about the members' aggregations including the `is_being_aggregated` and `connection_status` fields. Aggregations can take some time to finish; you can use the the read member or list members endpoints to track the status and completion of each individual aggregation as it progresses.
      requestBody:
        content:
          application/vnd.mx.nexus.v1+json:
            schema:
              "$ref": '#/components/schemas/AggregateMemberRequest'
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/MembersResponseBody'
  /members/{member_guid}/oauth_window_uri:
    get:
      tags:
        - members
      summary: Generate OAuth window URI
      operationId: generateOAuthWindowUri
      description: This endpoint will generate an `oauth_window_uri` for the specified `member`.    Generating a new `oauth_window_uri` is necessary in order to send the end user through the OAuth process again. There are several situations where you might want to do this, like if a previous attempt at OAuth failed because the end user closed the OAuth window before completing the process, or the financial institution has revoked a previous OAuth token, or the token has expired. <br></br><br></br> The `member` in question must be connected to an institution which supports OAuth. If the institution does not support OAuth, a `400 Bad Request` error will be returned with the message `Member cannot use OAuth`.
      parameters:
        - name: member_guid
          description: The unique identifier for the member. Defined by MX. 
          required: true
          in: path
          schema: 
            type: string
        - name: client_redirect_url
          description: A URL that MX will redirect to at the end of OAuth with additional query parameters. Only available with `oauth_referral_source` as `APP` or `is_mobile_webview` as `true`.
          required: false
          in: query
          schema:
            type: string
        - name: referral_source
          description: Must be either `BROWSER` or `APP` depending on the implementation. Defaults to `BROWSER`.
          required: false
          in: query
          schema:
            type: string
        - name: ui_message_webview_url_scheme
          description: A scheme for routing the user back to the application state they were previously in.
          required: false
          in: query
          schema:
            type: string
        - name: skip_aggregation
          description: Setting this parameter to `true` will prevent the member from automatically aggregating after being redirected from the authorization page.
          required: false
          in: query
          schema:
            type: string
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              example:
                member:
                  guid: "MBR-ad533d14-b4f1-49a4-8093-b0ae9aa8d023"
                  oauth_window_uri: "https://dev-firefly1.moneydesktop.com/oauth/predirect_to/MBR-ad533d14-b4f1-49a4-8093-b0ae9aa8d023/r620svb66l4rqpskl96k2vkqdqZm04cx2qlAtx17rv5zrtz5lh376g2y6ndfq43ncpnkjl9qlghhxt2ltbxqm6zjhg4h3xnkn26zkn6dp2q2s0k0A21bcb2b6A2fgr2xwf06qg4tzw31pc5jtmAm4tb2612ply6mAqxA60fz1x3d7dmmcw3lcldh7btz9wkywyvkAggbAnbpwrrl3fhtbzhkpzxypy4qm7w51A8kA3dmzcb728kmbr19m9kdxrd8x32qAdwfw5s57wj7r2gwybq46d6rd1nmw084cndp7s3zA1vbmdh814p2zb7g52zxspt9cdpxrswnff9k0qdmkq4nb5k8k6sj92136y31?referral_source=BROWSER&ui_message_webview_url_scheme=MX"
  /member/{member_guid}/accounts:
    get:
      tags:
        - members
      summary: List member accounts
      operationId: listMemberAccounts
      description: This endpoint returns an array containing all the accounts which belong to the member.
      parameters:
        - name: member_guid
          description: The unique identifier for the member. Defined by MX. 
          required: true
          in: path
          schema: 
            type: string
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/AccountsResponseBody'
  /members/{member_guid}/challenges:
    get:
      tags:
        - members
      summary: List member challenges
      operationId: listMemberChallenges
      description: When a member has been challenged by multi-factor authentication, this endpoint allows you to read the specific challenges that must be answered. It returns an array of credentials.  Best practice is to use this endpoint to list challenges that need to be answered; however, MX continues to support partners who use the mfa credentials endpoint for that purpose.
      parameters:
        - name: member_guid
          description: The unique identifier for the member. Defined by MX. 
          required: true
          in: path
          schema: 
            type: string
      responses:
        '200':
          description: Successful response with challenges
          content:
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/ChallengesResponseBody'
              examples:
                text_challenge:
                  value:
                    challenges:
                      - type: TEXT
                        field_name: "What city were you born in?"
                        guid: "CRD-22f1b144-dde6-4c80-9d98-ca3c4900d173"
                        label: "What city were you born in?"
                options_challenge:
                  value:
                    challenges:
                      - type: OPTIONS
                        field_name: "Your institution requires that you enter a temporary PIN number sent to you by one of the following methods:"
                        guid: "CRD-47291cf2-8767-8767-8ffa-db5e1a77f388"
                        label: "Your institution requires that you enter a temporary PIN number sent to you by one of the following methods:"
                        options:
                          - guid: "CRO-6d64cc9a-0998-461d-a072-78801143337e"
                            label: "Text (***)***-9265"
                            value: "1"
                          - guid: "CRO-309b2ceb-5434-4a34-8a48-bfa0e94b5dd2"
                            label: "Email p********@gmail.com"
                            value: "0"
                image_data_challenge:
                  value:
                    challenges:
                      - type: IMAGE_DATA
                        field_name: "Who is this guy?"
                        guid: "CRD-ce76d2e3-86bd-ec4a-ec52-eb53b5194bf5"
                        label: "Who is this guy?"
                        image_data: "data:image/png;base64,iVBORw0KGgoAAAANSUh ..."
                image_options_challenge:
                  value:
                    challenges:
                      - type: IMAGE_OPTIONS
                        field_name: "Please select your favorite actor."
                        guid: "CRD-5763eb0a-a97d-452e-a30d-890fcdf11450"
                        label: "Please select your favorite actor"
                        image_options:
                          - guid: "CRO-e7ecc864-61fd-47a6-a122-3cbc9016660d"
                            label: "Tom Hanks"
                            value: "0"
                            data_uri: "data:image/png;base64,/9j/4AAQSkZJRgAB..."
                          - guid: "CRO-6b11e6c5-44c8-4d7f-b9c5-562f3ad19263"
                            label: "Matt Damon"
                            value: "1"
                            data_uri: "data:image/png;base64,/9j/4AAQSkZJRgAgICA="
                          - guid: "CRO-0a1a07e1-66d4-4a55-9a9b-395782652320"
                            label: "Julia Roberts"
                            value: "2"
                            data_uri: "data:image/png;base64,iVBORggg=="
  /member/{member_guid}/credentials:
    get:
      tags:
        - members
      summary: List member credentials
      operationId: listMemberCredentials
      description: Use this endpoint to list all the credentials needed to update a member.    Each member's credentials are subject to change and can differ between members connected to the same institution. The member's credential list must be requested to know what the end user should be prompted to enter before updating the member.
      parameters:
        - name: member_guid
          description: The unique identifier for the member. Defined by MX. 
          required: true
          in: path
          schema: 
            type: string
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/CredentialsResponseBody'
  /members/{member_guid}/transactions:
    get:
      tags:
        - members
      summary: List member transactions
      operationId: listMemberTransactions
      description: Use this endpoint to get a paginated list of all the transactions associated with a specific `member`.
      parameters:
        - name: member_guid
          description: The unique identifier for the member. Defined by MX. 
          required: true
          in: path
          schema: 
            type: string
        - name: account_guid
          description: Return transactions belonging to the specified account GUID.
          required: false
          in: query
          schema: 
            type: string
        - name: account_guids[]
          description:   Return transactions belonging to any account GUIDs specified in the request URL. For example, `/members/:member_guid/transactions?page=2&records_per_page=100&account_guids[]=ACT-00266e24-5980-0213-96aa-649246a418af&account_guids[]=ACT-15f3a4de-cb45-d892-4480-6d05576011a8`.
          required: false
          in: query
          schema: 
            type: string
        - name: from_date
          description: Return transactions starting from this day, based on the transaction date. Defaults to 120 days ago if not provided. Format should be ISO 8601 format (2013-05-28).
          required: false
          in: query
          schema: 
            type: string
        - name: to_date
          description: Return transactions ending with this day, based on the transaction date. Defaults to 5 days forward from the day the request is made so as to capture pending transactions. Format should be ISO 8601 format (2013-05-28).
          required: false
          in: query
          schema: 
            type: string
        - name: page
          description: Results are returned in paginated sets, this is the page of the results you would like to view. Defaults to page 1 if no page is specified.
          required: false
          in: query
          schema: 
            type: integer
        - name: records_per_page
          description: Requests to all list endpoints that return multiple transactions (e.g. list transactions) should specify the desired records_per_page. The supported range is from 10 to 1000. If the records_per_page parameter is not specified or is outside this range, a default of 25 records per page will be used.
          required: false
          in: query
          schema:
            type: integer  
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/TransactionsResponseBody'
  /members/{member_guid}/refresh:
    get:
      tags:
        - members
      summary: Refresh member (alias for aggregate member)
      operationId: refreshMember
      description: This is an alias for `members/aggregate`. Use this endpoint to create a new aggregation job, which is the process that gathers updated account, transaction, and holding data for a given member. If you've set the `use_cases` field when creating the member, then the member's `use_case` must be set to `PFM`, otherwise a 403 will return. The response will include important information about the member's aggregation including the `is_being_aggregated` and `connection_status` fields. The aggregation can take some time to finish; you can use the the read member endpoint and track the status and completion of the aggregation as it progresses. <br></br>Detailed information on the aggregation process from start to finish can be found in the [guide](/nexus/aggregating-data).
      parameters:
        - name: member_guid
          description: The unique identifier for the member. Defined by MX. 
          in: path
          required: true
          schema:
            type: string
        - name: include_holdings
          description: When set to `false`, the aggregation will not gather holdings data, but will gather transaction and account data. Defaults to `true`.
          required: false
          in: query
          schema:
            type: boolean  
        - name: include_transactions
          description: When set to `false`, the aggregation will not gather transaction data, but will include account and holdings data. Defaults to `true`.
          required: false
          in: query
          schema:
            type: boolean  
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/MembersResponseBody'
  /members/refresh:
    get:
      tags:
        - members
      summary: Refresh all members (alias for aggregate all member)
      operationId: refreshAllMembers
      description: This is an alias for aggregate all members. This endpoint will kick off a new aggregation job for each member which belongs to the user. If you've set the `use_cases` field when creating the member, then the member's `use_case` must be set to `PFM`, otherwise a 403 will return. The response will include important information about the members' aggregations including the is_being_aggregated and connection_status fields. Aggregations can take some time to finish; you can use the the read member or list members endpoints to track the status and completion of each individual aggregation as it progresses.
      parameters:
        - name: include_holdings
          description: When set to `false`, the aggregation will not gather holdings data, but will gather transaction and account data. Defaults to `true`.
          required: false
          in: query
          schema:
            type: boolean  
        - name: include_transactions
          description: When set to `false`, the aggregation will not gather transaction data, but will include account and holdings data. Defaults to `true`.
          required: false
          in: query
          schema:
            type: boolean  
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/MembersResponseBody'
  /members/{member_guid}/resume:
    put:
      tags:
        - members
      summary: Resume aggregation 
      operationId: resumeAggregation
      description: Best practice is to use the resume endpoint to answer MFA challenges; however, MX continues to support partners who leverage the update member endpoint for this purpose.    This endpoint allows you to respond to multi-factor authentication by providing answers to MFA challenges. Aggregation is automatically resumed if the correct credentials are provided in the request, i.e., if the challenges are answered correctly.   A `member` must have a `connection_status` of `CHALLENGED` in order to successfully use the resume aggregation endpoint; a `405 Method Not Allowed` error will be returned otherwise.    A `400 Bad Request` error will be returned if the credentials provided are invalid.
      parameters:
        - name: member_guid
          description: The unique identifier for the member. Defined by MX. 
          required: true
          in: path
          schema: 
            type: string
      requestBody:
        required: true
        content:
          application/vnd.mx.nexus.v1+json:
            schema:
              "$ref": '#/components/schemas/ResumeRequestBody'
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/MembersResponseBody'
  /merchants:
    get: 
      tags:
        - merchants
      summary: List merchants
      operationId: listMerchants
      description: List all merchants.
      parameters:
        - name: page
          description: Results are returned in paginated sets, this is the page of the results you would like to view. Defaults to page 1 if no page is specified.
          example: 2
          in: query
          required: false
          schema:
            type: integer
        - name: records_per_page
          description: Requests to all list endpoints that return multiple transactions (e.g. list transactions) should specify the desired records_per_page. The supported range is from 10 to 1000. If the records_per_page parameter is not specified or is outside this range, a default of 25 records per page will be used.
          example: 100
          in: query
          required: false
          schema:
            type: integer
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/MerchantsResponseBody'
  /merchants/{merchant_guid}:
    get:
      tags:
        - merchants
      summary: Read merchant
      operationId: readMerchant
      description: Read a specific merchant.
      parameters:
        - name: merchant_guid
          description: The unique identifier for the merchant. Defined by MX. 
          example: MCH-ad6d3405-ec03-721d-b0ca-eeceeebcb8b5
          in: path
          required: true
          schema: 
            type: string
        - name: page
          description: Results are returned in paginated sets, this is the page of the results you would like to view. Defaults to page 1 if no page is specified.
          example: 2
          in: query
          required: false
          schema:
            type: integer
        - name: records_per_page
          description: Requests to all list endpoints that return multiple transactions (e.g. list transactions) should specify the desired records_per_page. The supported range is from 10 to 1000. If the records_per_page parameter is not specified or is outside this range, a default of 25 records per page will be used.
          example: 100
          in: query
          required: false
          schema:
            type: integer
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/MerchantResponseBody'
  /merchant_locations/{merchant_location_guid}:
    get:
      tags:
        - merchants
      summary: Read merchant location
      operationId: readMerchantLocation
      description: Use this endpoint to get data on a specific merchant location. The `merchant_location_guid` can be found on `transaction` objects.
      parameters:
        - name: merchant_location_guid
          description: The unique identifier for the merchant. Defined by MX. 
          example: MCL-c51b9d25-9733-4def-8929-2d5bb1b2b9f1
          in: path
          required: true
          schema: 
            type: string
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/MerchantLocation'
  /monthly_cash_flow_profile:
    get:
      tags:
        - monthly cash flow profile
      summary: Read monthly cash flow profile
      operationId: readMonthlyCashFlowProfile
      description: Read the monthly cash flow profile.
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/MonthlyCashFlowResponseBody'
    put:
      tags:
        - monthly cash flow profile
      summary: Update monthly cash flow profile
      operationId: updateMonthlyCashFlowProfile
      description: Use this endpoint to update the attributes of a `monthly_cash_flow_profile`.
      requestBody:
        required: true
        content:
          application/vnd.mx.nexus.v1+json:
            schema:
              "$ref": '#/components/schemas/MonthlyCashFlowProfileRequestBody'
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/MonthlyCashFlowResponseBody'
  /notifications:
    post: 
      tags:
        - notifications
      summary: Create notification
      operationId: createNotification
      description: All notifications created through the API will be of notification type `API_NOTIFICATION` and will not be associated to an entity.
      requestBody:
        required: true
        content:
          application/vnd.mx.nexus.v1+json:
            schema:
              type: object
              properties:
                notification:
                  type: object
                  properties:
                    subject:
                      type: string
                      description: The notification summary text.
                      example: Interest rates are at a new low. Come into our branch today.
                  required:
                    - subject
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/NotificationResponseBody'
    get: 
      tags:
        - notifications
      summary: List notifications
      operationId: listNotifications
      description: List all notifications.
      parameters: 
        - name: from_date
          description: Return transactions starting from this day. Defaults to 120 days ago if not provided. Format should be ISO 8601 format (2013-05-28).
          example: 
          in: query
          required: false
          schema: 
            type: string
        - name: to_date
          description: Return transactions ending with this day. Defaults to 5 days forward from the day the request is made so as to capture pending transactions. Format should be ISO 8601 format (2013-05-28).
          example: 
          in: query
          required: false
          schema: 
            type: string
        - name: page
          description: Results are returned in paginated sets, this is the page of the results you would like to view. Defaults to page 1 if no page is specified.
          example: 
          in: query
          required: false
          schema: 
            type: string
        - name: records_per_age
          description:  The supported range is from 10 to 1000. If the records_per_page parameter is not specified or is outside this range, a default of 25 records per page will be used.
          example: 
          in: query
          required: false
          schema: 
            type: string
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/NotificationsResponseBody'

  /notifications/{notification_guid}:
    get: 
      tags:
        - notifications
      summary: Read notification
      operationId: readNotification
      description: Read a specific notification.
      parameters:
        - name: notification_guid
          description: The unique identifier for notifications. Defined by MX. 
          example: NTF-b53294f5-2356-4782-9f81-ae064c42b40a
          in: path
          required: true
          schema: 
            type: string
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/NotificationResponseBody'
    delete:
      tags:
        - notifications
      summary: Delete notification
      operationId: deleteNotification
      description: Only notifications with type `API_NOTIFICATION` may be deleted via API. Attempting to delete a notification of a different notification type will result in a `403 Forbidden` response status.
      parameters:
        - name: notification_guid
          description: The unique identifier for notifications. Defined by MX. 
          example: NTF-b53294f5-2356-4782-9f81-ae064c42b40a
          in: path
          required: true
          schema: 
            type: string
      responses:
        "204":
          description: No content
  /notifications/{notification_guid}/deliverables:
    get:
      tags:
        - notifications
      summary: List deliverables
      operationId: listDeliverables
      description: List all deliverables for a notification.
      parameters:
        - name: notification_guid
          description: The unique identifier for notifications. Defined by MX. 
          example: NTF-b53294f5-2356-4782-9f81-ae064c42b40a
          in: path
          required: true
          schema: 
            type: string
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/DeliverableNotificationsResponseBody'
    post:
      tags:
        - notifications
      summary: Create deliverable
      operationId: createDeliverable
      description: Creating a deliverable resource for a notification will place that deliverable in a queue to be delivered on a specific channel. As such, each deliverable should have its content tailored for that particular channel (e.g., HTML email). Deliverables are not guaranteed to be delivered. Zero or one deliverable per channel is acceptable. <br></br><br></br>   Providing an unknown channel type will result in a 400 Bad Request response status. <br></br><br></br>   Each channel has its own data dependency requirements. These requirements will not be enforced by the API, but may cause failure to deliver your notification to the user if not met.    <ul><li>Email deliverables require the user having an email address configured and verified by the user.</li><li>Push deliverables require the user having paired one or more mobile devices to receive notifications.</li><li>  SMS deliverables require the user having a phone number configured and verified by the user.</li></ul><br></br> In-app deliverables are immediately available to the user the next time they login. Delivery of other deliverable content is scheduled as opposed to real-time.
      parameters:
        - name: notification_guid
          description: The unique identifier for the notification. Defined by MX. 
          in: path
          required: true
          schema: 
            type: string
      requestBody:
        required: true
        content:
          application/vnd.mx.nexus.v1+json:
            schema:
              "$ref": '#/components/schemas/DeliverableNotificationRequestBody'
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/DeliverableNotificationResponseBody'
  /notifications/{notification_guid}/deliverables/{deliverable_guid}:
    delete:
      tags:
        - notifications
      summary: Delete deliverable
      operationId: deleteDeliverable
      description: Only deliverables belonging to a notification with notification type `API_NOTIFICATION` may be deleted via API. <br></br><br></br> Attempting to delete a deliverable with a notification of a different notification type will result in a `403 Forbidden` response status.
      parameters:
        - name: notification_guid
          description: The unique identifier for the notification. Defined by MX. 
          example: NTF-7aa13bdb-2866-ba38-b326-d9fb32268f9b
          in: path
          required: true
          schema: 
            type: string
        - name: deliverable_guid
          description: The unique identifier for the deliverable. Defined by MX. 
          example: DNF-7aa13bdb-2866-ba38-b326-d9fb32268f9b
          in: path
          required: true
          schema: 
            type: string
      responses:
        "204":
          description: No content
    get:
      tags:
        - notifications
      summary: Read deliverable
      operationId: readDeliverable
      description: Read a specific deliverable.
      parameters:
        - name: notification_guid
          description: The unique identifier for the notification. Defined by MX. 
          example: NTF-7aa13bdb-2866-ba38-b326-d9fb32268f9b
          in: path
          required: true
          schema: 
            type: string
        - name: deliverable_guid
          description: The unique identifier for the deliverable. Defined by MX. 
          example: DNF-7aa13bdb-2866-ba38-b326-d9fb32268f9b
          in: path
          required: true
          schema: 
            type: string
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/DeliverableNotificationResponseBody'
  /scheduled_payments:
    get:
      tags:
        - scheduled payments
      summary: List scheduled payments
      operationId: listScheduledPayments
      description: Use this endpoint to read the attributes of all scheduled payments associated with the current user.
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/ScheduledPaymentsResponseBody'
    post:
      tags:
        - scheduled payments
      summary: Create a scheduled payment
      operationId: createScheduledPayment
      description: Create a scheduled payment.
      requestBody:
        required: true
        content:
          application/vnd.mx.nexus.v1+json:
            schema:
              "$ref": '#/components/schemas/ScheduledPaymentRequestBody'
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/ScheduledPaymentResponseBody'
  /scheduled_payments/{guid}:
    delete:
      tags:
        - scheduled payments
      summary: Delete a scheduled payment
      operationId: deleteScheduledPayment
      description: Use this endpoint to delete a specific scheduled_payment according to its unique GUID. Unlike most other Nexus delete requests, a successful delete will return a `204 No Content` status without an empty body.
      parameters:
        - name: guid
          description: The unique identifier for the payment. Defined by MX. 
          example: SCP-f278ecc3-6123-4704-afb0-4a93df0ad3dd
          in: path
          required: true
          schema: 
            type: string
      responses:
        "204":
          description: No content
    get:
      tags:
        - scheduled payments
      summary: Read a scheduled payment
      operationId: readScheduledPayment
      description: Use this endpoint to read the attributes of a specific `scheduled_payment` according to its unique GUID.
      parameters:
        - name: guid
          description: The unique identifier for the payment. Defined by MX. 
          example: SCP-f278ecc3-6123-4704-afb0-4a93df0ad3dd
          in: path
          required: true
          schema: 
            type: string
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/ScheduledPaymentResponseBody'
    put:
      tags:
        - scheduled payments
      summary: Update a scheduled payment
      operationId: updateScheduledPayment
      description: Use this endpoint to update an existing scheduled payment according to its unique GUID.
      parameters:
        - name: guid
          description: The unique identifier for the payment. Defined by MX. 
          example: SCP-f278ecc3-6123-4704-afb0-4a93df0ad3dd
          in: path
          required: true
          schema: 
            type: string
      requestBody:
        required: true
        content:
          application/vnd.mx.nexus.v1+json:
            schema:
              "$ref": '#/components/schemas/ScheduledPaymentRequestBody'
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/ScheduledPaymentResponseBody'
  /sessions:
    post:
      tags:
        - sessions
      summary: Create session
      operationId: createSession
      description: This request must be made with an `MD-API-TOKEN` HTTP header. The value of the header is the API token obtained using the SSO API. The request is made without a body unless the optional `skip_aggregation` flag is used to skip the automatic aggregation of existing members when a session is opened. The session token will be used in each request made for the user. It should be passed in an `MD-SESSION-TOKEN` HTTP header field.
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/SessionResponseBody'
  /spending_plans:
    post:
      tags:
        - spending plan
      summary: Create a spending plan
      operationId: createSpendingPlan
      description: Create a spending plan.
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/SpendingPlanResponseBody'
    get:
      tags:
        - spending plan
      summary: List spending plans
      operationId: listSpendingPlans
      description: This endpoint returns a list of information about all `spending_plan` resources associated with the user for which the Nexus session is open.
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/SpendingPlansResponseBody'
  /spending_plans/{spending_plan_guid}:
    delete: 
      tags:
        - spending plan
      summary: Delete a spending plan
      operationId: deleteSpendingPlan
      description: Use this endpoint to delete a particular spending plan according to its unique GUID.
      parameters:
        - name: spending_plan_guid
          description: The unique identifier for the spending plan. Defined by MX. 
          example: SPL-7aa13bdb-2866-ba38-b326-d9fb32268f9b 
          in: path
          required: true
          schema: 
            type: string
      responses:
        '204':
          description: No content
    get:
      tags:
        - spending plan
      summary: Read a spending plan
      operationId: readSpendingPlan
      description: This endpoint returns information about a specific spending_plan according to its MX-defined GUID.
      parameters:
        - name: spending_plan_guid
          description: The unique identifier for the spending plan. Defined by MX. 
          example: SPL-7aa13bdb-2866-ba38-b326-d9fb32268f9b 
          in: path
          required: true
          schema: 
            type: string
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/SpendingPlanResponseBody'
  /spending_plans/{spending_plan_guid}/spending_plan_account:
    get:
      tags:
        - spending plan
      summary: List spending plan accounts
      operationId: listSpendingPlanAccounts
      description: This endpoint returns a list of `spending_plan_accounts` associated with the `spending_plan` according to its MX-defined GUID.
      parameters:
        - name: spending_plan_guid
          description: The unique identifier for the spending plan. Defined by MX. 
          example: SPL-7aa13bdb-2866-ba38-b326-d9fb32268f9b 
          in: path
          required: true
          schema: 
            type: string
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/SpendingPlanAccountsResponse'
  /spending_plans/{spending_plan_guid}/spending_plan_account/{spending_plan_account_guid}:
    delete:
      tags:
        - spending plan
      summary: Delete spending plan account
      operationId: deleteSpendingPlanAccount
      description: Use this endpoint to delete a particular spending plan account according to its unique GUID.
      parameters:
        - name: spending_plan_guid
          description: The unique identifier for the spending plan. Defined by MX. 
          example: SPL-7aa13bdb-2866-ba38-b326-d9fb32268f9b 
          in: path
          required: true
          schema: 
            type: string
        - name: spending_plan_account_guid
          description: The unique identifier for the spending plan account. Defined by MX. 
          example: SPA-c76e4a85-b2c4-4335-82b7-8f8b8f28c35a
          in: path
          required: true
          schema: 
            type: string
      responses:
        '204':
          description: No content
    get: 
      tags:
        - spending plan
      summary: Read a spending plan account
      operationId: readSpendingPlanAccount
      description: This endpoint returns information about a specific `spending_plan_account` according to its MX-defined GUID.
      parameters:
        - name: spending_plan_guid
          description: The unique identifier for the spending plan. Defined by MX. 
          example: SPL-7aa13bdb-2866-ba38-b326-d9fb32268f9b 
          in: path
          required: true
          schema: 
            type: string
        - name: spending_plan_account_guid
          description: The unique identifier for the spending plan account. Defined by MX. 
          example: SPA-c76e4a85-b2c4-4335-82b7-8f8b8f28c35a
          in: path
          required: true
          schema: 
            type: string
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/SpendingPlanAccountResponseBody'
  /spending_plans/{spending_plan_guid}/iterations:
    get:
      tags:
        - spending plan
      summary: List spending plan iterations
      operationId: listSpendingPlanIterations
      description: This endpoint returns a list of iterations associated with the `spending_plan` according to its MX-defined GUID.
      parameters:
        - name: spending_plan_guid
          description: The unique identifier for the spending plan. Defined by MX. 
          example: SPL-7aa13bdb-2866-ba38-b326-d9fb32268f9b 
          in: path
          required: true
          schema: 
            type: string
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/SpendingPlanIterationsResponseBody'
  /spending_plans/{spending_plan_guid}/iterations/{iteration_number}:
    get:
      tags:
        - spending plan
      summary: Read a spending plan iteration
      operationId: readSpendingPlanIteration
      description: This endpoint returns information about a specific iteration according to its `iteration_number`.
      parameters:
        - name: spending_plan_guid
          description: The unique identifier for the spending plan. Defined by MX. 
          example: SPL-7aa13bdb-2866-ba38-b326-d9fb32268f9b 
          in: path
          required: true
          schema: 
            type: string
        - name: iteration_number
          description: The number of the iteration. 
          example: SPL-7aa13bdb-2866-ba38-b326-d9fb32268f9b 
          in: path
          required: true
          schema: 
            type: string
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/SpendingPlanIterationResponseBody'
  /spending_plans/{spending_plan_guid}/iterations/current:
    get:
      tags:
        - spending plan
      summary: Read current iteration
      operationId: readCurrentSpendingPlanIteration
      description: This endpoint returns information about the current `iteration` associated to the `spending_plan`. 
      parameters: 
        - name: spending_plan_guid
          description: The unique identifier for the spending plan. Defined by MX. 
          example: SPL-7aa13bdb-2866-ba38-b326-d9fb32268f9b 
          in: path
          required: true
          schema: 
            type: string
      responses:
        '200':
          description: OK
          content: 
            application/vnd.mx.nexus.v1+json:
              schema:
                $ref: '#/components/schemas/SpendingPlanIterationResponseBody'
  /spending_plans/{spending_plan_guid}/iterations/current/iteration_items:
    post:
      tags:
        - spending plan
      summary: Create a spending plan iteration item
      operationId: createSpendingPlanIterationItem
      description: This endpoint creates a new `spending_plan_iteration_item`.
      parameters:
        - description: The unique ID for the `spending_plan`.
          example: SPL-e5f9a5bd-c5b3-4901-bdc0-62119b9db262
          in: path
          name: spending_plan_guid
          required: true
          schema:
            type: string
        - description: The unique id for a `user`.
          example: USR-fa7537f3-48aa-a683-a02a-b18940482f54
          in: query
          name: user_guid
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/vnd.mx.nexus.v1+json:
            schema:
              "$ref": "#/components/schemas/SpendingPlanIterationItemCreateRequestBody"
        description: Iteration item to be created with required parameter (planned_amount)
        required: true
      responses:
        "200":
          content:
            application/vnd.mx.api.v1+json:
              schema:
                "$ref": "#/components/schemas/SpendingPlanIterationItemResponseBody"
          description: OK
    get:
      tags:
        - spending plan
      operationId: listSpendingPlanIterationItems
      description: Use this endpoint to list all the spending plan `iteration_items` associated with the `iteration`.
      parameters:
        - description: Specify current page.
          example: 1
          in: query
          name: page
          schema:
            type: integer
        - description: Specify records per page.
          example: 10
          in: query
          name: records_per_page
          schema:
            type: integer
        - description: The unique ID for the `spending_plan`.
          example: SPL-e5f9a5bd-c5b3-4901-bdc0-62119b9db262
          in: path
          name: spending_plan_guid
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/vnd.mx.api.v1+json:
              schema:
                "$ref": "#/components/schemas/SpendingPlanIterationItemsResponseBody"
          description: OK
      summary: List spending plan iteration items
  /spending_plans/{spending_plan_guid}/iterations/current/iteration_items/{iteration_item_guid}:
    get:
      tags:
        - spending plan
      operationId: readSpendingPlanIterationItem
      description: Use this endpoint to read the attributes of a specific spending plan `iteration_item` according to its unique GUID.
      parameters:
        - description: Specify current page.
          example: 1
          in: query
          name: page
          schema:
            type: integer
        - description: Specify records per page.
          example: 10
          in: query
          name: records_per_page
          schema:
            type: integer
        - description: The unique ID for the `spending_plan`.
          example: SPL-e5f9a5bd-c5b3-4901-bdc0-62119b9db262
          in: path
          name: spending_plan_guid
          required: true
          schema:
            type: string
        - description: The unique ID for the `iteration_item`.
          example: SII-a4dc1549-da28-1245-9c9c-53eee4cdfbe3
          in: path
          name: iteration_item_guid
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/vnd.mx.api.v1+json:
              schema:
                "$ref": "#/components/schemas/SpendingPlanIterationItemResponseBody"
          description: OK
      summary: Read a spending plan iteration item
    put:
      tags:
        - spending plan
      operationId: updateSpendingPlanIterationItem
      description: Use this endpoint to update an existing `spending_plan_iteration_item`.
      parameters:
        - description: The unique ID for the `spending_plan`.
          example: SPL-e5f9a5bd-c5b3-4901-bdc0-62119b9db262
          in: path
          name: spending_plan_guid
          required: true
          schema:
            type: string
        - description: The unique ID for the `iteration_item`.
          example: SII-a4dc1549-da28-1245-9c9c-53eee4cdfbe3
          in: path
          name: iteration_item_guid
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/vnd.mx.nexus.v1+json:
            schema:
              "$ref": "#/components/schemas/SpendingPlanIterationItemCreateRequestBody"
        description: Iteration item to be updated with required parameter (planned_amount)
        required: true
      responses:
        "200":
          content:
            application/vnd.mx.api.v1+json:
              schema:
                "$ref": "#/components/schemas/SpendingPlanIterationItemResponseBody"
          description: OK
      summary: Update a spending plan iteration item
    delete:
      tags:
        - spending plan
      summary: Delete spending plan iteration item
      operationId: deleteSpendingPlanIterationItem
      description: Use this endpoint to delete a particular spending plan iteration item according to its unique GUID.
      parameters:
        - description: The unique ID for the `spending_plan`.
          example: SPL-e5f9a5bd-c5b3-4901-bdc0-62119b9db262
          in: path
          name: spending_plan_guid
          required: true
          schema:
            type: string
        - description: The unique ID for the `iteration_item`.
          example: SII-a4dc1549-da28-1245-9c9c-53eee4cdfbe3
          in: path
          name: iteration_item_guid
          required: true
          schema:
            type: string
      responses:
        "204":
          description: No content
  /taggings:
    get:
      tags:
        - taggings
      summary: List taggings
      operationId: listTaggings
      description: Use this endpoint to list all taggings.
      responses:
        "200":
          description: OK
          content:
            application/vnd.mx.api.v1+json:
              schema:
                "$ref": "#/components/schemas/TaggingResponseBody"
  /tags:
    get:
      tags:
        - tags
      summary: List tags
      operationId: listTags
      description: Use this endpoint to list all tags.
      responses:
        "200":
          content:
            application/vnd.mx.api.v1+json:
              schema:
                "$ref": "#/components/schemas/TagsResponseBody"
          description: OK
  /transaction_rules:
    get:
      tags:
        - transaction rules
      summary: List transaction rules
      operationId: listTransactionRules
      description: Use this endpoint to read the attributes of all existing transaction rules belonging to the user.
      responses:
        "200":
          content:
            application/vnd.mx.api.v1+json:
              schema:
                "$ref": "#/components/schemas/TransactionRulesResponseBody"
          description: OK
    post:
      tags:
        - transaction rules
      operationId: createTransactionRule
      description:
        Use this endpoint to create a new transaction rule. The newly-created
        `transaction_rule` object will be returned if successful.
      requestBody:
        required: true
        content:
          application/vnd.mx.nexus.v1+json:
            schema:
              "$ref": "#/components/schemas/TransactionRuleCreateRequestBody"
      responses:
        "200":
          content:
            application/vnd.mx.api.v1+json:
              schema:
                "$ref": "#/components/schemas/TransactionRuleResponseBody"
          description: OK
      summary: Create transaction rule
  /transaction_rules/{transaction_rule_guid}:
    delete:
      tags:
        - transaction rules
      summary: Delete a transaction rule
      operationId: deleteTransactionRule
      description: Use this endpoint to permanently delete a transaction rule based on its unique GUID.
      parameters:
        - name: transaction_rule_guid
          description: The unique identifier for the transaction rule. Defined by MX.
          example: TXR-a080e0f9-a2d4-4d6f-9e03-672cc357a4d3
          in: path
          required: true
          schema:
            type: string
      responses:
        "204":
          description: No content
    put: 
      tags:
        - transaction rules
      summary: Update a transaction rule
      operationId: updateTransactionRule
      description: Use this endpoint to update the attributes of a specific transaction rule based on its unique GUID. Nexus will respond with the updated `transaction_rule` object. Any attributes not provided will be left unchanged.    Updating the `category_guid` or description will also update all past and future transactions. Updating the `match_description` will only be applied to future transactions.
      parameters:
        - name: transaction_rule_guid
          description: The unique identifier for the transaction rule. Defined by MX.
          example: TXR-a080e0f9-a2d4-4d6f-9e03-672cc357a4d3
          in: path
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/vnd.mx.nexus.v1+json:
            schema:
              "$ref": "#/components/schemas/TransactionRuleCreateRequestBody"
      responses:
        "200":
          content:
            application/vnd.mx.api.v1+json:
              schema:
                "$ref": "#/components/schemas/TransactionRuleResponseBody"
          description: OK
    get:
      tags:
        - transaction rules
      description:
        Use this endpoint to read the attributes of an existing transaction rule based on the rule’s unique GUID.
      parameters:
        - description: The unique id for a `transaction_rule`.
          example: TXR-a080e0f9-a2d4-4d6f-9e03-672cc357a4d3
          in: path
          name: transaction_rule_guid
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/vnd.mx.api.v1+json:
              schema:
                "$ref": "#/components/schemas/TransactionRuleResponseBody"
          description: OK
      operationId: readTransactionRule
      summary: Read transaction rule
  /transactions/{transaction_guid}/split:
    post:
      tags:
        - transactions
      summary: Create split transactions
      operationId: createSplitTransactions
      description: This endpoint creates two or more child transactions that are branched from a previous transaction. This endpoint allows you to link multiple categories, descriptions, and amounts to a parent transaction. <br></br><br></br>    When a split transaction is created, the parent transaction's `has_been_split` field will automatically be updated to `true` and the child transactions' `parent_guid` will have the transaction guid of the parent. The total amount of the child transactions must equal the amount of the parent transaction. Once a transaction has been split it can't be split again.  <br></br><br></br>  To re-split a transaction, it must first be un-split. This can be done by calling the Delete Split Transactions endpoint. Calling this endpoint will delete the existing child transactions and update the parent transaction's `has_been_split` field to false. You can then re-split the parent transaction by calling Create Split Transaction again.
      parameters:
        - name: transaction_guid
          description: The unique identifier for the transaction. Defined by MX. 
          in: path
          required: true 
          schema:
            type: string
      requestBody:
        required: true
        content:
          application/vnd.mx.nexus.v1+json:
            schema:
              type: object
              properties:
                transactions:
                  type: array
                  items:
                    type: object
                    properties:
                      amount:
                        type: number
                      category_guid:
                        type: string
                      description:
                        type: string
                      memo:
                        type: string
                    required:
                      - amount
      responses:
        "200":
          content:
            application/vnd.mx.api.v1+json:
              schema:
                "$ref": "#/components/schemas/TransactionsResponseBody"
          description: OK
  /transactions/{transaction_guid}:
    delete:
      tags:
        - transactions
      summary: Delete transaction
      operationId: deleteTransaction
      description: This endpoint should be used to delete a manual transaction created with the create manual transaction endpoint.
      parameters:
        - name: transaction_guid
          description: The `guid` or `external_guid` for the transaction.
          required: true
          in: path
          schema:
            type: string
      responses:
        "204":
          description: No content
    get:
      tags:
        - transactions
      summary: Read transaction
      operationId: readTransaction
      description: Use this endpoint to read the attributes of a specific transaction according to its unique GUID.
      parameters:
        - name: transaction_guid
          description: The `guid` or `external_guid` for the transaction.
          required: true
          in: path
          schema:
            type: string
      responses:
        "200":
          content:
            application/vnd.mx.api.v1+json:
              schema:
                "$ref": "#/components/schemas/TransactionResponseBody"
          description: OK
    put:
      tags:
        - transactions
      operationId: updateTransaction
      description:
        Update a specific transaction according to its unique identifier.
      parameters:
        - description: The unique `guid` or `external_guid` for a `transaction`.
          example: TRN-810828b0-5210-4878-9bd3-f4ce514f90c4
          in: path
          name: transaction_guid
          required: true
          schema:
            type: string
      requestBody:
        required: true
        content:
          application/vnd.mx.nexus.v1+json:
            schema:
              $ref: '#/components/schemas/TransactionUpdateRequestBody'
      responses:
        "200":
          content:
            application/vnd.mx.api.v1+json:
              schema:
                "$ref": "#/components/schemas/TransactionResponseBody"
          description: OK
      summary: Update transaction
  /transactions/{transaction_guid}/unsplit:
    delete:
      tags:
        - transactions
      summary: Delete split transactions
      operationId: deleteSplitTransactions
      description: This endpoint deletes all split transactions linked to a parent transaction, but it leaves the parent transaction active. This request will also update the parent transaction's `has_been_split` field to false. This endpoint accepts the optional `MX-Skip-Webhook` header.
      parameters:
        - description: The unique id for a `transaction`.
          example: TRN-810828b0-5210-4878-9bd3-f4ce514f90c4
          in: path
          name: transaction_guid
          required: true
          schema:
            type: string
      responses:
        "204":
          description: No content
  /transactions:
    post:
      tags:
        - transactions
      summary: (Deprecated) Create a split transaction
      operationId: createDeprecatedSplitTransaction
      description: In our efforts to improve our Nexus API, we have implemented newer, better endpoints to create and delete split transactions. As such, this endpoint has been deprecated, but it remains documented for previous integrations using this feature. All new integrations must use the improved split and delete transaction endpoints. This endpoint creates a new transaction that is branched from a previous transaction, allowing you to link multiple categories, descriptions, amounts, and additional information to a parent transaction. When a split transaction is created, the parent transaction's `has_been_split` field will automatically be updated to `true`, and the split transaction's `parent_guid` will have the transaction guid of the parent.
      requestBody:
        required: true
        content:
          application/vnd.mx.nexus.v1+json:
            schema:
              type: object
              properties:
                transaction:
                  type: object
                  properties:
                    parent_guid:
                      type: string
                      description: Unique identifier for the parent transaction. (Required)
                    amount:
                      type: number
                      description: Amount of money you want to re-categorize. (Required)
                    date:
                      type: string
                      format: date
                      description: Date the transaction is created. (Required)
                    description:
                      type: string
                      description: Description on the split transaction. (Required)
                    category_guid:
                      type: string
                      description: Unique identifier of the category. (Optional)
                    has_been_viewed:
                      type: boolean
                      description: Determines if the transaction has been viewed. (Optional)
                    is_hidden:
                      type: boolean
                      description: Determines if the transaction is excluded. (Optional)
                    memo:
                      type: string
                      description: Additional descriptive information about the transaction. (Optional)              
                  required:
                    - amount
                    - date
                    - description
                    - parent_guid
      responses:
        "200":
          content:
            application/vnd.mx.api.v1+json:
              schema:
                "$ref": "#/components/schemas/TransactionsResponseBody"
          description: OK
    get:
      tags:
        - transactions
      summary: List transactions
      operationId: listTransactions
      description: This endpoint returns paginated results; each page will need to be requested separately to retrieve the data on that page. The total_pages field returns an integer representing the total pages to be requested.
      parameters:
        - in: query
          name: account_guid
          schema:
            type: string
          description: Return transactions belonging to the specified account GUID. (Optional)
        - in: query
          name: account_guids
          schema:
            type: array
            items:
              type: string
          description: |
            Return transactions belonging to any account GUIDs specified in the request URL.
            Example: /transactions?page=2&records_per_page=100&account_guids[]=ACT-00266e24-5980-0213-96aa-649246a418af&account_guids[]=ACT-15f3a4de-cb45-d892-4480-6d05576011a8.
        - in: query
          name: from_date
          schema:
            type: string
            format: date
          description: |
            Return transactions starting from this day, based on the transaction date.
            Defaults to 120 days ago if not provided. Format should be ISO 8601 format (e.g., 2013-05-28). (Optional)
        - in: query
          name: to_date
          schema:
            type: string
            format: date
          description: |
            Return transactions ending with this day, based on the transaction date.
            Defaults to 5 days forward from the day the request is made to capture pending transactions.
            Format should be ISO 8601 format (e.g., 2013-05-28). (Optional)
        - in: query
          name: page
          schema:
            type: integer
          description: Results are returned in paginated sets; this is the page of the results you would like to view. Defaults to page 1 if not specified. (Optional)
        - in: query
          name: records_per_page
          schema:
            type: integer
          description: See Pagination for additional information. (Optional)
        - in: query
          name: user_transaction_rule_guid
          schema:
            type: string
          description: Return transactions associated with the provided transaction rule GUID. (Optional) 
        - name: use_case
          description: The use case associated with the member.
          required: false
          in: query
          schema:
            type: string     
      responses:
        "200":
          content:
            application/vnd.mx.api.v1+json:
              schema:
                "$ref": "#/components/schemas/TransactionsResponseBody"
          description: OK
  /transactions/by_category_guid/{category_guid}/by_date/{start_date}/{end_date}:
    get:
      tags:
        - transactions
      summary: List transactions by category GUID and date
      operationId: listTransactionsByCategoryAndDate
      description: This endpoint returns transactions with the specified category GUID within the date range provided. This endpoint returns paginated results; each page will need to be requested separately to retrieve the data on that page. The `total_pages` field returns an integer representing the total pages to be requested.
      parameters:
        - name: account_guid[]
          description: Return transactions belonging to any account GUID specified in the request URL. For example, `/transactions/by_category_guid/CAT-e04e9d1e-e041-c315-2e50-094143ab3f73/by_date/2016-06-28/2016-07-25?page=2&records_per_page=100&account_guids[]=ACT-00266e24-5980-0213-96aa-649246a418af&account_guids[]=ACT-15f3a4de-cb45-d892-4480-6d05576011a8`.
          in: query 
          required: false
          schema:
            type: string
        - name: category_guid
          description: The unique identifier for the category. Defined by MX. 
          in: path 
          required: true
          schema:
            type: string
        - name: start_date
          description: The start date of the window for which transactions will be returned. Given in ISO 8106 format without a timestamp, e.g., 2013-10-25.
          required: true
          in: path
          schema:
            type: string
        - name: end_date
          description: The end date of the window for which transactions will be returned. Given in ISO 8106 format without a timestamp, e.g., 2013-10-25.
          required: true
          in: path
          schema:
            type: string
        - name: page
          description: Results are returned in paginated sets, this is the page of the results you would like to view. Defaults to page 1 if no page is specified.
          required: false
          in: query
          schema:
            type: integer 
        - name: records_per_page
          description: Requests to all list endpoints that return multiple transactions (e.g. list transactions) should specify the desired records_per_page. The supported range is from 10 to 1000. If the records_per_page parameter is not specified or is outside this range, a default of 25 records per page will be used.
          required: false
          in: query
          schema:
            type: integer
        - name: use_case
          description: The use case associated with the member.
          required: false
          in: query
          schema:
            type: string
      responses:
        "200":
          content:
            application/vnd.mx.api.v1+json:
              schema:
                "$ref": "#/components/schemas/TransactionsResponseBody"
          description: OK
  /transactions/by_top_level/{category_guid}/by_date/{start_date}/{end_date}:
    get:
      tags:
        - transactions
      summary: List transactions by top-level category GUID and date
      operationId: listTransactionsByTopLevelCategoryAndDate
      description: This endpoint returns all transactions that match the provided category GUID between two dates. It includes all transactions in a subcategory of the provided category GUID. This endpoint returns paginated results; each page will need to be requested separately to retrieve the data on that page. The `total_pages` field returns an integer representing the total pages to be requested.
      parameters:
        - name: account_guid[]
          description: Return transactions belonging to any account GUID specified in the request URL. For example, `/transactions/by_category_guid/CAT-e04e9d1e-e041-c315-2e50-094143ab3f73/by_date/2016-06-28/2016-07-25?page=2&records_per_page=100&account_guids[]=ACT-00266e24-5980-0213-96aa-649246a418af&account_guids[]=ACT-15f3a4de-cb45-d892-4480-6d05576011a8`.
          in: query 
          required: false
          schema:
            type: string
        - name: category_guid
          description: The unique identifier for the category. Defined by MX. 
          in: path 
          required: true
          schema:
            type: string
        - name: start_date
          description: The start date of the window for which transactions will be returned. Given in ISO 8106 format without a timestamp, e.g., 2013-10-25.
          required: true
          in: path
          schema:
            type: string
        - name: end_date
          description: The end date of the window for which transactions will be returned. Given in ISO 8106 format without a timestamp, e.g., 2013-10-25.
          required: true
          in: path
          schema:
            type: string
        - name: page
          description: Results are returned in paginated sets, this is the page of the results you would like to view. Defaults to page 1 if no page is specified.
          required: false
          in: query
          schema:
            type: integer 
        - name: records_per_page
          description: Requests to all list endpoints that return multiple transactions (e.g. list transactions) should specify the desired records_per_page. The supported range is from 10 to 1000. If the records_per_page parameter is not specified or is outside this range, a default of 25 records per page will be used.
          required: false
          in: query
          schema:
            type: integer
        - name: use_case
          description: The use case associated with the member.
          required: false
          in: query
          schema:
            type: string
      responses:
        "200":
          content:
            application/vnd.mx.api.v1+json:
              schema:
                "$ref": "#/components/schemas/TransactionsResponseBody"
          description: OK
  /transactions/created_between/{start_date}/{end_date}:
    get: 
      tags:
        - transactions
      summary: List transactions created between two dates
      operationId: listTransactionsCreatedBetweenDates
      description: Use this endpoint to list transactions that were created between two dates. This endpoint returns paginated results; each page will need to be requested separately to retrieve the data on that page. The `total_pages` field returns an integer representing the total pages to be requested. 
      parameters:
        - name: account_guid[]
          description: Return transactions belonging to any account GUID specified in the request URL. For example, `/transactions/by_category_guid/CAT-e04e9d1e-e041-c315-2e50-094143ab3f73/by_date/2016-06-28/2016-07-25?page=2&records_per_page=100&account_guids[]=ACT-00266e24-5980-0213-96aa-649246a418af&account_guids[]=ACT-15f3a4de-cb45-d892-4480-6d05576011a8`.
          in: query 
          required: false
          schema:
            type: string
        - name: page
          description: Results are returned in paginated sets, this is the page of the results you would like to view. Defaults to page 1 if no page is specified.
          required: false
          in: query
          schema:
            type: integer 
        - name: records_per_page
          description: Requests to all list endpoints that return multiple transactions (e.g. list transactions) should specify the desired records_per_page. The supported range is from 10 to 1000. If the records_per_page parameter is not specified or is outside this range, a default of 25 records per page will be used.
          required: false
          in: query
          schema:
            type: integer
        - name: start_date
          description: The start date of the window for which transactions will be returned. Given in ISO 8106 format without a timestamp, e.g., 2013-10-25.
          required: true
          in: path
          schema:
            type: string
        - name: end_date
          description: The end date of the window for which transactions will be returned. Given in ISO 8106 format without a timestamp, e.g., 2013-10-25.
          required: true
          in: path
          schema:
            type: string
        - name: use_case
          description: The use case associated with the member.
          required: false
          in: query
          schema:
            type: array
            items:
              type: string
              enum:
                - MONEY_MOVEMENT
                - PFM
        - name: user_transaction_rule_guid
          description: Return transactions associated with the provided transaction rule GUID.
          required: false
          in: query
          schema:
            type: string
      responses:
        "200":
          content:
            application/vnd.mx.api.v1+json:
              schema:
                "$ref": "#/components/schemas/TransactionsResponseBody"
          description: OK
  /transactions/updated_between/{start_date}/{end_date}:
    get: 
      tags:
        - transactions
      summary: List transactions updated between two dates
      operationId: listTransactionsUpdatedBetweenDates
      description: Use this endpoint to list transactions that were updated between two dates. This endpoint returns paginated results; each page will need to be requested separately to retrieve the data on that page. The `total_pages` field returns an integer representing the total pages to be requested.
      parameters:
        - name: account_guid[]
          description: Return transactions belonging to any account GUID specified in the request URL. For example, `/transactions/by_category_guid/CAT-e04e9d1e-e041-c315-2e50-094143ab3f73/by_date/2016-06-28/2016-07-25?page=2&records_per_page=100&account_guids[]=ACT-00266e24-5980-0213-96aa-649246a418af&account_guids[]=ACT-15f3a4de-cb45-d892-4480-6d05576011a8`.
          in: query 
          required: false
          schema:
            type: string
        - name: page
          description: Results are returned in paginated sets, this is the page of the results you would like to view. Defaults to page 1 if no page is specified.
          required: false
          in: query
          schema:
            type: integer 
        - name: records_per_page
          description: Requests to all list endpoints that return multiple transactions (e.g. list transactions) should specify the desired records_per_page. The supported range is from 10 to 1000. If the records_per_page parameter is not specified or is outside this range, a default of 25 records per page will be used.
          required: false
          in: query
          schema:
            type: integer
        - name: start_date
          description: The start date of the window for which transactions will be returned. Given in ISO 8106 format without a timestamp, e.g., 2013-10-25.
          required: true
          in: path
          schema:
            type: string
        - name: end_date
          description: The end date of the window for which transactions will be returned. Given in ISO 8106 format without a timestamp, e.g., 2013-10-25.
          required: true
          in: path
          schema:
            type: string
        - name: use_case
          description: The use case associated with the member.
          required: false
          in: query
          schema:
            type: array
            items:
              type: string
              enum:
                - MONEY_MOVEMENT
                - PFM
        - name: user_transaction_rule_guid
          description: Return transactions associated with the provided transaction rule GUID.
          required: false
          in: query
          schema:
            type: string
      responses:
        "200":
          content:
            application/vnd.mx.api.v1+json:
              schema:
                "$ref": "#/components/schemas/TransactionsResponseBody"
          description: OK
  /transactions/categorize_and_describe:
    post:
      tags:
        - transactions
      summary: Categorize transactions
      operationId: categorizeTransactions
      description: This endpoint takes an array of transactions and automatically categorizes them based on `description`, `transaction_type`, and `amount`. This endpoint can receive and categorize a maximum of 100 transactions per call.
      requestBody:
        content:
          application/vnd.mx.nexus.v1+json:
            example:
              transactions:
                - amount: 203.76
                  description: "In N Out Burger"
                  external_guid: "FXP123"
                  memo: "Family dinner night"
                  user_guid: "USR-35972b5e-99fb-b320-6412-a9760a0239e4"
            schema:
              type: object
              properties:
                transactions:
                  type: array
                  items:
                    type: object
                    properties:
                      amount:
                        type: number
                        description: The amount of the transaction.
                      description:
                        type: string
                        description: The description of the transaction.
                      extended_transaction_type:
                        type: string
                        description: The transaction type assigned by the partner.
                      external_guid:
                        type: string
                        description: External identifier for the transaction.
                      memo:
                        type: string
                        description: Additional memo or notes for the transaction.
                      user_guid:
                        type: string
                        description: Unique identifier for the user initiating the transaction.
                    required:
                      - amount
                      - description
                      - user_guid
      responses:
        "200":
          content:
            application/vnd.mx.api.v1+json:
              schema:
                "$ref": "#/components/schemas/TransactionResponseBody"
          description: OK
  /user:
    get: 
      tags:
        - user
      summary: Read user
      operationId: readUser
      description: This endpoint returns information regarding the authenticated user.
      responses:
        "200":
          content:
            application/vnd.mx.api.v1+json:
              schema:
                "$ref": "#/components/schemas/UserResponseBody"
          description: OK
  /members/{member_guid}/account_numbers:
    get:
      tags:
        - verification
      summary: Read account numbers
      operationId: readAccountNumbers
      description: Use this endpoint to check whether account number data is available for a specific member. This includes the transit number and institution number for Canadian institutions.    For compatibility purposes, a Canadian transit number may sometimes appear in the `routing_number` field. However, all new integrations should rely on the `transit_number` field for this information.
      parameters:
        - name: member_guid
          description: The unique identifier for the member. Defined by MX. 
          required: true
          in: path
          schema:
            type: string
      responses:
        "200":
          content:
            application/vnd.mx.api.v1+json:
              schema:
                "$ref": "#/components/schemas/AccountNumbersResponseBody"
          description: OK
  /accounts/{account_guid}/account_number:
    get:
      tags:
        - verification
      summary: Read account numbers by account_guid
      operationId: readAccountNumbersByAccount
      description: Use this endpoint to check whether account number data is available for a specific account. This includes the transit number and institution number for Canadian institutions.    For compatibility purposes, a Canadian transit number may sometimes appear in the `routing_number` field. However, all new integrations should rely on the `transit_number` field for this information.
      parameters:
        - name: account_guid
          description: The unique identifier for the account. Defined by MX. 
          required: true
          in: path
          schema:
            type: string
      responses:
        "200":
          content:
            application/vnd.mx.api.v1+json:
              schema:
                "$ref": "#/components/schemas/AccountNumbersResponseBody"
          description: OK
  /members/{member_guid}/verify:
    post:
      tags:
        - verification
      summary: Verify member
      operationId: verifyMember
      description: This endpoint gathers information about account and routing numbers. Partners may optionally choose to transaction data in this request, potentially avoiding a separate aggregate member request.    The verification workflow is similar to standard aggregation. Start the verification, poll the member, answer MFA if necessary by using the list member MFA challenges endpoint and the update member endpoint, poll the status again, then read the member's `account_numbers`.    Before making a request to this endpoint, partners must make sure verification is enabled for the member's `institution`. Specifically, the institution's `supports_account_verification` field must be true.   If the `institution` does not support verification, a `400 Bad Request` error will be returned with the message, `Member's institution does not support instant account verification`.    If a request to this endpoint fails with a status of `403 Forbidden` but the member's `institution` nevertheless shows that verification is enabled, please contact support.
      parameters:
        - name: member_guid
          description: The unique identifier for the account. Defined by MX. 
          required: true
          in: path
          schema:
            type: string
      requestBody:
        required: false 
        content:
          application/vnd.mx.nexus.v1+json:
            schema:
              type: object
              properties:
                include_transactions:
                  type: boolean
                  description: When set to true, the verification will gather transaction data along with account number data. Defaults to false.
      responses:
        "200":
          content:
            application/vnd.mx.api.v1+json:
              schema:
                "$ref": "#/components/schemas/MemberResponseBody"
          description: OK
components:
  securitySchemes:
    sessionToken:
      description: |
        ### MX Session Token 
        - Request an API token using the read API token endpoint in the MX SSO API.
        - Exchange an API token for a session token. 
          - A session token is obtained by sending a POST request to /sessions
          - The session token will be used in each request made for the user. It should be passed in an `MD-SESSION-TOKEN` HTTP header as shown below.
          - This session token is valid for 30 minutes from the time it was created. The 30 minute expiration counter is refreshed with each call.
          - If you send a request with an expired session token you'll receive an error code of `4011`.
        
        ```
        curl -i https://int-data.moneydesktop.com/accounts \
        -H 'MD-SESSION-TOKEN: CWforZl1Vn2vC_v6H4rnQRT1DoWpDouJAV-_5TBmiQRAtA8rsOG_BoajTiOSsL0A3bd-bmHXlA-eQzc9ywItKg' \
        -H 'Content-Type: application/vnd.mx.nexus.v1+json' \
        -H 'Accept: application/vnd.mx.nexus.v1+json'
        ```

        In documentation code examples, replace `<API_KEY_VALUE>` with the session token.
      type: apiKey
      name: MD-SESSION-TOKEN
      in: header
  schemas:
    AccountCreateRequestBody:
      properties:
        account:
          "$ref": "#/components/schemas/AccountCreateRequest"
      type: object
    AccountCreateRequest:
      properties:
        account_type_name:
          description: The name of the account type. Either `account_type_name` or `account_type` is required but not both. 
          example: PROPERTY
          type: string
        account_type:
          description: Account type of the account. Either `account_type` or `account_type_name` is required but not both.
          example: PROPERTY
          type: string
        account_subtype_name:
          description: The name of the account subtype.
          example: "PERSONAL"
          type: string
        available_balance:
          description: Available balance of the account.
          example: 1000.0
          type: number
        apr:
          description: Annual Percentage Rate (e.g. 2.99% is passed as 2.99). Max length is 10,6. See [Number Limits](/api-reference/nexus/overview/#number-limits).
          example: 1.0
          type: number
        apy:
          description: Annual Percentage Yield (e.g. 2.99% is passed as 2.99). Max length is 10,6. See [Number Limits](/api-reference/nexus/overview/#number-limits).
          example: 1.0
          type: number
        balance:
          description: The available amount in the account.
          example: 1000.0
          type: number
        cash_surrender_value:
          description: The sum of money paid to the policyholder or annuity holder in the event the policy is voluntarily terminated before it matures, or the insured event occurs. Max length is 14,2. See [Number Limits](/api-reference/nexus/overview/#number-limits).
          example: 1000.0
          type: number
        credit_limit:
          description: The credit limit of the account.
          example: 100.0
          type: number
        currency_code:
          description: The ISO 4217 three-character currency code.
          example: USD
          type: string
        death_benefit:
          description: Amount paid to the beneficiary of the account upon death of the account owner. Max length is 14,2. See [Number Limits](/api-reference/nexus/overview/#number-limits).
          example: 1000
          type: integer
        interest_rate:
          description: Interest rate (e.g. 2.99% is passed as 2.99). Max length is 10,6. See [Number Limits](/api-reference/nexus/overview/#number-limits).
          example: 1.0
          type: number
        is_closed:
          description: Marks the account as closed.
          example: false
          type: boolean
        is_hidden:
          description: Determines if the account's data is excluded.
          example: false
          type: boolean
        loan_amount:
          description: Amount of the loan. Max length is 14,2. See [Number Limits](/api-reference/nexus/overview/#number-limits).
          example: 1000.0
          type: number
        metadata:
          description: Additional information a partner can store on the account.
          example: some metadata
          type: string
        name:
          description: The name for the account.
          example: Checking
          type: string
        nickname:
          description: The Nickname is an alternate name for the account. This value is visible to the user and must be human-readable.
          example: Swiss Account
          type: string
        original_balance:
          description: The original balance of the account.
          example: 10.0
          type: number
        property_type:
          description: Subtype if the account type is PROPERTY. This field should be ignored unless the `account_type` is set to PROPERTY.
          example: VEHICLE
          type: string
        property_type_name:
          description: Subtype name if the account type is PROPERTY. This field should be ignored unless the `account_type` is set to PROPERTY.
          example: VEHICLE
          type: string
        skip_webhook:
          example: true
          type: boolean
      required:
        - account_type_name
        - account_type
        - name
      type: object
    AccountUpdateRequestBody:
      properties:
        account:
          "$ref": "#/components/schemas/AccountUpdateRequest"
    AccountUpdateRequest:
      properties:
        account_type_name:
          description: The name of the account type. Either `account_type_name` or `account_type` is required but not both. 
          example: PROPERTY
          type: string
        account_type:
          description: Account type of the account. Either `account_type` or `account_type_name` is required but not both.
          example: PROPERTY
          type: string
        account_subtype_name:
          description: The name of the account subtype.
          example: "PERSONAL"
          type: string
        available_balance:
          description: Available balance of the account.
          example: 1000.0
          type: number
        apr:
          description: Annual Percentage Rate (e.g. 2.99% is passed as 2.99). Max length is 10,6. See [Number Limits](/api-reference/nexus/overview/#number-limits).
          example: 1.0
          type: number
        apy:
          description: Annual Percentage Yield (e.g. 2.99% is passed as 2.99). Max length is 10,6. See [Number Limits](/api-reference/nexus/overview/#number-limits).
          example: 1.0
          type: number
        balance:
          description: The available amount in the account.
          example: 1000.0
          type: number
        cash_surrender_value:
          description: The sum of money paid to the policyholder or annuity holder in the event the policy is voluntarily terminated before it matures, or the insured event occurs. Max length is 14,2. See [Number Limits](/api-reference/nexus/overview/#number-limits).
          example: 1000.0
          type: number
        credit_limit:
          description: The credit limit of the account.
          example: 100.0
          type: number
        currency_code:
          description: The ISO 4217 three-character currency code.
          example: USD
          type: string
        death_benefit:
          description: Amount paid to the beneficiary of the account upon death of the account owner. Max length is 14,2. See [Number Limits](/api-reference/nexus/overview/#number-limits).
          example: 1000
          type: integer
        interest_rate:
          description: Interest rate (e.g. 2.99% is passed as 2.99). Max length is 10,6. See [Number Limits](/api-reference/nexus/overview/#number-limits).
          example: 1.0
          type: number
        is_closed:
          description: Marks the account as closed.
          example: false
          type: boolean
        is_hidden:
          description: Determines if the account's data is excluded.
          example: false
          type: boolean
        loan_amount:
          description: Amount of the loan. Max length is 14,2. See [Number Limits](/api-reference/nexus/overview/#number-limits).
          example: 1000.0
          type: number
        metadata:
          description: Additional information a partner can store on the account.
          example: some metadata
          type: string
        name:
          description: The name for the account.
          example: Checking
          type: string
        nickname:
          description: The Nickname is an alternate name for the account. This value is visible to the user and must be human-readable.
          example: Swiss Account
          type: string
        original_balance:
          description: The original balance of the account.
          example: 10.0
          type: number
        property_type:
          description: Subtype if the account type is PROPERTY. This field should be ignored unless the `account_type` is set to PROPERTY.
          example: VEHICLE
          type: string
        property_type_name:
          description: Subtype name if the account type is PROPERTY. This field should be ignored unless the `account_type` is set to PROPERTY.
          example: VEHICLE
          type: string
        skip_webhook:
          example: true
          type: boolean
      type: object
    AccountResponse:
      properties:
        account_number:
          type: string
          example: "4921710685"
          description: The account number, as provided by our data feed.
        account_number_set_by:
          type: integer
          example: 1
          description: The source that set the data (1 = FEED, 2 = USER, 3 = SYSTEM). See Account Set By for more information.
        account_number_set_by_name:
          type: string
          example: "FEED"
          description: The source that set the data (FEED, USER, or SYSTEM). See Account Set By for more information.
        account_subtype: 
          type: integer
          example: null
          description: The integer value of the account subtype.
        account_subtype_name: 
          type: string
          example: null
          description: The account subtype  (for example, PLAN_401_K, MONEY_MARKET, or HOME_EQUITY).
        account_subtype_set_by: 
          type: integer
          example: null
          description: The source that set the data (1 = FEED, 2 = USER, 3 = SYSTEM). See Account Set By for more information.
        account_subtype_set_by_name: 
          type: string
          example: null
          description: The source that set the data (FEED, USER, or SYSTEM). See Account Set By for more information.
        account_type:
          type: integer
          example: 1
          description: The integer value of the account type.
        account_type_name:
          type: string
          example: "CHECKING"
          description: The account type (for example, CHECKING, SAVINGS, CREDIT_CARD).
        account_type_set_by:
          type: integer
          example: 1
          description: The source that set the data (1 = FEED, 2 = USER, 3 = SYSTEM). See Account Set By for more information.
        account_type_set_by_name:
          type: string
          example: "FEED"
          description: The source that set the data (FEED, USER, or SYSTEM). See Account Set By for more information.
        apr:
          type: number
          example: null
        apr_set_by:
          type: integer
          example: null
          description: The source that set the data (1 = FEED, 2 = USER, 3 = SYSTEM). See Account Set By for more information.
        apr_set_by_name:
          type: string
          example: null
          description: The source that set the data (FEED, USER, or SYSTEM). See Account Set By for more information.
        apy:
          type: number
          example: null
        apy_set_by:
          type: integer
          example: null
          description: The source that set the data (1 = FEED, 2 = USER, 3 = SYSTEM). See Account Set By for more information.
        apy_set_by_name:
          type: string
          example: null
          description: The source that set the data (FEED, USER, or SYSTEM). See Account Set By for more information.
        available_balance:
          type: integer
          example: 500000
          description: The balance that is available for use in asset accounts like checking and savings. `PENDING` transactions are typically taken into account with the available balance, but this may not always be the case. `available_balance` will usually be a positive value for all account types, determined in the same way as the `balance` field.
        available_balance_set_by:
          type: integer
          example: 1
          description: The source that set the data (1 = FEED, 2 = USER, 3 = SYSTEM). See Account Set By for more information.
        available_balance_set_by_name:
          type: string
          example: "FEED"
          description: The source that set the data (FEED, USER, or SYSTEM). See Account Set By for more information.
        available_credit:
          type: number
          example: null
          description: "The amount of credit available for the account. Max length is 14,2. See [Number Limits](/api-reference/nexus/overview/#numbers-limits)."
        available_credit_set_by:
          description: "The source that set the data (1 = FEED, 2 = USER, 3 = SYSTEM). See Account Set By for more information."
          type: integer
          example: null
        available_credit_set_by_name:
          description: "The source that set the data (FEED, USER, or SYSTEM). See Account Set By for more information."
          type: string
          example: null
        balance:
          type: integer
          example: 500000
          description: The current balance of the account. `PENDING` transactions are typically not taken into account with the current balance, but this may not always be the case. This is the value used for the account balance displayed in MX UIs. The balance will usually be a positive value for all account types. Asset-type accounts (`CHECKING`, `SAVINGS`, `INVESTMENT`) may have a negative balance if they are in overdraft. Debt-type accounts (`CREDIT_CARD`, `LOAN`, `LINE_OF_CREDIT`, `MORTGAGE`) may have a negative balance if they are overpaid.
        balance_set_by:
          description: "The source that set the data (1 = FEED, 2 = USER, 3 = SYSTEM). See Account Set By for more information."
          type: integer
          example: 1
        balance_set_by_name:
          description: "The source that set the data (FEED, USER, or SYSTEM). See Account Set By for more information."
          type: string
          example: "FEED"
        calculated_apr:
          type: number
          example: null
        cash_balance:
          type: number
          example: null
          description: "The total cash balance for brokerage and investment accounts. Max length is 14,2. See [Number Limits](/api-reference/nexus/overview/#numbers-limits)."
        cash_balance_set_by:
          description: "The source that set the data (1 = FEED, 2 = USER, 3 = SYSTEM). See Account Set By for more information."
          type: integer
          example: null
        cash_balance_set_by_name:
          description: "The source that set the data (FEED, USER, or SYSTEM). See Account Set By for more information."
          type: string
          example: null
        cash_surrender_value:
          type: number
          example: null
          description: "The cash surrender value for the account. Applies primarily to insurance account types. Max length is 14,2. See [Number Limits](/api-reference/nexus/overview/#numbers-limits)."
        cash_surrender_value_set_by:
          description: "The source that set the data (1 = FEED, 2 = USER, 3 = SYSTEM). See Account Set By for more information."
          type: integer
          example: null
        cash_surrender_value_set_by_name:
          description: "The source that set the data (FEED, USER, or SYSTEM). See Account Set By for more information."
          type: string
          example: null
        created_at:
          type: string
          example: "2020-09-21T19:43:44+00:00"
          description: Date and time the account was created, represented in ISO 8601 format with timestamp (for example, 2015-04-13T12:01:23-00:00).
        credit_limit:
          type: number
          example: null
          description: The credit limit of the account.
        credit_limit_set_by:
          description: "The source that set the data (1 = FEED, 2 = USER, 3 = SYSTEM). See Account Set By for more information."
          type: integer
          example: null
        credit_limit_set_by_name:
          description: "The source that set the data (FEED, USER, or SYSTEM). See Account Set By for more information."
          type: string
          example: null
        currency_code:
          type: string
          example: null
          description: The currency code associated with the account (for example, USD, EUR).
        currency_code_set_by:
          description: "The source that set the data (1 = FEED, 2 = USER, 3 = SYSTEM). See Account Set By for more information."
          type: integer
          example: null
        currency_code_set_by_name:
          description: "The source that set the data (FEED, USER, or SYSTEM). See Account Set By for more information."
          type: string
          example: null
        day_payment_is_due:
          type: integer
          example: 12
          description: "The day of the month the payment is due."
        day_payment_is_due_set_by:
          description: "The source that set the data (1 = FEED, 2 = USER, 3 = SYSTEM). See Account Set By for more information."
          type: integer
          example: 1
        day_payment_is_due_set_by_name:
          description: "The source that set the data (FEED, USER, or SYSTEM). See Account Set By for more information."
          type: string
          example: "FEED"
        death_benefit:
          type: integer
          example: null
          description: "The death benefit amount for the account. Applies primarily to insurance account types."
        death_benefit_set_by:
          description: "The source that set the data (1 = FEED, 2 = USER, 3 = SYSTEM). See Account Set By for more information."
          type: integer
          example: null
        death_benefit_set_by_name:
          description: "The source that set the data (FEED, USER, or SYSTEM). See Account Set By for more information."
          type: string
          example: null
        external_guid:
          type: string
          example: "23445745"
        feed_account_number:
          type: string
          example: "4921710685"
          description: The account number, as provided by our data feed.
        feed_account_subtype:
          type: integer
          example: null
        feed_account_subtype_name:
          type: string
          example: null
        feed_account_type:
          type: integer
          example: 1
        feed_account_type_name:
          type: string
          example: "CHECKING"
        feed_apr:
          type: number
          example: null
        feed_apy:
          type: number
          example: null
        feed_available_balance:
          type: integer
          example: 500000
        feed_balance:
          type: integer
          example: 500000
        feed_cash_balance:
          type: number
          example: null
        feed_cash_surrender_value:
          type: number
          example: null
        feed_credit_limit:
          type: number
          example: null
        feed_currency_code:
          type: string
          example: null
        feed_day_payment_is_due:
          type: integer
          example: 12
        feed_death_benefit:
          type: integer
          example: null
        feed_holdings_value:
          type: number
          example: null
        feed_interest_rate:
          type: number
          example: null
        feed_is_closed:
          type: boolean
          example: null
        feed_last_payment:
          type: number
          example: null
        feed_last_payment_at:
          type: string
          example: null
        feed_loan_amount:
          type: number
          example: null
        feed_matures_on:
          type: string
          example: null
        feed_minimum_balance:
          type: number
          example: null
        feed_minimum_payment:
          type: number
          example: null
        feed_name:
          type: string
          example: "Checking"
          description: The name of the account, as provided by our data feed.
        feed_nickname:
          type: string
          example: null
        feed_original_balance:
          type: number
          example: null
          description: The original balance, as provided by our data feed. Max length is 14,2. See [Number Limits](/api-reference/nexus/overview/#numbers-limits).
        feed_payment_due_at:
          type: string
          example: "2021-05-12T16:01:00+00:00"
          description: Date and time the payment is due at, as provided by our data feed. Represented in ISO 8601 format with timestamp (e.g. 2015-04-13T12:01:23-00:00).
        feed_payoff_balance:
          type: number
          example: null
          description: The payoff balance, as provided by our data feed. Max length is 14,2. See [Number Limits](/api-reference/nexus/overview/#numbers-limits).
        feed_routing_number:
          type: string
          example: null
          description: The routing number, as provided by our data feed. See routing_number for more information.
        feed_started_on:
          type: string
          example: null
          description: The started on date, as provided by our data feed. Represented in ISO 8601 format (e.g. 2011-03-28).
        feed_statement_balance:
          type: number
          example: null
          description: The account statement balance, as provided by our data feed. Max length is 14,2. See [Number Limits](/api-reference/nexus/overview/#numbers-limits).
        feed_total_account_value:
          type: number
          example: null
          description: The sum of the long and short positions, the sweep account and/or cash balance, and any margin debt associated with a particular account. This amount includes the market value of all positions held in the account and is reduced by any debit balance and the amount of short options positions that are "in the money". This may sum to a negative value, and it does not represent an account balance. Max length is 14,2. See [Number Limits](/api-reference/nexus/overview/#numbers-limits).
        guid:
          type: string
          example: "ACT-8e6f92c8-1491-42ce-8bf6-c309e9531530"
          description: Unique identifier for the account. Defined by MX.
        holdings_value:
          type: number
          example: null
          description: The value of holdings with this account.
        holdings_value_set_by:
          description: "The source that set the data (1 = FEED, 2 = USER, 3 = SYSTEM). See Account Set By for more information."
          type: integer
          example: null
        holdings_value_set_by_name:
          description: "The source that set the data (FEED, USER, or SYSTEM). See Account Set By for more information."
          type: string
          example: null
        institution_guid:
          type: string
          example: "INS-1572a04c-912b-59bf-5841-332c7dfafaef"
          description: Unique identifier for the institution the account is attached to. Defined by MX.
        insured_name:
          type: string
          example: null
          description: The name of the insured individual.
        interest_rate:
          type: number
          example: null
          description: Interest rate (e.g. 2.99% is passed as 2.99). Max length is 10,6. See [Number Limits](/api-reference/nexus/overview/#numbers-limits).
        interest_rate_set_by:
          description: "The source that set the data (1 = FEED, 2 = USER, 3 = SYSTEM). See Account Set By for more information."
          type: integer
          example: null
        interest_rate_set_by_name:
          description: "The source that set the data (FEED, USER, or SYSTEM). See Account Set By for more information."
          type: string
          example: null
        is_business:
          type: boolean
          example: false
        is_closed:
          type: boolean
          example: false
          description: If an account is closed, this field will be true. Otherwise, this field will be false.
        is_closed_set_by:
          description: "The source that set the data (1 = FEED, 2 = USER, 3 = SYSTEM). See Account Set By for more information."
          type: integer
          example: 3
        is_closed_set_by_name:
          description: "The source that set the data (FEED, USER, or SYSTEM). See Account Set By for more information."
          type: string
          example: "SYSTEM"
        is_hidden:
          type: boolean
          example: false
          description: If an account is hidden, this field will be true. Otherwise, this field will be false. All linked transactions will be hidden as well.
        is_manual:
          type: boolean
          example: false
          description: If an account was manually created, this field will be true. Otherwise, this field will be false.
        last_payment:
          type: number
          example: null
          description: Amount of the account's last payment. Max length is 10,2. See [Number Limits](/api-reference/nexus/overview/#numbers-limits).
        last_payment_at:
          type: string
          example: null
          description: Date and time the account's last payment was applied, represented in ISO 8601 format with timestamp (e.g. 2015-04-13T12:01:23-00:00).
        last_payment_at_set_by:
          description: "The source that set the data (1 = FEED, 2 = USER, 3 = SYSTEM). See Account Set By for more information."
          type: integer
          example: null
        last_payment_at_set_by_name:
          description: "The source that set the data (FEED, USER, or SYSTEM). See Account Set By for more information."
          type: string
          example: null
        last_payment_set_by:
          description: "The source that set the data (1 = FEED, 2 = USER, 3 = SYSTEM). See Account Set By for more information."
          type: integer
          example: null
        last_payment_set_by_name:
          description: "The source that set the data (FEED, USER, or SYSTEM). See Account Set By for more information."
          type: string
          example: null
        loan_amount:
          type: number
          example: null
          description: Amount of the loan. Max length is 14,2. See [Number Limits](/api-reference/nexus/overview/#numbers-limits).
        loan_amount_set_by:
          description: "The source that set the data (1 = FEED, 2 = USER, 3 = SYSTEM). See Account Set By for more information."
          type: integer
          example: null
        loan_amount_set_by_name:
          description: "The source that set the data (FEED, USER, or SYSTEM). See Account Set By for more information."
          type: string
          example: null
        matures_on:
          type: string
          example: null
          description: Maturity date. Represented in ISO 8601 format (for example, 2011-03-28).
        matures_on_set_by:
          description: "The source that set the data (1 = FEED, 2 = USER, 3 = SYSTEM). See Account Set By for more information."
          type: integer
          example: null
        matures_on_set_by_name:
          description: "The source that set the data (FEED, USER, or SYSTEM). See Account Set By for more information."
          type: string
          example: null
        member_guid:
          description: "Unique identifier for the member the account is attached to. Defined by MX."
          type: string
          example: "MBR-84ca0882-ad6c-4f10-817f-c8c0de7424fa"
        member_is_managed_by_user:
          description: "If the member the account belongs to is managed by the user, this field will be true. Otherwise, the member is managed by the MX partner and this field will be false."
          type: boolean
          example: true
        metadata:
          description: "Additional information a partner can store on the account."
          type: string
          example: null
        minimum_balance:
          description: "The minimum balance allowed. Max length is 14,2. See [Number Limits](/api-reference/nexus/overview/#numbers-limits)."
          type: number
          example: null
        minimum_balance_set_by:
          description: "The source that set the data (1 = FEED, 2 = USER, 3 = SYSTEM). See Account Set By for more information."
          type: integer
          example: null
        minimum_balance_set_by_name:
          description: "The source that set the data (FEED, USER, or SYSTEM). See Account Set By for more information."
          type: string
          example: null
        minimum_payment:
          type: number
          example: null
          description: Minimum payment amount. Max length is 10,2. See [Number Limits](/api-reference/nexus/overview/#numbers-limits).
        minimum_payment_set_by:
          description: "The source that set the data (1 = FEED, 2 = USER, 3 = SYSTEM). See Account Set By for more information."
          type: integer
          example: null
        minimum_payment_set_by_name:
          description: "The source that set the data (FEED, USER, or SYSTEM). See Account Set By for more information."
          type: string
          example: null
        name:
          type: string
          example: "Checking"
          description: The name of the account.
        name_set_by:
          description: "The source that set the data (1 = FEED, 2 = USER, 3 = SYSTEM). See Account Set By for more information."
          type: integer
          example: 1
        name_set_by_name:
          description: "The source that set the data (FEED, USER, or SYSTEM). See Account Set By for more information."
          type: string
          example: "FEED"
        nickname:
          type: string
          example: null
          description: The nickname is an alternate name for the account. This value is visible to the user and must be human-readable.
        nickname_set_by:
          description: "The source that set the data (1 = FEED, 2 = USER, 3 = SYSTEM). See Account Set By for more information."
          type: integer
          example: null
        nickname_set_by_name:
          description: "The source that set the data (FEED, USER, or SYSTEM). See Account Set By for more information."
          type: string
          example: null
        original_balance:
          type: number
          example: null
          description: The original balance of the account. Max length is 14,2. See [Number Limits](/api-reference/nexus/overview/#numbers-limits).
        original_balance_set_by:
          description: "The source that set the data (1 = FEED, 2 = USER, 3 = SYSTEM). See Account Set By for more information."
          type: integer
          example: null
        original_balance_set_by_name:
          description: "The source that set the data (FEED, USER, or SYSTEM). See Account Set By for more information."
          type: string
          example: null
        pay_out_amount:
          description: "The payout amount for insurance accounts."
          type: string
          example: null
        payment_due_at:
          type: string
          example: "2021-05-12T16:01:00+00:00"
          description: Date and time the payment is due. Represented in ISO 8601 format with timestamp (e.g. 2015-04-13T12:01:23-00:00).
        payment_due_at_set_by:
          description: "The source that set the data (1 = FEED, 2 = USER, 3 = SYSTEM). See Account Set By for more information."
          type: integer
          example: 1
        payment_due_at_set_by_name:
          description: "The source that set the data (FEED, USER, or SYSTEM). See Account Set By for more information."
          type: string
          example: "FEED"
        payoff_balance:
          type: number
          example: null
          description: The payoff balance of the account. Max length is 14,2. See [Number Limits](/api-reference/nexus/overview/#numbers-limits).
        payoff_balance_set_by:
          description: "The source that set the data (1 = FEED, 2 = USER, 3 = SYSTEM). See Account Set By for more information."
          type: integer
          example: null
        payoff_balance_set_by_name:
          description: "The source that set the data (FEED, USER, or SYSTEM). See Account Set By for more information."
          type: string
          example: null
        premium_amount:
          description: "The premium amount for insurance accounts."
          type: string
          example: null
        property_type:
          description: "The integer value of the property type. See Property Types for more information."
          type: integer
          example: null
        property_type_name:
          description: "The property type name (for example, REAL_ESTATE, VEHICLE). See Property Types for more information."
          type: string
          example: null
        revision:
          description: "The revision number of this account record."
          type: integer
          example: 648
        routing_number:
          description: "The routing number for the account."
          type: string
          example: null
        started_on:
          type: string
          example: null
          description: The started on date. Represented in ISO 8601 format (for example, 2011-03-28).
        started_on_set_by:
          description: "The source that set the data (1 = FEED, 2 = USER, 3 = SYSTEM). See Account Set By for more information."
          type: integer
          example: null
        started_on_set_by_name:
          description: "The source that set the data (FEED, USER, or SYSTEM). See Account Set By for more information."
          type: string
          example: null
        statement_balance:
          type: number
          example: null
          description: The account statement balance. Max length is 14,2. See [Number Limits](/api-reference/nexus/overview/#numbers-limits).
        statement_balance_set_by:
          description: "The source that set the data (1 = FEED, 2 = USER, 3 = SYSTEM). See Account Set By for more information."
          type: integer
          example: null
        statement_balance_set_by_name:
          description: "The source that set the data (FEED, USER, or SYSTEM). See Account Set By for more information."
          type: string
          example: null
        total_account_value:
          type: number
          example: null
          description: The sum of the long and short positions, the sweep account and/or cash balance, and any margin debt associated with a particular account. This amount includes the market value of all positions held in the account and is reduced by any debit balance and the amount of short options positions that are "in the money". This may sum to a negative value, and it does not represent an account balance. Max length is 14,2. See [Number Limits](/api-reference/nexus/overview/#numbers-limits).
        total_account_value_set_by:
          description: "The source that set the data (1 = FEED, 2 = USER, 3 = SYSTEM). See Account Set By for more information."
          type: integer
          example: null
        total_account_value_set_by_name:
          description: "The source that set the data (FEED, USER, or SYSTEM). See Account Set By for more information."
          type: string
          example: null
        updated_at:
          type: string
          example: "2022-06-14T21:17:09+00:00"
          description: Date and time the account was last updated, represented in ISO 8601 format with timestamp (e.g. 2015-04-13T12:01:23-00:00).
        user_guid:
          description: "Unique identifier for the user the account is attached to. Defined by MX."
          type: string
          example: "USR-11141024-90b3-1bce-cac9-c06ced52ab4c"
      type: object
    AccountResponseBody:
      properties:
        account:
          "$ref": "#/components/schemas/AccountResponse"
      type: object   
    AccountsResponseBody:
      properties:
        accounts:
          items:
            "$ref": "#/components/schemas/AccountResponse"
          type: array
        pagination:
          "$ref": "#/components/schemas/PaginationResponse" 
      type: object   
    TransactionResponse:
      properties:
        account_guid:
          description: "Unique identifier for the account. Defined by MX."
          type: string
          example: "ACT-8e6f92c8-1491-42ce-8bf6-c309e9531530"
        amount:
          description: "The transaction amount. This will always be a positive value. The Transaction Type determines how the transaction affects the account."
          type: number
          example: 33.88
        amount_set_by:
          description: "The source that set the data ( 1 = FEED, 2 = USER, 3 = SYSTEM ). See Transaction Set By for more information."
          type: integer
          example: 1
        amount_set_by_name:
          description: "The source that set the data ( FEED, USER, or SYSTEM ). See Transaction Set By for more information."
          type: string
          example: "FEED"
        category_guid:
          description: "Unique identifier for the transaction category. Defined by MX."
          type: string
          example: "CAT-97a2b899-5a32-4196-b87c-a8e65d8a9849"
        category_name:
          description: "The name of the transaction category."
          type: string
          example: "Office Supplies"
        category_set_by:
          description: "The source that set the data ( 1 = FEED, 2 = USER, 3 = SYSTEM ). See Transaction Set By for more information."
          type: integer
          example: 3
        category_set_by_name:
          description: "The source that set the data ( FEED, USER, or SYSTEM ). See Transaction Set By for more information."
          type: string
          example: "SYSTEM"
        check_number:
          description: "The check number for the transaction. (Deprecated)."
          type: integer
          example: null
        check_number_set_by:
          description: "The source that set the data ( 1 = FEED, 2 = USER, 3 = SYSTEM ). See Transaction Set By for more information."
          type: integer
          example: null
        check_number_set_by_name:
          description: "The source that set the data ( FEED, USER, or SYSTEM ). See Transaction Set By for more information."
          type: string
          example: null
        check_number_string:
          description: "The check number for the transaction."
          type: string
          example: null
        created_at:
          description: "Date and time the transaction was created, represented in ISO 8601 format with timestamp (e.g. 2015-04-13T12:01:23-00:00)."
          type: string
          example: "2022-06-14T21:17:10+00:00"
        currency_code:
          description: "The ISO 4217 three-character currency code (e.g. USD)."
          type: string
          example: "USD"
        currency_code_set_by:
          description: "The source that set the data ( 1 = FEED, 2 = USER, 3 = SYSTEM ). See Transaction Set By for more information."
          type: integer
          example: 1
        currency_code_set_by_name:
          description: "The source that set the data ( FEED, USER, or SYSTEM ). See Transaction Set By for more information."
          type: string
          example: "FEED"
        date:
          description: "Date the transaction was created, represented in ISO 8601 format (e.g. 2011-03-28)."
          type: string
          example: "2022-06-14"
        date_set_by:
          description: "The source that set the data ( 1 = FEED, 2 = USER, 3 = SYSTEM ). See Transaction Set By for more information."
          type: integer
          example: 1
        date_set_by_name:
          description: "The source that set the data ( FEED, USER, or SYSTEM ). See Transaction Set By for more information."
          type: string
          example: "FEED"
        description:
          description: "A human-readable description of the transaction."
          type: string
          example: "Office Depot"
        description_set_by:
          description: "The source that set the data ( 1 = FEED, 2 = USER, 3 = SYSTEM ). See Transaction Set By for more information."
          type: integer
          example: 3
        description_set_by_name:
          description: "The source that set the data ( FEED, USER, or SYSTEM ). See Transaction Set By for more information."
          type: string
          example: "SYSTEM"
        extended_transaction_type:
          description: "Additional transaction type classification for specialized transaction categories."
          type: string
          example: ""
        external_guid:
          description: "Partner created identifier for the transaction."
          type: string
          example: "transfer-0bc9936d-6761-4aed-af7f-a94e7a0f7e7e"
        feed_amount:
          description: "Transaction amount, as provided by our data feed. See amount for more information."
          type: number
          example: 33.88
        feed_check_number:
          description: "Check number, as provided by our data feed. See check_number for more information."
          type: integer
          example: null
        feed_check_number_string:
          description: "Check number, as provided by our data feed. See check_number_string for more information."
          type: string
          example: null
        feed_currency_code:
          description: "Currency code, as provided by our data feed. See currency_code for more information."
          type: string
          example: "USD"
        feed_description:
          description: "Description of the transaction, as provided by our data feed. See description for more information."
          type: string
          example: "Office Depot"
        feed_is_international:
          description: "Whether the transaction is international, as provided by our data feed. See is_international for more information."
          type: boolean
          example: null
        feed_latitude:
          description: "Latitude for the transaction, as provided by our data feed. See latitude for more information."
          type: number
          example: null
        feed_longitude:
          description: "Longitude for the transaction, as provided by our data feed. See longitude for more information."
          type: number
          example: null
        feed_memo:
          description: "The transaction memo, as provided by our data feed. See memo for more information."
          type: string
          example: null
        feed_posted_at:
          description: "Date and time the transaction was posted, as provided by our data feed. See posted_at for more information."
          type: string
          example: "2022-06-15T12:00:00+00:00"
        feed_posted_on:
          description: "Date the transaction was posted, as provided by our data feed. See posted_on for more information."
          type: string
          example: "2022-06-15"
        feed_status:
          description: "Status of the transaction, as provided by our data feed. See status for more information."
          type: integer
          example: 1
        feed_transacted_at:
          description: "Date and time the transaction took place, as provided by our data feed. See transacted_at for more information."
          type: string
          example: "2022-06-14T12:00:00+00:00"
        feed_transacted_on:
          description: "Date the transaction took place, as provided by our data feed."
          type: string
          example: "2022-06-14"
        feed_transaction_type:
          description: "The type of transaction, as provided by our data feed. See transaction_type for more information."
          type: integer
          example: 2
        feed_transaction_type_name:
          description: "The type of transaction, as provided by our data feed. See transaction_type_name for more information."
          type: string
          example: "DEBIT"
        guid:
          description: "Unique identifier for the transaction. Defined by MX."
          type: string
          example: "TRN-24af807c-66b5-416c-a84e-d18f1003809e"
        has_been_split:
          description: "If the transaction is a split, this field will be true. Otherwise, this field will be false."
          type: boolean
          example: false
        has_been_viewed:
          description: "If the transaction has been viewed, this field will be true. Otherwise, this field will be false."
          type: boolean
          example: false
        is_bill_pay:
          description: "If the transaction is a bill pay, this field will be true. Otherwise, this field will be false."
          type: boolean
          example: false
        is_business:
          description: "If the transaction is categorized as a business expense, this field will be true. Otherwise, this field will be false."
          type: boolean
          example: false
        is_direct_deposit:
          description: "If the transaction is a direct deposit, this field will be true. Otherwise, this field will be false."
          type: boolean
          example: false
        is_expense:
          description: "If the transaction is an expense, this field will be true. Otherwise, this field will be false."
          type: boolean
          example: true
        is_fee:
          description: "If the transaction is a fee, this field will be true. Otherwise, this field will be false."
          type: boolean
          example: false
        is_flagged:
          description: "If the transaction has been flagged, this field will be true. Otherwise, this field will be false."
          type: boolean
          example: false
        is_hidden:
          description: "If the transaction is hidden, this field will be true. Otherwise, this field will be false."
          type: boolean
          example: false
        is_income:
          description: "If the transaction is income, this field will be true. Otherwise, this field will be false."
          type: boolean
          example: false
        is_international:
          description: "If the transaction is international, as defined by the data provider, this field will be true. If the data provider determines it is not international, then it will be false. It will be null if the data provider does not provide this information."
          type: boolean
          example: null
        is_international_set_by:
          description: "The source that set the data ( 1 = FEED, 2 = USER, 3 = SYSTEM ). See Transaction Set By for more information."
          type: integer
          example: null
        is_international_set_by_name:
          description: "The source that set the data ( 1 = FEED, 2 = USER, 3 = SYSTEM ). See Transaction Set By for more information."
          type: string
          example: null
        is_overdraft_fee:
          description: "If the transaction is an overdraft fee, this field will be true. Otherwise, this field will be false."
          type: boolean
          example: false
        is_payroll_advance:
          description: "If the transaction is a payroll advance, this field will be true. Otherwise, this field will be false."
          type: boolean
          example: false
        is_recurring:
          description: "This field should be ignored. If this information is required, please reach out to MX to discuss an alternative."
          type: boolean
          example: null
        is_subscription:
          description: "If the transaction represents a payment for a subscription service such as Netflix or Audible, this field will be true. Otherwise it will be false."
          type: boolean
          example: false
        latitude:
          description: "The latitude of the location where the transaction occurred. The number is a signed decimal (e.g. Rio de Janeiro's latitude is -22.9027800 and Tokyo's latitude is 35.689488)."
          type: number
          example: null
        latitude_set_by:
          description: "The source that set the data ( 1 = FEED, 2 = USER, 3 = SYSTEM ). See Transaction Set By for more information."
          type: integer
          example: null
        latitude_set_by_name:
          description: "The source that set the data ( FEED, USER, or SYSTEM ). See Transaction Set By for more information."
          type: string
          example: null
        localized_description:
          description: "A human-readable description of the transaction, provided in a local language."
          type: string
          example: null
        localized_memo:
          description: "Additional descriptive information about the transaction, provided in a local language."
          type: string
          example: null
        longitude:
          description: "The longitude of the location where the transaction occurred. The number is a signed decimal (e.g. Rio de Janeiro's longitude is -43.2075000 and Tokyo's longitude is 139.691706)."
          type: number
          example: null
        longitude_set_by:
          description: "The source that set the data ( 1 = FEED, 2 = USER, 3 = SYSTEM ). See Transaction Set By for more information."
          type: integer
          example: null
        longitude_set_by_name:
          description: "The source that set the data ( FEED, USER, or SYSTEM ). See Transaction Set By for more information."
          type: string
          example: null
        member_is_managed_by_user:
          description: "If the member the transaction belongs to is managed by the user, this field will be true. Otherwise, the member is managed by the MX partner and this field will be false. Members created with Nexus are considered to be managed by the user."
          type: boolean
          example: true
        memo:
          description: "The memo is additional descriptive information about the transaction."
          type: string
          example: null
        memo_set_by:
          description: "The source that set the data ( 1 = FEED, 2 = USER, 3 = SYSTEM ). See Transaction Set By for more information."
          type: integer
          example: null
        memo_set_by_name:
          description: "The source that set the data ( FEED, USER, or SYSTEM ). See Transaction Set By for more information."
          type: string
          example: null
        merchant_category_code:
          description: "The merchant category code."
          type: integer
          example: 0
        merchant_guid:
          description: "Unique identifier for the merchant identified in the transaction. Defined by MX."
          type: string
          example: "MCH-8f595f23-43fb-2c82-429e-56313bb6dada"
        merchant_location_guid:
          description: "The unique identifier for the merchant location associated with the transaction. Defined by MX."
          type: string
          example: null
        metadata:
          description: "Additional information a partner can store on the transaction. NOTE: this field may potentially be overwritten by the data provider when data is refreshed through aggregation. See the FAQs for more information."
          type: string
          example: "some hard coded transaction metadata"
        parent_guid:
          description: "The parent guid of the transaction."
          type: string
          example: null
        posted_at:
          description: "Date and time the transaction was posted, represented in ISO 8601 format with timestamp (e.g. 2015-04-13T12:01:23-00:00)."
          type: string
          example: "2022-06-15T12:00:00+00:00"
        posted_at_set_by:
          description: "The source that set the data ( 1 = FEED, 2 = USER, 3 = SYSTEM ). See Transaction Set By for more information."
          type: integer
          example: 1
        posted_at_set_by_name:
          description: "The source that set the data ( FEED, USER, or SYSTEM ). See Transaction Set By for more information."
          type: string
          example: "FEED"
        revision:
          description: "The revision number of this transaction record."
          type: integer
          example: 1
        scheduled_payment_guid:
          description: "The unique identifier for the scheduled payment associated with this transaction. Defined by MX."
          type: string
          example: null
        status:
          description: "The status of the transaction (1 = POSTED, 2 = PENDING). See Status for more information."
          type: integer
          example: 1
        status_name:
          description: "The status of the transaction (POSTED or PENDING). See Status for more information."
          type: string
          example: "POSTED"
        status_set_by:
          description: "The source that set the data ( 1 = FEED, 2 = USER, 3 = SYSTEM ). See Transaction Set By for more information."
          type: integer
          example: 1
        status_set_by_name:
          description: "The source that set the data ( FEED, USER, or SYSTEM ). See Transaction Set By for more information."
          type: string
          example: "FEED"
        top_level_category_guid:
          description: "Unique identifier of the parent category that this transaction's category is assigned to."
          type: string
          example: "CAT-94b11142-e97b-941a-f67f-6e18d246a23f"
        transacted_at:
          description: "Date and time the transaction took place, represented in ISO 8601 format with timestamp (e.g. 2015-04-13T12:01:23-00:00)."
          type: string
          example: "2022-06-14T12:00:00+00:00"
        transacted_at_set_by:
          description: "The source that set the data ( 1 = FEED, 2 = USER, 3 = SYSTEM ). See Transaction Set By for more information."
          type: integer
          example: 1
        transacted_at_set_by_name:
          description: "The source that set the data ( FEED, USER, or SYSTEM ). See Transaction Set By for more information."
          type: string
          example: "FEED"
        transaction_type:
          description: "The type of transaction (1 = CREDIT, 2 = DEBIT). See Transaction Types for more information."
          type: integer
          example: 2
        transaction_type_name:
          description: "The type of transaction (CREDIT or DEBIT). See Transaction Types for more information."
          type: string
          example: "DEBIT"
        transaction_type_set_by:
          description: "The source that set the data ( 1 = FEED, 2 = USER, 3 = SYSTEM ). See Transaction Set By for more information."
          type: integer
          example: 1
        transaction_type_set_by_name:
          description: "The source that set the data ( FEED, USER, or SYSTEM ). See Transaction Set By for more information."
          type: string
          example: "FEED"
        updated_at:
          description: "Date and time the transaction was updated, represented in ISO 8601 format with timestamp (e.g. 2015-04-13T12:01:23-00:00)."
          type: string
          example: "2022-06-14T21:17:10+00:00"
        user_guid:
          description: "Unique identifier for the user. Defined by MX."
          type: string
          example: "USR-11141024-90b3-1bce-cac9-c06ced52ab4c"
    TransactionsResponseBody:
      properties:
        transactions:
          items:
            "$ref": "#/components/schemas/TransactionResponse"
          type: array
        pagination:
          "$ref": "#/components/schemas/PaginationResponse" 
      type: object
    TransactionResponseBody:
      properties:
        transaction:
          "$ref": "#/components/schemas/TransactionResponse"
      type: object
    MonthlyAccountBalanceResponse:
      properties:
        account_guid:
          example: ACT-f39a0c33-289a-2832-c2d4-b72f41367f3f
          type: string
          description: Unique identifier for the account. Defined by MX.
        balance: 
          example: 2091.11
          type: integer
          description: The current balance of the account. `PENDING` transactions are typically not taken into account with the current balance, but this may not always be the case. This is the value used for the account balance displayed in MX UIs. The balance will usually be a positive value for all account types. Asset-type accounts (`CHECKING`, `SAVINGS`, `INVESTMENT`) may have a negative balance if they are in overdraft. Debt-type accounts (`CREDIT_CARD`, `LOAN`, `LINE_OF_CREDIT`, `MORTGAGE`) may have a negative balance if they are overpaid.
        month: 
          example: 2
          type: integer
        transaction_total: 
          example: 62.93
          type: integer
        user_guid: 
          example: USR-c93f457a-2a87-b0d2-6b1b-c1b62073fabf
          type: string
          description: Unique identifier for the user. Defined by MX.
        year:
          example: 2016
          type: integer
    MonthlyAccountBalanceResponseBody:
      properties:
        monthly_account_balances:
          items:
            "$ref": "#/components/schemas/MonthlyAccountBalanceResponse" 
          type: array
      type: object
    BudgetResponse:
      properties:
        amount:
          description: A goal amount set by the user for a category's transaction total during a month.
          example: 153
          type: number
        category_guid:
          description: Unique identifier for the budget category. Defined by MX.
          example: CAT-bd56d35a-a9a7-6e10-66c1-5b9cc1b6c81a
          type: string
          nullable: false
        created_at:
          description: Date and time the budget was created, represented in ISO 8601 format with timestamp.
          example: 2018-10-18T19:51:26+00:00
          type: string
        guid:
          description: Unique identifier for the budget. Defined by MX.
          example: BGT-6ca0e3ef-c65e-4655-8b5a-275a3c19c21d
          type: string
        is_exceeded:
          description: If the budget has been exceeded, this field will be true. Otherwise, this field will be false.
          example: true
          type: boolean
        is_off_track:
          description: If the budget is off track, this field will be true. Otherwise, this field will be false.
          example: true
          type: boolean 
        metadata:
          description: Additional information a partner can store on the budget.
          example: some metadata
          nullable: true
          type: string
        name:
          description: The name of the budget that is visible to the user (ie "Food", "Bills", "Entertainment", etc).
          example: Food & Dining
          type: string
          nullable: true
        off_track_percentage:
          description: The percentage amount of off track spending. (Deprecated).
          nullable: true 
          type: number 
        parent_guid:
          description: Unique identifier for the parent budget. Defined by MX.
          nullable: true
          type: string
        percent_spent:
          description: The percentage of a budget that has been spent during the current calendar month Calculated as the transaction total divided by the amount and then multiplied by 100.A value of zero will be returned when `amount` is zero.
          example: 1276.34
          nullable: true
          type: number
        projected_spending:
          description: The projected amount of spending for the budget.
          example: 3562.4
          type: number
        revision:
          description: The revision number of this budget record.
          example: 561
          type: integer
        transaction_total:
          description: The cumulative amount of all transactions under the budget.
          example: 1952.8
        updated_at:
          description: Date and time the budget was updated, represented in ISO 8601 format with timestamp.
          example: 2022-06-14T21:17:11+00:00"
        user_guid: 
          description: Unique identifier for the user. Defined by MX.
          example: USR-11141024-90b3-1bce-cac9-c06ced52ab4c
    BudgetCreateRequest:
      properties:
        amount:
          example: 1000
          description: A goal amount set by the user for a category's transaction total during a month.
          type: integer
        category_guid:
          example: CAT-bd56d35a-a9a7-6e10-66c1-5b9cc1b6c81a
          description: Unique identifier for the budget category. Defined by MX.
          type: string
        metadata:
          example: Additional information 
          description: Additional information a partner can store on the budget.
          type: string
        parent_guid:
          example: BGT-6be44a91-e105-f68a-4770-8c7c0a5c9778
          description: Unique identifier for the parent budget. Defined by MX. This is only required when creating a budget on a sub-category.
          type: string
        skip_webhook:
          example: true
          description: When set to true, this parameter will prevent a webhook from being triggered by the request.
          type: boolean  
      required:
        - category_guid
        - parent_guid
    BudgetCreateRequestBody:
      properties:
        budget:
          items:
            "$ref": "#/components/schemas/BudgetCreateRequest" 
          type: array
      type: object
    BudgetUpdateRequestBody:
      properties:
        budget:
          items:
            "$ref": "#/components/schemas/BudgetUpdateRequest" 
          type: array
      type: object
    BudgetUpdateRequest:
      properties:
        amount:
          example: 1000
          description: A goal amount set by the user for a category's transaction total during a month.
          type: integer
        metadata:
          example: Additional information 
          description: Additional information a partner can store on the budget.
          type: string
        skip_webhook:
          example: true
          description: When set to true, this parameter will prevent a webhook from being triggered by the request.
          type: boolean  
    BudgetResponseBody:
      properties:
        budget:
            "$ref": "#/components/schemas/BudgetResponse" 
      type: object
    BudgetsResponseBody:
      properties:
        budgets:
          items:
            "$ref": "#/components/schemas/BudgetResponse" 
          type: array
      type: object
    UpdateSubcategoryRequestBody:
      properties:
        category:
          "$ref": "#/components/schemas/UpdateSubcategoryRequest" 
      type: object
    UpdateSubcategoryRequest:
      properties:
          name:
            description: Name of the subcategory. 
            example: March Madness
            type: string
          metadata:
            description: Additional information a partner can store on the category.
            example: Additional information
            type: string
          skip_webhook: 
            description: When set to true, this parameter will prevent a webhook from being triggered by the request. 
            type: boolean
            example: true
    CreateSubcategoryRequest:
      properties:
        name:
          description: Name of the subcategory. 
          example: March Madness
          type: string
        parent_guid:
          description: Unique identifier of the parent category.
          example: CAT-79b02f2f-2adc-88f0-ac2b-4e71ead9cfc8
          type: string
        metadata:
          description: Additional information a partner can store on the category.
          example: Additional information
          type: string
        skip_webhook: 
          description: When set to true, this parameter will prevent a webhook from being triggered by the request. 
          type: boolean
          example: true
      required:
        - name
        - parent_guid
    CreateSubcategoryRequestBody:
      properties:
        category:
          "$ref": "#/components/schemas/CreateSubcategoryRequest" 
      type: object
    SubcategoryResponse:
      properties:
        created_at:
          example: 2015-04-13T12:01:23-00:00
          type: string
          nullable: true
          description: Date and time the category was created, represented in ISO 8601 format with timestamp (e.g. 2015-04-13T12:01:23-00:00). This field will always be `null` when `is_default` is true.
        guid:
          example: CAT-de7c2dc7-90e6-85a2-6509-5ec10942e887
          type: string
          description: Unique identifier for the category. Defined by MX.
        is_default:
          example: true
          type: boolean
          nullable: true
          description: If the category is a default category, this field will be true. Otherwise, this field will be false.
        is_income:
          example: true
          type: boolean
          nullable: true
          description: If the category is income, this field will be true. Otherwise, this field will be false.
        metadata:
          example: Additional information 
          type: string
          nullable: true
          description: Additional information a partner can store on the category.
        name:
          example: Auto Insurance
          type: string
          nullable: false
          description: Name of the sub-category.
        parent_guid:
          example: CAT-7829f71c-2e8c-afa5-2f55-fa3634b89874
          type: string
          description: Unique identifier for the parent category. If the category is a default category, this field will be "null". Defined by MX.
        updated_at: 
          example: 2015-04-13T12:01:23-00:00
          type: string
          description: Date and time the category was last updated, represented in ISO 8601 format with timestamp (e.g. 2015-04-13T12:01:23-00:00). This field will always be null when `is_default` is true.
    SubcategoryResponseBody:
      properties:
        category:
          "$ref": "#/components/schemas/SubcategoryResponse" 
      type: object
    CategoriesResponseBody:
      properties:
        categories:
          items:
            "$ref": "#/components/schemas/SubcategoryResponse" 
          type: array
      type: object
    CategoryDateRangeResponse:
      properties:
        category_guid:
          example: CAT-bf9f3294-4c40-1677-d269-54fbc189faf3
          type: string
        end_date:
          example: 1466056800
          type: integer
        start_date:
          example: 1459490400
          type: integer
        total:
          example: 155.72
          type: number
        user_guid:
          example: USR-d8843e3e-7153-ce05-db54-fb3241c15d94
          type: string
    CategoryDateRangeResponseBody:
      properties:
        date_range_category_totals:
          items:
            "$ref": "#/components/schemas/CategoryDateRangeResponse" 
          type: array
      type: object
    GoalRequest:
      properties:
        account_guid:
          description: "Unique identifier for the goal. Defined by MX."
          example: ACT-4e431124-4a29-abf9-f059-ab232ac14dbf
          type: string
        amount:
          description: "The amount of the goal."
          example: 4500
          type: number
        completed_at:
          description: "Date and time the goal was completed, represented in ISO 8601 format with timestamp (e.g. 2015-04-13T12:01:23-00:00)."
          example: "2015-06-19T10:37:04-06:00"
          type: string
        goal_type_name: 
          description: "The type of goal. Can be SAVE_AMOUNT or PAYOFF."
          example: string
          type: string
        has_been_spent:
          description: "If the goal has been spent, this field will be true. Otherwise, this field will be false."
          example: false
          type: boolean
        is_complete:
          description: "If the goal is complete, this field will be true. Otherwise, this field will be false."
          example: false
          type: boolean
        meta_type_name:
          description: "The category of the goal; see Goal Meta Type for more information."
          example: VACATION
          type: string
        metadata:
          description: "Additional information a partner can store on the goal."
          example: Additional information
          type: string
        name: 
          description: "The name of the goal that is visible to the user (i.e., \"Europe Trip\", \"Savings\", \"Toyota Tacoma\", etc)."
          example: Save for Europe. 
          type: string
        position: 
          description: "The priority of the goal in relation to multiple goals."
          example: 3
          type: integer
        skip_webhook:
          type: boolean
          description: When set to true, this parameter will prevent a webhook from being triggered by the request.
          example: true
        targeted_to_complete_at:
          type: string
          description: Date and time the goal is to complete, represented in ISO 8601 format with timestamp (e.g. 2015-04-13T12:01:23-00:00). Intended for users to set their own goal completion dates.
        track_type_name:
          type: string
          description: "The track of the goal. Can be `DEBT_TRACK`, `SAVINGS_TRACK`, `RETIREMENT_TRACK`, or `EMERGENCY_FUND_TRACK`."
      required:
        - account_guid
        - amount
        - goal_type_name
        - meta_type_name
        - name
    GoalRequestBody:
      properties:
        goal:
          "$ref": "#/components/schemas/GoalRequest" 
      type: object
    GoalResponse:
      properties:
        account_guid:
          description: "Unique identifier for the goal. Defined by MX."
          example: ACT-4e431124-4a29-abf9-f059-ab232ac14dbf
          type: string
        amount:
          description: "The amount of the goal."
          example: 4500
          type: number
        goal_type_name: 
          description: "The type of goal. Can be SAVE_AMOUNT or PAYOFF."
          example: string
          type: string
        meta_type_name:
          description: "The category of the goal; see Goal Meta Type for more information."
          example: VACATION
          type: string
        name: 
          description: "The name of the goal that is visible to the user (i.e., \"Europe Trip\", \"Savings\", \"Toyota Tacoma\", etc)."
          example: Save for Europe. 
          type: string
        completed_at:
          description: "Date and time the goal was completed, represented in ISO 8601 format with timestamp (e.g. 2015-04-13T12:01:23-00:00)."
          example: "2015-06-19T10:37:04-06:00"
          type: string
        has_been_spent:
          description: "If the goal has been spent, this field will be true. Otherwise, this field will be false."
          example: false
          type: boolean
        is_complete:
          description: "If the goal is complete, this field will be true. Otherwise, this field will be false."
          example: false
          type: boolean
        metadata:
          description: "Additional information a partner can store on the goal."
          example: Additional information
          type: string
        position: 
          description: "The priority of the goal in relation to multiple goals."
          example: 3
          type: integer
        track_type_name:
          description: "The track of the goal. Can be `DEBT_TRACK`, `SAVINGS_TRACK`, `RETIREMENT_TRACK`, or `EMERGENCY_FUND_TRACK`."
          example: SAVINGS_TRACK
          type: string
    GoalsResponse:
      properties:
        account_guid:
          description: "Unique identifier for the goal. Defined by MX."
          example: ACT-4e431124-4a29-abf9-f059-ab232ac14dbf
          type: string
        amount:
          description: "The amount of the goal."
          example: 4500
          type: number
        current_amount:
          description: "The current amount of the goal."
          example: 1651.27
          type: number
        guid:
          description: "Unique identifier for the goal. Defined by MX."
          example: GOL-524ca5db-a2d5-44f3-b048-16de16059024
          type: string
        goal_type_name: 
          description: "The type of goal. Can be SAVE_AMOUNT or PAYOFF."
          example: string
          type: string
        meta_type_name:
          description: "The category of the goal; see Goal Meta Type for more information."
          example: VACATION
          type: string
        name: 
          description: "The name of the goal that is visible to the user (i.e., \"Europe Trip\", \"Savings\", \"Toyota Tacoma\", etc)."
          example: Save for Europe. 
          type: string
        completed_at:
          description: "Date and time the goal was completed, represented in ISO 8601 format with timestamp (e.g. 2015-04-13T12:01:23-00:00)."
          example: "2015-06-19T10:37:04-06:00"
          type: string
        has_been_spent:
          description: "If the goal has been spent, this field will be true. Otherwise, this field will be false."
          example: false
          type: boolean
        is_complete:
          description: "If the goal is complete, this field will be true. Otherwise, this field will be false."
          example: false
          type: boolean
        metadata:
          description: "Additional information a partner can store on the goal."
          example: Additional information
          type: string
        position: 
          description: "The priority of the goal in relation to multiple goals."
          example: 3
          type: integer
        projected_to_complete_at:
          description: "Date and time the goal is projected to be completed, represented in ISO 8601 format with timestamp (e.g. 2015-04-13T12:01:23-00:00)."
          example: 2022-06-14T16:03:53-00:00
          type: string
        user_guid:
          description: "Unique identifier for the user the goal is attached to. Defined by MX."
          example: USR-11141024-90b3-1bce-cac9-c06ced52ab4c
          type: string
        track_type_name:
          description: "The track of the goal. Can be `DEBT_TRACK`, `SAVINGS_TRACK`, `RETIREMENT_TRACK`, or `EMERGENCY_FUND_TRACK`."
          example: SAVINGS_TRACK
          type: string
    GoalResponseBody:
      properties:
        goal:
          "$ref": "#/components/schemas/GoalResponse" 
      type: object
    GoalsResponseBody:
      properties:
        goals:
          items:
            "$ref": "#/components/schemas/GoalsResponse" 
          type: array
      type: object
    RepositionRequest:
      properties:
        guid:
          description: The unique identifier for the goal. Defined by MX. 
          example: GOL-97665947-235c-b213-ca25-8cf0174774f5
          type: string
        position:
          description: The priority of the goal in relation to multiple goals.
          example: 1
          type: integer
      required:
        - guid
        - position
    RepositionRequestBody:
      properties:
        goals:
          items:
            "$ref": "#/components/schemas/RepositionRequest" 
          type: array
      type: object
    RepositionResponseBody:
      properties:
        goal:
          "$ref": "#/components/schemas/GoalsResponse" 
      type: object
    UpdateGoalRequest:
      properties:
        account_guid:
          type: string
          description: "Unique identifier for the goal. Defined by MX."
        amount:
          description: "The amount of the goal."
          example: 4500
          type: number
        name: 
          description: "The name of the goal that is visible to the user (i.e., \"Europe Trip\", \"Savings\", \"Toyota Tacoma\", etc)."
          example: Save for Europe. 
          type: string
        completed_at:
          description: "Date and time the goal was completed, represented in ISO 8601 format with timestamp (e.g. 2015-04-13T12:01:23-00:00)."
          example: "2015-06-19T10:37:04-06:00"
          type: string
        has_been_spent:
          description: "If the goal has been spent, this field will be true. Otherwise, this field will be false."
          example: false
          type: boolean
        is_complete:
          description: "If the goal is complete, this field will be true. Otherwise, this field will be false."
          example: false
          type: boolean
        metadata:
          description: "Additional information a partner can store on the goal."
          example: Additional information
          type: string
        position: 
          description: "The priority of the goal in relation to multiple goals."
          example: 3
          type: integer
        skip_webhook:
          type: boolean
          description: When set to true, this parameter will prevent a webhook from being triggered by the request.
          example: true
        targeted_to_complete_at:
          type: string
          description: Date and time the goal is to complete, represented in ISO 8601 format with timestamp (e.g. 2015-04-13T12:01:23-00:00). Intended for users to set their own goal completion dates.
    UpdateGoalRequestBody:
      properties:
        goal:
          "$ref": "#/components/schemas/UpdateGoalRequest" 
      type: object
    UpdateHoldingRequestBody:
      properties:
        holding:
          "$ref": "#/components/schemas/UpdateHoldingRequest" 
      type: object
    UpdateHoldingRequest:
      properties:
        cost_basis:
          description: The cost basis is the original value of an asset adjusted for stock splits, dividends, and capital distributions.
          type: number
          nullable: true
        currency_code:
          description: The ISO 4217 three-character currency code (e.g. USD).
          example: USD
          type: string
        metadata:
          description: Additional information a partner can store on the holding.
          example: Additional Information
          type: string
        skip_webhook:
          type: boolean
          example: false
    HoldingsResponse:
      properties:
        account_guid:
          description: Unique identifier for the account. Defined by MX. 
          type: string
          example: ACT-a8ba7faa-6ce8-4e05-a8b4-bd02ae2b8b9d
        allocations_cash:
          description: The percentage of a holding held in cash or cash equivalents.
          type: number
          example: 88.0948
        allocations_convertible:
          description: The percentage of a holding held in convertible shares (often in the form of preferred shares or bonds).
          type: number
          example: 48.6542
        allocations_foreign_bond:
          description: The percentage of a holding held in US bonds. 
          type: number
          example: 0.0139
        allocations_foreign_stock:
          description: The percentage of a holding held in non-US stocks.
          type: number
          example: 87.8851
        allocations_other:
          description: The percentage of a holding held in otherwise undefined assets. Real estate, commodities, and precious metals are examples of 'other' assets.
          type: number
          example: 0.0542
        allocations_preferred:
          description: The percentage of a holding held in preferred stocks.
          type: number
          example: 43.5169
        allocations_unknown:
          description: The percentage of a holding held in assets that are currently undefined by MX.
          type: number
          example: 0.023
        allocations_us_bond:
          description: The percentage of a holding held in US bonds.
          type: number
          example: 0.0563
        allocations_us_stock:
          description: The percentage of a holding held in US stocks.
          type: number
          example: 45.0999
        bond_coupon_rate:
          description: The coupon rate for a bond.
          type: number
          nullable: true
        bond_coupon_rate_set_by:
          description: The source that set the data ( 1 = FEED, 2 = USER, 3 = SYSTEM ).
          example: 1
          type: integer
          nullable: true
        bond_coupon_rate_set_by_name:
          description: The source that set the data (FEED, USER, or SYSTEM).
          example: "FEED"
          type: string
          nullable: true 
        bond_maturity_date: 
          description: The bond maturity date, represented in ISO 8601 format without a timestamp.
          example: 2015-04-13
          type: string
          nullable: true
        bond_maturity_date_set_by:
          description: The source that set the data ( 1 = FEED, 2 = USER, 3 = SYSTEM ).
          example: 1
          type: integer
          nullable: true
        bond_maturity_date_set_by_name:
          description: The source that set the data (FEED, USER, or SYSTEM).
          example: "FEED"
          type: string
          nullable: true 
        cost_basis:
          description: The cost basis is the original value of an asset adjusted for stock splits, dividends, and capital distributions.
          type: number
          nullable: true
        cost_basis_set_by: 
          description: The source that set the data ( 1 = FEED, 2 = USER, 3 = SYSTEM ).
          example: 1
          type: integer
          nullable: true
        cost_basis_set_by_name:
          description: The source that set the data (FEED, USER, or SYSTEM).
          example: "FEED"
          type: string
          nullable: true 
        cost_basis_updated_at:
          description: "Date and time the cost basis was last updated, represented in ISO 8601 format with timestamp (e.g. 2015-04-13T12:01:23-00:00)."
          type: string
          example: 2015-04-13T12:01:23-00:00
          nullable: true
        created_at:
          description: "Date and time the holding was created, represented in ISO 8601 format with timestamp (e.g. 2015-04-13T12:01:23-00:00)."
          type: string
          nullable: true
        currency_code:
          description: "The ISO 4217 three-character currency code (e.g. USD)."
          example: USD
          type: string
        currency_code_set_by:
          description: The source that set the data ( 1 = FEED, 2 = USER, 3 = SYSTEM ).
          example: 1
          type: integer
          nullable: true
        currency_code_set_by_name:
          description: The source that set the data (FEED, USER, or SYSTEM).
          example: "FEED"
          type: string
          nullable: true 
        daily_change:
          description: The change from the previous day in the price of the security.
          type: number
          nullable: true
        daily_change_set_by:
          description: The source that set the data ( 1 = FEED, 2 = USER, 3 = SYSTEM ).
          example: 1
          type: integer
          nullable: true
        daily_change_set_by_name:
          description: The source that set the data (FEED, USER, or SYSTEM).
          example: "FEED"
          type: string
          nullable: true 
        deleted_at:
          description: Date and time the holding was deleted, represented in ISO 8601 format with timestamp.
          example: 2015-04-13T12:01:23-00:00
          type: string
        description:
          description: Description of the holding.
          example: a description
          type: string
        description_set_by:
          description: "The source that set the data ( 1 = FEED, 2 = USER, 3 = SYSTEM )."
          type: integer
          example: 1
        description_set_by_name:
          description: "The source that set the data ( FEED, USER, or SYSTEM )."
          type: string
          nullable: true
        equity_classification:
          description: "A graphical representation of the investment style of the stocks and stock funds within a holding according to the Morningstar Style Box. See Holding Classification for more information."
          type: integer 
          example: 5
        equity_classification_set_by:
          description: "The source that set the data ( 1 = FEED, 2 = USER, 3 = SYSTEM )."
          type: integer
          example: 2
        equity_classification_set_by_name:
          description: "The source that set the data ( FEED, USER, or SYSTEM )."
          type: string
          nullable: true
        external_guid: 
          description: "Partner created identifier for the holding."
          type: string
          example: holding-be73487f-2cd2-4a99-b78c-2f8fb866cbed
        fixed_income_classification:
          description: "A graphical representation of the investment style of the fixed income funds within a holding (like bonds) according to the Morningstar Style Box. See Fixed Income Classification for more information."
          type: integer
          nullable: true
        fixed_income_classification_set_by:
          description: "The source that set the data ( 1 = FEED, 2 = USER, 3 = SYSTEM )."
          type: integer
          nullable: true
        fixed_income_classification_set_by_name:
          description: "The source that set the data ( FEED, USER, or SYSTEM )."
          type: string
          nullable: true
        feed_bond_coupon_rate:
          description: "The bond coupon rate, as provided by our data feed. See `bond_coupon_rate` for more information."
          type: number
          nullable: true
        feed_bond_maturity_date:
          description: "The bond maturity date, as provided by our data feed. See `bond_maturity_date` for more information."
          type: string
          nullable: true
        feed_cost_basis:
          description: "The cost basis, as provided by our data feed. See `cost_basis` for more information."
          type: number
          nullable: true
        feed_currency_code:
          description: "The ISO 4217 three-character currency code, as provided by our data feed. See `currency_code` for more information."
          type: string
          nullable: true
        feed_cusip:
          description: "The Committee on Uniform Securities Identification Procedures (CUSIP) classification code, as provided by our data feed. See `cusip` for more information."
          type: string
          nullable: true
        feed_daily_change:
          description: "The change from the previous day in the price of the security, as provided by our data feed. See `daily_change` for more information."
          type: number
          nullable: true
        feed_description:
          description: "The description, as provided by our data feed. See `description` for more information."
          type: string
          nullable: true
        feed_equity_classification:
          description: "The equity classification, as provided by our data feed. See `equity_classification` for more information."
          type: integer
          nullable: true
        feed_fixed_income_classification:
          description: "The fixed income classification, as provided by our data feed. See `fixed_income_classification` for more information."
          type: integer
          nullable: true
        feed_isin:
          description: "The International Securities Identification Number (ISIN), as provided by our data feed. See `isin` for more information."
          type: string
          nullable: true
        feed_market_value:
          description: "The current market value of the holding, as provided by our data feed. See `market_value` for more information."
          type: number
          nullable: true
        feed_purchase_price:
          description: "The purchase price, as provided by our data feed. See `purchase_price` for more information."
          type: number
          nullable: true
        feed_sector:
          description: "The area of the economy the holding is invested in, as provided by our data feed. See `sector` for more information."
          type: integer
          nullable: true
        feed_sedol:
          description: "The Stock Exchange Daily Official List (SEDOL) classification code, as provided by our data feed. See `sedol` for more information."
          type: string
          nullable: true
        feed_shares:
          description: "The number of shares, as provided by our data feed. See `shares` for more information."
          type: number
          nullable: true
        feed_symbol:
          description: "The ticker symbol, as provided by our data feed. See `symbol` for more information."
          type: string
          nullable: true
        guid:
          description: "Unique transaction identifier. Defined by MX."
          type: string
          example: holding-be73487f-2cd2-4a99-b78c-2f8fb866cbed
        holding_type:
          description: "The type of holding, such as Mutual Fund, Equity, or Bond."
          type: integer
          example: 1
        holding_type_name:
          description: "The name of the holding type."
          type: string
          example: EQUITY
        holding_type_set_by:
          description: "The source that set the data ( 1 = FEED, 2 = USER, 3 = SYSTEM )."
          example: 1
          type: integer
          nullable: true
        holding_type_set_by_name:
          description: "The source that set the data ( FEED, USER, or SYSTEM )."
          example: "FEED"
          type: string
          nullable: true 
        is_deleted:
          description: "If the holding is deleted, this field will be true. Otherwise, this field will be false."
          type: boolean
          example: true
        isin:
          description: The International Securities Identification Number (ISIN) in ISO 6166 format.
          type: string
          nullable: true
        isin_set_by:
          description: The source that set the data ( 1 = FEED, 2 = USER, 3 = SYSTEM ).
          example: 1
          type: integer
          nullable: true
        isin_set_by_name:
          description: The source that set the data (FEED, USER, or SYSTEM).
          example: "FEED"
          type: string
          nullable: true 
        large_core_weight:
          description: The percentage of a holding's stock value with a large core investment style.
          type: number
          example: 0.053
        large_growth_weight:
          description: The percentage of a holding's stock value with a large growth investment style.
          type: number
          example: 63.7687
        large_value_weight: 
          description: The percentage of a holding's stock value with a large value investment style. 
          type: number
          example: 0.0103
        market_value:
          description: "The market value of the holding."
          type: number
          example: 618
        market_value_set_by:
          description: "The source that set the data ( 1 = FEED, 2 = USER, 3 = SYSTEM )."
          example: 1
          type: integer
          nullable: true 
        market_value_set_by_name:
          description: "The source that set the data ( FEED, USER, or SYSTEM )."
          example: "FEED"
          type: string
          nullable: true 
        member_is_managed_by_user:
          description: "If the member the holding belongs to is managed by the user, this field will be true. Otherwise, the member is managed by the MX partner and this field will be false. Members created with Nexus are considered to be managed by the user."
          type: boolean
          example: false
        metadata:
          description: "Additional information a partner can store on the holding."
          example: Additional Information
          type: string
        mid_core_weight:
          description: "The percentage of a holding's stock value with a mid core investment style."
          type: number
          example: 61.9756
        mid_growth_weight:
          description: The percentage of a holding's stock value with a mid growth investment style.
          type: number
          example: 0.4567
        mid_value_weight:
          description: The percentage of a holding's stock value with a mid value investment style.
          type: number
          example: 0.0563
        purchase_price: 
          description: "The purchase price of the holding."
          type: number
          example: 35
        purchase_price_set_by:
          description: "The source that set the data ( 1 = FEED, 2 = USER, 3 = SYSTEM )."
          example: 1
          type: integer
          nullable: true 
        purchase_price_set_by_name:
          description: "The source that set the data ( FEED, USER, or SYSTEM )."
          example: "FEED"
          type: string
          nullable: true 
        sector:
          description: "The area of the economy the holding is invested in."
          type: integer
          example: 205
        sector_set_by:
          description: "The source that set the data ( 1 = FEED, 2 = USER, 3 = SYSTEM )."
          example: 1
          type: integer
          nullable: true 
        sector_set_by_name:
          description: "The source that set the data ( FEED, USER, or SYSTEM )."
          example: "FEED"
          type: string
          nullable: true 
        sedol:
          description: "The Stock Exchange Daily Official List (SEDOL) classification code, represented as a seven-character code (e.g. B03MM40)."
          type: string
          example: null
          nullable: true
        sedol_set_by:
          description: "The source that set the data ( 1 = FEED, 2 = USER, 3 = SYSTEM )."
          example: 1
          type: integer
          nullable: true 
        sedol_set_by_name:
          description: "The source that set the data ( FEED, USER, or SYSTEM )."
          example: "FEED"
          type: string
          nullable: true 
        shares:
          description: "The number of shares owned for this holding."
          type: number
          example: 125
        shares_set_by:
          description: "The source that set the data ( 1 = FEED, 2 = USER, 3 = SYSTEM )."
          example: 1
          type: integer
          nullable: true 
        shares_set_by_name:
          description: "The source that set the data ( FEED, USER, or SYSTEM )."
          example: "FEED"
          type: string
          nullable: true 
        small_core_weight: 
          description: "The percentage of funds allocated to a small-cap, core equity holding."
          type: number
          example: 0.50
        small_growth_weight:
          description: "The percentage of funds allocated to a small-cap, growth equity holding."
          type: number
          example: 0.30
        small_value_weight:
          description: "The percentage of funds allocated to a small-cap, value equity holding."
          type: number
          example: 0.30
        symbol:
          description: "The symbol that refers to the ticker symbol of the security (e.g. AAPL for Apple, Inc.)."
          type: string
          example: "HDP"
        symbol_set_by:
          description: "The source that set the data ( 1 = FEED, 2 = USER, 3 = SYSTEM )."
          example: 1
          type: integer
          nullable: true
        symbol_set_by_name:
          description: "The source that set the data ( FEED, USER, or SYSTEM )."
          example: "FEED"
          type: string
          nullable: true 
        updated_at: 
          description: Date and time the transaction was updated, represented in ISO 8601 format with timestamp.
          example: 2015-04-13T12:01:23-00:00
          type: string
        unknown_weight:
          description: The percentage of a holding's stock value with an investment style currently undefined by MX.
          type: number
          example: 0.0521
        user_guid:
          description: Unique identifier for the user. Defined by MX.
          type: string
          example: USR-11141024-90b3-1bce-cac9-c06ced52ab4c
    HoldingsResponseBody:
      properties:
        holdings:
          items:
            "$ref": "#/components/schemas/HoldingsResponse" 
          type: array
      type: object
    HoldingResponseBody:
      properties:
        holding:
          "$ref": "#/components/schemas/HoldingsResponse" 
      type: object
    IdentityResponse:
      properties:
        account_guid:
          description: The unique identifier for the account associated with the account owner. Defined by MX.
          example: ACT-f0c7d835-9668-4306-b8b4-ff60fc241e8d
          type: string
        address: 
          description: The account owner's street address. 
          type: string
          example: 3401 N Thanksgiving Way #500
        city:
          description: The account owner's city. 
          type: string
          example: Lehi
        country: 
          description: The account owner's country. 
          example: United States
          type: string
          nullable: true 
        email: 
          description: The account owner's email address.
          type: string
          example: mxuser.mx.com
        first_name:
          description: The account owner's first name. This may also include a middle name. This field will be `null` unless name splitting has been enabled. Contact MX to have this feature enabled.
          type: string
          nullable: true
        last_name:
          description: The account owner's last name. This field will be `null` unless name splitting has been enabled. Contact MX to have this feature enabled.
          type: string
          nullable: true
        member_guid: 
          description: The unique identifier for the member associated with the account owner. Defined by MX.
          type: string
          example: MBR-84ca0882-ad6c-4f10-817f-c8c0de7424fa
        owner_name:
          description: The account owner's name. 
          type: string 
          example: MX Test
        phone: 
          description: The account owner's phone number. 
          type: string
          example: 555-555-5555
        postal_code: 
          description: The account owner's postal code. 
          type: string
          example: "84034"
        state:  
          description: The account owner's state. 
          type: string
          example: Utah
        user_guid: 
          description: The unique identifier for the user associated with the account owner. Defined by MX. 
          type: string
          example: USR-11141024-90b3-1bce-cac9-c06ced52ab4c
    IdentityResponseBody:
      properties:
        account_owners:
          items:
            "$ref": "#/components/schemas/IdentityResponse" 
          type: array
      type: object
    MemberResponse:
      properties:
        aggregated_at:
          example: "2016-10-13T18:07:57.000Z"
          nullable: true
          type: string
          description: The date and time the most recent aggregation-type job was started, given in ISO 8601 format with a time component. A job will automatically be started when a member is created or its credentials are updated, unless the `skip_aggregation` parameter is used. Jobs can also be started via manual aggregations, background aggregations, API endpoints, or when opening an MX widget. A job can be a normal aggregation, or a premium job such as identification, verification, fetching statements, or fetching an extended transaction history. If a member is deleted and then re-created with the `skip_aggregation` parameter set to true or if it is re-created within the throttle window (typically three hours), the previous value will be returned.
        background_aggregation_is_disabled:
          example: false
          type: boolean
          description: This field indicates whether background aggregation is disabled for the member.
        connection_status:
          example: CONNECTED
          nullable: true
          type: string
          description: This field indicates the state of a member's aggregation, provided as a string.
        external_guid:
          example: 
          nullable: true
          description: Partner created identifier for the member. It must be unique for all members belonging to all users within the client.          
        guid:
          example: MBR-7c6f361b-e582-15b6-60c0-358f12466b4b
          nullable: true
          type: string
          description: Unique identifier for the member. Defined by MX.
        institution_code:
          description: "The code identifier for the institution."
          example: chase
          nullable: true
          type: string
        institution_guid:
          example: INS-1572a04c-912b-59bf-5841-332c7dfafaef
          description: The unique identifier for the institution. Defined by MX. 
          type: string
        is_being_aggregated:
          example: false
          nullable: true
          type: boolean
          description: This field will be true if the member is being aggregated at the time of the request. Otherwise, this field will be false.
        is_managed_by_user:
          example: false
          nullable: true
          type: boolean
          description: If the member is managed by the user, this field will be true. Otherwise, the member is managed by the MX partner, and this field will be false. Members created with Nexus are considered to be managed by the user. This field should be used in place of `is_user_created`.
        is_oauth:
          example: false
          nullable: true
          type: boolean
          description: This indicates whether the member uses OAuth to authenticate the member. Defaults to false. authentication.
        is_user_created:
          example: true
          description: If the member is user created, this field will be true. Otherwise, this field will be false. Members created with Nexus are considered user created. You should use the field `is_managed_by_user` instead of this field as it is being deprecated.
          type: boolean
        most_recent_job_guid:
          description: Unique identifier for the most recent job. Defined by MX.
          example: JOB-d6bb804b-6d12-44f1-b0ad-403441c03372
          type: string
        metadata:
          example: '\"credentials_last_refreshed_at\": \"2015-10-15\"'
          nullable: true
          type: string
          description: Additional information a partner can store on the member.
        name:
          example: Chase Bank
          nullable: true
          type: string
          description: Name of the given member. If omitted in a member create request, the institution name within the MX Platform will be used.
        successfully_aggregated_at:
          example: "2016-10-13T17:57:38.000Z"
          nullable: true
          type: string
          description: Date and time the account was last successfully aggregated, represented in ISO 8601 format with timestamp (e.g., 2015-04-13T12:01:23-00:00).
        use_cases:
          type: array
          description: The use case associated with the member. Valid values are `PFM` and/or `MONEY_MOVEMENT`. Only set this if you've met with MX and have opted in to using this field. For more info, see [Member Use Cases](/nexus/member-use-cases).
          items:
            type: string
            enum:
              - MONEY_MOVEMENT
              - PFM
          example:
            - "PFM"
        user_guid:
          example: USR-fa7537f3-48aa-a683-a02a-b18940482f54
          nullable: true
          type: string
          description: Unique identifier for the user the member is attached to. Defined by MX.
    MemberResponseBody:
      properties:
        member:
          "$ref": "#/components/schemas/MemberResponse"
      type: object
    MemberCredentialRequestBody:
      properties:
        member:
          "$ref": "#/components/schemas/MemberCredentialRequest"
      type: object
    MemberCredentialRequest:
      type: object
      properties:
        credential_guid:
          type: string
          example: "CRD-18cd14ce-2628-5eb6-ae17-b11f89d0b667"
          description: GUID for the institution credential needed to be created for the member.
        value:
          type: string
          example: "user-entered-value"
          description: Response for the credential prompt. IE - enter the username, password, and MFA question required by the institution.
        metadata:
          type: string
          example: "Additional information"
      required:
        - credential_guid
        - value
    MemberCreateRequestBody:
      properties:
        member:
          "$ref": "#/components/schemas/MemberCreateRequest"
      type: object
    MemberCreateRequest:
      type: object
      properties:
        background_aggregation_is_disabled:
          type: boolean
          example: false
          description: This field indicates whether background aggregation is disabled for the member.
        credentials:
          type: array
          description: Required unless `is_oauth` is `true`.
          items:
            type: object
            properties:
              credential_guid:
                type: string
                example: "CRD-18cd14ce-2628-5eb6-ae17-b11f89d0b667"
                description: The unique identifier for the institution credential. Obtained from the institution required credentials endpoint.
              value:
                type: string
                example: "user-entered-value"
                description: The user-provided value for this credential field (e.g., username, password, security answer).
        client_redirect_url:
          type: string
          example: null
          description: The URL to redirect the user to after completing OAuth authentication.
        connection_status:
          type: string
          example: null
          description: Can only be set if the member is under a test institution. Attempting to set this on a member of a non-test institution will result in a `400`. When present, the value must be one of the member connection status strings. If credentials are also set, any value for `connection_status` will be ignored as updating credentials automatically triggers an aggregation job, which will automatically update the connection status.
        external_guid:
          type: string
          example: null
          description: Partner created identifier for the member. It must be unique for all members belonging to all users within the client.
        institution_guid:
          type: string
          example: INS-1572a04c-912b-59bf-5841-332c7dfafaef
          description: Unique identifier for the institution. Defined by MX.
        is_oauth:
          type: boolean
          example: false
          description: This indicates whether the member uses OAuth to authenticate the member. Defaults to false. authentication.
        referral_source:
          type: string
          example: null
          description: The source from which the member creation was referred or initiated.
        metadata:
          type: string
          example: "Additional information"
          description: Additional information a partner can store on the member.
        skip_aggregation:
          type: boolean
          example: false
          description: When set to true, prevents automatic aggregation from starting after member creation. Defaults to false.
        skip_webhook:
          type: boolean
          example: false
          description: When set to true, prevents webhook notifications from being sent for this member creation. Defaults to false.
        ui_message_webview_url_scheme:
          type: string
          example: null
          description: The URL scheme for displaying UI messages in a webview during the aggregation process.
        use_cases:
          type: array
          description: The use case associated with the member. Valid values are `PFM` and/or `MONEY_MOVEMENT`. Only set this if you've met with MX and have opted in to using this field. For more info, see [Member Use Cases](/nexus/member-use-cases).
          items:
            type: string
            enum:
              - MONEY_MOVEMENT
              - PFM
          example:
            - "PFM"
      required:
        - institution_guid
    MemberUpdateRequestBody:
      properties:
        member:
          "$ref": "#/components/schemas/MemberUpdateRequest"
      type: object
    MemberUpdateRequest:
      type: object
      properties:
        credentials:
          description: "Array of credentials required by the institution for member authentication."
          type: array
          items:
            type: object
            properties:
              credential_guid:
                description: "Unique identifier for the credential. Defined by MX."
                type: string
                example: "CRD-18cd14ce-2628-5eb6-ae17-b11f89d0b667"
              value:
                description: "The value for this credential as provided by the user."
                type: string
                example: "user-entered-value"
        background_aggregation_is_disabled:
          description: "This field indicates whether background aggregation is disabled for the member."
          type: boolean
          example: false
        connection_status:
          type: string
          example: CONNECTED
          description: Can only be set if the member is under a test institution. Attempting to set this on a member of a non-test institution will result in a `400`. When present, the value must be one of the member connection status strings. If credentials are also set, any value for `connection_status` will be ignored as updating credentials automatically triggers an aggregation job, which will automatically update the connection status.
        skip_aggregation:
          description: "When true, the member will not aggregate automatically after credentials are updated."
          type: boolean
          example: false
        skip_webhook:
          description: "When set to true, this parameter will prevent a webhook from being triggered by the request."
          type: boolean
          example: false
        use_cases:
          type: array
          description: The use case associated with the member. Valid values are `PFM` and/or `MONEY_MOVEMENT`. Only set this if you've met with MX and have opted in to using this field.
          items:
            type: string
            enum:
              - MONEY_MOVEMENT
              - PFM
          example:
            - "PFM"
        metadata:
          description: "Additional information a partner can store on the member."
          type: string
          example: "Additional information"
      required:
        - member
    InstitutionResponse:
      properties:
        code:
          example: mxbank 
          description: A unique identifier for each institution. Defined by MX. 
          type: string
        created_at:
          example: 2016-09-21T22:03:55+00:00
          description: Date and time the institution was created, represented ISO 8601 format with timestamp. 
          type: string
        guid:
          example: INS-1572a04c-912b-59bf-5841-332c7dfafaef
          description: A unique identifier for the institution. Defined by MX. 
          type: string
        forgot_password_url:
          example: https://www.mx.com/forgot-password
          description: The URL of the institution for helping users recover a forgotten password. 
          type: string
        forgot_username_url:
          example: https://www.mx.com/forgot-username
          description: The URL of the institution for helping users recover a forgotten username. 
          type: string          
        has_checking_account:
          example: https://www.mx.com/forgot-username
          description: Deprecated. If the institution has checking accounts, this field will be true. Otherwise, this field will be false. 
        has_credit_card_accounts:
          example: true
          type: boolean
          description: (Deprecated) If the institution has credit card accounts, this field will be true. Otherwise, this field will be false.
        has_investment_accounts:
          example: true 
          type: boolean
          description: (Deprecated) If the institution has investment accounts, this field will be true. Otherwise, this field will be false
        has_line_of_credit_accounts:
          example: true
          type: boolean
          description: (Deprecated) If the institution has line of credit accounts, this field will be true. Otherwise, this field will be false.
        has_loan_accounts:
          example: true
          type: boolean
          description: (Deprecated) If the institution has loan accounts, this field will be true. Otherwise, this field will be false.
        has_mortgage_accounts:
          example: true
          type: boolean
          description: (Deprecated) If the institution has mortgage accounts, this field will be true. Otherwise, this field will be false.
        has_savings_accounts:
          example: true
          type: boolean
          description: (Deprecated) If the institution has savings accounts, this field will be true. Otherwise, this field will be false.
        is_disabled_by_client:
          example: false
          nullable: true
          type: boolean
          description: This indicates whether the institution has been disabled by the client.
        is_hidden:
          example: true
          type: boolean
          description: If the institution is available for creating new member connections, this field will be false. Otherwise, this field will be true.
        is_test:
          example: true
          type: boolean
          description: If the institution represents a test institution such as MX Bank, this field will be true. Otherwise, this field will be false.
        iso_country_code:
          description: The institution's country code.
          example:
            - US
            - CA
          type: array
          items:
            type: string
        medium_logo_url:
          example: https://content.moneydesktop.com/storage/MD_Assets/Ipad%20Logos/100x100/INS-1572a04c-912b-59bf-5841-332c7dfafaef_100x100.png
          description: The institution's logo (medium size). This may be a generic logo if MX does not have a specific logo for the institution.
        name:
          example: MX Bank
          type: string
          description: The name of the institution that is visible to the user.
        popularity:
          example: 72644
          type: integer
          description: The number of member connections to the institution.
        small_logo_url:
          example: https://content.moneydesktop.com/storage/MD_AssetsIpad%20Logos/50x50/INS-1572a04c-912b-59bf-5841-332c7dfafaef_50x50.png
          description: The institution's logo (small size). This may be a generic logo if MX does not have a specific logo for the institution.
        supports_account_identification:
          example: true
          type: boolean
          description: Indicates whether account identification is available for this institution.
        supports_account_verification:
          example: true
          type: boolean
          description: Indicates whether account verification is available for this institution.
        supports_oauth:
          example: true
          type: boolean
          description: This indicates whether the institution supports OAuth authentication.
        supports_transaction_history:
          example: false
          type: boolean
          description: Indicates whether the institution allows access to up to 24 months of transaction data.
        trouble_signing_in_url:
          example: https://www.mx.com/trouble-signing-in
          type: string
          description: The URL of the institution for helping users troubleshoot any other sign-in issue.
        updated_at:
          example: 2022-04-11T17:38:27+00:00
          description: Date and time the institution was updated, represented in ISO 8601 format with timestamp (e.g. 2015-04-13T12:01:23-00:00).
          type: string
        url: 
          example: https://www.mx.com
          description: The URL of the institution.
          type: string
    InstitutionResponseBody:
      properties:
        institution:
          "$ref": "#/components/schemas/InstitutionResponse"
        pagination:
          "$ref": "#/components/schemas/PaginationResponse"
      type: object
    InstitutionsResponseBody:
      properties:
        institutions:
          items:
            "$ref": "#/components/schemas/InstitutionResponse"
          type: array
      type: object 
    InstitutionRequestBody:
      properties: 
        institution:
          "$ref": "#/components/schemas/InstitutionRequest"  
      type: object
    InstitutionRequest:
      properties:
        account_types: 
          description: (Deprecated) This search parameter has been deprecated along with associated fields of the pattern has_*_accounts. It should not be used in searches. This returns only institutions which support the specified account types. Provided as a string of integers; search multiple account types by separating each account type with pipes
          example: deprecated
        name:
          description: Name of the financial instutition. 
          example: MX Bank
          type: string
        supports_account_identification: 
          description: This returns only institutions which support account identification.
          type: boolean
          example: false
        supports_account_verification:
          description: This returns only institutions which support account verification.
          example: false
          type: boolean
        supports_transaction_history: 
          description: This returns only institutions which support extended transaction history.
          example: true
          type: boolean
        url: 
          description: This returns only institutions which match the provided URL.
          example: https://mx.com
          type: string
    CredentialsResponse:
      properties:
        answer_field_type:
          nullable: true
          example: null
          description: The field type for the answer field when this credential is used for MFA challenges.
        created_at:
          example: 2016-09-21T22:08:59+00:00
          description: Date and time the institution was created, represented in ISO 8601 format with timestamp
        display_name:
          example: null
          nullable: true
          description: The human-readable name to display for this credential field.
        display_order:
          example: 1
          description: The order in which this credential field should be displayed to the user.
        editable: 
          example: true
          type: boolean
          description: Indicates whether this credential field can be edited after initial creation.
        escaped:
          example: null
          nullable: true
          description: Indicates whether special characters in the credential value should be escaped.
        field_name:
          example: LOGIN
          description: The internal name of the credential field type (e.g., LOGIN, PASSWORD).
        field_type:
          example: 3
          description: The numeric identifier for the credential field type. See credential field types table for mappings.
        field_type_name:
          example: LOGIN
          description: The string name corresponding to the field_type numeric identifier.
        guid:
          example: CRD-9f61fb4c-912c-bd1e-b175-ccc7f0275cc1
          description: A unique identifier for the institution. Defined by MX.
        institution_guid:
          example: INS-1572a04c-912b-59bf-5841-332c7dfafaef
          description: The unique identifier for the institution this credential belongs to. Defined by MX.
        label:
          example: Username
          description: The label text to display next to the credential input field.
        max_length:
          example: null
          nullable: true
          description: The maximum character length allowed for this credential field value.
        meta_data:
          example: null
          nullable: true
          description: Additional metadata associated with this credential field.
        mfa:
          example: false
          type: boolean
          description: Indicates whether this credential is used for multi-factor authentication.
        optional:
          example: false
          type: boolean
          description: Indicates whether this credential field is optional when creating or updating a member.
        optional_mfa: 
          example: null
          nullable: true
          description: Indicates whether this credential is optional when answering MFA challenges.
        size:
          example: null
          nullable: true
          description: The display size (width) for the credential input field.
        updated_at:
          example: 2016-09-21T22:08:59+00:00
          type: string
          description: Date and time the credential was last updated, represented in ISO 8601 format with timestamp.
        value_identifier: 
          example: null
          nullable: true
          description: An identifier used to reference the credential value in certain contexts.
        value_mask: 
          example: null
          nullable: true
          description: A pattern or mask to apply when displaying the credential value (e.g., for passwords).
    CredentialsResponseBody:
      properties:
        credentials:
          items:
            "$ref": "#/components/schemas/CredentialsResponse"
          type: array
      type: object
    JobResponse:
      properties:
        created_at:
          example: 2022-06-16T18:42:30+00:00
          description: "Date and time the job was created, ISO 8601 format."
          type: string
        error_message:
          example: null
          nullable: true
          description: "Error message if the job returns an error."
          type: string
        error_message_code:
          example: null
          nullable: true
          description: "Error message code if the job returns an error."
          type: string
        finished_at:
          example: 2022-06-16T18:42:43+00:00
          description: "Date and time the job finished, ISO 8601 format."
          type: string
        guid:
          example: "JOB-e386a323-e452-47f2-b2fd-1ac3c18533de"
          description: "Unique identifier for the job, defined by MX."
          type: string
        institution_guid:
          example: INS-1572a04c-912b-59bf-5841-332c7dfafaef
          type: string
          description: "Unique identifier for the institution, defined by MX."
        is_authenticated:
          example: true
          type: boolean
          description: "If the member's credentials have been authenticated."
        member_guid:
          example: MBR-84ca0882-ad6c-4f10-817f-c8c0de7424fa
          type: string
          description: "Unique identifier for the member, defined by MX."
        started_at:
          example: 2022-06-16T18:42:30+00:00
          type: string
          description: "Date and time the job started, ISO 8601 format."
        status:
          example: 6
          description: "The status of the job. See Job Status for more information."
          type: integer
        status_name:
          example: COMPLETED
          description: "The name of the job status. See Job Status for more info."
          type: string
        updated_at:
          example: 2022-06-16T18:42:43+00:00
          type: string
          description: "Date and time the job was updated, ISO 8601 format."
        user_guid:
          example: USR-11141024-90b3-1bce-cac9-c06ced52ab4c
          type: string 
          description: "Unique identifier for the user, defined by MX."
    JobResponseBody:
      properties:
        job:
            "$ref": "#/components/schemas/JobResponse" 
      type: object
    MemberCredentialResponse:
      properties: 
        guid:
          description: The unique identifier for the member credential. Defined by MX.
          example: MCR-1b2f1146-d54f-510f-84fc-b4cb61cfdcff
          type: string
        credential_guid: 
          description: The unique identifier for the credential. Defined by MX.
          example: CRD-19d57512-81e3-1136-b84e-0c46b62a5d7a
          type: string
        member_guid:
          description: The unique identifier for the member. Defined by MX.
          example: MBR-7aa13bdb-2866-ba38-b326-d9fb32268f9b
          type: string
        created_at:
          description: Date and time the member credential was created, represented in ISO 8601 format with timestamp.
          example: 2013-05-02T11:19:35-00:00
          type: string
        updated_at:
          description: Date and time the member credential was last updated, represented in ISO 8601 format with timestamp.
          example: 2013-05-02T11:19:35-00:00
          type: string
        metadata:
          description: Additional information a partner can store on the member credential.
          example: Additional information
          type: string 
    MemberCredentialResponseBody:
      properties:
        member_credential:
          "$ref": "#/components/schemas/MemberCredentialResponse" 
      type: object
    AggregateMemberRequest:
      properties:
        include_holdings:
          description: When set to `false`, the aggregation will not gather holdings data. Defaults to `true`. 
          example: false
          type: boolean 
        include_transactions:
          description: When set to `false`, the aggregation will not gather transactions data. Defaults to `true`. 
          example: false
          type: boolean
    ChallengesResponse:
      properties:
        type:
          example: TEXT
        field_name:
          example: What city were you born in?
        guid:
          example: CRD-22f1b144-dde6-4c80-9d98-ca3c4900d173
          type: string
        label: 
          example: What city were you born in?
          type: string
    ChallengesResponseBody:
      properties:
        member:
          items:
            "$ref": "#/components/schemas/ChallengesResponse" 
      type: object
    MembersResponseBody:
      properties:
        members:
          items:
            "$ref": "#/components/schemas/MemberResponse" 
          type: array
      type: object
    ResumeRequest:
      properties:
        guid:
          example: institution-credential-guid
          type: string
        value:
          example: user-entered-value
          type: string
      required:
        - guid
        - value
    ResumeRequestBody:
      type: array
      items:
        type: object
        properties:
          challenges:
            items:
              "$ref": "#/components/schemas/ResumeRequest"  
    MerchantsResponseBody: 
      type: array
      items:
        type: object
        properties:
          merchants:
            items:
              "$ref": "#/components/schemas/MerchantResponse"  
          pagination:
            "$ref": "#/components/schemas/PaginationResponse"
    MerchantResponseBody:
      properties:
        merchant:
          "$ref": "#/components/schemas/MerchantResponse" 
      type: object
    MerchantResponse:
      properties:
        guid: 
          example: MCH-ad6d3405-ec03-721d-b0ca-eeceeebcb8b5
          type: string
          description: Unique identifier for the merchant. Defined by MX.
        logo_updated_at: 
          example: null
          description: The date and time the logo associated with this merchant was last updated, represented in ISO 8601 format with timestamp.
        logo_url: 
          example: https://content.mx.com/logos/merchants/MCH-ad6d3405-ec03-721d-b0ca-eeceeebcb8b5.png
          type: string
          description: A URL which will return the merchant's logo.
        name: 
          example: 1-800 Contacts
          type: string
          description: The name of the merchant.
        updated_at: 
          example: 2022-05-20T20:15:36+00:00
          type: string
          description: Date and time the merchant record was updated, represented in ISO 8601 format with timestamp.
        website_url: 
          example: https://www.1800contacts.com
          type: string
          description: The URL of the merchant's website.
        created_at: 
          example: 2018-07-16T16:31:35+00:00
          type: string
          description: Date and time the merchant record was created, represented in ISO 8601 format with timestamp.
    MonthlyCashFlowResponse:
      properties:
        guid: 
          example: MCF-4e431124-4a29-abf9-f059-ab232ac14dbf
          type: string
          description: Unique identifier for the monthly cash flow profile. Defined by MX.
        user_guid:
          example: USR-6c83f63c-efcc-0189-3f14-100f0bad378a
          type: string
          description: Unique identifier for the user the monthly cash flow profile is attached to. Defined by MX.
        budgeted_income: 
          example: 1200.12
          type: integer
          description: "The amount of the budgeted income for the user."
        budgeted_expenses:
          example: 1000.00
          type: integer
          description: "The amount of the budgeted expenses for the user."
        goals_contribution: 
          example: 150.00
          type: integer
          description: "The monthly dollar amount allocated for goals."
        estimated_goals_contribution:
          example: null
          type: integer
          description: "The estimated monthly dollar amount allocated for goals calculated from income and budgets."
        uses_estimated_goals_contribution: 
          example: false
          type: boolean
          description: "If the user uses estimated goals contribution, this field will be true. Otherwise, this field will be false."
    MonthlyCashFlowResponseBody:
      properties:
        monthly_cash_flow_profile:
          "$ref": "#/components/schemas/MonthlyCashFlowResponse" 
      type: object
    MonthlyCashFlowProfileRequest:
      properties:
        goals_contribution:
          example: 150
          type: integer
          description: The monthly dollar amount allocated for goals.
        uses_estimated_goals_contribution:
          example: false
          type: boolean
          description: Determines if the user uses estimated goals contribution.
    MonthlyCashFlowProfileRequestBody:
      properties: 
        monthly_cash_flow_profile:
          "$ref": "#/components/schemas/MonthlyCashFlowProfileRequest"
      type: object
    NotificationResponse:
      properties:
        created_on:
          description: "Date the notification was created, as provided by our data feed. Represented in ISO 8601 format (e.g. 2011-03-28)."
          type: string
          example: 2022-04-01T12:58:08+00:00
        deep_link_guid:
          description: "The unique identifier for objects that directly trigger a notification. EX: TRANSACTION_FEE_CHARGE and TRANSACTION_EXPENSE_LARGE notification types will have a transaction guid in this field."
          type: string
          example: BGT-e386a323-e452-47f2-b2fd-1ac3c18533de
        entity_guid:
          description: "The unique identifier of the entity that the notification is attached to."
          type: string
          example: BGT-e386a323-e452-47f2-b2fd-1ac3c18533de
        guid:
          description: "Unique identifier for the notification. Defined by MX."
          type: string
          example: TF-b53294f5-2356-4782-9f81-ae064c42b40a
        has_been_viewed:
          description: "If the notification has been viewed, this field will be true. Otherwise, this field will be false."
          type: boolean
          example: false
        notification_type:
          description: "Specific type of notification being sent. See notification types for more information."
          type: integer
          example: 2
        notification_type_name:
          description: "The name of the notification type. See notification types for more information."
          type: string
          example: BUDGET_OFF_TARGET
        subject:
          description: "The notification summary text. Usually the same text used for \"in-app\" or SMS deliverables."
          type: string
          example: You're projected to spend $1,920.07 more than you've budgeted for Fees & Charges. You've already spent $65.67 of $316.00.
        threshold:
          description: "The amount that needs to be succeeded before the user receives the notification."
          type: integer
          example: null
          nullable: true
    NotificationResponseBody:
      properties: 
        notification:
          "$ref": "#/components/schemas/NotificationResponse"
      type: object
    NotificationsResponseBody:
      properties: 
        notifications:
          items:
            "$ref": "#/components/schemas/NotificationResponse"
          type: array
      type: object
    DeliverableNotificationResponse:
      properties:
        guid:
          example: DNF-7aa13bdb-2866-ba38-b326-d9fb32268f9b
          description: Unique identifier for the notification. Defined by MX.
          type: string
        channel:
          example: 1
          description: The way the notification will be delivered to the user. 
          type: integer
        channel_name:
          example: EMAIL
          description: The channel name through which the notification will be delivered.
          type: string
        content:
          example: <html>...</html>
          description: The full content to be delivered in the given channel. For email, should be the fully rendered HTML body. 
          type: string
        has_been_delivered:
          description: If the deliverable has been delivered to the user, this field will be true. Otherwise, this field will be false.
          type: boolean
          example: false
        delivered_at:
          example: null
          description: Date and time the deliverable was delivered, represented in ISO 8601 format with timestamp .
          type: string
        delivered_on: 
          example: null  
          description: Date and time the deliverable was delivered, represented in ISO 8601 format with timestamp (e.g. 2015-04-13T12:01:23-00:00).
          type: string
    DeliverableNotificationResponseBody:
      properties: 
        deliverable_notification:
          "$ref": "#/components/schemas/DeliverableNotificationResponse"
      type: object
    DeliverableNotificationsResponseBody:
      properties: 
        deliverable_notifications:
          items:
            "$ref": "#/components/schemas/DeliverableNotificationResponse"
          type: array
      type: object
    DeliverableNotificationRequest:
      properties:
        content:
          description: The full content to be delivered in the given channel. 
          example: NTF-b53294f5-2356-4782-9f81-ae064c42b40a
          type: string
        channel:
          description: The [channel](/api-reference/nexus/reference/notifications-fields#deliverable-notification-channels) to use when delivering the given content. 
          example: 1
          type: integer
      required:
        - content
        - channel
    DeliverableNotificationRequestBody:
      properties: 
        deliverable:
          "$ref": "#/components/schemas/DeliverableNotificationRequest"
      type: object
    ScheduledPaymentResponse:
      properties:
        amount:
          type: integer
          description: "The amount of the scheduled_payment."
          example: 10.97
        created_at:
          description: "Date and time the scheduled_payment was created, represented in ISO 8601 format with timestamp (e.g., 2015-04-13T12:01:23-00:00)."
          type: string
          example: "2015-04-13T12:01:23-00:00"
        description:
          description: "A human-readable description of the scheduled_payment, e.g., Power bill."
          type: string
          example: "Power bill"
        guid:
          description: "The unique identifier for the scheduled_payment, such as a recurring utility bill or streaming subscription. Defined by MX."
          type: string
          example: "SCH-e386a323-e452-47f2-b2fd-1ac3c18533de"
        is_completed:
          description: "Indicates whether the scheduled_payment has been paid or not. This field is only applicable to one-time transactions."
          type: boolean
          example: false
        is_recurring:
          description: "Indicates whether the scheduled_payment is expected to repeat."
          type: boolean
          example: true
        merchant_guid:
          description: "The unique identifier for the merchant identified in the scheduled_payment."
          type: string
          example: MCH-5005cd15-c3e5-0e69-ec98-c95147860a45
        occurs_on:
          description: "The date on which the payment is scheduled to occur, given in ISO 8601 format without a timestamp."
          type: string
          example: 2018-12-13
        recurrence_day:
          description: "The day of the month where the next payment is expected to occur."
          type: integer
          example: 3
        recurrence_type:
          description: "The repeatable pattern for the scheduled_payment, given as an integer."
          type: integer
          example: 3
        recurrence_type_name:
          description: "The repeatable pattern for the scheduled_payment, given as a string."
          type: string
          example: "EVERY_MONTH"
        transaction_type:
          description: "Indicates whether the transaction is a credit or a debit. 1 = CREDIT, 2 = DEBIT."
          type: integer
          example: 2
        transaction_type_name:
          description: "Indicates whether the transaction is a credit or a debit. 1 = CREDIT, 2 = DEBIT."
          type: string
          example: DEBIT
        updated_at:
          description: Date and time the scheduled_payment was last updated, represented in ISO 8601 format with timestamp (e.g. 2015-04-13T12:01:23-00:00).
          type: string
          example: 2015-04-13T12:01:23-00:00
        user_guid:
          description: The unique identifier for the user associated with a scheduled_payment. Scheduled payments are attached to the user_guid, not individual accounts held by the user. Defined by MX.
          type: string
          example: USR-11141024-90b3-1bce-cac9-c06ced52ab4c
    ScheduledPaymentResponseBody:
      properties: 
        scheduled_payment:
          "$ref": "#/components/schemas/ScheduledPaymentResponse"
      type: object
    ScheduledPaymentsResponseBody:
      properties: 
        scheduled_payments:
          items:
            "$ref": "#/components/schemas/ScheduledPaymentResponse"
          type: array
      type: object
    ScheduledPaymentRequestBody:
      properties: 
        scheduled_payment:
          "$ref": "#/components/schemas/ScheduledPaymentRequest"
      type: object
    ScheduledPaymentRequest:
      properties:
        amount:
          type: integer
          description: The amount of the scheduled_payment.
          example: 10.97
        description:
          description: A human-readable description of the scheduled_payment, e.g., Power bill.
          type: string
          example: Power bill
        is_completed:
          description: Indicates whether the scheduled_payment has been paid or not. This field is only applicable to one-time transactions.
          type: boolean
          example: false
        is_recurring:
          description: Indicates whether the scheduled_payment is expected to repeat.
          type: boolean
          example: true
        merchant_guid:
          description: The unique identifier for the merchant identified in the scheduled_payment.
          type: string
          example: MCH-5005cd15-c3e5-0e69-ec98-c95147860a45
        occurs_on:
          description: The date on which the payment is scheduled to occur, given in ISO 8601 format without a timestamp.
          type: string
          example: 2018-12-13
        recurrence_day:
          description: The day of the month where the next payment is expected to occur.
          type: integer
          example: 3
        recurrence_type:
          description: The repeatable pattern for the scheduled_payment, given as an integer.
          type: integer
          example: 3
        transaction_type:
          description: Indicates whether the transaction is a credit or a debit. 1 = CREDIT, 2 = DEBIT.
          type: number
          example: 2
        transaction_type_name:
          description: Indicates whether the transaction is a credit or a debit. 1 = CREDIT, 2 = DEBIT.
          type: string
          example: DEBIT
      required:
        - amount
        - description
        - is_recurring
        - occurs_on
    SessionResponse:
      properties:
        token: 
          example: de2uS4jEwSYN7W0eoF_ZiLJQ7rtQaDbA9NkCZr_U4gujctbMw_WZYz7u6q3NMDlTYYCSSR7O3ec1fOP2wArN0g
          type: string
    SessionResponseBody: 
      properties: 
        session:
          "$ref": "#/components/schemas/SessionResponse"
      type: object
    SpendingPlanAccountResponse:
      properties:
        account_guid:
          example: ACT-97d3948f-ebe7-434a-9bd0-20b29d67c9d4
          type: string
          description: The unique identifier for the account associated with the `spending_plan_account`. Defined by MX.
        client_guid:
          example: CLT-024284fc-a6a7-42ee-b363-dab9343e3f72
          type: string
        created_at:
          example: 2023-04-27T23:14:16Z
          type: string
          description: The date and time at which the `spending_plan_account` was created.
        guid:
          example: SPA-c76e4a85-b2c4-4335-82b7-8f8b8f28c35a
          type: string
          description: The unique identifier for the `spending_plan_account`. Defined by MX.
        spending_plan_guid:
          example: SPL-dbfe201d-c341-4bff-93c0-62a918d0b600
          type: string
          description: The unique identifier for the `spending_plan` associated with the `spending_plan_account`. Defined by MX.
        updated_at:
          example: 2023-04-27T23:14:16Z
          type: string
          description: The date and time at which the `spending_plan_account` was most recently updated.
        user_guid:
          example: USR-72086f59-6684-4adf-8f29-c4d32db43cd7
          type: string
          description: The unique identifier for the user to which the `spending_plan_account` belongs. Defined by MX.
    SpendingPlanAccountsResponse:
      properties:
        spending_plan_accounts:
          items:
            "$ref": "#/components/schemas/SpendingPlanAccountResponse"
          type: array
      type: object
    SpendingPlanAccountResponseBody:
      properties:
        spending_plan_account:
            "$ref": "#/components/schemas/SpendingPlanAccountResponse"
      type: object
    SpendingPlanIterationResponseBody:
      properties:
        iteration:
            "$ref": "#/components/schemas/SpendingPlanIterationResponse"
        pagination:
          "$ref": "#/components/schemas/PaginationResponse"
      type: object
    SpendingPlanIterationsResponseBody:
      properties:
        iterations:
          items: 
            "$ref": "#/components/schemas/SpendingPlanIterationResponse"
          type: array
        pagination:
          "$ref": "#/components/schemas/PaginationResponse"
      type: object
    SpendingPlanIterationResponse:
      properties:
        created_at:
          example: "2016-10-13T18:08:00+00:00"
          nullable: true
          type: string
          description: The date and time at which the `spending_plan_iteration` was created.
        end_on:
          example: 2023-05-31
          nullable: true
          type: string
          description: The date the spending plan iteration ends.
        guid:
          example: SPI-848e6648-3fa3-4632-ac8f-e65f03167102
          nullable: true
          type: string
          description: The unique identifier for the `spending_plan_account`. Defined by MX.
        iteration_number:
          example: 1
          nullable: true
          type: integer
          description: The current iteration number for the spending plan iteration.
        spending_plan_guid:
          example: SPL-dbfe201d-c341-4bff-93c0-62a918d0b600
          nullable: true
          type: string
          description: The unique identifier for the `spending_plan` associated with the `spending_plan_account`. Defined by MX.
        start_on:
          example: 2023-05-01
          nullable: true
          type: string
          description: The date the spending plan iteration starts.
        updated_at:
          example: 2016-10-13T18:09:00+00:00
          nullable: true
          type: string
          description: The date and time at which the `spending_plan_account` was most recently updated.
        user_guid:
          example: USR-72086f59-6684-4adf-8f29-c4d32db43cd7
          nullable: true
          type: string
          description: The unique identifier for the user to which the `spending_plan_account` belongs. Defined by MX.
      type: object
    SpendingPlanIterationItemResponseBody:
      properties:
        iteration_item:
            "$ref": "#/components/schemas/SpendingPlanIterationItemResponse"
        pagination:
          "$ref": "#/components/schemas/PaginationResponse"
      type: object
    SpendingPlanIterationItemsResponseBody:
      properties:
        iteration_items:
          items:
            "$ref": "#/components/schemas/SpendingPlanIterationItemResponse"
          type: array
        pagination:
          "$ref": "#/components/schemas/PaginationResponse"
      type: object
    SpendingPlanIterationItemCreateRequestBody:
      properties:
        category_guid:
          example: CAT-40faf068-abb4-405c-8f6a-e883ed541fff
          type: string
        item_type:
          example: 1
          type: number
        planned_amount:
          example: 110
          type: number
        scheduled_payment_guid:
          example: SCP-c731988a-712f-4f83-9b3b-0aa5b3d5208b
          type: string
        top_level_category_guid:
          example: CAT-9588eaad-90a4-bb5c-66c8-1812503d0db8
          type: string
      required:
        - planned_amount
      type: object
    SpendingPlanIterationItemResponse:
      properties:
        actual_amount:
          example: 345.0
          nullable: true
          type: number
          description: The sum of the transactions associated with the `spending_plan_iteration_item`.
        category_guid:
          example: CAT-40faf068-abb4-405c-8f6a-e883ed541fff
          nullable: true
          type: string
          description: The unique identifier for the `category_guid` associated with the `spending_plan_iteration_item`. Defined by MX.
        created_at:
          example: "2016-10-13T18:08:00+00:00"
          nullable: true
          type: string
          description: The date and time at which the `spending_plan_iteration_item` was created.
        guid:
          example: SPL-e5f9a5bd-c5b3-4901-bdc0-62119b9db262
          nullable: true
          type: string
          description: The unique identifier for the `spending_plan_iteration_item`. Defined by MX.
        item_type:
          example: "0"
          nullable: true
          type: string
          description: "The type of transaction grouping for the `spending_plan_iteration_item`. 0 = RECURRING_EXPENSE, 1 = PLANNED_EXPENSE, 2 = OTHER_EXPENSE, 3 = INCOME."
        planned_amount:
          example: 345.0
          nullable: true
          type: number
          description: The total amount planned for a `spending_plan_iteration_item`.
        scheduled_payment_guid:
          example: SCP-54bed778-6600-4262-908c-8822f141cc30
          nullable: true
          type: string
          description: The unique identifier for the `scheduled_payment_guid` associated with the `spending_plan_iteration_item`. Defined by MX.
        spending_plan_iteration_guid:
          example: SPI-848e6648-3fa3-4632-ac8f-e65f03167102
          nullable: true
          type: string
          description: The unique identifier for the `spending_plan_iteration_item`. Defined by MX.
        top_level_category_guid:
          example: CAT-50af068-abb4-405c-8f6a-e883ed541f4f
          nullable: true
          type: string
          description: The unique identifier for the `top_level_category_guid` associated with the `spending_plan_iteration_item`. Defined by MX.
        transaction_guids:
          items:
            example: TRN-265abee9-889b-af6a-c69b-25157db2bdd9
            nullable: true
            type: string
          type: array
          description: An array of transaction GUIDs that are relevant to the `spending_plan_iteration_item`. Defined by MX.
        updated_at:
          example: 2016-10-13T18:09:00+00:00
          nullable: true
          type: string
          description: The date and time at which the `spending_plan_iteration_item` was most recently updated.
        user_guid:
          example: USR-fa7537f3-48aa-a683-a02a-b18940482f54
          nullable: true
          type: string
          description: The unique identifier for the user to which the `spending_plan_iteration_item` belongs. Defined by MX.
      type: object
    SpendingPlansResponseBody:
      properties:
        spending_plans:
          items:
            "$ref": "#/components/schemas/SpendingPlanResponse"
          type: array
        pagination:
          "$ref": "#/components/schemas/PaginationResponse"
      type: object
    SpendingPlanResponseBody:
      properties:
        spending_plan:
          "$ref": "#/components/schemas/SpendingPlanResponse"
      type: object
    SpendingPlanResponse:
      properties:
        created_at:
          example: 2016-10-13T18:08:00+00:00
          nullable: true
          type: string
          description: The date and time at which the `spending_plan` was created.
        current_iteration_number:
          example: 1
          nullable: true
          type: integer
          description: The current active associated `spending_plan_iteration` number for a given `spending_plan`.
        guid:
          example: SPL-e5f9a5bd-c5b3-4901-bdc0-62119b9db262
          nullable: true
          type: string
          description: The unique identifier for the `spending_plan`. Defined by MX.
        updated_at:
          example: "2016-10-13T18:09:00+00:00"
          nullable: true
          type: string
          description: The date and time at which the `spending_plan` was most recently updated.
        user_guid:
          example: USR-fa7537f3-48aa-a683-a02a-b18940482f54
          nullable: true
          type: string
          description: The unique identifier for the user to which the `spending_plan` belongs. Defined by MX.
      type: object
    TaggingResponse:
      properties:
        guid:
          example: TGN-007f5486-17e1-45fc-8b87-8f03984430fe
          nullable: true
          type: string
          description: Unique identifier for the tagging. Defined by MX.
        member_is_managed_by_user:
          example: false
          nullable: true
          type: boolean
          description: If the member the tagging belongs to is managed by the user, this field will be true. Otherwise, the member is managed by the MX partner and this field will be false. Members created with Nexus are considered to be managed by the user.
        tag_guid:
          example: TAG-40faf068-abb4-405c-8f6a-e883ed541fff
          nullable: true
          type: string
          description: Unique identifier for the tag. Defined by MX.
        transaction_guid:
          example: TRN-810828b0-5210-4878-9bd3-f4ce514f90c4
          nullable: true
          type: string
          description: Unique identifier for the transaction. Defined by MX.
        user_guid:
          example: USR-11141024-90b3-1bce-cac9-c06ced52ab4c
          nullable: true
          type: string
          description: Unique identifier for the user. Defined by MX.
      type: object 
    TaggingResponseBody:
      properties:
        taggings:
          items:
            "$ref": "#/components/schemas/TaggingResponse"
        pagination:
          "$ref": "#/components/schemas/PaginationResponse" 
      type: object
    TagsResponse:
      properties:
        guid:
          example: TAG-aef36e72-6294-4c38-844d-e573e80aed52
          nullable: true
          type: string
          description: Unique identifier for the tagging. Defined by MX.
        name:
          example: MY TAG
          nullable: true
          type: string
          description: The name of the tag. Created by the user.
        user_guid:
          example: USR-11141024-90b3-1bce-cac9-c06ced52ab4c
          nullable: true
          type: string
          description: Unique identifier for the user. Defined by MX.
      type: object
    TagsResponseBody:
      properties:
        tags:
          items:
            "$ref": "#/components/schemas/TagsResponse"
      type: object
    TransactionRuleCreateRequest:
      properties:
        category_guid:
          example: CAT-b1de2a04-db08-b6ed-f6fe-ca2f5b11c2d0
          type: string
        description:
          example: Wal-mart food storage
          type: string
        match_description:
          example: Wal-mart
          type: string
      required:
        - category_guid
        - match_description
      type: object
    TransactionRuleCreateRequestBody:
      properties:
        transaction_rule:
          "$ref": "#/components/schemas/TransactionRuleCreateRequest"
      type: object
    TransactionRuleResponse:
      properties:
        category_guid:
          example: CAT-b1de2a04-db08-b6ed-f6fe-ca2f5b11c2d0
          nullable: true
          type: string
        created_at:
          example: "2018-10-02T22:00:50+00:00"
          nullable: true
          type: string
        description:
          example: Wal-mart food storage
          nullable: true
          type: string
        guid:
          example: TXR-a080e0f9-a2d4-4d6f-9e03-672cc357a4d3
          nullable: true
          type: string
        match_description:
          example: Wal-mart
          nullable: true
          type: string
        updated_at:
          example: "2018-10-02T23:54:40+00:00"
          nullable: true
          type: string
        user_guid:
          example: USR-22fc3203-b3e6-8340-43db-8e50b2f56995
          nullable: true
          type: string
      type: object
    TransactionRuleResponseBody:
      properties:
        transaction_rule:
          "$ref": "#/components/schemas/TransactionRuleResponse"
      type: object
    TransactionRulesResponseBody:
      properties:
        transaction_rules:
          items:
            "$ref": "#/components/schemas/TransactionRuleResponse"
          type: array
      type: object
    TransactionCreateRequest:
      properties:
        amount:
          description: "The transaction amount. This will always be a positive value. The Transaction Type determines how the transaction affects the account."
          example: "61.11"
          type: string
        category_guid:
          description: "Unique identifier for the transaction category. Defined by MX."
          type: string
        currency_code:
          description: "The ISO 4217 three-character currency code (e.g. USD)."
          example: USD
          type: string
        date:
          description: "Date the transaction was created, represented in ISO 8601 format (e.g. 2011-03-28)."
          type: string
        description:
          description: "A human-readable description of the transaction."
          example: Whole foods
          type: string
        has_been_viewed:
          description: "If the transaction has been viewed, this field will be true. Otherwise, this field will be false."
          type: boolean
        is_hidden:
          description: "If the transaction is hidden, this field will be true. Otherwise, this field will be false."
          type: boolean
        memo:
          description: "The memo is additional descriptive information about the transaction."
          example: This is a memo
          type: string
        metadata:
          description: "Additional information a partner can store on the transaction. NOTE: this field may potentially be overwritten by the data provider when data is refreshed through aggregation. See the FAQs for more information."
          example: some metadata
          type: string
        skip_webhook:
          type: boolean
          description: When set to true, this parameter will prevent a webhook from being triggered by the request.
          example: true
        transaction_type:
          description: "The type of transaction (1 = CREDIT, 2 = DEBIT). See Transaction Types for more information."
          type: string
      required:
        - amount
        - date
        - description
        - transaction_type
    TransactionCreateRequestBody:
      properties:
        transaction:
          "$ref": "#/components/schemas/TransactionCreateRequest"
      type: object
    TransactionUpdateRequest:
      properties:
        category_guid:
          description: Unique identifier for the category of the transaction.
          type: string
          example: CAT-af671119-50a2-636c-ddfe-c794c38e8181
        currency_code:
          description: The ISO 4217 three-character currency code.
          type: string
        date:
          example: 2022-07-06
          description: Date of the transaction
          type: string
        has_been_split:
          example: false
          type: boolean
          description: Determines if the transaction has been split. 
        has_been_viewed:
          description: Determines if the transaction has been viewed.
          type: boolean
          example: false
        is_hidden:
          example: false
          type: boolean
          description: Determines if the transaction is excluded. 
        memo:
          description: Additional descriptive information about the transaction.
          type: string
          example: This is a memo. 
        metadata:
          description: Additional information a partner can store on the transaction. Note, this may potentially be overwritten by the data provider when data is refreshed through aggregation. See the FAQs for more information.
        skip_webhook:
          type: boolean
          description: When set to true, this parameter will prevent a webhook from being triggered by the request.
          example: true
        description:
          example: Regis Salon
          description: Description fo the transaction.
      type: object
    TransactionUpdateRequestBody:
      properties:
        transaction:
          "$ref": "#/components/schemas/TransactionUpdateRequest"
      type: object 
    UserResponse:
      properties:
        accepted_terms_and_conditions_at:
          type: string
          format: date-time
          example: "2020-08-31T16:12:36+00:00"
          description: The most recent date and time the end user accepted either initial or updated terms and conditions. Represented in ISO 8601 format with a timestamp (e.g., 2015-04-13T12:01:23-00:00).
        birthday:
          type: string
          format: date
          nullable: true
          example: "2011-03-28"
          description: Birthdate of user, represented in ISO 8601 format (e.g. 2011-03-28).
        credit_score:
          type: integer
          example: 0
          description: Credit score of the user.
        email:
          type: string
          example: "fake.email@mxexample.com"
          description: Email address of the user.
        email_is_verified:
          type: boolean
          example: false
          description: If the email is verified, this field will be true. Otherwise, this field will be false.
        external_guid:
          type: string
          example: "U-201709221210"
          description: Partner created identifier for the user.
        failed_token_login_attempts_count:
          type: integer
          example: 0
          description: Number of failed login attempts for the user. Defaults to 0.
        first_name:
          type: string
          example: "John"
          description: First name of the user.
        gender:
          type: integer
          nullable: true
          example: 0
          description: Gender of the user. Returns 0 for male and 1 for female.
        guid:
          type: string
          example: "USR-11141024-90b3-1bce-cac9-c06ced52ab4c"
          description: Unique identifier for the user. Defined by MX.
        has_accepted_terms_and_conditions:
          type: boolean
          example: true
          description: If the end user has accepted the initial terms and conditions, this field will be true. Otherwise, this field will be false. This field does not update.
        has_updated_terms_and_conditions:
          type: boolean
          example: false
          description: If updated terms and conditions are available for the end user, this field will be true. This field will return to false when the user has accepted the updated terms.
        is_disabled:
          type: boolean
          example: false
          description: If the user is disabled, this field will be true. Otherwise, this field will be false.
        is_restricted:
          type: boolean
          example: false
          description: If the user is restricted, this field will be true. Otherwise, this field will be false.
        last_name:
          type: string
          example: "Doe"
          description: Last name of the user.
        logged_in_at:
          type: string
          format: date-time
          example: "2022-07-08T16:28:13+00:00"
          description: Date and time the user last logged in, represented in ISO 8601 format with timestamp (e.g. 2015-04-13T12:01:23-00:00).
        metadata:
          type: string
          nullable: true
          example: null
          description: Additional information a partner can store on the user.
        phone:
          type: string
          nullable: true
          example: null
          description: Phone number of the user.
        phone_is_verified:
          type: boolean
          example: false
          description: Verifies the phone for the user. Returns true or false; defaults to false.
        postal_code:
          type: string
          example: ""
          description: US ZIP codes and Canadian postal codes are supported. Valid formats are 12345, 12345-6789, A1B2C3, or A1B 2C3.
        revision:
          type: integer
          example: 187
          description: The revision number of this user record.
      type: object
    UserResponseBody:
      properties:
        user:
          "$ref": "#/components/schemas/UserResponse"
      type: object
    MerchantLocation:
      properties:
        merchant_location:
          type: object
          properties:
            city:
              description: The city in which the merchant is located.
              type: string
              example: "Staten Island"
            country:
              description: The country in which the merchant is located.
              type: string
              example: "United States"
            created_at:
              description: Date and time the merchant location was created, represented in ISO 8601 format with timestamp (e.g., 2015-04-13T12:01:23-00:00).
              type: string
              format: date-time
              example: "2021-10-05T23:35:19+00:00"
            guid:
              description: The unique identifier for the merchant location. Defined by MX.
              type: string
              example: "MCL-c51b9d25-9733-4def-8929-2d5bb1b2b9f1"
            latitude:
              description: The latitude of the merchant location. This number is a signed decimal (e.g., Rio de Janeiro's latitude is -22.9027800 and Tokyo's latitude is 35.689488).
              type: number
              example: 40.5710098
            longitude:
              description: The longitude of the merchant location. This number is a signed decimal (e.g., Rio de Janeiro's longitude is -43.2075000 and Tokyo's longitude is 139.691706).
              type: number
              example: -74.1097041
            merchant_guid:
              description: The unique identifier for the merchant to which this location belongs. Defined by MX.
              type: string
              example: "MCH-adb8a6ab-5e96-c4ef-22b3-beb0e7a79b3c"
            phone_number:
              description: The phone number for the merchant location.
              type: string
              example: "(917) 426-0321"
            postal_code:
              description: The postal code in which the merchant is located.
              type: string
              example: "10306"
            region_code:
              description: The region in which the merchant is located; e.g., a U.S. state code such as UT.
              type: string
              example: "NY"
            street_address:
              description: The street address at which the merchant is located.
              type: string
              example: "2475 Hylan Blvd"
            updated_at:
              description: Date and time the merchant record was updated, represented in ISO 8601 format with timestamp (e.g., 2015-04-13T12:01:23-00:00).
              type: string
              format: date-time
              example: "2021-10-05T23:35:19+00:00"          
    AccountNumbersResponse:
      properties:
        account_guid:
          example: ACT-82ac32b4-06e6-48a9-8440-17e49bb3d720
          description: The unique identifier for the account associated with a particular set of account and routing numbers. Defined by MX.
          type: string
        account_number: 
          example: 1174165092
          description: The banking account number associated with a particular account.
          type: string
        institution_number:
          example: null
          description: The three-digit number identifying a Canadian banking institution.
          type: string
        member_guid:
          example: MBR-84ca0882-ad6c-4f10-817f-c8c0de7424fa
          description: The unique identifier for the member associated with a particular set of account and routing numbers. Defined by MX.
          type: string
        passed_validation:
          example: true
          description: This indicates whether the account and routing numbers passed MX's internal validity checks. If true, the account and routing or transit numbers are likely but not guaranteed to be valid. If false, either the account number, routing or transit number, or both are likely invalid.
          type: boolean
        routing_number:
          example: 998007868
          description: The routing number for the financial institution associated with the account.
          type: string
        transit_number:
          example: null
          description: The five-digit number identifying the branch of a Canadian financial institution.
          type: string
        user_guid:
          example: USR-11141024-90b3-1bce-cac9-c06ced52ab4c
          description: The unique identifier for the user associated with a particular set of account and routing numbers. Defined by MX.
          type: string
    AccountNumbersResponseBody:
      properties:
        account_numbers:
          items:
            "$ref": "#/components/schemas/AccountNumbersResponse" 
          type: array
      type: object
    MicrodepositRequest:
      type: object
      properties:
        micro_deposit:
          type: object
          required:
            - account_number
            - account_type_name
            - routing_number
          properties:
            first_name:
              type: string
              description: The end user's first name.
            last_name:
              type: string
              description: The end user's last name.
            email:
              type: string
              description: The end user's email address.
            account_name:
              type: string
              description: The name of the account associated with the verification.
            account_number:
              type: string
              description: The account number of the account associated with the microdeposit.
            account_type_name:
              type: string
              description: The name of the account type. Possible values are `CHECKING` and `SAVINGS`.
            routing_number:
              type: string
              description: The routing number for the account associated with the microdeposit.
    MicrodepositResponse:
      properties:
        micro_deposit:
          type: object
          properties:
            account_name:
              type: string
              example: My Test Account
              description: The name of the account associated with the verification.
            account_number:
              type: string
              example: "333312345"
              description: The account number of the account associated with the microdeposit.
            account_type:
              type: integer
              example: 1
              description: The general or parent type of the account associated with the microdeposit. Possible values are `1` (CHECKING) and `2` (SAVINGS).
            account_type_name:
              type: string
              example: CHECKING
              description: The name of the account type. Possible values are `CHECKING` and `SAVINGS`.
            created_at:
              type: string
              example: 2021-09-01T18:29:06+00:00
              description: The date and time the microdeposit was created, given in ISO 8601 format.
            email:
              type: string
              example: example@example.com
              description: The end user's email address.
            error_code:
              type: string
              example: null
              description: The code for the error.
            error_message:
              type: string
              example: null
              description: A message explaining the error.
            first_name:
              type: string
              example: Josh
              description: The end user's first name.
            guid:
              type: string
              example: MIC-09ba578e-8448-4f7f-89e1-b62ff2517edb
              description: The unique identifier for the microdeposit. Defined by MX.
            institution_name:
              type: string
              example: MX Bank
              description: An easy-to-read name for an institution associated with the microdeposit, e.g., "Chase Bank" or "Wells Fargo Bank."
            last_name:
              type: string
              example: James
              description: The end user's last name.
            routing_number:
              type: string
              example: 091000019
              description: The routing number for the account associated with the microdeposit.
            status:
              type: integer
              example: 1
              description: The current status of the microdeposit.
            status_name:
              type: string
              example: REQUESTED
              description: The name of the current status.
            updated_at:
              type: string
              example: 2021-09-01T18:29:07+00:00
              description: The date and time at which the microdeposit was last updated, given in ISO 8601 format.
            verified_at:
              type: string
              example: 2021-09-01T18:29:07+00:00
              description: The date and time at which the microdeposit status changed from `DEPOSITED` to `VERIFIED`.
    MicrodepositVerifyResponse:
      properties:
        micro_deposit:
          type: object
          properties:
            account_name:
              type: string
              example: My Test Account
              description: The name of the account associated with the verification.
            account_number:
              type: string
              example: 333312345
              description: The account number of the account associated with the microdeposit.
            account_type:
              type: integer
              example: 1
              description: The general or parent type of the account associated with the microdeposit. Possible values are `1` (CHECKING) and `2` (SAVINGS).
            account_type_name:
              type: string
              example: CHECKING
              description: The name of the account type. Possible values are `CHECKING` and `SAVINGS`.
            created_at:
              type: string
              example: 2021-09-01T18:29:06+00:00
              description: The date and time the microdeposit was created, given in ISO 8601 format.
            email:
              type: string
              example: example@example.com
              description: The end user's email address.
            error_code:
              type: string
              example: null
              description: The code for the error.
            error_message:
              type: string
              example: null
              description: A message explaining the error.
            first_name:
              type: string
              example: Josh
              description: The end user's first name.
            guid:
              type: string
              example: MIC-09ba578e-8448-4f7f-89e1-b62ff2517edb
              description: The unique identifier for the microdeposit. Defined by MX.
            institution_name:
              type: string
              example: MX Bank
              description: An easy-to-read name for an institution associated with the microdeposit, e.g., "Chase Bank" or "Wells Fargo Bank."
            last_name:
              type: string
              example: James
              description: The end user's last name.
            routing_number:
              type: string
              example: 091000019
              description: The routing number for the account associated with the microdeposit.
            status:
              type: integer
              example: 3
              description: The current status of the microdeposit.
            status_name:
              type: string
              example: VERIFIED
              description: The name of the current status.
            updated_at:
              type: string
              example: 2021-09-01T18:29:07+00:00
              description: The date and time at which the microdeposit was last updated, given in ISO 8601 format.
            verified_at:
              type: string
              example: 2021-09-01T18:29:07+00:00
              description: The date and time at which the microdeposit status changed from `DEPOSITED` to `VERIFIED`.
    PreinitiateResponse:
      properties:
        micro_deposit:
          type: object
          properties:
            account_name:
              description: The name of the account associated with the verification.
              type: string
              example: null
            account_number:
              description: The account number of the account associated with the microdeposit.
              type: string
              example: null
            account_type:
              description: The general or parent type of the account associated with the microdeposit. Possible values are `1` (CHECKING) and `2` (SAVINGS).
              type: integer
              example: null              
            account_type_name:
              description: The name of the account type. Possible values are `CHECKING` and `SAVINGS`.
              type: string
              example: null
            created_at:
              description: The date and time the microdeposit was created, given in ISO 8601 format.
              type: string
              example: 2021-09-01T18:29:06+00:0
            email:
              description: The end user's email address.
              type: string
              example: joshboy@example.com
            error_code:
              description: The code for the error.
              type: string
              example: null
            error_message:
              description: A message explaining the error.
              type: string
              example: null
            first_name:
              description: The end user's first name.
              type: string
              example: Josh
            guid:
              description: The unique identifier for the microdeposit. Defined by MX.
              type: string
              example: MIC-ecf60868-c1c7-4467-9b16-fd5fdc8ade39
            institution_name:
              description: An easy-to-read name for an institution associated with the microdeposit, e.g., "Chase Bank" or "Wells Fargo Bank."
              type: string
              example: null
            last_name:
              description: The end user's last name.
              type: string
              example: Boy
            routing_number:
              description: The routing number for the account associated with the microdeposit.
              type: string
              example: null
            status:
              description: The current status of the microdeposit.
              type: integer
              example: 9
            status_name:
              description: The name of the current status.
              type: string
              example: PREINITIATED
            updated_at:
              description: The date and time at which the microdeposit was last updated, given in ISO 8601 format.
              example: null
              type: string
            verified_at:
              description: The date and time at which the microdeposit status changed from `DEPOSITED` to `VERIFIED`.
              type: string
              example: null
    MicrodepositsResponse:
      properties: 
        micro_deposits:
          items:
            "$ref": "#/components/schemas/MicrodepositResponse"
          type: array
      type: object
    PaginationResponse:
      properties:
        current_page:
          example: 1
          type: integer
        per_page:
          example: 25
          type: integer
        total_entries:
          example: 1
          type: integer
        total_pages:
          example: 1
          type: integer
    Beats:
      properties:
        beats:
          items:
            type: object
            properties:
              account_guids:
                type: array
                items:
                  type: string
                  example: ACT-2746bc4c-ee78-5631-5a33-062dea4b0437
                description: An array of account GUIDs that are relevant to the information delivered in the beat.
              created_at:
                type: string
                example: 2020-03-31T18:41:32+00:00
                description: The date and time the beat was created, given in ISO 8601 with a timestamp.
              description:
                type: string
                example: It looks like your most recent bill from Comcast was lower than it normally is. You paid $31.26, which is 28% lower than your recent average payment of $43.43.
                description: The human-readable information being delivered to the end user.
              digest:
                type: string
                example: 87+y8ZLvW/TIr5tbknUtGg==
                description: A unique identifier derived from inputs to the beat which ensures beats are not duplicated.
              displayed_at:
                type: string
                example: 2020-03-03T17:55:40+00:00
                description: The date and time at which the beat was displayed to the end user, given in ISO 8601 with a timestamp.
              guid:
                type: string
                example: BET-725b097e-ab18-43ca-a7fe-3c98c5a1db08
                description: The unique identifier for the beat. Defined by MX.
              has_been_displayed:
                type: boolean
                example: false
                description: This indicates whether the beat has been shown to the end user.
              is_dismissed:
                type: boolean
                example: false
                description: This indicates whether the beat has been dismissed by the end user.
              is_relevant:
                type: boolean
                example: false
                description: This indicates whether a beat still contains information that is relevant, meaningful, or useable to the end user. For example, an `OverdraftWarning` will have `is_relevant` set to `false` if a large deposit is made into the associated account after the beat was created. Any beat which has already been displayed to or dismissed by the end user will be set to `false`. There are numerous examples and conditions.
              primary_account_guid:
                type: string
                example: ACT-2746bc4c-ee78-5631-5a33-062dea4b0437
                description: The unique identifier for the account most relevant to the information delivered in the beat.
              primary_transaction_guid:
                type: string
                example: TRN-3e5919b3-c9c9-4346-b187-2ff235d371ec
                description: The unique identifier for the transaction most relevant to the information delivered in the beat.
              template: 
                type: string
                example: BillAmountNotStandard
                description: A short label for the type of beat being delivered, e.g., `SubscriptionPriceIncrease` or `MonthlyCategoryTotal`.
              title:
                type: string
                example: Bill lower than usual
                description: The title for the specific beat, e.g., `Price Increase` or `Paycheck Deposit`.
              transaction_guids:
                type: array
                items:
                  type: string 
                  example: TRN-3e5919b3-c9c9-4346-b187-2ff235d371ec
                description: An array of transaction GUIDs that are relevant to the information delivered in the beat.
              updated_at: 
                type: string
                example: 2020-03-31T18:41:32+00:00
                description: The date and time the beat was last updated, given in ISO 8601 without a timestamp.
              user_guid:
                type: string
                example: USR-29dfffe5-296e-4784-89fd-6e81c8e682e6
                description: The unique identifier for the user to which the beat belongs. Defined by MX.
    Beat:
      properties:
        beat:
          type: object
          properties:
            account_guids:
              type: array
              items:
                type: string
                example: ACT-2746bc4c-ee78-5631-5a33-062dea4b0437
              description: An array of account GUIDs that are relevant to the information delivered in the beat.
            created_at:
              type: string
              example: 2020-03-31T18:41:32+00:00
              description: The date and time the beat was created, given in ISO 8601 with a timestamp.
            description:
              type: string
              example: It looks like your most recent bill from Comcast was lower than it normally is. You paid $31.26, which is 28% lower than your recent average payment of $43.43.
              description: The human-readable information being delivered to the end user.
            digest:
              type: string
              example: 87+y8ZLvW/TIr5tbknUtGg==
              description: A unique identifier derived from inputs to the beat which ensures beats are not duplicated.
            displayed_at:
              type: string
              example: 2020-03-03T17:55:40+00:00
              description: The date and time at which the beat was displayed to the end user, given in ISO 8601 with a timestamp.
            guid:
              type: string
              example: BET-725b097e-ab18-43ca-a7fe-3c98c5a1db08
              description: The unique identifier for the beat. Defined by MX.
            has_been_displayed:
              type: boolean
              example: false
              description: This indicates whether the beat has been shown to the end user.
            is_dismissed:
              type: boolean
              example: false
              description: This indicates whether the beat has been dismissed by the end user.
            is_relevant:
              type: boolean
              example: false
              description: This indicates whether a beat still contains information that is relevant, meaningful, or useable to the end user. For example, an `OverdraftWarning` will have `is_relevant` set to `false` if a large deposit is made into the associated account after the beat was created. Any beat which has already been displayed to or dismissed by the end user will be set to `false`. There are numerous examples and conditions.
            primary_account_guid:
              type: string
              example: ACT-2746bc4c-ee78-5631-5a33-062dea4b0437
              description: The unique identifier for the account most relevant to the information delivered in the beat.
            primary_transaction_guid:
              type: string
              example: TRN-3e5919b3-c9c9-4346-b187-2ff235d371ec
              description: The unique identifier for the transaction most relevant to the information delivered in the beat.
            template: 
              type: string
              example: BillAmountNotStandard
              description: A short label for the type of beat being delivered, e.g., `SubscriptionPriceIncrease` or `MonthlyCategoryTotal`.
            title:
              type: string
              example: Bill lower than usual
              description: The title for the specific beat, e.g., `Price Increase` or `Paycheck Deposit`.
            transaction_guids:
              type: array
              items:
                type: string 
                example: TRN-3e5919b3-c9c9-4346-b187-2ff235d371ec
              description: An array of transaction GUIDs that are relevant to the information delivered in the beat.
            updated_at: 
              type: string
              example: 2020-03-31T18:41:32+00:00
              description: The date and time the beat was last updated, given in ISO 8601 without a timestamp.
            user_guid:
              type: string
              example: USR-29dfffe5-296e-4784-89fd-6e81c8e682e6
              description: The unique identifier for the user to which the beat belongs. Defined by MX.
security:
  - sessionToken: [ ]
servers:
  - url: https://int-data.moneydesktop.com/
  - url: https://data.moneydesktop.com/
tags:
  - name: accounts
  - name: beats
  - name: budgets
  - name: categories
  - name: extended transaction history
  - name: goals
  - name: holdings
  - name: identity
  - name: insights
  - name: institutions
  - name: jobs
  - name: member credentials
  - name: members
  - name: merchants
  - name: microdeposits
  - name: monthly cash flow profile
  - name: notifications
  - name: scheduled payments
  - name: sessions
  - name: spending plan
  - name: taggings
  - name: tags
  - name: transaction rules
  - name: transactions
  - name: user
  - name: verification