SendGridを利用するAPI

Silicon Valley Super Ware

2020年7月14日


SendGridを利用するAPI

今日から、SendGridのAPIを利用してメッセージを送るサービスの製作を始めます!
SendGridの無料アカウントは取得されましたか? まだの方はまず、無料アカウントを作成してください。

日本の代理店経由と、アメリカのサイト経由では若干APIの仕様が違います!

主な違いは「マーケティング機能」のAPIが違います。
アメリカのサイトから登録したユーザーは「新しいAPI(New Marketing Campaign)」を使いますが、
日本の構造計画研究所から登録したユーザーは「古いAPI(Legacy Marketing Campaign)」を使います。
似ていますが、インターフェースが違うため互換性はありません。

必要なAPIは?

このブログの連載では時間の関係で「メッセージを送る機能」をサポートします。
完全なサービスにするためには、「送付先の登録」、「送信者の登録」などもサポートする必要があります。 要領は同じような感じですので、是非トライしてみてください。

送付先の登録や、送信者の登録は「SendGridのサイトの管理ページ」からできます。

なので、登録者の設定や、送信者の設定はSendGridの管理サイトに任せてしまうような 使いかたにすれば、最小限の機能でも十分に実用になります。

利用するSendGridのAPIは「V3 Mail Send API」を利用します。

Node.jsのサンプルもGitHubで公開されています。
GigHubのサンプルはこちら!
今回のAPIは比較的シンプルなので自分で最初から書いてもそれほど難しくありません。
SendGridの日本語のドキュメントに詳しい仕様が書かれています。 SendGridのV3 Mail Send APIのドキュメント

必要な情報は?

SendGridのV3 Mail Send APIでメッセージを送るのに必要な情報は
  • personalizations -- メールの送り先(To/Cc/Bcc)
  • from -- メールの送信者
  • reply_to -- メールの返信先
  • subject -- メールの件名
  • content -- メルの中身(形式とメッセージ本文)
他にも指定できますが、基本的な情報は上に挙げた通りです。
メッセージを送った応答に、「X-Message-ID」が返ってくるので これを記録しておくと、メッセージのトラッキングもできます。

メッセージが届いたかとか、メッセージを開いたかなどが分かります!
便利ですよね!

まずは、フロントエンドでこのデータを入力するフォームを作って メッセージの作成を行うのが第一段階です。

入力フォームはフレームワークで!

メッセージの入力フォームは、ReactやVue.jsなどのフレームワークを使います。
感じとしては、5月に作成したお問合せフォームのデザインを流用します。

今回は以前に作成したお問合せフォームよりは少し親切な作り方にしてみます。

  • 送信先は送信先登録者から選べる
  • 送信者は登録送信者から選べる
これらの情報はSendGridから取得する事ができます。

バックエンドでやる事は?

実際にサポートする機能は「メッセージの送信」ですが、 使いやすいUIにするために、登録されている送信先のリストと、 登録されている送信者のリストをSendGridから取得するAPIも作ります。
こうすることで、入力のミスを減らして、使いやすいサービスにする事ができます。
  • V3 Mail Send API -- メッセージの送信
  • Contacts API -- 宛先リストの取得
  • Sender Identitis -- 送信者情報の取得
宛先と送信者情報はサービスが立ち上げられた時にSendGridから取得する事にします。 これを基に、利用者が選択できるUIを提供する事にします。
これで、Webサービスの方向性が決まったので、次回はフロントエンドのUIから 作る事にします。
シリコンバレースーパーウエアでは、バックエンドを含めた本格的なWebサービスを短期間で 作れるようになる講座を提供しています。 単純に、Webサービスを作るだけではなく、どのように作って、どのようにビジネスにつなげて 行くかを提供します。また、フリーランスの方だけではなく、就職を考えている方にも 「実践力」を養うことで「即戦力」のエンジニアとしてのスキルを身に着ける事ができます!

興味のある方は今すぐお問合せください!



またよろしければ、ニュースレターの登録をお願いします!大体週一回お届けしています。ブログよりは一歩踏み込んだもっと濃い内容を発信しています。


Copyright(c) 2020 by Silicon Valley Super Ware, all rights reserved.

コメント

このブログの人気の投稿

ユーザーインターフェースの設計

足し算以外もできるようにする

改良版足し算プログラム