moonbase-sdk 0.1.0.pre.alpha.2 → 0.1.0.pre.alpha.3

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 (416) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +34 -0
  3. data/README.md +27 -59
  4. data/lib/moonbase/client.rb +41 -37
  5. data/lib/moonbase/internal/cursor_page.rb +2 -2
  6. data/lib/moonbase/internal/transport/base_client.rb +1 -1
  7. data/lib/moonbase/internal/transport/pooled_net_requester.rb +1 -9
  8. data/lib/moonbase/internal/type/array_of.rb +1 -0
  9. data/lib/moonbase/internal/type/base_model.rb +4 -9
  10. data/lib/moonbase/internal/type/converter.rb +27 -0
  11. data/lib/moonbase/internal/type/hash_of.rb +1 -0
  12. data/lib/moonbase/internal/type/union.rb +25 -23
  13. data/lib/moonbase/internal/util.rb +1 -1
  14. data/lib/moonbase/models/activity.rb +20 -1112
  15. data/lib/moonbase/models/activity_call_occurred.rb +42 -0
  16. data/lib/moonbase/models/activity_form_submitted.rb +46 -0
  17. data/lib/moonbase/models/activity_inbox_message_sent.rb +42 -0
  18. data/lib/moonbase/models/activity_item_created.rb +46 -0
  19. data/lib/moonbase/models/activity_item_mentioned.rb +63 -0
  20. data/lib/moonbase/models/activity_item_merged.rb +64 -0
  21. data/lib/moonbase/models/activity_meeting_held.rb +42 -0
  22. data/lib/moonbase/models/activity_meeting_scheduled.rb +42 -0
  23. data/lib/moonbase/models/activity_note_created.rb +62 -0
  24. data/lib/moonbase/models/activity_program_message_bounced.rb +71 -0
  25. data/lib/moonbase/models/activity_program_message_clicked.rb +71 -0
  26. data/lib/moonbase/models/activity_program_message_complained.rb +55 -0
  27. data/lib/moonbase/models/activity_program_message_failed.rb +63 -0
  28. data/lib/moonbase/models/activity_program_message_opened.rb +54 -0
  29. data/lib/moonbase/models/activity_program_message_sent.rb +62 -0
  30. data/lib/moonbase/models/activity_program_message_shielded.rb +64 -0
  31. data/lib/moonbase/models/activity_program_message_unsubscribed.rb +63 -0
  32. data/lib/moonbase/models/address.rb +22 -52
  33. data/lib/moonbase/models/attendee.rb +19 -45
  34. data/lib/moonbase/models/boolean_field.rb +119 -0
  35. data/lib/moonbase/models/boolean_value.rb +4 -4
  36. data/lib/moonbase/models/call.rb +48 -68
  37. data/lib/moonbase/models/call_create_params.rb +115 -36
  38. data/lib/moonbase/models/call_upsert_params.rb +236 -0
  39. data/lib/moonbase/models/choice_field.rb +128 -0
  40. data/lib/moonbase/models/choice_field_option.rb +38 -0
  41. data/lib/moonbase/models/choice_value.rb +25 -0
  42. data/lib/moonbase/models/choice_value_param.rb +41 -0
  43. data/lib/moonbase/models/collection.rb +21 -41
  44. data/lib/moonbase/models/collection_pointer.rb +35 -0
  45. data/lib/moonbase/models/collection_retrieve_params.rb +2 -7
  46. data/lib/moonbase/models/collections/item_create_params.rb +24 -0
  47. data/lib/moonbase/models/collections/item_delete_params.rb +22 -0
  48. data/lib/moonbase/models/collections/item_list_params.rb +48 -0
  49. data/lib/moonbase/models/collections/item_retrieve_params.rb +22 -0
  50. data/lib/moonbase/models/collections/item_update_params.rb +70 -0
  51. data/lib/moonbase/models/collections/item_upsert_params.rb +73 -0
  52. data/lib/moonbase/models/date_field.rb +119 -0
  53. data/lib/moonbase/models/date_value.rb +4 -4
  54. data/lib/moonbase/models/datetime_field.rb +119 -0
  55. data/lib/moonbase/models/datetime_value.rb +4 -4
  56. data/lib/moonbase/models/domain_field.rb +119 -0
  57. data/lib/moonbase/models/domain_value.rb +6 -4
  58. data/lib/moonbase/models/email_field.rb +119 -0
  59. data/lib/moonbase/models/email_message.rb +81 -162
  60. data/lib/moonbase/models/email_value.rb +6 -4
  61. data/lib/moonbase/models/endpoint.rb +96 -0
  62. data/lib/moonbase/models/error.rb +5 -0
  63. data/lib/moonbase/models/field.rb +44 -277
  64. data/lib/moonbase/models/field_value.rb +5 -5
  65. data/lib/moonbase/models/field_value_param.rb +174 -0
  66. data/lib/moonbase/models/float_field.rb +119 -0
  67. data/lib/moonbase/models/float_value.rb +4 -4
  68. data/lib/moonbase/models/form.rb +18 -45
  69. data/lib/moonbase/models/form_list_params.rb +1 -19
  70. data/lib/moonbase/models/form_retrieve_params.rb +1 -22
  71. data/lib/moonbase/models/formatted_text.rb +19 -0
  72. data/lib/moonbase/models/funnel.rb +34 -0
  73. data/lib/moonbase/models/funnel_step.rb +49 -28
  74. data/lib/moonbase/models/funnel_step_value.rb +25 -0
  75. data/lib/moonbase/models/funnel_step_value_param.rb +41 -0
  76. data/lib/moonbase/models/geo_field.rb +119 -0
  77. data/lib/moonbase/models/geo_value.rb +10 -4
  78. data/lib/moonbase/models/inbox.rb +13 -38
  79. data/lib/moonbase/models/inbox_conversation.rb +77 -100
  80. data/lib/moonbase/models/inbox_conversation_list_params.rb +48 -10
  81. data/lib/moonbase/models/inbox_conversation_retrieve_params.rb +6 -7
  82. data/lib/moonbase/models/inbox_list_params.rb +17 -1
  83. data/lib/moonbase/models/inbox_message_list_params.rb +43 -14
  84. data/lib/moonbase/models/integer_field.rb +120 -0
  85. data/lib/moonbase/models/integer_value.rb +4 -4
  86. data/lib/moonbase/models/item.rb +4 -32
  87. data/lib/moonbase/models/item_pointer.rb +35 -0
  88. data/lib/moonbase/models/meeting.rb +40 -74
  89. data/lib/moonbase/models/monetary_field.rb +119 -0
  90. data/lib/moonbase/models/monetary_value.rb +29 -19
  91. data/lib/moonbase/models/moonbase_file.rb +25 -44
  92. data/lib/moonbase/models/multi_line_text_field.rb +119 -0
  93. data/lib/moonbase/models/multi_line_text_value.rb +10 -4
  94. data/lib/moonbase/models/note.rb +18 -37
  95. data/lib/moonbase/models/organizer.rb +19 -42
  96. data/lib/moonbase/models/percentage_field.rb +119 -0
  97. data/lib/moonbase/models/percentage_value.rb +10 -4
  98. data/lib/moonbase/models/pointer.rb +26 -0
  99. data/lib/moonbase/models/program.rb +56 -77
  100. data/lib/moonbase/models/{program_message_create_response.rb → program_message.rb} +9 -28
  101. data/lib/moonbase/models/{program_message_create_params.rb → program_message_send_params.rb} +5 -5
  102. data/lib/moonbase/models/program_template.rb +16 -41
  103. data/lib/moonbase/models/program_template_retrieve_params.rb +1 -3
  104. data/lib/moonbase/models/relation_field.rb +143 -0
  105. data/lib/moonbase/models/relation_value.rb +6 -10
  106. data/lib/moonbase/models/relation_value_param.rb +41 -0
  107. data/lib/moonbase/models/single_line_text_field.rb +119 -0
  108. data/lib/moonbase/models/single_line_text_value.rb +10 -4
  109. data/lib/moonbase/models/social_linked_in_field.rb +119 -0
  110. data/lib/moonbase/models/social_linked_in_value.rb +26 -15
  111. data/lib/moonbase/models/social_x_field.rb +119 -0
  112. data/lib/moonbase/models/social_x_value.rb +32 -15
  113. data/lib/moonbase/models/stage_field.rb +127 -0
  114. data/lib/moonbase/models/subscription.rb +61 -0
  115. data/lib/moonbase/models/tagset.rb +19 -38
  116. data/lib/moonbase/models/telephone_number.rb +10 -4
  117. data/lib/moonbase/models/telephone_number_field.rb +119 -0
  118. data/lib/moonbase/models/url_field.rb +119 -0
  119. data/lib/moonbase/models/url_value.rb +13 -6
  120. data/lib/moonbase/models/value.rb +5 -5
  121. data/lib/moonbase/models/value_param.rb +170 -0
  122. data/lib/moonbase/models/view.rb +25 -39
  123. data/lib/moonbase/models/webhook_endpoint_create_params.rb +96 -0
  124. data/lib/moonbase/models/{item_delete_params.rb → webhook_endpoint_delete_params.rb} +2 -2
  125. data/lib/moonbase/models/webhook_endpoint_list_params.rb +46 -0
  126. data/lib/moonbase/models/{item_retrieve_params.rb → webhook_endpoint_retrieve_params.rb} +2 -2
  127. data/lib/moonbase/models/webhook_endpoint_update_params.rb +104 -0
  128. data/lib/moonbase/models.rb +115 -11
  129. data/lib/moonbase/resources/activities.rb +2 -2
  130. data/lib/moonbase/resources/calls.rb +51 -5
  131. data/lib/moonbase/resources/collections/fields.rb +1 -1
  132. data/lib/moonbase/resources/collections/items.rb +202 -0
  133. data/lib/moonbase/resources/collections.rb +5 -4
  134. data/lib/moonbase/resources/forms.rb +3 -12
  135. data/lib/moonbase/resources/funnels.rb +14 -0
  136. data/lib/moonbase/resources/inbox_conversations.rb +4 -4
  137. data/lib/moonbase/resources/inbox_messages.rb +2 -4
  138. data/lib/moonbase/resources/inboxes.rb +4 -2
  139. data/lib/moonbase/resources/program_messages.rb +7 -7
  140. data/lib/moonbase/resources/webhook_endpoints.rb +138 -0
  141. data/lib/moonbase/version.rb +1 -1
  142. data/lib/moonbase.rb +68 -9
  143. data/rbi/moonbase/client.rbi +29 -26
  144. data/rbi/moonbase/errors.rbi +2 -2
  145. data/rbi/moonbase/internal/transport/base_client.rbi +1 -1
  146. data/rbi/moonbase/internal/type/converter.rbi +54 -0
  147. data/rbi/moonbase/internal/type/union.rbi +9 -2
  148. data/rbi/moonbase/models/activity.rbi +17 -1950
  149. data/rbi/moonbase/models/activity_call_occurred.rbi +65 -0
  150. data/rbi/moonbase/models/activity_form_submitted.rbi +67 -0
  151. data/rbi/moonbase/models/activity_inbox_message_sent.rbi +65 -0
  152. data/rbi/moonbase/models/activity_item_created.rbi +67 -0
  153. data/rbi/moonbase/models/activity_item_mentioned.rbi +91 -0
  154. data/rbi/moonbase/models/activity_item_merged.rbi +93 -0
  155. data/rbi/moonbase/models/activity_meeting_held.rbi +65 -0
  156. data/rbi/moonbase/models/activity_meeting_scheduled.rbi +65 -0
  157. data/rbi/moonbase/models/activity_note_created.rbi +91 -0
  158. data/rbi/moonbase/models/activity_program_message_bounced.rbi +105 -0
  159. data/rbi/moonbase/models/activity_program_message_clicked.rbi +104 -0
  160. data/rbi/moonbase/models/activity_program_message_complained.rbi +82 -0
  161. data/rbi/moonbase/models/activity_program_message_failed.rbi +93 -0
  162. data/rbi/moonbase/models/activity_program_message_opened.rbi +81 -0
  163. data/rbi/moonbase/models/activity_program_message_sent.rbi +92 -0
  164. data/rbi/moonbase/models/activity_program_message_shielded.rbi +95 -0
  165. data/rbi/moonbase/models/activity_program_message_unsubscribed.rbi +93 -0
  166. data/rbi/moonbase/models/address.rbi +28 -79
  167. data/rbi/moonbase/models/attendee.rbi +23 -63
  168. data/rbi/moonbase/models/boolean_field.rbi +150 -0
  169. data/rbi/moonbase/models/boolean_value.rbi +4 -6
  170. data/rbi/moonbase/models/call.rbi +54 -84
  171. data/rbi/moonbase/models/call_create_params.rbi +176 -47
  172. data/rbi/moonbase/models/call_upsert_params.rbi +392 -0
  173. data/rbi/moonbase/models/choice_field.rbi +160 -0
  174. data/rbi/moonbase/models/choice_field_option.rbi +46 -0
  175. data/rbi/moonbase/models/choice_value.rbi +41 -0
  176. data/rbi/moonbase/models/choice_value_param.rbi +62 -0
  177. data/rbi/moonbase/models/collection.rbi +48 -64
  178. data/rbi/moonbase/models/collection_pointer.rbi +43 -0
  179. data/rbi/moonbase/models/collection_retrieve_params.rbi +2 -9
  180. data/rbi/moonbase/models/collections/item_create_params.rbi +198 -0
  181. data/rbi/moonbase/models/collections/item_delete_params.rbi +40 -0
  182. data/rbi/moonbase/models/collections/item_list_params.rbi +83 -0
  183. data/rbi/moonbase/models/collections/item_retrieve_params.rbi +40 -0
  184. data/rbi/moonbase/models/collections/item_update_params.rbi +323 -0
  185. data/rbi/moonbase/models/collections/item_upsert_params.rbi +477 -0
  186. data/rbi/moonbase/models/date_field.rbi +148 -0
  187. data/rbi/moonbase/models/date_value.rbi +4 -4
  188. data/rbi/moonbase/models/datetime_field.rbi +150 -0
  189. data/rbi/moonbase/models/datetime_value.rbi +4 -4
  190. data/rbi/moonbase/models/domain_field.rbi +150 -0
  191. data/rbi/moonbase/models/domain_value.rbi +9 -4
  192. data/rbi/moonbase/models/email_field.rbi +150 -0
  193. data/rbi/moonbase/models/email_message.rbi +95 -233
  194. data/rbi/moonbase/models/email_value.rbi +9 -4
  195. data/rbi/moonbase/models/endpoint.rbi +121 -0
  196. data/rbi/moonbase/models/error.rbi +4 -0
  197. data/rbi/moonbase/models/field.rbi +28 -460
  198. data/rbi/moonbase/models/field_value.rbi +3 -3
  199. data/rbi/moonbase/models/field_value_param.rbi +237 -0
  200. data/rbi/moonbase/models/float_field.rbi +150 -0
  201. data/rbi/moonbase/models/float_value.rbi +4 -4
  202. data/rbi/moonbase/models/form.rbi +21 -72
  203. data/rbi/moonbase/models/form_list_params.rbi +0 -43
  204. data/rbi/moonbase/models/form_retrieve_params.rbi +4 -55
  205. data/rbi/moonbase/models/formatted_text.rbi +32 -0
  206. data/rbi/moonbase/models/funnel.rbi +48 -0
  207. data/rbi/moonbase/models/funnel_step.rbi +60 -32
  208. data/rbi/moonbase/models/funnel_step_value.rbi +39 -0
  209. data/rbi/moonbase/models/funnel_step_value_param.rbi +57 -0
  210. data/rbi/moonbase/models/geo_field.rbi +148 -0
  211. data/rbi/moonbase/models/geo_value.rbi +11 -4
  212. data/rbi/moonbase/models/inbox.rbi +19 -61
  213. data/rbi/moonbase/models/inbox_conversation.rbi +93 -161
  214. data/rbi/moonbase/models/inbox_conversation_list_params.rbi +135 -15
  215. data/rbi/moonbase/models/inbox_conversation_retrieve_params.rbi +11 -6
  216. data/rbi/moonbase/models/inbox_list_params.rbi +28 -0
  217. data/rbi/moonbase/models/inbox_message_list_params.rbi +116 -20
  218. data/rbi/moonbase/models/integer_field.rbi +152 -0
  219. data/rbi/moonbase/models/integer_value.rbi +4 -4
  220. data/rbi/moonbase/models/item.rbi +52 -57
  221. data/rbi/moonbase/models/item_pointer.rbi +54 -0
  222. data/rbi/moonbase/models/meeting.rbi +52 -113
  223. data/rbi/moonbase/models/monetary_field.rbi +150 -0
  224. data/rbi/moonbase/models/monetary_value.rbi +34 -27
  225. data/rbi/moonbase/models/moonbase_file.rbi +23 -60
  226. data/rbi/moonbase/models/multi_line_text_field.rbi +155 -0
  227. data/rbi/moonbase/models/multi_line_text_value.rbi +11 -4
  228. data/rbi/moonbase/models/note.rbi +23 -60
  229. data/rbi/moonbase/models/organizer.rbi +23 -60
  230. data/rbi/moonbase/models/percentage_field.rbi +151 -0
  231. data/rbi/moonbase/models/percentage_value.rbi +11 -4
  232. data/rbi/moonbase/models/pointer.rbi +32 -0
  233. data/rbi/moonbase/models/program.rbi +70 -137
  234. data/rbi/moonbase/models/{program_message_create_response.rbi → program_message.rbi} +8 -49
  235. data/rbi/moonbase/models/{program_message_create_params.rbi → program_message_send_params.rbi} +7 -12
  236. data/rbi/moonbase/models/program_template.rbi +25 -64
  237. data/rbi/moonbase/models/relation_field.rbi +184 -0
  238. data/rbi/moonbase/models/relation_value.rbi +11 -11
  239. data/rbi/moonbase/models/relation_value_param.rbi +60 -0
  240. data/rbi/moonbase/models/single_line_text_field.rbi +155 -0
  241. data/rbi/moonbase/models/single_line_text_value.rbi +11 -4
  242. data/rbi/moonbase/models/social_linked_in_field.rbi +155 -0
  243. data/rbi/moonbase/models/social_linked_in_value.rbi +30 -23
  244. data/rbi/moonbase/models/social_x_field.rbi +150 -0
  245. data/rbi/moonbase/models/social_x_value.rbi +35 -23
  246. data/rbi/moonbase/models/stage_field.rbi +161 -0
  247. data/rbi/moonbase/models/subscription.rbi +155 -0
  248. data/rbi/moonbase/models/tagset.rbi +22 -62
  249. data/rbi/moonbase/models/telephone_number.rbi +11 -6
  250. data/rbi/moonbase/models/telephone_number_field.rbi +158 -0
  251. data/rbi/moonbase/models/url_field.rbi +148 -0
  252. data/rbi/moonbase/models/url_value.rbi +15 -6
  253. data/rbi/moonbase/models/value.rbi +2 -2
  254. data/rbi/moonbase/models/value_param.rbi +221 -0
  255. data/rbi/moonbase/models/view.rbi +28 -60
  256. data/rbi/moonbase/models/webhook_endpoint_create_params.rbi +269 -0
  257. data/rbi/moonbase/models/{item_retrieve_params.rbi → webhook_endpoint_delete_params.rbi} +5 -2
  258. data/rbi/moonbase/models/webhook_endpoint_list_params.rbi +81 -0
  259. data/rbi/moonbase/models/{item_delete_params.rbi → webhook_endpoint_retrieve_params.rbi} +5 -2
  260. data/rbi/moonbase/models/webhook_endpoint_update_params.rbi +294 -0
  261. data/rbi/moonbase/models.rbi +121 -11
  262. data/rbi/moonbase/resources/calls.rbi +56 -5
  263. data/rbi/moonbase/resources/collections/fields.rbi +1 -1
  264. data/rbi/moonbase/resources/collections/items.rbi +358 -0
  265. data/rbi/moonbase/resources/collections.rbi +4 -2
  266. data/rbi/moonbase/resources/forms.rbi +0 -8
  267. data/rbi/moonbase/resources/funnels.rbi +12 -0
  268. data/rbi/moonbase/resources/inbox_conversations.rbi +4 -5
  269. data/rbi/moonbase/resources/inbox_messages.rbi +2 -6
  270. data/rbi/moonbase/resources/inboxes.rbi +2 -0
  271. data/rbi/moonbase/resources/program_messages.rbi +3 -3
  272. data/rbi/moonbase/resources/webhook_endpoints.rbi +114 -0
  273. data/sig/moonbase/client.rbs +16 -14
  274. data/sig/moonbase/internal/transport/base_client.rbs +1 -1
  275. data/sig/moonbase/internal/type/converter.rbs +17 -0
  276. data/sig/moonbase/internal/type/union.rbs +2 -2
  277. data/sig/moonbase/models/activity.rbs +17 -966
  278. data/sig/moonbase/models/activity_call_occurred.rbs +35 -0
  279. data/sig/moonbase/models/activity_form_submitted.rbs +35 -0
  280. data/sig/moonbase/models/activity_inbox_message_sent.rbs +35 -0
  281. data/sig/moonbase/models/activity_item_created.rbs +35 -0
  282. data/sig/moonbase/models/activity_item_mentioned.rbs +45 -0
  283. data/sig/moonbase/models/activity_item_merged.rbs +45 -0
  284. data/sig/moonbase/models/activity_meeting_held.rbs +35 -0
  285. data/sig/moonbase/models/activity_meeting_scheduled.rbs +35 -0
  286. data/sig/moonbase/models/activity_note_created.rbs +45 -0
  287. data/sig/moonbase/models/activity_program_message_bounced.rbs +54 -0
  288. data/sig/moonbase/models/activity_program_message_clicked.rbs +54 -0
  289. data/sig/moonbase/models/activity_program_message_complained.rbs +40 -0
  290. data/sig/moonbase/models/activity_program_message_failed.rbs +47 -0
  291. data/sig/moonbase/models/activity_program_message_opened.rbs +40 -0
  292. data/sig/moonbase/models/activity_program_message_sent.rbs +47 -0
  293. data/sig/moonbase/models/activity_program_message_shielded.rbs +47 -0
  294. data/sig/moonbase/models/activity_program_message_unsubscribed.rbs +47 -0
  295. data/sig/moonbase/models/address.rbs +16 -43
  296. data/sig/moonbase/models/attendee.rbs +14 -31
  297. data/sig/moonbase/models/boolean_field.rbs +83 -0
  298. data/sig/moonbase/models/boolean_value.rbs +4 -4
  299. data/sig/moonbase/models/call.rbs +31 -70
  300. data/sig/moonbase/models/call_create_params.rbs +85 -38
  301. data/sig/moonbase/models/call_upsert_params.rbs +199 -0
  302. data/sig/moonbase/models/choice_field.rbs +88 -0
  303. data/sig/moonbase/models/choice_field_option.rbs +22 -0
  304. data/sig/moonbase/models/choice_value.rbs +22 -0
  305. data/sig/moonbase/models/choice_value_param.rbs +30 -0
  306. data/sig/moonbase/models/collection.rbs +13 -34
  307. data/sig/moonbase/models/collection_pointer.rbs +17 -0
  308. data/sig/moonbase/models/collection_retrieve_params.rbs +1 -2
  309. data/sig/moonbase/models/collections/item_create_params.rbs +26 -0
  310. data/sig/moonbase/models/collections/item_delete_params.rbs +25 -0
  311. data/sig/moonbase/models/collections/item_list_params.rbs +40 -0
  312. data/sig/moonbase/models/collections/item_retrieve_params.rbs +25 -0
  313. data/sig/moonbase/models/collections/item_update_params.rbs +74 -0
  314. data/sig/moonbase/models/collections/item_upsert_params.rbs +74 -0
  315. data/sig/moonbase/models/date_field.rbs +83 -0
  316. data/sig/moonbase/models/date_value.rbs +4 -4
  317. data/sig/moonbase/models/datetime_field.rbs +83 -0
  318. data/sig/moonbase/models/datetime_value.rbs +4 -4
  319. data/sig/moonbase/models/domain_field.rbs +83 -0
  320. data/sig/moonbase/models/domain_value.rbs +4 -4
  321. data/sig/moonbase/models/email_field.rbs +83 -0
  322. data/sig/moonbase/models/email_message.rbs +49 -131
  323. data/sig/moonbase/models/email_value.rbs +4 -4
  324. data/sig/moonbase/models/endpoint.rbs +68 -0
  325. data/sig/moonbase/models/field.rbs +24 -260
  326. data/sig/moonbase/models/field_value.rbs +2 -2
  327. data/sig/moonbase/models/field_value_param.rbs +109 -0
  328. data/sig/moonbase/models/float_field.rbs +83 -0
  329. data/sig/moonbase/models/float_value.rbs +4 -4
  330. data/sig/moonbase/models/form.rbs +15 -40
  331. data/sig/moonbase/models/form_list_params.rbs +1 -24
  332. data/sig/moonbase/models/form_retrieve_params.rbs +3 -26
  333. data/sig/moonbase/models/formatted_text.rbs +15 -0
  334. data/sig/moonbase/models/funnel.rbs +26 -0
  335. data/sig/moonbase/models/funnel_step.rbs +27 -18
  336. data/sig/moonbase/models/funnel_step_value.rbs +19 -0
  337. data/sig/moonbase/models/funnel_step_value_param.rbs +33 -0
  338. data/sig/moonbase/models/geo_field.rbs +83 -0
  339. data/sig/moonbase/models/geo_value.rbs +4 -4
  340. data/sig/moonbase/models/inbox.rbs +10 -33
  341. data/sig/moonbase/models/inbox_conversation.rbs +48 -82
  342. data/sig/moonbase/models/inbox_conversation_list_params.rbs +65 -8
  343. data/sig/moonbase/models/inbox_conversation_retrieve_params.rbs +4 -3
  344. data/sig/moonbase/models/inbox_list_params.rbs +24 -1
  345. data/sig/moonbase/models/inbox_message_list_params.rbs +61 -12
  346. data/sig/moonbase/models/integer_field.rbs +83 -0
  347. data/sig/moonbase/models/integer_value.rbs +4 -7
  348. data/sig/moonbase/models/item.rbs +4 -31
  349. data/sig/moonbase/models/item_pointer.rbs +26 -0
  350. data/sig/moonbase/models/meeting.rbs +22 -62
  351. data/sig/moonbase/models/monetary_field.rbs +83 -0
  352. data/sig/moonbase/models/monetary_value.rbs +9 -23
  353. data/sig/moonbase/models/moonbase_file.rbs +12 -28
  354. data/sig/moonbase/models/multi_line_text_field.rbs +83 -0
  355. data/sig/moonbase/models/multi_line_text_value.rbs +4 -4
  356. data/sig/moonbase/models/note.rbs +15 -36
  357. data/sig/moonbase/models/organizer.rbs +14 -31
  358. data/sig/moonbase/models/percentage_field.rbs +83 -0
  359. data/sig/moonbase/models/percentage_value.rbs +4 -8
  360. data/sig/moonbase/models/pointer.rbs +15 -0
  361. data/sig/moonbase/models/program.rbs +37 -78
  362. data/sig/moonbase/models/{program_message_create_response.rbs → program_message.rbs} +2 -17
  363. data/sig/moonbase/models/{program_message_create_params.rbs → program_message_send_params.rbs} +6 -6
  364. data/sig/moonbase/models/program_template.rbs +14 -37
  365. data/sig/moonbase/models/relation_field.rbs +99 -0
  366. data/sig/moonbase/models/relation_value.rbs +8 -4
  367. data/sig/moonbase/models/relation_value_param.rbs +33 -0
  368. data/sig/moonbase/models/single_line_text_field.rbs +83 -0
  369. data/sig/moonbase/models/single_line_text_value.rbs +4 -4
  370. data/sig/moonbase/models/social_linked_in_field.rbs +83 -0
  371. data/sig/moonbase/models/social_linked_in_value.rbs +9 -13
  372. data/sig/moonbase/models/social_x_field.rbs +83 -0
  373. data/sig/moonbase/models/social_x_value.rbs +9 -13
  374. data/sig/moonbase/models/stage_field.rbs +88 -0
  375. data/sig/moonbase/models/subscription.rbs +68 -0
  376. data/sig/moonbase/models/tagset.rbs +15 -38
  377. data/sig/moonbase/models/telephone_number.rbs +4 -11
  378. data/sig/moonbase/models/telephone_number_field.rbs +83 -0
  379. data/sig/moonbase/models/url_field.rbs +83 -0
  380. data/sig/moonbase/models/url_value.rbs +5 -5
  381. data/sig/moonbase/models/value.rbs +2 -2
  382. data/sig/moonbase/models/value_param.rbs +106 -0
  383. data/sig/moonbase/models/view.rbs +16 -33
  384. data/sig/moonbase/models/webhook_endpoint_create_params.rbs +111 -0
  385. data/sig/moonbase/models/{item_retrieve_params.rbs → webhook_endpoint_delete_params.rbs} +2 -2
  386. data/sig/moonbase/models/webhook_endpoint_list_params.rbs +38 -0
  387. data/sig/moonbase/models/{item_delete_params.rbs → webhook_endpoint_retrieve_params.rbs} +2 -2
  388. data/sig/moonbase/models/webhook_endpoint_update_params.rbs +124 -0
  389. data/sig/moonbase/models.rbs +116 -12
  390. data/sig/moonbase/resources/calls.rbs +18 -1
  391. data/sig/moonbase/resources/collections/fields.rbs +1 -1
  392. data/sig/moonbase/resources/collections/items.rbs +53 -0
  393. data/sig/moonbase/resources/collections.rbs +2 -0
  394. data/sig/moonbase/resources/forms.rbs +0 -2
  395. data/sig/moonbase/resources/funnels.rbs +7 -0
  396. data/sig/moonbase/resources/inbox_conversations.rbs +1 -1
  397. data/sig/moonbase/resources/inbox_messages.rbs +1 -2
  398. data/sig/moonbase/resources/inboxes.rbs +1 -0
  399. data/sig/moonbase/resources/program_messages.rbs +3 -3
  400. data/sig/moonbase/resources/webhook_endpoints.rbs +36 -0
  401. metadata +206 -29
  402. data/lib/moonbase/models/choice.rb +0 -46
  403. data/lib/moonbase/models/item_create_params.rb +0 -30
  404. data/lib/moonbase/models/item_update_params.rb +0 -61
  405. data/lib/moonbase/models/item_upsert_params.rb +0 -78
  406. data/lib/moonbase/resources/items.rb +0 -142
  407. data/rbi/moonbase/models/choice.rbi +0 -65
  408. data/rbi/moonbase/models/item_create_params.rbi +0 -135
  409. data/rbi/moonbase/models/item_update_params.rbi +0 -236
  410. data/rbi/moonbase/models/item_upsert_params.rbi +0 -338
  411. data/rbi/moonbase/resources/items.rbi +0 -234
  412. data/sig/moonbase/models/choice.rbs +0 -41
  413. data/sig/moonbase/models/item_create_params.rbs +0 -31
  414. data/sig/moonbase/models/item_update_params.rbs +0 -67
  415. data/sig/moonbase/models/item_upsert_params.rbs +0 -77
  416. data/sig/moonbase/resources/items.rbs +0 -40
@@ -5,7 +5,7 @@ module Moonbase
5
5
  class Calls
6
6
  # Logs a phone call.
7
7
  #
8
- # @overload create(direction:, participants:, provider:, provider_id:, start_at:, status:, answered_at: nil, end_at: nil, provider_metadata: nil, request_options: {})
8
+ # @overload create(direction:, participants:, provider:, provider_id:, provider_status:, start_at:, answered_at: nil, end_at: nil, provider_metadata: nil, recordings: nil, transcript: nil, request_options: {})
9
9
  #
10
10
  # @param direction [Symbol, Moonbase::Models::CallCreateParams::Direction] The direction of the call, either `incoming` or `outgoing`.
11
11
  #
@@ -15,16 +15,20 @@ module Moonbase
15
15
  #
16
16
  # @param provider_id [String] The unique identifier for the call from the provider's system.
17
17
  #
18
- # @param start_at [Time] The time the call started, as an RFC 3339 timestamp.
18
+ # @param provider_status [String] The status of the call.
19
19
  #
20
- # @param status [Symbol, Moonbase::Models::CallCreateParams::Status] The status of the call.
20
+ # @param start_at [Time] The time the call started, as an ISO 8601 timestamp in UTC.
21
21
  #
22
- # @param answered_at [Time] The time the call was answered, as an RFC 3339 timestamp.
22
+ # @param answered_at [Time] The time the call was answered, as an ISO 8601 timestamp in UTC.
23
23
  #
24
- # @param end_at [Time] The time the call ended, as an RFC 3339 timestamp.
24
+ # @param end_at [Time] The time the call ended, as an ISO 8601 timestamp in UTC.
25
25
  #
26
26
  # @param provider_metadata [Hash{Symbol=>Object}] A hash of additional metadata from the provider.
27
27
  #
28
+ # @param recordings [Array<Moonbase::Models::CallCreateParams::Recording>] Any recordings associated with the call.
29
+ #
30
+ # @param transcript [Moonbase::Models::CallCreateParams::Transcript] A transcript of the call.
31
+ #
28
32
  # @param request_options [Moonbase::RequestOptions, Hash{Symbol=>Object}, nil]
29
33
  #
30
34
  # @return [Moonbase::Models::Call]
@@ -35,6 +39,48 @@ module Moonbase
35
39
  @client.request(method: :post, path: "calls", body: parsed, model: Moonbase::Call, options: options)
36
40
  end
37
41
 
42
+ # Find and update an existing phone call, or create a new one.
43
+ #
44
+ # @overload upsert(direction:, participants:, provider:, provider_id:, provider_status:, start_at:, answered_at: nil, end_at: nil, provider_metadata: nil, recordings: nil, transcript: nil, request_options: {})
45
+ #
46
+ # @param direction [Symbol, Moonbase::Models::CallUpsertParams::Direction] The direction of the call, either `incoming` or `outgoing`.
47
+ #
48
+ # @param participants [Array<Moonbase::Models::CallUpsertParams::Participant>] An array of participants involved in the call.
49
+ #
50
+ # @param provider [String] The name of the phone provider that handled the call (e.g., `openphone`).
51
+ #
52
+ # @param provider_id [String] The unique identifier for the call from the provider's system.
53
+ #
54
+ # @param provider_status [String] The status of the call.
55
+ #
56
+ # @param start_at [Time] The time the call started, as an ISO 8601 timestamp in UTC.
57
+ #
58
+ # @param answered_at [Time] The time the call was answered, as an ISO 8601 timestamp in UTC.
59
+ #
60
+ # @param end_at [Time] The time the call ended, as an ISO 8601 timestamp in UTC.
61
+ #
62
+ # @param provider_metadata [Hash{Symbol=>Object}] A hash of additional metadata from the provider.
63
+ #
64
+ # @param recordings [Array<Moonbase::Models::CallUpsertParams::Recording>] Any recordings associated with the call.
65
+ #
66
+ # @param transcript [Moonbase::Models::CallUpsertParams::Transcript] A transcript of the call.
67
+ #
68
+ # @param request_options [Moonbase::RequestOptions, Hash{Symbol=>Object}, nil]
69
+ #
70
+ # @return [Moonbase::Models::Call]
71
+ #
72
+ # @see Moonbase::Models::CallUpsertParams
73
+ def upsert(params)
74
+ parsed, options = Moonbase::CallUpsertParams.dump_request(params)
75
+ @client.request(
76
+ method: :post,
77
+ path: "calls/upsert",
78
+ body: parsed,
79
+ model: Moonbase::Call,
80
+ options: options
81
+ )
82
+ end
83
+
38
84
  # @api private
39
85
  #
40
86
  # @param client [Moonbase::Client]
@@ -14,7 +14,7 @@ module Moonbase
14
14
  #
15
15
  # @param request_options [Moonbase::RequestOptions, Hash{Symbol=>Object}, nil]
16
16
  #
17
- # @return [Moonbase::Models::Field]
17
+ # @return [Moonbase::Models::SingleLineTextField, Moonbase::Models::MultiLineTextField, Moonbase::Models::IntegerField, Moonbase::Models::FloatField, Moonbase::Models::MonetaryField, Moonbase::Models::PercentageField, Moonbase::Models::BooleanField, Moonbase::Models::EmailField, Moonbase::Models::URLField, Moonbase::Models::DomainField, Moonbase::Models::SocialXField, Moonbase::Models::SocialLinkedInField, Moonbase::Models::TelephoneNumberField, Moonbase::Models::GeoField, Moonbase::Models::DateField, Moonbase::Models::DatetimeField, Moonbase::Models::ChoiceField, Moonbase::Models::StageField, Moonbase::Models::RelationField]
18
18
  #
19
19
  # @see Moonbase::Models::Collections::FieldRetrieveParams
20
20
  def retrieve(id, params)
@@ -0,0 +1,202 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Moonbase
4
+ module Resources
5
+ class Collections
6
+ class Items
7
+ # Creates a new item in a collection.
8
+ #
9
+ # @overload create(collection_id, values:, request_options: {})
10
+ #
11
+ # @param collection_id [String]
12
+ #
13
+ # @param values [Hash{Symbol=>Moonbase::Models::SingleLineTextValue, Moonbase::Models::MultiLineTextValue, Moonbase::Models::IntegerValue, Moonbase::Models::FloatValue, Moonbase::Models::MonetaryValue, Moonbase::Models::PercentageValue, Moonbase::Models::BooleanValue, Moonbase::Models::EmailValue, Moonbase::Models::URLValue, Moonbase::Models::DomainValue, Moonbase::Models::FieldValueParam::SocialXValueParam, Moonbase::Models::FieldValueParam::SocialLinkedInValueParam, Moonbase::Models::TelephoneNumber, Moonbase::Models::GeoValue, Moonbase::Models::DateValue, Moonbase::Models::DatetimeValue, Moonbase::Models::ChoiceValueParam, Moonbase::Models::FunnelStepValueParam, Moonbase::Models::RelationValueParam, Array<Moonbase::Models::SingleLineTextValue, Moonbase::Models::MultiLineTextValue, Moonbase::Models::IntegerValue, Moonbase::Models::FloatValue, Moonbase::Models::MonetaryValue, Moonbase::Models::PercentageValue, Moonbase::Models::BooleanValue, Moonbase::Models::EmailValue, Moonbase::Models::URLValue, Moonbase::Models::DomainValue, Moonbase::Models::ValueParam::ValueUriSocialX, Moonbase::Models::ValueParam::ValueUriSocialLinkedIn, Moonbase::Models::TelephoneNumber, Moonbase::Models::GeoValue, Moonbase::Models::DateValue, Moonbase::Models::DatetimeValue, Moonbase::Models::ChoiceValueParam, Moonbase::Models::FunnelStepValueParam, Moonbase::Models::RelationValueParam>, nil}] A hash where keys are the `ref` of a `Field` and values are the data to be set.
14
+ #
15
+ # @param request_options [Moonbase::RequestOptions, Hash{Symbol=>Object}, nil]
16
+ #
17
+ # @return [Moonbase::Models::Item]
18
+ #
19
+ # @see Moonbase::Models::Collections::ItemCreateParams
20
+ def create(collection_id, params)
21
+ parsed, options = Moonbase::Collections::ItemCreateParams.dump_request(params)
22
+ @client.request(
23
+ method: :post,
24
+ path: ["collections/%1$s/items", collection_id],
25
+ body: parsed,
26
+ model: Moonbase::Item,
27
+ options: options
28
+ )
29
+ end
30
+
31
+ # Retrieves the details of an existing item.
32
+ #
33
+ # @overload retrieve(id, collection_id:, request_options: {})
34
+ #
35
+ # @param id [String] The ID of the Item to retrieve.
36
+ #
37
+ # @param collection_id [String]
38
+ #
39
+ # @param request_options [Moonbase::RequestOptions, Hash{Symbol=>Object}, nil]
40
+ #
41
+ # @return [Moonbase::Models::Item]
42
+ #
43
+ # @see Moonbase::Models::Collections::ItemRetrieveParams
44
+ def retrieve(id, params)
45
+ parsed, options = Moonbase::Collections::ItemRetrieveParams.dump_request(params)
46
+ collection_id =
47
+ parsed.delete(:collection_id) do
48
+ raise ArgumentError.new("missing required path argument #{_1}")
49
+ end
50
+ @client.request(
51
+ method: :get,
52
+ path: ["collections/%1$s/items/%2$s", collection_id, id],
53
+ model: Moonbase::Item,
54
+ options: options
55
+ )
56
+ end
57
+
58
+ # Some parameter documentations has been truncated, see
59
+ # {Moonbase::Models::Collections::ItemUpdateParams} for more details.
60
+ #
61
+ # Updates an item.
62
+ #
63
+ # @overload update(id, collection_id:, values:, update_many_strategy: nil, update_one_strategy: nil, request_options: {})
64
+ #
65
+ # @param id [String] Path param: The ID of the Item to update.
66
+ #
67
+ # @param collection_id [String] Path param:
68
+ #
69
+ # @param values [Hash{Symbol=>Moonbase::Models::SingleLineTextValue, Moonbase::Models::MultiLineTextValue, Moonbase::Models::IntegerValue, Moonbase::Models::FloatValue, Moonbase::Models::MonetaryValue, Moonbase::Models::PercentageValue, Moonbase::Models::BooleanValue, Moonbase::Models::EmailValue, Moonbase::Models::URLValue, Moonbase::Models::DomainValue, Moonbase::Models::FieldValueParam::SocialXValueParam, Moonbase::Models::FieldValueParam::SocialLinkedInValueParam, Moonbase::Models::TelephoneNumber, Moonbase::Models::GeoValue, Moonbase::Models::DateValue, Moonbase::Models::DatetimeValue, Moonbase::Models::ChoiceValueParam, Moonbase::Models::FunnelStepValueParam, Moonbase::Models::RelationValueParam, Array<Moonbase::Models::SingleLineTextValue, Moonbase::Models::MultiLineTextValue, Moonbase::Models::IntegerValue, Moonbase::Models::FloatValue, Moonbase::Models::MonetaryValue, Moonbase::Models::PercentageValue, Moonbase::Models::BooleanValue, Moonbase::Models::EmailValue, Moonbase::Models::URLValue, Moonbase::Models::DomainValue, Moonbase::Models::ValueParam::ValueUriSocialX, Moonbase::Models::ValueParam::ValueUriSocialLinkedIn, Moonbase::Models::TelephoneNumber, Moonbase::Models::GeoValue, Moonbase::Models::DateValue, Moonbase::Models::DatetimeValue, Moonbase::Models::ChoiceValueParam, Moonbase::Models::FunnelStepValueParam, Moonbase::Models::RelationValueParam>, nil}] Body param: A hash where keys are the `ref` of a `Field` and values are the new
70
+ #
71
+ # @param update_many_strategy [Symbol, Moonbase::Models::Collections::ItemUpdateParams::UpdateManyStrategy] Header param: Specifies how to update fields that allow multiple values during a
72
+ #
73
+ # @param update_one_strategy [Symbol, Moonbase::Models::Collections::ItemUpdateParams::UpdateOneStrategy] Header param: Specifies how to update fields with a single (one) value during a
74
+ #
75
+ # @param request_options [Moonbase::RequestOptions, Hash{Symbol=>Object}, nil]
76
+ #
77
+ # @return [Moonbase::Models::Item]
78
+ #
79
+ # @see Moonbase::Models::Collections::ItemUpdateParams
80
+ def update(id, params)
81
+ parsed, options = Moonbase::Collections::ItemUpdateParams.dump_request(params)
82
+ collection_id =
83
+ parsed.delete(:collection_id) do
84
+ raise ArgumentError.new("missing required path argument #{_1}")
85
+ end
86
+ header_params =
87
+ {update_many_strategy: "update-many-strategy", update_one_strategy: "update-one-strategy"}
88
+ @client.request(
89
+ method: :patch,
90
+ path: ["collections/%1$s/items/%2$s", collection_id, id],
91
+ headers: parsed.slice(*header_params.keys).transform_keys(header_params),
92
+ body: parsed.except(*header_params.keys),
93
+ model: Moonbase::Item,
94
+ options: options
95
+ )
96
+ end
97
+
98
+ # Some parameter documentations has been truncated, see
99
+ # {Moonbase::Models::Collections::ItemListParams} for more details.
100
+ #
101
+ # Returns a list of items that are part of the collection.
102
+ #
103
+ # @overload list(collection_id, after: nil, before: nil, limit: nil, request_options: {})
104
+ #
105
+ # @param collection_id [String] The ID of the collection.
106
+ #
107
+ # @param after [String] When specified, returns results starting immediately after the item identified b
108
+ #
109
+ # @param before [String] When specified, returns results starting immediately before the item identified
110
+ #
111
+ # @param limit [Integer] Maximum number of items to return per page. Must be between 1 and 100. Defaults
112
+ #
113
+ # @param request_options [Moonbase::RequestOptions, Hash{Symbol=>Object}, nil]
114
+ #
115
+ # @return [Moonbase::Internal::CursorPage<Moonbase::Models::Item>]
116
+ #
117
+ # @see Moonbase::Models::Collections::ItemListParams
118
+ def list(collection_id, params = {})
119
+ parsed, options = Moonbase::Collections::ItemListParams.dump_request(params)
120
+ @client.request(
121
+ method: :get,
122
+ path: ["collections/%1$s/items", collection_id],
123
+ query: parsed,
124
+ page: Moonbase::Internal::CursorPage,
125
+ model: Moonbase::Item,
126
+ options: options
127
+ )
128
+ end
129
+
130
+ # Permanently deletes an item.
131
+ #
132
+ # @overload delete(id, collection_id:, request_options: {})
133
+ #
134
+ # @param id [String] The ID of the Item to delete.
135
+ #
136
+ # @param collection_id [String]
137
+ #
138
+ # @param request_options [Moonbase::RequestOptions, Hash{Symbol=>Object}, nil]
139
+ #
140
+ # @return [nil]
141
+ #
142
+ # @see Moonbase::Models::Collections::ItemDeleteParams
143
+ def delete(id, params)
144
+ parsed, options = Moonbase::Collections::ItemDeleteParams.dump_request(params)
145
+ collection_id =
146
+ parsed.delete(:collection_id) do
147
+ raise ArgumentError.new("missing required path argument #{_1}")
148
+ end
149
+ @client.request(
150
+ method: :delete,
151
+ path: ["collections/%1$s/items/%2$s", collection_id, id],
152
+ model: NilClass,
153
+ options: options
154
+ )
155
+ end
156
+
157
+ # Some parameter documentations has been truncated, see
158
+ # {Moonbase::Models::Collections::ItemUpsertParams} for more details.
159
+ #
160
+ # Find and update an existing item, or create a new one.
161
+ #
162
+ # @overload upsert(collection_id, identifiers:, values:, update_many_strategy: nil, update_one_strategy: nil, request_options: {})
163
+ #
164
+ # @param collection_id [String] Path param:
165
+ #
166
+ # @param identifiers [Hash{Symbol=>Moonbase::Models::SingleLineTextValue, Moonbase::Models::MultiLineTextValue, Moonbase::Models::IntegerValue, Moonbase::Models::FloatValue, Moonbase::Models::MonetaryValue, Moonbase::Models::PercentageValue, Moonbase::Models::BooleanValue, Moonbase::Models::EmailValue, Moonbase::Models::URLValue, Moonbase::Models::DomainValue, Moonbase::Models::FieldValueParam::SocialXValueParam, Moonbase::Models::FieldValueParam::SocialLinkedInValueParam, Moonbase::Models::TelephoneNumber, Moonbase::Models::GeoValue, Moonbase::Models::DateValue, Moonbase::Models::DatetimeValue, Moonbase::Models::ChoiceValueParam, Moonbase::Models::FunnelStepValueParam, Moonbase::Models::RelationValueParam, Array<Moonbase::Models::SingleLineTextValue, Moonbase::Models::MultiLineTextValue, Moonbase::Models::IntegerValue, Moonbase::Models::FloatValue, Moonbase::Models::MonetaryValue, Moonbase::Models::PercentageValue, Moonbase::Models::BooleanValue, Moonbase::Models::EmailValue, Moonbase::Models::URLValue, Moonbase::Models::DomainValue, Moonbase::Models::ValueParam::ValueUriSocialX, Moonbase::Models::ValueParam::ValueUriSocialLinkedIn, Moonbase::Models::TelephoneNumber, Moonbase::Models::GeoValue, Moonbase::Models::DateValue, Moonbase::Models::DatetimeValue, Moonbase::Models::ChoiceValueParam, Moonbase::Models::FunnelStepValueParam, Moonbase::Models::RelationValueParam>, nil}] Body param: A hash where keys are the `ref` of a `Field` and values are used to
167
+ #
168
+ # @param values [Hash{Symbol=>Moonbase::Models::SingleLineTextValue, Moonbase::Models::MultiLineTextValue, Moonbase::Models::IntegerValue, Moonbase::Models::FloatValue, Moonbase::Models::MonetaryValue, Moonbase::Models::PercentageValue, Moonbase::Models::BooleanValue, Moonbase::Models::EmailValue, Moonbase::Models::URLValue, Moonbase::Models::DomainValue, Moonbase::Models::FieldValueParam::SocialXValueParam, Moonbase::Models::FieldValueParam::SocialLinkedInValueParam, Moonbase::Models::TelephoneNumber, Moonbase::Models::GeoValue, Moonbase::Models::DateValue, Moonbase::Models::DatetimeValue, Moonbase::Models::ChoiceValueParam, Moonbase::Models::FunnelStepValueParam, Moonbase::Models::RelationValueParam, Array<Moonbase::Models::SingleLineTextValue, Moonbase::Models::MultiLineTextValue, Moonbase::Models::IntegerValue, Moonbase::Models::FloatValue, Moonbase::Models::MonetaryValue, Moonbase::Models::PercentageValue, Moonbase::Models::BooleanValue, Moonbase::Models::EmailValue, Moonbase::Models::URLValue, Moonbase::Models::DomainValue, Moonbase::Models::ValueParam::ValueUriSocialX, Moonbase::Models::ValueParam::ValueUriSocialLinkedIn, Moonbase::Models::TelephoneNumber, Moonbase::Models::GeoValue, Moonbase::Models::DateValue, Moonbase::Models::DatetimeValue, Moonbase::Models::ChoiceValueParam, Moonbase::Models::FunnelStepValueParam, Moonbase::Models::RelationValueParam>, nil}] Body param: A hash where keys are the `ref` of a `Field` and values are the data
169
+ #
170
+ # @param update_many_strategy [Symbol, Moonbase::Models::Collections::ItemUpsertParams::UpdateManyStrategy] Header param: Specifies how to update fields that allow multiple values. Use `re
171
+ #
172
+ # @param update_one_strategy [Symbol, Moonbase::Models::Collections::ItemUpsertParams::UpdateOneStrategy] Header param: Specifies how to update fields that have a single value. Use `repl
173
+ #
174
+ # @param request_options [Moonbase::RequestOptions, Hash{Symbol=>Object}, nil]
175
+ #
176
+ # @return [Moonbase::Models::Item]
177
+ #
178
+ # @see Moonbase::Models::Collections::ItemUpsertParams
179
+ def upsert(collection_id, params)
180
+ parsed, options = Moonbase::Collections::ItemUpsertParams.dump_request(params)
181
+ header_params =
182
+ {update_many_strategy: "update-many-strategy", update_one_strategy: "update-one-strategy"}
183
+ @client.request(
184
+ method: :post,
185
+ path: ["collections/%1$s/items/upsert", collection_id],
186
+ headers: parsed.slice(*header_params.keys).transform_keys(header_params),
187
+ body: parsed.except(*header_params.keys),
188
+ model: Moonbase::Item,
189
+ options: options
190
+ )
191
+ end
192
+
193
+ # @api private
194
+ #
195
+ # @param client [Moonbase::Client]
196
+ def initialize(client:)
197
+ @client = client
198
+ end
199
+ end
200
+ end
201
+ end
202
+ end
@@ -6,16 +6,16 @@ module Moonbase
6
6
  # @return [Moonbase::Resources::Collections::Fields]
7
7
  attr_reader :fields
8
8
 
9
- # Some parameter documentations has been truncated, see
10
- # {Moonbase::Models::CollectionRetrieveParams} for more details.
11
- #
9
+ # @return [Moonbase::Resources::Collections::Items]
10
+ attr_reader :items
11
+
12
12
  # Retrieves the details of an existing collection.
13
13
  #
14
14
  # @overload retrieve(id, include: nil, request_options: {})
15
15
  #
16
16
  # @param id [String] The ID or `ref` of the Collection to retrieve.
17
17
  #
18
- # @param include [Array<Symbol, Moonbase::Models::CollectionRetrieveParams::Include>] Specifies which related objects to include in the response. Valid options are `f
18
+ # @param include [Array<Symbol, Moonbase::Models::CollectionRetrieveParams::Include>] Specifies which related objects to include in the response.
19
19
  #
20
20
  # @param request_options [Moonbase::RequestOptions, Hash{Symbol=>Object}, nil]
21
21
  #
@@ -69,6 +69,7 @@ module Moonbase
69
69
  def initialize(client:)
70
70
  @client = client
71
71
  @fields = Moonbase::Resources::Collections::Fields.new(client: client)
72
+ @items = Moonbase::Resources::Collections::Items.new(client: client)
72
73
  end
73
74
  end
74
75
  end
@@ -3,30 +3,23 @@
3
3
  module Moonbase
4
4
  module Resources
5
5
  class Forms
6
- # Some parameter documentations has been truncated, see
7
- # {Moonbase::Models::FormRetrieveParams} for more details.
8
- #
9
6
  # Retrieves the details of an existing form.
10
7
  #
11
- # @overload retrieve(id, include: nil, request_options: {})
8
+ # @overload retrieve(id, request_options: {})
12
9
  #
13
10
  # @param id [String] The ID of the Form to retrieve.
14
11
  #
15
- # @param include [Array<Symbol, Moonbase::Models::FormRetrieveParams::Include>] Specifies which related objects to include in the response. Valid option is `col
16
- #
17
12
  # @param request_options [Moonbase::RequestOptions, Hash{Symbol=>Object}, nil]
18
13
  #
19
14
  # @return [Moonbase::Models::Form]
20
15
  #
21
16
  # @see Moonbase::Models::FormRetrieveParams
22
17
  def retrieve(id, params = {})
23
- parsed, options = Moonbase::FormRetrieveParams.dump_request(params)
24
18
  @client.request(
25
19
  method: :get,
26
20
  path: ["forms/%1$s", id],
27
- query: parsed,
28
21
  model: Moonbase::Form,
29
- options: options
22
+ options: params[:request_options]
30
23
  )
31
24
  end
32
25
 
@@ -35,14 +28,12 @@ module Moonbase
35
28
  #
36
29
  # Returns a list of your forms.
37
30
  #
38
- # @overload list(after: nil, before: nil, include: nil, limit: nil, request_options: {})
31
+ # @overload list(after: nil, before: nil, limit: nil, request_options: {})
39
32
  #
40
33
  # @param after [String] When specified, returns results starting immediately after the item identified b
41
34
  #
42
35
  # @param before [String] When specified, returns results starting immediately before the item identified
43
36
  #
44
- # @param include [Array<Symbol, Moonbase::Models::FormListParams::Include>] Specifies which related objects to include in the response. Valid option is `col
45
- #
46
37
  # @param limit [Integer] Maximum number of items to return per page. Must be between 1 and 100. Defaults
47
38
  #
48
39
  # @param request_options [Moonbase::RequestOptions, Hash{Symbol=>Object}, nil]
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Moonbase
4
+ module Resources
5
+ class Funnels
6
+ # @api private
7
+ #
8
+ # @param client [Moonbase::Client]
9
+ def initialize(client:)
10
+ @client = client
11
+ end
12
+ end
13
+ end
14
+ end
@@ -12,7 +12,7 @@ module Moonbase
12
12
  #
13
13
  # @param id [String] The ID of the Conversation to retrieve.
14
14
  #
15
- # @param include [Array<Symbol, Moonbase::Models::InboxConversationRetrieveParams::Include>] Specifies which related objects to include in the response. Valid options are `a
15
+ # @param include [Array<Symbol, Moonbase::Models::InboxConversationRetrieveParams::Include>] Specifies which related objects to include in the response. Valid options are `i
16
16
  #
17
17
  # @param request_options [Moonbase::RequestOptions, Hash{Symbol=>Object}, nil]
18
18
  #
@@ -35,15 +35,15 @@ module Moonbase
35
35
  #
36
36
  # Returns a list of your conversations.
37
37
  #
38
- # @overload list(after: nil, before: nil, inbox: nil, include: nil, limit: nil, request_options: {})
38
+ # @overload list(after: nil, before: nil, filter: nil, include: nil, limit: nil, request_options: {})
39
39
  #
40
40
  # @param after [String] When specified, returns results starting immediately after the item identified b
41
41
  #
42
42
  # @param before [String] When specified, returns results starting immediately before the item identified
43
43
  #
44
- # @param inbox [Array<String>] Filter conversations by one or more inbox IDs.
44
+ # @param filter [Moonbase::Models::InboxConversationListParams::Filter]
45
45
  #
46
- # @param include [Array<Symbol, Moonbase::Models::InboxConversationListParams::Include>] Specifies which related objects to include in the response. Valid options are `a
46
+ # @param include [Array<Symbol, Moonbase::Models::InboxConversationListParams::Include>] Specifies which related objects to include in the response. Valid options are `i
47
47
  #
48
48
  # @param limit [Integer] Maximum number of items to return per page. Must be between 1 and 100. Defaults
49
49
  #
@@ -35,15 +35,13 @@ module Moonbase
35
35
  #
36
36
  # Returns a list of messages.
37
37
  #
38
- # @overload list(after: nil, before: nil, conversation: nil, inbox: nil, include: nil, limit: nil, request_options: {})
38
+ # @overload list(after: nil, before: nil, filter: nil, include: nil, limit: nil, request_options: {})
39
39
  #
40
40
  # @param after [String] When specified, returns results starting immediately after the item identified b
41
41
  #
42
42
  # @param before [String] When specified, returns results starting immediately before the item identified
43
43
  #
44
- # @param conversation [Array<String>] Filter messages by one or more conversation IDs.
45
- #
46
- # @param inbox [Array<String>] Filter messages by one or more inbox IDs.
44
+ # @param filter [Moonbase::Models::InboxMessageListParams::Filter]
47
45
  #
48
46
  # @param include [Array<Symbol, Moonbase::Models::InboxMessageListParams::Include>] Specifies which related objects to include in the response. Valid options are `a
49
47
  #
@@ -35,12 +35,14 @@ module Moonbase
35
35
  #
36
36
  # Returns a list of shared inboxes.
37
37
  #
38
- # @overload list(after: nil, before: nil, limit: nil, request_options: {})
38
+ # @overload list(after: nil, before: nil, include: nil, limit: nil, request_options: {})
39
39
  #
40
40
  # @param after [String] When specified, returns results starting immediately after the item identified b
41
41
  #
42
42
  # @param before [String] When specified, returns results starting immediately before the item identified
43
43
  #
44
+ # @param include [Symbol, Moonbase::Models::InboxListParams::Include]
45
+ #
44
46
  # @param limit [Integer] Maximum number of items to return per page. Must be between 1 and 100. Defaults
45
47
  #
46
48
  # @param request_options [Moonbase::RequestOptions, Hash{Symbol=>Object}, nil]
@@ -53,7 +55,7 @@ module Moonbase
53
55
  @client.request(
54
56
  method: :get,
55
57
  path: "inboxes",
56
- query: parsed,
58
+ query: parsed.transform_keys(include: "include[]"),
57
59
  page: Moonbase::Internal::CursorPage,
58
60
  model: Moonbase::Inbox,
59
61
  options: options
@@ -5,9 +5,9 @@ module Moonbase
5
5
  class ProgramMessages
6
6
  # Sends a message using a program template.
7
7
  #
8
- # @overload create(person:, program_template_id:, custom_variables: nil, request_options: {})
8
+ # @overload send_(person:, program_template_id:, custom_variables: nil, request_options: {})
9
9
  #
10
- # @param person [Moonbase::Models::ProgramMessageCreateParams::Person] The person to send the message to.
10
+ # @param person [Moonbase::Models::ProgramMessageSendParams::Person] The person to send the message to.
11
11
  #
12
12
  # @param program_template_id [String] The ID of the `ProgramTemplate` to use for sending the message.
13
13
  #
@@ -15,16 +15,16 @@ module Moonbase
15
15
  #
16
16
  # @param request_options [Moonbase::RequestOptions, Hash{Symbol=>Object}, nil]
17
17
  #
18
- # @return [Moonbase::Models::ProgramMessageCreateResponse]
18
+ # @return [Moonbase::Models::ProgramMessage]
19
19
  #
20
- # @see Moonbase::Models::ProgramMessageCreateParams
21
- def create(params)
22
- parsed, options = Moonbase::ProgramMessageCreateParams.dump_request(params)
20
+ # @see Moonbase::Models::ProgramMessageSendParams
21
+ def send_(params)
22
+ parsed, options = Moonbase::ProgramMessageSendParams.dump_request(params)
23
23
  @client.request(
24
24
  method: :post,
25
25
  path: "program_messages",
26
26
  body: parsed,
27
- model: Moonbase::Models::ProgramMessageCreateResponse,
27
+ model: Moonbase::ProgramMessage,
28
28
  options: options
29
29
  )
30
30
  end
@@ -0,0 +1,138 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Moonbase
4
+ module Resources
5
+ class WebhookEndpoints
6
+ # Create a new endpoint.
7
+ #
8
+ # @overload create(status:, url:, subscriptions: nil, request_options: {})
9
+ #
10
+ # @param status [Symbol, Moonbase::Models::WebhookEndpointCreateParams::Status] Indicates whether the endpoint is enabled.
11
+ #
12
+ # @param url [String] The HTTPS URL where webhook events will be sent.
13
+ #
14
+ # @param subscriptions [Array<Moonbase::Models::WebhookEndpointCreateParams::Subscription>] An array of event types that this endpoint should receive notifications for.
15
+ #
16
+ # @param request_options [Moonbase::RequestOptions, Hash{Symbol=>Object}, nil]
17
+ #
18
+ # @return [Moonbase::Models::Endpoint]
19
+ #
20
+ # @see Moonbase::Models::WebhookEndpointCreateParams
21
+ def create(params)
22
+ parsed, options = Moonbase::WebhookEndpointCreateParams.dump_request(params)
23
+ @client.request(
24
+ method: :post,
25
+ path: "webhook_endpoints",
26
+ body: parsed,
27
+ model: Moonbase::Endpoint,
28
+ options: options
29
+ )
30
+ end
31
+
32
+ # Retrieves the details of an existing endpoint.
33
+ #
34
+ # @overload retrieve(id, request_options: {})
35
+ #
36
+ # @param id [String] The ID of the Webhook Endpoint to retrieve.
37
+ #
38
+ # @param request_options [Moonbase::RequestOptions, Hash{Symbol=>Object}, nil]
39
+ #
40
+ # @return [Moonbase::Models::Endpoint]
41
+ #
42
+ # @see Moonbase::Models::WebhookEndpointRetrieveParams
43
+ def retrieve(id, params = {})
44
+ @client.request(
45
+ method: :get,
46
+ path: ["webhook_endpoints/%1$s", id],
47
+ model: Moonbase::Endpoint,
48
+ options: params[:request_options]
49
+ )
50
+ end
51
+
52
+ # Updates an endpoint.
53
+ #
54
+ # @overload update(id, status: nil, subscriptions: nil, url: nil, request_options: {})
55
+ #
56
+ # @param id [String] The ID of the Webhook Endpoint to update.
57
+ #
58
+ # @param status [Symbol, Moonbase::Models::WebhookEndpointUpdateParams::Status] Indicates whether the endpoint is enabled.
59
+ #
60
+ # @param subscriptions [Array<Moonbase::Models::WebhookEndpointUpdateParams::Subscription>] An array of event types that this endpoint should receive notifications for.
61
+ #
62
+ # @param url [String] The HTTPS URL where webhook events will be sent.
63
+ #
64
+ # @param request_options [Moonbase::RequestOptions, Hash{Symbol=>Object}, nil]
65
+ #
66
+ # @return [Moonbase::Models::Endpoint]
67
+ #
68
+ # @see Moonbase::Models::WebhookEndpointUpdateParams
69
+ def update(id, params = {})
70
+ parsed, options = Moonbase::WebhookEndpointUpdateParams.dump_request(params)
71
+ @client.request(
72
+ method: :patch,
73
+ path: ["webhook_endpoints/%1$s", id],
74
+ body: parsed,
75
+ model: Moonbase::Endpoint,
76
+ options: options
77
+ )
78
+ end
79
+
80
+ # Some parameter documentations has been truncated, see
81
+ # {Moonbase::Models::WebhookEndpointListParams} for more details.
82
+ #
83
+ # Returns a list of endpoints.
84
+ #
85
+ # @overload list(after: nil, before: nil, limit: nil, request_options: {})
86
+ #
87
+ # @param after [String] When specified, returns results starting immediately after the item identified b
88
+ #
89
+ # @param before [String] When specified, returns results starting immediately before the item identified
90
+ #
91
+ # @param limit [Integer] Maximum number of items to return per page. Must be between 1 and 100. Defaults
92
+ #
93
+ # @param request_options [Moonbase::RequestOptions, Hash{Symbol=>Object}, nil]
94
+ #
95
+ # @return [Moonbase::Internal::CursorPage<Moonbase::Models::Endpoint>]
96
+ #
97
+ # @see Moonbase::Models::WebhookEndpointListParams
98
+ def list(params = {})
99
+ parsed, options = Moonbase::WebhookEndpointListParams.dump_request(params)
100
+ @client.request(
101
+ method: :get,
102
+ path: "webhook_endpoints",
103
+ query: parsed,
104
+ page: Moonbase::Internal::CursorPage,
105
+ model: Moonbase::Endpoint,
106
+ options: options
107
+ )
108
+ end
109
+
110
+ # Permanently deletes an endpoint.
111
+ #
112
+ # @overload delete(id, request_options: {})
113
+ #
114
+ # @param id [String] The ID of the Webhook Endpoint to delete.
115
+ #
116
+ # @param request_options [Moonbase::RequestOptions, Hash{Symbol=>Object}, nil]
117
+ #
118
+ # @return [nil]
119
+ #
120
+ # @see Moonbase::Models::WebhookEndpointDeleteParams
121
+ def delete(id, params = {})
122
+ @client.request(
123
+ method: :delete,
124
+ path: ["webhook_endpoints/%1$s", id],
125
+ model: NilClass,
126
+ options: params[:request_options]
127
+ )
128
+ end
129
+
130
+ # @api private
131
+ #
132
+ # @param client [Moonbase::Client]
133
+ def initialize(client:)
134
+ @client = client
135
+ end
136
+ end
137
+ end
138
+ end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Moonbase
4
- VERSION = "0.1.0.pre.alpha.2"
4
+ VERSION = "0.1.0.pre.alpha.3"
5
5
  end