vapi_server_sdk 0.2.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (273) hide show
  1. checksums.yaml +4 -4
  2. data/lib/requests.rb +2 -2
  3. data/lib/types_export.rb +160 -68
  4. data/lib/vapi_server_sdk/analytics/client.rb +0 -14
  5. data/lib/vapi_server_sdk/assistants/client.rb +19 -72
  6. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_credentials_item.rb +512 -0
  7. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_model.rb +13 -0
  8. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_transcriber.rb +13 -0
  9. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_voice.rb +13 -0
  10. data/lib/vapi_server_sdk/blocks/client.rb +7 -236
  11. data/lib/vapi_server_sdk/blocks/types/blocks_update_request.rb +109 -0
  12. data/lib/vapi_server_sdk/calls/client.rb +22 -74
  13. data/lib/vapi_server_sdk/files/client.rb +0 -70
  14. data/lib/vapi_server_sdk/knowledge_bases/client.rb +7 -78
  15. data/lib/vapi_server_sdk/knowledge_bases/types/knowledge_bases_update_request.rb +96 -0
  16. data/lib/vapi_server_sdk/logs/client.rb +75 -22
  17. data/lib/vapi_server_sdk/logs/types/logging_controller_logs_delete_query_request_type.rb +12 -0
  18. data/lib/vapi_server_sdk/phone_numbers/client.rb +7 -139
  19. data/lib/vapi_server_sdk/phone_numbers/types/phone_numbers_update_request.rb +122 -0
  20. data/lib/vapi_server_sdk/squads/client.rb +16 -70
  21. data/lib/vapi_server_sdk/tools/client.rb +7 -161
  22. data/lib/vapi_server_sdk/tools/types/tools_update_request.rb +200 -0
  23. data/lib/vapi_server_sdk/types/assistant.rb +19 -1
  24. data/lib/vapi_server_sdk/types/assistant_credentials_item.rb +510 -0
  25. data/lib/vapi_server_sdk/types/assistant_model.rb +13 -0
  26. data/lib/vapi_server_sdk/types/assistant_overrides.rb +19 -1
  27. data/lib/vapi_server_sdk/types/assistant_overrides_credentials_item.rb +510 -0
  28. data/lib/vapi_server_sdk/types/assistant_overrides_model.rb +13 -0
  29. data/lib/vapi_server_sdk/types/assistant_overrides_transcriber.rb +13 -0
  30. data/lib/vapi_server_sdk/types/assistant_overrides_voice.rb +13 -0
  31. data/lib/vapi_server_sdk/types/assistant_transcriber.rb +13 -0
  32. data/lib/vapi_server_sdk/types/assistant_voice.rb +13 -0
  33. data/lib/vapi_server_sdk/types/azure_blob_storage_bucket_plan.rb +88 -0
  34. data/lib/vapi_server_sdk/types/azure_credential.rb +22 -5
  35. data/lib/vapi_server_sdk/types/azure_credential_region.rb +5 -3
  36. data/lib/vapi_server_sdk/types/azure_credential_service.rb +9 -0
  37. data/lib/vapi_server_sdk/types/azure_open_ai_credential.rb +9 -1
  38. data/lib/vapi_server_sdk/types/azure_open_ai_credential_region.rb +5 -3
  39. data/lib/vapi_server_sdk/types/azure_speech_transcriber.rb +62 -0
  40. data/lib/vapi_server_sdk/types/azure_speech_transcriber_language.rb +152 -0
  41. data/lib/vapi_server_sdk/types/bash_tool_with_tool_call.rb +175 -0
  42. data/lib/vapi_server_sdk/types/bash_tool_with_tool_call_messages_item.rb +120 -0
  43. data/lib/vapi_server_sdk/types/buy_phone_number_dto.rb +25 -29
  44. data/lib/vapi_server_sdk/types/byo_phone_number.rb +25 -29
  45. data/lib/vapi_server_sdk/types/call_ended_reason.rb +44 -29
  46. data/lib/vapi_server_sdk/types/cartesia_voice_model.rb +2 -0
  47. data/lib/vapi_server_sdk/types/cerebras_credential.rb +111 -0
  48. data/lib/vapi_server_sdk/types/chat_dto.rb +103 -0
  49. data/lib/vapi_server_sdk/types/{credits_buy_dto.rb → chat_service_response.rb} +9 -17
  50. data/lib/vapi_server_sdk/types/client_inbound_message_end_call.rb +47 -0
  51. data/lib/vapi_server_sdk/types/client_inbound_message_message.rb +13 -0
  52. data/lib/vapi_server_sdk/types/client_message_tool_calls_tool_with_tool_call_list_item.rb +116 -77
  53. data/lib/vapi_server_sdk/types/cloudflare_credential.rb +142 -0
  54. data/lib/vapi_server_sdk/types/cloudflare_r_2_bucket_plan.rb +105 -0
  55. data/lib/vapi_server_sdk/types/computer_tool_with_tool_call.rb +199 -0
  56. data/lib/vapi_server_sdk/types/computer_tool_with_tool_call_messages_item.rb +120 -0
  57. data/lib/vapi_server_sdk/types/create_anthropic_credential_dto.rb +2 -9
  58. data/lib/vapi_server_sdk/types/create_anyscale_credential_dto.rb +2 -9
  59. data/lib/vapi_server_sdk/types/create_assembly_ai_credential_dto.rb +2 -9
  60. data/lib/vapi_server_sdk/types/create_assistant_dto.rb +19 -1
  61. data/lib/vapi_server_sdk/types/create_assistant_dto_credentials_item.rb +510 -0
  62. data/lib/vapi_server_sdk/types/create_assistant_dto_model.rb +13 -0
  63. data/lib/vapi_server_sdk/types/create_assistant_dto_transcriber.rb +13 -0
  64. data/lib/vapi_server_sdk/types/create_assistant_dto_voice.rb +13 -0
  65. data/lib/vapi_server_sdk/types/create_azure_credential_dto.rb +21 -12
  66. data/lib/vapi_server_sdk/types/create_azure_credential_dto_region.rb +5 -3
  67. data/lib/vapi_server_sdk/types/create_azure_credential_dto_service.rb +9 -0
  68. data/lib/vapi_server_sdk/types/create_azure_open_ai_credential_dto.rb +10 -9
  69. data/lib/vapi_server_sdk/types/create_azure_open_ai_credential_dto_region.rb +5 -3
  70. data/lib/vapi_server_sdk/types/create_byo_phone_number_dto.rb +25 -29
  71. data/lib/vapi_server_sdk/types/create_byo_sip_trunk_credential_dto.rb +1 -9
  72. data/lib/vapi_server_sdk/types/create_cartesia_credential_dto.rb +2 -9
  73. data/lib/vapi_server_sdk/types/create_cerebras_credential_dto.rb +74 -0
  74. data/lib/vapi_server_sdk/types/create_cloudflare_credential_dto.rb +101 -0
  75. data/lib/vapi_server_sdk/types/create_custom_knowledge_base_dto.rb +2 -4
  76. data/lib/vapi_server_sdk/types/create_custom_llm_credential_dto.rb +2 -14
  77. data/lib/vapi_server_sdk/types/create_deep_infra_credential_dto.rb +2 -9
  78. data/lib/vapi_server_sdk/types/create_deep_seek_credential_dto.rb +67 -0
  79. data/lib/vapi_server_sdk/types/create_deepgram_credential_dto.rb +2 -9
  80. data/lib/vapi_server_sdk/types/create_eleven_labs_credential_dto.rb +2 -9
  81. data/lib/vapi_server_sdk/types/create_gcp_credential_dto.rb +2 -14
  82. data/lib/vapi_server_sdk/types/create_gladia_credential_dto.rb +2 -9
  83. data/lib/vapi_server_sdk/types/create_go_high_level_credential_dto.rb +2 -9
  84. data/lib/vapi_server_sdk/types/create_groq_credential_dto.rb +2 -9
  85. data/lib/vapi_server_sdk/types/create_langfuse_credential_dto.rb +2 -15
  86. data/lib/vapi_server_sdk/types/create_lmnt_credential_dto.rb +2 -9
  87. data/lib/vapi_server_sdk/types/create_make_credential_dto.rb +2 -15
  88. data/lib/vapi_server_sdk/types/create_open_ai_credential_dto.rb +2 -9
  89. data/lib/vapi_server_sdk/types/create_open_router_credential_dto.rb +2 -9
  90. data/lib/vapi_server_sdk/types/create_org_dto.rb +25 -25
  91. data/lib/vapi_server_sdk/types/create_perplexity_ai_credential_dto.rb +2 -9
  92. data/lib/vapi_server_sdk/types/create_play_ht_credential_dto.rb +2 -9
  93. data/lib/vapi_server_sdk/types/create_rime_ai_credential_dto.rb +2 -9
  94. data/lib/vapi_server_sdk/types/create_runpod_credential_dto.rb +2 -9
  95. data/lib/vapi_server_sdk/types/create_s_3_credential_dto.rb +2 -10
  96. data/lib/vapi_server_sdk/types/create_smallest_ai_credential_dto.rb +67 -0
  97. data/lib/vapi_server_sdk/types/create_tavus_credential_dto.rb +2 -9
  98. data/lib/vapi_server_sdk/types/create_together_ai_credential_dto.rb +2 -9
  99. data/lib/vapi_server_sdk/types/create_trieve_knowledge_base_dto.rb +34 -47
  100. data/lib/vapi_server_sdk/types/create_trieve_knowledge_base_dto_create_plan.rb +97 -0
  101. data/lib/vapi_server_sdk/types/create_twilio_credential_dto.rb +2 -14
  102. data/lib/vapi_server_sdk/types/create_twilio_phone_number_dto.rb +25 -29
  103. data/lib/vapi_server_sdk/types/create_vapi_phone_number_dto.rb +25 -29
  104. data/lib/vapi_server_sdk/types/create_vonage_credential_dto.rb +2 -14
  105. data/lib/vapi_server_sdk/types/create_vonage_phone_number_dto.rb +25 -29
  106. data/lib/vapi_server_sdk/types/create_webhook_credential_dto.rb +2 -13
  107. data/lib/vapi_server_sdk/types/create_workflow_dto.rb +87 -0
  108. data/lib/vapi_server_sdk/types/create_workflow_dto_nodes_item.rb +81 -0
  109. data/lib/vapi_server_sdk/types/create_x_ai_credential_dto.rb +2 -11
  110. data/lib/vapi_server_sdk/types/custom_knowledge_base.rb +2 -4
  111. data/lib/vapi_server_sdk/types/deep_seek_credential.rb +111 -0
  112. data/lib/vapi_server_sdk/types/deep_seek_model.rb +177 -0
  113. data/lib/vapi_server_sdk/types/deep_seek_model_tools_item.rb +159 -0
  114. data/lib/vapi_server_sdk/types/edge.rb +80 -0
  115. data/lib/vapi_server_sdk/types/edge_condition.rb +94 -0
  116. data/lib/vapi_server_sdk/types/eleven_labs_voice_model.rb +2 -0
  117. data/lib/vapi_server_sdk/types/fallback_cartesia_voice_model.rb +2 -0
  118. data/lib/vapi_server_sdk/types/fallback_eleven_labs_voice_model.rb +2 -0
  119. data/lib/vapi_server_sdk/types/fallback_open_ai_voice.rb +4 -4
  120. data/lib/vapi_server_sdk/types/fallback_open_ai_voice_id.rb +2 -2
  121. data/lib/vapi_server_sdk/types/fallback_plan_voices_item.rb +13 -0
  122. data/lib/vapi_server_sdk/types/fallback_smallest_ai_voice.rb +95 -0
  123. data/lib/vapi_server_sdk/types/fallback_smallest_ai_voice_id.rb +53 -0
  124. data/lib/vapi_server_sdk/types/fallback_smallest_ai_voice_id_enum.rb +31 -0
  125. data/lib/vapi_server_sdk/types/function_tool_with_tool_call.rb +1 -10
  126. data/lib/vapi_server_sdk/types/gather.rb +87 -0
  127. data/lib/vapi_server_sdk/types/gemini_multimodal_live_prebuilt_voice_config.rb +58 -0
  128. data/lib/vapi_server_sdk/types/gemini_multimodal_live_prebuilt_voice_config_voice_name.rb +11 -0
  129. data/lib/vapi_server_sdk/types/gemini_multimodal_live_speech_config.rb +61 -0
  130. data/lib/vapi_server_sdk/types/gemini_multimodal_live_voice_config.rb +61 -0
  131. data/lib/vapi_server_sdk/types/ghl_tool_with_tool_call.rb +1 -9
  132. data/lib/vapi_server_sdk/types/google_model.rb +17 -1
  133. data/lib/vapi_server_sdk/types/google_model_model.rb +2 -0
  134. data/lib/vapi_server_sdk/types/google_realtime_config.rb +121 -0
  135. data/lib/vapi_server_sdk/types/groq_model_model.rb +1 -3
  136. data/lib/vapi_server_sdk/types/import_twilio_phone_number_dto.rb +25 -29
  137. data/lib/vapi_server_sdk/types/import_vonage_phone_number_dto.rb +25 -29
  138. data/lib/vapi_server_sdk/types/json_schema.rb +13 -2
  139. data/lib/vapi_server_sdk/types/log.rb +18 -18
  140. data/lib/vapi_server_sdk/types/make_tool_with_tool_call.rb +1 -9
  141. data/lib/vapi_server_sdk/types/open_ai_model_fallback_models_item.rb +6 -0
  142. data/lib/vapi_server_sdk/types/open_ai_model_model.rb +6 -0
  143. data/lib/vapi_server_sdk/types/open_ai_voice.rb +4 -4
  144. data/lib/vapi_server_sdk/types/open_ai_voice_id.rb +2 -2
  145. data/lib/vapi_server_sdk/types/org.rb +25 -25
  146. data/lib/vapi_server_sdk/types/org_with_org_user.rb +25 -25
  147. data/lib/vapi_server_sdk/types/{subscription_concurrency_line_remove_dto.rb → programmatic_edge_condition.rb} +16 -14
  148. data/lib/vapi_server_sdk/types/say.rb +72 -0
  149. data/lib/vapi_server_sdk/types/{payment_retry_dto.rb → semantic_edge_condition.rb} +16 -14
  150. data/lib/vapi_server_sdk/types/server_message_end_of_call_report_ended_reason.rb +44 -29
  151. data/lib/vapi_server_sdk/types/server_message_status_update.rb +11 -1
  152. data/lib/vapi_server_sdk/types/server_message_status_update_ended_reason.rb +44 -29
  153. data/lib/vapi_server_sdk/types/server_message_tool_calls_tool_with_tool_call_list_item.rb +116 -77
  154. data/lib/vapi_server_sdk/types/smallest_ai_credential.rb +111 -0
  155. data/lib/vapi_server_sdk/types/smallest_ai_voice.rb +117 -0
  156. data/lib/vapi_server_sdk/types/smallest_ai_voice_id.rb +53 -0
  157. data/lib/vapi_server_sdk/types/smallest_ai_voice_id_enum.rb +31 -0
  158. data/lib/vapi_server_sdk/types/subscription.rb +13 -11
  159. data/lib/vapi_server_sdk/types/sync_voice_library_dto_providers_item.rb +1 -0
  160. data/lib/vapi_server_sdk/types/text_editor_tool_with_tool_call.rb +175 -0
  161. data/lib/vapi_server_sdk/types/text_editor_tool_with_tool_call_messages_item.rb +121 -0
  162. data/lib/vapi_server_sdk/types/transfer_plan.rb +26 -6
  163. data/lib/vapi_server_sdk/types/transfer_plan_message.rb +2 -1
  164. data/lib/vapi_server_sdk/types/trieve_knowledge_base.rb +35 -44
  165. data/lib/vapi_server_sdk/types/{trieve_knowledge_base_vector_store_create_plan.rb → trieve_knowledge_base_chunk_plan.rb} +17 -11
  166. data/lib/vapi_server_sdk/types/trieve_knowledge_base_create.rb +59 -0
  167. data/lib/vapi_server_sdk/types/trieve_knowledge_base_create_plan.rb +96 -0
  168. data/lib/vapi_server_sdk/types/{subscription_concurrency_line_buy_dto.rb → trieve_knowledge_base_import.rb} +14 -14
  169. data/lib/vapi_server_sdk/types/{trieve_knowledge_base_vector_store_search_plan.rb → trieve_knowledge_base_search_plan.rb} +9 -11
  170. data/lib/vapi_server_sdk/types/{trieve_knowledge_base_vector_store_search_plan_search_type.rb → trieve_knowledge_base_search_plan_search_type.rb} +1 -1
  171. data/lib/vapi_server_sdk/types/twilio_phone_number.rb +25 -29
  172. data/lib/vapi_server_sdk/types/update_anthropic_credential_dto.rb +4 -11
  173. data/lib/vapi_server_sdk/types/update_anyscale_credential_dto.rb +4 -11
  174. data/lib/vapi_server_sdk/types/update_assembly_ai_credential_dto.rb +4 -11
  175. data/lib/vapi_server_sdk/types/update_azure_credential_dto.rb +24 -14
  176. data/lib/vapi_server_sdk/types/update_azure_credential_dto_region.rb +5 -3
  177. data/lib/vapi_server_sdk/types/update_azure_credential_dto_service.rb +9 -0
  178. data/lib/vapi_server_sdk/types/update_azure_open_ai_credential_dto.rb +25 -24
  179. data/lib/vapi_server_sdk/types/update_azure_open_ai_credential_dto_region.rb +5 -3
  180. data/lib/vapi_server_sdk/types/update_bash_tool_dto.rb +161 -0
  181. data/lib/vapi_server_sdk/types/update_bash_tool_dto_messages_item.rb +120 -0
  182. data/lib/vapi_server_sdk/types/update_byo_phone_number_dto.rb +187 -0
  183. data/lib/vapi_server_sdk/types/update_byo_phone_number_dto_fallback_destination.rb +101 -0
  184. data/lib/vapi_server_sdk/types/update_byo_sip_trunk_credential_dto.rb +13 -21
  185. data/lib/vapi_server_sdk/types/update_cartesia_credential_dto.rb +4 -11
  186. data/lib/vapi_server_sdk/types/update_cerebras_credential_dto.rb +67 -0
  187. data/lib/vapi_server_sdk/types/update_cloudflare_credential_dto.rb +101 -0
  188. data/lib/vapi_server_sdk/types/update_computer_tool_dto.rb +185 -0
  189. data/lib/vapi_server_sdk/types/update_computer_tool_dto_messages_item.rb +120 -0
  190. data/lib/vapi_server_sdk/types/update_conversation_block_dto.rb +206 -0
  191. data/lib/vapi_server_sdk/types/update_conversation_block_dto_messages_item.rb +95 -0
  192. data/lib/vapi_server_sdk/types/update_custom_knowledge_base_dto.rb +137 -0
  193. data/lib/vapi_server_sdk/types/update_custom_llm_credential_dto.rb +4 -16
  194. data/lib/vapi_server_sdk/types/update_deep_infra_credential_dto.rb +4 -11
  195. data/lib/vapi_server_sdk/types/update_deep_seek_credential_dto.rb +67 -0
  196. data/lib/vapi_server_sdk/types/update_deepgram_credential_dto.rb +11 -18
  197. data/lib/vapi_server_sdk/types/update_dtmf_tool_dto.rb +139 -0
  198. data/lib/vapi_server_sdk/types/update_dtmf_tool_dto_messages_item.rb +120 -0
  199. data/lib/vapi_server_sdk/types/update_eleven_labs_credential_dto.rb +11 -11
  200. data/lib/vapi_server_sdk/types/update_end_call_tool_dto.rb +139 -0
  201. data/lib/vapi_server_sdk/types/update_end_call_tool_dto_messages_item.rb +120 -0
  202. data/lib/vapi_server_sdk/types/update_function_tool_dto.rb +139 -0
  203. data/lib/vapi_server_sdk/types/update_function_tool_dto_messages_item.rb +120 -0
  204. data/lib/vapi_server_sdk/types/update_gcp_credential_dto.rb +11 -23
  205. data/lib/vapi_server_sdk/types/update_ghl_tool_dto.rb +159 -0
  206. data/lib/vapi_server_sdk/types/update_ghl_tool_dto_messages_item.rb +120 -0
  207. data/lib/vapi_server_sdk/types/update_gladia_credential_dto.rb +4 -11
  208. data/lib/vapi_server_sdk/types/update_go_high_level_credential_dto.rb +4 -11
  209. data/lib/vapi_server_sdk/types/update_google_credential_dto.rb +4 -13
  210. data/lib/vapi_server_sdk/types/update_groq_credential_dto.rb +4 -11
  211. data/lib/vapi_server_sdk/types/update_inflection_ai_credential_dto.rb +4 -13
  212. data/lib/vapi_server_sdk/types/update_langfuse_credential_dto.rb +8 -21
  213. data/lib/vapi_server_sdk/types/update_lmnt_credential_dto.rb +4 -11
  214. data/lib/vapi_server_sdk/types/update_make_credential_dto.rb +8 -21
  215. data/lib/vapi_server_sdk/types/update_make_tool_dto.rb +159 -0
  216. data/lib/vapi_server_sdk/types/update_make_tool_dto_messages_item.rb +120 -0
  217. data/lib/vapi_server_sdk/types/update_open_ai_credential_dto.rb +4 -11
  218. data/lib/vapi_server_sdk/types/update_open_router_credential_dto.rb +4 -11
  219. data/lib/vapi_server_sdk/types/update_org_dto.rb +25 -25
  220. data/lib/vapi_server_sdk/types/update_output_tool_dto.rb +139 -0
  221. data/lib/vapi_server_sdk/types/update_output_tool_dto_messages_item.rb +120 -0
  222. data/lib/vapi_server_sdk/types/update_perplexity_ai_credential_dto.rb +4 -11
  223. data/lib/vapi_server_sdk/types/update_play_ht_credential_dto.rb +11 -18
  224. data/lib/vapi_server_sdk/types/update_rime_ai_credential_dto.rb +4 -11
  225. data/lib/vapi_server_sdk/types/update_runpod_credential_dto.rb +4 -11
  226. data/lib/vapi_server_sdk/types/update_s_3_credential_dto.rb +12 -20
  227. data/lib/vapi_server_sdk/types/update_smallest_ai_credential_dto.rb +67 -0
  228. data/lib/vapi_server_sdk/types/update_tavus_credential_dto.rb +4 -11
  229. data/lib/vapi_server_sdk/types/update_text_editor_tool_dto.rb +161 -0
  230. data/lib/vapi_server_sdk/types/update_text_editor_tool_dto_messages_item.rb +120 -0
  231. data/lib/vapi_server_sdk/types/update_together_ai_credential_dto.rb +4 -11
  232. data/lib/vapi_server_sdk/types/update_token_dto.rb +81 -0
  233. data/lib/vapi_server_sdk/types/update_token_dto_tag.rb +9 -0
  234. data/lib/vapi_server_sdk/types/update_tool_call_block_dto.rb +168 -0
  235. data/lib/vapi_server_sdk/types/update_tool_call_block_dto_messages_item.rb +94 -0
  236. data/lib/vapi_server_sdk/types/update_tool_call_block_dto_tool.rb +161 -0
  237. data/lib/vapi_server_sdk/types/update_transfer_call_tool_dto.rb +161 -0
  238. data/lib/vapi_server_sdk/types/update_transfer_call_tool_dto_destinations_item.rb +121 -0
  239. data/lib/vapi_server_sdk/types/update_transfer_call_tool_dto_messages_item.rb +121 -0
  240. data/lib/vapi_server_sdk/types/update_trieve_knowledge_base_dto.rb +96 -0
  241. data/lib/vapi_server_sdk/types/update_trieve_knowledge_base_dto_create_plan.rb +97 -0
  242. data/lib/vapi_server_sdk/types/update_twilio_credential_dto.rb +11 -23
  243. data/lib/vapi_server_sdk/types/update_twilio_phone_number_dto.rb +163 -0
  244. data/lib/vapi_server_sdk/types/update_twilio_phone_number_dto_fallback_destination.rb +101 -0
  245. data/lib/vapi_server_sdk/types/update_vapi_phone_number_dto.rb +169 -0
  246. data/lib/vapi_server_sdk/types/update_vapi_phone_number_dto_fallback_destination.rb +101 -0
  247. data/lib/vapi_server_sdk/types/update_vonage_credential_dto.rb +11 -23
  248. data/lib/vapi_server_sdk/types/update_vonage_phone_number_dto.rb +157 -0
  249. data/lib/vapi_server_sdk/types/update_vonage_phone_number_dto_fallback_destination.rb +101 -0
  250. data/lib/vapi_server_sdk/types/update_workflow_block_dto.rb +154 -0
  251. data/lib/vapi_server_sdk/types/update_workflow_block_dto_messages_item.rb +94 -0
  252. data/lib/vapi_server_sdk/types/update_workflow_block_dto_steps_item.rb +94 -0
  253. data/lib/vapi_server_sdk/types/update_workflow_dto.rb +82 -0
  254. data/lib/vapi_server_sdk/types/update_workflow_dto_nodes_item.rb +81 -0
  255. data/lib/vapi_server_sdk/types/update_x_ai_credential_dto.rb +4 -13
  256. data/lib/vapi_server_sdk/types/vapi_model.rb +27 -1
  257. data/lib/vapi_server_sdk/types/vapi_phone_number.rb +25 -29
  258. data/lib/vapi_server_sdk/types/vonage_phone_number.rb +25 -29
  259. data/lib/vapi_server_sdk/types/workflow.rb +125 -0
  260. data/lib/vapi_server_sdk/types/workflow_nodes_item.rb +81 -0
  261. metadata +116 -24
  262. data/lib/vapi_server_sdk/blocks/types/update_block_dto_messages_item.rb +0 -96
  263. data/lib/vapi_server_sdk/blocks/types/update_block_dto_steps_item.rb +0 -96
  264. data/lib/vapi_server_sdk/blocks/types/update_block_dto_tool.rb +0 -163
  265. data/lib/vapi_server_sdk/phone_numbers/types/update_phone_number_dto_fallback_destination.rb +0 -103
  266. data/lib/vapi_server_sdk/tools/types/update_tool_dto_messages_item.rb +0 -122
  267. data/lib/vapi_server_sdk/types/auto_reload_plan_dto.rb +0 -65
  268. data/lib/vapi_server_sdk/types/hipaa_buy_dto.rb +0 -65
  269. data/lib/vapi_server_sdk/types/payment.rb +0 -167
  270. data/lib/vapi_server_sdk/types/payment_status.rb +0 -11
  271. data/lib/vapi_server_sdk/types/payments_paginated_response.rb +0 -75
  272. data/lib/vapi_server_sdk/types/subscription_coupon_add_dto.rb +0 -67
  273. data/lib/vapi_server_sdk/types/subscription_monthly_charge.rb +0 -65
@@ -0,0 +1,111 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "date"
4
+ require "ostruct"
5
+ require "json"
6
+
7
+ module Vapi
8
+ class CerebrasCredential
9
+ # @return [String]
10
+ attr_reader :provider
11
+ # @return [String] This is not returned in the API.
12
+ attr_reader :api_key
13
+ # @return [String] This is the unique identifier for the credential.
14
+ attr_reader :id
15
+ # @return [String] This is the unique identifier for the org that this credential belongs to.
16
+ attr_reader :org_id
17
+ # @return [DateTime] This is the ISO 8601 date-time string of when the credential was created.
18
+ attr_reader :created_at
19
+ # @return [DateTime] This is the ISO 8601 date-time string of when the assistant was last updated.
20
+ attr_reader :updated_at
21
+ # @return [String] This is the name of credential. This is just for your reference.
22
+ attr_reader :name
23
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
24
+ attr_reader :additional_properties
25
+ # @return [Object]
26
+ attr_reader :_field_set
27
+ protected :_field_set
28
+
29
+ OMIT = Object.new
30
+
31
+ # @param provider [String]
32
+ # @param api_key [String] This is not returned in the API.
33
+ # @param id [String] This is the unique identifier for the credential.
34
+ # @param org_id [String] This is the unique identifier for the org that this credential belongs to.
35
+ # @param created_at [DateTime] This is the ISO 8601 date-time string of when the credential was created.
36
+ # @param updated_at [DateTime] This is the ISO 8601 date-time string of when the assistant was last updated.
37
+ # @param name [String] This is the name of credential. This is just for your reference.
38
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
39
+ # @return [Vapi::CerebrasCredential]
40
+ def initialize(provider:, api_key:, id:, org_id:, created_at:, updated_at:, name: OMIT, additional_properties: nil)
41
+ @provider = provider
42
+ @api_key = api_key
43
+ @id = id
44
+ @org_id = org_id
45
+ @created_at = created_at
46
+ @updated_at = updated_at
47
+ @name = name if name != OMIT
48
+ @additional_properties = additional_properties
49
+ @_field_set = {
50
+ "provider": provider,
51
+ "apiKey": api_key,
52
+ "id": id,
53
+ "orgId": org_id,
54
+ "createdAt": created_at,
55
+ "updatedAt": updated_at,
56
+ "name": name
57
+ }.reject do |_k, v|
58
+ v == OMIT
59
+ end
60
+ end
61
+
62
+ # Deserialize a JSON object to an instance of CerebrasCredential
63
+ #
64
+ # @param json_object [String]
65
+ # @return [Vapi::CerebrasCredential]
66
+ def self.from_json(json_object:)
67
+ struct = JSON.parse(json_object, object_class: OpenStruct)
68
+ parsed_json = JSON.parse(json_object)
69
+ provider = parsed_json["provider"]
70
+ api_key = parsed_json["apiKey"]
71
+ id = parsed_json["id"]
72
+ org_id = parsed_json["orgId"]
73
+ created_at = (DateTime.parse(parsed_json["createdAt"]) unless parsed_json["createdAt"].nil?)
74
+ updated_at = (DateTime.parse(parsed_json["updatedAt"]) unless parsed_json["updatedAt"].nil?)
75
+ name = parsed_json["name"]
76
+ new(
77
+ provider: provider,
78
+ api_key: api_key,
79
+ id: id,
80
+ org_id: org_id,
81
+ created_at: created_at,
82
+ updated_at: updated_at,
83
+ name: name,
84
+ additional_properties: struct
85
+ )
86
+ end
87
+
88
+ # Serialize an instance of CerebrasCredential to a JSON object
89
+ #
90
+ # @return [String]
91
+ def to_json(*_args)
92
+ @_field_set&.to_json
93
+ end
94
+
95
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
96
+ # hash and check each fields type against the current object's property
97
+ # definitions.
98
+ #
99
+ # @param obj [Object]
100
+ # @return [Void]
101
+ def self.validate_raw(obj:)
102
+ obj.provider.is_a?(String) != false || raise("Passed value for field obj.provider is not the expected type, validation failed.")
103
+ obj.api_key.is_a?(String) != false || raise("Passed value for field obj.api_key is not the expected type, validation failed.")
104
+ obj.id.is_a?(String) != false || raise("Passed value for field obj.id is not the expected type, validation failed.")
105
+ obj.org_id.is_a?(String) != false || raise("Passed value for field obj.org_id is not the expected type, validation failed.")
106
+ obj.created_at.is_a?(DateTime) != false || raise("Passed value for field obj.created_at is not the expected type, validation failed.")
107
+ obj.updated_at.is_a?(DateTime) != false || raise("Passed value for field obj.updated_at is not the expected type, validation failed.")
108
+ obj.name&.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
109
+ end
110
+ end
111
+ end
@@ -0,0 +1,103 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "open_ai_message"
4
+ require_relative "create_assistant_dto"
5
+ require_relative "assistant_overrides"
6
+ require "ostruct"
7
+ require "json"
8
+
9
+ module Vapi
10
+ class ChatDto
11
+ # @return [Array<Vapi::OpenAiMessage>]
12
+ attr_reader :messages
13
+ # @return [String]
14
+ attr_reader :assistant_id
15
+ # @return [Vapi::CreateAssistantDto]
16
+ attr_reader :assistant
17
+ # @return [Vapi::AssistantOverrides]
18
+ attr_reader :assistant_overrides
19
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
20
+ attr_reader :additional_properties
21
+ # @return [Object]
22
+ attr_reader :_field_set
23
+ protected :_field_set
24
+
25
+ OMIT = Object.new
26
+
27
+ # @param messages [Array<Vapi::OpenAiMessage>]
28
+ # @param assistant_id [String]
29
+ # @param assistant [Vapi::CreateAssistantDto]
30
+ # @param assistant_overrides [Vapi::AssistantOverrides]
31
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
32
+ # @return [Vapi::ChatDto]
33
+ def initialize(messages:, assistant_id: OMIT, assistant: OMIT, assistant_overrides: OMIT,
34
+ additional_properties: nil)
35
+ @messages = messages
36
+ @assistant_id = assistant_id if assistant_id != OMIT
37
+ @assistant = assistant if assistant != OMIT
38
+ @assistant_overrides = assistant_overrides if assistant_overrides != OMIT
39
+ @additional_properties = additional_properties
40
+ @_field_set = {
41
+ "messages": messages,
42
+ "assistantId": assistant_id,
43
+ "assistant": assistant,
44
+ "assistantOverrides": assistant_overrides
45
+ }.reject do |_k, v|
46
+ v == OMIT
47
+ end
48
+ end
49
+
50
+ # Deserialize a JSON object to an instance of ChatDto
51
+ #
52
+ # @param json_object [String]
53
+ # @return [Vapi::ChatDto]
54
+ def self.from_json(json_object:)
55
+ struct = JSON.parse(json_object, object_class: OpenStruct)
56
+ parsed_json = JSON.parse(json_object)
57
+ messages = parsed_json["messages"]&.map do |item|
58
+ item = item.to_json
59
+ Vapi::OpenAiMessage.from_json(json_object: item)
60
+ end
61
+ assistant_id = parsed_json["assistantId"]
62
+ if parsed_json["assistant"].nil?
63
+ assistant = nil
64
+ else
65
+ assistant = parsed_json["assistant"].to_json
66
+ assistant = Vapi::CreateAssistantDto.from_json(json_object: assistant)
67
+ end
68
+ if parsed_json["assistantOverrides"].nil?
69
+ assistant_overrides = nil
70
+ else
71
+ assistant_overrides = parsed_json["assistantOverrides"].to_json
72
+ assistant_overrides = Vapi::AssistantOverrides.from_json(json_object: assistant_overrides)
73
+ end
74
+ new(
75
+ messages: messages,
76
+ assistant_id: assistant_id,
77
+ assistant: assistant,
78
+ assistant_overrides: assistant_overrides,
79
+ additional_properties: struct
80
+ )
81
+ end
82
+
83
+ # Serialize an instance of ChatDto to a JSON object
84
+ #
85
+ # @return [String]
86
+ def to_json(*_args)
87
+ @_field_set&.to_json
88
+ end
89
+
90
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
91
+ # hash and check each fields type against the current object's property
92
+ # definitions.
93
+ #
94
+ # @param obj [Object]
95
+ # @return [Void]
96
+ def self.validate_raw(obj:)
97
+ obj.messages.is_a?(Array) != false || raise("Passed value for field obj.messages is not the expected type, validation failed.")
98
+ obj.assistant_id&.is_a?(String) != false || raise("Passed value for field obj.assistant_id is not the expected type, validation failed.")
99
+ obj.assistant.nil? || Vapi::CreateAssistantDto.validate_raw(obj: obj.assistant)
100
+ obj.assistant_overrides.nil? || Vapi::AssistantOverrides.validate_raw(obj: obj.assistant_overrides)
101
+ end
102
+ end
103
+ end
@@ -4,9 +4,7 @@ require "ostruct"
4
4
  require "json"
5
5
 
6
6
  module Vapi
7
- class CreditsBuyDto
8
- # @return [Float] This is the number of credits to add to the subscription.
9
- attr_reader :credits
7
+ class ChatServiceResponse
10
8
  # @return [OpenStruct] Additional properties unmapped to the current class definition
11
9
  attr_reader :additional_properties
12
10
  # @return [Object]
@@ -15,27 +13,23 @@ module Vapi
15
13
 
16
14
  OMIT = Object.new
17
15
 
18
- # @param credits [Float] This is the number of credits to add to the subscription.
19
16
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
20
- # @return [Vapi::CreditsBuyDto]
21
- def initialize(credits:, additional_properties: nil)
22
- @credits = credits
17
+ # @return [Vapi::ChatServiceResponse]
18
+ def initialize(additional_properties: nil)
23
19
  @additional_properties = additional_properties
24
- @_field_set = { "credits": credits }
20
+ @_field_set = {}
25
21
  end
26
22
 
27
- # Deserialize a JSON object to an instance of CreditsBuyDto
23
+ # Deserialize a JSON object to an instance of ChatServiceResponse
28
24
  #
29
25
  # @param json_object [String]
30
- # @return [Vapi::CreditsBuyDto]
26
+ # @return [Vapi::ChatServiceResponse]
31
27
  def self.from_json(json_object:)
32
28
  struct = JSON.parse(json_object, object_class: OpenStruct)
33
- parsed_json = JSON.parse(json_object)
34
- credits = parsed_json["credits"]
35
- new(credits: credits, additional_properties: struct)
29
+ new(additional_properties: struct)
36
30
  end
37
31
 
38
- # Serialize an instance of CreditsBuyDto to a JSON object
32
+ # Serialize an instance of ChatServiceResponse to a JSON object
39
33
  #
40
34
  # @return [String]
41
35
  def to_json(*_args)
@@ -48,8 +42,6 @@ module Vapi
48
42
  #
49
43
  # @param obj [Object]
50
44
  # @return [Void]
51
- def self.validate_raw(obj:)
52
- obj.credits.is_a?(Float) != false || raise("Passed value for field obj.credits is not the expected type, validation failed.")
53
- end
45
+ def self.validate_raw(obj:); end
54
46
  end
55
47
  end
@@ -0,0 +1,47 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "ostruct"
4
+ require "json"
5
+
6
+ module Vapi
7
+ class ClientInboundMessageEndCall
8
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
9
+ attr_reader :additional_properties
10
+ # @return [Object]
11
+ attr_reader :_field_set
12
+ protected :_field_set
13
+
14
+ OMIT = Object.new
15
+
16
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
17
+ # @return [Vapi::ClientInboundMessageEndCall]
18
+ def initialize(additional_properties: nil)
19
+ @additional_properties = additional_properties
20
+ @_field_set = {}
21
+ end
22
+
23
+ # Deserialize a JSON object to an instance of ClientInboundMessageEndCall
24
+ #
25
+ # @param json_object [String]
26
+ # @return [Vapi::ClientInboundMessageEndCall]
27
+ def self.from_json(json_object:)
28
+ struct = JSON.parse(json_object, object_class: OpenStruct)
29
+ new(additional_properties: struct)
30
+ end
31
+
32
+ # Serialize an instance of ClientInboundMessageEndCall to a JSON object
33
+ #
34
+ # @return [String]
35
+ def to_json(*_args)
36
+ @_field_set&.to_json
37
+ end
38
+
39
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
40
+ # hash and check each fields type against the current object's property
41
+ # definitions.
42
+ #
43
+ # @param obj [Object]
44
+ # @return [Void]
45
+ def self.validate_raw(obj:); end
46
+ end
47
+ end
@@ -4,6 +4,7 @@ require "json"
4
4
  require_relative "client_inbound_message_add_message"
5
5
  require_relative "client_inbound_message_control"
6
6
  require_relative "client_inbound_message_say"
7
+ require_relative "client_inbound_message_end_call"
7
8
  require_relative "client_inbound_message_transfer"
8
9
 
9
10
  module Vapi
@@ -39,6 +40,8 @@ module Vapi
39
40
  Vapi::ClientInboundMessageControl.from_json(json_object: json_object)
40
41
  when "say"
41
42
  Vapi::ClientInboundMessageSay.from_json(json_object: json_object)
43
+ when "end-call"
44
+ Vapi::ClientInboundMessageEndCall.from_json(json_object: json_object)
42
45
  when "transfer"
43
46
  Vapi::ClientInboundMessageTransfer.from_json(json_object: json_object)
44
47
  else
@@ -58,6 +61,8 @@ module Vapi
58
61
  { **@member.to_json, type: @discriminant }.to_json
59
62
  when "say"
60
63
  { **@member.to_json, type: @discriminant }.to_json
64
+ when "end-call"
65
+ { **@member.to_json, type: @discriminant }.to_json
61
66
  when "transfer"
62
67
  { **@member.to_json, type: @discriminant }.to_json
63
68
  else
@@ -80,6 +85,8 @@ module Vapi
80
85
  Vapi::ClientInboundMessageControl.validate_raw(obj: obj)
81
86
  when "say"
82
87
  Vapi::ClientInboundMessageSay.validate_raw(obj: obj)
88
+ when "end-call"
89
+ Vapi::ClientInboundMessageEndCall.validate_raw(obj: obj)
83
90
  when "transfer"
84
91
  Vapi::ClientInboundMessageTransfer.validate_raw(obj: obj)
85
92
  else
@@ -113,6 +120,12 @@ module Vapi
113
120
  new(member: member, discriminant: "say")
114
121
  end
115
122
 
123
+ # @param member [Vapi::ClientInboundMessageEndCall]
124
+ # @return [Vapi::ClientInboundMessageMessage]
125
+ def self.end_call(member:)
126
+ new(member: member, discriminant: "end-call")
127
+ end
128
+
116
129
  # @param member [Vapi::ClientInboundMessageTransfer]
117
130
  # @return [Vapi::ClientInboundMessageMessage]
118
131
  def self.transfer(member:)
@@ -4,9 +4,28 @@ require "json"
4
4
  require_relative "function_tool_with_tool_call"
5
5
  require_relative "ghl_tool_with_tool_call"
6
6
  require_relative "make_tool_with_tool_call"
7
+ require_relative "bash_tool_with_tool_call"
8
+ require_relative "computer_tool_with_tool_call"
9
+ require_relative "text_editor_tool_with_tool_call"
7
10
 
8
11
  module Vapi
9
12
  class ClientMessageToolCallsToolWithToolCallListItem
13
+ # @return [Object]
14
+ attr_reader :member
15
+ # @return [String]
16
+ attr_reader :discriminant
17
+
18
+ private_class_method :new
19
+ alias kind_of? is_a?
20
+
21
+ # @param member [Object]
22
+ # @param discriminant [String]
23
+ # @return [Vapi::ClientMessageToolCallsToolWithToolCallListItem]
24
+ def initialize(member:, discriminant:)
25
+ @member = member
26
+ @discriminant = discriminant
27
+ end
28
+
10
29
  # Deserialize a JSON object to an instance of
11
30
  # ClientMessageToolCallsToolWithToolCallListItem
12
31
  #
@@ -14,55 +33,46 @@ module Vapi
14
33
  # @return [Vapi::ClientMessageToolCallsToolWithToolCallListItem]
15
34
  def self.from_json(json_object:)
16
35
  struct = JSON.parse(json_object, object_class: OpenStruct)
17
- begin
18
- Vapi::FunctionToolWithToolCall.validate_raw(obj: struct)
19
- return Vapi::FunctionToolWithToolCall.from_json(json_object: struct) unless struct.nil?
20
-
21
- return nil
22
- rescue StandardError
23
- # noop
24
- end
25
- begin
26
- Vapi::GhlToolWithToolCall.validate_raw(obj: struct)
27
- return Vapi::GhlToolWithToolCall.from_json(json_object: struct) unless struct.nil?
28
-
29
- return nil
30
- rescue StandardError
31
- # noop
32
- end
33
- begin
34
- Vapi::MakeToolWithToolCall.validate_raw(obj: struct)
35
- return Vapi::MakeToolWithToolCall.from_json(json_object: struct) unless struct.nil?
36
-
37
- return nil
38
- rescue StandardError
39
- # noop
40
- end
41
- begin
42
- struct.is_a?(Object) != false || raise("Passed value for field struct is not the expected type, validation failed.")
43
- return struct unless struct.nil?
44
-
45
- return nil
46
- rescue StandardError
47
- # noop
48
- end
49
- begin
50
- struct.is_a?(Object) != false || raise("Passed value for field struct is not the expected type, validation failed.")
51
- return struct unless struct.nil?
52
-
53
- return nil
54
- rescue StandardError
55
- # noop
56
- end
57
- begin
58
- struct.is_a?(Object) != false || raise("Passed value for field struct is not the expected type, validation failed.")
59
- return struct unless struct.nil?
36
+ member = case struct.type
37
+ when "function"
38
+ Vapi::FunctionToolWithToolCall.from_json(json_object: json_object)
39
+ when "ghl"
40
+ Vapi::GhlToolWithToolCall.from_json(json_object: json_object)
41
+ when "make"
42
+ Vapi::MakeToolWithToolCall.from_json(json_object: json_object)
43
+ when "bash"
44
+ Vapi::BashToolWithToolCall.from_json(json_object: json_object)
45
+ when "computer"
46
+ Vapi::ComputerToolWithToolCall.from_json(json_object: json_object)
47
+ when "textEditor"
48
+ Vapi::TextEditorToolWithToolCall.from_json(json_object: json_object)
49
+ else
50
+ Vapi::FunctionToolWithToolCall.from_json(json_object: json_object)
51
+ end
52
+ new(member: member, discriminant: struct.type)
53
+ end
60
54
 
61
- return nil
62
- rescue StandardError
63
- # noop
55
+ # For Union Types, to_json functionality is delegated to the wrapped member.
56
+ #
57
+ # @return [String]
58
+ def to_json(*_args)
59
+ case @discriminant
60
+ when "function"
61
+ { **@member.to_json, type: @discriminant }.to_json
62
+ when "ghl"
63
+ { **@member.to_json, type: @discriminant }.to_json
64
+ when "make"
65
+ { **@member.to_json, type: @discriminant }.to_json
66
+ when "bash"
67
+ { **@member.to_json, type: @discriminant }.to_json
68
+ when "computer"
69
+ { **@member.to_json, type: @discriminant }.to_json
70
+ when "textEditor"
71
+ { **@member.to_json, type: @discriminant }.to_json
72
+ else
73
+ { "type": @discriminant, value: @member }.to_json
64
74
  end
65
- struct
75
+ @member.to_json
66
76
  end
67
77
 
68
78
  # Leveraged for Union-type generation, validate_raw attempts to parse the given
@@ -72,37 +82,66 @@ module Vapi
72
82
  # @param obj [Object]
73
83
  # @return [Void]
74
84
  def self.validate_raw(obj:)
75
- begin
76
- return Vapi::FunctionToolWithToolCall.validate_raw(obj: obj)
77
- rescue StandardError
78
- # noop
79
- end
80
- begin
81
- return Vapi::GhlToolWithToolCall.validate_raw(obj: obj)
82
- rescue StandardError
83
- # noop
84
- end
85
- begin
86
- return Vapi::MakeToolWithToolCall.validate_raw(obj: obj)
87
- rescue StandardError
88
- # noop
89
- end
90
- begin
91
- return obj.is_a?(Object) != false || raise("Passed value for field obj is not the expected type, validation failed.")
92
- rescue StandardError
93
- # noop
94
- end
95
- begin
96
- return obj.is_a?(Object) != false || raise("Passed value for field obj is not the expected type, validation failed.")
97
- rescue StandardError
98
- # noop
99
- end
100
- begin
101
- return obj.is_a?(Object) != false || raise("Passed value for field obj is not the expected type, validation failed.")
102
- rescue StandardError
103
- # noop
85
+ case obj.type
86
+ when "function"
87
+ Vapi::FunctionToolWithToolCall.validate_raw(obj: obj)
88
+ when "ghl"
89
+ Vapi::GhlToolWithToolCall.validate_raw(obj: obj)
90
+ when "make"
91
+ Vapi::MakeToolWithToolCall.validate_raw(obj: obj)
92
+ when "bash"
93
+ Vapi::BashToolWithToolCall.validate_raw(obj: obj)
94
+ when "computer"
95
+ Vapi::ComputerToolWithToolCall.validate_raw(obj: obj)
96
+ when "textEditor"
97
+ Vapi::TextEditorToolWithToolCall.validate_raw(obj: obj)
98
+ else
99
+ raise("Passed value matched no type within the union, validation failed.")
104
100
  end
105
- raise("Passed value matched no type within the union, validation failed.")
101
+ end
102
+
103
+ # For Union Types, is_a? functionality is delegated to the wrapped member.
104
+ #
105
+ # @param obj [Object]
106
+ # @return [Boolean]
107
+ def is_a?(obj)
108
+ @member.is_a?(obj)
109
+ end
110
+
111
+ # @param member [Vapi::FunctionToolWithToolCall]
112
+ # @return [Vapi::ClientMessageToolCallsToolWithToolCallListItem]
113
+ def self.function(member:)
114
+ new(member: member, discriminant: "function")
115
+ end
116
+
117
+ # @param member [Vapi::GhlToolWithToolCall]
118
+ # @return [Vapi::ClientMessageToolCallsToolWithToolCallListItem]
119
+ def self.ghl(member:)
120
+ new(member: member, discriminant: "ghl")
121
+ end
122
+
123
+ # @param member [Vapi::MakeToolWithToolCall]
124
+ # @return [Vapi::ClientMessageToolCallsToolWithToolCallListItem]
125
+ def self.make(member:)
126
+ new(member: member, discriminant: "make")
127
+ end
128
+
129
+ # @param member [Vapi::BashToolWithToolCall]
130
+ # @return [Vapi::ClientMessageToolCallsToolWithToolCallListItem]
131
+ def self.bash(member:)
132
+ new(member: member, discriminant: "bash")
133
+ end
134
+
135
+ # @param member [Vapi::ComputerToolWithToolCall]
136
+ # @return [Vapi::ClientMessageToolCallsToolWithToolCallListItem]
137
+ def self.computer(member:)
138
+ new(member: member, discriminant: "computer")
139
+ end
140
+
141
+ # @param member [Vapi::TextEditorToolWithToolCall]
142
+ # @return [Vapi::ClientMessageToolCallsToolWithToolCallListItem]
143
+ def self.text_editor(member:)
144
+ new(member: member, discriminant: "textEditor")
106
145
  end
107
146
  end
108
147
  end