Finicity Consumer Foresight API

Generate consumer foresight analytics reports

Operations 3

POST /decisioning/customers/{customerId}/reports/payment-risk-insights/userTypes/{userType} Generate Payment Risk Insights Report for the Customer #
POST /decisioning/customers/{customerId}/reports/foresight-analytics/userTypes/{userType} Generate foresight analytics non-CRA report for the customer - Personal #
POST /decisioning/reports/foresight-analytics/userTypes/{userType} Generate Non CRA Foresight Analytics Report Using 1st/3rd Party Transaction Data #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/finicity-consumer-foresight-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

finicity-consumer-foresight-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Open Finance Consumer Foresight API
  description: 'OpenAPI specification for Finicity APIs.


    Open Finance (formerly Open Banking) solutions in the US are provided by

    Finicity, a Mastercard company.'
  contact:
    name: API Support
    email: apisupport@mastercard.com
    url: https://developer.mastercard.com/open-finance-us/documentation/support/
  version: 1.43.0
servers:
- url: https://api.finicity.com
  description: Production
security:
- FinicityAppKey: []
  FinicityAppToken: []
tags:
- name: Consumer Foresight
  description: Generate consumer foresight analytics reports
paths:
  /decisioning/customers/{customerId}/reports/payment-risk-insights/userTypes/{userType}:
    post:
      tags:
      - Consumer Foresight
      summary: Generate Payment Risk Insights Report for the Customer
      description: "Generate a Payment Risk Insights report (PRI). This service retrieves up to 2 years of transaction history from connected accounts to generate a Payment Risk Insights report for a personal or small business customer. To deliver insights into a consumer or small business's financial health and payment risk\n\nPayment Risk Insights generates a single 2 digit score that helps predict the probability that a consumer or small business will experience a future payment risk (missed recurring payment). The Score represents four segments of risk ranging from low to high. The report also includes key financial health attributes (cash flow, balances, spending, patterns etc.), and payment risk attributes (NSF occurrences, withdrawals, and recurring expenses, etc.). \n\nBefore calling this API, a consumer or business may need to be created for the given customer ID based on the user type.\n\nThis is a premium service. The billable event is the successful generation of a PRI report. \n\nSupported account types are checking and savings.\n\n_Supported regions_: ![\U0001F1FA\U0001F1F8](https://flagcdn.com/20x15/us.png)"
      operationId: GeneratePaymentRiskInsightsReport
      parameters:
      - $ref: '#/components/parameters/CustomerIdParameter'
      - $ref: '#/components/parameters/UserTypeParameter'
      - $ref: '#/components/parameters/ReportCallbackUrlParameter'
      requestBody:
        $ref: '#/components/requestBodies/GeneratePaymentRiskInsightsReportRequest'
      responses:
        '202':
          $ref: '#/components/responses/GeneratePaymentRiskInsightsReportResponse'
        '400':
          $ref: '#/components/responses/BadRequestErrorResponse'
        '401':
          $ref: '#/components/responses/UnauthorizedErrorResponse'
        '403':
          $ref: '#/components/responses/SecurityFreezeErrorResponse'
        '404':
          $ref: '#/components/responses/ResourceNotFoundErrorResponse'
  /decisioning/customers/{customerId}/reports/foresight-analytics/userTypes/{userType}:
    post:
      tags:
      - Consumer Foresight
      summary: Generate foresight analytics non-CRA report for the customer - Personal
      description: 'Generate a foresight analytics non-CRA report for a given customer. The report includes benchmarking and forecasting data for a customer based on inputs of account and transaction data as permitted by the customer, and segments (e.g., postal code) provided by the partner. A consumer is not required to generate this report.


        If no account type of checking, credit card, or savings is found, the service will return an HTTP 400 Bad Request.


        This is a premium service, billable per every successful API call for non-testing customers. A successful call to this API will generate a foresight analytics report which can be retrieved via Get Report by Customer.


        _Supported regions_: ![🇺🇸](https://flagcdn.com/20x15/us.png)'
      operationId: GenerateForesightAnalyticsNonCraReport
      parameters:
      - $ref: '#/components/parameters/CustomerIdParameter'
      - $ref: '#/components/parameters/PersonalUserTypeParameter'
      - $ref: '#/components/parameters/ReportCallbackUrlParameter'
      requestBody:
        $ref: '#/components/requestBodies/GenerateForesightAnalyticsNonCraReportRequest'
      responses:
        '202':
          $ref: '#/components/responses/GenerateForesightAnalyticsNonCraReportResponse'
        '400':
          $ref: '#/components/responses/BadRequestErrorResponse'
        '401':
          $ref: '#/components/responses/UnauthorizedErrorResponse'
        '403':
          $ref: '#/components/responses/SecurityFreezeErrorResponse'
        '404':
          $ref: '#/components/responses/ResourceNotFoundErrorResponse'
  /decisioning/reports/foresight-analytics/userTypes/{userType}:
    post:
      tags:
      - Consumer Foresight
      summary: Generate Non CRA Foresight Analytics Report Using 1st/3rd Party Transaction Data
      description: 'Generate a non-CRA Foresight Analytics report for the provided customer. The report includes benchmarking and forecasting insights into the customer''s spending habits compared against other Mastercard profiles across various inputted segments.


        To use third-party data permissioned via Data Connect, provide a `customerId` value in the request body.


        To use first-party data you submitted via Data Enrichment, provide the `externalCustomerId` you supplied when uploading the data.


        You can use third-party data, first-party data, or both in the same request.


        Supported account types are checking, savings and credit card. A consumer is not required to generate this report.


        This is a premium service, billable per every successful API call. A successful call to this API will generate a Foresight Analytics report which is retrieved by calling Get Report by Report ID.


        _Supported regions_: ![🇺🇸](https://flagcdn.com/20x15/us.png)'
      operationId: GenerateForesightAnalyticsFirstThirdPartyNonCraReport
      parameters:
      - $ref: '#/components/parameters/PersonalUserTypeParameter'
      - $ref: '#/components/parameters/ReportCallbackUrlParameter'
      requestBody:
        $ref: '#/components/requestBodies/GenerateForesightAnalyticsFirstThirdPartyNonCraReportRequest'
      responses:
        '202':
          $ref: '#/components/responses/GenerateForesightAnalyticsFirstThirdPartyNonCraReportResponse'
        '400':
          $ref: '#/components/responses/BadRequestErrorResponse'
        '401':
          $ref: '#/components/responses/UnauthorizedErrorResponse'
        '403':
          $ref: '#/components/responses/SecurityFreezeErrorResponse'
        '404':
          $ref: '#/components/responses/ResourceNotFoundErrorResponse'
components:
  examples:
    MissingFinicityAppKeyExample:
      value:
        code: '10026'
        message: Missing parameter (Finicity-App-Key)
    ResellerInvalidDateRangeGreaterThan31DaysExample:
      value:
        code: '10100'
        message: 'RESELLER_BILLING_REPORT: Invalid date range - It is more than 31 days'
    ResellerNoReportForPartnerExample:
      value:
        code: '10100'
        message: Cannot find resellerBilling reports with id 2445581559892.
    ResellerInvalidDateRangeGreaterThanEndDateExample:
      value:
        code: '10100'
        message: 'RESELLER_BILLING_REPORT: Invalid date range - startDate is greaterThan endDate'
    BothCraAndFtcPurposeTrueExample:
      value:
        code: '10100'
        status: '400'
        message: forCRAPurpose and forFTCPurpose may not both be TRUE.
    SecurityFreezeErrorExample:
      value:
        code: '10405'
        status: '403'
        message: The active security freeze for this consumer exists.
    GenerateForesightAnalyticsFirstThirdPartyNonCraReportRequestExample:
      value:
        customerId: 1001483250
        externalCustomerId: 1234abcd
        fromDate: 1580558400
        accountIds: 1000535275 1000535276
        analyticsReportData:
          forCraPurpose: false
          timeIntervalTypes:
          - MONTHLY_CALENDAR
          segments:
            geolocation:
            - label: POSTAL_CODE
              value: 84123
          analytics:
          - benchmarking
          - forecasting
          income: 1000
          age: 26
    MissingFieldExample:
      value:
        code: '10005'
        message: Missing parameter (partnerId)
    GeneratePaymentRiskInsightsBusinessReportFtcRequestBodyExample:
      value:
        analyticsReportData:
          forCraPurpose: false
          forFtcPurpose: true
          applicantIsPersonalGuarantor: false
          timeIntervalTypes:
          - MONTHLY_CALENDAR
        reportCustomFields:
        - label: loanID
          value: '12345'
          shown: true
    ResellerInvalidDateRangeLessThanZeroExample:
      value:
        code: '10100'
        message: 'RESELLER_BILLING_REPORT: Invalid date range - start or end date less than or equal to zero'
    InvalidConsumerEmailExample:
      value:
        code: '10100'
        message: Invalid format for field consumer.email.
    GeneratePaymentRiskInsightsBusinessReportFtcResponseExample:
      value:
        id: sd1j45yn37wr-pribftc
        customerType: active
        customerId: 1275320
        requestId: 7a7qyps2iy
        requesterName: Decisioning API
        createdDate: 1579819592
        title: Mastercard Open Banking Payment Risk Insights
        constraints:
          analyticsReportData:
            forCraPurpose: false
            forFtcPurpose: true
            applicantIsPersonalGuarantor: false
            timeIntervalTypes:
            - MONTHLY_CALENDAR
          accountIds:
          - '1000535275'
          - '1000535276'
          fromDate: 1673034682
          reportCustomFields:
          - label: loanID
            value: '12345'
            shown: true
          - label: loanType
            value: car
            shown: false
          - label: vendorName
            value: PSC Finance
            shown: false
        type: pribftc
        status: inProgress
    BadCredentialsExample:
      value:
        code: '24302'
        message: Bad credentials
    InvalidForesightReportRequestExample:
      value:
        code: '10100'
        message: At least one of customerId or externalCustomerId must be provided; both are also allowed.
    NoRegisteredApplicationExample:
      value:
        code: '50051'
        message: No registered partner applications found.
    ExpiredFinicityAppTokenExample:
      value:
        code: '10023'
        message: Expired (Finicity-App-Token)
    GeneratePaymentRiskInsightsPersonalCRAReportResponseExample:
      value:
        id: sd1j45yn37wr-pripcra
        customerType: active
        customerId: 1275320
        requestId: 7a7qyps2iy
        requesterName: Decisioning API
        createdDate: 1579819592
        title: Mastercard Open Banking Payment Risk Insights
        consumerId: 3f7ff2cf0ffb3d0cd59875e070c9b1d4
        consumerSsn: '1234'
        constraints:
          analyticsReportData:
            forCraPurpose: true
            timeIntervalTypes:
            - MONTHLY_CALENDAR
          accountIds:
          - '1000535275'
          - '1000535276'
          fromDate: 1673034682
          reportCustomFields:
          - label: loanID
            value: '12345'
            shown: true
          - label: loanType
            value: car
            shown: false
          - label: vendorName
            value: PSC Finance
            shown: false
        type: pripcra
        status: inProgress
    InvalidFieldExample:
      value:
        code: '10010'
        status: '400'
        message: Customer ID does not exist or does not belong to this partner
        user_message: One or more of the fields could not be validated. Please ensure you have entered the correct data.
        tags: ''
    InvalidValueExample:
      value:
        code: '1618'
        message: Negative or invalid value entered. Please use positive numbers only.
    InvalidConsumerSSNExample:
      value:
        code: '10100'
        message: Invalid format for field consumer.ssn.  Required format is 9 digits.
    InvalidFinicityAppTokenExample:
      value:
        code: '10022'
        message: Invalid (Finicity-App-Token)
    NoAccountForInstitutionLoginIdExample:
      value:
        code: '38007'
        message: Customer does not have any accounts associated with institutionLoginId.
    CustomerNotFoundExample:
      value:
        code: '14001'
        message: Customer not found.
    GeneratePaymentRiskInsightsPersonalNonCRAReportRequestBodyExample:
      value:
        analyticsReportData:
          forCraPurpose: false
          timeIntervalTypes:
          - MONTHLY_CALENDAR
        reportCustomFields:
        - label: loanID
          value: '12345'
          shown: true
    ResellerNoDataForPartnerExample:
      value:
        code: '10100'
        message: 'RESELLER_BILLING_REPORT: Reports not found 2445583947903 resellerBilling reports'
    ResellerInvalidDateRangeExample:
      value:
        code: '10100'
        message: 'RESELLER_BILLING_REPORT: Invalid date range - start or end date is empty or null'
    ExpiredTokenExample:
      value:
        code: '10023'
        message: Expired (Finicity-App-Token)
    ResourceNotFoundExample:
      value:
        code: '14001'
        message: Resource not found.
    ConsumerNotFoundExample:
      value:
        code: '10100'
        message: Cannot find consumer with id 1234.
    GenericBadRequestExample:
      value:
        code: '14020'
        message: Bad request.
    NoConsumerForCustomerExample:
      value:
        code: '10100'
        message: Cannot find consumer for customer with id 5011115315."
    GeneratePaymentRiskInsightsPersonalNonCRAReportResponseExample:
      value:
        id: sd1j45yn37wr-pripnoncra
        customerType: active
        customerId: 1275320
        requestId: 7a7qyps2iy
        requesterName: Decisioning API
        createdDate: 1579819592
        title: Mastercard Open Banking Payment Risk Insights
        constraints:
          analyticsReportData:
            forCraPurpose: false
            timeIntervalTypes:
            - MONTHLY_CALENDAR
          accountIds:
          - '1000535275'
          - '1000535276'
          fromDate: 1673034682
          reportCustomFields:
          - label: loanID
            value: '12345'
            shown: true
          - label: loanType
            value: car
            shown: false
          - label: vendorName
            value: PSC Finance
            shown: false
        type: pripnoncra
        status: inProgress
    InvalidConsumerPhoneExample:
      value:
        code: '10100'
        message: Invalid format for field consumer.phone.
    GeneratePaymentRiskInsightsBusinessNonCRAReportResponseExample:
      value:
        id: sd1j45yn37wr-pribnoncra
        customerType: active
        customerId: 1275320
        requestId: 7a7qyps2iy
        requesterName: Decisioning API
        createdDate: 1579819592
        title: Mastercard Open Banking Payment Risk Insights
        constraints:
          analyticsReportData:
            forCraPurpose: false
            forFtcPurpose: false
            applicantIsPersonalGuarantor: false
            timeIntervalTypes:
            - MONTHLY_CALENDAR
          accountIds:
          - '1000535275'
          - '1000535276'
          fromDate: 1673034682
          reportCustomFields:
          - label: loanID
            value: '12345'
            shown: true
          - label: loanType
            value: car
            shown: false
          - label: vendorName
            value: PSC Finance
            shown: false
        type: pribnoncra
        status: inProgress
    GenerateForesightAnalyticsFirstThirdPartyNonCraReportResponseExample:
      value:
        id: 247th25xwyhd-farpbfnoncra
        customerType: testing
        customerId: 1001483250
        externalCustomerId: 1234abcd
        requestId: y3pic4xhda
        requesterName: Intuit Facade Demo (KEEP)
        createdDate: 1739824892
        title: Mastercard Open Banking Foresight Analytics
        reportPin: XYeyLA
        type: farpbfnoncra
        status: inProgress
        constraints:
          customerId: 1001483250
          externalCustomerId: 1234abcd
          analyticsReportData:
            forCraPurpose: false
            timeIntervalTypes:
            - MONTHLY_CALENDAR
            segments:
              geolocation:
              - label: POSTAL_CODE
                value: 84123
            analytics:
            - benchmarking
            - forecasting
            income: 1000
            age: 26
    AccountTypeNotSupportedExample:
      value:
        code: '14020'
        message: Bad request. (Account type not supported).
    GenerateForesightAnalyticsNonCraReportResponseExample:
      value:
        id: 247th25xwyhd-farpbfnoncra
        customerType: testing
        customerId: 1001483250
        requestId: y3pic4xhda
        requesterName: Intuit Facade Demo (KEEP)
        createdDate: 1739824892
        title: Mastercard Open Banking Foresight Analytics
        reportPin: XYeyLA
        type: farpbfnoncra
        status: inProgress
        constraints:
          analyticsReportData:
            forCraPurpose: false
            timeIntervalTypes:
            - MONTHLY_CALENDAR
            segments:
              geolocation:
              - label: POSTAL_CODE
                value: 84123
            analytics:
            - benchmarking
            - forecasting
            income: 1000
            age: 26
    PermissiblePurposeCodeExample:
      value:
        code: '10100'
        status: '400'
        message: Permissible Purpose Code is required
    GenerateForesightAnalyticsNonCraReportRequestExample:
      value:
        fromDate: 1580558400
        accountIds: 1000535275 1000535276
        analyticsReportData:
          forCraPurpose: false
          timeIntervalTypes:
          - MONTHLY_CALENDAR
          segments:
            geolocation:
            - label: POSTAL_CODE
              value: 84123
          analytics:
          - benchmarking
          - forecasting
          income: 1000
          age: 26
    GeneratePaymentRiskInsightsBusinessCRAReportRequestBodyExample:
      value:
        analyticsReportData:
          forCraPurpose: true
          forFtcPurpose: false
          applicantIsPersonalGuarantor: true
          timeIntervalTypes:
          - MONTHLY_CALENDAR
        reportCustomFields:
        - label: loanID
          value: '12345'
          shown: true
    ResellerPartnerNotAuthorizedExample:
      value:
        code: '10100'
        message: 'RESELLER_BILLING_REPORT: Partner is not authorized to access resellerBilling reports for partnerId 2445583947903'
    GeneratePaymentRiskInsightsBusinessNonCRAReportRequestBodyExample:
      value:
        analyticsReportData:
          forCraPurpose: false
          forFtcPurpose: false
          applicantIsPersonalGuarantor: false
          timeIntervalTypes:
          - MONTHLY_CALENDAR
        reportCustomFields:
        - label: loanID
          value: '12345'
          shown: true
    CustomerReportLimitExceedExample:
      value:
        code: '20400'
        message: The max report generation limit was exceeded for this customer.
    GeneratePaymentRiskInsightsPersonalCRAReportRequestBodyExample:
      value:
        analyticsReportData:
          forCraPurpose: true
          timeIntervalTypes:
          - MONTHLY_CALENDAR
        reportCustomFields:
        - label: loanID
          value: '12345'
          shown: true
    GeneratePaymentRiskInsightsBusinessCRAReportResponseExample:
      value:
        id: sd1j45yn37wr-pribcra
        customerType: active
        customerId: 1275320
        requestId: 7a7qyps2iy
        requesterName: Decisioning API
        createdDate: 1579819592
        title: Mastercard Open Banking Payment Risk Insights
        consumerId: 3f7ff2cf0ffb3d0cd59875e070c9b1d4
        consumerSsn: '1234'
        constraints:
          analyticsReportData:
            forCraPurpose: true
            forFtcPurpose: false
            applicantIsPersonalGuarantor: true
            timeIntervalTypes:
            - MONTHLY_CALENDAR
          accountIds:
          - '1000535275'
          - '1000535276'
          fromDate: 1673034682
          reportCustomFields:
          - label: loanID
            value: '12345'
            shown: true
          - label: loanType
            value: car
            shown: false
          - label: vendorName
            value: PSC Finance
            shown: false
        type: pribcra
        status: inProgress
    InvalidExperienceFieldExample:
      value:
        code: '10010'
        status: '400'
        message: '"experience" must be a valid GUID'
        user_message: One or more of the fields could not be validated. Please ensure you have entered the correct data.
        tags: ''
    MissingFinicityAppTokenExample:
      value:
        code: '10024'
        message: Missing parameter (Finicity-App-Token)
  schemas:
    SecurityFreezeErrorMessage:
      required:
      - code
      - message
      type: object
      properties:
        code:
          type: integer
          description: 'An error code for security freeze. Useful links: [API Errors](https://developer.mastercard.com/open-finance-us/documentation/errors/), [Aggregation Status Codes](https://developer.mastercard.com/open-finance-us/documentation/products/manage/aggregation-status-codes/).'
          format: int32
          example: 10405
        status:
          type: string
          description: A status code
          example: '403'
        message:
          type: string
          description: An error message
          example: The active security freeze for this consumer exists.
    EndUserUrl:
      type: string
      description: Reseller end user URL
      minLength: 2
      maximum: 999
      example: testurl.com
    ReportType:
      description: 'A report type. Possible values:


        * `voi`


        * `voa`


        * `voaHistory`


        * `history`


        * `voieTxVerify`


        * `voieWithReport`


        * `voieWithInterview`


        * `voieWithStatement`


        * `paystatement`


        * `preQualVoa`


        * `assetSummary`


        * `voie`


        * `transactions`


        * `statement`


        * `voiePayroll`


        * `voeTransactions`


        * `farpbfnoncra`


        * `voePayroll`


        * `cfrp`


        * `cfrb`


        * `barpcra`


        * `barpnoncra`


        * `barbcra`


        * `barbftc`


        * `barbnoncra`


        * `cfrpcra`


        * `cfrpnoncra`


        * `cracfrbcra`


        * `cfrbnoncra`


        * `cfrbftc`


        * `phrbcra`


        * `phrbnoncra`


        * `phrbftc`


        * `sbcaanalyticsnoncra`


        * `sbcabenchmarksnoncra`


        * `pripcra`


        * `pripnoncra`


        * `pribcra`


        * `pribnoncra`


        * `pribftc`

        '
      type: string
      example: voi
    ZipCode:
      type: string
      description: A ZIP code
      example: '84123'
    ExternalCustomerId:
      type: string
      description: External Customer ID is a unique identifier assigned to the customer by the data holder. This field allows you to map the customer (and transactions) back to your dataset and to provide the link to Mastercard's dataset that was requested to be enriched. This ID must be obfuscated through cryptographically strong hashing using SHA-2 or SHA-3 methods. Do not send plaintext ids to Mastercard. Provide this identifier if you want the Mastercard enriched dataset to be used as input to this report.
      minLength: 1
      maxLength: 100
      example: '1005061234'
    ReportCustomField:
      type: object
      properties:
        label:
          type: string
          description: The name of the custom field
          example: loanID
        value:
          type: string
          description: The value of the custom field
          example: '123456'
        shown:
          type: boolean
          description: If the custom field will show on the PDF or not
          example: true
    VOIReportConstraintsOut:
      type: object
      properties:
        accountIds:
          $ref: '#/components/schemas/ReportAccountIds'
        reportCustomFields:
          $ref: '#/components/schemas/ReportCustomFields'
        fromDate:
          $ref: '#/components/schemas/UnixDate'
        incomeStreamConfidenceMinimum:
          $ref: '#/components/schemas/IncomeStreamConfidenceMinimum'
    NumericCustomerId:
      type: integer
      format: int64
      description: A customer ID represented as a number. See Add Customer API for how to create a customer ID.
      example: 1005061234
    TransactionsReportConstraintsOut:
      type: object
      properties:
        accountIds:
          $ref: '#/components/schemas/ReportAccountIds'
        fromDate:
          $ref: '#/components/schemas/UnixDate'
        toDate:
          $ref: '#/components/schemas/UnixDate'
        includePending:
          $ref: '#/components/schemas/IncludePending'
        reportCustomFields:
          $ref: '#/components/schemas/ReportCustomFields'
        findTransaction:
          $ref: '#/components/schemas/FindTransactionConstraints'
    ForesightAnalyticsReportFirstThirdPartyConstraints:
      allOf:
      - $ref: '#/components/schemas/ForesightAnalyticsReportConstraints'
      - type: object
        properties:
          customerId:
            $ref: '#/components/schemas/NumericCustomerId'
          externalCustomerId:
            $ref: '#/components/schemas/ExternalCustomerId'
    ConsumerId:
      type: string
      description: A consumer ID. See Create Consumer API for how to create a consumer ID.
      example: 0bf46322c167b562e6cbed9d40e19a4c
    PayStatementData:
      description: Data to be included within the pay statement report
      required:
      - assetIds
      type: object
      properties:
        assetIds:
          description: A list of pay statement asset IDs
          type: array
          items:
            $ref: '#/components/schemas/AssetId'
        extractEarnings:
          $ref: '#/components/schemas/ExtractEarnings'
        extractDeductions:
          $ref: '#/components/schemas/ExtractDeductions'
        extractDirectDeposit:
          $ref: '#/components/schemas/ExtractDirectDeposit'
    EmailAddress:
      type: string
      description: An email address
      example: myname@mycompany.com
    VOAIncomeReportIncomeFromDate:
      type: integer
      description: 'A date in Unix epoch time (in seconds). See: [Handling Epoch Dates and Times](https://developer.mastercard.com/open-finance-us/documentation/errors/best-practices/).


        By default, the income history is set to 24 months, however, a partner can change the transaction history by setting the `incomeFromDate` parameter.'
      format: int64
      example: 1607450357
    ForesightAnalyticsFirstThirdPartyReportAck:
      required:
      - id
      - requestId
      - requesterName
      - createdDate
      - title
      - type
      - status
      - reportPin
      - constraints
      allOf:
      - $ref: '#/components/schemas/BaseReportAck'
      - type: object
        properties:
          externalCustomerId:
            $ref: '#/components/schemas/ExternalCustomerId'
          reportPin:
            $ref: '#/components/schemas/ReportPin'
          constraints:
            $ref: '#/components/schemas/ForesightAnalyticsReportFirstThirdPartyConstraints'
    UserType:
      type: string
      description: Type of User, Allowed values Personal/Business
      example: business
    FindTransactionDescriptionMemo:
      type: string
      description: "A string to return transactions that have an exact match to Description/Memo.</br>\n- Description/Memo</br>\n  - Found in the PDF report for reach transactions.</br>\n  - A combination of **description** and **memo** from the JSON version\nof the report.</br>\n"
      example: Paycheck
    FindTransactionAmountTo:
      type: number
      description: 'A decimal value to return transactions with **amount** less than or equal to **findTransactionAmountTo**.</br>

        - If both **findTransactionAmountFrom** and **findTransactionAmountTo** are present. Then transactions with  **amount** between (inclusive) both values will be returned.

        '
      example: 100
    Age:
      type: integer
      description: Age is an optional parameter. This data is used to determine the age band the customer falls into.
      format: int64
      example: 25
      minimum: 0
      maximum: 125
    GeoLocation:
      type: array
      items:
        $ref: '#/components/schemas/GeoLocationItems'
      description: Geolocation array of objects;
    ReportPin:
      type: string
      description: A unique key returned per report for consumer Portal
      example: 2398jk
    TimeIntervalType:
      description: Possible values for strategies in which attributes may be aggregated and reported across varying time intervals. Allowed Values - MONTHLY_CALENDAR - MONTHLY_ROLLING_30
      example: MONTHLY_CALENDAR
      type: string
      default: MONTHLY_CALENDAR
    PayStatementReportConstraints:
      required:
      - paystatementReport
      type: object
      properties:
        paystatementReport:
          $ref: '#/components/schemas/PayStatementData'
        reportCustomFields:
          $ref: '#/components/schemas/ReportCustomFields'
    VOAReportConstraintsOut:
      type: object
      properties:
        accountIds:
          $ref: '#/components/schemas/ReportAccountIds'
        reportCustomFields:
          $ref: '#/components/schemas/ReportCustomFields'
        toDate:
          $ref: '#/components/schemas/UnixDate'
        showNsf:
          $ref: '#/components/schemas/ShowNsf'
        fromDate:
          $ref: '#/components/schemas/UnixDate'
    AddressLine1:
      type: string
      description: Address line 1
      example: 434 W Ascension Way
    ReportAccountIds:
      description: An array of account IDs to be included in the report (all accounts will be included if not set)
      type: array
      items:
        $ref: '#/components/schemas/AccountId'
      example:
      - '5011648377'
      - '5011648378'
      - '5011648379'
    PrequalificationReportConstraintsOut:
      type: object
      properties:
        accountIds:
          $ref: '#/components/schemas/ReportAccountIds'
        reportCustomFields:
          $ref: '#/components/schemas/ReportCustomFields'
        showNsf:
          $ref: '#/components/schemas/ShowNsf'
        fromDate:
          $ref: '#/components/schemas/UnixDate'
    VOIEWithStatementData:
      required:
      - assetIds
      type: object
      properties:
        assetIds:
          description: A list of pay statement asset IDs
          type: array
          items:
            $ref: '#/components/schemas/AssetId'
        extractEarnings:
          $ref: '#/components/schemas/ExtractEarnings'
        extractDeductions:
          $ref: '#/components/schemas/ExtractDeductions'
        extractDirectDeposit:
          $ref: '#/components/schemas/ExtractDirectDeposit'
    IncomeStreamConfidenceMinimum:
      type: integer
      description: Include income streams in the report, based on the income stream's confidence score. For example, Use the value 50 to include only income streams with a confidence score of 50 or higher.
      format: int32
      example: 50
    MiddleName:
      type: string
      description: The middle name of the account holder
      example: L
    StatementReportConstraints:
      required:
      - statementReportData
      type: object
      properties:
        statementReportData:
          $ref: '#/components/schemas/StatementData'
        reportCustomFields:
          $ref: '#/components/schemas/ReportCustomFields'
    IncludePending:
      type: boolean
      description: If pending transactions must be included
      example: true
      default: false
    PhoneNumber:
      type: string
      description: A phone number (max length 15).
      example: 1-801-984-4200
    ForesightAnalyticsReportData:
      description: Parameters supplied by the client requesting the analytics.
      properties:
        forCraPurpose:
          type: boolean
          description: Field to indicate if the requested report is for CRA or NONCRA. For small business lending or other similar business use cases, pass the value as “true” for purposes of this field.
          example: true
        segments:
          type: object
          description: Requested segments for attribute values.
          properties:
            geolocation:
          

# --- truncated at 32 KB (67 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/finicity/refs/heads/main/openapi/finicity-consumer-foresight-api-openapi.yml