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,390 +0,0 @@
1
- # typed: strong
2
-
3
- module Sentdm
4
- module Models
5
- class ContactCreateResponse < Sentdm::Internal::Type::BaseModel
6
- OrHash =
7
- T.type_alias do
8
- T.any(
9
- Sentdm::Models::ContactCreateResponse,
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::ContactCreateResponse::Data)) }
16
- attr_reader :data
17
-
18
- sig do
19
- params(
20
- data: T.nilable(Sentdm::Models::ContactCreateResponse::Data::OrHash)
21
- ).void
22
- end
23
- attr_writer :data
24
-
25
- # Error information
26
- sig { returns(T.nilable(Sentdm::Models::ContactCreateResponse::Error)) }
27
- attr_reader :error
28
-
29
- sig do
30
- params(
31
- error: T.nilable(Sentdm::Models::ContactCreateResponse::Error::OrHash)
32
- ).void
33
- end
34
- attr_writer :error
35
-
36
- # Request and response metadata
37
- sig { returns(T.nilable(Sentdm::Models::ContactCreateResponse::Meta)) }
38
- attr_reader :meta
39
-
40
- sig do
41
- params(meta: Sentdm::Models::ContactCreateResponse::Meta::OrHash).void
42
- end
43
- attr_writer :meta
44
-
45
- # Indicates whether the request was successful
46
- sig { returns(T.nilable(T::Boolean)) }
47
- attr_reader :success
48
-
49
- sig { params(success: T::Boolean).void }
50
- attr_writer :success
51
-
52
- # Standard API response envelope for all v3 endpoints
53
- sig do
54
- params(
55
- data: T.nilable(Sentdm::Models::ContactCreateResponse::Data::OrHash),
56
- error:
57
- T.nilable(Sentdm::Models::ContactCreateResponse::Error::OrHash),
58
- meta: Sentdm::Models::ContactCreateResponse::Meta::OrHash,
59
- success: T::Boolean
60
- ).returns(T.attached_class)
61
- end
62
- def self.new(
63
- # Contact response for v3 API Uses snake_case for JSON property names
64
- data: nil,
65
- # Error information
66
- error: nil,
67
- # Request and response metadata
68
- meta: nil,
69
- # Indicates whether the request was successful
70
- success: nil
71
- )
72
- end
73
-
74
- sig do
75
- override.returns(
76
- {
77
- data: T.nilable(Sentdm::Models::ContactCreateResponse::Data),
78
- error: T.nilable(Sentdm::Models::ContactCreateResponse::Error),
79
- meta: Sentdm::Models::ContactCreateResponse::Meta,
80
- success: T::Boolean
81
- }
82
- )
83
- end
84
- def to_hash
85
- end
86
-
87
- class Data < Sentdm::Internal::Type::BaseModel
88
- OrHash =
89
- T.type_alias do
90
- T.any(
91
- Sentdm::Models::ContactCreateResponse::Data,
92
- Sentdm::Internal::AnyHash
93
- )
94
- end
95
-
96
- # Unique identifier for the contact
97
- sig { returns(T.nilable(String)) }
98
- attr_reader :id
99
-
100
- sig { params(id: String).void }
101
- attr_writer :id
102
-
103
- # Comma-separated list of available messaging channels (e.g., "sms,whatsapp")
104
- sig { returns(T.nilable(String)) }
105
- attr_reader :available_channels
106
-
107
- sig { params(available_channels: String).void }
108
- attr_writer :available_channels
109
-
110
- # Country calling code (e.g., 1 for US/Canada)
111
- sig { returns(T.nilable(String)) }
112
- attr_reader :country_code
113
-
114
- sig { params(country_code: String).void }
115
- attr_writer :country_code
116
-
117
- # When the contact was created
118
- sig { returns(T.nilable(Time)) }
119
- attr_reader :created_at
120
-
121
- sig { params(created_at: Time).void }
122
- attr_writer :created_at
123
-
124
- # Default messaging channel to use (e.g., "sms" or "whatsapp")
125
- sig { returns(T.nilable(String)) }
126
- attr_reader :default_channel
127
-
128
- sig { params(default_channel: String).void }
129
- attr_writer :default_channel
130
-
131
- # Phone number in E.164 format (e.g., +1234567890)
132
- sig { returns(T.nilable(String)) }
133
- attr_reader :format_e164
134
-
135
- sig { params(format_e164: String).void }
136
- attr_writer :format_e164
137
-
138
- # Phone number in international format (e.g., +1 234-567-890)
139
- sig { returns(T.nilable(String)) }
140
- attr_reader :format_international
141
-
142
- sig { params(format_international: String).void }
143
- attr_writer :format_international
144
-
145
- # Phone number in national format (e.g., (234) 567-890)
146
- sig { returns(T.nilable(String)) }
147
- attr_reader :format_national
148
-
149
- sig { params(format_national: String).void }
150
- attr_writer :format_national
151
-
152
- # Phone number in RFC 3966 format (e.g., tel:+1-234-567-890)
153
- sig { returns(T.nilable(String)) }
154
- attr_reader :format_rfc
155
-
156
- sig { params(format_rfc: String).void }
157
- attr_writer :format_rfc
158
-
159
- # Whether this is an inherited contact (read-only)
160
- sig { returns(T.nilable(T::Boolean)) }
161
- attr_reader :is_inherited
162
-
163
- sig { params(is_inherited: T::Boolean).void }
164
- attr_writer :is_inherited
165
-
166
- # Whether the contact has opted out of messaging. Single source of truth — opt-out
167
- # is per-contact, not per-channel.
168
- sig { returns(T.nilable(T::Boolean)) }
169
- attr_reader :opt_out
170
-
171
- sig { params(opt_out: T::Boolean).void }
172
- attr_writer :opt_out
173
-
174
- # Phone number in original format
175
- sig { returns(T.nilable(String)) }
176
- attr_reader :phone_number
177
-
178
- sig { params(phone_number: String).void }
179
- attr_writer :phone_number
180
-
181
- # ISO 3166-1 alpha-2 country code (e.g., US, CA, GB)
182
- sig { returns(T.nilable(String)) }
183
- attr_reader :region_code
184
-
185
- sig { params(region_code: String).void }
186
- attr_writer :region_code
187
-
188
- # When the contact was last updated
189
- sig { returns(T.nilable(Time)) }
190
- attr_accessor :updated_at
191
-
192
- # Contact response for v3 API Uses snake_case for JSON property names
193
- sig do
194
- params(
195
- id: String,
196
- available_channels: String,
197
- country_code: String,
198
- created_at: Time,
199
- default_channel: String,
200
- format_e164: String,
201
- format_international: String,
202
- format_national: String,
203
- format_rfc: String,
204
- is_inherited: T::Boolean,
205
- opt_out: T::Boolean,
206
- phone_number: String,
207
- region_code: String,
208
- updated_at: T.nilable(Time)
209
- ).returns(T.attached_class)
210
- end
211
- def self.new(
212
- # Unique identifier for the contact
213
- id: nil,
214
- # Comma-separated list of available messaging channels (e.g., "sms,whatsapp")
215
- available_channels: nil,
216
- # Country calling code (e.g., 1 for US/Canada)
217
- country_code: nil,
218
- # When the contact was created
219
- created_at: nil,
220
- # Default messaging channel to use (e.g., "sms" or "whatsapp")
221
- default_channel: nil,
222
- # Phone number in E.164 format (e.g., +1234567890)
223
- format_e164: nil,
224
- # Phone number in international format (e.g., +1 234-567-890)
225
- format_international: nil,
226
- # Phone number in national format (e.g., (234) 567-890)
227
- format_national: nil,
228
- # Phone number in RFC 3966 format (e.g., tel:+1-234-567-890)
229
- format_rfc: nil,
230
- # Whether this is an inherited contact (read-only)
231
- is_inherited: nil,
232
- # Whether the contact has opted out of messaging. Single source of truth — opt-out
233
- # is per-contact, not per-channel.
234
- opt_out: nil,
235
- # Phone number in original format
236
- phone_number: nil,
237
- # ISO 3166-1 alpha-2 country code (e.g., US, CA, GB)
238
- region_code: nil,
239
- # When the contact was last updated
240
- updated_at: nil
241
- )
242
- end
243
-
244
- sig do
245
- override.returns(
246
- {
247
- id: String,
248
- available_channels: String,
249
- country_code: String,
250
- created_at: Time,
251
- default_channel: String,
252
- format_e164: String,
253
- format_international: String,
254
- format_national: String,
255
- format_rfc: String,
256
- is_inherited: T::Boolean,
257
- opt_out: T::Boolean,
258
- phone_number: String,
259
- region_code: String,
260
- updated_at: T.nilable(Time)
261
- }
262
- )
263
- end
264
- def to_hash
265
- end
266
- end
267
-
268
- class Error < Sentdm::Internal::Type::BaseModel
269
- OrHash =
270
- T.type_alias do
271
- T.any(
272
- Sentdm::Models::ContactCreateResponse::Error,
273
- Sentdm::Internal::AnyHash
274
- )
275
- end
276
-
277
- # Machine-readable error code (e.g., "RESOURCE_001")
278
- sig { returns(T.nilable(String)) }
279
- attr_reader :code
280
-
281
- sig { params(code: String).void }
282
- attr_writer :code
283
-
284
- # Additional validation error details (field-level errors)
285
- sig { returns(T.nilable(T::Hash[Symbol, T::Array[String]])) }
286
- attr_accessor :details
287
-
288
- # URL to documentation about this error
289
- sig { returns(T.nilable(String)) }
290
- attr_accessor :doc_url
291
-
292
- # Human-readable error message
293
- sig { returns(T.nilable(String)) }
294
- attr_reader :message
295
-
296
- sig { params(message: String).void }
297
- attr_writer :message
298
-
299
- # Error information
300
- sig do
301
- params(
302
- code: String,
303
- details: T.nilable(T::Hash[Symbol, T::Array[String]]),
304
- doc_url: T.nilable(String),
305
- message: String
306
- ).returns(T.attached_class)
307
- end
308
- def self.new(
309
- # Machine-readable error code (e.g., "RESOURCE_001")
310
- code: nil,
311
- # Additional validation error details (field-level errors)
312
- details: nil,
313
- # URL to documentation about this error
314
- doc_url: nil,
315
- # Human-readable error message
316
- message: nil
317
- )
318
- end
319
-
320
- sig do
321
- override.returns(
322
- {
323
- code: String,
324
- details: T.nilable(T::Hash[Symbol, T::Array[String]]),
325
- doc_url: T.nilable(String),
326
- message: String
327
- }
328
- )
329
- end
330
- def to_hash
331
- end
332
- end
333
-
334
- class Meta < Sentdm::Internal::Type::BaseModel
335
- OrHash =
336
- T.type_alias do
337
- T.any(
338
- Sentdm::Models::ContactCreateResponse::Meta,
339
- Sentdm::Internal::AnyHash
340
- )
341
- end
342
-
343
- # Unique identifier for this request (for tracing and support)
344
- sig { returns(T.nilable(String)) }
345
- attr_reader :request_id
346
-
347
- sig { params(request_id: String).void }
348
- attr_writer :request_id
349
-
350
- # Server timestamp when the response was generated
351
- sig { returns(T.nilable(Time)) }
352
- attr_reader :timestamp
353
-
354
- sig { params(timestamp: Time).void }
355
- attr_writer :timestamp
356
-
357
- # API version used for this request
358
- sig { returns(T.nilable(String)) }
359
- attr_reader :version
360
-
361
- sig { params(version: String).void }
362
- attr_writer :version
363
-
364
- # Request and response metadata
365
- sig do
366
- params(request_id: String, timestamp: Time, version: String).returns(
367
- T.attached_class
368
- )
369
- end
370
- def self.new(
371
- # Unique identifier for this request (for tracing and support)
372
- request_id: nil,
373
- # Server timestamp when the response was generated
374
- timestamp: nil,
375
- # API version used for this request
376
- version: nil
377
- )
378
- end
379
-
380
- sig do
381
- override.returns(
382
- { request_id: String, timestamp: Time, version: String }
383
- )
384
- end
385
- def to_hash
386
- end
387
- end
388
- end
389
- end
390
- end