sentdm 0.19.0 → 0.20.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (284) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +8 -0
  3. data/README.md +31 -1
  4. data/lib/sentdm/internal/type/base_model.rb +5 -5
  5. data/lib/sentdm/internal/type/enum.rb +25 -0
  6. data/lib/sentdm/models/api_meta.rb +34 -0
  7. data/lib/sentdm/models/api_response_of_contact.rb +46 -0
  8. data/lib/sentdm/models/api_response_of_profile_detail.rb +43 -0
  9. data/lib/sentdm/models/api_response_of_user.rb +43 -0
  10. data/lib/sentdm/models/api_response_template.rb +43 -0
  11. data/lib/sentdm/models/api_response_webhook.rb +43 -0
  12. data/lib/sentdm/models/billing_contact_info.rb +47 -0
  13. data/lib/sentdm/models/brands_brand_data.rb +38 -0
  14. data/lib/sentdm/models/contact_delete_params.rb +2 -16
  15. data/lib/sentdm/models/contact_list_response.rb +12 -278
  16. data/lib/sentdm/models/contact_response.rb +126 -0
  17. data/lib/sentdm/models/destination_country.rb +21 -0
  18. data/lib/sentdm/models/error_detail.rb +42 -0
  19. data/lib/sentdm/models/me_retrieve_response.rb +12 -204
  20. data/lib/sentdm/models/message_retrieve_activities_response.rb +6 -74
  21. data/lib/sentdm/models/message_retrieve_status_response.rb +6 -74
  22. data/lib/sentdm/models/message_send_response.rb +6 -74
  23. data/lib/sentdm/models/mutation_request.rb +20 -0
  24. data/lib/sentdm/models/number_lookup_response.rb +6 -74
  25. data/lib/sentdm/models/pagination_meta.rb +80 -0
  26. data/lib/sentdm/models/payment_details.rb +44 -0
  27. data/lib/sentdm/models/profile_complete_response.rb +6 -74
  28. data/lib/sentdm/models/profile_create_params.rb +9 -423
  29. data/lib/sentdm/models/profile_delete_params.rb +2 -16
  30. data/lib/sentdm/models/profile_detail.rb +605 -0
  31. data/lib/sentdm/models/profile_list_response.rb +9 -753
  32. data/lib/sentdm/models/profile_settings.rb +66 -0
  33. data/lib/sentdm/models/profile_update_params.rb +9 -423
  34. data/lib/sentdm/models/profiles/api_response_of_tcr_campaign_with_use_cases.rb +45 -0
  35. data/lib/sentdm/models/profiles/base_dto.rb +32 -0
  36. data/lib/sentdm/models/profiles/campaign_create_params.rb +3 -165
  37. data/lib/sentdm/models/profiles/campaign_data.rb +123 -0
  38. data/lib/sentdm/models/profiles/campaign_delete_params.rb +2 -17
  39. data/lib/sentdm/models/profiles/campaign_list_response.rb +9 -420
  40. data/lib/sentdm/models/profiles/campaign_update_params.rb +3 -165
  41. data/lib/sentdm/models/profiles/messaging_use_case_us.rb +28 -0
  42. data/lib/sentdm/models/profiles/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_campaigns_campaign_use_case_data.rb +29 -0
  43. data/lib/sentdm/models/profiles/tcr_campaign_with_use_cases.rb +248 -0
  44. data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_authentication_config.rb +34 -0
  45. data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_template_body.rb +48 -0
  46. data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button.rb +38 -0
  47. data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button_props.rb +81 -0
  48. data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_template_footer.rb +34 -0
  49. data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_template_header.rb +39 -0
  50. data/lib/sentdm/models/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_brands_brand_business_info.rb +116 -0
  51. data/lib/sentdm/models/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_brands_brand_compliance_info.rb +75 -0
  52. data/lib/sentdm/models/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_brands_brand_contact_info.rb +58 -0
  53. data/lib/sentdm/models/tcr_brand_relationship.rb +18 -0
  54. data/lib/sentdm/models/tcr_vertical.rb +36 -0
  55. data/lib/sentdm/models/template.rb +90 -0
  56. data/lib/sentdm/models/template_body_content.rb +27 -0
  57. data/lib/sentdm/models/template_create_params.rb +3 -889
  58. data/lib/sentdm/models/template_definition.rb +66 -0
  59. data/lib/sentdm/models/template_list_response.rb +12 -242
  60. data/lib/sentdm/models/template_update_params.rb +3 -889
  61. data/lib/sentdm/models/template_variable.rb +80 -0
  62. data/lib/sentdm/models/user_list_response.rb +9 -154
  63. data/lib/sentdm/models/user_remove_params.rb +2 -16
  64. data/lib/sentdm/models/user_response.rb +82 -0
  65. data/lib/sentdm/models/webhook_event_type.rb +45 -0
  66. data/lib/sentdm/models/webhook_list_event_types_response.rb +9 -118
  67. data/lib/sentdm/models/webhook_list_events_response.rb +9 -153
  68. data/lib/sentdm/models/webhook_list_response.rb +12 -247
  69. data/lib/sentdm/models/webhook_response.rb +95 -0
  70. data/lib/sentdm/models/webhook_rotate_secret_params.rb +2 -17
  71. data/lib/sentdm/models/webhook_rotate_secret_response.rb +6 -74
  72. data/lib/sentdm/models/webhook_test_response.rb +6 -74
  73. data/lib/sentdm/models.rb +77 -0
  74. data/lib/sentdm/resources/contacts.rb +6 -6
  75. data/lib/sentdm/resources/profiles/campaigns.rb +6 -6
  76. data/lib/sentdm/resources/profiles.rb +12 -12
  77. data/lib/sentdm/resources/templates.rb +8 -8
  78. data/lib/sentdm/resources/users.rb +6 -6
  79. data/lib/sentdm/resources/webhooks.rb +8 -8
  80. data/lib/sentdm/version.rb +1 -1
  81. data/lib/sentdm.rb +40 -18
  82. data/rbi/sentdm/models/api_meta.rbi +55 -0
  83. data/rbi/sentdm/models/api_response_of_contact.rbi +74 -0
  84. data/rbi/sentdm/models/api_response_of_profile_detail.rbi +74 -0
  85. data/rbi/sentdm/models/api_response_of_user.rbi +74 -0
  86. data/rbi/sentdm/models/api_response_template.rbi +74 -0
  87. data/rbi/sentdm/models/api_response_webhook.rbi +74 -0
  88. data/rbi/sentdm/models/billing_contact_info.rbi +65 -0
  89. data/rbi/sentdm/models/brands_brand_data.rbi +104 -0
  90. data/rbi/sentdm/models/contact_delete_params.rbi +2 -19
  91. data/rbi/sentdm/models/contact_list_response.rbi +16 -505
  92. data/rbi/sentdm/models/contact_response.rbi +183 -0
  93. data/rbi/sentdm/models/destination_country.rbi +32 -0
  94. data/rbi/sentdm/models/error_detail.rbi +66 -0
  95. data/rbi/sentdm/models/me_retrieve_response.rbi +16 -335
  96. data/rbi/sentdm/models/message_retrieve_activities_response.rbi +8 -154
  97. data/rbi/sentdm/models/message_retrieve_status_response.rbi +8 -148
  98. data/rbi/sentdm/models/message_send_response.rbi +8 -135
  99. data/rbi/sentdm/models/mutation_request.rbi +32 -0
  100. data/rbi/sentdm/models/number_lookup_response.rbi +8 -135
  101. data/rbi/sentdm/models/pagination_meta.rbi +135 -0
  102. data/rbi/sentdm/models/payment_details.rbi +59 -0
  103. data/rbi/sentdm/models/profile_complete_response.rbi +8 -137
  104. data/rbi/sentdm/models/profile_create_params.rbi +12 -810
  105. data/rbi/sentdm/models/profile_delete_params.rbi +2 -19
  106. data/rbi/sentdm/models/profile_detail.rbi +874 -0
  107. data/rbi/sentdm/models/profile_list_response.rbi +14 -1400
  108. data/rbi/sentdm/models/profile_settings.rbi +86 -0
  109. data/rbi/sentdm/models/profile_update_params.rbi +12 -810
  110. data/rbi/sentdm/models/profiles/api_response_of_tcr_campaign_with_use_cases.rbi +83 -0
  111. data/rbi/sentdm/models/profiles/base_dto.rbi +53 -0
  112. data/rbi/sentdm/models/profiles/campaign_create_params.rbi +4 -289
  113. data/rbi/sentdm/models/profiles/campaign_data.rbi +148 -0
  114. data/rbi/sentdm/models/profiles/campaign_delete_params.rbi +1 -14
  115. data/rbi/sentdm/models/profiles/campaign_list_response.rbi +11 -733
  116. data/rbi/sentdm/models/profiles/campaign_update_params.rbi +4 -289
  117. data/rbi/sentdm/models/profiles/messaging_use_case_us.rbi +73 -0
  118. data/rbi/sentdm/models/profiles/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_campaigns_campaign_use_case_data.rbi +51 -0
  119. data/rbi/sentdm/models/profiles/tcr_campaign_with_use_cases.rbi +425 -0
  120. data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_authentication_config.rbi +56 -0
  121. data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_template_body.rbi +87 -0
  122. data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button.rbi +72 -0
  123. data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button_props.rbi +104 -0
  124. data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_template_footer.rbi +57 -0
  125. data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_template_header.rbi +59 -0
  126. data/rbi/sentdm/models/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_brands_brand_business_info.rbi +180 -0
  127. data/rbi/sentdm/models/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_brands_brand_compliance_info.rbi +95 -0
  128. data/rbi/sentdm/models/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_brands_brand_contact_info.rbi +81 -0
  129. data/rbi/sentdm/models/tcr_brand_relationship.rbi +30 -0
  130. data/rbi/sentdm/models/tcr_vertical.rbi +41 -0
  131. data/rbi/sentdm/models/template.rbi +129 -0
  132. data/rbi/sentdm/models/template_body_content.rbi +43 -0
  133. data/rbi/sentdm/models/template_create_params.rbi +4 -1701
  134. data/rbi/sentdm/models/template_definition.rbi +164 -0
  135. data/rbi/sentdm/models/template_list_response.rbi +16 -454
  136. data/rbi/sentdm/models/template_update_params.rbi +4 -1701
  137. data/rbi/sentdm/models/template_variable.rbi +120 -0
  138. data/rbi/sentdm/models/user_list_response.rbi +14 -271
  139. data/rbi/sentdm/models/user_remove_params.rbi +2 -19
  140. data/rbi/sentdm/models/user_response.rbi +118 -0
  141. data/rbi/sentdm/models/webhook_event_type.rbi +74 -0
  142. data/rbi/sentdm/models/webhook_list_event_types_response.rbi +12 -247
  143. data/rbi/sentdm/models/webhook_list_events_response.rbi +12 -314
  144. data/rbi/sentdm/models/webhook_list_response.rbi +16 -462
  145. data/rbi/sentdm/models/webhook_response.rbi +140 -0
  146. data/rbi/sentdm/models/webhook_rotate_secret_params.rbi +1 -14
  147. data/rbi/sentdm/models/webhook_rotate_secret_response.rbi +8 -148
  148. data/rbi/sentdm/models/webhook_test_response.rbi +8 -135
  149. data/rbi/sentdm/models.rbi +77 -0
  150. data/rbi/sentdm/resources/contacts.rbi +3 -3
  151. data/rbi/sentdm/resources/profiles/campaigns.rbi +4 -4
  152. data/rbi/sentdm/resources/profiles.rbi +9 -13
  153. data/rbi/sentdm/resources/templates.rbi +5 -6
  154. data/rbi/sentdm/resources/users.rbi +3 -3
  155. data/rbi/sentdm/resources/webhooks.rbi +4 -4
  156. data/sig/sentdm/models/api_meta.rbs +27 -0
  157. data/sig/sentdm/models/api_response_of_contact.rbs +39 -0
  158. data/sig/sentdm/models/api_response_of_profile_detail.rbs +39 -0
  159. data/sig/sentdm/models/api_response_of_user.rbs +39 -0
  160. data/sig/sentdm/models/api_response_template.rbs +39 -0
  161. data/sig/sentdm/models/api_response_webhook.rbs +39 -0
  162. data/sig/sentdm/models/billing_contact_info.rbs +30 -0
  163. data/sig/sentdm/models/brands_brand_data.rbs +30 -0
  164. data/sig/sentdm/models/contact_delete_params.rbs +6 -10
  165. data/sig/sentdm/models/contact_list_response.rbs +20 -256
  166. data/sig/sentdm/models/contact_response.rbs +111 -0
  167. data/sig/sentdm/models/destination_country.rbs +19 -0
  168. data/sig/sentdm/models/error_detail.rbs +39 -0
  169. data/sig/sentdm/models/me_retrieve_response.rbs +18 -176
  170. data/sig/sentdm/models/message_retrieve_activities_response.rbs +9 -71
  171. data/sig/sentdm/models/message_retrieve_status_response.rbs +9 -71
  172. data/sig/sentdm/models/message_send_response.rbs +9 -71
  173. data/sig/sentdm/models/mutation_request.rbs +15 -0
  174. data/sig/sentdm/models/number_lookup_response.rbs +9 -71
  175. data/sig/sentdm/models/pagination_meta.rbs +67 -0
  176. data/sig/sentdm/models/payment_details.rbs +30 -0
  177. data/sig/sentdm/models/profile_complete_response.rbs +9 -71
  178. data/sig/sentdm/models/profile_create_params.rbs +12 -363
  179. data/sig/sentdm/models/profile_delete_params.rbs +6 -10
  180. data/sig/sentdm/models/profile_detail.rbs +474 -0
  181. data/sig/sentdm/models/profile_list_response.rbs +15 -645
  182. data/sig/sentdm/models/profile_settings.rbs +50 -0
  183. data/sig/sentdm/models/profile_update_params.rbs +12 -363
  184. data/sig/sentdm/models/profiles/api_response_of_tcr_campaign_with_use_cases.rbs +41 -0
  185. data/sig/sentdm/models/profiles/base_dto.rbs +27 -0
  186. data/sig/sentdm/models/profiles/campaign_create_params.rbs +4 -138
  187. data/sig/sentdm/models/profiles/campaign_data.rbs +82 -0
  188. data/sig/sentdm/models/profiles/campaign_delete_params.rbs +8 -15
  189. data/sig/sentdm/models/profiles/campaign_list_response.rbs +13 -396
  190. data/sig/sentdm/models/profiles/campaign_update_params.rbs +4 -138
  191. data/sig/sentdm/models/profiles/messaging_use_case_us.rbs +40 -0
  192. data/sig/sentdm/models/profiles/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_campaigns_campaign_use_case_data.rbs +27 -0
  193. data/sig/sentdm/models/profiles/tcr_campaign_with_use_cases.rbs +299 -0
  194. data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_authentication_config.rbs +24 -0
  195. data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_template_body.rbs +35 -0
  196. data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button.rbs +32 -0
  197. data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button_props.rbs +75 -0
  198. data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_template_footer.rbs +30 -0
  199. data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_template_header.rbs +30 -0
  200. data/sig/sentdm/models/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_brands_brand_business_info.rbs +89 -0
  201. data/sig/sentdm/models/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_brands_brand_compliance_info.rbs +55 -0
  202. data/sig/sentdm/models/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_brands_brand_contact_info.rbs +45 -0
  203. data/sig/sentdm/models/tcr_brand_relationship.rbs +22 -0
  204. data/sig/sentdm/models/tcr_vertical.rbs +58 -0
  205. data/sig/sentdm/models/template.rbs +79 -0
  206. data/sig/sentdm/models/template_body_content.rbs +30 -0
  207. data/sig/sentdm/models/template_create_params.rbs +6 -853
  208. data/sig/sentdm/models/template_definition.rbs +45 -0
  209. data/sig/sentdm/models/template_list_response.rbs +19 -225
  210. data/sig/sentdm/models/template_update_params.rbs +4 -851
  211. data/sig/sentdm/models/template_variable.rbs +84 -0
  212. data/sig/sentdm/models/user_list_response.rbs +15 -151
  213. data/sig/sentdm/models/user_remove_params.rbs +6 -10
  214. data/sig/sentdm/models/user_response.rbs +72 -0
  215. data/sig/sentdm/models/webhook_event_type.rbs +51 -0
  216. data/sig/sentdm/models/webhook_list_event_types_response.rbs +15 -130
  217. data/sig/sentdm/models/webhook_list_events_response.rbs +14 -142
  218. data/sig/sentdm/models/webhook_list_response.rbs +20 -248
  219. data/sig/sentdm/models/webhook_response.rbs +103 -0
  220. data/sig/sentdm/models/webhook_rotate_secret_params.rbs +8 -17
  221. data/sig/sentdm/models/webhook_rotate_secret_response.rbs +9 -71
  222. data/sig/sentdm/models/webhook_test_response.rbs +9 -71
  223. data/sig/sentdm/models.rbs +68 -0
  224. data/sig/sentdm/resources/contacts.rbs +3 -3
  225. data/sig/sentdm/resources/profiles/campaigns.rbs +4 -4
  226. data/sig/sentdm/resources/profiles.rbs +9 -9
  227. data/sig/sentdm/resources/templates.rbs +5 -5
  228. data/sig/sentdm/resources/users.rbs +3 -3
  229. data/sig/sentdm/resources/webhooks.rbs +4 -4
  230. metadata +121 -55
  231. data/lib/sentdm/models/contact_create_response.rb +0 -236
  232. data/lib/sentdm/models/contact_retrieve_response.rb +0 -236
  233. data/lib/sentdm/models/contact_update_response.rb +0 -236
  234. data/lib/sentdm/models/profile_create_response.rb +0 -781
  235. data/lib/sentdm/models/profile_retrieve_response.rb +0 -783
  236. data/lib/sentdm/models/profile_update_response.rb +0 -781
  237. data/lib/sentdm/models/profiles/campaign_create_response.rb +0 -459
  238. data/lib/sentdm/models/profiles/campaign_update_response.rb +0 -459
  239. data/lib/sentdm/models/template_create_response.rb +0 -197
  240. data/lib/sentdm/models/template_retrieve_response.rb +0 -197
  241. data/lib/sentdm/models/template_update_response.rb +0 -197
  242. data/lib/sentdm/models/user_invite_response.rb +0 -189
  243. data/lib/sentdm/models/user_retrieve_response.rb +0 -189
  244. data/lib/sentdm/models/user_update_role_response.rb +0 -189
  245. data/lib/sentdm/models/webhook_create_response.rb +0 -204
  246. data/lib/sentdm/models/webhook_retrieve_response.rb +0 -204
  247. data/lib/sentdm/models/webhook_toggle_status_response.rb +0 -204
  248. data/lib/sentdm/models/webhook_update_response.rb +0 -204
  249. data/rbi/sentdm/models/contact_create_response.rbi +0 -390
  250. data/rbi/sentdm/models/contact_retrieve_response.rbi +0 -392
  251. data/rbi/sentdm/models/contact_update_response.rbi +0 -390
  252. data/rbi/sentdm/models/profile_create_response.rbi +0 -1439
  253. data/rbi/sentdm/models/profile_retrieve_response.rbi +0 -1443
  254. data/rbi/sentdm/models/profile_update_response.rbi +0 -1439
  255. data/rbi/sentdm/models/profiles/campaign_create_response.rbi +0 -814
  256. data/rbi/sentdm/models/profiles/campaign_update_response.rbi +0 -814
  257. data/rbi/sentdm/models/template_create_response.rbi +0 -339
  258. data/rbi/sentdm/models/template_retrieve_response.rbi +0 -345
  259. data/rbi/sentdm/models/template_update_response.rbi +0 -339
  260. data/rbi/sentdm/models/user_invite_response.rbi +0 -323
  261. data/rbi/sentdm/models/user_retrieve_response.rbi +0 -323
  262. data/rbi/sentdm/models/user_update_role_response.rbi +0 -328
  263. data/rbi/sentdm/models/webhook_create_response.rbi +0 -348
  264. data/rbi/sentdm/models/webhook_retrieve_response.rbi +0 -350
  265. data/rbi/sentdm/models/webhook_toggle_status_response.rbi +0 -366
  266. data/rbi/sentdm/models/webhook_update_response.rbi +0 -348
  267. data/sig/sentdm/models/contact_create_response.rbs +0 -209
  268. data/sig/sentdm/models/contact_retrieve_response.rbs +0 -209
  269. data/sig/sentdm/models/contact_update_response.rbs +0 -209
  270. data/sig/sentdm/models/profile_create_response.rbs +0 -662
  271. data/sig/sentdm/models/profile_retrieve_response.rbs +0 -662
  272. data/sig/sentdm/models/profile_update_response.rbs +0 -662
  273. data/sig/sentdm/models/profiles/campaign_create_response.rbs +0 -424
  274. data/sig/sentdm/models/profiles/campaign_update_response.rbs +0 -424
  275. data/sig/sentdm/models/template_create_response.rbs +0 -177
  276. data/sig/sentdm/models/template_retrieve_response.rbs +0 -177
  277. data/sig/sentdm/models/template_update_response.rbs +0 -177
  278. data/sig/sentdm/models/user_invite_response.rbs +0 -170
  279. data/sig/sentdm/models/user_retrieve_response.rbs +0 -170
  280. data/sig/sentdm/models/user_update_role_response.rbs +0 -170
  281. data/sig/sentdm/models/webhook_create_response.rbs +0 -201
  282. data/sig/sentdm/models/webhook_retrieve_response.rbs +0 -201
  283. data/sig/sentdm/models/webhook_toggle_status_response.rbs +0 -201
  284. data/sig/sentdm/models/webhook_update_response.rbs +0 -201
@@ -1,392 +0,0 @@
1
- # typed: strong
2
-
3
- module Sentdm
4
- module Models
5
- class ContactRetrieveResponse < Sentdm::Internal::Type::BaseModel
6
- OrHash =
7
- T.type_alias do
8
- T.any(
9
- Sentdm::Models::ContactRetrieveResponse,
10
- Sentdm::Internal::AnyHash
11
- )
12
- end
13
-
14
- # Contact response for v3 API Uses snake_case for JSON property names
15
- sig { returns(T.nilable(Sentdm::Models::ContactRetrieveResponse::Data)) }
16
- attr_reader :data
17
-
18
- sig do
19
- params(
20
- data: T.nilable(Sentdm::Models::ContactRetrieveResponse::Data::OrHash)
21
- ).void
22
- end
23
- attr_writer :data
24
-
25
- # Error information
26
- sig { returns(T.nilable(Sentdm::Models::ContactRetrieveResponse::Error)) }
27
- attr_reader :error
28
-
29
- sig do
30
- params(
31
- error:
32
- T.nilable(Sentdm::Models::ContactRetrieveResponse::Error::OrHash)
33
- ).void
34
- end
35
- attr_writer :error
36
-
37
- # Request and response metadata
38
- sig { returns(T.nilable(Sentdm::Models::ContactRetrieveResponse::Meta)) }
39
- attr_reader :meta
40
-
41
- sig do
42
- params(meta: Sentdm::Models::ContactRetrieveResponse::Meta::OrHash).void
43
- end
44
- attr_writer :meta
45
-
46
- # Indicates whether the request was successful
47
- sig { returns(T.nilable(T::Boolean)) }
48
- attr_reader :success
49
-
50
- sig { params(success: T::Boolean).void }
51
- attr_writer :success
52
-
53
- # Standard API response envelope for all v3 endpoints
54
- sig do
55
- params(
56
- data:
57
- T.nilable(Sentdm::Models::ContactRetrieveResponse::Data::OrHash),
58
- error:
59
- T.nilable(Sentdm::Models::ContactRetrieveResponse::Error::OrHash),
60
- meta: Sentdm::Models::ContactRetrieveResponse::Meta::OrHash,
61
- success: T::Boolean
62
- ).returns(T.attached_class)
63
- end
64
- def self.new(
65
- # Contact response for v3 API Uses snake_case for JSON property names
66
- data: nil,
67
- # Error information
68
- error: nil,
69
- # Request and response metadata
70
- meta: nil,
71
- # Indicates whether the request was successful
72
- success: nil
73
- )
74
- end
75
-
76
- sig do
77
- override.returns(
78
- {
79
- data: T.nilable(Sentdm::Models::ContactRetrieveResponse::Data),
80
- error: T.nilable(Sentdm::Models::ContactRetrieveResponse::Error),
81
- meta: Sentdm::Models::ContactRetrieveResponse::Meta,
82
- success: T::Boolean
83
- }
84
- )
85
- end
86
- def to_hash
87
- end
88
-
89
- class Data < Sentdm::Internal::Type::BaseModel
90
- OrHash =
91
- T.type_alias do
92
- T.any(
93
- Sentdm::Models::ContactRetrieveResponse::Data,
94
- Sentdm::Internal::AnyHash
95
- )
96
- end
97
-
98
- # Unique identifier for the contact
99
- sig { returns(T.nilable(String)) }
100
- attr_reader :id
101
-
102
- sig { params(id: String).void }
103
- attr_writer :id
104
-
105
- # Comma-separated list of available messaging channels (e.g., "sms,whatsapp")
106
- sig { returns(T.nilable(String)) }
107
- attr_reader :available_channels
108
-
109
- sig { params(available_channels: String).void }
110
- attr_writer :available_channels
111
-
112
- # Country calling code (e.g., 1 for US/Canada)
113
- sig { returns(T.nilable(String)) }
114
- attr_reader :country_code
115
-
116
- sig { params(country_code: String).void }
117
- attr_writer :country_code
118
-
119
- # When the contact was created
120
- sig { returns(T.nilable(Time)) }
121
- attr_reader :created_at
122
-
123
- sig { params(created_at: Time).void }
124
- attr_writer :created_at
125
-
126
- # Default messaging channel to use (e.g., "sms" or "whatsapp")
127
- sig { returns(T.nilable(String)) }
128
- attr_reader :default_channel
129
-
130
- sig { params(default_channel: String).void }
131
- attr_writer :default_channel
132
-
133
- # Phone number in E.164 format (e.g., +1234567890)
134
- sig { returns(T.nilable(String)) }
135
- attr_reader :format_e164
136
-
137
- sig { params(format_e164: String).void }
138
- attr_writer :format_e164
139
-
140
- # Phone number in international format (e.g., +1 234-567-890)
141
- sig { returns(T.nilable(String)) }
142
- attr_reader :format_international
143
-
144
- sig { params(format_international: String).void }
145
- attr_writer :format_international
146
-
147
- # Phone number in national format (e.g., (234) 567-890)
148
- sig { returns(T.nilable(String)) }
149
- attr_reader :format_national
150
-
151
- sig { params(format_national: String).void }
152
- attr_writer :format_national
153
-
154
- # Phone number in RFC 3966 format (e.g., tel:+1-234-567-890)
155
- sig { returns(T.nilable(String)) }
156
- attr_reader :format_rfc
157
-
158
- sig { params(format_rfc: String).void }
159
- attr_writer :format_rfc
160
-
161
- # Whether this is an inherited contact (read-only)
162
- sig { returns(T.nilable(T::Boolean)) }
163
- attr_reader :is_inherited
164
-
165
- sig { params(is_inherited: T::Boolean).void }
166
- attr_writer :is_inherited
167
-
168
- # Whether the contact has opted out of messaging. Single source of truth — opt-out
169
- # is per-contact, not per-channel.
170
- sig { returns(T.nilable(T::Boolean)) }
171
- attr_reader :opt_out
172
-
173
- sig { params(opt_out: T::Boolean).void }
174
- attr_writer :opt_out
175
-
176
- # Phone number in original format
177
- sig { returns(T.nilable(String)) }
178
- attr_reader :phone_number
179
-
180
- sig { params(phone_number: String).void }
181
- attr_writer :phone_number
182
-
183
- # ISO 3166-1 alpha-2 country code (e.g., US, CA, GB)
184
- sig { returns(T.nilable(String)) }
185
- attr_reader :region_code
186
-
187
- sig { params(region_code: String).void }
188
- attr_writer :region_code
189
-
190
- # When the contact was last updated
191
- sig { returns(T.nilable(Time)) }
192
- attr_accessor :updated_at
193
-
194
- # Contact response for v3 API Uses snake_case for JSON property names
195
- sig do
196
- params(
197
- id: String,
198
- available_channels: String,
199
- country_code: String,
200
- created_at: Time,
201
- default_channel: String,
202
- format_e164: String,
203
- format_international: String,
204
- format_national: String,
205
- format_rfc: String,
206
- is_inherited: T::Boolean,
207
- opt_out: T::Boolean,
208
- phone_number: String,
209
- region_code: String,
210
- updated_at: T.nilable(Time)
211
- ).returns(T.attached_class)
212
- end
213
- def self.new(
214
- # Unique identifier for the contact
215
- id: nil,
216
- # Comma-separated list of available messaging channels (e.g., "sms,whatsapp")
217
- available_channels: nil,
218
- # Country calling code (e.g., 1 for US/Canada)
219
- country_code: nil,
220
- # When the contact was created
221
- created_at: nil,
222
- # Default messaging channel to use (e.g., "sms" or "whatsapp")
223
- default_channel: nil,
224
- # Phone number in E.164 format (e.g., +1234567890)
225
- format_e164: nil,
226
- # Phone number in international format (e.g., +1 234-567-890)
227
- format_international: nil,
228
- # Phone number in national format (e.g., (234) 567-890)
229
- format_national: nil,
230
- # Phone number in RFC 3966 format (e.g., tel:+1-234-567-890)
231
- format_rfc: nil,
232
- # Whether this is an inherited contact (read-only)
233
- is_inherited: nil,
234
- # Whether the contact has opted out of messaging. Single source of truth — opt-out
235
- # is per-contact, not per-channel.
236
- opt_out: nil,
237
- # Phone number in original format
238
- phone_number: nil,
239
- # ISO 3166-1 alpha-2 country code (e.g., US, CA, GB)
240
- region_code: nil,
241
- # When the contact was last updated
242
- updated_at: nil
243
- )
244
- end
245
-
246
- sig do
247
- override.returns(
248
- {
249
- id: String,
250
- available_channels: String,
251
- country_code: String,
252
- created_at: Time,
253
- default_channel: String,
254
- format_e164: String,
255
- format_international: String,
256
- format_national: String,
257
- format_rfc: String,
258
- is_inherited: T::Boolean,
259
- opt_out: T::Boolean,
260
- phone_number: String,
261
- region_code: String,
262
- updated_at: T.nilable(Time)
263
- }
264
- )
265
- end
266
- def to_hash
267
- end
268
- end
269
-
270
- class Error < Sentdm::Internal::Type::BaseModel
271
- OrHash =
272
- T.type_alias do
273
- T.any(
274
- Sentdm::Models::ContactRetrieveResponse::Error,
275
- Sentdm::Internal::AnyHash
276
- )
277
- end
278
-
279
- # Machine-readable error code (e.g., "RESOURCE_001")
280
- sig { returns(T.nilable(String)) }
281
- attr_reader :code
282
-
283
- sig { params(code: String).void }
284
- attr_writer :code
285
-
286
- # Additional validation error details (field-level errors)
287
- sig { returns(T.nilable(T::Hash[Symbol, T::Array[String]])) }
288
- attr_accessor :details
289
-
290
- # URL to documentation about this error
291
- sig { returns(T.nilable(String)) }
292
- attr_accessor :doc_url
293
-
294
- # Human-readable error message
295
- sig { returns(T.nilable(String)) }
296
- attr_reader :message
297
-
298
- sig { params(message: String).void }
299
- attr_writer :message
300
-
301
- # Error information
302
- sig do
303
- params(
304
- code: String,
305
- details: T.nilable(T::Hash[Symbol, T::Array[String]]),
306
- doc_url: T.nilable(String),
307
- message: String
308
- ).returns(T.attached_class)
309
- end
310
- def self.new(
311
- # Machine-readable error code (e.g., "RESOURCE_001")
312
- code: nil,
313
- # Additional validation error details (field-level errors)
314
- details: nil,
315
- # URL to documentation about this error
316
- doc_url: nil,
317
- # Human-readable error message
318
- message: nil
319
- )
320
- end
321
-
322
- sig do
323
- override.returns(
324
- {
325
- code: String,
326
- details: T.nilable(T::Hash[Symbol, T::Array[String]]),
327
- doc_url: T.nilable(String),
328
- message: String
329
- }
330
- )
331
- end
332
- def to_hash
333
- end
334
- end
335
-
336
- class Meta < Sentdm::Internal::Type::BaseModel
337
- OrHash =
338
- T.type_alias do
339
- T.any(
340
- Sentdm::Models::ContactRetrieveResponse::Meta,
341
- Sentdm::Internal::AnyHash
342
- )
343
- end
344
-
345
- # Unique identifier for this request (for tracing and support)
346
- sig { returns(T.nilable(String)) }
347
- attr_reader :request_id
348
-
349
- sig { params(request_id: String).void }
350
- attr_writer :request_id
351
-
352
- # Server timestamp when the response was generated
353
- sig { returns(T.nilable(Time)) }
354
- attr_reader :timestamp
355
-
356
- sig { params(timestamp: Time).void }
357
- attr_writer :timestamp
358
-
359
- # API version used for this request
360
- sig { returns(T.nilable(String)) }
361
- attr_reader :version
362
-
363
- sig { params(version: String).void }
364
- attr_writer :version
365
-
366
- # Request and response metadata
367
- sig do
368
- params(request_id: String, timestamp: Time, version: String).returns(
369
- T.attached_class
370
- )
371
- end
372
- def self.new(
373
- # Unique identifier for this request (for tracing and support)
374
- request_id: nil,
375
- # Server timestamp when the response was generated
376
- timestamp: nil,
377
- # API version used for this request
378
- version: nil
379
- )
380
- end
381
-
382
- sig do
383
- override.returns(
384
- { request_id: String, timestamp: Time, version: String }
385
- )
386
- end
387
- def to_hash
388
- end
389
- end
390
- end
391
- end
392
- end