Loading...
Loading...
LINE API for messaging. Use when user mentions "LINE", "LINE message", "LINE bot", or asks about LINE platform.
npx skill4agent add vm0-ai/vm0-skills linezero doctor check-connector --env-name LINE_TOKENzero doctor check-connector --url https://api.line.me/v2/bot/info --method GETLINE_TOKENhttps://api.line.mecurl -s "https://api.line.me/v2/bot/info" --header "Authorization: Bearer $LINE_TOKEN" | jq .USER_IDcurl -s "https://api.line.me/v2/bot/profile/USER_ID" --header "Authorization: Bearer $LINE_TOKEN" | jq .startcurl -s "https://api.line.me/v2/bot/followers/ids?limit=100" --header "Authorization: Bearer $LINE_TOKEN" | jq .nextcurl -s "https://api.line.me/v2/bot/followers/ids?limit=100&start=CONTINUATION_TOKEN" --header "Authorization: Bearer $LINE_TOKEN" | jq .USER_ID/tmp/line_request.json{
"to": "USER_ID",
"messages": [
{
"type": "text",
"text": "Hello from the LINE bot!"
}
]
}curl -s -X POST "https://api.line.me/v2/bot/message/push" --header "Content-Type: application/json" --header "Authorization: Bearer $LINE_TOKEN" -d @/tmp/line_request.json | jq ./tmp/line_request.json{
"replyToken": "REPLY_TOKEN",
"messages": [
{
"type": "text",
"text": "Thanks for your message!"
}
]
}curl -s -X POST "https://api.line.me/v2/bot/message/reply" --header "Content-Type: application/json" --header "Authorization: Bearer $LINE_TOKEN" -d @/tmp/line_request.json | jq ./tmp/line_request.json{
"to": ["USER_ID_1", "USER_ID_2", "USER_ID_3"],
"messages": [
{
"type": "text",
"text": "This is a multicast message!"
}
]
}curl -s -X POST "https://api.line.me/v2/bot/message/multicast" --header "Content-Type: application/json" --header "Authorization: Bearer $LINE_TOKEN" -d @/tmp/line_request.json | jq ./tmp/line_request.json{
"messages": [
{
"type": "text",
"text": "This broadcast goes to all followers!"
}
]
}curl -s -X POST "https://api.line.me/v2/bot/message/broadcast" --header "Content-Type: application/json" --header "Authorization: Bearer $LINE_TOKEN" -d @/tmp/line_request.json | jq .curl -s "https://api.line.me/v2/bot/message/quota" --header "Authorization: Bearer $LINE_TOKEN" | jq .curl -s "https://api.line.me/v2/bot/message/quota/consumption" --header "Authorization: Bearer $LINE_TOKEN" | jq ./tmp/line_request.json{
"to": "USER_ID",
"messages": [
{
"type": "image",
"originalContentUrl": "https://example.com/image.jpg",
"previewImageUrl": "https://example.com/image_preview.jpg"
}
]
}curl -s -X POST "https://api.line.me/v2/bot/message/push" --header "Content-Type: application/json" --header "Authorization: Bearer $LINE_TOKEN" -d @/tmp/line_request.json | jq ./tmp/line_request.json{
"to": "USER_ID",
"messages": [
{
"type": "template",
"altText": "Button template",
"template": {
"type": "buttons",
"title": "Menu",
"text": "Please select an option",
"actions": [
{
"type": "message",
"label": "Option 1",
"text": "option1"
},
{
"type": "uri",
"label": "Visit Website",
"uri": "https://example.com"
}
]
}
}
]
}curl -s -X POST "https://api.line.me/v2/bot/message/push" --header "Content-Type: application/json" --header "Authorization: Bearer $LINE_TOKEN" -d @/tmp/line_request.json | jq .curl -s "https://api.line.me/v2/bot/channel/webhook/endpoint" --header "Authorization: Bearer $LINE_TOKEN" | jq .curl -s -X PUT "https://api.line.me/v2/bot/channel/webhook/endpoint" --header "Content-Type: application/json" --header "Authorization: Bearer $LINE_TOKEN" -d '{"endpoint":"https://example.com/webhook"}' | jq .curl -s -X POST "https://api.line.me/v2/bot/channel/webhook/test" --header "Content-Type: application/json" --header "Authorization: Bearer $LINE_TOKEN" -d '{"endpoint":"https://example.com/webhook"}' | jq .curl -s "https://api.line.me/v2/bot/richmenu/list" --header "Authorization: Bearer $LINE_TOKEN" | jq '.richmenus[] | {richMenuId, name, size}'/tmp/line_request.json{
"size": {
"width": 2500,
"height": 1686
},
"selected": false,
"name": "Main Menu",
"chatBarText": "Menu",
"areas": [
{
"bounds": {
"x": 0,
"y": 0,
"width": 1250,
"height": 1686
},
"action": {
"type": "message",
"text": "Left button tapped"
}
},
{
"bounds": {
"x": 1250,
"y": 0,
"width": 1250,
"height": 1686
},
"action": {
"type": "message",
"text": "Right button tapped"
}
}
]
}curl -s -X POST "https://api.line.me/v2/bot/richmenu" --header "Content-Type: application/json" --header "Authorization: Bearer $LINE_TOKEN" -d @/tmp/line_request.json | jq .curl -s -X DELETE "https://api.line.me/v2/bot/richmenu/RICH_MENU_ID" --header "Authorization: Bearer $LINE_TOKEN" | jq .yyyyMMddcurl -s "https://api.line.me/v2/bot/insight/message/delivery?date=20260301" --header "Authorization: Bearer $LINE_TOKEN" | jq .curl -s "https://api.line.me/v2/bot/insight/demographic" --header "Authorization: Bearer $LINE_TOKEN" | jq .curl -s "https://api.line.me/v2/bot/group/GROUP_ID/summary" --header "Authorization: Bearer $LINE_TOKEN" | jq .curl -s "https://api.line.me/v2/bot/group/GROUP_ID/member/USER_ID" --header "Authorization: Bearer $LINE_TOKEN" | jq .messages| Type | Description |
|---|---|
| Plain text message |
| Image with original and preview URLs |
| Video with original and preview URLs |
| Audio file with duration |
| Location with title, address, and coordinates |
| LINE sticker with package and sticker IDs |
| Interactive template (buttons, confirm, carousel) |
| Flexible layout message using Flex Message JSON |
messagesx-line-signature