各口座API(accounts API)における、`created_at`、`updated_at`、`last_aggregated_at`、および`last_aggregated_success`の違いと、これらの意味、利用用途はなんですか?

これらの各値はそれぞれ異なる意味を持つものですが、それらの特徴を使い分けることで、よりよいUI/UXを実装することが可能となります。

  1. created_at
    Moneytreeが金融サービスにアクセスし、初めてそのaccountをMonetyreeが正常取得して終了できた時タイムスタンプです。つまり、accountがMoneytreeに取得され、データとして利用できるようになった時点の時刻が記録されます。

  2. updated_at
    last_aggregated_atlast_aggregated_successなど、Moneytreeが金融サービスにアクセスし、更新しようとする処理に加え、Moneytreeのネイティブアプリや、金融サービス登録・管理画面(vault.getmoneytree.com)で、アカウント名称を変更した場合などにも更新されます。つまり、この情報は、Moneytreeにおいて、そのアカウントに対して何らかの処理が発生したことにより、accountに更新が発生したタイムスタンプです。

  3. last_aggregated_at
    Moneytreeが、金融サービスにアクセスし、データを更新しようとしたもっとも最近のタイムスタンプです。これは、データの更新が成功しなかった場合でも更新されるため、accountのstatusがsuccessでない場合には、その最後に更新しようとし、結果として失敗した場合のタイムスタンプとして利用することもできます。
    (更新処理が成功した場合、last_aggregated_successとほぼ同じ時間に更新されます。)

  4. last_aggregated_success
    Moneytreeが、金融サービスにアクセスし、データを更新し、処理が成功して終了した最も最近のタイムスタンプです。これは、accountのstatusがsuccessの場合はそのタイムスタンプとしてそのまま利用できるだけでなく、statusがsuccessでない場合でも、照会するデータが何時時点まで更新されているかを判断する情報として利用することもできます。