verify-signed-event-webhook-go

command module
v0.0.0-...-9ed98fc Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 23, 2020 License: MIT Imports: 13 Imported by: 0

README

Verify Signed Event Webhook

使い方

Signed Event Webhookの検証を行うサンプルアプリケーションです。 HTTP Webフレームワーク gin 上で動作します。

Signed Event Webhook Requestsの有効化

SendGridのダッシュボード上でMail Settings > Signed Event Webhook Requestsを有効化し、画面に表示されている Verification Key を確認します。

サンプルコードの準備

$ git clone http://github.com/awwa/verify-signed-event-webhook-go.git
$ cd verify-signed-event-webhook-go
$ cp .env.example .env
# .envファイルを編集してください
$ go build

.envファイルの編集

Mail Settings > Signed Event Webhook Requestsに表示されている Verification KeySG_VERIFICATION_KEY に指定して、.envファイルを保存します。

SG_VERIFICATION_KEY=sendgrid_verification_key

サンプルアプリケーションの実行

$ go run app.go

Event Webhookの設定

SendGridのダッシュボード上でMail Settings > Event Webhookを有効化し、HTTP Post URL にサンプルアプリケーションのURLを指定します。ngrokなどでトンネリングすると開発環境で手軽に試すことができます。

動作確認

SendGridのダッシュボード上のMail Settings > Event WebhookTest Your Integration ボタンを選択してサンプルイベントを送信します。以下のようなログが出力されていたら、検証は成功です。

result: true
[GIN] 2020/05/23 - 21:27:56 | 200 |    17.42763ms |   167.89.117.83 | POST     "/"

Usage

A sample application that verifies SendGrid Signed Event Webhook. It runs on HTTP Web framework gin.

Enable Signed Event Webhook Requests

Enable Mail Settings > Signed Event Webhook Requests on SendGrid dashboard. Copy Verification Key to clip board.

Build sample application

$ git clone http://github.com/awwa/verify-signed-event-webhook-go.git
$ cd verify-signed-event-webhook-go
$ cp .env.example .env
# Edit .env file
$ go build

Edit .env file

Set Verification Key which is displayed on Mail Settings > Signed Event Webhook Requests to SG_VERIFICATION_KEY. Save .env file.

SG_VERIFICATION_KEY=sendgrid_verification_key

Run sample application

$ go run app.go

Enable Event Webhook

Enable Mail Settings > Event Webhook on SendGrid dashboard. Set your sample application URL to HTTP Post URL. You can use ngrok for tunneling on development environment.

Result

Press button Test Your Integration on SendGrid dashboard Mail Settings > Event Webhook to POST sample events. You can see the log below if the verification process is successful.

result: true
[GIN] 2020/05/23 - 21:27:56 | 200 |    17.42763ms |   167.89.117.83 | POST     "/"

Documentation

The Go Gopher

There is no documentation for this package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL