carbon_ruby_sdk 0.2.16 → 0.2.17

Sign up to get free protection for your applications and to get access to all the features.
Files changed (34) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +15 -19
  3. data/README.md +21 -7
  4. data/lib/carbon_ruby_sdk/api/files_api.rb +15 -4
  5. data/lib/carbon_ruby_sdk/api/integrations_api.rb +8 -8
  6. data/lib/carbon_ruby_sdk/models/file_sync_config.rb +11 -1
  7. data/lib/carbon_ruby_sdk/models/file_sync_config_nullable.rb +11 -1
  8. data/lib/carbon_ruby_sdk/models/o_auth_url_request.rb +2 -2
  9. data/lib/carbon_ruby_sdk/models/object_type.rb +42 -0
  10. data/lib/carbon_ruby_sdk/models/sent_webhook_payload.rb +276 -0
  11. data/lib/carbon_ruby_sdk/models/sent_webhook_payload_object.rb +235 -0
  12. data/lib/carbon_ruby_sdk/models/sent_webhook_payload_object_additional_information.rb +101 -0
  13. data/lib/carbon_ruby_sdk/models/sent_webhook_payload_object_object_id.rb +103 -0
  14. data/lib/carbon_ruby_sdk/models/sent_webhook_request_body.rb +215 -0
  15. data/lib/carbon_ruby_sdk/models/sync_files_request.rb +1 -1
  16. data/lib/carbon_ruby_sdk/models/sync_options.rb +1 -1
  17. data/lib/carbon_ruby_sdk/models/transcription_service.rb +36 -0
  18. data/lib/carbon_ruby_sdk/models/transcription_service_nullable.rb +36 -0
  19. data/lib/carbon_ruby_sdk/models/upload_file_from_url_input.rb +11 -1
  20. data/lib/carbon_ruby_sdk/version.rb +1 -1
  21. data/lib/carbon_ruby_sdk.rb +8 -0
  22. data/spec/api/files_api_spec.rb +1 -0
  23. data/spec/models/file_sync_config_nullable_spec.rb +6 -0
  24. data/spec/models/file_sync_config_spec.rb +6 -0
  25. data/spec/models/object_type_spec.rb +22 -0
  26. data/spec/models/sent_webhook_payload_object_additional_information_spec.rb +25 -0
  27. data/spec/models/sent_webhook_payload_object_object_id_spec.rb +25 -0
  28. data/spec/models/sent_webhook_payload_object_spec.rb +40 -0
  29. data/spec/models/sent_webhook_payload_spec.rb +50 -0
  30. data/spec/models/sent_webhook_request_body_spec.rb +28 -0
  31. data/spec/models/transcription_service_nullable_spec.rb +22 -0
  32. data/spec/models/transcription_service_spec.rb +22 -0
  33. data/spec/models/upload_file_from_url_input_spec.rb +6 -0
  34. metadata +27 -3
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 60c08043b97e6964d1c87a7461e6e93a0cff8c7db0fa98be4e0dd2991540a0cf
4
- data.tar.gz: a6b5dd7321fb52625d1e8f3c1acbaa1ec6165412980c1cd679b083dfb5dced35
3
+ metadata.gz: 2db6ba9ac20c33dac733d58d3af75de0f423de7dbdf3f0ab898cfa7f1d941ade
4
+ data.tar.gz: 8c2bf1227b2261b54dbacac8d5a0ce81b347b1e6297aec8a4a2676d93ab34b68
5
5
  SHA512:
6
- metadata.gz: '07691a370c7f1e6a94e6a9974451e301cd2fe2150c2b5b4618c970a608eef457c42194935ccc8eb718112eb7fee4ab39f746bee654def58d2c50d109e0dd6499'
7
- data.tar.gz: 75acc5f7eb04e965000af6070ba92aa82c47ff65f2ee378ff745b38b9357e101c3493c9d645bd14a361f13c3938ff1a3d6ae1104ad1cd8a694c0e6284cf0259a
6
+ metadata.gz: d885f31633955f61b58cf3e7e49f3325ac6621e4ea6c28d83e00c199a5e6e59979e968559b917fbb0988f7a1e289591ee0c4a8430ca97e2dfd0a675ef41b85ce
7
+ data.tar.gz: d3fbed8dc49285bf59635b40b12d1d77416cd733cf893dec372947342038dd3bff8adb90373b78be9de352b8295c9370dc16a21b284127be66622d7650b32c81
data/Gemfile.lock CHANGED
@@ -15,9 +15,8 @@ GEM
15
15
  irb (>= 1.5.0)
16
16
  reline (>= 0.3.1)
17
17
  diff-lcs (1.5.1)
18
- faraday (2.10.0)
18
+ faraday (2.9.0)
19
19
  faraday-net_http (>= 2.0, < 3.2)
20
- logger
21
20
  faraday-multipart (1.0.4)
22
21
  multipart-post (~> 2)
23
22
  faraday-net_http (3.1.0)
@@ -25,13 +24,12 @@ GEM
25
24
  io-console (0.7.2)
26
25
  irb (1.6.4)
27
26
  reline (>= 0.3.0)
28
- logger (1.6.0)
29
- method_source (1.1.0)
30
- multipart-post (2.4.1)
27
+ method_source (1.0.0)
28
+ multipart-post (2.4.0)
31
29
  net-http (0.4.1)
32
30
  uri
33
- parallel (1.25.1)
34
- parser (3.3.4.0)
31
+ parallel (1.24.0)
32
+ parser (3.3.0.5)
35
33
  ast (~> 2.4.1)
36
34
  racc
37
35
  pry (0.14.2)
@@ -40,24 +38,23 @@ GEM
40
38
  pry-byebug (3.10.1)
41
39
  byebug (~> 11.0)
42
40
  pry (>= 0.13, < 0.15)
43
- racc (1.8.0)
41
+ racc (1.7.3)
44
42
  rainbow (3.1.1)
45
43
  rake (13.0.6)
46
- regexp_parser (2.9.2)
47
- reline (0.5.9)
44
+ regexp_parser (2.9.0)
45
+ reline (0.5.0)
48
46
  io-console (~> 0.5)
49
- rexml (3.3.2)
50
- strscan
47
+ rexml (3.2.6)
51
48
  rspec (3.13.0)
52
49
  rspec-core (~> 3.13.0)
53
50
  rspec-expectations (~> 3.13.0)
54
51
  rspec-mocks (~> 3.13.0)
55
52
  rspec-core (3.13.0)
56
53
  rspec-support (~> 3.13.0)
57
- rspec-expectations (3.13.1)
54
+ rspec-expectations (3.13.0)
58
55
  diff-lcs (>= 1.2.0, < 2.0)
59
56
  rspec-support (~> 3.13.0)
60
- rspec-mocks (3.13.1)
57
+ rspec-mocks (3.13.0)
61
58
  diff-lcs (>= 1.2.0, < 2.0)
62
59
  rspec-support (~> 3.13.0)
63
60
  rspec-support (3.13.1)
@@ -70,15 +67,14 @@ GEM
70
67
  rubocop-ast (>= 1.2.0, < 2.0)
71
68
  ruby-progressbar (~> 1.7)
72
69
  unicode-display_width (>= 1.4.0, < 3.0)
73
- rubocop-ast (1.31.3)
74
- parser (>= 3.3.1.0)
70
+ rubocop-ast (1.31.2)
71
+ parser (>= 3.3.0.4)
75
72
  ruby-progressbar (1.13.0)
76
- strscan (3.1.0)
77
73
  unicode-display_width (2.5.0)
78
74
  uri (0.13.0)
79
75
 
80
76
  PLATFORMS
81
- arm64-darwin-21
77
+ arm64-darwin-22
82
78
 
83
79
  DEPENDENCIES
84
80
  carbon_ruby_sdk!
@@ -90,4 +86,4 @@ DEPENDENCIES
90
86
  rubocop (~> 1.12.1)
91
87
 
92
88
  BUNDLED WITH
93
- 2.3.7
89
+ 2.4.19
data/README.md CHANGED
@@ -6,7 +6,7 @@
6
6
 
7
7
  Connect external data to LLMs, no matter the source.
8
8
 
9
- [![npm](https://img.shields.io/badge/gem-v0.2.16-blue)](https://rubygems.org/gems/carbon_ruby_sdk/versions/0.2.16)
9
+ [![npm](https://img.shields.io/badge/gem-v0.2.17-blue)](https://rubygems.org/gems/carbon_ruby_sdk/versions/0.2.17)
10
10
 
11
11
  </div>
12
12
 
@@ -91,7 +91,7 @@ Connect external data to LLMs, no matter the source.
91
91
  Add to Gemfile:
92
92
 
93
93
  ```ruby
94
- gem 'carbon_ruby_sdk', '~> 0.2.16'
94
+ gem 'carbon_ruby_sdk', '~> 0.2.17'
95
95
  ```
96
96
 
97
97
  ## Getting Started<a id="getting-started"></a>
@@ -1071,6 +1071,7 @@ result = carbon.files.upload(
1071
1071
  max_items_per_chunk: 1,
1072
1072
  parse_pdf_tables_with_ocr: false,
1073
1073
  detect_audio_language: false,
1074
+ transcription_service: "assemblyai",
1074
1075
  media_type: "TEXT",
1075
1076
  split_rows: false,
1076
1077
  )
@@ -1118,6 +1119,10 @@ Whether to use rich table parsing when `use_ocr` is enabled.
1118
1119
  ##### detect_audio_language: `Boolean`<a id="detect_audio_language-boolean"></a>
1119
1120
  Whether to automatically detect the language of the uploaded audio file.
1120
1121
 
1122
+ ##### transcription_service: [`TranscriptionServiceNullable`](./lib/carbon_ruby_sdk/models/transcription_service_nullable.rb)<a id="transcription_service-transcriptionservicenullablelibcarbon_ruby_sdkmodelstranscription_service_nullablerb"></a>
1123
+ The transcription service to use for audio files. If no service is specified,
1124
+ 'deepgram' will be used.
1125
+
1121
1126
  ##### media_type: [`FileContentTypesNullable`](./lib/carbon_ruby_sdk/models/file_content_types_nullable.rb)<a id="media_type-filecontenttypesnullablelibcarbon_ruby_sdkmodelsfile_content_types_nullablerb"></a>
1122
1127
  The media type of the file. If not provided, it will be inferred from the file
1123
1128
  extension.
@@ -1160,6 +1165,7 @@ result = carbon.files.upload_from_url(
1160
1165
  max_items_per_chunk: 1,
1161
1166
  parse_pdf_tables_with_ocr: false,
1162
1167
  detect_audio_language: false,
1168
+ transcription_service: "assemblyai",
1163
1169
  media_type: "TEXT",
1164
1170
  split_rows: false,
1165
1171
  )
@@ -1183,6 +1189,7 @@ Number of objects per chunk. For csv, tsv, xlsx, and json files only.
1183
1189
 
1184
1190
  ##### parse_pdf_tables_with_ocr: `Boolean`<a id="parse_pdf_tables_with_ocr-boolean"></a>
1185
1191
  ##### detect_audio_language: `Boolean`<a id="detect_audio_language-boolean"></a>
1192
+ ##### transcription_service: [`TranscriptionServiceNullable`](./lib/carbon_ruby_sdk/models/transcription_service_nullable.rb)<a id="transcription_service-transcriptionservicenullablelibcarbon_ruby_sdkmodelstranscription_service_nullablerb"></a>
1186
1193
  ##### media_type: [`FileContentTypesNullable`](./lib/carbon_ruby_sdk/models/file_content_types_nullable.rb)<a id="media_type-filecontenttypesnullablelibcarbon_ruby_sdkmodelsfile_content_types_nullablerb"></a>
1187
1194
  ##### split_rows: `Boolean`<a id="split_rows-boolean"></a>
1188
1195
  #### 🔄 Return<a id="🔄-return"></a>
@@ -1300,7 +1307,7 @@ result = carbon.integrations.connect_data_source(
1300
1307
  "prepend_filename_to_chunks" => false,
1301
1308
  "sync_files_on_connection" => true,
1302
1309
  "set_page_as_boundary" => false,
1303
- "request_id" => "e38a7eee-02b7-4f73-be14-ea9bb1f09e85",
1310
+ "request_id" => "bdd2d0b8-c211-49bd-b70a-4889ae5fab99",
1304
1311
  "enable_file_picker" => true,
1305
1312
  "sync_source_items" => true,
1306
1313
  "incremental_sync" => false,
@@ -1354,6 +1361,7 @@ result = carbon.integrations.connect_freshdesk(
1354
1361
  "auto_synced_source_types" => ["ARTICLE"],
1355
1362
  "sync_attachments" => false,
1356
1363
  "detect_audio_language" => false,
1364
+ "transcription_service" => "assemblyai",
1357
1365
  "split_rows" => false,
1358
1366
  },
1359
1367
  )
@@ -1520,7 +1528,7 @@ result = carbon.integrations.get_oauth_url(
1520
1528
  set_page_as_boundary: false,
1521
1529
  data_source_id: 1,
1522
1530
  connecting_new_account: false,
1523
- request_id: "e5fd53f8-ed96-474a-ba66-1fc1948facdf",
1531
+ request_id: "77c4d6f4-3ef2-43d4-8481-476a74fd5178",
1524
1532
  use_ocr: false,
1525
1533
  parse_pdf_tables_with_ocr: false,
1526
1534
  enable_file_picker: true,
@@ -1530,6 +1538,7 @@ result = carbon.integrations.get_oauth_url(
1530
1538
  "auto_synced_source_types" => ["ARTICLE"],
1531
1539
  "sync_attachments" => false,
1532
1540
  "detect_audio_language" => false,
1541
+ "transcription_service" => "assemblyai",
1533
1542
  "split_rows" => false,
1534
1543
  },
1535
1544
  )
@@ -1581,7 +1590,7 @@ Enable OCR for files that support it. Supported formats: pdf
1581
1590
  ##### parse_pdf_tables_with_ocr: `Boolean`<a id="parse_pdf_tables_with_ocr-boolean"></a>
1582
1591
  ##### enable_file_picker: `Boolean`<a id="enable_file_picker-boolean"></a>
1583
1592
  Enable integration's file picker for sources that support it. Supported sources:
1584
- BOX, ONEDRIVE, DROPBOX, SHAREPOINT, GOOGLE_DRIVE
1593
+ BOX, DROPBOX, GOOGLE_DRIVE, ONEDRIVE, SHAREPOINT
1585
1594
 
1586
1595
  ##### sync_source_items: `Boolean`<a id="sync_source_items-boolean"></a>
1587
1596
  Enabling this flag will fetch all available content from the source to be listed
@@ -1887,7 +1896,7 @@ result = carbon.integrations.sync_confluence(
1887
1896
  prepend_filename_to_chunks: false,
1888
1897
  max_items_per_chunk: 1,
1889
1898
  set_page_as_boundary: false,
1890
- request_id: "77b56048-a895-4377-b0d3-e190d1b7de32",
1899
+ request_id: "0a2f743b-fe89-4193-86c3-87ca6d2ffc43",
1891
1900
  use_ocr: false,
1892
1901
  parse_pdf_tables_with_ocr: false,
1893
1902
  incremental_sync: false,
@@ -1895,6 +1904,7 @@ result = carbon.integrations.sync_confluence(
1895
1904
  "auto_synced_source_types" => ["ARTICLE"],
1896
1905
  "sync_attachments" => false,
1897
1906
  "detect_audio_language" => false,
1907
+ "transcription_service" => "assemblyai",
1898
1908
  "split_rows" => false,
1899
1909
  },
1900
1910
  )
@@ -1992,7 +2002,7 @@ result = carbon.integrations.sync_files(
1992
2002
  prepend_filename_to_chunks: false,
1993
2003
  max_items_per_chunk: 1,
1994
2004
  set_page_as_boundary: false,
1995
- request_id: "77b56048-a895-4377-b0d3-e190d1b7de32",
2005
+ request_id: "0a2f743b-fe89-4193-86c3-87ca6d2ffc43",
1996
2006
  use_ocr: false,
1997
2007
  parse_pdf_tables_with_ocr: false,
1998
2008
  incremental_sync: false,
@@ -2000,6 +2010,7 @@ result = carbon.integrations.sync_files(
2000
2010
  "auto_synced_source_types" => ["ARTICLE"],
2001
2011
  "sync_attachments" => false,
2002
2012
  "detect_audio_language" => false,
2013
+ "transcription_service" => "assemblyai",
2003
2014
  "split_rows" => false,
2004
2015
  },
2005
2016
  )
@@ -2202,6 +2213,7 @@ result = carbon.integrations.sync_gmail(
2202
2213
  "auto_synced_source_types" => ["ARTICLE"],
2203
2214
  "sync_attachments" => false,
2204
2215
  "detect_audio_language" => false,
2216
+ "transcription_service" => "assemblyai",
2205
2217
  "split_rows" => false,
2206
2218
  },
2207
2219
  incremental_sync: false,
@@ -2321,6 +2333,7 @@ result = carbon.integrations.sync_outlook(
2321
2333
  "auto_synced_source_types" => ["ARTICLE"],
2322
2334
  "sync_attachments" => false,
2323
2335
  "detect_audio_language" => false,
2336
+ "transcription_service" => "assemblyai",
2324
2337
  "split_rows" => false,
2325
2338
  },
2326
2339
  incremental_sync: false,
@@ -2464,6 +2477,7 @@ result = carbon.integrations.sync_s3_files(
2464
2477
  "auto_synced_source_types" => ["ARTICLE"],
2465
2478
  "sync_attachments" => false,
2466
2479
  "detect_audio_language" => false,
2480
+ "transcription_service" => "assemblyai",
2467
2481
  "split_rows" => false,
2468
2482
  },
2469
2483
  )
@@ -1177,11 +1177,12 @@ module Carbon
1177
1177
  # @param max_items_per_chunk [Integer] Number of objects per chunk. For csv, tsv, xlsx, and json files only.
1178
1178
  # @param parse_pdf_tables_with_ocr [Boolean] Whether to use rich table parsing when `use_ocr` is enabled.
1179
1179
  # @param detect_audio_language [Boolean] Whether to automatically detect the language of the uploaded audio file.
1180
+ # @param transcription_service [TranscriptionServiceNullable] The transcription service to use for audio files. If no service is specified, 'deepgram' will be used.
1180
1181
  # @param media_type [FileContentTypesNullable] The media type of the file. If not provided, it will be inferred from the file extension.
1181
1182
  # @param split_rows [Boolean] Whether to split tabular rows into chunks. Currently only valid for CSV, TSV, and XLSX files.
1182
1183
  # @param body [BodyCreateUploadFileUploadfilePost]
1183
1184
  # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
1184
- def upload(file:, chunk_size: SENTINEL, chunk_overlap: SENTINEL, skip_embedding_generation: false, set_page_as_boundary: false, embedding_model: 'OPENAI', use_ocr: false, generate_sparse_vectors: false, prepend_filename_to_chunks: false, max_items_per_chunk: SENTINEL, parse_pdf_tables_with_ocr: false, detect_audio_language: false, media_type: SENTINEL, split_rows: false, extra: {})
1185
+ def upload(file:, chunk_size: SENTINEL, chunk_overlap: SENTINEL, skip_embedding_generation: false, set_page_as_boundary: false, embedding_model: 'OPENAI', use_ocr: false, generate_sparse_vectors: false, prepend_filename_to_chunks: false, max_items_per_chunk: SENTINEL, parse_pdf_tables_with_ocr: false, detect_audio_language: false, transcription_service: SENTINEL, media_type: SENTINEL, split_rows: false, extra: {})
1185
1186
  _body = {}
1186
1187
  _body[:file] = file if file != SENTINEL
1187
1188
  body_create_upload_file_uploadfile_post = _body
@@ -1196,6 +1197,7 @@ module Carbon
1196
1197
  extra[:max_items_per_chunk] = max_items_per_chunk if max_items_per_chunk != SENTINEL
1197
1198
  extra[:parse_pdf_tables_with_ocr] = parse_pdf_tables_with_ocr if parse_pdf_tables_with_ocr != SENTINEL
1198
1199
  extra[:detect_audio_language] = detect_audio_language if detect_audio_language != SENTINEL
1200
+ extra[:transcription_service] = transcription_service if transcription_service != SENTINEL
1199
1201
  extra[:media_type] = media_type if media_type != SENTINEL
1200
1202
  extra[:split_rows] = split_rows if split_rows != SENTINEL
1201
1203
  api_response = upload_with_http_info_impl(file, body_create_upload_file_uploadfile_post, extra)
@@ -1242,11 +1244,12 @@ module Carbon
1242
1244
  # @param max_items_per_chunk [Integer] Number of objects per chunk. For csv, tsv, xlsx, and json files only.
1243
1245
  # @param parse_pdf_tables_with_ocr [Boolean] Whether to use rich table parsing when `use_ocr` is enabled.
1244
1246
  # @param detect_audio_language [Boolean] Whether to automatically detect the language of the uploaded audio file.
1247
+ # @param transcription_service [TranscriptionServiceNullable] The transcription service to use for audio files. If no service is specified, 'deepgram' will be used.
1245
1248
  # @param media_type [FileContentTypesNullable] The media type of the file. If not provided, it will be inferred from the file extension.
1246
1249
  # @param split_rows [Boolean] Whether to split tabular rows into chunks. Currently only valid for CSV, TSV, and XLSX files.
1247
1250
  # @param body [BodyCreateUploadFileUploadfilePost]
1248
1251
  # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
1249
- def upload_with_http_info(file:, chunk_size: SENTINEL, chunk_overlap: SENTINEL, skip_embedding_generation: false, set_page_as_boundary: false, embedding_model: 'OPENAI', use_ocr: false, generate_sparse_vectors: false, prepend_filename_to_chunks: false, max_items_per_chunk: SENTINEL, parse_pdf_tables_with_ocr: false, detect_audio_language: false, media_type: SENTINEL, split_rows: false, extra: {})
1252
+ def upload_with_http_info(file:, chunk_size: SENTINEL, chunk_overlap: SENTINEL, skip_embedding_generation: false, set_page_as_boundary: false, embedding_model: 'OPENAI', use_ocr: false, generate_sparse_vectors: false, prepend_filename_to_chunks: false, max_items_per_chunk: SENTINEL, parse_pdf_tables_with_ocr: false, detect_audio_language: false, transcription_service: SENTINEL, media_type: SENTINEL, split_rows: false, extra: {})
1250
1253
  _body = {}
1251
1254
  _body[:file] = file if file != SENTINEL
1252
1255
  body_create_upload_file_uploadfile_post = _body
@@ -1261,6 +1264,7 @@ module Carbon
1261
1264
  extra[:max_items_per_chunk] = max_items_per_chunk if max_items_per_chunk != SENTINEL
1262
1265
  extra[:parse_pdf_tables_with_ocr] = parse_pdf_tables_with_ocr if parse_pdf_tables_with_ocr != SENTINEL
1263
1266
  extra[:detect_audio_language] = detect_audio_language if detect_audio_language != SENTINEL
1267
+ extra[:transcription_service] = transcription_service if transcription_service != SENTINEL
1264
1268
  extra[:media_type] = media_type if media_type != SENTINEL
1265
1269
  extra[:split_rows] = split_rows if split_rows != SENTINEL
1266
1270
  upload_with_http_info_impl(file, body_create_upload_file_uploadfile_post, extra)
@@ -1282,6 +1286,7 @@ module Carbon
1282
1286
  # @option opts [Integer] :max_items_per_chunk Number of objects per chunk. For csv, tsv, xlsx, and json files only.
1283
1287
  # @option opts [Boolean] :parse_pdf_tables_with_ocr Whether to use rich table parsing when `use_ocr` is enabled. (default to false)
1284
1288
  # @option opts [Boolean] :detect_audio_language Whether to automatically detect the language of the uploaded audio file. (default to false)
1289
+ # @option opts [TranscriptionServiceNullable] :transcription_service The transcription service to use for audio files. If no service is specified, 'deepgram' will be used.
1285
1290
  # @option opts [FileContentTypesNullable] :media_type The media type of the file. If not provided, it will be inferred from the file extension.
1286
1291
  # @option opts [Boolean] :split_rows Whether to split tabular rows into chunks. Currently only valid for CSV, TSV, and XLSX files. (default to false)
1287
1292
  # @return [UserFile]
@@ -1306,6 +1311,7 @@ module Carbon
1306
1311
  # @option opts [Integer] :max_items_per_chunk Number of objects per chunk. For csv, tsv, xlsx, and json files only.
1307
1312
  # @option opts [Boolean] :parse_pdf_tables_with_ocr Whether to use rich table parsing when `use_ocr` is enabled. (default to false)
1308
1313
  # @option opts [Boolean] :detect_audio_language Whether to automatically detect the language of the uploaded audio file. (default to false)
1314
+ # @option opts [TranscriptionServiceNullable] :transcription_service The transcription service to use for audio files. If no service is specified, 'deepgram' will be used.
1309
1315
  # @option opts [FileContentTypesNullable] :media_type The media type of the file. If not provided, it will be inferred from the file extension.
1310
1316
  # @option opts [Boolean] :split_rows Whether to split tabular rows into chunks. Currently only valid for CSV, TSV, and XLSX files. (default to false)
1311
1317
  # @return [APIResponse] data is UserFile, status code, headers and response
@@ -1337,6 +1343,7 @@ module Carbon
1337
1343
  query_params[:'max_items_per_chunk'] = opts[:'max_items_per_chunk'] if !opts[:'max_items_per_chunk'].nil?
1338
1344
  query_params[:'parse_pdf_tables_with_ocr'] = opts[:'parse_pdf_tables_with_ocr'] if !opts[:'parse_pdf_tables_with_ocr'].nil?
1339
1345
  query_params[:'detect_audio_language'] = opts[:'detect_audio_language'] if !opts[:'detect_audio_language'].nil?
1346
+ query_params[:'transcription_service'] = opts[:'transcription_service'] if !opts[:'transcription_service'].nil?
1340
1347
  query_params[:'media_type'] = opts[:'media_type'] if !opts[:'media_type'].nil?
1341
1348
  query_params[:'split_rows'] = opts[:'split_rows'] if !opts[:'split_rows'].nil?
1342
1349
 
@@ -1396,11 +1403,12 @@ module Carbon
1396
1403
  # @param max_items_per_chunk [Integer] Number of objects per chunk. For csv, tsv, xlsx, and json files only.
1397
1404
  # @param parse_pdf_tables_with_ocr [Boolean]
1398
1405
  # @param detect_audio_language [Boolean]
1406
+ # @param transcription_service [TranscriptionServiceNullable]
1399
1407
  # @param media_type [FileContentTypesNullable]
1400
1408
  # @param split_rows [Boolean]
1401
1409
  # @param body [UploadFileFromUrlInput]
1402
1410
  # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
1403
- def upload_from_url(url:, file_name: SENTINEL, chunk_size: SENTINEL, chunk_overlap: SENTINEL, skip_embedding_generation: false, set_page_as_boundary: false, embedding_model: 'OPENAI', generate_sparse_vectors: false, use_textract: false, prepend_filename_to_chunks: false, max_items_per_chunk: SENTINEL, parse_pdf_tables_with_ocr: false, detect_audio_language: false, media_type: SENTINEL, split_rows: false, extra: {})
1411
+ def upload_from_url(url:, file_name: SENTINEL, chunk_size: SENTINEL, chunk_overlap: SENTINEL, skip_embedding_generation: false, set_page_as_boundary: false, embedding_model: 'OPENAI', generate_sparse_vectors: false, use_textract: false, prepend_filename_to_chunks: false, max_items_per_chunk: SENTINEL, parse_pdf_tables_with_ocr: false, detect_audio_language: false, transcription_service: SENTINEL, media_type: SENTINEL, split_rows: false, extra: {})
1404
1412
  _body = {}
1405
1413
  _body[:url] = url if url != SENTINEL
1406
1414
  _body[:file_name] = file_name if file_name != SENTINEL
@@ -1415,6 +1423,7 @@ module Carbon
1415
1423
  _body[:max_items_per_chunk] = max_items_per_chunk if max_items_per_chunk != SENTINEL
1416
1424
  _body[:parse_pdf_tables_with_ocr] = parse_pdf_tables_with_ocr if parse_pdf_tables_with_ocr != SENTINEL
1417
1425
  _body[:detect_audio_language] = detect_audio_language if detect_audio_language != SENTINEL
1426
+ _body[:transcription_service] = transcription_service if transcription_service != SENTINEL
1418
1427
  _body[:media_type] = media_type if media_type != SENTINEL
1419
1428
  _body[:split_rows] = split_rows if split_rows != SENTINEL
1420
1429
  upload_file_from_url_input = _body
@@ -1437,11 +1446,12 @@ module Carbon
1437
1446
  # @param max_items_per_chunk [Integer] Number of objects per chunk. For csv, tsv, xlsx, and json files only.
1438
1447
  # @param parse_pdf_tables_with_ocr [Boolean]
1439
1448
  # @param detect_audio_language [Boolean]
1449
+ # @param transcription_service [TranscriptionServiceNullable]
1440
1450
  # @param media_type [FileContentTypesNullable]
1441
1451
  # @param split_rows [Boolean]
1442
1452
  # @param body [UploadFileFromUrlInput]
1443
1453
  # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
1444
- def upload_from_url_with_http_info(url:, file_name: SENTINEL, chunk_size: SENTINEL, chunk_overlap: SENTINEL, skip_embedding_generation: false, set_page_as_boundary: false, embedding_model: 'OPENAI', generate_sparse_vectors: false, use_textract: false, prepend_filename_to_chunks: false, max_items_per_chunk: SENTINEL, parse_pdf_tables_with_ocr: false, detect_audio_language: false, media_type: SENTINEL, split_rows: false, extra: {})
1454
+ def upload_from_url_with_http_info(url:, file_name: SENTINEL, chunk_size: SENTINEL, chunk_overlap: SENTINEL, skip_embedding_generation: false, set_page_as_boundary: false, embedding_model: 'OPENAI', generate_sparse_vectors: false, use_textract: false, prepend_filename_to_chunks: false, max_items_per_chunk: SENTINEL, parse_pdf_tables_with_ocr: false, detect_audio_language: false, transcription_service: SENTINEL, media_type: SENTINEL, split_rows: false, extra: {})
1445
1455
  _body = {}
1446
1456
  _body[:url] = url if url != SENTINEL
1447
1457
  _body[:file_name] = file_name if file_name != SENTINEL
@@ -1456,6 +1466,7 @@ module Carbon
1456
1466
  _body[:max_items_per_chunk] = max_items_per_chunk if max_items_per_chunk != SENTINEL
1457
1467
  _body[:parse_pdf_tables_with_ocr] = parse_pdf_tables_with_ocr if parse_pdf_tables_with_ocr != SENTINEL
1458
1468
  _body[:detect_audio_language] = detect_audio_language if detect_audio_language != SENTINEL
1469
+ _body[:transcription_service] = transcription_service if transcription_service != SENTINEL
1459
1470
  _body[:media_type] = media_type if media_type != SENTINEL
1460
1471
  _body[:split_rows] = split_rows if split_rows != SENTINEL
1461
1472
  upload_file_from_url_input = _body
@@ -653,13 +653,13 @@ module Carbon
653
653
  # @param request_id [String] This request id will be added to all files that get synced using the generated OAuth URL
654
654
  # @param use_ocr [Boolean] Enable OCR for files that support it. Supported formats: pdf
655
655
  # @param parse_pdf_tables_with_ocr [Boolean]
656
- # @param enable_file_picker [Boolean] Enable integration's file picker for sources that support it. Supported sources: BOX, ONEDRIVE, DROPBOX, SHAREPOINT, GOOGLE_DRIVE
656
+ # @param enable_file_picker [Boolean] Enable integration's file picker for sources that support it. Supported sources: BOX, DROPBOX, GOOGLE_DRIVE, ONEDRIVE, SHAREPOINT
657
657
  # @param sync_source_items [Boolean] Enabling this flag will fetch all available content from the source to be listed via list items endpoint
658
658
  # @param incremental_sync [Boolean] Only sync files if they have not already been synced or if the embedding properties have changed. This flag is currently supported by ONEDRIVE, GOOGLE_DRIVE, BOX, DROPBOX, INTERCOM, GMAIL, OUTLOOK. It will be ignored for other data sources.
659
659
  # @param file_sync_config [FileSyncConfigNullable]
660
660
  # @param body [OAuthURLRequest]
661
661
  # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
662
- def get_oauth_url(service:, tags: SENTINEL, scope: SENTINEL, chunk_size: 1500, chunk_overlap: 20, skip_embedding_generation: false, embedding_model: 'OPENAI', zendesk_subdomain: SENTINEL, microsoft_tenant: SENTINEL, sharepoint_site_name: SENTINEL, confluence_subdomain: SENTINEL, generate_sparse_vectors: false, prepend_filename_to_chunks: false, max_items_per_chunk: SENTINEL, salesforce_domain: SENTINEL, sync_files_on_connection: true, set_page_as_boundary: false, data_source_id: SENTINEL, connecting_new_account: false, request_id: 'e5fd53f8-ed96-474a-ba66-1fc1948facdf', use_ocr: false, parse_pdf_tables_with_ocr: false, enable_file_picker: true, sync_source_items: true, incremental_sync: false, file_sync_config: SENTINEL, extra: {})
662
+ def get_oauth_url(service:, tags: SENTINEL, scope: SENTINEL, chunk_size: 1500, chunk_overlap: 20, skip_embedding_generation: false, embedding_model: 'OPENAI', zendesk_subdomain: SENTINEL, microsoft_tenant: SENTINEL, sharepoint_site_name: SENTINEL, confluence_subdomain: SENTINEL, generate_sparse_vectors: false, prepend_filename_to_chunks: false, max_items_per_chunk: SENTINEL, salesforce_domain: SENTINEL, sync_files_on_connection: true, set_page_as_boundary: false, data_source_id: SENTINEL, connecting_new_account: false, request_id: '77c4d6f4-3ef2-43d4-8481-476a74fd5178', use_ocr: false, parse_pdf_tables_with_ocr: false, enable_file_picker: true, sync_source_items: true, incremental_sync: false, file_sync_config: SENTINEL, extra: {})
663
663
  _body = {}
664
664
  _body[:tags] = tags if tags != SENTINEL
665
665
  _body[:scope] = scope if scope != SENTINEL
@@ -721,13 +721,13 @@ module Carbon
721
721
  # @param request_id [String] This request id will be added to all files that get synced using the generated OAuth URL
722
722
  # @param use_ocr [Boolean] Enable OCR for files that support it. Supported formats: pdf
723
723
  # @param parse_pdf_tables_with_ocr [Boolean]
724
- # @param enable_file_picker [Boolean] Enable integration's file picker for sources that support it. Supported sources: BOX, ONEDRIVE, DROPBOX, SHAREPOINT, GOOGLE_DRIVE
724
+ # @param enable_file_picker [Boolean] Enable integration's file picker for sources that support it. Supported sources: BOX, DROPBOX, GOOGLE_DRIVE, ONEDRIVE, SHAREPOINT
725
725
  # @param sync_source_items [Boolean] Enabling this flag will fetch all available content from the source to be listed via list items endpoint
726
726
  # @param incremental_sync [Boolean] Only sync files if they have not already been synced or if the embedding properties have changed. This flag is currently supported by ONEDRIVE, GOOGLE_DRIVE, BOX, DROPBOX, INTERCOM, GMAIL, OUTLOOK. It will be ignored for other data sources.
727
727
  # @param file_sync_config [FileSyncConfigNullable]
728
728
  # @param body [OAuthURLRequest]
729
729
  # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
730
- def get_oauth_url_with_http_info(service:, tags: SENTINEL, scope: SENTINEL, chunk_size: 1500, chunk_overlap: 20, skip_embedding_generation: false, embedding_model: 'OPENAI', zendesk_subdomain: SENTINEL, microsoft_tenant: SENTINEL, sharepoint_site_name: SENTINEL, confluence_subdomain: SENTINEL, generate_sparse_vectors: false, prepend_filename_to_chunks: false, max_items_per_chunk: SENTINEL, salesforce_domain: SENTINEL, sync_files_on_connection: true, set_page_as_boundary: false, data_source_id: SENTINEL, connecting_new_account: false, request_id: 'e5fd53f8-ed96-474a-ba66-1fc1948facdf', use_ocr: false, parse_pdf_tables_with_ocr: false, enable_file_picker: true, sync_source_items: true, incremental_sync: false, file_sync_config: SENTINEL, extra: {})
730
+ def get_oauth_url_with_http_info(service:, tags: SENTINEL, scope: SENTINEL, chunk_size: 1500, chunk_overlap: 20, skip_embedding_generation: false, embedding_model: 'OPENAI', zendesk_subdomain: SENTINEL, microsoft_tenant: SENTINEL, sharepoint_site_name: SENTINEL, confluence_subdomain: SENTINEL, generate_sparse_vectors: false, prepend_filename_to_chunks: false, max_items_per_chunk: SENTINEL, salesforce_domain: SENTINEL, sync_files_on_connection: true, set_page_as_boundary: false, data_source_id: SENTINEL, connecting_new_account: false, request_id: '77c4d6f4-3ef2-43d4-8481-476a74fd5178', use_ocr: false, parse_pdf_tables_with_ocr: false, enable_file_picker: true, sync_source_items: true, incremental_sync: false, file_sync_config: SENTINEL, extra: {})
731
731
  _body = {}
732
732
  _body[:tags] = tags if tags != SENTINEL
733
733
  _body[:scope] = scope if scope != SENTINEL
@@ -1646,7 +1646,7 @@ module Carbon
1646
1646
  # @param file_sync_config [FileSyncConfigNullable]
1647
1647
  # @param body [SyncFilesRequest]
1648
1648
  # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
1649
- def sync_confluence(data_source_id:, ids:, tags: SENTINEL, chunk_size: 1500, chunk_overlap: 20, skip_embedding_generation: false, embedding_model: 'OPENAI', generate_sparse_vectors: false, prepend_filename_to_chunks: false, max_items_per_chunk: SENTINEL, set_page_as_boundary: false, request_id: '77b56048-a895-4377-b0d3-e190d1b7de32', use_ocr: false, parse_pdf_tables_with_ocr: false, incremental_sync: false, file_sync_config: SENTINEL, extra: {})
1649
+ def sync_confluence(data_source_id:, ids:, tags: SENTINEL, chunk_size: 1500, chunk_overlap: 20, skip_embedding_generation: false, embedding_model: 'OPENAI', generate_sparse_vectors: false, prepend_filename_to_chunks: false, max_items_per_chunk: SENTINEL, set_page_as_boundary: false, request_id: '0a2f743b-fe89-4193-86c3-87ca6d2ffc43', use_ocr: false, parse_pdf_tables_with_ocr: false, incremental_sync: false, file_sync_config: SENTINEL, extra: {})
1650
1650
  _body = {}
1651
1651
  _body[:tags] = tags if tags != SENTINEL
1652
1652
  _body[:data_source_id] = data_source_id if data_source_id != SENTINEL
@@ -1696,7 +1696,7 @@ module Carbon
1696
1696
  # @param file_sync_config [FileSyncConfigNullable]
1697
1697
  # @param body [SyncFilesRequest]
1698
1698
  # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
1699
- def sync_confluence_with_http_info(data_source_id:, ids:, tags: SENTINEL, chunk_size: 1500, chunk_overlap: 20, skip_embedding_generation: false, embedding_model: 'OPENAI', generate_sparse_vectors: false, prepend_filename_to_chunks: false, max_items_per_chunk: SENTINEL, set_page_as_boundary: false, request_id: '77b56048-a895-4377-b0d3-e190d1b7de32', use_ocr: false, parse_pdf_tables_with_ocr: false, incremental_sync: false, file_sync_config: SENTINEL, extra: {})
1699
+ def sync_confluence_with_http_info(data_source_id:, ids:, tags: SENTINEL, chunk_size: 1500, chunk_overlap: 20, skip_embedding_generation: false, embedding_model: 'OPENAI', generate_sparse_vectors: false, prepend_filename_to_chunks: false, max_items_per_chunk: SENTINEL, set_page_as_boundary: false, request_id: '0a2f743b-fe89-4193-86c3-87ca6d2ffc43', use_ocr: false, parse_pdf_tables_with_ocr: false, incremental_sync: false, file_sync_config: SENTINEL, extra: {})
1700
1700
  _body = {}
1701
1701
  _body[:tags] = tags if tags != SENTINEL
1702
1702
  _body[:data_source_id] = data_source_id if data_source_id != SENTINEL
@@ -1904,7 +1904,7 @@ module Carbon
1904
1904
  # @param file_sync_config [FileSyncConfigNullable]
1905
1905
  # @param body [SyncFilesRequest]
1906
1906
  # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
1907
- def sync_files(data_source_id:, ids:, tags: SENTINEL, chunk_size: 1500, chunk_overlap: 20, skip_embedding_generation: false, embedding_model: 'OPENAI', generate_sparse_vectors: false, prepend_filename_to_chunks: false, max_items_per_chunk: SENTINEL, set_page_as_boundary: false, request_id: '77b56048-a895-4377-b0d3-e190d1b7de32', use_ocr: false, parse_pdf_tables_with_ocr: false, incremental_sync: false, file_sync_config: SENTINEL, extra: {})
1907
+ def sync_files(data_source_id:, ids:, tags: SENTINEL, chunk_size: 1500, chunk_overlap: 20, skip_embedding_generation: false, embedding_model: 'OPENAI', generate_sparse_vectors: false, prepend_filename_to_chunks: false, max_items_per_chunk: SENTINEL, set_page_as_boundary: false, request_id: '0a2f743b-fe89-4193-86c3-87ca6d2ffc43', use_ocr: false, parse_pdf_tables_with_ocr: false, incremental_sync: false, file_sync_config: SENTINEL, extra: {})
1908
1908
  _body = {}
1909
1909
  _body[:tags] = tags if tags != SENTINEL
1910
1910
  _body[:data_source_id] = data_source_id if data_source_id != SENTINEL
@@ -1952,7 +1952,7 @@ module Carbon
1952
1952
  # @param file_sync_config [FileSyncConfigNullable]
1953
1953
  # @param body [SyncFilesRequest]
1954
1954
  # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
1955
- def sync_files_with_http_info(data_source_id:, ids:, tags: SENTINEL, chunk_size: 1500, chunk_overlap: 20, skip_embedding_generation: false, embedding_model: 'OPENAI', generate_sparse_vectors: false, prepend_filename_to_chunks: false, max_items_per_chunk: SENTINEL, set_page_as_boundary: false, request_id: '77b56048-a895-4377-b0d3-e190d1b7de32', use_ocr: false, parse_pdf_tables_with_ocr: false, incremental_sync: false, file_sync_config: SENTINEL, extra: {})
1955
+ def sync_files_with_http_info(data_source_id:, ids:, tags: SENTINEL, chunk_size: 1500, chunk_overlap: 20, skip_embedding_generation: false, embedding_model: 'OPENAI', generate_sparse_vectors: false, prepend_filename_to_chunks: false, max_items_per_chunk: SENTINEL, set_page_as_boundary: false, request_id: '0a2f743b-fe89-4193-86c3-87ca6d2ffc43', use_ocr: false, parse_pdf_tables_with_ocr: false, incremental_sync: false, file_sync_config: SENTINEL, extra: {})
1956
1956
  _body = {}
1957
1957
  _body[:tags] = tags if tags != SENTINEL
1958
1958
  _body[:data_source_id] = data_source_id if data_source_id != SENTINEL
@@ -20,6 +20,8 @@ module Carbon
20
20
  # Detect audio language before transcription for audio files
21
21
  attr_accessor :detect_audio_language
22
22
 
23
+ attr_accessor :transcription_service
24
+
23
25
  # Whether to split tabular rows into chunks. Currently only valid for CSV, TSV, and XLSX files.
24
26
  attr_accessor :split_rows
25
27
 
@@ -29,6 +31,7 @@ module Carbon
29
31
  :'auto_synced_source_types' => :'auto_synced_source_types',
30
32
  :'sync_attachments' => :'sync_attachments',
31
33
  :'detect_audio_language' => :'detect_audio_language',
34
+ :'transcription_service' => :'transcription_service',
32
35
  :'split_rows' => :'split_rows'
33
36
  }
34
37
  end
@@ -44,6 +47,7 @@ module Carbon
44
47
  :'auto_synced_source_types' => :'Array<HelpdeskFileTypes>',
45
48
  :'sync_attachments' => :'Boolean',
46
49
  :'detect_audio_language' => :'Boolean',
50
+ :'transcription_service' => :'TranscriptionServiceNullable',
47
51
  :'split_rows' => :'Boolean'
48
52
  }
49
53
  end
@@ -51,6 +55,7 @@ module Carbon
51
55
  # List of attributes with nullable: true
52
56
  def self.openapi_nullable
53
57
  Set.new([
58
+ :'transcription_service',
54
59
  ])
55
60
  end
56
61
 
@@ -87,6 +92,10 @@ module Carbon
87
92
  self.detect_audio_language = false
88
93
  end
89
94
 
95
+ if attributes.key?(:'transcription_service')
96
+ self.transcription_service = attributes[:'transcription_service']
97
+ end
98
+
90
99
  if attributes.key?(:'split_rows')
91
100
  self.split_rows = attributes[:'split_rows']
92
101
  else
@@ -115,6 +124,7 @@ module Carbon
115
124
  auto_synced_source_types == o.auto_synced_source_types &&
116
125
  sync_attachments == o.sync_attachments &&
117
126
  detect_audio_language == o.detect_audio_language &&
127
+ transcription_service == o.transcription_service &&
118
128
  split_rows == o.split_rows
119
129
  end
120
130
 
@@ -127,7 +137,7 @@ module Carbon
127
137
  # Calculates hash code according to all attributes.
128
138
  # @return [Integer] Hash code
129
139
  def hash
130
- [auto_synced_source_types, sync_attachments, detect_audio_language, split_rows].hash
140
+ [auto_synced_source_types, sync_attachments, detect_audio_language, transcription_service, split_rows].hash
131
141
  end
132
142
 
133
143
  # Builds the object from hash
@@ -21,6 +21,8 @@ module Carbon
21
21
  # Detect audio language before transcription for audio files
22
22
  attr_accessor :detect_audio_language
23
23
 
24
+ attr_accessor :transcription_service
25
+
24
26
  # Whether to split tabular rows into chunks. Currently only valid for CSV, TSV, and XLSX files.
25
27
  attr_accessor :split_rows
26
28
 
@@ -30,6 +32,7 @@ module Carbon
30
32
  :'auto_synced_source_types' => :'auto_synced_source_types',
31
33
  :'sync_attachments' => :'sync_attachments',
32
34
  :'detect_audio_language' => :'detect_audio_language',
35
+ :'transcription_service' => :'transcription_service',
33
36
  :'split_rows' => :'split_rows'
34
37
  }
35
38
  end
@@ -45,6 +48,7 @@ module Carbon
45
48
  :'auto_synced_source_types' => :'Array<HelpdeskFileTypes>',
46
49
  :'sync_attachments' => :'Boolean',
47
50
  :'detect_audio_language' => :'Boolean',
51
+ :'transcription_service' => :'TranscriptionServiceNullable',
48
52
  :'split_rows' => :'Boolean'
49
53
  }
50
54
  end
@@ -52,6 +56,7 @@ module Carbon
52
56
  # List of attributes with nullable: true
53
57
  def self.openapi_nullable
54
58
  Set.new([
59
+ :'transcription_service',
55
60
  ])
56
61
  end
57
62
 
@@ -88,6 +93,10 @@ module Carbon
88
93
  self.detect_audio_language = false
89
94
  end
90
95
 
96
+ if attributes.key?(:'transcription_service')
97
+ self.transcription_service = attributes[:'transcription_service']
98
+ end
99
+
91
100
  if attributes.key?(:'split_rows')
92
101
  self.split_rows = attributes[:'split_rows']
93
102
  else
@@ -116,6 +125,7 @@ module Carbon
116
125
  auto_synced_source_types == o.auto_synced_source_types &&
117
126
  sync_attachments == o.sync_attachments &&
118
127
  detect_audio_language == o.detect_audio_language &&
128
+ transcription_service == o.transcription_service &&
119
129
  split_rows == o.split_rows
120
130
  end
121
131
 
@@ -128,7 +138,7 @@ module Carbon
128
138
  # Calculates hash code according to all attributes.
129
139
  # @return [Integer] Hash code
130
140
  def hash
131
- [auto_synced_source_types, sync_attachments, detect_audio_language, split_rows].hash
141
+ [auto_synced_source_types, sync_attachments, detect_audio_language, transcription_service, split_rows].hash
132
142
  end
133
143
 
134
144
  # Builds the object from hash
@@ -61,7 +61,7 @@ module Carbon
61
61
 
62
62
  attr_accessor :parse_pdf_tables_with_ocr
63
63
 
64
- # Enable integration's file picker for sources that support it. Supported sources: BOX, ONEDRIVE, DROPBOX, SHAREPOINT, GOOGLE_DRIVE
64
+ # Enable integration's file picker for sources that support it. Supported sources: BOX, DROPBOX, GOOGLE_DRIVE, ONEDRIVE, SHAREPOINT
65
65
  attr_accessor :enable_file_picker
66
66
 
67
67
  # Enabling this flag will fetch all available content from the source to be listed via list items endpoint
@@ -279,7 +279,7 @@ module Carbon
279
279
  if attributes.key?(:'request_id')
280
280
  self.request_id = attributes[:'request_id']
281
281
  else
282
- self.request_id = 'e5fd53f8-ed96-474a-ba66-1fc1948facdf'
282
+ self.request_id = '77c4d6f4-3ef2-43d4-8481-476a74fd5178'
283
283
  end
284
284
 
285
285
  if attributes.key?(:'use_ocr')
@@ -0,0 +1,42 @@
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 'date'
10
+ require 'time'
11
+
12
+ module Carbon
13
+ class ObjectType
14
+ CHUNK_LIST = "CHUNK_LIST".freeze
15
+ DATA_SOURCE = "DATA_SOURCE".freeze
16
+ FILE = "FILE".freeze
17
+ FILE_LIST = "FILE_LIST".freeze
18
+ NONE = "NONE".freeze
19
+ ORGANIZATION_USER = "ORGANIZATION_USER".freeze
20
+ UPLOAD_REQUEST_ID = "UPLOAD_REQUEST_ID".freeze
21
+ WEBPAGE = "WEBPAGE".freeze
22
+
23
+ def self.all_vars
24
+ @all_vars ||= [CHUNK_LIST, DATA_SOURCE, FILE, FILE_LIST, NONE, ORGANIZATION_USER, UPLOAD_REQUEST_ID, WEBPAGE].freeze
25
+ end
26
+
27
+ # Builds the enum from string
28
+ # @param [String] The enum value in the form of the string
29
+ # @return [String] The enum value
30
+ def self.build_from_hash(value)
31
+ new.build_from_hash(value)
32
+ end
33
+
34
+ # Builds the enum from string
35
+ # @param [String] The enum value in the form of the string
36
+ # @return [String] The enum value
37
+ def build_from_hash(value)
38
+ return value if ObjectType.all_vars.include?(value)
39
+ raise "Invalid ENUM value #{value} for class #ObjectType"
40
+ end
41
+ end
42
+ end