表題を`curl`で実行したい。
■ 環境
- SendGrid
- Linux
- Mac OSX El Capitan
■ SendGrid
下記の言語はライブラリが用意されている。
- C#
- Go
- Java
- NodeJS
- PHP
- Python
- Ruby
今回は単なるシェルスクリプトの中で実行したかったので`curl`コマンドでメールを送りたい。
cURL Examples for Common Use Cases
https://sendgrid.com/docs/Classroom/Send/v3_Mail_Send/curl_examples.html
API KEYはSendGridの管理画面、『Settings > API Keys』から発行する。
https://app.sendgrid.com/settings/api_keys
発行したAPI KEYを下記の”YOUR_API_KEY“の箇所と置換する。
--header 'authorization: Bearer YOUR_API_KEY' \
“Bearer “は削除していけない。
宛先や件名、本文は下記ドキュメントの『要求ボディパラメータ』を参照して編集した。
V3 Mail Send API 概要
https://sendgrid.kke.co.jp/docs/API_Reference/Web_API_v3/Mail/index.html
最終的には下記のようになった。
curl \
--silent \
--request POST \
--url https://api.sendgrid.com/v3/mail/send \
--header "Authorization: Bearer ${SENDGRID_APIKEY}" \
--header 'Content-Type: application/json' \
--data "${SENDGRID_REQUEST}"
本文や宛先は動的に生成したかったのと、別の場所で定義したかったのがあり”${SENDGRID_REQUEST}“変数に入れた。これでできたので満足。
以上。