@salesforce/plugin-data 3.8.2 → 3.10.0

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.
Files changed (35) hide show
  1. package/README.md +137 -36
  2. package/lib/bulkDataRequestCache.js +63 -0
  3. package/lib/bulkDataRequestCache.js.map +1 -1
  4. package/lib/bulkIngest.js +184 -0
  5. package/lib/bulkIngest.js.map +1 -0
  6. package/lib/bulkOperationBase.js +6 -7
  7. package/lib/bulkOperationBase.js.map +1 -1
  8. package/lib/bulkUtils.js +59 -1
  9. package/lib/bulkUtils.js.map +1 -1
  10. package/lib/commands/data/import/bulk.js +18 -89
  11. package/lib/commands/data/import/bulk.js.map +1 -1
  12. package/lib/commands/data/import/legacy/tree.js +4 -5
  13. package/lib/commands/data/import/legacy/tree.js.map +1 -1
  14. package/lib/commands/data/import/resume.js +7 -55
  15. package/lib/commands/data/import/resume.js.map +1 -1
  16. package/lib/commands/data/import/tree.js +8 -5
  17. package/lib/commands/data/import/tree.js.map +1 -1
  18. package/lib/commands/data/update/bulk.js +68 -0
  19. package/lib/commands/data/update/bulk.js.map +1 -0
  20. package/lib/commands/data/update/resume.js +48 -0
  21. package/lib/commands/data/update/resume.js.map +1 -0
  22. package/lib/reporters/query/humanReporter.js +24 -19
  23. package/lib/reporters/query/humanReporter.js.map +1 -1
  24. package/lib/reporters/search/humanSearchReporter.js +3 -3
  25. package/lib/reporters/search/humanSearchReporter.js.map +1 -1
  26. package/lib/ux/{bulkImportStages.js → bulkIngestStages.js} +4 -4
  27. package/lib/ux/{bulkImportStages.js.map → bulkIngestStages.js.map} +1 -1
  28. package/messages/bulkIngest.md +39 -0
  29. package/messages/data.export.resume.md +1 -1
  30. package/messages/data.import.bulk.md +3 -35
  31. package/messages/data.import.resume.md +0 -32
  32. package/messages/data.update.bulk.md +47 -0
  33. package/messages/data.update.resume.md +29 -0
  34. package/oclif.manifest.json +504 -283
  35. package/package.json +19 -10
@@ -424,6 +424,263 @@
424
424
  "search:data"
425
425
  ]
426
426
  },
427
+ "data:create:file": {
428
+ "aliases": [],
429
+ "args": {},
430
+ "description": "This command always creates a new file in the org; you can't update an existing file. After a successful upload, the command displays the ID of the new ContentDocument record which represents the uploaded file.\n\nBy default, the uploaded file isn't attached to a record; in the Salesforce UI the file shows up in the Files tab. You can optionally attach the file to an existing record, such as an account, as long as you know its record ID.\n\nYou can also give the file a new name after it's been uploaded; by default its name in the org is the same as the local file name.",
431
+ "examples": [
432
+ "Upload the local file \"resources/astro.png\" to your default org:\n<%= config.bin %> <%= command.id %> --file resources/astro.png",
433
+ "Give the file a different filename after it's uploaded to the org with alias \"my-scratch\":\n<%= config.bin %> <%= command.id %> --file resources/astro.png --title AstroOnABoat.png --target-org my-scratch",
434
+ "Attach the file to a record in the org:\n<%= config.bin %> <%= command.id %> --file path/to/astro.png --parent-id a03fakeLoJWPIA3"
435
+ ],
436
+ "flags": {
437
+ "json": {
438
+ "description": "Format output as json.",
439
+ "helpGroup": "GLOBAL",
440
+ "name": "json",
441
+ "allowNo": false,
442
+ "type": "boolean"
443
+ },
444
+ "flags-dir": {
445
+ "helpGroup": "GLOBAL",
446
+ "name": "flags-dir",
447
+ "summary": "Import flag values from a directory.",
448
+ "hasDynamicHelp": false,
449
+ "multiple": false,
450
+ "type": "option"
451
+ },
452
+ "target-org": {
453
+ "char": "o",
454
+ "name": "target-org",
455
+ "noCacheDefault": true,
456
+ "required": true,
457
+ "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
458
+ "hasDynamicHelp": true,
459
+ "multiple": false,
460
+ "type": "option"
461
+ },
462
+ "api-version": {
463
+ "description": "Override the api version used for api requests made by this command",
464
+ "name": "api-version",
465
+ "hasDynamicHelp": false,
466
+ "multiple": false,
467
+ "type": "option"
468
+ },
469
+ "title": {
470
+ "char": "t",
471
+ "name": "title",
472
+ "required": false,
473
+ "summary": "New title given to the file (ContentDocument) after it's uploaded.",
474
+ "hasDynamicHelp": false,
475
+ "multiple": false,
476
+ "type": "option"
477
+ },
478
+ "file": {
479
+ "char": "f",
480
+ "name": "file",
481
+ "required": true,
482
+ "summary": "Path of file to upload.",
483
+ "hasDynamicHelp": false,
484
+ "multiple": false,
485
+ "type": "option"
486
+ },
487
+ "parent-id": {
488
+ "char": "i",
489
+ "name": "parent-id",
490
+ "summary": "ID of the record to attach the file to.",
491
+ "hasDynamicHelp": false,
492
+ "multiple": false,
493
+ "type": "option"
494
+ }
495
+ },
496
+ "hasDynamicHelp": true,
497
+ "hiddenAliases": [],
498
+ "id": "data:create:file",
499
+ "pluginAlias": "@salesforce/plugin-data",
500
+ "pluginName": "@salesforce/plugin-data",
501
+ "pluginType": "core",
502
+ "strict": true,
503
+ "summary": "Upload a local file to an org.",
504
+ "enableJsonFlag": true,
505
+ "isESM": true,
506
+ "relativePath": [
507
+ "lib",
508
+ "commands",
509
+ "data",
510
+ "create",
511
+ "file.js"
512
+ ],
513
+ "aliasPermutations": [],
514
+ "permutations": [
515
+ "data:create:file",
516
+ "create:data:file",
517
+ "create:file:data",
518
+ "data:file:create",
519
+ "file:data:create",
520
+ "file:create:data"
521
+ ]
522
+ },
523
+ "data:create:record": {
524
+ "aliases": [
525
+ "force:data:record:create"
526
+ ],
527
+ "args": {},
528
+ "deprecateAliases": true,
529
+ "description": "You must specify a value for all required fields of the object.\n\nWhen specifying fields, use the format <fieldName>=<value>. Enclose all field-value pairs in one set of double quotation marks, delimited by spaces. Enclose values that contain spaces in single quotes.\n\nThis command inserts a record into Salesforce objects by default. Use the --use-tooling-api flag to insert into a Tooling API object.",
530
+ "examples": [
531
+ "Insert a record into the Account object of your default org; only the required Name field has a value:\n<%= config.bin %> <%= command.id %> --sobject Account --values \"Name=Acme\"",
532
+ "Insert an Account record with values for two fields, one value contains a space; the command uses the org with alias \"my-scratch\":\n<%= config.bin %> <%= command.id %> --sobject Account --values \"Name='Universal Containers' Website=www.example.com\" --target-org my-scratch",
533
+ "Insert a record into the Tooling API object TraceFlag:\n<%= config.bin %> <%= command.id %> --use-tooling-api --sobject TraceFlag --values \"DebugLevelId=7dl170000008U36AAE StartDate=2022-12-15T00:26:04.000+0000 ExpirationDate=2022-12-15T00:56:04.000+0000 LogType=CLASS_TRACING TracedEntityId=01p17000000R6bLAAS\""
534
+ ],
535
+ "flags": {
536
+ "json": {
537
+ "description": "Format output as json.",
538
+ "helpGroup": "GLOBAL",
539
+ "name": "json",
540
+ "allowNo": false,
541
+ "type": "boolean"
542
+ },
543
+ "flags-dir": {
544
+ "helpGroup": "GLOBAL",
545
+ "name": "flags-dir",
546
+ "summary": "Import flag values from a directory.",
547
+ "hasDynamicHelp": false,
548
+ "multiple": false,
549
+ "type": "option"
550
+ },
551
+ "target-org": {
552
+ "aliases": [
553
+ "targetusername",
554
+ "u"
555
+ ],
556
+ "char": "o",
557
+ "deprecateAliases": true,
558
+ "name": "target-org",
559
+ "noCacheDefault": true,
560
+ "required": true,
561
+ "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
562
+ "hasDynamicHelp": true,
563
+ "multiple": false,
564
+ "type": "option"
565
+ },
566
+ "api-version": {
567
+ "aliases": [
568
+ "apiversion"
569
+ ],
570
+ "deprecateAliases": true,
571
+ "description": "Override the api version used for api requests made by this command",
572
+ "name": "api-version",
573
+ "hasDynamicHelp": false,
574
+ "multiple": false,
575
+ "type": "option"
576
+ },
577
+ "loglevel": {
578
+ "deprecated": {
579
+ "message": "The loglevel flag is no longer in use on this command. You may use it without error, but it will be ignored.\nSet the log level using the `SFDX_LOG_LEVEL` environment variable."
580
+ },
581
+ "hidden": true,
582
+ "name": "loglevel",
583
+ "hasDynamicHelp": false,
584
+ "multiple": false,
585
+ "type": "option"
586
+ },
587
+ "sobject": {
588
+ "aliases": [
589
+ "sobjecttype"
590
+ ],
591
+ "char": "s",
592
+ "deprecateAliases": true,
593
+ "name": "sobject",
594
+ "required": true,
595
+ "summary": "API name of the Salesforce or Tooling API object that you're inserting a record into.",
596
+ "hasDynamicHelp": false,
597
+ "multiple": false,
598
+ "type": "option"
599
+ },
600
+ "values": {
601
+ "char": "v",
602
+ "name": "values",
603
+ "required": true,
604
+ "summary": "Values for the flags in the form <fieldName>=<value>, separate multiple pairs with spaces.",
605
+ "hasDynamicHelp": false,
606
+ "multiple": false,
607
+ "type": "option"
608
+ },
609
+ "use-tooling-api": {
610
+ "aliases": [
611
+ "usetoolingapi"
612
+ ],
613
+ "char": "t",
614
+ "deprecateAliases": true,
615
+ "name": "use-tooling-api",
616
+ "summary": "Use Tooling API so you can insert a record in a Tooling API object.",
617
+ "allowNo": false,
618
+ "type": "boolean"
619
+ },
620
+ "perflog": {
621
+ "deprecated": {
622
+ "version": "57"
623
+ },
624
+ "description": "Gets data on API performance metrics from the server. The data is stored in $HOME/.sfdx/apiPerformanceLog.json.",
625
+ "hidden": true,
626
+ "name": "perflog",
627
+ "summary": "Get API performance data.",
628
+ "allowNo": false,
629
+ "type": "boolean"
630
+ }
631
+ },
632
+ "hasDynamicHelp": true,
633
+ "hiddenAliases": [],
634
+ "id": "data:create:record",
635
+ "pluginAlias": "@salesforce/plugin-data",
636
+ "pluginName": "@salesforce/plugin-data",
637
+ "pluginType": "core",
638
+ "strict": true,
639
+ "summary": "Create and insert a record into a Salesforce or Tooling API object.",
640
+ "enableJsonFlag": true,
641
+ "isESM": true,
642
+ "relativePath": [
643
+ "lib",
644
+ "commands",
645
+ "data",
646
+ "create",
647
+ "record.js"
648
+ ],
649
+ "aliasPermutations": [
650
+ "force:data:record:create",
651
+ "data:force:record:create",
652
+ "data:record:force:create",
653
+ "data:record:create:force",
654
+ "force:record:data:create",
655
+ "record:force:data:create",
656
+ "record:data:force:create",
657
+ "record:data:create:force",
658
+ "force:record:create:data",
659
+ "record:force:create:data",
660
+ "record:create:force:data",
661
+ "record:create:data:force",
662
+ "force:data:create:record",
663
+ "data:force:create:record",
664
+ "data:create:force:record",
665
+ "data:create:record:force",
666
+ "force:create:data:record",
667
+ "create:force:data:record",
668
+ "create:data:force:record",
669
+ "create:data:record:force",
670
+ "force:create:record:data",
671
+ "create:force:record:data",
672
+ "create:record:force:data",
673
+ "create:record:data:force"
674
+ ],
675
+ "permutations": [
676
+ "data:create:record",
677
+ "create:data:record",
678
+ "create:record:data",
679
+ "data:record:create",
680
+ "record:data:create",
681
+ "record:create:data"
682
+ ]
683
+ },
427
684
  "data:delete:bulk": {
428
685
  "aliases": [],
429
686
  "args": {},
@@ -814,306 +1071,49 @@
814
1071
  "multiple": false,
815
1072
  "type": "option"
816
1073
  },
817
- "api-version": {
818
- "description": "Override the api version used for api requests made by this command",
819
- "name": "api-version",
820
- "hasDynamicHelp": false,
821
- "multiple": false,
822
- "type": "option"
823
- },
824
- "loglevel": {
825
- "deprecated": {
826
- "message": "The loglevel flag is no longer in use on this command. You may use it without error, but it will be ignored.\nSet the log level using the `SFDX_LOG_LEVEL` environment variable."
827
- },
828
- "hidden": true,
829
- "name": "loglevel",
830
- "hasDynamicHelp": false,
831
- "multiple": false,
832
- "type": "option"
833
- }
834
- },
835
- "hasDynamicHelp": true,
836
- "hiddenAliases": [],
837
- "id": "data:delete:resume",
838
- "pluginAlias": "@salesforce/plugin-data",
839
- "pluginName": "@salesforce/plugin-data",
840
- "pluginType": "core",
841
- "strict": true,
842
- "summary": "Resume a bulk delete job that you previously started. Uses Bulk API 2.0.",
843
- "enableJsonFlag": true,
844
- "isESM": true,
845
- "relativePath": [
846
- "lib",
847
- "commands",
848
- "data",
849
- "delete",
850
- "resume.js"
851
- ],
852
- "aliasPermutations": [],
853
- "permutations": [
854
- "data:delete:resume",
855
- "delete:data:resume",
856
- "delete:resume:data",
857
- "data:resume:delete",
858
- "resume:data:delete",
859
- "resume:delete:data"
860
- ]
861
- },
862
- "data:create:file": {
863
- "aliases": [],
864
- "args": {},
865
- "description": "This command always creates a new file in the org; you can't update an existing file. After a successful upload, the command displays the ID of the new ContentDocument record which represents the uploaded file.\n\nBy default, the uploaded file isn't attached to a record; in the Salesforce UI the file shows up in the Files tab. You can optionally attach the file to an existing record, such as an account, as long as you know its record ID.\n\nYou can also give the file a new name after it's been uploaded; by default its name in the org is the same as the local file name.",
866
- "examples": [
867
- "Upload the local file \"resources/astro.png\" to your default org:\n<%= config.bin %> <%= command.id %> --file resources/astro.png",
868
- "Give the file a different filename after it's uploaded to the org with alias \"my-scratch\":\n<%= config.bin %> <%= command.id %> --file resources/astro.png --title AstroOnABoat.png --target-org my-scratch",
869
- "Attach the file to a record in the org:\n<%= config.bin %> <%= command.id %> --file path/to/astro.png --parent-id a03fakeLoJWPIA3"
870
- ],
871
- "flags": {
872
- "json": {
873
- "description": "Format output as json.",
874
- "helpGroup": "GLOBAL",
875
- "name": "json",
876
- "allowNo": false,
877
- "type": "boolean"
878
- },
879
- "flags-dir": {
880
- "helpGroup": "GLOBAL",
881
- "name": "flags-dir",
882
- "summary": "Import flag values from a directory.",
883
- "hasDynamicHelp": false,
884
- "multiple": false,
885
- "type": "option"
886
- },
887
- "target-org": {
888
- "char": "o",
889
- "name": "target-org",
890
- "noCacheDefault": true,
891
- "required": true,
892
- "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
893
- "hasDynamicHelp": true,
894
- "multiple": false,
895
- "type": "option"
896
- },
897
- "api-version": {
898
- "description": "Override the api version used for api requests made by this command",
899
- "name": "api-version",
900
- "hasDynamicHelp": false,
901
- "multiple": false,
902
- "type": "option"
903
- },
904
- "title": {
905
- "char": "t",
906
- "name": "title",
907
- "required": false,
908
- "summary": "New title given to the file (ContentDocument) after it's uploaded.",
909
- "hasDynamicHelp": false,
910
- "multiple": false,
911
- "type": "option"
912
- },
913
- "file": {
914
- "char": "f",
915
- "name": "file",
916
- "required": true,
917
- "summary": "Path of file to upload.",
918
- "hasDynamicHelp": false,
919
- "multiple": false,
920
- "type": "option"
921
- },
922
- "parent-id": {
923
- "char": "i",
924
- "name": "parent-id",
925
- "summary": "ID of the record to attach the file to.",
926
- "hasDynamicHelp": false,
927
- "multiple": false,
928
- "type": "option"
929
- }
930
- },
931
- "hasDynamicHelp": true,
932
- "hiddenAliases": [],
933
- "id": "data:create:file",
934
- "pluginAlias": "@salesforce/plugin-data",
935
- "pluginName": "@salesforce/plugin-data",
936
- "pluginType": "core",
937
- "strict": true,
938
- "summary": "Upload a local file to an org.",
939
- "enableJsonFlag": true,
940
- "isESM": true,
941
- "relativePath": [
942
- "lib",
943
- "commands",
944
- "data",
945
- "create",
946
- "file.js"
947
- ],
948
- "aliasPermutations": [],
949
- "permutations": [
950
- "data:create:file",
951
- "create:data:file",
952
- "create:file:data",
953
- "data:file:create",
954
- "file:data:create",
955
- "file:create:data"
956
- ]
957
- },
958
- "data:create:record": {
959
- "aliases": [
960
- "force:data:record:create"
961
- ],
962
- "args": {},
963
- "deprecateAliases": true,
964
- "description": "You must specify a value for all required fields of the object.\n\nWhen specifying fields, use the format <fieldName>=<value>. Enclose all field-value pairs in one set of double quotation marks, delimited by spaces. Enclose values that contain spaces in single quotes.\n\nThis command inserts a record into Salesforce objects by default. Use the --use-tooling-api flag to insert into a Tooling API object.",
965
- "examples": [
966
- "Insert a record into the Account object of your default org; only the required Name field has a value:\n<%= config.bin %> <%= command.id %> --sobject Account --values \"Name=Acme\"",
967
- "Insert an Account record with values for two fields, one value contains a space; the command uses the org with alias \"my-scratch\":\n<%= config.bin %> <%= command.id %> --sobject Account --values \"Name='Universal Containers' Website=www.example.com\" --target-org my-scratch",
968
- "Insert a record into the Tooling API object TraceFlag:\n<%= config.bin %> <%= command.id %> --use-tooling-api --sobject TraceFlag --values \"DebugLevelId=7dl170000008U36AAE StartDate=2022-12-15T00:26:04.000+0000 ExpirationDate=2022-12-15T00:56:04.000+0000 LogType=CLASS_TRACING TracedEntityId=01p17000000R6bLAAS\""
969
- ],
970
- "flags": {
971
- "json": {
972
- "description": "Format output as json.",
973
- "helpGroup": "GLOBAL",
974
- "name": "json",
975
- "allowNo": false,
976
- "type": "boolean"
977
- },
978
- "flags-dir": {
979
- "helpGroup": "GLOBAL",
980
- "name": "flags-dir",
981
- "summary": "Import flag values from a directory.",
982
- "hasDynamicHelp": false,
983
- "multiple": false,
984
- "type": "option"
985
- },
986
- "target-org": {
987
- "aliases": [
988
- "targetusername",
989
- "u"
990
- ],
991
- "char": "o",
992
- "deprecateAliases": true,
993
- "name": "target-org",
994
- "noCacheDefault": true,
995
- "required": true,
996
- "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
997
- "hasDynamicHelp": true,
998
- "multiple": false,
999
- "type": "option"
1000
- },
1001
- "api-version": {
1002
- "aliases": [
1003
- "apiversion"
1004
- ],
1005
- "deprecateAliases": true,
1006
- "description": "Override the api version used for api requests made by this command",
1007
- "name": "api-version",
1008
- "hasDynamicHelp": false,
1009
- "multiple": false,
1010
- "type": "option"
1011
- },
1012
- "loglevel": {
1013
- "deprecated": {
1014
- "message": "The loglevel flag is no longer in use on this command. You may use it without error, but it will be ignored.\nSet the log level using the `SFDX_LOG_LEVEL` environment variable."
1015
- },
1016
- "hidden": true,
1017
- "name": "loglevel",
1018
- "hasDynamicHelp": false,
1019
- "multiple": false,
1020
- "type": "option"
1021
- },
1022
- "sobject": {
1023
- "aliases": [
1024
- "sobjecttype"
1025
- ],
1026
- "char": "s",
1027
- "deprecateAliases": true,
1028
- "name": "sobject",
1029
- "required": true,
1030
- "summary": "API name of the Salesforce or Tooling API object that you're inserting a record into.",
1031
- "hasDynamicHelp": false,
1032
- "multiple": false,
1033
- "type": "option"
1034
- },
1035
- "values": {
1036
- "char": "v",
1037
- "name": "values",
1038
- "required": true,
1039
- "summary": "Values for the flags in the form <fieldName>=<value>, separate multiple pairs with spaces.",
1040
- "hasDynamicHelp": false,
1041
- "multiple": false,
1042
- "type": "option"
1043
- },
1044
- "use-tooling-api": {
1045
- "aliases": [
1046
- "usetoolingapi"
1047
- ],
1048
- "char": "t",
1049
- "deprecateAliases": true,
1050
- "name": "use-tooling-api",
1051
- "summary": "Use Tooling API so you can insert a record in a Tooling API object.",
1052
- "allowNo": false,
1053
- "type": "boolean"
1074
+ "api-version": {
1075
+ "description": "Override the api version used for api requests made by this command",
1076
+ "name": "api-version",
1077
+ "hasDynamicHelp": false,
1078
+ "multiple": false,
1079
+ "type": "option"
1054
1080
  },
1055
- "perflog": {
1081
+ "loglevel": {
1056
1082
  "deprecated": {
1057
- "version": "57"
1083
+ "message": "The loglevel flag is no longer in use on this command. You may use it without error, but it will be ignored.\nSet the log level using the `SFDX_LOG_LEVEL` environment variable."
1058
1084
  },
1059
- "description": "Gets data on API performance metrics from the server. The data is stored in $HOME/.sfdx/apiPerformanceLog.json.",
1060
1085
  "hidden": true,
1061
- "name": "perflog",
1062
- "summary": "Get API performance data.",
1063
- "allowNo": false,
1064
- "type": "boolean"
1086
+ "name": "loglevel",
1087
+ "hasDynamicHelp": false,
1088
+ "multiple": false,
1089
+ "type": "option"
1065
1090
  }
1066
1091
  },
1067
1092
  "hasDynamicHelp": true,
1068
1093
  "hiddenAliases": [],
1069
- "id": "data:create:record",
1094
+ "id": "data:delete:resume",
1070
1095
  "pluginAlias": "@salesforce/plugin-data",
1071
1096
  "pluginName": "@salesforce/plugin-data",
1072
1097
  "pluginType": "core",
1073
1098
  "strict": true,
1074
- "summary": "Create and insert a record into a Salesforce or Tooling API object.",
1099
+ "summary": "Resume a bulk delete job that you previously started. Uses Bulk API 2.0.",
1075
1100
  "enableJsonFlag": true,
1076
1101
  "isESM": true,
1077
1102
  "relativePath": [
1078
1103
  "lib",
1079
1104
  "commands",
1080
1105
  "data",
1081
- "create",
1082
- "record.js"
1083
- ],
1084
- "aliasPermutations": [
1085
- "force:data:record:create",
1086
- "data:force:record:create",
1087
- "data:record:force:create",
1088
- "data:record:create:force",
1089
- "force:record:data:create",
1090
- "record:force:data:create",
1091
- "record:data:force:create",
1092
- "record:data:create:force",
1093
- "force:record:create:data",
1094
- "record:force:create:data",
1095
- "record:create:force:data",
1096
- "record:create:data:force",
1097
- "force:data:create:record",
1098
- "data:force:create:record",
1099
- "data:create:force:record",
1100
- "data:create:record:force",
1101
- "force:create:data:record",
1102
- "create:force:data:record",
1103
- "create:data:force:record",
1104
- "create:data:record:force",
1105
- "force:create:record:data",
1106
- "create:force:record:data",
1107
- "create:record:force:data",
1108
- "create:record:data:force"
1106
+ "delete",
1107
+ "resume.js"
1109
1108
  ],
1109
+ "aliasPermutations": [],
1110
1110
  "permutations": [
1111
- "data:create:record",
1112
- "create:data:record",
1113
- "create:record:data",
1114
- "data:record:create",
1115
- "record:data:create",
1116
- "record:create:data"
1111
+ "data:delete:resume",
1112
+ "delete:data:resume",
1113
+ "delete:resume:data",
1114
+ "data:resume:delete",
1115
+ "resume:data:delete",
1116
+ "resume:delete:data"
1117
1117
  ]
1118
1118
  },
1119
1119
  "data:export:bulk": {
@@ -1355,7 +1355,7 @@
1355
1355
  "pluginName": "@salesforce/plugin-data",
1356
1356
  "pluginType": "core",
1357
1357
  "strict": true,
1358
- "summary": "Resume a bulk export job that you previously started.",
1358
+ "summary": "Resume a bulk export job that you previously started. Uses Bulk API 2.0.",
1359
1359
  "enableJsonFlag": true,
1360
1360
  "isESM": true,
1361
1361
  "relativePath": [
@@ -1811,7 +1811,7 @@
1811
1811
  "file"
1812
1812
  ],
1813
1813
  "name": "line-ending",
1814
- "summary": "Line ending used in the CSV file. Default value on Windows is `CRLF`; on macOS and Linux it's `LR`.",
1814
+ "summary": "Line ending used in the CSV file. Default value on Windows is `CRLF`; on macOS and Linux it's `LF`.",
1815
1815
  "hasDynamicHelp": false,
1816
1816
  "multiple": false,
1817
1817
  "options": [
@@ -1819,6 +1819,21 @@
1819
1819
  "LF"
1820
1820
  ],
1821
1821
  "type": "option"
1822
+ },
1823
+ "column-delimiter": {
1824
+ "name": "column-delimiter",
1825
+ "summary": "Column delimiter used in the CSV file. Default is COMMA.",
1826
+ "hasDynamicHelp": false,
1827
+ "multiple": false,
1828
+ "options": [
1829
+ "BACKQUOTE",
1830
+ "CARET",
1831
+ "COMMA",
1832
+ "PIPE",
1833
+ "SEMICOLON",
1834
+ "TAB"
1835
+ ],
1836
+ "type": "option"
1822
1837
  }
1823
1838
  },
1824
1839
  "hasDynamicHelp": true,
@@ -2332,6 +2347,137 @@
2332
2347
  "resume:query:data"
2333
2348
  ]
2334
2349
  },
2350
+ "data:update:bulk": {
2351
+ "aliases": [],
2352
+ "args": {},
2353
+ "description": "You can use this command to update millions of Salesforce object records based on a file in comma-separated values (CSV) format.\n\nAll the records in the CSV file must be for the same Salesforce object. Specify the object with the `--sobject` flag. The first column of every line in the CSV file must be an ID of the record you want to update. The CSV file can contain only existing records; if a record in the file doesn't currently exist in the Salesforce object, the command fails. Consider using \"sf data upsert bulk\" if you also want to insert new records.\n\nBulk updates can take a while, depending on how many records are in the CSV file. If the command times out, or you specified the --async flag, the command displays the job ID. To see the status and get the results of the job, run \"sf data update resume\" and pass the job ID to the --job-id flag.\n\nFor information and examples about how to prepare your CSV files, see \"Prepare Data to Ingest\" in the \"Bulk API 2.0 and Bulk API Developer Guide\" (https://developer.salesforce.com/docs/atlas.en-us.api_asynch.meta/api_asynch/datafiles_prepare_data.htm).",
2354
+ "examples": [
2355
+ "Update Account records from a CSV-formatted file into an org with alias \"my-scratch\"; if the update doesn't complete in 10 minutes, the command ends and displays a job ID:\n<%= config.bin %> <%= command.id %> --file accounts.csv --sobject Account --wait 10 --target-org my-scratch",
2356
+ "Update asynchronously and use the default org; the command immediately returns a job ID that you then pass to the \"sf data update resume\" command:\n<%= config.bin %> <%= command.id %> --file accounts.csv --sobject Account --async"
2357
+ ],
2358
+ "flags": {
2359
+ "json": {
2360
+ "description": "Format output as json.",
2361
+ "helpGroup": "GLOBAL",
2362
+ "name": "json",
2363
+ "allowNo": false,
2364
+ "type": "boolean"
2365
+ },
2366
+ "flags-dir": {
2367
+ "helpGroup": "GLOBAL",
2368
+ "name": "flags-dir",
2369
+ "summary": "Import flag values from a directory.",
2370
+ "hasDynamicHelp": false,
2371
+ "multiple": false,
2372
+ "type": "option"
2373
+ },
2374
+ "async": {
2375
+ "char": "a",
2376
+ "name": "async",
2377
+ "summary": "Don't wait for the command to complete.",
2378
+ "allowNo": false,
2379
+ "type": "boolean"
2380
+ },
2381
+ "wait": {
2382
+ "char": "w",
2383
+ "name": "wait",
2384
+ "summary": "Time to wait for the command to finish, in minutes.",
2385
+ "hasDynamicHelp": true,
2386
+ "multiple": false,
2387
+ "type": "option"
2388
+ },
2389
+ "file": {
2390
+ "char": "f",
2391
+ "name": "file",
2392
+ "required": true,
2393
+ "summary": "CSV file that contains the Salesforce object records you want to update.",
2394
+ "hasDynamicHelp": false,
2395
+ "multiple": false,
2396
+ "type": "option"
2397
+ },
2398
+ "sobject": {
2399
+ "char": "s",
2400
+ "name": "sobject",
2401
+ "required": true,
2402
+ "summary": "API name of the Salesforce object, either standard or custom, which you are updating.",
2403
+ "hasDynamicHelp": false,
2404
+ "multiple": false,
2405
+ "type": "option"
2406
+ },
2407
+ "api-version": {
2408
+ "description": "Override the api version used for api requests made by this command",
2409
+ "name": "api-version",
2410
+ "hasDynamicHelp": false,
2411
+ "multiple": false,
2412
+ "type": "option"
2413
+ },
2414
+ "target-org": {
2415
+ "char": "o",
2416
+ "name": "target-org",
2417
+ "noCacheDefault": true,
2418
+ "required": true,
2419
+ "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
2420
+ "hasDynamicHelp": true,
2421
+ "multiple": false,
2422
+ "type": "option"
2423
+ },
2424
+ "line-ending": {
2425
+ "dependsOn": [
2426
+ "file"
2427
+ ],
2428
+ "name": "line-ending",
2429
+ "summary": "Line ending used in the CSV file. Default value on Windows is `CRLF`; on macOS and Linux it's `LF`.",
2430
+ "hasDynamicHelp": false,
2431
+ "multiple": false,
2432
+ "options": [
2433
+ "CRLF",
2434
+ "LF"
2435
+ ],
2436
+ "type": "option"
2437
+ },
2438
+ "column-delimiter": {
2439
+ "name": "column-delimiter",
2440
+ "summary": "Column delimiter used in the CSV file. Default is COMMA.",
2441
+ "hasDynamicHelp": false,
2442
+ "multiple": false,
2443
+ "options": [
2444
+ "BACKQUOTE",
2445
+ "CARET",
2446
+ "COMMA",
2447
+ "PIPE",
2448
+ "SEMICOLON",
2449
+ "TAB"
2450
+ ],
2451
+ "type": "option"
2452
+ }
2453
+ },
2454
+ "hasDynamicHelp": true,
2455
+ "hiddenAliases": [],
2456
+ "id": "data:update:bulk",
2457
+ "pluginAlias": "@salesforce/plugin-data",
2458
+ "pluginName": "@salesforce/plugin-data",
2459
+ "pluginType": "core",
2460
+ "strict": true,
2461
+ "summary": "Bulk update records to an org from a CSV file. Uses Bulk API 2.0.",
2462
+ "enableJsonFlag": true,
2463
+ "isESM": true,
2464
+ "relativePath": [
2465
+ "lib",
2466
+ "commands",
2467
+ "data",
2468
+ "update",
2469
+ "bulk.js"
2470
+ ],
2471
+ "aliasPermutations": [],
2472
+ "permutations": [
2473
+ "data:update:bulk",
2474
+ "update:data:bulk",
2475
+ "update:bulk:data",
2476
+ "data:bulk:update",
2477
+ "bulk:data:update",
2478
+ "bulk:update:data"
2479
+ ]
2480
+ },
2335
2481
  "data:update:record": {
2336
2482
  "aliases": [
2337
2483
  "force:data:record:update"
@@ -2513,6 +2659,81 @@
2513
2659
  "record:update:data"
2514
2660
  ]
2515
2661
  },
2662
+ "data:update:resume": {
2663
+ "aliases": [],
2664
+ "args": {},
2665
+ "description": "When the original \"sf data update bulk\" command either times out or is run with the --async flag, it displays a job ID. To see the status and get the results of the bulk update, run this command by either passing it the job ID or using the --use-most-recent flag to specify the most recent bulk update job.",
2666
+ "examples": [
2667
+ "Resume a bulk update job of your default org using a job ID:\n<%= config.bin %> <%= command.id %> --job-id 750xx000000005sAAA",
2668
+ "Resume the most recently run bulk update job for an org with alias \"my-scratch\":\n<%= config.bin %> <%= command.id %> --use-most-recent --target-org my-scratch"
2669
+ ],
2670
+ "flags": {
2671
+ "json": {
2672
+ "description": "Format output as json.",
2673
+ "helpGroup": "GLOBAL",
2674
+ "name": "json",
2675
+ "allowNo": false,
2676
+ "type": "boolean"
2677
+ },
2678
+ "flags-dir": {
2679
+ "helpGroup": "GLOBAL",
2680
+ "name": "flags-dir",
2681
+ "summary": "Import flag values from a directory.",
2682
+ "hasDynamicHelp": false,
2683
+ "multiple": false,
2684
+ "type": "option"
2685
+ },
2686
+ "use-most-recent": {
2687
+ "name": "use-most-recent",
2688
+ "summary": "Use the job ID of the bulk update job that was most recently run.",
2689
+ "allowNo": false,
2690
+ "type": "boolean"
2691
+ },
2692
+ "job-id": {
2693
+ "char": "i",
2694
+ "name": "job-id",
2695
+ "summary": "Job ID of the bulk update.",
2696
+ "hasDynamicHelp": false,
2697
+ "multiple": false,
2698
+ "type": "option"
2699
+ },
2700
+ "wait": {
2701
+ "char": "w",
2702
+ "name": "wait",
2703
+ "summary": "Time to wait for the command to finish, in minutes.",
2704
+ "default": "5 minutes",
2705
+ "hasDynamicHelp": true,
2706
+ "multiple": false,
2707
+ "type": "option"
2708
+ }
2709
+ },
2710
+ "hasDynamicHelp": true,
2711
+ "hiddenAliases": [],
2712
+ "id": "data:update:resume",
2713
+ "pluginAlias": "@salesforce/plugin-data",
2714
+ "pluginName": "@salesforce/plugin-data",
2715
+ "pluginType": "core",
2716
+ "strict": true,
2717
+ "summary": "Resume a bulk update job that you previously started. Uses Bulk API 2.0.",
2718
+ "enableJsonFlag": true,
2719
+ "isESM": true,
2720
+ "relativePath": [
2721
+ "lib",
2722
+ "commands",
2723
+ "data",
2724
+ "update",
2725
+ "resume.js"
2726
+ ],
2727
+ "aliasPermutations": [],
2728
+ "permutations": [
2729
+ "data:update:resume",
2730
+ "update:data:resume",
2731
+ "update:resume:data",
2732
+ "data:resume:update",
2733
+ "resume:data:update",
2734
+ "resume:update:data"
2735
+ ]
2736
+ },
2516
2737
  "data:upsert:bulk": {
2517
2738
  "aliases": [],
2518
2739
  "args": {},
@@ -3533,5 +3754,5 @@
3533
3754
  ]
3534
3755
  }
3535
3756
  },
3536
- "version": "3.8.2"
3757
+ "version": "3.10.0"
3537
3758
  }