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
@@ -10,10 +10,11 @@ module Moonbase
10
10
  # @return [String]
11
11
  required :id, String
12
12
 
13
- # @!attribute links
13
+ # @!attribute created_at
14
+ # Time at which the object was created, as an ISO 8601 timestamp in UTC.
14
15
  #
15
- # @return [Moonbase::Models::Program::Links]
16
- required :links, -> { Moonbase::Program::Links }
16
+ # @return [Time]
17
+ required :created_at, Time
17
18
 
18
19
  # @!attribute status
19
20
  # The current status of the program. Can be `draft`, `published`, `paused`, or
@@ -22,6 +23,18 @@ module Moonbase
22
23
  # @return [Symbol, Moonbase::Models::Program::Status]
23
24
  required :status, enum: -> { Moonbase::Program::Status }
24
25
 
26
+ # @!attribute track_clicks
27
+ # `true` if link clicks are tracked for this program.
28
+ #
29
+ # @return [Boolean]
30
+ required :track_clicks, Moonbase::Internal::Type::Boolean
31
+
32
+ # @!attribute track_opens
33
+ # `true` if email opens are tracked for this program.
34
+ #
35
+ # @return [Boolean]
36
+ required :track_opens, Moonbase::Internal::Type::Boolean
37
+
25
38
  # @!attribute trigger
26
39
  # The sending trigger for the program. Can be `api` for transactional sends or
27
40
  # `broadcast` for scheduled sends.
@@ -35,18 +48,20 @@ module Moonbase
35
48
  # @return [Symbol, :program]
36
49
  required :type, const: :program
37
50
 
51
+ # @!attribute updated_at
52
+ # Time at which the object was last updated, as an ISO 8601 timestamp in UTC.
53
+ #
54
+ # @return [Time]
55
+ required :updated_at, Time
56
+
38
57
  # @!attribute activity_metrics
39
58
  # A `ProgramActivityMetrics` object summarizing engagement for this program.
40
59
  #
60
+ # **Note:** Only present when requested using the `include` query parameter.
61
+ #
41
62
  # @return [Moonbase::Models::Program::ActivityMetrics, nil]
42
63
  optional :activity_metrics, -> { Moonbase::Program::ActivityMetrics }
43
64
 
44
- # @!attribute created_at
45
- # Time at which the object was created, as an RFC 3339 timestamp.
46
- #
47
- # @return [Time, nil]
48
- optional :created_at, Time
49
-
50
65
  # @!attribute display_name
51
66
  # The user-facing name of the program.
52
67
  #
@@ -56,35 +71,19 @@ module Moonbase
56
71
  # @!attribute program_template
57
72
  # The `ProgramTemplate` used for messages in this program.
58
73
  #
74
+ # **Note:** Only present when requested using the `include` query parameter.
75
+ #
59
76
  # @return [Moonbase::Models::ProgramTemplate, nil]
60
77
  optional :program_template, -> { Moonbase::ProgramTemplate }
61
78
 
62
79
  # @!attribute scheduled_at
63
- # For `broadcast` programs, the time the program is scheduled to send, as an RFC
64
- # 3339 timestamp.
80
+ # For `broadcast` programs, the time the program is scheduled to send, as an ISO
81
+ # 8601 timestamp in UTC.
65
82
  #
66
83
  # @return [Time, nil]
67
84
  optional :scheduled_at, Time
68
85
 
69
- # @!attribute track_clicks
70
- # `true` if link clicks are tracked for this program.
71
- #
72
- # @return [Boolean, nil]
73
- optional :track_clicks, Moonbase::Internal::Type::Boolean
74
-
75
- # @!attribute track_opens
76
- # `true` if email opens are tracked for this program.
77
- #
78
- # @return [Boolean, nil]
79
- optional :track_opens, Moonbase::Internal::Type::Boolean
80
-
81
- # @!attribute updated_at
82
- # Time at which the object was last updated, as an RFC 3339 timestamp.
83
- #
84
- # @return [Time, nil]
85
- optional :updated_at, Time
86
-
87
- # @!method initialize(id:, links:, status:, trigger:, activity_metrics: nil, created_at: nil, display_name: nil, program_template: nil, scheduled_at: nil, track_clicks: nil, track_opens: nil, updated_at: nil, type: :program)
86
+ # @!method initialize(id:, created_at:, status:, track_clicks:, track_opens:, trigger:, updated_at:, activity_metrics: nil, display_name: nil, program_template: nil, scheduled_at: nil, type: :program)
88
87
  # Some parameter documentations has been truncated, see
89
88
  # {Moonbase::Models::Program} for more details.
90
89
  #
@@ -93,50 +92,28 @@ module Moonbase
93
92
  #
94
93
  # @param id [String] Unique identifier for the object.
95
94
  #
96
- # @param links [Moonbase::Models::Program::Links]
95
+ # @param created_at [Time] Time at which the object was created, as an ISO 8601 timestamp in UTC.
97
96
  #
98
97
  # @param status [Symbol, Moonbase::Models::Program::Status] The current status of the program. Can be `draft`, `published`, `paused`, or `ar
99
98
  #
99
+ # @param track_clicks [Boolean] `true` if link clicks are tracked for this program.
100
+ #
101
+ # @param track_opens [Boolean] `true` if email opens are tracked for this program.
102
+ #
100
103
  # @param trigger [Symbol, Moonbase::Models::Program::Trigger] The sending trigger for the program. Can be `api` for transactional sends or `br
101
104
  #
102
- # @param activity_metrics [Moonbase::Models::Program::ActivityMetrics] A `ProgramActivityMetrics` object summarizing engagement for this program.
105
+ # @param updated_at [Time] Time at which the object was last updated, as an ISO 8601 timestamp in UTC.
103
106
  #
104
- # @param created_at [Time] Time at which the object was created, as an RFC 3339 timestamp.
107
+ # @param activity_metrics [Moonbase::Models::Program::ActivityMetrics] A `ProgramActivityMetrics` object summarizing engagement for this program.
105
108
  #
106
109
  # @param display_name [String] The user-facing name of the program.
107
110
  #
108
111
  # @param program_template [Moonbase::Models::ProgramTemplate] The `ProgramTemplate` used for messages in this program.
109
112
  #
110
- # @param scheduled_at [Time] For `broadcast` programs, the time the program is scheduled to send, as an RFC 3
111
- #
112
- # @param track_clicks [Boolean] `true` if link clicks are tracked for this program.
113
- #
114
- # @param track_opens [Boolean] `true` if email opens are tracked for this program.
115
- #
116
- # @param updated_at [Time] Time at which the object was last updated, as an RFC 3339 timestamp.
113
+ # @param scheduled_at [Time] For `broadcast` programs, the time the program is scheduled to send, as an ISO 8
117
114
  #
118
115
  # @param type [Symbol, :program] String representing the object’s type. Always `program` for this object.
119
116
 
120
- # @see Moonbase::Models::Program#links
121
- class Links < Moonbase::Internal::Type::BaseModel
122
- # @!attribute program_template
123
- # A link to the `ProgramTemplate` for this program.
124
- #
125
- # @return [String]
126
- required :program_template, String
127
-
128
- # @!attribute self_
129
- # The canonical URL for this object.
130
- #
131
- # @return [String]
132
- required :self_, String, api_name: :self
133
-
134
- # @!method initialize(program_template:, self_:)
135
- # @param program_template [String] A link to the `ProgramTemplate` for this program.
136
- #
137
- # @param self_ [String] The canonical URL for this object.
138
- end
139
-
140
117
  # The current status of the program. Can be `draft`, `published`, `paused`, or
141
118
  # `archived`.
142
119
  #
@@ -172,54 +149,56 @@ module Moonbase
172
149
  # @!attribute bounced
173
150
  # The number of emails that could not be delivered.
174
151
  #
175
- # @return [Integer, nil]
176
- optional :bounced, Integer
152
+ # @return [Integer]
153
+ required :bounced, Integer
177
154
 
178
155
  # @!attribute clicked
179
156
  # The number of recipients who clicked at least one link.
180
157
  #
181
- # @return [Integer, nil]
182
- optional :clicked, Integer
158
+ # @return [Integer]
159
+ required :clicked, Integer
183
160
 
184
161
  # @!attribute complained
185
162
  # The number of recipients who marked the email as spam.
186
163
  #
187
- # @return [Integer, nil]
188
- optional :complained, Integer
164
+ # @return [Integer]
165
+ required :complained, Integer
189
166
 
190
167
  # @!attribute failed
191
168
  # The number of emails that failed to send due to a technical issue.
192
169
  #
193
- # @return [Integer, nil]
194
- optional :failed, Integer
170
+ # @return [Integer]
171
+ required :failed, Integer
195
172
 
196
173
  # @!attribute opened
197
174
  # The number of recipients who opened the email.
198
175
  #
199
- # @return [Integer, nil]
200
- optional :opened, Integer
176
+ # @return [Integer]
177
+ required :opened, Integer
201
178
 
202
179
  # @!attribute sent
203
180
  # The total number of emails successfully sent.
204
181
  #
205
- # @return [Integer, nil]
206
- optional :sent, Integer
182
+ # @return [Integer]
183
+ required :sent, Integer
207
184
 
208
185
  # @!attribute shielded
209
186
  # The number of emails blocked by delivery protection rules.
210
187
  #
211
- # @return [Integer, nil]
212
- optional :shielded, Integer
188
+ # @return [Integer]
189
+ required :shielded, Integer
213
190
 
214
191
  # @!attribute unsubscribed
215
192
  # The number of recipients who unsubscribed.
216
193
  #
217
- # @return [Integer, nil]
218
- optional :unsubscribed, Integer
194
+ # @return [Integer]
195
+ required :unsubscribed, Integer
219
196
 
220
- # @!method initialize(bounced: nil, clicked: nil, complained: nil, failed: nil, opened: nil, sent: nil, shielded: nil, unsubscribed: nil)
197
+ # @!method initialize(bounced:, clicked:, complained:, failed:, opened:, sent:, shielded:, unsubscribed:)
221
198
  # A `ProgramActivityMetrics` object summarizing engagement for this program.
222
199
  #
200
+ # **Note:** Only present when requested using the `include` query parameter.
201
+ #
223
202
  # @param bounced [Integer] The number of emails that could not be delivered.
224
203
  #
225
204
  # @param clicked [Integer] The number of recipients who clicked at least one link.
@@ -2,8 +2,8 @@
2
2
 
3
3
  module Moonbase
4
4
  module Models
5
- # @see Moonbase::Resources::ProgramMessages#create
6
- class ProgramMessageCreateResponse < Moonbase::Internal::Type::BaseModel
5
+ # @see Moonbase::Resources::ProgramMessages#send_
6
+ class ProgramMessage < Moonbase::Internal::Type::BaseModel
7
7
  # @!attribute id
8
8
  # Unique identifier for the object.
9
9
  #
@@ -11,17 +11,12 @@ module Moonbase
11
11
  required :id, String
12
12
 
13
13
  # @!attribute created_at
14
- # Time at which the message was created and enqueued for sending, as an RFC 3339
15
- # timestamp.
14
+ # Time at which the message was created and enqueued for sending, as an ISO 8601
15
+ # timestamp in UTC.
16
16
  #
17
17
  # @return [Time]
18
18
  required :created_at, Time
19
19
 
20
- # @!attribute links
21
- #
22
- # @return [Moonbase::Models::ProgramMessageCreateResponse::Links]
23
- required :links, -> { Moonbase::Models::ProgramMessageCreateResponse::Links }
24
-
25
20
  # @!attribute program_template
26
21
  # The `ProgramTemplate` used to generate this message.
27
22
  #
@@ -35,40 +30,26 @@ module Moonbase
35
30
  required :type, const: :program_message
36
31
 
37
32
  # @!attribute updated_at
38
- # Time at which the object was last updated, as an RFC 3339 timestamp.
33
+ # Time at which the object was last updated, as an ISO 8601 timestamp in UTC.
39
34
  #
40
35
  # @return [Time]
41
36
  required :updated_at, Time
42
37
 
43
- # @!method initialize(id:, created_at:, links:, program_template:, updated_at:, type: :program_message)
38
+ # @!method initialize(id:, created_at:, program_template:, updated_at:, type: :program_message)
44
39
  # Some parameter documentations has been truncated, see
45
- # {Moonbase::Models::ProgramMessageCreateResponse} for more details.
40
+ # {Moonbase::Models::ProgramMessage} for more details.
46
41
  #
47
42
  # Represents a single message sent as part of a `Program`.
48
43
  #
49
44
  # @param id [String] Unique identifier for the object.
50
45
  #
51
- # @param created_at [Time] Time at which the message was created and enqueued for sending, as an RFC 3339 t
52
- #
53
- # @param links [Moonbase::Models::ProgramMessageCreateResponse::Links]
46
+ # @param created_at [Time] Time at which the message was created and enqueued for sending, as an ISO 8601 t
54
47
  #
55
48
  # @param program_template [Moonbase::Models::ProgramTemplate] The `ProgramTemplate` used to generate this message.
56
49
  #
57
- # @param updated_at [Time] Time at which the object was last updated, as an RFC 3339 timestamp.
50
+ # @param updated_at [Time] Time at which the object was last updated, as an ISO 8601 timestamp in UTC.
58
51
  #
59
52
  # @param type [Symbol, :program_message] String representing the object’s type. Always `program_message` for this object.
60
-
61
- # @see Moonbase::Models::ProgramMessageCreateResponse#links
62
- class Links < Moonbase::Internal::Type::BaseModel
63
- # @!attribute program_template
64
- # A link to the `ProgramTemplate` used.
65
- #
66
- # @return [String]
67
- required :program_template, String
68
-
69
- # @!method initialize(program_template:)
70
- # @param program_template [String] A link to the `ProgramTemplate` used.
71
- end
72
53
  end
73
54
  end
74
55
  end
@@ -2,16 +2,16 @@
2
2
 
3
3
  module Moonbase
4
4
  module Models
5
- # @see Moonbase::Resources::ProgramMessages#create
6
- class ProgramMessageCreateParams < Moonbase::Internal::Type::BaseModel
5
+ # @see Moonbase::Resources::ProgramMessages#send_
6
+ class ProgramMessageSendParams < Moonbase::Internal::Type::BaseModel
7
7
  extend Moonbase::Internal::Type::RequestParameters::Converter
8
8
  include Moonbase::Internal::Type::RequestParameters
9
9
 
10
10
  # @!attribute person
11
11
  # The person to send the message to.
12
12
  #
13
- # @return [Moonbase::Models::ProgramMessageCreateParams::Person]
14
- required :person, -> { Moonbase::ProgramMessageCreateParams::Person }
13
+ # @return [Moonbase::Models::ProgramMessageSendParams::Person]
14
+ required :person, -> { Moonbase::ProgramMessageSendParams::Person }
15
15
 
16
16
  # @!attribute program_template_id
17
17
  # The ID of the `ProgramTemplate` to use for sending the message.
@@ -26,7 +26,7 @@ module Moonbase
26
26
  optional :custom_variables, Moonbase::Internal::Type::HashOf[Moonbase::Internal::Type::Unknown]
27
27
 
28
28
  # @!method initialize(person:, program_template_id:, custom_variables: nil, request_options: {})
29
- # @param person [Moonbase::Models::ProgramMessageCreateParams::Person] The person to send the message to.
29
+ # @param person [Moonbase::Models::ProgramMessageSendParams::Person] The person to send the message to.
30
30
  #
31
31
  # @param program_template_id [String] The ID of the `ProgramTemplate` to use for sending the message.
32
32
  #
@@ -13,13 +13,14 @@ module Moonbase
13
13
  # @!attribute body
14
14
  # The body content of the email, which can include Liquid variables.
15
15
  #
16
- # @return [String]
17
- required :body, String
16
+ # @return [Moonbase::Models::FormattedText]
17
+ required :body, -> { Moonbase::FormattedText }
18
18
 
19
- # @!attribute links
19
+ # @!attribute created_at
20
+ # Time at which the object was created, as an ISO 8601 timestamp in UTC.
20
21
  #
21
- # @return [Moonbase::Models::ProgramTemplate::Links]
22
- required :links, -> { Moonbase::ProgramTemplate::Links }
22
+ # @return [Time]
23
+ required :created_at, Time
23
24
 
24
25
  # @!attribute subject
25
26
  # The subject line of the email, which can include Liquid variables.
@@ -34,25 +35,21 @@ module Moonbase
34
35
  # @return [Symbol, :program_template]
35
36
  required :type, const: :program_template
36
37
 
37
- # @!attribute created_at
38
- # Time at which the object was created, as an RFC 3339 timestamp.
38
+ # @!attribute updated_at
39
+ # Time at which the object was last updated, as an ISO 8601 timestamp in UTC.
39
40
  #
40
- # @return [Time, nil]
41
- optional :created_at, Time
41
+ # @return [Time]
42
+ required :updated_at, Time
42
43
 
43
44
  # @!attribute program
44
45
  # The `Program` that uses this template.
45
46
  #
47
+ # **Note:** Only present when requested using the `include` query parameter.
48
+ #
46
49
  # @return [Moonbase::Models::Program, nil]
47
50
  optional :program, -> { Moonbase::Program }
48
51
 
49
- # @!attribute updated_at
50
- # Time at which the object was last updated, as an RFC 3339 timestamp.
51
- #
52
- # @return [Time, nil]
53
- optional :updated_at, Time
54
-
55
- # @!method initialize(id:, body:, links:, subject:, created_at: nil, program: nil, updated_at: nil, type: :program_template)
52
+ # @!method initialize(id:, body:, created_at:, subject:, updated_at:, program: nil, type: :program_template)
56
53
  # Some parameter documentations has been truncated, see
57
54
  # {Moonbase::Models::ProgramTemplate} for more details.
58
55
  #
@@ -61,39 +58,17 @@ module Moonbase
61
58
  #
62
59
  # @param id [String] Unique identifier for the object.
63
60
  #
64
- # @param body [String] The body content of the email, which can include Liquid variables.
61
+ # @param body [Moonbase::Models::FormattedText] The body content of the email, which can include Liquid variables.
65
62
  #
66
- # @param links [Moonbase::Models::ProgramTemplate::Links]
63
+ # @param created_at [Time] Time at which the object was created, as an ISO 8601 timestamp in UTC.
67
64
  #
68
65
  # @param subject [String] The subject line of the email, which can include Liquid variables.
69
66
  #
70
- # @param created_at [Time] Time at which the object was created, as an RFC 3339 timestamp.
67
+ # @param updated_at [Time] Time at which the object was last updated, as an ISO 8601 timestamp in UTC.
71
68
  #
72
69
  # @param program [Moonbase::Models::Program] The `Program` that uses this template.
73
70
  #
74
- # @param updated_at [Time] Time at which the object was last updated, as an RFC 3339 timestamp.
75
- #
76
71
  # @param type [Symbol, :program_template] String representing the object’s type. Always `program_template` for this object
77
-
78
- # @see Moonbase::Models::ProgramTemplate#links
79
- class Links < Moonbase::Internal::Type::BaseModel
80
- # @!attribute self_
81
- # The canonical URL for this object.
82
- #
83
- # @return [String]
84
- required :self_, String, api_name: :self
85
-
86
- # @!attribute program
87
- # A link to the `Program` using this template.
88
- #
89
- # @return [String, nil]
90
- optional :program, String
91
-
92
- # @!method initialize(self_:, program: nil)
93
- # @param self_ [String] The canonical URL for this object.
94
- #
95
- # @param program [String] A link to the `Program` using this template.
96
- end
97
72
  end
98
73
  end
99
74
  end
@@ -13,9 +13,7 @@ module Moonbase
13
13
  #
14
14
  # @return [Array<Symbol, Moonbase::Models::ProgramTemplateRetrieveParams::Include>, nil]
15
15
  optional :include,
16
- -> {
17
- Moonbase::Internal::Type::ArrayOf[enum: Moonbase::ProgramTemplateRetrieveParams::Include]
18
- }
16
+ -> { Moonbase::Internal::Type::ArrayOf[enum: Moonbase::ProgramTemplateRetrieveParams::Include] }
19
17
 
20
18
  # @!method initialize(include: nil, request_options: {})
21
19
  # Some parameter documentations has been truncated, see
@@ -0,0 +1,143 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Moonbase
4
+ module Models
5
+ class RelationField < Moonbase::Internal::Type::BaseModel
6
+ # @!attribute id
7
+ # Unique identifier for the object.
8
+ #
9
+ # @return [String]
10
+ required :id, String
11
+
12
+ # @!attribute cardinality
13
+ # Specifies whether the field can hold a single value (`one`) or multiple values
14
+ # (`many`).
15
+ #
16
+ # @return [Symbol, Moonbase::Models::RelationField::Cardinality]
17
+ required :cardinality, enum: -> { Moonbase::RelationField::Cardinality }
18
+
19
+ # @!attribute created_at
20
+ # Time at which the object was created, as an ISO 8601 timestamp in UTC.
21
+ #
22
+ # @return [Time]
23
+ required :created_at, Time
24
+
25
+ # @!attribute name
26
+ # The human-readable name of the field (e.g., "Account").
27
+ #
28
+ # @return [String]
29
+ required :name, String
30
+
31
+ # @!attribute readonly
32
+ # If `true`, the value of this field is system-managed and cannot be updated via
33
+ # the API.
34
+ #
35
+ # @return [Boolean]
36
+ required :readonly, Moonbase::Internal::Type::Boolean
37
+
38
+ # @!attribute ref
39
+ # A unique, stable, machine-readable identifier for the field within its
40
+ # collection (e.g., `account`).
41
+ #
42
+ # @return [String]
43
+ required :ref, String
44
+
45
+ # @!attribute relation_type
46
+ # The type of relationship. Can be `one_way` for simple references or `two_way`
47
+ # for bidirectional relationships.
48
+ #
49
+ # @return [Symbol, Moonbase::Models::RelationField::RelationType]
50
+ required :relation_type, enum: -> { Moonbase::RelationField::RelationType }
51
+
52
+ # @!attribute required
53
+ # If `true`, this field must have a value.
54
+ #
55
+ # @return [Boolean]
56
+ required :required, Moonbase::Internal::Type::Boolean
57
+
58
+ # @!attribute type
59
+ # The data type of the field. Always `field/relation` for this field.
60
+ #
61
+ # @return [Symbol, :"field/relation"]
62
+ required :type, const: :"field/relation"
63
+
64
+ # @!attribute unique
65
+ # If `true`, values for this field must be unique across all items in the
66
+ # collection.
67
+ #
68
+ # @return [Boolean]
69
+ required :unique, Moonbase::Internal::Type::Boolean
70
+
71
+ # @!attribute updated_at
72
+ # Time at which the object was last updated, as an ISO 8601 timestamp in UTC.
73
+ #
74
+ # @return [Time]
75
+ required :updated_at, Time
76
+
77
+ # @!attribute description
78
+ # An optional, longer-form description of the field's purpose.
79
+ #
80
+ # @return [String, nil]
81
+ optional :description, String
82
+
83
+ # @!method initialize(id:, cardinality:, created_at:, name:, readonly:, ref:, relation_type:, required:, unique:, updated_at:, description: nil, type: :"field/relation")
84
+ # Some parameter documentations has been truncated, see
85
+ # {Moonbase::Models::RelationField} for more details.
86
+ #
87
+ # A field that creates a link between items in different collections, enabling
88
+ # cross-collection relationships.
89
+ #
90
+ # @param id [String] Unique identifier for the object.
91
+ #
92
+ # @param cardinality [Symbol, Moonbase::Models::RelationField::Cardinality] Specifies whether the field can hold a single value (`one`) or multiple values (
93
+ #
94
+ # @param created_at [Time] Time at which the object was created, as an ISO 8601 timestamp in UTC.
95
+ #
96
+ # @param name [String] The human-readable name of the field (e.g., "Account").
97
+ #
98
+ # @param readonly [Boolean] If `true`, the value of this field is system-managed and cannot be updated via t
99
+ #
100
+ # @param ref [String] A unique, stable, machine-readable identifier for the field within its collectio
101
+ #
102
+ # @param relation_type [Symbol, Moonbase::Models::RelationField::RelationType] The type of relationship. Can be `one_way` for simple references or `two_way` fo
103
+ #
104
+ # @param required [Boolean] If `true`, this field must have a value.
105
+ #
106
+ # @param unique [Boolean] If `true`, values for this field must be unique across all items in the collecti
107
+ #
108
+ # @param updated_at [Time] Time at which the object was last updated, as an ISO 8601 timestamp in UTC.
109
+ #
110
+ # @param description [String] An optional, longer-form description of the field's purpose.
111
+ #
112
+ # @param type [Symbol, :"field/relation"] The data type of the field. Always `field/relation` for this field.
113
+
114
+ # Specifies whether the field can hold a single value (`one`) or multiple values
115
+ # (`many`).
116
+ #
117
+ # @see Moonbase::Models::RelationField#cardinality
118
+ module Cardinality
119
+ extend Moonbase::Internal::Type::Enum
120
+
121
+ ONE = :one
122
+ MANY = :many
123
+
124
+ # @!method self.values
125
+ # @return [Array<Symbol>]
126
+ end
127
+
128
+ # The type of relationship. Can be `one_way` for simple references or `two_way`
129
+ # for bidirectional relationships.
130
+ #
131
+ # @see Moonbase::Models::RelationField#relation_type
132
+ module RelationType
133
+ extend Moonbase::Internal::Type::Enum
134
+
135
+ ONE_WAY = :one_way
136
+ TWO_WAY = :two_way
137
+
138
+ # @!method self.values
139
+ # @return [Array<Symbol>]
140
+ end
141
+ end
142
+ end
143
+ end
@@ -3,25 +3,21 @@
3
3
  module Moonbase
4
4
  module Models
5
5
  class RelationValue < Moonbase::Internal::Type::BaseModel
6
- # @!attribute item
7
- # An Item represents a single record or row within a Collection. It holds a set of
8
- # `values` corresponding to the Collection's `fields`.
6
+ # @!attribute data
7
+ # A reference to another Moonbase item.
9
8
  #
10
- # @return [Moonbase::Models::Item]
11
- required :item, -> { Moonbase::Item }
9
+ # @return [Moonbase::Models::ItemPointer]
10
+ required :data, -> { Moonbase::ItemPointer }
12
11
 
13
12
  # @!attribute type
14
13
  #
15
14
  # @return [Symbol, :"value/relation"]
16
15
  required :type, const: :"value/relation"
17
16
 
18
- # @!method initialize(item:, type: :"value/relation")
19
- # Some parameter documentations has been truncated, see
20
- # {Moonbase::Models::RelationValue} for more details.
21
- #
17
+ # @!method initialize(data:, type: :"value/relation")
22
18
  # Related item reference
23
19
  #
24
- # @param item [Moonbase::Models::Item] An Item represents a single record or row within a Collection. It holds a set of
20
+ # @param data [Moonbase::Models::ItemPointer] A reference to another Moonbase item.
25
21
  #
26
22
  # @param type [Symbol, :"value/relation"]
27
23
  end
@@ -0,0 +1,41 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Moonbase
4
+ module Models
5
+ class RelationValueParam < Moonbase::Internal::Type::BaseModel
6
+ # @!attribute data
7
+ # A reference to another Moonbase item.
8
+ #
9
+ # @return [Moonbase::Models::ItemPointer, Moonbase::Models::Pointer]
10
+ required :data, union: -> { Moonbase::RelationValueParam::Data }
11
+
12
+ # @!attribute type
13
+ #
14
+ # @return [Symbol, :"value/relation"]
15
+ required :type, const: :"value/relation"
16
+
17
+ # @!method initialize(data:, type: :"value/relation")
18
+ # Related item reference
19
+ #
20
+ # @param data [Moonbase::Models::ItemPointer, Moonbase::Models::Pointer] A reference to another Moonbase item.
21
+ #
22
+ # @param type [Symbol, :"value/relation"]
23
+
24
+ # A reference to another Moonbase item.
25
+ #
26
+ # @see Moonbase::Models::RelationValueParam#data
27
+ module Data
28
+ extend Moonbase::Internal::Type::Union
29
+
30
+ # A reference to an `Item` within a specific `Collection`, providing the context needed to locate the item.
31
+ variant -> { Moonbase::ItemPointer }
32
+
33
+ # A lightweight reference to another resource.
34
+ variant -> { Moonbase::Pointer }
35
+
36
+ # @!method self.variants
37
+ # @return [Array(Moonbase::Models::ItemPointer, Moonbase::Models::Pointer)]
38
+ end
39
+ end
40
+ end
41
+ end