早速のご回答ありがとうございます。
基本的にAPIやwebhookからしかidを得ることはできないと思うのですが、「不正なid」はどこからやってくるのでしょうか。 ご指摘の通り、"基本的には"正しいUIDしか得られないのですが、DBに保存したUIDを使うケースを想定しており、(DBが書き換えられる以上は)よりセーフティに作りたかったという意図です。
リンクを頂いたリファレンスの記載は把握していました(質問に書いておらずすみません)が、期待と異なりbadrequestが返ってきたため、こちらに投稿させていただいた次第です。
正しかったとして、メッセージを送ることに問題がなければpushの結果を1件1件保存すれば良いと思います。 失敗していればmulticastと同様にbadrequestとなるはずです。 pushをループで使うという手ですね・・・!ありがとうございます。こちら試してみようと思います。
基本的にAPIやwebhookからしかidを得ることはできないと思うのですが、「不正なid」はどこからやってくるのでしょうか。正しい使い方をしていればbadrequestにはならない気がします。 また、multicastのドキュメントを読むとhttps://developers.line.biz/ja/reference/messaging-api/#get-profile 、不正なidが含まれていてもステータスコード200が返ってくると書かれています。本当にbadrequestが返ってきましたか?
正しかったとして、メッセージを送ることに問題がなければpushの結果を1件1件保存すれば良いと思います。 失敗していればmulticastと同様にbadrequestとなるはずです。