carbon_ruby_sdk 0.2.5 → 0.2.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/README.md +99 -7
- data/lib/carbon_ruby_sdk/api/integrations_api.rb +261 -8
- data/lib/carbon_ruby_sdk/models/data_source_type.rb +2 -1
- data/lib/carbon_ruby_sdk/models/data_source_type_nullable.rb +2 -1
- data/lib/carbon_ruby_sdk/models/file_formats.rb +2 -1
- data/lib/carbon_ruby_sdk/models/file_formats_nullable.rb +2 -1
- data/lib/carbon_ruby_sdk/models/file_sync_config.rb +16 -4
- data/lib/carbon_ruby_sdk/models/file_sync_config_nullable.rb +16 -4
- data/lib/carbon_ruby_sdk/models/o_auth_url_request.rb +2 -2
- data/lib/carbon_ruby_sdk/models/simple_o_auth_data_sources.rb +2 -1
- data/lib/carbon_ruby_sdk/models/slack_filters.rb +232 -0
- data/lib/carbon_ruby_sdk/models/slack_sync_request.rb +321 -0
- data/lib/carbon_ruby_sdk/models/sync_files_request.rb +1 -1
- data/lib/carbon_ruby_sdk/models/sync_options.rb +1 -1
- data/lib/carbon_ruby_sdk/models/user_file.rb +15 -1
- data/lib/carbon_ruby_sdk/version.rb +1 -1
- data/lib/carbon_ruby_sdk.rb +2 -0
- data/spec/api/integrations_api_spec.rb +27 -0
- data/spec/models/file_sync_config_nullable_spec.rb +6 -0
- data/spec/models/file_sync_config_spec.rb +6 -0
- data/spec/models/slack_filters_spec.rb +34 -0
- data/spec/models/slack_sync_request_spec.rb +82 -0
- data/spec/models/user_file_spec.rb +6 -0
- metadata +8 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ddb2e107da136926a97fa3b21a799aa742f6d6a601fa4e15e9d5053e55fb236e
|
4
|
+
data.tar.gz: ab09446db102397cd5a8bda28ad42977aa25dcf2a689a587c61078464a049f09
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8b9acb08e3051a67bda2acfe4966192f95bb50f06c1ab43a0369bce60492e033296efb0c21950b3b811aaf5b0114eef2db160b21270f9091d377bda378a13df1
|
7
|
+
data.tar.gz: 1295e13d22b198f6c19c2c6209e8a0267830c8a7e847f62105e5c20dda74d6a5e328c7a98326bd4e8eb22f2b487cd6a5ab66f09be361953fe370699b4bbcd1a2
|
data/Gemfile.lock
CHANGED
data/README.md
CHANGED
@@ -6,7 +6,7 @@
|
|
6
6
|
|
7
7
|
Connect external data to LLMs, no matter the source.
|
8
8
|
|
9
|
-
[](https://rubygems.org/gems/carbon_ruby_sdk/versions/0.2.7)
|
10
10
|
|
11
11
|
</div>
|
12
12
|
|
@@ -46,6 +46,7 @@ Connect external data to LLMs, no matter the source.
|
|
46
46
|
* [`carbon.integrations.create_aws_iam_user`](#carbonintegrationscreate_aws_iam_user)
|
47
47
|
* [`carbon.integrations.get_oauth_url`](#carbonintegrationsget_oauth_url)
|
48
48
|
* [`carbon.integrations.list_confluence_pages`](#carbonintegrationslist_confluence_pages)
|
49
|
+
* [`carbon.integrations.list_conversations`](#carbonintegrationslist_conversations)
|
49
50
|
* [`carbon.integrations.list_data_source_items`](#carbonintegrationslist_data_source_items)
|
50
51
|
* [`carbon.integrations.list_folders`](#carbonintegrationslist_folders)
|
51
52
|
* [`carbon.integrations.list_gitbook_spaces`](#carbonintegrationslist_gitbook_spaces)
|
@@ -62,6 +63,7 @@ Connect external data to LLMs, no matter the source.
|
|
62
63
|
* [`carbon.integrations.sync_repos`](#carbonintegrationssync_repos)
|
63
64
|
* [`carbon.integrations.sync_rss_feed`](#carbonintegrationssync_rss_feed)
|
64
65
|
* [`carbon.integrations.sync_s3_files`](#carbonintegrationssync_s3_files)
|
66
|
+
* [`carbon.integrations.sync_slack`](#carbonintegrationssync_slack)
|
65
67
|
* [`carbon.organizations.get`](#carbonorganizationsget)
|
66
68
|
* [`carbon.organizations.update`](#carbonorganizationsupdate)
|
67
69
|
* [`carbon.organizations.update_stats`](#carbonorganizationsupdate_stats)
|
@@ -86,7 +88,7 @@ Connect external data to LLMs, no matter the source.
|
|
86
88
|
Add to Gemfile:
|
87
89
|
|
88
90
|
```ruby
|
89
|
-
gem 'carbon_ruby_sdk', '~> 0.2.
|
91
|
+
gem 'carbon_ruby_sdk', '~> 0.2.7'
|
90
92
|
```
|
91
93
|
|
92
94
|
## Getting Started<a id="getting-started"></a>
|
@@ -1247,7 +1249,7 @@ result = carbon.integrations.connect_data_source(
|
|
1247
1249
|
"prepend_filename_to_chunks" => false,
|
1248
1250
|
"sync_files_on_connection" => true,
|
1249
1251
|
"set_page_as_boundary" => false,
|
1250
|
-
"request_id" => "
|
1252
|
+
"request_id" => "2b33f04a-b2ca-473b-b6e2-c89df5e01f94",
|
1251
1253
|
"enable_file_picker" => true,
|
1252
1254
|
"sync_source_items" => true,
|
1253
1255
|
"incremental_sync" => false,
|
@@ -1301,6 +1303,7 @@ result = carbon.integrations.connect_freshdesk(
|
|
1301
1303
|
"auto_synced_source_types" => ["ARTICLE"],
|
1302
1304
|
"sync_attachments" => false,
|
1303
1305
|
"detect_audio_language" => false,
|
1306
|
+
"split_rows" => false,
|
1304
1307
|
},
|
1305
1308
|
)
|
1306
1309
|
p result
|
@@ -1466,7 +1469,7 @@ result = carbon.integrations.get_oauth_url(
|
|
1466
1469
|
set_page_as_boundary: false,
|
1467
1470
|
data_source_id: 1,
|
1468
1471
|
connecting_new_account: false,
|
1469
|
-
request_id: "
|
1472
|
+
request_id: "229bd6e7-4931-4900-8f58-0e4071e45b25",
|
1470
1473
|
use_ocr: false,
|
1471
1474
|
parse_pdf_tables_with_ocr: false,
|
1472
1475
|
enable_file_picker: true,
|
@@ -1476,6 +1479,7 @@ result = carbon.integrations.get_oauth_url(
|
|
1476
1479
|
"auto_synced_source_types" => ["ARTICLE"],
|
1477
1480
|
"sync_attachments" => false,
|
1478
1481
|
"detect_audio_language" => false,
|
1482
|
+
"split_rows" => false,
|
1479
1483
|
},
|
1480
1484
|
)
|
1481
1485
|
p result
|
@@ -1526,7 +1530,7 @@ Enable OCR for files that support it. Supported formats: pdf
|
|
1526
1530
|
##### parse_pdf_tables_with_ocr: `Boolean`<a id="parse_pdf_tables_with_ocr-boolean"></a>
|
1527
1531
|
##### enable_file_picker: `Boolean`<a id="enable_file_picker-boolean"></a>
|
1528
1532
|
Enable integration's file picker for sources that support it. Supported sources:
|
1529
|
-
|
1533
|
+
DROPBOX, ONEDRIVE, SHAREPOINT, GOOGLE_DRIVE, BOX
|
1530
1534
|
|
1531
1535
|
##### sync_source_items: `Boolean`<a id="sync_source_items-boolean"></a>
|
1532
1536
|
Enabling this flag will fetch all available content from the source to be listed
|
@@ -1588,6 +1592,43 @@ p result
|
|
1588
1592
|
---
|
1589
1593
|
|
1590
1594
|
|
1595
|
+
### `carbon.integrations.list_conversations`<a id="carbonintegrationslist_conversations"></a>
|
1596
|
+
|
1597
|
+
List all of your public and private channels, DMs, and Group DMs. The ID from response
|
1598
|
+
can be used as a filter to sync messages to Carbon
|
1599
|
+
types: Comma separated list of types. Available types are im (DMs), mpim (group DMs), public_channel, and private_channel.
|
1600
|
+
Defaults to public_channel.
|
1601
|
+
cursor: Used for pagination. If next_cursor is returned in response, you need to pass it as the cursor in the next request
|
1602
|
+
data_source_id: Data source needs to be specified if you have linked multiple slack accounts
|
1603
|
+
exclude_archived: Should archived conversations be excluded, defaults to true
|
1604
|
+
|
1605
|
+
#### 🛠️ Usage<a id="🛠️-usage"></a>
|
1606
|
+
|
1607
|
+
```ruby
|
1608
|
+
result = carbon.integrations.list_conversations(
|
1609
|
+
types: "public_channel",
|
1610
|
+
cursor: "string_example",
|
1611
|
+
data_source_id: 1,
|
1612
|
+
exclude_archived: true,
|
1613
|
+
)
|
1614
|
+
p result
|
1615
|
+
```
|
1616
|
+
|
1617
|
+
#### ⚙️ Parameters<a id="⚙️-parameters"></a>
|
1618
|
+
|
1619
|
+
##### types: `String`<a id="types-string"></a>
|
1620
|
+
##### cursor: `String`<a id="cursor-string"></a>
|
1621
|
+
##### data_source_id: `Integer`<a id="data_source_id-integer"></a>
|
1622
|
+
##### exclude_archived: `Boolean`<a id="exclude_archived-boolean"></a>
|
1623
|
+
#### 🌐 Endpoint<a id="🌐-endpoint"></a>
|
1624
|
+
|
1625
|
+
`/integrations/slack/conversations` `GET`
|
1626
|
+
|
1627
|
+
[🔙 **Back to Table of Contents**](#table-of-contents)
|
1628
|
+
|
1629
|
+
---
|
1630
|
+
|
1631
|
+
|
1591
1632
|
### `carbon.integrations.list_data_source_items`<a id="carbonintegrationslist_data_source_items"></a>
|
1592
1633
|
|
1593
1634
|
List Data Source Items
|
@@ -1788,7 +1829,7 @@ result = carbon.integrations.sync_confluence(
|
|
1788
1829
|
prepend_filename_to_chunks: false,
|
1789
1830
|
max_items_per_chunk: 1,
|
1790
1831
|
set_page_as_boundary: false,
|
1791
|
-
request_id: "
|
1832
|
+
request_id: "bb4d49b0-3837-444a-9b71-f529df5968cb",
|
1792
1833
|
use_ocr: false,
|
1793
1834
|
parse_pdf_tables_with_ocr: false,
|
1794
1835
|
incremental_sync: false,
|
@@ -1796,6 +1837,7 @@ result = carbon.integrations.sync_confluence(
|
|
1796
1837
|
"auto_synced_source_types" => ["ARTICLE"],
|
1797
1838
|
"sync_attachments" => false,
|
1798
1839
|
"detect_audio_language" => false,
|
1840
|
+
"split_rows" => false,
|
1799
1841
|
},
|
1800
1842
|
)
|
1801
1843
|
p result
|
@@ -1891,7 +1933,7 @@ result = carbon.integrations.sync_files(
|
|
1891
1933
|
prepend_filename_to_chunks: false,
|
1892
1934
|
max_items_per_chunk: 1,
|
1893
1935
|
set_page_as_boundary: false,
|
1894
|
-
request_id: "
|
1936
|
+
request_id: "bb4d49b0-3837-444a-9b71-f529df5968cb",
|
1895
1937
|
use_ocr: false,
|
1896
1938
|
parse_pdf_tables_with_ocr: false,
|
1897
1939
|
incremental_sync: false,
|
@@ -1899,6 +1941,7 @@ result = carbon.integrations.sync_files(
|
|
1899
1941
|
"auto_synced_source_types" => ["ARTICLE"],
|
1900
1942
|
"sync_attachments" => false,
|
1901
1943
|
"detect_audio_language" => false,
|
1944
|
+
"split_rows" => false,
|
1902
1945
|
},
|
1903
1946
|
)
|
1904
1947
|
p result
|
@@ -2097,6 +2140,7 @@ result = carbon.integrations.sync_gmail(
|
|
2097
2140
|
"auto_synced_source_types" => ["ARTICLE"],
|
2098
2141
|
"sync_attachments" => false,
|
2099
2142
|
"detect_audio_language" => false,
|
2143
|
+
"split_rows" => false,
|
2100
2144
|
},
|
2101
2145
|
incremental_sync: false,
|
2102
2146
|
)
|
@@ -2214,6 +2258,7 @@ result = carbon.integrations.sync_outlook(
|
|
2214
2258
|
"auto_synced_source_types" => ["ARTICLE"],
|
2215
2259
|
"sync_attachments" => false,
|
2216
2260
|
"detect_audio_language" => false,
|
2261
|
+
"split_rows" => false,
|
2217
2262
|
},
|
2218
2263
|
incremental_sync: false,
|
2219
2264
|
)
|
@@ -2356,6 +2401,7 @@ result = carbon.integrations.sync_s3_files(
|
|
2356
2401
|
"auto_synced_source_types" => ["ARTICLE"],
|
2357
2402
|
"sync_attachments" => false,
|
2358
2403
|
"detect_audio_language" => false,
|
2404
|
+
"split_rows" => false,
|
2359
2405
|
},
|
2360
2406
|
)
|
2361
2407
|
p result
|
@@ -2393,6 +2439,52 @@ Number of objects per chunk. For csv, tsv, xlsx, and json files only.
|
|
2393
2439
|
---
|
2394
2440
|
|
2395
2441
|
|
2442
|
+
### `carbon.integrations.sync_slack`<a id="carbonintegrationssync_slack"></a>
|
2443
|
+
|
2444
|
+
You can list all conversations using the endpoint /integrations/slack/conversations. The ID of
|
2445
|
+
conversation will be used as an input for this endpoint with timestamps as optional filters.
|
2446
|
+
|
2447
|
+
#### 🛠️ Usage<a id="🛠️-usage"></a>
|
2448
|
+
|
2449
|
+
```ruby
|
2450
|
+
result = carbon.integrations.sync_slack(
|
2451
|
+
filters: {
|
2452
|
+
"conversation_id" => "conversation_id_example",
|
2453
|
+
},
|
2454
|
+
tags: {},
|
2455
|
+
chunk_size: 1500,
|
2456
|
+
chunk_overlap: 20,
|
2457
|
+
skip_embedding_generation: false,
|
2458
|
+
embedding_model: "OPENAI",
|
2459
|
+
generate_sparse_vectors: false,
|
2460
|
+
prepend_filename_to_chunks: false,
|
2461
|
+
data_source_id: 1,
|
2462
|
+
request_id: "string_example",
|
2463
|
+
)
|
2464
|
+
p result
|
2465
|
+
```
|
2466
|
+
|
2467
|
+
#### ⚙️ Parameters<a id="⚙️-parameters"></a>
|
2468
|
+
|
2469
|
+
##### filters: [`SlackFilters`](./lib/carbon_ruby_sdk/models/slack_filters.rb)<a id="filters-slackfilterslibcarbon_ruby_sdkmodelsslack_filtersrb"></a>
|
2470
|
+
##### tags: `Object`<a id="tags-object"></a>
|
2471
|
+
##### chunk_size: `Integer`<a id="chunk_size-integer"></a>
|
2472
|
+
##### chunk_overlap: `Integer`<a id="chunk_overlap-integer"></a>
|
2473
|
+
##### skip_embedding_generation: `Boolean`<a id="skip_embedding_generation-boolean"></a>
|
2474
|
+
##### embedding_model: [`EmbeddingGenerators`](./lib/carbon_ruby_sdk/models/embedding_generators.rb)<a id="embedding_model-embeddinggeneratorslibcarbon_ruby_sdkmodelsembedding_generatorsrb"></a>
|
2475
|
+
##### generate_sparse_vectors: `Boolean`<a id="generate_sparse_vectors-boolean"></a>
|
2476
|
+
##### prepend_filename_to_chunks: `Boolean`<a id="prepend_filename_to_chunks-boolean"></a>
|
2477
|
+
##### data_source_id: `Integer`<a id="data_source_id-integer"></a>
|
2478
|
+
##### request_id: `String`<a id="request_id-string"></a>
|
2479
|
+
#### 🌐 Endpoint<a id="🌐-endpoint"></a>
|
2480
|
+
|
2481
|
+
`/integrations/slack/sync` `POST`
|
2482
|
+
|
2483
|
+
[🔙 **Back to Table of Contents**](#table-of-contents)
|
2484
|
+
|
2485
|
+
---
|
2486
|
+
|
2487
|
+
|
2396
2488
|
### `carbon.organizations.get`<a id="carbonorganizationsget"></a>
|
2397
2489
|
|
2398
2490
|
Get Organization
|
@@ -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:
|
656
|
+
# @param enable_file_picker [Boolean] Enable integration's file picker for sources that support it. Supported sources: DROPBOX, ONEDRIVE, SHAREPOINT, GOOGLE_DRIVE, BOX
|
657
657
|
# @param sync_source_items [Boolean] Enabling this flag will fetch all available content from the source to be listed via list items endpoint
|
658
658
|
# @param incremental_sync [Boolean] Only sync files if they have not already been synced or if the embedding properties have changed. This flag is currently supported by ONEDRIVE, GOOGLE_DRIVE, BOX, DROPBOX. 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: '
|
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: '229bd6e7-4931-4900-8f58-0e4071e45b25', 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:
|
724
|
+
# @param enable_file_picker [Boolean] Enable integration's file picker for sources that support it. Supported sources: DROPBOX, ONEDRIVE, SHAREPOINT, GOOGLE_DRIVE, BOX
|
725
725
|
# @param sync_source_items [Boolean] Enabling this flag will fetch all available content from the source to be listed via list items endpoint
|
726
726
|
# @param incremental_sync [Boolean] Only sync files if they have not already been synced or if the embedding properties have changed. This flag is currently supported by ONEDRIVE, GOOGLE_DRIVE, BOX, DROPBOX. 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: '
|
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: '229bd6e7-4931-4900-8f58-0e4071e45b25', 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
|
@@ -942,6 +942,123 @@ module Carbon
|
|
942
942
|
end
|
943
943
|
|
944
944
|
|
945
|
+
# Slack List Conversations
|
946
|
+
#
|
947
|
+
# List all of your public and private channels, DMs, and Group DMs. The ID from response
|
948
|
+
# can be used as a filter to sync messages to Carbon
|
949
|
+
# types: Comma separated list of types. Available types are im (DMs), mpim (group DMs), public_channel, and private_channel.
|
950
|
+
# Defaults to public_channel.
|
951
|
+
# cursor: Used for pagination. If next_cursor is returned in response, you need to pass it as the cursor in the next request
|
952
|
+
# data_source_id: Data source needs to be specified if you have linked multiple slack accounts
|
953
|
+
# exclude_archived: Should archived conversations be excluded, defaults to true
|
954
|
+
#
|
955
|
+
# @param types [String]
|
956
|
+
# @param cursor [String]
|
957
|
+
# @param data_source_id [Integer]
|
958
|
+
# @param exclude_archived [Boolean]
|
959
|
+
# @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
|
960
|
+
def list_conversations(types: 'public_channel', cursor: SENTINEL, data_source_id: SENTINEL, exclude_archived: true, extra: {})
|
961
|
+
extra[:types] = types if types != SENTINEL
|
962
|
+
extra[:cursor] = cursor if cursor != SENTINEL
|
963
|
+
extra[:data_source_id] = data_source_id if data_source_id != SENTINEL
|
964
|
+
extra[:exclude_archived] = exclude_archived if exclude_archived != SENTINEL
|
965
|
+
api_response = list_conversations_with_http_info_impl(extra)
|
966
|
+
api_response.data
|
967
|
+
end
|
968
|
+
|
969
|
+
# Slack List Conversations
|
970
|
+
#
|
971
|
+
# List all of your public and private channels, DMs, and Group DMs. The ID from response
|
972
|
+
# can be used as a filter to sync messages to Carbon
|
973
|
+
# types: Comma separated list of types. Available types are im (DMs), mpim (group DMs), public_channel, and private_channel.
|
974
|
+
# Defaults to public_channel.
|
975
|
+
# cursor: Used for pagination. If next_cursor is returned in response, you need to pass it as the cursor in the next request
|
976
|
+
# data_source_id: Data source needs to be specified if you have linked multiple slack accounts
|
977
|
+
# exclude_archived: Should archived conversations be excluded, defaults to true
|
978
|
+
#
|
979
|
+
# @param types [String]
|
980
|
+
# @param cursor [String]
|
981
|
+
# @param data_source_id [Integer]
|
982
|
+
# @param exclude_archived [Boolean]
|
983
|
+
# @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
|
984
|
+
def list_conversations_with_http_info(types: 'public_channel', cursor: SENTINEL, data_source_id: SENTINEL, exclude_archived: true, extra: {})
|
985
|
+
extra[:types] = types if types != SENTINEL
|
986
|
+
extra[:cursor] = cursor if cursor != SENTINEL
|
987
|
+
extra[:data_source_id] = data_source_id if data_source_id != SENTINEL
|
988
|
+
extra[:exclude_archived] = exclude_archived if exclude_archived != SENTINEL
|
989
|
+
list_conversations_with_http_info_impl(extra)
|
990
|
+
end
|
991
|
+
|
992
|
+
# Slack List Conversations
|
993
|
+
# List all of your public and private channels, DMs, and Group DMs. The ID from response can be used as a filter to sync messages to Carbon types: Comma separated list of types. Available types are im (DMs), mpim (group DMs), public_channel, and private_channel. Defaults to public_channel. cursor: Used for pagination. If next_cursor is returned in response, you need to pass it as the cursor in the next request data_source_id: Data source needs to be specified if you have linked multiple slack accounts exclude_archived: Should archived conversations be excluded, defaults to true
|
994
|
+
# @param [Hash] opts the optional parameters
|
995
|
+
# @option opts [String] :types (default to 'public_channel')
|
996
|
+
# @option opts [String] :cursor
|
997
|
+
# @option opts [Integer] :data_source_id
|
998
|
+
# @option opts [Boolean] :exclude_archived (default to true)
|
999
|
+
# @return [Object]
|
1000
|
+
private def list_conversations_impl(opts = {})
|
1001
|
+
data, _status_code, _headers = list_conversations_with_http_info(opts)
|
1002
|
+
data
|
1003
|
+
end
|
1004
|
+
|
1005
|
+
# Slack List Conversations
|
1006
|
+
# List all of your public and private channels, DMs, and Group DMs. The ID from response can be used as a filter to sync messages to Carbon types: Comma separated list of types. Available types are im (DMs), mpim (group DMs), public_channel, and private_channel. Defaults to public_channel. cursor: Used for pagination. If next_cursor is returned in response, you need to pass it as the cursor in the next request data_source_id: Data source needs to be specified if you have linked multiple slack accounts exclude_archived: Should archived conversations be excluded, defaults to true
|
1007
|
+
# @param [Hash] opts the optional parameters
|
1008
|
+
# @option opts [String] :types (default to 'public_channel')
|
1009
|
+
# @option opts [String] :cursor
|
1010
|
+
# @option opts [Integer] :data_source_id
|
1011
|
+
# @option opts [Boolean] :exclude_archived (default to true)
|
1012
|
+
# @return [APIResponse] data is Object, status code, headers and response
|
1013
|
+
private def list_conversations_with_http_info_impl(opts = {})
|
1014
|
+
if @api_client.config.debugging
|
1015
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.list_conversations ...'
|
1016
|
+
end
|
1017
|
+
# resource path
|
1018
|
+
local_var_path = '/integrations/slack/conversations'
|
1019
|
+
|
1020
|
+
# query parameters
|
1021
|
+
query_params = opts[:query_params] || {}
|
1022
|
+
query_params[:'types'] = opts[:'types'] if !opts[:'types'].nil?
|
1023
|
+
query_params[:'cursor'] = opts[:'cursor'] if !opts[:'cursor'].nil?
|
1024
|
+
query_params[:'data_source_id'] = opts[:'data_source_id'] if !opts[:'data_source_id'].nil?
|
1025
|
+
query_params[:'exclude_archived'] = opts[:'exclude_archived'] if !opts[:'exclude_archived'].nil?
|
1026
|
+
|
1027
|
+
# header parameters
|
1028
|
+
header_params = opts[:header_params] || {}
|
1029
|
+
# HTTP header 'Accept' (if needed)
|
1030
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
1031
|
+
|
1032
|
+
# form parameters
|
1033
|
+
form_params = opts[:form_params] || {}
|
1034
|
+
|
1035
|
+
# http body (model)
|
1036
|
+
post_body = opts[:debug_body]
|
1037
|
+
|
1038
|
+
# return_type
|
1039
|
+
return_type = opts[:debug_return_type] || 'Object'
|
1040
|
+
|
1041
|
+
# auth_names
|
1042
|
+
auth_names = opts[:debug_auth_names] || ['accessToken', 'apiKey', 'customerId']
|
1043
|
+
|
1044
|
+
new_options = opts.merge(
|
1045
|
+
:operation => :"IntegrationsApi.list_conversations",
|
1046
|
+
:header_params => header_params,
|
1047
|
+
:query_params => query_params,
|
1048
|
+
:form_params => form_params,
|
1049
|
+
:body => post_body,
|
1050
|
+
:auth_names => auth_names,
|
1051
|
+
:return_type => return_type
|
1052
|
+
)
|
1053
|
+
|
1054
|
+
data, status_code, headers, response = @api_client.call_api(:GET, local_var_path, new_options)
|
1055
|
+
if @api_client.config.debugging
|
1056
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#list_conversations\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
1057
|
+
end
|
1058
|
+
APIResponse::new(data, status_code, headers, response)
|
1059
|
+
end
|
1060
|
+
|
1061
|
+
|
945
1062
|
# List Data Source Items
|
946
1063
|
#
|
947
1064
|
# @param data_source_id [Integer]
|
@@ -1523,7 +1640,7 @@ module Carbon
|
|
1523
1640
|
# @param file_sync_config [FileSyncConfigNullable]
|
1524
1641
|
# @param body [SyncFilesRequest]
|
1525
1642
|
# @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
|
1526
|
-
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: '
|
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: 'bb4d49b0-3837-444a-9b71-f529df5968cb', use_ocr: false, parse_pdf_tables_with_ocr: false, incremental_sync: false, file_sync_config: SENTINEL, extra: {})
|
1527
1644
|
_body = {}
|
1528
1645
|
_body[:tags] = tags if tags != SENTINEL
|
1529
1646
|
_body[:data_source_id] = data_source_id if data_source_id != SENTINEL
|
@@ -1571,7 +1688,7 @@ module Carbon
|
|
1571
1688
|
# @param file_sync_config [FileSyncConfigNullable]
|
1572
1689
|
# @param body [SyncFilesRequest]
|
1573
1690
|
# @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
|
1574
|
-
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: '
|
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: 'bb4d49b0-3837-444a-9b71-f529df5968cb', use_ocr: false, parse_pdf_tables_with_ocr: false, incremental_sync: false, file_sync_config: SENTINEL, extra: {})
|
1575
1692
|
_body = {}
|
1576
1693
|
_body[:tags] = tags if tags != SENTINEL
|
1577
1694
|
_body[:data_source_id] = data_source_id if data_source_id != SENTINEL
|
@@ -1779,7 +1896,7 @@ module Carbon
|
|
1779
1896
|
# @param file_sync_config [FileSyncConfigNullable]
|
1780
1897
|
# @param body [SyncFilesRequest]
|
1781
1898
|
# @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
|
1782
|
-
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: '
|
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: 'bb4d49b0-3837-444a-9b71-f529df5968cb', use_ocr: false, parse_pdf_tables_with_ocr: false, incremental_sync: false, file_sync_config: SENTINEL, extra: {})
|
1783
1900
|
_body = {}
|
1784
1901
|
_body[:tags] = tags if tags != SENTINEL
|
1785
1902
|
_body[:data_source_id] = data_source_id if data_source_id != SENTINEL
|
@@ -1827,7 +1944,7 @@ module Carbon
|
|
1827
1944
|
# @param file_sync_config [FileSyncConfigNullable]
|
1828
1945
|
# @param body [SyncFilesRequest]
|
1829
1946
|
# @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
|
1830
|
-
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: '
|
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: 'bb4d49b0-3837-444a-9b71-f529df5968cb', use_ocr: false, parse_pdf_tables_with_ocr: false, incremental_sync: false, file_sync_config: SENTINEL, extra: {})
|
1831
1948
|
_body = {}
|
1832
1949
|
_body[:tags] = tags if tags != SENTINEL
|
1833
1950
|
_body[:data_source_id] = data_source_id if data_source_id != SENTINEL
|
@@ -3062,6 +3179,142 @@ module Carbon
|
|
3062
3179
|
end
|
3063
3180
|
APIResponse::new(data, status_code, headers, response)
|
3064
3181
|
end
|
3182
|
+
|
3183
|
+
|
3184
|
+
# Slack Sync
|
3185
|
+
#
|
3186
|
+
# You can list all conversations using the endpoint /integrations/slack/conversations. The ID of
|
3187
|
+
# conversation will be used as an input for this endpoint with timestamps as optional filters.
|
3188
|
+
#
|
3189
|
+
# @param filters [SlackFilters]
|
3190
|
+
# @param tags [Object]
|
3191
|
+
# @param chunk_size [Integer]
|
3192
|
+
# @param chunk_overlap [Integer]
|
3193
|
+
# @param skip_embedding_generation [Boolean]
|
3194
|
+
# @param embedding_model [EmbeddingGenerators]
|
3195
|
+
# @param generate_sparse_vectors [Boolean]
|
3196
|
+
# @param prepend_filename_to_chunks [Boolean]
|
3197
|
+
# @param data_source_id [Integer]
|
3198
|
+
# @param request_id [String]
|
3199
|
+
# @param body [SlackSyncRequest]
|
3200
|
+
# @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
|
3201
|
+
def sync_slack(filters:, tags: SENTINEL, chunk_size: 1500, chunk_overlap: 20, skip_embedding_generation: false, embedding_model: 'OPENAI', generate_sparse_vectors: false, prepend_filename_to_chunks: false, data_source_id: SENTINEL, request_id: SENTINEL, extra: {})
|
3202
|
+
_body = {}
|
3203
|
+
_body[:tags] = tags if tags != SENTINEL
|
3204
|
+
_body[:filters] = filters if filters != SENTINEL
|
3205
|
+
_body[:chunk_size] = chunk_size if chunk_size != SENTINEL
|
3206
|
+
_body[:chunk_overlap] = chunk_overlap if chunk_overlap != SENTINEL
|
3207
|
+
_body[:skip_embedding_generation] = skip_embedding_generation if skip_embedding_generation != SENTINEL
|
3208
|
+
_body[:embedding_model] = embedding_model if embedding_model != SENTINEL
|
3209
|
+
_body[:generate_sparse_vectors] = generate_sparse_vectors if generate_sparse_vectors != SENTINEL
|
3210
|
+
_body[:prepend_filename_to_chunks] = prepend_filename_to_chunks if prepend_filename_to_chunks != SENTINEL
|
3211
|
+
_body[:data_source_id] = data_source_id if data_source_id != SENTINEL
|
3212
|
+
_body[:request_id] = request_id if request_id != SENTINEL
|
3213
|
+
slack_sync_request = _body
|
3214
|
+
api_response = sync_slack_with_http_info_impl(slack_sync_request, extra)
|
3215
|
+
api_response.data
|
3216
|
+
end
|
3217
|
+
|
3218
|
+
# Slack Sync
|
3219
|
+
#
|
3220
|
+
# You can list all conversations using the endpoint /integrations/slack/conversations. The ID of
|
3221
|
+
# conversation will be used as an input for this endpoint with timestamps as optional filters.
|
3222
|
+
#
|
3223
|
+
# @param filters [SlackFilters]
|
3224
|
+
# @param tags [Object]
|
3225
|
+
# @param chunk_size [Integer]
|
3226
|
+
# @param chunk_overlap [Integer]
|
3227
|
+
# @param skip_embedding_generation [Boolean]
|
3228
|
+
# @param embedding_model [EmbeddingGenerators]
|
3229
|
+
# @param generate_sparse_vectors [Boolean]
|
3230
|
+
# @param prepend_filename_to_chunks [Boolean]
|
3231
|
+
# @param data_source_id [Integer]
|
3232
|
+
# @param request_id [String]
|
3233
|
+
# @param body [SlackSyncRequest]
|
3234
|
+
# @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
|
3235
|
+
def sync_slack_with_http_info(filters:, tags: SENTINEL, chunk_size: 1500, chunk_overlap: 20, skip_embedding_generation: false, embedding_model: 'OPENAI', generate_sparse_vectors: false, prepend_filename_to_chunks: false, data_source_id: SENTINEL, request_id: SENTINEL, extra: {})
|
3236
|
+
_body = {}
|
3237
|
+
_body[:tags] = tags if tags != SENTINEL
|
3238
|
+
_body[:filters] = filters if filters != SENTINEL
|
3239
|
+
_body[:chunk_size] = chunk_size if chunk_size != SENTINEL
|
3240
|
+
_body[:chunk_overlap] = chunk_overlap if chunk_overlap != SENTINEL
|
3241
|
+
_body[:skip_embedding_generation] = skip_embedding_generation if skip_embedding_generation != SENTINEL
|
3242
|
+
_body[:embedding_model] = embedding_model if embedding_model != SENTINEL
|
3243
|
+
_body[:generate_sparse_vectors] = generate_sparse_vectors if generate_sparse_vectors != SENTINEL
|
3244
|
+
_body[:prepend_filename_to_chunks] = prepend_filename_to_chunks if prepend_filename_to_chunks != SENTINEL
|
3245
|
+
_body[:data_source_id] = data_source_id if data_source_id != SENTINEL
|
3246
|
+
_body[:request_id] = request_id if request_id != SENTINEL
|
3247
|
+
slack_sync_request = _body
|
3248
|
+
sync_slack_with_http_info_impl(slack_sync_request, extra)
|
3249
|
+
end
|
3250
|
+
|
3251
|
+
# Slack Sync
|
3252
|
+
# You can list all conversations using the endpoint /integrations/slack/conversations. The ID of conversation will be used as an input for this endpoint with timestamps as optional filters.
|
3253
|
+
# @param slack_sync_request [SlackSyncRequest]
|
3254
|
+
# @param [Hash] opts the optional parameters
|
3255
|
+
# @return [Object]
|
3256
|
+
private def sync_slack_impl(slack_sync_request, opts = {})
|
3257
|
+
data, _status_code, _headers = sync_slack_with_http_info(slack_sync_request, opts)
|
3258
|
+
data
|
3259
|
+
end
|
3260
|
+
|
3261
|
+
# Slack Sync
|
3262
|
+
# You can list all conversations using the endpoint /integrations/slack/conversations. The ID of conversation will be used as an input for this endpoint with timestamps as optional filters.
|
3263
|
+
# @param slack_sync_request [SlackSyncRequest]
|
3264
|
+
# @param [Hash] opts the optional parameters
|
3265
|
+
# @return [APIResponse] data is Object, status code, headers and response
|
3266
|
+
private def sync_slack_with_http_info_impl(slack_sync_request, opts = {})
|
3267
|
+
if @api_client.config.debugging
|
3268
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.sync_slack ...'
|
3269
|
+
end
|
3270
|
+
# verify the required parameter 'slack_sync_request' is set
|
3271
|
+
if @api_client.config.client_side_validation && slack_sync_request.nil?
|
3272
|
+
fail ArgumentError, "Missing the required parameter 'slack_sync_request' when calling IntegrationsApi.sync_slack"
|
3273
|
+
end
|
3274
|
+
# resource path
|
3275
|
+
local_var_path = '/integrations/slack/sync'
|
3276
|
+
|
3277
|
+
# query parameters
|
3278
|
+
query_params = opts[:query_params] || {}
|
3279
|
+
|
3280
|
+
# header parameters
|
3281
|
+
header_params = opts[:header_params] || {}
|
3282
|
+
# HTTP header 'Accept' (if needed)
|
3283
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
3284
|
+
# HTTP header 'Content-Type'
|
3285
|
+
content_type = @api_client.select_header_content_type(['application/json'])
|
3286
|
+
if !content_type.nil?
|
3287
|
+
header_params['Content-Type'] = content_type
|
3288
|
+
end
|
3289
|
+
|
3290
|
+
# form parameters
|
3291
|
+
form_params = opts[:form_params] || {}
|
3292
|
+
|
3293
|
+
# http body (model)
|
3294
|
+
post_body = opts[:debug_body] || @api_client.object_to_http_body(slack_sync_request)
|
3295
|
+
|
3296
|
+
# return_type
|
3297
|
+
return_type = opts[:debug_return_type] || 'Object'
|
3298
|
+
|
3299
|
+
# auth_names
|
3300
|
+
auth_names = opts[:debug_auth_names] || ['accessToken', 'apiKey', 'customerId']
|
3301
|
+
|
3302
|
+
new_options = opts.merge(
|
3303
|
+
:operation => :"IntegrationsApi.sync_slack",
|
3304
|
+
:header_params => header_params,
|
3305
|
+
:query_params => query_params,
|
3306
|
+
:form_params => form_params,
|
3307
|
+
:body => post_body,
|
3308
|
+
:auth_names => auth_names,
|
3309
|
+
:return_type => return_type
|
3310
|
+
)
|
3311
|
+
|
3312
|
+
data, status_code, headers, response = @api_client.call_api(:POST, local_var_path, new_options)
|
3313
|
+
if @api_client.config.debugging
|
3314
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#sync_slack\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
3315
|
+
end
|
3316
|
+
APIResponse::new(data, status_code, headers, response)
|
3317
|
+
end
|
3065
3318
|
end
|
3066
3319
|
|
3067
3320
|
# top-level client access to avoid having the user to insantiate their own API instances
|
@@ -43,6 +43,7 @@ module Carbon
|
|
43
43
|
GITBOOK = "GITBOOK".freeze
|
44
44
|
SALESFORCE = "SALESFORCE".freeze
|
45
45
|
GITHUB = "GITHUB".freeze
|
46
|
+
SLACK = "SLACK".freeze
|
46
47
|
JPG = "JPG".freeze
|
47
48
|
PNG = "PNG".freeze
|
48
49
|
JPEG = "JPEG".freeze
|
@@ -66,7 +67,7 @@ module Carbon
|
|
66
67
|
WEBM = "WEBM".freeze
|
67
68
|
|
68
69
|
def self.all_vars
|
69
|
-
@all_vars ||= [GOOGLE_DRIVE, NOTION, NOTION_DATABASE, INTERCOM, DROPBOX, ONEDRIVE, SHAREPOINT, CONFLUENCE, BOX, ZENDESK, ZOTERO, S3, GMAIL, OUTLOOK, TEXT, CSV, TSV, PDF, DOCX, PPTX, XLSX, MD, RTF, JSON, HTML, RAW_TEXT, WEB_SCRAPE, RSS_FEED, FRESHDESK, GITBOOK, SALESFORCE, GITHUB, JPG, PNG, JPEG, MP3, MP2, AAC, WAV, FLAC, PCM, M4_A, OGG, OPUS, MPEG, MPG, MP4, WMV, AVI, MOV, MKV, FLV, WEBM].freeze
|
70
|
+
@all_vars ||= [GOOGLE_DRIVE, NOTION, NOTION_DATABASE, INTERCOM, DROPBOX, ONEDRIVE, SHAREPOINT, CONFLUENCE, BOX, ZENDESK, ZOTERO, S3, GMAIL, OUTLOOK, TEXT, CSV, TSV, PDF, DOCX, PPTX, XLSX, MD, RTF, JSON, HTML, RAW_TEXT, WEB_SCRAPE, RSS_FEED, FRESHDESK, GITBOOK, SALESFORCE, GITHUB, SLACK, JPG, PNG, JPEG, MP3, MP2, AAC, WAV, FLAC, PCM, M4_A, OGG, OPUS, MPEG, MPG, MP4, WMV, AVI, MOV, MKV, FLV, WEBM].freeze
|
70
71
|
end
|
71
72
|
|
72
73
|
# Builds the enum from string
|
@@ -43,6 +43,7 @@ module Carbon
|
|
43
43
|
GITBOOK = "GITBOOK".freeze
|
44
44
|
SALESFORCE = "SALESFORCE".freeze
|
45
45
|
GITHUB = "GITHUB".freeze
|
46
|
+
SLACK = "SLACK".freeze
|
46
47
|
JPG = "JPG".freeze
|
47
48
|
PNG = "PNG".freeze
|
48
49
|
JPEG = "JPEG".freeze
|
@@ -66,7 +67,7 @@ module Carbon
|
|
66
67
|
WEBM = "WEBM".freeze
|
67
68
|
|
68
69
|
def self.all_vars
|
69
|
-
@all_vars ||= [GOOGLE_DRIVE, NOTION, NOTION_DATABASE, INTERCOM, DROPBOX, ONEDRIVE, SHAREPOINT, CONFLUENCE, BOX, ZENDESK, ZOTERO, S3, GMAIL, OUTLOOK, TEXT, CSV, TSV, PDF, DOCX, PPTX, XLSX, MD, RTF, JSON, HTML, RAW_TEXT, WEB_SCRAPE, RSS_FEED, FRESHDESK, GITBOOK, SALESFORCE, GITHUB, JPG, PNG, JPEG, MP3, MP2, AAC, WAV, FLAC, PCM, M4_A, OGG, OPUS, MPEG, MPG, MP4, WMV, AVI, MOV, MKV, FLV, WEBM].freeze
|
70
|
+
@all_vars ||= [GOOGLE_DRIVE, NOTION, NOTION_DATABASE, INTERCOM, DROPBOX, ONEDRIVE, SHAREPOINT, CONFLUENCE, BOX, ZENDESK, ZOTERO, S3, GMAIL, OUTLOOK, TEXT, CSV, TSV, PDF, DOCX, PPTX, XLSX, MD, RTF, JSON, HTML, RAW_TEXT, WEB_SCRAPE, RSS_FEED, FRESHDESK, GITBOOK, SALESFORCE, GITHUB, SLACK, JPG, PNG, JPEG, MP3, MP2, AAC, WAV, FLAC, PCM, M4_A, OGG, OPUS, MPEG, MPG, MP4, WMV, AVI, MOV, MKV, FLV, WEBM].freeze
|
70
71
|
end
|
71
72
|
|
72
73
|
# Builds the enum from string
|
@@ -37,6 +37,7 @@ module Carbon
|
|
37
37
|
GITBOOK = "GITBOOK".freeze
|
38
38
|
SALESFORCE = "SALESFORCE".freeze
|
39
39
|
GITHUB = "GITHUB".freeze
|
40
|
+
SLACK = "SLACK".freeze
|
40
41
|
JPG = "JPG".freeze
|
41
42
|
PNG = "PNG".freeze
|
42
43
|
MP3 = "MP3".freeze
|
@@ -59,7 +60,7 @@ module Carbon
|
|
59
60
|
WEBM = "WEBM".freeze
|
60
61
|
|
61
62
|
def self.all_vars
|
62
|
-
@all_vars ||= [TXT, CSV, TSV, PDF, DOCX, PPTX, XLSX, MD, RTF, JSON, HTML, NOTION, GOOGLE_DOCS, GOOGLE_SHEETS, GOOGLE_SLIDES, INTERCOM, CONFLUENCE, RSS_FEED, GMAIL, OUTLOOK, ZENDESK, FRESHDESK, WEB_SCRAPE, GITBOOK, SALESFORCE, GITHUB, JPG, PNG, MP3, MP2, AAC, WAV, FLAC, PCM, M4_A, OGG, OPUS, MPEG, MPG, MP4, WMV, AVI, MOV, MKV, FLV, WEBM].freeze
|
63
|
+
@all_vars ||= [TXT, CSV, TSV, PDF, DOCX, PPTX, XLSX, MD, RTF, JSON, HTML, NOTION, GOOGLE_DOCS, GOOGLE_SHEETS, GOOGLE_SLIDES, INTERCOM, CONFLUENCE, RSS_FEED, GMAIL, OUTLOOK, ZENDESK, FRESHDESK, WEB_SCRAPE, GITBOOK, SALESFORCE, GITHUB, SLACK, JPG, PNG, MP3, MP2, AAC, WAV, FLAC, PCM, M4_A, OGG, OPUS, MPEG, MPG, MP4, WMV, AVI, MOV, MKV, FLV, WEBM].freeze
|
63
64
|
end
|
64
65
|
|
65
66
|
# Builds the enum from string
|