メインコンテンツまでスキップ

通知メッセージ送信結果の取得

通知メッセージの送信結果を取得します。

GET /v2/notifications/:identifier

リクエストパラメータ

Path Parameters

パラメータ名必須説明
identifierstring通知メッセージを一意に表す識別子

エラーコード

エラー定義 参照。

レスポンス

ステータスコード 200 OK と以下のプロパティを含む JSON オブジェクトを返します。

  • $.result.status の値から配信状態を確認できます
  • $.result.detail.status の値から、より詳細な配信状態を確認できます
  • $.result.detail.timestamp は配信状態が確定した時刻を表します

レスポンスのパターンは以下のとおりです。

$.result.status$.result.detail.status状態
successdeliveredLINE へ配信リクエスト済み
successcompleted(LINE Webhook 利用時のみ応答可)ユーザに配信済み
successincompleted(LINE Webhook 利用時のみ応答可)ユーザに配信失敗
failedfailedLINE への配信リクエストに失敗
配信結果の詳細

通知メッセージが、ユーザに到達したかどうかまで判断したい場合は LINE Webhook の設定が必要です。

incompleted は、LINE への配信リクエストから 24 時間以上 completed にならなかった場合に発生します。

"failed" と "incompleted" の違い

failed は以下のケースで、即時応答されます。

  • 送信対象に指定した電話番号が LINE 側に存在しない
  • 対象ユーザが通知メッセージの受信をオプトアウト(拒否)している
  • 対象ユーザは通知メッセージのサービス対象国に属していない

incompleted は以下のケースで発生しますが、確定まで 24 時間は送信をリトライしつづけ、その間は delivered 状態となります。

  • 対象ユーザが公式アカウントをブロックしている
  • 対象ユーザが電話番号の SMS 認証を行っていない

success: 送信完了

LINE への通知メッセージの配信リクエストに成功したことを示します。

delivered: 配信リクエストが完了した

LINE への通知メッセージの配信リクエストに成功したことを示します。
LINE Webhook を利用していない場合は、最終的にユーザまで通知メッセージが配信されたかは確定できません。

{
"provider": "line",
"result": {
"status": "success",
"detail": {
"status": "delivered",
"timestamp": 1650591346
}
}
}

completed: ユーザーへの配信が完了した

LINE 通知メッセージがユーザーへ配信されたことを示します。
LINE Webhook 設定が完了していない場合、このステータスは返りません。

{
"provider": "line",
"result": {
"status": "success",
"detail": {
"status": "completed",
"timestamp": 1650591346
}
}
}

incompleted: ユーザーへの配信が完了しなかった

ブロックなどの理由で LINE 通知メッセージがユーザーへ配信されなかったことを示します。
LINE Webhook 設定が完了していない場合、このステータスは返りません。

{
"provider": "line",
"result": {
"status": "success",
"detail": {
"status": "incompleted",
"timestamp": 1650591346
}
}
}

failed: 送信失敗

LINE 通知メッセージの配信リクエストに失敗したことを示します。
以下のような理由が考えられます。

  • メッセージ送信対象に指定した電話番号に紐づく LINE ユーザーが存在しません
  • メッセージ送信対象に指定した電話番号に紐づく LINE ユーザーが LINE 通知メッセージの受信を拒否しています
  • メッセージ送信対象に指定した電話番号は、LINE 通知メッセージのサービス対象国で発行されたものではありません
{
"provider": "line",
"result": {
"status": "failed",
"detail": {
"status": "failed",
"timestamp": 1650591346
},
"error": {
"code": 1,
"message": "Provider server error.",
"from_provider": {
"message": "Failed to send messages"
}
}
}
}

実行サンプル

curl -L -X GET https://msgapi.socialplus.jp/v2/notifications/{identifier} \
-H 'Accept: application/json' \
-H 'X-API-Key: {API Key}'