vellum_ai 0.3.15 → 0.14.75

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 (691) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE +21 -0
  3. data/lib/core/file_utilities.rb +14 -13
  4. data/lib/environment.rb +4 -6
  5. data/lib/requests.rb +141 -59
  6. data/lib/types_export.rb +392 -110
  7. data/lib/vellum_ai/ad_hoc/client.rb +179 -0
  8. data/lib/vellum_ai/container_images/client.rb +289 -0
  9. data/lib/vellum_ai/deployments/client.rb +581 -111
  10. data/lib/vellum_ai/deployments/types/deployments_list_request_status.rb +7 -3
  11. data/lib/vellum_ai/deployments/types/list_deployment_release_tags_request_source.rb +12 -0
  12. data/lib/vellum_ai/document_indexes/client.rb +517 -261
  13. data/lib/vellum_ai/document_indexes/types/document_indexes_list_request_status.rb +7 -3
  14. data/lib/vellum_ai/documents/client.rb +337 -186
  15. data/lib/vellum_ai/folder_entities/client.rb +165 -33
  16. data/lib/vellum_ai/folder_entities/types/folder_entities_list_request_entity_status.rb +12 -0
  17. data/lib/vellum_ai/metric_definitions/client.rb +159 -0
  18. data/lib/vellum_ai/ml_models/client.rb +94 -0
  19. data/lib/vellum_ai/organizations/client.rb +92 -0
  20. data/lib/vellum_ai/prompts/client.rb +198 -0
  21. data/lib/vellum_ai/release_reviews/client.rb +102 -0
  22. data/lib/vellum_ai/sandboxes/client.rb +230 -90
  23. data/lib/vellum_ai/test_suite_runs/client.rb +188 -101
  24. data/lib/vellum_ai/test_suites/client.rb +208 -90
  25. data/lib/vellum_ai/types/ad_hoc_execute_prompt_event.rb +90 -0
  26. data/lib/vellum_ai/types/ad_hoc_expand_meta.rb +85 -0
  27. data/lib/vellum_ai/types/ad_hoc_fulfilled_prompt_execution_meta.rb +92 -0
  28. data/lib/vellum_ai/types/ad_hoc_initiated_prompt_execution_meta.rb +65 -0
  29. data/lib/vellum_ai/types/ad_hoc_rejected_prompt_execution_meta.rb +66 -0
  30. data/lib/vellum_ai/types/ad_hoc_streaming_prompt_execution_meta.rb +55 -0
  31. data/lib/vellum_ai/types/api_node_result.rb +43 -27
  32. data/lib/vellum_ai/types/api_node_result_data.rb +62 -51
  33. data/lib/vellum_ai/types/api_request_parent_context.rb +87 -0
  34. data/lib/vellum_ai/types/{image_enum.rb → api_version_enum.rb} +2 -2
  35. data/lib/vellum_ai/types/array_chat_message_content.rb +42 -26
  36. data/lib/vellum_ai/types/array_chat_message_content_item.rb +85 -82
  37. data/lib/vellum_ai/types/array_chat_message_content_item_request.rb +85 -82
  38. data/lib/vellum_ai/types/array_chat_message_content_request.rb +42 -26
  39. data/lib/vellum_ai/types/array_input.rb +73 -0
  40. data/lib/vellum_ai/types/array_vellum_value.rb +68 -0
  41. data/lib/vellum_ai/types/array_vellum_value_request.rb +68 -0
  42. data/lib/vellum_ai/types/audio_chat_message_content.rb +68 -0
  43. data/lib/vellum_ai/types/audio_chat_message_content_request.rb +68 -0
  44. data/lib/vellum_ai/types/audio_prompt_block.rb +92 -0
  45. data/lib/vellum_ai/types/audio_vellum_value.rb +70 -0
  46. data/lib/vellum_ai/types/audio_vellum_value_request.rb +70 -0
  47. data/lib/vellum_ai/types/base_output.rb +70 -0
  48. data/lib/vellum_ai/types/basic_vectorizer_intfloat_multilingual_e_5_large.rb +66 -0
  49. data/lib/vellum_ai/types/basic_vectorizer_intfloat_multilingual_e_5_large_request.rb +66 -0
  50. data/lib/vellum_ai/types/basic_vectorizer_sentence_transformers_multi_qa_mpnet_base_cos_v_1.rb +66 -0
  51. data/lib/vellum_ai/types/basic_vectorizer_sentence_transformers_multi_qa_mpnet_base_cos_v_1_request.rb +66 -0
  52. data/lib/vellum_ai/types/basic_vectorizer_sentence_transformers_multi_qa_mpnet_base_dot_v_1.rb +66 -0
  53. data/lib/vellum_ai/types/basic_vectorizer_sentence_transformers_multi_qa_mpnet_base_dot_v_1_request.rb +66 -0
  54. data/lib/vellum_ai/types/build_status_enum.rb +18 -0
  55. data/lib/vellum_ai/types/chat_history_input.rb +73 -0
  56. data/lib/vellum_ai/types/chat_history_input_request.rb +46 -28
  57. data/lib/vellum_ai/types/chat_history_vellum_value.rb +68 -0
  58. data/lib/vellum_ai/types/chat_history_vellum_value_request.rb +68 -0
  59. data/lib/vellum_ai/types/chat_message.rb +55 -38
  60. data/lib/vellum_ai/types/chat_message_content.rb +100 -94
  61. data/lib/vellum_ai/types/chat_message_content_request.rb +100 -94
  62. data/lib/vellum_ai/types/chat_message_prompt_block.rb +111 -0
  63. data/lib/vellum_ai/types/chat_message_request.rb +55 -38
  64. data/lib/vellum_ai/types/chat_message_role.rb +13 -3
  65. data/lib/vellum_ai/types/code_execution_node_array_result.rb +50 -30
  66. data/lib/vellum_ai/types/code_execution_node_chat_history_result.rb +49 -29
  67. data/lib/vellum_ai/types/code_execution_node_error_result.rb +50 -30
  68. data/lib/vellum_ai/types/code_execution_node_function_call_result.rb +50 -30
  69. data/lib/vellum_ai/types/code_execution_node_json_result.rb +45 -27
  70. data/lib/vellum_ai/types/code_execution_node_number_result.rb +47 -27
  71. data/lib/vellum_ai/types/code_execution_node_result.rb +43 -27
  72. data/lib/vellum_ai/types/code_execution_node_result_data.rb +43 -30
  73. data/lib/vellum_ai/types/code_execution_node_result_output.rb +129 -143
  74. data/lib/vellum_ai/types/code_execution_node_search_results_result.rb +49 -29
  75. data/lib/vellum_ai/types/code_execution_node_string_result.rb +47 -27
  76. data/lib/vellum_ai/types/code_execution_package.rb +61 -0
  77. data/lib/vellum_ai/types/code_execution_runtime.rb +12 -0
  78. data/lib/vellum_ai/types/code_executor_input.rb +170 -0
  79. data/lib/vellum_ai/types/code_executor_response.rb +67 -0
  80. data/lib/vellum_ai/types/code_executor_secret_input.rb +69 -0
  81. data/lib/vellum_ai/types/code_resource_definition.rb +62 -0
  82. data/lib/vellum_ai/types/compile_prompt_deployment_expand_meta_request.rb +76 -0
  83. data/lib/vellum_ai/types/compile_prompt_meta.rb +72 -0
  84. data/lib/vellum_ai/types/components_schemas_pdf_search_result_meta_source.rb +6 -0
  85. data/lib/vellum_ai/types/components_schemas_pdf_search_result_meta_source_request.rb +6 -0
  86. data/lib/vellum_ai/types/components_schemas_prompt_version_build_config_sandbox.rb +6 -0
  87. data/lib/vellum_ai/types/condition_combinator.rb +12 -0
  88. data/lib/vellum_ai/types/conditional_node_result.rb +43 -27
  89. data/lib/vellum_ai/types/conditional_node_result_data.rb +31 -23
  90. data/lib/vellum_ai/types/container_image_build_config.rb +55 -0
  91. data/lib/vellum_ai/types/container_image_container_image_tag.rb +66 -0
  92. data/lib/vellum_ai/types/container_image_read.rb +141 -0
  93. data/lib/vellum_ai/types/create_test_suite_test_case_request.rb +89 -0
  94. data/lib/vellum_ai/types/deployment_history_item.rb +107 -0
  95. data/lib/vellum_ai/types/deployment_provider_payload_response.rb +54 -24
  96. data/lib/vellum_ai/types/deployment_provider_payload_response_payload.rb +57 -0
  97. data/lib/vellum_ai/types/deployment_read.rb +113 -76
  98. data/lib/vellum_ai/types/deployment_release_tag_deployment_history_item.rb +68 -0
  99. data/lib/vellum_ai/types/deployment_release_tag_read.rb +92 -0
  100. data/lib/vellum_ai/types/docker_service_token.rb +68 -0
  101. data/lib/vellum_ai/types/document_chat_message_content.rb +68 -0
  102. data/lib/vellum_ai/types/document_chat_message_content_request.rb +68 -0
  103. data/lib/vellum_ai/types/document_document_to_document_index.rb +76 -43
  104. data/lib/vellum_ai/types/document_index_chunking.rb +74 -0
  105. data/lib/vellum_ai/types/document_index_chunking_request.rb +74 -0
  106. data/lib/vellum_ai/types/document_index_indexing_config.rb +75 -0
  107. data/lib/vellum_ai/types/document_index_indexing_config_request.rb +75 -0
  108. data/lib/vellum_ai/types/document_index_read.rb +73 -64
  109. data/lib/vellum_ai/types/document_processing_state.rb +18 -0
  110. data/lib/vellum_ai/types/document_prompt_block.rb +92 -0
  111. data/lib/vellum_ai/types/document_read.rb +91 -83
  112. data/lib/vellum_ai/types/document_status.rb +1 -1
  113. data/lib/vellum_ai/types/document_vellum_value.rb +70 -0
  114. data/lib/vellum_ai/types/document_vellum_value_request.rb +70 -0
  115. data/lib/vellum_ai/types/enriched_normalized_completion.rb +97 -78
  116. data/lib/vellum_ai/types/entity_status.rb +9 -3
  117. data/lib/vellum_ai/types/entity_visibility.rb +16 -0
  118. data/lib/vellum_ai/types/environment_enum.rb +11 -3
  119. data/lib/vellum_ai/types/ephemeral_prompt_cache_config.rb +54 -0
  120. data/lib/vellum_ai/types/ephemeral_prompt_cache_config_type_enum.rb +5 -0
  121. data/lib/vellum_ai/types/error_input.rb +75 -0
  122. data/lib/vellum_ai/types/error_vellum_value.rb +70 -0
  123. data/lib/vellum_ai/types/error_vellum_value_request.rb +70 -0
  124. data/lib/vellum_ai/types/execute_api_request_bearer_token.rb +57 -0
  125. data/lib/vellum_ai/types/execute_api_request_body.rb +71 -0
  126. data/lib/vellum_ai/types/execute_api_request_headers_value.rb +57 -0
  127. data/lib/vellum_ai/types/execute_api_response.rb +83 -0
  128. data/lib/vellum_ai/types/execute_api_response_json.rb +56 -0
  129. data/lib/vellum_ai/types/execute_prompt_event.rb +68 -94
  130. data/lib/vellum_ai/types/execute_prompt_response.rb +38 -70
  131. data/lib/vellum_ai/types/execute_workflow_response.rb +54 -38
  132. data/lib/vellum_ai/types/execute_workflow_workflow_result_event.rb +38 -70
  133. data/lib/vellum_ai/types/execution_array_vellum_value.rb +55 -32
  134. data/lib/vellum_ai/types/execution_chat_history_vellum_value.rb +54 -31
  135. data/lib/vellum_ai/types/execution_error_vellum_value.rb +55 -32
  136. data/lib/vellum_ai/types/execution_function_call_vellum_value.rb +55 -32
  137. data/lib/vellum_ai/types/execution_json_vellum_value.rb +50 -29
  138. data/lib/vellum_ai/types/execution_number_vellum_value.rb +52 -29
  139. data/lib/vellum_ai/types/execution_search_results_vellum_value.rb +54 -31
  140. data/lib/vellum_ai/types/execution_string_vellum_value.rb +52 -29
  141. data/lib/vellum_ai/types/execution_vellum_value.rb +129 -143
  142. data/lib/vellum_ai/types/external_input_descriptor.rb +86 -0
  143. data/lib/vellum_ai/types/external_test_case_execution.rb +67 -0
  144. data/lib/vellum_ai/types/external_test_case_execution_request.rb +67 -0
  145. data/lib/vellum_ai/types/fast_embed_vectorizer_baai_bge_small_en_v_15.rb +52 -0
  146. data/lib/vellum_ai/types/fast_embed_vectorizer_baai_bge_small_en_v_15_request.rb +54 -0
  147. data/lib/vellum_ai/types/finish_reason_enum.rb +11 -3
  148. data/lib/vellum_ai/types/folder_entity.rb +122 -0
  149. data/lib/vellum_ai/types/folder_entity_dataset.rb +75 -0
  150. data/lib/vellum_ai/types/folder_entity_dataset_data.rb +101 -0
  151. data/lib/vellum_ai/types/folder_entity_document_index.rb +75 -0
  152. data/lib/vellum_ai/types/folder_entity_document_index_data.rb +106 -0
  153. data/lib/vellum_ai/types/folder_entity_folder.rb +75 -0
  154. data/lib/vellum_ai/types/folder_entity_folder_data.rb +92 -0
  155. data/lib/vellum_ai/types/folder_entity_prompt_sandbox.rb +75 -0
  156. data/lib/vellum_ai/types/folder_entity_prompt_sandbox_data.rb +114 -0
  157. data/lib/vellum_ai/types/folder_entity_test_suite.rb +75 -0
  158. data/lib/vellum_ai/types/folder_entity_test_suite_data.rb +93 -0
  159. data/lib/vellum_ai/types/folder_entity_workflow_sandbox.rb +75 -0
  160. data/lib/vellum_ai/types/folder_entity_workflow_sandbox_data.rb +114 -0
  161. data/lib/vellum_ai/types/fulfilled_ad_hoc_execute_prompt_event.rb +89 -0
  162. data/lib/vellum_ai/types/fulfilled_execute_prompt_event.rb +60 -37
  163. data/lib/vellum_ai/types/fulfilled_execute_prompt_response.rb +67 -40
  164. data/lib/vellum_ai/types/fulfilled_execute_workflow_workflow_result_event.rb +59 -32
  165. data/lib/vellum_ai/types/fulfilled_prompt_execution_meta.rb +69 -29
  166. data/lib/vellum_ai/types/fulfilled_workflow_node_result_event.rb +92 -68
  167. data/lib/vellum_ai/types/function_call.rb +53 -72
  168. data/lib/vellum_ai/types/function_call_chat_message_content.rb +43 -27
  169. data/lib/vellum_ai/types/function_call_chat_message_content_request.rb +44 -27
  170. data/lib/vellum_ai/types/function_call_chat_message_content_value.rb +46 -31
  171. data/lib/vellum_ai/types/function_call_chat_message_content_value_request.rb +48 -31
  172. data/lib/vellum_ai/types/function_call_input.rb +75 -0
  173. data/lib/vellum_ai/types/function_call_prompt_block.rb +99 -0
  174. data/lib/vellum_ai/types/function_call_request.rb +71 -0
  175. data/lib/vellum_ai/types/function_call_vellum_value.rb +70 -0
  176. data/lib/vellum_ai/types/function_call_vellum_value_request.rb +70 -0
  177. data/lib/vellum_ai/types/function_definition.rb +109 -0
  178. data/lib/vellum_ai/types/generate_options_request.rb +35 -27
  179. data/lib/vellum_ai/types/generate_request.rb +52 -34
  180. data/lib/vellum_ai/types/generate_response.rb +29 -23
  181. data/lib/vellum_ai/types/generate_result.rb +52 -35
  182. data/lib/vellum_ai/types/generate_result_data.rb +29 -23
  183. data/lib/vellum_ai/types/generate_result_error.rb +26 -20
  184. data/lib/vellum_ai/types/generate_stream_response.rb +30 -24
  185. data/lib/vellum_ai/types/generate_stream_result.rb +53 -38
  186. data/lib/vellum_ai/types/generate_stream_result_data.rb +39 -28
  187. data/lib/vellum_ai/types/google_vertex_ai_vectorizer_config.rb +61 -0
  188. data/lib/vellum_ai/types/google_vertex_ai_vectorizer_config_request.rb +62 -0
  189. data/lib/vellum_ai/types/google_vertex_ai_vectorizer_text_embedding_004.rb +69 -0
  190. data/lib/vellum_ai/types/google_vertex_ai_vectorizer_text_embedding_004_request.rb +69 -0
  191. data/lib/vellum_ai/types/google_vertex_ai_vectorizer_text_multilingual_embedding_002.rb +69 -0
  192. data/lib/vellum_ai/types/google_vertex_ai_vectorizer_text_multilingual_embedding_002_request.rb +69 -0
  193. data/lib/vellum_ai/types/hkunlp_instructor_xl_vectorizer.rb +68 -0
  194. data/lib/vellum_ai/types/hkunlp_instructor_xl_vectorizer_request.rb +68 -0
  195. data/lib/vellum_ai/types/image_chat_message_content.rb +43 -27
  196. data/lib/vellum_ai/types/image_chat_message_content_request.rb +43 -27
  197. data/lib/vellum_ai/types/image_prompt_block.rb +92 -0
  198. data/lib/vellum_ai/types/image_vellum_value.rb +70 -0
  199. data/lib/vellum_ai/types/image_vellum_value_request.rb +70 -0
  200. data/lib/vellum_ai/types/indexing_config_vectorizer.rb +186 -0
  201. data/lib/vellum_ai/types/indexing_config_vectorizer_request.rb +186 -0
  202. data/lib/vellum_ai/types/indexing_state_enum.rb +15 -9
  203. data/lib/vellum_ai/types/initiated_ad_hoc_execute_prompt_event.rb +78 -0
  204. data/lib/vellum_ai/types/initiated_execute_prompt_event.rb +52 -31
  205. data/lib/vellum_ai/types/initiated_prompt_execution_meta.rb +55 -44
  206. data/lib/vellum_ai/types/initiated_workflow_node_result_event.rb +86 -62
  207. data/lib/vellum_ai/types/instructor_vectorizer_config.rb +69 -0
  208. data/lib/vellum_ai/types/instructor_vectorizer_config_request.rb +69 -0
  209. data/lib/vellum_ai/types/invoked_port.rb +51 -0
  210. data/lib/vellum_ai/types/iteration_state_enum.rb +14 -0
  211. data/lib/vellum_ai/types/jinja_prompt_block.rb +85 -0
  212. data/lib/vellum_ai/types/json_input.rb +69 -0
  213. data/lib/vellum_ai/types/json_input_request.rb +46 -28
  214. data/lib/vellum_ai/types/json_vellum_value.rb +62 -0
  215. data/lib/vellum_ai/types/json_vellum_value_request.rb +62 -0
  216. data/lib/vellum_ai/types/logical_operator.rb +57 -22
  217. data/lib/vellum_ai/types/logprobs_enum.rb +9 -3
  218. data/lib/vellum_ai/types/map_node_result.rb +70 -0
  219. data/lib/vellum_ai/types/map_node_result_data.rb +64 -0
  220. data/lib/vellum_ai/types/merge_node_result.rb +68 -0
  221. data/lib/vellum_ai/types/merge_node_result_data.rb +53 -0
  222. data/lib/vellum_ai/types/metadata_filter_config_request.rb +71 -57
  223. data/lib/vellum_ai/types/metadata_filter_rule_combinator.rb +9 -3
  224. data/lib/vellum_ai/types/metadata_filter_rule_request.rb +69 -57
  225. data/lib/vellum_ai/types/metadata_filters_request.rb +58 -0
  226. data/lib/vellum_ai/types/method_enum.rb +18 -0
  227. data/lib/vellum_ai/types/metric_definition_execution.rb +55 -0
  228. data/lib/vellum_ai/types/metric_definition_history_item.rb +96 -0
  229. data/lib/vellum_ai/types/metric_definition_input.rb +90 -0
  230. data/lib/vellum_ai/types/metric_node_result.rb +52 -0
  231. data/lib/vellum_ai/types/ml_model_read.rb +62 -0
  232. data/lib/vellum_ai/types/ml_model_usage.rb +98 -0
  233. data/lib/vellum_ai/types/ml_model_usage_wrapper.rb +67 -0
  234. data/lib/vellum_ai/types/named_scenario_input_chat_history_variable_value_request.rb +77 -0
  235. data/lib/vellum_ai/types/named_scenario_input_json_variable_value_request.rb +71 -0
  236. data/lib/vellum_ai/types/named_scenario_input_request.rb +74 -0
  237. data/lib/vellum_ai/types/named_scenario_input_string_variable_value_request.rb +73 -0
  238. data/lib/vellum_ai/types/named_test_case_array_variable_value.rb +75 -0
  239. data/lib/vellum_ai/types/named_test_case_array_variable_value_request.rb +76 -0
  240. data/lib/vellum_ai/types/named_test_case_chat_history_variable_value.rb +76 -0
  241. data/lib/vellum_ai/types/named_test_case_chat_history_variable_value_request.rb +53 -30
  242. data/lib/vellum_ai/types/named_test_case_error_variable_value.rb +77 -0
  243. data/lib/vellum_ai/types/named_test_case_error_variable_value_request.rb +52 -30
  244. data/lib/vellum_ai/types/named_test_case_function_call_variable_value.rb +78 -0
  245. data/lib/vellum_ai/types/named_test_case_function_call_variable_value_request.rb +79 -0
  246. data/lib/vellum_ai/types/named_test_case_json_variable_value.rb +69 -0
  247. data/lib/vellum_ai/types/named_test_case_json_variable_value_request.rb +48 -28
  248. data/lib/vellum_ai/types/named_test_case_number_variable_value.rb +71 -0
  249. data/lib/vellum_ai/types/named_test_case_number_variable_value_request.rb +51 -28
  250. data/lib/vellum_ai/types/named_test_case_search_results_variable_value.rb +77 -0
  251. data/lib/vellum_ai/types/named_test_case_search_results_variable_value_request.rb +53 -30
  252. data/lib/vellum_ai/types/named_test_case_string_variable_value.rb +71 -0
  253. data/lib/vellum_ai/types/named_test_case_string_variable_value_request.rb +51 -28
  254. data/lib/vellum_ai/types/named_test_case_variable_value.rb +154 -0
  255. data/lib/vellum_ai/types/named_test_case_variable_value_request.rb +131 -119
  256. data/lib/vellum_ai/types/new_member_join_behavior_enum.rb +14 -0
  257. data/lib/vellum_ai/types/node_execution_fulfilled_body.rb +87 -0
  258. data/lib/vellum_ai/types/node_execution_fulfilled_event.rb +134 -0
  259. data/lib/vellum_ai/types/node_execution_initiated_body.rb +67 -0
  260. data/lib/vellum_ai/types/node_execution_initiated_event.rb +134 -0
  261. data/lib/vellum_ai/types/node_execution_paused_body.rb +57 -0
  262. data/lib/vellum_ai/types/node_execution_paused_event.rb +134 -0
  263. data/lib/vellum_ai/types/node_execution_rejected_body.rb +73 -0
  264. data/lib/vellum_ai/types/node_execution_rejected_event.rb +134 -0
  265. data/lib/vellum_ai/types/node_execution_resumed_body.rb +57 -0
  266. data/lib/vellum_ai/types/node_execution_resumed_event.rb +134 -0
  267. data/lib/vellum_ai/types/node_execution_span.rb +118 -0
  268. data/lib/vellum_ai/types/node_execution_span_attributes.rb +51 -0
  269. data/lib/vellum_ai/types/node_execution_streaming_body.rb +73 -0
  270. data/lib/vellum_ai/types/node_execution_streaming_event.rb +134 -0
  271. data/lib/vellum_ai/types/node_input_compiled_array_value.rb +55 -33
  272. data/lib/vellum_ai/types/node_input_compiled_chat_history_value.rb +54 -32
  273. data/lib/vellum_ai/types/node_input_compiled_error_value.rb +55 -33
  274. data/lib/vellum_ai/types/node_input_compiled_function_call_value.rb +83 -0
  275. data/lib/vellum_ai/types/node_input_compiled_json_value.rb +50 -30
  276. data/lib/vellum_ai/types/node_input_compiled_number_value.rb +52 -30
  277. data/lib/vellum_ai/types/node_input_compiled_search_results_value.rb +54 -32
  278. data/lib/vellum_ai/types/node_input_compiled_secret_value.rb +81 -0
  279. data/lib/vellum_ai/types/node_input_compiled_string_value.rb +52 -30
  280. data/lib/vellum_ai/types/node_input_variable_compiled_value.rb +146 -144
  281. data/lib/vellum_ai/types/node_output_compiled_array_value.rb +60 -31
  282. data/lib/vellum_ai/types/node_output_compiled_chat_history_value.rb +59 -30
  283. data/lib/vellum_ai/types/node_output_compiled_error_value.rb +59 -30
  284. data/lib/vellum_ai/types/node_output_compiled_function_call_value.rb +85 -0
  285. data/lib/vellum_ai/types/node_output_compiled_json_value.rb +57 -28
  286. data/lib/vellum_ai/types/node_output_compiled_number_value.rb +57 -28
  287. data/lib/vellum_ai/types/node_output_compiled_search_results_value.rb +59 -30
  288. data/lib/vellum_ai/types/node_output_compiled_string_value.rb +57 -28
  289. data/lib/vellum_ai/types/node_output_compiled_value.rb +130 -144
  290. data/lib/vellum_ai/types/node_parent_context.rb +100 -0
  291. data/lib/vellum_ai/types/normalized_log_probs.rb +42 -29
  292. data/lib/vellum_ai/types/normalized_token_log_probs.rb +51 -35
  293. data/lib/vellum_ai/types/number_input.rb +69 -0
  294. data/lib/vellum_ai/types/number_vellum_value.rb +64 -0
  295. data/lib/vellum_ai/types/number_vellum_value_request.rb +64 -0
  296. data/lib/vellum_ai/types/open_ai_vectorizer_config.rb +54 -0
  297. data/lib/vellum_ai/types/open_ai_vectorizer_config_request.rb +54 -0
  298. data/lib/vellum_ai/types/open_ai_vectorizer_text_embedding_3_large.rb +68 -0
  299. data/lib/vellum_ai/types/open_ai_vectorizer_text_embedding_3_large_request.rb +70 -0
  300. data/lib/vellum_ai/types/open_ai_vectorizer_text_embedding_3_small.rb +68 -0
  301. data/lib/vellum_ai/types/open_ai_vectorizer_text_embedding_3_small_request.rb +70 -0
  302. data/lib/vellum_ai/types/open_ai_vectorizer_text_embedding_ada_002.rb +68 -0
  303. data/lib/vellum_ai/types/open_ai_vectorizer_text_embedding_ada_002_request.rb +70 -0
  304. data/lib/vellum_ai/types/organization_read.rb +78 -0
  305. data/lib/vellum_ai/types/paginated_container_image_read_list.rb +81 -0
  306. data/lib/vellum_ai/types/paginated_deployment_release_tag_read_list.rb +82 -0
  307. data/lib/vellum_ai/types/paginated_document_index_read_list.rb +55 -38
  308. data/lib/vellum_ai/types/paginated_folder_entity_list.rb +81 -0
  309. data/lib/vellum_ai/types/paginated_slim_deployment_read_list.rb +55 -38
  310. data/lib/vellum_ai/types/paginated_slim_document_list.rb +55 -38
  311. data/lib/vellum_ai/types/paginated_slim_workflow_deployment_list.rb +55 -38
  312. data/lib/vellum_ai/types/paginated_test_suite_run_execution_list.rb +53 -36
  313. data/lib/vellum_ai/types/paginated_test_suite_test_case_list.rb +81 -0
  314. data/lib/vellum_ai/types/paginated_workflow_release_tag_read_list.rb +81 -0
  315. data/lib/vellum_ai/types/paginated_workflow_sandbox_example_list.rb +81 -0
  316. data/lib/vellum_ai/types/parent_context.rb +122 -0
  317. data/lib/vellum_ai/types/pdf_search_result_meta_source.rb +75 -0
  318. data/lib/vellum_ai/types/pdf_search_result_meta_source_request.rb +75 -0
  319. data/lib/vellum_ai/types/plain_text_prompt_block.rb +85 -0
  320. data/lib/vellum_ai/types/price.rb +62 -0
  321. data/lib/vellum_ai/types/processing_failure_reason_enum.rb +9 -6
  322. data/lib/vellum_ai/types/prompt_block.rb +154 -0
  323. data/lib/vellum_ai/types/prompt_block_state.rb +12 -0
  324. data/lib/vellum_ai/types/prompt_deployment_expand_meta_request.rb +110 -0
  325. data/lib/vellum_ai/types/prompt_deployment_input_request.rb +53 -82
  326. data/lib/vellum_ai/types/prompt_deployment_parent_context.rb +143 -0
  327. data/lib/vellum_ai/types/prompt_deployment_release.rb +149 -0
  328. data/lib/vellum_ai/types/prompt_deployment_release_prompt_deployment.rb +53 -0
  329. data/lib/vellum_ai/types/prompt_deployment_release_prompt_version.rb +68 -0
  330. data/lib/vellum_ai/types/prompt_exec_config.rb +115 -0
  331. data/lib/vellum_ai/types/prompt_execution_meta.rb +87 -50
  332. data/lib/vellum_ai/types/prompt_node_execution_meta.rb +84 -0
  333. data/lib/vellum_ai/types/prompt_node_result.rb +43 -27
  334. data/lib/vellum_ai/types/prompt_node_result_data.rb +72 -36
  335. data/lib/vellum_ai/types/prompt_output.rb +72 -98
  336. data/lib/vellum_ai/types/prompt_parameters.rb +112 -0
  337. data/lib/vellum_ai/types/prompt_push_response.rb +61 -0
  338. data/lib/vellum_ai/types/prompt_request_chat_history_input.rb +72 -0
  339. data/lib/vellum_ai/types/prompt_request_input.rb +74 -0
  340. data/lib/vellum_ai/types/prompt_request_json_input.rb +68 -0
  341. data/lib/vellum_ai/types/prompt_request_string_input.rb +68 -0
  342. data/lib/vellum_ai/types/prompt_settings.rb +63 -0
  343. data/lib/vellum_ai/types/prompt_version_build_config_sandbox.rb +75 -0
  344. data/lib/vellum_ai/types/raw_prompt_execution_overrides_request.rb +45 -30
  345. data/lib/vellum_ai/types/reducto_chunker_config.rb +54 -0
  346. data/lib/vellum_ai/types/reducto_chunker_config_request.rb +54 -0
  347. data/lib/vellum_ai/types/reducto_chunking.rb +70 -0
  348. data/lib/vellum_ai/types/reducto_chunking_request.rb +70 -0
  349. data/lib/vellum_ai/types/rejected_ad_hoc_execute_prompt_event.rb +90 -0
  350. data/lib/vellum_ai/types/rejected_execute_prompt_event.rb +60 -38
  351. data/lib/vellum_ai/types/rejected_execute_prompt_response.rb +67 -41
  352. data/lib/vellum_ai/types/rejected_execute_workflow_workflow_result_event.rb +60 -33
  353. data/lib/vellum_ai/types/rejected_prompt_execution_meta.rb +43 -29
  354. data/lib/vellum_ai/types/rejected_workflow_node_result_event.rb +86 -62
  355. data/lib/vellum_ai/types/release_created_by.rb +70 -0
  356. data/lib/vellum_ai/types/release_environment.rb +68 -0
  357. data/lib/vellum_ai/types/release_release_tag.rb +66 -0
  358. data/lib/vellum_ai/types/release_review_reviewer.rb +63 -0
  359. data/lib/vellum_ai/types/release_review_state.rb +14 -0
  360. data/lib/vellum_ai/types/release_tag_release.rb +66 -0
  361. data/lib/vellum_ai/types/release_tag_source.rb +12 -0
  362. data/lib/vellum_ai/types/replace_test_suite_test_case_request.rb +98 -0
  363. data/lib/vellum_ai/types/rich_text_child_block.rb +58 -0
  364. data/lib/vellum_ai/types/rich_text_prompt_block.rb +89 -0
  365. data/lib/vellum_ai/types/sandbox_scenario.rb +47 -31
  366. data/lib/vellum_ai/types/scenario_input.rb +57 -53
  367. data/lib/vellum_ai/types/scenario_input_chat_history_variable_value.rb +76 -0
  368. data/lib/vellum_ai/types/scenario_input_json_variable_value.rb +69 -0
  369. data/lib/vellum_ai/types/scenario_input_string_variable_value.rb +71 -0
  370. data/lib/vellum_ai/types/search_filters_request.rb +44 -31
  371. data/lib/vellum_ai/types/search_node_result.rb +43 -27
  372. data/lib/vellum_ai/types/search_node_result_data.rb +54 -41
  373. data/lib/vellum_ai/types/search_request_options_request.rb +63 -47
  374. data/lib/vellum_ai/types/search_response.rb +31 -23
  375. data/lib/vellum_ai/types/search_result.rb +62 -32
  376. data/lib/vellum_ai/types/search_result_document.rb +55 -34
  377. data/lib/vellum_ai/types/search_result_document_request.rb +56 -30
  378. data/lib/vellum_ai/types/search_result_merging_request.rb +30 -22
  379. data/lib/vellum_ai/types/search_result_meta.rb +60 -0
  380. data/lib/vellum_ai/types/search_result_meta_request.rb +60 -0
  381. data/lib/vellum_ai/types/search_result_request.rb +62 -32
  382. data/lib/vellum_ai/types/search_results_input.rb +73 -0
  383. data/lib/vellum_ai/types/search_results_vellum_value.rb +68 -0
  384. data/lib/vellum_ai/types/search_results_vellum_value_request.rb +68 -0
  385. data/lib/vellum_ai/types/search_weights_request.rb +39 -26
  386. data/lib/vellum_ai/types/secret_type_enum.rb +16 -0
  387. data/lib/vellum_ai/types/sentence_chunker_config.rb +64 -0
  388. data/lib/vellum_ai/types/sentence_chunker_config_request.rb +64 -0
  389. data/lib/vellum_ai/types/sentence_chunking.rb +70 -0
  390. data/lib/vellum_ai/types/sentence_chunking_request.rb +70 -0
  391. data/lib/vellum_ai/types/slim_deployment_read.rb +99 -70
  392. data/lib/vellum_ai/types/slim_document.rb +102 -85
  393. data/lib/vellum_ai/types/slim_document_document_to_document_index.rb +96 -0
  394. data/lib/vellum_ai/types/slim_release_review.rb +87 -0
  395. data/lib/vellum_ai/types/slim_workflow_deployment.rb +109 -77
  396. data/lib/vellum_ai/types/slim_workflow_execution_read.rb +162 -0
  397. data/lib/vellum_ai/types/span_link.rb +75 -0
  398. data/lib/vellum_ai/types/{chat_history_enum.rb → span_link_type_enum.rb} +2 -2
  399. data/lib/vellum_ai/types/streaming_ad_hoc_execute_prompt_event.rb +106 -0
  400. data/lib/vellum_ai/types/streaming_execute_prompt_event.rb +73 -52
  401. data/lib/vellum_ai/types/streaming_prompt_execution_meta.rb +33 -24
  402. data/lib/vellum_ai/types/streaming_workflow_node_result_event.rb +93 -69
  403. data/lib/vellum_ai/types/string_chat_message_content.rb +40 -24
  404. data/lib/vellum_ai/types/string_chat_message_content_request.rb +40 -24
  405. data/lib/vellum_ai/types/string_input.rb +69 -0
  406. data/lib/vellum_ai/types/string_input_request.rb +45 -27
  407. data/lib/vellum_ai/types/string_vellum_value.rb +64 -0
  408. data/lib/vellum_ai/types/string_vellum_value_request.rb +64 -0
  409. data/lib/vellum_ai/types/submit_completion_actual_request.rb +76 -39
  410. data/lib/vellum_ai/types/submit_workflow_execution_actual_request.rb +53 -82
  411. data/lib/vellum_ai/types/subworkflow_node_result.rb +51 -21
  412. data/lib/vellum_ai/types/subworkflow_node_result_data.rb +53 -0
  413. data/lib/vellum_ai/types/templating_node_array_result.rb +50 -30
  414. data/lib/vellum_ai/types/templating_node_chat_history_result.rb +49 -29
  415. data/lib/vellum_ai/types/templating_node_error_result.rb +50 -30
  416. data/lib/vellum_ai/types/templating_node_function_call_result.rb +50 -30
  417. data/lib/vellum_ai/types/templating_node_json_result.rb +45 -27
  418. data/lib/vellum_ai/types/templating_node_number_result.rb +47 -27
  419. data/lib/vellum_ai/types/templating_node_result.rb +43 -27
  420. data/lib/vellum_ai/types/templating_node_result_data.rb +30 -24
  421. data/lib/vellum_ai/types/templating_node_result_output.rb +129 -143
  422. data/lib/vellum_ai/types/templating_node_search_results_result.rb +49 -29
  423. data/lib/vellum_ai/types/templating_node_string_result.rb +47 -27
  424. data/lib/vellum_ai/types/terminal_node_array_result.rb +55 -33
  425. data/lib/vellum_ai/types/terminal_node_chat_history_result.rb +54 -32
  426. data/lib/vellum_ai/types/terminal_node_error_result.rb +55 -33
  427. data/lib/vellum_ai/types/terminal_node_function_call_result.rb +55 -33
  428. data/lib/vellum_ai/types/terminal_node_json_result.rb +52 -30
  429. data/lib/vellum_ai/types/terminal_node_number_result.rb +52 -30
  430. data/lib/vellum_ai/types/terminal_node_result.rb +43 -27
  431. data/lib/vellum_ai/types/terminal_node_result_data.rb +30 -24
  432. data/lib/vellum_ai/types/terminal_node_result_output.rb +130 -144
  433. data/lib/vellum_ai/types/terminal_node_search_results_result.rb +54 -32
  434. data/lib/vellum_ai/types/terminal_node_string_result.rb +52 -30
  435. data/lib/vellum_ai/types/test_case_array_variable_value.rb +82 -0
  436. data/lib/vellum_ai/types/test_case_chat_history_variable_value.rb +57 -29
  437. data/lib/vellum_ai/types/test_case_error_variable_value.rb +58 -30
  438. data/lib/vellum_ai/types/test_case_function_call_variable_value.rb +84 -0
  439. data/lib/vellum_ai/types/test_case_json_variable_value.rb +53 -27
  440. data/lib/vellum_ai/types/test_case_number_variable_value.rb +55 -27
  441. data/lib/vellum_ai/types/test_case_search_results_variable_value.rb +57 -29
  442. data/lib/vellum_ai/types/test_case_string_variable_value.rb +55 -27
  443. data/lib/vellum_ai/types/test_case_variable_value.rb +131 -119
  444. data/lib/vellum_ai/types/test_suite_run_deployment_release_tag_exec_config.rb +55 -31
  445. data/lib/vellum_ai/types/test_suite_run_deployment_release_tag_exec_config_data.rb +43 -26
  446. data/lib/vellum_ai/types/test_suite_run_deployment_release_tag_exec_config_data_request.rb +43 -26
  447. data/lib/vellum_ai/types/test_suite_run_deployment_release_tag_exec_config_request.rb +55 -31
  448. data/lib/vellum_ai/types/test_suite_run_exec_config.rb +86 -70
  449. data/lib/vellum_ai/types/test_suite_run_exec_config_request.rb +118 -70
  450. data/lib/vellum_ai/types/test_suite_run_execution.rb +51 -37
  451. data/lib/vellum_ai/types/test_suite_run_execution_array_output.rb +83 -0
  452. data/lib/vellum_ai/types/test_suite_run_execution_chat_history_output.rb +60 -30
  453. data/lib/vellum_ai/types/test_suite_run_execution_error_output.rb +59 -30
  454. data/lib/vellum_ai/types/test_suite_run_execution_function_call_output.rb +87 -0
  455. data/lib/vellum_ai/types/test_suite_run_execution_json_output.rb +55 -28
  456. data/lib/vellum_ai/types/test_suite_run_execution_metric_definition.rb +71 -0
  457. data/lib/vellum_ai/types/test_suite_run_execution_metric_result.rb +60 -27
  458. data/lib/vellum_ai/types/test_suite_run_execution_number_output.rb +57 -28
  459. data/lib/vellum_ai/types/test_suite_run_execution_output.rb +131 -119
  460. data/lib/vellum_ai/types/test_suite_run_execution_search_results_output.rb +61 -30
  461. data/lib/vellum_ai/types/test_suite_run_execution_string_output.rb +57 -28
  462. data/lib/vellum_ai/types/test_suite_run_external_exec_config.rb +80 -0
  463. data/lib/vellum_ai/types/test_suite_run_external_exec_config_data.rb +57 -0
  464. data/lib/vellum_ai/types/test_suite_run_external_exec_config_data_request.rb +59 -0
  465. data/lib/vellum_ai/types/test_suite_run_external_exec_config_request.rb +81 -0
  466. data/lib/vellum_ai/types/test_suite_run_metric_array_output.rb +75 -0
  467. data/lib/vellum_ai/types/test_suite_run_metric_error_output.rb +48 -30
  468. data/lib/vellum_ai/types/test_suite_run_metric_json_output.rb +69 -0
  469. data/lib/vellum_ai/types/test_suite_run_metric_number_output.rb +49 -29
  470. data/lib/vellum_ai/types/test_suite_run_metric_output.rb +86 -70
  471. data/lib/vellum_ai/types/test_suite_run_metric_string_output.rb +71 -0
  472. data/lib/vellum_ai/types/test_suite_run_progress.rb +61 -0
  473. data/lib/vellum_ai/types/test_suite_run_prompt_sandbox_exec_config_data_request.rb +65 -0
  474. data/lib/vellum_ai/types/test_suite_run_prompt_sandbox_exec_config_request.rb +81 -0
  475. data/lib/vellum_ai/types/test_suite_run_prompt_sandbox_history_item_exec_config.rb +82 -0
  476. data/lib/vellum_ai/types/test_suite_run_prompt_sandbox_history_item_exec_config_data.rb +65 -0
  477. data/lib/vellum_ai/types/test_suite_run_prompt_sandbox_history_item_exec_config_data_request.rb +65 -0
  478. data/lib/vellum_ai/types/test_suite_run_prompt_sandbox_history_item_exec_config_request.rb +82 -0
  479. data/lib/vellum_ai/types/test_suite_run_read.rb +89 -60
  480. data/lib/vellum_ai/types/test_suite_run_state.rb +15 -9
  481. data/lib/vellum_ai/types/test_suite_run_test_suite.rb +41 -28
  482. data/lib/vellum_ai/types/test_suite_run_workflow_release_tag_exec_config.rb +55 -31
  483. data/lib/vellum_ai/types/test_suite_run_workflow_release_tag_exec_config_data.rb +43 -26
  484. data/lib/vellum_ai/types/test_suite_run_workflow_release_tag_exec_config_data_request.rb +43 -26
  485. data/lib/vellum_ai/types/test_suite_run_workflow_release_tag_exec_config_request.rb +55 -31
  486. data/lib/vellum_ai/types/test_suite_run_workflow_sandbox_exec_config_data_request.rb +53 -0
  487. data/lib/vellum_ai/types/test_suite_run_workflow_sandbox_exec_config_request.rb +81 -0
  488. data/lib/vellum_ai/types/test_suite_run_workflow_sandbox_history_item_exec_config.rb +82 -0
  489. data/lib/vellum_ai/types/test_suite_run_workflow_sandbox_history_item_exec_config_data.rb +67 -0
  490. data/lib/vellum_ai/types/test_suite_run_workflow_sandbox_history_item_exec_config_data_request.rb +67 -0
  491. data/lib/vellum_ai/types/test_suite_run_workflow_sandbox_history_item_exec_config_request.rb +82 -0
  492. data/lib/vellum_ai/types/test_suite_test_case.rb +63 -40
  493. data/lib/vellum_ai/types/test_suite_test_case_bulk_operation_request.rb +91 -0
  494. data/lib/vellum_ai/types/test_suite_test_case_bulk_result.rb +90 -0
  495. data/lib/vellum_ai/types/test_suite_test_case_create_bulk_operation_request.rb +79 -0
  496. data/lib/vellum_ai/types/test_suite_test_case_created_bulk_result.rb +75 -0
  497. data/lib/vellum_ai/types/test_suite_test_case_created_bulk_result_data.rb +53 -0
  498. data/lib/vellum_ai/types/test_suite_test_case_delete_bulk_operation_data_request.rb +53 -0
  499. data/lib/vellum_ai/types/test_suite_test_case_delete_bulk_operation_request.rb +79 -0
  500. data/lib/vellum_ai/types/test_suite_test_case_deleted_bulk_result.rb +77 -0
  501. data/lib/vellum_ai/types/test_suite_test_case_deleted_bulk_result_data.rb +53 -0
  502. data/lib/vellum_ai/types/test_suite_test_case_rejected_bulk_result.rb +73 -0
  503. data/lib/vellum_ai/types/test_suite_test_case_replace_bulk_operation_request.rb +79 -0
  504. data/lib/vellum_ai/types/test_suite_test_case_replaced_bulk_result.rb +77 -0
  505. data/lib/vellum_ai/types/test_suite_test_case_replaced_bulk_result_data.rb +54 -0
  506. data/lib/vellum_ai/types/test_suite_test_case_upsert_bulk_operation_request.rb +79 -0
  507. data/lib/vellum_ai/types/token_overlapping_window_chunker_config.rb +64 -0
  508. data/lib/vellum_ai/types/token_overlapping_window_chunker_config_request.rb +66 -0
  509. data/lib/vellum_ai/types/token_overlapping_window_chunking.rb +70 -0
  510. data/lib/vellum_ai/types/token_overlapping_window_chunking_request.rb +71 -0
  511. data/lib/vellum_ai/types/{json_enum.rb → unit_enum.rb} +2 -2
  512. data/lib/vellum_ai/types/upload_document_response.rb +26 -20
  513. data/lib/vellum_ai/types/upsert_test_suite_test_case_request.rb +103 -0
  514. data/lib/vellum_ai/types/variable_prompt_block.rb +85 -0
  515. data/lib/vellum_ai/types/vellum_audio.rb +63 -0
  516. data/lib/vellum_ai/types/vellum_audio_request.rb +63 -0
  517. data/lib/vellum_ai/types/vellum_code_resource_definition.rb +68 -0
  518. data/lib/vellum_ai/types/vellum_document.rb +63 -0
  519. data/lib/vellum_ai/types/vellum_document_request.rb +63 -0
  520. data/lib/vellum_ai/types/vellum_error.rb +36 -25
  521. data/lib/vellum_ai/types/vellum_error_code_enum.rb +17 -8
  522. data/lib/vellum_ai/types/vellum_error_request.rb +36 -25
  523. data/lib/vellum_ai/types/vellum_image.rb +40 -27
  524. data/lib/vellum_ai/types/vellum_image_request.rb +40 -27
  525. data/lib/vellum_ai/types/vellum_node_execution_event.rb +122 -0
  526. data/lib/vellum_ai/types/vellum_sdk_error.rb +62 -0
  527. data/lib/vellum_ai/types/vellum_sdk_error_code_enum.rb +32 -0
  528. data/lib/vellum_ai/types/vellum_secret.rb +51 -0
  529. data/lib/vellum_ai/types/vellum_span.rb +58 -0
  530. data/lib/vellum_ai/types/vellum_value.rb +202 -0
  531. data/lib/vellum_ai/types/vellum_value_logical_condition_group_request.rb +84 -0
  532. data/lib/vellum_ai/types/vellum_value_logical_condition_request.rb +88 -0
  533. data/lib/vellum_ai/types/vellum_value_logical_expression_request.rb +58 -0
  534. data/lib/vellum_ai/types/vellum_value_request.rb +202 -0
  535. data/lib/vellum_ai/types/vellum_variable.rb +77 -29
  536. data/lib/vellum_ai/types/vellum_variable_extensions.rb +54 -0
  537. data/lib/vellum_ai/types/vellum_variable_type.rb +29 -13
  538. data/lib/vellum_ai/types/vellum_workflow_execution_event.rb +138 -0
  539. data/lib/vellum_ai/types/workflow_deployment_event_executions_response.rb +67 -0
  540. data/lib/vellum_ai/types/workflow_deployment_history_item.rb +117 -0
  541. data/lib/vellum_ai/types/workflow_deployment_parent_context.rb +143 -0
  542. data/lib/vellum_ai/types/workflow_deployment_read.rb +120 -77
  543. data/lib/vellum_ai/types/workflow_deployment_release.rb +149 -0
  544. data/lib/vellum_ai/types/workflow_deployment_release_workflow_deployment.rb +53 -0
  545. data/lib/vellum_ai/types/workflow_deployment_release_workflow_version.rb +77 -0
  546. data/lib/vellum_ai/types/workflow_error.rb +58 -0
  547. data/lib/vellum_ai/types/workflow_event_error.rb +36 -25
  548. data/lib/vellum_ai/types/workflow_event_execution_read.rb +173 -0
  549. data/lib/vellum_ai/types/workflow_execution_actual.rb +88 -0
  550. data/lib/vellum_ai/types/workflow_execution_actual_chat_history_request.rb +87 -50
  551. data/lib/vellum_ai/types/workflow_execution_actual_json_request.rb +83 -48
  552. data/lib/vellum_ai/types/workflow_execution_actual_string_request.rb +82 -47
  553. data/lib/vellum_ai/types/workflow_execution_event_error_code.rb +25 -12
  554. data/lib/vellum_ai/types/workflow_execution_event_type.rb +9 -3
  555. data/lib/vellum_ai/types/workflow_execution_fulfilled_body.rb +67 -0
  556. data/lib/vellum_ai/types/workflow_execution_fulfilled_event.rb +134 -0
  557. data/lib/vellum_ai/types/workflow_execution_initiated_body.rb +67 -0
  558. data/lib/vellum_ai/types/workflow_execution_initiated_event.rb +134 -0
  559. data/lib/vellum_ai/types/workflow_execution_node_result_event.rb +62 -39
  560. data/lib/vellum_ai/types/workflow_execution_paused_body.rb +71 -0
  561. data/lib/vellum_ai/types/workflow_execution_paused_event.rb +134 -0
  562. data/lib/vellum_ai/types/workflow_execution_rejected_body.rb +73 -0
  563. data/lib/vellum_ai/types/workflow_execution_rejected_event.rb +134 -0
  564. data/lib/vellum_ai/types/workflow_execution_resumed_body.rb +57 -0
  565. data/lib/vellum_ai/types/workflow_execution_resumed_event.rb +134 -0
  566. data/lib/vellum_ai/types/workflow_execution_snapshotted_body.rb +67 -0
  567. data/lib/vellum_ai/types/workflow_execution_snapshotted_event.rb +134 -0
  568. data/lib/vellum_ai/types/workflow_execution_span.rb +118 -0
  569. data/lib/vellum_ai/types/workflow_execution_span_attributes.rb +51 -0
  570. data/lib/vellum_ai/types/workflow_execution_streaming_body.rb +73 -0
  571. data/lib/vellum_ai/types/workflow_execution_streaming_event.rb +134 -0
  572. data/lib/vellum_ai/types/workflow_execution_usage_calculation_error.rb +63 -0
  573. data/lib/vellum_ai/types/workflow_execution_usage_calculation_error_code_enum.rb +16 -0
  574. data/lib/vellum_ai/types/workflow_execution_usage_result.rb +84 -0
  575. data/lib/vellum_ai/types/workflow_execution_view_online_eval_metric_result.rb +74 -0
  576. data/lib/vellum_ai/types/workflow_execution_workflow_result_event.rb +62 -39
  577. data/lib/vellum_ai/types/workflow_expand_meta_request.rb +74 -0
  578. data/lib/vellum_ai/types/workflow_initialization_error.rb +62 -0
  579. data/lib/vellum_ai/types/workflow_node_result_data.rb +177 -143
  580. data/lib/vellum_ai/types/workflow_node_result_event.rb +68 -94
  581. data/lib/vellum_ai/types/workflow_node_result_event_state.rb +13 -8
  582. data/lib/vellum_ai/types/workflow_output.rb +144 -155
  583. data/lib/vellum_ai/types/workflow_output_array.rb +55 -33
  584. data/lib/vellum_ai/types/workflow_output_chat_history.rb +54 -32
  585. data/lib/vellum_ai/types/workflow_output_error.rb +55 -33
  586. data/lib/vellum_ai/types/workflow_output_function_call.rb +55 -33
  587. data/lib/vellum_ai/types/workflow_output_image.rb +55 -33
  588. data/lib/vellum_ai/types/workflow_output_json.rb +50 -30
  589. data/lib/vellum_ai/types/workflow_output_number.rb +52 -30
  590. data/lib/vellum_ai/types/workflow_output_search_results.rb +54 -32
  591. data/lib/vellum_ai/types/workflow_output_string.rb +52 -30
  592. data/lib/vellum_ai/types/workflow_parent_context.rb +100 -0
  593. data/lib/vellum_ai/types/workflow_push_deployment_config_request.rb +77 -0
  594. data/lib/vellum_ai/types/workflow_push_response.rb +70 -0
  595. data/lib/vellum_ai/types/workflow_release_tag_read.rb +92 -0
  596. data/lib/vellum_ai/types/workflow_release_tag_workflow_deployment_history_item.rb +68 -0
  597. data/lib/vellum_ai/types/workflow_request_chat_history_input_request.rb +47 -28
  598. data/lib/vellum_ai/types/workflow_request_input_request.rb +68 -94
  599. data/lib/vellum_ai/types/workflow_request_json_input_request.rb +45 -27
  600. data/lib/vellum_ai/types/workflow_request_number_input_request.rb +44 -26
  601. data/lib/vellum_ai/types/workflow_request_string_input_request.rb +44 -26
  602. data/lib/vellum_ai/types/workflow_result_event.rb +86 -68
  603. data/lib/vellum_ai/types/workflow_result_event_output_data.rb +129 -143
  604. data/lib/vellum_ai/types/workflow_result_event_output_data_array.rb +76 -53
  605. data/lib/vellum_ai/types/workflow_result_event_output_data_chat_history.rb +77 -52
  606. data/lib/vellum_ai/types/workflow_result_event_output_data_error.rb +76 -53
  607. data/lib/vellum_ai/types/workflow_result_event_output_data_function_call.rb +78 -53
  608. data/lib/vellum_ai/types/workflow_result_event_output_data_json.rb +72 -49
  609. data/lib/vellum_ai/types/workflow_result_event_output_data_number.rb +72 -49
  610. data/lib/vellum_ai/types/workflow_result_event_output_data_search_results.rb +77 -52
  611. data/lib/vellum_ai/types/workflow_result_event_output_data_string.rb +71 -48
  612. data/lib/vellum_ai/types/workflow_sandbox_example.rb +77 -0
  613. data/lib/vellum_ai/types/workflow_sandbox_parent_context.rb +108 -0
  614. data/lib/vellum_ai/types/workflow_stream_event.rb +38 -70
  615. data/lib/vellum_ai/types/workspace_read.rb +80 -0
  616. data/lib/vellum_ai/types/workspace_secret_read.rb +88 -0
  617. data/lib/vellum_ai/workflow_deployments/client.rb +534 -66
  618. data/lib/vellum_ai/workflow_deployments/types/list_workflow_release_tags_request_source.rb +12 -0
  619. data/lib/vellum_ai/workflow_deployments/types/workflow_deployments_list_request_status.rb +7 -3
  620. data/lib/vellum_ai/workflow_sandboxes/client.rb +183 -0
  621. data/lib/vellum_ai/workflow_sandboxes/types/list_workflow_sandbox_examples_request_tag.rb +12 -0
  622. data/lib/vellum_ai/workflows/client.rb +169 -0
  623. data/lib/vellum_ai/workspace_secrets/client.rb +159 -0
  624. data/lib/vellum_ai/workspaces/client.rb +92 -0
  625. data/lib/vellum_ai.rb +786 -392
  626. metadata +434 -96
  627. data/lib/vellum_ai/model_versions/client.rb +0 -61
  628. data/lib/vellum_ai/registered_prompts/client.rb +0 -154
  629. data/lib/vellum_ai/types/array_enum.rb +0 -5
  630. data/lib/vellum_ai/types/array_variable_value_item.rb +0 -168
  631. data/lib/vellum_ai/types/block_type_enum.rb +0 -11
  632. data/lib/vellum_ai/types/chat_history_variable_value.rb +0 -49
  633. data/lib/vellum_ai/types/error_enum.rb +0 -5
  634. data/lib/vellum_ai/types/error_variable_value.rb +0 -51
  635. data/lib/vellum_ai/types/execute_prompt_api_error_response.rb +0 -45
  636. data/lib/vellum_ai/types/execute_workflow_error_response.rb +0 -45
  637. data/lib/vellum_ai/types/execute_workflow_stream_error_response.rb +0 -45
  638. data/lib/vellum_ai/types/fulfilled_enum.rb +0 -5
  639. data/lib/vellum_ai/types/fulfilled_function_call.rb +0 -56
  640. data/lib/vellum_ai/types/function_call_enum.rb +0 -5
  641. data/lib/vellum_ai/types/function_call_variable_value.rb +0 -51
  642. data/lib/vellum_ai/types/generate_error_response.rb +0 -45
  643. data/lib/vellum_ai/types/image_variable_value.rb +0 -52
  644. data/lib/vellum_ai/types/initiated_enum.rb +0 -5
  645. data/lib/vellum_ai/types/json_variable_value.rb +0 -45
  646. data/lib/vellum_ai/types/model_version_build_config.rb +0 -66
  647. data/lib/vellum_ai/types/model_version_exec_config.rb +0 -90
  648. data/lib/vellum_ai/types/model_version_exec_config_parameters.rb +0 -98
  649. data/lib/vellum_ai/types/model_version_read.rb +0 -133
  650. data/lib/vellum_ai/types/model_version_read_status_enum.rb +0 -11
  651. data/lib/vellum_ai/types/model_version_sandbox_snapshot.rb +0 -61
  652. data/lib/vellum_ai/types/node_input_compiled_function_call.rb +0 -61
  653. data/lib/vellum_ai/types/node_output_compiled_function_value.rb +0 -56
  654. data/lib/vellum_ai/types/number_enum.rb +0 -5
  655. data/lib/vellum_ai/types/number_variable_value.rb +0 -45
  656. data/lib/vellum_ai/types/processing_state_enum.rb +0 -11
  657. data/lib/vellum_ai/types/prompt_deployment_expand_meta_request_request.rb +0 -74
  658. data/lib/vellum_ai/types/prompt_template_block.rb +0 -62
  659. data/lib/vellum_ai/types/prompt_template_block_data.rb +0 -54
  660. data/lib/vellum_ai/types/prompt_template_block_data_request.rb +0 -54
  661. data/lib/vellum_ai/types/prompt_template_block_properties.rb +0 -110
  662. data/lib/vellum_ai/types/prompt_template_block_properties_request.rb +0 -110
  663. data/lib/vellum_ai/types/prompt_template_block_request.rb +0 -62
  664. data/lib/vellum_ai/types/provider_enum.rb +0 -20
  665. data/lib/vellum_ai/types/register_prompt_error_response.rb +0 -45
  666. data/lib/vellum_ai/types/register_prompt_model_parameters_request.rb +0 -98
  667. data/lib/vellum_ai/types/register_prompt_prompt.rb +0 -50
  668. data/lib/vellum_ai/types/register_prompt_prompt_info_request.rb +0 -60
  669. data/lib/vellum_ai/types/register_prompt_response.rb +0 -110
  670. data/lib/vellum_ai/types/registered_prompt_deployment.rb +0 -55
  671. data/lib/vellum_ai/types/registered_prompt_input_variable_request.rb +0 -56
  672. data/lib/vellum_ai/types/registered_prompt_model_version.rb +0 -50
  673. data/lib/vellum_ai/types/registered_prompt_sandbox.rb +0 -50
  674. data/lib/vellum_ai/types/registered_prompt_sandbox_snapshot.rb +0 -45
  675. data/lib/vellum_ai/types/rejected_enum.rb +0 -5
  676. data/lib/vellum_ai/types/rejected_function_call.rb +0 -62
  677. data/lib/vellum_ai/types/scenario_input_request.rb +0 -70
  678. data/lib/vellum_ai/types/scenario_input_type_enum.rb +0 -6
  679. data/lib/vellum_ai/types/search_error_response.rb +0 -45
  680. data/lib/vellum_ai/types/search_results_enum.rb +0 -5
  681. data/lib/vellum_ai/types/search_results_variable_value.rb +0 -49
  682. data/lib/vellum_ai/types/streaming_enum.rb +0 -5
  683. data/lib/vellum_ai/types/string_enum.rb +0 -5
  684. data/lib/vellum_ai/types/string_variable_value.rb +0 -45
  685. data/lib/vellum_ai/types/submit_completion_actuals_error_response.rb +0 -45
  686. data/lib/vellum_ai/types/subworkflow_enum.rb +0 -5
  687. data/lib/vellum_ai/types/test_suite_run_deployment_release_tag_exec_config_type_enum.rb +0 -5
  688. data/lib/vellum_ai/types/test_suite_run_metric_error_output_type_enum.rb +0 -5
  689. data/lib/vellum_ai/types/test_suite_run_metric_number_output_type_enum.rb +0 -5
  690. data/lib/vellum_ai/types/test_suite_run_workflow_release_tag_exec_config_type_enum.rb +0 -5
  691. data/lib/vellum_ai/types/upload_document_error_response.rb +0 -45
@@ -1,343 +1,599 @@
1
1
  # frozen_string_literal: true
2
-
3
2
  require_relative "../../requests"
4
3
  require_relative "types/document_indexes_list_request_status"
5
4
  require_relative "../types/paginated_document_index_read_list"
6
5
  require_relative "../types/entity_status"
7
- require_relative "../types/environment_enum"
6
+ require_relative "../types/document_index_indexing_config_request"
8
7
  require_relative "../types/document_index_read"
9
8
  require "async"
9
+ require "async"
10
+ require "async"
11
+ require "async"
12
+ require "async"
13
+ require "async"
14
+ require "async"
15
+ require "async"
16
+ require_relative "../../requests"
10
17
 
11
18
  module Vellum
12
19
  class DocumentIndexesClient
20
+ # @return [Vellum::RequestClient]
13
21
  attr_reader :request_client
14
22
 
15
- # @param request_client [RequestClient]
16
- # @return [DocumentIndexesClient]
23
+
24
+ # @param request_client [Vellum::RequestClient]
25
+ # @return [Vellum::DocumentIndexesClient]
17
26
  def initialize(request_client:)
18
- # @type [RequestClient]
19
27
  @request_client = request_client
20
28
  end
21
-
22
- # Used to retrieve a list of Document Indexes.
29
+ # Used to retrieve a list of Document Indexes.
23
30
  #
24
31
  # @param limit [Integer] Number of results to return per page.
25
32
  # @param offset [Integer] The initial index from which to return the results.
26
33
  # @param ordering [String] Which field to use when ordering the results.
27
- # @param status [DOCUMENT_INDEXES_LIST_REQUEST_STATUS] The current status of the document index
28
- # - `ACTIVE` - Active
29
- # - `ARCHIVED` - Archived
30
- # @param request_options [RequestOptions]
31
- # @return [PaginatedDocumentIndexReadList]
32
- def list(limit: nil, offset: nil, ordering: nil, status: nil, request_options: nil)
33
- response = @request_client.conn.get do |req|
34
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
35
- req.headers["X_API_KEY"] = request_options.api_key unless request_options&.api_key.nil?
36
- req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
37
- req.params = {
38
- **(request_options&.additional_query_parameters || {}),
39
- "limit": limit,
40
- "offset": offset,
41
- "ordering": ordering,
42
- "status": status
43
- }.compact
44
- req.url "#{@request_client.default_environment[:Default]}/v1/document-indexes"
45
- end
46
- PaginatedDocumentIndexReadList.from_json(json_object: response.body)
34
+ # @param search [String] Search for document indices by name or label
35
+ # @param status [Vellum::DocumentIndexes::DocumentIndexesListRequestStatus] Filter down to only document indices that have a status matching the status
36
+ # specified
37
+ # * `ACTIVE` - Active
38
+ # * `ARCHIVED` - Archived
39
+ # @param request_options [Vellum::RequestOptions]
40
+ # @return [Vellum::PaginatedDocumentIndexReadList]
41
+ # @example
42
+ # api = Vellum::Client.new(
43
+ # base_url: "https://api.example.com",
44
+ # environment: Vellum::Environment::PRODUCTION,
45
+ # api_key: "YOUR_API_KEY"
46
+ # )
47
+ # api.document_indexes.list
48
+ def list(limit: nil, offset: nil, ordering: nil, search: nil, status: nil, request_options: nil)
49
+ response = @request_client.conn.get do | req |
50
+ unless request_options&.timeout_in_seconds.nil?
51
+ req.options.timeout = request_options.timeout_in_seconds
52
+ end
53
+ unless request_options&.api_key.nil?
54
+ req.headers["X-API-KEY"] = request_options.api_key
55
+ end
56
+ req.headers = { **(req.headers || {}), **@request_client.get_headers, **(request_options&.additional_headers || {}) }.compact
57
+ req.params = { **(request_options&.additional_query_parameters || {}), "limit": limit, "offset": offset, "ordering": ordering, "search": search, "status": status }.compact
58
+ unless request_options.nil? || request_options&.additional_body_parameters.nil?
59
+ req.body = { **(request_options&.additional_body_parameters || {}) }.compact
60
+ end
61
+ req.url "#{@request_client.get_url(environment: Default, request_options: request_options)}/v1/document-indexes"
62
+ end
63
+ Vellum::PaginatedDocumentIndexReadList.from_json(json_object: response.body)
47
64
  end
48
-
49
- # Creates a new document index.
65
+ # Creates a new document index.
50
66
  #
51
67
  # @param label [String] A human-readable label for the document index
52
68
  # @param name [String] A name that uniquely identifies this index within its workspace
53
- # @param status [ENTITY_STATUS] The current status of the document index
54
- # * `ACTIVE` - Active
55
- # * `ARCHIVED` - Archived
56
- # @param environment [ENVIRONMENT_ENUM] The environment this document index is used in
57
- # * `DEVELOPMENT` - Development
58
- # * `STAGING` - Staging
59
- # * `PRODUCTION` - Production
60
- # @param indexing_config [Hash{String => String}] Configuration representing how documents should be indexed
61
- # @param copy_documents_from_index_id [String] Optionally specify the id of a document index from which you'd like to copy and re-index its documents into this newly created index
62
- # @param request_options [RequestOptions]
63
- # @return [DocumentIndexRead]
64
- def create(label:, name:, indexing_config:, status: nil, environment: nil, copy_documents_from_index_id: nil,
65
- request_options: nil)
66
- response = @request_client.conn.post do |req|
67
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
68
- req.headers["X_API_KEY"] = request_options.api_key unless request_options&.api_key.nil?
69
- req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
70
- req.body = {
71
- **(request_options&.additional_body_parameters || {}),
72
- label: label,
73
- name: name,
74
- status: status,
75
- environment: environment,
76
- indexing_config: indexing_config,
77
- copy_documents_from_index_id: copy_documents_from_index_id
78
- }.compact
79
- req.url "#{@request_client.default_environment[:Default]}/v1/document-indexes"
80
- end
81
- DocumentIndexRead.from_json(json_object: response.body)
69
+ # @param status [Vellum::EntityStatus] The current status of the document index
70
+ # * `ACTIVE` - Active
71
+ # * `ARCHIVED` - Archived
72
+ # @param indexing_config [Hash] Request of type Vellum::DocumentIndexIndexingConfigRequest, as a Hash
73
+ # * :vectorizer (Hash)
74
+ # * :chunking (Hash)
75
+ # @param copy_documents_from_index_id [String] Optionally specify the id of a document index from which you'd like to copy and
76
+ # re-index its documents into this newly created index
77
+ # @param request_options [Vellum::RequestOptions]
78
+ # @return [Vellum::DocumentIndexRead]
79
+ # @example
80
+ # api = Vellum::Client.new(
81
+ # base_url: "https://api.example.com",
82
+ # environment: Vellum::Environment::PRODUCTION,
83
+ # api_key: "YOUR_API_KEY"
84
+ # )
85
+ # api.document_indexes.create(
86
+ # label: "My Document Index",
87
+ # name: "my-document-index",
88
+ # indexing_config: { vectorizer: { model_name: "hkunlp/instructor-xl", config: { instruction_domain: "", instruction_query_text_type: "plain_text", instruction_document_text_type: "plain_text" } }, chunking: { chunker_name: "sentence-chunker", chunker_config: { character_limit: 1000, min_overlap_ratio: 0.5 } } }
89
+ # )
90
+ def create(label:, name:, status: nil, indexing_config:, copy_documents_from_index_id: nil, request_options: nil)
91
+ response = @request_client.conn.post do | req |
92
+ unless request_options&.timeout_in_seconds.nil?
93
+ req.options.timeout = request_options.timeout_in_seconds
94
+ end
95
+ unless request_options&.api_key.nil?
96
+ req.headers["X-API-KEY"] = request_options.api_key
97
+ end
98
+ req.headers = { **(req.headers || {}), **@request_client.get_headers, **(request_options&.additional_headers || {}) }.compact
99
+ unless request_options.nil? || request_options&.additional_query_parameters.nil?
100
+ req.params = { **(request_options&.additional_query_parameters || {}) }.compact
101
+ end
102
+ req.body = { **(request_options&.additional_body_parameters || {}), label: label, name: name, status: status, indexing_config: indexing_config, copy_documents_from_index_id: copy_documents_from_index_id }.compact
103
+ req.url "#{@request_client.get_url(environment: Default, request_options: request_options)}/v1/document-indexes"
104
+ end
105
+ Vellum::DocumentIndexRead.from_json(json_object: response.body)
82
106
  end
83
-
84
- # Used to retrieve a Document Index given its ID or name.
107
+ # Used to retrieve a Document Index given its ID or name.
85
108
  #
86
109
  # @param id [String] Either the Document Index's ID or its unique name
87
- # @param request_options [RequestOptions]
88
- # @return [DocumentIndexRead]
110
+ # @param request_options [Vellum::RequestOptions]
111
+ # @return [Vellum::DocumentIndexRead]
112
+ # @example
113
+ # api = Vellum::Client.new(
114
+ # base_url: "https://api.example.com",
115
+ # environment: Vellum::Environment::PRODUCTION,
116
+ # api_key: "YOUR_API_KEY"
117
+ # )
118
+ # api.document_indexes.retrieve(id: "id")
89
119
  def retrieve(id:, request_options: nil)
90
- response = @request_client.conn.get do |req|
91
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
92
- req.headers["X_API_KEY"] = request_options.api_key unless request_options&.api_key.nil?
93
- req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
94
- req.url "#{@request_client.default_environment[:Default]}/v1/document-indexes/#{id}"
95
- end
96
- DocumentIndexRead.from_json(json_object: response.body)
120
+ response = @request_client.conn.get do | req |
121
+ unless request_options&.timeout_in_seconds.nil?
122
+ req.options.timeout = request_options.timeout_in_seconds
123
+ end
124
+ unless request_options&.api_key.nil?
125
+ req.headers["X-API-KEY"] = request_options.api_key
126
+ end
127
+ req.headers = { **(req.headers || {}), **@request_client.get_headers, **(request_options&.additional_headers || {}) }.compact
128
+ unless request_options.nil? || request_options&.additional_query_parameters.nil?
129
+ req.params = { **(request_options&.additional_query_parameters || {}) }.compact
130
+ end
131
+ unless request_options.nil? || request_options&.additional_body_parameters.nil?
132
+ req.body = { **(request_options&.additional_body_parameters || {}) }.compact
133
+ end
134
+ req.url "#{@request_client.get_url(environment: Default, request_options: request_options)}/v1/document-indexes/#{id}"
135
+ end
136
+ Vellum::DocumentIndexRead.from_json(json_object: response.body)
97
137
  end
98
-
99
- # Used to fully update a Document Index given its ID.
138
+ # Used to fully update a Document Index given its ID or name.
100
139
  #
101
- # @param id [String] A UUID string identifying this document index.
140
+ # @param id [String] Either the Document Index's ID or its unique name
102
141
  # @param label [String] A human-readable label for the document index
103
- # @param status [ENTITY_STATUS] The current status of the document index
104
- # * `ACTIVE` - Active
105
- # * `ARCHIVED` - Archived
106
- # @param environment [ENVIRONMENT_ENUM] The environment this document index is used in
107
- # * `DEVELOPMENT` - Development
108
- # * `STAGING` - Staging
109
- # * `PRODUCTION` - Production
110
- # @param request_options [RequestOptions]
111
- # @return [DocumentIndexRead]
112
- def update(id:, label:, status: nil, environment: nil, request_options: nil)
113
- response = @request_client.conn.put do |req|
114
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
115
- req.headers["X_API_KEY"] = request_options.api_key unless request_options&.api_key.nil?
116
- req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
117
- req.body = {
118
- **(request_options&.additional_body_parameters || {}),
119
- label: label,
120
- status: status,
121
- environment: environment
122
- }.compact
123
- req.url "#{@request_client.default_environment[:Default]}/v1/document-indexes/#{id}"
124
- end
125
- DocumentIndexRead.from_json(json_object: response.body)
142
+ # @param status [Vellum::EntityStatus] The current status of the document index
143
+ # * `ACTIVE` - Active
144
+ # * `ARCHIVED` - Archived
145
+ # @param request_options [Vellum::RequestOptions]
146
+ # @return [Vellum::DocumentIndexRead]
147
+ # @example
148
+ # api = Vellum::Client.new(
149
+ # base_url: "https://api.example.com",
150
+ # environment: Vellum::Environment::PRODUCTION,
151
+ # api_key: "YOUR_API_KEY"
152
+ # )
153
+ # api.document_indexes.update(id: "id", label: "label")
154
+ def update(id:, label:, status: nil, request_options: nil)
155
+ response = @request_client.conn.put do | req |
156
+ unless request_options&.timeout_in_seconds.nil?
157
+ req.options.timeout = request_options.timeout_in_seconds
158
+ end
159
+ unless request_options&.api_key.nil?
160
+ req.headers["X-API-KEY"] = request_options.api_key
161
+ end
162
+ req.headers = { **(req.headers || {}), **@request_client.get_headers, **(request_options&.additional_headers || {}) }.compact
163
+ unless request_options.nil? || request_options&.additional_query_parameters.nil?
164
+ req.params = { **(request_options&.additional_query_parameters || {}) }.compact
165
+ end
166
+ req.body = { **(request_options&.additional_body_parameters || {}), label: label, status: status }.compact
167
+ req.url "#{@request_client.get_url(environment: Default, request_options: request_options)}/v1/document-indexes/#{id}"
168
+ end
169
+ Vellum::DocumentIndexRead.from_json(json_object: response.body)
126
170
  end
127
-
128
- # Used to delete a Document Index given its ID.
171
+ # Used to delete a Document Index given its ID or name.
129
172
  #
130
- # @param id [String] A UUID string identifying this document index.
131
- # @param request_options [RequestOptions]
173
+ # @param id [String] Either the Document Index's ID or its unique name
174
+ # @param request_options [Vellum::RequestOptions]
132
175
  # @return [Void]
176
+ # @example
177
+ # api = Vellum::Client.new(
178
+ # base_url: "https://api.example.com",
179
+ # environment: Vellum::Environment::PRODUCTION,
180
+ # api_key: "YOUR_API_KEY"
181
+ # )
182
+ # api.document_indexes.destroy(id: "id")
133
183
  def destroy(id:, request_options: nil)
134
- @request_client.conn.delete do |req|
135
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
136
- req.headers["X_API_KEY"] = request_options.api_key unless request_options&.api_key.nil?
137
- req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
138
- req.url "#{@request_client.default_environment[:Default]}/v1/document-indexes/#{id}"
139
- end
184
+ response = @request_client.conn.delete do | req |
185
+ unless request_options&.timeout_in_seconds.nil?
186
+ req.options.timeout = request_options.timeout_in_seconds
187
+ end
188
+ unless request_options&.api_key.nil?
189
+ req.headers["X-API-KEY"] = request_options.api_key
190
+ end
191
+ req.headers = { **(req.headers || {}), **@request_client.get_headers, **(request_options&.additional_headers || {}) }.compact
192
+ unless request_options.nil? || request_options&.additional_query_parameters.nil?
193
+ req.params = { **(request_options&.additional_query_parameters || {}) }.compact
194
+ end
195
+ unless request_options.nil? || request_options&.additional_body_parameters.nil?
196
+ req.body = { **(request_options&.additional_body_parameters || {}) }.compact
197
+ end
198
+ req.url "#{@request_client.get_url(environment: Documents, request_options: request_options)}/v1/document-indexes/#{id}"
199
+ end
140
200
  end
141
-
142
- # Used to partial update a Document Index given its ID.
201
+ # Used to partial update a Document Index given its ID or name.
143
202
  #
144
- # @param id [String] A UUID string identifying this document index.
203
+ # @param id [String] Either the Document Index's ID or its unique name
145
204
  # @param label [String] A human-readable label for the document index
146
- # @param status [ENTITY_STATUS] The current status of the document index
147
- # * `ACTIVE` - Active
148
- # * `ARCHIVED` - Archived
149
- # @param environment [ENVIRONMENT_ENUM] The environment this document index is used in
150
- # * `DEVELOPMENT` - Development
151
- # * `STAGING` - Staging
152
- # * `PRODUCTION` - Production
153
- # @param request_options [RequestOptions]
154
- # @return [DocumentIndexRead]
155
- def partial_update(id:, label: nil, status: nil, environment: nil, request_options: nil)
156
- response = @request_client.conn.patch do |req|
157
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
158
- req.headers["X_API_KEY"] = request_options.api_key unless request_options&.api_key.nil?
159
- req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
160
- req.body = {
161
- **(request_options&.additional_body_parameters || {}),
162
- label: label,
163
- status: status,
164
- environment: environment
165
- }.compact
166
- req.url "#{@request_client.default_environment[:Default]}/v1/document-indexes/#{id}"
167
- end
168
- DocumentIndexRead.from_json(json_object: response.body)
205
+ # @param status [Vellum::EntityStatus] The current status of the document index
206
+ # * `ACTIVE` - Active
207
+ # * `ARCHIVED` - Archived
208
+ # @param request_options [Vellum::RequestOptions]
209
+ # @return [Vellum::DocumentIndexRead]
210
+ # @example
211
+ # api = Vellum::Client.new(
212
+ # base_url: "https://api.example.com",
213
+ # environment: Vellum::Environment::PRODUCTION,
214
+ # api_key: "YOUR_API_KEY"
215
+ # )
216
+ # api.document_indexes.partial_update(id: "id")
217
+ def partial_update(id:, label: nil, status: nil, request_options: nil)
218
+ response = @request_client.conn.patch do | req |
219
+ unless request_options&.timeout_in_seconds.nil?
220
+ req.options.timeout = request_options.timeout_in_seconds
221
+ end
222
+ unless request_options&.api_key.nil?
223
+ req.headers["X-API-KEY"] = request_options.api_key
224
+ end
225
+ req.headers = { **(req.headers || {}), **@request_client.get_headers, **(request_options&.additional_headers || {}) }.compact
226
+ unless request_options.nil? || request_options&.additional_query_parameters.nil?
227
+ req.params = { **(request_options&.additional_query_parameters || {}) }.compact
228
+ end
229
+ req.body = { **(request_options&.additional_body_parameters || {}), label: label, status: status }.compact
230
+ req.url "#{@request_client.get_url(environment: Default, request_options: request_options)}/v1/document-indexes/#{id}"
231
+ end
232
+ Vellum::DocumentIndexRead.from_json(json_object: response.body)
233
+ end
234
+ # Adds a previously uploaded Document to the specified Document Index.
235
+ #
236
+ # @param document_id [String] Either the Vellum-generated ID or the originally supplied external_id that
237
+ # uniquely identifies the Document you'd like to add.
238
+ # @param id [String] Either the Vellum-generated ID or the originally specified name that uniquely
239
+ # identifies the Document Index to which you'd like to add the Document.
240
+ # @param request_options [Vellum::RequestOptions]
241
+ # @return [Void]
242
+ # @example
243
+ # api = Vellum::Client.new(
244
+ # base_url: "https://api.example.com",
245
+ # environment: Vellum::Environment::PRODUCTION,
246
+ # api_key: "YOUR_API_KEY"
247
+ # )
248
+ # api.document_indexes.add_document(document_id: "document_id", id: "id")
249
+ def add_document(document_id:, id:, request_options: nil)
250
+ response = @request_client.conn.post do | req |
251
+ unless request_options&.timeout_in_seconds.nil?
252
+ req.options.timeout = request_options.timeout_in_seconds
253
+ end
254
+ unless request_options&.api_key.nil?
255
+ req.headers["X-API-KEY"] = request_options.api_key
256
+ end
257
+ req.headers = { **(req.headers || {}), **@request_client.get_headers, **(request_options&.additional_headers || {}) }.compact
258
+ unless request_options.nil? || request_options&.additional_query_parameters.nil?
259
+ req.params = { **(request_options&.additional_query_parameters || {}) }.compact
260
+ end
261
+ unless request_options.nil? || request_options&.additional_body_parameters.nil?
262
+ req.body = { **(request_options&.additional_body_parameters || {}) }.compact
263
+ end
264
+ req.url "#{@request_client.get_url(environment: Default, request_options: request_options)}/v1/document-indexes/#{document_id}/documents/#{id}"
265
+ end
266
+ end
267
+ # Removes a Document from a Document Index without deleting the Document itself.
268
+ #
269
+ # @param document_id [String] Either the Vellum-generated ID or the originally supplied external_id that
270
+ # uniquely identifies the Document you'd like to remove.
271
+ # @param id [String] Either the Vellum-generated ID or the originally specified name that uniquely
272
+ # identifies the Document Index from which you'd like to remove a Document.
273
+ # @param request_options [Vellum::RequestOptions]
274
+ # @return [Void]
275
+ # @example
276
+ # api = Vellum::Client.new(
277
+ # base_url: "https://api.example.com",
278
+ # environment: Vellum::Environment::PRODUCTION,
279
+ # api_key: "YOUR_API_KEY"
280
+ # )
281
+ # api.document_indexes.remove_document(document_id: "document_id", id: "id")
282
+ def remove_document(document_id:, id:, request_options: nil)
283
+ response = @request_client.conn.delete do | req |
284
+ unless request_options&.timeout_in_seconds.nil?
285
+ req.options.timeout = request_options.timeout_in_seconds
286
+ end
287
+ unless request_options&.api_key.nil?
288
+ req.headers["X-API-KEY"] = request_options.api_key
289
+ end
290
+ req.headers = { **(req.headers || {}), **@request_client.get_headers, **(request_options&.additional_headers || {}) }.compact
291
+ unless request_options.nil? || request_options&.additional_query_parameters.nil?
292
+ req.params = { **(request_options&.additional_query_parameters || {}) }.compact
293
+ end
294
+ unless request_options.nil? || request_options&.additional_body_parameters.nil?
295
+ req.body = { **(request_options&.additional_body_parameters || {}) }.compact
296
+ end
297
+ req.url "#{@request_client.get_url(environment: Documents, request_options: request_options)}/v1/document-indexes/#{document_id}/documents/#{id}"
298
+ end
169
299
  end
170
300
  end
171
-
172
301
  class AsyncDocumentIndexesClient
302
+ # @return [Vellum::AsyncRequestClient]
173
303
  attr_reader :request_client
174
304
 
175
- # @param request_client [AsyncRequestClient]
176
- # @return [AsyncDocumentIndexesClient]
305
+
306
+ # @param request_client [Vellum::RequestClient]
307
+ # @return [Vellum::AsyncDocumentIndexesClient]
177
308
  def initialize(request_client:)
178
- # @type [AsyncRequestClient]
179
309
  @request_client = request_client
180
310
  end
181
-
182
- # Used to retrieve a list of Document Indexes.
311
+ # Used to retrieve a list of Document Indexes.
183
312
  #
184
313
  # @param limit [Integer] Number of results to return per page.
185
314
  # @param offset [Integer] The initial index from which to return the results.
186
315
  # @param ordering [String] Which field to use when ordering the results.
187
- # @param status [DOCUMENT_INDEXES_LIST_REQUEST_STATUS] The current status of the document index
188
- # - `ACTIVE` - Active
189
- # - `ARCHIVED` - Archived
190
- # @param request_options [RequestOptions]
191
- # @return [PaginatedDocumentIndexReadList]
192
- def list(limit: nil, offset: nil, ordering: nil, status: nil, request_options: nil)
316
+ # @param search [String] Search for document indices by name or label
317
+ # @param status [Vellum::DocumentIndexes::DocumentIndexesListRequestStatus] Filter down to only document indices that have a status matching the status
318
+ # specified
319
+ # * `ACTIVE` - Active
320
+ # * `ARCHIVED` - Archived
321
+ # @param request_options [Vellum::RequestOptions]
322
+ # @return [Vellum::PaginatedDocumentIndexReadList]
323
+ # @example
324
+ # api = Vellum::Client.new(
325
+ # base_url: "https://api.example.com",
326
+ # environment: Vellum::Environment::PRODUCTION,
327
+ # api_key: "YOUR_API_KEY"
328
+ # )
329
+ # api.document_indexes.list
330
+ def list(limit: nil, offset: nil, ordering: nil, search: nil, status: nil, request_options: nil)
193
331
  Async do
194
- response = @request_client.conn.get do |req|
195
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
196
- req.headers["X_API_KEY"] = request_options.api_key unless request_options&.api_key.nil?
197
- req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
198
- req.params = {
199
- **(request_options&.additional_query_parameters || {}),
200
- "limit": limit,
201
- "offset": offset,
202
- "ordering": ordering,
203
- "status": status
204
- }.compact
205
- req.url "#{@request_client.default_environment[:Default]}/v1/document-indexes"
206
- end
207
- PaginatedDocumentIndexReadList.from_json(json_object: response.body)
332
+ response = @request_client.conn.get do | req |
333
+ unless request_options&.timeout_in_seconds.nil?
334
+ req.options.timeout = request_options.timeout_in_seconds
335
+ end
336
+ unless request_options&.api_key.nil?
337
+ req.headers["X-API-KEY"] = request_options.api_key
338
+ end
339
+ req.headers = { **(req.headers || {}), **@request_client.get_headers, **(request_options&.additional_headers || {}) }.compact
340
+ req.params = { **(request_options&.additional_query_parameters || {}), "limit": limit, "offset": offset, "ordering": ordering, "search": search, "status": status }.compact
341
+ unless request_options.nil? || request_options&.additional_body_parameters.nil?
342
+ req.body = { **(request_options&.additional_body_parameters || {}) }.compact
343
+ end
344
+ req.url "#{@request_client.get_url(environment: Default, request_options: request_options)}/v1/document-indexes"
345
+ end
346
+ Vellum::PaginatedDocumentIndexReadList.from_json(json_object: response.body)
208
347
  end
209
348
  end
210
-
211
- # Creates a new document index.
349
+ # Creates a new document index.
212
350
  #
213
351
  # @param label [String] A human-readable label for the document index
214
352
  # @param name [String] A name that uniquely identifies this index within its workspace
215
- # @param status [ENTITY_STATUS] The current status of the document index
216
- # * `ACTIVE` - Active
217
- # * `ARCHIVED` - Archived
218
- # @param environment [ENVIRONMENT_ENUM] The environment this document index is used in
219
- # * `DEVELOPMENT` - Development
220
- # * `STAGING` - Staging
221
- # * `PRODUCTION` - Production
222
- # @param indexing_config [Hash{String => String}] Configuration representing how documents should be indexed
223
- # @param copy_documents_from_index_id [String] Optionally specify the id of a document index from which you'd like to copy and re-index its documents into this newly created index
224
- # @param request_options [RequestOptions]
225
- # @return [DocumentIndexRead]
226
- def create(label:, name:, indexing_config:, status: nil, environment: nil, copy_documents_from_index_id: nil,
227
- request_options: nil)
353
+ # @param status [Vellum::EntityStatus] The current status of the document index
354
+ # * `ACTIVE` - Active
355
+ # * `ARCHIVED` - Archived
356
+ # @param indexing_config [Hash] Request of type Vellum::DocumentIndexIndexingConfigRequest, as a Hash
357
+ # * :vectorizer (Hash)
358
+ # * :chunking (Hash)
359
+ # @param copy_documents_from_index_id [String] Optionally specify the id of a document index from which you'd like to copy and
360
+ # re-index its documents into this newly created index
361
+ # @param request_options [Vellum::RequestOptions]
362
+ # @return [Vellum::DocumentIndexRead]
363
+ # @example
364
+ # api = Vellum::Client.new(
365
+ # base_url: "https://api.example.com",
366
+ # environment: Vellum::Environment::PRODUCTION,
367
+ # api_key: "YOUR_API_KEY"
368
+ # )
369
+ # api.document_indexes.create(
370
+ # label: "My Document Index",
371
+ # name: "my-document-index",
372
+ # indexing_config: { vectorizer: { model_name: "hkunlp/instructor-xl", config: { instruction_domain: "", instruction_query_text_type: "plain_text", instruction_document_text_type: "plain_text" } }, chunking: { chunker_name: "sentence-chunker", chunker_config: { character_limit: 1000, min_overlap_ratio: 0.5 } } }
373
+ # )
374
+ def create(label:, name:, status: nil, indexing_config:, copy_documents_from_index_id: nil, request_options: nil)
228
375
  Async do
229
- response = @request_client.conn.post do |req|
230
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
231
- req.headers["X_API_KEY"] = request_options.api_key unless request_options&.api_key.nil?
232
- req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
233
- req.body = {
234
- **(request_options&.additional_body_parameters || {}),
235
- label: label,
236
- name: name,
237
- status: status,
238
- environment: environment,
239
- indexing_config: indexing_config,
240
- copy_documents_from_index_id: copy_documents_from_index_id
241
- }.compact
242
- req.url "#{@request_client.default_environment[:Default]}/v1/document-indexes"
243
- end
244
- DocumentIndexRead.from_json(json_object: response.body)
376
+ response = @request_client.conn.post do | req |
377
+ unless request_options&.timeout_in_seconds.nil?
378
+ req.options.timeout = request_options.timeout_in_seconds
379
+ end
380
+ unless request_options&.api_key.nil?
381
+ req.headers["X-API-KEY"] = request_options.api_key
382
+ end
383
+ req.headers = { **(req.headers || {}), **@request_client.get_headers, **(request_options&.additional_headers || {}) }.compact
384
+ unless request_options.nil? || request_options&.additional_query_parameters.nil?
385
+ req.params = { **(request_options&.additional_query_parameters || {}) }.compact
386
+ end
387
+ req.body = { **(request_options&.additional_body_parameters || {}), label: label, name: name, status: status, indexing_config: indexing_config, copy_documents_from_index_id: copy_documents_from_index_id }.compact
388
+ req.url "#{@request_client.get_url(environment: Default, request_options: request_options)}/v1/document-indexes"
389
+ end
390
+ Vellum::DocumentIndexRead.from_json(json_object: response.body)
245
391
  end
246
392
  end
247
-
248
- # Used to retrieve a Document Index given its ID or name.
393
+ # Used to retrieve a Document Index given its ID or name.
249
394
  #
250
395
  # @param id [String] Either the Document Index's ID or its unique name
251
- # @param request_options [RequestOptions]
252
- # @return [DocumentIndexRead]
396
+ # @param request_options [Vellum::RequestOptions]
397
+ # @return [Vellum::DocumentIndexRead]
398
+ # @example
399
+ # api = Vellum::Client.new(
400
+ # base_url: "https://api.example.com",
401
+ # environment: Vellum::Environment::PRODUCTION,
402
+ # api_key: "YOUR_API_KEY"
403
+ # )
404
+ # api.document_indexes.retrieve(id: "id")
253
405
  def retrieve(id:, request_options: nil)
254
406
  Async do
255
- response = @request_client.conn.get do |req|
256
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
257
- req.headers["X_API_KEY"] = request_options.api_key unless request_options&.api_key.nil?
258
- req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
259
- req.url "#{@request_client.default_environment[:Default]}/v1/document-indexes/#{id}"
260
- end
261
- DocumentIndexRead.from_json(json_object: response.body)
407
+ response = @request_client.conn.get do | req |
408
+ unless request_options&.timeout_in_seconds.nil?
409
+ req.options.timeout = request_options.timeout_in_seconds
410
+ end
411
+ unless request_options&.api_key.nil?
412
+ req.headers["X-API-KEY"] = request_options.api_key
413
+ end
414
+ req.headers = { **(req.headers || {}), **@request_client.get_headers, **(request_options&.additional_headers || {}) }.compact
415
+ unless request_options.nil? || request_options&.additional_query_parameters.nil?
416
+ req.params = { **(request_options&.additional_query_parameters || {}) }.compact
417
+ end
418
+ unless request_options.nil? || request_options&.additional_body_parameters.nil?
419
+ req.body = { **(request_options&.additional_body_parameters || {}) }.compact
420
+ end
421
+ req.url "#{@request_client.get_url(environment: Default, request_options: request_options)}/v1/document-indexes/#{id}"
422
+ end
423
+ Vellum::DocumentIndexRead.from_json(json_object: response.body)
262
424
  end
263
425
  end
264
-
265
- # Used to fully update a Document Index given its ID.
426
+ # Used to fully update a Document Index given its ID or name.
266
427
  #
267
- # @param id [String] A UUID string identifying this document index.
428
+ # @param id [String] Either the Document Index's ID or its unique name
268
429
  # @param label [String] A human-readable label for the document index
269
- # @param status [ENTITY_STATUS] The current status of the document index
270
- # * `ACTIVE` - Active
271
- # * `ARCHIVED` - Archived
272
- # @param environment [ENVIRONMENT_ENUM] The environment this document index is used in
273
- # * `DEVELOPMENT` - Development
274
- # * `STAGING` - Staging
275
- # * `PRODUCTION` - Production
276
- # @param request_options [RequestOptions]
277
- # @return [DocumentIndexRead]
278
- def update(id:, label:, status: nil, environment: nil, request_options: nil)
430
+ # @param status [Vellum::EntityStatus] The current status of the document index
431
+ # * `ACTIVE` - Active
432
+ # * `ARCHIVED` - Archived
433
+ # @param request_options [Vellum::RequestOptions]
434
+ # @return [Vellum::DocumentIndexRead]
435
+ # @example
436
+ # api = Vellum::Client.new(
437
+ # base_url: "https://api.example.com",
438
+ # environment: Vellum::Environment::PRODUCTION,
439
+ # api_key: "YOUR_API_KEY"
440
+ # )
441
+ # api.document_indexes.update(id: "id", label: "label")
442
+ def update(id:, label:, status: nil, request_options: nil)
279
443
  Async do
280
- response = @request_client.conn.put do |req|
281
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
282
- req.headers["X_API_KEY"] = request_options.api_key unless request_options&.api_key.nil?
283
- req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
284
- req.body = {
285
- **(request_options&.additional_body_parameters || {}),
286
- label: label,
287
- status: status,
288
- environment: environment
289
- }.compact
290
- req.url "#{@request_client.default_environment[:Default]}/v1/document-indexes/#{id}"
291
- end
292
- DocumentIndexRead.from_json(json_object: response.body)
444
+ response = @request_client.conn.put do | req |
445
+ unless request_options&.timeout_in_seconds.nil?
446
+ req.options.timeout = request_options.timeout_in_seconds
447
+ end
448
+ unless request_options&.api_key.nil?
449
+ req.headers["X-API-KEY"] = request_options.api_key
450
+ end
451
+ req.headers = { **(req.headers || {}), **@request_client.get_headers, **(request_options&.additional_headers || {}) }.compact
452
+ unless request_options.nil? || request_options&.additional_query_parameters.nil?
453
+ req.params = { **(request_options&.additional_query_parameters || {}) }.compact
454
+ end
455
+ req.body = { **(request_options&.additional_body_parameters || {}), label: label, status: status }.compact
456
+ req.url "#{@request_client.get_url(environment: Default, request_options: request_options)}/v1/document-indexes/#{id}"
457
+ end
458
+ Vellum::DocumentIndexRead.from_json(json_object: response.body)
293
459
  end
294
460
  end
295
-
296
- # Used to delete a Document Index given its ID.
461
+ # Used to delete a Document Index given its ID or name.
297
462
  #
298
- # @param id [String] A UUID string identifying this document index.
299
- # @param request_options [RequestOptions]
463
+ # @param id [String] Either the Document Index's ID or its unique name
464
+ # @param request_options [Vellum::RequestOptions]
300
465
  # @return [Void]
466
+ # @example
467
+ # api = Vellum::Client.new(
468
+ # base_url: "https://api.example.com",
469
+ # environment: Vellum::Environment::PRODUCTION,
470
+ # api_key: "YOUR_API_KEY"
471
+ # )
472
+ # api.document_indexes.destroy(id: "id")
301
473
  def destroy(id:, request_options: nil)
302
474
  Async do
303
- @request_client.conn.delete do |req|
304
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
305
- req.headers["X_API_KEY"] = request_options.api_key unless request_options&.api_key.nil?
306
- req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
307
- req.url "#{@request_client.default_environment[:Default]}/v1/document-indexes/#{id}"
308
- end
475
+ response = @request_client.conn.delete do | req |
476
+ unless request_options&.timeout_in_seconds.nil?
477
+ req.options.timeout = request_options.timeout_in_seconds
478
+ end
479
+ unless request_options&.api_key.nil?
480
+ req.headers["X-API-KEY"] = request_options.api_key
481
+ end
482
+ req.headers = { **(req.headers || {}), **@request_client.get_headers, **(request_options&.additional_headers || {}) }.compact
483
+ unless request_options.nil? || request_options&.additional_query_parameters.nil?
484
+ req.params = { **(request_options&.additional_query_parameters || {}) }.compact
485
+ end
486
+ unless request_options.nil? || request_options&.additional_body_parameters.nil?
487
+ req.body = { **(request_options&.additional_body_parameters || {}) }.compact
488
+ end
489
+ req.url "#{@request_client.get_url(environment: Documents, request_options: request_options)}/v1/document-indexes/#{id}"
490
+ end
309
491
  end
310
492
  end
311
-
312
- # Used to partial update a Document Index given its ID.
493
+ # Used to partial update a Document Index given its ID or name.
313
494
  #
314
- # @param id [String] A UUID string identifying this document index.
495
+ # @param id [String] Either the Document Index's ID or its unique name
315
496
  # @param label [String] A human-readable label for the document index
316
- # @param status [ENTITY_STATUS] The current status of the document index
317
- # * `ACTIVE` - Active
318
- # * `ARCHIVED` - Archived
319
- # @param environment [ENVIRONMENT_ENUM] The environment this document index is used in
320
- # * `DEVELOPMENT` - Development
321
- # * `STAGING` - Staging
322
- # * `PRODUCTION` - Production
323
- # @param request_options [RequestOptions]
324
- # @return [DocumentIndexRead]
325
- def partial_update(id:, label: nil, status: nil, environment: nil, request_options: nil)
497
+ # @param status [Vellum::EntityStatus] The current status of the document index
498
+ # * `ACTIVE` - Active
499
+ # * `ARCHIVED` - Archived
500
+ # @param request_options [Vellum::RequestOptions]
501
+ # @return [Vellum::DocumentIndexRead]
502
+ # @example
503
+ # api = Vellum::Client.new(
504
+ # base_url: "https://api.example.com",
505
+ # environment: Vellum::Environment::PRODUCTION,
506
+ # api_key: "YOUR_API_KEY"
507
+ # )
508
+ # api.document_indexes.partial_update(id: "id")
509
+ def partial_update(id:, label: nil, status: nil, request_options: nil)
510
+ Async do
511
+ response = @request_client.conn.patch do | req |
512
+ unless request_options&.timeout_in_seconds.nil?
513
+ req.options.timeout = request_options.timeout_in_seconds
514
+ end
515
+ unless request_options&.api_key.nil?
516
+ req.headers["X-API-KEY"] = request_options.api_key
517
+ end
518
+ req.headers = { **(req.headers || {}), **@request_client.get_headers, **(request_options&.additional_headers || {}) }.compact
519
+ unless request_options.nil? || request_options&.additional_query_parameters.nil?
520
+ req.params = { **(request_options&.additional_query_parameters || {}) }.compact
521
+ end
522
+ req.body = { **(request_options&.additional_body_parameters || {}), label: label, status: status }.compact
523
+ req.url "#{@request_client.get_url(environment: Default, request_options: request_options)}/v1/document-indexes/#{id}"
524
+ end
525
+ Vellum::DocumentIndexRead.from_json(json_object: response.body)
526
+ end
527
+ end
528
+ # Adds a previously uploaded Document to the specified Document Index.
529
+ #
530
+ # @param document_id [String] Either the Vellum-generated ID or the originally supplied external_id that
531
+ # uniquely identifies the Document you'd like to add.
532
+ # @param id [String] Either the Vellum-generated ID or the originally specified name that uniquely
533
+ # identifies the Document Index to which you'd like to add the Document.
534
+ # @param request_options [Vellum::RequestOptions]
535
+ # @return [Void]
536
+ # @example
537
+ # api = Vellum::Client.new(
538
+ # base_url: "https://api.example.com",
539
+ # environment: Vellum::Environment::PRODUCTION,
540
+ # api_key: "YOUR_API_KEY"
541
+ # )
542
+ # api.document_indexes.add_document(document_id: "document_id", id: "id")
543
+ def add_document(document_id:, id:, request_options: nil)
326
544
  Async do
327
- response = @request_client.conn.patch do |req|
328
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
329
- req.headers["X_API_KEY"] = request_options.api_key unless request_options&.api_key.nil?
330
- req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
331
- req.body = {
332
- **(request_options&.additional_body_parameters || {}),
333
- label: label,
334
- status: status,
335
- environment: environment
336
- }.compact
337
- req.url "#{@request_client.default_environment[:Default]}/v1/document-indexes/#{id}"
338
- end
339
- DocumentIndexRead.from_json(json_object: response.body)
545
+ response = @request_client.conn.post do | req |
546
+ unless request_options&.timeout_in_seconds.nil?
547
+ req.options.timeout = request_options.timeout_in_seconds
548
+ end
549
+ unless request_options&.api_key.nil?
550
+ req.headers["X-API-KEY"] = request_options.api_key
551
+ end
552
+ req.headers = { **(req.headers || {}), **@request_client.get_headers, **(request_options&.additional_headers || {}) }.compact
553
+ unless request_options.nil? || request_options&.additional_query_parameters.nil?
554
+ req.params = { **(request_options&.additional_query_parameters || {}) }.compact
555
+ end
556
+ unless request_options.nil? || request_options&.additional_body_parameters.nil?
557
+ req.body = { **(request_options&.additional_body_parameters || {}) }.compact
558
+ end
559
+ req.url "#{@request_client.get_url(environment: Default, request_options: request_options)}/v1/document-indexes/#{document_id}/documents/#{id}"
560
+ end
340
561
  end
341
562
  end
563
+ # Removes a Document from a Document Index without deleting the Document itself.
564
+ #
565
+ # @param document_id [String] Either the Vellum-generated ID or the originally supplied external_id that
566
+ # uniquely identifies the Document you'd like to remove.
567
+ # @param id [String] Either the Vellum-generated ID or the originally specified name that uniquely
568
+ # identifies the Document Index from which you'd like to remove a Document.
569
+ # @param request_options [Vellum::RequestOptions]
570
+ # @return [Void]
571
+ # @example
572
+ # api = Vellum::Client.new(
573
+ # base_url: "https://api.example.com",
574
+ # environment: Vellum::Environment::PRODUCTION,
575
+ # api_key: "YOUR_API_KEY"
576
+ # )
577
+ # api.document_indexes.remove_document(document_id: "document_id", id: "id")
578
+ def remove_document(document_id:, id:, request_options: nil)
579
+ Async do
580
+ response = @request_client.conn.delete do | req |
581
+ unless request_options&.timeout_in_seconds.nil?
582
+ req.options.timeout = request_options.timeout_in_seconds
583
+ end
584
+ unless request_options&.api_key.nil?
585
+ req.headers["X-API-KEY"] = request_options.api_key
586
+ end
587
+ req.headers = { **(req.headers || {}), **@request_client.get_headers, **(request_options&.additional_headers || {}) }.compact
588
+ unless request_options.nil? || request_options&.additional_query_parameters.nil?
589
+ req.params = { **(request_options&.additional_query_parameters || {}) }.compact
590
+ end
591
+ unless request_options.nil? || request_options&.additional_body_parameters.nil?
592
+ req.body = { **(request_options&.additional_body_parameters || {}) }.compact
342
593
  end
594
+ req.url "#{@request_client.get_url(environment: Documents, request_options: request_options)}/v1/document-indexes/#{document_id}/documents/#{id}"
343
595
  end
596
+ end
597
+ end
598
+ end
599
+ end