vapi_server_sdk 0.1.0 → 0.3.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 (448) hide show
  1. checksums.yaml +4 -4
  2. data/lib/requests.rb +2 -2
  3. data/lib/types_export.rb +287 -62
  4. data/lib/vapi_server_sdk/analytics/client.rb +14 -43
  5. data/lib/vapi_server_sdk/assistants/client.rb +70 -60
  6. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_client_messages_item.rb +1 -0
  7. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_credentials_item.rb +512 -0
  8. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_model.rb +52 -0
  9. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_server_messages_item.rb +1 -0
  10. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_transcriber.rb +40 -1
  11. data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_voice.rb +39 -0
  12. data/lib/vapi_server_sdk/blocks/client.rb +7 -166
  13. data/lib/vapi_server_sdk/blocks/types/blocks_update_request.rb +109 -0
  14. data/lib/vapi_server_sdk/calls/client.rb +74 -32
  15. data/lib/vapi_server_sdk/knowledge_bases/client.rb +393 -0
  16. data/lib/vapi_server_sdk/knowledge_bases/types/knowledge_bases_create_request.rb +96 -0
  17. data/lib/vapi_server_sdk/knowledge_bases/types/knowledge_bases_create_response.rb +96 -0
  18. data/lib/vapi_server_sdk/knowledge_bases/types/knowledge_bases_delete_response.rb +96 -0
  19. data/lib/vapi_server_sdk/knowledge_bases/types/knowledge_bases_get_response.rb +96 -0
  20. data/lib/vapi_server_sdk/knowledge_bases/types/knowledge_bases_list_response_item.rb +96 -0
  21. data/lib/vapi_server_sdk/knowledge_bases/types/knowledge_bases_update_request.rb +96 -0
  22. data/lib/vapi_server_sdk/knowledge_bases/types/knowledge_bases_update_response.rb +96 -0
  23. data/lib/vapi_server_sdk/logs/client.rb +94 -6
  24. data/lib/vapi_server_sdk/phone_numbers/client.rb +7 -69
  25. data/lib/vapi_server_sdk/phone_numbers/types/phone_numbers_update_request.rb +122 -0
  26. data/lib/vapi_server_sdk/squads/client.rb +64 -32
  27. data/lib/vapi_server_sdk/tools/client.rb +7 -87
  28. data/lib/vapi_server_sdk/tools/types/tools_create_request.rb +39 -0
  29. data/lib/vapi_server_sdk/tools/types/tools_create_response.rb +39 -0
  30. data/lib/vapi_server_sdk/tools/types/tools_delete_response.rb +39 -0
  31. data/lib/vapi_server_sdk/tools/types/tools_get_response.rb +39 -0
  32. data/lib/vapi_server_sdk/tools/types/tools_list_response_item.rb +39 -0
  33. data/lib/vapi_server_sdk/tools/types/tools_update_request.rb +200 -0
  34. data/lib/vapi_server_sdk/tools/types/tools_update_response.rb +39 -0
  35. data/lib/vapi_server_sdk/types/analytics_query_dto.rb +59 -0
  36. data/lib/vapi_server_sdk/types/anthropic_credential.rb +13 -3
  37. data/lib/vapi_server_sdk/types/anthropic_model.rb +21 -13
  38. data/lib/vapi_server_sdk/types/anthropic_model_model.rb +2 -0
  39. data/lib/vapi_server_sdk/types/anyscale_credential.rb +13 -3
  40. data/lib/vapi_server_sdk/types/anyscale_model.rb +21 -13
  41. data/lib/vapi_server_sdk/types/assembly_ai_credential.rb +111 -0
  42. data/lib/vapi_server_sdk/types/assembly_ai_transcriber.rb +97 -0
  43. data/lib/vapi_server_sdk/types/assistant.rb +60 -64
  44. data/lib/vapi_server_sdk/types/assistant_client_messages_item.rb +1 -0
  45. data/lib/vapi_server_sdk/types/assistant_credentials_item.rb +510 -0
  46. data/lib/vapi_server_sdk/types/assistant_custom_endpointing_rule.rb +100 -0
  47. data/lib/vapi_server_sdk/types/assistant_model.rb +52 -0
  48. data/lib/vapi_server_sdk/types/assistant_overrides.rb +75 -65
  49. data/lib/vapi_server_sdk/types/assistant_overrides_client_messages_item.rb +1 -0
  50. data/lib/vapi_server_sdk/types/assistant_overrides_credentials_item.rb +510 -0
  51. data/lib/vapi_server_sdk/types/assistant_overrides_model.rb +52 -0
  52. data/lib/vapi_server_sdk/types/assistant_overrides_server_messages_item.rb +1 -0
  53. data/lib/vapi_server_sdk/types/assistant_overrides_transcriber.rb +40 -1
  54. data/lib/vapi_server_sdk/types/assistant_overrides_voice.rb +39 -0
  55. data/lib/vapi_server_sdk/types/assistant_server_messages_item.rb +1 -0
  56. data/lib/vapi_server_sdk/types/assistant_transcriber.rb +40 -1
  57. data/lib/vapi_server_sdk/types/assistant_voice.rb +39 -0
  58. data/lib/vapi_server_sdk/types/auto_reload_plan.rb +65 -0
  59. data/lib/vapi_server_sdk/types/azure_blob_storage_bucket_plan.rb +88 -0
  60. data/lib/vapi_server_sdk/types/azure_credential.rb +146 -0
  61. data/lib/vapi_server_sdk/types/azure_credential_region.rb +23 -0
  62. data/lib/vapi_server_sdk/types/azure_credential_service.rb +9 -0
  63. data/lib/vapi_server_sdk/types/azure_open_ai_credential.rb +20 -2
  64. data/lib/vapi_server_sdk/types/azure_open_ai_credential_models_item.rb +1 -0
  65. data/lib/vapi_server_sdk/types/azure_open_ai_credential_region.rb +2 -1
  66. data/lib/vapi_server_sdk/types/azure_speech_transcriber.rb +62 -0
  67. data/lib/vapi_server_sdk/types/azure_speech_transcriber_language.rb +152 -0
  68. data/lib/vapi_server_sdk/types/azure_voice.rb +25 -21
  69. data/lib/vapi_server_sdk/types/bash_tool.rb +194 -0
  70. data/lib/vapi_server_sdk/types/bash_tool_messages_item.rb +120 -0
  71. data/lib/vapi_server_sdk/types/block_complete_message.rb +29 -4
  72. data/lib/vapi_server_sdk/types/block_start_message.rb +29 -4
  73. data/lib/vapi_server_sdk/types/both_custom_endpointing_rule.rb +126 -0
  74. data/lib/vapi_server_sdk/types/buy_phone_number_dto.rb +25 -29
  75. data/lib/vapi_server_sdk/types/byo_phone_number.rb +25 -29
  76. data/lib/vapi_server_sdk/types/byo_sip_trunk_credential.rb +29 -9
  77. data/lib/vapi_server_sdk/types/call.rb +15 -1
  78. data/lib/vapi_server_sdk/types/call_ended_reason.rb +83 -43
  79. data/lib/vapi_server_sdk/types/call_log_privileged.rb +88 -0
  80. data/lib/vapi_server_sdk/types/call_log_privileged_level.rb +12 -0
  81. data/lib/vapi_server_sdk/types/call_logs_paginated_response.rb +75 -0
  82. data/lib/vapi_server_sdk/types/cartesia_credential.rb +13 -3
  83. data/lib/vapi_server_sdk/types/cartesia_voice.rb +25 -21
  84. data/lib/vapi_server_sdk/types/cartesia_voice_language.rb +9 -1
  85. data/lib/vapi_server_sdk/types/cartesia_voice_model.rb +2 -0
  86. data/lib/vapi_server_sdk/types/cerebras_credential.rb +111 -0
  87. data/lib/vapi_server_sdk/types/chat_dto.rb +103 -0
  88. data/lib/vapi_server_sdk/types/chat_service_response.rb +47 -0
  89. data/lib/vapi_server_sdk/types/client_inbound_message_add_message.rb +25 -3
  90. data/lib/vapi_server_sdk/types/client_inbound_message_message.rb +13 -0
  91. data/lib/vapi_server_sdk/types/client_inbound_message_transfer.rb +63 -0
  92. data/lib/vapi_server_sdk/types/client_inbound_message_transfer_destination.rb +96 -0
  93. data/lib/vapi_server_sdk/types/{client_message_language_changed.rb → client_message_language_change_detected.rb} +5 -5
  94. data/lib/vapi_server_sdk/types/client_message_message.rb +22 -9
  95. data/lib/vapi_server_sdk/types/client_message_tool_calls_tool_with_tool_call_list_item.rb +77 -77
  96. data/lib/vapi_server_sdk/types/client_message_transfer_update.rb +116 -0
  97. data/lib/vapi_server_sdk/types/client_message_transfer_update_destination.rb +122 -0
  98. data/lib/vapi_server_sdk/types/cloudflare_credential.rb +142 -0
  99. data/lib/vapi_server_sdk/types/cloudflare_r_2_bucket_plan.rb +105 -0
  100. data/lib/vapi_server_sdk/types/computer_tool.rb +218 -0
  101. data/lib/vapi_server_sdk/types/computer_tool_messages_item.rb +120 -0
  102. data/lib/vapi_server_sdk/types/condition.rb +9 -9
  103. data/lib/vapi_server_sdk/types/create_anthropic_credential_dto.rb +11 -9
  104. data/lib/vapi_server_sdk/types/create_anyscale_credential_dto.rb +11 -9
  105. data/lib/vapi_server_sdk/types/create_assembly_ai_credential_dto.rb +67 -0
  106. data/lib/vapi_server_sdk/types/create_assistant_dto.rb +61 -65
  107. data/lib/vapi_server_sdk/types/create_assistant_dto_client_messages_item.rb +1 -0
  108. data/lib/vapi_server_sdk/types/create_assistant_dto_credentials_item.rb +510 -0
  109. data/lib/vapi_server_sdk/types/create_assistant_dto_model.rb +52 -0
  110. data/lib/vapi_server_sdk/types/create_assistant_dto_server_messages_item.rb +1 -0
  111. data/lib/vapi_server_sdk/types/create_assistant_dto_transcriber.rb +40 -1
  112. data/lib/vapi_server_sdk/types/create_assistant_dto_voice.rb +39 -0
  113. data/lib/vapi_server_sdk/types/create_azure_credential_dto.rb +104 -0
  114. data/lib/vapi_server_sdk/types/create_azure_credential_dto_region.rb +23 -0
  115. data/lib/vapi_server_sdk/types/create_azure_credential_dto_service.rb +9 -0
  116. data/lib/vapi_server_sdk/types/create_azure_open_ai_credential_dto.rb +22 -11
  117. data/lib/vapi_server_sdk/types/create_azure_open_ai_credential_dto_models_item.rb +1 -0
  118. data/lib/vapi_server_sdk/types/create_azure_open_ai_credential_dto_region.rb +2 -1
  119. data/lib/vapi_server_sdk/types/create_bash_tool_dto.rb +161 -0
  120. data/lib/vapi_server_sdk/types/create_bash_tool_dto_messages_item.rb +120 -0
  121. data/lib/vapi_server_sdk/types/create_byo_phone_number_dto.rb +25 -29
  122. data/lib/vapi_server_sdk/types/create_byo_sip_trunk_credential_dto.rb +31 -19
  123. data/lib/vapi_server_sdk/types/create_cartesia_credential_dto.rb +11 -9
  124. data/lib/vapi_server_sdk/types/{knowledge_base.rb → create_cerebras_credential_dto.rb} +21 -21
  125. data/lib/vapi_server_sdk/types/create_cloudflare_credential_dto.rb +101 -0
  126. data/lib/vapi_server_sdk/types/create_computer_tool_dto.rb +185 -0
  127. data/lib/vapi_server_sdk/types/create_computer_tool_dto_messages_item.rb +120 -0
  128. data/lib/vapi_server_sdk/types/create_custom_knowledge_base_dto.rb +137 -0
  129. data/lib/vapi_server_sdk/types/create_custom_llm_credential_dto.rb +26 -9
  130. data/lib/vapi_server_sdk/types/create_deep_infra_credential_dto.rb +11 -9
  131. data/lib/vapi_server_sdk/types/create_deep_seek_credential_dto.rb +67 -0
  132. data/lib/vapi_server_sdk/types/create_deepgram_credential_dto.rb +9 -9
  133. data/lib/vapi_server_sdk/types/create_eleven_labs_credential_dto.rb +11 -9
  134. data/lib/vapi_server_sdk/types/create_gcp_credential_dto.rb +9 -21
  135. data/lib/vapi_server_sdk/types/create_gladia_credential_dto.rb +11 -9
  136. data/lib/vapi_server_sdk/types/create_go_high_level_credential_dto.rb +11 -9
  137. data/lib/vapi_server_sdk/types/create_google_credential_dto.rb +76 -0
  138. data/lib/vapi_server_sdk/types/create_groq_credential_dto.rb +11 -9
  139. data/lib/vapi_server_sdk/types/create_inflection_ai_credential_dto.rb +76 -0
  140. data/lib/vapi_server_sdk/types/create_langfuse_credential_dto.rb +83 -0
  141. data/lib/vapi_server_sdk/types/create_lmnt_credential_dto.rb +11 -9
  142. data/lib/vapi_server_sdk/types/create_make_credential_dto.rb +11 -9
  143. data/lib/vapi_server_sdk/types/create_open_ai_credential_dto.rb +11 -9
  144. data/lib/vapi_server_sdk/types/create_open_router_credential_dto.rb +11 -9
  145. data/lib/vapi_server_sdk/types/create_org_dto.rb +45 -26
  146. data/lib/vapi_server_sdk/types/create_org_dto_channel.rb +10 -0
  147. data/lib/vapi_server_sdk/types/create_perplexity_ai_credential_dto.rb +11 -9
  148. data/lib/vapi_server_sdk/types/create_play_ht_credential_dto.rb +11 -9
  149. data/lib/vapi_server_sdk/types/create_rime_ai_credential_dto.rb +11 -9
  150. data/lib/vapi_server_sdk/types/create_runpod_credential_dto.rb +11 -9
  151. data/lib/vapi_server_sdk/types/create_s_3_credential_dto.rb +13 -11
  152. data/lib/vapi_server_sdk/types/create_smallest_ai_credential_dto.rb +67 -0
  153. data/lib/vapi_server_sdk/types/create_tavus_credential_dto.rb +67 -0
  154. data/lib/vapi_server_sdk/types/create_text_editor_tool_dto.rb +161 -0
  155. data/lib/vapi_server_sdk/types/create_text_editor_tool_dto_messages_item.rb +120 -0
  156. data/lib/vapi_server_sdk/types/create_together_ai_credential_dto.rb +11 -9
  157. data/lib/vapi_server_sdk/types/create_trieve_knowledge_base_dto.rb +109 -0
  158. data/lib/vapi_server_sdk/types/create_twilio_credential_dto.rb +11 -9
  159. data/lib/vapi_server_sdk/types/create_twilio_phone_number_dto.rb +25 -29
  160. data/lib/vapi_server_sdk/types/create_vapi_phone_number_dto.rb +44 -30
  161. data/lib/vapi_server_sdk/types/create_vonage_credential_dto.rb +11 -9
  162. data/lib/vapi_server_sdk/types/create_vonage_phone_number_dto.rb +25 -29
  163. data/lib/vapi_server_sdk/types/create_webhook_credential_dto.rb +73 -0
  164. data/lib/vapi_server_sdk/types/create_x_ai_credential_dto.rb +67 -0
  165. data/lib/vapi_server_sdk/types/custom_knowledge_base.rb +154 -0
  166. data/lib/vapi_server_sdk/types/custom_llm_credential.rb +46 -3
  167. data/lib/vapi_server_sdk/types/custom_llm_model.rb +23 -15
  168. data/lib/vapi_server_sdk/types/custom_message.rb +92 -0
  169. data/lib/vapi_server_sdk/types/custom_transcriber.rb +125 -0
  170. data/lib/vapi_server_sdk/types/custom_voice.rb +132 -0
  171. data/lib/vapi_server_sdk/types/customer_custom_endpointing_rule.rb +100 -0
  172. data/lib/vapi_server_sdk/types/deep_infra_credential.rb +13 -3
  173. data/lib/vapi_server_sdk/types/deep_infra_model.rb +21 -13
  174. data/lib/vapi_server_sdk/types/deep_seek_credential.rb +111 -0
  175. data/lib/vapi_server_sdk/types/deep_seek_model.rb +177 -0
  176. data/lib/vapi_server_sdk/types/deep_seek_model_tools_item.rb +159 -0
  177. data/lib/vapi_server_sdk/types/deepgram_credential.rb +9 -1
  178. data/lib/vapi_server_sdk/types/deepgram_transcriber.rb +69 -11
  179. data/lib/vapi_server_sdk/types/deepgram_voice.rb +17 -17
  180. data/lib/vapi_server_sdk/types/eleven_labs_credential.rb +13 -3
  181. data/lib/vapi_server_sdk/types/eleven_labs_voice.rb +28 -24
  182. data/lib/vapi_server_sdk/types/eleven_labs_voice_model.rb +2 -0
  183. data/lib/vapi_server_sdk/types/fallback_azure_voice.rb +100 -0
  184. data/lib/vapi_server_sdk/types/fallback_azure_voice_id.rb +53 -0
  185. data/lib/vapi_server_sdk/types/fallback_azure_voice_voice_id.rb +9 -0
  186. data/lib/vapi_server_sdk/types/fallback_cartesia_voice.rb +100 -0
  187. data/lib/vapi_server_sdk/types/fallback_cartesia_voice_language.rb +23 -0
  188. data/lib/vapi_server_sdk/types/fallback_cartesia_voice_model.rb +12 -0
  189. data/lib/vapi_server_sdk/types/fallback_custom_voice.rb +117 -0
  190. data/lib/vapi_server_sdk/types/fallback_deepgram_voice.rb +81 -0
  191. data/lib/vapi_server_sdk/types/fallback_deepgram_voice_id.rb +53 -0
  192. data/lib/vapi_server_sdk/types/fallback_deepgram_voice_id_enum.rb +18 -0
  193. data/lib/vapi_server_sdk/types/fallback_eleven_labs_voice.rb +164 -0
  194. data/lib/vapi_server_sdk/types/fallback_eleven_labs_voice_id.rb +54 -0
  195. data/lib/vapi_server_sdk/types/fallback_eleven_labs_voice_id_enum.rb +21 -0
  196. data/lib/vapi_server_sdk/types/fallback_eleven_labs_voice_model.rb +14 -0
  197. data/lib/vapi_server_sdk/types/fallback_lmnt_voice.rb +88 -0
  198. data/lib/vapi_server_sdk/types/fallback_lmnt_voice_id.rb +53 -0
  199. data/lib/vapi_server_sdk/types/fallback_lmnt_voice_id_enum.rb +8 -0
  200. data/lib/vapi_server_sdk/types/fallback_neets_voice.rb +81 -0
  201. data/lib/vapi_server_sdk/types/fallback_neets_voice_id.rb +53 -0
  202. data/lib/vapi_server_sdk/types/fallback_neets_voice_id_enum.rb +7 -0
  203. data/lib/vapi_server_sdk/types/fallback_open_ai_voice.rb +87 -0
  204. data/lib/vapi_server_sdk/types/fallback_open_ai_voice_id.rb +20 -0
  205. data/lib/vapi_server_sdk/types/fallback_plan.rb +61 -0
  206. data/lib/vapi_server_sdk/types/fallback_plan_voices_item.rb +224 -0
  207. data/lib/vapi_server_sdk/types/fallback_play_ht_voice.rb +172 -0
  208. data/lib/vapi_server_sdk/types/fallback_play_ht_voice_emotion.rb +19 -0
  209. data/lib/vapi_server_sdk/types/fallback_play_ht_voice_id.rb +53 -0
  210. data/lib/vapi_server_sdk/types/fallback_play_ht_voice_id_enum.rb +16 -0
  211. data/lib/vapi_server_sdk/types/fallback_play_ht_voice_language.rb +44 -0
  212. data/lib/vapi_server_sdk/types/fallback_play_ht_voice_model.rb +10 -0
  213. data/lib/vapi_server_sdk/types/fallback_rime_ai_voice.rb +96 -0
  214. data/lib/vapi_server_sdk/types/fallback_rime_ai_voice_id.rb +53 -0
  215. data/lib/vapi_server_sdk/types/fallback_rime_ai_voice_id_enum.rb +87 -0
  216. data/lib/vapi_server_sdk/types/fallback_rime_ai_voice_model.rb +9 -0
  217. data/lib/vapi_server_sdk/types/fallback_smallest_ai_voice.rb +95 -0
  218. data/lib/vapi_server_sdk/types/fallback_smallest_ai_voice_id.rb +53 -0
  219. data/lib/vapi_server_sdk/types/fallback_smallest_ai_voice_id_enum.rb +31 -0
  220. data/lib/vapi_server_sdk/types/fallback_tavus_voice.rb +147 -0
  221. data/lib/vapi_server_sdk/types/fallback_tavus_voice_voice_id.rb +53 -0
  222. data/lib/vapi_server_sdk/types/format_plan.rb +0 -2
  223. data/lib/vapi_server_sdk/types/function_tool_with_tool_call.rb +10 -1
  224. data/lib/vapi_server_sdk/types/gcp_credential.rb +2 -2
  225. data/lib/vapi_server_sdk/types/gemini_multimodal_live_prebuilt_voice_config.rb +58 -0
  226. data/lib/vapi_server_sdk/types/gemini_multimodal_live_prebuilt_voice_config_voice_name.rb +11 -0
  227. data/lib/vapi_server_sdk/types/gemini_multimodal_live_speech_config.rb +61 -0
  228. data/lib/vapi_server_sdk/types/gemini_multimodal_live_voice_config.rb +61 -0
  229. data/lib/vapi_server_sdk/types/ghl_tool_with_tool_call.rb +9 -1
  230. data/lib/vapi_server_sdk/types/gladia_credential.rb +13 -3
  231. data/lib/vapi_server_sdk/types/go_high_level_credential.rb +13 -3
  232. data/lib/vapi_server_sdk/types/google_credential.rb +113 -0
  233. data/lib/vapi_server_sdk/types/google_model.rb +194 -0
  234. data/lib/vapi_server_sdk/types/google_model_model.rb +14 -0
  235. data/lib/vapi_server_sdk/types/google_model_tools_item.rb +159 -0
  236. data/lib/vapi_server_sdk/types/google_realtime_config.rb +121 -0
  237. data/lib/vapi_server_sdk/types/groq_credential.rb +13 -3
  238. data/lib/vapi_server_sdk/types/groq_model.rb +21 -13
  239. data/lib/vapi_server_sdk/types/groq_model_model.rb +1 -3
  240. data/lib/vapi_server_sdk/types/import_twilio_phone_number_dto.rb +25 -29
  241. data/lib/vapi_server_sdk/types/import_vonage_phone_number_dto.rb +25 -29
  242. data/lib/vapi_server_sdk/types/inflection_ai_credential.rb +113 -0
  243. data/lib/vapi_server_sdk/types/inflection_ai_model.rb +177 -0
  244. data/lib/vapi_server_sdk/types/inflection_ai_model_tools_item.rb +159 -0
  245. data/lib/vapi_server_sdk/types/invite_user_dto.rb +9 -9
  246. data/lib/vapi_server_sdk/types/knowledge_base_response_document.rb +74 -0
  247. data/lib/vapi_server_sdk/types/langfuse_credential.rb +130 -0
  248. data/lib/vapi_server_sdk/types/lmnt_credential.rb +13 -3
  249. data/lib/vapi_server_sdk/types/lmnt_voice.rb +18 -14
  250. data/lib/vapi_server_sdk/types/log.rb +12 -4
  251. data/lib/vapi_server_sdk/types/log_resource.rb +8 -0
  252. data/lib/vapi_server_sdk/types/make_credential.rb +13 -3
  253. data/lib/vapi_server_sdk/types/make_tool_with_tool_call.rb +9 -1
  254. data/lib/vapi_server_sdk/types/neets_voice.rb +17 -17
  255. data/lib/vapi_server_sdk/types/o_auth_2_authentication_plan.rb +79 -0
  256. data/lib/vapi_server_sdk/types/oauth_2_authentication_session.rb +68 -0
  257. data/lib/vapi_server_sdk/types/open_ai_credential.rb +13 -3
  258. data/lib/vapi_server_sdk/types/open_ai_function.rb +30 -4
  259. data/lib/vapi_server_sdk/types/open_ai_model.rb +23 -15
  260. data/lib/vapi_server_sdk/types/open_ai_model_fallback_models_item.rb +8 -0
  261. data/lib/vapi_server_sdk/types/open_ai_model_model.rb +8 -0
  262. data/lib/vapi_server_sdk/types/open_ai_voice.rb +22 -14
  263. data/lib/vapi_server_sdk/types/open_ai_voice_id.rb +7 -0
  264. data/lib/vapi_server_sdk/types/open_router_credential.rb +13 -3
  265. data/lib/vapi_server_sdk/types/open_router_model.rb +21 -13
  266. data/lib/vapi_server_sdk/types/org.rb +59 -26
  267. data/lib/vapi_server_sdk/types/org_channel.rb +10 -0
  268. data/lib/vapi_server_sdk/types/org_with_org_user.rb +262 -0
  269. data/lib/vapi_server_sdk/types/org_with_org_user_channel.rb +10 -0
  270. data/lib/vapi_server_sdk/types/org_with_org_user_role.rb +9 -0
  271. data/lib/vapi_server_sdk/types/perplexity_ai_credential.rb +13 -3
  272. data/lib/vapi_server_sdk/types/perplexity_ai_model.rb +21 -13
  273. data/lib/vapi_server_sdk/types/phone_number_paginated_response.rb +75 -0
  274. data/lib/vapi_server_sdk/types/phone_number_paginated_response_results_item.rb +121 -0
  275. data/lib/vapi_server_sdk/types/play_ht_credential.rb +13 -2
  276. data/lib/vapi_server_sdk/types/play_ht_voice.rb +37 -15
  277. data/lib/vapi_server_sdk/types/play_ht_voice_language.rb +44 -0
  278. data/lib/vapi_server_sdk/types/play_ht_voice_model.rb +10 -0
  279. data/lib/vapi_server_sdk/types/regex_option.rb +2 -2
  280. data/lib/vapi_server_sdk/types/regex_option_type.rb +1 -1
  281. data/lib/vapi_server_sdk/types/regex_replacement.rb +14 -4
  282. data/lib/vapi_server_sdk/types/rime_ai_credential.rb +13 -3
  283. data/lib/vapi_server_sdk/types/rime_ai_voice.rb +18 -14
  284. data/lib/vapi_server_sdk/types/runpod_credential.rb +13 -3
  285. data/lib/vapi_server_sdk/types/s_3_credential.rb +13 -3
  286. data/lib/vapi_server_sdk/types/server.rb +16 -2
  287. data/lib/vapi_server_sdk/types/server_message_end_of_call_report_ended_reason.rb +83 -43
  288. data/lib/vapi_server_sdk/types/server_message_knowledge_base_request.rb +195 -0
  289. data/lib/vapi_server_sdk/types/server_message_knowledge_base_request_messages_item.rb +97 -0
  290. data/lib/vapi_server_sdk/types/{server_message_language_changed_phone_number.rb → server_message_knowledge_base_request_phone_number.rb} +8 -8
  291. data/lib/vapi_server_sdk/types/{server_message_language_changed.rb → server_message_language_change_detected.rb} +10 -10
  292. data/lib/vapi_server_sdk/types/server_message_language_change_detected_phone_number.rb +125 -0
  293. data/lib/vapi_server_sdk/types/server_message_message.rb +22 -9
  294. data/lib/vapi_server_sdk/types/server_message_response_knowledge_base_request.rb +81 -0
  295. data/lib/vapi_server_sdk/types/server_message_response_message_response.rb +14 -0
  296. data/lib/vapi_server_sdk/types/server_message_status_update.rb +11 -1
  297. data/lib/vapi_server_sdk/types/server_message_status_update_ended_reason.rb +83 -43
  298. data/lib/vapi_server_sdk/types/server_message_tool_calls_tool_with_tool_call_list_item.rb +77 -77
  299. data/lib/vapi_server_sdk/types/server_message_transfer_update.rb +18 -2
  300. data/lib/vapi_server_sdk/types/sip_authentication.rb +80 -0
  301. data/lib/vapi_server_sdk/types/smallest_ai_credential.rb +111 -0
  302. data/lib/vapi_server_sdk/types/smallest_ai_voice.rb +117 -0
  303. data/lib/vapi_server_sdk/types/smallest_ai_voice_id.rb +53 -0
  304. data/lib/vapi_server_sdk/types/smallest_ai_voice_id_enum.rb +31 -0
  305. data/lib/vapi_server_sdk/types/start_speaking_plan.rb +54 -10
  306. data/lib/vapi_server_sdk/types/start_speaking_plan_custom_endpointing_rules_item.rb +108 -0
  307. data/lib/vapi_server_sdk/types/structured_data_plan.rb +28 -10
  308. data/lib/vapi_server_sdk/types/subscription.rb +336 -0
  309. data/lib/vapi_server_sdk/types/subscription_status.rb +10 -0
  310. data/lib/vapi_server_sdk/types/subscription_type.rb +10 -0
  311. data/lib/vapi_server_sdk/types/success_evaluation_plan.rb +38 -16
  312. data/lib/vapi_server_sdk/types/summary_plan.rb +26 -8
  313. data/lib/vapi_server_sdk/types/sync_voice_library_dto_providers_item.rb +2 -0
  314. data/lib/vapi_server_sdk/types/tavus_conversation_properties.rb +173 -0
  315. data/lib/vapi_server_sdk/types/tavus_credential.rb +111 -0
  316. data/lib/vapi_server_sdk/types/tavus_voice.rb +163 -0
  317. data/lib/vapi_server_sdk/types/tavus_voice_voice_id.rb +53 -0
  318. data/lib/vapi_server_sdk/types/text_content.rb +73 -0
  319. data/lib/vapi_server_sdk/types/text_content_language.rb +191 -0
  320. data/lib/vapi_server_sdk/types/text_editor_tool.rb +194 -0
  321. data/lib/vapi_server_sdk/types/text_editor_tool_messages_item.rb +120 -0
  322. data/lib/vapi_server_sdk/types/together_ai_credential.rb +13 -3
  323. data/lib/vapi_server_sdk/types/together_ai_model.rb +21 -13
  324. data/lib/vapi_server_sdk/types/tool_message_complete.rb +29 -3
  325. data/lib/vapi_server_sdk/types/tool_message_delayed.rb +30 -3
  326. data/lib/vapi_server_sdk/types/tool_message_failed.rb +30 -3
  327. data/lib/vapi_server_sdk/types/tool_message_start.rb +29 -4
  328. data/lib/vapi_server_sdk/types/transfer_destination_assistant.rb +79 -33
  329. data/lib/vapi_server_sdk/types/transfer_destination_assistant_message.rb +65 -0
  330. data/lib/vapi_server_sdk/types/transfer_destination_number.rb +56 -24
  331. data/lib/vapi_server_sdk/types/transfer_destination_number_message.rb +65 -0
  332. data/lib/vapi_server_sdk/types/transfer_destination_sip.rb +60 -15
  333. data/lib/vapi_server_sdk/types/transfer_destination_sip_message.rb +65 -0
  334. data/lib/vapi_server_sdk/types/transfer_destination_step.rb +28 -14
  335. data/lib/vapi_server_sdk/types/transfer_destination_step_message.rb +65 -0
  336. data/lib/vapi_server_sdk/types/transfer_plan.rb +161 -0
  337. data/lib/vapi_server_sdk/types/transfer_plan_message.rb +59 -0
  338. data/lib/vapi_server_sdk/types/transfer_plan_mode.rb +32 -0
  339. data/lib/vapi_server_sdk/types/transport.rb +70 -0
  340. data/lib/vapi_server_sdk/types/transport_cost.rb +12 -2
  341. data/lib/vapi_server_sdk/types/transport_cost_provider.rb +9 -0
  342. data/lib/vapi_server_sdk/types/transport_provider.rb +11 -0
  343. data/lib/vapi_server_sdk/types/trieve_knowledge_base.rb +125 -0
  344. data/lib/vapi_server_sdk/types/trieve_knowledge_base_vector_store_create_plan.rb +109 -0
  345. data/lib/vapi_server_sdk/types/trieve_knowledge_base_vector_store_search_plan.rb +95 -0
  346. data/lib/vapi_server_sdk/types/trieve_knowledge_base_vector_store_search_plan_search_type.rb +12 -0
  347. data/lib/vapi_server_sdk/types/twilio_credential.rb +12 -2
  348. data/lib/vapi_server_sdk/types/twilio_phone_number.rb +25 -29
  349. data/lib/vapi_server_sdk/types/update_anthropic_credential_dto.rb +13 -11
  350. data/lib/vapi_server_sdk/types/update_anyscale_credential_dto.rb +13 -11
  351. data/lib/vapi_server_sdk/types/update_assembly_ai_credential_dto.rb +67 -0
  352. data/lib/vapi_server_sdk/types/update_azure_credential_dto.rb +105 -0
  353. data/lib/vapi_server_sdk/types/update_azure_credential_dto_region.rb +23 -0
  354. data/lib/vapi_server_sdk/types/update_azure_credential_dto_service.rb +9 -0
  355. data/lib/vapi_server_sdk/types/update_azure_open_ai_credential_dto.rb +29 -18
  356. data/lib/vapi_server_sdk/types/update_azure_open_ai_credential_dto_models_item.rb +1 -0
  357. data/lib/vapi_server_sdk/types/update_azure_open_ai_credential_dto_region.rb +2 -1
  358. data/lib/vapi_server_sdk/types/update_bash_tool_dto.rb +161 -0
  359. data/lib/vapi_server_sdk/types/update_bash_tool_dto_messages_item.rb +120 -0
  360. data/lib/vapi_server_sdk/types/update_byo_phone_number_dto.rb +187 -0
  361. data/lib/vapi_server_sdk/types/update_byo_phone_number_dto_fallback_destination.rb +101 -0
  362. data/lib/vapi_server_sdk/types/update_byo_sip_trunk_credential_dto.rb +30 -18
  363. data/lib/vapi_server_sdk/types/update_cartesia_credential_dto.rb +13 -11
  364. data/lib/vapi_server_sdk/types/update_cerebras_credential_dto.rb +67 -0
  365. data/lib/vapi_server_sdk/types/update_cloudflare_credential_dto.rb +101 -0
  366. data/lib/vapi_server_sdk/types/update_computer_tool_dto.rb +185 -0
  367. data/lib/vapi_server_sdk/types/update_computer_tool_dto_messages_item.rb +120 -0
  368. data/lib/vapi_server_sdk/types/update_conversation_block_dto.rb +206 -0
  369. data/lib/vapi_server_sdk/types/update_conversation_block_dto_messages_item.rb +95 -0
  370. data/lib/vapi_server_sdk/types/update_custom_knowledge_base_dto.rb +139 -0
  371. data/lib/vapi_server_sdk/types/update_custom_llm_credential_dto.rb +28 -11
  372. data/lib/vapi_server_sdk/types/update_deep_infra_credential_dto.rb +13 -11
  373. data/lib/vapi_server_sdk/types/update_deep_seek_credential_dto.rb +67 -0
  374. data/lib/vapi_server_sdk/types/update_deepgram_credential_dto.rb +11 -11
  375. data/lib/vapi_server_sdk/types/update_dtmf_tool_dto.rb +139 -0
  376. data/lib/vapi_server_sdk/types/update_dtmf_tool_dto_messages_item.rb +120 -0
  377. data/lib/vapi_server_sdk/types/update_eleven_labs_credential_dto.rb +20 -11
  378. data/lib/vapi_server_sdk/types/update_end_call_tool_dto.rb +139 -0
  379. data/lib/vapi_server_sdk/types/update_end_call_tool_dto_messages_item.rb +120 -0
  380. data/lib/vapi_server_sdk/types/update_function_tool_dto.rb +139 -0
  381. data/lib/vapi_server_sdk/types/update_function_tool_dto_messages_item.rb +120 -0
  382. data/lib/vapi_server_sdk/types/update_gcp_credential_dto.rb +6 -18
  383. data/lib/vapi_server_sdk/types/update_ghl_tool_dto.rb +159 -0
  384. data/lib/vapi_server_sdk/types/update_ghl_tool_dto_messages_item.rb +120 -0
  385. data/lib/vapi_server_sdk/types/update_gladia_credential_dto.rb +13 -11
  386. data/lib/vapi_server_sdk/types/update_go_high_level_credential_dto.rb +13 -11
  387. data/lib/vapi_server_sdk/types/update_google_credential_dto.rb +67 -0
  388. data/lib/vapi_server_sdk/types/update_groq_credential_dto.rb +13 -11
  389. data/lib/vapi_server_sdk/types/update_inflection_ai_credential_dto.rb +67 -0
  390. data/lib/vapi_server_sdk/types/update_langfuse_credential_dto.rb +83 -0
  391. data/lib/vapi_server_sdk/types/update_lmnt_credential_dto.rb +13 -11
  392. data/lib/vapi_server_sdk/types/update_make_credential_dto.rb +17 -15
  393. data/lib/vapi_server_sdk/types/update_make_tool_dto.rb +159 -0
  394. data/lib/vapi_server_sdk/types/update_make_tool_dto_messages_item.rb +120 -0
  395. data/lib/vapi_server_sdk/types/update_open_ai_credential_dto.rb +13 -11
  396. data/lib/vapi_server_sdk/types/update_open_router_credential_dto.rb +13 -11
  397. data/lib/vapi_server_sdk/types/update_org_dto.rb +45 -26
  398. data/lib/vapi_server_sdk/types/update_org_dto_channel.rb +10 -0
  399. data/lib/vapi_server_sdk/types/update_output_tool_dto.rb +139 -0
  400. data/lib/vapi_server_sdk/types/update_output_tool_dto_messages_item.rb +120 -0
  401. data/lib/vapi_server_sdk/types/update_perplexity_ai_credential_dto.rb +13 -11
  402. data/lib/vapi_server_sdk/types/update_play_ht_credential_dto.rb +15 -13
  403. data/lib/vapi_server_sdk/types/update_rime_ai_credential_dto.rb +13 -11
  404. data/lib/vapi_server_sdk/types/update_runpod_credential_dto.rb +13 -11
  405. data/lib/vapi_server_sdk/types/update_s_3_credential_dto.rb +24 -22
  406. data/lib/vapi_server_sdk/types/update_smallest_ai_credential_dto.rb +67 -0
  407. data/lib/vapi_server_sdk/types/update_tavus_credential_dto.rb +67 -0
  408. data/lib/vapi_server_sdk/types/update_text_editor_tool_dto.rb +161 -0
  409. data/lib/vapi_server_sdk/types/update_text_editor_tool_dto_messages_item.rb +120 -0
  410. data/lib/vapi_server_sdk/types/update_together_ai_credential_dto.rb +13 -11
  411. data/lib/vapi_server_sdk/types/update_token_dto.rb +81 -0
  412. data/lib/vapi_server_sdk/types/update_token_dto_tag.rb +9 -0
  413. data/lib/vapi_server_sdk/types/update_tool_call_block_dto.rb +168 -0
  414. data/lib/vapi_server_sdk/types/update_tool_call_block_dto_messages_item.rb +94 -0
  415. data/lib/vapi_server_sdk/types/update_tool_call_block_dto_tool.rb +161 -0
  416. data/lib/vapi_server_sdk/types/update_transfer_call_tool_dto.rb +161 -0
  417. data/lib/vapi_server_sdk/types/update_transfer_call_tool_dto_destinations_item.rb +121 -0
  418. data/lib/vapi_server_sdk/types/update_transfer_call_tool_dto_messages_item.rb +121 -0
  419. data/lib/vapi_server_sdk/types/update_trieve_knowledge_base_dto.rb +109 -0
  420. data/lib/vapi_server_sdk/types/update_twilio_credential_dto.rb +15 -13
  421. data/lib/vapi_server_sdk/types/update_twilio_phone_number_dto.rb +163 -0
  422. data/lib/vapi_server_sdk/types/update_twilio_phone_number_dto_fallback_destination.rb +101 -0
  423. data/lib/vapi_server_sdk/types/update_vapi_phone_number_dto.rb +169 -0
  424. data/lib/vapi_server_sdk/types/update_vapi_phone_number_dto_fallback_destination.rb +101 -0
  425. data/lib/vapi_server_sdk/types/update_vonage_credential_dto.rb +15 -13
  426. data/lib/vapi_server_sdk/types/update_vonage_phone_number_dto.rb +157 -0
  427. data/lib/vapi_server_sdk/types/update_vonage_phone_number_dto_fallback_destination.rb +101 -0
  428. data/lib/vapi_server_sdk/types/update_workflow_block_dto.rb +154 -0
  429. data/lib/vapi_server_sdk/types/update_workflow_block_dto_messages_item.rb +94 -0
  430. data/lib/vapi_server_sdk/types/update_workflow_block_dto_steps_item.rb +94 -0
  431. data/lib/vapi_server_sdk/types/update_x_ai_credential_dto.rb +67 -0
  432. data/lib/vapi_server_sdk/types/vapi_cost.rb +10 -2
  433. data/lib/vapi_server_sdk/types/vapi_cost_sub_type.rb +9 -0
  434. data/lib/vapi_server_sdk/types/vapi_model.rb +24 -16
  435. data/lib/vapi_server_sdk/types/vapi_phone_number.rb +44 -30
  436. data/lib/vapi_server_sdk/types/vonage_credential.rb +12 -2
  437. data/lib/vapi_server_sdk/types/vonage_phone_number.rb +25 -29
  438. data/lib/vapi_server_sdk/types/webhook_credential.rb +134 -0
  439. data/lib/vapi_server_sdk/types/x_ai_credential.rb +113 -0
  440. data/lib/vapi_server_sdk/types/xai_model.rb +177 -0
  441. data/lib/vapi_server_sdk/types/xai_model_tools_item.rb +159 -0
  442. data/lib/vapi_server_sdk.rb +7 -0
  443. metadata +240 -14
  444. data/lib/vapi_server_sdk/blocks/types/update_block_dto_messages_item.rb +0 -96
  445. data/lib/vapi_server_sdk/blocks/types/update_block_dto_steps_item.rb +0 -96
  446. data/lib/vapi_server_sdk/blocks/types/update_block_dto_tool.rb +0 -163
  447. data/lib/vapi_server_sdk/phone_numbers/types/update_phone_number_dto_fallback_destination.rb +0 -103
  448. data/lib/vapi_server_sdk/tools/types/update_tool_dto_messages_item.rb +0 -122
@@ -5,12 +5,12 @@ require "json"
5
5
 
6
6
  module Vapi
7
7
  class CreateTwilioCredentialDto
8
- # @return [String]
9
- attr_reader :provider
10
8
  # @return [String] This is not returned in the API.
11
9
  attr_reader :auth_token
12
10
  # @return [String]
13
11
  attr_reader :account_sid
12
+ # @return [String] This is the name of credential. This is just for your reference.
13
+ attr_reader :name
14
14
  # @return [OpenStruct] Additional properties unmapped to the current class definition
15
15
  attr_reader :additional_properties
16
16
  # @return [Object]
@@ -19,17 +19,19 @@ module Vapi
19
19
 
20
20
  OMIT = Object.new
21
21
 
22
- # @param provider [String]
23
22
  # @param auth_token [String] This is not returned in the API.
24
23
  # @param account_sid [String]
24
+ # @param name [String] This is the name of credential. This is just for your reference.
25
25
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
26
26
  # @return [Vapi::CreateTwilioCredentialDto]
27
- def initialize(provider:, auth_token:, account_sid:, additional_properties: nil)
28
- @provider = provider
27
+ def initialize(auth_token:, account_sid:, name: OMIT, additional_properties: nil)
29
28
  @auth_token = auth_token
30
29
  @account_sid = account_sid
30
+ @name = name if name != OMIT
31
31
  @additional_properties = additional_properties
32
- @_field_set = { "provider": provider, "authToken": auth_token, "accountSid": account_sid }
32
+ @_field_set = { "authToken": auth_token, "accountSid": account_sid, "name": name }.reject do |_k, v|
33
+ v == OMIT
34
+ end
33
35
  end
34
36
 
35
37
  # Deserialize a JSON object to an instance of CreateTwilioCredentialDto
@@ -39,13 +41,13 @@ module Vapi
39
41
  def self.from_json(json_object:)
40
42
  struct = JSON.parse(json_object, object_class: OpenStruct)
41
43
  parsed_json = JSON.parse(json_object)
42
- provider = parsed_json["provider"]
43
44
  auth_token = parsed_json["authToken"]
44
45
  account_sid = parsed_json["accountSid"]
46
+ name = parsed_json["name"]
45
47
  new(
46
- provider: provider,
47
48
  auth_token: auth_token,
48
49
  account_sid: account_sid,
50
+ name: name,
49
51
  additional_properties: struct
50
52
  )
51
53
  end
@@ -64,9 +66,9 @@ module Vapi
64
66
  # @param obj [Object]
65
67
  # @return [Void]
66
68
  def self.validate_raw(obj:)
67
- obj.provider.is_a?(String) != false || raise("Passed value for field obj.provider is not the expected type, validation failed.")
68
69
  obj.auth_token.is_a?(String) != false || raise("Passed value for field obj.auth_token is not the expected type, validation failed.")
69
70
  obj.account_sid.is_a?(String) != false || raise("Passed value for field obj.account_sid is not the expected type, validation failed.")
71
+ obj.name&.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
70
72
  end
71
73
  end
72
74
  end
@@ -1,6 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require_relative "create_twilio_phone_number_dto_fallback_destination"
4
+ require_relative "server"
4
5
  require "ostruct"
5
6
  require "json"
6
7
 
@@ -31,16 +32,13 @@ module Vapi
31
32
  # to your Server URL. Check `ServerMessage` and `ServerMessageResponse` for the
32
33
  # shape of the message and response that is expected.
33
34
  attr_reader :squad_id
34
- # @return [String] This is the server URL where messages will be sent for calls on this number.
35
- # This includes the `assistant-request` message.
36
- # You can see the shape of the messages sent in `ServerMessage`.
37
- # This overrides the `org.serverUrl`. Order of precedence: tool.server.url >
38
- # assistant.serverUrl > phoneNumber.serverUrl > org.serverUrl.
39
- attr_reader :server_url
40
- # @return [String] This is the secret Vapi will send with every message to your server. It's sent
41
- # as a header called x-vapi-secret.
42
- # Same precedence logic as serverUrl.
43
- attr_reader :server_url_secret
35
+ # @return [Vapi::Server] This is where Vapi will send webhooks. You can find all webhooks available along
36
+ # with their shape in ServerMessage schema.
37
+ # The order of precedence is:
38
+ # 1. assistant.server
39
+ # 2. phoneNumber.server
40
+ # 3. org.server
41
+ attr_reader :server
44
42
  # @return [OpenStruct] Additional properties unmapped to the current class definition
45
43
  attr_reader :additional_properties
46
44
  # @return [Object]
@@ -67,18 +65,16 @@ module Vapi
67
65
  # If neither `assistantId` nor `squadId` is set, `assistant-request` will be sent
68
66
  # to your Server URL. Check `ServerMessage` and `ServerMessageResponse` for the
69
67
  # shape of the message and response that is expected.
70
- # @param server_url [String] This is the server URL where messages will be sent for calls on this number.
71
- # This includes the `assistant-request` message.
72
- # You can see the shape of the messages sent in `ServerMessage`.
73
- # This overrides the `org.serverUrl`. Order of precedence: tool.server.url >
74
- # assistant.serverUrl > phoneNumber.serverUrl > org.serverUrl.
75
- # @param server_url_secret [String] This is the secret Vapi will send with every message to your server. It's sent
76
- # as a header called x-vapi-secret.
77
- # Same precedence logic as serverUrl.
68
+ # @param server [Vapi::Server] This is where Vapi will send webhooks. You can find all webhooks available along
69
+ # with their shape in ServerMessage schema.
70
+ # The order of precedence is:
71
+ # 1. assistant.server
72
+ # 2. phoneNumber.server
73
+ # 3. org.server
78
74
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
79
75
  # @return [Vapi::CreateTwilioPhoneNumberDto]
80
76
  def initialize(number:, twilio_account_sid:, twilio_auth_token:, fallback_destination: OMIT, name: OMIT,
81
- assistant_id: OMIT, squad_id: OMIT, server_url: OMIT, server_url_secret: OMIT, additional_properties: nil)
77
+ assistant_id: OMIT, squad_id: OMIT, server: OMIT, additional_properties: nil)
82
78
  @fallback_destination = fallback_destination if fallback_destination != OMIT
83
79
  @number = number
84
80
  @twilio_account_sid = twilio_account_sid
@@ -86,8 +82,7 @@ module Vapi
86
82
  @name = name if name != OMIT
87
83
  @assistant_id = assistant_id if assistant_id != OMIT
88
84
  @squad_id = squad_id if squad_id != OMIT
89
- @server_url = server_url if server_url != OMIT
90
- @server_url_secret = server_url_secret if server_url_secret != OMIT
85
+ @server = server if server != OMIT
91
86
  @additional_properties = additional_properties
92
87
  @_field_set = {
93
88
  "fallbackDestination": fallback_destination,
@@ -97,8 +92,7 @@ module Vapi
97
92
  "name": name,
98
93
  "assistantId": assistant_id,
99
94
  "squadId": squad_id,
100
- "serverUrl": server_url,
101
- "serverUrlSecret": server_url_secret
95
+ "server": server
102
96
  }.reject do |_k, v|
103
97
  v == OMIT
104
98
  end
@@ -123,8 +117,12 @@ module Vapi
123
117
  name = parsed_json["name"]
124
118
  assistant_id = parsed_json["assistantId"]
125
119
  squad_id = parsed_json["squadId"]
126
- server_url = parsed_json["serverUrl"]
127
- server_url_secret = parsed_json["serverUrlSecret"]
120
+ if parsed_json["server"].nil?
121
+ server = nil
122
+ else
123
+ server = parsed_json["server"].to_json
124
+ server = Vapi::Server.from_json(json_object: server)
125
+ end
128
126
  new(
129
127
  fallback_destination: fallback_destination,
130
128
  number: number,
@@ -133,8 +131,7 @@ module Vapi
133
131
  name: name,
134
132
  assistant_id: assistant_id,
135
133
  squad_id: squad_id,
136
- server_url: server_url,
137
- server_url_secret: server_url_secret,
134
+ server: server,
138
135
  additional_properties: struct
139
136
  )
140
137
  end
@@ -160,8 +157,7 @@ module Vapi
160
157
  obj.name&.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
161
158
  obj.assistant_id&.is_a?(String) != false || raise("Passed value for field obj.assistant_id is not the expected type, validation failed.")
162
159
  obj.squad_id&.is_a?(String) != false || raise("Passed value for field obj.squad_id is not the expected type, validation failed.")
163
- obj.server_url&.is_a?(String) != false || raise("Passed value for field obj.server_url is not the expected type, validation failed.")
164
- obj.server_url_secret&.is_a?(String) != false || raise("Passed value for field obj.server_url_secret is not the expected type, validation failed.")
160
+ obj.server.nil? || Vapi::Server.validate_raw(obj: obj.server)
165
161
  end
166
162
  end
167
163
  end
@@ -1,6 +1,8 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require_relative "create_vapi_phone_number_dto_fallback_destination"
4
+ require_relative "sip_authentication"
5
+ require_relative "server"
4
6
  require "ostruct"
5
7
  require "json"
6
8
 
@@ -17,6 +19,10 @@ module Vapi
17
19
  # attached to this number will answer.
18
20
  # This is case-insensitive.
19
21
  attr_reader :sip_uri
22
+ # @return [Vapi::SipAuthentication] This enables authentication for incoming SIP INVITE requests to the `sipUri`.
23
+ # If not set, any username/password to the 401 challenge of the SIP INVITE will be
24
+ # accepted.
25
+ attr_reader :authentication
20
26
  # @return [String] This is the name of the phone number. This is just for your own reference.
21
27
  attr_reader :name
22
28
  # @return [String] This is the assistant that will be used for incoming calls to this phone number.
@@ -29,16 +35,13 @@ module Vapi
29
35
  # to your Server URL. Check `ServerMessage` and `ServerMessageResponse` for the
30
36
  # shape of the message and response that is expected.
31
37
  attr_reader :squad_id
32
- # @return [String] This is the server URL where messages will be sent for calls on this number.
33
- # This includes the `assistant-request` message.
34
- # You can see the shape of the messages sent in `ServerMessage`.
35
- # This overrides the `org.serverUrl`. Order of precedence: tool.server.url >
36
- # assistant.serverUrl > phoneNumber.serverUrl > org.serverUrl.
37
- attr_reader :server_url
38
- # @return [String] This is the secret Vapi will send with every message to your server. It's sent
39
- # as a header called x-vapi-secret.
40
- # Same precedence logic as serverUrl.
41
- attr_reader :server_url_secret
38
+ # @return [Vapi::Server] This is where Vapi will send webhooks. You can find all webhooks available along
39
+ # with their shape in ServerMessage schema.
40
+ # The order of precedence is:
41
+ # 1. assistant.server
42
+ # 2. phoneNumber.server
43
+ # 3. org.server
44
+ attr_reader :server
42
45
  # @return [OpenStruct] Additional properties unmapped to the current class definition
43
46
  attr_reader :additional_properties
44
47
  # @return [Object]
@@ -56,6 +59,9 @@ module Vapi
56
59
  # @param sip_uri [String] This is the SIP URI of the phone number. You can SIP INVITE this. The assistant
57
60
  # attached to this number will answer.
58
61
  # This is case-insensitive.
62
+ # @param authentication [Vapi::SipAuthentication] This enables authentication for incoming SIP INVITE requests to the `sipUri`.
63
+ # If not set, any username/password to the 401 challenge of the SIP INVITE will be
64
+ # accepted.
59
65
  # @param name [String] This is the name of the phone number. This is just for your own reference.
60
66
  # @param assistant_id [String] This is the assistant that will be used for incoming calls to this phone number.
61
67
  # If neither `assistantId` nor `squadId` is set, `assistant-request` will be sent
@@ -65,34 +71,32 @@ module Vapi
65
71
  # If neither `assistantId` nor `squadId` is set, `assistant-request` will be sent
66
72
  # to your Server URL. Check `ServerMessage` and `ServerMessageResponse` for the
67
73
  # shape of the message and response that is expected.
68
- # @param server_url [String] This is the server URL where messages will be sent for calls on this number.
69
- # This includes the `assistant-request` message.
70
- # You can see the shape of the messages sent in `ServerMessage`.
71
- # This overrides the `org.serverUrl`. Order of precedence: tool.server.url >
72
- # assistant.serverUrl > phoneNumber.serverUrl > org.serverUrl.
73
- # @param server_url_secret [String] This is the secret Vapi will send with every message to your server. It's sent
74
- # as a header called x-vapi-secret.
75
- # Same precedence logic as serverUrl.
74
+ # @param server [Vapi::Server] This is where Vapi will send webhooks. You can find all webhooks available along
75
+ # with their shape in ServerMessage schema.
76
+ # The order of precedence is:
77
+ # 1. assistant.server
78
+ # 2. phoneNumber.server
79
+ # 3. org.server
76
80
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
77
81
  # @return [Vapi::CreateVapiPhoneNumberDto]
78
- def initialize(sip_uri:, fallback_destination: OMIT, name: OMIT, assistant_id: OMIT, squad_id: OMIT,
79
- server_url: OMIT, server_url_secret: OMIT, additional_properties: nil)
82
+ def initialize(sip_uri:, fallback_destination: OMIT, authentication: OMIT, name: OMIT, assistant_id: OMIT,
83
+ squad_id: OMIT, server: OMIT, additional_properties: nil)
80
84
  @fallback_destination = fallback_destination if fallback_destination != OMIT
81
85
  @sip_uri = sip_uri
86
+ @authentication = authentication if authentication != OMIT
82
87
  @name = name if name != OMIT
83
88
  @assistant_id = assistant_id if assistant_id != OMIT
84
89
  @squad_id = squad_id if squad_id != OMIT
85
- @server_url = server_url if server_url != OMIT
86
- @server_url_secret = server_url_secret if server_url_secret != OMIT
90
+ @server = server if server != OMIT
87
91
  @additional_properties = additional_properties
88
92
  @_field_set = {
89
93
  "fallbackDestination": fallback_destination,
90
94
  "sipUri": sip_uri,
95
+ "authentication": authentication,
91
96
  "name": name,
92
97
  "assistantId": assistant_id,
93
98
  "squadId": squad_id,
94
- "serverUrl": server_url,
95
- "serverUrlSecret": server_url_secret
99
+ "server": server
96
100
  }.reject do |_k, v|
97
101
  v == OMIT
98
102
  end
@@ -112,19 +116,29 @@ module Vapi
112
116
  fallback_destination = Vapi::CreateVapiPhoneNumberDtoFallbackDestination.from_json(json_object: fallback_destination)
113
117
  end
114
118
  sip_uri = parsed_json["sipUri"]
119
+ if parsed_json["authentication"].nil?
120
+ authentication = nil
121
+ else
122
+ authentication = parsed_json["authentication"].to_json
123
+ authentication = Vapi::SipAuthentication.from_json(json_object: authentication)
124
+ end
115
125
  name = parsed_json["name"]
116
126
  assistant_id = parsed_json["assistantId"]
117
127
  squad_id = parsed_json["squadId"]
118
- server_url = parsed_json["serverUrl"]
119
- server_url_secret = parsed_json["serverUrlSecret"]
128
+ if parsed_json["server"].nil?
129
+ server = nil
130
+ else
131
+ server = parsed_json["server"].to_json
132
+ server = Vapi::Server.from_json(json_object: server)
133
+ end
120
134
  new(
121
135
  fallback_destination: fallback_destination,
122
136
  sip_uri: sip_uri,
137
+ authentication: authentication,
123
138
  name: name,
124
139
  assistant_id: assistant_id,
125
140
  squad_id: squad_id,
126
- server_url: server_url,
127
- server_url_secret: server_url_secret,
141
+ server: server,
128
142
  additional_properties: struct
129
143
  )
130
144
  end
@@ -145,11 +159,11 @@ module Vapi
145
159
  def self.validate_raw(obj:)
146
160
  obj.fallback_destination.nil? || Vapi::CreateVapiPhoneNumberDtoFallbackDestination.validate_raw(obj: obj.fallback_destination)
147
161
  obj.sip_uri.is_a?(String) != false || raise("Passed value for field obj.sip_uri is not the expected type, validation failed.")
162
+ obj.authentication.nil? || Vapi::SipAuthentication.validate_raw(obj: obj.authentication)
148
163
  obj.name&.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
149
164
  obj.assistant_id&.is_a?(String) != false || raise("Passed value for field obj.assistant_id is not the expected type, validation failed.")
150
165
  obj.squad_id&.is_a?(String) != false || raise("Passed value for field obj.squad_id is not the expected type, validation failed.")
151
- obj.server_url&.is_a?(String) != false || raise("Passed value for field obj.server_url is not the expected type, validation failed.")
152
- obj.server_url_secret&.is_a?(String) != false || raise("Passed value for field obj.server_url_secret is not the expected type, validation failed.")
166
+ obj.server.nil? || Vapi::Server.validate_raw(obj: obj.server)
153
167
  end
154
168
  end
155
169
  end
@@ -5,12 +5,12 @@ require "json"
5
5
 
6
6
  module Vapi
7
7
  class CreateVonageCredentialDto
8
- # @return [String]
9
- attr_reader :provider
10
8
  # @return [String] This is not returned in the API.
11
9
  attr_reader :api_secret
12
10
  # @return [String]
13
11
  attr_reader :api_key
12
+ # @return [String] This is the name of credential. This is just for your reference.
13
+ attr_reader :name
14
14
  # @return [OpenStruct] Additional properties unmapped to the current class definition
15
15
  attr_reader :additional_properties
16
16
  # @return [Object]
@@ -19,17 +19,19 @@ module Vapi
19
19
 
20
20
  OMIT = Object.new
21
21
 
22
- # @param provider [String]
23
22
  # @param api_secret [String] This is not returned in the API.
24
23
  # @param api_key [String]
24
+ # @param name [String] This is the name of credential. This is just for your reference.
25
25
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
26
26
  # @return [Vapi::CreateVonageCredentialDto]
27
- def initialize(provider:, api_secret:, api_key:, additional_properties: nil)
28
- @provider = provider
27
+ def initialize(api_secret:, api_key:, name: OMIT, additional_properties: nil)
29
28
  @api_secret = api_secret
30
29
  @api_key = api_key
30
+ @name = name if name != OMIT
31
31
  @additional_properties = additional_properties
32
- @_field_set = { "provider": provider, "apiSecret": api_secret, "apiKey": api_key }
32
+ @_field_set = { "apiSecret": api_secret, "apiKey": api_key, "name": name }.reject do |_k, v|
33
+ v == OMIT
34
+ end
33
35
  end
34
36
 
35
37
  # Deserialize a JSON object to an instance of CreateVonageCredentialDto
@@ -39,13 +41,13 @@ module Vapi
39
41
  def self.from_json(json_object:)
40
42
  struct = JSON.parse(json_object, object_class: OpenStruct)
41
43
  parsed_json = JSON.parse(json_object)
42
- provider = parsed_json["provider"]
43
44
  api_secret = parsed_json["apiSecret"]
44
45
  api_key = parsed_json["apiKey"]
46
+ name = parsed_json["name"]
45
47
  new(
46
- provider: provider,
47
48
  api_secret: api_secret,
48
49
  api_key: api_key,
50
+ name: name,
49
51
  additional_properties: struct
50
52
  )
51
53
  end
@@ -64,9 +66,9 @@ module Vapi
64
66
  # @param obj [Object]
65
67
  # @return [Void]
66
68
  def self.validate_raw(obj:)
67
- obj.provider.is_a?(String) != false || raise("Passed value for field obj.provider is not the expected type, validation failed.")
68
69
  obj.api_secret.is_a?(String) != false || raise("Passed value for field obj.api_secret is not the expected type, validation failed.")
69
70
  obj.api_key.is_a?(String) != false || raise("Passed value for field obj.api_key is not the expected type, validation failed.")
71
+ obj.name&.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
70
72
  end
71
73
  end
72
74
  end
@@ -1,6 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require_relative "create_vonage_phone_number_dto_fallback_destination"
4
+ require_relative "server"
4
5
  require "ostruct"
5
6
  require "json"
6
7
 
@@ -30,16 +31,13 @@ module Vapi
30
31
  # to your Server URL. Check `ServerMessage` and `ServerMessageResponse` for the
31
32
  # shape of the message and response that is expected.
32
33
  attr_reader :squad_id
33
- # @return [String] This is the server URL where messages will be sent for calls on this number.
34
- # This includes the `assistant-request` message.
35
- # You can see the shape of the messages sent in `ServerMessage`.
36
- # This overrides the `org.serverUrl`. Order of precedence: tool.server.url >
37
- # assistant.serverUrl > phoneNumber.serverUrl > org.serverUrl.
38
- attr_reader :server_url
39
- # @return [String] This is the secret Vapi will send with every message to your server. It's sent
40
- # as a header called x-vapi-secret.
41
- # Same precedence logic as serverUrl.
42
- attr_reader :server_url_secret
34
+ # @return [Vapi::Server] This is where Vapi will send webhooks. You can find all webhooks available along
35
+ # with their shape in ServerMessage schema.
36
+ # The order of precedence is:
37
+ # 1. assistant.server
38
+ # 2. phoneNumber.server
39
+ # 3. org.server
40
+ attr_reader :server
43
41
  # @return [OpenStruct] Additional properties unmapped to the current class definition
44
42
  attr_reader :additional_properties
45
43
  # @return [Object]
@@ -66,26 +64,23 @@ module Vapi
66
64
  # If neither `assistantId` nor `squadId` is set, `assistant-request` will be sent
67
65
  # to your Server URL. Check `ServerMessage` and `ServerMessageResponse` for the
68
66
  # shape of the message and response that is expected.
69
- # @param server_url [String] This is the server URL where messages will be sent for calls on this number.
70
- # This includes the `assistant-request` message.
71
- # You can see the shape of the messages sent in `ServerMessage`.
72
- # This overrides the `org.serverUrl`. Order of precedence: tool.server.url >
73
- # assistant.serverUrl > phoneNumber.serverUrl > org.serverUrl.
74
- # @param server_url_secret [String] This is the secret Vapi will send with every message to your server. It's sent
75
- # as a header called x-vapi-secret.
76
- # Same precedence logic as serverUrl.
67
+ # @param server [Vapi::Server] This is where Vapi will send webhooks. You can find all webhooks available along
68
+ # with their shape in ServerMessage schema.
69
+ # The order of precedence is:
70
+ # 1. assistant.server
71
+ # 2. phoneNumber.server
72
+ # 3. org.server
77
73
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
78
74
  # @return [Vapi::CreateVonagePhoneNumberDto]
79
75
  def initialize(number:, credential_id:, fallback_destination: OMIT, name: OMIT, assistant_id: OMIT, squad_id: OMIT,
80
- server_url: OMIT, server_url_secret: OMIT, additional_properties: nil)
76
+ server: OMIT, additional_properties: nil)
81
77
  @fallback_destination = fallback_destination if fallback_destination != OMIT
82
78
  @number = number
83
79
  @credential_id = credential_id
84
80
  @name = name if name != OMIT
85
81
  @assistant_id = assistant_id if assistant_id != OMIT
86
82
  @squad_id = squad_id if squad_id != OMIT
87
- @server_url = server_url if server_url != OMIT
88
- @server_url_secret = server_url_secret if server_url_secret != OMIT
83
+ @server = server if server != OMIT
89
84
  @additional_properties = additional_properties
90
85
  @_field_set = {
91
86
  "fallbackDestination": fallback_destination,
@@ -94,8 +89,7 @@ module Vapi
94
89
  "name": name,
95
90
  "assistantId": assistant_id,
96
91
  "squadId": squad_id,
97
- "serverUrl": server_url,
98
- "serverUrlSecret": server_url_secret
92
+ "server": server
99
93
  }.reject do |_k, v|
100
94
  v == OMIT
101
95
  end
@@ -119,8 +113,12 @@ module Vapi
119
113
  name = parsed_json["name"]
120
114
  assistant_id = parsed_json["assistantId"]
121
115
  squad_id = parsed_json["squadId"]
122
- server_url = parsed_json["serverUrl"]
123
- server_url_secret = parsed_json["serverUrlSecret"]
116
+ if parsed_json["server"].nil?
117
+ server = nil
118
+ else
119
+ server = parsed_json["server"].to_json
120
+ server = Vapi::Server.from_json(json_object: server)
121
+ end
124
122
  new(
125
123
  fallback_destination: fallback_destination,
126
124
  number: number,
@@ -128,8 +126,7 @@ module Vapi
128
126
  name: name,
129
127
  assistant_id: assistant_id,
130
128
  squad_id: squad_id,
131
- server_url: server_url,
132
- server_url_secret: server_url_secret,
129
+ server: server,
133
130
  additional_properties: struct
134
131
  )
135
132
  end
@@ -154,8 +151,7 @@ module Vapi
154
151
  obj.name&.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
155
152
  obj.assistant_id&.is_a?(String) != false || raise("Passed value for field obj.assistant_id is not the expected type, validation failed.")
156
153
  obj.squad_id&.is_a?(String) != false || raise("Passed value for field obj.squad_id is not the expected type, validation failed.")
157
- obj.server_url&.is_a?(String) != false || raise("Passed value for field obj.server_url is not the expected type, validation failed.")
158
- obj.server_url_secret&.is_a?(String) != false || raise("Passed value for field obj.server_url_secret is not the expected type, validation failed.")
154
+ obj.server.nil? || Vapi::Server.validate_raw(obj: obj.server)
159
155
  end
160
156
  end
161
157
  end
@@ -0,0 +1,73 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "o_auth_2_authentication_plan"
4
+ require "ostruct"
5
+ require "json"
6
+
7
+ module Vapi
8
+ class CreateWebhookCredentialDto
9
+ # @return [Vapi::OAuth2AuthenticationPlan] This is the authentication plan. Currently supports OAuth2 RFC 6749.
10
+ attr_reader :authentication_plan
11
+ # @return [String] This is the name of credential. This is just for your reference.
12
+ attr_reader :name
13
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
14
+ attr_reader :additional_properties
15
+ # @return [Object]
16
+ attr_reader :_field_set
17
+ protected :_field_set
18
+
19
+ OMIT = Object.new
20
+
21
+ # @param authentication_plan [Vapi::OAuth2AuthenticationPlan] This is the authentication plan. Currently supports OAuth2 RFC 6749.
22
+ # @param name [String] This is the name of credential. This is just for your reference.
23
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
24
+ # @return [Vapi::CreateWebhookCredentialDto]
25
+ def initialize(authentication_plan:, name: OMIT, additional_properties: nil)
26
+ @authentication_plan = authentication_plan
27
+ @name = name if name != OMIT
28
+ @additional_properties = additional_properties
29
+ @_field_set = { "authenticationPlan": authentication_plan, "name": name }.reject do |_k, v|
30
+ v == OMIT
31
+ end
32
+ end
33
+
34
+ # Deserialize a JSON object to an instance of CreateWebhookCredentialDto
35
+ #
36
+ # @param json_object [String]
37
+ # @return [Vapi::CreateWebhookCredentialDto]
38
+ def self.from_json(json_object:)
39
+ struct = JSON.parse(json_object, object_class: OpenStruct)
40
+ parsed_json = JSON.parse(json_object)
41
+ if parsed_json["authenticationPlan"].nil?
42
+ authentication_plan = nil
43
+ else
44
+ authentication_plan = parsed_json["authenticationPlan"].to_json
45
+ authentication_plan = Vapi::OAuth2AuthenticationPlan.from_json(json_object: authentication_plan)
46
+ end
47
+ name = parsed_json["name"]
48
+ new(
49
+ authentication_plan: authentication_plan,
50
+ name: name,
51
+ additional_properties: struct
52
+ )
53
+ end
54
+
55
+ # Serialize an instance of CreateWebhookCredentialDto to a JSON object
56
+ #
57
+ # @return [String]
58
+ def to_json(*_args)
59
+ @_field_set&.to_json
60
+ end
61
+
62
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
63
+ # hash and check each fields type against the current object's property
64
+ # definitions.
65
+ #
66
+ # @param obj [Object]
67
+ # @return [Void]
68
+ def self.validate_raw(obj:)
69
+ Vapi::OAuth2AuthenticationPlan.validate_raw(obj: obj.authentication_plan)
70
+ obj.name&.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
71
+ end
72
+ end
73
+ end
@@ -0,0 +1,67 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "ostruct"
4
+ require "json"
5
+
6
+ module Vapi
7
+ class CreateXAiCredentialDto
8
+ # @return [String] This is not returned in the API.
9
+ attr_reader :api_key
10
+ # @return [String] This is the name of credential. This is just for your reference.
11
+ attr_reader :name
12
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
13
+ attr_reader :additional_properties
14
+ # @return [Object]
15
+ attr_reader :_field_set
16
+ protected :_field_set
17
+
18
+ OMIT = Object.new
19
+
20
+ # @param api_key [String] This is not returned in the API.
21
+ # @param name [String] This is the name of credential. This is just for your reference.
22
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
23
+ # @return [Vapi::CreateXAiCredentialDto]
24
+ def initialize(api_key:, name: OMIT, additional_properties: nil)
25
+ @api_key = api_key
26
+ @name = name if name != OMIT
27
+ @additional_properties = additional_properties
28
+ @_field_set = { "apiKey": api_key, "name": name }.reject do |_k, v|
29
+ v == OMIT
30
+ end
31
+ end
32
+
33
+ # Deserialize a JSON object to an instance of CreateXAiCredentialDto
34
+ #
35
+ # @param json_object [String]
36
+ # @return [Vapi::CreateXAiCredentialDto]
37
+ def self.from_json(json_object:)
38
+ struct = JSON.parse(json_object, object_class: OpenStruct)
39
+ parsed_json = JSON.parse(json_object)
40
+ api_key = parsed_json["apiKey"]
41
+ name = parsed_json["name"]
42
+ new(
43
+ api_key: api_key,
44
+ name: name,
45
+ additional_properties: struct
46
+ )
47
+ end
48
+
49
+ # Serialize an instance of CreateXAiCredentialDto to a JSON object
50
+ #
51
+ # @return [String]
52
+ def to_json(*_args)
53
+ @_field_set&.to_json
54
+ end
55
+
56
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
57
+ # hash and check each fields type against the current object's property
58
+ # definitions.
59
+ #
60
+ # @param obj [Object]
61
+ # @return [Void]
62
+ def self.validate_raw(obj:)
63
+ obj.api_key.is_a?(String) != false || raise("Passed value for field obj.api_key is not the expected type, validation failed.")
64
+ obj.name&.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
65
+ end
66
+ end
67
+ end