API KEYを用意
必要な権限を与える
refference: https://sendgrid.com/docs/API_Reference/api_v3.html
campaine用のリストにメンバーを追加する
APIはcampaineの権限を与えたものを用意
リストを用意しておく
手動 or API
リストを取得する
$ curl --request GET \
--url https://api.sendgrid.com/v3/contactdb/lists \
--header 'Authorization: Bearer (key)' \
--header 'Content-Type: application/json'
list_idが取得できる
メンバーを登録する
$ curl --request POST \
--url 'https://api.sendgrid.com/v3/contactdb/recipients' \
--header 'Authorization: Bearer (key)' \
--header 'Content-Type: application/json' \
--data '[{
"email": "[email protected]",
"first_name": "first",
"last_name": "last"
}]'
Responseでrecipient_idが取得できる
最初からリストに登録はできない様子
ALL CONTACTSに登録される
登録したメンバーをリストに登録する
$ curl --request POST \
--url https://api.sendgrid.com/v3/contactdb/lists/(list id)/recipients/(recipients id) \
--header 'Authorization: Bearer (key)' \
--data null
メンバー全員を取得する
$ curl --request GET \
--url 'https://api.sendgrid.com/v3/contactdb/(list id)/1092377/recipients?page_size=1000&page=1' \
--header 'Authorization: Bearer (key)' \
--header 'Content-Type: application/json'
メンバーを削除する
登録を削除する方法
削除せずメールを送らないようにするには、Unsubscriped groupに追加のほうがよさそう
メンバー情報を取得
curl --request GET \
--url https://api.sendgrid.com/v3/contactdb/recipients/[email protected] \
--header 'authorization: Bearer (key)' \
--data '{}'
recipient_idが取得できる
削除
$ curl --request DELETE \
--url https://api.sendgrid.com/v3/contactdb/recipients/(recipient id) \
--header 'authorization: Bearer (key)' \
--data null