linq-python 0.59.1__tar.gz → 0.61.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 (311) hide show
  1. linq_python-0.61.0/.release-please-manifest.json +3 -0
  2. {linq_python-0.59.1 → linq_python-0.61.0}/CHANGELOG.md +14 -0
  3. {linq_python-0.59.1 → linq_python-0.61.0}/PKG-INFO +1 -1
  4. {linq_python-0.59.1 → linq_python-0.61.0}/pyproject.toml +1 -1
  5. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/_version.py +1 -1
  6. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/api_token_activated_webhook_event.py +60 -21
  7. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/api_token_created_webhook_event.py +60 -21
  8. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/api_token_deleted_webhook_event.py +60 -21
  9. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/api_token_expired_webhook_event.py +60 -21
  10. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/api_token_expiry_scheduled_webhook_event.py +60 -21
  11. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/api_token_renamed_webhook_event.py +60 -21
  12. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/contact_card_created_webhook_event.py +60 -21
  13. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/contact_card_deleted_webhook_event.py +60 -21
  14. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/contact_card_updated_webhook_event.py +60 -21
  15. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/environment_created_webhook_event.py +60 -21
  16. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/environment_deleted_webhook_event.py +60 -21
  17. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/environment_line_moved_webhook_event.py +60 -21
  18. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/environment_renamed_webhook_event.py +60 -21
  19. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/phone_number_forwarding_updated_webhook_event.py +60 -21
  20. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/team_member_added_webhook_event.py +60 -21
  21. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/team_member_signed_in_webhook_event.py +60 -21
  22. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/team_member_signed_out_webhook_event.py +60 -21
  23. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/webhook_subscription_created_webhook_event.py +60 -21
  24. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/webhook_subscription_deleted_webhook_event.py +60 -21
  25. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/webhook_subscription_disabled_webhook_event.py +60 -21
  26. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/webhook_subscription_enabled_webhook_event.py +60 -21
  27. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/webhook_subscription_events_updated_webhook_event.py +60 -21
  28. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/webhook_subscription_phone_numbers_updated_webhook_event.py +60 -21
  29. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/webhook_subscription_routing_headers_cleared_webhook_event.py +60 -21
  30. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/webhook_subscription_routing_headers_set_webhook_event.py +60 -21
  31. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/webhook_subscription_target_url_changed_webhook_event.py +60 -21
  32. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/zero_day_retention_updated_webhook_event.py +60 -21
  33. {linq_python-0.59.1 → linq_python-0.61.0}/uv.lock +1 -1
  34. linq_python-0.59.1/.release-please-manifest.json +0 -3
  35. {linq_python-0.59.1 → linq_python-0.61.0}/.gitignore +0 -0
  36. {linq_python-0.59.1 → linq_python-0.61.0}/CONTRIBUTING.md +0 -0
  37. {linq_python-0.59.1 → linq_python-0.61.0}/LICENSE +0 -0
  38. {linq_python-0.59.1 → linq_python-0.61.0}/README.md +0 -0
  39. {linq_python-0.59.1 → linq_python-0.61.0}/SECURITY.md +0 -0
  40. {linq_python-0.59.1 → linq_python-0.61.0}/api.md +0 -0
  41. {linq_python-0.59.1 → linq_python-0.61.0}/bin/check-release-environment +0 -0
  42. {linq_python-0.59.1 → linq_python-0.61.0}/bin/publish-pypi +0 -0
  43. {linq_python-0.59.1 → linq_python-0.61.0}/examples/.keep +0 -0
  44. {linq_python-0.59.1 → linq_python-0.61.0}/release-please-config.json +0 -0
  45. {linq_python-0.59.1 → linq_python-0.61.0}/requirements-dev.lock +0 -0
  46. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/__init__.py +0 -0
  47. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/_base_client.py +0 -0
  48. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/_client.py +0 -0
  49. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/_compat.py +0 -0
  50. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/_constants.py +0 -0
  51. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/_exceptions.py +0 -0
  52. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/_files.py +0 -0
  53. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/_models.py +0 -0
  54. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/_qs.py +0 -0
  55. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/_resource.py +0 -0
  56. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/_response.py +0 -0
  57. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/_streaming.py +0 -0
  58. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/_types.py +0 -0
  59. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/_utils/__init__.py +0 -0
  60. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/_utils/_compat.py +0 -0
  61. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/_utils/_datetime_parse.py +0 -0
  62. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/_utils/_json.py +0 -0
  63. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/_utils/_logs.py +0 -0
  64. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/_utils/_path.py +0 -0
  65. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/_utils/_proxy.py +0 -0
  66. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/_utils/_reflection.py +0 -0
  67. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/_utils/_resources_proxy.py +0 -0
  68. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/_utils/_streams.py +0 -0
  69. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/_utils/_sync.py +0 -0
  70. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/_utils/_transform.py +0 -0
  71. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/_utils/_typing.py +0 -0
  72. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/_utils/_utils.py +0 -0
  73. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/lib/.keep +0 -0
  74. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/pagination.py +0 -0
  75. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/py.typed +0 -0
  76. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/resources/__init__.py +0 -0
  77. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/resources/attachments.py +0 -0
  78. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/resources/available_number.py +0 -0
  79. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/resources/blocked_handles.py +0 -0
  80. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/resources/capability.py +0 -0
  81. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/resources/chats/__init__.py +0 -0
  82. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/resources/chats/background.py +0 -0
  83. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/resources/chats/chats.py +0 -0
  84. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/resources/chats/location.py +0 -0
  85. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/resources/chats/messages.py +0 -0
  86. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/resources/chats/participants.py +0 -0
  87. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/resources/chats/polls.py +0 -0
  88. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/resources/chats/typing.py +0 -0
  89. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/resources/contact_card.py +0 -0
  90. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/resources/experiences.py +0 -0
  91. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/resources/messages/__init__.py +0 -0
  92. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/resources/messages/messages.py +0 -0
  93. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/resources/messages/poll.py +0 -0
  94. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/resources/payment_handles.py +0 -0
  95. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/resources/payment_providers.py +0 -0
  96. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/resources/payment_requests.py +0 -0
  97. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/resources/payments.py +0 -0
  98. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/resources/phone_numbers.py +0 -0
  99. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/resources/phonenumbers.py +0 -0
  100. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/resources/webhook_events.py +0 -0
  101. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/resources/webhook_subscriptions.py +0 -0
  102. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/resources/webhooks.py +0 -0
  103. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/__init__.py +0 -0
  104. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/attachment_create_params.py +0 -0
  105. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/attachment_create_response.py +0 -0
  106. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/attachment_retrieve_response.py +0 -0
  107. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/available_number_retrieve_params.py +0 -0
  108. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/available_number_retrieve_response.py +0 -0
  109. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/blocked_handle_block_params.py +0 -0
  110. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/blocked_handle_block_response.py +0 -0
  111. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/blocked_handle_entry.py +0 -0
  112. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/blocked_handle_list_response.py +0 -0
  113. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/blocked_handle_unblock_params.py +0 -0
  114. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/capability_check_RCS_params.py +0 -0
  115. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/capability_check_i_message_params.py +0 -0
  116. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/chat.py +0 -0
  117. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/chat_background_update_failed_webhook_event.py +0 -0
  118. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/chat_background_updated_webhook_event.py +0 -0
  119. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/chat_create_params.py +0 -0
  120. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/chat_create_response.py +0 -0
  121. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/chat_created_webhook_event.py +0 -0
  122. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/chat_group_icon_update_failed_webhook_event.py +0 -0
  123. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/chat_group_icon_updated_webhook_event.py +0 -0
  124. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/chat_group_name_update_failed_webhook_event.py +0 -0
  125. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/chat_group_name_updated_webhook_event.py +0 -0
  126. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/chat_leave_chat_response.py +0 -0
  127. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/chat_list_chats_params.py +0 -0
  128. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/chat_send_voicememo_params.py +0 -0
  129. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/chat_send_voicememo_response.py +0 -0
  130. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/chat_typing_indicator_started_webhook_event.py +0 -0
  131. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/chat_typing_indicator_stopped_webhook_event.py +0 -0
  132. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/chat_update_params.py +0 -0
  133. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/chat_update_response.py +0 -0
  134. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/chats/__init__.py +0 -0
  135. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/chats/background_set_params.py +0 -0
  136. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/chats/get_chat_location_response.py +0 -0
  137. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/chats/location_request_response.py +0 -0
  138. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/chats/location_stop_params.py +0 -0
  139. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/chats/message_list_params.py +0 -0
  140. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/chats/message_send_params.py +0 -0
  141. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/chats/message_send_response.py +0 -0
  142. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/chats/participant_add_params.py +0 -0
  143. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/chats/participant_add_response.py +0 -0
  144. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/chats/participant_remove_params.py +0 -0
  145. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/chats/participant_remove_response.py +0 -0
  146. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/chats/poll.py +0 -0
  147. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/chats/poll_create_params.py +0 -0
  148. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/chats/poll_envelope.py +0 -0
  149. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/chats/sent_message.py +0 -0
  150. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/chats/stop_chat_location_sharing_response.py +0 -0
  151. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/connection_created_webhook_event.py +0 -0
  152. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/connection_revoked_webhook_event.py +0 -0
  153. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/contact_card_create_params.py +0 -0
  154. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/contact_card_received_webhook_event.py +0 -0
  155. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/contact_card_retrieve_params.py +0 -0
  156. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/contact_card_retrieve_response.py +0 -0
  157. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/contact_card_update_params.py +0 -0
  158. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/experience_list_response.py +0 -0
  159. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/experience_retrieve_response.py +0 -0
  160. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/handle_check_response.py +0 -0
  161. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/inline_sticker_param.py +0 -0
  162. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/link_part_param.py +0 -0
  163. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/location_sharing_started_webhook_event.py +0 -0
  164. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/location_sharing_stopped_webhook_event.py +0 -0
  165. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/media_part_param.py +0 -0
  166. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/message.py +0 -0
  167. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/message_add_reaction_params.py +0 -0
  168. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/message_add_reaction_response.py +0 -0
  169. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/message_content_param.py +0 -0
  170. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/message_create_params.py +0 -0
  171. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/message_create_response.py +0 -0
  172. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/message_delivered_webhook_event.py +0 -0
  173. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/message_edited_webhook_event.py +0 -0
  174. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/message_effect.py +0 -0
  175. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/message_effect_param.py +0 -0
  176. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/message_event_v2.py +0 -0
  177. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/message_failed_webhook_event.py +0 -0
  178. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/message_list_messages_thread_params.py +0 -0
  179. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/message_read_webhook_event.py +0 -0
  180. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/message_received_webhook_event.py +0 -0
  181. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/message_sent_webhook_event.py +0 -0
  182. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/message_update_app_card_params.py +0 -0
  183. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/message_update_app_card_response.py +0 -0
  184. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/message_update_params.py +0 -0
  185. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/message_update_sticker_placement_params.py +0 -0
  186. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/message_update_sticker_placement_response.py +0 -0
  187. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/messages/__init__.py +0 -0
  188. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/messages/poll_add_options_params.py +0 -0
  189. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/messages/poll_vote_params.py +0 -0
  190. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/participant_added_webhook_event.py +0 -0
  191. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/participant_removed_webhook_event.py +0 -0
  192. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/payment.py +0 -0
  193. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/payment_authorized_webhook_event.py +0 -0
  194. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/payment_canceled_webhook_event.py +0 -0
  195. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/payment_create_params.py +0 -0
  196. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/payment_credentials_response.py +0 -0
  197. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/payment_declined_webhook_event.py +0 -0
  198. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/payment_expired_webhook_event.py +0 -0
  199. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/payment_handle_connection.py +0 -0
  200. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/payment_handle_verify_params.py +0 -0
  201. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/payment_provider.py +0 -0
  202. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/payment_provider_connect_params.py +0 -0
  203. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/payment_provider_connect_response.py +0 -0
  204. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/payment_request.py +0 -0
  205. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/payment_request_create_params.py +0 -0
  206. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/payment_request_list_params.py +0 -0
  207. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/payment_request_list_response.py +0 -0
  208. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/payment_succeeded_webhook_event.py +0 -0
  209. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/phone_number_assigned_webhook_event.py +0 -0
  210. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/phone_number_list_response.py +0 -0
  211. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/phone_number_released_webhook_event.py +0 -0
  212. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/phone_number_status_updated_webhook_event.py +0 -0
  213. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/phone_number_update_params.py +0 -0
  214. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/phone_number_update_response.py +0 -0
  215. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/phonenumber_list_response.py +0 -0
  216. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/poll_delivered_webhook_event.py +0 -0
  217. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/poll_failed_webhook_event.py +0 -0
  218. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/poll_reaction_added_webhook_event.py +0 -0
  219. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/poll_read_webhook_event.py +0 -0
  220. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/poll_received_webhook_event.py +0 -0
  221. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/poll_sent_webhook_event.py +0 -0
  222. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/poll_updated_webhook_event.py +0 -0
  223. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/poll_vote_added_webhook_event.py +0 -0
  224. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/poll_vote_removed_webhook_event.py +0 -0
  225. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/reaction_added_webhook_event.py +0 -0
  226. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/reaction_event_base.py +0 -0
  227. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/reaction_removed_webhook_event.py +0 -0
  228. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/reply_to.py +0 -0
  229. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/reply_to_param.py +0 -0
  230. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/reputation_action_item.py +0 -0
  231. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/reputation_audit.py +0 -0
  232. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/reputation_audit_started.py +0 -0
  233. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/reputation_driver.py +0 -0
  234. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/reputation_driver_key.py +0 -0
  235. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/reputation_evidence.py +0 -0
  236. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/reputation_opt_out_chat.py +0 -0
  237. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/reputation_report.py +0 -0
  238. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/reputation_unhealthy_chat.py +0 -0
  239. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/schemas_media_part_response.py +0 -0
  240. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/schemas_message_effect.py +0 -0
  241. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/schemas_text_part_response.py +0 -0
  242. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/set_contact_card.py +0 -0
  243. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/shared/__init__.py +0 -0
  244. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/shared/chat_handle.py +0 -0
  245. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/shared/inline_sticker_response.py +0 -0
  246. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/shared/link_part_response.py +0 -0
  247. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/shared/media_part_response.py +0 -0
  248. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/shared/reaction.py +0 -0
  249. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/shared/reaction_type.py +0 -0
  250. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/shared/service_type.py +0 -0
  251. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/shared/text_decoration.py +0 -0
  252. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/shared/text_part_response.py +0 -0
  253. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/shared_params/__init__.py +0 -0
  254. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/shared_params/reaction_type.py +0 -0
  255. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/shared_params/service_type.py +0 -0
  256. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/shared_params/text_decoration.py +0 -0
  257. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/supported_content_type.py +0 -0
  258. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/text_part_param.py +0 -0
  259. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/unwrap_webhook_event.py +0 -0
  260. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/webhook_event_list_response.py +0 -0
  261. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/webhook_event_type.py +0 -0
  262. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/webhook_subscription.py +0 -0
  263. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/webhook_subscription_create_params.py +0 -0
  264. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/webhook_subscription_create_response.py +0 -0
  265. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/webhook_subscription_list_response.py +0 -0
  266. {linq_python-0.59.1 → linq_python-0.61.0}/src/linq/types/webhook_subscription_update_params.py +0 -0
  267. {linq_python-0.59.1 → linq_python-0.61.0}/tests/__init__.py +0 -0
  268. {linq_python-0.59.1 → linq_python-0.61.0}/tests/api_resources/__init__.py +0 -0
  269. {linq_python-0.59.1 → linq_python-0.61.0}/tests/api_resources/chats/__init__.py +0 -0
  270. {linq_python-0.59.1 → linq_python-0.61.0}/tests/api_resources/chats/test_background.py +0 -0
  271. {linq_python-0.59.1 → linq_python-0.61.0}/tests/api_resources/chats/test_location.py +0 -0
  272. {linq_python-0.59.1 → linq_python-0.61.0}/tests/api_resources/chats/test_messages.py +0 -0
  273. {linq_python-0.59.1 → linq_python-0.61.0}/tests/api_resources/chats/test_participants.py +0 -0
  274. {linq_python-0.59.1 → linq_python-0.61.0}/tests/api_resources/chats/test_polls.py +0 -0
  275. {linq_python-0.59.1 → linq_python-0.61.0}/tests/api_resources/chats/test_typing.py +0 -0
  276. {linq_python-0.59.1 → linq_python-0.61.0}/tests/api_resources/messages/__init__.py +0 -0
  277. {linq_python-0.59.1 → linq_python-0.61.0}/tests/api_resources/messages/test_poll.py +0 -0
  278. {linq_python-0.59.1 → linq_python-0.61.0}/tests/api_resources/test_attachments.py +0 -0
  279. {linq_python-0.59.1 → linq_python-0.61.0}/tests/api_resources/test_available_number.py +0 -0
  280. {linq_python-0.59.1 → linq_python-0.61.0}/tests/api_resources/test_blocked_handles.py +0 -0
  281. {linq_python-0.59.1 → linq_python-0.61.0}/tests/api_resources/test_capability.py +0 -0
  282. {linq_python-0.59.1 → linq_python-0.61.0}/tests/api_resources/test_chats.py +0 -0
  283. {linq_python-0.59.1 → linq_python-0.61.0}/tests/api_resources/test_contact_card.py +0 -0
  284. {linq_python-0.59.1 → linq_python-0.61.0}/tests/api_resources/test_experiences.py +0 -0
  285. {linq_python-0.59.1 → linq_python-0.61.0}/tests/api_resources/test_messages.py +0 -0
  286. {linq_python-0.59.1 → linq_python-0.61.0}/tests/api_resources/test_payment_handles.py +0 -0
  287. {linq_python-0.59.1 → linq_python-0.61.0}/tests/api_resources/test_payment_providers.py +0 -0
  288. {linq_python-0.59.1 → linq_python-0.61.0}/tests/api_resources/test_payment_requests.py +0 -0
  289. {linq_python-0.59.1 → linq_python-0.61.0}/tests/api_resources/test_payments.py +0 -0
  290. {linq_python-0.59.1 → linq_python-0.61.0}/tests/api_resources/test_phone_numbers.py +0 -0
  291. {linq_python-0.59.1 → linq_python-0.61.0}/tests/api_resources/test_phonenumbers.py +0 -0
  292. {linq_python-0.59.1 → linq_python-0.61.0}/tests/api_resources/test_webhook_events.py +0 -0
  293. {linq_python-0.59.1 → linq_python-0.61.0}/tests/api_resources/test_webhook_subscriptions.py +0 -0
  294. {linq_python-0.59.1 → linq_python-0.61.0}/tests/api_resources/test_webhooks.py +0 -0
  295. {linq_python-0.59.1 → linq_python-0.61.0}/tests/conftest.py +0 -0
  296. {linq_python-0.59.1 → linq_python-0.61.0}/tests/sample_file.txt +0 -0
  297. {linq_python-0.59.1 → linq_python-0.61.0}/tests/test_client.py +0 -0
  298. {linq_python-0.59.1 → linq_python-0.61.0}/tests/test_extract_files.py +0 -0
  299. {linq_python-0.59.1 → linq_python-0.61.0}/tests/test_files.py +0 -0
  300. {linq_python-0.59.1 → linq_python-0.61.0}/tests/test_models.py +0 -0
  301. {linq_python-0.59.1 → linq_python-0.61.0}/tests/test_qs.py +0 -0
  302. {linq_python-0.59.1 → linq_python-0.61.0}/tests/test_required_args.py +0 -0
  303. {linq_python-0.59.1 → linq_python-0.61.0}/tests/test_response.py +0 -0
  304. {linq_python-0.59.1 → linq_python-0.61.0}/tests/test_streaming.py +0 -0
  305. {linq_python-0.59.1 → linq_python-0.61.0}/tests/test_transform.py +0 -0
  306. {linq_python-0.59.1 → linq_python-0.61.0}/tests/test_utils/test_datetime_parse.py +0 -0
  307. {linq_python-0.59.1 → linq_python-0.61.0}/tests/test_utils/test_json.py +0 -0
  308. {linq_python-0.59.1 → linq_python-0.61.0}/tests/test_utils/test_path.py +0 -0
  309. {linq_python-0.59.1 → linq_python-0.61.0}/tests/test_utils/test_proxy.py +0 -0
  310. {linq_python-0.59.1 → linq_python-0.61.0}/tests/test_utils/test_typing.py +0 -0
  311. {linq_python-0.59.1 → linq_python-0.61.0}/tests/utils.py +0 -0
@@ -0,0 +1,3 @@
1
+ {
2
+ ".": "0.61.0"
3
+ }
@@ -1,5 +1,19 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.61.0](https://github.com/linq-team/linq-python/compare/v0.60.0...v0.61.0) (2026-09-26)
4
+
5
+
6
+ ### Features
7
+
8
+ * add expires_at field to api token webhook events ([ad7aa1a](https://github.com/linq-team/linq-python/commit/ad7aa1a2e1e132b4a2f26214adf525b5d7b36941))
9
+
10
+ ## [0.60.0](https://github.com/linq-team/linq-python/compare/v0.59.1...v0.60.0) (2026-09-26)
11
+
12
+
13
+ ### Features
14
+
15
+ * split contact card name into first and last name fields ([b2244bd](https://github.com/linq-team/linq-python/commit/b2244bd82b1b71d2c6b3c1bd2e816e08babcd118))
16
+
3
17
  ## [0.59.1](https://github.com/linq-team/linq-python/compare/v0.59.0...v0.59.1) (2026-09-26)
4
18
 
5
19
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: linq-python
3
- Version: 0.59.1
3
+ Version: 0.61.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.59.1"
3
+ version = "0.61.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.59.1" # x-release-please-version
4
+ __version__ = "0.61.0" # x-release-please-version
@@ -14,7 +14,9 @@ __all__ = [
14
14
  "DataActor",
15
15
  "DataAPIToken",
16
16
  "DataChange",
17
- "DataChangeName",
17
+ "DataChangeFirstName",
18
+ "DataChangeImageURL",
19
+ "DataChangeLastName",
18
20
  "DataContactCard",
19
21
  "DataEnvironment",
20
22
  "DataTeamMember",
@@ -46,11 +48,7 @@ class DataAPIToken(BaseModel):
46
48
  id: str
47
49
 
48
50
  expires_at: Optional[datetime] = None
49
- """When the token expires.
50
-
51
- On `api_token.created`, `api_token.expired` and `api_token.deleted`; absent if
52
- it never expires.
53
- """
51
+ """When the token expires; null if it never does."""
54
52
 
55
53
  name: Optional[str] = None
56
54
  """Absent when the token has no name."""
@@ -59,31 +57,69 @@ class DataAPIToken(BaseModel):
59
57
  """The token's visible prefix. On `api_token.created` and `api_token.deleted`."""
60
58
 
61
59
 
62
- class DataChangeName(BaseModel):
63
- """A contact card name change.
60
+ class DataChangeFirstName(BaseModel):
61
+ """A single field's change, on `contact_card.updated`.
62
+
63
+ Present only for the field that changed.
64
+ """
65
+
66
+ from_: Optional[str] = FieldInfo(alias="from", default=None)
67
+ """The value before the change; null when the card had none."""
68
+
69
+ to: Optional[str] = None
70
+ """The value after the change; null when it was removed."""
71
+
72
+
73
+ class DataChangeImageURL(BaseModel):
74
+ """A single field's change, on `contact_card.updated`.
75
+
76
+ Present only for the field that changed.
77
+ """
78
+
79
+ from_: Optional[str] = FieldInfo(alias="from", default=None)
80
+ """The value before the change; null when the card had none."""
81
+
82
+ to: Optional[str] = None
83
+ """The value after the change; null when it was removed."""
84
+
64
85
 
65
- Only on `contact_card.updated`, when the name changed.
86
+ class DataChangeLastName(BaseModel):
87
+ """A single field's change, on `contact_card.updated`.
88
+
89
+ Present only for the field that changed.
66
90
  """
67
91
 
68
92
  from_: Optional[str] = FieldInfo(alias="from", default=None)
69
- """The name before the change; null when the card had no name."""
93
+ """The value before the change; null when the card had none."""
70
94
 
71
95
  to: Optional[str] = None
72
- """The name after the change; null when it was removed."""
96
+ """The value after the change; null when it was removed."""
73
97
 
74
98
 
75
99
  class DataChange(BaseModel):
76
100
  """
77
- The transition an update event describes: `from` is the value before and `to` the value after. Present only on update events (`*.updated`, `*.renamed`, `*_changed`, `api_token.expiry_scheduled`, `environment.line_moved`, `webhook_subscription.routing_headers_*`); created, deleted, enabled, disabled, expired and activated events never carry it. `null` means none: `to: null` means cleared and `from: null` means first set. The value type depends on the event and is given in each event's description. `contact_card.updated` uses `name` instead of `from` and `to`.
101
+ The transition an update event describes: `from` is the value before and `to` the value after. Present only on update events (`*.updated`, `*.renamed`, `*_changed`, `api_token.expiry_scheduled`, `environment.line_moved`, `webhook_subscription.routing_headers_*`); created, deleted, enabled, disabled, expired and activated events never carry it. `null` means none: `to: null` means cleared and `from: null` means first set. The value type depends on the event and is given in each event's description. `contact_card.updated` uses `first_name`, `last_name` and `image_url` instead of `from` and `to`, each present only when that field changed.
102
+ """
103
+
104
+ first_name: Optional[DataChangeFirstName] = None
105
+ """A single field's change, on `contact_card.updated`.
106
+
107
+ Present only for the field that changed.
78
108
  """
79
109
 
80
110
  from_: Optional[object] = FieldInfo(alias="from", default=None)
81
111
  """The value before the change; null when there was none."""
82
112
 
83
- name: Optional[DataChangeName] = None
84
- """A contact card name change.
113
+ image_url: Optional[DataChangeImageURL] = None
114
+ """A single field's change, on `contact_card.updated`.
115
+
116
+ Present only for the field that changed.
117
+ """
118
+
119
+ last_name: Optional[DataChangeLastName] = None
120
+ """A single field's change, on `contact_card.updated`.
85
121
 
86
- Only on `contact_card.updated`, when the name changed.
122
+ Present only for the field that changed.
87
123
  """
88
124
 
89
125
  to: Optional[object] = None
@@ -95,11 +131,13 @@ class DataContactCard(BaseModel):
95
131
 
96
132
  id: str
97
133
 
98
- name: Optional[str] = None
99
- """Display name. Absent when the card has no name."""
134
+ first_name: str
135
+
136
+ image_url: Optional[str] = None
137
+ """Null when the card has no photo."""
100
138
 
101
- photo_updated: Optional[bool] = None
102
- """True when the photo changed. Only on `contact_card.updated`."""
139
+ last_name: Optional[str] = None
140
+ """Null when the card has no last name."""
103
141
 
104
142
 
105
143
  class DataEnvironment(BaseModel):
@@ -175,8 +213,9 @@ class Data(BaseModel):
175
213
  `webhook_subscription.routing_headers_*`); created, deleted, enabled, disabled,
176
214
  expired and activated events never carry it. `null` means none: `to: null` means
177
215
  cleared and `from: null` means first set. The value type depends on the event
178
- and is given in each event's description. `contact_card.updated` uses `name`
179
- instead of `from` and `to`.
216
+ and is given in each event's description. `contact_card.updated` uses
217
+ `first_name`, `last_name` and `image_url` instead of `from` and `to`, each
218
+ present only when that field changed.
180
219
  """
181
220
 
182
221
  contact_card: Optional[DataContactCard] = None
@@ -14,7 +14,9 @@ __all__ = [
14
14
  "DataActor",
15
15
  "DataAPIToken",
16
16
  "DataChange",
17
- "DataChangeName",
17
+ "DataChangeFirstName",
18
+ "DataChangeImageURL",
19
+ "DataChangeLastName",
18
20
  "DataContactCard",
19
21
  "DataEnvironment",
20
22
  "DataTeamMember",
@@ -46,11 +48,7 @@ class DataAPIToken(BaseModel):
46
48
  id: str
47
49
 
48
50
  expires_at: Optional[datetime] = None
49
- """When the token expires.
50
-
51
- On `api_token.created`, `api_token.expired` and `api_token.deleted`; absent if
52
- it never expires.
53
- """
51
+ """When the token expires; null if it never does."""
54
52
 
55
53
  name: Optional[str] = None
56
54
  """Absent when the token has no name."""
@@ -59,31 +57,69 @@ class DataAPIToken(BaseModel):
59
57
  """The token's visible prefix. On `api_token.created` and `api_token.deleted`."""
60
58
 
61
59
 
62
- class DataChangeName(BaseModel):
63
- """A contact card name change.
60
+ class DataChangeFirstName(BaseModel):
61
+ """A single field's change, on `contact_card.updated`.
62
+
63
+ Present only for the field that changed.
64
+ """
65
+
66
+ from_: Optional[str] = FieldInfo(alias="from", default=None)
67
+ """The value before the change; null when the card had none."""
68
+
69
+ to: Optional[str] = None
70
+ """The value after the change; null when it was removed."""
71
+
72
+
73
+ class DataChangeImageURL(BaseModel):
74
+ """A single field's change, on `contact_card.updated`.
75
+
76
+ Present only for the field that changed.
77
+ """
78
+
79
+ from_: Optional[str] = FieldInfo(alias="from", default=None)
80
+ """The value before the change; null when the card had none."""
81
+
82
+ to: Optional[str] = None
83
+ """The value after the change; null when it was removed."""
84
+
64
85
 
65
- Only on `contact_card.updated`, when the name changed.
86
+ class DataChangeLastName(BaseModel):
87
+ """A single field's change, on `contact_card.updated`.
88
+
89
+ Present only for the field that changed.
66
90
  """
67
91
 
68
92
  from_: Optional[str] = FieldInfo(alias="from", default=None)
69
- """The name before the change; null when the card had no name."""
93
+ """The value before the change; null when the card had none."""
70
94
 
71
95
  to: Optional[str] = None
72
- """The name after the change; null when it was removed."""
96
+ """The value after the change; null when it was removed."""
73
97
 
74
98
 
75
99
  class DataChange(BaseModel):
76
100
  """
77
- The transition an update event describes: `from` is the value before and `to` the value after. Present only on update events (`*.updated`, `*.renamed`, `*_changed`, `api_token.expiry_scheduled`, `environment.line_moved`, `webhook_subscription.routing_headers_*`); created, deleted, enabled, disabled, expired and activated events never carry it. `null` means none: `to: null` means cleared and `from: null` means first set. The value type depends on the event and is given in each event's description. `contact_card.updated` uses `name` instead of `from` and `to`.
101
+ The transition an update event describes: `from` is the value before and `to` the value after. Present only on update events (`*.updated`, `*.renamed`, `*_changed`, `api_token.expiry_scheduled`, `environment.line_moved`, `webhook_subscription.routing_headers_*`); created, deleted, enabled, disabled, expired and activated events never carry it. `null` means none: `to: null` means cleared and `from: null` means first set. The value type depends on the event and is given in each event's description. `contact_card.updated` uses `first_name`, `last_name` and `image_url` instead of `from` and `to`, each present only when that field changed.
102
+ """
103
+
104
+ first_name: Optional[DataChangeFirstName] = None
105
+ """A single field's change, on `contact_card.updated`.
106
+
107
+ Present only for the field that changed.
78
108
  """
79
109
 
80
110
  from_: Optional[object] = FieldInfo(alias="from", default=None)
81
111
  """The value before the change; null when there was none."""
82
112
 
83
- name: Optional[DataChangeName] = None
84
- """A contact card name change.
113
+ image_url: Optional[DataChangeImageURL] = None
114
+ """A single field's change, on `contact_card.updated`.
115
+
116
+ Present only for the field that changed.
117
+ """
118
+
119
+ last_name: Optional[DataChangeLastName] = None
120
+ """A single field's change, on `contact_card.updated`.
85
121
 
86
- Only on `contact_card.updated`, when the name changed.
122
+ Present only for the field that changed.
87
123
  """
88
124
 
89
125
  to: Optional[object] = None
@@ -95,11 +131,13 @@ class DataContactCard(BaseModel):
95
131
 
96
132
  id: str
97
133
 
98
- name: Optional[str] = None
99
- """Display name. Absent when the card has no name."""
134
+ first_name: str
135
+
136
+ image_url: Optional[str] = None
137
+ """Null when the card has no photo."""
100
138
 
101
- photo_updated: Optional[bool] = None
102
- """True when the photo changed. Only on `contact_card.updated`."""
139
+ last_name: Optional[str] = None
140
+ """Null when the card has no last name."""
103
141
 
104
142
 
105
143
  class DataEnvironment(BaseModel):
@@ -175,8 +213,9 @@ class Data(BaseModel):
175
213
  `webhook_subscription.routing_headers_*`); created, deleted, enabled, disabled,
176
214
  expired and activated events never carry it. `null` means none: `to: null` means
177
215
  cleared and `from: null` means first set. The value type depends on the event
178
- and is given in each event's description. `contact_card.updated` uses `name`
179
- instead of `from` and `to`.
216
+ and is given in each event's description. `contact_card.updated` uses
217
+ `first_name`, `last_name` and `image_url` instead of `from` and `to`, each
218
+ present only when that field changed.
180
219
  """
181
220
 
182
221
  contact_card: Optional[DataContactCard] = None
@@ -14,7 +14,9 @@ __all__ = [
14
14
  "DataActor",
15
15
  "DataAPIToken",
16
16
  "DataChange",
17
- "DataChangeName",
17
+ "DataChangeFirstName",
18
+ "DataChangeImageURL",
19
+ "DataChangeLastName",
18
20
  "DataContactCard",
19
21
  "DataEnvironment",
20
22
  "DataTeamMember",
@@ -46,11 +48,7 @@ class DataAPIToken(BaseModel):
46
48
  id: str
47
49
 
48
50
  expires_at: Optional[datetime] = None
49
- """When the token expires.
50
-
51
- On `api_token.created`, `api_token.expired` and `api_token.deleted`; absent if
52
- it never expires.
53
- """
51
+ """When the token expires; null if it never does."""
54
52
 
55
53
  name: Optional[str] = None
56
54
  """Absent when the token has no name."""
@@ -59,31 +57,69 @@ class DataAPIToken(BaseModel):
59
57
  """The token's visible prefix. On `api_token.created` and `api_token.deleted`."""
60
58
 
61
59
 
62
- class DataChangeName(BaseModel):
63
- """A contact card name change.
60
+ class DataChangeFirstName(BaseModel):
61
+ """A single field's change, on `contact_card.updated`.
62
+
63
+ Present only for the field that changed.
64
+ """
65
+
66
+ from_: Optional[str] = FieldInfo(alias="from", default=None)
67
+ """The value before the change; null when the card had none."""
68
+
69
+ to: Optional[str] = None
70
+ """The value after the change; null when it was removed."""
71
+
72
+
73
+ class DataChangeImageURL(BaseModel):
74
+ """A single field's change, on `contact_card.updated`.
75
+
76
+ Present only for the field that changed.
77
+ """
78
+
79
+ from_: Optional[str] = FieldInfo(alias="from", default=None)
80
+ """The value before the change; null when the card had none."""
81
+
82
+ to: Optional[str] = None
83
+ """The value after the change; null when it was removed."""
84
+
64
85
 
65
- Only on `contact_card.updated`, when the name changed.
86
+ class DataChangeLastName(BaseModel):
87
+ """A single field's change, on `contact_card.updated`.
88
+
89
+ Present only for the field that changed.
66
90
  """
67
91
 
68
92
  from_: Optional[str] = FieldInfo(alias="from", default=None)
69
- """The name before the change; null when the card had no name."""
93
+ """The value before the change; null when the card had none."""
70
94
 
71
95
  to: Optional[str] = None
72
- """The name after the change; null when it was removed."""
96
+ """The value after the change; null when it was removed."""
73
97
 
74
98
 
75
99
  class DataChange(BaseModel):
76
100
  """
77
- The transition an update event describes: `from` is the value before and `to` the value after. Present only on update events (`*.updated`, `*.renamed`, `*_changed`, `api_token.expiry_scheduled`, `environment.line_moved`, `webhook_subscription.routing_headers_*`); created, deleted, enabled, disabled, expired and activated events never carry it. `null` means none: `to: null` means cleared and `from: null` means first set. The value type depends on the event and is given in each event's description. `contact_card.updated` uses `name` instead of `from` and `to`.
101
+ The transition an update event describes: `from` is the value before and `to` the value after. Present only on update events (`*.updated`, `*.renamed`, `*_changed`, `api_token.expiry_scheduled`, `environment.line_moved`, `webhook_subscription.routing_headers_*`); created, deleted, enabled, disabled, expired and activated events never carry it. `null` means none: `to: null` means cleared and `from: null` means first set. The value type depends on the event and is given in each event's description. `contact_card.updated` uses `first_name`, `last_name` and `image_url` instead of `from` and `to`, each present only when that field changed.
102
+ """
103
+
104
+ first_name: Optional[DataChangeFirstName] = None
105
+ """A single field's change, on `contact_card.updated`.
106
+
107
+ Present only for the field that changed.
78
108
  """
79
109
 
80
110
  from_: Optional[object] = FieldInfo(alias="from", default=None)
81
111
  """The value before the change; null when there was none."""
82
112
 
83
- name: Optional[DataChangeName] = None
84
- """A contact card name change.
113
+ image_url: Optional[DataChangeImageURL] = None
114
+ """A single field's change, on `contact_card.updated`.
115
+
116
+ Present only for the field that changed.
117
+ """
118
+
119
+ last_name: Optional[DataChangeLastName] = None
120
+ """A single field's change, on `contact_card.updated`.
85
121
 
86
- Only on `contact_card.updated`, when the name changed.
122
+ Present only for the field that changed.
87
123
  """
88
124
 
89
125
  to: Optional[object] = None
@@ -95,11 +131,13 @@ class DataContactCard(BaseModel):
95
131
 
96
132
  id: str
97
133
 
98
- name: Optional[str] = None
99
- """Display name. Absent when the card has no name."""
134
+ first_name: str
135
+
136
+ image_url: Optional[str] = None
137
+ """Null when the card has no photo."""
100
138
 
101
- photo_updated: Optional[bool] = None
102
- """True when the photo changed. Only on `contact_card.updated`."""
139
+ last_name: Optional[str] = None
140
+ """Null when the card has no last name."""
103
141
 
104
142
 
105
143
  class DataEnvironment(BaseModel):
@@ -175,8 +213,9 @@ class Data(BaseModel):
175
213
  `webhook_subscription.routing_headers_*`); created, deleted, enabled, disabled,
176
214
  expired and activated events never carry it. `null` means none: `to: null` means
177
215
  cleared and `from: null` means first set. The value type depends on the event
178
- and is given in each event's description. `contact_card.updated` uses `name`
179
- instead of `from` and `to`.
216
+ and is given in each event's description. `contact_card.updated` uses
217
+ `first_name`, `last_name` and `image_url` instead of `from` and `to`, each
218
+ present only when that field changed.
180
219
  """
181
220
 
182
221
  contact_card: Optional[DataContactCard] = None
@@ -14,7 +14,9 @@ __all__ = [
14
14
  "DataActor",
15
15
  "DataAPIToken",
16
16
  "DataChange",
17
- "DataChangeName",
17
+ "DataChangeFirstName",
18
+ "DataChangeImageURL",
19
+ "DataChangeLastName",
18
20
  "DataContactCard",
19
21
  "DataEnvironment",
20
22
  "DataTeamMember",
@@ -46,11 +48,7 @@ class DataAPIToken(BaseModel):
46
48
  id: str
47
49
 
48
50
  expires_at: Optional[datetime] = None
49
- """When the token expires.
50
-
51
- On `api_token.created`, `api_token.expired` and `api_token.deleted`; absent if
52
- it never expires.
53
- """
51
+ """When the token expires; null if it never does."""
54
52
 
55
53
  name: Optional[str] = None
56
54
  """Absent when the token has no name."""
@@ -59,31 +57,69 @@ class DataAPIToken(BaseModel):
59
57
  """The token's visible prefix. On `api_token.created` and `api_token.deleted`."""
60
58
 
61
59
 
62
- class DataChangeName(BaseModel):
63
- """A contact card name change.
60
+ class DataChangeFirstName(BaseModel):
61
+ """A single field's change, on `contact_card.updated`.
62
+
63
+ Present only for the field that changed.
64
+ """
65
+
66
+ from_: Optional[str] = FieldInfo(alias="from", default=None)
67
+ """The value before the change; null when the card had none."""
68
+
69
+ to: Optional[str] = None
70
+ """The value after the change; null when it was removed."""
71
+
72
+
73
+ class DataChangeImageURL(BaseModel):
74
+ """A single field's change, on `contact_card.updated`.
75
+
76
+ Present only for the field that changed.
77
+ """
78
+
79
+ from_: Optional[str] = FieldInfo(alias="from", default=None)
80
+ """The value before the change; null when the card had none."""
81
+
82
+ to: Optional[str] = None
83
+ """The value after the change; null when it was removed."""
84
+
64
85
 
65
- Only on `contact_card.updated`, when the name changed.
86
+ class DataChangeLastName(BaseModel):
87
+ """A single field's change, on `contact_card.updated`.
88
+
89
+ Present only for the field that changed.
66
90
  """
67
91
 
68
92
  from_: Optional[str] = FieldInfo(alias="from", default=None)
69
- """The name before the change; null when the card had no name."""
93
+ """The value before the change; null when the card had none."""
70
94
 
71
95
  to: Optional[str] = None
72
- """The name after the change; null when it was removed."""
96
+ """The value after the change; null when it was removed."""
73
97
 
74
98
 
75
99
  class DataChange(BaseModel):
76
100
  """
77
- The transition an update event describes: `from` is the value before and `to` the value after. Present only on update events (`*.updated`, `*.renamed`, `*_changed`, `api_token.expiry_scheduled`, `environment.line_moved`, `webhook_subscription.routing_headers_*`); created, deleted, enabled, disabled, expired and activated events never carry it. `null` means none: `to: null` means cleared and `from: null` means first set. The value type depends on the event and is given in each event's description. `contact_card.updated` uses `name` instead of `from` and `to`.
101
+ The transition an update event describes: `from` is the value before and `to` the value after. Present only on update events (`*.updated`, `*.renamed`, `*_changed`, `api_token.expiry_scheduled`, `environment.line_moved`, `webhook_subscription.routing_headers_*`); created, deleted, enabled, disabled, expired and activated events never carry it. `null` means none: `to: null` means cleared and `from: null` means first set. The value type depends on the event and is given in each event's description. `contact_card.updated` uses `first_name`, `last_name` and `image_url` instead of `from` and `to`, each present only when that field changed.
102
+ """
103
+
104
+ first_name: Optional[DataChangeFirstName] = None
105
+ """A single field's change, on `contact_card.updated`.
106
+
107
+ Present only for the field that changed.
78
108
  """
79
109
 
80
110
  from_: Optional[object] = FieldInfo(alias="from", default=None)
81
111
  """The value before the change; null when there was none."""
82
112
 
83
- name: Optional[DataChangeName] = None
84
- """A contact card name change.
113
+ image_url: Optional[DataChangeImageURL] = None
114
+ """A single field's change, on `contact_card.updated`.
115
+
116
+ Present only for the field that changed.
117
+ """
118
+
119
+ last_name: Optional[DataChangeLastName] = None
120
+ """A single field's change, on `contact_card.updated`.
85
121
 
86
- Only on `contact_card.updated`, when the name changed.
122
+ Present only for the field that changed.
87
123
  """
88
124
 
89
125
  to: Optional[object] = None
@@ -95,11 +131,13 @@ class DataContactCard(BaseModel):
95
131
 
96
132
  id: str
97
133
 
98
- name: Optional[str] = None
99
- """Display name. Absent when the card has no name."""
134
+ first_name: str
135
+
136
+ image_url: Optional[str] = None
137
+ """Null when the card has no photo."""
100
138
 
101
- photo_updated: Optional[bool] = None
102
- """True when the photo changed. Only on `contact_card.updated`."""
139
+ last_name: Optional[str] = None
140
+ """Null when the card has no last name."""
103
141
 
104
142
 
105
143
  class DataEnvironment(BaseModel):
@@ -175,8 +213,9 @@ class Data(BaseModel):
175
213
  `webhook_subscription.routing_headers_*`); created, deleted, enabled, disabled,
176
214
  expired and activated events never carry it. `null` means none: `to: null` means
177
215
  cleared and `from: null` means first set. The value type depends on the event
178
- and is given in each event's description. `contact_card.updated` uses `name`
179
- instead of `from` and `to`.
216
+ and is given in each event's description. `contact_card.updated` uses
217
+ `first_name`, `last_name` and `image_url` instead of `from` and `to`, each
218
+ present only when that field changed.
180
219
  """
181
220
 
182
221
  contact_card: Optional[DataContactCard] = None