vapi_server_sdk 0.0.0.pre.alpha7

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 (541) hide show
  1. checksums.yaml +7 -0
  2. data/lib/core/file_utilities.rb +26 -0
  3. data/lib/environment.rb +7 -0
  4. data/lib/gemconfig.rb +14 -0
  5. data/lib/requests.rb +174 -0
  6. data/lib/types_export.rb +526 -0
  7. data/lib/vapi_server_sdk/analytics/client.rb +115 -0
  8. data/lib/vapi_server_sdk/assistants/client.rb +949 -0
  9. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_background_sound.rb +12 -0
  10. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_client_messages_item.rb +22 -0
  11. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_first_message_mode.rb +21 -0
  12. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_model.rb +201 -0
  13. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_server_messages_item.rb +23 -0
  14. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_transcriber.rb +110 -0
  15. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_voice.rb +188 -0
  16. data/lib/vapi_server_sdk/blocks/client.rb +552 -0
  17. data/lib/vapi_server_sdk/blocks/types/blocks_create_request.rb +109 -0
  18. data/lib/vapi_server_sdk/blocks/types/blocks_create_response.rb +109 -0
  19. data/lib/vapi_server_sdk/blocks/types/blocks_delete_response.rb +109 -0
  20. data/lib/vapi_server_sdk/blocks/types/blocks_get_response.rb +109 -0
  21. data/lib/vapi_server_sdk/blocks/types/blocks_list_response_item.rb +109 -0
  22. data/lib/vapi_server_sdk/blocks/types/blocks_update_response.rb +109 -0
  23. data/lib/vapi_server_sdk/blocks/types/update_block_dto_messages_item.rb +96 -0
  24. data/lib/vapi_server_sdk/blocks/types/update_block_dto_steps_item.rb +96 -0
  25. data/lib/vapi_server_sdk/blocks/types/update_block_dto_tool.rb +163 -0
  26. data/lib/vapi_server_sdk/calls/client.rb +966 -0
  27. data/lib/vapi_server_sdk/files/client.rb +347 -0
  28. data/lib/vapi_server_sdk/logs/client.rb +174 -0
  29. data/lib/vapi_server_sdk/logs/types/logs_get_request_sort_order.rb +10 -0
  30. data/lib/vapi_server_sdk/logs/types/logs_get_request_type.rb +12 -0
  31. data/lib/vapi_server_sdk/phone_numbers/client.rb +455 -0
  32. data/lib/vapi_server_sdk/phone_numbers/types/phone_numbers_create_request.rb +122 -0
  33. data/lib/vapi_server_sdk/phone_numbers/types/phone_numbers_create_response.rb +122 -0
  34. data/lib/vapi_server_sdk/phone_numbers/types/phone_numbers_delete_response.rb +122 -0
  35. data/lib/vapi_server_sdk/phone_numbers/types/phone_numbers_get_response.rb +122 -0
  36. data/lib/vapi_server_sdk/phone_numbers/types/phone_numbers_list_response_item.rb +122 -0
  37. data/lib/vapi_server_sdk/phone_numbers/types/phone_numbers_update_response.rb +122 -0
  38. data/lib/vapi_server_sdk/phone_numbers/types/update_phone_number_dto_fallback_destination.rb +103 -0
  39. data/lib/vapi_server_sdk/squads/client.rb +1050 -0
  40. data/lib/vapi_server_sdk/tools/client.rb +473 -0
  41. data/lib/vapi_server_sdk/tools/types/tools_create_request.rb +161 -0
  42. data/lib/vapi_server_sdk/tools/types/tools_create_response.rb +161 -0
  43. data/lib/vapi_server_sdk/tools/types/tools_delete_response.rb +161 -0
  44. data/lib/vapi_server_sdk/tools/types/tools_get_response.rb +161 -0
  45. data/lib/vapi_server_sdk/tools/types/tools_list_response_item.rb +161 -0
  46. data/lib/vapi_server_sdk/tools/types/tools_update_response.rb +161 -0
  47. data/lib/vapi_server_sdk/tools/types/update_tool_dto_messages_item.rb +122 -0
  48. data/lib/vapi_server_sdk/types/add_voice_to_provider_dto.rb +78 -0
  49. data/lib/vapi_server_sdk/types/analysis.rb +88 -0
  50. data/lib/vapi_server_sdk/types/analysis_cost.rb +93 -0
  51. data/lib/vapi_server_sdk/types/analysis_cost_analysis_type.rb +10 -0
  52. data/lib/vapi_server_sdk/types/analysis_cost_breakdown.rb +137 -0
  53. data/lib/vapi_server_sdk/types/analysis_plan.rb +103 -0
  54. data/lib/vapi_server_sdk/types/analytics_operation.rb +76 -0
  55. data/lib/vapi_server_sdk/types/analytics_operation_column.rb +17 -0
  56. data/lib/vapi_server_sdk/types/analytics_operation_operation.rb +12 -0
  57. data/lib/vapi_server_sdk/types/analytics_query.rb +107 -0
  58. data/lib/vapi_server_sdk/types/analytics_query_group_by_item.rb +11 -0
  59. data/lib/vapi_server_sdk/types/analytics_query_result.rb +96 -0
  60. data/lib/vapi_server_sdk/types/anthropic_credential.rb +101 -0
  61. data/lib/vapi_server_sdk/types/anthropic_model.rb +170 -0
  62. data/lib/vapi_server_sdk/types/anthropic_model_model.rb +11 -0
  63. data/lib/vapi_server_sdk/types/anthropic_model_tools_item.rb +159 -0
  64. data/lib/vapi_server_sdk/types/anyscale_credential.rb +101 -0
  65. data/lib/vapi_server_sdk/types/anyscale_model.rb +169 -0
  66. data/lib/vapi_server_sdk/types/anyscale_model_tools_item.rb +159 -0
  67. data/lib/vapi_server_sdk/types/artifact.rb +133 -0
  68. data/lib/vapi_server_sdk/types/artifact_messages_item.rb +96 -0
  69. data/lib/vapi_server_sdk/types/artifact_plan.rb +139 -0
  70. data/lib/vapi_server_sdk/types/assignment_mutation.rb +189 -0
  71. data/lib/vapi_server_sdk/types/assignment_mutation_conditions_item.rb +94 -0
  72. data/lib/vapi_server_sdk/types/assistant.rb +562 -0
  73. data/lib/vapi_server_sdk/types/assistant_background_sound.rb +10 -0
  74. data/lib/vapi_server_sdk/types/assistant_client_messages_item.rb +20 -0
  75. data/lib/vapi_server_sdk/types/assistant_first_message_mode.rb +19 -0
  76. data/lib/vapi_server_sdk/types/assistant_model.rb +199 -0
  77. data/lib/vapi_server_sdk/types/assistant_overrides.rb +539 -0
  78. data/lib/vapi_server_sdk/types/assistant_overrides_background_sound.rb +10 -0
  79. data/lib/vapi_server_sdk/types/assistant_overrides_client_messages_item.rb +20 -0
  80. data/lib/vapi_server_sdk/types/assistant_overrides_first_message_mode.rb +19 -0
  81. data/lib/vapi_server_sdk/types/assistant_overrides_model.rb +199 -0
  82. data/lib/vapi_server_sdk/types/assistant_overrides_server_messages_item.rb +21 -0
  83. data/lib/vapi_server_sdk/types/assistant_overrides_transcriber.rb +108 -0
  84. data/lib/vapi_server_sdk/types/assistant_overrides_voice.rb +186 -0
  85. data/lib/vapi_server_sdk/types/assistant_server_messages_item.rb +21 -0
  86. data/lib/vapi_server_sdk/types/assistant_transcriber.rb +108 -0
  87. data/lib/vapi_server_sdk/types/assistant_voice.rb +186 -0
  88. data/lib/vapi_server_sdk/types/azure_open_ai_credential.rb +128 -0
  89. data/lib/vapi_server_sdk/types/azure_open_ai_credential_models_item.rb +14 -0
  90. data/lib/vapi_server_sdk/types/azure_open_ai_credential_region.rb +21 -0
  91. data/lib/vapi_server_sdk/types/azure_voice.rb +104 -0
  92. data/lib/vapi_server_sdk/types/azure_voice_id.rb +53 -0
  93. data/lib/vapi_server_sdk/types/azure_voice_id_enum.rb +9 -0
  94. data/lib/vapi_server_sdk/types/block_complete_message.rb +73 -0
  95. data/lib/vapi_server_sdk/types/block_complete_message_conditions_item.rb +94 -0
  96. data/lib/vapi_server_sdk/types/block_start_message.rb +73 -0
  97. data/lib/vapi_server_sdk/types/block_start_message_conditions_item.rb +94 -0
  98. data/lib/vapi_server_sdk/types/bot_message.rb +111 -0
  99. data/lib/vapi_server_sdk/types/bucket_plan.rb +139 -0
  100. data/lib/vapi_server_sdk/types/buy_phone_number_dto.rb +151 -0
  101. data/lib/vapi_server_sdk/types/buy_phone_number_dto_fallback_destination.rb +100 -0
  102. data/lib/vapi_server_sdk/types/byo_phone_number.rb +224 -0
  103. data/lib/vapi_server_sdk/types/byo_phone_number_fallback_destination.rb +100 -0
  104. data/lib/vapi_server_sdk/types/byo_sip_trunk_credential.rb +166 -0
  105. data/lib/vapi_server_sdk/types/call.rb +425 -0
  106. data/lib/vapi_server_sdk/types/call_costs_item.rb +146 -0
  107. data/lib/vapi_server_sdk/types/call_destination.rb +96 -0
  108. data/lib/vapi_server_sdk/types/call_ended_reason.rb +175 -0
  109. data/lib/vapi_server_sdk/types/call_messages_item.rb +96 -0
  110. data/lib/vapi_server_sdk/types/call_paginated_response.rb +75 -0
  111. data/lib/vapi_server_sdk/types/call_phone_call_provider.rb +11 -0
  112. data/lib/vapi_server_sdk/types/call_phone_call_transport.rb +10 -0
  113. data/lib/vapi_server_sdk/types/call_status.rb +12 -0
  114. data/lib/vapi_server_sdk/types/call_type.rb +10 -0
  115. data/lib/vapi_server_sdk/types/callback_step.rb +204 -0
  116. data/lib/vapi_server_sdk/types/callback_step_block.rb +108 -0
  117. data/lib/vapi_server_sdk/types/cartesia_credential.rb +101 -0
  118. data/lib/vapi_server_sdk/types/cartesia_voice.rb +113 -0
  119. data/lib/vapi_server_sdk/types/cartesia_voice_language.rb +15 -0
  120. data/lib/vapi_server_sdk/types/cartesia_voice_model.rb +10 -0
  121. data/lib/vapi_server_sdk/types/chunk_plan.rb +128 -0
  122. data/lib/vapi_server_sdk/types/client_inbound_message.rb +63 -0
  123. data/lib/vapi_server_sdk/types/client_inbound_message_add_message.rb +61 -0
  124. data/lib/vapi_server_sdk/types/client_inbound_message_control.rb +56 -0
  125. data/lib/vapi_server_sdk/types/client_inbound_message_control_control.rb +10 -0
  126. data/lib/vapi_server_sdk/types/client_inbound_message_message.rb +109 -0
  127. data/lib/vapi_server_sdk/types/client_inbound_message_say.rb +67 -0
  128. data/lib/vapi_server_sdk/types/client_message.rb +65 -0
  129. data/lib/vapi_server_sdk/types/client_message_conversation_update.rb +79 -0
  130. data/lib/vapi_server_sdk/types/client_message_conversation_update_messages_item.rb +97 -0
  131. data/lib/vapi_server_sdk/types/client_message_hang.rb +47 -0
  132. data/lib/vapi_server_sdk/types/client_message_language_changed.rb +55 -0
  133. data/lib/vapi_server_sdk/types/client_message_message.rb +214 -0
  134. data/lib/vapi_server_sdk/types/client_message_metadata.rb +55 -0
  135. data/lib/vapi_server_sdk/types/client_message_model_output.rb +55 -0
  136. data/lib/vapi_server_sdk/types/client_message_speech_update.rb +67 -0
  137. data/lib/vapi_server_sdk/types/client_message_speech_update_role.rb +9 -0
  138. data/lib/vapi_server_sdk/types/client_message_speech_update_status.rb +9 -0
  139. data/lib/vapi_server_sdk/types/client_message_tool_calls.rb +75 -0
  140. data/lib/vapi_server_sdk/types/client_message_tool_calls_result.rb +55 -0
  141. data/lib/vapi_server_sdk/types/client_message_tool_calls_tool_with_tool_call_list_item.rb +108 -0
  142. data/lib/vapi_server_sdk/types/client_message_transcript.rb +74 -0
  143. data/lib/vapi_server_sdk/types/client_message_transcript_role.rb +9 -0
  144. data/lib/vapi_server_sdk/types/client_message_transcript_transcript_type.rb +9 -0
  145. data/lib/vapi_server_sdk/types/client_message_user_interrupted.rb +47 -0
  146. data/lib/vapi_server_sdk/types/client_message_voice_input.rb +55 -0
  147. data/lib/vapi_server_sdk/types/clone_voice_dto.rb +83 -0
  148. data/lib/vapi_server_sdk/types/condition.rb +73 -0
  149. data/lib/vapi_server_sdk/types/condition_operator.rb +13 -0
  150. data/lib/vapi_server_sdk/types/conversation_block.rb +239 -0
  151. data/lib/vapi_server_sdk/types/conversation_block_messages_item.rb +94 -0
  152. data/lib/vapi_server_sdk/types/cost_breakdown.rb +141 -0
  153. data/lib/vapi_server_sdk/types/create_anthropic_credential_dto.rb +65 -0
  154. data/lib/vapi_server_sdk/types/create_anyscale_credential_dto.rb +65 -0
  155. data/lib/vapi_server_sdk/types/create_assistant_dto.rb +529 -0
  156. data/lib/vapi_server_sdk/types/create_assistant_dto_background_sound.rb +10 -0
  157. data/lib/vapi_server_sdk/types/create_assistant_dto_client_messages_item.rb +20 -0
  158. data/lib/vapi_server_sdk/types/create_assistant_dto_first_message_mode.rb +19 -0
  159. data/lib/vapi_server_sdk/types/create_assistant_dto_model.rb +199 -0
  160. data/lib/vapi_server_sdk/types/create_assistant_dto_server_messages_item.rb +21 -0
  161. data/lib/vapi_server_sdk/types/create_assistant_dto_transcriber.rb +108 -0
  162. data/lib/vapi_server_sdk/types/create_assistant_dto_voice.rb +186 -0
  163. data/lib/vapi_server_sdk/types/create_azure_open_ai_credential_dto.rb +94 -0
  164. data/lib/vapi_server_sdk/types/create_azure_open_ai_credential_dto_models_item.rb +14 -0
  165. data/lib/vapi_server_sdk/types/create_azure_open_ai_credential_dto_region.rb +21 -0
  166. data/lib/vapi_server_sdk/types/create_byo_phone_number_dto.rb +191 -0
  167. data/lib/vapi_server_sdk/types/create_byo_phone_number_dto_fallback_destination.rb +101 -0
  168. data/lib/vapi_server_sdk/types/create_byo_sip_trunk_credential_dto.rb +133 -0
  169. data/lib/vapi_server_sdk/types/create_cartesia_credential_dto.rb +65 -0
  170. data/lib/vapi_server_sdk/types/create_conversation_block_dto.rb +206 -0
  171. data/lib/vapi_server_sdk/types/create_conversation_block_dto_messages_item.rb +95 -0
  172. data/lib/vapi_server_sdk/types/create_custom_llm_credential_dto.rb +65 -0
  173. data/lib/vapi_server_sdk/types/create_customer_dto.rb +117 -0
  174. data/lib/vapi_server_sdk/types/create_deep_infra_credential_dto.rb +65 -0
  175. data/lib/vapi_server_sdk/types/create_deepgram_credential_dto.rb +76 -0
  176. data/lib/vapi_server_sdk/types/create_dtmf_tool_dto.rb +139 -0
  177. data/lib/vapi_server_sdk/types/create_dtmf_tool_dto_messages_item.rb +120 -0
  178. data/lib/vapi_server_sdk/types/create_eleven_labs_credential_dto.rb +65 -0
  179. data/lib/vapi_server_sdk/types/create_end_call_tool_dto.rb +139 -0
  180. data/lib/vapi_server_sdk/types/create_end_call_tool_dto_messages_item.rb +120 -0
  181. data/lib/vapi_server_sdk/types/create_function_tool_dto.rb +139 -0
  182. data/lib/vapi_server_sdk/types/create_function_tool_dto_messages_item.rb +120 -0
  183. data/lib/vapi_server_sdk/types/create_gcp_credential_dto.rb +104 -0
  184. data/lib/vapi_server_sdk/types/create_ghl_tool_dto.rb +158 -0
  185. data/lib/vapi_server_sdk/types/create_ghl_tool_dto_messages_item.rb +120 -0
  186. data/lib/vapi_server_sdk/types/create_gladia_credential_dto.rb +65 -0
  187. data/lib/vapi_server_sdk/types/create_go_high_level_credential_dto.rb +65 -0
  188. data/lib/vapi_server_sdk/types/create_groq_credential_dto.rb +65 -0
  189. data/lib/vapi_server_sdk/types/create_lmnt_credential_dto.rb +65 -0
  190. data/lib/vapi_server_sdk/types/create_make_credential_dto.rb +79 -0
  191. data/lib/vapi_server_sdk/types/create_make_tool_dto.rb +158 -0
  192. data/lib/vapi_server_sdk/types/create_make_tool_dto_messages_item.rb +120 -0
  193. data/lib/vapi_server_sdk/types/create_open_ai_credential_dto.rb +65 -0
  194. data/lib/vapi_server_sdk/types/create_open_router_credential_dto.rb +65 -0
  195. data/lib/vapi_server_sdk/types/create_org_dto.rb +129 -0
  196. data/lib/vapi_server_sdk/types/create_outbound_call_dto.rb +191 -0
  197. data/lib/vapi_server_sdk/types/create_output_tool_dto.rb +139 -0
  198. data/lib/vapi_server_sdk/types/create_output_tool_dto_messages_item.rb +120 -0
  199. data/lib/vapi_server_sdk/types/create_perplexity_ai_credential_dto.rb +65 -0
  200. data/lib/vapi_server_sdk/types/create_play_ht_credential_dto.rb +72 -0
  201. data/lib/vapi_server_sdk/types/create_rime_ai_credential_dto.rb +65 -0
  202. data/lib/vapi_server_sdk/types/create_runpod_credential_dto.rb +65 -0
  203. data/lib/vapi_server_sdk/types/create_s_3_credential_dto.rb +101 -0
  204. data/lib/vapi_server_sdk/types/create_squad_dto.rb +94 -0
  205. data/lib/vapi_server_sdk/types/create_together_ai_credential_dto.rb +65 -0
  206. data/lib/vapi_server_sdk/types/create_token_dto.rb +81 -0
  207. data/lib/vapi_server_sdk/types/create_token_dto_tag.rb +9 -0
  208. data/lib/vapi_server_sdk/types/create_tool_call_block_dto.rb +168 -0
  209. data/lib/vapi_server_sdk/types/create_tool_call_block_dto_messages_item.rb +94 -0
  210. data/lib/vapi_server_sdk/types/create_tool_call_block_dto_tool.rb +161 -0
  211. data/lib/vapi_server_sdk/types/create_tool_template_dto.rb +131 -0
  212. data/lib/vapi_server_sdk/types/create_tool_template_dto_details.rb +159 -0
  213. data/lib/vapi_server_sdk/types/create_tool_template_dto_provider.rb +9 -0
  214. data/lib/vapi_server_sdk/types/create_tool_template_dto_provider_details.rb +107 -0
  215. data/lib/vapi_server_sdk/types/create_tool_template_dto_visibility.rb +8 -0
  216. data/lib/vapi_server_sdk/types/create_transfer_call_tool_dto.rb +161 -0
  217. data/lib/vapi_server_sdk/types/create_transfer_call_tool_dto_destinations_item.rb +121 -0
  218. data/lib/vapi_server_sdk/types/create_transfer_call_tool_dto_messages_item.rb +121 -0
  219. data/lib/vapi_server_sdk/types/create_twilio_credential_dto.rb +72 -0
  220. data/lib/vapi_server_sdk/types/create_twilio_phone_number_dto.rb +167 -0
  221. data/lib/vapi_server_sdk/types/create_twilio_phone_number_dto_fallback_destination.rb +101 -0
  222. data/lib/vapi_server_sdk/types/create_vapi_phone_number_dto.rb +155 -0
  223. data/lib/vapi_server_sdk/types/create_vapi_phone_number_dto_fallback_destination.rb +101 -0
  224. data/lib/vapi_server_sdk/types/create_voicemail_tool_dto.rb +139 -0
  225. data/lib/vapi_server_sdk/types/create_voicemail_tool_dto_messages_item.rb +120 -0
  226. data/lib/vapi_server_sdk/types/create_vonage_credential_dto.rb +72 -0
  227. data/lib/vapi_server_sdk/types/create_vonage_phone_number_dto.rb +161 -0
  228. data/lib/vapi_server_sdk/types/create_vonage_phone_number_dto_fallback_destination.rb +101 -0
  229. data/lib/vapi_server_sdk/types/create_web_call_dto.rb +123 -0
  230. data/lib/vapi_server_sdk/types/create_workflow_block_dto.rb +154 -0
  231. data/lib/vapi_server_sdk/types/create_workflow_block_dto_messages_item.rb +94 -0
  232. data/lib/vapi_server_sdk/types/create_workflow_block_dto_steps_item.rb +94 -0
  233. data/lib/vapi_server_sdk/types/custom_llm_credential.rb +101 -0
  234. data/lib/vapi_server_sdk/types/custom_llm_model.rb +204 -0
  235. data/lib/vapi_server_sdk/types/custom_llm_model_metadata_send_mode.rb +18 -0
  236. data/lib/vapi_server_sdk/types/custom_llm_model_tools_item.rb +159 -0
  237. data/lib/vapi_server_sdk/types/deep_infra_credential.rb +101 -0
  238. data/lib/vapi_server_sdk/types/deep_infra_model.rb +169 -0
  239. data/lib/vapi_server_sdk/types/deep_infra_model_tools_item.rb +159 -0
  240. data/lib/vapi_server_sdk/types/deepgram_credential.rb +114 -0
  241. data/lib/vapi_server_sdk/types/deepgram_transcriber.rb +143 -0
  242. data/lib/vapi_server_sdk/types/deepgram_transcriber_language.rb +62 -0
  243. data/lib/vapi_server_sdk/types/deepgram_transcriber_model.rb +34 -0
  244. data/lib/vapi_server_sdk/types/deepgram_voice.rb +96 -0
  245. data/lib/vapi_server_sdk/types/deepgram_voice_id.rb +53 -0
  246. data/lib/vapi_server_sdk/types/deepgram_voice_id_enum.rb +18 -0
  247. data/lib/vapi_server_sdk/types/dtmf_tool.rb +178 -0
  248. data/lib/vapi_server_sdk/types/dtmf_tool_messages_item.rb +120 -0
  249. data/lib/vapi_server_sdk/types/eleven_labs_credential.rb +101 -0
  250. data/lib/vapi_server_sdk/types/eleven_labs_voice.rb +176 -0
  251. data/lib/vapi_server_sdk/types/eleven_labs_voice_id.rb +54 -0
  252. data/lib/vapi_server_sdk/types/eleven_labs_voice_id_enum.rb +21 -0
  253. data/lib/vapi_server_sdk/types/eleven_labs_voice_model.rb +12 -0
  254. data/lib/vapi_server_sdk/types/end_call_tool.rb +178 -0
  255. data/lib/vapi_server_sdk/types/end_call_tool_messages_item.rb +120 -0
  256. data/lib/vapi_server_sdk/types/error.rb +55 -0
  257. data/lib/vapi_server_sdk/types/exact_replacement.rb +65 -0
  258. data/lib/vapi_server_sdk/types/file.rb +185 -0
  259. data/lib/vapi_server_sdk/types/file_status.rb +8 -0
  260. data/lib/vapi_server_sdk/types/format_plan.rb +130 -0
  261. data/lib/vapi_server_sdk/types/format_plan_replacements_item.rb +94 -0
  262. data/lib/vapi_server_sdk/types/function_tool.rb +178 -0
  263. data/lib/vapi_server_sdk/types/function_tool_messages_item.rb +120 -0
  264. data/lib/vapi_server_sdk/types/function_tool_provider_details.rb +71 -0
  265. data/lib/vapi_server_sdk/types/function_tool_with_tool_call.rb +158 -0
  266. data/lib/vapi_server_sdk/types/function_tool_with_tool_call_messages_item.rb +120 -0
  267. data/lib/vapi_server_sdk/types/gcp_credential.rb +138 -0
  268. data/lib/vapi_server_sdk/types/gcp_key.rb +143 -0
  269. data/lib/vapi_server_sdk/types/ghl_tool.rb +192 -0
  270. data/lib/vapi_server_sdk/types/ghl_tool_messages_item.rb +120 -0
  271. data/lib/vapi_server_sdk/types/ghl_tool_metadata.rb +67 -0
  272. data/lib/vapi_server_sdk/types/ghl_tool_provider_details.rb +115 -0
  273. data/lib/vapi_server_sdk/types/ghl_tool_with_tool_call.rb +173 -0
  274. data/lib/vapi_server_sdk/types/ghl_tool_with_tool_call_messages_item.rb +120 -0
  275. data/lib/vapi_server_sdk/types/gladia_credential.rb +101 -0
  276. data/lib/vapi_server_sdk/types/gladia_transcriber.rb +122 -0
  277. data/lib/vapi_server_sdk/types/gladia_transcriber_language.rb +108 -0
  278. data/lib/vapi_server_sdk/types/gladia_transcriber_language_behaviour.rb +9 -0
  279. data/lib/vapi_server_sdk/types/gladia_transcriber_model.rb +8 -0
  280. data/lib/vapi_server_sdk/types/go_high_level_credential.rb +101 -0
  281. data/lib/vapi_server_sdk/types/groq_credential.rb +101 -0
  282. data/lib/vapi_server_sdk/types/groq_model.rb +170 -0
  283. data/lib/vapi_server_sdk/types/groq_model_model.rb +17 -0
  284. data/lib/vapi_server_sdk/types/groq_model_tools_item.rb +159 -0
  285. data/lib/vapi_server_sdk/types/handoff_step.rb +204 -0
  286. data/lib/vapi_server_sdk/types/handoff_step_block.rb +108 -0
  287. data/lib/vapi_server_sdk/types/import_twilio_phone_number_dto.rb +167 -0
  288. data/lib/vapi_server_sdk/types/import_twilio_phone_number_dto_fallback_destination.rb +101 -0
  289. data/lib/vapi_server_sdk/types/import_vonage_phone_number_dto.rb +165 -0
  290. data/lib/vapi_server_sdk/types/import_vonage_phone_number_dto_fallback_destination.rb +101 -0
  291. data/lib/vapi_server_sdk/types/invite_user_dto.rb +66 -0
  292. data/lib/vapi_server_sdk/types/invite_user_dto_role.rb +9 -0
  293. data/lib/vapi_server_sdk/types/json_schema.rb +125 -0
  294. data/lib/vapi_server_sdk/types/json_schema_type.rb +21 -0
  295. data/lib/vapi_server_sdk/types/knowledge_base.rb +74 -0
  296. data/lib/vapi_server_sdk/types/lmnt_credential.rb +101 -0
  297. data/lib/vapi_server_sdk/types/lmnt_voice.rb +104 -0
  298. data/lib/vapi_server_sdk/types/lmnt_voice_id.rb +53 -0
  299. data/lib/vapi_server_sdk/types/lmnt_voice_id_enum.rb +8 -0
  300. data/lib/vapi_server_sdk/types/log.rb +248 -0
  301. data/lib/vapi_server_sdk/types/log_request_http_method.rb +12 -0
  302. data/lib/vapi_server_sdk/types/log_resource.rb +15 -0
  303. data/lib/vapi_server_sdk/types/log_type.rb +11 -0
  304. data/lib/vapi_server_sdk/types/logs_paginated_response.rb +75 -0
  305. data/lib/vapi_server_sdk/types/make_credential.rb +118 -0
  306. data/lib/vapi_server_sdk/types/make_tool.rb +192 -0
  307. data/lib/vapi_server_sdk/types/make_tool_messages_item.rb +120 -0
  308. data/lib/vapi_server_sdk/types/make_tool_metadata.rb +67 -0
  309. data/lib/vapi_server_sdk/types/make_tool_provider_details.rb +107 -0
  310. data/lib/vapi_server_sdk/types/make_tool_with_tool_call.rb +173 -0
  311. data/lib/vapi_server_sdk/types/make_tool_with_tool_call_messages_item.rb +120 -0
  312. data/lib/vapi_server_sdk/types/message_plan.rb +107 -0
  313. data/lib/vapi_server_sdk/types/metrics.rb +165 -0
  314. data/lib/vapi_server_sdk/types/model_based_condition.rb +117 -0
  315. data/lib/vapi_server_sdk/types/model_cost.rb +106 -0
  316. data/lib/vapi_server_sdk/types/monitor.rb +71 -0
  317. data/lib/vapi_server_sdk/types/monitor_plan.rb +85 -0
  318. data/lib/vapi_server_sdk/types/neets_voice.rb +96 -0
  319. data/lib/vapi_server_sdk/types/neets_voice_id.rb +53 -0
  320. data/lib/vapi_server_sdk/types/neets_voice_id_enum.rb +7 -0
  321. data/lib/vapi_server_sdk/types/open_ai_credential.rb +101 -0
  322. data/lib/vapi_server_sdk/types/open_ai_function.rb +96 -0
  323. data/lib/vapi_server_sdk/types/open_ai_function_parameters.rb +85 -0
  324. data/lib/vapi_server_sdk/types/open_ai_message.rb +68 -0
  325. data/lib/vapi_server_sdk/types/open_ai_message_role.rb +11 -0
  326. data/lib/vapi_server_sdk/types/open_ai_model.rb +191 -0
  327. data/lib/vapi_server_sdk/types/open_ai_model_fallback_models_item.rb +23 -0
  328. data/lib/vapi_server_sdk/types/open_ai_model_model.rb +24 -0
  329. data/lib/vapi_server_sdk/types/open_ai_model_tools_item.rb +159 -0
  330. data/lib/vapi_server_sdk/types/open_ai_voice.rb +99 -0
  331. data/lib/vapi_server_sdk/types/open_ai_voice_id.rb +13 -0
  332. data/lib/vapi_server_sdk/types/open_router_credential.rb +101 -0
  333. data/lib/vapi_server_sdk/types/open_router_model.rb +169 -0
  334. data/lib/vapi_server_sdk/types/open_router_model_tools_item.rb +159 -0
  335. data/lib/vapi_server_sdk/types/org.rb +212 -0
  336. data/lib/vapi_server_sdk/types/org_plan.rb +79 -0
  337. data/lib/vapi_server_sdk/types/output_tool.rb +178 -0
  338. data/lib/vapi_server_sdk/types/output_tool_messages_item.rb +120 -0
  339. data/lib/vapi_server_sdk/types/pagination_meta.rb +72 -0
  340. data/lib/vapi_server_sdk/types/perplexity_ai_credential.rb +101 -0
  341. data/lib/vapi_server_sdk/types/perplexity_ai_model.rb +169 -0
  342. data/lib/vapi_server_sdk/types/perplexity_ai_model_tools_item.rb +159 -0
  343. data/lib/vapi_server_sdk/types/play_ht_credential.rb +109 -0
  344. data/lib/vapi_server_sdk/types/play_ht_voice.rb +166 -0
  345. data/lib/vapi_server_sdk/types/play_ht_voice_emotion.rb +19 -0
  346. data/lib/vapi_server_sdk/types/play_ht_voice_id.rb +53 -0
  347. data/lib/vapi_server_sdk/types/play_ht_voice_id_enum.rb +16 -0
  348. data/lib/vapi_server_sdk/types/punctuation_boundary.rb +21 -0
  349. data/lib/vapi_server_sdk/types/regex_option.rb +74 -0
  350. data/lib/vapi_server_sdk/types/regex_option_type.rb +13 -0
  351. data/lib/vapi_server_sdk/types/regex_replacement.rb +82 -0
  352. data/lib/vapi_server_sdk/types/rime_ai_credential.rb +101 -0
  353. data/lib/vapi_server_sdk/types/rime_ai_voice.rb +114 -0
  354. data/lib/vapi_server_sdk/types/rime_ai_voice_id.rb +53 -0
  355. data/lib/vapi_server_sdk/types/rime_ai_voice_id_enum.rb +87 -0
  356. data/lib/vapi_server_sdk/types/rime_ai_voice_model.rb +9 -0
  357. data/lib/vapi_server_sdk/types/rule_based_condition.rb +195 -0
  358. data/lib/vapi_server_sdk/types/rule_based_condition_operator.rb +14 -0
  359. data/lib/vapi_server_sdk/types/runpod_credential.rb +101 -0
  360. data/lib/vapi_server_sdk/types/s_3_credential.rb +134 -0
  361. data/lib/vapi_server_sdk/types/sbc_configuration.rb +47 -0
  362. data/lib/vapi_server_sdk/types/server.rb +82 -0
  363. data/lib/vapi_server_sdk/types/server_message.rb +77 -0
  364. data/lib/vapi_server_sdk/types/server_message_assistant_request.rb +169 -0
  365. data/lib/vapi_server_sdk/types/server_message_assistant_request_phone_number.rb +125 -0
  366. data/lib/vapi_server_sdk/types/server_message_conversation_update.rb +197 -0
  367. data/lib/vapi_server_sdk/types/server_message_conversation_update_messages_item.rb +97 -0
  368. data/lib/vapi_server_sdk/types/server_message_conversation_update_phone_number.rb +125 -0
  369. data/lib/vapi_server_sdk/types/server_message_end_of_call_report.rb +241 -0
  370. data/lib/vapi_server_sdk/types/server_message_end_of_call_report_costs_item.rb +147 -0
  371. data/lib/vapi_server_sdk/types/server_message_end_of_call_report_ended_reason.rb +176 -0
  372. data/lib/vapi_server_sdk/types/server_message_end_of_call_report_phone_number.rb +125 -0
  373. data/lib/vapi_server_sdk/types/server_message_hang.rb +169 -0
  374. data/lib/vapi_server_sdk/types/server_message_hang_phone_number.rb +124 -0
  375. data/lib/vapi_server_sdk/types/server_message_language_changed.rb +177 -0
  376. data/lib/vapi_server_sdk/types/server_message_language_changed_phone_number.rb +125 -0
  377. data/lib/vapi_server_sdk/types/server_message_message.rb +285 -0
  378. data/lib/vapi_server_sdk/types/server_message_model_output.rb +177 -0
  379. data/lib/vapi_server_sdk/types/server_message_model_output_phone_number.rb +124 -0
  380. data/lib/vapi_server_sdk/types/server_message_phone_call_control.rb +192 -0
  381. data/lib/vapi_server_sdk/types/server_message_phone_call_control_destination.rb +96 -0
  382. data/lib/vapi_server_sdk/types/server_message_phone_call_control_phone_number.rb +125 -0
  383. data/lib/vapi_server_sdk/types/server_message_phone_call_control_request.rb +9 -0
  384. data/lib/vapi_server_sdk/types/server_message_response.rb +65 -0
  385. data/lib/vapi_server_sdk/types/server_message_response_assistant_request.rb +162 -0
  386. data/lib/vapi_server_sdk/types/server_message_response_assistant_request_destination.rb +98 -0
  387. data/lib/vapi_server_sdk/types/server_message_response_message_response.rb +85 -0
  388. data/lib/vapi_server_sdk/types/server_message_response_tool_calls.rb +71 -0
  389. data/lib/vapi_server_sdk/types/server_message_response_transfer_destination_request.rb +75 -0
  390. data/lib/vapi_server_sdk/types/server_message_response_transfer_destination_request_destination.rb +122 -0
  391. data/lib/vapi_server_sdk/types/server_message_response_voice_request.rb +97 -0
  392. data/lib/vapi_server_sdk/types/server_message_speech_update.rb +187 -0
  393. data/lib/vapi_server_sdk/types/server_message_speech_update_phone_number.rb +124 -0
  394. data/lib/vapi_server_sdk/types/server_message_speech_update_role.rb +9 -0
  395. data/lib/vapi_server_sdk/types/server_message_speech_update_status.rb +9 -0
  396. data/lib/vapi_server_sdk/types/server_message_status_update.rb +255 -0
  397. data/lib/vapi_server_sdk/types/server_message_status_update_destination.rb +96 -0
  398. data/lib/vapi_server_sdk/types/server_message_status_update_ended_reason.rb +175 -0
  399. data/lib/vapi_server_sdk/types/server_message_status_update_messages_item.rb +97 -0
  400. data/lib/vapi_server_sdk/types/server_message_status_update_phone_number.rb +124 -0
  401. data/lib/vapi_server_sdk/types/server_message_status_update_status.rb +12 -0
  402. data/lib/vapi_server_sdk/types/server_message_tool_calls.rb +195 -0
  403. data/lib/vapi_server_sdk/types/server_message_tool_calls_phone_number.rb +124 -0
  404. data/lib/vapi_server_sdk/types/server_message_tool_calls_tool_with_tool_call_list_item.rb +108 -0
  405. data/lib/vapi_server_sdk/types/server_message_transcript.rb +195 -0
  406. data/lib/vapi_server_sdk/types/server_message_transcript_phone_number.rb +124 -0
  407. data/lib/vapi_server_sdk/types/server_message_transcript_role.rb +9 -0
  408. data/lib/vapi_server_sdk/types/server_message_transcript_transcript_type.rb +9 -0
  409. data/lib/vapi_server_sdk/types/server_message_transfer_destination_request.rb +171 -0
  410. data/lib/vapi_server_sdk/types/server_message_transfer_destination_request_phone_number.rb +125 -0
  411. data/lib/vapi_server_sdk/types/server_message_transfer_update.rb +213 -0
  412. data/lib/vapi_server_sdk/types/server_message_transfer_update_destination.rb +122 -0
  413. data/lib/vapi_server_sdk/types/server_message_transfer_update_phone_number.rb +125 -0
  414. data/lib/vapi_server_sdk/types/server_message_user_interrupted.rb +169 -0
  415. data/lib/vapi_server_sdk/types/server_message_user_interrupted_phone_number.rb +125 -0
  416. data/lib/vapi_server_sdk/types/server_message_voice_input.rb +177 -0
  417. data/lib/vapi_server_sdk/types/server_message_voice_input_phone_number.rb +124 -0
  418. data/lib/vapi_server_sdk/types/server_message_voice_request.rb +185 -0
  419. data/lib/vapi_server_sdk/types/server_message_voice_request_phone_number.rb +124 -0
  420. data/lib/vapi_server_sdk/types/sip_trunk_gateway.rb +138 -0
  421. data/lib/vapi_server_sdk/types/sip_trunk_gateway_outbound_protocol.rb +12 -0
  422. data/lib/vapi_server_sdk/types/sip_trunk_outbound_authentication_plan.rb +86 -0
  423. data/lib/vapi_server_sdk/types/sip_trunk_outbound_sip_register_plan.rb +74 -0
  424. data/lib/vapi_server_sdk/types/squad.rb +132 -0
  425. data/lib/vapi_server_sdk/types/squad_member_dto.rb +113 -0
  426. data/lib/vapi_server_sdk/types/start_speaking_plan.rb +119 -0
  427. data/lib/vapi_server_sdk/types/step_destination.rb +82 -0
  428. data/lib/vapi_server_sdk/types/step_destination_conditions_item.rb +94 -0
  429. data/lib/vapi_server_sdk/types/stop_speaking_plan.rb +120 -0
  430. data/lib/vapi_server_sdk/types/structured_data_plan.rb +140 -0
  431. data/lib/vapi_server_sdk/types/success_evaluation_plan.rb +161 -0
  432. data/lib/vapi_server_sdk/types/success_evaluation_plan_rubric.rb +29 -0
  433. data/lib/vapi_server_sdk/types/summary_plan.rb +110 -0
  434. data/lib/vapi_server_sdk/types/sync_voice_library_dto.rb +58 -0
  435. data/lib/vapi_server_sdk/types/sync_voice_library_dto_providers_item.rb +16 -0
  436. data/lib/vapi_server_sdk/types/system_message.rb +79 -0
  437. data/lib/vapi_server_sdk/types/talkscriber_transcriber.rb +72 -0
  438. data/lib/vapi_server_sdk/types/talkscriber_transcriber_language.rb +109 -0
  439. data/lib/vapi_server_sdk/types/template.rb +164 -0
  440. data/lib/vapi_server_sdk/types/template_details.rb +159 -0
  441. data/lib/vapi_server_sdk/types/template_provider.rb +9 -0
  442. data/lib/vapi_server_sdk/types/template_provider_details.rb +107 -0
  443. data/lib/vapi_server_sdk/types/template_visibility.rb +8 -0
  444. data/lib/vapi_server_sdk/types/time_range.rb +91 -0
  445. data/lib/vapi_server_sdk/types/time_range_step.rb +18 -0
  446. data/lib/vapi_server_sdk/types/together_ai_credential.rb +101 -0
  447. data/lib/vapi_server_sdk/types/together_ai_model.rb +169 -0
  448. data/lib/vapi_server_sdk/types/together_ai_model_tools_item.rb +159 -0
  449. data/lib/vapi_server_sdk/types/token.rb +127 -0
  450. data/lib/vapi_server_sdk/types/token_restrictions.rb +103 -0
  451. data/lib/vapi_server_sdk/types/token_tag.rb +9 -0
  452. data/lib/vapi_server_sdk/types/tool_call.rb +78 -0
  453. data/lib/vapi_server_sdk/types/tool_call_block.rb +201 -0
  454. data/lib/vapi_server_sdk/types/tool_call_block_messages_item.rb +94 -0
  455. data/lib/vapi_server_sdk/types/tool_call_block_tool.rb +161 -0
  456. data/lib/vapi_server_sdk/types/tool_call_function.rb +65 -0
  457. data/lib/vapi_server_sdk/types/tool_call_message.rb +92 -0
  458. data/lib/vapi_server_sdk/types/tool_call_result.rb +126 -0
  459. data/lib/vapi_server_sdk/types/tool_call_result_message.rb +100 -0
  460. data/lib/vapi_server_sdk/types/tool_call_result_message_item.rb +94 -0
  461. data/lib/vapi_server_sdk/types/tool_message_complete.rb +130 -0
  462. data/lib/vapi_server_sdk/types/tool_message_complete_role.rb +24 -0
  463. data/lib/vapi_server_sdk/types/tool_message_delayed.rb +86 -0
  464. data/lib/vapi_server_sdk/types/tool_message_failed.rb +88 -0
  465. data/lib/vapi_server_sdk/types/tool_message_start.rb +73 -0
  466. data/lib/vapi_server_sdk/types/tool_template_metadata.rb +78 -0
  467. data/lib/vapi_server_sdk/types/tool_template_setup.rb +86 -0
  468. data/lib/vapi_server_sdk/types/transcriber_cost.rb +90 -0
  469. data/lib/vapi_server_sdk/types/transcript_plan.rb +122 -0
  470. data/lib/vapi_server_sdk/types/transcription_endpointing_plan.rb +109 -0
  471. data/lib/vapi_server_sdk/types/transfer_call_tool.rb +194 -0
  472. data/lib/vapi_server_sdk/types/transfer_call_tool_destinations_item.rb +120 -0
  473. data/lib/vapi_server_sdk/types/transfer_call_tool_messages_item.rb +120 -0
  474. data/lib/vapi_server_sdk/types/transfer_destination_assistant.rb +181 -0
  475. data/lib/vapi_server_sdk/types/transfer_destination_number.rb +163 -0
  476. data/lib/vapi_server_sdk/types/transfer_destination_sip.rb +90 -0
  477. data/lib/vapi_server_sdk/types/transfer_destination_step.rb +90 -0
  478. data/lib/vapi_server_sdk/types/transfer_mode.rb +8 -0
  479. data/lib/vapi_server_sdk/types/transport_configuration_twilio.rb +125 -0
  480. data/lib/vapi_server_sdk/types/transport_configuration_twilio_recording_channels.rb +16 -0
  481. data/lib/vapi_server_sdk/types/transport_cost.rb +67 -0
  482. data/lib/vapi_server_sdk/types/twilio_credential.rb +110 -0
  483. data/lib/vapi_server_sdk/types/twilio_phone_number.rb +200 -0
  484. data/lib/vapi_server_sdk/types/twilio_phone_number_fallback_destination.rb +100 -0
  485. data/lib/vapi_server_sdk/types/twilio_voicemail_detection.rb +248 -0
  486. data/lib/vapi_server_sdk/types/twilio_voicemail_detection_voicemail_detection_types_item.rb +13 -0
  487. data/lib/vapi_server_sdk/types/update_anthropic_credential_dto.rb +65 -0
  488. data/lib/vapi_server_sdk/types/update_anyscale_credential_dto.rb +65 -0
  489. data/lib/vapi_server_sdk/types/update_azure_open_ai_credential_dto.rb +94 -0
  490. data/lib/vapi_server_sdk/types/update_azure_open_ai_credential_dto_models_item.rb +14 -0
  491. data/lib/vapi_server_sdk/types/update_azure_open_ai_credential_dto_region.rb +21 -0
  492. data/lib/vapi_server_sdk/types/update_byo_sip_trunk_credential_dto.rb +133 -0
  493. data/lib/vapi_server_sdk/types/update_cartesia_credential_dto.rb +65 -0
  494. data/lib/vapi_server_sdk/types/update_custom_llm_credential_dto.rb +65 -0
  495. data/lib/vapi_server_sdk/types/update_deep_infra_credential_dto.rb +65 -0
  496. data/lib/vapi_server_sdk/types/update_deepgram_credential_dto.rb +76 -0
  497. data/lib/vapi_server_sdk/types/update_eleven_labs_credential_dto.rb +65 -0
  498. data/lib/vapi_server_sdk/types/update_gcp_credential_dto.rb +104 -0
  499. data/lib/vapi_server_sdk/types/update_gladia_credential_dto.rb +65 -0
  500. data/lib/vapi_server_sdk/types/update_go_high_level_credential_dto.rb +65 -0
  501. data/lib/vapi_server_sdk/types/update_groq_credential_dto.rb +65 -0
  502. data/lib/vapi_server_sdk/types/update_lmnt_credential_dto.rb +65 -0
  503. data/lib/vapi_server_sdk/types/update_make_credential_dto.rb +79 -0
  504. data/lib/vapi_server_sdk/types/update_open_ai_credential_dto.rb +65 -0
  505. data/lib/vapi_server_sdk/types/update_open_router_credential_dto.rb +65 -0
  506. data/lib/vapi_server_sdk/types/update_org_dto.rb +129 -0
  507. data/lib/vapi_server_sdk/types/update_perplexity_ai_credential_dto.rb +65 -0
  508. data/lib/vapi_server_sdk/types/update_play_ht_credential_dto.rb +72 -0
  509. data/lib/vapi_server_sdk/types/update_rime_ai_credential_dto.rb +65 -0
  510. data/lib/vapi_server_sdk/types/update_runpod_credential_dto.rb +65 -0
  511. data/lib/vapi_server_sdk/types/update_s_3_credential_dto.rb +101 -0
  512. data/lib/vapi_server_sdk/types/update_together_ai_credential_dto.rb +65 -0
  513. data/lib/vapi_server_sdk/types/update_tool_template_dto.rb +131 -0
  514. data/lib/vapi_server_sdk/types/update_tool_template_dto_details.rb +159 -0
  515. data/lib/vapi_server_sdk/types/update_tool_template_dto_provider.rb +9 -0
  516. data/lib/vapi_server_sdk/types/update_tool_template_dto_provider_details.rb +107 -0
  517. data/lib/vapi_server_sdk/types/update_tool_template_dto_visibility.rb +8 -0
  518. data/lib/vapi_server_sdk/types/update_twilio_credential_dto.rb +72 -0
  519. data/lib/vapi_server_sdk/types/update_user_role_dto.rb +66 -0
  520. data/lib/vapi_server_sdk/types/update_user_role_dto_role.rb +9 -0
  521. data/lib/vapi_server_sdk/types/update_vonage_credential_dto.rb +72 -0
  522. data/lib/vapi_server_sdk/types/user.rb +95 -0
  523. data/lib/vapi_server_sdk/types/user_message.rb +102 -0
  524. data/lib/vapi_server_sdk/types/vapi_cost.rb +67 -0
  525. data/lib/vapi_server_sdk/types/vapi_model.rb +181 -0
  526. data/lib/vapi_server_sdk/types/vapi_model_steps_item.rb +94 -0
  527. data/lib/vapi_server_sdk/types/vapi_model_tools_item.rb +159 -0
  528. data/lib/vapi_server_sdk/types/vapi_phone_number.rb +188 -0
  529. data/lib/vapi_server_sdk/types/vapi_phone_number_fallback_destination.rb +100 -0
  530. data/lib/vapi_server_sdk/types/voice_cost.rb +90 -0
  531. data/lib/vapi_server_sdk/types/voice_library.rb +209 -0
  532. data/lib/vapi_server_sdk/types/voice_library_gender.rb +9 -0
  533. data/lib/vapi_server_sdk/types/voice_library_voice_response.rb +111 -0
  534. data/lib/vapi_server_sdk/types/vonage_credential.rb +128 -0
  535. data/lib/vapi_server_sdk/types/vonage_phone_number.rb +194 -0
  536. data/lib/vapi_server_sdk/types/vonage_phone_number_fallback_destination.rb +100 -0
  537. data/lib/vapi_server_sdk/types/workflow_block.rb +187 -0
  538. data/lib/vapi_server_sdk/types/workflow_block_messages_item.rb +94 -0
  539. data/lib/vapi_server_sdk/types/workflow_block_steps_item.rb +94 -0
  540. data/lib/vapi_server_sdk.rb +110 -0
  541. metadata +697 -0
@@ -0,0 +1,195 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "server_message_tool_calls_phone_number"
4
+ require_relative "server_message_tool_calls_tool_with_tool_call_list_item"
5
+ require_relative "artifact"
6
+ require_relative "create_assistant_dto"
7
+ require_relative "create_customer_dto"
8
+ require_relative "call"
9
+ require_relative "tool_call"
10
+ require "ostruct"
11
+ require "json"
12
+
13
+ module Vapi
14
+ class ServerMessageToolCalls
15
+ # @return [Vapi::ServerMessageToolCallsPhoneNumber] This is the phone number associated with the call.
16
+ # This matches one of the following:
17
+ # - `call.phoneNumber`,
18
+ # - `call.phoneNumberId`.
19
+ attr_reader :phone_number
20
+ # @return [Array<Vapi::ServerMessageToolCallsToolWithToolCallListItem>] This is the list of tools calls that the model is requesting along with the
21
+ # original tool configuration.
22
+ attr_reader :tool_with_tool_call_list
23
+ # @return [String] This is the ISO-8601 formatted timestamp of when the message was sent.
24
+ attr_reader :timestamp
25
+ # @return [Vapi::Artifact] This is a live version of the `call.artifact`.
26
+ # This matches what is stored on `call.artifact` after the call.
27
+ attr_reader :artifact
28
+ # @return [Vapi::CreateAssistantDto] This is the assistant that is currently active. This is provided for
29
+ # convenience.
30
+ # This matches one of the following:
31
+ # - `call.assistant`,
32
+ # - `call.assistantId`,
33
+ # - `call.squad[n].assistant`,
34
+ # - `call.squad[n].assistantId`,
35
+ # - `call.squadId->[n].assistant`,
36
+ # - `call.squadId->[n].assistantId`.
37
+ attr_reader :assistant
38
+ # @return [Vapi::CreateCustomerDto] This is the customer associated with the call.
39
+ # This matches one of the following:
40
+ # - `call.customer`,
41
+ # - `call.customerId`.
42
+ attr_reader :customer
43
+ # @return [Vapi::Call] This is the call object.
44
+ # This matches what was returned in POST /call.
45
+ # Note: This might get stale during the call. To get the latest call object,
46
+ # especially after the call is ended, use GET /call/:id.
47
+ attr_reader :call
48
+ # @return [Array<Vapi::ToolCall>] This is the list of tool calls that the model is requesting.
49
+ attr_reader :tool_call_list
50
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
51
+ attr_reader :additional_properties
52
+ # @return [Object]
53
+ attr_reader :_field_set
54
+ protected :_field_set
55
+
56
+ OMIT = Object.new
57
+
58
+ # @param phone_number [Vapi::ServerMessageToolCallsPhoneNumber] This is the phone number associated with the call.
59
+ # This matches one of the following:
60
+ # - `call.phoneNumber`,
61
+ # - `call.phoneNumberId`.
62
+ # @param tool_with_tool_call_list [Array<Vapi::ServerMessageToolCallsToolWithToolCallListItem>] This is the list of tools calls that the model is requesting along with the
63
+ # original tool configuration.
64
+ # @param timestamp [String] This is the ISO-8601 formatted timestamp of when the message was sent.
65
+ # @param artifact [Vapi::Artifact] This is a live version of the `call.artifact`.
66
+ # This matches what is stored on `call.artifact` after the call.
67
+ # @param assistant [Vapi::CreateAssistantDto] This is the assistant that is currently active. This is provided for
68
+ # convenience.
69
+ # This matches one of the following:
70
+ # - `call.assistant`,
71
+ # - `call.assistantId`,
72
+ # - `call.squad[n].assistant`,
73
+ # - `call.squad[n].assistantId`,
74
+ # - `call.squadId->[n].assistant`,
75
+ # - `call.squadId->[n].assistantId`.
76
+ # @param customer [Vapi::CreateCustomerDto] This is the customer associated with the call.
77
+ # This matches one of the following:
78
+ # - `call.customer`,
79
+ # - `call.customerId`.
80
+ # @param call [Vapi::Call] This is the call object.
81
+ # This matches what was returned in POST /call.
82
+ # Note: This might get stale during the call. To get the latest call object,
83
+ # especially after the call is ended, use GET /call/:id.
84
+ # @param tool_call_list [Array<Vapi::ToolCall>] This is the list of tool calls that the model is requesting.
85
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
86
+ # @return [Vapi::ServerMessageToolCalls]
87
+ def initialize(tool_with_tool_call_list:, tool_call_list:, phone_number: OMIT, timestamp: OMIT, artifact: OMIT, assistant: OMIT,
88
+ customer: OMIT, call: OMIT, additional_properties: nil)
89
+ @phone_number = phone_number if phone_number != OMIT
90
+ @tool_with_tool_call_list = tool_with_tool_call_list
91
+ @timestamp = timestamp if timestamp != OMIT
92
+ @artifact = artifact if artifact != OMIT
93
+ @assistant = assistant if assistant != OMIT
94
+ @customer = customer if customer != OMIT
95
+ @call = call if call != OMIT
96
+ @tool_call_list = tool_call_list
97
+ @additional_properties = additional_properties
98
+ @_field_set = {
99
+ "phoneNumber": phone_number,
100
+ "toolWithToolCallList": tool_with_tool_call_list,
101
+ "timestamp": timestamp,
102
+ "artifact": artifact,
103
+ "assistant": assistant,
104
+ "customer": customer,
105
+ "call": call,
106
+ "toolCallList": tool_call_list
107
+ }.reject do |_k, v|
108
+ v == OMIT
109
+ end
110
+ end
111
+
112
+ # Deserialize a JSON object to an instance of ServerMessageToolCalls
113
+ #
114
+ # @param json_object [String]
115
+ # @return [Vapi::ServerMessageToolCalls]
116
+ def self.from_json(json_object:)
117
+ struct = JSON.parse(json_object, object_class: OpenStruct)
118
+ parsed_json = JSON.parse(json_object)
119
+ if parsed_json["phoneNumber"].nil?
120
+ phone_number = nil
121
+ else
122
+ phone_number = parsed_json["phoneNumber"].to_json
123
+ phone_number = Vapi::ServerMessageToolCallsPhoneNumber.from_json(json_object: phone_number)
124
+ end
125
+ tool_with_tool_call_list = parsed_json["toolWithToolCallList"]&.map do |item|
126
+ item = item.to_json
127
+ Vapi::ServerMessageToolCallsToolWithToolCallListItem.from_json(json_object: item)
128
+ end
129
+ timestamp = parsed_json["timestamp"]
130
+ if parsed_json["artifact"].nil?
131
+ artifact = nil
132
+ else
133
+ artifact = parsed_json["artifact"].to_json
134
+ artifact = Vapi::Artifact.from_json(json_object: artifact)
135
+ end
136
+ if parsed_json["assistant"].nil?
137
+ assistant = nil
138
+ else
139
+ assistant = parsed_json["assistant"].to_json
140
+ assistant = Vapi::CreateAssistantDto.from_json(json_object: assistant)
141
+ end
142
+ if parsed_json["customer"].nil?
143
+ customer = nil
144
+ else
145
+ customer = parsed_json["customer"].to_json
146
+ customer = Vapi::CreateCustomerDto.from_json(json_object: customer)
147
+ end
148
+ if parsed_json["call"].nil?
149
+ call = nil
150
+ else
151
+ call = parsed_json["call"].to_json
152
+ call = Vapi::Call.from_json(json_object: call)
153
+ end
154
+ tool_call_list = parsed_json["toolCallList"]&.map do |item|
155
+ item = item.to_json
156
+ Vapi::ToolCall.from_json(json_object: item)
157
+ end
158
+ new(
159
+ phone_number: phone_number,
160
+ tool_with_tool_call_list: tool_with_tool_call_list,
161
+ timestamp: timestamp,
162
+ artifact: artifact,
163
+ assistant: assistant,
164
+ customer: customer,
165
+ call: call,
166
+ tool_call_list: tool_call_list,
167
+ additional_properties: struct
168
+ )
169
+ end
170
+
171
+ # Serialize an instance of ServerMessageToolCalls to a JSON object
172
+ #
173
+ # @return [String]
174
+ def to_json(*_args)
175
+ @_field_set&.to_json
176
+ end
177
+
178
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
179
+ # hash and check each fields type against the current object's property
180
+ # definitions.
181
+ #
182
+ # @param obj [Object]
183
+ # @return [Void]
184
+ def self.validate_raw(obj:)
185
+ obj.phone_number.nil? || Vapi::ServerMessageToolCallsPhoneNumber.validate_raw(obj: obj.phone_number)
186
+ obj.tool_with_tool_call_list.is_a?(Array) != false || raise("Passed value for field obj.tool_with_tool_call_list is not the expected type, validation failed.")
187
+ obj.timestamp&.is_a?(String) != false || raise("Passed value for field obj.timestamp is not the expected type, validation failed.")
188
+ obj.artifact.nil? || Vapi::Artifact.validate_raw(obj: obj.artifact)
189
+ obj.assistant.nil? || Vapi::CreateAssistantDto.validate_raw(obj: obj.assistant)
190
+ obj.customer.nil? || Vapi::CreateCustomerDto.validate_raw(obj: obj.customer)
191
+ obj.call.nil? || Vapi::Call.validate_raw(obj: obj.call)
192
+ obj.tool_call_list.is_a?(Array) != false || raise("Passed value for field obj.tool_call_list is not the expected type, validation failed.")
193
+ end
194
+ end
195
+ end
@@ -0,0 +1,124 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "json"
4
+ require_relative "create_byo_phone_number_dto"
5
+ require_relative "create_twilio_phone_number_dto"
6
+ require_relative "create_vonage_phone_number_dto"
7
+ require_relative "create_vapi_phone_number_dto"
8
+
9
+ module Vapi
10
+ # This is the phone number associated with the call.
11
+ # This matches one of the following:
12
+ # - `call.phoneNumber`,
13
+ # - `call.phoneNumberId`.
14
+ class ServerMessageToolCallsPhoneNumber
15
+ # @return [Object]
16
+ attr_reader :member
17
+ # @return [String]
18
+ attr_reader :discriminant
19
+
20
+ private_class_method :new
21
+ alias kind_of? is_a?
22
+
23
+ # @param member [Object]
24
+ # @param discriminant [String]
25
+ # @return [Vapi::ServerMessageToolCallsPhoneNumber]
26
+ def initialize(member:, discriminant:)
27
+ @member = member
28
+ @discriminant = discriminant
29
+ end
30
+
31
+ # Deserialize a JSON object to an instance of ServerMessageToolCallsPhoneNumber
32
+ #
33
+ # @param json_object [String]
34
+ # @return [Vapi::ServerMessageToolCallsPhoneNumber]
35
+ def self.from_json(json_object:)
36
+ struct = JSON.parse(json_object, object_class: OpenStruct)
37
+ member = case struct.provider
38
+ when "byo-phone-number"
39
+ Vapi::CreateByoPhoneNumberDto.from_json(json_object: json_object)
40
+ when "twilio"
41
+ Vapi::CreateTwilioPhoneNumberDto.from_json(json_object: json_object)
42
+ when "vonage"
43
+ Vapi::CreateVonagePhoneNumberDto.from_json(json_object: json_object)
44
+ when "vapi"
45
+ Vapi::CreateVapiPhoneNumberDto.from_json(json_object: json_object)
46
+ else
47
+ Vapi::CreateByoPhoneNumberDto.from_json(json_object: json_object)
48
+ end
49
+ new(member: member, discriminant: struct.provider)
50
+ end
51
+
52
+ # For Union Types, to_json functionality is delegated to the wrapped member.
53
+ #
54
+ # @return [String]
55
+ def to_json(*_args)
56
+ case @discriminant
57
+ when "byo-phone-number"
58
+ { **@member.to_json, provider: @discriminant }.to_json
59
+ when "twilio"
60
+ { **@member.to_json, provider: @discriminant }.to_json
61
+ when "vonage"
62
+ { **@member.to_json, provider: @discriminant }.to_json
63
+ when "vapi"
64
+ { **@member.to_json, provider: @discriminant }.to_json
65
+ else
66
+ { "provider": @discriminant, value: @member }.to_json
67
+ end
68
+ @member.to_json
69
+ end
70
+
71
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
72
+ # hash and check each fields type against the current object's property
73
+ # definitions.
74
+ #
75
+ # @param obj [Object]
76
+ # @return [Void]
77
+ def self.validate_raw(obj:)
78
+ case obj.provider
79
+ when "byo-phone-number"
80
+ Vapi::CreateByoPhoneNumberDto.validate_raw(obj: obj)
81
+ when "twilio"
82
+ Vapi::CreateTwilioPhoneNumberDto.validate_raw(obj: obj)
83
+ when "vonage"
84
+ Vapi::CreateVonagePhoneNumberDto.validate_raw(obj: obj)
85
+ when "vapi"
86
+ Vapi::CreateVapiPhoneNumberDto.validate_raw(obj: obj)
87
+ else
88
+ raise("Passed value matched no type within the union, validation failed.")
89
+ end
90
+ end
91
+
92
+ # For Union Types, is_a? functionality is delegated to the wrapped member.
93
+ #
94
+ # @param obj [Object]
95
+ # @return [Boolean]
96
+ def is_a?(obj)
97
+ @member.is_a?(obj)
98
+ end
99
+
100
+ # @param member [Vapi::CreateByoPhoneNumberDto]
101
+ # @return [Vapi::ServerMessageToolCallsPhoneNumber]
102
+ def self.byo_phone_number(member:)
103
+ new(member: member, discriminant: "byo-phone-number")
104
+ end
105
+
106
+ # @param member [Vapi::CreateTwilioPhoneNumberDto]
107
+ # @return [Vapi::ServerMessageToolCallsPhoneNumber]
108
+ def self.twilio(member:)
109
+ new(member: member, discriminant: "twilio")
110
+ end
111
+
112
+ # @param member [Vapi::CreateVonagePhoneNumberDto]
113
+ # @return [Vapi::ServerMessageToolCallsPhoneNumber]
114
+ def self.vonage(member:)
115
+ new(member: member, discriminant: "vonage")
116
+ end
117
+
118
+ # @param member [Vapi::CreateVapiPhoneNumberDto]
119
+ # @return [Vapi::ServerMessageToolCallsPhoneNumber]
120
+ def self.vapi(member:)
121
+ new(member: member, discriminant: "vapi")
122
+ end
123
+ end
124
+ end
@@ -0,0 +1,108 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "json"
4
+ require_relative "function_tool_with_tool_call"
5
+ require_relative "ghl_tool_with_tool_call"
6
+ require_relative "make_tool_with_tool_call"
7
+
8
+ module Vapi
9
+ class ServerMessageToolCallsToolWithToolCallListItem
10
+ # @return [Object]
11
+ attr_reader :member
12
+ # @return [String]
13
+ attr_reader :discriminant
14
+
15
+ private_class_method :new
16
+ alias kind_of? is_a?
17
+
18
+ # @param member [Object]
19
+ # @param discriminant [String]
20
+ # @return [Vapi::ServerMessageToolCallsToolWithToolCallListItem]
21
+ def initialize(member:, discriminant:)
22
+ @member = member
23
+ @discriminant = discriminant
24
+ end
25
+
26
+ # Deserialize a JSON object to an instance of
27
+ # ServerMessageToolCallsToolWithToolCallListItem
28
+ #
29
+ # @param json_object [String]
30
+ # @return [Vapi::ServerMessageToolCallsToolWithToolCallListItem]
31
+ def self.from_json(json_object:)
32
+ struct = JSON.parse(json_object, object_class: OpenStruct)
33
+ member = case struct.type
34
+ when "function"
35
+ Vapi::FunctionToolWithToolCall.from_json(json_object: json_object)
36
+ when "ghl"
37
+ Vapi::GhlToolWithToolCall.from_json(json_object: json_object)
38
+ when "make"
39
+ Vapi::MakeToolWithToolCall.from_json(json_object: json_object)
40
+ else
41
+ Vapi::FunctionToolWithToolCall.from_json(json_object: json_object)
42
+ end
43
+ new(member: member, discriminant: struct.type)
44
+ end
45
+
46
+ # For Union Types, to_json functionality is delegated to the wrapped member.
47
+ #
48
+ # @return [String]
49
+ def to_json(*_args)
50
+ case @discriminant
51
+ when "function"
52
+ { **@member.to_json, type: @discriminant }.to_json
53
+ when "ghl"
54
+ { **@member.to_json, type: @discriminant }.to_json
55
+ when "make"
56
+ { **@member.to_json, type: @discriminant }.to_json
57
+ else
58
+ { "type": @discriminant, value: @member }.to_json
59
+ end
60
+ @member.to_json
61
+ end
62
+
63
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
64
+ # hash and check each fields type against the current object's property
65
+ # definitions.
66
+ #
67
+ # @param obj [Object]
68
+ # @return [Void]
69
+ def self.validate_raw(obj:)
70
+ case obj.type
71
+ when "function"
72
+ Vapi::FunctionToolWithToolCall.validate_raw(obj: obj)
73
+ when "ghl"
74
+ Vapi::GhlToolWithToolCall.validate_raw(obj: obj)
75
+ when "make"
76
+ Vapi::MakeToolWithToolCall.validate_raw(obj: obj)
77
+ else
78
+ raise("Passed value matched no type within the union, validation failed.")
79
+ end
80
+ end
81
+
82
+ # For Union Types, is_a? functionality is delegated to the wrapped member.
83
+ #
84
+ # @param obj [Object]
85
+ # @return [Boolean]
86
+ def is_a?(obj)
87
+ @member.is_a?(obj)
88
+ end
89
+
90
+ # @param member [Vapi::FunctionToolWithToolCall]
91
+ # @return [Vapi::ServerMessageToolCallsToolWithToolCallListItem]
92
+ def self.function(member:)
93
+ new(member: member, discriminant: "function")
94
+ end
95
+
96
+ # @param member [Vapi::GhlToolWithToolCall]
97
+ # @return [Vapi::ServerMessageToolCallsToolWithToolCallListItem]
98
+ def self.ghl(member:)
99
+ new(member: member, discriminant: "ghl")
100
+ end
101
+
102
+ # @param member [Vapi::MakeToolWithToolCall]
103
+ # @return [Vapi::ServerMessageToolCallsToolWithToolCallListItem]
104
+ def self.make(member:)
105
+ new(member: member, discriminant: "make")
106
+ end
107
+ end
108
+ end
@@ -0,0 +1,195 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "server_message_transcript_phone_number"
4
+ require_relative "artifact"
5
+ require_relative "create_assistant_dto"
6
+ require_relative "create_customer_dto"
7
+ require_relative "call"
8
+ require_relative "server_message_transcript_role"
9
+ require_relative "server_message_transcript_transcript_type"
10
+ require "ostruct"
11
+ require "json"
12
+
13
+ module Vapi
14
+ class ServerMessageTranscript
15
+ # @return [Vapi::ServerMessageTranscriptPhoneNumber] This is the phone number associated with the call.
16
+ # This matches one of the following:
17
+ # - `call.phoneNumber`,
18
+ # - `call.phoneNumberId`.
19
+ attr_reader :phone_number
20
+ # @return [String] This is the ISO-8601 formatted timestamp of when the message was sent.
21
+ attr_reader :timestamp
22
+ # @return [Vapi::Artifact] This is a live version of the `call.artifact`.
23
+ # This matches what is stored on `call.artifact` after the call.
24
+ attr_reader :artifact
25
+ # @return [Vapi::CreateAssistantDto] This is the assistant that is currently active. This is provided for
26
+ # convenience.
27
+ # This matches one of the following:
28
+ # - `call.assistant`,
29
+ # - `call.assistantId`,
30
+ # - `call.squad[n].assistant`,
31
+ # - `call.squad[n].assistantId`,
32
+ # - `call.squadId->[n].assistant`,
33
+ # - `call.squadId->[n].assistantId`.
34
+ attr_reader :assistant
35
+ # @return [Vapi::CreateCustomerDto] This is the customer associated with the call.
36
+ # This matches one of the following:
37
+ # - `call.customer`,
38
+ # - `call.customerId`.
39
+ attr_reader :customer
40
+ # @return [Vapi::Call] This is the call object.
41
+ # This matches what was returned in POST /call.
42
+ # Note: This might get stale during the call. To get the latest call object,
43
+ # especially after the call is ended, use GET /call/:id.
44
+ attr_reader :call
45
+ # @return [Vapi::ServerMessageTranscriptRole] This is the role for which the transcript is for.
46
+ attr_reader :role
47
+ # @return [Vapi::ServerMessageTranscriptTranscriptType] This is the type of the transcript.
48
+ attr_reader :transcript_type
49
+ # @return [String] This is the transcript content.
50
+ attr_reader :transcript
51
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
52
+ attr_reader :additional_properties
53
+ # @return [Object]
54
+ attr_reader :_field_set
55
+ protected :_field_set
56
+
57
+ OMIT = Object.new
58
+
59
+ # @param phone_number [Vapi::ServerMessageTranscriptPhoneNumber] This is the phone number associated with the call.
60
+ # This matches one of the following:
61
+ # - `call.phoneNumber`,
62
+ # - `call.phoneNumberId`.
63
+ # @param timestamp [String] This is the ISO-8601 formatted timestamp of when the message was sent.
64
+ # @param artifact [Vapi::Artifact] This is a live version of the `call.artifact`.
65
+ # This matches what is stored on `call.artifact` after the call.
66
+ # @param assistant [Vapi::CreateAssistantDto] This is the assistant that is currently active. This is provided for
67
+ # convenience.
68
+ # This matches one of the following:
69
+ # - `call.assistant`,
70
+ # - `call.assistantId`,
71
+ # - `call.squad[n].assistant`,
72
+ # - `call.squad[n].assistantId`,
73
+ # - `call.squadId->[n].assistant`,
74
+ # - `call.squadId->[n].assistantId`.
75
+ # @param customer [Vapi::CreateCustomerDto] This is the customer associated with the call.
76
+ # This matches one of the following:
77
+ # - `call.customer`,
78
+ # - `call.customerId`.
79
+ # @param call [Vapi::Call] This is the call object.
80
+ # This matches what was returned in POST /call.
81
+ # Note: This might get stale during the call. To get the latest call object,
82
+ # especially after the call is ended, use GET /call/:id.
83
+ # @param role [Vapi::ServerMessageTranscriptRole] This is the role for which the transcript is for.
84
+ # @param transcript_type [Vapi::ServerMessageTranscriptTranscriptType] This is the type of the transcript.
85
+ # @param transcript [String] This is the transcript content.
86
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
87
+ # @return [Vapi::ServerMessageTranscript]
88
+ def initialize(role:, transcript_type:, transcript:, phone_number: OMIT, timestamp: OMIT, artifact: OMIT,
89
+ assistant: OMIT, customer: OMIT, call: OMIT, additional_properties: nil)
90
+ @phone_number = phone_number if phone_number != OMIT
91
+ @timestamp = timestamp if timestamp != OMIT
92
+ @artifact = artifact if artifact != OMIT
93
+ @assistant = assistant if assistant != OMIT
94
+ @customer = customer if customer != OMIT
95
+ @call = call if call != OMIT
96
+ @role = role
97
+ @transcript_type = transcript_type
98
+ @transcript = transcript
99
+ @additional_properties = additional_properties
100
+ @_field_set = {
101
+ "phoneNumber": phone_number,
102
+ "timestamp": timestamp,
103
+ "artifact": artifact,
104
+ "assistant": assistant,
105
+ "customer": customer,
106
+ "call": call,
107
+ "role": role,
108
+ "transcriptType": transcript_type,
109
+ "transcript": transcript
110
+ }.reject do |_k, v|
111
+ v == OMIT
112
+ end
113
+ end
114
+
115
+ # Deserialize a JSON object to an instance of ServerMessageTranscript
116
+ #
117
+ # @param json_object [String]
118
+ # @return [Vapi::ServerMessageTranscript]
119
+ def self.from_json(json_object:)
120
+ struct = JSON.parse(json_object, object_class: OpenStruct)
121
+ parsed_json = JSON.parse(json_object)
122
+ if parsed_json["phoneNumber"].nil?
123
+ phone_number = nil
124
+ else
125
+ phone_number = parsed_json["phoneNumber"].to_json
126
+ phone_number = Vapi::ServerMessageTranscriptPhoneNumber.from_json(json_object: phone_number)
127
+ end
128
+ timestamp = parsed_json["timestamp"]
129
+ if parsed_json["artifact"].nil?
130
+ artifact = nil
131
+ else
132
+ artifact = parsed_json["artifact"].to_json
133
+ artifact = Vapi::Artifact.from_json(json_object: artifact)
134
+ end
135
+ if parsed_json["assistant"].nil?
136
+ assistant = nil
137
+ else
138
+ assistant = parsed_json["assistant"].to_json
139
+ assistant = Vapi::CreateAssistantDto.from_json(json_object: assistant)
140
+ end
141
+ if parsed_json["customer"].nil?
142
+ customer = nil
143
+ else
144
+ customer = parsed_json["customer"].to_json
145
+ customer = Vapi::CreateCustomerDto.from_json(json_object: customer)
146
+ end
147
+ if parsed_json["call"].nil?
148
+ call = nil
149
+ else
150
+ call = parsed_json["call"].to_json
151
+ call = Vapi::Call.from_json(json_object: call)
152
+ end
153
+ role = parsed_json["role"]
154
+ transcript_type = parsed_json["transcriptType"]
155
+ transcript = parsed_json["transcript"]
156
+ new(
157
+ phone_number: phone_number,
158
+ timestamp: timestamp,
159
+ artifact: artifact,
160
+ assistant: assistant,
161
+ customer: customer,
162
+ call: call,
163
+ role: role,
164
+ transcript_type: transcript_type,
165
+ transcript: transcript,
166
+ additional_properties: struct
167
+ )
168
+ end
169
+
170
+ # Serialize an instance of ServerMessageTranscript to a JSON object
171
+ #
172
+ # @return [String]
173
+ def to_json(*_args)
174
+ @_field_set&.to_json
175
+ end
176
+
177
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
178
+ # hash and check each fields type against the current object's property
179
+ # definitions.
180
+ #
181
+ # @param obj [Object]
182
+ # @return [Void]
183
+ def self.validate_raw(obj:)
184
+ obj.phone_number.nil? || Vapi::ServerMessageTranscriptPhoneNumber.validate_raw(obj: obj.phone_number)
185
+ obj.timestamp&.is_a?(String) != false || raise("Passed value for field obj.timestamp is not the expected type, validation failed.")
186
+ obj.artifact.nil? || Vapi::Artifact.validate_raw(obj: obj.artifact)
187
+ obj.assistant.nil? || Vapi::CreateAssistantDto.validate_raw(obj: obj.assistant)
188
+ obj.customer.nil? || Vapi::CreateCustomerDto.validate_raw(obj: obj.customer)
189
+ obj.call.nil? || Vapi::Call.validate_raw(obj: obj.call)
190
+ obj.role.is_a?(Vapi::ServerMessageTranscriptRole) != false || raise("Passed value for field obj.role is not the expected type, validation failed.")
191
+ obj.transcript_type.is_a?(Vapi::ServerMessageTranscriptTranscriptType) != false || raise("Passed value for field obj.transcript_type is not the expected type, validation failed.")
192
+ obj.transcript.is_a?(String) != false || raise("Passed value for field obj.transcript is not the expected type, validation failed.")
193
+ end
194
+ end
195
+ end