質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
LINE Messaging API

LINE Messaging APIは、メッセージの送信・返信ができるAPIです。Web APIを経由しアプリケーションサーバとLINEのAPIでやり取りが可能。複数のメッセージタイプや分かりやすいAPIリファレンスを持ち、グループチャットにも対応しています。

Q&A

解決済

1回答

2449閲覧

LINE Massage API / Webhookを使ったメッセージ送信でエラーが出て送れません

tellme

総合スコア1

LINE Messaging API

LINE Messaging APIは、メッセージの送信・返信ができるAPIです。Web APIを経由しアプリケーションサーバとLINEのAPIでやり取りが可能。複数のメッセージタイプや分かりやすいAPIリファレンスを持ち、グループチャットにも対応しています。

0グッド

0クリップ

投稿2021/10/19 09:26

前提・実現したいこと

Webhookを使って以下のようなメッセージをLINEのMessageAPIを使って
送信したいのですが、JSONエラーがでて送信できません。
認証はパスしているので問題はないのですが、メッセージでエラーが発生しております。
どこを改修したら送信できるか教えてください。

発生している問題・エラーメッセージ

{"message":"The request body has 1 error(s)","details":[{"message":"Must be one of the following values: [text, image, video, audio, location, sticker, template, imagemap, flex]","property":"messages[0].type"}]}

該当のソースコード

JSON

1{ 2"to": {{lead.line_user_id}}, 3"messages":[ 4{ 5 "type": "bubble", 6 "header": { 7 "type": "box", 8 "layout": "vertical", 9 "contents": [ 10 { 11 "type": "box", 12 "layout": "horizontal", 13 "contents": [ 14 { 15 "type": "image", 16 "size": "100%", 17 "aspectMode": "cover", 18 "gravity": "center", 19 "flex": 1, 20 "url": "https://example.com/bot/images/item2.jpg" 21 }, 22 { 23 "type": "box", 24 "layout": "vertical", 25 "contents": [ 26 { 27 "type": "text", 28 "text": "NEW", 29 "size": "xs", 30 "color": "#ffffff", 31 "align": "center", 32 "gravity": "center" 33 } 34 ], 35 "backgroundColor": "#EC3D44", 36 "paddingAll": "2px", 37 "paddingStart": "4px", 38 "paddingEnd": "4px", 39 "flex": 0, 40 "position": "absolute", 41 "offsetStart": "18px", 42 "offsetTop": "18px", 43 "cornerRadius": "100px", 44 "width": "48px", 45 "height": "25px" 46 } 47 ], 48 "paddingAll": "0px" 49 } 50 ], 51 "paddingAll": "0px" 52 }, 53 "body": { 54 "type": "box", 55 "layout": "vertical", 56 "contents": [ 57 { 58 "type": "box", 59 "layout": "vertical", 60 "contents": [ 61 { 62 "type": "box", 63 "layout": "vertical", 64 "contents": [ 65 { 66 "type": "text", 67 "contents": [], 68 "size": "xl", 69 "wrap": true, 70 "text": "ダミーダミーダミーダミー", 71 "color": "#ffffff", 72 "weight": "bold" 73 }, 74 { 75 "type": "text", 76 "text": "ダミーダミーダミーダミー", 77 "color": "#ffffffcc", 78 "size": "xl" 79 } 80 ], 81 "spacing": "sm" 82 }, 83 { 84 "type": "box", 85 "layout": "vertical", 86 "contents": [ 87 { 88 "type": "box", 89 "layout": "vertical", 90 "contents": [ 91 { 92 "type": "text", 93 "contents": [], 94 "size": "sm", 95 "wrap": true, 96 "margin": "lg", 97 "color": "#000000", 98 "text": "ダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミー" 99 }, 100 { 101 "type": "text", 102 "text": "ダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミー", 103 "margin": "lg", 104 "size": "sm", 105 "wrap": true 106 } 107 ] 108 } 109 ], 110 "paddingAll": "13px", 111 "backgroundColor": "#ffffff", 112 "cornerRadius": "2px", 113 "margin": "xl" 114 } 115 ] 116 }, 117 { 118 "type": "box", 119 "layout": "vertical", 120 "contents": [ 121 { 122 "type": "button", 123 "action": { 124 "type": "uri", 125 "label": "レポートをダウンロード", 126 "uri": "https://developers.line.biz/ja/docs/messaging-api/flex-message-elements/#image", 127 "altUri": { 128 "desktop": "https://developers.line.biz/ja/docs/messaging-api/flex-message-elements/#image" 129 } 130 }, 131 "color": "#ffffff" 132 } 133 ] 134 } 135 ], 136 "paddingAll": "20px", 137 "backgroundColor": "#2b7d2b" 138 } 139} 140] 141}

試したこと

添付のJSONを貼り付けてMarketoのWebhook設定を行い、メッセージの配信を行った

補足情報(FW/ツールのバージョンなど)

MarketoのLINEとのwebhook連携を行なっています。テキストメッセージと画像のカールセルメッセージは配信できているのですが、複雑なデザインに設定したところ、配信エラーがでて改修に手こずっています。お知恵をお借りできれば。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

エラーの通りでメッセージの種類を指定していないことで発生しているエラーがです。今回の場合はFlexMessageであることを指定する必要があるのでtypeにはflexをしてする必要があります。
そしてメッセージのjsonはcontentsキーで指定する必要があります。

https://developers.line.biz/ja/docs/messaging-api/using-flex-messages/#sending-hello-world

よってリクエストボディのJsonは以下のようにするのが正しいです。

json

1{ 2 "to": {{lead.line_user_id}}, 3 "messages": [ 4 { 5 "type": "flex", 6 "altText": "Flex Message", 7 "contents": { 8 "type": "bubble", 9 "header": { 10 "type": "box", 11 "layout": "vertical", 12 "contents": [ 13 { 14 "type": "box", 15 "layout": "horizontal", 16 "contents": [ 17 { 18 "type": "image", 19 "size": "100%", 20 "aspectMode": "cover", 21 "gravity": "center", 22 "flex": 1, 23 "url": "https://example.com/bot/images/item2.jpg" 24 }, 25 { 26 "type": "box", 27 "layout": "vertical", 28 "contents": [ 29 { 30 "type": "text", 31 "text": "NEW", 32 "size": "xs", 33 "color": "#ffffff", 34 "align": "center", 35 "gravity": "center" 36 } 37 ], 38 "backgroundColor": "#EC3D44", 39 "paddingAll": "2px", 40 "paddingStart": "4px", 41 "paddingEnd": "4px", 42 "flex": 0, 43 "position": "absolute", 44 "offsetStart": "18px", 45 "offsetTop": "18px", 46 "cornerRadius": "100px", 47 "width": "48px", 48 "height": "25px" 49 } 50 ], 51 "paddingAll": "0px" 52 } 53 ], 54 "paddingAll": "0px" 55 }, 56 "body": { 57 "type": "box", 58 "layout": "vertical", 59 "contents": [ 60 { 61 "type": "box", 62 "layout": "vertical", 63 "contents": [ 64 { 65 "type": "box", 66 "layout": "vertical", 67 "contents": [ 68 { 69 "type": "text", 70 "contents": [], 71 "size": "xl", 72 "wrap": true, 73 "text": "ダミーダミーダミーダミー", 74 "color": "#ffffff", 75 "weight": "bold" 76 }, 77 { 78 "type": "text", 79 "text": "ダミーダミーダミーダミー", 80 "color": "#ffffffcc", 81 "size": "xl" 82 } 83 ], 84 "spacing": "sm" 85 }, 86 { 87 "type": "box", 88 "layout": "vertical", 89 "contents": [ 90 { 91 "type": "box", 92 "layout": "vertical", 93 "contents": [ 94 { 95 "type": "text", 96 "contents": [], 97 "size": "sm", 98 "wrap": true, 99 "margin": "lg", 100 "color": "#000000", 101 "text": "ダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミー" 102 }, 103 { 104 "type": "text", 105 "text": "ダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミーダミー", 106 "margin": "lg", 107 "size": "sm", 108 "wrap": true 109 } 110 ] 111 } 112 ], 113 "paddingAll": "13px", 114 "backgroundColor": "#ffffff", 115 "cornerRadius": "2px", 116 "margin": "xl" 117 } 118 ] 119 }, 120 { 121 "type": "box", 122 "layout": "vertical", 123 "contents": [ 124 { 125 "type": "button", 126 "action": { 127 "type": "uri", 128 "label": "レポートをダウンロード", 129 "uri": "https://developers.line.biz/ja/docs/messaging-api/flex-message-elements/#image", 130 "altUri": { 131 "desktop": "https://developers.line.biz/ja/docs/messaging-api/flex-message-elements/#image" 132 } 133 }, 134 "color": "#ffffff" 135 } 136 ] 137 } 138 ], 139 "paddingAll": "20px", 140 "backgroundColor": "#2b7d2b" 141 } 142 } 143 } 144 ] 145}

投稿2021/10/19 15:10

Supernove

総合スコア1154

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

tellme

2021/10/21 00:21

ありがとうございました!無事メッセージ送信できました。早い回答いただき、本当に助かりました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問