openapi: "3.0.1" info: title: "Envestnet Aggregation APIs" description: "This file describes the Yodlee Aggregation product APIs using the swagger notation that you can use to build your financial application. You can generate the client SDK in Python, JavaScript, PHP, or any other languages according to your development needs. For more details about the APIs, refer to Yodlee API v1.1 - Overview.

You will have to set the header before making the API call. The following headers apply to all the APIs:Note: If there are any API-specific headers, they are mentioned explicitly in the respective API's description." termsOfService: "https://developer.yodlee.com/terms/condition" contact: email: "developer@yodlee.com" license: name: "Yodlee Developer License" url: "https://developer.yodlee.com/terms/condition#_Services_1" version: "1.1.0" servers: - url: "/" tags: - name: "Accounts" description: "Accounts API" - name: "Auth" description: "Auth API" - name: "Configs" description: "Configs API" - name: "Consents" description: "Consents API" - name: "DataExtracts" description: "DataExtracts API" - name: "Derived" description: "Derived API" - name: "Documents" description: "Documents API" - name: "Holdings" description: "Holdings API" - name: "ProviderAccounts" description: "Provider Accounts API" - name: "Providers" description: "Providers API" - name: "Statements" description: "Statements API" - name: "Transactions" description: "Transactions API" - name: "User" description: "Users API" paths: /consents/preferences: get: tags: - "Consents" summary: "Envestnet Get Consents Preferences" description: "This API service provides user's preferences for the consent" operationId: "getConsentPreferences" parameters: - name: "consentId" in: "query" description: "consentId" required: true schema: type: "string" responses: 200: description: "OK" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/ConsentPreferencesResponse" 400: description: "Y800 : Invalid value for consentId
Y812 :Required field/value - consentId missing in the request
" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false /transactions: get: tags: - "Transactions" summary: "Envestnet Get Transactions" description: "The Transaction service is used to get a list of transactions for a user.
By default, this service returns the last 30 days of transactions from today's date.
API will only return up to 2 years of transaction history. If the difference between fromDate and toDate is more than 2 years, API will return only last 2 years from the toDate.
The keyword parameter performs a contains search on the original, consumer, and simple description attributes, replace the special characters #, &, and + with percent-encoding values %23, %26, and %2B respectively. Eg: for -Debit# , pass the input as -Debit%23.
Values for categoryId parameter can be fetched from get transaction category list service.
The categoryId is used to filter transactions based on system-defined category as well as user-defined category.
User-defined categoryIds should be provided in the filter with the prefix ''U''. E.g. U10002
The skip and top parameters are used for pagination. In the skip and top parameters pass the number of records to be skipped and retrieved, respectively. The response header provides the links to retrieve the next and previous set of transactions.
Double quotes in the merchant name will be prefixed by backslashes (\) in the response, e.g. Toys \"R\" Us.
sourceId is a unique ID that the provider site has assigned to the transaction. The source ID is only available for the pre-populated accounts. Pre-populated accounts are the accounts that the FI customers shares with Yodlee, so that the user does not have to add or aggregate those accounts.

Note" operationId: "getTransactions" parameters: - name: "accountId" in: "query" description: "Comma separated accountIds" allowEmptyValue: false schema: type: "string" - name: "baseType" in: "query" description: "DEBIT/CREDIT" allowEmptyValue: false schema: type: "string" - name: "categoryId" in: "query" description: "Comma separated categoryIds" allowEmptyValue: false schema: type: "string" - name: "categoryType" in: "query" description: "Transaction Category Type(LOAN, UNCATEGORIZE, INCOME, TRANSFER, EXPENSE or DEFERRED_COMPENSATION)" allowEmptyValue: false schema: type: "string" - name: "container" in: "query" description: "bank/creditCard/investment/insurance/loan" allowEmptyValue: false schema: type: "string" - name: "convertToCurrency" in: "query" description: "On-demand currency conversion parameter" allowEmptyValue: false schema: type: "string" - name: "detailCategoryId" in: "query" description: "Comma separated detailCategoryIds" allowEmptyValue: false schema: type: "string" - name: "fromDate" in: "query" description: "Transaction from date(YYYY-MM-DD)" allowEmptyValue: false schema: type: "string" - name: "highLevelCategoryId" in: "query" description: "Comma separated highLevelCategoryIds" allowEmptyValue: false schema: type: "string" - name: "keyword" in: "query" description: "Transaction search text" allowEmptyValue: false schema: type: "string" - name: "skip" in: "query" description: "skip (Min 0)" allowEmptyValue: false schema: type: "integer" format: "int32" - name: "toDate" in: "query" description: "Transaction end date (YYYY-MM-DD)" allowEmptyValue: false schema: type: "string" - name: "top" in: "query" description: "top (Max 500)" allowEmptyValue: false schema: type: "integer" format: "int32" - name: "type" in: "query" description: "Transaction Type(SELL,SWEEP, etc.) for bank/creditCard/investment" allowEmptyValue: false schema: type: "string" responses: 200: description: "OK" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/TransactionResponse" 400: description: "Y800 : Invalid value for baseType
Y800 : Invalid value for fromDate
Y800 : Invalid value for category
Y800 : Invalid value for toDate
Y800 : Invalid value for container
Y809 : Invalid date range
Y804 : Permitted values of top between 1 - 500
Y805 : Multiple containers not supported
Y800 : Invalid value for transaction type
Y824 : The maximum number of accountIds permitted is 100
Y824 : The maximum number of categoryIds permitted is 100
Y824 : The maximum number of highLevelCategoryIds permitted is 100
Y848 : detailCategoryId cannot be provided as input, as the detailedCategory feature is not enabled
Y823 : detailCategoryId is not for applicable containers other than bank and card
Y824 : The maximum number of detailCategoryIds permitted is 100
Y800 : Invalid value for detailCategoryId
Y800 : Invalid value for convertToCurrency
Y820 : The currency value is not supported for convertToCurrency
" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false /auth/apiKey/{key}: delete: tags: - "Auth" summary: "Envestnet Delete API Key" description: "This endpoint allows an existing API key to be deleted.
You can use one of the following authorization methods to access this API:
  1. cobsession
  2. JWT token
Notes:
  • This service is not available in developer sandbox environment and will be made availablefor testing in your dedicated environment. " operationId: "deleteApiKey" parameters: - name: "key" in: "path" description: "key" required: true schema: type: "string" responses: 201: description: "OK" content: {} 204: description: "No Content" content: {} 400: description: "Y807 : Resource not found
    Y806 : Invalid input" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false /providerAccounts: get: tags: - "ProviderAccounts" summary: "Envestnet Get Provider Accounts" description: "The get provider accounts service is used to return all the provider accounts added by the user.
    This includes the failed and successfully added provider accounts.
    " operationId: "getAllProviderAccounts" parameters: - name: "include" in: "query" description: "include" schema: type: "string" - name: "providerIds" in: "query" description: "Comma separated providerIds." allowEmptyValue: false schema: type: "string" responses: 200: description: "OK" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/ProviderAccountResponse" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false put: tags: - "ProviderAccounts" summary: "Envestnet Update Account" description: "This API Reference guide is intended for FastLink 4 Users. For FastLink 3 Users, there are additional integration notes related to this endpoint here.

    The update account API is used to:

    -----------------------------------------------------------------------------------------------------------------------------------------

    Update All Eligible Accounts - Notes:
    " operationId: "editCredentialsOrRefreshProviderAccount" parameters: - name: "providerAccountIds" in: "query" description: "comma separated providerAccountIds" required: true allowEmptyValue: false schema: type: "string" requestBody: description: "loginForm or field entity" content: application/json: schema: $ref: "#/components/schemas/ProviderAccountRequest" required: false responses: 200: description: "OK" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/UpdatedProviderAccountResponse" 400: description: "Y805 : Multiple providerAccountId not supported for updating credentials
    Y800 : Invalid value for credentialsParam
    Y400 : id and value in credentialsParam are mandatory
    Y806 : Invalid input
    Y823 : Credentials are not applicable for real estate aggregated / manual accounts
    Y868 : No action is allowed, as the data is being migrated to the Open Banking provider
    " content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false /transactions/count: get: tags: - "Transactions" summary: "Envestnet Get Transactions Count" description: "The count service provides the total number of transactions for a specific user depending on the input parameters passed.
    If you are implementing pagination for transactions, call this endpoint before calling GET /transactions to know the number of transactions that are returned for the input parameters passed.
    The functionality of the input parameters remains the same as that of the GET /transactions endpoint.
    " operationId: "getTransactionsCount" parameters: - name: "accountId" in: "query" description: "Comma separated accountIds\t" allowEmptyValue: false schema: type: "string" - name: "baseType" in: "query" description: "DEBIT/CREDIT" allowEmptyValue: false schema: type: "string" - name: "categoryId" in: "query" description: "Comma separated categoryIds" allowEmptyValue: false schema: type: "string" - name: "categoryType" in: "query" description: "Transaction Category Type(LOAN, UNCATEGORIZE, INCOME, TRANSFER, EXPENSE or DEFERRED_COMPENSATION)" allowEmptyValue: false schema: type: "string" - name: "container" in: "query" description: "bank/creditCard/investment/insurance/loan" allowEmptyValue: false schema: type: "string" - name: "detailCategoryId" in: "query" description: "Comma separated detailCategoryIds" allowEmptyValue: false schema: type: "string" - name: "fromDate" in: "query" description: "Transaction from date(YYYY-MM-DD)" allowEmptyValue: false schema: type: "string" - name: "highLevelCategoryId" in: "query" description: "Comma separated highLevelCategoryIds" allowEmptyValue: false schema: type: "string" - name: "keyword" in: "query" description: "Transaction search text\t" allowEmptyValue: false schema: type: "string" - name: "toDate" in: "query" description: "Transaction end date (YYYY-MM-DD)" allowEmptyValue: false schema: type: "string" - name: "type" in: "query" description: "Transaction Type(SELL,SWEEP, etc.)" allowEmptyValue: false schema: type: "string" responses: 200: description: "OK" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/TransactionCountResponse" 400: description: "Y800 : Invalid value for detailCategoryId
    Y848 : detailCategoryId cannot be provided as input, as the detailedCategory feature is not enabled
    Y823 : detailCategoryId is not applicable for containers other than bank and card
    Y824 : The maximum number of detailCategoryIds permitted is 100
    " content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false /derived/transactionSummary: get: tags: - "Derived" summary: "Envestnet Get Transaction Summary" description: "The transaction summary service provides the summary values of transactions for the given date range by category type, high-level categories, or system-defined categories.

    Yodlee has the transaction data stored for a day, month, year and week per category as per the availability of user's data. If the include parameter value is passed as details, then summary details will be returned depending on the interval passed-monthly is the default.

    Notes:
    1. Details can be requested for only one system-defined category
    2. Passing categoryType is mandatory except when the groupBy value is CATEGORY_TYPE
    3. Dates will not be respected for monthly, yearly, and weekly details
    4. When monthly details are requested, only the fromDate and toDate month will be respected
    5. When yearly details are requested, only the fromDate and toDate year will be respected
    6. For weekly data points, details will be provided for every Sunday date available within the fromDate and toDate
    7. This service supports the localization feature and accepts locale as a header parameter
    " operationId: "getTransactionSummary" parameters: - name: "accountId" in: "query" description: "comma separated account Ids" allowEmptyValue: false schema: type: "string" - name: "categoryId" in: "query" description: "comma separated categoryIds" allowEmptyValue: false schema: type: "string" - name: "categoryType" in: "query" description: "LOAN, INCOME, EXPENSE, TRANSFER, UNCATEGORIZE or DEFERRED_COMPENSATION" allowEmptyValue: false schema: type: "string" - name: "fromDate" in: "query" description: "YYYY-MM-DD format" allowEmptyValue: false schema: type: "string" - name: "groupBy" in: "query" description: "CATEGORY_TYPE, HIGH_LEVEL_CATEGORY or CATEGORY" required: true allowEmptyValue: false schema: type: "string" - name: "include" in: "query" description: "details" allowEmptyValue: false schema: type: "string" - name: "includeUserCategory" in: "query" description: "TRUE/FALSE" allowEmptyValue: false schema: type: "boolean" - name: "interval" in: "query" description: "D-daily, W-weekly, M-mothly or Y-yearly" allowEmptyValue: false schema: type: "string" - name: "toDate" in: "query" description: "YYYY-MM-DD format" allowEmptyValue: false schema: type: "string" responses: 200: description: "OK" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/DerivedTransactionSummaryResponse" 400: description: "Y010 : Invalid session
    Y800 : Invalid value for accountId
    Y800 : Invalid value for groupBy
    Y803 : groupBy required
    Y803 : categoryType required
    Y800 : Invalid value for categoryId
    Y800 : Invalid value for fromDate
    Y800 : Invalid value for toDate
    Y800 : Invalid value for fromDate or toDate
    Y814 : Exchange rate not available for currency
    Y815 : Cannot apply filter on categoryId if groupBy value is CATEGORY_TYPE
    Y816 : User-defined category details can only be requested for one system categoryId with groupBy='CATEGORY'
    Y824 : The maximum number of accountIds permitted is 100
    Y824 : The maximum number of categoryIds permitted is 100
    Y824 : The maximum number of categoryTypes permitted is 100" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false /consents/{consentId}/renewal: put: tags: - "Consents" summary: "Envestnet Renew Consent" description: "The consent renewal service is used to renew the consent by validating the consent state. This API supports both UK and AU Open Banking.
    Renewing an UK Open Banking consent:
  • Before the grace period of 90 days: The consent will be renewed using the third-party provider (TPP) renewal process that Yodlee does, and no consent reauthorisation is required.The API response will contain the complete renewed consent object.
  • After the grace period of 90 days: The API will provide an authorisation URL to redirect the user to the financial institution site to complete the consent reauthorization process.
    Renewing an AU Open Banking consent:
  • Invoke this API, and in the API response, an authorisation URL will be provided to redirect the user to the financial institution site to complete the consent reauthorisation process.

  • " operationId: "renewConsent" parameters: - name: "consentId" in: "path" description: "Consent Id to be renewed." required: true schema: type: "integer" format: "int64" requestBody: description: "renewal entity from consent details service." content: application/json: schema: $ref: "#/components/schemas/RenewConsentRequest" required: false responses: 200: description: "OK" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/RenewConsentResponse" 400: description: "Y800 : Invalid value for consentId
    Y800 : Invalid value for consentParam
    Y802 : The consent duration days is outside of the range selected during onboarding, hence consentDurationDays not allowed
    Y803 : consent duration days preference required consentParam
    Y812 : Required field/value - scopeId missing in the consentParam
    " content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false /dataExtracts/userData: get: tags: - "DataExtracts" summary: "Envestnet Get userData" description: "The get user data service is used to get a user's modified data for a particular period of time for accounts, transactions, holdings, and provider account information.
    The time difference between fromDate and toDate fields cannot be more than 60 minutes.
    By default, pagination is available for the transaction entity in this API. In the first response, the API will retrieve 500 transactions along with other data. The response header will provide a link to retrieve the next set of transactions.
    In the response body of the first API response, totalTransactionsCount indicates the total number of transactions the API will retrieve for the user.
    This service is only invoked with either admin access token or a cobrand session.
    Refer to dataExtracts page for more information.

    Note:
  • This service supports the localization feature and accepts locale as a header parameter.
  • " operationId: "getDataExtractsUserData" parameters: - name: "fromDate" in: "query" description: "From DateTime (YYYY-MM-DDThh:mm:ssZ)" required: true allowEmptyValue: false schema: type: "string" - name: "loginName" in: "query" description: "Login Name" required: true allowEmptyValue: false schema: type: "string" - name: "toDate" in: "query" description: "To DateTime (YYYY-MM-DDThh:mm:ssZ)" required: true allowEmptyValue: false schema: type: "string" responses: 200: description: "OK" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/DataExtractsUserDataResponse" 400: description: "Y800 : Invalid value for eventName
    Y821 : Data update event not supported
    Y800 : Invalid value for fromDate.fromDate cannot be greater than current time
    Y800 : Invalid value for toDate.toDate cannot be greater than current time
    .Y800 : Invalid value for fromDate or toDate.fromDate and toDate cannot be older than 7 days
    Y800 : Invalid value for fromDate.fromDate can not be greater than toDate
    Y800 : Invalid value for loginName" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false /providers: get: tags: - "Providers" summary: "Envestnet Get Providers" description: "This API Reference guide is intended for FastLink 4 Users. For FastLink 3 Users, there are additional integration notes related to this endpoint here.

    The get provider service is used to get all the providers that are enabled, search a provider service by name or routing number and get popular sites of a region.

    Searching for a provider using a routing number is applicable only to the USA and Canada regions.
    The valid values for priority are:
    1. cobrand: Returns providers enabled for the cobrand (Default priority)
    2. popular: Returns providers popular among users of the customer.

    The skip and top parameters are used for pagination. In the skip and top parameters, pass the number of records to be skipped and retrieved, respectively.The response header provides the links to retrieve the next and previous set of transactions.

    Providers accept the configName as the input to the API and return the providers list based on the configurations of each configName. For verification, the providers will accept the configName with which has the verification product and the attributes that are chosen in the configName which returns the list of providers that match the criteria. For example, /ysl/providers?configName=aggregationAndVerification

    Note:
    1. In a product flow involving user interaction, Yodlee recommends invoking this service with filters.
    2. Without filters, the service may perform slowly as it takes a few minutes to return data in the response.
    3. The AuthParameter appears in the response only in case of token-based aggregation sites.
    4. The pagination feature only applies when the priority parameter is set as cobrand. If no values are provided in the skip and top parameters, the API will only return the first 500 records.
    5. This service supports the localization feature and accepts locale as a header parameter.
    6. The capability has been deprecated in query parameter and response.
    " operationId: "getAllProviders" parameters: - name: "capability" in: "query" description: "CHALLENGE_DEPOSIT_VERIFICATION - capability search is deprecated" allowEmptyValue: false schema: type: "string" - name: "dataset$filter" in: "query" description: "Expression to filter the providers by dataset(s) or dataset attribute(s). The default value will be the dataset or dataset attributes configured as default for the customer." allowEmptyValue: false schema: type: "string" - name: "fullAccountNumberFields" in: "query" description: "Specify to filter the providers with values paymentAccountNumber,unmaskedAccountNumber." allowEmptyValue: false schema: type: "string" - name: "institutionId" in: "query" description: "Institution Id for Single site selection" allowEmptyValue: false schema: type: "integer" format: "int64" - name: "name" in: "query" description: "Name in minimum 1 character or routing number." allowEmptyValue: false schema: type: "string" - name: "priority" in: "query" description: "Search priority" allowEmptyValue: false schema: type: "string" - name: "providerId" in: "query" description: "Max 5 Comma seperated Provider Ids" allowEmptyValue: false schema: type: "string" - name: "skip" in: "query" description: "skip (Min 0) - This is not applicable along with 'name' parameter." allowEmptyValue: false schema: type: "integer" format: "int32" - name: "top" in: "query" description: "top (Max 500) - This is not applicable along with 'name' parameter." allowEmptyValue: false schema: type: "integer" format: "int32" responses: 200: description: "OK" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/ProviderResponse" 400: description: "Y800 : Invalid value for priority
    Y800 : Invalid value for providerName
    Y801 : Invalid length for a site search. The search string must have atleast 1 character
    Y800 : Invalid value for skip
    Y804 : Permitted values of top between 1 - 500
    Y821 : Dataset not supported
    Y820 : The additionalDataSet is not supported for Get provider API" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false /providerAccounts/refresh: put: tags: - "ProviderAccounts" summary: "Envestnet Refresh Provider Account" description: "This api service will allow you to refresh the Non-MFA provider accounts against a configName, i.e refresh will respect the configurations of the configName while refreshing the account.
    Note: this service will only work with FastLink 4 users.
    " operationId: "refreshProviderAccount" requestBody: description: "refreshRequest" content: application/json: schema: $ref: "#/components/schemas/ProviderAccountRefreshRequest" required: true responses: 201: description: "CREATED" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/RefreshProviderAccountResponse" 400: description: "Y800 : Invalid value for configName
    Y803 : configName required
    Y812 : Required field/value providerAccountId missing in the request
    Y800 : Invalid value for providerAccountId
    Y825 : Update not allowed. Reason: providerAccountId {id} REFRESHED_RECENTLY
    " content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false /providers/{providerId}: get: tags: - "Providers" summary: "Envestnet Get Provider Details" description: "The get provider detail service is used to get detailed information including the login form for a provider.
    The response is a provider object that includes information such as name of the provider,
    provider's base URL, a list of containers supported by the provider, the login form details of the provider, etc.
    Only enabled datasets, attributes and containers gets returned in the response.

    Note:
  • This service supports the localization feature and accepts locale as a header parameter.
  • The capability has been deprecated in the response." operationId: "getProvider" parameters: - name: "providerId" in: "path" description: "providerId" required: true schema: type: "integer" format: "int64" responses: 200: description: "OK" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/ProviderDetailResponse" 400: description: "Y800 : Invalid value for providerId" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false /transactions/categories/txnRules: get: tags: - "Transactions" summary: "Envestnet Get Transaction Categorization Rules" description: "The get transaction categorization rule service is used to get all the categorization rules.
    " operationId: "getTransactionCategorizationRules" responses: 200: description: "OK" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/TransactionCategorizationRuleResponse" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false /transactions/categories/{categoryId}: delete: tags: - "Transactions" summary: "Envestnet Delete Category" description: "The delete transaction categories service is used to delete the given user-defined category.
    The HTTP response code is 204 (Success without content).
    " operationId: "deleteTransactionCategory" parameters: - name: "categoryId" in: "path" description: "categoryId" required: true schema: type: "integer" format: "int64" responses: 204: description: "Deleted Successfully" content: {} 400: description: "Y800 : Invalid value for categoryId" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false /documents: get: tags: - "Documents" summary: "Envestnet Get Documents" description: "The get documents service allows customers to search or retrieve metadata related to documents.
    The API returns the document as per the input parameters passed. If no date range is provided then all downloaded documents will be retrieved. Details of deleted documents or documents associated to closed providerAccount will not be returned.
    This API is a premium service which requires subscription in advance to use. Please contact Yodlee Client Services for more information.
    " operationId: "getDocuments" parameters: - name: "Keyword" in: "query" description: "The string used to search a document by its name." allowEmptyValue: false schema: type: "string" - name: "accountId" in: "query" description: "The unique identifier of an account. Retrieve documents for a given accountId." allowEmptyValue: false schema: type: "string" - name: "docType" in: "query" description: "Accepts only one of the following valid document types: STMT, TAX, and EBILL." allowEmptyValue: false schema: type: "string" - name: "fromDate" in: "query" description: "The date from which documents have to be retrieved." allowEmptyValue: false schema: type: "string" - name: "toDate" in: "query" description: "The date to which documents have to be retrieved." allowEmptyValue: false schema: type: "string" responses: 200: description: "OK" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/DocumentResponse" 400: description: "Y800 : Invalid value for accountId
    Y800 : Invalid value for fromDate
    Y800 : Invalid value for toDate
    Y800 : Invalid value for docType" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false /accounts/evaluateAddress: post: tags: - "Accounts" summary: "Envestnet Evaluate Address" description: "Use this service to validate the address before adding the real estate account.
    If the address is valid, the service will return the complete address information.
    The response will contain multiple addresses if the user-provided input matches with multiple entries in the vendor database.
    In the case of multiple matches, the user can select the appropriate address from the list and then invoke the add account service with the complete address.

    Note: " operationId: "evaluateAddress" requestBody: description: "addressParam" content: application/json: schema: $ref: "#/components/schemas/EvaluateAddressRequest" required: true responses: 200: description: "OK" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/EvaluateAddressResponse" 400: description: "Y806 : Invalid input
    Y800 : Invalid value for zip
    Y812 : Required field/value - address missing in the request
    Y812 : Required field/value - street missing in the request
    Y812 : Required field/value - state & city / zip missing in the request" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false /accounts/{accountId}: get: tags: - "Accounts" summary: "Envestnet Get Account Details" description: "The get account details service provides detailed information of an account.

    Note:
  • fullAccountNumber is deprecated and is replaced with fullAccountNumberList in include parameter and response.
  • " operationId: "getAccount" parameters: - name: "accountId" in: "path" description: "accountId" required: true schema: type: "integer" format: "int64" - name: "convertToCurrency" in: "query" description: "On-demand currency conversion parameter" allowEmptyValue: false schema: type: "string" - name: "include" in: "query" description: "profile, holder, fullAccountNumber, fullAccountNumberList, paymentProfile, autoRefresh
    Note:fullAccountNumber is deprecated and is replaced with fullAccountNumberList in include parameter and response." allowEmptyValue: false schema: type: "string" responses: 200: description: "OK" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/AccountResponse" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false put: tags: - "Accounts" summary: "Envestnet Update Account" description: "The update account service is used to update manual and aggregated accounts.
    The HTTP response code is 204 (Success without content).
    Update manual account support is available for bank, card, investment, insurance, loan, otherAssets, otherLiabilities and realEstate containers only.

    Note:
  • A real estate account update is only supported for SYSTEM and MANUAL valuation type.
  • A real estate account can be linked to a loan account by passing accountId of a loan account in linkedAccountIds .
  • Attribute isEbillEnrolled is deprecated as it is applicable for bill accounts only.
  • " operationId: "updateAccount" parameters: - name: "accountId" in: "path" description: "accountId" required: true schema: type: "integer" format: "int64" requestBody: description: "accountRequest" content: application/json: schema: $ref: "#/components/schemas/UpdateAccountRequest" required: true responses: 204: description: "OK" content: {} 400: description: "Y800 : Invalid value for accountId
    Y800 : Invalid value for updateParam
    Y862 : The provided address is invalid, or the valuation is not available
    Y868 : No action is allowed, as the data is being migrated to the Open Banking provider
    Y869 : Multiple matches found. Provide the complete address or call the POST /accounts/evaluateAddress API to retrieve the list of matched addresses
    " content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false delete: tags: - "Accounts" summary: "Envestnet Delete Account" description: "The delete account service allows an account to be deleted.
    This service does not return a response. The HTTP response code is 204 (Success with no content).
    " operationId: "deleteAccount" parameters: - name: "accountId" in: "path" description: "accountId" required: true schema: type: "integer" format: "int64" responses: 204: description: "OK" content: {} 400: description: "Y800 : Invalid value for accountId
    Y806 : Invalid input
    Y807 : Resource not found
    Y868 : No action is allowed, as the data is being migrated to the Open Banking provider
    " content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false /configs/notifications/events: get: tags: - "Configs" summary: "Envestnet Get Subscribed Notification Events" description: "The get events service provides the list of events for which consumers subscribed to receive notifications.
    " operationId: "getSubscribedNotificationEvents" parameters: - name: "eventName" in: "query" description: "Name of the webhook subscription event" allowEmptyValue: false schema: type: "string" enum: - "REFRESH" - "DATA_UPDATES" - "AUTO_REFRESH_UPDATES" - "LATEST_BALANCE_UPDATES" - "CREDIT_ACCELERATOR_REPORT_UPDATES" responses: 200: description: "OK" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/ConfigsNotificationResponse" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false /consents/history/count: get: tags: - "Consents" summary: "Envestnet Get Consent History Count" description: "The count service provides the total number of history records for a specific consent.
    If you are implementing pagination for consent history, call this endpoint before calling GET /consents/history to know the number of records for the given consent that are returned for the input parameters passed.
    " operationId: "getConsentHistoryCount" parameters: - name: "consentId" in: "query" description: "Consent Id generated through POST Consent." required: true allowEmptyValue: false schema: type: "string" - name: "fromDate" in: "query" description: "Consent History from date(YYYY-MM-DD)" allowEmptyValue: false schema: type: "string" - name: "toDate" in: "query" description: "Consent History end date (YYYY-MM-DD)" allowEmptyValue: false schema: type: "string" responses: 200: description: "OK" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/ConsentHistoryCountResponse" 400: description: "Y800 : Invalid value for consentId
    Y803 : consentId is required
    Y800 : Invalid value for fromDate
    Y800 : Invalid value for toDate
    Y809 : Invalid date range
    " content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false /providers/count: get: tags: - "Providers" summary: "Envestnet Get Providers Count" description: "The count service provides the total number of providers that get returned in the GET /providers depending on the input parameters passed.
    If you are implementing pagination for providers, call this endpoint before calling GET /providers to know the number of providers that are returned for the input parameters passed.
    The functionality of the input parameters remains the same as that of the GET /providers endpoint

    Note:
  • The capability has been deprecated in the query parameter.
  • " operationId: "getProvidersCount" parameters: - name: "capability" in: "query" description: "CHALLENGE_DEPOSIT_VERIFICATION - capability search is deprecated" allowEmptyValue: false schema: type: "string" - name: "dataset$filter" in: "query" description: "Expression to filter the providers by dataset(s) or dataset attribute(s). The default value will be the dataset or dataset attributes configured as default for the customer." allowEmptyValue: false schema: type: "string" - name: "fullAccountNumberFields" in: "query" description: "Specify to filter the providers with values paymentAccountNumber,unmaskedAccountNumber." allowEmptyValue: false schema: type: "string" - name: "name" in: "query" description: "Name in minimum 1 character or routing number." allowEmptyValue: false schema: type: "string" - name: "priority" in: "query" description: "Search priority" allowEmptyValue: false schema: type: "string" responses: 200: description: "OK" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/ProvidersCountResponse" 400: description: "Y800 : Invalid value for priority
    Y800 : Invalid value for providerName
    Y801 : Invalid length for a site search. The search string must have at least 1 character
    Y800 : Invalid value for skip
    Y804 : Permitted values of top between 1 - 500
    Y821 : Dataset not supported
    Y820 : The additionalDataSet is not supported for Get provider API" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false /accounts/historicalBalances: get: tags: - "Accounts" summary: "Envestnet Get Historical Balances" description: "The historical balances service is used to retrieve the historical balances for an account or a user.
    Historical balances are daily (D), weekly (W), and monthly (M).
    The interval input should be passed as D, W, and M to retrieve the desired historical balances. The default interval is daily (D).
    When no account id is provided, historical balances of the accounts that are active, to be closed, and closed are provided in the response.
    If the fromDate and toDate are not passed, the last 90 days of data will be provided.
    The fromDate and toDate should be passed in the YYYY-MM-DD format.
    The date field in the response denotes the date for which the balance is requested.
    includeCF needs to be sent as true if the customer wants to return carried forward balances for a date when the data is not available.
    asofDate field in the response denotes the date as of which the balance was updated for that account.
    When there is no balance available for a requested date and if includeCF is sent as true, the previous date for which the balance is available is provided in the response.
    When there is no previous balance available, no data will be sent.
    By default, pagination is available for the historicalBalances entity in this API. The skip and top parameters are used for pagination. In the skip and top parameters, pass the number of records to be skipped and retrieved, respectively. The response header provides the links to retrieve the next and previous set of historical balances.
    The API will only retrieve a maximum 500 records by default when values for skip and top parameters are not provided." operationId: "getHistoricalBalances" parameters: - name: "accountId" in: "query" description: "accountId" allowEmptyValue: false schema: type: "string" - name: "fromDate" in: "query" description: "from date for balance retrieval (YYYY-MM-DD)" allowEmptyValue: false schema: type: "string" - name: "includeCF" in: "query" description: "Consider carry forward logic for missing balances" allowEmptyValue: false schema: type: "boolean" - name: "interval" in: "query" description: "D-daily, W-weekly or M-monthly" allowEmptyValue: false schema: type: "string" - name: "skip" in: "query" description: "skip (Min 0)" allowEmptyValue: false schema: type: "integer" format: "int32" - name: "toDate" in: "query" description: "toDate for balance retrieval (YYYY-MM-DD)" allowEmptyValue: false schema: type: "string" - name: "top" in: "query" description: "top (Max 500)" allowEmptyValue: false schema: type: "integer" format: "int32" responses: 200: description: "OK" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/AccountHistoricalBalancesResponse" 400: description: "Y800 : Invalid value for accountId
    Y800 : Invalid value for fromDate
    Y800 : Invalid value for toDate
    Y809 : Invalid date range
    Y800 : Invalid value for interval
    Y802 : Future date not allowed" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false /consents/history: get: tags: - "Consents" summary: "Envestnet Get Consent History" description: "The get consent history service is used to retrieve all the history related to the consent.
    All history event details for few fields like userDataPurge, deidentificationPreference and consentCollectionPeriod may not be available for older AU Open Banking consents and other Open Banking regions.
    For any consent, history will be captured and available from consent authorization (consent status Active) event onwards.
    Note:
    i. Duration (fromDate and toDate) is optional. In the absence of duration, one year history is retrieved from today's date.
    ii. The pagination feature is available by default. If no values are passed in the skip and top parameters, the API will only return the first 500 records.
    " operationId: "getConsentHistory" parameters: - name: "consentId" in: "query" description: "Consent Id generated through POST Consent." required: true allowEmptyValue: false schema: type: "string" - name: "fromDate" in: "query" description: "Consent History from date(YYYY-MM-DD)" allowEmptyValue: false schema: type: "string" - name: "skip" in: "query" description: "skip (Min 0)" allowEmptyValue: false schema: type: "integer" format: "int32" - name: "toDate" in: "query" description: "Consent History end date (YYYY-MM-DD)" allowEmptyValue: false schema: type: "string" - name: "top" in: "query" description: "top (Max 500)" allowEmptyValue: false schema: type: "integer" format: "int32" responses: 200: description: "OK" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/ConsentHistoryResponse" 400: description: "Y800 : Invalid value for consentId
    Y803 : consentId is required
    Y804 : Permitted values of top between 1 - 500
    Y800 : Invalid value for skip
    Y800 : Invalid value for fromDate
    Y800 : Invalid value for toDate
    Y809 : Invalid date range
    " content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false /derived/networth: get: tags: - "Derived" summary: "Envestnet Get Networth Summary" description: "The get networth service is used to get the networth for the user.
    If the include parameter value is passed as details then networth with historical balances is returned.
    " operationId: "getNetworth" parameters: - name: "accountIds" in: "query" description: "comma separated accountIds" allowEmptyValue: false schema: type: "string" - name: "container" in: "query" description: "bank/creditCard/investment/insurance/loan/realEstate/otherAssets/otherLiabilities" allowEmptyValue: false schema: type: "string" - name: "fromDate" in: "query" description: "from date for balance retrieval (YYYY-MM-DD)" allowEmptyValue: false schema: type: "string" - name: "include" in: "query" description: "details" allowEmptyValue: false schema: type: "string" - name: "interval" in: "query" description: "D-daily, W-weekly or M-monthly" allowEmptyValue: false schema: type: "string" - name: "skip" in: "query" description: "skip (Min 0)" allowEmptyValue: false schema: type: "integer" format: "int32" - name: "toDate" in: "query" description: "toDate for balance retrieval (YYYY-MM-DD)" allowEmptyValue: false schema: type: "string" - name: "top" in: "query" description: "top (Max 500)" allowEmptyValue: false schema: type: "integer" format: "int32" responses: 200: description: "OK" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/DerivedNetworthResponse" 400: description: "Y800 : Invalid value for accountIds
    Y800 : Invalid value for fromDate
    Y800 : Invalid value for toDate
    Y809 : Invalid date range
    Y800 : Invalid value for interval
    Y802 : Future date not allowed
    Y814 : Exchange rate not available for currency
    Y800 : Invalid value for container" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false /user/samlLogin: post: tags: - "User" summary: "Envestnet Saml Login" description: "The SAML login service is used to authenticate system users with a SAML response.
    A new user will be created with the input provided if that user isn't already in the system.
    For existing users, the system will make updates based on changes or new information.
    When authentication is successful, a user session token is returned.

    Note:
  • The content type has to be passed as application/x-www-form-urlencoded.
  • issuer, source and samlResponse should be passed as body parameters.
  • " operationId: "samlLogin" parameters: - name: "issuer" in: "query" description: "issuer" required: true schema: type: "string" - name: "samlResponse" in: "query" description: "samlResponse" required: true schema: type: "string" - name: "source" in: "query" description: "source" schema: type: "string" responses: 200: description: "OK" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/UserResponse" 400: description: "Y013 : Invalid value for samlResponse
    Y013 : Invalid value for issuer" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false /user/register: post: tags: - "User" summary: "Envestnet Register User" description: "The register user service is used to register a user in Yodlee.
    The loginName cannot include spaces and must be between 3 and 150 characters.
    locale passed must be one of the supported locales for the customer.
    Currency provided in the input will be respected in the derived services and the amount fields in the response will be provided in the preferred currency.
    userParam is accepted as a body parameter.

    Note:
  • The content type has to be passed as application/json for the body parameter.
  • We recommend you to not use special characters in loginName other than \"@\", \"#\", \"_\" & \"-\"
  • ." operationId: "registerUser" requestBody: description: "userRequest" content: application/json: schema: $ref: "#/components/schemas/UserRequest" required: true responses: 200: description: "Login Successful" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/UserResponse" 400: description: "Y800 : Invalid value for loginName
    Y800 : Invalid value for email
    Y801 : Invalid length for loginName
    Y800 : Invalid value for phoneNumber
    " content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false /holdings/securities: get: tags: - "Holdings" summary: "Envestnet Get Security Details" description: "The get security details service is used to get all the security information for the holdings
    " operationId: "getSecurities" parameters: - name: "holdingId" in: "query" description: "Comma separated holdingId" allowEmptyValue: false schema: type: "string" responses: 200: description: "OK" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/HoldingSecuritiesResponse" 400: description: "Y800 : Invalid value for holdingId
    Y824 : The maximum number of holdingIds permitted is 100" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false /configs/notifications/events/{eventName}: put: tags: - "Configs" summary: "Envestnet Update Notification Subscription" description: "The update events service is used to update the callback URL.
    If the callback URL is invalid or inaccessible, the subscription will be unsuccessful, and an error will be thrown.

    Note:
  • The content type has to be passed as application/json for the body parameter.
    " operationId: "updateSubscribedNotificationEvent" parameters: - name: "eventName" in: "path" description: "Name of the webhook subscription event" required: true schema: type: "string" enum: - "REFRESH" - "DATA_UPDATES" - "AUTO_REFRESH_UPDATES" - "LATEST_BALANCE_UPDATES" - "CREDIT_ACCELERATOR_REPORT_UPDATES" requestBody: description: "eventRequest" content: application/json: schema: $ref: "#/components/schemas/UpdateConfigsNotificationEventRequest" required: true responses: 204: description: "OK" content: {} 400: description: "Y803 : eventName required
    Y803 : callbackUrl required
    Y800 : Invalid value for callbackUrl" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false post: tags: - "Configs" summary: "Envestnet Subscribe For Notification Event" description: "The subscribe events service is used to subscribe to an event for receiving notifications.
    The callback URL, where the notification will be posted should be provided to this service.
    If the callback URL is invalid or inaccessible, the subscription will be unsuccessful, and an error will be thrown.
    Customers can subscribe to REFRESH,DATA_UPDATES,AUTO_REFRESH_UPDATES,LATEST_BALANCE_UPDATES and CREDIT_ACCELERATOR_REPORT_UPDATES event.

    Notes:
  • This service is not available in developer sandbox/test environment and will be made available for testing in your dedicated environment, once the contract is signed.
  • The content type has to be passed as application/json for the body parameter.
  • " operationId: "createSubscriptionNotificationEvent" parameters: - name: "eventName" in: "path" description: "Name of the webhook subscription event" required: true schema: type: "string" enum: - "REFRESH" - "DATA_UPDATES" - "AUTO_REFRESH_UPDATES" - "LATEST_BALANCE_UPDATES" - "CREDIT_ACCELERATOR_REPORT_UPDATES" requestBody: description: "eventRequest" content: application/json: schema: $ref: "#/components/schemas/CreateConfigsNotificationEventRequest" required: true responses: 201: description: "OK" content: {} 400: description: "Y803 : eventName required
    Y803 : callbackUrl required
    Y800 : Invalid value for callbackUrl
    Y901 : Service not supported
    " content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false delete: tags: - "Configs" summary: "Envestnet Delete Notification Subscription" description: "The delete events service is used to unsubscribe from an events service.
    " operationId: "deleteSubscribedNotificationEvent" parameters: - name: "eventName" in: "path" description: "Name of the webhook subscription event" required: true schema: type: "string" enum: - "REFRESH" - "DATA_UPDATES" - "AUTO_REFRESH_UPDATES" - "LATEST_BALANCE_UPDATES" - "CREDIT_ACCELERATOR_REPORT_UPDATES" responses: 204: description: "OK" content: {} 400: description: "Y803 : eventName required" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false /holdings: get: tags: - "Holdings" summary: "Envestnet Get Holdings" description: "The get holdings service is used to get the list of holdings of a user.
    Supported holding types can be employeeStockOption, moneyMarketFund, bond, etc. and is obtained using get holding type list service.
    Asset classifications for the holdings need to be requested through the \"include\" parameter.
    Asset classification information for holdings are not available by default, as it is a premium feature.
    " operationId: "getHoldings" parameters: - name: "accountId" in: "query" description: "Comma separated accountId" allowEmptyValue: false schema: type: "string" - name: "assetClassification.classificationType" in: "query" description: "e.g. Country, Sector, etc." allowEmptyValue: false schema: type: "string" - name: "classificationValue" in: "query" description: "e.g. US" allowEmptyValue: false schema: type: "string" - name: "include" in: "query" description: "assetClassification" allowEmptyValue: false schema: type: "string" - name: "providerAccountId" in: "query" description: "providerAccountId" allowEmptyValue: false schema: type: "string" responses: 200: description: "OK" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/HoldingResponse" 400: description: "Y800 : Invalid value for accountId
    Y800 : Invalid value for providerAccountId
    Y800 : Invalid value for include
    Y800 : Invalid value for classificationType
    Y800 : Invalid value for classificationValue
    Y800 : Invalid value for include
    Y400 : classificationType mismatch
    Y400 : classificationValue mismatch
    Y824 : The maximum number of accountIds permitted is 100" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false post: tags: - "Holdings" summary: "Envestnet Add Holding" description: "The add manual holding service is used to add manual holdings. The response of add manual holding service includes the Yodlee generated holding id.

    Add manual holding can only be added to a manual account of investment type container only." operationId: "addHolding" requestBody: description: "addHoldingRequest" content: application/json: schema: $ref: "#/components/schemas/HoldingRequest" required: true responses: 200: description: "OK" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/HoldingIdListResponse" 201: description: "Created Successfully" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/HoldingIdListResponse" 400: description: "Y800 : Invalid value for accountId
    Y800 : Invalid value for symbol
    Y800 : Invalid value for exercisedQuantity
    Y800 : Invalid value for cusipNumber
    Y800 : Invalid value for vestedQuantity
    Y800 : Invalid value for unvestedValue
    Y800 : Invalid value for vestedValue
    Y800 : Invalid value for option
    Y800 : Invalid value for holdingType
    Y800 : Invalid value for maturityDate
    Y800 : Invalid value for price
    Y800 : Invalid value for term
    Y800 : Invalid value for contractQuantity
    Y800 : Invalid value for isShort
    Y800 : Invalid value for value
    Y800 : Invalid value for expirationDate
    Y800 : Invalid value for interestRate
    Y800 : Invalid value for quantity
    Y800 : Invalid value for grantDate
    Y800 : Invalid value for sedol
    Y800 : Invalid value for vestedSharesExercisable
    Y800 : Invalid value for spread
    Y800 : Invalid value for couponRate
    Y800 : Invalid value for unvestedQuantity
    Y800 : Invalid value for costBasis
    Y800 : Invalid value for vestingDate
    Y800 : Invalid value for isin
    Y800 : Invalid value for strikePrice
    Y801 : Invalid length for symbol
    Y801 : Invalid length for term
    Y801 : Invalid length for description
    Y801 : Required field/value - description missing in the request
    Y812 : Required field/value - accountId missing in the request
    " content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false /auth/apiKey: get: tags: - "Auth" summary: "Envestnet Get API Keys" description: "This endpoint provides the list of API keys that exist for a customer.
    You can use one of the following authorization methods to access this API:
    1. cobsession
    2. JWT token
    Notes:
  • This service is not available in developer sandbox environment and will be made available for testing in your dedicated environment. " operationId: "getApiKeys" responses: 200: description: "OK" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/ApiKeyResponse" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false post: tags: - "Auth" summary: "Envestnet Generate API Key" description: "This endpoint is used to generate an API key. The RSA public key you provide should be in 2048 bit PKCS#8 encoded format.
    A public key is a mandatory input for generating the API key.
    The public key should be a unique key. The apiKeyId you get in the response is what you should use to generate the JWT token.
    You can use one of the following authorization methods to access
    this API:
    1. cobsession
    2. JWT token
    Alternatively, you can use base 64 encoded cobrandLogin and cobrandPassword in the Authorization header (Format: Authorization: Basic )

    Note:
  • This service is not available in developer sandbox environment and will be made available for testing in your dedicated environment. The content type has to be passed as application/json for the body parameter.
  • " operationId: "generateApiKey" requestBody: description: "apiKeyRequest" content: application/json: schema: $ref: "#/components/schemas/ApiKeyRequest" required: true responses: 201: description: "OK" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/ApiKeyResponse" 400: description: "Y800 : Invalid value for RS512 publicKey
    Y806 : Invalid input
    Y824 : The maximum number of apiKey permitted is 5
    Y811 : publicKey value already exists" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false /transactions/categories/rules/{ruleId}: put: tags: - "Transactions" summary: "Envestnet Update Transaction Categorization Rule" description: "The update transaction categorization rule service is used to update a categorization rule for both system-defined category as well as user-defined category.
    ruleParam JSON input should be as explained in the create transaction categorization rule service.
    The HTTP response code is 204 (Success without content).
    " operationId: "updateTransactionCategorizationRule" parameters: - name: "ruleId" in: "path" description: "ruleId" required: true schema: type: "integer" format: "int64" requestBody: description: "transactionCategoriesRuleRequest" content: application/json: schema: $ref: "#/components/schemas/TransactionCategorizationRuleRequest" required: true responses: 204: description: "Updated Successfully" content: {} 400: description: "Y800 : Invalid value for ruleId
    Y806 : Invalid input" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false post: tags: - "Transactions" summary: "Envestnet Run Transaction Categorization Rule" description: "The run transaction categorization rule service is used to run a rule on transactions, to categorize the transactions.
    The HTTP response code is 204 (Success with no content).
    " operationId: "runTransactionCategorizationRule" parameters: - name: "action" in: "query" required: true schema: type: "string" default: "run" enum: - "run" - name: "ruleId" in: "path" description: "Unique id of the categorization rule" required: true schema: type: "integer" format: "int64" responses: 204: description: "Run Successfully" content: {} 400: description: "Y800 : Invalid value for ruleId
    Y400 : Categorization already in progress" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false delete: tags: - "Transactions" summary: "Envestnet Delete Transaction Categorization Rule" description: "The delete transaction categorization rule service is used to delete the given user-defined transaction categorization rule for both system-defined category as well as user-defined category.
    This will delete all the corresponding rule clauses associated with the rule.
    The HTTP response code is 204 (Success without content).
    " operationId: "deleteTransactionCategorizationRule" parameters: - name: "ruleId" in: "path" description: "ruleId" required: true schema: type: "integer" format: "int64" responses: 204: description: "Deleted Successfully" content: {} 400: description: "Y800 : Invalid value for ruleId" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false /documents/{documentId}: get: tags: - "Documents" summary: "Envestnet Download a Document" description: "The get document details service allows consumers to download a document. The document is provided in base64.
    This API is a premium service which requires subscription in advance to use. Please contact Yodlee Client Services for more information.
    " operationId: "downloadDocument" parameters: - name: "documentId" in: "path" description: "documentId" required: true schema: type: "string" responses: 200: description: "OK" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/DocumentDownloadResponse" 400: description: "Y800 : Invalid value for documentId" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false delete: tags: - "Documents" summary: "Envestnet Delete Document" description: "The delete document service allows the consumer to delete a document. The deleted document will not be returned in the get documents API. The HTTP response code is 204 (success without content).
    Documents can be deleted only if the document related dataset attributes are subscribed.
    " operationId: "deleteDocument" parameters: - name: "documentId" in: "path" description: "documentId" required: true schema: type: "string" responses: 204: description: "OK" content: {} 400: description: "Y800 : Invalid value for documentId
    Y868 : No action is allowed, as the data is being migrated to the Open Banking provider
    " content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false /user/accessTokens: get: tags: - "User" summary: "Envestnet Get Access Tokens" description: "The Get Access Tokens service is used to retrieve the access tokens for the application id(s) provided.
    URL in the response can be used to launch the application for which token is requested.

    Note:
  • This endpoint is deprecated for customers using the API Key-based authentication and is applicable only to customers who use the SAML-based authentication.
    " operationId: "getAccessTokens" parameters: - name: "appIds" in: "query" description: "appIds" required: true schema: type: "string" responses: 200: description: "OK" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/UserAccessTokensResponse" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false /consents/{consentId}: get: tags: - "Consents" summary: "Envestnet Get Authorization Details" description: "The get authorization URL for consent service provides the authorization URL for the renew consent flow, within the consent dashboard.Note:This service supports the localization feature and accepts locale as a header parameter.
    " operationId: "getConsentDetails" parameters: - name: "consentId" in: "path" description: "Consent Id generated through POST Consent." required: true schema: type: "integer" format: "int64" responses: 200: description: "OK" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/UpdatedConsentResponse" 400: description: "Y800 : Invalid value for consentId
    " content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false put: tags: - "Consents" summary: "Envestnet Put Consent" description: "The update consent service is used to capture the user acceptance of the consent presented to him or her.
    This service returns the authorization-redirect URL that should be used to display to the user, the bank's authentication interface.Note:This service supports the localization feature and accepts locale as a header parameter.
    " operationId: "updateConsent" parameters: - name: "consentId" in: "path" description: "Consent Id generated through POST Consent." required: true schema: type: "integer" format: "int64" requestBody: description: "Applicable Open Banking data cluster values." content: application/json: schema: $ref: "#/components/schemas/UpdateConsentRequest" required: true responses: 200: description: "OK" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/UpdatedConsentResponse" 400: description: "Y800 : Invalid value for consentId
    Y800 : Invalid value for consentParam
    Y802 : The consent duration days is outside of the range selected during onboarding, hence consentDurationDays not allowed
    Y803 : consent duration days preference required consentParam
    Y812 : Required field/value - scopeId missing in the consentParam
    " content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false /providerAccounts/{providerAccountId}/preferences: put: tags: - "ProviderAccounts" summary: "Envestnet Update Preferences" description: "This endpoint is used to update preferences like data extracts and auto refreshes without triggering refresh for the providerAccount.
    Setting isDataExtractsEnabled to false will not trigger data extracts notification and dataExtracts/events will not reflect any data change that is happening for the providerAccount.
    Modified data will not be provided in the dataExtracts/userData endpoint.
    Setting isAutoRefreshEnabled to false will not trigger auto refreshes for the provider account.
    " operationId: "updatePreferences" parameters: - name: "providerAccountId" in: "path" description: "providerAccountId" required: true schema: type: "integer" format: "int64" requestBody: description: "preferences" content: application/json: schema: $ref: "#/components/schemas/ProviderAccountPreferencesRequest" required: true responses: 204: description: "OK" content: {} 400: description: "Y800 : Invalid value for preferences
    Y800 : Invalid value for preferences.isDataExtractsEnabled
    Y800 : Invalid value for preferences.isAutoRefreshEnabled
    Y807 : Resource not found
    Y830 : Data extracts feature has to be enabled to set preferences.isDataExtractsEnabled as true
    Y830 : Auto refresh feature has to be enabled to set preferences.isAutoRefreshEnabled as true
    Y868 : No action is allowed, as the data is being migrated to the Open Banking provider
    " content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false /auth/token: post: tags: - "Auth" summary: "Envestnet Generate Access Token" description: "Generate Access Token using client credential authentication.
    This service returns access tokens required to access Yodlee 1.1 APIs. These tokens are the simplest and easiest of several alternatives for authenticating with Yodlee servers.
    The most commonly used services obtain data specific to an end user (your customer). For these services, you need a user access token. These are simply tokens created with the user name parameter (loginName) set to the id of your end user.

    Note: You determine this id and you must ensure it's unique among all your customers.


    Each token issued has an associated user. The token passed in the http headers explicitly names the user referenced in that API call.

    Some of the APIs do administrative work, and don't reference an end user.
    One example of administrative work is key management. Another example is registering a new user explicitly, with POST /user/register call or subscribe to webhook, with POST /config/notifications/events/{eventName}.
    To invoke these, you need an admin access token. Create this by passing in your admin user login name in place of a regular user name.

    This service also allows for simplified registration of new users. Any time you pass in a user name not already in use, the system will automatically implicitly create a new user for you.
    This user will naturally have very few associated details. You can later provide additional user information by calling the PUT user/register service.

    Notes:" operationId: "generateAccessToken" requestBody: content: application/x-www-form-urlencoded: schema: properties: clientId: type: "string" description: "clientId issued by Yodlee is used to generate the OAuth token for authentication." secret: type: "string" description: "secret issued by Yodlee is used to generate the OAuth token for authentication." responses: 201: description: "OK" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/ClientCredentialTokenResponse" 400: description: "Y800 : Invalid value for loginName
    Y806 : Invalid input
    Y801 : Invalid length for loginName
    Y303 : clientId or secret is missing
    Y301 : Invalid clientId or secret
    Y305 : Access token can be issued only for pre-registered users
    Y004 : Inactive user
    Y901 : Service not supported
    " content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Y016 : loginName header missing
    Y015 : Unauthorized User
    Y016 : Api-Version header missing
    Y020 : Invalid token in authorization header
    Y027 : Unsupported authentication type" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 404: description: "Not Found" content: {} deprecated: false delete: tags: - "Auth" summary: "Envestnet Delete Token" description: "This endpoint revokes the token passed in the Authorization header. This service is applicable for JWT-based (and all API key-based) authentication and also client credential (clientId and secret) based authentication. This service does not return a response body. The HTTP response code is 204 (success with no content).
    Tokens generally have limited lifetime of up to 30 minutes. You will call this service when you finish working with one user, and you want to delete the valid token rather than simply letting it expire.

    Note:
  • Revoking an access token (either type, admin or a user token) can take up to 2 minutes, as the tokens are stored on a distributed system.
    " operationId: "deleteToken" responses: 204: description: "No Content" content: {} 401: description: "Y020 : Invalid token in authorization header
    Y023 : Token has expired
    Y016 : Api-Version header missing
    Y015 : Unauthorized User
    Y027 : Unsupported authentication type
    Y007 : Authorization header missing
    Y020 : Invalid token in authorization header" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 404: description: "Not Found" content: {} deprecated: false /user: get: tags: - "User" summary: "Envestnet Get User Details" description: "The get user details service is used to get the user profile information and the application preferences set at the time of user registration.
    " operationId: "getUser" responses: 200: description: "OK" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/UserDetailResponse" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false put: tags: - "User" summary: "Envestnet Update User Details" description: "The update user details service is used to update user details like name, address, currency preference, etc.
    Currency provided in the input will be respected in the Derived services and the amount fields in the response will be provided in the preferred currency.
    The HTTP response code is 204 (Success without content).

    Login Name Change Feature: loginName can be passed to update the user's login name. Once the loginName is updated, to access the user's data, a token with the changed loginName must be created. This feature is supported only Client Credentials authentication methods.
    Note:
  • We strongly recommend to immediately delete the old access token once the user's loginName is successfully changed to avoid misuse.
  • After updating the login name, the already sent data extract events with the old login name will no more be functional. Replace the loginName with new loginName or try polling method to retrieve the data.

  • " operationId: "updateUser" requestBody: description: "userRequest" content: application/json: schema: $ref: "#/components/schemas/UpdateUserRequest" required: true responses: 204: description: "No Content" content: {} 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false /providerAccounts/{providerAccountId}: get: tags: - "ProviderAccounts" summary: "Envestnet Get Provider Account Details" description: "The get provider account details service is used to learn the status of adding accounts and updating accounts.
    This service has to be called continuously to know the progress level of the triggered process. This service also provides the MFA information requested by the provider site.
    When include = credentials, questions is passed as input, the service returns the credentials (non-password values) and questions stored in the Yodlee system for that provider account.

    Note:
  • The password and answer fields are not returned in the response.
  • " operationId: "getProviderAccount" parameters: - name: "include" in: "query" description: "include credentials,questions" allowEmptyValue: false schema: type: "string" - name: "providerAccountId" in: "path" description: "providerAccountId" required: true schema: type: "integer" format: "int64" - name: "requestId" in: "query" description: "The unique identifier for the request that returns contextual data" allowEmptyValue: false schema: type: "string" responses: 200: description: "OK" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/ProviderAccountDetailResponse" 400: description: "Y800 : Invalid value for providerAccountId
    Y816 : questions can only be requested for questionAndAnswer Supported Sites" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false delete: tags: - "ProviderAccounts" summary: "Envestnet Delete Provider Account" description: "The delete provider account service is used to delete a provider account from the Yodlee system. This service also deletes the accounts that are created in the Yodlee system for that provider account.
    This service does not return a response. The HTTP response code is 204 (Success with no content).
    " operationId: "deleteProviderAccount" parameters: - name: "providerAccountId" in: "path" description: "providerAccountId" required: true schema: type: "integer" format: "int64" responses: 200: description: "OK" content: {} 400: description: "Y800 : Invalid value for providerAccountId
    Y868 : No action is allowed, as the data is being migrated to the Open Banking provider
    " content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false /transactions/categories: get: tags: - "Transactions" summary: "Envestnet Get Transaction Category List" description: "The categories service returns the list of available transaction categories.
    High level category is returned in the response only if it is opted by the customer.
    When invoked by passing the cobrand session or admin access token, this service returns the supported transaction categories at the cobrand level.
    When invoked by passing the cobrand session and the user session or user access token, this service returns the transaction categories
    along with user-defined categories.
    Double quotes in the user-defined category name will be prefixed by backslashes (\) in the response,
    e.g. Toys \"R\" Us.
    Source and id are the primary attributes of the category entity.

    Note:
  • This service supports the localization feature and accepts locale as a header parameter.
  • " operationId: "getTransactionCategories" responses: 200: description: "OK" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/TransactionCategoryResponse" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false put: tags: - "Transactions" summary: "Envestnet Update Category" description: "The update transaction categories service is used to update the transaction category name
    for a high level category, a system-defined category and a user-defined category.
    The renamed category can be set back to the original name by passing an empty string for categoryName.
    The categoryName can accept minimum of 1, maximum of 50 alphanumeric or special characters.
    The HTTP response code is 204 (Success without content).
    " operationId: "updateTransactionCategory" requestBody: description: "updateCategoryRequest" content: application/json: schema: $ref: "#/components/schemas/UpdateCategoryRequest" required: true responses: 204: description: "Updated Successfully" content: {} 400: description: "Y800 : Invalid value for categoryParam
    Y800 : Invalid value for source
    Y801 : Invalid length for categoryName. Min 1 and max 50 is required
    Y803 : id required
    Y811 : categoryName value already exists" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false post: tags: - "Transactions" summary: "Envestnet Create Category" description: "The create transaction categories service is used to create user-defined categories for a system-defined category.
    The parentCategoryId is the system-defined category id.This can be retrieved using get transaction categories service.
    The categoryName can accept minimum of 1, maximum of 50 alphanumeric or special characters.
    The HTTP response code is 201 (Created successfully).
    " operationId: "createTransactionCategory" requestBody: description: "User Transaction Category in JSON format" content: application/json: schema: $ref: "#/components/schemas/TransactionCategoryRequest" required: true responses: 201: description: "Created Successfully" content: {} 400: description: "Y800 : Invalid value for categoryParam
    Y800 : Invalid value for source
    Y801 : Invalid length for categoryName. Min 1 and max 50 is required
    Y803 : parentCategoryId required
    Y811 : categoryName value already exists" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false /transactions/categories/rules: get: tags: - "Transactions" summary: "Envestnet Get Transaction Categorization Rules" description: "The get transaction categorization rule service is used to get all the categorization rules.
    " operationId: "getTransactionCategorizationRulesDeprecated" responses: 200: description: "OK" content: application/json;charset=UTF-8: schema: type: "array" items: $ref: "#/components/schemas/TransactionCategorizationRule" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: true post: tags: - "Transactions" summary: "Envestnet Create or Run Transaction Categorization Rule" description: "The Create or Run Transaction Categorization Rule endpoint is used to:
    Create transaction categorization rules for both system and user-defined categories.
    Run all the transaction categorization rules to categorize transactions by calling the endpoint with action=run as the query parameter.

    The input body parameters to create transaction categorization rules follow:
    categoryId - This field is mandatory and numeric
    priority - This field is optional and numeric. Priority decides the order in which the rule gets applied on transactions.
    ruleClause - This field is mandatory and should contain at least one rule
    field - The value can be description or amount

    If the field value is description then,
    1. operation - value can be stringEquals or stringContains
    2. value - value should be min of 3 and max of 50 characters

    If the field value is amount then,
    1. operation - value can be numberEquals, numberLessThan, numberLessThanEquals, numberGreaterThan or numberGreaterThanEquals
    2. value - min value 0 and a max value of 99999999999.99 is allowed
    The HTTP response code is 201 (Created Successfully)." operationId: "createOrRunTransactionCategorizationRules" parameters: - name: "action" in: "query" description: "To run rules, pass action=run. Only value run is supported" allowEmptyValue: false schema: type: "string" - name: "ruleParam" in: "query" description: "rules(JSON format) to categorize the transactions" allowEmptyValue: false schema: type: "string" responses: 201: description: "Created Successfully" content: {} 204: description: "No Content" content: {} 400: description: "Y806 : Invalid input
    Y400 : Rule already exists. Rule should be unique in terms of combination of description and amount" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false /consents: get: tags: - "Consents" summary: "Envestnet Get Consents" description: "The get consent service is used to retrieve all the consents submitted to Yodlee.
    The service can be used to build a manage consent interface or a consent dashboard to implement the renew and revoke consent flows.
    Note:This service supports the localization feature and accepts locale as a header parameter.
    " operationId: "getConsents" parameters: - name: "consentIds" in: "query" description: "Consent Id generated through POST Consent." allowEmptyValue: false schema: type: "string" - name: "include" in: "query" description: "The flag responsible to include renew details like sharing duration and reauthorization required" allowEmptyValue: false schema: type: "string" - name: "providerAccountIds" in: "query" description: "Unique identifier for the provider account resource. This is created during account addition." allowEmptyValue: false schema: type: "string" responses: 200: description: "OK" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/ConsentResponse" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false post: tags: - "Consents" summary: "Envestnet Post Consent" description: "The generate consent service is used to generate all the consent information and permissions associated to a provider.
    The scope provided in the response is based on the providerId and the datasets provided in the input.
    If no dataset value is provided, the datasets that are configured for the customer will be considered.
    The configured dataset can be overridden by providing the dataset as an input.
    If no applicationName is provided in the input, the default applicationName will be considered. Note:This service supports the localization feature and accepts locale as a header parameter.
    " operationId: "createConsent" requestBody: description: "Unique identifier for the provider site(mandatory), the name of the application,
    the flag responsible to include html content in the response,
    when passed as true and the name of the dataset attribute supported by the provider." content: application/json: schema: $ref: "#/components/schemas/CreateConsentRequest" required: true responses: 200: description: "OK" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/CreatedConsentResponse" 400: description: "Y800 : Invalid value for providerId
    Y807 : Resource not found
    Y800 : Invalid value for consentParam
    Y901 : Service not supported
    Y800 : Invalid value for applicationName
    " content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false /statements: get: tags: - "Statements" summary: "Envestnet Get Statements" description: "The statements service is used to get the list of statement related information.
    By default, all the latest statements of active and to be closed accounts are retrieved for the user.
    Certain sites do not have both a statement date and a due date. When a fromDate is passed as an input, all the statements that have the due date on or after the passed date are retrieved.
    For sites that do not have the due date, statements that have the statement date on or after the passed date are retrieved.
    The default value of \"isLatest\" is true. To retrieve historical statements isLatest needs to be set to false.
    " operationId: "getStatements" parameters: - name: "accountId" in: "query" description: "accountId" allowEmptyValue: false schema: type: "string" - name: "container" in: "query" description: "creditCard/loan/insurance" allowEmptyValue: false schema: type: "string" - name: "fromDate" in: "query" description: "from date for statement retrieval (YYYY-MM-DD)" allowEmptyValue: false schema: type: "string" - name: "isLatest" in: "query" description: "isLatest (true/false)" allowEmptyValue: false schema: type: "string" - name: "status" in: "query" description: "ACTIVE,TO_BE_CLOSED,CLOSED" allowEmptyValue: false schema: type: "string" responses: 200: description: "OK" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/StatementResponse" 400: description: "Y800 : Invalid value for accountId
    Y800 : Invalid value for status
    Y805 : Multiple containers not supported
    Y800 : Invalid value for container
    Y800 : Invalid value for isLatest
    Y800 : Invalid value for fromDate
    " content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false /accounts: get: tags: - "Accounts" summary: "Envestnet Get Accounts" description: "This API Reference guide is intended for FastLink 4 Users. For FastLink 3 Users, there are additional integration notes related to this endpoint here.

    The get accounts service provides information about accounts added by the user.
    By default, this service returns information for active and to be closed accounts.
    If requestId is provided, the accounts that are updated in the context of the requestId will be provided in the response.

    This API returns all the accounts that were chosen by the user in both the verification selection screen and the aggregation selection screen. In FastLink 4, we have separate APIs to provide the data for verification product-related data (/verification/verifiedAccounts) and the GET accounts should be utilized with an additional query param (isSelectedForAggregation=true) to retrieve only the aggregation accounts." operationId: "getAllAccounts" parameters: - name: "accountId" in: "query" description: "Comma separated accountIds." allowEmptyValue: false schema: type: "string" - name: "container" in: "query" description: "bank/creditCard/investment/insurance/loan/reward/realEstate/otherAssets/otherLiabilities" allowEmptyValue: false schema: type: "string" - name: "convertToCurrency" in: "query" description: "On-demand currency conversion parameter" allowEmptyValue: false schema: type: "string" - name: "include" in: "query" description: "profile, holder, fullAccountNumber, fullAccountNumberList, paymentProfile, autoRefresh
    Note:
  • fullAccountNumber is deprecated and is replaced with fullAccountNumberList in include parameter and response.

  • profile is deprecated, and to retrieve the profile information, call the GET /verification/holderProfile API instead.
  • " allowEmptyValue: false schema: type: "string" - name: "providerAccountId" in: "query" description: "Comma separated providerAccountIds." allowEmptyValue: false schema: type: "string" - name: "requestId" in: "query" description: "The unique identifier that returns contextual data" allowEmptyValue: false schema: type: "string" - name: "status" in: "query" description: "ACTIVE,INACTIVE,TO_BE_CLOSED,CLOSED" allowEmptyValue: false schema: type: "string" responses: 200: description: "OK" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/AccountResponse" 400: description: "Y800 : Invalid value for status
    Y800 : Invalid value for container
    Y800 : Invalid value for providerAccountId
    Y824 : The maximum number of accountIds permitted is 100" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false post: tags: - "Accounts" summary: "Envestnet Add Manual Account" description: "The add account service is used to add manual accounts.
    The response of add account service includes the account name , account number and Yodlee generated account id.
    All manual accounts added will be included as part of networth calculation by default.
    Add manual account support is available for bank, card, investment, insurance and loan container only.

    Note:" operationId: "createManualAccount" requestBody: description: "accountParam" content: application/json: schema: $ref: "#/components/schemas/CreateAccountRequest" required: true responses: 200: description: "OK" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/CreatedAccountResponse" 400: description: "Y800 : Invalid value for accountParam
    Y811 : Real Estate Property value already exists
    Y862 : The provided address is invalid, or the valuation is not available
    Y869 : Multiple matches found. Provide the complete address or call the POST /accounts/evaluateAddress API to retrieve the list of matched addresses
    " content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false /holdings/holdingTypeList: get: tags: - "Holdings" summary: "Envestnet Get Holding Type List" description: "The get holding types list service is used to get the supported holding types.
    The response includes different holding types such as future, moneyMarketFund, stock, etc. and it returns the supported holding types
    " operationId: "getHoldingTypeList" responses: 200: description: "OK" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/HoldingTypeListResponse" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false /user/logout: post: tags: - "User" summary: "Envestnet User Logout" description: "Deprecated: This endpoint is deprecated for API Key-based authentication. The user logout service allows the user to log out of the application.
    The service does not return a response body. The HTTP response code is 204 (Success with no content).
    " operationId: "userLogout" responses: 204: description: "Logout successful" content: {} 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false /transactions/{transactionId}: put: tags: - "Transactions" summary: "Envestnet Update Transaction" description: "The update transaction service is used to update the category,consumer description, memo, isPhysical, merchantType, detailCategory for a transaction.
    The HTTP response code is 204 (Success without content).
    " operationId: "updateTransaction" parameters: - name: "transactionId" in: "path" description: "transactionId" required: true schema: type: "integer" format: "int64" requestBody: description: "transactionRequest" content: application/json: schema: $ref: "#/components/schemas/TransactionRequest" required: true responses: 204: description: "Updated Successfully" content: {} 400: description: "Y812 : Required field -container missing in the transactionParam parameter input
    Y800 : Invalid value for transactionId
    Y800 : Invalid value for merchantType
    Y800 : Invalid value for detailCategoryId
    Y800 : Invalid value for categoryId
    Y868 : No action is allowed, as the data is being migrated to the Open Banking provider
    " content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false /user/unregister: delete: tags: - "User" summary: "Envestnet Delete User" description: "The delete user service is used to delete or unregister a user from Yodlee.
    Once deleted, the information related to the users cannot be retrieved.
    The HTTP response code is 204 (Success without content)
    " operationId: "unregister" responses: 204: description: "No Content" content: {} 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false /holdings/assetClassificationList: get: tags: - "Holdings" summary: "Envestnet Get Asset Classification List" description: "The get asset classifications list service is used to get the supported asset classifications.
    The response includes different classification types like assetClass, country, sector, style, etc. and the values corresponding to each type.
    " operationId: "getAssetClassificationList" responses: 200: description: "OK" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/HoldingAssetClassificationListResponse" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false /dataExtracts/events: get: tags: - "DataExtracts" summary: "Envestnet Get Events" description: "The get extracts events service is used to learn about occurrences of data extract related events. This service currently supports only the DATA_UPDATES event.
    Passing the event name as DATA_UPDATES provides information about users for whom data has been modified in the system for the specified time range. To learn more, please refer to the Data Extracts page.
    You can retrieve data in increments of no more than 60 minutes over the period of the last 7 days from today's date.
    This service is only invoked with either admin access token or a cobrand session.
    " operationId: "getDataExtractsEvents" parameters: - name: "eventName" in: "query" description: "Event Name" required: true allowEmptyValue: false schema: type: "string" - name: "fromDate" in: "query" description: "From DateTime (YYYY-MM-DDThh:mm:ssZ)" required: true allowEmptyValue: false schema: type: "string" - name: "toDate" in: "query" description: "To DateTime (YYYY-MM-DDThh:mm:ssZ)" required: true allowEmptyValue: false schema: type: "string" responses: 200: description: "OK" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/DataExtractsEventResponse" 400: description: "Y800 : Invalid value for fromDate.fromDate cannot be greater than current time
    Y800 : Invalid value for toDate.toDate cannot be greater than current time
    Y800 : Invalid value for fromDate or toDate.fromDate and toDate cannot be older than 7 days
    Y800 : Invalid value for fromDate.fromDate cannot be greater than toDate." content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false /derived/holdingSummary: get: tags: - "Derived" summary: "Envestnet Get Holding Summary" description: "The get holding summary service is used to get the summary of asset classifications for the user.
    By default, accounts with status as ACTIVE and TO BE CLOSED will be considered.
    If the include parameter value is passed as details then a summary with holdings and account information is returned.
    " operationId: "getHoldingSummary" parameters: - name: "accountIds" in: "query" description: "Comma separated accountIds" allowEmptyValue: false schema: type: "string" - name: "classificationType" in: "query" description: "e.g. Country, Sector, etc." allowEmptyValue: false schema: type: "string" - name: "include" in: "query" description: "details" allowEmptyValue: false schema: type: "string" responses: 200: description: "OK" content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/DerivedHoldingSummaryResponse" 400: description: "Y800 : Invalid value for classificationType
    Y814 : Exchange rate not available for currency
    Y824 : The maximum number of accountIds permitted is 100
    " content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/YodleeError" 401: description: "Unauthorized" content: {} 404: description: "Not Found" content: {} deprecated: false components: schemas: Account: title: "Account" type: "object" properties: availableCash: $ref: "#/components/schemas/Money" includeInNetWorth: type: "boolean" description: "Used to determine whether an account to be considered in the networth calculation.

    Aggregated / Manual: Aggregated
    Applicable containers: bank,creditCard,loan,investment,insurance,realEstate,otherAssets,otherLiabilities
    Endpoints:" readOnly: true moneyMarketBalance: $ref: "#/components/schemas/Money" enrollmentDate: type: "string" description: "Date on which the user is enrolled on the rewards program.

    Aggregated / Manual: Aggregated
    Applicable containers: reward
    Endpoints:" readOnly: true estimatedDate: type: "string" description: "The date on which the home value was estimated.

    Aggregated / Manual: Manual
    Applicable containers: realEstate
    Endpoints:" readOnly: true memo: type: "string" description: "The additional description or notes given by the user.

    Aggregated / Manual: Both
    Applicable containers: All containers
    Endpoints:" readOnly: true guarantor: type: "string" description: "A nonprofit or state organization that works with lender, servicer, school, and the Department of Education to help successfully repay Federal Family Education Loan Program (FFELP) loans. If FFELP student loans default, the guarantor takes ownership of them.

    Aggregated / Manual: Aggregated
    Applicable containers: loan
    Endpoints:" readOnly: true interestPaidLastYear: $ref: "#/components/schemas/Money" lastUpdated: type: "string" description: "The date time the account information was last retrieved from the provider site and updated in the Yodlee system.

    Aggregated / Manual: Both
    Applicable containers: All containers
    Endpoints:" readOnly: true balance: $ref: "#/components/schemas/Money" homeInsuranceType: type: "string" description: "Type of home insurance, like -Aggregated / Manual: Aggregated
    Applicable containers: insurance
    Endpoints:Applicable Values
    " readOnly: true enum: - "HOME_OWNER" - "RENTAL" - "RENTER" - "UNKNOWN" - "OTHER" id: type: "integer" description: "The primary key of the account resource and the unique identifier for the account.

    Aggregated / Manual: Both
    Applicable containers: All containers
    Endpoints:" format: "int64" readOnly: true cash: $ref: "#/components/schemas/Money" totalCreditLine: $ref: "#/components/schemas/Money" providerName: type: "string" description: "Service provider or institution name where the account originates. This belongs to the provider resource.

    Aggregated / Manual: Both
    Applicable containers: All containers
    Endpoints:" readOnly: true valuationType: type: "string" description: "The valuation type indicates whether the home value is calculated either manually or by Yodlee Partners.

    Aggregated / Manual: Manual
    Applicable containers: realEstate
    Endpoints:Applicable Values
    " readOnly: true enum: - "SYSTEM" - "MANUAL" marginBalance: $ref: "#/components/schemas/Money" apr: type: "number" description: "The annual percentage rate (APR) is the yearly rate of interest on the credit card account.
    Additional Details: The yearly percentage rate charged when a balance is held on a credit card. This rate of interest is applied every month on the outstanding credit card balance.
    Aggregated / Manual: Aggregated
    Applicable containers: creditCard
    Endpoints:
    " format: "double" readOnly: true availableCredit: $ref: "#/components/schemas/Money" currentBalance: $ref: "#/components/schemas/Money" isManual: type: "boolean" description: "Indicates if an account is aggregated from a site or it is a manual account i.e. account information manually provided by the user.
    Aggregated / Manual: Both
    Applicable containers: All containers
    Endpoints:" readOnly: true profile: $ref: "#/components/schemas/AccountProfile" escrowBalance: $ref: "#/components/schemas/Money" nextLevel: type: "string" description: "The eligible next level of the rewards program.

    Aggregated / Manual: Aggregated
    Applicable containers: reward
    Endpoints:" readOnly: true classification: type: "string" description: "The classification of the account such as personal, corporate, etc.

    Aggregated / Manual: Aggregated
    Applicable containers: bank, creditCard, investment, reward, loan, insurance
    Endpoints:Applicable Values
    " readOnly: true enum: - "OTHER" - "PERSONAL" - "CORPORATE" - "SMALL_BUSINESS" - "TRUST" - "ADD_ON_CARD" - "VIRTUAL_CARD" loanPayoffAmount: $ref: "#/components/schemas/Money" interestRateType: type: "string" description: "The type of the interest rate, for example, fixed or variable.
    Applicable containers: loan
    Aggregated / Manual: Aggregated
    Endpoints:
    Applicable Values
    " readOnly: true enum: - "FIXED" - "VARIABLE" - "UNKNOWN" - "OTHER" loanPayByDate: type: "string" description: "The date by which the payoff amount should be paid.

    Aggregated / Manual: Aggregated
    Applicable containers: loan
    Endpoints:" readOnly: true faceAmount: $ref: "#/components/schemas/Money" policyFromDate: type: "string" description: "The date the insurance policy began.
    Aggregated / Manual: Aggregated
    Applicable containers: insurance
    Endpoints:
    " readOnly: true premiumPaymentTerm: type: "string" description: "The number of years for which premium payments have to be made in a policy.

    Aggregated / Manual: Aggregated
    Applicable containers: insurance
    Endpoints:" readOnly: true policyTerm: type: "string" description: "The duration for which the policy is valid or in effect. For example, one year, five years, etc.
    Aggregated / Manual: Aggregated
    Applicable containers: insurance
    Endpoints:
    " readOnly: true repaymentPlanType: type: "string" description: "The type of repayment plan that the borrower prefers to repay the loan.

    Aggregated / Manual: Aggregated
    Applicable containers: loan
    Endpoints:Applicable Values:
    " readOnly: true enum: - "STANDARD" - "GRADUATED" - "EXTENDED" - "INCOME_BASED" - "INCOME_CONTINGENT" - "INCOME_SENSITIVE" - "PAY_AS_YOU_EARN" - "REVISED_PAY_AS_YOU_EARN" aggregatedAccountType: type: "string" description: "The type of account that is aggregated." readOnly: true availableBalance: $ref: "#/components/schemas/Money" accountStatus: type: "string" description: "The status of the account that is updated by the consumer through an application or an API. Valid Values: AccountStatus
    Additional Details:
    ACTIVE: All the added manual and aggregated accounts status will be made \"ACTIVE\" by default.
    TO_BE_CLOSED: If the aggregated accounts are not found or closed in the data provider site, Yodlee system marks the status as TO_BE_CLOSED
    INACTIVE: Users can update the status as INACTIVE to stop updating and to stop considering the account in other services
    CLOSED: Users can update the status as CLOSED, if the account is closed with the provider.

    Aggregated / Manual: Both
    Applicable containers: All containers
    Endpoints:Applicable Values
    " readOnly: true enum: - "ACTIVE" - "INACTIVE" - "TO_BE_CLOSED" - "CLOSED" - "DELETED" lifeInsuranceType: type: "string" description: "Type of life insurance.

    Aggregated / Manual: Aggregated
    Applicable containers: insurance
    Endpoints:Applicable Values
    " readOnly: true enum: - "OTHER" - "TERM_LIFE_INSURANCE" - "UNIVERSAL_LIFE_INSURANCE" - "WHOLE_LIFE_INSURANCE" - "VARIABLE_LIFE_INSURANCE" - "ULIP" - "ENDOWMENT" fullAccountNumber: type: "string" description: "Full account number of the account that is included only when include = fullAccountNumber is provided in the request. For student loan account the account number that will be used for ACH or fund transfer

    Aggregated / Manual: Both
    Applicable containers: bank, creditCard, investment, insurance, loan, reward, otherAssets, otherLiabilities
    Endpoints:" readOnly: true premium: $ref: "#/components/schemas/Money" aggregationSource: type: "string" description: "The source through which the account(s) are added in the system.
    Valid Values: SYSTEM, USER
    Applicable containers: All Containers
    Aggregated / Manual: Both
    Endpoints:
    Applicable Values
    " readOnly: true enum: - "SYSTEM" - "USER" overDraftLimit: $ref: "#/components/schemas/Money" nickname: type: "string" description: "The nickname of the account as provided by the consumer to identify an account. The account nickname can be used instead of the account name.

    Aggregated / Manual: Both
    Applicable containers: All containers
    Endpoints:" readOnly: true term: type: "string" description: "The tenure for which the CD account is valid or in case of loan, the number of years/months over which the loan amount has to be repaid.
    Additional Details:
    Bank: The Term field is only applicable for the account type CD.Loan: The period for which the loan agreement is in force. The period, before or at the end of which, the loan should either be repaid or renegotiated for another term.

    Aggregated / Manual: Aggregated
    Applicable containers: bank, loan
    Endpoints:" readOnly: true interestRate: type: "number" description: "
    Bank: The interest rate offered by a FI to its depositors on a bank account.
    Loan: Interest rate applied on the loan.
    Additional Details:
    Note: The Interest Rate field is only applicable for the following account types: savings, checking, money market, and certificate of deposit.

    Aggregated / Manual: Aggregated
    Applicable containers: bank, loan
    Endpoints:" format: "double" readOnly: true deathBenefit: $ref: "#/components/schemas/Money" address: $ref: "#/components/schemas/AccountAddress" cashValue: $ref: "#/components/schemas/Money" holder: type: "array" description: "Holder details of the account.

    Aggregated / Manual: Aggregated
    Applicable containers: bank
    Endpoints:" readOnly: true items: $ref: "#/components/schemas/AccountHolder" 401kLoan: $ref: "#/components/schemas/Money" homeValue: $ref: "#/components/schemas/Money" accountNumber: type: "string" description: "The account number as it appears on the site. (The POST accounts service response return this field as number)
    Additional Details: Bank/ Loan/ Insurance/ Investment:
    The account number for the bank account as it appears at the site.
    Credit Card: The account number of the card account as it appears at the site,
    i.e., the card number.The account number can be full or partial based on how it is displayed in the account summary page of the site.In most cases, the site does not display the full account number in the account summary page and additional navigation is required to aggregate it.
    Applicable containers: All Containers
    Aggregated / Manual: Both
    Endpoints:
    " readOnly: true createdDate: type: "string" description: "The date on which the account is created in the Yodlee system.
    Additional Details: It is the date when the user links or aggregates the account(s) that are held with the provider to the Yodlee system.

    Aggregated / Manual: Both
    Applicable containers: All containers
    Endpoints:" readOnly: true interestPaidYTD: $ref: "#/components/schemas/Money" providerAccountId: type: "integer" description: "The primary key of the provider account resource.

    Aggregated / Manual: Both
    Applicable containers: All containers
    Endpoints:" format: "int64" readOnly: true collateral: type: "string" description: "Property or possession offered to support a loan that can be seized on a default.
    Applicable containers: loan
    Aggregated / Manual: Aggregated
    Endpoints:
    " readOnly: true dataset: type: "array" description: "Logical grouping of dataset attributes into datasets such as Basic Aggregation Data, Account Profile and Documents.

    Aggregated / Manual: Aggregated
    Applicable containers: All containers
    Endpoints:" readOnly: true items: $ref: "#/components/schemas/AccountDataset" runningBalance: $ref: "#/components/schemas/Money" sourceId: type: "string" description: "A unique ID that the provider site has assigned to the account. The source ID is only available for the HELD accounts.

    Applicable containers: bank, creditCard, investment, insurance, loan, reward
    Endpoints:" readOnly: true dueDate: type: "string" description: "The date on which the due amount has to be paid.
    Additional Details:
    Credit Card: The monthly date by when the minimum payment is due to be paid on the credit card account.
    Loan: The date on or before which the due amount should be paid.
    Note: The due date at the account-level can differ from the due date field at the statement-level, as the information in the aggregated card account data provides an up-to-date information to the consumer.

    Aggregated / Manual: Aggregated
    Applicable containers: creditCard, loan, insurance
    Endpoints:" readOnly: true frequency: type: "string" description: "The frequency of the billing cycle of the account in case of card. The frequency in which premiums are paid in an insurance policy such as monthly, quarterly, and annually. The frequency in which due amounts are paid in a loan account.

    Aggregated / Manual: Both
    Applicable containers: creditCard, insurance, loan
    Endpoints:Applicable Values
    " readOnly: true enum: - "DAILY" - "ONE_TIME" - "WEEKLY" - "EVERY_2_WEEKS" - "SEMI_MONTHLY" - "MONTHLY" - "QUARTERLY" - "SEMI_ANNUALLY" - "ANNUALLY" - "EVERY_2_MONTHS" - "EBILL" - "FIRST_DAY_MONTHLY" - "LAST_DAY_MONTHLY" - "EVERY_4_WEEKS" - "UNKNOWN" - "OTHER" maturityAmount: $ref: "#/components/schemas/Money" associatedProviderAccountId: type: "array" description: "The providerAccountIds that share the account with the primary providerAccountId that was created when the user had added the account for the first time.
    Additional Details: This attribute is returned in the response only if the account deduplication feature is enabled and the same account is mapped to more than one provider account IDs indicating the account is owned by more than one user, for example, joint accounts.

    Aggregated / Manual: Aggregated
    Applicable containers: All Containers
    Endpoints:" readOnly: true items: type: "integer" format: "int64" isAsset: type: "boolean" description: "The account to be considered as an asset or liability.
    Applicable containers: All Containers
    Aggregated / Manual: Both
    Endpoints:
    " readOnly: true principalBalance: $ref: "#/components/schemas/Money" totalCashLimit: $ref: "#/components/schemas/Money" maturityDate: type: "string" description: "The date when a certificate of deposit (CD/FD) matures or the final payment date of a loan at which point the principal amount (including pending interest) is due to be paid.
    Additional Details: The date when a certificate of deposit (CD) matures, i.e., the money in the CD can be withdrawn without paying an early withdrawal penalty.The final payment date of a loan, i.e., the principal amount (including pending interest) is due to be paid.

    Aggregated / Manual: Aggregated
    Applicable containers: bank, loan
    Endpoints:" readOnly: true minimumAmountDue: $ref: "#/components/schemas/Money" annualPercentageYield: type: "number" description: "Annual percentage yield (APY) is a normalized representation of an interest rate, based on a compounding period of one year. APY generally refers to the rate paid to a depositor by a financial institution on an account.
    Applicable containers: bank
    Aggregated / Manual: Aggregated
    Endpoints:
    " format: "double" readOnly: true accountType: type: "string" description: "The type of account that is aggregated, i.e., savings, checking, credit card, charge, HELOC, etc. The account type is derived based on the attributes of the account.
    Valid Values:
    Aggregated Account Type
    bankcreditCardinvestment (SN 1.0)investment (SN 2.0)loaninsurancerealEstaterewardManual Account Type
    bankcreditloaninsuranceinvestment

    Aggregated / Manual: Both
    Applicable containers: All containers
    Endpoints:" readOnly: true originationDate: type: "string" description: "The date on which the loan is disbursed.

    Aggregated / Manual: Both
    Applicable containers: loan
    Endpoints:" readOnly: true totalVestedBalance: $ref: "#/components/schemas/Money" rewardBalance: type: "array" description: "Information of different reward balances associated with the account.

    Aggregated / Manual: Aggregated
    Applicable containers: reward
    Endpoints:" readOnly: true items: $ref: "#/components/schemas/RewardBalance" sourceAccountStatus: type: "string" description: "Indicates the status of the loan account.

    Aggregated / Manual: Aggregated
    Applicable containers: loan
    Endpoints:Applicable Values:
    " readOnly: true enum: - "IN_REPAYMENT" - "DEFAULTED" - "IN_SCHOOL" - "IN_GRACE_PERIOD" - "DELINQUENCY" - "DEFERMENT" - "FORBEARANCE" linkedAccountIds: type: "array" description: "List of Loan accountId(s) to which the real-estate account is linked

    Aggregated / Manual: Both
    Applicable containers: realEstate
    Endpoints:" readOnly: true items: type: "integer" format: "int64" derivedApr: type: "number" description: "Derived APR will be an estimated purchase APR based on consumers credit card transactions and credit card purchase.
    Aggregated / Manual / Derived: Derived
    Applicable containers: creditCard
    Endpoints:
    " format: "double" readOnly: true policyEffectiveDate: type: "string" description: "The date on which the insurance policy coverage commences.
    Applicable containers: insurance
    Aggregated / Manual: Aggregated
    Endpoints:
    " readOnly: true totalUnvestedBalance: $ref: "#/components/schemas/Money" annuityBalance: $ref: "#/components/schemas/Money" accountName: type: "string" description: "The account name as it appears at the site.
    (The POST accounts service response return this field as name)
    Applicable containers: All Containers
    Aggregated / Manual: Both
    Endpoints:
    " readOnly: true totalCreditLimit: $ref: "#/components/schemas/Money" policyStatus: type: "string" description: "The status of the policy.
    Aggregated / Manual: Aggregated
    Applicable containers: insurance
    Endpoints:
    Applicable Values
    " readOnly: true enum: - "ACTIVE" - "IN_ACTIVE" - "OTHER" shortBalance: $ref: "#/components/schemas/Money" lender: type: "string" description: "The financial institution that provides the loan.

    Aggregated / Manual: Aggregated
    Applicable containers: loan
    Endpoints:" readOnly: true lastEmployeeContributionAmount: $ref: "#/components/schemas/Money" providerId: type: "string" description: "Identifier of the provider site. The primary key of provider resource.

    Aggregated / Manual: Both
    Applicable containers: All containers
    Endpoints:" readOnly: true lastPaymentDate: type: "string" description: "The date on which the payment for the previous or current billing cycle is done.
    Additional Details: If the payment is already done for the current billing cycle, then the field indicates the payment date of the current billing cycle. If payment is yet to be done for the current billing cycle, then the field indicates the date on which the payment was made for any of the previous billing cycles. The last payment date at the account-level can differ from the last payment date at the statement-level, as the information in the aggregated card account data provides an up-to-date information to the consumer.

    Aggregated / Manual: Aggregated
    Applicable containers: creditCard, loan, insurance
    Endpoints:" readOnly: true primaryRewardUnit: type: "string" description: "Primary reward unit for this reward program. E.g. miles, points, etc.

    Aggregated / Manual: Aggregated
    Applicable containers: reward
    Endpoints:" readOnly: true lastPaymentAmount: $ref: "#/components/schemas/Money" remainingBalance: $ref: "#/components/schemas/Money" userClassification: type: "string" description: "Applicable containers: reward, bank, creditCard, investment, loan, insurance, realEstate, otherLiabilities
    Endpoints:
  • GET dataExtracts/userData
  • Applicable Values
    " readOnly: true enum: - "BUSINESS" - "PERSONAL" bankTransferCode: type: "array" description: "Bank and branch identification information.
    Aggregated / Manual: Aggregated
    Applicable containers: bank, investment, loan
    Endpoints:
    " readOnly: true items: $ref: "#/components/schemas/BankTransferCode" expirationDate: type: "string" description: "The date on which the insurance policy expires or matures.
    Additional Details: The due date at the account-level can differ from the due date field at the statement-level, as the information in the aggregated card account data provides an up-to-date information to the consumer.

    Aggregated / Manual: Aggregated
    Applicable containers: insurance
    Endpoints:" readOnly: true coverage: type: "array" description: "The coverage-related details of the account.

    Aggregated / Manual: Aggregated
    Applicable containers: insurance,investment
    Endpoints:" readOnly: true items: $ref: "#/components/schemas/Coverage" cashApr: type: "number" description: "Annual percentage rate applied to cash withdrawals on the card.

    Account Type: Aggregated
    Applicable containers: creditCard
    Endpoints:" format: "double" autoRefresh: $ref: "#/components/schemas/AutoRefresh" oauthMigrationStatus: type: "string" description: "Indicates the migration status of the account from screen-scraping provider to the Open Banking provider.

    Endpoints:" readOnly: true enum: - "IN_PROGRESS" - "TO_BE_MIGRATED" - "COMPLETED" - "MIGRATED" displayedName: type: "string" description: "The name or identification of the account owner, as it appears at the FI site.
    Note: The account holder name can be full or partial based on how it is displayed in the account summary page of the FI site. In most cases, the FI site does not display the full account holder name in the account summary page.

    Aggregated / Manual: Aggregated
    Applicable containers: bank, creditCard, investment, insurance, loan, reward
    Endpoints:" readOnly: true fullAccountNumberList: $ref: "#/components/schemas/FullAccountNumberList" amountDue: $ref: "#/components/schemas/Money" currentLevel: type: "string" description: "Current level of the reward program the user is associated with. E.g. Silver, Jade etc.

    Aggregated / Manual: Aggregated
    Applicable containers: reward
    Endpoints:" readOnly: true originalLoanAmount: $ref: "#/components/schemas/Money" policyToDate: type: "string" description: "The date to which the policy exists.
    Aggregated / Manual: Aggregated
    Applicable containers: insurance
    Endpoints:
    " readOnly: true loanPayoffDetails: $ref: "#/components/schemas/LoanPayoffDetails" paymentProfile: $ref: "#/components/schemas/PaymentProfile" CONTAINER: type: "string" description: "The type of service. E.g., Bank, Credit Card, Investment, Insurance, etc.

    Aggregated / Manual: Aggregated
    Applicable containers: All containers
    Endpoints:Applicable Values
    " readOnly: true enum: - "bank" - "creditCard" - "investment" - "insurance" - "loan" - "reward" - "bill" - "realEstate" - "otherAssets" - "otherLiabilities" lastEmployeeContributionDate: type: "string" description: "The date on which the last employee contribution was made to the 401k account.
    Note: The last employee contribution date field is derived from the transaction data and not aggregated from the FI site. The field is only applicable to the 401k account type.

    Aggregated / Manual: Aggregated
    Applicable containers: investment
    Endpoints:" readOnly: true lastPayment: $ref: "#/components/schemas/Money" recurringPayment: $ref: "#/components/schemas/Money" HoldingResponse: title: "HoldingResponse" type: "object" properties: holding: type: "array" readOnly: true items: $ref: "#/components/schemas/Holding" HoldingIdListResponse: title: "HoldingIdListResponse" type: "object" properties: holding: type: "array" readOnly: true items: $ref: "#/components/schemas/HoldingId" ApiKeyResponse: title: "ApiKeyResponse" type: "object" properties: apiKey: type: "array" description: "ApiKey customer details.

    Endpoints:" items: $ref: "#/components/schemas/ApiKeyOutput" CustomDisplayData: title: "CustomDisplayData" required: - "clientTrustedAdvisorTxt" - "consentConfirmation" - "deletePreference" - "thirdParty" - "userDataTreatment" type: "object" properties: consentConfirmation: $ref: "#/components/schemas/ConsentConfirmation" deletePreference: $ref: "#/components/schemas/DeletePreference" thirdParty: $ref: "#/components/schemas/ThirdParty" clientTrustedAdvisorTxt: $ref: "#/components/schemas/ClientTrustedAdvisorTxt" userDataTreatment: $ref: "#/components/schemas/UserDataTreatment" ProviderAccount: title: "ProviderAccount" type: "object" properties: preferences: $ref: "#/components/schemas/ProviderAccountPreferences" oauthMigrationStatus: type: "string" description: "Indicates the migration status of the provider account from screen-scraping provider to the Open Banking provider.

    Endpoints:" readOnly: true enum: - "IN_PROGRESS" - "TO_BE_MIGRATED" - "COMPLETED" - "MIGRATED" isManual: type: "boolean" description: "Indicates whether account is a manual or aggregated provider account.

    Endpoints:" readOnly: true isRealTimeMFA: type: "boolean" description: "Attribute to specify whether the user has to input(credentials/MFA) for refreshing an account

    Endpoints: