linq-python 0.2.5__tar.gz → 0.4.0__tar.gz

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 (187) hide show
  1. linq_python-0.4.0/.release-please-manifest.json +3 -0
  2. {linq_python-0.2.5 → linq_python-0.4.0}/CHANGELOG.md +26 -0
  3. {linq_python-0.2.5 → linq_python-0.4.0}/PKG-INFO +1 -1
  4. {linq_python-0.2.5 → linq_python-0.4.0}/pyproject.toml +1 -1
  5. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/_version.py +1 -1
  6. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/resources/chats/chats.py +22 -0
  7. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/chat.py +14 -1
  8. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/chat_create_response.py +14 -1
  9. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/phone_number_status_updated_webhook_event.py +2 -0
  10. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/webhook_event_type.py +2 -0
  11. linq_python-0.2.5/.release-please-manifest.json +0 -3
  12. {linq_python-0.2.5 → linq_python-0.4.0}/.gitignore +0 -0
  13. {linq_python-0.2.5 → linq_python-0.4.0}/CONTRIBUTING.md +0 -0
  14. {linq_python-0.2.5 → linq_python-0.4.0}/LICENSE +0 -0
  15. {linq_python-0.2.5 → linq_python-0.4.0}/README.md +0 -0
  16. {linq_python-0.2.5 → linq_python-0.4.0}/SECURITY.md +0 -0
  17. {linq_python-0.2.5 → linq_python-0.4.0}/api.md +0 -0
  18. {linq_python-0.2.5 → linq_python-0.4.0}/bin/check-release-environment +0 -0
  19. {linq_python-0.2.5 → linq_python-0.4.0}/bin/publish-pypi +0 -0
  20. {linq_python-0.2.5 → linq_python-0.4.0}/examples/.keep +0 -0
  21. {linq_python-0.2.5 → linq_python-0.4.0}/release-please-config.json +0 -0
  22. {linq_python-0.2.5 → linq_python-0.4.0}/requirements-dev.lock +0 -0
  23. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/__init__.py +0 -0
  24. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/_base_client.py +0 -0
  25. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/_client.py +0 -0
  26. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/_compat.py +0 -0
  27. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/_constants.py +0 -0
  28. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/_exceptions.py +0 -0
  29. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/_files.py +0 -0
  30. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/_models.py +0 -0
  31. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/_qs.py +0 -0
  32. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/_resource.py +0 -0
  33. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/_response.py +0 -0
  34. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/_streaming.py +0 -0
  35. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/_types.py +0 -0
  36. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/_utils/__init__.py +0 -0
  37. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/_utils/_compat.py +0 -0
  38. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/_utils/_datetime_parse.py +0 -0
  39. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/_utils/_json.py +0 -0
  40. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/_utils/_logs.py +0 -0
  41. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/_utils/_path.py +0 -0
  42. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/_utils/_proxy.py +0 -0
  43. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/_utils/_reflection.py +0 -0
  44. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/_utils/_resources_proxy.py +0 -0
  45. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/_utils/_streams.py +0 -0
  46. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/_utils/_sync.py +0 -0
  47. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/_utils/_transform.py +0 -0
  48. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/_utils/_typing.py +0 -0
  49. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/_utils/_utils.py +0 -0
  50. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/lib/.keep +0 -0
  51. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/pagination.py +0 -0
  52. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/py.typed +0 -0
  53. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/resources/__init__.py +0 -0
  54. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/resources/attachments.py +0 -0
  55. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/resources/capability.py +0 -0
  56. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/resources/chats/__init__.py +0 -0
  57. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/resources/chats/messages.py +0 -0
  58. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/resources/chats/participants.py +0 -0
  59. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/resources/chats/typing.py +0 -0
  60. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/resources/contact_card.py +0 -0
  61. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/resources/messages.py +0 -0
  62. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/resources/phone_numbers.py +0 -0
  63. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/resources/phonenumbers.py +0 -0
  64. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/resources/webhook_events.py +0 -0
  65. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/resources/webhook_subscriptions.py +0 -0
  66. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/resources/webhooks.py +0 -0
  67. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/__init__.py +0 -0
  68. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/attachment_create_params.py +0 -0
  69. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/attachment_create_response.py +0 -0
  70. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/attachment_retrieve_response.py +0 -0
  71. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/capability_check_RCS_params.py +0 -0
  72. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/capability_check_i_message_params.py +0 -0
  73. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/chat_create_params.py +0 -0
  74. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/chat_created_webhook_event.py +0 -0
  75. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/chat_group_icon_update_failed_webhook_event.py +0 -0
  76. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/chat_group_icon_updated_webhook_event.py +0 -0
  77. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/chat_group_name_update_failed_webhook_event.py +0 -0
  78. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/chat_group_name_updated_webhook_event.py +0 -0
  79. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/chat_leave_chat_response.py +0 -0
  80. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/chat_list_chats_params.py +0 -0
  81. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/chat_send_voicememo_params.py +0 -0
  82. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/chat_send_voicememo_response.py +0 -0
  83. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/chat_typing_indicator_started_webhook_event.py +0 -0
  84. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/chat_typing_indicator_stopped_webhook_event.py +0 -0
  85. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/chat_update_params.py +0 -0
  86. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/chat_update_response.py +0 -0
  87. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/chats/__init__.py +0 -0
  88. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/chats/message_list_params.py +0 -0
  89. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/chats/message_send_params.py +0 -0
  90. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/chats/message_send_response.py +0 -0
  91. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/chats/participant_add_params.py +0 -0
  92. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/chats/participant_add_response.py +0 -0
  93. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/chats/participant_remove_params.py +0 -0
  94. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/chats/participant_remove_response.py +0 -0
  95. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/chats/sent_message.py +0 -0
  96. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/contact_card_create_params.py +0 -0
  97. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/contact_card_retrieve_params.py +0 -0
  98. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/contact_card_retrieve_response.py +0 -0
  99. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/contact_card_update_params.py +0 -0
  100. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/events_webhook_event.py +0 -0
  101. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/handle_check_response.py +0 -0
  102. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/link_part_param.py +0 -0
  103. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/media_part_param.py +0 -0
  104. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/message.py +0 -0
  105. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/message_add_reaction_params.py +0 -0
  106. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/message_add_reaction_response.py +0 -0
  107. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/message_content_param.py +0 -0
  108. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/message_delivered_webhook_event.py +0 -0
  109. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/message_edited_webhook_event.py +0 -0
  110. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/message_effect.py +0 -0
  111. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/message_effect_param.py +0 -0
  112. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/message_event_v2.py +0 -0
  113. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/message_failed_webhook_event.py +0 -0
  114. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/message_list_messages_thread_params.py +0 -0
  115. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/message_read_webhook_event.py +0 -0
  116. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/message_received_webhook_event.py +0 -0
  117. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/message_sent_webhook_event.py +0 -0
  118. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/message_update_params.py +0 -0
  119. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/participant_added_webhook_event.py +0 -0
  120. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/participant_removed_webhook_event.py +0 -0
  121. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/phone_number_list_response.py +0 -0
  122. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/phonenumber_list_response.py +0 -0
  123. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/reaction_added_webhook_event.py +0 -0
  124. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/reaction_event_base.py +0 -0
  125. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/reaction_removed_webhook_event.py +0 -0
  126. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/reply_to.py +0 -0
  127. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/reply_to_param.py +0 -0
  128. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/schemas_media_part_response.py +0 -0
  129. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/schemas_message_effect.py +0 -0
  130. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/schemas_text_part_response.py +0 -0
  131. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/set_contact_card.py +0 -0
  132. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/shared/__init__.py +0 -0
  133. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/shared/chat_handle.py +0 -0
  134. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/shared/link_part_response.py +0 -0
  135. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/shared/media_part_response.py +0 -0
  136. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/shared/reaction.py +0 -0
  137. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/shared/reaction_type.py +0 -0
  138. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/shared/service_type.py +0 -0
  139. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/shared/text_decoration.py +0 -0
  140. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/shared/text_part_response.py +0 -0
  141. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/shared_params/__init__.py +0 -0
  142. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/shared_params/reaction_type.py +0 -0
  143. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/shared_params/service_type.py +0 -0
  144. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/shared_params/text_decoration.py +0 -0
  145. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/supported_content_type.py +0 -0
  146. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/text_part_param.py +0 -0
  147. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/webhook_event_list_response.py +0 -0
  148. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/webhook_subscription.py +0 -0
  149. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/webhook_subscription_create_params.py +0 -0
  150. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/webhook_subscription_create_response.py +0 -0
  151. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/webhook_subscription_list_response.py +0 -0
  152. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq/types/webhook_subscription_update_params.py +0 -0
  153. {linq_python-0.2.5 → linq_python-0.4.0}/src/linq_api_v3/lib/.keep +0 -0
  154. {linq_python-0.2.5 → linq_python-0.4.0}/tests/__init__.py +0 -0
  155. {linq_python-0.2.5 → linq_python-0.4.0}/tests/api_resources/__init__.py +0 -0
  156. {linq_python-0.2.5 → linq_python-0.4.0}/tests/api_resources/chats/__init__.py +0 -0
  157. {linq_python-0.2.5 → linq_python-0.4.0}/tests/api_resources/chats/test_messages.py +0 -0
  158. {linq_python-0.2.5 → linq_python-0.4.0}/tests/api_resources/chats/test_participants.py +0 -0
  159. {linq_python-0.2.5 → linq_python-0.4.0}/tests/api_resources/chats/test_typing.py +0 -0
  160. {linq_python-0.2.5 → linq_python-0.4.0}/tests/api_resources/test_attachments.py +0 -0
  161. {linq_python-0.2.5 → linq_python-0.4.0}/tests/api_resources/test_capability.py +0 -0
  162. {linq_python-0.2.5 → linq_python-0.4.0}/tests/api_resources/test_chats.py +0 -0
  163. {linq_python-0.2.5 → linq_python-0.4.0}/tests/api_resources/test_contact_card.py +0 -0
  164. {linq_python-0.2.5 → linq_python-0.4.0}/tests/api_resources/test_messages.py +0 -0
  165. {linq_python-0.2.5 → linq_python-0.4.0}/tests/api_resources/test_phone_numbers.py +0 -0
  166. {linq_python-0.2.5 → linq_python-0.4.0}/tests/api_resources/test_phonenumbers.py +0 -0
  167. {linq_python-0.2.5 → linq_python-0.4.0}/tests/api_resources/test_webhook_events.py +0 -0
  168. {linq_python-0.2.5 → linq_python-0.4.0}/tests/api_resources/test_webhook_subscriptions.py +0 -0
  169. {linq_python-0.2.5 → linq_python-0.4.0}/tests/api_resources/test_webhooks.py +0 -0
  170. {linq_python-0.2.5 → linq_python-0.4.0}/tests/conftest.py +0 -0
  171. {linq_python-0.2.5 → linq_python-0.4.0}/tests/sample_file.txt +0 -0
  172. {linq_python-0.2.5 → linq_python-0.4.0}/tests/test_client.py +0 -0
  173. {linq_python-0.2.5 → linq_python-0.4.0}/tests/test_extract_files.py +0 -0
  174. {linq_python-0.2.5 → linq_python-0.4.0}/tests/test_files.py +0 -0
  175. {linq_python-0.2.5 → linq_python-0.4.0}/tests/test_models.py +0 -0
  176. {linq_python-0.2.5 → linq_python-0.4.0}/tests/test_qs.py +0 -0
  177. {linq_python-0.2.5 → linq_python-0.4.0}/tests/test_required_args.py +0 -0
  178. {linq_python-0.2.5 → linq_python-0.4.0}/tests/test_response.py +0 -0
  179. {linq_python-0.2.5 → linq_python-0.4.0}/tests/test_streaming.py +0 -0
  180. {linq_python-0.2.5 → linq_python-0.4.0}/tests/test_transform.py +0 -0
  181. {linq_python-0.2.5 → linq_python-0.4.0}/tests/test_utils/test_datetime_parse.py +0 -0
  182. {linq_python-0.2.5 → linq_python-0.4.0}/tests/test_utils/test_json.py +0 -0
  183. {linq_python-0.2.5 → linq_python-0.4.0}/tests/test_utils/test_path.py +0 -0
  184. {linq_python-0.2.5 → linq_python-0.4.0}/tests/test_utils/test_proxy.py +0 -0
  185. {linq_python-0.2.5 → linq_python-0.4.0}/tests/test_utils/test_typing.py +0 -0
  186. {linq_python-0.2.5 → linq_python-0.4.0}/tests/utils.py +0 -0
  187. {linq_python-0.2.5 → linq_python-0.4.0}/uv.lock +0 -0
@@ -0,0 +1,3 @@
1
+ {
2
+ ".": "0.4.0"
3
+ }
@@ -1,5 +1,31 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.4.0 (2026-04-24)
4
+
5
+ Full Changelog: [v0.3.0...v0.4.0](https://github.com/linq-team/linq-python/compare/v0.3.0...v0.4.0)
6
+
7
+ ### Features
8
+
9
+ * make compliance webhooks (message.opt_out/opt_in) GA ([1a5b0e6](https://github.com/linq-team/linq-python/commit/1a5b0e6d75f47b67cb2447e180712d334f7f06d0))
10
+
11
+
12
+ ### Documentation
13
+
14
+ * **api:** add first outbound message link restriction note to POST /v3/chats ([f44e698](https://github.com/linq-team/linq-python/commit/f44e6989ce805821306fb22c62a38c0f251c2846))
15
+
16
+ ## 0.3.0 (2026-04-23)
17
+
18
+ Full Changelog: [v0.2.5...v0.3.0](https://github.com/linq-team/linq-python/compare/v0.2.5...v0.3.0)
19
+
20
+ ### Features
21
+
22
+ * **api:** expose health_score on chats (BETA) ([b7d22d6](https://github.com/linq-team/linq-python/commit/b7d22d642e1192a77dd695c178eee322357de024))
23
+
24
+
25
+ ### Chores
26
+
27
+ * **internal:** more robust bootstrap script ([b504bb9](https://github.com/linq-team/linq-python/commit/b504bb9f84501d3e20fe3654a67e739fa1986e77))
28
+
3
29
  ## 0.2.5 (2026-04-20)
4
30
 
5
31
  Full Changelog: [v0.2.4...v0.2.5](https://github.com/linq-team/linq-python/compare/v0.2.4...v0.2.5)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: linq-python
3
- Version: 0.2.5
3
+ Version: 0.4.0
4
4
  Summary: The official Python library for the linq-api-v3 API
5
5
  Project-URL: Homepage, https://github.com/linq-team/linq-python
6
6
  Project-URL: Repository, https://github.com/linq-team/linq-python
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "linq-python"
3
- version = "0.2.5"
3
+ version = "0.4.0"
4
4
  description = "The official Python library for the linq-api-v3 API"
5
5
  dynamic = ["readme"]
6
6
  license = "Apache-2.0"
@@ -1,4 +1,4 @@
1
1
  # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
3
  __title__ = "linq"
4
- __version__ = "0.2.5" # x-release-please-version
4
+ __version__ = "0.4.0" # x-release-please-version
@@ -199,6 +199,17 @@ class ChatsResource(SyncAPIResource):
199
199
  must not overlap with other animations or styles. Text decorations only render
200
200
  for iMessage recipients. For SMS/RCS, text decorations are not applied.
201
201
 
202
+ ## First-Message Link Restriction
203
+
204
+ To protect sender deliverability, the **first outbound message** of a new chat
205
+ cannot be a link. The request is rejected with `400` (error code `1005`) when:
206
+
207
+ - The message contains a `link` part (explicit rich-preview link), or
208
+ - Any `text` part contains a URL.
209
+
210
+ This rule applies only to `POST /v3/chats`. Follow-up messages on an existing
211
+ chat (`POST /v3/chats/{chatId}/messages`) are not subject to this restriction.
212
+
202
213
  Args:
203
214
  from_: Sender phone number in E.164 format. Must be a phone number that the
204
215
  authenticated partner has permission to send from.
@@ -727,6 +738,17 @@ class AsyncChatsResource(AsyncAPIResource):
727
738
  must not overlap with other animations or styles. Text decorations only render
728
739
  for iMessage recipients. For SMS/RCS, text decorations are not applied.
729
740
 
741
+ ## First-Message Link Restriction
742
+
743
+ To protect sender deliverability, the **first outbound message** of a new chat
744
+ cannot be a link. The request is rejected with `400` (error code `1005`) when:
745
+
746
+ - The message contains a `link` part (explicit rich-preview link), or
747
+ - Any `text` part contains a URL.
748
+
749
+ This rule applies only to `POST /v3/chats`. Follow-up messages on an existing
750
+ chat (`POST /v3/chats/{chatId}/messages`) are not subject to this restriction.
751
+
730
752
  Args:
731
753
  from_: Sender phone number in E.164 format. Must be a phone number that the
732
754
  authenticated partner has permission to send from.
@@ -7,7 +7,17 @@ from .._models import BaseModel
7
7
  from .shared.chat_handle import ChatHandle
8
8
  from .shared.service_type import ServiceType
9
9
 
10
- __all__ = ["Chat"]
10
+ __all__ = ["Chat", "HealthScore"]
11
+
12
+
13
+ class HealthScore(BaseModel):
14
+ """**[BETA]** Health assessment for a chat. Higher `score` means a healthier chat."""
15
+
16
+ reason: str
17
+ """Short summary of what's affecting the score. Empty when the score is 100."""
18
+
19
+ score: int
20
+ """Health score from 0 to 100. Higher is healthier."""
11
21
 
12
22
 
13
23
  class Chat(BaseModel):
@@ -40,5 +50,8 @@ class Chat(BaseModel):
40
50
  updated_at: datetime
41
51
  """When the chat was last updated"""
42
52
 
53
+ health_score: Optional[HealthScore] = None
54
+ """**[BETA]** Health assessment for a chat. Higher `score` means a healthier chat."""
55
+
43
56
  service: Optional[ServiceType] = None
44
57
  """Messaging service type"""
@@ -7,7 +7,17 @@ from .chats.sent_message import SentMessage
7
7
  from .shared.chat_handle import ChatHandle
8
8
  from .shared.service_type import ServiceType
9
9
 
10
- __all__ = ["ChatCreateResponse", "Chat"]
10
+ __all__ = ["ChatCreateResponse", "Chat", "ChatHealthScore"]
11
+
12
+
13
+ class ChatHealthScore(BaseModel):
14
+ """**[BETA]** Health assessment for a chat. Higher `score` means a healthier chat."""
15
+
16
+ reason: str
17
+ """Short summary of what's affecting the score. Empty when the score is 100."""
18
+
19
+ score: int
20
+ """Health score from 0 to 100. Higher is healthier."""
11
21
 
12
22
 
13
23
  class Chat(BaseModel):
@@ -37,6 +47,9 @@ class Chat(BaseModel):
37
47
  service: ServiceType
38
48
  """Messaging service type"""
39
49
 
50
+ health_score: Optional[ChatHealthScore] = None
51
+ """**[BETA]** Health assessment for a chat. Higher `score` means a healthier chat."""
52
+
40
53
 
41
54
  class ChatCreateResponse(BaseModel):
42
55
  """Response for creating a new chat with an initial message"""
@@ -46,6 +46,8 @@ class PhoneNumberStatusUpdatedWebhookEvent(BaseModel):
46
46
  "message.delivered",
47
47
  "message.failed",
48
48
  "message.edited",
49
+ "message.opt_out",
50
+ "message.opt_in",
49
51
  "reaction.added",
50
52
  "reaction.removed",
51
53
  "participant.added",
@@ -11,6 +11,8 @@ WebhookEventType: TypeAlias = Literal[
11
11
  "message.delivered",
12
12
  "message.failed",
13
13
  "message.edited",
14
+ "message.opt_out",
15
+ "message.opt_in",
14
16
  "reaction.added",
15
17
  "reaction.removed",
16
18
  "participant.added",
@@ -1,3 +0,0 @@
1
- {
2
- ".": "0.2.5"
3
- }
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes