エラー処理を考慮したコールアウト機構としてプラットフォームイベントが使えないか? #salesforce

昨日の続き。

jappy.hatenablog.com

Salesforce to 外部ソース」のデータ連携(HTTPコールアウト)時に、プラットフォームイベントが有効に使えないか?と、ふと考えました。

この手の話では、これまでは @futureQueueable Apexを使うのが常套手段だったかと思います。ただ、コールアウトが絡んだアーキテクチャ設計においては、単発でコールできればそれでOKというわけではなく、送信失敗時のエラーハンドリングやリトライについても考える必要があります。

例えば以下の記事です。

developer.salesforce.com

上記の記事の趣旨は「 @future よりも Queueable を使おう」というものですが、コールアウト処理のステータスを保持するカスタムオブジェクト ( Callout__c )を作って、実行履歴を残したり後々のリカバリができるような余地を残している、というのが一つ注目すべきポイントです。

これに近いことがプラットフォームイベントでもできるんじゃないかなーと思ってます。
保持期間が24時間なようなので、履歴の保持はできないかもしれませんが。