# LINE Messaging API API

> LINE Messaging API API on Apizie: 75 endpoints (Get webhook endpoint information, Set webhook endpoint URL, Test webhook endpoint, Download image, video, and audio data sent from users., …) returned as clean JSON through one API key. Send your own provider key in the x-upstream-key header. Call it over REST at https://zieapi.vercel.app/v1/communication:line-messaging-api/{endpoint} or from Claude, ChatGPT and Cursor through the Apizie MCP server. Free plan: 1,000 requests a month.

- Project key: `communication:line-messaging-api`
- Category: Communication
- Status: byok
- Source: https://developers.line.biz/en/docs/
- Page: https://zieapi.vercel.app/api/communication/line-messaging-api
- OpenAPI: https://zieapi.vercel.app/api/communication/line-messaging-api/openapi.json

This document describes LINE Messaging API.

## Endpoints

### Get webhook endpoint information
`GET https://zieapi.vercel.app/v1/communication:line-messaging-api/get-webhook-endpoint` (byok)

### Set webhook endpoint URL
`POST https://zieapi.vercel.app/v1/communication:line-messaging-api/set-webhook-endpoint` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### Test webhook endpoint
`POST https://zieapi.vercel.app/v1/communication:line-messaging-api/test-webhook-endpoint` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | no | JSON request body |

### Download image, video, and audio data sent from users.
`GET https://zieapi.vercel.app/v1/communication:line-messaging-api/get-message-content` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| messageId | string | yes | Message ID of video or audio |

### Get a preview image of the image or video
`GET https://zieapi.vercel.app/v1/communication:line-messaging-api/get-message-content-preview` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| messageId | string | yes | Message ID of image or video |

### Verify the preparation status of a video or audio for getting
`GET https://zieapi.vercel.app/v1/communication:line-messaging-api/get-message-content-transcoding-by-message-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| messageId | string | yes | Message ID of video or audio |

### Send reply message
`POST https://zieapi.vercel.app/v1/communication:line-messaging-api/reply-message` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### Sends a message to a user, group chat, or multi-person chat at any time.
`POST https://zieapi.vercel.app/v1/communication:line-messaging-api/push-message` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| X-Line-Retry-Key | string | no | Retry key. Specifies the UUID in hexadecimal format (e.g., `123e4567-e89b-12d3-a456-426614174000`) generated by any method. The retry key… |
| body | object | yes | JSON request body |

### An API that efficiently sends the same message to multiple user IDs. You can't send messages to group chats…
`POST https://zieapi.vercel.app/v1/communication:line-messaging-api/multicast` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| X-Line-Retry-Key | string | no | Retry key. Specifies the UUID in hexadecimal format (e.g., `123e4567-e89b-12d3-a456-426614174000`) generated by any method. The retry key… |
| body | object | yes | JSON request body |

### Send narrowcast message
`POST https://zieapi.vercel.app/v1/communication:line-messaging-api/narrowcast` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| X-Line-Retry-Key | string | no | Retry key. Specifies the UUID in hexadecimal format (e.g., `123e4567-e89b-12d3-a456-426614174000`) generated by any method. The retry key… |
| body | object | yes | JSON request body |

### Gets the status of a narrowcast message.
`GET https://zieapi.vercel.app/v1/communication:line-messaging-api/get-narrowcast-progress` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| requestId | string | yes | The narrowcast message's request ID. Each Messaging API request has a request ID. |

### Sends a message to multiple users at any time.
`POST https://zieapi.vercel.app/v1/communication:line-messaging-api/broadcast` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| X-Line-Retry-Key | string | no | Retry key. Specifies the UUID in hexadecimal format (e.g., `123e4567-e89b-12d3-a456-426614174000`) generated by any method. The retry key… |
| body | object | yes | JSON request body |

### Gets the target limit for sending messages in the current month. The total number of the free messages and…
`GET https://zieapi.vercel.app/v1/communication:line-messaging-api/get-message-quota` (byok)

### Gets the number of messages sent in the current month.
`GET https://zieapi.vercel.app/v1/communication:line-messaging-api/get-message-quota-consumption` (byok)

### Get number of sent reply messages
`GET https://zieapi.vercel.app/v1/communication:line-messaging-api/get-number-of-sent-reply-messages` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| date | string | yes | Date the messages were sent Format: `yyyyMMdd` (e.g. `20191231`) Timezone: UTC+9 |

### Get number of sent push messages
`GET https://zieapi.vercel.app/v1/communication:line-messaging-api/get-number-of-sent-push-messages` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| date | string | yes | Date the messages were sent Format: `yyyyMMdd` (e.g. `20191231`) Timezone: UTC+9 |

### Get number of sent multicast messages
`GET https://zieapi.vercel.app/v1/communication:line-messaging-api/get-number-of-sent-multicast-messages` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| date | string | yes | Date the messages were sent Format: `yyyyMMdd` (e.g. `20191231`) Timezone: UTC+9 |

### Get number of sent broadcast messages
`GET https://zieapi.vercel.app/v1/communication:line-messaging-api/get-number-of-sent-broadcast-messages` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| date | string | yes | Date the messages were sent Format: yyyyMMdd (e.g. 20191231) Timezone: UTC+9 |

### Validate message objects of a reply message
`POST https://zieapi.vercel.app/v1/communication:line-messaging-api/validate-reply` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### Validate message objects of a push message
`POST https://zieapi.vercel.app/v1/communication:line-messaging-api/validate-push` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### Validate message objects of a multicast message
`POST https://zieapi.vercel.app/v1/communication:line-messaging-api/validate-multicast` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### Validate message objects of a narrowcast message
`POST https://zieapi.vercel.app/v1/communication:line-messaging-api/validate-narrowcast` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### Validate message objects of a broadcast message
`POST https://zieapi.vercel.app/v1/communication:line-messaging-api/validate-broadcast` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### Get number of units used this month
`GET https://zieapi.vercel.app/v1/communication:line-messaging-api/get-aggregation-unit-usage` (byok)

### Get name list of units used this month
`GET https://zieapi.vercel.app/v1/communication:line-messaging-api/get-aggregation-unit-name-list` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| limit | string | no | The maximum number of aggregation units you can get per request. |
| start | string | no | Value of the continuation token found in the next property of the JSON object returned in the response. If you can't get all the… |

### Get profile
`GET https://zieapi.vercel.app/v1/communication:line-messaging-api/get-profile` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| userId | string | yes | User ID |

### Get a list of users who added your LINE Official Account as a friend
`GET https://zieapi.vercel.app/v1/communication:line-messaging-api/get-followers` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| start | string | no | Value of the continuation token found in the next property of the JSON object returned in the response. Include this parameter to get the… |
| limit | integer | no | The maximum number of user IDs to retrieve in a single request. |

### Get bot info
`GET https://zieapi.vercel.app/v1/communication:line-messaging-api/get-bot-info` (byok)

### Get group chat member profile
`GET https://zieapi.vercel.app/v1/communication:line-messaging-api/get-group-member-profile` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| groupId | string | yes | Group ID |
| userId | string | yes | User ID |

### Get multi-person chat member profile
`GET https://zieapi.vercel.app/v1/communication:line-messaging-api/get-room-member-profile` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| roomId | string | yes | Room ID |
| userId | string | yes | User ID |

### Get group chat member user IDs
`GET https://zieapi.vercel.app/v1/communication:line-messaging-api/get-group-members-ids` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| groupId | string | yes | Group ID |
| start | string | no | Value of the continuation token found in the `next` property of the JSON object returned in the response. Include this parameter to get… |

### Get multi-person chat member user IDs
`GET https://zieapi.vercel.app/v1/communication:line-messaging-api/get-room-members-ids` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| roomId | string | yes | Room ID |
| start | string | no | Value of the continuation token found in the `next` property of the JSON object returned in the response. Include this parameter to get… |

### Leave group chat
`POST https://zieapi.vercel.app/v1/communication:line-messaging-api/leave-group` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| groupId | string | yes | Group ID |

### Leave multi-person chat
`POST https://zieapi.vercel.app/v1/communication:line-messaging-api/leave-room` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| roomId | string | yes | Room ID |

### Get group chat summary
`GET https://zieapi.vercel.app/v1/communication:line-messaging-api/get-group-summary` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| groupId | string | yes | Group ID |

### Get number of users in a group chat
`GET https://zieapi.vercel.app/v1/communication:line-messaging-api/get-group-member-count` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| groupId | string | yes | Group ID |

### Get number of users in a multi-person chat
`GET https://zieapi.vercel.app/v1/communication:line-messaging-api/get-room-member-count` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| roomId | string | yes | Room ID |

### Create rich menu
`POST https://zieapi.vercel.app/v1/communication:line-messaging-api/create-rich-menu` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### Validate rich menu object
`POST https://zieapi.vercel.app/v1/communication:line-messaging-api/validate-rich-menu-object` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### Download rich menu image.
`GET https://zieapi.vercel.app/v1/communication:line-messaging-api/get-rich-menu-image` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| richMenuId | string | yes | ID of the rich menu with the image to be downloaded |

### Upload rich menu image
`POST https://zieapi.vercel.app/v1/communication:line-messaging-api/set-rich-menu-image` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| richMenuId | string | yes | The ID of the rich menu to attach the image to |

### Gets a rich menu via a rich menu ID.
`GET https://zieapi.vercel.app/v1/communication:line-messaging-api/get-rich-menu` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| richMenuId | string | yes | ID of a rich menu |

### Deletes a rich menu.
`POST https://zieapi.vercel.app/v1/communication:line-messaging-api/delete-rich-menu` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| richMenuId | string | yes | ID of a rich menu |

### Get rich menu list
`GET https://zieapi.vercel.app/v1/communication:line-messaging-api/get-rich-menu-list` (byok)

### Set default rich menu
`POST https://zieapi.vercel.app/v1/communication:line-messaging-api/set-default-rich-menu` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| richMenuId | string | yes | ID of a rich menu |

### Gets the ID of the default rich menu set with the Messaging API.
`GET https://zieapi.vercel.app/v1/communication:line-messaging-api/get-default-rich-menu-id` (byok)

### Cancel default rich menu
`POST https://zieapi.vercel.app/v1/communication:line-messaging-api/cancel-default-rich-menu` (byok)

### Create rich menu alias
`POST https://zieapi.vercel.app/v1/communication:line-messaging-api/create-rich-menu-alias` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### Get rich menu alias information
`GET https://zieapi.vercel.app/v1/communication:line-messaging-api/get-rich-menu-alias` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| richMenuAliasId | string | yes | The rich menu alias ID whose information you want to obtain. |

### Update rich menu alias
`POST https://zieapi.vercel.app/v1/communication:line-messaging-api/update-rich-menu-alias` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| richMenuAliasId | string | yes | The rich menu alias ID you want to update. |
| body | object | yes | JSON request body |

### Delete rich menu alias
`POST https://zieapi.vercel.app/v1/communication:line-messaging-api/delete-rich-menu-alias` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| richMenuAliasId | string | yes | Rich menu alias ID that you want to delete. |

### Get list of rich menu alias
`GET https://zieapi.vercel.app/v1/communication:line-messaging-api/get-rich-menu-alias-list` (byok)

### Get rich menu ID of user
`GET https://zieapi.vercel.app/v1/communication:line-messaging-api/get-rich-menu-id-of-user` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| userId | string | yes | User ID. Found in the `source` object of webhook event objects. Do not use the LINE ID used in LINE. |

### Unlink rich menu from user
`POST https://zieapi.vercel.app/v1/communication:line-messaging-api/unlink-rich-menu-id-from-user` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| userId | string | yes | User ID. Found in the `source` object of webhook event objects. Do not use the LINE ID used in LINE. |

### Link rich menu to user.
`POST https://zieapi.vercel.app/v1/communication:line-messaging-api/link-rich-menu-id-to-user` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| userId | string | yes | User ID. Found in the `source` object of webhook event objects. Do not use the LINE ID used in LINE. |
| richMenuId | string | yes | ID of a rich menu |

### Link rich menu to multiple users
`POST https://zieapi.vercel.app/v1/communication:line-messaging-api/link-rich-menu-id-to-users` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### Unlink rich menus from multiple users
`POST https://zieapi.vercel.app/v1/communication:line-messaging-api/unlink-rich-menu-id-from-users` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### You can use this endpoint to batch control the rich menu linked to the users using the endpoint such as Link…
`POST https://zieapi.vercel.app/v1/communication:line-messaging-api/rich-menu-batch` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### Validate a request body of the Replace or unlink the linked rich menus in batches endpoint.
`POST https://zieapi.vercel.app/v1/communication:line-messaging-api/validate-rich-menu-batch-request` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### Get the status of Replace or unlink a linked rich menus in batches.
`GET https://zieapi.vercel.app/v1/communication:line-messaging-api/get-rich-menu-batch-progress` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| requestId | string | yes | A request ID used to batch control the rich menu linked to the user. Each Messaging API request has a request ID. |

### Issue link token
`POST https://zieapi.vercel.app/v1/communication:line-messaging-api/issue-link-token` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| userId | string | yes | User ID for the LINE account to be linked. Found in the `source` object of account link event objects. Do not use the LINE ID used in LINE. |

### Mark messages from users as read
`POST https://zieapi.vercel.app/v1/communication:line-messaging-api/mark-messages-as-read` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### Send LINE notification message
`POST https://zieapi.vercel.app/v1/communication:line-messaging-api/push-messages-by-phone` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| X-Line-Delivery-Tag | string | no | String returned in the delivery.data property of the delivery completion event via Webhook. |
| body | object | yes | JSON request body |

### Send LINE notification message (template)
`POST https://zieapi.vercel.app/v1/communication:line-messaging-api/push-templated-messages-by-phone` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| X-Line-Delivery-Tag | string | no | String returned in the delivery.data property of the delivery completion event via Webhook. |
| body | object | yes | JSON request body |

### Get number of sent LINE notification messages
`GET https://zieapi.vercel.app/v1/communication:line-messaging-api/get-pnpmessage-statistics` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| date | string | yes | Date the message was sent Format: `yyyyMMdd` (Example:`20211231`) Time zone: UTC+9 |

### Get number of sent LINE notification messages (template)
`GET https://zieapi.vercel.app/v1/communication:line-messaging-api/get-pnptemplated-message-statistics` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| date | string | yes | Date the message was sent Format: `yyyyMMdd` (Example:`20211231`) Time zone: UTC+9 |

### Get a user's membership subscription.
`GET https://zieapi.vercel.app/v1/communication:line-messaging-api/get-membership-subscription` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| userId | string | yes | User ID |

### Get a list of memberships.
`GET https://zieapi.vercel.app/v1/communication:line-messaging-api/get-membership-list` (byok)

### Get a list of user IDs who joined the membership.
`GET https://zieapi.vercel.app/v1/communication:line-messaging-api/get-joined-membership-users` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| start | string | no | A continuation token to get next remaining membership user IDs. Returned only when there are remaining user IDs that weren't returned in… |
| limit | integer | no | The max number of items to return for this API call. The value is set to 300 by default, but the max acceptable value is 1000. |
| membershipId | integer | yes | Membership plan ID. |

### Get a paginated list of coupons.
`GET https://zieapi.vercel.app/v1/communication:line-messaging-api/list-coupon` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| status | array | no | Filter coupons by their status. |
| start | string | no | Pagination token to retrieve the next page of results. |
| limit | integer | no | Maximum number of coupons to return per request. |

### Create a new coupon. Define coupon details such as type, title, and validity period.
`POST https://zieapi.vercel.app/v1/communication:line-messaging-api/create-coupon` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | no | JSON request body |

### Get coupon detail
`GET https://zieapi.vercel.app/v1/communication:line-messaging-api/get-coupon-detail` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| couponId | string | yes |  |

### Close coupon
`POST https://zieapi.vercel.app/v1/communication:line-messaging-api/close-coupon` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| couponId | string | yes |  |

### Display a loading animation in one-on-one chats between users and LINE Official Accounts.
`POST https://zieapi.vercel.app/v1/communication:line-messaging-api/show-loading-animation` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### Mark messages from users as read by token
`POST https://zieapi.vercel.app/v1/communication:line-messaging-api/mark-messages-as-read-by-token` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

## Example
```
curl "https://zieapi.vercel.app/v1/communication:line-messaging-api/get-webhook-endpoint" \
  -H "x-api-key: $APIZIE_KEY" \
  -H "x-upstream-key: $PROVIDER_KEY"
```

## FAQ

### How do I call the LINE Messaging API API?
Create a free Apizie key, then send GET https://zieapi.vercel.app/v1/communication:line-messaging-api/get-webhook-endpoint with the header x-api-key. Every endpoint returns { project, data, timestamp }.

### Is the LINE Messaging API API free on Apizie?
Yes. The Free plan includes 1,000 requests a month at 100 requests a minute, no credit card. LINE Messaging API itself also needs your own key from line.me.

### Can AI agents use the LINE Messaging API API?
Yes. Add the Apizie MCP server (https://zieapi.vercel.app/mcp) to Claude, ChatGPT, Cursor or VS Code, then ask in plain language. The agent calls run_scraper with project key communication:line-messaging-api.

### What is the status of the LINE Messaging API API?
Needs your own provider key (bring your own key)
