carbon_ruby_sdk 0.2.9 → 0.2.11

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: fda5b1ec1c730f2f9a580a276304ac423b05d02cd9ed4f14696d0c49bd67b0c0
4
- data.tar.gz: ab62de83823f3bea5defd1d30500f92e36241a679d3df90a0fcfc73f67143981
3
+ metadata.gz: b04d256cbef6a41ff29fa3b1a2cc78407b5794de93863466340f609fcb33aec0
4
+ data.tar.gz: 7727822c093a86baf426b1d2ba6a110ae5bd16d7d14608d0506e460e48531d10
5
5
  SHA512:
6
- metadata.gz: c3c676f58227aee9663ac184703f8da022ad568055233a99db2c700e00d687b82f7392ed2957f98b36cb3b2c9896c7ccb48641e4f8ca9131c0df34c1c65c7d79
7
- data.tar.gz: 7463c9e146c1350f304bb2610756c1d78ee9790a942edb6566c1df62ab8bd929e383532c362c0bdf64a3a3f54b4e278ba085ba914f3e866b6ba3ee34358ec9db
6
+ metadata.gz: 2da896de2f4786ab41df3a0cd8a8fb9f015fa708fd2db7ba9ef2687ed14e6749dff34f7288bb66a68286d2d59145de021e30343b00c9bbb11b676003bb181ca2
7
+ data.tar.gz: 8fdbf826367d8e6911e3923e859ca395d2c4b303daf32ea91ee82ebbede9f3f5e3da0cf32126809badc67bd2893edcc18e62481926dd85396761967aa49302f7
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.10)
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.9-blue)](https://rubygems.org/gems/carbon_ruby_sdk/versions/0.2.9)
9
+ [![npm](https://img.shields.io/badge/gem-v0.2.11-blue)](https://rubygems.org/gems/carbon_ruby_sdk/versions/0.2.11)
10
10
 
11
11
  </div>
12
12
 
@@ -69,6 +69,7 @@ Connect external data to LLMs, no matter the source.
69
69
  * [`carbon.organizations.update_stats`](#carbonorganizationsupdate_stats)
70
70
  * [`carbon.users.delete`](#carbonusersdelete)
71
71
  * [`carbon.users.get`](#carbonusersget)
72
+ * [`carbon.users.list`](#carbonuserslist)
72
73
  * [`carbon.users.toggle_user_features`](#carbonuserstoggle_user_features)
73
74
  * [`carbon.users.update_users`](#carbonusersupdate_users)
74
75
  * [`carbon.utilities.fetch_urls`](#carbonutilitiesfetch_urls)
@@ -90,7 +91,7 @@ Connect external data to LLMs, no matter the source.
90
91
  Add to Gemfile:
91
92
 
92
93
  ```ruby
93
- gem 'carbon_ruby_sdk', '~> 0.2.9'
94
+ gem 'carbon_ruby_sdk', '~> 0.2.11'
94
95
  ```
95
96
 
96
97
  ## Getting Started<a id="getting-started"></a>
@@ -379,6 +380,7 @@ result = carbon.embeddings.get_documents(
379
380
  },
380
381
  media_type: "TEXT",
381
382
  embedding_model: "OPENAI",
383
+ include_file_level_metadata: false,
382
384
  )
383
385
  p result
384
386
  ```
@@ -432,6 +434,11 @@ Flag to control whether or not to perform hybrid search.
432
434
  ##### hybrid_search_tuning_parameters: [`HybridSearchTuningParamsNullable`](./lib/carbon_ruby_sdk/models/hybrid_search_tuning_params_nullable.rb)<a id="hybrid_search_tuning_parameters-hybridsearchtuningparamsnullablelibcarbon_ruby_sdkmodelshybrid_search_tuning_params_nullablerb"></a>
433
435
  ##### media_type: [`FileContentTypesNullable`](./lib/carbon_ruby_sdk/models/file_content_types_nullable.rb)<a id="media_type-filecontenttypesnullablelibcarbon_ruby_sdkmodelsfile_content_types_nullablerb"></a>
434
436
  ##### embedding_model: [`EmbeddingGeneratorsNullable`](./lib/carbon_ruby_sdk/models/embedding_generators_nullable.rb)<a id="embedding_model-embeddinggeneratorsnullablelibcarbon_ruby_sdkmodelsembedding_generators_nullablerb"></a>
437
+ ##### include_file_level_metadata: `Boolean`<a id="include_file_level_metadata-boolean"></a>
438
+ Flag to control whether or not to include file-level metadata in the response.
439
+ This metadata will be included in the `content_metadata` field of each document
440
+ along with chunk/embedding level metadata.
441
+
435
442
  #### 🔄 Return<a id="🔄-return"></a>
436
443
 
437
444
  [DocumentResponseList](./lib/carbon_ruby_sdk/models/document_response_list.rb)
@@ -1274,7 +1281,7 @@ result = carbon.integrations.connect_data_source(
1274
1281
  "prepend_filename_to_chunks" => false,
1275
1282
  "sync_files_on_connection" => true,
1276
1283
  "set_page_as_boundary" => false,
1277
- "request_id" => "ae8cd936-69c9-42cd-affb-87f3bea6d8eb",
1284
+ "request_id" => "8131a584-e13b-487a-bc3c-b381ae26de5f",
1278
1285
  "enable_file_picker" => true,
1279
1286
  "sync_source_items" => true,
1280
1287
  "incremental_sync" => false,
@@ -1494,7 +1501,7 @@ result = carbon.integrations.get_oauth_url(
1494
1501
  set_page_as_boundary: false,
1495
1502
  data_source_id: 1,
1496
1503
  connecting_new_account: false,
1497
- request_id: "6c38b4bb-1536-46c9-ade7-72fabf05b3bb",
1504
+ request_id: "8d34bb4e-31ad-411c-bb01-f19a466f9644",
1498
1505
  use_ocr: false,
1499
1506
  parse_pdf_tables_with_ocr: false,
1500
1507
  enable_file_picker: true,
@@ -1555,7 +1562,7 @@ Enable OCR for files that support it. Supported formats: pdf
1555
1562
  ##### parse_pdf_tables_with_ocr: `Boolean`<a id="parse_pdf_tables_with_ocr-boolean"></a>
1556
1563
  ##### enable_file_picker: `Boolean`<a id="enable_file_picker-boolean"></a>
1557
1564
  Enable integration's file picker for sources that support it. Supported sources:
1558
- ONEDRIVE, GOOGLE_DRIVE, DROPBOX, BOX, SHAREPOINT
1565
+ BOX, ONEDRIVE, DROPBOX, SHAREPOINT, GOOGLE_DRIVE
1559
1566
 
1560
1567
  ##### sync_source_items: `Boolean`<a id="sync_source_items-boolean"></a>
1561
1568
  Enabling this flag will fetch all available content from the source to be listed
@@ -1564,7 +1571,8 @@ via list items endpoint
1564
1571
  ##### incremental_sync: `Boolean`<a id="incremental_sync-boolean"></a>
1565
1572
  Only sync files if they have not already been synced or if the embedding
1566
1573
  properties have changed. This flag is currently supported by ONEDRIVE,
1567
- GOOGLE_DRIVE, BOX, DROPBOX. It will be ignored for other data sources.
1574
+ GOOGLE_DRIVE, BOX, DROPBOX, INTERCOM, GMAIL, OUTLOOK. It will be ignored for
1575
+ other data sources.
1568
1576
 
1569
1577
  ##### 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>
1570
1578
  #### 🔄 Return<a id="🔄-return"></a>
@@ -1854,7 +1862,7 @@ result = carbon.integrations.sync_confluence(
1854
1862
  prepend_filename_to_chunks: false,
1855
1863
  max_items_per_chunk: 1,
1856
1864
  set_page_as_boundary: false,
1857
- request_id: "bcd3ae91-8bae-4d50-9046-94dc62b2078f",
1865
+ request_id: "10dcc8bc-d3a9-477f-84c5-8ee86866c083",
1858
1866
  use_ocr: false,
1859
1867
  parse_pdf_tables_with_ocr: false,
1860
1868
  incremental_sync: false,
@@ -1889,7 +1897,8 @@ Number of objects per chunk. For csv, tsv, xlsx, and json files only.
1889
1897
  ##### incremental_sync: `Boolean`<a id="incremental_sync-boolean"></a>
1890
1898
  Only sync files if they have not already been synced or if the embedding
1891
1899
  properties have changed. This flag is currently supported by ONEDRIVE,
1892
- GOOGLE_DRIVE, BOX, DROPBOX. It will be ignored for other data sources.
1900
+ GOOGLE_DRIVE, BOX, DROPBOX, INTERCOM, GMAIL, OUTLOOK. It will be ignored for
1901
+ other data sources.
1893
1902
 
1894
1903
  ##### 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>
1895
1904
  #### 🔄 Return<a id="🔄-return"></a>
@@ -1958,7 +1967,7 @@ result = carbon.integrations.sync_files(
1958
1967
  prepend_filename_to_chunks: false,
1959
1968
  max_items_per_chunk: 1,
1960
1969
  set_page_as_boundary: false,
1961
- request_id: "bcd3ae91-8bae-4d50-9046-94dc62b2078f",
1970
+ request_id: "10dcc8bc-d3a9-477f-84c5-8ee86866c083",
1962
1971
  use_ocr: false,
1963
1972
  parse_pdf_tables_with_ocr: false,
1964
1973
  incremental_sync: false,
@@ -1993,7 +2002,8 @@ Number of objects per chunk. For csv, tsv, xlsx, and json files only.
1993
2002
  ##### incremental_sync: `Boolean`<a id="incremental_sync-boolean"></a>
1994
2003
  Only sync files if they have not already been synced or if the embedding
1995
2004
  properties have changed. This flag is currently supported by ONEDRIVE,
1996
- GOOGLE_DRIVE, BOX, DROPBOX. It will be ignored for other data sources.
2005
+ GOOGLE_DRIVE, BOX, DROPBOX, INTERCOM, GMAIL, OUTLOOK. It will be ignored for
2006
+ other data sources.
1997
2007
 
1998
2008
  ##### 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>
1999
2009
  #### 🔄 Return<a id="🔄-return"></a>
@@ -2103,6 +2113,8 @@ For now, we support a limited set of keys listed below.
2103
2113
  <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.
2104
2114
  You can also use them in combination to get emails from a certain period.
2105
2115
  <b>is</b>: Can have the following values - starred, important, snoozed, and unread
2116
+ <b>from</b>: Email address of the sender
2117
+ <b>to</b>: Email address of the recipient
2106
2118
 
2107
2119
  Using keys or values outside of the specified values can lead to unexpected behaviour.
2108
2120
 
@@ -2210,7 +2222,8 @@ For now, we support a limited set of keys listed below.
2210
2222
 
2211
2223
  <b>category</b>: Custom categories that you created in Outlook.
2212
2224
  <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.
2213
- <b>is</b>: Can have the following values: flagged
2225
+ <b>is</b>: Can have the following values: flagged
2226
+ <b>from</b>: Email address of the sender
2214
2227
 
2215
2228
  An example of a basic query with filters can be
2216
2229
  ```json
@@ -2651,6 +2664,47 @@ p result
2651
2664
  ---
2652
2665
 
2653
2666
 
2667
+ ### `carbon.users.list`<a id="carbonuserslist"></a>
2668
+
2669
+ List users within an organization
2670
+
2671
+ #### 🛠️ Usage<a id="🛠️-usage"></a>
2672
+
2673
+ ```ruby
2674
+ result = carbon.users.list(
2675
+ pagination: {
2676
+ "limit" => 10,
2677
+ "offset" => 0,
2678
+ },
2679
+ filters: {
2680
+ },
2681
+ order_by: "created_at",
2682
+ order_dir: "asc",
2683
+ include_count: false,
2684
+ )
2685
+ p result
2686
+ ```
2687
+
2688
+ #### ⚙️ Parameters<a id="⚙️-parameters"></a>
2689
+
2690
+ ##### pagination: [`Pagination`](./lib/carbon_ruby_sdk/models/pagination.rb)<a id="pagination-paginationlibcarbon_ruby_sdkmodelspaginationrb"></a>
2691
+ ##### filters: [`ListUsersFilters`](./lib/carbon_ruby_sdk/models/list_users_filters.rb)<a id="filters-listusersfilterslibcarbon_ruby_sdkmodelslist_users_filtersrb"></a>
2692
+ ##### order_by: [`ListUsersOrderByTypes`](./lib/carbon_ruby_sdk/models/list_users_order_by_types.rb)<a id="order_by-listusersorderbytypeslibcarbon_ruby_sdkmodelslist_users_order_by_typesrb"></a>
2693
+ ##### order_dir: [`OrderDirV2`](./lib/carbon_ruby_sdk/models/order_dir_v2.rb)<a id="order_dir-orderdirv2libcarbon_ruby_sdkmodelsorder_dir_v2rb"></a>
2694
+ ##### include_count: `Boolean`<a id="include_count-boolean"></a>
2695
+ #### 🔄 Return<a id="🔄-return"></a>
2696
+
2697
+ [UserListResponse](./lib/carbon_ruby_sdk/models/user_list_response.rb)
2698
+
2699
+ #### 🌐 Endpoint<a id="🌐-endpoint"></a>
2700
+
2701
+ `/list_users` `POST`
2702
+
2703
+ [🔙 **Back to Table of Contents**](#table-of-contents)
2704
+
2705
+ ---
2706
+
2707
+
2654
2708
  ### `carbon.users.toggle_user_features`<a id="carbonuserstoggle_user_features"></a>
2655
2709
  ![Deprecated](https://img.shields.io/badge/deprecated-yellow)
2656
2710
 
@@ -128,9 +128,10 @@ module Carbon
128
128
  # @param hybrid_search_tuning_parameters [HybridSearchTuningParamsNullable]
129
129
  # @param media_type [FileContentTypesNullable]
130
130
  # @param embedding_model [EmbeddingGeneratorsNullable]
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.
131
132
  # @param body [GetEmbeddingDocumentsBody]
132
133
  # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
133
- 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', extra: {})
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: {})
134
135
  _body = {}
135
136
  _body[:tags] = tags if tags != SENTINEL
136
137
  _body[:query] = query if query != SENTINEL
@@ -147,6 +148,7 @@ module Carbon
147
148
  _body[:hybrid_search_tuning_parameters] = hybrid_search_tuning_parameters if hybrid_search_tuning_parameters != SENTINEL
148
149
  _body[:media_type] = media_type if media_type != SENTINEL
149
150
  _body[:embedding_model] = embedding_model if embedding_model != SENTINEL
151
+ _body[:include_file_level_metadata] = include_file_level_metadata if include_file_level_metadata != SENTINEL
150
152
  get_embedding_documents_body = _body
151
153
  api_response = get_documents_with_http_info_impl(get_embedding_documents_body, extra)
152
154
  api_response.data
@@ -264,9 +266,10 @@ module Carbon
264
266
  # @param hybrid_search_tuning_parameters [HybridSearchTuningParamsNullable]
265
267
  # @param media_type [FileContentTypesNullable]
266
268
  # @param embedding_model [EmbeddingGeneratorsNullable]
269
+ # @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.
267
270
  # @param body [GetEmbeddingDocumentsBody]
268
271
  # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
269
- 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', extra: {})
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: {})
270
273
  _body = {}
271
274
  _body[:tags] = tags if tags != SENTINEL
272
275
  _body[:query] = query if query != SENTINEL
@@ -283,6 +286,7 @@ module Carbon
283
286
  _body[:hybrid_search_tuning_parameters] = hybrid_search_tuning_parameters if hybrid_search_tuning_parameters != SENTINEL
284
287
  _body[:media_type] = media_type if media_type != SENTINEL
285
288
  _body[:embedding_model] = embedding_model if embedding_model != SENTINEL
289
+ _body[:include_file_level_metadata] = include_file_level_metadata if include_file_level_metadata != SENTINEL
286
290
  get_embedding_documents_body = _body
287
291
  get_documents_with_http_info_impl(get_embedding_documents_body, extra)
288
292
  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: ONEDRIVE, GOOGLE_DRIVE, DROPBOX, BOX, SHAREPOINT
656
+ # @param enable_file_picker [Boolean] Enable integration's file picker for sources that support it. Supported sources: BOX, ONEDRIVE, DROPBOX, SHAREPOINT, GOOGLE_DRIVE
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: '6c38b4bb-1536-46c9-ade7-72fabf05b3bb', 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: '8d34bb4e-31ad-411c-bb01-f19a466f9644', 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: ONEDRIVE, GOOGLE_DRIVE, DROPBOX, BOX, SHAREPOINT
724
+ # @param enable_file_picker [Boolean] Enable integration's file picker for sources that support it. Supported sources: BOX, ONEDRIVE, DROPBOX, SHAREPOINT, GOOGLE_DRIVE
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: '6c38b4bb-1536-46c9-ade7-72fabf05b3bb', 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: '8d34bb4e-31ad-411c-bb01-f19a466f9644', 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: 'bcd3ae91-8bae-4d50-9046-94dc62b2078f', 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: '10dcc8bc-d3a9-477f-84c5-8ee86866c083', 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: 'bcd3ae91-8bae-4d50-9046-94dc62b2078f', 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: '10dcc8bc-d3a9-477f-84c5-8ee86866c083', 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: 'bcd3ae91-8bae-4d50-9046-94dc62b2078f', 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: '10dcc8bc-d3a9-477f-84c5-8ee86866c083', 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: 'bcd3ae91-8bae-4d50-9046-94dc62b2078f', 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: '10dcc8bc-d3a9-477f-84c5-8ee86866c083', 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
@@ -200,6 +200,120 @@ module Carbon
200
200
  end
201
201
 
202
202
 
203
+ # List Users Endpoint
204
+ #
205
+ # List users within an organization
206
+ #
207
+ # @param pagination [Pagination]
208
+ # @param filters [ListUsersFilters]
209
+ # @param order_by [ListUsersOrderByTypes]
210
+ # @param order_dir [OrderDirV2]
211
+ # @param include_count [Boolean]
212
+ # @param body [ListUsersRequest]
213
+ # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
214
+ def list(pagination: SENTINEL, filters: SENTINEL, order_by: 'created_at', order_dir: 'desc', include_count: false, extra: {})
215
+ _body = {}
216
+ _body[:pagination] = pagination if pagination != SENTINEL
217
+ _body[:filters] = filters if filters != SENTINEL
218
+ _body[:order_by] = order_by if order_by != SENTINEL
219
+ _body[:order_dir] = order_dir if order_dir != SENTINEL
220
+ _body[:include_count] = include_count if include_count != SENTINEL
221
+ list_users_request = _body
222
+ api_response = list_with_http_info_impl(list_users_request, extra)
223
+ api_response.data
224
+ end
225
+
226
+ # List Users Endpoint
227
+ #
228
+ # List users within an organization
229
+ #
230
+ # @param pagination [Pagination]
231
+ # @param filters [ListUsersFilters]
232
+ # @param order_by [ListUsersOrderByTypes]
233
+ # @param order_dir [OrderDirV2]
234
+ # @param include_count [Boolean]
235
+ # @param body [ListUsersRequest]
236
+ # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
237
+ def list_with_http_info(pagination: SENTINEL, filters: SENTINEL, order_by: 'created_at', order_dir: 'desc', include_count: false, extra: {})
238
+ _body = {}
239
+ _body[:pagination] = pagination if pagination != SENTINEL
240
+ _body[:filters] = filters if filters != SENTINEL
241
+ _body[:order_by] = order_by if order_by != SENTINEL
242
+ _body[:order_dir] = order_dir if order_dir != SENTINEL
243
+ _body[:include_count] = include_count if include_count != SENTINEL
244
+ list_users_request = _body
245
+ list_with_http_info_impl(list_users_request, extra)
246
+ end
247
+
248
+ # List Users Endpoint
249
+ # List users within an organization
250
+ # @param list_users_request [ListUsersRequest]
251
+ # @param [Hash] opts the optional parameters
252
+ # @return [UserListResponse]
253
+ private def list_impl(list_users_request, opts = {})
254
+ data, _status_code, _headers = list_with_http_info(list_users_request, opts)
255
+ data
256
+ end
257
+
258
+ # List Users Endpoint
259
+ # List users within an organization
260
+ # @param list_users_request [ListUsersRequest]
261
+ # @param [Hash] opts the optional parameters
262
+ # @return [APIResponse] data is UserListResponse, status code, headers and response
263
+ private def list_with_http_info_impl(list_users_request, opts = {})
264
+ if @api_client.config.debugging
265
+ @api_client.config.logger.debug 'Calling API: UsersApi.list ...'
266
+ end
267
+ # verify the required parameter 'list_users_request' is set
268
+ if @api_client.config.client_side_validation && list_users_request.nil?
269
+ fail ArgumentError, "Missing the required parameter 'list_users_request' when calling UsersApi.list"
270
+ end
271
+ # resource path
272
+ local_var_path = '/list_users'
273
+
274
+ # query parameters
275
+ query_params = opts[:query_params] || {}
276
+
277
+ # header parameters
278
+ header_params = opts[:header_params] || {}
279
+ # HTTP header 'Accept' (if needed)
280
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
281
+ # HTTP header 'Content-Type'
282
+ content_type = @api_client.select_header_content_type(['application/json'])
283
+ if !content_type.nil?
284
+ header_params['Content-Type'] = content_type
285
+ end
286
+
287
+ # form parameters
288
+ form_params = opts[:form_params] || {}
289
+
290
+ # http body (model)
291
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(list_users_request)
292
+
293
+ # return_type
294
+ return_type = opts[:debug_return_type] || 'UserListResponse'
295
+
296
+ # auth_names
297
+ auth_names = opts[:debug_auth_names] || ['apiKey']
298
+
299
+ new_options = opts.merge(
300
+ :operation => :"UsersApi.list",
301
+ :header_params => header_params,
302
+ :query_params => query_params,
303
+ :form_params => form_params,
304
+ :body => post_body,
305
+ :auth_names => auth_names,
306
+ :return_type => return_type
307
+ )
308
+
309
+ data, status_code, headers, response = @api_client.call_api(:POST, local_var_path, new_options)
310
+ if @api_client.config.debugging
311
+ @api_client.config.logger.debug "API called: UsersApi#list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
312
+ end
313
+ APIResponse::new(data, status_code, headers, response)
314
+ end
315
+
316
+
203
317
  # Toggle User Features
204
318
  #
205
319
  # @param configuration_key_name [String]