carbon_ruby_sdk 0.2.10 → 0.2.12

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0452b3148ad8c62797e52048a749496808ff574b6eba205e50e10eb514e373e8
4
- data.tar.gz: 0d0c67926c3a58fd000729a39961f7ec09590b9150993de85ea7795125ada5ab
3
+ metadata.gz: e46e23bcb9933bb4467a940645cf27e79739674f7969d70a655f3ab55bef38c7
4
+ data.tar.gz: 5cae95c5ebd2db0bcef1291135198008b03b32cd80ec21adb70b5615a61fbac1
5
5
  SHA512:
6
- metadata.gz: ff2a8b2277d6274d6832544fc74f43554a3a006da0f09fd8b08f039bafc835a5948a27237c7a452f2b27f21353a4599e5cff7c343c4322615ff40d99bc96beb1
7
- data.tar.gz: 65c402649df16ef2af3f1e4dedac7128d04d35af85e4c02c03315263f2138d7003a934bf6cb8cf758e171ccb8ee5c6db08e93b75d03e2524e9eec642464b7905
6
+ metadata.gz: c36c755ccf4bdf990f59bedd164b2d3e9d8af63ff2ce29c2100c2d82c49df696a1d9f66fc855f05576c31326353f30f68bf88edf43d59f3ec3fe5517780f7f11
7
+ data.tar.gz: f36a6432f38fcd3e376c9fba1f37f3ec7e8a4b33b9f6daccf67ea753e9b2de9d88f8e4f7b8e20b1a6ab40f33101c48a7c2ab981c513a1e4d71c3117601ba0ab8
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- carbon_ruby_sdk (0.2.9)
4
+ carbon_ruby_sdk (0.2.11)
5
5
  faraday (>= 1.0.1, < 3.0)
6
6
  faraday-multipart (~> 1.0, >= 1.0.4)
7
7
 
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.10-blue)](https://rubygems.org/gems/carbon_ruby_sdk/versions/0.2.10)
9
+ [![npm](https://img.shields.io/badge/gem-v0.2.12-blue)](https://rubygems.org/gems/carbon_ruby_sdk/versions/0.2.12)
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.10'
94
+ gem 'carbon_ruby_sdk', '~> 0.2.12'
95
95
  ```
96
96
 
97
97
  ## Getting Started<a id="getting-started"></a>
@@ -381,6 +381,7 @@ result = carbon.embeddings.get_documents(
381
381
  media_type: "TEXT",
382
382
  embedding_model: "OPENAI",
383
383
  include_file_level_metadata: false,
384
+ high_accuracy: false,
384
385
  )
385
386
  p result
386
387
  ```
@@ -439,6 +440,11 @@ Flag to control whether or not to include file-level metadata in the response.
439
440
  This metadata will be included in the `content_metadata` field of each document
440
441
  along with chunk/embedding level metadata.
441
442
 
443
+ ##### high_accuracy: `Boolean`<a id="high_accuracy-boolean"></a>
444
+ Flag to control whether or not to perform a high accuracy embedding search. By
445
+ default, this is set to false. If true, the search may return more accurate
446
+ results, but may take longer to complete.
447
+
442
448
  #### 🔄 Return<a id="🔄-return"></a>
443
449
 
444
450
  [DocumentResponseList](./lib/carbon_ruby_sdk/models/document_response_list.rb)
@@ -748,6 +754,7 @@ result = carbon.files.delete_v2(
748
754
  "non_synced_only" => false,
749
755
  },
750
756
  send_webhook: false,
757
+ preserve_file_record: false,
751
758
  )
752
759
  p result
753
760
  ```
@@ -756,6 +763,14 @@ p result
756
763
 
757
764
  ##### filters: [`OrganizationUserFilesToSyncFilters`](./lib/carbon_ruby_sdk/models/organization_user_files_to_sync_filters.rb)<a id="filters-organizationuserfilestosyncfilterslibcarbon_ruby_sdkmodelsorganization_user_files_to_sync_filtersrb"></a>
758
765
  ##### send_webhook: `Boolean`<a id="send_webhook-boolean"></a>
766
+ ##### preserve_file_record: `Boolean`<a id="preserve_file_record-boolean"></a>
767
+ Whether or not to delete all data related to the file from the database, BUT to
768
+ preserve the file metadata, allowing for resyncs. By default
769
+ `preserve_file_record` is false, which means that all data related to the file
770
+ *as well as* its metadata will be deleted. Note that even if
771
+ `preserve_file_record` is true, raw files uploaded via the `uploadfile` endpoint
772
+ still cannot be resynced.
773
+
759
774
  #### 🔄 Return<a id="🔄-return"></a>
760
775
 
761
776
  [GenericSuccessResponse](./lib/carbon_ruby_sdk/models/generic_success_response.rb)
@@ -1281,7 +1296,7 @@ result = carbon.integrations.connect_data_source(
1281
1296
  "prepend_filename_to_chunks" => false,
1282
1297
  "sync_files_on_connection" => true,
1283
1298
  "set_page_as_boundary" => false,
1284
- "request_id" => "7b23cde6-ec28-417a-9bff-b10e9042394c",
1299
+ "request_id" => "0210abaa-8c19-4ac6-9c4b-fb856acce902",
1285
1300
  "enable_file_picker" => true,
1286
1301
  "sync_source_items" => true,
1287
1302
  "incremental_sync" => false,
@@ -1501,7 +1516,7 @@ result = carbon.integrations.get_oauth_url(
1501
1516
  set_page_as_boundary: false,
1502
1517
  data_source_id: 1,
1503
1518
  connecting_new_account: false,
1504
- request_id: "dbc54493-ce4f-4a1d-a78b-862f21f1e3d7",
1519
+ request_id: "1c47fc7c-4c6e-466f-9bf9-979ad9dc87a7",
1505
1520
  use_ocr: false,
1506
1521
  parse_pdf_tables_with_ocr: false,
1507
1522
  enable_file_picker: true,
@@ -1562,7 +1577,7 @@ Enable OCR for files that support it. Supported formats: pdf
1562
1577
  ##### parse_pdf_tables_with_ocr: `Boolean`<a id="parse_pdf_tables_with_ocr-boolean"></a>
1563
1578
  ##### enable_file_picker: `Boolean`<a id="enable_file_picker-boolean"></a>
1564
1579
  Enable integration's file picker for sources that support it. Supported sources:
1565
- GOOGLE_DRIVE, SHAREPOINT, ONEDRIVE, BOX, DROPBOX
1580
+ GOOGLE_DRIVE, DROPBOX, BOX, ONEDRIVE, SHAREPOINT
1566
1581
 
1567
1582
  ##### sync_source_items: `Boolean`<a id="sync_source_items-boolean"></a>
1568
1583
  Enabling this flag will fetch all available content from the source to be listed
@@ -1571,7 +1586,8 @@ via list items endpoint
1571
1586
  ##### incremental_sync: `Boolean`<a id="incremental_sync-boolean"></a>
1572
1587
  Only sync files if they have not already been synced or if the embedding
1573
1588
  properties have changed. This flag is currently supported by ONEDRIVE,
1574
- GOOGLE_DRIVE, BOX, DROPBOX. It will be ignored for other data sources.
1589
+ GOOGLE_DRIVE, BOX, DROPBOX, INTERCOM, GMAIL, OUTLOOK. It will be ignored for
1590
+ other data sources.
1575
1591
 
1576
1592
  ##### file_sync_config: [`FileSyncConfigNullable`](./lib/carbon_ruby_sdk/models/file_sync_config_nullable.rb)<a id="file_sync_config-filesyncconfignullablelibcarbon_ruby_sdkmodelsfile_sync_config_nullablerb"></a>
1577
1593
  #### 🔄 Return<a id="🔄-return"></a>
@@ -1861,7 +1877,7 @@ result = carbon.integrations.sync_confluence(
1861
1877
  prepend_filename_to_chunks: false,
1862
1878
  max_items_per_chunk: 1,
1863
1879
  set_page_as_boundary: false,
1864
- request_id: "6e21ecc1-8385-46ac-abea-01ca0b2b268d",
1880
+ request_id: "791318ee-229d-4c64-bb0a-2563b8014484",
1865
1881
  use_ocr: false,
1866
1882
  parse_pdf_tables_with_ocr: false,
1867
1883
  incremental_sync: false,
@@ -1896,7 +1912,8 @@ Number of objects per chunk. For csv, tsv, xlsx, and json files only.
1896
1912
  ##### incremental_sync: `Boolean`<a id="incremental_sync-boolean"></a>
1897
1913
  Only sync files if they have not already been synced or if the embedding
1898
1914
  properties have changed. This flag is currently supported by ONEDRIVE,
1899
- GOOGLE_DRIVE, BOX, DROPBOX. It will be ignored for other data sources.
1915
+ GOOGLE_DRIVE, BOX, DROPBOX, INTERCOM, GMAIL, OUTLOOK. It will be ignored for
1916
+ other data sources.
1900
1917
 
1901
1918
  ##### file_sync_config: [`FileSyncConfigNullable`](./lib/carbon_ruby_sdk/models/file_sync_config_nullable.rb)<a id="file_sync_config-filesyncconfignullablelibcarbon_ruby_sdkmodelsfile_sync_config_nullablerb"></a>
1902
1919
  #### 🔄 Return<a id="🔄-return"></a>
@@ -1965,7 +1982,7 @@ result = carbon.integrations.sync_files(
1965
1982
  prepend_filename_to_chunks: false,
1966
1983
  max_items_per_chunk: 1,
1967
1984
  set_page_as_boundary: false,
1968
- request_id: "6e21ecc1-8385-46ac-abea-01ca0b2b268d",
1985
+ request_id: "791318ee-229d-4c64-bb0a-2563b8014484",
1969
1986
  use_ocr: false,
1970
1987
  parse_pdf_tables_with_ocr: false,
1971
1988
  incremental_sync: false,
@@ -2000,7 +2017,8 @@ Number of objects per chunk. For csv, tsv, xlsx, and json files only.
2000
2017
  ##### incremental_sync: `Boolean`<a id="incremental_sync-boolean"></a>
2001
2018
  Only sync files if they have not already been synced or if the embedding
2002
2019
  properties have changed. This flag is currently supported by ONEDRIVE,
2003
- GOOGLE_DRIVE, BOX, DROPBOX. It will be ignored for other data sources.
2020
+ GOOGLE_DRIVE, BOX, DROPBOX, INTERCOM, GMAIL, OUTLOOK. It will be ignored for
2021
+ other data sources.
2004
2022
 
2005
2023
  ##### file_sync_config: [`FileSyncConfigNullable`](./lib/carbon_ruby_sdk/models/file_sync_config_nullable.rb)<a id="file_sync_config-filesyncconfignullablelibcarbon_ruby_sdkmodelsfile_sync_config_nullablerb"></a>
2006
2024
  #### 🔄 Return<a id="🔄-return"></a>
@@ -2110,6 +2128,8 @@ For now, we support a limited set of keys listed below.
2110
2128
  <b>after</b> or <b>before</b>: A date in YYYY/mm/dd format (example 2023/12/31). Gets emails after/before a certain date.
2111
2129
  You can also use them in combination to get emails from a certain period.
2112
2130
  <b>is</b>: Can have the following values - starred, important, snoozed, and unread
2131
+ <b>from</b>: Email address of the sender
2132
+ <b>to</b>: Email address of the recipient
2113
2133
 
2114
2134
  Using keys or values outside of the specified values can lead to unexpected behaviour.
2115
2135
 
@@ -2217,7 +2237,8 @@ For now, we support a limited set of keys listed below.
2217
2237
 
2218
2238
  <b>category</b>: Custom categories that you created in Outlook.
2219
2239
  <b>after</b> or <b>before</b>: A date in YYYY/mm/dd format (example 2023/12/31). Gets emails after/before a certain date. You can also use them in combination to get emails from a certain period.
2220
- <b>is</b>: Can have the following values: flagged
2240
+ <b>is</b>: Can have the following values: flagged
2241
+ <b>from</b>: Email address of the sender
2221
2242
 
2222
2243
  An example of a basic query with filters can be
2223
2244
  ```json
@@ -129,9 +129,10 @@ module Carbon
129
129
  # @param media_type [FileContentTypesNullable]
130
130
  # @param embedding_model [EmbeddingGeneratorsNullable]
131
131
  # @param include_file_level_metadata [Boolean] Flag to control whether or not to include file-level metadata in the response. This metadata will be included in the `content_metadata` field of each document along with chunk/embedding level metadata.
132
+ # @param high_accuracy [Boolean] Flag to control whether or not to perform a high accuracy embedding search. By default, this is set to false. If true, the search may return more accurate results, but may take longer to complete.
132
133
  # @param body [GetEmbeddingDocumentsBody]
133
134
  # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
134
- def get_documents(query:, k:, tags: SENTINEL, query_vector: SENTINEL, file_ids: SENTINEL, parent_file_ids: SENTINEL, include_all_children: false, tags_v2: SENTINEL, include_tags: SENTINEL, include_vectors: SENTINEL, include_raw_file: SENTINEL, hybrid_search: SENTINEL, hybrid_search_tuning_parameters: SENTINEL, media_type: SENTINEL, embedding_model: 'OPENAI', include_file_level_metadata: false, extra: {})
135
+ def get_documents(query:, k:, tags: SENTINEL, query_vector: SENTINEL, file_ids: SENTINEL, parent_file_ids: SENTINEL, include_all_children: false, tags_v2: SENTINEL, include_tags: SENTINEL, include_vectors: SENTINEL, include_raw_file: SENTINEL, hybrid_search: SENTINEL, hybrid_search_tuning_parameters: SENTINEL, media_type: SENTINEL, embedding_model: 'OPENAI', include_file_level_metadata: false, high_accuracy: false, extra: {})
135
136
  _body = {}
136
137
  _body[:tags] = tags if tags != SENTINEL
137
138
  _body[:query] = query if query != SENTINEL
@@ -149,6 +150,7 @@ module Carbon
149
150
  _body[:media_type] = media_type if media_type != SENTINEL
150
151
  _body[:embedding_model] = embedding_model if embedding_model != SENTINEL
151
152
  _body[:include_file_level_metadata] = include_file_level_metadata if include_file_level_metadata != SENTINEL
153
+ _body[:high_accuracy] = high_accuracy if high_accuracy != SENTINEL
152
154
  get_embedding_documents_body = _body
153
155
  api_response = get_documents_with_http_info_impl(get_embedding_documents_body, extra)
154
156
  api_response.data
@@ -267,9 +269,10 @@ module Carbon
267
269
  # @param media_type [FileContentTypesNullable]
268
270
  # @param embedding_model [EmbeddingGeneratorsNullable]
269
271
  # @param include_file_level_metadata [Boolean] Flag to control whether or not to include file-level metadata in the response. This metadata will be included in the `content_metadata` field of each document along with chunk/embedding level metadata.
272
+ # @param high_accuracy [Boolean] Flag to control whether or not to perform a high accuracy embedding search. By default, this is set to false. If true, the search may return more accurate results, but may take longer to complete.
270
273
  # @param body [GetEmbeddingDocumentsBody]
271
274
  # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
272
- def get_documents_with_http_info(query:, k:, tags: SENTINEL, query_vector: SENTINEL, file_ids: SENTINEL, parent_file_ids: SENTINEL, include_all_children: false, tags_v2: SENTINEL, include_tags: SENTINEL, include_vectors: SENTINEL, include_raw_file: SENTINEL, hybrid_search: SENTINEL, hybrid_search_tuning_parameters: SENTINEL, media_type: SENTINEL, embedding_model: 'OPENAI', include_file_level_metadata: false, extra: {})
275
+ def get_documents_with_http_info(query:, k:, tags: SENTINEL, query_vector: SENTINEL, file_ids: SENTINEL, parent_file_ids: SENTINEL, include_all_children: false, tags_v2: SENTINEL, include_tags: SENTINEL, include_vectors: SENTINEL, include_raw_file: SENTINEL, hybrid_search: SENTINEL, hybrid_search_tuning_parameters: SENTINEL, media_type: SENTINEL, embedding_model: 'OPENAI', include_file_level_metadata: false, high_accuracy: false, extra: {})
273
276
  _body = {}
274
277
  _body[:tags] = tags if tags != SENTINEL
275
278
  _body[:query] = query if query != SENTINEL
@@ -287,6 +290,7 @@ module Carbon
287
290
  _body[:media_type] = media_type if media_type != SENTINEL
288
291
  _body[:embedding_model] = embedding_model if embedding_model != SENTINEL
289
292
  _body[:include_file_level_metadata] = include_file_level_metadata if include_file_level_metadata != SENTINEL
293
+ _body[:high_accuracy] = high_accuracy if high_accuracy != SENTINEL
290
294
  get_embedding_documents_body = _body
291
295
  get_documents_with_http_info_impl(get_embedding_documents_body, extra)
292
296
  end
@@ -425,12 +425,14 @@ module Carbon
425
425
  #
426
426
  # @param filters [OrganizationUserFilesToSyncFilters]
427
427
  # @param send_webhook [Boolean]
428
+ # @param preserve_file_record [Boolean] Whether or not to delete all data related to the file from the database, BUT to preserve the file metadata, allowing for resyncs. By default `preserve_file_record` is false, which means that all data related to the file *as well as* its metadata will be deleted. Note that even if `preserve_file_record` is true, raw files uploaded via the `uploadfile` endpoint still cannot be resynced.
428
429
  # @param body [DeleteFilesV2QueryInput]
429
430
  # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
430
- def delete_v2(filters: SENTINEL, send_webhook: false, extra: {})
431
+ def delete_v2(filters: SENTINEL, send_webhook: false, preserve_file_record: false, extra: {})
431
432
  _body = {}
432
433
  _body[:filters] = filters if filters != SENTINEL
433
434
  _body[:send_webhook] = send_webhook if send_webhook != SENTINEL
435
+ _body[:preserve_file_record] = preserve_file_record if preserve_file_record != SENTINEL
434
436
  delete_files_v2_query_input = _body
435
437
  api_response = delete_v2_with_http_info_impl(delete_files_v2_query_input, extra)
436
438
  api_response.data
@@ -440,12 +442,14 @@ module Carbon
440
442
  #
441
443
  # @param filters [OrganizationUserFilesToSyncFilters]
442
444
  # @param send_webhook [Boolean]
445
+ # @param preserve_file_record [Boolean] Whether or not to delete all data related to the file from the database, BUT to preserve the file metadata, allowing for resyncs. By default `preserve_file_record` is false, which means that all data related to the file *as well as* its metadata will be deleted. Note that even if `preserve_file_record` is true, raw files uploaded via the `uploadfile` endpoint still cannot be resynced.
443
446
  # @param body [DeleteFilesV2QueryInput]
444
447
  # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
445
- def delete_v2_with_http_info(filters: SENTINEL, send_webhook: false, extra: {})
448
+ def delete_v2_with_http_info(filters: SENTINEL, send_webhook: false, preserve_file_record: false, extra: {})
446
449
  _body = {}
447
450
  _body[:filters] = filters if filters != SENTINEL
448
451
  _body[:send_webhook] = send_webhook if send_webhook != SENTINEL
452
+ _body[:preserve_file_record] = preserve_file_record if preserve_file_record != SENTINEL
449
453
  delete_files_v2_query_input = _body
450
454
  delete_v2_with_http_info_impl(delete_files_v2_query_input, extra)
451
455
  end
@@ -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: GOOGLE_DRIVE, SHAREPOINT, ONEDRIVE, BOX, DROPBOX
656
+ # @param enable_file_picker [Boolean] Enable integration's file picker for sources that support it. Supported sources: GOOGLE_DRIVE, DROPBOX, BOX, 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
- # @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. It will be ignored for other data sources.
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: 'dbc54493-ce4f-4a1d-a78b-862f21f1e3d7', 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: '1c47fc7c-4c6e-466f-9bf9-979ad9dc87a7', 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: GOOGLE_DRIVE, SHAREPOINT, ONEDRIVE, BOX, DROPBOX
724
+ # @param enable_file_picker [Boolean] Enable integration's file picker for sources that support it. Supported sources: GOOGLE_DRIVE, DROPBOX, BOX, 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
- # @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. It will be ignored for other data sources.
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: 'dbc54493-ce4f-4a1d-a78b-862f21f1e3d7', 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: '1c47fc7c-4c6e-466f-9bf9-979ad9dc87a7', 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
@@ -1636,11 +1636,11 @@ module Carbon
1636
1636
  # @param request_id [String]
1637
1637
  # @param use_ocr [Boolean]
1638
1638
  # @param parse_pdf_tables_with_ocr [Boolean]
1639
- # @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. It will be ignored for other data sources.
1639
+ # @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.
1640
1640
  # @param file_sync_config [FileSyncConfigNullable]
1641
1641
  # @param body [SyncFilesRequest]
1642
1642
  # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
1643
- 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: '6e21ecc1-8385-46ac-abea-01ca0b2b268d', use_ocr: false, parse_pdf_tables_with_ocr: false, incremental_sync: false, file_sync_config: SENTINEL, extra: {})
1643
+ 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: '791318ee-229d-4c64-bb0a-2563b8014484', use_ocr: false, parse_pdf_tables_with_ocr: false, incremental_sync: false, file_sync_config: SENTINEL, extra: {})
1644
1644
  _body = {}
1645
1645
  _body[:tags] = tags if tags != SENTINEL
1646
1646
  _body[:data_source_id] = data_source_id if data_source_id != SENTINEL
@@ -1684,11 +1684,11 @@ module Carbon
1684
1684
  # @param request_id [String]
1685
1685
  # @param use_ocr [Boolean]
1686
1686
  # @param parse_pdf_tables_with_ocr [Boolean]
1687
- # @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. It will be ignored for other data sources.
1687
+ # @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.
1688
1688
  # @param file_sync_config [FileSyncConfigNullable]
1689
1689
  # @param body [SyncFilesRequest]
1690
1690
  # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
1691
- 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: '6e21ecc1-8385-46ac-abea-01ca0b2b268d', use_ocr: false, parse_pdf_tables_with_ocr: false, incremental_sync: false, file_sync_config: SENTINEL, extra: {})
1691
+ 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: '791318ee-229d-4c64-bb0a-2563b8014484', use_ocr: false, parse_pdf_tables_with_ocr: false, incremental_sync: false, file_sync_config: SENTINEL, extra: {})
1692
1692
  _body = {}
1693
1693
  _body[:tags] = tags if tags != SENTINEL
1694
1694
  _body[:data_source_id] = data_source_id if data_source_id != SENTINEL
@@ -1892,11 +1892,11 @@ module Carbon
1892
1892
  # @param request_id [String]
1893
1893
  # @param use_ocr [Boolean]
1894
1894
  # @param parse_pdf_tables_with_ocr [Boolean]
1895
- # @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. It will be ignored for other data sources.
1895
+ # @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.
1896
1896
  # @param file_sync_config [FileSyncConfigNullable]
1897
1897
  # @param body [SyncFilesRequest]
1898
1898
  # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
1899
- 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: '6e21ecc1-8385-46ac-abea-01ca0b2b268d', use_ocr: false, parse_pdf_tables_with_ocr: false, incremental_sync: false, file_sync_config: SENTINEL, extra: {})
1899
+ 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: '791318ee-229d-4c64-bb0a-2563b8014484', use_ocr: false, parse_pdf_tables_with_ocr: false, incremental_sync: false, file_sync_config: SENTINEL, extra: {})
1900
1900
  _body = {}
1901
1901
  _body[:tags] = tags if tags != SENTINEL
1902
1902
  _body[:data_source_id] = data_source_id if data_source_id != SENTINEL
@@ -1940,11 +1940,11 @@ module Carbon
1940
1940
  # @param request_id [String]
1941
1941
  # @param use_ocr [Boolean]
1942
1942
  # @param parse_pdf_tables_with_ocr [Boolean]
1943
- # @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. It will be ignored for other data sources.
1943
+ # @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.
1944
1944
  # @param file_sync_config [FileSyncConfigNullable]
1945
1945
  # @param body [SyncFilesRequest]
1946
1946
  # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
1947
- 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: '6e21ecc1-8385-46ac-abea-01ca0b2b268d', use_ocr: false, parse_pdf_tables_with_ocr: false, incremental_sync: false, file_sync_config: SENTINEL, extra: {})
1947
+ 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: '791318ee-229d-4c64-bb0a-2563b8014484', use_ocr: false, parse_pdf_tables_with_ocr: false, incremental_sync: false, file_sync_config: SENTINEL, extra: {})
1948
1948
  _body = {}
1949
1949
  _body[:tags] = tags if tags != SENTINEL
1950
1950
  _body[:data_source_id] = data_source_id if data_source_id != SENTINEL
@@ -2291,6 +2291,8 @@ module Carbon
2291
2291
  # <b>after</b> or <b>before</b>: A date in YYYY/mm/dd format (example 2023/12/31). Gets emails after/before a certain date.
2292
2292
  # You can also use them in combination to get emails from a certain period.
2293
2293
  # <b>is</b>: Can have the following values - starred, important, snoozed, and unread
2294
+ # <b>from</b>: Email address of the sender
2295
+ # <b>to</b>: Email address of the recipient
2294
2296
  #
2295
2297
  # Using keys or values outside of the specified values can lead to unexpected behaviour.
2296
2298
  #
@@ -2379,6 +2381,8 @@ module Carbon
2379
2381
  # <b>after</b> or <b>before</b>: A date in YYYY/mm/dd format (example 2023/12/31). Gets emails after/before a certain date.
2380
2382
  # You can also use them in combination to get emails from a certain period.
2381
2383
  # <b>is</b>: Can have the following values - starred, important, snoozed, and unread
2384
+ # <b>from</b>: Email address of the sender
2385
+ # <b>to</b>: Email address of the recipient
2382
2386
  #
2383
2387
  # Using keys or values outside of the specified values can lead to unexpected behaviour.
2384
2388
  #
@@ -2457,7 +2461,7 @@ module Carbon
2457
2461
  end
2458
2462
 
2459
2463
  # Gmail Sync
2460
- # Once you have successfully connected your gmail account, you can choose which emails to sync with us using the filters parameter. Filters is a JSON object with key value pairs. It also supports AND and OR operations. For now, we support a limited set of keys listed below. <b>label</b>: Inbuilt Gmail labels, for example \"Important\" or a custom label you created. <b>after</b> or <b>before</b>: A date in YYYY/mm/dd format (example 2023/12/31). Gets emails after/before a certain date. You can also use them in combination to get emails from a certain period. <b>is</b>: Can have the following values - starred, important, snoozed, and unread Using keys or values outside of the specified values can lead to unexpected behaviour. An example of a basic query with filters can be ```json { \"filters\": { \"key\": \"label\", \"value\": \"Test\" } } ``` Which will list all emails that have the label \"Test\". You can use AND and OR operation in the following way: ```json { \"filters\": { \"AND\": [ { \"key\": \"after\", \"value\": \"2024/01/07\" }, { \"OR\": [ { \"key\": \"label\", \"value\": \"Personal\" }, { \"key\": \"is\", \"value\": \"starred\" } ] } ] } } ``` This will return emails after 7th of Jan that are either starred or have the label \"Personal\". Note that this is the highest level of nesting we support, i.e. you can't add more AND/OR filters within the OR filter in the above example.
2464
+ # Once you have successfully connected your gmail account, you can choose which emails to sync with us using the filters parameter. Filters is a JSON object with key value pairs. It also supports AND and OR operations. For now, we support a limited set of keys listed below. <b>label</b>: Inbuilt Gmail labels, for example \"Important\" or a custom label you created. <b>after</b> or <b>before</b>: A date in YYYY/mm/dd format (example 2023/12/31). Gets emails after/before a certain date. You can also use them in combination to get emails from a certain period. <b>is</b>: Can have the following values - starred, important, snoozed, and unread <b>from</b>: Email address of the sender <b>to</b>: Email address of the recipient Using keys or values outside of the specified values can lead to unexpected behaviour. An example of a basic query with filters can be ```json { \"filters\": { \"key\": \"label\", \"value\": \"Test\" } } ``` Which will list all emails that have the label \"Test\". You can use AND and OR operation in the following way: ```json { \"filters\": { \"AND\": [ { \"key\": \"after\", \"value\": \"2024/01/07\" }, { \"OR\": [ { \"key\": \"label\", \"value\": \"Personal\" }, { \"key\": \"is\", \"value\": \"starred\" } ] } ] } } ``` This will return emails after 7th of Jan that are either starred or have the label \"Personal\". Note that this is the highest level of nesting we support, i.e. you can't add more AND/OR filters within the OR filter in the above example.
2461
2465
  # @param gmail_sync_input [GmailSyncInput]
2462
2466
  # @param [Hash] opts the optional parameters
2463
2467
  # @return [GenericSuccessResponse]
@@ -2467,7 +2471,7 @@ module Carbon
2467
2471
  end
2468
2472
 
2469
2473
  # Gmail Sync
2470
- # Once you have successfully connected your gmail account, you can choose which emails to sync with us using the filters parameter. Filters is a JSON object with key value pairs. It also supports AND and OR operations. For now, we support a limited set of keys listed below. &lt;b&gt;label&lt;/b&gt;: Inbuilt Gmail labels, for example \&quot;Important\&quot; or a custom label you created. &lt;b&gt;after&lt;/b&gt; or &lt;b&gt;before&lt;/b&gt;: A date in YYYY/mm/dd format (example 2023/12/31). Gets emails after/before a certain date. You can also use them in combination to get emails from a certain period. &lt;b&gt;is&lt;/b&gt;: Can have the following values - starred, important, snoozed, and unread Using keys or values outside of the specified values can lead to unexpected behaviour. An example of a basic query with filters can be &#x60;&#x60;&#x60;json { \&quot;filters\&quot;: { \&quot;key\&quot;: \&quot;label\&quot;, \&quot;value\&quot;: \&quot;Test\&quot; } } &#x60;&#x60;&#x60; Which will list all emails that have the label \&quot;Test\&quot;. You can use AND and OR operation in the following way: &#x60;&#x60;&#x60;json { \&quot;filters\&quot;: { \&quot;AND\&quot;: [ { \&quot;key\&quot;: \&quot;after\&quot;, \&quot;value\&quot;: \&quot;2024/01/07\&quot; }, { \&quot;OR\&quot;: [ { \&quot;key\&quot;: \&quot;label\&quot;, \&quot;value\&quot;: \&quot;Personal\&quot; }, { \&quot;key\&quot;: \&quot;is\&quot;, \&quot;value\&quot;: \&quot;starred\&quot; } ] } ] } } &#x60;&#x60;&#x60; This will return emails after 7th of Jan that are either starred or have the label \&quot;Personal\&quot;. Note that this is the highest level of nesting we support, i.e. you can&#39;t add more AND/OR filters within the OR filter in the above example.
2474
+ # Once you have successfully connected your gmail account, you can choose which emails to sync with us using the filters parameter. Filters is a JSON object with key value pairs. It also supports AND and OR operations. For now, we support a limited set of keys listed below. &lt;b&gt;label&lt;/b&gt;: Inbuilt Gmail labels, for example \&quot;Important\&quot; or a custom label you created. &lt;b&gt;after&lt;/b&gt; or &lt;b&gt;before&lt;/b&gt;: A date in YYYY/mm/dd format (example 2023/12/31). Gets emails after/before a certain date. You can also use them in combination to get emails from a certain period. &lt;b&gt;is&lt;/b&gt;: Can have the following values - starred, important, snoozed, and unread &lt;b&gt;from&lt;/b&gt;: Email address of the sender &lt;b&gt;to&lt;/b&gt;: Email address of the recipient Using keys or values outside of the specified values can lead to unexpected behaviour. An example of a basic query with filters can be &#x60;&#x60;&#x60;json { \&quot;filters\&quot;: { \&quot;key\&quot;: \&quot;label\&quot;, \&quot;value\&quot;: \&quot;Test\&quot; } } &#x60;&#x60;&#x60; Which will list all emails that have the label \&quot;Test\&quot;. You can use AND and OR operation in the following way: &#x60;&#x60;&#x60;json { \&quot;filters\&quot;: { \&quot;AND\&quot;: [ { \&quot;key\&quot;: \&quot;after\&quot;, \&quot;value\&quot;: \&quot;2024/01/07\&quot; }, { \&quot;OR\&quot;: [ { \&quot;key\&quot;: \&quot;label\&quot;, \&quot;value\&quot;: \&quot;Personal\&quot; }, { \&quot;key\&quot;: \&quot;is\&quot;, \&quot;value\&quot;: \&quot;starred\&quot; } ] } ] } } &#x60;&#x60;&#x60; This will return emails after 7th of Jan that are either starred or have the label \&quot;Personal\&quot;. Note that this is the highest level of nesting we support, i.e. you can&#39;t add more AND/OR filters within the OR filter in the above example.
2471
2475
  # @param gmail_sync_input [GmailSyncInput]
2472
2476
  # @param [Hash] opts the optional parameters
2473
2477
  # @return [APIResponse] data is GenericSuccessResponse, status code, headers and response
@@ -2535,7 +2539,8 @@ module Carbon
2535
2539
  #
2536
2540
  # <b>category</b>: Custom categories that you created in Outlook.
2537
2541
  # <b>after</b> or <b>before</b>: A date in YYYY/mm/dd format (example 2023/12/31). Gets emails after/before a certain date. You can also use them in combination to get emails from a certain period.
2538
- # <b>is</b>: Can have the following values: flagged
2542
+ # <b>is</b>: Can have the following values: flagged
2543
+ # <b>from</b>: Email address of the sender
2539
2544
  #
2540
2545
  # An example of a basic query with filters can be
2541
2546
  # ```json
@@ -2635,7 +2640,8 @@ module Carbon
2635
2640
  #
2636
2641
  # <b>category</b>: Custom categories that you created in Outlook.
2637
2642
  # <b>after</b> or <b>before</b>: A date in YYYY/mm/dd format (example 2023/12/31). Gets emails after/before a certain date. You can also use them in combination to get emails from a certain period.
2638
- # <b>is</b>: Can have the following values: flagged
2643
+ # <b>is</b>: Can have the following values: flagged
2644
+ # <b>from</b>: Email address of the sender
2639
2645
  #
2640
2646
  # An example of a basic query with filters can be
2641
2647
  # ```json
@@ -2725,7 +2731,7 @@ module Carbon
2725
2731
  end
2726
2732
 
2727
2733
  # Outlook Sync
2728
- # Once you have successfully connected your Outlook account, you can choose which emails to sync with us using the filters and folder parameter. \"folder\" should be the folder you want to sync from Outlook. By default we get messages from your inbox folder. Filters is a JSON object with key value pairs. It also supports AND and OR operations. For now, we support a limited set of keys listed below. <b>category</b>: Custom categories that you created in Outlook. <b>after</b> or <b>before</b>: A date in YYYY/mm/dd format (example 2023/12/31). Gets emails after/before a certain date. You can also use them in combination to get emails from a certain period. <b>is</b>: Can have the following values: flagged An example of a basic query with filters can be ```json { \"filters\": { \"key\": \"category\", \"value\": \"Test\" } } ``` Which will list all emails that have the category \"Test\". Specifying a custom folder in the same query ```json { \"folder\": \"Folder Name\", \"filters\": { \"key\": \"category\", \"value\": \"Test\" } } ``` You can use AND and OR operation in the following way: ```json { \"filters\": { \"AND\": [ { \"key\": \"after\", \"value\": \"2024/01/07\" }, { \"OR\": [ { \"key\": \"category\", \"value\": \"Personal\" }, { \"key\": \"category\", \"value\": \"Test\" }, ] } ] } } ``` This will return emails after 7th of Jan that have either Personal or Test as category. Note that this is the highest level of nesting we support, i.e. you can't add more AND/OR filters within the OR filter in the above example.
2734
+ # Once you have successfully connected your Outlook account, you can choose which emails to sync with us using the filters and folder parameter. \"folder\" should be the folder you want to sync from Outlook. By default we get messages from your inbox folder. Filters is a JSON object with key value pairs. It also supports AND and OR operations. For now, we support a limited set of keys listed below. <b>category</b>: Custom categories that you created in Outlook. <b>after</b> or <b>before</b>: A date in YYYY/mm/dd format (example 2023/12/31). Gets emails after/before a certain date. You can also use them in combination to get emails from a certain period. <b>is</b>: Can have the following values: flagged <b>from</b>: Email address of the sender An example of a basic query with filters can be ```json { \"filters\": { \"key\": \"category\", \"value\": \"Test\" } } ``` Which will list all emails that have the category \"Test\". Specifying a custom folder in the same query ```json { \"folder\": \"Folder Name\", \"filters\": { \"key\": \"category\", \"value\": \"Test\" } } ``` You can use AND and OR operation in the following way: ```json { \"filters\": { \"AND\": [ { \"key\": \"after\", \"value\": \"2024/01/07\" }, { \"OR\": [ { \"key\": \"category\", \"value\": \"Personal\" }, { \"key\": \"category\", \"value\": \"Test\" }, ] } ] } } ``` This will return emails after 7th of Jan that have either Personal or Test as category. Note that this is the highest level of nesting we support, i.e. you can't add more AND/OR filters within the OR filter in the above example.
2729
2735
  # @param outlook_sync_input [OutlookSyncInput]
2730
2736
  # @param [Hash] opts the optional parameters
2731
2737
  # @return [GenericSuccessResponse]
@@ -2735,7 +2741,7 @@ module Carbon
2735
2741
  end
2736
2742
 
2737
2743
  # Outlook Sync
2738
- # Once you have successfully connected your Outlook account, you can choose which emails to sync with us using the filters and folder parameter. \&quot;folder\&quot; should be the folder you want to sync from Outlook. By default we get messages from your inbox folder. Filters is a JSON object with key value pairs. It also supports AND and OR operations. For now, we support a limited set of keys listed below. &lt;b&gt;category&lt;/b&gt;: Custom categories that you created in Outlook. &lt;b&gt;after&lt;/b&gt; or &lt;b&gt;before&lt;/b&gt;: A date in YYYY/mm/dd format (example 2023/12/31). Gets emails after/before a certain date. You can also use them in combination to get emails from a certain period. &lt;b&gt;is&lt;/b&gt;: Can have the following values: flagged An example of a basic query with filters can be &#x60;&#x60;&#x60;json { \&quot;filters\&quot;: { \&quot;key\&quot;: \&quot;category\&quot;, \&quot;value\&quot;: \&quot;Test\&quot; } } &#x60;&#x60;&#x60; Which will list all emails that have the category \&quot;Test\&quot;. Specifying a custom folder in the same query &#x60;&#x60;&#x60;json { \&quot;folder\&quot;: \&quot;Folder Name\&quot;, \&quot;filters\&quot;: { \&quot;key\&quot;: \&quot;category\&quot;, \&quot;value\&quot;: \&quot;Test\&quot; } } &#x60;&#x60;&#x60; You can use AND and OR operation in the following way: &#x60;&#x60;&#x60;json { \&quot;filters\&quot;: { \&quot;AND\&quot;: [ { \&quot;key\&quot;: \&quot;after\&quot;, \&quot;value\&quot;: \&quot;2024/01/07\&quot; }, { \&quot;OR\&quot;: [ { \&quot;key\&quot;: \&quot;category\&quot;, \&quot;value\&quot;: \&quot;Personal\&quot; }, { \&quot;key\&quot;: \&quot;category\&quot;, \&quot;value\&quot;: \&quot;Test\&quot; }, ] } ] } } &#x60;&#x60;&#x60; This will return emails after 7th of Jan that have either Personal or Test as category. Note that this is the highest level of nesting we support, i.e. you can&#39;t add more AND/OR filters within the OR filter in the above example.
2744
+ # Once you have successfully connected your Outlook account, you can choose which emails to sync with us using the filters and folder parameter. \&quot;folder\&quot; should be the folder you want to sync from Outlook. By default we get messages from your inbox folder. Filters is a JSON object with key value pairs. It also supports AND and OR operations. For now, we support a limited set of keys listed below. &lt;b&gt;category&lt;/b&gt;: Custom categories that you created in Outlook. &lt;b&gt;after&lt;/b&gt; or &lt;b&gt;before&lt;/b&gt;: A date in YYYY/mm/dd format (example 2023/12/31). Gets emails after/before a certain date. You can also use them in combination to get emails from a certain period. &lt;b&gt;is&lt;/b&gt;: Can have the following values: flagged &lt;b&gt;from&lt;/b&gt;: Email address of the sender An example of a basic query with filters can be &#x60;&#x60;&#x60;json { \&quot;filters\&quot;: { \&quot;key\&quot;: \&quot;category\&quot;, \&quot;value\&quot;: \&quot;Test\&quot; } } &#x60;&#x60;&#x60; Which will list all emails that have the category \&quot;Test\&quot;. Specifying a custom folder in the same query &#x60;&#x60;&#x60;json { \&quot;folder\&quot;: \&quot;Folder Name\&quot;, \&quot;filters\&quot;: { \&quot;key\&quot;: \&quot;category\&quot;, \&quot;value\&quot;: \&quot;Test\&quot; } } &#x60;&#x60;&#x60; You can use AND and OR operation in the following way: &#x60;&#x60;&#x60;json { \&quot;filters\&quot;: { \&quot;AND\&quot;: [ { \&quot;key\&quot;: \&quot;after\&quot;, \&quot;value\&quot;: \&quot;2024/01/07\&quot; }, { \&quot;OR\&quot;: [ { \&quot;key\&quot;: \&quot;category\&quot;, \&quot;value\&quot;: \&quot;Personal\&quot; }, { \&quot;key\&quot;: \&quot;category\&quot;, \&quot;value\&quot;: \&quot;Test\&quot; }, ] } ] } } &#x60;&#x60;&#x60; This will return emails after 7th of Jan that have either Personal or Test as category. Note that this is the highest level of nesting we support, i.e. you can&#39;t add more AND/OR filters within the OR filter in the above example.
2739
2745
  # @param outlook_sync_input [OutlookSyncInput]
2740
2746
  # @param [Hash] opts the optional parameters
2741
2747
  # @return [APIResponse] data is GenericSuccessResponse, status code, headers and response
@@ -15,11 +15,15 @@ module Carbon
15
15
 
16
16
  attr_accessor :send_webhook
17
17
 
18
+ # Whether or not to delete all data related to the file from the database, BUT to preserve the file metadata, allowing for resyncs. By default `preserve_file_record` is false, which means that all data related to the file *as well as* its metadata will be deleted. Note that even if `preserve_file_record` is true, raw files uploaded via the `uploadfile` endpoint still cannot be resynced.
19
+ attr_accessor :preserve_file_record
20
+
18
21
  # Attribute mapping from ruby-style variable name to JSON key.
19
22
  def self.attribute_map
20
23
  {
21
24
  :'filters' => :'filters',
22
- :'send_webhook' => :'send_webhook'
25
+ :'send_webhook' => :'send_webhook',
26
+ :'preserve_file_record' => :'preserve_file_record'
23
27
  }
24
28
  end
25
29
 
@@ -32,7 +36,8 @@ module Carbon
32
36
  def self.openapi_types
33
37
  {
34
38
  :'filters' => :'OrganizationUserFilesToSyncFilters',
35
- :'send_webhook' => :'Boolean'
39
+ :'send_webhook' => :'Boolean',
40
+ :'preserve_file_record' => :'Boolean'
36
41
  }
37
42
  end
38
43
 
@@ -66,6 +71,12 @@ module Carbon
66
71
  else
67
72
  self.send_webhook = false
68
73
  end
74
+
75
+ if attributes.key?(:'preserve_file_record')
76
+ self.preserve_file_record = attributes[:'preserve_file_record']
77
+ else
78
+ self.preserve_file_record = false
79
+ end
69
80
  end
70
81
 
71
82
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -87,7 +98,8 @@ module Carbon
87
98
  return true if self.equal?(o)
88
99
  self.class == o.class &&
89
100
  filters == o.filters &&
90
- send_webhook == o.send_webhook
101
+ send_webhook == o.send_webhook &&
102
+ preserve_file_record == o.preserve_file_record
91
103
  end
92
104
 
93
105
  # @see the `==` method
@@ -99,7 +111,7 @@ module Carbon
99
111
  # Calculates hash code according to all attributes.
100
112
  # @return [Integer] Hash code
101
113
  def hash
102
- [filters, send_webhook].hash
114
+ [filters, send_webhook, preserve_file_record].hash
103
115
  end
104
116
 
105
117
  # Builds the object from hash
@@ -56,6 +56,9 @@ module Carbon
56
56
  # Flag to control whether or not to include file-level metadata in the response. This metadata will be included in the `content_metadata` field of each document along with chunk/embedding level metadata.
57
57
  attr_accessor :include_file_level_metadata
58
58
 
59
+ # Flag to control whether or not to perform a high accuracy embedding search. By default, this is set to false. If true, the search may return more accurate results, but may take longer to complete.
60
+ attr_accessor :high_accuracy
61
+
59
62
  # Attribute mapping from ruby-style variable name to JSON key.
60
63
  def self.attribute_map
61
64
  {
@@ -74,7 +77,8 @@ module Carbon
74
77
  :'hybrid_search_tuning_parameters' => :'hybrid_search_tuning_parameters',
75
78
  :'media_type' => :'media_type',
76
79
  :'embedding_model' => :'embedding_model',
77
- :'include_file_level_metadata' => :'include_file_level_metadata'
80
+ :'include_file_level_metadata' => :'include_file_level_metadata',
81
+ :'high_accuracy' => :'high_accuracy'
78
82
  }
79
83
  end
80
84
 
@@ -101,7 +105,8 @@ module Carbon
101
105
  :'hybrid_search_tuning_parameters' => :'HybridSearchTuningParamsNullable',
102
106
  :'media_type' => :'FileContentTypesNullable',
103
107
  :'embedding_model' => :'EmbeddingGeneratorsNullable',
104
- :'include_file_level_metadata' => :'Boolean'
108
+ :'include_file_level_metadata' => :'Boolean',
109
+ :'high_accuracy' => :'Boolean'
105
110
  }
106
111
  end
107
112
 
@@ -120,7 +125,8 @@ module Carbon
120
125
  :'hybrid_search_tuning_parameters',
121
126
  :'media_type',
122
127
  :'embedding_model',
123
- :'include_file_level_metadata'
128
+ :'include_file_level_metadata',
129
+ :'high_accuracy'
124
130
  ])
125
131
  end
126
132
 
@@ -216,6 +222,12 @@ module Carbon
216
222
  else
217
223
  self.include_file_level_metadata = false
218
224
  end
225
+
226
+ if attributes.key?(:'high_accuracy')
227
+ self.high_accuracy = attributes[:'high_accuracy']
228
+ else
229
+ self.high_accuracy = false
230
+ end
219
231
  end
220
232
 
221
233
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -299,7 +311,8 @@ module Carbon
299
311
  hybrid_search_tuning_parameters == o.hybrid_search_tuning_parameters &&
300
312
  media_type == o.media_type &&
301
313
  embedding_model == o.embedding_model &&
302
- include_file_level_metadata == o.include_file_level_metadata
314
+ include_file_level_metadata == o.include_file_level_metadata &&
315
+ high_accuracy == o.high_accuracy
303
316
  end
304
317
 
305
318
  # @see the `==` method
@@ -311,7 +324,7 @@ module Carbon
311
324
  # Calculates hash code according to all attributes.
312
325
  # @return [Integer] Hash code
313
326
  def hash
314
- [tags, query, query_vector, k, file_ids, parent_file_ids, include_all_children, tags_v2, include_tags, include_vectors, include_raw_file, hybrid_search, hybrid_search_tuning_parameters, media_type, embedding_model, include_file_level_metadata].hash
327
+ [tags, query, query_vector, k, file_ids, parent_file_ids, include_all_children, tags_v2, include_tags, include_vectors, include_raw_file, hybrid_search, hybrid_search_tuning_parameters, media_type, embedding_model, include_file_level_metadata, high_accuracy].hash
315
328
  end
316
329
 
317
330
  # Builds the object from hash
@@ -61,13 +61,13 @@ 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: GOOGLE_DRIVE, SHAREPOINT, ONEDRIVE, BOX, DROPBOX
64
+ # Enable integration's file picker for sources that support it. Supported sources: GOOGLE_DRIVE, DROPBOX, BOX, 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
68
68
  attr_accessor :sync_source_items
69
69
 
70
- # 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. It will be ignored for other data sources.
70
+ # 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.
71
71
  attr_accessor :incremental_sync
72
72
 
73
73
  attr_accessor :file_sync_config
@@ -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 = 'dbc54493-ce4f-4a1d-a78b-862f21f1e3d7'
282
+ self.request_id = '1c47fc7c-4c6e-466f-9bf9-979ad9dc87a7'
283
283
  end
284
284
 
285
285
  if attributes.key?(:'use_ocr')
@@ -40,7 +40,7 @@ module Carbon
40
40
 
41
41
  attr_accessor :parse_pdf_tables_with_ocr
42
42
 
43
- # 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. It will be ignored for other data sources.
43
+ # 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.
44
44
  attr_accessor :incremental_sync
45
45
 
46
46
  attr_accessor :file_sync_config
@@ -187,7 +187,7 @@ module Carbon
187
187
  if attributes.key?(:'request_id')
188
188
  self.request_id = attributes[:'request_id']
189
189
  else
190
- self.request_id = '6e21ecc1-8385-46ac-abea-01ca0b2b268d'
190
+ self.request_id = '791318ee-229d-4c64-bb0a-2563b8014484'
191
191
  end
192
192
 
193
193
  if attributes.key?(:'use_ocr')
@@ -40,7 +40,7 @@ module Carbon
40
40
  # Enabling this flag will fetch all available content from the source to be listed via list items endpoint
41
41
  attr_accessor :sync_source_items
42
42
 
43
- # 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. It will be ignored for other data sources.
43
+ # 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.
44
44
  attr_accessor :incremental_sync
45
45
 
46
46
  attr_accessor :file_sync_config
@@ -182,7 +182,7 @@ module Carbon
182
182
  if attributes.key?(:'request_id')
183
183
  self.request_id = attributes[:'request_id']
184
184
  else
185
- self.request_id = '7b23cde6-ec28-417a-9bff-b10e9042394c'
185
+ self.request_id = '0210abaa-8c19-4ac6-9c4b-fb856acce902'
186
186
  end
187
187
 
188
188
  if attributes.key?(:'enable_file_picker')
@@ -73,6 +73,8 @@ module Carbon
73
73
 
74
74
  attr_accessor :messages_metadata
75
75
 
76
+ attr_accessor :file_contents_deleted
77
+
76
78
  attr_accessor :created_at
77
79
 
78
80
  attr_accessor :updated_at
@@ -111,6 +113,7 @@ module Carbon
111
113
  :'request_id' => :'request_id',
112
114
  :'sync_properties' => :'sync_properties',
113
115
  :'messages_metadata' => :'messages_metadata',
116
+ :'file_contents_deleted' => :'file_contents_deleted',
114
117
  :'created_at' => :'created_at',
115
118
  :'updated_at' => :'updated_at'
116
119
  }
@@ -155,6 +158,7 @@ module Carbon
155
158
  :'request_id' => :'String',
156
159
  :'sync_properties' => :'Object',
157
160
  :'messages_metadata' => :'Object',
161
+ :'file_contents_deleted' => :'Boolean',
158
162
  :'created_at' => :'Time',
159
163
  :'updated_at' => :'Time'
160
164
  }
@@ -328,6 +332,12 @@ module Carbon
328
332
  self.messages_metadata = attributes[:'messages_metadata']
329
333
  end
330
334
 
335
+ if attributes.key?(:'file_contents_deleted')
336
+ self.file_contents_deleted = attributes[:'file_contents_deleted']
337
+ else
338
+ self.file_contents_deleted = false
339
+ end
340
+
331
341
  if attributes.key?(:'created_at')
332
342
  self.created_at = attributes[:'created_at']
333
343
  end
@@ -381,6 +391,10 @@ module Carbon
381
391
  invalid_properties.push('invalid value for "messages_metadata", messages_metadata cannot be nil.')
382
392
  end
383
393
 
394
+ if @file_contents_deleted.nil?
395
+ invalid_properties.push('invalid value for "file_contents_deleted", file_contents_deleted cannot be nil.')
396
+ end
397
+
384
398
  if @created_at.nil?
385
399
  invalid_properties.push('invalid value for "created_at", created_at cannot be nil.')
386
400
  end
@@ -405,6 +419,7 @@ module Carbon
405
419
  return false if @skip_embedding_generation.nil?
406
420
  return false if @sync_properties.nil?
407
421
  return false if @messages_metadata.nil?
422
+ return false if @file_contents_deleted.nil?
408
423
  return false if @created_at.nil?
409
424
  return false if @updated_at.nil?
410
425
  true
@@ -446,6 +461,7 @@ module Carbon
446
461
  request_id == o.request_id &&
447
462
  sync_properties == o.sync_properties &&
448
463
  messages_metadata == o.messages_metadata &&
464
+ file_contents_deleted == o.file_contents_deleted &&
449
465
  created_at == o.created_at &&
450
466
  updated_at == o.updated_at
451
467
  end
@@ -459,7 +475,7 @@ module Carbon
459
475
  # Calculates hash code according to all attributes.
460
476
  # @return [Integer] Hash code
461
477
  def hash
462
- [tags, id, source, organization_id, organization_supplied_user_id, organization_user_data_source_id, external_file_id, external_url, sync_status, sync_error_message, last_sync, file_statistics, file_metadata, embedding_properties, chunk_size, chunk_overlap, chunk_properties, ocr_properties, ocr_job_started_at, name, parent_id, enable_auto_sync, presigned_url, parsed_text_url, additional_presigned_urls, skip_embedding_generation, source_created_at, generate_sparse_vectors, request_id, sync_properties, messages_metadata, created_at, updated_at].hash
478
+ [tags, id, source, organization_id, organization_supplied_user_id, organization_user_data_source_id, external_file_id, external_url, sync_status, sync_error_message, last_sync, file_statistics, file_metadata, embedding_properties, chunk_size, chunk_overlap, chunk_properties, ocr_properties, ocr_job_started_at, name, parent_id, enable_auto_sync, presigned_url, parsed_text_url, additional_presigned_urls, skip_embedding_generation, source_created_at, generate_sparse_vectors, request_id, sync_properties, messages_metadata, file_contents_deleted, created_at, updated_at].hash
463
479
  end
464
480
 
465
481
  # Builds the object from hash
@@ -7,5 +7,5 @@ The version of the OpenAPI document: 1.0.0
7
7
  =end
8
8
 
9
9
  module Carbon
10
- VERSION = '0.2.10'
10
+ VERSION = '0.2.12'
11
11
  end
@@ -257,7 +257,7 @@ describe 'IntegrationsApi' do
257
257
 
258
258
  # unit tests for sync_gmail
259
259
  # Gmail Sync
260
- # Once you have successfully connected your gmail account, you can choose which emails to sync with us using the filters parameter. Filters is a JSON object with key value pairs. It also supports AND and OR operations. For now, we support a limited set of keys listed below. &lt;b&gt;label&lt;/b&gt;: Inbuilt Gmail labels, for example \&quot;Important\&quot; or a custom label you created. &lt;b&gt;after&lt;/b&gt; or &lt;b&gt;before&lt;/b&gt;: A date in YYYY/mm/dd format (example 2023/12/31). Gets emails after/before a certain date. You can also use them in combination to get emails from a certain period. &lt;b&gt;is&lt;/b&gt;: Can have the following values - starred, important, snoozed, and unread Using keys or values outside of the specified values can lead to unexpected behaviour. An example of a basic query with filters can be &#x60;&#x60;&#x60;json { \&quot;filters\&quot;: { \&quot;key\&quot;: \&quot;label\&quot;, \&quot;value\&quot;: \&quot;Test\&quot; } } &#x60;&#x60;&#x60; Which will list all emails that have the label \&quot;Test\&quot;. You can use AND and OR operation in the following way: &#x60;&#x60;&#x60;json { \&quot;filters\&quot;: { \&quot;AND\&quot;: [ { \&quot;key\&quot;: \&quot;after\&quot;, \&quot;value\&quot;: \&quot;2024/01/07\&quot; }, { \&quot;OR\&quot;: [ { \&quot;key\&quot;: \&quot;label\&quot;, \&quot;value\&quot;: \&quot;Personal\&quot; }, { \&quot;key\&quot;: \&quot;is\&quot;, \&quot;value\&quot;: \&quot;starred\&quot; } ] } ] } } &#x60;&#x60;&#x60; This will return emails after 7th of Jan that are either starred or have the label \&quot;Personal\&quot;. Note that this is the highest level of nesting we support, i.e. you can&#39;t add more AND/OR filters within the OR filter in the above example.
260
+ # Once you have successfully connected your gmail account, you can choose which emails to sync with us using the filters parameter. Filters is a JSON object with key value pairs. It also supports AND and OR operations. For now, we support a limited set of keys listed below. &lt;b&gt;label&lt;/b&gt;: Inbuilt Gmail labels, for example \&quot;Important\&quot; or a custom label you created. &lt;b&gt;after&lt;/b&gt; or &lt;b&gt;before&lt;/b&gt;: A date in YYYY/mm/dd format (example 2023/12/31). Gets emails after/before a certain date. You can also use them in combination to get emails from a certain period. &lt;b&gt;is&lt;/b&gt;: Can have the following values - starred, important, snoozed, and unread &lt;b&gt;from&lt;/b&gt;: Email address of the sender &lt;b&gt;to&lt;/b&gt;: Email address of the recipient Using keys or values outside of the specified values can lead to unexpected behaviour. An example of a basic query with filters can be &#x60;&#x60;&#x60;json { \&quot;filters\&quot;: { \&quot;key\&quot;: \&quot;label\&quot;, \&quot;value\&quot;: \&quot;Test\&quot; } } &#x60;&#x60;&#x60; Which will list all emails that have the label \&quot;Test\&quot;. You can use AND and OR operation in the following way: &#x60;&#x60;&#x60;json { \&quot;filters\&quot;: { \&quot;AND\&quot;: [ { \&quot;key\&quot;: \&quot;after\&quot;, \&quot;value\&quot;: \&quot;2024/01/07\&quot; }, { \&quot;OR\&quot;: [ { \&quot;key\&quot;: \&quot;label\&quot;, \&quot;value\&quot;: \&quot;Personal\&quot; }, { \&quot;key\&quot;: \&quot;is\&quot;, \&quot;value\&quot;: \&quot;starred\&quot; } ] } ] } } &#x60;&#x60;&#x60; This will return emails after 7th of Jan that are either starred or have the label \&quot;Personal\&quot;. Note that this is the highest level of nesting we support, i.e. you can&#39;t add more AND/OR filters within the OR filter in the above example.
261
261
  # @param gmail_sync_input
262
262
  # @param [Hash] opts the optional parameters
263
263
  # @return [GenericSuccessResponse]
@@ -269,7 +269,7 @@ describe 'IntegrationsApi' do
269
269
 
270
270
  # unit tests for sync_outlook
271
271
  # Outlook Sync
272
- # Once you have successfully connected your Outlook account, you can choose which emails to sync with us using the filters and folder parameter. \&quot;folder\&quot; should be the folder you want to sync from Outlook. By default we get messages from your inbox folder. Filters is a JSON object with key value pairs. It also supports AND and OR operations. For now, we support a limited set of keys listed below. &lt;b&gt;category&lt;/b&gt;: Custom categories that you created in Outlook. &lt;b&gt;after&lt;/b&gt; or &lt;b&gt;before&lt;/b&gt;: A date in YYYY/mm/dd format (example 2023/12/31). Gets emails after/before a certain date. You can also use them in combination to get emails from a certain period. &lt;b&gt;is&lt;/b&gt;: Can have the following values: flagged An example of a basic query with filters can be &#x60;&#x60;&#x60;json { \&quot;filters\&quot;: { \&quot;key\&quot;: \&quot;category\&quot;, \&quot;value\&quot;: \&quot;Test\&quot; } } &#x60;&#x60;&#x60; Which will list all emails that have the category \&quot;Test\&quot;. Specifying a custom folder in the same query &#x60;&#x60;&#x60;json { \&quot;folder\&quot;: \&quot;Folder Name\&quot;, \&quot;filters\&quot;: { \&quot;key\&quot;: \&quot;category\&quot;, \&quot;value\&quot;: \&quot;Test\&quot; } } &#x60;&#x60;&#x60; You can use AND and OR operation in the following way: &#x60;&#x60;&#x60;json { \&quot;filters\&quot;: { \&quot;AND\&quot;: [ { \&quot;key\&quot;: \&quot;after\&quot;, \&quot;value\&quot;: \&quot;2024/01/07\&quot; }, { \&quot;OR\&quot;: [ { \&quot;key\&quot;: \&quot;category\&quot;, \&quot;value\&quot;: \&quot;Personal\&quot; }, { \&quot;key\&quot;: \&quot;category\&quot;, \&quot;value\&quot;: \&quot;Test\&quot; }, ] } ] } } &#x60;&#x60;&#x60; This will return emails after 7th of Jan that have either Personal or Test as category. Note that this is the highest level of nesting we support, i.e. you can&#39;t add more AND/OR filters within the OR filter in the above example.
272
+ # Once you have successfully connected your Outlook account, you can choose which emails to sync with us using the filters and folder parameter. \&quot;folder\&quot; should be the folder you want to sync from Outlook. By default we get messages from your inbox folder. Filters is a JSON object with key value pairs. It also supports AND and OR operations. For now, we support a limited set of keys listed below. &lt;b&gt;category&lt;/b&gt;: Custom categories that you created in Outlook. &lt;b&gt;after&lt;/b&gt; or &lt;b&gt;before&lt;/b&gt;: A date in YYYY/mm/dd format (example 2023/12/31). Gets emails after/before a certain date. You can also use them in combination to get emails from a certain period. &lt;b&gt;is&lt;/b&gt;: Can have the following values: flagged &lt;b&gt;from&lt;/b&gt;: Email address of the sender An example of a basic query with filters can be &#x60;&#x60;&#x60;json { \&quot;filters\&quot;: { \&quot;key\&quot;: \&quot;category\&quot;, \&quot;value\&quot;: \&quot;Test\&quot; } } &#x60;&#x60;&#x60; Which will list all emails that have the category \&quot;Test\&quot;. Specifying a custom folder in the same query &#x60;&#x60;&#x60;json { \&quot;folder\&quot;: \&quot;Folder Name\&quot;, \&quot;filters\&quot;: { \&quot;key\&quot;: \&quot;category\&quot;, \&quot;value\&quot;: \&quot;Test\&quot; } } &#x60;&#x60;&#x60; You can use AND and OR operation in the following way: &#x60;&#x60;&#x60;json { \&quot;filters\&quot;: { \&quot;AND\&quot;: [ { \&quot;key\&quot;: \&quot;after\&quot;, \&quot;value\&quot;: \&quot;2024/01/07\&quot; }, { \&quot;OR\&quot;: [ { \&quot;key\&quot;: \&quot;category\&quot;, \&quot;value\&quot;: \&quot;Personal\&quot; }, { \&quot;key\&quot;: \&quot;category\&quot;, \&quot;value\&quot;: \&quot;Test\&quot; }, ] } ] } } &#x60;&#x60;&#x60; This will return emails after 7th of Jan that have either Personal or Test as category. Note that this is the highest level of nesting we support, i.e. you can&#39;t add more AND/OR filters within the OR filter in the above example.
273
273
  # @param outlook_sync_input
274
274
  # @param [Hash] opts the optional parameters
275
275
  # @return [GenericSuccessResponse]
@@ -31,4 +31,10 @@ describe Carbon::DeleteFilesV2QueryInput do
31
31
  end
32
32
  end
33
33
 
34
+ describe 'test attribute "preserve_file_record"' do
35
+ it 'should work' do
36
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
37
+ end
38
+ end
39
+
34
40
  end
@@ -115,4 +115,10 @@ describe Carbon::GetEmbeddingDocumentsBody do
115
115
  end
116
116
  end
117
117
 
118
+ describe 'test attribute "high_accuracy"' do
119
+ it 'should work' do
120
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
121
+ end
122
+ end
123
+
118
124
  end
@@ -205,6 +205,12 @@ describe Carbon::UserFile do
205
205
  end
206
206
  end
207
207
 
208
+ describe 'test attribute "file_contents_deleted"' do
209
+ it 'should work' do
210
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
211
+ end
212
+ end
213
+
208
214
  describe 'test attribute "created_at"' do
209
215
  it 'should work' do
210
216
  # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: carbon_ruby_sdk
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.10
4
+ version: 0.2.12
5
5
  platform: ruby
6
6
  authors:
7
7
  - Konfig
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-06-28 00:00:00.000000000 Z
11
+ date: 2024-07-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday