SendGrid の API を利用して curl でメールを送る方法

単純に、API Key を取得して curl で送るだけ、というのをやってみます。なお、SendGrid へのアカウントの登録は済んでいるものとします。

手順の概要

  1. API Key を生成(取得)する
  2. API Key を含んだ、POST 用 の JSON ファイルを作成する
  3. 上記の JSON を POST する

具体的手順

1. API Key を生成(取得)する

設定画面内の API Key のページに行って API Key を生成します。以下のヘルプページに従えばよいです。

2. API Key を含んだ、POST 用 の JSON ファイルを作成する

たとえば、以下のような JSON ファイルを作ります。ファイル名は、my_sendgrid.js とでもします。

 {
   "personalizations": [
     {
       "to": [
         {
           "email": "送り先の人の名前@hogehoge.com"
         }
       ],
       "subject": "こんにちは!"
     }
   ],
   "from": {
     "email": "わたしの名前@foobar.com"
   },
   "content": [
     {
       "type": "text/plain",
       "value": "テキストメールです!"
     }
   ]
 }

3. 上記の JSON を curl で POST する

上記で作成した my_sendgrid.js を curl で POST します。curl で -d オプションを用いる際にその対象がファイルの場合は、先頭にアットマーク @ をつければよいです。

 $ curl -X POST https://api.sendgrid.com/v3/mail/send -d @my_sendgrid.js -H "Authorization: Bearer ここに取得したAPI Keyが入る" -H "Content-Type: application/json"

4. 実行結果として何も返ってこなければ OK

curl を実行して何事もなくコマンドが終了すれば送信できているはずです。送信されているかどうかを確認しましょう。

補足

今回の内容は最低限の基本的な使い方を書いたものですので、ヘルプやドキュメントを読み込んでより便利に使いこなしましょう。言語別のライブラリやパッケージを用いれば、より簡潔明瞭に書けると思います。