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
@@ -0,0 +1,393 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "../../requests"
4
+ require "date"
5
+ require_relative "types/knowledge_bases_list_response_item"
6
+ require "json"
7
+ require_relative "types/knowledge_bases_create_request"
8
+ require_relative "types/knowledge_bases_create_response"
9
+ require_relative "types/knowledge_bases_get_response"
10
+ require_relative "types/knowledge_bases_delete_response"
11
+ require_relative "types/knowledge_bases_update_request"
12
+ require_relative "types/knowledge_bases_update_response"
13
+ require "async"
14
+
15
+ module Vapi
16
+ class KnowledgeBasesClient
17
+ # @return [Vapi::RequestClient]
18
+ attr_reader :request_client
19
+
20
+ # @param request_client [Vapi::RequestClient]
21
+ # @return [Vapi::KnowledgeBasesClient]
22
+ def initialize(request_client:)
23
+ @request_client = request_client
24
+ end
25
+
26
+ # @param limit [Float] This is the maximum number of items to return. Defaults to 100.
27
+ # @param created_at_gt [DateTime] This will return items where the createdAt is greater than the specified value.
28
+ # @param created_at_lt [DateTime] This will return items where the createdAt is less than the specified value.
29
+ # @param created_at_ge [DateTime] This will return items where the createdAt is greater than or equal to the
30
+ # specified value.
31
+ # @param created_at_le [DateTime] This will return items where the createdAt is less than or equal to the
32
+ # specified value.
33
+ # @param updated_at_gt [DateTime] This will return items where the updatedAt is greater than the specified value.
34
+ # @param updated_at_lt [DateTime] This will return items where the updatedAt is less than the specified value.
35
+ # @param updated_at_ge [DateTime] This will return items where the updatedAt is greater than or equal to the
36
+ # specified value.
37
+ # @param updated_at_le [DateTime] This will return items where the updatedAt is less than or equal to the
38
+ # specified value.
39
+ # @param request_options [Vapi::RequestOptions]
40
+ # @return [Array<Vapi::KnowledgeBases::KnowledgeBasesListResponseItem>]
41
+ # @example
42
+ # api = Vapi::Client.new(
43
+ # base_url: "https://api.example.com",
44
+ # environment: Vapi::Environment::DEFAULT,
45
+ # token: "YOUR_AUTH_TOKEN"
46
+ # )
47
+ # api.knowledge_bases.list
48
+ def list(limit: nil, created_at_gt: nil, created_at_lt: nil, created_at_ge: nil, created_at_le: nil,
49
+ updated_at_gt: nil, updated_at_lt: nil, updated_at_ge: nil, updated_at_le: nil, request_options: nil)
50
+ response = @request_client.conn.get do |req|
51
+ req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
52
+ req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
53
+ req.headers = {
54
+ **(req.headers || {}),
55
+ **@request_client.get_headers,
56
+ **(request_options&.additional_headers || {})
57
+ }.compact
58
+ req.params = {
59
+ **(request_options&.additional_query_parameters || {}),
60
+ "limit": limit,
61
+ "createdAtGt": created_at_gt,
62
+ "createdAtLt": created_at_lt,
63
+ "createdAtGe": created_at_ge,
64
+ "createdAtLe": created_at_le,
65
+ "updatedAtGt": updated_at_gt,
66
+ "updatedAtLt": updated_at_lt,
67
+ "updatedAtGe": updated_at_ge,
68
+ "updatedAtLe": updated_at_le
69
+ }.compact
70
+ unless request_options.nil? || request_options&.additional_body_parameters.nil?
71
+ req.body = { **(request_options&.additional_body_parameters || {}) }.compact
72
+ end
73
+ req.url "#{@request_client.get_url(request_options: request_options)}/knowledge-base"
74
+ end
75
+ parsed_json = JSON.parse(response.body)
76
+ parsed_json&.map do |item|
77
+ item = item.to_json
78
+ Vapi::KnowledgeBases::KnowledgeBasesListResponseItem.from_json(json_object: item)
79
+ end
80
+ end
81
+
82
+ # @param request [Vapi::KnowledgeBases::KnowledgeBasesCreateRequest]
83
+ # @param request_options [Vapi::RequestOptions]
84
+ # @return [Vapi::KnowledgeBases::KnowledgeBasesCreateResponse]
85
+ # @example
86
+ # api = Vapi::Client.new(
87
+ # base_url: "https://api.example.com",
88
+ # environment: Vapi::Environment::DEFAULT,
89
+ # token: "YOUR_AUTH_TOKEN"
90
+ # )
91
+ # api.knowledge_bases.create
92
+ def create(request:, request_options: nil)
93
+ response = @request_client.conn.post do |req|
94
+ req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
95
+ req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
96
+ req.headers = {
97
+ **(req.headers || {}),
98
+ **@request_client.get_headers,
99
+ **(request_options&.additional_headers || {})
100
+ }.compact
101
+ unless request_options.nil? || request_options&.additional_query_parameters.nil?
102
+ req.params = { **(request_options&.additional_query_parameters || {}) }.compact
103
+ end
104
+ req.body = { **(request || {}), **(request_options&.additional_body_parameters || {}) }.compact
105
+ req.url "#{@request_client.get_url(request_options: request_options)}/knowledge-base"
106
+ end
107
+ Vapi::KnowledgeBases::KnowledgeBasesCreateResponse.from_json(json_object: response.body)
108
+ end
109
+
110
+ # @param id [String]
111
+ # @param request_options [Vapi::RequestOptions]
112
+ # @return [Vapi::KnowledgeBases::KnowledgeBasesGetResponse]
113
+ # @example
114
+ # api = Vapi::Client.new(
115
+ # base_url: "https://api.example.com",
116
+ # environment: Vapi::Environment::DEFAULT,
117
+ # token: "YOUR_AUTH_TOKEN"
118
+ # )
119
+ # api.knowledge_bases.get(id: "id")
120
+ def get(id:, request_options: nil)
121
+ response = @request_client.conn.get do |req|
122
+ req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
123
+ req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
124
+ req.headers = {
125
+ **(req.headers || {}),
126
+ **@request_client.get_headers,
127
+ **(request_options&.additional_headers || {})
128
+ }.compact
129
+ unless request_options.nil? || request_options&.additional_query_parameters.nil?
130
+ req.params = { **(request_options&.additional_query_parameters || {}) }.compact
131
+ end
132
+ unless request_options.nil? || request_options&.additional_body_parameters.nil?
133
+ req.body = { **(request_options&.additional_body_parameters || {}) }.compact
134
+ end
135
+ req.url "#{@request_client.get_url(request_options: request_options)}/knowledge-base/#{id}"
136
+ end
137
+ Vapi::KnowledgeBases::KnowledgeBasesGetResponse.from_json(json_object: response.body)
138
+ end
139
+
140
+ # @param id [String]
141
+ # @param request_options [Vapi::RequestOptions]
142
+ # @return [Vapi::KnowledgeBases::KnowledgeBasesDeleteResponse]
143
+ # @example
144
+ # api = Vapi::Client.new(
145
+ # base_url: "https://api.example.com",
146
+ # environment: Vapi::Environment::DEFAULT,
147
+ # token: "YOUR_AUTH_TOKEN"
148
+ # )
149
+ # api.knowledge_bases.delete(id: "id")
150
+ def delete(id:, request_options: nil)
151
+ response = @request_client.conn.delete do |req|
152
+ req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
153
+ req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
154
+ req.headers = {
155
+ **(req.headers || {}),
156
+ **@request_client.get_headers,
157
+ **(request_options&.additional_headers || {})
158
+ }.compact
159
+ unless request_options.nil? || request_options&.additional_query_parameters.nil?
160
+ req.params = { **(request_options&.additional_query_parameters || {}) }.compact
161
+ end
162
+ unless request_options.nil? || request_options&.additional_body_parameters.nil?
163
+ req.body = { **(request_options&.additional_body_parameters || {}) }.compact
164
+ end
165
+ req.url "#{@request_client.get_url(request_options: request_options)}/knowledge-base/#{id}"
166
+ end
167
+ Vapi::KnowledgeBases::KnowledgeBasesDeleteResponse.from_json(json_object: response.body)
168
+ end
169
+
170
+ # @param id [String]
171
+ # @param request [Vapi::KnowledgeBases::KnowledgeBasesUpdateRequest]
172
+ # @param request_options [Vapi::RequestOptions]
173
+ # @return [Vapi::KnowledgeBases::KnowledgeBasesUpdateResponse]
174
+ # @example
175
+ # api = Vapi::Client.new(
176
+ # base_url: "https://api.example.com",
177
+ # environment: Vapi::Environment::DEFAULT,
178
+ # token: "YOUR_AUTH_TOKEN"
179
+ # )
180
+ # api.knowledge_bases.update(id: "id")
181
+ def update(id:, request:, request_options: nil)
182
+ response = @request_client.conn.patch do |req|
183
+ req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
184
+ req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
185
+ req.headers = {
186
+ **(req.headers || {}),
187
+ **@request_client.get_headers,
188
+ **(request_options&.additional_headers || {})
189
+ }.compact
190
+ unless request_options.nil? || request_options&.additional_query_parameters.nil?
191
+ req.params = { **(request_options&.additional_query_parameters || {}) }.compact
192
+ end
193
+ req.body = { **(request || {}), **(request_options&.additional_body_parameters || {}) }.compact
194
+ req.url "#{@request_client.get_url(request_options: request_options)}/knowledge-base/#{id}"
195
+ end
196
+ Vapi::KnowledgeBases::KnowledgeBasesUpdateResponse.from_json(json_object: response.body)
197
+ end
198
+ end
199
+
200
+ class AsyncKnowledgeBasesClient
201
+ # @return [Vapi::AsyncRequestClient]
202
+ attr_reader :request_client
203
+
204
+ # @param request_client [Vapi::AsyncRequestClient]
205
+ # @return [Vapi::AsyncKnowledgeBasesClient]
206
+ def initialize(request_client:)
207
+ @request_client = request_client
208
+ end
209
+
210
+ # @param limit [Float] This is the maximum number of items to return. Defaults to 100.
211
+ # @param created_at_gt [DateTime] This will return items where the createdAt is greater than the specified value.
212
+ # @param created_at_lt [DateTime] This will return items where the createdAt is less than the specified value.
213
+ # @param created_at_ge [DateTime] This will return items where the createdAt is greater than or equal to the
214
+ # specified value.
215
+ # @param created_at_le [DateTime] This will return items where the createdAt is less than or equal to the
216
+ # specified value.
217
+ # @param updated_at_gt [DateTime] This will return items where the updatedAt is greater than the specified value.
218
+ # @param updated_at_lt [DateTime] This will return items where the updatedAt is less than the specified value.
219
+ # @param updated_at_ge [DateTime] This will return items where the updatedAt is greater than or equal to the
220
+ # specified value.
221
+ # @param updated_at_le [DateTime] This will return items where the updatedAt is less than or equal to the
222
+ # specified value.
223
+ # @param request_options [Vapi::RequestOptions]
224
+ # @return [Array<Vapi::KnowledgeBases::KnowledgeBasesListResponseItem>]
225
+ # @example
226
+ # api = Vapi::Client.new(
227
+ # base_url: "https://api.example.com",
228
+ # environment: Vapi::Environment::DEFAULT,
229
+ # token: "YOUR_AUTH_TOKEN"
230
+ # )
231
+ # api.knowledge_bases.list
232
+ def list(limit: nil, created_at_gt: nil, created_at_lt: nil, created_at_ge: nil, created_at_le: nil,
233
+ updated_at_gt: nil, updated_at_lt: nil, updated_at_ge: nil, updated_at_le: nil, request_options: nil)
234
+ Async do
235
+ response = @request_client.conn.get do |req|
236
+ req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
237
+ req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
238
+ req.headers = {
239
+ **(req.headers || {}),
240
+ **@request_client.get_headers,
241
+ **(request_options&.additional_headers || {})
242
+ }.compact
243
+ req.params = {
244
+ **(request_options&.additional_query_parameters || {}),
245
+ "limit": limit,
246
+ "createdAtGt": created_at_gt,
247
+ "createdAtLt": created_at_lt,
248
+ "createdAtGe": created_at_ge,
249
+ "createdAtLe": created_at_le,
250
+ "updatedAtGt": updated_at_gt,
251
+ "updatedAtLt": updated_at_lt,
252
+ "updatedAtGe": updated_at_ge,
253
+ "updatedAtLe": updated_at_le
254
+ }.compact
255
+ unless request_options.nil? || request_options&.additional_body_parameters.nil?
256
+ req.body = { **(request_options&.additional_body_parameters || {}) }.compact
257
+ end
258
+ req.url "#{@request_client.get_url(request_options: request_options)}/knowledge-base"
259
+ end
260
+ parsed_json = JSON.parse(response.body)
261
+ parsed_json&.map do |item|
262
+ item = item.to_json
263
+ Vapi::KnowledgeBases::KnowledgeBasesListResponseItem.from_json(json_object: item)
264
+ end
265
+ end
266
+ end
267
+
268
+ # @param request [Vapi::KnowledgeBases::KnowledgeBasesCreateRequest]
269
+ # @param request_options [Vapi::RequestOptions]
270
+ # @return [Vapi::KnowledgeBases::KnowledgeBasesCreateResponse]
271
+ # @example
272
+ # api = Vapi::Client.new(
273
+ # base_url: "https://api.example.com",
274
+ # environment: Vapi::Environment::DEFAULT,
275
+ # token: "YOUR_AUTH_TOKEN"
276
+ # )
277
+ # api.knowledge_bases.create
278
+ def create(request:, request_options: nil)
279
+ Async do
280
+ response = @request_client.conn.post do |req|
281
+ req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
282
+ req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
283
+ req.headers = {
284
+ **(req.headers || {}),
285
+ **@request_client.get_headers,
286
+ **(request_options&.additional_headers || {})
287
+ }.compact
288
+ unless request_options.nil? || request_options&.additional_query_parameters.nil?
289
+ req.params = { **(request_options&.additional_query_parameters || {}) }.compact
290
+ end
291
+ req.body = { **(request || {}), **(request_options&.additional_body_parameters || {}) }.compact
292
+ req.url "#{@request_client.get_url(request_options: request_options)}/knowledge-base"
293
+ end
294
+ Vapi::KnowledgeBases::KnowledgeBasesCreateResponse.from_json(json_object: response.body)
295
+ end
296
+ end
297
+
298
+ # @param id [String]
299
+ # @param request_options [Vapi::RequestOptions]
300
+ # @return [Vapi::KnowledgeBases::KnowledgeBasesGetResponse]
301
+ # @example
302
+ # api = Vapi::Client.new(
303
+ # base_url: "https://api.example.com",
304
+ # environment: Vapi::Environment::DEFAULT,
305
+ # token: "YOUR_AUTH_TOKEN"
306
+ # )
307
+ # api.knowledge_bases.get(id: "id")
308
+ def get(id:, request_options: nil)
309
+ Async do
310
+ response = @request_client.conn.get do |req|
311
+ req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
312
+ req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
313
+ req.headers = {
314
+ **(req.headers || {}),
315
+ **@request_client.get_headers,
316
+ **(request_options&.additional_headers || {})
317
+ }.compact
318
+ unless request_options.nil? || request_options&.additional_query_parameters.nil?
319
+ req.params = { **(request_options&.additional_query_parameters || {}) }.compact
320
+ end
321
+ unless request_options.nil? || request_options&.additional_body_parameters.nil?
322
+ req.body = { **(request_options&.additional_body_parameters || {}) }.compact
323
+ end
324
+ req.url "#{@request_client.get_url(request_options: request_options)}/knowledge-base/#{id}"
325
+ end
326
+ Vapi::KnowledgeBases::KnowledgeBasesGetResponse.from_json(json_object: response.body)
327
+ end
328
+ end
329
+
330
+ # @param id [String]
331
+ # @param request_options [Vapi::RequestOptions]
332
+ # @return [Vapi::KnowledgeBases::KnowledgeBasesDeleteResponse]
333
+ # @example
334
+ # api = Vapi::Client.new(
335
+ # base_url: "https://api.example.com",
336
+ # environment: Vapi::Environment::DEFAULT,
337
+ # token: "YOUR_AUTH_TOKEN"
338
+ # )
339
+ # api.knowledge_bases.delete(id: "id")
340
+ def delete(id:, request_options: nil)
341
+ Async do
342
+ response = @request_client.conn.delete do |req|
343
+ req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
344
+ req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
345
+ req.headers = {
346
+ **(req.headers || {}),
347
+ **@request_client.get_headers,
348
+ **(request_options&.additional_headers || {})
349
+ }.compact
350
+ unless request_options.nil? || request_options&.additional_query_parameters.nil?
351
+ req.params = { **(request_options&.additional_query_parameters || {}) }.compact
352
+ end
353
+ unless request_options.nil? || request_options&.additional_body_parameters.nil?
354
+ req.body = { **(request_options&.additional_body_parameters || {}) }.compact
355
+ end
356
+ req.url "#{@request_client.get_url(request_options: request_options)}/knowledge-base/#{id}"
357
+ end
358
+ Vapi::KnowledgeBases::KnowledgeBasesDeleteResponse.from_json(json_object: response.body)
359
+ end
360
+ end
361
+
362
+ # @param id [String]
363
+ # @param request [Vapi::KnowledgeBases::KnowledgeBasesUpdateRequest]
364
+ # @param request_options [Vapi::RequestOptions]
365
+ # @return [Vapi::KnowledgeBases::KnowledgeBasesUpdateResponse]
366
+ # @example
367
+ # api = Vapi::Client.new(
368
+ # base_url: "https://api.example.com",
369
+ # environment: Vapi::Environment::DEFAULT,
370
+ # token: "YOUR_AUTH_TOKEN"
371
+ # )
372
+ # api.knowledge_bases.update(id: "id")
373
+ def update(id:, request:, request_options: nil)
374
+ Async do
375
+ response = @request_client.conn.patch do |req|
376
+ req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
377
+ req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
378
+ req.headers = {
379
+ **(req.headers || {}),
380
+ **@request_client.get_headers,
381
+ **(request_options&.additional_headers || {})
382
+ }.compact
383
+ unless request_options.nil? || request_options&.additional_query_parameters.nil?
384
+ req.params = { **(request_options&.additional_query_parameters || {}) }.compact
385
+ end
386
+ req.body = { **(request || {}), **(request_options&.additional_body_parameters || {}) }.compact
387
+ req.url "#{@request_client.get_url(request_options: request_options)}/knowledge-base/#{id}"
388
+ end
389
+ Vapi::KnowledgeBases::KnowledgeBasesUpdateResponse.from_json(json_object: response.body)
390
+ end
391
+ end
392
+ end
393
+ end
@@ -0,0 +1,96 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "json"
4
+ require_relative "../../types/create_trieve_knowledge_base_dto"
5
+ require_relative "../../types/create_custom_knowledge_base_dto"
6
+
7
+ module Vapi
8
+ class KnowledgeBases
9
+ class KnowledgeBasesCreateRequest
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::KnowledgeBases::KnowledgeBasesCreateRequest]
21
+ def initialize(member:, discriminant:)
22
+ @member = member
23
+ @discriminant = discriminant
24
+ end
25
+
26
+ # Deserialize a JSON object to an instance of KnowledgeBasesCreateRequest
27
+ #
28
+ # @param json_object [String]
29
+ # @return [Vapi::KnowledgeBases::KnowledgeBasesCreateRequest]
30
+ def self.from_json(json_object:)
31
+ struct = JSON.parse(json_object, object_class: OpenStruct)
32
+ member = case struct.provider
33
+ when "trieve"
34
+ Vapi::CreateTrieveKnowledgeBaseDto.from_json(json_object: json_object)
35
+ when "custom-knowledge-base"
36
+ Vapi::CreateCustomKnowledgeBaseDto.from_json(json_object: json_object)
37
+ else
38
+ Vapi::CreateTrieveKnowledgeBaseDto.from_json(json_object: json_object)
39
+ end
40
+ new(member: member, discriminant: struct.provider)
41
+ end
42
+
43
+ # For Union Types, to_json functionality is delegated to the wrapped member.
44
+ #
45
+ # @return [String]
46
+ def to_json(*_args)
47
+ case @discriminant
48
+ when "trieve"
49
+ { **@member.to_json, provider: @discriminant }.to_json
50
+ when "custom-knowledge-base"
51
+ { **@member.to_json, provider: @discriminant }.to_json
52
+ else
53
+ { "provider": @discriminant, value: @member }.to_json
54
+ end
55
+ @member.to_json
56
+ end
57
+
58
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
59
+ # hash and check each fields type against the current object's property
60
+ # definitions.
61
+ #
62
+ # @param obj [Object]
63
+ # @return [Void]
64
+ def self.validate_raw(obj:)
65
+ case obj.provider
66
+ when "trieve"
67
+ Vapi::CreateTrieveKnowledgeBaseDto.validate_raw(obj: obj)
68
+ when "custom-knowledge-base"
69
+ Vapi::CreateCustomKnowledgeBaseDto.validate_raw(obj: obj)
70
+ else
71
+ raise("Passed value matched no type within the union, validation failed.")
72
+ end
73
+ end
74
+
75
+ # For Union Types, is_a? functionality is delegated to the wrapped member.
76
+ #
77
+ # @param obj [Object]
78
+ # @return [Boolean]
79
+ def is_a?(obj)
80
+ @member.is_a?(obj)
81
+ end
82
+
83
+ # @param member [Vapi::CreateTrieveKnowledgeBaseDto]
84
+ # @return [Vapi::KnowledgeBases::KnowledgeBasesCreateRequest]
85
+ def self.trieve(member:)
86
+ new(member: member, discriminant: "trieve")
87
+ end
88
+
89
+ # @param member [Vapi::CreateCustomKnowledgeBaseDto]
90
+ # @return [Vapi::KnowledgeBases::KnowledgeBasesCreateRequest]
91
+ def self.custom_knowledge_base(member:)
92
+ new(member: member, discriminant: "custom-knowledge-base")
93
+ end
94
+ end
95
+ end
96
+ end
@@ -0,0 +1,96 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "json"
4
+ require_relative "../../types/trieve_knowledge_base"
5
+ require_relative "../../types/custom_knowledge_base"
6
+
7
+ module Vapi
8
+ class KnowledgeBases
9
+ class KnowledgeBasesCreateResponse
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::KnowledgeBases::KnowledgeBasesCreateResponse]
21
+ def initialize(member:, discriminant:)
22
+ @member = member
23
+ @discriminant = discriminant
24
+ end
25
+
26
+ # Deserialize a JSON object to an instance of KnowledgeBasesCreateResponse
27
+ #
28
+ # @param json_object [String]
29
+ # @return [Vapi::KnowledgeBases::KnowledgeBasesCreateResponse]
30
+ def self.from_json(json_object:)
31
+ struct = JSON.parse(json_object, object_class: OpenStruct)
32
+ member = case struct.provider
33
+ when "trieve"
34
+ Vapi::TrieveKnowledgeBase.from_json(json_object: json_object)
35
+ when "custom-knowledge-base"
36
+ Vapi::CustomKnowledgeBase.from_json(json_object: json_object)
37
+ else
38
+ Vapi::TrieveKnowledgeBase.from_json(json_object: json_object)
39
+ end
40
+ new(member: member, discriminant: struct.provider)
41
+ end
42
+
43
+ # For Union Types, to_json functionality is delegated to the wrapped member.
44
+ #
45
+ # @return [String]
46
+ def to_json(*_args)
47
+ case @discriminant
48
+ when "trieve"
49
+ { **@member.to_json, provider: @discriminant }.to_json
50
+ when "custom-knowledge-base"
51
+ { **@member.to_json, provider: @discriminant }.to_json
52
+ else
53
+ { "provider": @discriminant, value: @member }.to_json
54
+ end
55
+ @member.to_json
56
+ end
57
+
58
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
59
+ # hash and check each fields type against the current object's property
60
+ # definitions.
61
+ #
62
+ # @param obj [Object]
63
+ # @return [Void]
64
+ def self.validate_raw(obj:)
65
+ case obj.provider
66
+ when "trieve"
67
+ Vapi::TrieveKnowledgeBase.validate_raw(obj: obj)
68
+ when "custom-knowledge-base"
69
+ Vapi::CustomKnowledgeBase.validate_raw(obj: obj)
70
+ else
71
+ raise("Passed value matched no type within the union, validation failed.")
72
+ end
73
+ end
74
+
75
+ # For Union Types, is_a? functionality is delegated to the wrapped member.
76
+ #
77
+ # @param obj [Object]
78
+ # @return [Boolean]
79
+ def is_a?(obj)
80
+ @member.is_a?(obj)
81
+ end
82
+
83
+ # @param member [Vapi::TrieveKnowledgeBase]
84
+ # @return [Vapi::KnowledgeBases::KnowledgeBasesCreateResponse]
85
+ def self.trieve(member:)
86
+ new(member: member, discriminant: "trieve")
87
+ end
88
+
89
+ # @param member [Vapi::CustomKnowledgeBase]
90
+ # @return [Vapi::KnowledgeBases::KnowledgeBasesCreateResponse]
91
+ def self.custom_knowledge_base(member:)
92
+ new(member: member, discriminant: "custom-knowledge-base")
93
+ end
94
+ end
95
+ end
96
+ end
@@ -0,0 +1,96 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "json"
4
+ require_relative "../../types/trieve_knowledge_base"
5
+ require_relative "../../types/custom_knowledge_base"
6
+
7
+ module Vapi
8
+ class KnowledgeBases
9
+ class KnowledgeBasesDeleteResponse
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::KnowledgeBases::KnowledgeBasesDeleteResponse]
21
+ def initialize(member:, discriminant:)
22
+ @member = member
23
+ @discriminant = discriminant
24
+ end
25
+
26
+ # Deserialize a JSON object to an instance of KnowledgeBasesDeleteResponse
27
+ #
28
+ # @param json_object [String]
29
+ # @return [Vapi::KnowledgeBases::KnowledgeBasesDeleteResponse]
30
+ def self.from_json(json_object:)
31
+ struct = JSON.parse(json_object, object_class: OpenStruct)
32
+ member = case struct.provider
33
+ when "trieve"
34
+ Vapi::TrieveKnowledgeBase.from_json(json_object: json_object)
35
+ when "custom-knowledge-base"
36
+ Vapi::CustomKnowledgeBase.from_json(json_object: json_object)
37
+ else
38
+ Vapi::TrieveKnowledgeBase.from_json(json_object: json_object)
39
+ end
40
+ new(member: member, discriminant: struct.provider)
41
+ end
42
+
43
+ # For Union Types, to_json functionality is delegated to the wrapped member.
44
+ #
45
+ # @return [String]
46
+ def to_json(*_args)
47
+ case @discriminant
48
+ when "trieve"
49
+ { **@member.to_json, provider: @discriminant }.to_json
50
+ when "custom-knowledge-base"
51
+ { **@member.to_json, provider: @discriminant }.to_json
52
+ else
53
+ { "provider": @discriminant, value: @member }.to_json
54
+ end
55
+ @member.to_json
56
+ end
57
+
58
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
59
+ # hash and check each fields type against the current object's property
60
+ # definitions.
61
+ #
62
+ # @param obj [Object]
63
+ # @return [Void]
64
+ def self.validate_raw(obj:)
65
+ case obj.provider
66
+ when "trieve"
67
+ Vapi::TrieveKnowledgeBase.validate_raw(obj: obj)
68
+ when "custom-knowledge-base"
69
+ Vapi::CustomKnowledgeBase.validate_raw(obj: obj)
70
+ else
71
+ raise("Passed value matched no type within the union, validation failed.")
72
+ end
73
+ end
74
+
75
+ # For Union Types, is_a? functionality is delegated to the wrapped member.
76
+ #
77
+ # @param obj [Object]
78
+ # @return [Boolean]
79
+ def is_a?(obj)
80
+ @member.is_a?(obj)
81
+ end
82
+
83
+ # @param member [Vapi::TrieveKnowledgeBase]
84
+ # @return [Vapi::KnowledgeBases::KnowledgeBasesDeleteResponse]
85
+ def self.trieve(member:)
86
+ new(member: member, discriminant: "trieve")
87
+ end
88
+
89
+ # @param member [Vapi::CustomKnowledgeBase]
90
+ # @return [Vapi::KnowledgeBases::KnowledgeBasesDeleteResponse]
91
+ def self.custom_knowledge_base(member:)
92
+ new(member: member, discriminant: "custom-knowledge-base")
93
+ end
94
+ end
95
+ end
96
+ end