Data Caching
Skywalk API maintains an encrypted data cache of your most up-to-date AppFolio® data to support faster read operations. By default, GET
requests will return from the existing data cache, unless you explicitly request Skywalk API to update the data from AppFolio® by configuring the cache behavior.
You can use Skywalk API’s Scheduled Jobs feature to update these data caches regularly. If preferred, you may also request refreshed data and then poll for results.
Every API response includes metadata, which provides details about the data returned (e.g. when it was last updated).
#
Configuring Cache BehaviorYou can send the X-API-MAX-AGE
header with any GET
request. This allows you to specify (in seconds) the maximum age of cached data which is acceptable for your request. To maintain freshness, the default max-age is 86400 (3 days) when none is specified by your application. The minimum allowed is 60 (1 minute).
In order to enable your application to operate reliably, the most recently cached data will be returned, regardless of age.
If the data in the cache is within your specified maximum age, the status message in your response will be ok
and any webhook specified on your X-API-NOTIFY-URL
will be triggered immediately.
However, if the data in the cache is older than your specified maximum age, the status message in your response will switch to updating
to indicate that the cache will begin a refresh. You may proceed to use the stale data, if applicable. Once the data is refreshed, your webhooks will be triggered. You may also perform polling until the data is refreshed.
IMPORTANT: In order to allow quick caching of API requests, you should anticipate that the
X-API-MAX-AGE
header in your request is subject to a variance of +/- 5 minutes.
#
Cache CleanupIf you choose to close your account, the data cache for your account will be destroyed within 30 days.
Contact our sales team if you would like to inquire about configuring an account without data caching.