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