carbon_ruby_sdk 0.1.23 → 0.1.25

Sign up to get free protection for your applications and to get access to all the features.
Files changed (55) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +1 -1
  3. data/README.md +135 -9
  4. data/lib/carbon_ruby_sdk/api/embeddings_api.rb +2 -2
  5. data/lib/carbon_ruby_sdk/api/integrations_api.rb +252 -18
  6. data/lib/carbon_ruby_sdk/api/organizations_api.rb +92 -0
  7. data/lib/carbon_ruby_sdk/api/users_api.rb +2 -2
  8. data/lib/carbon_ruby_sdk/models/chunks_and_embeddings_upload_input.rb +4 -2
  9. data/lib/carbon_ruby_sdk/models/custom_credentials_type.rb +39 -0
  10. data/lib/carbon_ruby_sdk/models/embedding_generators.rb +2 -1
  11. data/lib/carbon_ruby_sdk/models/embedding_generators_nullable.rb +2 -1
  12. data/lib/carbon_ruby_sdk/models/external_source_items_order_by.rb +37 -0
  13. data/lib/carbon_ruby_sdk/models/file_statistics.rb +15 -5
  14. data/lib/carbon_ruby_sdk/models/file_statistics_nullable.rb +15 -5
  15. data/lib/carbon_ruby_sdk/models/fresh_desk_connect_request.rb +17 -5
  16. data/lib/carbon_ruby_sdk/models/gitbook_connect_request.rb +17 -5
  17. data/lib/carbon_ruby_sdk/models/github_connect_request.rb +16 -4
  18. data/lib/carbon_ruby_sdk/models/github_fetch_repos_request.rb +260 -0
  19. data/lib/carbon_ruby_sdk/models/list_data_source_items_request.rb +26 -4
  20. data/lib/carbon_ruby_sdk/models/o_auth_url_request.rb +18 -6
  21. data/lib/carbon_ruby_sdk/models/order_dir_v2.rb +36 -0
  22. data/lib/carbon_ruby_sdk/models/organization_response.rb +15 -1
  23. data/lib/carbon_ruby_sdk/models/organization_user_data_source_api.rb +19 -5
  24. data/lib/carbon_ruby_sdk/models/s3_auth_request.rb +16 -4
  25. data/lib/carbon_ruby_sdk/models/sync_files_request.rb +1 -1
  26. data/lib/carbon_ruby_sdk/models/sync_options.rb +17 -5
  27. data/lib/carbon_ruby_sdk/models/text_embedding_generators.rb +7 -1
  28. data/lib/carbon_ruby_sdk/models/update_organization_input.rb +216 -0
  29. data/lib/carbon_ruby_sdk/models/update_users_input.rb +41 -41
  30. data/lib/carbon_ruby_sdk/models/user_configuration.rb +268 -0
  31. data/lib/carbon_ruby_sdk/models/user_configuration_nullable.rb +269 -0
  32. data/lib/carbon_ruby_sdk/version.rb +1 -1
  33. data/lib/carbon_ruby_sdk.rb +7 -0
  34. data/spec/api/integrations_api_spec.rb +26 -0
  35. data/spec/api/organizations_api_spec.rb +11 -0
  36. data/spec/models/custom_credentials_type_spec.rb +22 -0
  37. data/spec/models/external_source_items_order_by_spec.rb +22 -0
  38. data/spec/models/file_statistics_nullable_spec.rb +6 -0
  39. data/spec/models/file_statistics_spec.rb +6 -0
  40. data/spec/models/fresh_desk_connect_request_spec.rb +6 -0
  41. data/spec/models/gitbook_connect_request_spec.rb +6 -0
  42. data/spec/models/github_connect_request_spec.rb +6 -0
  43. data/spec/models/github_fetch_repos_request_spec.rb +34 -0
  44. data/spec/models/list_data_source_items_request_spec.rb +12 -0
  45. data/spec/models/o_auth_url_request_spec.rb +6 -0
  46. data/spec/models/order_dir_v2_spec.rb +22 -0
  47. data/spec/models/organization_response_spec.rb +6 -0
  48. data/spec/models/organization_user_data_source_api_spec.rb +6 -0
  49. data/spec/models/s3_auth_request_spec.rb +6 -0
  50. data/spec/models/sync_options_spec.rb +6 -0
  51. data/spec/models/update_organization_input_spec.rb +28 -0
  52. data/spec/models/update_users_input_spec.rb +4 -4
  53. data/spec/models/user_configuration_nullable_spec.rb +40 -0
  54. data/spec/models/user_configuration_spec.rb +40 -0
  55. metadata +23 -2
@@ -131,9 +131,10 @@ module Carbon
131
131
  # @param prepend_filename_to_chunks [Boolean]
132
132
  # @param sync_files_on_connection [Boolean]
133
133
  # @param request_id [String]
134
+ # @param sync_source_items [Boolean] Enabling this flag will fetch all available content from the source to be listed via list items endpoint
134
135
  # @param body [FreshDeskConnectRequest]
135
136
  # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
136
- def connect_freshdesk(domain:, api_key:, tags: SENTINEL, chunk_size: 1500, chunk_overlap: 20, skip_embedding_generation: false, embedding_model: 'OPENAI', generate_sparse_vectors: false, prepend_filename_to_chunks: false, sync_files_on_connection: true, request_id: SENTINEL, extra: {})
137
+ def connect_freshdesk(domain:, api_key:, tags: SENTINEL, chunk_size: 1500, chunk_overlap: 20, skip_embedding_generation: false, embedding_model: 'OPENAI', generate_sparse_vectors: false, prepend_filename_to_chunks: false, sync_files_on_connection: true, request_id: SENTINEL, sync_source_items: true, extra: {})
137
138
  _body = {}
138
139
  _body[:tags] = tags if tags != SENTINEL
139
140
  _body[:domain] = domain if domain != SENTINEL
@@ -146,6 +147,7 @@ module Carbon
146
147
  _body[:prepend_filename_to_chunks] = prepend_filename_to_chunks if prepend_filename_to_chunks != SENTINEL
147
148
  _body[:sync_files_on_connection] = sync_files_on_connection if sync_files_on_connection != SENTINEL
148
149
  _body[:request_id] = request_id if request_id != SENTINEL
150
+ _body[:sync_source_items] = sync_source_items if sync_source_items != SENTINEL
149
151
  fresh_desk_connect_request = _body
150
152
  api_response = connect_freshdesk_with_http_info_impl(fresh_desk_connect_request, extra)
151
153
  api_response.data
@@ -170,9 +172,10 @@ module Carbon
170
172
  # @param prepend_filename_to_chunks [Boolean]
171
173
  # @param sync_files_on_connection [Boolean]
172
174
  # @param request_id [String]
175
+ # @param sync_source_items [Boolean] Enabling this flag will fetch all available content from the source to be listed via list items endpoint
173
176
  # @param body [FreshDeskConnectRequest]
174
177
  # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
175
- def connect_freshdesk_with_http_info(domain:, api_key:, tags: SENTINEL, chunk_size: 1500, chunk_overlap: 20, skip_embedding_generation: false, embedding_model: 'OPENAI', generate_sparse_vectors: false, prepend_filename_to_chunks: false, sync_files_on_connection: true, request_id: SENTINEL, extra: {})
178
+ def connect_freshdesk_with_http_info(domain:, api_key:, tags: SENTINEL, chunk_size: 1500, chunk_overlap: 20, skip_embedding_generation: false, embedding_model: 'OPENAI', generate_sparse_vectors: false, prepend_filename_to_chunks: false, sync_files_on_connection: true, request_id: SENTINEL, sync_source_items: true, extra: {})
176
179
  _body = {}
177
180
  _body[:tags] = tags if tags != SENTINEL
178
181
  _body[:domain] = domain if domain != SENTINEL
@@ -185,6 +188,7 @@ module Carbon
185
188
  _body[:prepend_filename_to_chunks] = prepend_filename_to_chunks if prepend_filename_to_chunks != SENTINEL
186
189
  _body[:sync_files_on_connection] = sync_files_on_connection if sync_files_on_connection != SENTINEL
187
190
  _body[:request_id] = request_id if request_id != SENTINEL
191
+ _body[:sync_source_items] = sync_source_items if sync_source_items != SENTINEL
188
192
  fresh_desk_connect_request = _body
189
193
  connect_freshdesk_with_http_info_impl(fresh_desk_connect_request, extra)
190
194
  end
@@ -276,9 +280,10 @@ module Carbon
276
280
  # @param prepend_filename_to_chunks [Boolean]
277
281
  # @param sync_files_on_connection [Boolean]
278
282
  # @param request_id [String]
283
+ # @param sync_source_items [Boolean] Enabling this flag will fetch all available content from the source to be listed via list items endpoint
279
284
  # @param body [GitbookConnectRequest]
280
285
  # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
281
- def connect_gitbook(organization:, access_token:, tags: SENTINEL, chunk_size: 1500, chunk_overlap: 20, skip_embedding_generation: false, embedding_model: 'OPENAI', generate_sparse_vectors: false, prepend_filename_to_chunks: false, sync_files_on_connection: true, request_id: SENTINEL, extra: {})
286
+ def connect_gitbook(organization:, access_token:, tags: SENTINEL, chunk_size: 1500, chunk_overlap: 20, skip_embedding_generation: false, embedding_model: 'OPENAI', generate_sparse_vectors: false, prepend_filename_to_chunks: false, sync_files_on_connection: true, request_id: SENTINEL, sync_source_items: true, extra: {})
282
287
  _body = {}
283
288
  _body[:tags] = tags if tags != SENTINEL
284
289
  _body[:organization] = organization if organization != SENTINEL
@@ -291,6 +296,7 @@ module Carbon
291
296
  _body[:prepend_filename_to_chunks] = prepend_filename_to_chunks if prepend_filename_to_chunks != SENTINEL
292
297
  _body[:sync_files_on_connection] = sync_files_on_connection if sync_files_on_connection != SENTINEL
293
298
  _body[:request_id] = request_id if request_id != SENTINEL
299
+ _body[:sync_source_items] = sync_source_items if sync_source_items != SENTINEL
294
300
  gitbook_connect_request = _body
295
301
  api_response = connect_gitbook_with_http_info_impl(gitbook_connect_request, extra)
296
302
  api_response.data
@@ -314,9 +320,10 @@ module Carbon
314
320
  # @param prepend_filename_to_chunks [Boolean]
315
321
  # @param sync_files_on_connection [Boolean]
316
322
  # @param request_id [String]
323
+ # @param sync_source_items [Boolean] Enabling this flag will fetch all available content from the source to be listed via list items endpoint
317
324
  # @param body [GitbookConnectRequest]
318
325
  # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
319
- def connect_gitbook_with_http_info(organization:, access_token:, tags: SENTINEL, chunk_size: 1500, chunk_overlap: 20, skip_embedding_generation: false, embedding_model: 'OPENAI', generate_sparse_vectors: false, prepend_filename_to_chunks: false, sync_files_on_connection: true, request_id: SENTINEL, extra: {})
326
+ def connect_gitbook_with_http_info(organization:, access_token:, tags: SENTINEL, chunk_size: 1500, chunk_overlap: 20, skip_embedding_generation: false, embedding_model: 'OPENAI', generate_sparse_vectors: false, prepend_filename_to_chunks: false, sync_files_on_connection: true, request_id: SENTINEL, sync_source_items: true, extra: {})
320
327
  _body = {}
321
328
  _body[:tags] = tags if tags != SENTINEL
322
329
  _body[:organization] = organization if organization != SENTINEL
@@ -329,6 +336,7 @@ module Carbon
329
336
  _body[:prepend_filename_to_chunks] = prepend_filename_to_chunks if prepend_filename_to_chunks != SENTINEL
330
337
  _body[:sync_files_on_connection] = sync_files_on_connection if sync_files_on_connection != SENTINEL
331
338
  _body[:request_id] = request_id if request_id != SENTINEL
339
+ _body[:sync_source_items] = sync_source_items if sync_source_items != SENTINEL
332
340
  gitbook_connect_request = _body
333
341
  connect_gitbook_with_http_info_impl(gitbook_connect_request, extra)
334
342
  end
@@ -414,12 +422,14 @@ module Carbon
414
422
  #
415
423
  # @param access_key [String]
416
424
  # @param access_key_secret [String]
425
+ # @param sync_source_items [Boolean] Enabling this flag will fetch all available content from the source to be listed via list items endpoint
417
426
  # @param body [S3AuthRequest]
418
427
  # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
419
- def create_aws_iam_user(access_key:, access_key_secret:, extra: {})
428
+ def create_aws_iam_user(access_key:, access_key_secret:, sync_source_items: true, extra: {})
420
429
  _body = {}
421
430
  _body[:access_key] = access_key if access_key != SENTINEL
422
431
  _body[:access_key_secret] = access_key_secret if access_key_secret != SENTINEL
432
+ _body[:sync_source_items] = sync_source_items if sync_source_items != SENTINEL
423
433
  s3_auth_request = _body
424
434
  api_response = create_aws_iam_user_with_http_info_impl(s3_auth_request, extra)
425
435
  api_response.data
@@ -437,12 +447,14 @@ module Carbon
437
447
  #
438
448
  # @param access_key [String]
439
449
  # @param access_key_secret [String]
450
+ # @param sync_source_items [Boolean] Enabling this flag will fetch all available content from the source to be listed via list items endpoint
440
451
  # @param body [S3AuthRequest]
441
452
  # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
442
- def create_aws_iam_user_with_http_info(access_key:, access_key_secret:, extra: {})
453
+ def create_aws_iam_user_with_http_info(access_key:, access_key_secret:, sync_source_items: true, extra: {})
443
454
  _body = {}
444
455
  _body[:access_key] = access_key if access_key != SENTINEL
445
456
  _body[:access_key_secret] = access_key_secret if access_key_secret != SENTINEL
457
+ _body[:sync_source_items] = sync_source_items if sync_source_items != SENTINEL
446
458
  s3_auth_request = _body
447
459
  create_aws_iam_user_with_http_info_impl(s3_auth_request, extra)
448
460
  end
@@ -545,10 +557,11 @@ module Carbon
545
557
  # @param request_id [String] This request id will be added to all files that get synced using the generated OAuth URL
546
558
  # @param use_ocr [Boolean] Enable OCR for files that support it. Supported formats: pdf
547
559
  # @param parse_pdf_tables_with_ocr [Boolean]
548
- # @param enable_file_picker [Boolean] Enable integration's file picker for sources that support it. Supported sources: DROPBOX, BOX, ONEDRIVE, GOOGLE_DRIVE, SHAREPOINT
560
+ # @param enable_file_picker [Boolean] Enable integration's file picker for sources that support it. Supported sources: BOX, SHAREPOINT, ONEDRIVE, DROPBOX, GOOGLE_DRIVE
561
+ # @param sync_source_items [Boolean] Enabling this flag will fetch all available content from the source to be listed via list items endpoint
549
562
  # @param body [OAuthURLRequest]
550
563
  # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
551
- 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: '76343a7e-0175-49f8-957c-e1133ae388ac', use_ocr: false, parse_pdf_tables_with_ocr: false, enable_file_picker: true, extra: {})
564
+ 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: '1975f217-47e4-4867-8acd-5bdb2858049b', use_ocr: false, parse_pdf_tables_with_ocr: false, enable_file_picker: true, sync_source_items: true, extra: {})
552
565
  _body = {}
553
566
  _body[:tags] = tags if tags != SENTINEL
554
567
  _body[:scope] = scope if scope != SENTINEL
@@ -573,6 +586,7 @@ module Carbon
573
586
  _body[:use_ocr] = use_ocr if use_ocr != SENTINEL
574
587
  _body[:parse_pdf_tables_with_ocr] = parse_pdf_tables_with_ocr if parse_pdf_tables_with_ocr != SENTINEL
575
588
  _body[:enable_file_picker] = enable_file_picker if enable_file_picker != SENTINEL
589
+ _body[:sync_source_items] = sync_source_items if sync_source_items != SENTINEL
576
590
  o_auth_url_request = _body
577
591
  api_response = get_oauth_url_with_http_info_impl(o_auth_url_request, extra)
578
592
  api_response.data
@@ -607,10 +621,11 @@ module Carbon
607
621
  # @param request_id [String] This request id will be added to all files that get synced using the generated OAuth URL
608
622
  # @param use_ocr [Boolean] Enable OCR for files that support it. Supported formats: pdf
609
623
  # @param parse_pdf_tables_with_ocr [Boolean]
610
- # @param enable_file_picker [Boolean] Enable integration's file picker for sources that support it. Supported sources: DROPBOX, BOX, ONEDRIVE, GOOGLE_DRIVE, SHAREPOINT
624
+ # @param enable_file_picker [Boolean] Enable integration's file picker for sources that support it. Supported sources: BOX, SHAREPOINT, ONEDRIVE, DROPBOX, GOOGLE_DRIVE
625
+ # @param sync_source_items [Boolean] Enabling this flag will fetch all available content from the source to be listed via list items endpoint
611
626
  # @param body [OAuthURLRequest]
612
627
  # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
613
- 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: '76343a7e-0175-49f8-957c-e1133ae388ac', use_ocr: false, parse_pdf_tables_with_ocr: false, enable_file_picker: true, extra: {})
628
+ 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: '1975f217-47e4-4867-8acd-5bdb2858049b', use_ocr: false, parse_pdf_tables_with_ocr: false, enable_file_picker: true, sync_source_items: true, extra: {})
614
629
  _body = {}
615
630
  _body[:tags] = tags if tags != SENTINEL
616
631
  _body[:scope] = scope if scope != SENTINEL
@@ -635,6 +650,7 @@ module Carbon
635
650
  _body[:use_ocr] = use_ocr if use_ocr != SENTINEL
636
651
  _body[:parse_pdf_tables_with_ocr] = parse_pdf_tables_with_ocr if parse_pdf_tables_with_ocr != SENTINEL
637
652
  _body[:enable_file_picker] = enable_file_picker if enable_file_picker != SENTINEL
653
+ _body[:sync_source_items] = sync_source_items if sync_source_items != SENTINEL
638
654
  o_auth_url_request = _body
639
655
  get_oauth_url_with_http_info_impl(o_auth_url_request, extra)
640
656
  end
@@ -828,14 +844,18 @@ module Carbon
828
844
  # @param parent_id [String]
829
845
  # @param filters [ListItemsFiltersNullable]
830
846
  # @param pagination [Pagination]
847
+ # @param order_by [ExternalSourceItemsOrderBy]
848
+ # @param order_dir [OrderDirV2]
831
849
  # @param body [ListDataSourceItemsRequest]
832
850
  # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
833
- def list_data_source_items(data_source_id:, parent_id: SENTINEL, filters: SENTINEL, pagination: SENTINEL, extra: {})
851
+ def list_data_source_items(data_source_id:, parent_id: SENTINEL, filters: SENTINEL, pagination: SENTINEL, order_by: 'name', order_dir: 'asc', extra: {})
834
852
  _body = {}
835
853
  _body[:data_source_id] = data_source_id if data_source_id != SENTINEL
836
854
  _body[:parent_id] = parent_id if parent_id != SENTINEL
837
855
  _body[:filters] = filters if filters != SENTINEL
838
856
  _body[:pagination] = pagination if pagination != SENTINEL
857
+ _body[:order_by] = order_by if order_by != SENTINEL
858
+ _body[:order_dir] = order_dir if order_dir != SENTINEL
839
859
  list_data_source_items_request = _body
840
860
  api_response = list_data_source_items_with_http_info_impl(list_data_source_items_request, extra)
841
861
  api_response.data
@@ -847,14 +867,18 @@ module Carbon
847
867
  # @param parent_id [String]
848
868
  # @param filters [ListItemsFiltersNullable]
849
869
  # @param pagination [Pagination]
870
+ # @param order_by [ExternalSourceItemsOrderBy]
871
+ # @param order_dir [OrderDirV2]
850
872
  # @param body [ListDataSourceItemsRequest]
851
873
  # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
852
- def list_data_source_items_with_http_info(data_source_id:, parent_id: SENTINEL, filters: SENTINEL, pagination: SENTINEL, extra: {})
874
+ def list_data_source_items_with_http_info(data_source_id:, parent_id: SENTINEL, filters: SENTINEL, pagination: SENTINEL, order_by: 'name', order_dir: 'asc', extra: {})
853
875
  _body = {}
854
876
  _body[:data_source_id] = data_source_id if data_source_id != SENTINEL
855
877
  _body[:parent_id] = parent_id if parent_id != SENTINEL
856
878
  _body[:filters] = filters if filters != SENTINEL
857
879
  _body[:pagination] = pagination if pagination != SENTINEL
880
+ _body[:order_by] = order_by if order_by != SENTINEL
881
+ _body[:order_dir] = order_dir if order_dir != SENTINEL
858
882
  list_data_source_items_request = _body
859
883
  list_data_source_items_with_http_info_impl(list_data_source_items_request, extra)
860
884
  end
@@ -1270,6 +1294,106 @@ module Carbon
1270
1294
  end
1271
1295
 
1272
1296
 
1297
+ # Github List Repos
1298
+ #
1299
+ # Once you have connected your GitHub account, you can use this endpoint to list the
1300
+ # repositories your account has access to. You can use a data source ID or username to fetch from a specific account.
1301
+ #
1302
+ # @param per_page [Integer]
1303
+ # @param page [Integer]
1304
+ # @param data_source_id [Integer]
1305
+ # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
1306
+ def list_repos(per_page: 30, page: 1, data_source_id: SENTINEL, extra: {})
1307
+ extra[:per_page] = per_page if per_page != SENTINEL
1308
+ extra[:page] = page if page != SENTINEL
1309
+ extra[:data_source_id] = data_source_id if data_source_id != SENTINEL
1310
+ api_response = list_repos_with_http_info_impl(extra)
1311
+ api_response.data
1312
+ end
1313
+
1314
+ # Github List Repos
1315
+ #
1316
+ # Once you have connected your GitHub account, you can use this endpoint to list the
1317
+ # repositories your account has access to. You can use a data source ID or username to fetch from a specific account.
1318
+ #
1319
+ # @param per_page [Integer]
1320
+ # @param page [Integer]
1321
+ # @param data_source_id [Integer]
1322
+ # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
1323
+ def list_repos_with_http_info(per_page: 30, page: 1, data_source_id: SENTINEL, extra: {})
1324
+ extra[:per_page] = per_page if per_page != SENTINEL
1325
+ extra[:page] = page if page != SENTINEL
1326
+ extra[:data_source_id] = data_source_id if data_source_id != SENTINEL
1327
+ list_repos_with_http_info_impl(extra)
1328
+ end
1329
+
1330
+ # Github List Repos
1331
+ # Once you have connected your GitHub account, you can use this endpoint to list the repositories your account has access to. You can use a data source ID or username to fetch from a specific account.
1332
+ # @param [Hash] opts the optional parameters
1333
+ # @option opts [Integer] :per_page (default to 30)
1334
+ # @option opts [Integer] :page (default to 1)
1335
+ # @option opts [Integer] :data_source_id
1336
+ # @return [Object]
1337
+ private def list_repos_impl(opts = {})
1338
+ data, _status_code, _headers = list_repos_with_http_info(opts)
1339
+ data
1340
+ end
1341
+
1342
+ # Github List Repos
1343
+ # Once you have connected your GitHub account, you can use this endpoint to list the repositories your account has access to. You can use a data source ID or username to fetch from a specific account.
1344
+ # @param [Hash] opts the optional parameters
1345
+ # @option opts [Integer] :per_page (default to 30)
1346
+ # @option opts [Integer] :page (default to 1)
1347
+ # @option opts [Integer] :data_source_id
1348
+ # @return [APIResponse] data is Object, status code, headers and response
1349
+ private def list_repos_with_http_info_impl(opts = {})
1350
+ if @api_client.config.debugging
1351
+ @api_client.config.logger.debug 'Calling API: IntegrationsApi.list_repos ...'
1352
+ end
1353
+ # resource path
1354
+ local_var_path = '/integrations/github/repos'
1355
+
1356
+ # query parameters
1357
+ query_params = opts[:query_params] || {}
1358
+ query_params[:'per_page'] = opts[:'per_page'] if !opts[:'per_page'].nil?
1359
+ query_params[:'page'] = opts[:'page'] if !opts[:'page'].nil?
1360
+ query_params[:'data_source_id'] = opts[:'data_source_id'] if !opts[:'data_source_id'].nil?
1361
+
1362
+ # header parameters
1363
+ header_params = opts[:header_params] || {}
1364
+ # HTTP header 'Accept' (if needed)
1365
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
1366
+
1367
+ # form parameters
1368
+ form_params = opts[:form_params] || {}
1369
+
1370
+ # http body (model)
1371
+ post_body = opts[:debug_body]
1372
+
1373
+ # return_type
1374
+ return_type = opts[:debug_return_type] || 'Object'
1375
+
1376
+ # auth_names
1377
+ auth_names = opts[:debug_auth_names] || ['accessToken', 'apiKey', 'customerId']
1378
+
1379
+ new_options = opts.merge(
1380
+ :operation => :"IntegrationsApi.list_repos",
1381
+ :header_params => header_params,
1382
+ :query_params => query_params,
1383
+ :form_params => form_params,
1384
+ :body => post_body,
1385
+ :auth_names => auth_names,
1386
+ :return_type => return_type
1387
+ )
1388
+
1389
+ data, status_code, headers, response = @api_client.call_api(:GET, local_var_path, new_options)
1390
+ if @api_client.config.debugging
1391
+ @api_client.config.logger.debug "API called: IntegrationsApi#list_repos\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1392
+ end
1393
+ APIResponse::new(data, status_code, headers, response)
1394
+ end
1395
+
1396
+
1273
1397
  # Confluence Sync
1274
1398
  #
1275
1399
  # After listing pages in a user's Confluence account, the set of selected page `ids` and the
@@ -1293,7 +1417,7 @@ module Carbon
1293
1417
  # @param parse_pdf_tables_with_ocr [Boolean]
1294
1418
  # @param body [SyncFilesRequest]
1295
1419
  # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
1296
- 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: '74c95466-42b2-4213-ae36-bfafbaecfcf5', use_ocr: false, parse_pdf_tables_with_ocr: false, extra: {})
1420
+ 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: 'a7c990f4-5923-47b5-a9f8-6ef5416fe5c3', use_ocr: false, parse_pdf_tables_with_ocr: false, extra: {})
1297
1421
  _body = {}
1298
1422
  _body[:tags] = tags if tags != SENTINEL
1299
1423
  _body[:data_source_id] = data_source_id if data_source_id != SENTINEL
@@ -1337,7 +1461,7 @@ module Carbon
1337
1461
  # @param parse_pdf_tables_with_ocr [Boolean]
1338
1462
  # @param body [SyncFilesRequest]
1339
1463
  # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
1340
- 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: '74c95466-42b2-4213-ae36-bfafbaecfcf5', use_ocr: false, parse_pdf_tables_with_ocr: false, extra: {})
1464
+ 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: 'a7c990f4-5923-47b5-a9f8-6ef5416fe5c3', use_ocr: false, parse_pdf_tables_with_ocr: false, extra: {})
1341
1465
  _body = {}
1342
1466
  _body[:tags] = tags if tags != SENTINEL
1343
1467
  _body[:data_source_id] = data_source_id if data_source_id != SENTINEL
@@ -1541,7 +1665,7 @@ module Carbon
1541
1665
  # @param parse_pdf_tables_with_ocr [Boolean]
1542
1666
  # @param body [SyncFilesRequest]
1543
1667
  # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
1544
- 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: '74c95466-42b2-4213-ae36-bfafbaecfcf5', use_ocr: false, parse_pdf_tables_with_ocr: false, extra: {})
1668
+ 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: 'a7c990f4-5923-47b5-a9f8-6ef5416fe5c3', use_ocr: false, parse_pdf_tables_with_ocr: false, extra: {})
1545
1669
  _body = {}
1546
1670
  _body[:tags] = tags if tags != SENTINEL
1547
1671
  _body[:data_source_id] = data_source_id if data_source_id != SENTINEL
@@ -1585,7 +1709,7 @@ module Carbon
1585
1709
  # @param parse_pdf_tables_with_ocr [Boolean]
1586
1710
  # @param body [SyncFilesRequest]
1587
1711
  # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
1588
- 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: '74c95466-42b2-4213-ae36-bfafbaecfcf5', use_ocr: false, parse_pdf_tables_with_ocr: false, extra: {})
1712
+ 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: 'a7c990f4-5923-47b5-a9f8-6ef5416fe5c3', use_ocr: false, parse_pdf_tables_with_ocr: false, extra: {})
1589
1713
  _body = {}
1590
1714
  _body[:tags] = tags if tags != SENTINEL
1591
1715
  _body[:data_source_id] = data_source_id if data_source_id != SENTINEL
@@ -1682,12 +1806,14 @@ module Carbon
1682
1806
  #
1683
1807
  # @param username [String]
1684
1808
  # @param access_token [String]
1809
+ # @param sync_source_items [Boolean] Enabling this flag will fetch all available content from the source to be listed via list items endpoint
1685
1810
  # @param body [GithubConnectRequest]
1686
1811
  # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
1687
- def sync_git_hub(username:, access_token:, extra: {})
1812
+ def sync_git_hub(username:, access_token:, sync_source_items: false, extra: {})
1688
1813
  _body = {}
1689
1814
  _body[:username] = username if username != SENTINEL
1690
1815
  _body[:access_token] = access_token if access_token != SENTINEL
1816
+ _body[:sync_source_items] = sync_source_items if sync_source_items != SENTINEL
1691
1817
  github_connect_request = _body
1692
1818
  api_response = sync_git_hub_with_http_info_impl(github_connect_request, extra)
1693
1819
  api_response.data
@@ -1701,12 +1827,14 @@ module Carbon
1701
1827
  #
1702
1828
  # @param username [String]
1703
1829
  # @param access_token [String]
1830
+ # @param sync_source_items [Boolean] Enabling this flag will fetch all available content from the source to be listed via list items endpoint
1704
1831
  # @param body [GithubConnectRequest]
1705
1832
  # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
1706
- def sync_git_hub_with_http_info(username:, access_token:, extra: {})
1833
+ def sync_git_hub_with_http_info(username:, access_token:, sync_source_items: false, extra: {})
1707
1834
  _body = {}
1708
1835
  _body[:username] = username if username != SENTINEL
1709
1836
  _body[:access_token] = access_token if access_token != SENTINEL
1837
+ _body[:sync_source_items] = sync_source_items if sync_source_items != SENTINEL
1710
1838
  github_connect_request = _body
1711
1839
  sync_git_hub_with_http_info_impl(github_connect_request, extra)
1712
1840
  end
@@ -2412,6 +2540,112 @@ module Carbon
2412
2540
  end
2413
2541
 
2414
2542
 
2543
+ # Github Sync Repos
2544
+ #
2545
+ # You can retreive repos your token has access to using /integrations/github/repos and sync their content.
2546
+ # You can also pass full name of any public repository (username/repo-name). This will store the repo content with
2547
+ # carbon which can be accessed through /integrations/items/list endpoint. Maximum of 25 repositories are accepted per request.
2548
+ #
2549
+ # @param repos [Array<String>]
2550
+ # @param data_source_id [Integer]
2551
+ # @param body [GithubFetchReposRequest]
2552
+ # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
2553
+ def sync_repos(repos:, data_source_id: SENTINEL, extra: {})
2554
+ _body = {}
2555
+ _body[:repos] = repos if repos != SENTINEL
2556
+ _body[:data_source_id] = data_source_id if data_source_id != SENTINEL
2557
+ github_fetch_repos_request = _body
2558
+ api_response = sync_repos_with_http_info_impl(github_fetch_repos_request, extra)
2559
+ api_response.data
2560
+ end
2561
+
2562
+ # Github Sync Repos
2563
+ #
2564
+ # You can retreive repos your token has access to using /integrations/github/repos and sync their content.
2565
+ # You can also pass full name of any public repository (username/repo-name). This will store the repo content with
2566
+ # carbon which can be accessed through /integrations/items/list endpoint. Maximum of 25 repositories are accepted per request.
2567
+ #
2568
+ # @param repos [Array<String>]
2569
+ # @param data_source_id [Integer]
2570
+ # @param body [GithubFetchReposRequest]
2571
+ # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
2572
+ def sync_repos_with_http_info(repos:, data_source_id: SENTINEL, extra: {})
2573
+ _body = {}
2574
+ _body[:repos] = repos if repos != SENTINEL
2575
+ _body[:data_source_id] = data_source_id if data_source_id != SENTINEL
2576
+ github_fetch_repos_request = _body
2577
+ sync_repos_with_http_info_impl(github_fetch_repos_request, extra)
2578
+ end
2579
+
2580
+ # Github Sync Repos
2581
+ # You can retreive repos your token has access to using /integrations/github/repos and sync their content. You can also pass full name of any public repository (username/repo-name). This will store the repo content with carbon which can be accessed through /integrations/items/list endpoint. Maximum of 25 repositories are accepted per request.
2582
+ # @param github_fetch_repos_request [GithubFetchReposRequest]
2583
+ # @param [Hash] opts the optional parameters
2584
+ # @return [Object]
2585
+ private def sync_repos_impl(github_fetch_repos_request, opts = {})
2586
+ data, _status_code, _headers = sync_repos_with_http_info(github_fetch_repos_request, opts)
2587
+ data
2588
+ end
2589
+
2590
+ # Github Sync Repos
2591
+ # You can retreive repos your token has access to using /integrations/github/repos and sync their content. You can also pass full name of any public repository (username/repo-name). This will store the repo content with carbon which can be accessed through /integrations/items/list endpoint. Maximum of 25 repositories are accepted per request.
2592
+ # @param github_fetch_repos_request [GithubFetchReposRequest]
2593
+ # @param [Hash] opts the optional parameters
2594
+ # @return [APIResponse] data is Object, status code, headers and response
2595
+ private def sync_repos_with_http_info_impl(github_fetch_repos_request, opts = {})
2596
+ if @api_client.config.debugging
2597
+ @api_client.config.logger.debug 'Calling API: IntegrationsApi.sync_repos ...'
2598
+ end
2599
+ # verify the required parameter 'github_fetch_repos_request' is set
2600
+ if @api_client.config.client_side_validation && github_fetch_repos_request.nil?
2601
+ fail ArgumentError, "Missing the required parameter 'github_fetch_repos_request' when calling IntegrationsApi.sync_repos"
2602
+ end
2603
+ # resource path
2604
+ local_var_path = '/integrations/github/sync_repos'
2605
+
2606
+ # query parameters
2607
+ query_params = opts[:query_params] || {}
2608
+
2609
+ # header parameters
2610
+ header_params = opts[:header_params] || {}
2611
+ # HTTP header 'Accept' (if needed)
2612
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
2613
+ # HTTP header 'Content-Type'
2614
+ content_type = @api_client.select_header_content_type(['application/json'])
2615
+ if !content_type.nil?
2616
+ header_params['Content-Type'] = content_type
2617
+ end
2618
+
2619
+ # form parameters
2620
+ form_params = opts[:form_params] || {}
2621
+
2622
+ # http body (model)
2623
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(github_fetch_repos_request)
2624
+
2625
+ # return_type
2626
+ return_type = opts[:debug_return_type] || 'Object'
2627
+
2628
+ # auth_names
2629
+ auth_names = opts[:debug_auth_names] || ['accessToken', 'apiKey', 'customerId']
2630
+
2631
+ new_options = opts.merge(
2632
+ :operation => :"IntegrationsApi.sync_repos",
2633
+ :header_params => header_params,
2634
+ :query_params => query_params,
2635
+ :form_params => form_params,
2636
+ :body => post_body,
2637
+ :auth_names => auth_names,
2638
+ :return_type => return_type
2639
+ )
2640
+
2641
+ data, status_code, headers, response = @api_client.call_api(:POST, local_var_path, new_options)
2642
+ if @api_client.config.debugging
2643
+ @api_client.config.logger.debug "API called: IntegrationsApi#sync_repos\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
2644
+ end
2645
+ APIResponse::new(data, status_code, headers, response)
2646
+ end
2647
+
2648
+
2415
2649
  # Rss Feed
2416
2650
  #
2417
2651
  # @param url [String]
@@ -85,6 +85,98 @@ module Carbon
85
85
  end
86
86
  APIResponse::new(data, status_code, headers, response)
87
87
  end
88
+
89
+
90
+ # Update Organization
91
+ #
92
+ # @param global_user_config [UserConfigurationNullable]
93
+ # @param body [UpdateOrganizationInput]
94
+ # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
95
+ def update(global_user_config: SENTINEL, extra: {})
96
+ _body = {}
97
+ _body[:global_user_config] = global_user_config if global_user_config != SENTINEL
98
+ update_organization_input = _body
99
+ api_response = update_with_http_info_impl(update_organization_input, extra)
100
+ api_response.data
101
+ end
102
+
103
+ # Update Organization
104
+ #
105
+ # @param global_user_config [UserConfigurationNullable]
106
+ # @param body [UpdateOrganizationInput]
107
+ # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
108
+ def update_with_http_info(global_user_config: SENTINEL, extra: {})
109
+ _body = {}
110
+ _body[:global_user_config] = global_user_config if global_user_config != SENTINEL
111
+ update_organization_input = _body
112
+ update_with_http_info_impl(update_organization_input, extra)
113
+ end
114
+
115
+ # Update Organization
116
+ # @param update_organization_input [UpdateOrganizationInput]
117
+ # @param [Hash] opts the optional parameters
118
+ # @return [GenericSuccessResponse]
119
+ private def update_impl(update_organization_input, opts = {})
120
+ data, _status_code, _headers = update_with_http_info(update_organization_input, opts)
121
+ data
122
+ end
123
+
124
+ # Update Organization
125
+ # @param update_organization_input [UpdateOrganizationInput]
126
+ # @param [Hash] opts the optional parameters
127
+ # @return [APIResponse] data is GenericSuccessResponse, status code, headers and response
128
+ private def update_with_http_info_impl(update_organization_input, opts = {})
129
+ if @api_client.config.debugging
130
+ @api_client.config.logger.debug 'Calling API: OrganizationsApi.update ...'
131
+ end
132
+ # verify the required parameter 'update_organization_input' is set
133
+ if @api_client.config.client_side_validation && update_organization_input.nil?
134
+ fail ArgumentError, "Missing the required parameter 'update_organization_input' when calling OrganizationsApi.update"
135
+ end
136
+ # resource path
137
+ local_var_path = '/organization/update'
138
+
139
+ # query parameters
140
+ query_params = opts[:query_params] || {}
141
+
142
+ # header parameters
143
+ header_params = opts[:header_params] || {}
144
+ # HTTP header 'Accept' (if needed)
145
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
146
+ # HTTP header 'Content-Type'
147
+ content_type = @api_client.select_header_content_type(['application/json'])
148
+ if !content_type.nil?
149
+ header_params['Content-Type'] = content_type
150
+ end
151
+
152
+ # form parameters
153
+ form_params = opts[:form_params] || {}
154
+
155
+ # http body (model)
156
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(update_organization_input)
157
+
158
+ # return_type
159
+ return_type = opts[:debug_return_type] || 'GenericSuccessResponse'
160
+
161
+ # auth_names
162
+ auth_names = opts[:debug_auth_names] || ['apiKey']
163
+
164
+ new_options = opts.merge(
165
+ :operation => :"OrganizationsApi.update",
166
+ :header_params => header_params,
167
+ :query_params => query_params,
168
+ :form_params => form_params,
169
+ :body => post_body,
170
+ :auth_names => auth_names,
171
+ :return_type => return_type
172
+ )
173
+
174
+ data, status_code, headers, response = @api_client.call_api(:POST, local_var_path, new_options)
175
+ if @api_client.config.debugging
176
+ @api_client.config.logger.debug "API called: OrganizationsApi#update\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
177
+ end
178
+ APIResponse::new(data, status_code, headers, response)
179
+ end
88
180
  end
89
181
 
90
182
  # top-level client access to avoid having the user to insantiate their own API instances
@@ -306,10 +306,10 @@ module Carbon
306
306
  # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
307
307
  def update_users(customer_ids:, auto_sync_enabled_sources: SENTINEL, max_files: SENTINEL, max_files_per_upload: SENTINEL, extra: {})
308
308
  _body = {}
309
- _body[:customer_ids] = customer_ids if customer_ids != SENTINEL
310
309
  _body[:auto_sync_enabled_sources] = auto_sync_enabled_sources if auto_sync_enabled_sources != SENTINEL
311
310
  _body[:max_files] = max_files if max_files != SENTINEL
312
311
  _body[:max_files_per_upload] = max_files_per_upload if max_files_per_upload != SENTINEL
312
+ _body[:customer_ids] = customer_ids if customer_ids != SENTINEL
313
313
  update_users_input = _body
314
314
  api_response = update_users_with_http_info_impl(update_users_input, extra)
315
315
  api_response.data
@@ -325,10 +325,10 @@ module Carbon
325
325
  # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
326
326
  def update_users_with_http_info(customer_ids:, auto_sync_enabled_sources: SENTINEL, max_files: SENTINEL, max_files_per_upload: SENTINEL, extra: {})
327
327
  _body = {}
328
- _body[:customer_ids] = customer_ids if customer_ids != SENTINEL
329
328
  _body[:auto_sync_enabled_sources] = auto_sync_enabled_sources if auto_sync_enabled_sources != SENTINEL
330
329
  _body[:max_files] = max_files if max_files != SENTINEL
331
330
  _body[:max_files_per_upload] = max_files_per_upload if max_files_per_upload != SENTINEL
331
+ _body[:customer_ids] = customer_ids if customer_ids != SENTINEL
332
332
  update_users_input = _body
333
333
  update_users_with_http_info_impl(update_users_input, extra)
334
334
  end
@@ -44,7 +44,7 @@ module Carbon
44
44
  :'chunks_and_embeddings' => :'Array<SingleChunksAndEmbeddingsUploadInput>',
45
45
  :'overwrite_existing' => :'Boolean',
46
46
  :'chunks_only' => :'Boolean',
47
- :'custom_credentials' => :'Object'
47
+ :'custom_credentials' => :'Hash<String, Object>'
48
48
  }
49
49
  end
50
50
 
@@ -92,7 +92,9 @@ module Carbon
92
92
  end
93
93
 
94
94
  if attributes.key?(:'custom_credentials')
95
- self.custom_credentials = attributes[:'custom_credentials']
95
+ if (value = attributes[:'custom_credentials']).is_a?(Hash)
96
+ self.custom_credentials = value
97
+ end
96
98
  end
97
99
  end
98
100