Skip to content

@line/bot-sdk


@line/bot-sdk / insight / InsightClient

Class: InsightClient ​

Defined in: lib/insight/api/insightClient.ts:57

See ​

LineBotClient for a unified interface that wraps this client.

Constructors ​

Constructor ​

new InsightClient(config): InsightClient

Defined in: lib/insight/api/insightClient.ts:73

Initializes a new InsightClient.

Parameters ​

config ​

httpClientConfig

Configuration for this API client.

Returns ​

InsightClient

Example ​

ts
const client = new InsightClient({
  channelAccessToken: process.env.LINE_CHANNEL_ACCESS_TOKEN!,
});

Methods ​

getFriendsDemographics() ​

getFriendsDemographics(): Promise<GetFriendsDemographicsResponse>

Defined in: lib/insight/api/insightClient.ts:91

Retrieves the demographic attributes for a LINE Official Account's friends.You can only retrieve information about friends for LINE Official Accounts created by users in Japan (JP), Thailand (TH), Taiwan (TW) and Indonesia (ID). Calls GET https://api.line.me/v2/bot/insight/demographic. To inspect the HTTP status code or response headers, use getFriendsDemographicsWithHttpInfo.

Returns ​

Promise<GetFriendsDemographicsResponse>

A promise resolving to the response body.

See ​

LINE Developers documentation


getFriendsDemographicsWithHttpInfo() ​

getFriendsDemographicsWithHttpInfo(): Promise<ApiResponseType<GetFriendsDemographicsResponse>>

Defined in: lib/insight/api/insightClient.ts:102

Retrieves the demographic attributes for a LINE Official Account's friends.You can only retrieve information about friends for LINE Official Accounts created by users in Japan (JP), Thailand (TH), Taiwan (TW) and Indonesia (ID). Calls GET https://api.line.me/v2/bot/insight/demographic. This method returns the response body together with the underlying httpResponse.

Returns ​

Promise<ApiResponseType<GetFriendsDemographicsResponse>>

A promise resolving to the response body together with the underlying httpResponse.

See ​

LINE Developers documentation


getMessageEvent() ​

getMessageEvent(requestId): Promise<GetMessageEventResponse>

Defined in: lib/insight/api/insightClient.ts:119

Returns statistics about how users interact with narrowcast messages or broadcast messages sent from your LINE Official Account. Calls GET https://api.line.me/v2/bot/insight/message/event. To inspect the HTTP status code or response headers, use getMessageEventWithHttpInfo.

Parameters ​

requestId ​

string

Request ID of a narrowcast message or broadcast message. Each Messaging API request has a request ID.

Returns ​

Promise<GetMessageEventResponse>

A promise resolving to the response body.

See ​

LINE Developers documentation


getMessageEventWithHttpInfo() ​

getMessageEventWithHttpInfo(requestId): Promise<ApiResponseType<GetMessageEventResponse>>

Defined in: lib/insight/api/insightClient.ts:134

Returns statistics about how users interact with narrowcast messages or broadcast messages sent from your LINE Official Account. Calls GET https://api.line.me/v2/bot/insight/message/event. This method returns the response body together with the underlying httpResponse.

Parameters ​

requestId ​

string

Request ID of a narrowcast message or broadcast message. Each Messaging API request has a request ID.

Returns ​

Promise<ApiResponseType<GetMessageEventResponse>>

A promise resolving to the response body together with the underlying httpResponse.

See ​

LINE Developers documentation


getNumberOfFollowers() ​

getNumberOfFollowers(date?): Promise<GetNumberOfFollowersResponse>

Defined in: lib/insight/api/insightClient.ts:158

Returns the number of users who have added the LINE Official Account on or before a specified date. Calls GET https://api.line.me/v2/bot/insight/followers. To inspect the HTTP status code or response headers, use getNumberOfFollowersWithHttpInfo.

Parameters ​

date? ​

string

Date for which to retrieve the number of followers. Format: yyyyMMdd (e.g. 20191231) Timezone: UTC+9

Returns ​

Promise<GetNumberOfFollowersResponse>

A promise resolving to the response body.

See ​

LINE Developers documentation


getNumberOfFollowersWithHttpInfo() ​

getNumberOfFollowersWithHttpInfo(date?): Promise<ApiResponseType<GetNumberOfFollowersResponse>>

Defined in: lib/insight/api/insightClient.ts:173

Returns the number of users who have added the LINE Official Account on or before a specified date. Calls GET https://api.line.me/v2/bot/insight/followers. This method returns the response body together with the underlying httpResponse.

Parameters ​

date? ​

string

Date for which to retrieve the number of followers. Format: yyyyMMdd (e.g. 20191231) Timezone: UTC+9

Returns ​

Promise<ApiResponseType<GetNumberOfFollowersResponse>>

A promise resolving to the response body together with the underlying httpResponse.

See ​

LINE Developers documentation


getNumberOfMessageDeliveries() ​

getNumberOfMessageDeliveries(date): Promise<GetNumberOfMessageDeliveriesResponse>

Defined in: lib/insight/api/insightClient.ts:201

Returns the number of messages sent from LINE Official Account on a specified day. Calls GET https://api.line.me/v2/bot/insight/message/delivery. To inspect the HTTP status code or response headers, use getNumberOfMessageDeliveriesWithHttpInfo.

Parameters ​

date ​

string

Date for which to retrieve number of sent messages. - Format: yyyyMMdd (e.g. 20191231) - Timezone: UTC+9

Returns ​

Promise<GetNumberOfMessageDeliveriesResponse>

A promise resolving to the response body.

See ​

LINE Developers documentation


getNumberOfMessageDeliveriesWithHttpInfo() ​

getNumberOfMessageDeliveriesWithHttpInfo(date): Promise<ApiResponseType<GetNumberOfMessageDeliveriesResponse>>

Defined in: lib/insight/api/insightClient.ts:216

Returns the number of messages sent from LINE Official Account on a specified day. Calls GET https://api.line.me/v2/bot/insight/message/delivery. This method returns the response body together with the underlying httpResponse.

Parameters ​

date ​

string

Date for which to retrieve number of sent messages. - Format: yyyyMMdd (e.g. 20191231) - Timezone: UTC+9

Returns ​

Promise<ApiResponseType<GetNumberOfMessageDeliveriesResponse>>

A promise resolving to the response body together with the underlying httpResponse.

See ​

LINE Developers documentation


getRichMenuInsightDaily() ​

getRichMenuInsightDaily(richMenuId, from, to): Promise<GetRichMenuInsightDailyResponse>

Defined in: lib/insight/api/insightClient.ts:242

Gets rich menu statistics broken down by day for the specified period, for a rich menu created via the Messaging API. Returns the daily impression count for the whole rich menu and the daily click count for each tappable area. When the total number of unique clicks during the period is below the privacy threshold, only richMenuId is returned and the other fields are omitted. Calls GET https://api.line.me/v2/bot/insight/richmenu/{richMenuId}/daily. To inspect the HTTP status code or response headers, use getRichMenuInsightDailyWithHttpInfo.

Parameters ​

richMenuId ​

string

ID of the rich menu created via the Messaging API.

from ​

string

Start date of the aggregation period (inclusive). Must be within the most recent 3 years. Format: yyyyMMdd (e.g. 20260213) Time zone: UTC+9

to ​

string

End date of the aggregation period (inclusive). The end date can be specified for up to 99 days after the start date. Format: yyyyMMdd (e.g. 20260215) Time zone: UTC+9

Returns ​

Promise<GetRichMenuInsightDailyResponse>

A promise resolving to the response body.

See ​

LINE Developers documentation


getRichMenuInsightDailyWithHttpInfo() ​

getRichMenuInsightDailyWithHttpInfo(richMenuId, from, to): Promise<ApiResponseType<GetRichMenuInsightDailyResponse>>

Defined in: lib/insight/api/insightClient.ts:263

Gets rich menu statistics broken down by day for the specified period, for a rich menu created via the Messaging API. Returns the daily impression count for the whole rich menu and the daily click count for each tappable area. When the total number of unique clicks during the period is below the privacy threshold, only richMenuId is returned and the other fields are omitted. Calls GET https://api.line.me/v2/bot/insight/richmenu/{richMenuId}/daily. This method returns the response body together with the underlying httpResponse.

Parameters ​

richMenuId ​

string

ID of the rich menu created via the Messaging API.

from ​

string

Start date of the aggregation period (inclusive). Must be within the most recent 3 years. Format: yyyyMMdd (e.g. 20260213) Time zone: UTC+9

to ​

string

End date of the aggregation period (inclusive). The end date can be specified for up to 99 days after the start date. Format: yyyyMMdd (e.g. 20260215) Time zone: UTC+9

Returns ​

Promise<ApiResponseType<GetRichMenuInsightDailyResponse>>

A promise resolving to the response body together with the underlying httpResponse.

See ​

LINE Developers documentation


getRichMenuInsightSummary() ​

getRichMenuInsightSummary(richMenuId, from, to): Promise<GetRichMenuInsightSummaryResponse>

Defined in: lib/insight/api/insightClient.ts:296

Gets a summary of rich menu statistics for the specified period, for a rich menu created via the Messaging API. Returns the total impression count for the whole rich menu and the click count for each tappable area, aggregated over the entire period as a single result. When the total number of unique clicks during the period is below the privacy threshold, only richMenuId is returned and the other fields are omitted. Calls GET https://api.line.me/v2/bot/insight/richmenu/{richMenuId}/summary. To inspect the HTTP status code or response headers, use getRichMenuInsightSummaryWithHttpInfo.

Parameters ​

richMenuId ​

string

ID of the rich menu created via the Messaging API.

from ​

string

Start date of the aggregation period (inclusive). Must be within the most recent 3 years. Format: yyyyMMdd (e.g. 20260213) Time zone: UTC+9

to ​

string

End date of the aggregation period (inclusive). The end date can be specified for up to 396 days after the start date. Format: yyyyMMdd (e.g. 20260215) Time zone: UTC+9

Returns ​

Promise<GetRichMenuInsightSummaryResponse>

A promise resolving to the response body.

See ​

LINE Developers documentation


getRichMenuInsightSummaryWithHttpInfo() ​

getRichMenuInsightSummaryWithHttpInfo(richMenuId, from, to): Promise<ApiResponseType<GetRichMenuInsightSummaryResponse>>

Defined in: lib/insight/api/insightClient.ts:317

Gets a summary of rich menu statistics for the specified period, for a rich menu created via the Messaging API. Returns the total impression count for the whole rich menu and the click count for each tappable area, aggregated over the entire period as a single result. When the total number of unique clicks during the period is below the privacy threshold, only richMenuId is returned and the other fields are omitted. Calls GET https://api.line.me/v2/bot/insight/richmenu/{richMenuId}/summary. This method returns the response body together with the underlying httpResponse.

Parameters ​

richMenuId ​

string

ID of the rich menu created via the Messaging API.

from ​

string

Start date of the aggregation period (inclusive). Must be within the most recent 3 years. Format: yyyyMMdd (e.g. 20260213) Time zone: UTC+9

to ​

string

End date of the aggregation period (inclusive). The end date can be specified for up to 396 days after the start date. Format: yyyyMMdd (e.g. 20260215) Time zone: UTC+9

Returns ​

Promise<ApiResponseType<GetRichMenuInsightSummaryResponse>>

A promise resolving to the response body together with the underlying httpResponse.

See ​

LINE Developers documentation


getStatisticsPerUnit() ​

getStatisticsPerUnit(customAggregationUnit, from, to): Promise<GetStatisticsPerUnitResponse>

Defined in: lib/insight/api/insightClient.ts:349

You can check the per-unit statistics of how users interact with push messages and multicast messages sent from your LINE Official Account. Calls GET https://api.line.me/v2/bot/insight/message/event/aggregation. To inspect the HTTP status code or response headers, use getStatisticsPerUnitWithHttpInfo.

Parameters ​

customAggregationUnit ​

string

Name of aggregation unit specified when sending the message. Case-sensitive. For example, Promotion_a and Promotion_A are regarded as different unit names.

from ​

string

Start date of aggregation period. Format: yyyyMMdd (e.g. 20210301) Time zone: UTC+9

to ​

string

End date of aggregation period. The end date can be specified for up to 30 days later. For example, if the start date is 20210301, the latest end date is 20210331. Format: yyyyMMdd (e.g. 20210301) Time zone: UTC+9

Returns ​

Promise<GetStatisticsPerUnitResponse>

A promise resolving to the response body.

See ​

LINE Developers documentation


getStatisticsPerUnitWithHttpInfo() ​

getStatisticsPerUnitWithHttpInfo(customAggregationUnit, from, to): Promise<ApiResponseType<GetStatisticsPerUnitResponse>>

Defined in: lib/insight/api/insightClient.ts:373

You can check the per-unit statistics of how users interact with push messages and multicast messages sent from your LINE Official Account. Calls GET https://api.line.me/v2/bot/insight/message/event/aggregation. This method returns the response body together with the underlying httpResponse.

Parameters ​

customAggregationUnit ​

string

Name of aggregation unit specified when sending the message. Case-sensitive. For example, Promotion_a and Promotion_A are regarded as different unit names.

from ​

string

Start date of aggregation period. Format: yyyyMMdd (e.g. 20210301) Time zone: UTC+9

to ​

string

End date of aggregation period. The end date can be specified for up to 30 days later. For example, if the start date is 20210301, the latest end date is 20210331. Format: yyyyMMdd (e.g. 20210301) Time zone: UTC+9

Returns ​

Promise<ApiResponseType<GetStatisticsPerUnitResponse>>

A promise resolving to the response body together with the underlying httpResponse.

See ​

LINE Developers documentation