line-bot-api 1.29.1 → 1.30.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (650) hide show
  1. checksums.yaml +4 -4
  2. data/CONTRIBUTING.md +38 -8
  3. data/README.md +1 -1
  4. data/lib/line/bot/{api → v1/api}/errors.rb +2 -0
  5. data/lib/line/bot/{api → v1/api}/version.rb +3 -1
  6. data/lib/line/bot/{api.rb → v1/api.rb} +3 -1
  7. data/lib/line/bot/{client.rb → v1/client.rb} +563 -3
  8. data/lib/line/bot/{event → v1/event}/account_link.rb +4 -0
  9. data/lib/line/bot/{event → v1/event}/base.rb +6 -0
  10. data/lib/line/bot/{event → v1/event}/beacon.rb +4 -0
  11. data/lib/line/bot/{event → v1/event}/follow.rb +4 -0
  12. data/lib/line/bot/{event → v1/event}/join.rb +4 -0
  13. data/lib/line/bot/{event → v1/event}/leave.rb +4 -0
  14. data/lib/line/bot/{event → v1/event}/member_joined.rb +4 -0
  15. data/lib/line/bot/{event → v1/event}/member_left.rb +4 -0
  16. data/lib/line/bot/{event → v1/event}/message.rb +6 -0
  17. data/lib/line/bot/{event → v1/event}/postback.rb +4 -0
  18. data/lib/line/bot/{event → v1/event}/things.rb +6 -0
  19. data/lib/line/bot/{event → v1/event}/unfollow.rb +4 -0
  20. data/lib/line/bot/{event → v1/event}/unsend.rb +4 -0
  21. data/lib/line/bot/{event → v1/event}/video_play_complete.rb +4 -0
  22. data/lib/line/bot/{event.rb → v1/event.rb} +14 -14
  23. data/lib/line/bot/{httpclient.rb → v1/httpclient.rb} +22 -0
  24. data/lib/line/bot/{util.rb → v1/util.rb} +4 -0
  25. data/lib/line/bot/v2/channel_access_token/api/channel_access_token_client.rb +533 -0
  26. data/lib/line/bot/v2/channel_access_token/core.rb +20 -0
  27. data/lib/line/bot/v2/channel_access_token/model/channel_access_token_key_ids_response.rb +68 -0
  28. data/lib/line/bot/v2/channel_access_token/model/error_response.rb +73 -0
  29. data/lib/line/bot/v2/channel_access_token/model/issue_channel_access_token_response.rb +86 -0
  30. data/lib/line/bot/v2/channel_access_token/model/issue_short_lived_channel_access_token_response.rb +80 -0
  31. data/lib/line/bot/v2/channel_access_token/model/issue_stateless_channel_access_token_response.rb +80 -0
  32. data/lib/line/bot/v2/channel_access_token/model/verify_channel_access_token_response.rb +79 -0
  33. data/lib/line/bot/v2/http_client.rb +165 -0
  34. data/lib/line/bot/v2/insight/api/insight_client.rb +314 -0
  35. data/lib/line/bot/v2/insight/core.rb +32 -0
  36. data/lib/line/bot/v2/insight/model/age_tile.rb +72 -0
  37. data/lib/line/bot/v2/insight/model/app_type_tile.rb +72 -0
  38. data/lib/line/bot/v2/insight/model/area_tile.rb +72 -0
  39. data/lib/line/bot/v2/insight/model/error_detail.rb +72 -0
  40. data/lib/line/bot/v2/insight/model/error_response.rb +79 -0
  41. data/lib/line/bot/v2/insight/model/gender_tile.rb +72 -0
  42. data/lib/line/bot/v2/insight/model/get_friends_demographics_response.rb +128 -0
  43. data/lib/line/bot/v2/insight/model/get_message_event_response.rb +92 -0
  44. data/lib/line/bot/v2/insight/model/get_message_event_response_click.rb +90 -0
  45. data/lib/line/bot/v2/insight/model/get_message_event_response_message.rb +132 -0
  46. data/lib/line/bot/v2/insight/model/get_message_event_response_overview.rb +103 -0
  47. data/lib/line/bot/v2/insight/model/get_number_of_followers_response.rb +86 -0
  48. data/lib/line/bot/v2/insight/model/get_number_of_message_deliveries_response.rb +128 -0
  49. data/lib/line/bot/v2/insight/model/get_statistics_per_unit_response.rb +92 -0
  50. data/lib/line/bot/v2/insight/model/get_statistics_per_unit_response_click.rb +91 -0
  51. data/lib/line/bot/v2/insight/model/get_statistics_per_unit_response_message.rb +139 -0
  52. data/lib/line/bot/v2/insight/model/get_statistics_per_unit_response_overview.rb +86 -0
  53. data/lib/line/bot/v2/insight/model/subscription_period_tile.rb +72 -0
  54. data/lib/line/bot/v2/liff/api/liff_client.rb +273 -0
  55. data/lib/line/bot/v2/liff/core.rb +24 -0
  56. data/lib/line/bot/v2/liff/model/add_liff_app_request.rb +97 -0
  57. data/lib/line/bot/v2/liff/model/add_liff_app_response.rb +66 -0
  58. data/lib/line/bot/v2/liff/model/get_all_liff_apps_response.rb +72 -0
  59. data/lib/line/bot/v2/liff/model/liff_app.rb +102 -0
  60. data/lib/line/bot/v2/liff/model/liff_bot_prompt.rb +21 -0
  61. data/lib/line/bot/v2/liff/model/liff_features.rb +72 -0
  62. data/lib/line/bot/v2/liff/model/liff_scope.rb +21 -0
  63. data/lib/line/bot/v2/liff/model/liff_view.rb +79 -0
  64. data/lib/line/bot/v2/liff/model/update_liff_app_request.rb +97 -0
  65. data/lib/line/bot/v2/liff/model/update_liff_view.rb +79 -0
  66. data/lib/line/bot/v2/manage_audience/api/manage_audience_blob_client.rb +182 -0
  67. data/lib/line/bot/v2/manage_audience/api/manage_audience_client.rb +616 -0
  68. data/lib/line/bot/v2/manage_audience/core.rb +42 -0
  69. data/lib/line/bot/v2/manage_audience/model/adaccount.rb +67 -0
  70. data/lib/line/bot/v2/manage_audience/model/add_audience_to_audience_group_request.rb +86 -0
  71. data/lib/line/bot/v2/manage_audience/model/audience.rb +67 -0
  72. data/lib/line/bot/v2/manage_audience/model/audience_group.rb +133 -0
  73. data/lib/line/bot/v2/manage_audience/model/audience_group_create_route.rb +21 -0
  74. data/lib/line/bot/v2/manage_audience/model/audience_group_failed_type.rb +21 -0
  75. data/lib/line/bot/v2/manage_audience/model/audience_group_job.rb +110 -0
  76. data/lib/line/bot/v2/manage_audience/model/audience_group_job_failed_type.rb +21 -0
  77. data/lib/line/bot/v2/manage_audience/model/audience_group_job_status.rb +21 -0
  78. data/lib/line/bot/v2/manage_audience/model/audience_group_job_type.rb +21 -0
  79. data/lib/line/bot/v2/manage_audience/model/audience_group_permission.rb +21 -0
  80. data/lib/line/bot/v2/manage_audience/model/audience_group_status.rb +21 -0
  81. data/lib/line/bot/v2/manage_audience/model/audience_group_type.rb +21 -0
  82. data/lib/line/bot/v2/manage_audience/model/create_audience_group_request.rb +92 -0
  83. data/lib/line/bot/v2/manage_audience/model/create_audience_group_response.rb +110 -0
  84. data/lib/line/bot/v2/manage_audience/model/create_click_based_audience_group_request.rb +80 -0
  85. data/lib/line/bot/v2/manage_audience/model/create_click_based_audience_group_response.rb +122 -0
  86. data/lib/line/bot/v2/manage_audience/model/create_imp_based_audience_group_request.rb +74 -0
  87. data/lib/line/bot/v2/manage_audience/model/create_imp_based_audience_group_response.rb +92 -0
  88. data/lib/line/bot/v2/manage_audience/model/detailed_owner.rb +79 -0
  89. data/lib/line/bot/v2/manage_audience/model/error_detail.rb +72 -0
  90. data/lib/line/bot/v2/manage_audience/model/error_response.rb +79 -0
  91. data/lib/line/bot/v2/manage_audience/model/get_audience_data_response.rb +86 -0
  92. data/lib/line/bot/v2/manage_audience/model/get_audience_groups_response.rb +104 -0
  93. data/lib/line/bot/v2/manage_audience/model/get_shared_audience_data_response.rb +86 -0
  94. data/lib/line/bot/v2/manage_audience/model/get_shared_audience_groups_response.rb +104 -0
  95. data/lib/line/bot/v2/manage_audience/model/update_audience_group_description_request.rb +68 -0
  96. data/lib/line/bot/v2/messaging_api/api/messaging_api_blob_client.rb +282 -0
  97. data/lib/line/bot/v2/messaging_api/api/messaging_api_client.rb +3354 -0
  98. data/lib/line/bot/v2/messaging_api/core.rb +173 -0
  99. data/lib/line/bot/v2/messaging_api/model/action.rb +92 -0
  100. data/lib/line/bot/v2/messaging_api/model/age_demographic.rb +20 -0
  101. data/lib/line/bot/v2/messaging_api/model/age_demographic_filter.rb +78 -0
  102. data/lib/line/bot/v2/messaging_api/model/all_mention_target.rb +67 -0
  103. data/lib/line/bot/v2/messaging_api/model/alt_uri.rb +66 -0
  104. data/lib/line/bot/v2/messaging_api/model/app_type_demographic.rb +20 -0
  105. data/lib/line/bot/v2/messaging_api/model/app_type_demographic_filter.rb +72 -0
  106. data/lib/line/bot/v2/messaging_api/model/area_demographic.rb +21 -0
  107. data/lib/line/bot/v2/messaging_api/model/area_demographic_filter.rb +72 -0
  108. data/lib/line/bot/v2/messaging_api/model/audience_recipient.rb +72 -0
  109. data/lib/line/bot/v2/messaging_api/model/audio_message.rb +91 -0
  110. data/lib/line/bot/v2/messaging_api/model/bot_info_response.rb +103 -0
  111. data/lib/line/bot/v2/messaging_api/model/broadcast_request.rb +79 -0
  112. data/lib/line/bot/v2/messaging_api/model/buttons_template.rb +120 -0
  113. data/lib/line/bot/v2/messaging_api/model/camera_action.rb +72 -0
  114. data/lib/line/bot/v2/messaging_api/model/camera_roll_action.rb +72 -0
  115. data/lib/line/bot/v2/messaging_api/model/carousel_column.rb +103 -0
  116. data/lib/line/bot/v2/messaging_api/model/carousel_template.rb +90 -0
  117. data/lib/line/bot/v2/messaging_api/model/chat_reference.rb +68 -0
  118. data/lib/line/bot/v2/messaging_api/model/clipboard_action.rb +79 -0
  119. data/lib/line/bot/v2/messaging_api/model/clipboard_imagemap_action.rb +85 -0
  120. data/lib/line/bot/v2/messaging_api/model/confirm_template.rb +84 -0
  121. data/lib/line/bot/v2/messaging_api/model/create_rich_menu_alias_request.rb +73 -0
  122. data/lib/line/bot/v2/messaging_api/model/datetime_picker_action.rb +103 -0
  123. data/lib/line/bot/v2/messaging_api/model/demographic_filter.rb +82 -0
  124. data/lib/line/bot/v2/messaging_api/model/emoji.rb +78 -0
  125. data/lib/line/bot/v2/messaging_api/model/emoji_substitution_object.rb +80 -0
  126. data/lib/line/bot/v2/messaging_api/model/error_detail.rb +72 -0
  127. data/lib/line/bot/v2/messaging_api/model/error_response.rb +91 -0
  128. data/lib/line/bot/v2/messaging_api/model/filter.rb +67 -0
  129. data/lib/line/bot/v2/messaging_api/model/flex_block_style.rb +78 -0
  130. data/lib/line/bot/v2/messaging_api/model/flex_box.rb +234 -0
  131. data/lib/line/bot/v2/messaging_api/model/flex_box_background.rb +76 -0
  132. data/lib/line/bot/v2/messaging_api/model/flex_box_border_width.rb +21 -0
  133. data/lib/line/bot/v2/messaging_api/model/flex_box_corner_radius.rb +21 -0
  134. data/lib/line/bot/v2/messaging_api/model/flex_box_linear_gradient.rb +96 -0
  135. data/lib/line/bot/v2/messaging_api/model/flex_box_padding.rb +21 -0
  136. data/lib/line/bot/v2/messaging_api/model/flex_box_spacing.rb +21 -0
  137. data/lib/line/bot/v2/messaging_api/model/flex_bubble.rb +114 -0
  138. data/lib/line/bot/v2/messaging_api/model/flex_bubble_styles.rb +84 -0
  139. data/lib/line/bot/v2/messaging_api/model/flex_button.rb +150 -0
  140. data/lib/line/bot/v2/messaging_api/model/flex_carousel.rb +78 -0
  141. data/lib/line/bot/v2/messaging_api/model/flex_component.rb +84 -0
  142. data/lib/line/bot/v2/messaging_api/model/flex_container.rb +77 -0
  143. data/lib/line/bot/v2/messaging_api/model/flex_filler.rb +72 -0
  144. data/lib/line/bot/v2/messaging_api/model/flex_icon.rb +127 -0
  145. data/lib/line/bot/v2/messaging_api/model/flex_icon_size.rb +21 -0
  146. data/lib/line/bot/v2/messaging_api/model/flex_image.rb +163 -0
  147. data/lib/line/bot/v2/messaging_api/model/flex_image_size.rb +21 -0
  148. data/lib/line/bot/v2/messaging_api/model/flex_margin.rb +21 -0
  149. data/lib/line/bot/v2/messaging_api/model/flex_message.rb +91 -0
  150. data/lib/line/bot/v2/messaging_api/model/flex_offset.rb +21 -0
  151. data/lib/line/bot/v2/messaging_api/model/flex_separator.rb +78 -0
  152. data/lib/line/bot/v2/messaging_api/model/flex_span.rb +102 -0
  153. data/lib/line/bot/v2/messaging_api/model/flex_span_size.rb +21 -0
  154. data/lib/line/bot/v2/messaging_api/model/flex_text.rb +204 -0
  155. data/lib/line/bot/v2/messaging_api/model/flex_text_font_size.rb +21 -0
  156. data/lib/line/bot/v2/messaging_api/model/flex_video.rb +96 -0
  157. data/lib/line/bot/v2/messaging_api/model/gender_demographic.rb +20 -0
  158. data/lib/line/bot/v2/messaging_api/model/gender_demographic_filter.rb +72 -0
  159. data/lib/line/bot/v2/messaging_api/model/get_aggregation_unit_name_list_response.rb +73 -0
  160. data/lib/line/bot/v2/messaging_api/model/get_aggregation_unit_usage_response.rb +67 -0
  161. data/lib/line/bot/v2/messaging_api/model/get_followers_response.rb +73 -0
  162. data/lib/line/bot/v2/messaging_api/model/get_joined_membership_users_response.rb +74 -0
  163. data/lib/line/bot/v2/messaging_api/model/get_membership_subscription_response.rb +74 -0
  164. data/lib/line/bot/v2/messaging_api/model/get_message_content_transcoding_response.rb +68 -0
  165. data/lib/line/bot/v2/messaging_api/model/get_webhook_endpoint_response.rb +73 -0
  166. data/lib/line/bot/v2/messaging_api/model/group_member_count_response.rb +67 -0
  167. data/lib/line/bot/v2/messaging_api/model/group_summary_response.rb +79 -0
  168. data/lib/line/bot/v2/messaging_api/model/group_user_profile_response.rb +79 -0
  169. data/lib/line/bot/v2/messaging_api/model/image_carousel_column.rb +72 -0
  170. data/lib/line/bot/v2/messaging_api/model/image_carousel_template.rb +78 -0
  171. data/lib/line/bot/v2/messaging_api/model/image_message.rb +91 -0
  172. data/lib/line/bot/v2/messaging_api/model/imagemap_action.rb +85 -0
  173. data/lib/line/bot/v2/messaging_api/model/imagemap_area.rb +84 -0
  174. data/lib/line/bot/v2/messaging_api/model/imagemap_base_size.rb +72 -0
  175. data/lib/line/bot/v2/messaging_api/model/imagemap_external_link.rb +72 -0
  176. data/lib/line/bot/v2/messaging_api/model/imagemap_message.rb +115 -0
  177. data/lib/line/bot/v2/messaging_api/model/imagemap_video.rb +84 -0
  178. data/lib/line/bot/v2/messaging_api/model/issue_link_token_response.rb +67 -0
  179. data/lib/line/bot/v2/messaging_api/model/limit.rb +74 -0
  180. data/lib/line/bot/v2/messaging_api/model/location_action.rb +72 -0
  181. data/lib/line/bot/v2/messaging_api/model/location_message.rb +103 -0
  182. data/lib/line/bot/v2/messaging_api/model/mark_messages_as_read_request.rb +67 -0
  183. data/lib/line/bot/v2/messaging_api/model/members_ids_response.rb +72 -0
  184. data/lib/line/bot/v2/messaging_api/model/membership.rb +120 -0
  185. data/lib/line/bot/v2/messaging_api/model/membership_list_response.rb +73 -0
  186. data/lib/line/bot/v2/messaging_api/model/mention_substitution_object.rb +74 -0
  187. data/lib/line/bot/v2/messaging_api/model/mention_target.rb +77 -0
  188. data/lib/line/bot/v2/messaging_api/model/message.rb +98 -0
  189. data/lib/line/bot/v2/messaging_api/model/message_action.rb +78 -0
  190. data/lib/line/bot/v2/messaging_api/model/message_imagemap_action.rb +84 -0
  191. data/lib/line/bot/v2/messaging_api/model/message_quota_response.rb +73 -0
  192. data/lib/line/bot/v2/messaging_api/model/multicast_request.rb +91 -0
  193. data/lib/line/bot/v2/messaging_api/model/narrowcast_progress_response.rb +109 -0
  194. data/lib/line/bot/v2/messaging_api/model/narrowcast_request.rb +97 -0
  195. data/lib/line/bot/v2/messaging_api/model/number_of_messages_response.rb +72 -0
  196. data/lib/line/bot/v2/messaging_api/model/operator_demographic_filter.rb +96 -0
  197. data/lib/line/bot/v2/messaging_api/model/operator_recipient.rb +96 -0
  198. data/lib/line/bot/v2/messaging_api/model/pnp_messages_request.rb +85 -0
  199. data/lib/line/bot/v2/messaging_api/model/postback_action.rb +102 -0
  200. data/lib/line/bot/v2/messaging_api/model/push_message_request.rb +91 -0
  201. data/lib/line/bot/v2/messaging_api/model/push_message_response.rb +73 -0
  202. data/lib/line/bot/v2/messaging_api/model/quick_reply.rb +74 -0
  203. data/lib/line/bot/v2/messaging_api/model/quick_reply_item.rb +79 -0
  204. data/lib/line/bot/v2/messaging_api/model/quota_consumption_response.rb +67 -0
  205. data/lib/line/bot/v2/messaging_api/model/quota_type.rb +22 -0
  206. data/lib/line/bot/v2/messaging_api/model/recipient.rb +79 -0
  207. data/lib/line/bot/v2/messaging_api/model/redelivery_recipient.rb +72 -0
  208. data/lib/line/bot/v2/messaging_api/model/reply_message_request.rb +85 -0
  209. data/lib/line/bot/v2/messaging_api/model/reply_message_response.rb +73 -0
  210. data/lib/line/bot/v2/messaging_api/model/rich_menu_alias_list_response.rb +73 -0
  211. data/lib/line/bot/v2/messaging_api/model/rich_menu_alias_response.rb +72 -0
  212. data/lib/line/bot/v2/messaging_api/model/rich_menu_area.rb +73 -0
  213. data/lib/line/bot/v2/messaging_api/model/rich_menu_batch_link_operation.rb +79 -0
  214. data/lib/line/bot/v2/messaging_api/model/rich_menu_batch_operation.rb +80 -0
  215. data/lib/line/bot/v2/messaging_api/model/rich_menu_batch_progress_phase.rb +21 -0
  216. data/lib/line/bot/v2/messaging_api/model/rich_menu_batch_progress_response.rb +79 -0
  217. data/lib/line/bot/v2/messaging_api/model/rich_menu_batch_request.rb +78 -0
  218. data/lib/line/bot/v2/messaging_api/model/rich_menu_batch_unlink_all_operation.rb +67 -0
  219. data/lib/line/bot/v2/messaging_api/model/rich_menu_batch_unlink_operation.rb +73 -0
  220. data/lib/line/bot/v2/messaging_api/model/rich_menu_bounds.rb +86 -0
  221. data/lib/line/bot/v2/messaging_api/model/rich_menu_bulk_link_request.rb +73 -0
  222. data/lib/line/bot/v2/messaging_api/model/rich_menu_bulk_unlink_request.rb +67 -0
  223. data/lib/line/bot/v2/messaging_api/model/rich_menu_id_response.rb +66 -0
  224. data/lib/line/bot/v2/messaging_api/model/rich_menu_list_response.rb +73 -0
  225. data/lib/line/bot/v2/messaging_api/model/rich_menu_request.rb +96 -0
  226. data/lib/line/bot/v2/messaging_api/model/rich_menu_response.rb +102 -0
  227. data/lib/line/bot/v2/messaging_api/model/rich_menu_size.rb +73 -0
  228. data/lib/line/bot/v2/messaging_api/model/rich_menu_switch_action.rb +84 -0
  229. data/lib/line/bot/v2/messaging_api/model/room_member_count_response.rb +67 -0
  230. data/lib/line/bot/v2/messaging_api/model/room_user_profile_response.rb +79 -0
  231. data/lib/line/bot/v2/messaging_api/model/sender.rb +73 -0
  232. data/lib/line/bot/v2/messaging_api/model/sent_message.rb +72 -0
  233. data/lib/line/bot/v2/messaging_api/model/set_webhook_endpoint_request.rb +67 -0
  234. data/lib/line/bot/v2/messaging_api/model/show_loading_animation_request.rb +73 -0
  235. data/lib/line/bot/v2/messaging_api/model/sticker_message.rb +97 -0
  236. data/lib/line/bot/v2/messaging_api/model/subscribed_membership_plan.rb +97 -0
  237. data/lib/line/bot/v2/messaging_api/model/subscribed_membership_user.rb +85 -0
  238. data/lib/line/bot/v2/messaging_api/model/subscription.rb +73 -0
  239. data/lib/line/bot/v2/messaging_api/model/subscription_period_demographic.rb +20 -0
  240. data/lib/line/bot/v2/messaging_api/model/subscription_period_demographic_filter.rb +78 -0
  241. data/lib/line/bot/v2/messaging_api/model/substitution_object.rb +78 -0
  242. data/lib/line/bot/v2/messaging_api/model/template.rb +79 -0
  243. data/lib/line/bot/v2/messaging_api/model/template_image_aspect_ratio.rb +21 -0
  244. data/lib/line/bot/v2/messaging_api/model/template_image_size.rb +21 -0
  245. data/lib/line/bot/v2/messaging_api/model/template_message.rb +91 -0
  246. data/lib/line/bot/v2/messaging_api/model/test_webhook_endpoint_request.rb +67 -0
  247. data/lib/line/bot/v2/messaging_api/model/test_webhook_endpoint_response.rb +91 -0
  248. data/lib/line/bot/v2/messaging_api/model/text_message.rb +103 -0
  249. data/lib/line/bot/v2/messaging_api/model/text_message_v2.rb +97 -0
  250. data/lib/line/bot/v2/messaging_api/model/update_rich_menu_alias_request.rb +67 -0
  251. data/lib/line/bot/v2/messaging_api/model/uri_action.rb +84 -0
  252. data/lib/line/bot/v2/messaging_api/model/uri_imagemap_action.rb +84 -0
  253. data/lib/line/bot/v2/messaging_api/model/user_mention_target.rb +73 -0
  254. data/lib/line/bot/v2/messaging_api/model/user_profile_response.rb +91 -0
  255. data/lib/line/bot/v2/messaging_api/model/validate_message_request.rb +72 -0
  256. data/lib/line/bot/v2/messaging_api/model/video_message.rb +97 -0
  257. data/lib/line/bot/v2/module/api/line_module_client.rb +247 -0
  258. data/lib/line/bot/v2/module/core.rb +18 -0
  259. data/lib/line/bot/v2/module/model/acquire_chat_control_request.rb +74 -0
  260. data/lib/line/bot/v2/module/model/detach_module_request.rb +68 -0
  261. data/lib/line/bot/v2/module/model/get_modules_response.rb +80 -0
  262. data/lib/line/bot/v2/module/model/module_bot.rb +92 -0
  263. data/lib/line/bot/v2/module_attach/api/line_module_attach_client.rb +160 -0
  264. data/lib/line/bot/v2/module_attach/core.rb +15 -0
  265. data/lib/line/bot/v2/module_attach/model/attach_module_response.rb +73 -0
  266. data/lib/line/bot/v2/reserved_words.rb +50 -0
  267. data/lib/line/bot/v2/shop/api/shop_client.rb +95 -0
  268. data/lib/line/bot/v2/shop/core.rb +16 -0
  269. data/lib/line/bot/v2/shop/model/error_response.rb +67 -0
  270. data/lib/line/bot/v2/shop/model/mission_sticker_request.rb +86 -0
  271. data/lib/line/bot/v2/utils.rb +143 -0
  272. data/lib/line/bot/v2/webhook/core.rb +77 -0
  273. data/lib/line/bot/v2/webhook/model/account_link_event.rb +109 -0
  274. data/lib/line/bot/v2/webhook/model/action_result.rb +72 -0
  275. data/lib/line/bot/v2/webhook/model/activated_event.rb +103 -0
  276. data/lib/line/bot/v2/webhook/model/all_mentionee.rb +79 -0
  277. data/lib/line/bot/v2/webhook/model/attached_module_content.rb +78 -0
  278. data/lib/line/bot/v2/webhook/model/audio_message_content.rb +84 -0
  279. data/lib/line/bot/v2/webhook/model/beacon_content.rb +78 -0
  280. data/lib/line/bot/v2/webhook/model/beacon_event.rb +109 -0
  281. data/lib/line/bot/v2/webhook/model/bot_resumed_event.rb +97 -0
  282. data/lib/line/bot/v2/webhook/model/bot_suspended_event.rb +97 -0
  283. data/lib/line/bot/v2/webhook/model/callback_request.rb +80 -0
  284. data/lib/line/bot/v2/webhook/model/chat_control.rb +66 -0
  285. data/lib/line/bot/v2/webhook/model/content_provider.rb +79 -0
  286. data/lib/line/bot/v2/webhook/model/deactivated_event.rb +97 -0
  287. data/lib/line/bot/v2/webhook/model/delivery_context.rb +67 -0
  288. data/lib/line/bot/v2/webhook/model/detached_module_content.rb +78 -0
  289. data/lib/line/bot/v2/webhook/model/emoji.rb +84 -0
  290. data/lib/line/bot/v2/webhook/model/event.rb +126 -0
  291. data/lib/line/bot/v2/webhook/model/event_mode.rb +21 -0
  292. data/lib/line/bot/v2/webhook/model/file_message_content.rb +84 -0
  293. data/lib/line/bot/v2/webhook/model/follow_detail.rb +66 -0
  294. data/lib/line/bot/v2/webhook/model/follow_event.rb +109 -0
  295. data/lib/line/bot/v2/webhook/model/group_source.rb +78 -0
  296. data/lib/line/bot/v2/webhook/model/image_message_content.rb +90 -0
  297. data/lib/line/bot/v2/webhook/model/image_set.rb +78 -0
  298. data/lib/line/bot/v2/webhook/model/join_event.rb +103 -0
  299. data/lib/line/bot/v2/webhook/model/joined_members.rb +72 -0
  300. data/lib/line/bot/v2/webhook/model/joined_membership_content.rb +72 -0
  301. data/lib/line/bot/v2/webhook/model/leave_event.rb +97 -0
  302. data/lib/line/bot/v2/webhook/model/left_members.rb +72 -0
  303. data/lib/line/bot/v2/webhook/model/left_membership_content.rb +72 -0
  304. data/lib/line/bot/v2/webhook/model/link_content.rb +73 -0
  305. data/lib/line/bot/v2/webhook/model/link_things_content.rb +72 -0
  306. data/lib/line/bot/v2/webhook/model/location_message_content.rb +96 -0
  307. data/lib/line/bot/v2/webhook/model/member_joined_event.rb +109 -0
  308. data/lib/line/bot/v2/webhook/model/member_left_event.rb +103 -0
  309. data/lib/line/bot/v2/webhook/model/membership_content.rb +79 -0
  310. data/lib/line/bot/v2/webhook/model/membership_event.rb +109 -0
  311. data/lib/line/bot/v2/webhook/model/mention.rb +72 -0
  312. data/lib/line/bot/v2/webhook/model/mentionee.rb +90 -0
  313. data/lib/line/bot/v2/webhook/model/message_content.rb +89 -0
  314. data/lib/line/bot/v2/webhook/model/message_event.rb +109 -0
  315. data/lib/line/bot/v2/webhook/model/module_content.rb +77 -0
  316. data/lib/line/bot/v2/webhook/model/module_event.rb +103 -0
  317. data/lib/line/bot/v2/webhook/model/pnp_delivery.rb +67 -0
  318. data/lib/line/bot/v2/webhook/model/pnp_delivery_completion_event.rb +103 -0
  319. data/lib/line/bot/v2/webhook/model/postback_content.rb +72 -0
  320. data/lib/line/bot/v2/webhook/model/postback_event.rb +109 -0
  321. data/lib/line/bot/v2/webhook/model/renewed_membership_content.rb +72 -0
  322. data/lib/line/bot/v2/webhook/model/room_source.rb +78 -0
  323. data/lib/line/bot/v2/webhook/model/scenario_result.rb +115 -0
  324. data/lib/line/bot/v2/webhook/model/scenario_result_things_content.rb +78 -0
  325. data/lib/line/bot/v2/webhook/model/source.rb +80 -0
  326. data/lib/line/bot/v2/webhook/model/sticker_message_content.rb +115 -0
  327. data/lib/line/bot/v2/webhook/model/text_message_content.rb +108 -0
  328. data/lib/line/bot/v2/webhook/model/things_content.rb +78 -0
  329. data/lib/line/bot/v2/webhook/model/things_event.rb +109 -0
  330. data/lib/line/bot/v2/webhook/model/unfollow_event.rb +97 -0
  331. data/lib/line/bot/v2/webhook/model/unlink_things_content.rb +72 -0
  332. data/lib/line/bot/v2/webhook/model/unsend_detail.rb +66 -0
  333. data/lib/line/bot/v2/webhook/model/unsend_event.rb +103 -0
  334. data/lib/line/bot/v2/webhook/model/user_mentionee.rb +91 -0
  335. data/lib/line/bot/v2/webhook/model/user_source.rb +72 -0
  336. data/lib/line/bot/v2/webhook/model/video_message_content.rb +90 -0
  337. data/lib/line/bot/v2/webhook/model/video_play_complete.rb +66 -0
  338. data/lib/line/bot/v2/webhook/model/video_play_complete_event.rb +109 -0
  339. data/lib/line/bot/v2/webhook_parser.rb +94 -0
  340. data/lib/line/bot/version.rb +7 -0
  341. data/lib/line/bot.rb +24 -9
  342. data/line-bot-api.gemspec +23 -18
  343. data/sig/line/bot/v2/channel_access_token/api/channel_access_token_client.rbs +327 -0
  344. data/sig/line/bot/v2/channel_access_token/model/channel_access_token_key_ids_response.rbs +41 -0
  345. data/sig/line/bot/v2/channel_access_token/model/error_response.rbs +43 -0
  346. data/sig/line/bot/v2/channel_access_token/model/issue_channel_access_token_response.rbs +50 -0
  347. data/sig/line/bot/v2/channel_access_token/model/issue_short_lived_channel_access_token_response.rbs +47 -0
  348. data/sig/line/bot/v2/channel_access_token/model/issue_stateless_channel_access_token_response.rbs +47 -0
  349. data/sig/line/bot/v2/channel_access_token/model/verify_channel_access_token_response.rbs +46 -0
  350. data/sig/line/bot/v2/http_client.rbs +111 -0
  351. data/sig/line/bot/v2/insight/api/insight_client.rbs +196 -0
  352. data/sig/line/bot/v2/insight/model/age_tile.rbs +42 -0
  353. data/sig/line/bot/v2/insight/model/app_type_tile.rbs +42 -0
  354. data/sig/line/bot/v2/insight/model/area_tile.rbs +42 -0
  355. data/sig/line/bot/v2/insight/model/error_detail.rbs +42 -0
  356. data/sig/line/bot/v2/insight/model/error_response.rbs +43 -0
  357. data/sig/line/bot/v2/insight/model/gender_tile.rbs +42 -0
  358. data/sig/line/bot/v2/insight/model/get_friends_demographics_response.rbs +56 -0
  359. data/sig/line/bot/v2/insight/model/get_message_event_response.rbs +47 -0
  360. data/sig/line/bot/v2/insight/model/get_message_event_response_click.rbs +51 -0
  361. data/sig/line/bot/v2/insight/model/get_message_event_response_message.rbs +72 -0
  362. data/sig/line/bot/v2/insight/model/get_message_event_response_overview.rbs +58 -0
  363. data/sig/line/bot/v2/insight/model/get_number_of_followers_response.rbs +50 -0
  364. data/sig/line/bot/v2/insight/model/get_number_of_message_deliveries_response.rbs +71 -0
  365. data/sig/line/bot/v2/insight/model/get_statistics_per_unit_response.rbs +47 -0
  366. data/sig/line/bot/v2/insight/model/get_statistics_per_unit_response_click.rbs +52 -0
  367. data/sig/line/bot/v2/insight/model/get_statistics_per_unit_response_message.rbs +76 -0
  368. data/sig/line/bot/v2/insight/model/get_statistics_per_unit_response_overview.rbs +50 -0
  369. data/sig/line/bot/v2/insight/model/subscription_period_tile.rbs +42 -0
  370. data/sig/line/bot/v2/liff/api/liff_client.rbs +198 -0
  371. data/sig/line/bot/v2/liff/model/add_liff_app_request.rbs +55 -0
  372. data/sig/line/bot/v2/liff/model/add_liff_app_response.rbs +39 -0
  373. data/sig/line/bot/v2/liff/model/get_all_liff_apps_response.rbs +39 -0
  374. data/sig/line/bot/v2/liff/model/liff_app.rbs +57 -0
  375. data/sig/line/bot/v2/liff/model/liff_bot_prompt.rbs +21 -0
  376. data/sig/line/bot/v2/liff/model/liff_features.rbs +42 -0
  377. data/sig/line/bot/v2/liff/model/liff_scope.rbs +21 -0
  378. data/sig/line/bot/v2/liff/model/liff_view.rbs +46 -0
  379. data/sig/line/bot/v2/liff/model/update_liff_app_request.rbs +55 -0
  380. data/sig/line/bot/v2/liff/model/update_liff_view.rbs +46 -0
  381. data/sig/line/bot/v2/manage_audience/api/manage_audience_blob_client.rbs +122 -0
  382. data/sig/line/bot/v2/manage_audience/api/manage_audience_client.rbs +394 -0
  383. data/sig/line/bot/v2/manage_audience/model/adaccount.rbs +40 -0
  384. data/sig/line/bot/v2/manage_audience/model/add_audience_to_audience_group_request.rbs +47 -0
  385. data/sig/line/bot/v2/manage_audience/model/audience.rbs +40 -0
  386. data/sig/line/bot/v2/manage_audience/model/audience_group.rbs +73 -0
  387. data/sig/line/bot/v2/manage_audience/model/audience_group_create_route.rbs +21 -0
  388. data/sig/line/bot/v2/manage_audience/model/audience_group_failed_type.rbs +21 -0
  389. data/sig/line/bot/v2/manage_audience/model/audience_group_job.rbs +62 -0
  390. data/sig/line/bot/v2/manage_audience/model/audience_group_job_failed_type.rbs +21 -0
  391. data/sig/line/bot/v2/manage_audience/model/audience_group_job_status.rbs +21 -0
  392. data/sig/line/bot/v2/manage_audience/model/audience_group_job_type.rbs +21 -0
  393. data/sig/line/bot/v2/manage_audience/model/audience_group_permission.rbs +21 -0
  394. data/sig/line/bot/v2/manage_audience/model/audience_group_status.rbs +21 -0
  395. data/sig/line/bot/v2/manage_audience/model/audience_group_type.rbs +21 -0
  396. data/sig/line/bot/v2/manage_audience/model/create_audience_group_request.rbs +50 -0
  397. data/sig/line/bot/v2/manage_audience/model/create_audience_group_response.rbs +62 -0
  398. data/sig/line/bot/v2/manage_audience/model/create_click_based_audience_group_request.rbs +47 -0
  399. data/sig/line/bot/v2/manage_audience/model/create_click_based_audience_group_response.rbs +68 -0
  400. data/sig/line/bot/v2/manage_audience/model/create_imp_based_audience_group_request.rbs +44 -0
  401. data/sig/line/bot/v2/manage_audience/model/create_imp_based_audience_group_response.rbs +53 -0
  402. data/sig/line/bot/v2/manage_audience/model/detailed_owner.rbs +46 -0
  403. data/sig/line/bot/v2/manage_audience/model/error_detail.rbs +42 -0
  404. data/sig/line/bot/v2/manage_audience/model/error_response.rbs +43 -0
  405. data/sig/line/bot/v2/manage_audience/model/get_audience_data_response.rbs +47 -0
  406. data/sig/line/bot/v2/manage_audience/model/get_audience_groups_response.rbs +56 -0
  407. data/sig/line/bot/v2/manage_audience/model/get_shared_audience_data_response.rbs +47 -0
  408. data/sig/line/bot/v2/manage_audience/model/get_shared_audience_groups_response.rbs +56 -0
  409. data/sig/line/bot/v2/manage_audience/model/update_audience_group_description_request.rbs +41 -0
  410. data/sig/line/bot/v2/messaging_api/api/messaging_api_blob_client.rbs +196 -0
  411. data/sig/line/bot/v2/messaging_api/api/messaging_api_client.rbs +2072 -0
  412. data/sig/line/bot/v2/messaging_api/model/action.rbs +48 -0
  413. data/sig/line/bot/v2/messaging_api/model/age_demographic.rbs +20 -0
  414. data/sig/line/bot/v2/messaging_api/model/age_demographic_filter.rbs +43 -0
  415. data/sig/line/bot/v2/messaging_api/model/all_mention_target.rbs +38 -0
  416. data/sig/line/bot/v2/messaging_api/model/alt_uri.rbs +39 -0
  417. data/sig/line/bot/v2/messaging_api/model/app_type_demographic.rbs +20 -0
  418. data/sig/line/bot/v2/messaging_api/model/app_type_demographic_filter.rbs +40 -0
  419. data/sig/line/bot/v2/messaging_api/model/area_demographic.rbs +21 -0
  420. data/sig/line/bot/v2/messaging_api/model/area_demographic_filter.rbs +40 -0
  421. data/sig/line/bot/v2/messaging_api/model/audience_recipient.rbs +40 -0
  422. data/sig/line/bot/v2/messaging_api/model/audio_message.rbs +50 -0
  423. data/sig/line/bot/v2/messaging_api/model/bot_info_response.rbs +58 -0
  424. data/sig/line/bot/v2/messaging_api/model/broadcast_request.rbs +43 -0
  425. data/sig/line/bot/v2/messaging_api/model/buttons_template.rbs +61 -0
  426. data/sig/line/bot/v2/messaging_api/model/camera_action.rbs +40 -0
  427. data/sig/line/bot/v2/messaging_api/model/camera_roll_action.rbs +40 -0
  428. data/sig/line/bot/v2/messaging_api/model/carousel_column.rbs +55 -0
  429. data/sig/line/bot/v2/messaging_api/model/carousel_template.rbs +46 -0
  430. data/sig/line/bot/v2/messaging_api/model/chat_reference.rbs +41 -0
  431. data/sig/line/bot/v2/messaging_api/model/clipboard_action.rbs +44 -0
  432. data/sig/line/bot/v2/messaging_api/model/clipboard_imagemap_action.rbs +47 -0
  433. data/sig/line/bot/v2/messaging_api/model/confirm_template.rbs +43 -0
  434. data/sig/line/bot/v2/messaging_api/model/create_rich_menu_alias_request.rbs +43 -0
  435. data/sig/line/bot/v2/messaging_api/model/datetime_picker_action.rbs +56 -0
  436. data/sig/line/bot/v2/messaging_api/model/demographic_filter.rbs +44 -0
  437. data/sig/line/bot/v2/messaging_api/model/emoji.rbs +45 -0
  438. data/sig/line/bot/v2/messaging_api/model/emoji_substitution_object.rbs +45 -0
  439. data/sig/line/bot/v2/messaging_api/model/error_detail.rbs +42 -0
  440. data/sig/line/bot/v2/messaging_api/model/error_response.rbs +46 -0
  441. data/sig/line/bot/v2/messaging_api/model/filter.rbs +40 -0
  442. data/sig/line/bot/v2/messaging_api/model/flex_block_style.rbs +45 -0
  443. data/sig/line/bot/v2/messaging_api/model/flex_box.rbs +118 -0
  444. data/sig/line/bot/v2/messaging_api/model/flex_box_background.rbs +43 -0
  445. data/sig/line/bot/v2/messaging_api/model/flex_box_border_width.rbs +21 -0
  446. data/sig/line/bot/v2/messaging_api/model/flex_box_corner_radius.rbs +21 -0
  447. data/sig/line/bot/v2/messaging_api/model/flex_box_linear_gradient.rbs +52 -0
  448. data/sig/line/bot/v2/messaging_api/model/flex_box_padding.rbs +21 -0
  449. data/sig/line/bot/v2/messaging_api/model/flex_box_spacing.rbs +21 -0
  450. data/sig/line/bot/v2/messaging_api/model/flex_bubble.rbs +61 -0
  451. data/sig/line/bot/v2/messaging_api/model/flex_bubble_styles.rbs +48 -0
  452. data/sig/line/bot/v2/messaging_api/model/flex_button.rbs +79 -0
  453. data/sig/line/bot/v2/messaging_api/model/flex_carousel.rbs +40 -0
  454. data/sig/line/bot/v2/messaging_api/model/flex_component.rbs +43 -0
  455. data/sig/line/bot/v2/messaging_api/model/flex_container.rbs +43 -0
  456. data/sig/line/bot/v2/messaging_api/model/flex_filler.rbs +40 -0
  457. data/sig/line/bot/v2/messaging_api/model/flex_icon.rbs +68 -0
  458. data/sig/line/bot/v2/messaging_api/model/flex_icon_size.rbs +21 -0
  459. data/sig/line/bot/v2/messaging_api/model/flex_image.rbs +86 -0
  460. data/sig/line/bot/v2/messaging_api/model/flex_image_size.rbs +21 -0
  461. data/sig/line/bot/v2/messaging_api/model/flex_margin.rbs +21 -0
  462. data/sig/line/bot/v2/messaging_api/model/flex_message.rbs +50 -0
  463. data/sig/line/bot/v2/messaging_api/model/flex_offset.rbs +21 -0
  464. data/sig/line/bot/v2/messaging_api/model/flex_separator.rbs +43 -0
  465. data/sig/line/bot/v2/messaging_api/model/flex_span.rbs +55 -0
  466. data/sig/line/bot/v2/messaging_api/model/flex_span_size.rbs +21 -0
  467. data/sig/line/bot/v2/messaging_api/model/flex_text.rbs +103 -0
  468. data/sig/line/bot/v2/messaging_api/model/flex_text_font_size.rbs +21 -0
  469. data/sig/line/bot/v2/messaging_api/model/flex_video.rbs +52 -0
  470. data/sig/line/bot/v2/messaging_api/model/gender_demographic.rbs +20 -0
  471. data/sig/line/bot/v2/messaging_api/model/gender_demographic_filter.rbs +40 -0
  472. data/sig/line/bot/v2/messaging_api/model/get_aggregation_unit_name_list_response.rbs +43 -0
  473. data/sig/line/bot/v2/messaging_api/model/get_aggregation_unit_usage_response.rbs +40 -0
  474. data/sig/line/bot/v2/messaging_api/model/get_followers_response.rbs +43 -0
  475. data/sig/line/bot/v2/messaging_api/model/get_joined_membership_users_response.rbs +44 -0
  476. data/sig/line/bot/v2/messaging_api/model/get_membership_subscription_response.rbs +41 -0
  477. data/sig/line/bot/v2/messaging_api/model/get_message_content_transcoding_response.rbs +41 -0
  478. data/sig/line/bot/v2/messaging_api/model/get_webhook_endpoint_response.rbs +43 -0
  479. data/sig/line/bot/v2/messaging_api/model/group_member_count_response.rbs +40 -0
  480. data/sig/line/bot/v2/messaging_api/model/group_summary_response.rbs +46 -0
  481. data/sig/line/bot/v2/messaging_api/model/group_user_profile_response.rbs +46 -0
  482. data/sig/line/bot/v2/messaging_api/model/image_carousel_column.rbs +42 -0
  483. data/sig/line/bot/v2/messaging_api/model/image_carousel_template.rbs +40 -0
  484. data/sig/line/bot/v2/messaging_api/model/image_message.rbs +50 -0
  485. data/sig/line/bot/v2/messaging_api/model/imagemap_action.rbs +47 -0
  486. data/sig/line/bot/v2/messaging_api/model/imagemap_area.rbs +48 -0
  487. data/sig/line/bot/v2/messaging_api/model/imagemap_base_size.rbs +42 -0
  488. data/sig/line/bot/v2/messaging_api/model/imagemap_external_link.rbs +42 -0
  489. data/sig/line/bot/v2/messaging_api/model/imagemap_message.rbs +59 -0
  490. data/sig/line/bot/v2/messaging_api/model/imagemap_video.rbs +48 -0
  491. data/sig/line/bot/v2/messaging_api/model/issue_link_token_response.rbs +40 -0
  492. data/sig/line/bot/v2/messaging_api/model/limit.rbs +44 -0
  493. data/sig/line/bot/v2/messaging_api/model/location_action.rbs +40 -0
  494. data/sig/line/bot/v2/messaging_api/model/location_message.rbs +56 -0
  495. data/sig/line/bot/v2/messaging_api/model/mark_messages_as_read_request.rbs +40 -0
  496. data/sig/line/bot/v2/messaging_api/model/members_ids_response.rbs +42 -0
  497. data/sig/line/bot/v2/messaging_api/model/membership.rbs +66 -0
  498. data/sig/line/bot/v2/messaging_api/model/membership_list_response.rbs +40 -0
  499. data/sig/line/bot/v2/messaging_api/model/mention_substitution_object.rbs +42 -0
  500. data/sig/line/bot/v2/messaging_api/model/mention_target.rbs +43 -0
  501. data/sig/line/bot/v2/messaging_api/model/message.rbs +50 -0
  502. data/sig/line/bot/v2/messaging_api/model/message_action.rbs +43 -0
  503. data/sig/line/bot/v2/messaging_api/model/message_imagemap_action.rbs +46 -0
  504. data/sig/line/bot/v2/messaging_api/model/message_quota_response.rbs +43 -0
  505. data/sig/line/bot/v2/messaging_api/model/multicast_request.rbs +49 -0
  506. data/sig/line/bot/v2/messaging_api/model/narrowcast_progress_response.rbs +61 -0
  507. data/sig/line/bot/v2/messaging_api/model/narrowcast_request.rbs +52 -0
  508. data/sig/line/bot/v2/messaging_api/model/number_of_messages_response.rbs +42 -0
  509. data/sig/line/bot/v2/messaging_api/model/operator_demographic_filter.rbs +46 -0
  510. data/sig/line/bot/v2/messaging_api/model/operator_recipient.rbs +46 -0
  511. data/sig/line/bot/v2/messaging_api/model/pnp_messages_request.rbs +46 -0
  512. data/sig/line/bot/v2/messaging_api/model/postback_action.rbs +55 -0
  513. data/sig/line/bot/v2/messaging_api/model/push_message_request.rbs +49 -0
  514. data/sig/line/bot/v2/messaging_api/model/push_message_response.rbs +40 -0
  515. data/sig/line/bot/v2/messaging_api/model/quick_reply.rbs +41 -0
  516. data/sig/line/bot/v2/messaging_api/model/quick_reply_item.rbs +46 -0
  517. data/sig/line/bot/v2/messaging_api/model/quota_consumption_response.rbs +40 -0
  518. data/sig/line/bot/v2/messaging_api/model/quota_type.rbs +22 -0
  519. data/sig/line/bot/v2/messaging_api/model/recipient.rbs +44 -0
  520. data/sig/line/bot/v2/messaging_api/model/redelivery_recipient.rbs +40 -0
  521. data/sig/line/bot/v2/messaging_api/model/reply_message_request.rbs +46 -0
  522. data/sig/line/bot/v2/messaging_api/model/reply_message_response.rbs +40 -0
  523. data/sig/line/bot/v2/messaging_api/model/rich_menu_alias_list_response.rbs +40 -0
  524. data/sig/line/bot/v2/messaging_api/model/rich_menu_alias_response.rbs +42 -0
  525. data/sig/line/bot/v2/messaging_api/model/rich_menu_area.rbs +43 -0
  526. data/sig/line/bot/v2/messaging_api/model/rich_menu_batch_link_operation.rbs +44 -0
  527. data/sig/line/bot/v2/messaging_api/model/rich_menu_batch_operation.rbs +45 -0
  528. data/sig/line/bot/v2/messaging_api/model/rich_menu_batch_progress_phase.rbs +21 -0
  529. data/sig/line/bot/v2/messaging_api/model/rich_menu_batch_progress_response.rbs +46 -0
  530. data/sig/line/bot/v2/messaging_api/model/rich_menu_batch_request.rbs +42 -0
  531. data/sig/line/bot/v2/messaging_api/model/rich_menu_batch_unlink_all_operation.rbs +38 -0
  532. data/sig/line/bot/v2/messaging_api/model/rich_menu_batch_unlink_operation.rbs +41 -0
  533. data/sig/line/bot/v2/messaging_api/model/rich_menu_bounds.rbs +50 -0
  534. data/sig/line/bot/v2/messaging_api/model/rich_menu_bulk_link_request.rbs +43 -0
  535. data/sig/line/bot/v2/messaging_api/model/rich_menu_bulk_unlink_request.rbs +40 -0
  536. data/sig/line/bot/v2/messaging_api/model/rich_menu_id_response.rbs +39 -0
  537. data/sig/line/bot/v2/messaging_api/model/rich_menu_list_response.rbs +40 -0
  538. data/sig/line/bot/v2/messaging_api/model/rich_menu_request.rbs +51 -0
  539. data/sig/line/bot/v2/messaging_api/model/rich_menu_response.rbs +54 -0
  540. data/sig/line/bot/v2/messaging_api/model/rich_menu_size.rbs +43 -0
  541. data/sig/line/bot/v2/messaging_api/model/rich_menu_switch_action.rbs +46 -0
  542. data/sig/line/bot/v2/messaging_api/model/room_member_count_response.rbs +40 -0
  543. data/sig/line/bot/v2/messaging_api/model/room_user_profile_response.rbs +46 -0
  544. data/sig/line/bot/v2/messaging_api/model/sender.rbs +43 -0
  545. data/sig/line/bot/v2/messaging_api/model/sent_message.rbs +42 -0
  546. data/sig/line/bot/v2/messaging_api/model/set_webhook_endpoint_request.rbs +40 -0
  547. data/sig/line/bot/v2/messaging_api/model/show_loading_animation_request.rbs +43 -0
  548. data/sig/line/bot/v2/messaging_api/model/sticker_message.rbs +53 -0
  549. data/sig/line/bot/v2/messaging_api/model/subscribed_membership_plan.rbs +55 -0
  550. data/sig/line/bot/v2/messaging_api/model/subscribed_membership_user.rbs +49 -0
  551. data/sig/line/bot/v2/messaging_api/model/subscription.rbs +43 -0
  552. data/sig/line/bot/v2/messaging_api/model/subscription_period_demographic.rbs +20 -0
  553. data/sig/line/bot/v2/messaging_api/model/subscription_period_demographic_filter.rbs +43 -0
  554. data/sig/line/bot/v2/messaging_api/model/substitution_object.rbs +44 -0
  555. data/sig/line/bot/v2/messaging_api/model/template.rbs +43 -0
  556. data/sig/line/bot/v2/messaging_api/model/template_image_aspect_ratio.rbs +21 -0
  557. data/sig/line/bot/v2/messaging_api/model/template_image_size.rbs +21 -0
  558. data/sig/line/bot/v2/messaging_api/model/template_message.rbs +50 -0
  559. data/sig/line/bot/v2/messaging_api/model/test_webhook_endpoint_request.rbs +40 -0
  560. data/sig/line/bot/v2/messaging_api/model/test_webhook_endpoint_response.rbs +52 -0
  561. data/sig/line/bot/v2/messaging_api/model/text_message.rbs +53 -0
  562. data/sig/line/bot/v2/messaging_api/model/text_message_v2.rbs +53 -0
  563. data/sig/line/bot/v2/messaging_api/model/update_rich_menu_alias_request.rbs +40 -0
  564. data/sig/line/bot/v2/messaging_api/model/uri_action.rbs +46 -0
  565. data/sig/line/bot/v2/messaging_api/model/uri_imagemap_action.rbs +46 -0
  566. data/sig/line/bot/v2/messaging_api/model/user_mention_target.rbs +41 -0
  567. data/sig/line/bot/v2/messaging_api/model/user_profile_response.rbs +52 -0
  568. data/sig/line/bot/v2/messaging_api/model/validate_message_request.rbs +39 -0
  569. data/sig/line/bot/v2/messaging_api/model/video_message.rbs +53 -0
  570. data/sig/line/bot/v2/module/api/line_module_client.rbs +170 -0
  571. data/sig/line/bot/v2/module/model/acquire_chat_control_request.rbs +44 -0
  572. data/sig/line/bot/v2/module/model/detach_module_request.rbs +41 -0
  573. data/sig/line/bot/v2/module/model/get_modules_response.rbs +44 -0
  574. data/sig/line/bot/v2/module/model/module_bot.rbs +53 -0
  575. data/sig/line/bot/v2/module_attach/api/line_module_attach_client.rbs +111 -0
  576. data/sig/line/bot/v2/module_attach/model/attach_module_response.rbs +43 -0
  577. data/sig/line/bot/v2/reserved_words.rbs +7 -0
  578. data/sig/line/bot/v2/shop/api/shop_client.rbs +72 -0
  579. data/sig/line/bot/v2/shop/model/error_response.rbs +40 -0
  580. data/sig/line/bot/v2/shop/model/mission_sticker_request.rbs +50 -0
  581. data/sig/line/bot/v2/utils.rbs +25 -0
  582. data/sig/line/bot/v2/webhook/model/account_link_event.rbs +59 -0
  583. data/sig/line/bot/v2/webhook/model/action_result.rbs +42 -0
  584. data/sig/line/bot/v2/webhook/model/activated_event.rbs +56 -0
  585. data/sig/line/bot/v2/webhook/model/all_mentionee.rbs +44 -0
  586. data/sig/line/bot/v2/webhook/model/attached_module_content.rbs +43 -0
  587. data/sig/line/bot/v2/webhook/model/audio_message_content.rbs +46 -0
  588. data/sig/line/bot/v2/webhook/model/beacon_content.rbs +45 -0
  589. data/sig/line/bot/v2/webhook/model/beacon_event.rbs +59 -0
  590. data/sig/line/bot/v2/webhook/model/bot_resumed_event.rbs +53 -0
  591. data/sig/line/bot/v2/webhook/model/bot_suspended_event.rbs +53 -0
  592. data/sig/line/bot/v2/webhook/model/callback_request.rbs +44 -0
  593. data/sig/line/bot/v2/webhook/model/chat_control.rbs +39 -0
  594. data/sig/line/bot/v2/webhook/model/content_provider.rbs +46 -0
  595. data/sig/line/bot/v2/webhook/model/deactivated_event.rbs +53 -0
  596. data/sig/line/bot/v2/webhook/model/delivery_context.rbs +40 -0
  597. data/sig/line/bot/v2/webhook/model/detached_module_content.rbs +43 -0
  598. data/sig/line/bot/v2/webhook/model/emoji.rbs +48 -0
  599. data/sig/line/bot/v2/webhook/model/event.rbs +59 -0
  600. data/sig/line/bot/v2/webhook/model/event_mode.rbs +21 -0
  601. data/sig/line/bot/v2/webhook/model/file_message_content.rbs +46 -0
  602. data/sig/line/bot/v2/webhook/model/follow_detail.rbs +39 -0
  603. data/sig/line/bot/v2/webhook/model/follow_event.rbs +59 -0
  604. data/sig/line/bot/v2/webhook/model/group_source.rbs +43 -0
  605. data/sig/line/bot/v2/webhook/model/image_message_content.rbs +49 -0
  606. data/sig/line/bot/v2/webhook/model/image_set.rbs +45 -0
  607. data/sig/line/bot/v2/webhook/model/join_event.rbs +56 -0
  608. data/sig/line/bot/v2/webhook/model/joined_members.rbs +39 -0
  609. data/sig/line/bot/v2/webhook/model/joined_membership_content.rbs +40 -0
  610. data/sig/line/bot/v2/webhook/model/leave_event.rbs +53 -0
  611. data/sig/line/bot/v2/webhook/model/left_members.rbs +39 -0
  612. data/sig/line/bot/v2/webhook/model/left_membership_content.rbs +40 -0
  613. data/sig/line/bot/v2/webhook/model/link_content.rbs +43 -0
  614. data/sig/line/bot/v2/webhook/model/link_things_content.rbs +40 -0
  615. data/sig/line/bot/v2/webhook/model/location_message_content.rbs +52 -0
  616. data/sig/line/bot/v2/webhook/model/member_joined_event.rbs +59 -0
  617. data/sig/line/bot/v2/webhook/model/member_left_event.rbs +56 -0
  618. data/sig/line/bot/v2/webhook/model/membership_content.rbs +44 -0
  619. data/sig/line/bot/v2/webhook/model/membership_event.rbs +59 -0
  620. data/sig/line/bot/v2/webhook/model/mention.rbs +39 -0
  621. data/sig/line/bot/v2/webhook/model/mentionee.rbs +50 -0
  622. data/sig/line/bot/v2/webhook/model/message_content.rbs +47 -0
  623. data/sig/line/bot/v2/webhook/model/message_event.rbs +59 -0
  624. data/sig/line/bot/v2/webhook/model/module_content.rbs +43 -0
  625. data/sig/line/bot/v2/webhook/model/module_event.rbs +56 -0
  626. data/sig/line/bot/v2/webhook/model/pnp_delivery.rbs +40 -0
  627. data/sig/line/bot/v2/webhook/model/pnp_delivery_completion_event.rbs +56 -0
  628. data/sig/line/bot/v2/webhook/model/postback_content.rbs +42 -0
  629. data/sig/line/bot/v2/webhook/model/postback_event.rbs +59 -0
  630. data/sig/line/bot/v2/webhook/model/renewed_membership_content.rbs +40 -0
  631. data/sig/line/bot/v2/webhook/model/room_source.rbs +43 -0
  632. data/sig/line/bot/v2/webhook/model/scenario_result.rbs +61 -0
  633. data/sig/line/bot/v2/webhook/model/scenario_result_things_content.rbs +43 -0
  634. data/sig/line/bot/v2/webhook/model/source.rbs +45 -0
  635. data/sig/line/bot/v2/webhook/model/sticker_message_content.rbs +62 -0
  636. data/sig/line/bot/v2/webhook/model/text_message_content.rbs +55 -0
  637. data/sig/line/bot/v2/webhook/model/things_content.rbs +43 -0
  638. data/sig/line/bot/v2/webhook/model/things_event.rbs +59 -0
  639. data/sig/line/bot/v2/webhook/model/unfollow_event.rbs +53 -0
  640. data/sig/line/bot/v2/webhook/model/unlink_things_content.rbs +40 -0
  641. data/sig/line/bot/v2/webhook/model/unsend_detail.rbs +39 -0
  642. data/sig/line/bot/v2/webhook/model/unsend_event.rbs +56 -0
  643. data/sig/line/bot/v2/webhook/model/user_mentionee.rbs +50 -0
  644. data/sig/line/bot/v2/webhook/model/user_source.rbs +40 -0
  645. data/sig/line/bot/v2/webhook/model/video_message_content.rbs +49 -0
  646. data/sig/line/bot/v2/webhook/model/video_play_complete.rbs +39 -0
  647. data/sig/line/bot/v2/webhook/model/video_play_complete_event.rbs +59 -0
  648. data/sig/line/bot/v2/webhook_parser.rbs +26 -0
  649. data/sig/line/bot/version.rbs +5 -0
  650. metadata +666 -69
@@ -0,0 +1,533 @@
1
+ # Channel Access Token API
2
+ # This document describes Channel Access Token API.
3
+ #
4
+ # The version of the OpenAPI document: 0.0.1
5
+ #
6
+ # NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
7
+ # https://openapi-generator.tech
8
+ # Do not edit the class manually.
9
+
10
+ require 'json'
11
+
12
+ require 'line/bot/v2/http_client'
13
+ require 'line/bot/v2/reserved_words'
14
+ require 'line/bot/v2/utils'
15
+
16
+ module Line
17
+ module Bot
18
+ module V2
19
+ module ChannelAccessToken
20
+ class ApiClient
21
+ # Initializes a new {Line::Bot::V2::ChannelAccessToken::ApiClient} instance.
22
+ #
23
+ # @param base_url [String] The base URL for requests (optional).
24
+ # Defaults to 'https://api.line.me' if none is provided.
25
+ # You can override this for testing or to use a mock server.
26
+ # @param http_options [Hash] HTTP options (same as Net::HTTP options).
27
+ # See: https://docs.ruby-lang.org/en/3.4/Net/HTTP.html to understand the options.
28
+ #
29
+ # @example
30
+ # @client ||= Line::Bot::V2::ChannelAccessToken::ApiClient.new(
31
+ # http_options: {
32
+ # open_timeout: 5,
33
+ # read_timeout: 5,
34
+ # }
35
+ # )
36
+ def initialize(base_url: nil, http_options: {})
37
+ @http_client = HttpClient.new(
38
+ base_url: base_url || 'https://api.line.me',
39
+ http_options: http_options
40
+ )
41
+ end
42
+
43
+ # Gets all valid channel access token key IDs.
44
+ # This requests to <code>GET https://api.line.me/oauth2/v2.1/tokens/kid</code>
45
+ # This returns an array containing response, HTTP status code, and header in order. Please specify all header keys in lowercase.
46
+ #
47
+ # @param client_assertion_type [String] `urn:ietf:params:oauth:client-assertion-type:jwt-bearer`
48
+ # @param client_assertion [String] A JSON Web Token (JWT) (opens new window)the client needs to create and sign with the private key.
49
+ # @see https://developers.line.biz/en/reference/messaging-api/#get-all-valid-channel-access-token-key-ids-v2-1
50
+ # @return [Array(Line::Bot::V2::ChannelAccessToken::ChannelAccessTokenKeyIdsResponse, Integer, Hash{String => String})] when HTTP status code is 200
51
+ # @return [Array((String|nil), Integer, Hash{String => String})] when other HTTP status code is returned. String is HTTP response body itself.
52
+ def gets_all_valid_channel_access_token_key_ids_with_http_info( # steep:ignore MethodBodyTypeMismatch
53
+ client_assertion_type:,
54
+ client_assertion:
55
+ )
56
+ path = "/oauth2/v2.1/tokens/kid"
57
+ query_params = {
58
+ "client_assertion_type": client_assertion_type,
59
+ "client_assertion": client_assertion
60
+ }.compact
61
+
62
+ response = @http_client.get(
63
+ path: path,
64
+ query_params: query_params,
65
+ )
66
+
67
+ case response.code.to_i
68
+ when 200
69
+ json = Line::Bot::V2::Utils.deep_underscore(JSON.parse(response.body))
70
+ json.transform_keys! do |key|
71
+ Line::Bot::V2::RESERVED_WORDS.include?(key) ? "_#{key}".to_sym : key
72
+ end
73
+ response_body = Line::Bot::V2::ChannelAccessToken::ChannelAccessTokenKeyIdsResponse.create(json) # steep:ignore InsufficientKeywordArguments
74
+ [response_body, 200, response.each_header.to_h]
75
+ else
76
+ [response.body, response.code.to_i, response.each_header.to_h]
77
+ end
78
+ end
79
+
80
+ # Gets all valid channel access token key IDs.
81
+ # This requests to <code>GET https://api.line.me/oauth2/v2.1/tokens/kid</code>
82
+ # When you want to get HTTP status code or response headers, use {#gets_all_valid_channel_access_token_key_ids_with_http_info} instead of this.
83
+ #
84
+ # @param client_assertion_type [String] `urn:ietf:params:oauth:client-assertion-type:jwt-bearer`
85
+ # @param client_assertion [String] A JSON Web Token (JWT) (opens new window)the client needs to create and sign with the private key.
86
+ # @see https://developers.line.biz/en/reference/messaging-api/#get-all-valid-channel-access-token-key-ids-v2-1
87
+ # @return [Line::Bot::V2::ChannelAccessToken::ChannelAccessTokenKeyIdsResponse] when HTTP status code is 200
88
+ # @return [String, nil] when other HTTP status code is returned. This String is HTTP response body itself.
89
+ def gets_all_valid_channel_access_token_key_ids(
90
+ client_assertion_type:,
91
+ client_assertion:
92
+ )
93
+ response_body, _status_code, _headers = gets_all_valid_channel_access_token_key_ids_with_http_info(
94
+ client_assertion_type: client_assertion_type,
95
+ client_assertion: client_assertion
96
+ )
97
+
98
+ response_body
99
+ end
100
+
101
+ # Issue short-lived channel access token
102
+ # This requests to <code>POST https://api.line.me/v2/oauth/accessToken</code>
103
+ # This returns an array containing response, HTTP status code, and header in order. Please specify all header keys in lowercase.
104
+ #
105
+ # @param grant_type [String] `client_credentials`
106
+ # @param client_id [String] Channel ID.
107
+ # @param client_secret [String] Channel secret.
108
+ # @see https://developers.line.biz/en/reference/messaging-api/#issue-shortlived-channel-access-token
109
+ # @return [Array(Line::Bot::V2::ChannelAccessToken::IssueShortLivedChannelAccessTokenResponse, Integer, Hash{String => String})] when HTTP status code is 200
110
+ # @return [Array(Line::Bot::V2::ChannelAccessToken::ErrorResponse, Integer, Hash{String => String})] when HTTP status code is 400
111
+ # @return [Array((String|nil), Integer, Hash{String => String})] when other HTTP status code is returned. String is HTTP response body itself.
112
+ def issue_channel_token_with_http_info( # steep:ignore MethodBodyTypeMismatch
113
+ grant_type:,
114
+ client_id:,
115
+ client_secret:
116
+ )
117
+ path = "/v2/oauth/accessToken"
118
+
119
+ form_params = {
120
+ "grant_type": grant_type,
121
+ "client_id": client_id,
122
+ "client_secret": client_secret
123
+ }.compact
124
+
125
+ response = @http_client.post_form(
126
+ path: path,
127
+ form_params: form_params,
128
+ )
129
+
130
+ case response.code.to_i
131
+ when 200
132
+ json = Line::Bot::V2::Utils.deep_underscore(JSON.parse(response.body))
133
+ json.transform_keys! do |key|
134
+ Line::Bot::V2::RESERVED_WORDS.include?(key) ? "_#{key}".to_sym : key
135
+ end
136
+ response_body = Line::Bot::V2::ChannelAccessToken::IssueShortLivedChannelAccessTokenResponse.create(json) # steep:ignore InsufficientKeywordArguments
137
+ [response_body, 200, response.each_header.to_h]
138
+ when 400
139
+ json = Line::Bot::V2::Utils.deep_underscore(JSON.parse(response.body))
140
+ json.transform_keys! do |key|
141
+ Line::Bot::V2::RESERVED_WORDS.include?(key) ? "_#{key}".to_sym : key
142
+ end
143
+ response_body = Line::Bot::V2::ChannelAccessToken::ErrorResponse.create(json) # steep:ignore InsufficientKeywordArguments
144
+ [response_body, 400, response.each_header.to_h]
145
+ else
146
+ [response.body, response.code.to_i, response.each_header.to_h]
147
+ end
148
+ end
149
+
150
+ # Issue short-lived channel access token
151
+ # This requests to <code>POST https://api.line.me/v2/oauth/accessToken</code>
152
+ # When you want to get HTTP status code or response headers, use {#issue_channel_token_with_http_info} instead of this.
153
+ #
154
+ # @param grant_type [String] `client_credentials`
155
+ # @param client_id [String] Channel ID.
156
+ # @param client_secret [String] Channel secret.
157
+ # @see https://developers.line.biz/en/reference/messaging-api/#issue-shortlived-channel-access-token
158
+ # @return [Line::Bot::V2::ChannelAccessToken::IssueShortLivedChannelAccessTokenResponse] when HTTP status code is 200
159
+ # @return [Line::Bot::V2::ChannelAccessToken::ErrorResponse] when HTTP status code is 400
160
+ # @return [String, nil] when other HTTP status code is returned. This String is HTTP response body itself.
161
+ def issue_channel_token(
162
+ grant_type:,
163
+ client_id:,
164
+ client_secret:
165
+ )
166
+ response_body, _status_code, _headers = issue_channel_token_with_http_info(
167
+ grant_type: grant_type,
168
+ client_id: client_id,
169
+ client_secret: client_secret
170
+ )
171
+
172
+ response_body
173
+ end
174
+
175
+ # Issues a channel access token that allows you to specify a desired expiration date. This method lets you use JWT assertion for authentication.
176
+ # This requests to <code>POST https://api.line.me/oauth2/v2.1/token</code>
177
+ # This returns an array containing response, HTTP status code, and header in order. Please specify all header keys in lowercase.
178
+ #
179
+ # @param grant_type [String] client_credentials
180
+ # @param client_assertion_type [String] urn:ietf:params:oauth:client-assertion-type:jwt-bearer
181
+ # @param client_assertion [String] A JSON Web Token the client needs to create and sign with the private key of the Assertion Signing Key.
182
+ # @see https://developers.line.biz/en/reference/messaging-api/#issue-channel-access-token-v2-1
183
+ # @return [Array(Line::Bot::V2::ChannelAccessToken::IssueChannelAccessTokenResponse, Integer, Hash{String => String})] when HTTP status code is 200
184
+ # @return [Array((String|nil), Integer, Hash{String => String})] when other HTTP status code is returned. String is HTTP response body itself.
185
+ def issue_channel_token_by_jwt_with_http_info( # steep:ignore MethodBodyTypeMismatch
186
+ grant_type:,
187
+ client_assertion_type:,
188
+ client_assertion:
189
+ )
190
+ path = "/oauth2/v2.1/token"
191
+
192
+ form_params = {
193
+ "grant_type": grant_type,
194
+ "client_assertion_type": client_assertion_type,
195
+ "client_assertion": client_assertion
196
+ }.compact
197
+
198
+ response = @http_client.post_form(
199
+ path: path,
200
+ form_params: form_params,
201
+ )
202
+
203
+ case response.code.to_i
204
+ when 200
205
+ json = Line::Bot::V2::Utils.deep_underscore(JSON.parse(response.body))
206
+ json.transform_keys! do |key|
207
+ Line::Bot::V2::RESERVED_WORDS.include?(key) ? "_#{key}".to_sym : key
208
+ end
209
+ response_body = Line::Bot::V2::ChannelAccessToken::IssueChannelAccessTokenResponse.create(json) # steep:ignore InsufficientKeywordArguments
210
+ [response_body, 200, response.each_header.to_h]
211
+ else
212
+ [response.body, response.code.to_i, response.each_header.to_h]
213
+ end
214
+ end
215
+
216
+ # Issues a channel access token that allows you to specify a desired expiration date. This method lets you use JWT assertion for authentication.
217
+ # This requests to <code>POST https://api.line.me/oauth2/v2.1/token</code>
218
+ # When you want to get HTTP status code or response headers, use {#issue_channel_token_by_jwt_with_http_info} instead of this.
219
+ #
220
+ # @param grant_type [String] client_credentials
221
+ # @param client_assertion_type [String] urn:ietf:params:oauth:client-assertion-type:jwt-bearer
222
+ # @param client_assertion [String] A JSON Web Token the client needs to create and sign with the private key of the Assertion Signing Key.
223
+ # @see https://developers.line.biz/en/reference/messaging-api/#issue-channel-access-token-v2-1
224
+ # @return [Line::Bot::V2::ChannelAccessToken::IssueChannelAccessTokenResponse] when HTTP status code is 200
225
+ # @return [String, nil] when other HTTP status code is returned. This String is HTTP response body itself.
226
+ def issue_channel_token_by_jwt(
227
+ grant_type:,
228
+ client_assertion_type:,
229
+ client_assertion:
230
+ )
231
+ response_body, _status_code, _headers = issue_channel_token_by_jwt_with_http_info(
232
+ grant_type: grant_type,
233
+ client_assertion_type: client_assertion_type,
234
+ client_assertion: client_assertion
235
+ )
236
+
237
+ response_body
238
+ end
239
+
240
+ # Issues a new stateless channel access token, which doesn't have max active token limit unlike the other token types. The newly issued token is only valid for 15 minutes but can not be revoked until it naturally expires.
241
+ # This requests to <code>POST https://api.line.me/oauth2/v3/token</code>
242
+ # This returns an array containing response, HTTP status code, and header in order. Please specify all header keys in lowercase.
243
+ #
244
+ # @param grant_type [String, nil] `client_credentials`
245
+ # @param client_assertion_type [String, nil] URL-encoded value of `urn:ietf:params:oauth:client-assertion-type:jwt-bearer`
246
+ # @param client_assertion [String, nil] A JSON Web Token the client needs to create and sign with the private key of the Assertion Signing Key.
247
+ # @param client_id [String, nil] Channel ID.
248
+ # @param client_secret [String, nil] Channel secret.
249
+ # @see https://developers.line.biz/en/reference/messaging-api/#issue-stateless-channel-access-token
250
+ # @return [Array(Line::Bot::V2::ChannelAccessToken::IssueStatelessChannelAccessTokenResponse, Integer, Hash{String => String})] when HTTP status code is 200
251
+ # @return [Array((String|nil), Integer, Hash{String => String})] when other HTTP status code is returned. String is HTTP response body itself.
252
+ def issue_stateless_channel_token_with_http_info( # steep:ignore MethodBodyTypeMismatch
253
+ grant_type: nil,
254
+ client_assertion_type: nil,
255
+ client_assertion: nil,
256
+ client_id: nil,
257
+ client_secret: nil
258
+ )
259
+ path = "/oauth2/v3/token"
260
+
261
+ form_params = {
262
+ "grant_type": grant_type,
263
+ "client_assertion_type": client_assertion_type,
264
+ "client_assertion": client_assertion,
265
+ "client_id": client_id,
266
+ "client_secret": client_secret
267
+ }.compact
268
+
269
+ response = @http_client.post_form(
270
+ path: path,
271
+ form_params: form_params,
272
+ )
273
+
274
+ case response.code.to_i
275
+ when 200
276
+ json = Line::Bot::V2::Utils.deep_underscore(JSON.parse(response.body))
277
+ json.transform_keys! do |key|
278
+ Line::Bot::V2::RESERVED_WORDS.include?(key) ? "_#{key}".to_sym : key
279
+ end
280
+ response_body = Line::Bot::V2::ChannelAccessToken::IssueStatelessChannelAccessTokenResponse.create(json) # steep:ignore InsufficientKeywordArguments
281
+ [response_body, 200, response.each_header.to_h]
282
+ else
283
+ [response.body, response.code.to_i, response.each_header.to_h]
284
+ end
285
+ end
286
+
287
+ # Issues a new stateless channel access token, which doesn't have max active token limit unlike the other token types. The newly issued token is only valid for 15 minutes but can not be revoked until it naturally expires.
288
+ # This requests to <code>POST https://api.line.me/oauth2/v3/token</code>
289
+ # When you want to get HTTP status code or response headers, use {#issue_stateless_channel_token_with_http_info} instead of this.
290
+ #
291
+ # @param grant_type [String, nil] `client_credentials`
292
+ # @param client_assertion_type [String, nil] URL-encoded value of `urn:ietf:params:oauth:client-assertion-type:jwt-bearer`
293
+ # @param client_assertion [String, nil] A JSON Web Token the client needs to create and sign with the private key of the Assertion Signing Key.
294
+ # @param client_id [String, nil] Channel ID.
295
+ # @param client_secret [String, nil] Channel secret.
296
+ # @see https://developers.line.biz/en/reference/messaging-api/#issue-stateless-channel-access-token
297
+ # @return [Line::Bot::V2::ChannelAccessToken::IssueStatelessChannelAccessTokenResponse] when HTTP status code is 200
298
+ # @return [String, nil] when other HTTP status code is returned. This String is HTTP response body itself.
299
+ def issue_stateless_channel_token(
300
+ grant_type: nil,
301
+ client_assertion_type: nil,
302
+ client_assertion: nil,
303
+ client_id: nil,
304
+ client_secret: nil
305
+ )
306
+ response_body, _status_code, _headers = issue_stateless_channel_token_with_http_info(
307
+ grant_type: grant_type,
308
+ client_assertion_type: client_assertion_type,
309
+ client_assertion: client_assertion,
310
+ client_id: client_id,
311
+ client_secret: client_secret
312
+ )
313
+
314
+ response_body
315
+ end
316
+
317
+ # Revoke short-lived or long-lived channel access token
318
+ # This requests to <code>POST https://api.line.me/v2/oauth/revoke</code>
319
+ # This returns an array containing response, HTTP status code, and header in order. Please specify all header keys in lowercase.
320
+ #
321
+ # @param access_token [String] Channel access token
322
+ # @see https://developers.line.biz/en/reference/messaging-api/#revoke-longlived-or-shortlived-channel-access-token
323
+ # @return [Array((String|nil), Integer, Hash{String => String})] when HTTP status code is 200
324
+ # @return [Array((String|nil), Integer, Hash{String => String})] when other HTTP status code is returned. String is HTTP response body itself.
325
+ def revoke_channel_token_with_http_info( # steep:ignore MethodBodyTypeMismatch
326
+ access_token:
327
+ )
328
+ path = "/v2/oauth/revoke"
329
+
330
+ form_params = {
331
+ "access_token": access_token
332
+ }.compact
333
+
334
+ response = @http_client.post_form(
335
+ path: path,
336
+ form_params: form_params,
337
+ )
338
+
339
+ case response.code.to_i
340
+ when 200
341
+ [response.body, 200, response.each_header.to_h]
342
+ else
343
+ [response.body, response.code.to_i, response.each_header.to_h]
344
+ end
345
+ end
346
+
347
+ # Revoke short-lived or long-lived channel access token
348
+ # This requests to <code>POST https://api.line.me/v2/oauth/revoke</code>
349
+ # When you want to get HTTP status code or response headers, use {#revoke_channel_token_with_http_info} instead of this.
350
+ #
351
+ # @param access_token [String] Channel access token
352
+ # @see https://developers.line.biz/en/reference/messaging-api/#revoke-longlived-or-shortlived-channel-access-token
353
+ # @return [String, nil] when HTTP status code is 200
354
+ # @return [String, nil] when other HTTP status code is returned. This String is HTTP response body itself.
355
+ def revoke_channel_token(
356
+ access_token:
357
+ )
358
+ response_body, _status_code, _headers = revoke_channel_token_with_http_info(
359
+ access_token: access_token
360
+ )
361
+
362
+ response_body
363
+ end
364
+
365
+ # Revoke channel access token v2.1
366
+ # This requests to <code>POST https://api.line.me/oauth2/v2.1/revoke</code>
367
+ # This returns an array containing response, HTTP status code, and header in order. Please specify all header keys in lowercase.
368
+ #
369
+ # @param client_id [String] Channel ID
370
+ # @param client_secret [String] Channel Secret
371
+ # @param access_token [String] Channel access token
372
+ # @see https://developers.line.biz/en/reference/messaging-api/#revoke-channel-access-token-v2-1
373
+ # @return [Array((String|nil), Integer, Hash{String => String})] when HTTP status code is 200
374
+ # @return [Array((String|nil), Integer, Hash{String => String})] when other HTTP status code is returned. String is HTTP response body itself.
375
+ def revoke_channel_token_by_jwt_with_http_info( # steep:ignore MethodBodyTypeMismatch
376
+ client_id:,
377
+ client_secret:,
378
+ access_token:
379
+ )
380
+ path = "/oauth2/v2.1/revoke"
381
+
382
+ form_params = {
383
+ "client_id": client_id,
384
+ "client_secret": client_secret,
385
+ "access_token": access_token
386
+ }.compact
387
+
388
+ response = @http_client.post_form(
389
+ path: path,
390
+ form_params: form_params,
391
+ )
392
+
393
+ case response.code.to_i
394
+ when 200
395
+ [response.body, 200, response.each_header.to_h]
396
+ else
397
+ [response.body, response.code.to_i, response.each_header.to_h]
398
+ end
399
+ end
400
+
401
+ # Revoke channel access token v2.1
402
+ # This requests to <code>POST https://api.line.me/oauth2/v2.1/revoke</code>
403
+ # When you want to get HTTP status code or response headers, use {#revoke_channel_token_by_jwt_with_http_info} instead of this.
404
+ #
405
+ # @param client_id [String] Channel ID
406
+ # @param client_secret [String] Channel Secret
407
+ # @param access_token [String] Channel access token
408
+ # @see https://developers.line.biz/en/reference/messaging-api/#revoke-channel-access-token-v2-1
409
+ # @return [String, nil] when HTTP status code is 200
410
+ # @return [String, nil] when other HTTP status code is returned. This String is HTTP response body itself.
411
+ def revoke_channel_token_by_jwt(
412
+ client_id:,
413
+ client_secret:,
414
+ access_token:
415
+ )
416
+ response_body, _status_code, _headers = revoke_channel_token_by_jwt_with_http_info(
417
+ client_id: client_id,
418
+ client_secret: client_secret,
419
+ access_token: access_token
420
+ )
421
+
422
+ response_body
423
+ end
424
+
425
+ # Verify the validity of short-lived and long-lived channel access tokens
426
+ # This requests to <code>POST https://api.line.me/v2/oauth/verify</code>
427
+ # This returns an array containing response, HTTP status code, and header in order. Please specify all header keys in lowercase.
428
+ #
429
+ # @param access_token [String] A short-lived or long-lived channel access token.
430
+ # @see https://developers.line.biz/en/reference/messaging-api/#verify-channel-access-token
431
+ # @return [Array(Line::Bot::V2::ChannelAccessToken::VerifyChannelAccessTokenResponse, Integer, Hash{String => String})] when HTTP status code is 200
432
+ # @return [Array((String|nil), Integer, Hash{String => String})] when other HTTP status code is returned. String is HTTP response body itself.
433
+ def verify_channel_token_with_http_info( # steep:ignore MethodBodyTypeMismatch
434
+ access_token:
435
+ )
436
+ path = "/v2/oauth/verify"
437
+
438
+ form_params = {
439
+ "access_token": access_token
440
+ }.compact
441
+
442
+ response = @http_client.post_form(
443
+ path: path,
444
+ form_params: form_params,
445
+ )
446
+
447
+ case response.code.to_i
448
+ when 200
449
+ json = Line::Bot::V2::Utils.deep_underscore(JSON.parse(response.body))
450
+ json.transform_keys! do |key|
451
+ Line::Bot::V2::RESERVED_WORDS.include?(key) ? "_#{key}".to_sym : key
452
+ end
453
+ response_body = Line::Bot::V2::ChannelAccessToken::VerifyChannelAccessTokenResponse.create(json) # steep:ignore InsufficientKeywordArguments
454
+ [response_body, 200, response.each_header.to_h]
455
+ else
456
+ [response.body, response.code.to_i, response.each_header.to_h]
457
+ end
458
+ end
459
+
460
+ # Verify the validity of short-lived and long-lived channel access tokens
461
+ # This requests to <code>POST https://api.line.me/v2/oauth/verify</code>
462
+ # When you want to get HTTP status code or response headers, use {#verify_channel_token_with_http_info} instead of this.
463
+ #
464
+ # @param access_token [String] A short-lived or long-lived channel access token.
465
+ # @see https://developers.line.biz/en/reference/messaging-api/#verify-channel-access-token
466
+ # @return [Line::Bot::V2::ChannelAccessToken::VerifyChannelAccessTokenResponse] when HTTP status code is 200
467
+ # @return [String, nil] when other HTTP status code is returned. This String is HTTP response body itself.
468
+ def verify_channel_token(
469
+ access_token:
470
+ )
471
+ response_body, _status_code, _headers = verify_channel_token_with_http_info(
472
+ access_token: access_token
473
+ )
474
+
475
+ response_body
476
+ end
477
+
478
+ # You can verify whether a Channel access token with a user-specified expiration (Channel Access Token v2.1) is valid.
479
+ # This requests to <code>GET https://api.line.me/oauth2/v2.1/verify</code>
480
+ # This returns an array containing response, HTTP status code, and header in order. Please specify all header keys in lowercase.
481
+ #
482
+ # @param access_token [String] Channel access token with a user-specified expiration (Channel Access Token v2.1).
483
+ # @see https://developers.line.biz/en/reference/messaging-api/#verify-channel-access-token-v2-1
484
+ # @return [Array(Line::Bot::V2::ChannelAccessToken::VerifyChannelAccessTokenResponse, Integer, Hash{String => String})] when HTTP status code is 200
485
+ # @return [Array((String|nil), Integer, Hash{String => String})] when other HTTP status code is returned. String is HTTP response body itself.
486
+ def verify_channel_token_by_jwt_with_http_info( # steep:ignore MethodBodyTypeMismatch
487
+ access_token:
488
+ )
489
+ path = "/oauth2/v2.1/verify"
490
+ query_params = {
491
+ "access_token": access_token
492
+ }.compact
493
+
494
+ response = @http_client.get(
495
+ path: path,
496
+ query_params: query_params,
497
+ )
498
+
499
+ case response.code.to_i
500
+ when 200
501
+ json = Line::Bot::V2::Utils.deep_underscore(JSON.parse(response.body))
502
+ json.transform_keys! do |key|
503
+ Line::Bot::V2::RESERVED_WORDS.include?(key) ? "_#{key}".to_sym : key
504
+ end
505
+ response_body = Line::Bot::V2::ChannelAccessToken::VerifyChannelAccessTokenResponse.create(json) # steep:ignore InsufficientKeywordArguments
506
+ [response_body, 200, response.each_header.to_h]
507
+ else
508
+ [response.body, response.code.to_i, response.each_header.to_h]
509
+ end
510
+ end
511
+
512
+ # You can verify whether a Channel access token with a user-specified expiration (Channel Access Token v2.1) is valid.
513
+ # This requests to <code>GET https://api.line.me/oauth2/v2.1/verify</code>
514
+ # When you want to get HTTP status code or response headers, use {#verify_channel_token_by_jwt_with_http_info} instead of this.
515
+ #
516
+ # @param access_token [String] Channel access token with a user-specified expiration (Channel Access Token v2.1).
517
+ # @see https://developers.line.biz/en/reference/messaging-api/#verify-channel-access-token-v2-1
518
+ # @return [Line::Bot::V2::ChannelAccessToken::VerifyChannelAccessTokenResponse] when HTTP status code is 200
519
+ # @return [String, nil] when other HTTP status code is returned. This String is HTTP response body itself.
520
+ def verify_channel_token_by_jwt(
521
+ access_token:
522
+ )
523
+ response_body, _status_code, _headers = verify_channel_token_by_jwt_with_http_info(
524
+ access_token: access_token
525
+ )
526
+
527
+ response_body
528
+ end
529
+ end
530
+ end
531
+ end
532
+ end
533
+ end
@@ -0,0 +1,20 @@
1
+
2
+ # Channel Access Token API
3
+ # This document describes Channel Access Token API.
4
+ #
5
+ # The version of the OpenAPI document: 0.0.1
6
+ #
7
+ # NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
8
+ # https://openapi-generator.tech
9
+ # Do not edit the class manually.
10
+
11
+ # Models
12
+ require_relative './model/channel_access_token_key_ids_response'
13
+ require_relative './model/error_response'
14
+ require_relative './model/issue_channel_access_token_response'
15
+ require_relative './model/issue_short_lived_channel_access_token_response'
16
+ require_relative './model/issue_stateless_channel_access_token_response'
17
+ require_relative './model/verify_channel_access_token_response'
18
+
19
+ # APIs
20
+ require_relative './api/channel_access_token_client'
@@ -0,0 +1,68 @@
1
+ # Channel Access Token API
2
+ # This document describes Channel Access Token API.
3
+ #
4
+ # The version of the OpenAPI document: 0.0.1
5
+ #
6
+ # NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
7
+ # https://openapi-generator.tech
8
+ # Do not edit the class manually.
9
+
10
+ module Line
11
+ module Bot
12
+ module V2
13
+ module ChannelAccessToken
14
+ # Channel access token key IDs
15
+ # @see https://developers.line.biz/en/reference/messaging-api/#get-all-valid-channel-access-token-key-ids-v2-1
16
+ class ChannelAccessTokenKeyIdsResponse
17
+ # @!attribute [rw] kids
18
+ # @return [Array[String]] Array of channel access token key IDs.
19
+ attr_accessor :kids
20
+
21
+ # @param kids [Array[String]] Array of channel access token key IDs.
22
+ def initialize(
23
+ kids:,
24
+ **dynamic_attributes
25
+ )
26
+
27
+ @kids = kids
28
+
29
+ dynamic_attributes.each do |key, value|
30
+ self.class.attr_accessor key
31
+
32
+ if value.is_a?(Hash)
33
+ struct_klass = Struct.new(*value.keys.map(&:to_sym))
34
+ struct_values = value.map { |_k, v| v.is_a?(Hash) ? Line::Bot::V2::Utils.hash_to_struct(v) : v }
35
+ instance_variable_set("@#{key}", struct_klass.new(*struct_values))
36
+ else
37
+ instance_variable_set("@#{key}", value)
38
+ end
39
+ end
40
+ end
41
+
42
+ # Create an instance of the class from a hash
43
+ # @param args [Hash] Hash containing all the required attributes
44
+ # @return [Line::Bot::V2::ChannelAccessToken::ChannelAccessTokenKeyIdsResponse] Instance of the class
45
+ def self.create(args) # steep:ignore
46
+ symbolized_args = Line::Bot::V2::Utils.deep_symbolize(args)
47
+ return new(**symbolized_args) # steep:ignore
48
+ end
49
+
50
+ # @param other [Object] Object to compare
51
+ # @return [Boolean] true if the objects are equal, false otherwise
52
+ def ==(other)
53
+ return false unless self.class == other.class
54
+
55
+ instance_variables.all? do |var|
56
+ instance_variable_get(var) == other.instance_variable_get(var)
57
+ end
58
+ end
59
+
60
+ # @return [Integer] Hash code of the object
61
+ def hash
62
+ [self.class, *instance_variables.map { |var| instance_variable_get(var) }].hash
63
+ end
64
+ end
65
+ end
66
+ end
67
+ end
68
+ end