About caching

Finqware's automatic data caching management

Overview

Certain skills, such as account-information, require data to be retrieved as fast as possible by your tenant apps. In order to make this data available with no restrictions and aim for realtime, Finqware builds a temporary data cache that stores & indexes relevant data (eg: accounts, transactions).

Parameters

This data cache is governed by two parameters configured at tenant-skill level: when you configure your tenant app with a certain skill, you may update these parameters:

  • consent_duration: how long (in minutes) until the consent (pointed by credentials_id) is marked as expired and can no longer be used. By default this is 90 days (129600 minutes).

  • cache_max_data_retention: the maximum amount of time data is kept in the cache. By default this is 120 days (172800 minutes).

The Consents API allows a tenant app to delete a specific consent (pointed by credentials_id) by using the delete operation.

Optionally, you may specify the pcd_data_retention parameter (pcd stands for post consent delete) that would overwrite the cache_max_data_retention for that particular consent only. Say for example you want to delete the cached data immediately at the same time the consent is deleted - you would specify a value of 0 and Finqware will permanently delete the cached data for that consent as soon as possible.

If you do not specify a value for the pcd_data_retention parameter, cached data will be deleted as usual, according to the cache_max_data_retention.

FAQ

How often does the data expiration jobs run?

A: Every two hours at the moment.

What exactly is the data expiration job doing?

A: This is a background job that automatically expires consent objects based on the consent_duration parameter and permanently removes data from the cache based on the cache_max_data_retention parameter.

What happens when a credentials_id is automatically marked as expired?

A: API calls that require the credentials_id will return a 401 error (unauthorized / inactive_credentials).

Are you planning to have a parameter to bypass entirely the Finqware cache and make a request back-to-back with the 3rd party API?

A: Yes, on the roadmap.

Are you planning to have an option to encrypt the cache with an encryption key provided by the tenant app?

A: Yes, on the roadmap. Note that this option will make indexing data impossible and hence queries using filtering will not work.