carbon_ruby_sdk 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (228) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +11 -0
  3. data/Gemfile.lock +89 -0
  4. data/README.md +2325 -0
  5. data/Rakefile +10 -0
  6. data/carbon_ruby_sdk.gemspec +39 -0
  7. data/header.png +0 -0
  8. data/lib/carbon_ruby_sdk/api/auth_api.rb +177 -0
  9. data/lib/carbon_ruby_sdk/api/data_sources_api.rb +217 -0
  10. data/lib/carbon_ruby_sdk/api/embeddings_api.rb +565 -0
  11. data/lib/carbon_ruby_sdk/api/files_api.rb +1526 -0
  12. data/lib/carbon_ruby_sdk/api/health_api.rb +92 -0
  13. data/lib/carbon_ruby_sdk/api/integrations_api.rb +2201 -0
  14. data/lib/carbon_ruby_sdk/api/organizations_api.rb +92 -0
  15. data/lib/carbon_ruby_sdk/api/users_api.rb +209 -0
  16. data/lib/carbon_ruby_sdk/api/utilities_api.rb +710 -0
  17. data/lib/carbon_ruby_sdk/api/webhooks_api.rb +296 -0
  18. data/lib/carbon_ruby_sdk/api_client.rb +436 -0
  19. data/lib/carbon_ruby_sdk/api_client_custom.rb +14 -0
  20. data/lib/carbon_ruby_sdk/api_error.rb +53 -0
  21. data/lib/carbon_ruby_sdk/configuration.rb +354 -0
  22. data/lib/carbon_ruby_sdk/models/add_webhook_props.rb +220 -0
  23. data/lib/carbon_ruby_sdk/models/body_create_upload_file_uploadfile_post.rb +220 -0
  24. data/lib/carbon_ruby_sdk/models/chunk_properties.rb +248 -0
  25. data/lib/carbon_ruby_sdk/models/chunk_properties_nullable.rb +248 -0
  26. data/lib/carbon_ruby_sdk/models/chunks_and_embeddings.rb +246 -0
  27. data/lib/carbon_ruby_sdk/models/chunks_and_embeddings_upload_input.rb +247 -0
  28. data/lib/carbon_ruby_sdk/models/data_source_last_sync_actions.rb +38 -0
  29. data/lib/carbon_ruby_sdk/models/data_source_sync_statuses.rb +38 -0
  30. data/lib/carbon_ruby_sdk/models/data_source_type.rb +76 -0
  31. data/lib/carbon_ruby_sdk/models/data_source_type_nullable.rb +76 -0
  32. data/lib/carbon_ruby_sdk/models/delete_files_query_input.rb +252 -0
  33. data/lib/carbon_ruby_sdk/models/directory_item.rb +266 -0
  34. data/lib/carbon_ruby_sdk/models/document_response.rb +328 -0
  35. data/lib/carbon_ruby_sdk/models/document_response_list.rb +222 -0
  36. data/lib/carbon_ruby_sdk/models/embedding_and_chunk.rb +256 -0
  37. data/lib/carbon_ruby_sdk/models/embedding_generators.rb +43 -0
  38. data/lib/carbon_ruby_sdk/models/embedding_generators_nullable.rb +43 -0
  39. data/lib/carbon_ruby_sdk/models/embedding_properties.rb +226 -0
  40. data/lib/carbon_ruby_sdk/models/embeddings_and_chunks_filters.rb +232 -0
  41. data/lib/carbon_ruby_sdk/models/embeddings_and_chunks_order_by_columns.rb +37 -0
  42. data/lib/carbon_ruby_sdk/models/embeddings_and_chunks_query_input.rb +262 -0
  43. data/lib/carbon_ruby_sdk/models/embeddings_and_chunks_response.rb +236 -0
  44. data/lib/carbon_ruby_sdk/models/external_file_sync_statuses.rb +43 -0
  45. data/lib/carbon_ruby_sdk/models/external_source_item.rb +420 -0
  46. data/lib/carbon_ruby_sdk/models/fetch_urls_response.rb +236 -0
  47. data/lib/carbon_ruby_sdk/models/file_content_types.rb +36 -0
  48. data/lib/carbon_ruby_sdk/models/file_content_types_nullable.rb +36 -0
  49. data/lib/carbon_ruby_sdk/models/file_formats.rb +76 -0
  50. data/lib/carbon_ruby_sdk/models/file_formats_nullable.rb +76 -0
  51. data/lib/carbon_ruby_sdk/models/file_statistics.rb +256 -0
  52. data/lib/carbon_ruby_sdk/models/file_statistics_nullable.rb +256 -0
  53. data/lib/carbon_ruby_sdk/models/fresh_desk_connect_request.rb +316 -0
  54. data/lib/carbon_ruby_sdk/models/generic_success_response.rb +220 -0
  55. data/lib/carbon_ruby_sdk/models/get_embedding_documents_body.rb +416 -0
  56. data/lib/carbon_ruby_sdk/models/gitbook_connect_request.rb +234 -0
  57. data/lib/carbon_ruby_sdk/models/gitbook_sync_request.rb +336 -0
  58. data/lib/carbon_ruby_sdk/models/gmail_sync_input.rb +301 -0
  59. data/lib/carbon_ruby_sdk/models/http_validation_error.rb +217 -0
  60. data/lib/carbon_ruby_sdk/models/hybrid_search_tuning_params.rb +234 -0
  61. data/lib/carbon_ruby_sdk/models/hybrid_search_tuning_params_nullable.rb +235 -0
  62. data/lib/carbon_ruby_sdk/models/list_data_source_items_request.rb +239 -0
  63. data/lib/carbon_ruby_sdk/models/list_data_source_items_response.rb +236 -0
  64. data/lib/carbon_ruby_sdk/models/list_request.rb +230 -0
  65. data/lib/carbon_ruby_sdk/models/list_response.rb +222 -0
  66. data/lib/carbon_ruby_sdk/models/location_property_inner.rb +226 -0
  67. data/lib/carbon_ruby_sdk/models/modify_user_configuration_input.rb +234 -0
  68. data/lib/carbon_ruby_sdk/models/o_auth_url_request.rb +362 -0
  69. data/lib/carbon_ruby_sdk/models/order_dir.rb +36 -0
  70. data/lib/carbon_ruby_sdk/models/organization_response.rb +362 -0
  71. data/lib/carbon_ruby_sdk/models/organization_user_data_source_api.rb +380 -0
  72. data/lib/carbon_ruby_sdk/models/organization_user_data_source_filters.rb +238 -0
  73. data/lib/carbon_ruby_sdk/models/organization_user_data_source_order_by_columns.rb +36 -0
  74. data/lib/carbon_ruby_sdk/models/organization_user_data_source_query_input.rb +246 -0
  75. data/lib/carbon_ruby_sdk/models/organization_user_data_source_response.rb +236 -0
  76. data/lib/carbon_ruby_sdk/models/organization_user_file_tag_create.rb +236 -0
  77. data/lib/carbon_ruby_sdk/models/organization_user_file_tags_remove.rb +236 -0
  78. data/lib/carbon_ruby_sdk/models/organization_user_files_to_sync_filters.rb +330 -0
  79. data/lib/carbon_ruby_sdk/models/organization_user_files_to_sync_order_by_types.rb +39 -0
  80. data/lib/carbon_ruby_sdk/models/organization_user_files_to_sync_query_input.rb +276 -0
  81. data/lib/carbon_ruby_sdk/models/outlook_sync_input.rb +313 -0
  82. data/lib/carbon_ruby_sdk/models/pagination.rb +228 -0
  83. data/lib/carbon_ruby_sdk/models/presigned_url_response.rb +220 -0
  84. data/lib/carbon_ruby_sdk/models/rank_property.rb +226 -0
  85. data/lib/carbon_ruby_sdk/models/raw_text_input.rb +295 -0
  86. data/lib/carbon_ruby_sdk/models/raw_transcript_property_inner_value.rb +226 -0
  87. data/lib/carbon_ruby_sdk/models/resync_file_query_input.rb +240 -0
  88. data/lib/carbon_ruby_sdk/models/revoke_access_token_input.rb +220 -0
  89. data/lib/carbon_ruby_sdk/models/rss_feed_input.rb +301 -0
  90. data/lib/carbon_ruby_sdk/models/s3_auth_request.rb +234 -0
  91. data/lib/carbon_ruby_sdk/models/s3_file_sync_input.rb +313 -0
  92. data/lib/carbon_ruby_sdk/models/s3_get_file_input.rb +226 -0
  93. data/lib/carbon_ruby_sdk/models/single_chunks_and_embeddings_upload_input.rb +256 -0
  94. data/lib/carbon_ruby_sdk/models/sitemap_scrape_request.rb +361 -0
  95. data/lib/carbon_ruby_sdk/models/source_property.rb +226 -0
  96. data/lib/carbon_ruby_sdk/models/sync_directory_request.rb +220 -0
  97. data/lib/carbon_ruby_sdk/models/sync_files_request.rb +328 -0
  98. data/lib/carbon_ruby_sdk/models/tags.rb +232 -0
  99. data/lib/carbon_ruby_sdk/models/tags1.rb +230 -0
  100. data/lib/carbon_ruby_sdk/models/text_embedding_generators.rb +42 -0
  101. data/lib/carbon_ruby_sdk/models/token_response.rb +234 -0
  102. data/lib/carbon_ruby_sdk/models/upload_file_from_url_input.rb +326 -0
  103. data/lib/carbon_ruby_sdk/models/user_file.rb +524 -0
  104. data/lib/carbon_ruby_sdk/models/user_files_v2.rb +236 -0
  105. data/lib/carbon_ruby_sdk/models/user_request_content.rb +220 -0
  106. data/lib/carbon_ruby_sdk/models/user_response.rb +354 -0
  107. data/lib/carbon_ruby_sdk/models/validation_error.rb +250 -0
  108. data/lib/carbon_ruby_sdk/models/webhook.rb +290 -0
  109. data/lib/carbon_ruby_sdk/models/webhook_filters.rb +218 -0
  110. data/lib/carbon_ruby_sdk/models/webhook_no_key.rb +276 -0
  111. data/lib/carbon_ruby_sdk/models/webhook_order_by_columns.rb +36 -0
  112. data/lib/carbon_ruby_sdk/models/webhook_query_input.rb +246 -0
  113. data/lib/carbon_ruby_sdk/models/webhook_query_response.rb +236 -0
  114. data/lib/carbon_ruby_sdk/models/webscrape_request.rb +375 -0
  115. data/lib/carbon_ruby_sdk/models/white_labeling_response.rb +234 -0
  116. data/lib/carbon_ruby_sdk/models/youtube_transcript_response.rb +252 -0
  117. data/lib/carbon_ruby_sdk/version.rb +11 -0
  118. data/lib/carbon_ruby_sdk.rb +207 -0
  119. data/spec/api/auth_api_spec.rb +50 -0
  120. data/spec/api/data_sources_api_spec.rb +51 -0
  121. data/spec/api/embeddings_api_spec.rb +63 -0
  122. data/spec/api/files_api_spec.rb +178 -0
  123. data/spec/api/health_api_spec.rb +39 -0
  124. data/spec/api/integrations_api_spec.rb +226 -0
  125. data/spec/api/organizations_api_spec.rb +39 -0
  126. data/spec/api/users_api_spec.rb +51 -0
  127. data/spec/api/utilities_api_spec.rb +102 -0
  128. data/spec/api/webhooks_api_spec.rb +62 -0
  129. data/spec/api_client_spec.rb +191 -0
  130. data/spec/configuration_spec.rb +38 -0
  131. data/spec/getting_started_spec.rb +196 -0
  132. data/spec/models/add_webhook_props_spec.rb +28 -0
  133. data/spec/models/body_create_upload_file_uploadfile_post_spec.rb +28 -0
  134. data/spec/models/chunk_properties_nullable_spec.rb +40 -0
  135. data/spec/models/chunk_properties_spec.rb +40 -0
  136. data/spec/models/chunks_and_embeddings_spec.rb +40 -0
  137. data/spec/models/chunks_and_embeddings_upload_input_spec.rb +40 -0
  138. data/spec/models/data_source_last_sync_actions_spec.rb +22 -0
  139. data/spec/models/data_source_sync_statuses_spec.rb +22 -0
  140. data/spec/models/data_source_type_nullable_spec.rb +22 -0
  141. data/spec/models/data_source_type_spec.rb +22 -0
  142. data/spec/models/delete_files_query_input_spec.rb +46 -0
  143. data/spec/models/directory_item_spec.rb +46 -0
  144. data/spec/models/document_response_list_spec.rb +28 -0
  145. data/spec/models/document_response_spec.rb +88 -0
  146. data/spec/models/embedding_and_chunk_spec.rb +46 -0
  147. data/spec/models/embedding_generators_nullable_spec.rb +22 -0
  148. data/spec/models/embedding_generators_spec.rb +22 -0
  149. data/spec/models/embedding_properties_spec.rb +34 -0
  150. data/spec/models/embeddings_and_chunks_filters_spec.rb +34 -0
  151. data/spec/models/embeddings_and_chunks_order_by_columns_spec.rb +22 -0
  152. data/spec/models/embeddings_and_chunks_query_input_spec.rb +52 -0
  153. data/spec/models/embeddings_and_chunks_response_spec.rb +34 -0
  154. data/spec/models/external_file_sync_statuses_spec.rb +22 -0
  155. data/spec/models/external_source_item_spec.rb +124 -0
  156. data/spec/models/fetch_urls_response_spec.rb +34 -0
  157. data/spec/models/file_content_types_nullable_spec.rb +22 -0
  158. data/spec/models/file_content_types_spec.rb +22 -0
  159. data/spec/models/file_formats_nullable_spec.rb +22 -0
  160. data/spec/models/file_formats_spec.rb +22 -0
  161. data/spec/models/file_statistics_nullable_spec.rb +52 -0
  162. data/spec/models/file_statistics_spec.rb +52 -0
  163. data/spec/models/fresh_desk_connect_request_spec.rb +76 -0
  164. data/spec/models/generic_success_response_spec.rb +28 -0
  165. data/spec/models/get_embedding_documents_body_spec.rb +106 -0
  166. data/spec/models/gitbook_connect_request_spec.rb +34 -0
  167. data/spec/models/gitbook_sync_request_spec.rb +76 -0
  168. data/spec/models/gmail_sync_input_spec.rb +70 -0
  169. data/spec/models/http_validation_error_spec.rb +28 -0
  170. data/spec/models/hybrid_search_tuning_params_nullable_spec.rb +34 -0
  171. data/spec/models/hybrid_search_tuning_params_spec.rb +34 -0
  172. data/spec/models/list_data_source_items_request_spec.rb +40 -0
  173. data/spec/models/list_data_source_items_response_spec.rb +34 -0
  174. data/spec/models/list_request_spec.rb +34 -0
  175. data/spec/models/list_response_spec.rb +28 -0
  176. data/spec/models/location_property_inner_spec.rb +22 -0
  177. data/spec/models/modify_user_configuration_input_spec.rb +34 -0
  178. data/spec/models/o_auth_url_request_spec.rb +106 -0
  179. data/spec/models/order_dir_spec.rb +22 -0
  180. data/spec/models/organization_response_spec.rb +94 -0
  181. data/spec/models/organization_user_data_source_api_spec.rb +100 -0
  182. data/spec/models/organization_user_data_source_filters_spec.rb +40 -0
  183. data/spec/models/organization_user_data_source_order_by_columns_spec.rb +22 -0
  184. data/spec/models/organization_user_data_source_query_input_spec.rb +46 -0
  185. data/spec/models/organization_user_data_source_response_spec.rb +34 -0
  186. data/spec/models/organization_user_file_tag_create_spec.rb +34 -0
  187. data/spec/models/organization_user_file_tags_remove_spec.rb +34 -0
  188. data/spec/models/organization_user_files_to_sync_filters_spec.rb +88 -0
  189. data/spec/models/organization_user_files_to_sync_order_by_types_spec.rb +22 -0
  190. data/spec/models/organization_user_files_to_sync_query_input_spec.rb +64 -0
  191. data/spec/models/outlook_sync_input_spec.rb +76 -0
  192. data/spec/models/pagination_spec.rb +34 -0
  193. data/spec/models/presigned_url_response_spec.rb +28 -0
  194. data/spec/models/rank_property_spec.rb +22 -0
  195. data/spec/models/raw_text_input_spec.rb +70 -0
  196. data/spec/models/raw_transcript_property_inner_value_spec.rb +22 -0
  197. data/spec/models/resync_file_query_input_spec.rb +40 -0
  198. data/spec/models/revoke_access_token_input_spec.rb +28 -0
  199. data/spec/models/rss_feed_input_spec.rb +70 -0
  200. data/spec/models/s3_auth_request_spec.rb +34 -0
  201. data/spec/models/s3_file_sync_input_spec.rb +76 -0
  202. data/spec/models/s3_get_file_input_spec.rb +34 -0
  203. data/spec/models/single_chunks_and_embeddings_upload_input_spec.rb +46 -0
  204. data/spec/models/sitemap_scrape_request_spec.rb +100 -0
  205. data/spec/models/source_property_spec.rb +22 -0
  206. data/spec/models/sync_directory_request_spec.rb +28 -0
  207. data/spec/models/sync_files_request_spec.rb +82 -0
  208. data/spec/models/tags1_spec.rb +22 -0
  209. data/spec/models/tags_spec.rb +22 -0
  210. data/spec/models/text_embedding_generators_spec.rb +22 -0
  211. data/spec/models/token_response_spec.rb +34 -0
  212. data/spec/models/upload_file_from_url_input_spec.rb +88 -0
  213. data/spec/models/user_file_spec.rb +190 -0
  214. data/spec/models/user_files_v2_spec.rb +34 -0
  215. data/spec/models/user_request_content_spec.rb +28 -0
  216. data/spec/models/user_response_spec.rb +88 -0
  217. data/spec/models/validation_error_spec.rb +40 -0
  218. data/spec/models/webhook_filters_spec.rb +28 -0
  219. data/spec/models/webhook_no_key_spec.rb +52 -0
  220. data/spec/models/webhook_order_by_columns_spec.rb +22 -0
  221. data/spec/models/webhook_query_input_spec.rb +46 -0
  222. data/spec/models/webhook_query_response_spec.rb +34 -0
  223. data/spec/models/webhook_spec.rb +58 -0
  224. data/spec/models/webscrape_request_spec.rb +106 -0
  225. data/spec/models/white_labeling_response_spec.rb +34 -0
  226. data/spec/models/youtube_transcript_response_spec.rb +46 -0
  227. data/spec/spec_helper.rb +107 -0
  228. metadata +440 -0
@@ -0,0 +1,710 @@
1
+ =begin
2
+ #Carbon
3
+
4
+ #Connect external data to LLMs, no matter the source.
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+ =end
8
+
9
+ require 'cgi'
10
+
11
+ module Carbon
12
+ class UtilitiesApi
13
+ attr_accessor :api_client
14
+
15
+ def initialize(api_client = ApiClient.default)
16
+ @api_client = api_client
17
+ end
18
+
19
+ # Fetch Urls
20
+ #
21
+ # Extracts all URLs from a webpage.
22
+ #
23
+ # Args:
24
+ # url (str): URL of the webpage
25
+ #
26
+ # Returns:
27
+ # FetchURLsResponse: A response object with a list of URLs extracted from the webpage and the webpage content.
28
+ #
29
+ # @param url [String]
30
+ # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
31
+ def fetch_urls(url:, extra: {})
32
+ api_response = fetch_urls_with_http_info_impl(url, extra)
33
+ api_response.data
34
+ end
35
+
36
+ # Fetch Urls
37
+ #
38
+ # Extracts all URLs from a webpage.
39
+ #
40
+ # Args:
41
+ # url (str): URL of the webpage
42
+ #
43
+ # Returns:
44
+ # FetchURLsResponse: A response object with a list of URLs extracted from the webpage and the webpage content.
45
+ #
46
+ # @param url [String]
47
+ # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
48
+ def fetch_urls_with_http_info(url:, extra: {})
49
+ fetch_urls_with_http_info_impl(url, extra)
50
+ end
51
+
52
+ # Fetch Urls
53
+ # Extracts all URLs from a webpage. Args: url (str): URL of the webpage Returns: FetchURLsResponse: A response object with a list of URLs extracted from the webpage and the webpage content.
54
+ # @param url [String]
55
+ # @param [Hash] opts the optional parameters
56
+ # @return [FetchURLsResponse]
57
+ private def fetch_urls_impl(url, opts = {})
58
+ data, _status_code, _headers = fetch_urls_with_http_info(url, opts)
59
+ data
60
+ end
61
+
62
+ # Fetch Urls
63
+ # Extracts all URLs from a webpage. Args: url (str): URL of the webpage Returns: FetchURLsResponse: A response object with a list of URLs extracted from the webpage and the webpage content.
64
+ # @param url [String]
65
+ # @param [Hash] opts the optional parameters
66
+ # @return [APIResponse] data is FetchURLsResponse, status code, headers and response
67
+ private def fetch_urls_with_http_info_impl(url, opts = {})
68
+ if @api_client.config.debugging
69
+ @api_client.config.logger.debug 'Calling API: UtilitiesApi.fetch_urls ...'
70
+ end
71
+ # verify the required parameter 'url' is set
72
+ if @api_client.config.client_side_validation && url.nil?
73
+ fail ArgumentError, "Missing the required parameter 'url' when calling UtilitiesApi.fetch_urls"
74
+ end
75
+ # resource path
76
+ local_var_path = '/fetch_urls'
77
+
78
+ # query parameters
79
+ query_params = opts[:query_params] || {}
80
+ query_params[:'url'] = url
81
+
82
+ # header parameters
83
+ header_params = opts[:header_params] || {}
84
+ # HTTP header 'Accept' (if needed)
85
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
86
+
87
+ # form parameters
88
+ form_params = opts[:form_params] || {}
89
+
90
+ # http body (model)
91
+ post_body = opts[:debug_body]
92
+
93
+ # return_type
94
+ return_type = opts[:debug_return_type] || 'FetchURLsResponse'
95
+
96
+ # auth_names
97
+ auth_names = opts[:debug_auth_names] || ['accessToken', 'apiKey', 'customerId']
98
+
99
+ new_options = opts.merge(
100
+ :operation => :"UtilitiesApi.fetch_urls",
101
+ :header_params => header_params,
102
+ :query_params => query_params,
103
+ :form_params => form_params,
104
+ :body => post_body,
105
+ :auth_names => auth_names,
106
+ :return_type => return_type
107
+ )
108
+
109
+ data, status_code, headers, response = @api_client.call_api(:GET, local_var_path, new_options)
110
+ if @api_client.config.debugging
111
+ @api_client.config.logger.debug "API called: UtilitiesApi#fetch_urls\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
112
+ end
113
+ APIResponse::new(data, status_code, headers, response)
114
+ end
115
+
116
+
117
+ # Fetch Youtube Transcripts
118
+ #
119
+ # Fetches english transcripts from YouTube videos.
120
+ #
121
+ # Args:
122
+ # id (str): The ID of the YouTube video.
123
+ # raw (bool): Whether to return the raw transcript or not. Defaults to False.
124
+ #
125
+ # Returns:
126
+ # dict: A dictionary with the transcript of the YouTube video.
127
+ #
128
+ # @param id [String]
129
+ # @param raw [Boolean]
130
+ # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
131
+ def fetch_youtube_transcripts(id:, raw: false, extra: {})
132
+ extra[:raw] = raw if raw != SENTINEL
133
+ api_response = fetch_youtube_transcripts_with_http_info_impl(id, extra)
134
+ api_response.data
135
+ end
136
+
137
+ # Fetch Youtube Transcripts
138
+ #
139
+ # Fetches english transcripts from YouTube videos.
140
+ #
141
+ # Args:
142
+ # id (str): The ID of the YouTube video.
143
+ # raw (bool): Whether to return the raw transcript or not. Defaults to False.
144
+ #
145
+ # Returns:
146
+ # dict: A dictionary with the transcript of the YouTube video.
147
+ #
148
+ # @param id [String]
149
+ # @param raw [Boolean]
150
+ # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
151
+ def fetch_youtube_transcripts_with_http_info(id:, raw: false, extra: {})
152
+ extra[:raw] = raw if raw != SENTINEL
153
+ fetch_youtube_transcripts_with_http_info_impl(id, extra)
154
+ end
155
+
156
+ # Fetch Youtube Transcripts
157
+ # Fetches english transcripts from YouTube videos. Args: id (str): The ID of the YouTube video. raw (bool): Whether to return the raw transcript or not. Defaults to False. Returns: dict: A dictionary with the transcript of the YouTube video.
158
+ # @param id [String]
159
+ # @param [Hash] opts the optional parameters
160
+ # @option opts [Boolean] :raw (default to false)
161
+ # @return [YoutubeTranscriptResponse]
162
+ private def fetch_youtube_transcripts_impl(id, opts = {})
163
+ data, _status_code, _headers = fetch_youtube_transcripts_with_http_info(id, opts)
164
+ data
165
+ end
166
+
167
+ # Fetch Youtube Transcripts
168
+ # Fetches english transcripts from YouTube videos. Args: id (str): The ID of the YouTube video. raw (bool): Whether to return the raw transcript or not. Defaults to False. Returns: dict: A dictionary with the transcript of the YouTube video.
169
+ # @param id [String]
170
+ # @param [Hash] opts the optional parameters
171
+ # @option opts [Boolean] :raw (default to false)
172
+ # @return [APIResponse] data is YoutubeTranscriptResponse, status code, headers and response
173
+ private def fetch_youtube_transcripts_with_http_info_impl(id, opts = {})
174
+ if @api_client.config.debugging
175
+ @api_client.config.logger.debug 'Calling API: UtilitiesApi.fetch_youtube_transcripts ...'
176
+ end
177
+ # verify the required parameter 'id' is set
178
+ if @api_client.config.client_side_validation && id.nil?
179
+ fail ArgumentError, "Missing the required parameter 'id' when calling UtilitiesApi.fetch_youtube_transcripts"
180
+ end
181
+ # resource path
182
+ local_var_path = '/fetch_youtube_transcript'
183
+
184
+ # query parameters
185
+ query_params = opts[:query_params] || {}
186
+ query_params[:'id'] = id
187
+ query_params[:'raw'] = opts[:'raw'] if !opts[:'raw'].nil?
188
+
189
+ # header parameters
190
+ header_params = opts[:header_params] || {}
191
+ # HTTP header 'Accept' (if needed)
192
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
193
+
194
+ # form parameters
195
+ form_params = opts[:form_params] || {}
196
+
197
+ # http body (model)
198
+ post_body = opts[:debug_body]
199
+
200
+ # return_type
201
+ return_type = opts[:debug_return_type] || 'YoutubeTranscriptResponse'
202
+
203
+ # auth_names
204
+ auth_names = opts[:debug_auth_names] || ['accessToken', 'apiKey', 'customerId']
205
+
206
+ new_options = opts.merge(
207
+ :operation => :"UtilitiesApi.fetch_youtube_transcripts",
208
+ :header_params => header_params,
209
+ :query_params => query_params,
210
+ :form_params => form_params,
211
+ :body => post_body,
212
+ :auth_names => auth_names,
213
+ :return_type => return_type
214
+ )
215
+
216
+ data, status_code, headers, response = @api_client.call_api(:GET, local_var_path, new_options)
217
+ if @api_client.config.debugging
218
+ @api_client.config.logger.debug "API called: UtilitiesApi#fetch_youtube_transcripts\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
219
+ end
220
+ APIResponse::new(data, status_code, headers, response)
221
+ end
222
+
223
+
224
+ # Sitemap
225
+ #
226
+ # Retrieves all URLs from a sitemap, which can subsequently be utilized with our `web_scrape` endpoint.
227
+ #
228
+ # <!--Args:
229
+ # url (str): URL of the sitemap
230
+ #
231
+ # Returns:
232
+ # dict: A dictionary with a list of URLs extracted from the sitemap.-->
233
+ #
234
+ # @param url [String]
235
+ # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
236
+ def process_sitemap(url:, extra: {})
237
+ api_response = process_sitemap_with_http_info_impl(url, extra)
238
+ api_response.data
239
+ end
240
+
241
+ # Sitemap
242
+ #
243
+ # Retrieves all URLs from a sitemap, which can subsequently be utilized with our `web_scrape` endpoint.
244
+ #
245
+ # <!--Args:
246
+ # url (str): URL of the sitemap
247
+ #
248
+ # Returns:
249
+ # dict: A dictionary with a list of URLs extracted from the sitemap.-->
250
+ #
251
+ # @param url [String]
252
+ # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
253
+ def process_sitemap_with_http_info(url:, extra: {})
254
+ process_sitemap_with_http_info_impl(url, extra)
255
+ end
256
+
257
+ # Sitemap
258
+ # Retrieves all URLs from a sitemap, which can subsequently be utilized with our `web_scrape` endpoint. <!--Args: url (str): URL of the sitemap Returns: dict: A dictionary with a list of URLs extracted from the sitemap.-->
259
+ # @param url [String]
260
+ # @param [Hash] opts the optional parameters
261
+ # @return [Object]
262
+ private def process_sitemap_impl(url, opts = {})
263
+ data, _status_code, _headers = process_sitemap_with_http_info(url, opts)
264
+ data
265
+ end
266
+
267
+ # Sitemap
268
+ # Retrieves all URLs from a sitemap, which can subsequently be utilized with our &#x60;web_scrape&#x60; endpoint. &lt;!--Args: url (str): URL of the sitemap Returns: dict: A dictionary with a list of URLs extracted from the sitemap.--&gt;
269
+ # @param url [String]
270
+ # @param [Hash] opts the optional parameters
271
+ # @return [APIResponse] data is Object, status code, headers and response
272
+ private def process_sitemap_with_http_info_impl(url, opts = {})
273
+ if @api_client.config.debugging
274
+ @api_client.config.logger.debug 'Calling API: UtilitiesApi.process_sitemap ...'
275
+ end
276
+ # verify the required parameter 'url' is set
277
+ if @api_client.config.client_side_validation && url.nil?
278
+ fail ArgumentError, "Missing the required parameter 'url' when calling UtilitiesApi.process_sitemap"
279
+ end
280
+ # resource path
281
+ local_var_path = '/process_sitemap'
282
+
283
+ # query parameters
284
+ query_params = opts[:query_params] || {}
285
+ query_params[:'url'] = url
286
+
287
+ # header parameters
288
+ header_params = opts[:header_params] || {}
289
+ # HTTP header 'Accept' (if needed)
290
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
291
+
292
+ # form parameters
293
+ form_params = opts[:form_params] || {}
294
+
295
+ # http body (model)
296
+ post_body = opts[:debug_body]
297
+
298
+ # return_type
299
+ return_type = opts[:debug_return_type] || 'Object'
300
+
301
+ # auth_names
302
+ auth_names = opts[:debug_auth_names] || ['accessToken', 'apiKey', 'customerId']
303
+
304
+ new_options = opts.merge(
305
+ :operation => :"UtilitiesApi.process_sitemap",
306
+ :header_params => header_params,
307
+ :query_params => query_params,
308
+ :form_params => form_params,
309
+ :body => post_body,
310
+ :auth_names => auth_names,
311
+ :return_type => return_type
312
+ )
313
+
314
+ data, status_code, headers, response = @api_client.call_api(:GET, local_var_path, new_options)
315
+ if @api_client.config.debugging
316
+ @api_client.config.logger.debug "API called: UtilitiesApi#process_sitemap\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
317
+ end
318
+ APIResponse::new(data, status_code, headers, response)
319
+ end
320
+
321
+
322
+ # Scrape Sitemap
323
+ #
324
+ # Extracts all URLs from a sitemap and performs a web scrape on each of them.
325
+ #
326
+ # Args:
327
+ # sitemap_url (str): URL of the sitemap
328
+ #
329
+ # Returns:
330
+ # dict: A response object with the status of the scraping job message.-->
331
+ #
332
+ # @param url [String]
333
+ # @param tags [Hash<String, Tags1>]
334
+ # @param max_pages_to_scrape [Integer]
335
+ # @param chunk_size [Integer]
336
+ # @param chunk_overlap [Integer]
337
+ # @param skip_embedding_generation [Boolean]
338
+ # @param enable_auto_sync [Boolean]
339
+ # @param generate_sparse_vectors [Boolean]
340
+ # @param prepend_filename_to_chunks [Boolean]
341
+ # @param html_tags_to_skip [Array<String>]
342
+ # @param css_classes_to_skip [Array<String>]
343
+ # @param css_selectors_to_skip [Array<String>]
344
+ # @param embedding_model [EmbeddingGenerators]
345
+ # @param body [SitemapScrapeRequest]
346
+ # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
347
+ def scrape_sitemap(url:, tags: SENTINEL, max_pages_to_scrape: SENTINEL, chunk_size: 1500, chunk_overlap: 20, skip_embedding_generation: false, enable_auto_sync: false, generate_sparse_vectors: false, prepend_filename_to_chunks: false, html_tags_to_skip: SENTINEL, css_classes_to_skip: SENTINEL, css_selectors_to_skip: SENTINEL, embedding_model: 'OPENAI', extra: {})
348
+ _body = {}
349
+ _body[:tags] = tags if tags != SENTINEL
350
+ _body[:url] = url if url != SENTINEL
351
+ _body[:max_pages_to_scrape] = max_pages_to_scrape if max_pages_to_scrape != SENTINEL
352
+ _body[:chunk_size] = chunk_size if chunk_size != SENTINEL
353
+ _body[:chunk_overlap] = chunk_overlap if chunk_overlap != SENTINEL
354
+ _body[:skip_embedding_generation] = skip_embedding_generation if skip_embedding_generation != SENTINEL
355
+ _body[:enable_auto_sync] = enable_auto_sync if enable_auto_sync != SENTINEL
356
+ _body[:generate_sparse_vectors] = generate_sparse_vectors if generate_sparse_vectors != SENTINEL
357
+ _body[:prepend_filename_to_chunks] = prepend_filename_to_chunks if prepend_filename_to_chunks != SENTINEL
358
+ _body[:html_tags_to_skip] = html_tags_to_skip if html_tags_to_skip != SENTINEL
359
+ _body[:css_classes_to_skip] = css_classes_to_skip if css_classes_to_skip != SENTINEL
360
+ _body[:css_selectors_to_skip] = css_selectors_to_skip if css_selectors_to_skip != SENTINEL
361
+ _body[:embedding_model] = embedding_model if embedding_model != SENTINEL
362
+ sitemap_scrape_request = _body
363
+ api_response = scrape_sitemap_with_http_info_impl(sitemap_scrape_request, extra)
364
+ api_response.data
365
+ end
366
+
367
+ # Scrape Sitemap
368
+ #
369
+ # Extracts all URLs from a sitemap and performs a web scrape on each of them.
370
+ #
371
+ # Args:
372
+ # sitemap_url (str): URL of the sitemap
373
+ #
374
+ # Returns:
375
+ # dict: A response object with the status of the scraping job message.-->
376
+ #
377
+ # @param url [String]
378
+ # @param tags [Hash<String, Tags1>]
379
+ # @param max_pages_to_scrape [Integer]
380
+ # @param chunk_size [Integer]
381
+ # @param chunk_overlap [Integer]
382
+ # @param skip_embedding_generation [Boolean]
383
+ # @param enable_auto_sync [Boolean]
384
+ # @param generate_sparse_vectors [Boolean]
385
+ # @param prepend_filename_to_chunks [Boolean]
386
+ # @param html_tags_to_skip [Array<String>]
387
+ # @param css_classes_to_skip [Array<String>]
388
+ # @param css_selectors_to_skip [Array<String>]
389
+ # @param embedding_model [EmbeddingGenerators]
390
+ # @param body [SitemapScrapeRequest]
391
+ # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
392
+ def scrape_sitemap_with_http_info(url:, tags: SENTINEL, max_pages_to_scrape: SENTINEL, chunk_size: 1500, chunk_overlap: 20, skip_embedding_generation: false, enable_auto_sync: false, generate_sparse_vectors: false, prepend_filename_to_chunks: false, html_tags_to_skip: SENTINEL, css_classes_to_skip: SENTINEL, css_selectors_to_skip: SENTINEL, embedding_model: 'OPENAI', extra: {})
393
+ _body = {}
394
+ _body[:tags] = tags if tags != SENTINEL
395
+ _body[:url] = url if url != SENTINEL
396
+ _body[:max_pages_to_scrape] = max_pages_to_scrape if max_pages_to_scrape != SENTINEL
397
+ _body[:chunk_size] = chunk_size if chunk_size != SENTINEL
398
+ _body[:chunk_overlap] = chunk_overlap if chunk_overlap != SENTINEL
399
+ _body[:skip_embedding_generation] = skip_embedding_generation if skip_embedding_generation != SENTINEL
400
+ _body[:enable_auto_sync] = enable_auto_sync if enable_auto_sync != SENTINEL
401
+ _body[:generate_sparse_vectors] = generate_sparse_vectors if generate_sparse_vectors != SENTINEL
402
+ _body[:prepend_filename_to_chunks] = prepend_filename_to_chunks if prepend_filename_to_chunks != SENTINEL
403
+ _body[:html_tags_to_skip] = html_tags_to_skip if html_tags_to_skip != SENTINEL
404
+ _body[:css_classes_to_skip] = css_classes_to_skip if css_classes_to_skip != SENTINEL
405
+ _body[:css_selectors_to_skip] = css_selectors_to_skip if css_selectors_to_skip != SENTINEL
406
+ _body[:embedding_model] = embedding_model if embedding_model != SENTINEL
407
+ sitemap_scrape_request = _body
408
+ scrape_sitemap_with_http_info_impl(sitemap_scrape_request, extra)
409
+ end
410
+
411
+ # Scrape Sitemap
412
+ # Extracts all URLs from a sitemap and performs a web scrape on each of them. Args: sitemap_url (str): URL of the sitemap Returns: dict: A response object with the status of the scraping job message.-->
413
+ # @param sitemap_scrape_request [SitemapScrapeRequest]
414
+ # @param [Hash] opts the optional parameters
415
+ # @return [Object]
416
+ private def scrape_sitemap_impl(sitemap_scrape_request, opts = {})
417
+ data, _status_code, _headers = scrape_sitemap_with_http_info(sitemap_scrape_request, opts)
418
+ data
419
+ end
420
+
421
+ # Scrape Sitemap
422
+ # Extracts all URLs from a sitemap and performs a web scrape on each of them. Args: sitemap_url (str): URL of the sitemap Returns: dict: A response object with the status of the scraping job message.--&gt;
423
+ # @param sitemap_scrape_request [SitemapScrapeRequest]
424
+ # @param [Hash] opts the optional parameters
425
+ # @return [APIResponse] data is Object, status code, headers and response
426
+ private def scrape_sitemap_with_http_info_impl(sitemap_scrape_request, opts = {})
427
+ if @api_client.config.debugging
428
+ @api_client.config.logger.debug 'Calling API: UtilitiesApi.scrape_sitemap ...'
429
+ end
430
+ # verify the required parameter 'sitemap_scrape_request' is set
431
+ if @api_client.config.client_side_validation && sitemap_scrape_request.nil?
432
+ fail ArgumentError, "Missing the required parameter 'sitemap_scrape_request' when calling UtilitiesApi.scrape_sitemap"
433
+ end
434
+ # resource path
435
+ local_var_path = '/scrape_sitemap'
436
+
437
+ # query parameters
438
+ query_params = opts[:query_params] || {}
439
+
440
+ # header parameters
441
+ header_params = opts[:header_params] || {}
442
+ # HTTP header 'Accept' (if needed)
443
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
444
+ # HTTP header 'Content-Type'
445
+ content_type = @api_client.select_header_content_type(['application/json'])
446
+ if !content_type.nil?
447
+ header_params['Content-Type'] = content_type
448
+ end
449
+
450
+ # form parameters
451
+ form_params = opts[:form_params] || {}
452
+
453
+ # http body (model)
454
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(sitemap_scrape_request)
455
+
456
+ # return_type
457
+ return_type = opts[:debug_return_type] || 'Object'
458
+
459
+ # auth_names
460
+ auth_names = opts[:debug_auth_names] || ['accessToken', 'apiKey', 'customerId']
461
+
462
+ new_options = opts.merge(
463
+ :operation => :"UtilitiesApi.scrape_sitemap",
464
+ :header_params => header_params,
465
+ :query_params => query_params,
466
+ :form_params => form_params,
467
+ :body => post_body,
468
+ :auth_names => auth_names,
469
+ :return_type => return_type
470
+ )
471
+
472
+ data, status_code, headers, response = @api_client.call_api(:POST, local_var_path, new_options)
473
+ if @api_client.config.debugging
474
+ @api_client.config.logger.debug "API called: UtilitiesApi#scrape_sitemap\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
475
+ end
476
+ APIResponse::new(data, status_code, headers, response)
477
+ end
478
+
479
+
480
+ # Web Scrape
481
+ #
482
+ # Conduct a web scrape on a given webpage URL. Our web scraper is fully compatible with JavaScript and supports recursion depth, enabling you to efficiently extract all content from the target website.
483
+ #
484
+ # <!--Args:
485
+ # scraping_requests (List[WebscrapeRequest]): A list of WebscrapeRequest objects.
486
+ #
487
+ #
488
+ # Returns:
489
+ # dict: A response object with the status of the scraping job message.-->
490
+ #
491
+ # @param body [Array<WebscrapeRequest>]
492
+ # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
493
+ def scrape_web(body:, extra: {})
494
+ webscrape_request = body
495
+ api_response = scrape_web_with_http_info_impl(webscrape_request, extra)
496
+ api_response.data
497
+ end
498
+
499
+ # Web Scrape
500
+ #
501
+ # Conduct a web scrape on a given webpage URL. Our web scraper is fully compatible with JavaScript and supports recursion depth, enabling you to efficiently extract all content from the target website.
502
+ #
503
+ # <!--Args:
504
+ # scraping_requests (List[WebscrapeRequest]): A list of WebscrapeRequest objects.
505
+ #
506
+ #
507
+ # Returns:
508
+ # dict: A response object with the status of the scraping job message.-->
509
+ #
510
+ # @param body [Array<WebscrapeRequest>]
511
+ # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
512
+ def scrape_web_with_http_info(body:, extra: {})
513
+ webscrape_request = body
514
+ scrape_web_with_http_info_impl(webscrape_request, extra)
515
+ end
516
+
517
+ # Web Scrape
518
+ # Conduct a web scrape on a given webpage URL. Our web scraper is fully compatible with JavaScript and supports recursion depth, enabling you to efficiently extract all content from the target website. <!--Args: scraping_requests (List[WebscrapeRequest]): A list of WebscrapeRequest objects. Returns: dict: A response object with the status of the scraping job message.-->
519
+ # @param webscrape_request [Array<WebscrapeRequest>]
520
+ # @param [Hash] opts the optional parameters
521
+ # @return [Object]
522
+ private def scrape_web_impl(webscrape_request, opts = {})
523
+ data, _status_code, _headers = scrape_web_with_http_info(webscrape_request, opts)
524
+ data
525
+ end
526
+
527
+ # Web Scrape
528
+ # Conduct a web scrape on a given webpage URL. Our web scraper is fully compatible with JavaScript and supports recursion depth, enabling you to efficiently extract all content from the target website. &lt;!--Args: scraping_requests (List[WebscrapeRequest]): A list of WebscrapeRequest objects. Returns: dict: A response object with the status of the scraping job message.--&gt;
529
+ # @param webscrape_request [Array<WebscrapeRequest>]
530
+ # @param [Hash] opts the optional parameters
531
+ # @return [APIResponse] data is Object, status code, headers and response
532
+ private def scrape_web_with_http_info_impl(webscrape_request, opts = {})
533
+ if @api_client.config.debugging
534
+ @api_client.config.logger.debug 'Calling API: UtilitiesApi.scrape_web ...'
535
+ end
536
+ # verify the required parameter 'webscrape_request' is set
537
+ if @api_client.config.client_side_validation && webscrape_request.nil?
538
+ fail ArgumentError, "Missing the required parameter 'webscrape_request' when calling UtilitiesApi.scrape_web"
539
+ end
540
+ # resource path
541
+ local_var_path = '/web_scrape'
542
+
543
+ # query parameters
544
+ query_params = opts[:query_params] || {}
545
+
546
+ # header parameters
547
+ header_params = opts[:header_params] || {}
548
+ # HTTP header 'Accept' (if needed)
549
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
550
+ # HTTP header 'Content-Type'
551
+ content_type = @api_client.select_header_content_type(['application/json'])
552
+ if !content_type.nil?
553
+ header_params['Content-Type'] = content_type
554
+ end
555
+
556
+ # form parameters
557
+ form_params = opts[:form_params] || {}
558
+
559
+ # http body (model)
560
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(webscrape_request)
561
+
562
+ # return_type
563
+ return_type = opts[:debug_return_type] || 'Object'
564
+
565
+ # auth_names
566
+ auth_names = opts[:debug_auth_names] || ['accessToken', 'apiKey', 'customerId']
567
+
568
+ new_options = opts.merge(
569
+ :operation => :"UtilitiesApi.scrape_web",
570
+ :header_params => header_params,
571
+ :query_params => query_params,
572
+ :form_params => form_params,
573
+ :body => post_body,
574
+ :auth_names => auth_names,
575
+ :return_type => return_type
576
+ )
577
+
578
+ data, status_code, headers, response = @api_client.call_api(:POST, local_var_path, new_options)
579
+ if @api_client.config.debugging
580
+ @api_client.config.logger.debug "API called: UtilitiesApi#scrape_web\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
581
+ end
582
+ APIResponse::new(data, status_code, headers, response)
583
+ end
584
+
585
+
586
+ # Search Urls
587
+ #
588
+ # Perform a web search and obtain a list of relevant URLs.
589
+ #
590
+ # As an illustration, when you perform a search for “content related to MRNA,” you will receive a list of links such as the following:
591
+ #
592
+ # - https://tomrenz.substack.com/p/mrna-and-why-it-matters
593
+ #
594
+ # - https://www.statnews.com/2020/11/10/the-story-of-mrna-how-a-once-dismissed-idea-became-a-leading-technology-in-the-covid-vaccine-race/
595
+ #
596
+ # - https://www.statnews.com/2022/11/16/covid-19-vaccines-were-a-success-but-mrna-still-has-a-delivery-problem/
597
+ #
598
+ # - https://joomi.substack.com/p/were-still-being-misled-about-how
599
+ #
600
+ # Subsequently, you can submit these links to the web_scrape endpoint in order to retrieve the content of the respective web pages.
601
+ #
602
+ # Args:
603
+ # query (str): Query to search for
604
+ #
605
+ # Returns:
606
+ # FetchURLsResponse: A response object with a list of URLs for a given search query.
607
+ #
608
+ # @param query [String]
609
+ # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
610
+ def search_urls(query:, extra: {})
611
+ api_response = search_urls_with_http_info_impl(query, extra)
612
+ api_response.data
613
+ end
614
+
615
+ # Search Urls
616
+ #
617
+ # Perform a web search and obtain a list of relevant URLs.
618
+ #
619
+ # As an illustration, when you perform a search for “content related to MRNA,” you will receive a list of links such as the following:
620
+ #
621
+ # - https://tomrenz.substack.com/p/mrna-and-why-it-matters
622
+ #
623
+ # - https://www.statnews.com/2020/11/10/the-story-of-mrna-how-a-once-dismissed-idea-became-a-leading-technology-in-the-covid-vaccine-race/
624
+ #
625
+ # - https://www.statnews.com/2022/11/16/covid-19-vaccines-were-a-success-but-mrna-still-has-a-delivery-problem/
626
+ #
627
+ # - https://joomi.substack.com/p/were-still-being-misled-about-how
628
+ #
629
+ # Subsequently, you can submit these links to the web_scrape endpoint in order to retrieve the content of the respective web pages.
630
+ #
631
+ # Args:
632
+ # query (str): Query to search for
633
+ #
634
+ # Returns:
635
+ # FetchURLsResponse: A response object with a list of URLs for a given search query.
636
+ #
637
+ # @param query [String]
638
+ # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
639
+ def search_urls_with_http_info(query:, extra: {})
640
+ search_urls_with_http_info_impl(query, extra)
641
+ end
642
+
643
+ # Search Urls
644
+ # Perform a web search and obtain a list of relevant URLs. As an illustration, when you perform a search for “content related to MRNA,” you will receive a list of links such as the following: - https://tomrenz.substack.com/p/mrna-and-why-it-matters - https://www.statnews.com/2020/11/10/the-story-of-mrna-how-a-once-dismissed-idea-became-a-leading-technology-in-the-covid-vaccine-race/ - https://www.statnews.com/2022/11/16/covid-19-vaccines-were-a-success-but-mrna-still-has-a-delivery-problem/ - https://joomi.substack.com/p/were-still-being-misled-about-how Subsequently, you can submit these links to the web_scrape endpoint in order to retrieve the content of the respective web pages. Args: query (str): Query to search for Returns: FetchURLsResponse: A response object with a list of URLs for a given search query.
645
+ # @param query [String]
646
+ # @param [Hash] opts the optional parameters
647
+ # @return [FetchURLsResponse]
648
+ private def search_urls_impl(query, opts = {})
649
+ data, _status_code, _headers = search_urls_with_http_info(query, opts)
650
+ data
651
+ end
652
+
653
+ # Search Urls
654
+ # Perform a web search and obtain a list of relevant URLs. As an illustration, when you perform a search for “content related to MRNA,” you will receive a list of links such as the following: - https://tomrenz.substack.com/p/mrna-and-why-it-matters - https://www.statnews.com/2020/11/10/the-story-of-mrna-how-a-once-dismissed-idea-became-a-leading-technology-in-the-covid-vaccine-race/ - https://www.statnews.com/2022/11/16/covid-19-vaccines-were-a-success-but-mrna-still-has-a-delivery-problem/ - https://joomi.substack.com/p/were-still-being-misled-about-how Subsequently, you can submit these links to the web_scrape endpoint in order to retrieve the content of the respective web pages. Args: query (str): Query to search for Returns: FetchURLsResponse: A response object with a list of URLs for a given search query.
655
+ # @param query [String]
656
+ # @param [Hash] opts the optional parameters
657
+ # @return [APIResponse] data is FetchURLsResponse, status code, headers and response
658
+ private def search_urls_with_http_info_impl(query, opts = {})
659
+ if @api_client.config.debugging
660
+ @api_client.config.logger.debug 'Calling API: UtilitiesApi.search_urls ...'
661
+ end
662
+ # verify the required parameter 'query' is set
663
+ if @api_client.config.client_side_validation && query.nil?
664
+ fail ArgumentError, "Missing the required parameter 'query' when calling UtilitiesApi.search_urls"
665
+ end
666
+ # resource path
667
+ local_var_path = '/search_urls'
668
+
669
+ # query parameters
670
+ query_params = opts[:query_params] || {}
671
+ query_params[:'query'] = query
672
+
673
+ # header parameters
674
+ header_params = opts[:header_params] || {}
675
+ # HTTP header 'Accept' (if needed)
676
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
677
+
678
+ # form parameters
679
+ form_params = opts[:form_params] || {}
680
+
681
+ # http body (model)
682
+ post_body = opts[:debug_body]
683
+
684
+ # return_type
685
+ return_type = opts[:debug_return_type] || 'FetchURLsResponse'
686
+
687
+ # auth_names
688
+ auth_names = opts[:debug_auth_names] || ['accessToken', 'apiKey', 'customerId']
689
+
690
+ new_options = opts.merge(
691
+ :operation => :"UtilitiesApi.search_urls",
692
+ :header_params => header_params,
693
+ :query_params => query_params,
694
+ :form_params => form_params,
695
+ :body => post_body,
696
+ :auth_names => auth_names,
697
+ :return_type => return_type
698
+ )
699
+
700
+ data, status_code, headers, response = @api_client.call_api(:GET, local_var_path, new_options)
701
+ if @api_client.config.debugging
702
+ @api_client.config.logger.debug "API called: UtilitiesApi#search_urls\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
703
+ end
704
+ APIResponse::new(data, status_code, headers, response)
705
+ end
706
+ end
707
+
708
+ # top-level client access to avoid having the user to insantiate their own API instances
709
+ Utilities = UtilitiesApi::new
710
+ end