SendGridのメール履歴で特定のタイトルに一致するメールを受信しているユーザーのメールアドレスを取得する

SendGridのメール履歴で特定のタイトルに一致するメールを受信しているユーザーのメールアドレスを取得する:


背景

システム的に一部ユーザーに誤送信をしてしまいました。そして誰に送ったかはシステム上では記録しておらず誰に送ったかを知る必要がありました。

メールサーバーにはSendGridを使用しており、APIには送ったメールをタイトルで検索などができなさそうでした。

(SendGridのActivityFeedに subject がありましたが検索できず・・)

そこでjsを使ってconsole.logに上げたのでそのコードをメモ。


コード

function logEmails() { 
  var subject = 'このタイトルを検索したい' 
  document.querySelectorAll('td.col-5').forEach(function(tag, index) { 
    if(tag.querySelectorAll('span.subject')[0].textContent == subject) { 
      console.log(tag.querySelectorAll('span.email')[0].textContent); 
    } 
  }) 
}; 
 
setInterval(function() { 
  document.querySelectorAll('a.pagination-next')[0].click() 
  logEmails(); 
}, 3000) 


あとがき

多分、発火タイミングはもっと厳密にやるべき。

renderingが遅れたら多分検知できなくなる

コメント

このブログの人気の投稿

投稿時間:2020-07-01 05:34:30 RSSフィード2020-07-01 05:00 分まとめ(37件)

投稿時間:2020-07-01 20:43:40 RSSフィード2020-07-01 20:00 分まとめ(81件)

投稿時間:2020-07-01 08:33:22 RSSフィード2020-07-01 08:00 分まとめ(49件)