LINE Messaging APIで Flex Message SimulatorでJSONを作ったときにハマったことをメモとして残します。
##症状
LINE FLEX MESSAGE SIMULATORで、FLEX MESSAGEを作成。
さあ、JSONに変換
「View as JSON」をクリック
コードにペーストする。
replyMessage = {
"type": "bubble",
"body": {
"type": "box",
"layout": "vertical",
"contents": [
//中略
]
}
}
しかし、これで実行すると、HTTPエラーになる。
HTTPError: Request failed with status code 400
なんで?
##解決策
LINE Developersのドキュメントをよく見ると、
https://developers.line.biz/ja/reference/messaging-api/#flex-message
冒頭にこれが必要でした。
"type": "flex",
"altText": "this is a flex message",
"contents": {
つまり、
replyMessage = {
"type": "flex",
"altText": "this is a flex message",
"contents": {
"type": "bubble",
"body": {
"type": "box",
"layout": "vertical",
"contents": [
//中略
]
}
}
}
##反省点
公式ドキュメントをよく読もう!