メール登録解除リスト削除APIを実装したい

メール登録解除リスト削除APIとは

本APIの概要

メール登録解除リスト削除APIとは、FromアドレスとToアドレスの組み合わせから、「メール登録解除データ」上の特定のレコードを削除できるAPIです。
このAPIを実装することで、エンドユーザーが登録解除したFromアドレスからのメールを再講読したい際に、エンドユーザーの操作から「メール登録解除データ」上の特定のレコードを削除することができるようになります。

API利用にあたっての前提事項

共通仕様

メール登録解除リスト削除APIでは、b→dash APIの共通仕様も参照する必要があります。共通仕様の詳細については「b→dash APIの共通仕様を知りたい」をご参照ください。

メール登録解除リスト削除APIの仕様

メール登録解除リスト削除リクエスト

メール登録解除リスト削除APIのURIと、下記のリクエストヘッダパラメータを用いて、貴社Webアプリから「POST」リクエスト形式でメール登録解除リスト削除のリクエストをします

〇メール登録解除リストAPIのURI

URI https://api.smart-bdash.com/api/v1/mail/unsubscribed_lists/delete

〇リクエスト形式

HTTPメソッド POST

〇リクエストヘッダパラメータ

プロパティ
/サイズ
必須 説明
Authorization string
/2055字
Bearer
{発行したAPIキー}
-

〇Body

プロパティ
/サイズ
必須 説明
target_addresses array
/-
Bearer
{発行したAPIキー}
削除登録対象のアドレス(複数)
※ 一度に連携できる「target_addresses」は10個が上限
└ from string
/-
Bearer
{発行したAPIキー}
削除登録対象の差出人アドレスの値
└ to string
/-
Bearer
{発行したAPIキー}
削除登録対象の受信者アドレスの値

【リクエストコードサンプル】

{
 "target_addresses": [
 {
  "from": "xxx@hoge.com",
  "to": "aaa@fuga.com"
  },
 {
  "from": "xxx@hoge.com",
  "to": "bbb@fuga.com"
  }
 ]
}

メール登録解除リスト削除レスポンス

リクエストに成功すると、下記のレスポンス形式でメール登録解除リスト削除APIのレスポンスが返されます
削除対象の登録が全件成功した場合削除対象の登録が1件以上失敗した場合

〇レスポンスボディパラメータ

パラメータ名 データ型 説明
階層1:status string 削除結果のステータス(success)
階層1:total_count integer リクエスト時に指定されたtarget_addressesの件数
階層1:success_count integer 登録に成功したtarget_addressesの件数(削除対象が存在しない場合も含む)
階層1:error_count integer 登録に失敗したtarget_addressesの件数
階層1:error_record array エラーの配列

【レスポンスボディサンプル】

# 定義 コード
1 登録解除リストにおける削除対象レコードの登録リクエストが全件成功
(削除対象が存在しない場合も含む)
200
{
status: "success",
total_count: 10,
success_count: 10,
error_count: 0,
error_record: [],
}

〇レスポンスボディパラメータ

パラメータ名 データ型 説明
階層1:result object -
階層1:code integer($int32) ステータスコード
階層2:total_count integer リクエスト時に指定されたtarget_addressesの件数
階層2:success_count integer 登録に成功したtarget_addressesの件数(削除対象が存在しない場合も含む)
階層2:error_count integer 登録に失敗したtarget_addressesの件数
階層2:errors object[] エラーの配列
階層3:message string エラーメッセージ
階層3:row_number integer リクエストで指定したtarget_addressesを上から数えた番号

※ Mail Publisherが指定しているメールアドレスの形式に一致していない場合のみ入ります
階層3:record object -

※Mail Publisherが指定しているメールアドレスの形式に一致していない場合のみ入ります
階層4:from string エラーが発生した行の差出人アドレスの値

※Mail Publisherが指定しているメールアドレスの形式に一致していない場合のみ入ります
階層4:to string エラーが発生した行の受信者アドレスの値

※Mail Publisherが指定しているメールアドレスの形式に一致していない場合のみ入ります

【レスポンスボディサンプル】

# 定義 コード
1 Authorizationヘッダに指定したAPIキーが存在しない、
もしくは、配信ベンダーがMail Publisherのb→dashアカウントでない
401
{
 "result": {
  "code": 401,
  "errors": [ 
   { 
    "message": "Authentication error by header incorrect."
   } 
  ] 
 } 
}
# 定義 コード
2 リクエストサンプルに記載しているFMT以外の形式で、リクエストされている
(配列の要素が0件の場合も)
400
{
 "result": {
  "code": 400,
  "errors": [ 
   { 
    "message": "Invalid request format."
   } 
  ] 
 } 
}
# 定義 コード
3 11個以上のtarget_addressesが連携されている 400
{
 "result": {
  "code": 400,
  "errors": [ 
   { 
   "message": "The number of records exceeds the limit."
   } 
  ] 
 } 
}
# 定義 コード
4 差出人アドレス/受信者アドレスの形式が、 メルパブが指定しているメールアドレスの形式に 一致していない 400
{
 "result": {
  "code": 400,
  "total_count": 10,
  "success_count": 8,
  "error_count": 2,
  "errors": [
   {
    "message": "Invalid email address format.",
    "row_number": 1,
    "record": {
     "from": "xxx@hoge.com",
     "to": "aaa@fuga.com"
    }
   },
  {
   "message": "Invalid email address format.",
   "row_number": 5,
   "record": {
   "from": "yyy@hoge.com",
   "to": "bbb@fuga.com"
    }
   }
  ]
 }
}