linq-python 0.3.0__tar.gz → 0.4.1__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.1/.release-please-manifest.json +3 -0
  2. {linq_python-0.3.0 → linq_python-0.4.1}/CHANGELOG.md +21 -0
  3. {linq_python-0.3.0 → linq_python-0.4.1}/PKG-INFO +10 -1
  4. {linq_python-0.3.0 → linq_python-0.4.1}/README.md +9 -0
  5. {linq_python-0.3.0 → linq_python-0.4.1}/pyproject.toml +1 -1
  6. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/_version.py +1 -1
  7. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/resources/chats/chats.py +22 -0
  8. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/phone_number_status_updated_webhook_event.py +2 -0
  9. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/webhook_event_type.py +2 -0
  10. linq_python-0.3.0/.release-please-manifest.json +0 -3
  11. {linq_python-0.3.0 → linq_python-0.4.1}/.gitignore +0 -0
  12. {linq_python-0.3.0 → linq_python-0.4.1}/CONTRIBUTING.md +0 -0
  13. {linq_python-0.3.0 → linq_python-0.4.1}/LICENSE +0 -0
  14. {linq_python-0.3.0 → linq_python-0.4.1}/SECURITY.md +0 -0
  15. {linq_python-0.3.0 → linq_python-0.4.1}/api.md +0 -0
  16. {linq_python-0.3.0 → linq_python-0.4.1}/bin/check-release-environment +0 -0
  17. {linq_python-0.3.0 → linq_python-0.4.1}/bin/publish-pypi +0 -0
  18. {linq_python-0.3.0 → linq_python-0.4.1}/examples/.keep +0 -0
  19. {linq_python-0.3.0 → linq_python-0.4.1}/release-please-config.json +0 -0
  20. {linq_python-0.3.0 → linq_python-0.4.1}/requirements-dev.lock +0 -0
  21. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/__init__.py +0 -0
  22. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/_base_client.py +0 -0
  23. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/_client.py +0 -0
  24. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/_compat.py +0 -0
  25. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/_constants.py +0 -0
  26. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/_exceptions.py +0 -0
  27. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/_files.py +0 -0
  28. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/_models.py +0 -0
  29. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/_qs.py +0 -0
  30. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/_resource.py +0 -0
  31. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/_response.py +0 -0
  32. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/_streaming.py +0 -0
  33. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/_types.py +0 -0
  34. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/_utils/__init__.py +0 -0
  35. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/_utils/_compat.py +0 -0
  36. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/_utils/_datetime_parse.py +0 -0
  37. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/_utils/_json.py +0 -0
  38. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/_utils/_logs.py +0 -0
  39. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/_utils/_path.py +0 -0
  40. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/_utils/_proxy.py +0 -0
  41. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/_utils/_reflection.py +0 -0
  42. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/_utils/_resources_proxy.py +0 -0
  43. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/_utils/_streams.py +0 -0
  44. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/_utils/_sync.py +0 -0
  45. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/_utils/_transform.py +0 -0
  46. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/_utils/_typing.py +0 -0
  47. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/_utils/_utils.py +0 -0
  48. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/lib/.keep +0 -0
  49. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/pagination.py +0 -0
  50. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/py.typed +0 -0
  51. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/resources/__init__.py +0 -0
  52. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/resources/attachments.py +0 -0
  53. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/resources/capability.py +0 -0
  54. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/resources/chats/__init__.py +0 -0
  55. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/resources/chats/messages.py +0 -0
  56. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/resources/chats/participants.py +0 -0
  57. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/resources/chats/typing.py +0 -0
  58. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/resources/contact_card.py +0 -0
  59. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/resources/messages.py +0 -0
  60. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/resources/phone_numbers.py +0 -0
  61. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/resources/phonenumbers.py +0 -0
  62. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/resources/webhook_events.py +0 -0
  63. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/resources/webhook_subscriptions.py +0 -0
  64. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/resources/webhooks.py +0 -0
  65. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/__init__.py +0 -0
  66. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/attachment_create_params.py +0 -0
  67. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/attachment_create_response.py +0 -0
  68. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/attachment_retrieve_response.py +0 -0
  69. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/capability_check_RCS_params.py +0 -0
  70. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/capability_check_i_message_params.py +0 -0
  71. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/chat.py +0 -0
  72. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/chat_create_params.py +0 -0
  73. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/chat_create_response.py +0 -0
  74. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/chat_created_webhook_event.py +0 -0
  75. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/chat_group_icon_update_failed_webhook_event.py +0 -0
  76. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/chat_group_icon_updated_webhook_event.py +0 -0
  77. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/chat_group_name_update_failed_webhook_event.py +0 -0
  78. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/chat_group_name_updated_webhook_event.py +0 -0
  79. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/chat_leave_chat_response.py +0 -0
  80. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/chat_list_chats_params.py +0 -0
  81. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/chat_send_voicememo_params.py +0 -0
  82. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/chat_send_voicememo_response.py +0 -0
  83. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/chat_typing_indicator_started_webhook_event.py +0 -0
  84. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/chat_typing_indicator_stopped_webhook_event.py +0 -0
  85. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/chat_update_params.py +0 -0
  86. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/chat_update_response.py +0 -0
  87. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/chats/__init__.py +0 -0
  88. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/chats/message_list_params.py +0 -0
  89. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/chats/message_send_params.py +0 -0
  90. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/chats/message_send_response.py +0 -0
  91. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/chats/participant_add_params.py +0 -0
  92. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/chats/participant_add_response.py +0 -0
  93. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/chats/participant_remove_params.py +0 -0
  94. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/chats/participant_remove_response.py +0 -0
  95. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/chats/sent_message.py +0 -0
  96. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/contact_card_create_params.py +0 -0
  97. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/contact_card_retrieve_params.py +0 -0
  98. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/contact_card_retrieve_response.py +0 -0
  99. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/contact_card_update_params.py +0 -0
  100. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/events_webhook_event.py +0 -0
  101. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/handle_check_response.py +0 -0
  102. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/link_part_param.py +0 -0
  103. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/media_part_param.py +0 -0
  104. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/message.py +0 -0
  105. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/message_add_reaction_params.py +0 -0
  106. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/message_add_reaction_response.py +0 -0
  107. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/message_content_param.py +0 -0
  108. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/message_delivered_webhook_event.py +0 -0
  109. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/message_edited_webhook_event.py +0 -0
  110. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/message_effect.py +0 -0
  111. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/message_effect_param.py +0 -0
  112. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/message_event_v2.py +0 -0
  113. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/message_failed_webhook_event.py +0 -0
  114. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/message_list_messages_thread_params.py +0 -0
  115. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/message_read_webhook_event.py +0 -0
  116. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/message_received_webhook_event.py +0 -0
  117. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/message_sent_webhook_event.py +0 -0
  118. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/message_update_params.py +0 -0
  119. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/participant_added_webhook_event.py +0 -0
  120. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/participant_removed_webhook_event.py +0 -0
  121. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/phone_number_list_response.py +0 -0
  122. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/phonenumber_list_response.py +0 -0
  123. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/reaction_added_webhook_event.py +0 -0
  124. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/reaction_event_base.py +0 -0
  125. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/reaction_removed_webhook_event.py +0 -0
  126. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/reply_to.py +0 -0
  127. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/reply_to_param.py +0 -0
  128. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/schemas_media_part_response.py +0 -0
  129. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/schemas_message_effect.py +0 -0
  130. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/schemas_text_part_response.py +0 -0
  131. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/set_contact_card.py +0 -0
  132. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/shared/__init__.py +0 -0
  133. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/shared/chat_handle.py +0 -0
  134. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/shared/link_part_response.py +0 -0
  135. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/shared/media_part_response.py +0 -0
  136. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/shared/reaction.py +0 -0
  137. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/shared/reaction_type.py +0 -0
  138. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/shared/service_type.py +0 -0
  139. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/shared/text_decoration.py +0 -0
  140. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/shared/text_part_response.py +0 -0
  141. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/shared_params/__init__.py +0 -0
  142. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/shared_params/reaction_type.py +0 -0
  143. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/shared_params/service_type.py +0 -0
  144. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/shared_params/text_decoration.py +0 -0
  145. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/supported_content_type.py +0 -0
  146. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/text_part_param.py +0 -0
  147. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/webhook_event_list_response.py +0 -0
  148. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/webhook_subscription.py +0 -0
  149. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/webhook_subscription_create_params.py +0 -0
  150. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/webhook_subscription_create_response.py +0 -0
  151. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/webhook_subscription_list_response.py +0 -0
  152. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq/types/webhook_subscription_update_params.py +0 -0
  153. {linq_python-0.3.0 → linq_python-0.4.1}/src/linq_api_v3/lib/.keep +0 -0
  154. {linq_python-0.3.0 → linq_python-0.4.1}/tests/__init__.py +0 -0
  155. {linq_python-0.3.0 → linq_python-0.4.1}/tests/api_resources/__init__.py +0 -0
  156. {linq_python-0.3.0 → linq_python-0.4.1}/tests/api_resources/chats/__init__.py +0 -0
  157. {linq_python-0.3.0 → linq_python-0.4.1}/tests/api_resources/chats/test_messages.py +0 -0
  158. {linq_python-0.3.0 → linq_python-0.4.1}/tests/api_resources/chats/test_participants.py +0 -0
  159. {linq_python-0.3.0 → linq_python-0.4.1}/tests/api_resources/chats/test_typing.py +0 -0
  160. {linq_python-0.3.0 → linq_python-0.4.1}/tests/api_resources/test_attachments.py +0 -0
  161. {linq_python-0.3.0 → linq_python-0.4.1}/tests/api_resources/test_capability.py +0 -0
  162. {linq_python-0.3.0 → linq_python-0.4.1}/tests/api_resources/test_chats.py +0 -0
  163. {linq_python-0.3.0 → linq_python-0.4.1}/tests/api_resources/test_contact_card.py +0 -0
  164. {linq_python-0.3.0 → linq_python-0.4.1}/tests/api_resources/test_messages.py +0 -0
  165. {linq_python-0.3.0 → linq_python-0.4.1}/tests/api_resources/test_phone_numbers.py +0 -0
  166. {linq_python-0.3.0 → linq_python-0.4.1}/tests/api_resources/test_phonenumbers.py +0 -0
  167. {linq_python-0.3.0 → linq_python-0.4.1}/tests/api_resources/test_webhook_events.py +0 -0
  168. {linq_python-0.3.0 → linq_python-0.4.1}/tests/api_resources/test_webhook_subscriptions.py +0 -0
  169. {linq_python-0.3.0 → linq_python-0.4.1}/tests/api_resources/test_webhooks.py +0 -0
  170. {linq_python-0.3.0 → linq_python-0.4.1}/tests/conftest.py +0 -0
  171. {linq_python-0.3.0 → linq_python-0.4.1}/tests/sample_file.txt +0 -0
  172. {linq_python-0.3.0 → linq_python-0.4.1}/tests/test_client.py +0 -0
  173. {linq_python-0.3.0 → linq_python-0.4.1}/tests/test_extract_files.py +0 -0
  174. {linq_python-0.3.0 → linq_python-0.4.1}/tests/test_files.py +0 -0
  175. {linq_python-0.3.0 → linq_python-0.4.1}/tests/test_models.py +0 -0
  176. {linq_python-0.3.0 → linq_python-0.4.1}/tests/test_qs.py +0 -0
  177. {linq_python-0.3.0 → linq_python-0.4.1}/tests/test_required_args.py +0 -0
  178. {linq_python-0.3.0 → linq_python-0.4.1}/tests/test_response.py +0 -0
  179. {linq_python-0.3.0 → linq_python-0.4.1}/tests/test_streaming.py +0 -0
  180. {linq_python-0.3.0 → linq_python-0.4.1}/tests/test_transform.py +0 -0
  181. {linq_python-0.3.0 → linq_python-0.4.1}/tests/test_utils/test_datetime_parse.py +0 -0
  182. {linq_python-0.3.0 → linq_python-0.4.1}/tests/test_utils/test_json.py +0 -0
  183. {linq_python-0.3.0 → linq_python-0.4.1}/tests/test_utils/test_path.py +0 -0
  184. {linq_python-0.3.0 → linq_python-0.4.1}/tests/test_utils/test_proxy.py +0 -0
  185. {linq_python-0.3.0 → linq_python-0.4.1}/tests/test_utils/test_typing.py +0 -0
  186. {linq_python-0.3.0 → linq_python-0.4.1}/tests/utils.py +0 -0
  187. {linq_python-0.3.0 → linq_python-0.4.1}/uv.lock +0 -0
@@ -0,0 +1,3 @@
1
+ {
2
+ ".": "0.4.1"
3
+ }
@@ -1,5 +1,26 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.4.1 (2026-04-25)
4
+
5
+ Full Changelog: [v0.4.0...v0.4.1](https://github.com/linq-team/linq-python/compare/v0.4.0...v0.4.1)
6
+
7
+ ### Chores
8
+
9
+ * configure new SDK language ([196bf69](https://github.com/linq-team/linq-python/commit/196bf69450146c67bf2b82da2a64e70a71d2600b))
10
+
11
+ ## 0.4.0 (2026-04-24)
12
+
13
+ Full Changelog: [v0.3.0...v0.4.0](https://github.com/linq-team/linq-python/compare/v0.3.0...v0.4.0)
14
+
15
+ ### Features
16
+
17
+ * make compliance webhooks (message.opt_out/opt_in) GA ([1a5b0e6](https://github.com/linq-team/linq-python/commit/1a5b0e6d75f47b67cb2447e180712d334f7f06d0))
18
+
19
+
20
+ ### Documentation
21
+
22
+ * **api:** add first outbound message link restriction note to POST /v3/chats ([f44e698](https://github.com/linq-team/linq-python/commit/f44e6989ce805821306fb22c62a38c0f251c2846))
23
+
3
24
  ## 0.3.0 (2026-04-23)
4
25
 
5
26
  Full Changelog: [v0.2.5...v0.3.0](https://github.com/linq-team/linq-python/compare/v0.2.5...v0.3.0)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: linq-python
3
- Version: 0.3.0
3
+ Version: 0.4.1
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
@@ -44,6 +44,15 @@ and offers both synchronous and asynchronous clients powered by [httpx](https://
44
44
 
45
45
  It is generated with [Stainless](https://www.stainless.com/).
46
46
 
47
+ ## MCP Server
48
+
49
+ Use the Linq API V3 MCP Server to enable AI assistants to interact with this API, allowing them to explore endpoints, make test requests, and use documentation to help integrate this SDK into your application.
50
+
51
+ [![Add to Cursor](https://cursor.com/deeplink/mcp-install-dark.svg)](https://cursor.com/en-US/install-mcp?name=%40linqapp%2Fsdk-mcp&config=eyJjb21tYW5kIjoibnB4IiwiYXJncyI6WyIteSIsIkBsaW5xYXBwL3Nkay1tY3AiXSwiZW52Ijp7IkxJTlFfQVBJX1YzX0FQSV9LRVkiOiJNeSBBUEkgS2V5In19)
52
+ [![Install in VS Code](https://img.shields.io/badge/_-Add_to_VS_Code-blue?style=for-the-badge&logo=data:image/svg%2bxml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCA0MCA0MCI+PHBhdGggZmlsbD0iI0VFRSIgZmlsbC1ydWxlPSJldmVub2RkIiBkPSJNMzAuMjM1IDM5Ljg4NGEyLjQ5MSAyLjQ5MSAwIDAgMS0xLjc4MS0uNzNMMTIuNyAyNC43OGwtMy40NiAyLjYyNC0zLjQwNiAyLjU4MmExLjY2NSAxLjY2NSAwIDAgMS0xLjA4Mi4zMzggMS42NjQgMS42NjQgMCAwIDEtMS4wNDYtLjQzMWwtMi4yLTJhMS42NjYgMS42NjYgMCAwIDEgMC0yLjQ2M0w3LjQ1OCAyMCA0LjY3IDE3LjQ1MyAxLjUwNyAxNC41N2ExLjY2NSAxLjY2NSAwIDAgMSAwLTIuNDYzbDIuMi0yYTEuNjY1IDEuNjY1IDAgMCAxIDIuMTMtLjA5N2w2Ljg2MyA1LjIwOUwyOC40NTIuODQ0YTIuNDg4IDIuNDg4IDAgMCAxIDEuODQxLS43MjljLjM1MS4wMDkuNjk5LjA5MSAxLjAxOS4yNDVsOC4yMzYgMy45NjFhMi41IDIuNSAwIDAgMSAxLjQxNSAyLjI1M3YuMDk5LS4wNDVWMzMuMzd2LS4wNDUuMDk1YTIuNTAxIDIuNTAxIDAgMCAxLTEuNDE2IDIuMjU3bC04LjIzNSAzLjk2MWEyLjQ5MiAyLjQ5MiAwIDAgMS0xLjA3Ny4yNDZabS43MTYtMjguOTQ3LTExLjk0OCA5LjA2MiAxMS45NTIgOS4wNjUtLjAwNC0xOC4xMjdaIi8+PC9zdmc+)](https://vscode.stainless.com/mcp/%7B%22name%22%3A%22%40linqapp%2Fsdk-mcp%22%2C%22command%22%3A%22npx%22%2C%22args%22%3A%5B%22-y%22%2C%22%40linqapp%2Fsdk-mcp%22%5D%2C%22env%22%3A%7B%22LINQ_API_V3_API_KEY%22%3A%22My%20API%20Key%22%7D%7D)
53
+
54
+ > Note: You may need to set environment variables in your MCP client.
55
+
47
56
  ## Documentation
48
57
 
49
58
  The REST API documentation can be found on [apidocs.linqapp.com](https://apidocs.linqapp.com). The full API of this library can be found in [api.md](https://github.com/linq-team/linq-python/tree/main/api.md).
@@ -9,6 +9,15 @@ and offers both synchronous and asynchronous clients powered by [httpx](https://
9
9
 
10
10
  It is generated with [Stainless](https://www.stainless.com/).
11
11
 
12
+ ## MCP Server
13
+
14
+ Use the Linq API V3 MCP Server to enable AI assistants to interact with this API, allowing them to explore endpoints, make test requests, and use documentation to help integrate this SDK into your application.
15
+
16
+ [![Add to Cursor](https://cursor.com/deeplink/mcp-install-dark.svg)](https://cursor.com/en-US/install-mcp?name=%40linqapp%2Fsdk-mcp&config=eyJjb21tYW5kIjoibnB4IiwiYXJncyI6WyIteSIsIkBsaW5xYXBwL3Nkay1tY3AiXSwiZW52Ijp7IkxJTlFfQVBJX1YzX0FQSV9LRVkiOiJNeSBBUEkgS2V5In19)
17
+ [![Install in VS Code](https://img.shields.io/badge/_-Add_to_VS_Code-blue?style=for-the-badge&logo=data:image/svg%2bxml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCA0MCA0MCI+PHBhdGggZmlsbD0iI0VFRSIgZmlsbC1ydWxlPSJldmVub2RkIiBkPSJNMzAuMjM1IDM5Ljg4NGEyLjQ5MSAyLjQ5MSAwIDAgMS0xLjc4MS0uNzNMMTIuNyAyNC43OGwtMy40NiAyLjYyNC0zLjQwNiAyLjU4MmExLjY2NSAxLjY2NSAwIDAgMS0xLjA4Mi4zMzggMS42NjQgMS42NjQgMCAwIDEtMS4wNDYtLjQzMWwtMi4yLTJhMS42NjYgMS42NjYgMCAwIDEgMC0yLjQ2M0w3LjQ1OCAyMCA0LjY3IDE3LjQ1MyAxLjUwNyAxNC41N2ExLjY2NSAxLjY2NSAwIDAgMSAwLTIuNDYzbDIuMi0yYTEuNjY1IDEuNjY1IDAgMCAxIDIuMTMtLjA5N2w2Ljg2MyA1LjIwOUwyOC40NTIuODQ0YTIuNDg4IDIuNDg4IDAgMCAxIDEuODQxLS43MjljLjM1MS4wMDkuNjk5LjA5MSAxLjAxOS4yNDVsOC4yMzYgMy45NjFhMi41IDIuNSAwIDAgMSAxLjQxNSAyLjI1M3YuMDk5LS4wNDVWMzMuMzd2LS4wNDUuMDk1YTIuNTAxIDIuNTAxIDAgMCAxLTEuNDE2IDIuMjU3bC04LjIzNSAzLjk2MWEyLjQ5MiAyLjQ5MiAwIDAgMS0xLjA3Ny4yNDZabS43MTYtMjguOTQ3LTExLjk0OCA5LjA2MiAxMS45NTIgOS4wNjUtLjAwNC0xOC4xMjdaIi8+PC9zdmc+)](https://vscode.stainless.com/mcp/%7B%22name%22%3A%22%40linqapp%2Fsdk-mcp%22%2C%22command%22%3A%22npx%22%2C%22args%22%3A%5B%22-y%22%2C%22%40linqapp%2Fsdk-mcp%22%5D%2C%22env%22%3A%7B%22LINQ_API_V3_API_KEY%22%3A%22My%20API%20Key%22%7D%7D)
18
+
19
+ > Note: You may need to set environment variables in your MCP client.
20
+
12
21
  ## Documentation
13
22
 
14
23
  The REST API documentation can be found on [apidocs.linqapp.com](https://apidocs.linqapp.com). The full API of this library can be found in [api.md](api.md).
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "linq-python"
3
- version = "0.3.0"
3
+ version = "0.4.1"
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.3.0" # x-release-please-version
4
+ __version__ = "0.4.1" # 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.
@@ -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.3.0"
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