@salesforce/plugin-data 3.9.0 → 3.11.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.
package/README.md CHANGED
@@ -76,6 +76,7 @@ sf plugins
76
76
 
77
77
  <!-- commands -->
78
78
 
79
+ - [`sf data bulk results`](#sf-data-bulk-results)
79
80
  - [`sf data create file`](#sf-data-create-file)
80
81
  - [`sf data create record`](#sf-data-create-record)
81
82
  - [`sf data delete bulk`](#sf-data-delete-bulk)
@@ -92,13 +93,60 @@ sf plugins
92
93
  - [`sf data query resume`](#sf-data-query-resume)
93
94
  - [`sf data resume`](#sf-data-resume)
94
95
  - [`sf data search`](#sf-data-search)
96
+ - [`sf data update bulk`](#sf-data-update-bulk)
95
97
  - [`sf data update record`](#sf-data-update-record)
98
+ - [`sf data update resume`](#sf-data-update-resume)
96
99
  - [`sf data upsert bulk`](#sf-data-upsert-bulk)
97
100
  - [`sf data upsert resume`](#sf-data-upsert-resume)
98
101
  - [`sf force data bulk delete`](#sf-force-data-bulk-delete)
99
102
  - [`sf force data bulk status`](#sf-force-data-bulk-status)
100
103
  - [`sf force data bulk upsert`](#sf-force-data-bulk-upsert)
101
104
 
105
+ ## `sf data bulk results`
106
+
107
+ Get the results of a bulk ingest job that you previously ran.
108
+
109
+ ```
110
+ USAGE
111
+ $ sf data bulk results -i <value> -o <value> [--json] [--flags-dir <value>] [--api-version <value>]
112
+
113
+ FLAGS
114
+ -i, --job-id=<value> (required) Job ID of the bulk job.
115
+ -o, --target-org=<value> (required) Username or alias of the target org. Not required if the `target-org`
116
+ configuration variable is already set.
117
+ --api-version=<value> Override the api version used for api requests made by this command
118
+
119
+ GLOBAL FLAGS
120
+ --flags-dir=<value> Import flag values from a directory.
121
+ --json Format output as json.
122
+
123
+ DESCRIPTION
124
+ Get the results of a bulk ingest job that you previously ran.
125
+
126
+ Use this command to get the complete results after running one of the CLI commands that uses Bulk API 2.0 to ingest
127
+ (import, update, upsert, or delete) large datasets to your org, such as "data import bulk". The previously-run bulk
128
+ command must have completed; if it's still processing, run the corresponding resume command first, such as "data
129
+ import resume." Make note of the job ID of the previous bulk command because you use it to run this command.
130
+
131
+ You can also use this command to get results from running a bulk ingest job with a different tool, such as Data
132
+ Loader, as long as you have the job ID. For information on Data Loader, see
133
+ https://developer.salesforce.com/docs/atlas.en-us.dataLoader.meta/dataLoader/data_loader_intro.htm.
134
+
135
+ This command first displays the status of the previous bulk job, the operation that was executed in the org (such as
136
+ insert or hard delete), and the updated Salesforce object. The command then displays how many records were processed
137
+ in total, and how many were successful or failed. Finally, the output displays the names of the generated
138
+ CSV-formatted files that contain the specific results for each ingested record. Depending on the success or failure of
139
+ the bulk command, the results files can include the IDs of inserted records or the specific errors. When possible, if
140
+ the ingest job failed or was aborted, you also get a CSV file with the unprocessed results.
141
+
142
+ EXAMPLES
143
+ Get results from a bulk ingest job; use the org with alias "my-scratch":
144
+
145
+ $ sf data bulk results --job-id 7507i000fake341G --target-org my-scratch
146
+ ```
147
+
148
+ _See code: [src/commands/data/bulk/results.ts](https://github.com/salesforcecli/plugin-data/blob/3.11.0/src/commands/data/bulk/results.ts)_
149
+
102
150
  ## `sf data create file`
103
151
 
104
152
  Upload a local file to an org.
@@ -146,7 +194,7 @@ EXAMPLES
146
194
  $ sf data create file --file path/to/astro.png --parent-id a03fakeLoJWPIA3
147
195
  ```
148
196
 
149
- _See code: [src/commands/data/create/file.ts](https://github.com/salesforcecli/plugin-data/blob/3.9.0/src/commands/data/create/file.ts)_
197
+ _See code: [src/commands/data/create/file.ts](https://github.com/salesforcecli/plugin-data/blob/3.11.0/src/commands/data/create/file.ts)_
150
198
 
151
199
  ## `sf data create record`
152
200
 
@@ -202,7 +250,7 @@ EXAMPLES
202
250
  TracedEntityId=01p17000000R6bLAAS"
203
251
  ```
204
252
 
205
- _See code: [src/commands/data/create/record.ts](https://github.com/salesforcecli/plugin-data/blob/3.9.0/src/commands/data/create/record.ts)_
253
+ _See code: [src/commands/data/create/record.ts](https://github.com/salesforcecli/plugin-data/blob/3.11.0/src/commands/data/create/record.ts)_
206
254
 
207
255
  ## `sf data delete bulk`
208
256
 
@@ -260,7 +308,7 @@ FLAG DESCRIPTIONS
260
308
  and can be enabled only by a system administrator.
261
309
  ```
262
310
 
263
- _See code: [src/commands/data/delete/bulk.ts](https://github.com/salesforcecli/plugin-data/blob/3.9.0/src/commands/data/delete/bulk.ts)_
311
+ _See code: [src/commands/data/delete/bulk.ts](https://github.com/salesforcecli/plugin-data/blob/3.11.0/src/commands/data/delete/bulk.ts)_
264
312
 
265
313
  ## `sf data delete record`
266
314
 
@@ -321,7 +369,7 @@ EXAMPLES
321
369
  $ sf data delete record --use-tooling-api --sobject TraceFlag --record-id 7tf8c
322
370
  ```
323
371
 
324
- _See code: [src/commands/data/delete/record.ts](https://github.com/salesforcecli/plugin-data/blob/3.9.0/src/commands/data/delete/record.ts)_
372
+ _See code: [src/commands/data/delete/record.ts](https://github.com/salesforcecli/plugin-data/blob/3.11.0/src/commands/data/delete/record.ts)_
325
373
 
326
374
  ## `sf data delete resume`
327
375
 
@@ -360,7 +408,7 @@ EXAMPLES
360
408
  $ sf data delete resume --use-most-recent --target-org my-scratch
361
409
  ```
362
410
 
363
- _See code: [src/commands/data/delete/resume.ts](https://github.com/salesforcecli/plugin-data/blob/3.9.0/src/commands/data/delete/resume.ts)_
411
+ _See code: [src/commands/data/delete/resume.ts](https://github.com/salesforcecli/plugin-data/blob/3.11.0/src/commands/data/delete/resume.ts)_
364
412
 
365
413
  ## `sf data export bulk`
366
414
 
@@ -434,11 +482,11 @@ EXAMPLES
434
482
  --result-format json --async
435
483
  ```
436
484
 
437
- _See code: [src/commands/data/export/bulk.ts](https://github.com/salesforcecli/plugin-data/blob/3.9.0/src/commands/data/export/bulk.ts)_
485
+ _See code: [src/commands/data/export/bulk.ts](https://github.com/salesforcecli/plugin-data/blob/3.11.0/src/commands/data/export/bulk.ts)_
438
486
 
439
487
  ## `sf data export resume`
440
488
 
441
- Resume a bulk export job that you previously started.
489
+ Resume a bulk export job that you previously started. Uses Bulk API 2.0.
442
490
 
443
491
  ```
444
492
  USAGE
@@ -454,7 +502,7 @@ GLOBAL FLAGS
454
502
  --json Format output as json.
455
503
 
456
504
  DESCRIPTION
457
- Resume a bulk export job that you previously started.
505
+ Resume a bulk export job that you previously started. Uses Bulk API 2.0.
458
506
 
459
507
  When the original "data export bulk" command either times out or is run with the --async flag, it displays a job ID.
460
508
  To see the status and get the results of the bulk export, run this command by either passing it the job ID or using
@@ -470,7 +518,7 @@ EXAMPLES
470
518
  $ sf data export resume --use-most-recent --target-org my-scratch
471
519
  ```
472
520
 
473
- _See code: [src/commands/data/export/resume.ts](https://github.com/salesforcecli/plugin-data/blob/3.9.0/src/commands/data/export/resume.ts)_
521
+ _See code: [src/commands/data/export/resume.ts](https://github.com/salesforcecli/plugin-data/blob/3.11.0/src/commands/data/export/resume.ts)_
474
522
 
475
523
  ## `sf data export tree`
476
524
 
@@ -531,7 +579,7 @@ EXAMPLES
531
579
  my-scratch
532
580
  ```
533
581
 
534
- _See code: [src/commands/data/export/tree.ts](https://github.com/salesforcecli/plugin-data/blob/3.9.0/src/commands/data/export/tree.ts)_
582
+ _See code: [src/commands/data/export/tree.ts](https://github.com/salesforcecli/plugin-data/blob/3.11.0/src/commands/data/export/tree.ts)_
535
583
 
536
584
  ## `sf data get record`
537
585
 
@@ -595,7 +643,7 @@ EXAMPLES
595
643
  $ sf data get record --use-tooling-api --sobject TraceFlag --record-id 7tf8c
596
644
  ```
597
645
 
598
- _See code: [src/commands/data/get/record.ts](https://github.com/salesforcecli/plugin-data/blob/3.9.0/src/commands/data/get/record.ts)_
646
+ _See code: [src/commands/data/get/record.ts](https://github.com/salesforcecli/plugin-data/blob/3.11.0/src/commands/data/get/record.ts)_
599
647
 
600
648
  ## `sf data import bulk`
601
649
 
@@ -604,20 +652,22 @@ Bulk import records into a Salesforce object from a CSV file. Uses Bulk API 2.0.
604
652
  ```
605
653
  USAGE
606
654
  $ sf data import bulk -s <value> -o <value> [--json] [--flags-dir <value>] [-a | -w <value>] [--api-version <value>]
607
- (--line-ending CRLF|LF -f <value>)
655
+ (--line-ending CRLF|LF -f <value>) [--column-delimiter BACKQUOTE|CARET|COMMA|PIPE|SEMICOLON|TAB]
608
656
 
609
657
  FLAGS
610
- -a, --async Don't wait for the command to complete.
611
- -f, --file=<value> (required) CSV file that contains the Salesforce object records you want to import.
612
- -o, --target-org=<value> (required) Username or alias of the target org. Not required if the `target-org`
613
- configuration variable is already set.
614
- -s, --sobject=<value> (required) API name of the Salesforce object, either standard or custom, into which you're
615
- importing records.
616
- -w, --wait=<value> Time to wait for the command to finish, in minutes.
617
- --api-version=<value> Override the api version used for api requests made by this command
618
- --line-ending=<option> Line ending used in the CSV file. Default value on Windows is `CRLF`; on macOS and Linux
619
- it's `LR`.
620
- <options: CRLF|LF>
658
+ -a, --async Don't wait for the command to complete.
659
+ -f, --file=<value> (required) CSV file that contains the Salesforce object records you want to import.
660
+ -o, --target-org=<value> (required) Username or alias of the target org. Not required if the `target-org`
661
+ configuration variable is already set.
662
+ -s, --sobject=<value> (required) API name of the Salesforce object, either standard or custom, into which
663
+ you're importing records.
664
+ -w, --wait=<value> Time to wait for the command to finish, in minutes.
665
+ --api-version=<value> Override the api version used for api requests made by this command
666
+ --column-delimiter=<option> Column delimiter used in the CSV file. Default is COMMA.
667
+ <options: BACKQUOTE|CARET|COMMA|PIPE|SEMICOLON|TAB>
668
+ --line-ending=<option> Line ending used in the CSV file. Default value on Windows is `CRLF`; on macOS and
669
+ Linux it's `LF`.
670
+ <options: CRLF|LF>
621
671
 
622
672
  GLOBAL FLAGS
623
673
  --flags-dir=<value> Import flag values from a directory.
@@ -651,7 +701,7 @@ EXAMPLES
651
701
  $ sf data import bulk --file accounts.csv --sobject Account --async
652
702
  ```
653
703
 
654
- _See code: [src/commands/data/import/bulk.ts](https://github.com/salesforcecli/plugin-data/blob/3.9.0/src/commands/data/import/bulk.ts)_
704
+ _See code: [src/commands/data/import/bulk.ts](https://github.com/salesforcecli/plugin-data/blob/3.11.0/src/commands/data/import/bulk.ts)_
655
705
 
656
706
  ## `sf data import resume`
657
707
 
@@ -687,7 +737,7 @@ EXAMPLES
687
737
  $ sf data import resume --use-most-recent --target-org my-scratch
688
738
  ```
689
739
 
690
- _See code: [src/commands/data/import/resume.ts](https://github.com/salesforcecli/plugin-data/blob/3.9.0/src/commands/data/import/resume.ts)_
740
+ _See code: [src/commands/data/import/resume.ts](https://github.com/salesforcecli/plugin-data/blob/3.11.0/src/commands/data/import/resume.ts)_
691
741
 
692
742
  ## `sf data import tree`
693
743
 
@@ -752,7 +802,7 @@ FLAG DESCRIPTIONS
752
802
  - files(array) - Files: An array of files paths to load
753
803
  ```
754
804
 
755
- _See code: [src/commands/data/import/tree.ts](https://github.com/salesforcecli/plugin-data/blob/3.9.0/src/commands/data/import/tree.ts)_
805
+ _See code: [src/commands/data/import/tree.ts](https://github.com/salesforcecli/plugin-data/blob/3.11.0/src/commands/data/import/tree.ts)_
756
806
 
757
807
  ## `sf data query`
758
808
 
@@ -816,7 +866,7 @@ EXAMPLES
816
866
  $ sf data query --query "SELECT Id FROM Contact" --bulk --wait 0
817
867
  ```
818
868
 
819
- _See code: [src/commands/data/query.ts](https://github.com/salesforcecli/plugin-data/blob/3.9.0/src/commands/data/query.ts)_
869
+ _See code: [src/commands/data/query.ts](https://github.com/salesforcecli/plugin-data/blob/3.11.0/src/commands/data/query.ts)_
820
870
 
821
871
  ## `sf data query resume`
822
872
 
@@ -854,7 +904,7 @@ EXAMPLES
854
904
  $ sf data query resume --bulk-query-id 7500x000005BdFzXXX
855
905
  ```
856
906
 
857
- _See code: [src/commands/data/query/resume.ts](https://github.com/salesforcecli/plugin-data/blob/3.9.0/src/commands/data/query/resume.ts)_
907
+ _See code: [src/commands/data/query/resume.ts](https://github.com/salesforcecli/plugin-data/blob/3.11.0/src/commands/data/query/resume.ts)_
858
908
 
859
909
  ## `sf data resume`
860
910
 
@@ -891,7 +941,7 @@ EXAMPLES
891
941
  $ sf data resume --job-id 750xx000000005sAAA --batch-id 751xx000000005nAAA
892
942
  ```
893
943
 
894
- _See code: [src/commands/data/resume.ts](https://github.com/salesforcecli/plugin-data/blob/3.9.0/src/commands/data/resume.ts)_
944
+ _See code: [src/commands/data/resume.ts](https://github.com/salesforcecli/plugin-data/blob/3.11.0/src/commands/data/resume.ts)_
895
945
 
896
946
  ## `sf data search`
897
947
 
@@ -941,7 +991,68 @@ EXAMPLES
941
991
  $ sf data search --file query.txt --target-org my-scratch --result-format csv
942
992
  ```
943
993
 
944
- _See code: [src/commands/data/search.ts](https://github.com/salesforcecli/plugin-data/blob/3.9.0/src/commands/data/search.ts)_
994
+ _See code: [src/commands/data/search.ts](https://github.com/salesforcecli/plugin-data/blob/3.11.0/src/commands/data/search.ts)_
995
+
996
+ ## `sf data update bulk`
997
+
998
+ Bulk update records to an org from a CSV file. Uses Bulk API 2.0.
999
+
1000
+ ```
1001
+ USAGE
1002
+ $ sf data update bulk -s <value> -o <value> [--json] [--flags-dir <value>] [-a] [-w <value>] [--api-version <value>]
1003
+ (--line-ending CRLF|LF -f <value>) [--column-delimiter BACKQUOTE|CARET|COMMA|PIPE|SEMICOLON|TAB]
1004
+
1005
+ FLAGS
1006
+ -a, --async Don't wait for the command to complete.
1007
+ -f, --file=<value> (required) CSV file that contains the Salesforce object records you want to update.
1008
+ -o, --target-org=<value> (required) Username or alias of the target org. Not required if the `target-org`
1009
+ configuration variable is already set.
1010
+ -s, --sobject=<value> (required) API name of the Salesforce object, either standard or custom, which you
1011
+ are updating.
1012
+ -w, --wait=<value> Time to wait for the command to finish, in minutes.
1013
+ --api-version=<value> Override the api version used for api requests made by this command
1014
+ --column-delimiter=<option> Column delimiter used in the CSV file. Default is COMMA.
1015
+ <options: BACKQUOTE|CARET|COMMA|PIPE|SEMICOLON|TAB>
1016
+ --line-ending=<option> Line ending used in the CSV file. Default value on Windows is `CRLF`; on macOS and
1017
+ Linux it's `LF`.
1018
+ <options: CRLF|LF>
1019
+
1020
+ GLOBAL FLAGS
1021
+ --flags-dir=<value> Import flag values from a directory.
1022
+ --json Format output as json.
1023
+
1024
+ DESCRIPTION
1025
+ Bulk update records to an org from a CSV file. Uses Bulk API 2.0.
1026
+
1027
+ You can use this command to update millions of Salesforce object records based on a file in comma-separated values
1028
+ (CSV) format.
1029
+
1030
+ All the records in the CSV file must be for the same Salesforce object. Specify the object with the `--sobject` flag.
1031
+ 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
1032
+ contain only existing records; if a record in the file doesn't currently exist in the Salesforce object, the command
1033
+ fails. Consider using "sf data upsert bulk" if you also want to insert new records.
1034
+
1035
+ Bulk updates can take a while, depending on how many records are in the CSV file. If the command times out, or you
1036
+ specified the --async flag, the command displays the job ID. To see the status and get the results of the job, run "sf
1037
+ data update resume" and pass the job ID to the --job-id flag.
1038
+
1039
+ For information and examples about how to prepare your CSV files, see "Prepare Data to Ingest" in the "Bulk API 2.0
1040
+ and Bulk API Developer Guide"
1041
+ (https://developer.salesforce.com/docs/atlas.en-us.api_asynch.meta/api_asynch/datafiles_prepare_data.htm).
1042
+
1043
+ EXAMPLES
1044
+ Update Account records from a CSV-formatted file into an org with alias "my-scratch"; if the update doesn't complete
1045
+ in 10 minutes, the command ends and displays a job ID:
1046
+
1047
+ $ sf data update bulk --file accounts.csv --sobject Account --wait 10 --target-org my-scratch
1048
+
1049
+ Update asynchronously and use the default org; the command immediately returns a job ID that you then pass to the
1050
+ "sf data update resume" command:
1051
+
1052
+ $ sf data update bulk --file accounts.csv --sobject Account --async
1053
+ ```
1054
+
1055
+ _See code: [src/commands/data/update/bulk.ts](https://github.com/salesforcecli/plugin-data/blob/3.11.0/src/commands/data/update/bulk.ts)_
945
1056
 
946
1057
  ## `sf data update record`
947
1058
 
@@ -1003,7 +1114,43 @@ EXAMPLES
1003
1114
  "ExpirationDate=2017-12-01T00:58:04.000+0000"
1004
1115
  ```
1005
1116
 
1006
- _See code: [src/commands/data/update/record.ts](https://github.com/salesforcecli/plugin-data/blob/3.9.0/src/commands/data/update/record.ts)_
1117
+ _See code: [src/commands/data/update/record.ts](https://github.com/salesforcecli/plugin-data/blob/3.11.0/src/commands/data/update/record.ts)_
1118
+
1119
+ ## `sf data update resume`
1120
+
1121
+ Resume a bulk update job that you previously started. Uses Bulk API 2.0.
1122
+
1123
+ ```
1124
+ USAGE
1125
+ $ sf data update resume [--json] [--flags-dir <value>] [--use-most-recent] [-i <value>] [-w <value>]
1126
+
1127
+ FLAGS
1128
+ -i, --job-id=<value> Job ID of the bulk update.
1129
+ -w, --wait=<value> [default: 5 minutes] Time to wait for the command to finish, in minutes.
1130
+ --use-most-recent Use the job ID of the bulk update job that was most recently run.
1131
+
1132
+ GLOBAL FLAGS
1133
+ --flags-dir=<value> Import flag values from a directory.
1134
+ --json Format output as json.
1135
+
1136
+ DESCRIPTION
1137
+ Resume a bulk update job that you previously started. Uses Bulk API 2.0.
1138
+
1139
+ When the original "sf data update bulk" command either times out or is run with the --async flag, it displays a job
1140
+ ID. To see the status and get the results of the bulk update, run this command by either passing it the job ID or
1141
+ using the --use-most-recent flag to specify the most recent bulk update job.
1142
+
1143
+ EXAMPLES
1144
+ Resume a bulk update job of your default org using a job ID:
1145
+
1146
+ $ sf data update resume --job-id 750xx000000005sAAA
1147
+
1148
+ Resume the most recently run bulk update job for an org with alias "my-scratch":
1149
+
1150
+ $ sf data update resume --use-most-recent --target-org my-scratch
1151
+ ```
1152
+
1153
+ _See code: [src/commands/data/update/resume.ts](https://github.com/salesforcecli/plugin-data/blob/3.11.0/src/commands/data/update/resume.ts)_
1007
1154
 
1008
1155
  ## `sf data upsert bulk`
1009
1156
 
@@ -1056,7 +1203,7 @@ EXAMPLES
1056
1203
  my-scratch
1057
1204
  ```
1058
1205
 
1059
- _See code: [src/commands/data/upsert/bulk.ts](https://github.com/salesforcecli/plugin-data/blob/3.9.0/src/commands/data/upsert/bulk.ts)_
1206
+ _See code: [src/commands/data/upsert/bulk.ts](https://github.com/salesforcecli/plugin-data/blob/3.11.0/src/commands/data/upsert/bulk.ts)_
1060
1207
 
1061
1208
  ## `sf data upsert resume`
1062
1209
 
@@ -1095,7 +1242,7 @@ EXAMPLES
1095
1242
  $ sf data upsert resume --use-most-recent --target-org my-scratch
1096
1243
  ```
1097
1244
 
1098
- _See code: [src/commands/data/upsert/resume.ts](https://github.com/salesforcecli/plugin-data/blob/3.9.0/src/commands/data/upsert/resume.ts)_
1245
+ _See code: [src/commands/data/upsert/resume.ts](https://github.com/salesforcecli/plugin-data/blob/3.11.0/src/commands/data/upsert/resume.ts)_
1099
1246
 
1100
1247
  ## `sf force data bulk delete`
1101
1248
 
@@ -1142,7 +1289,7 @@ EXAMPLES
1142
1289
  $ sf force data bulk delete --sobject MyObject__c --file files/delete.csv --wait 5 --target-org my-scratch
1143
1290
  ```
1144
1291
 
1145
- _See code: [src/commands/force/data/bulk/delete.ts](https://github.com/salesforcecli/plugin-data/blob/3.9.0/src/commands/force/data/bulk/delete.ts)_
1292
+ _See code: [src/commands/force/data/bulk/delete.ts](https://github.com/salesforcecli/plugin-data/blob/3.11.0/src/commands/force/data/bulk/delete.ts)_
1146
1293
 
1147
1294
  ## `sf force data bulk status`
1148
1295
 
@@ -1179,7 +1326,7 @@ EXAMPLES
1179
1326
  $ sf force data bulk status --job-id 750xx000000005sAAA --batch-id 751xx000000005nAAA --target-org my-scratch
1180
1327
  ```
1181
1328
 
1182
- _See code: [src/commands/force/data/bulk/status.ts](https://github.com/salesforcecli/plugin-data/blob/3.9.0/src/commands/force/data/bulk/status.ts)_
1329
+ _See code: [src/commands/force/data/bulk/status.ts](https://github.com/salesforcecli/plugin-data/blob/3.11.0/src/commands/force/data/bulk/status.ts)_
1183
1330
 
1184
1331
  ## `sf force data bulk upsert`
1185
1332
 
@@ -1237,6 +1384,6 @@ EXAMPLES
1237
1384
  --target-org my-scratch
1238
1385
  ```
1239
1386
 
1240
- _See code: [src/commands/force/data/bulk/upsert.ts](https://github.com/salesforcecli/plugin-data/blob/3.9.0/src/commands/force/data/bulk/upsert.ts)_
1387
+ _See code: [src/commands/force/data/bulk/upsert.ts](https://github.com/salesforcecli/plugin-data/blob/3.11.0/src/commands/force/data/bulk/upsert.ts)_
1241
1388
 
1242
1389
  <!-- commandsstop -->
@@ -211,6 +211,69 @@ export class BulkImportRequestCache extends TTLConfig {
211
211
  }
212
212
  }
213
213
  }
214
+ export class BulkUpdateRequestCache extends TTLConfig {
215
+ static getDefaultOptions() {
216
+ return {
217
+ isGlobal: true,
218
+ isState: true,
219
+ filename: BulkUpdateRequestCache.getFileName(),
220
+ stateFolder: Global.SF_STATE_FOLDER,
221
+ ttl: Duration.days(7),
222
+ };
223
+ }
224
+ static getFileName() {
225
+ return 'bulk-data-update-cache.json';
226
+ }
227
+ static async unset(key) {
228
+ const cache = await BulkImportRequestCache.create();
229
+ cache.unset(key);
230
+ await cache.write();
231
+ }
232
+ /**
233
+ * Creates a new bulk data import cache entry for the given bulk request id.
234
+ *
235
+ * @param bulkRequestId
236
+ * @param username
237
+ * @param apiVersion
238
+ */
239
+ async createCacheEntryForRequest(bulkRequestId, username, apiVersion) {
240
+ this.set(bulkRequestId, {
241
+ jobId: bulkRequestId,
242
+ username,
243
+ apiVersion,
244
+ });
245
+ await this.write();
246
+ Logger.childFromRoot('BulkUpdateCache').debug(`bulk cache saved for ${bulkRequestId}`);
247
+ }
248
+ async resolveResumeOptionsFromCache(jobIdOrMostRecent) {
249
+ if (typeof jobIdOrMostRecent === 'boolean') {
250
+ const key = this.getLatestKey();
251
+ if (!key) {
252
+ throw messages.createError('error.missingCacheEntryError');
253
+ }
254
+ // key definitely exists because it came from the cache
255
+ const entry = this.get(key);
256
+ return {
257
+ jobInfo: { id: entry.jobId },
258
+ options: {
259
+ connection: (await Org.create({ aliasOrUsername: entry.username })).getConnection(),
260
+ },
261
+ };
262
+ }
263
+ else {
264
+ const entry = this.get(jobIdOrMostRecent);
265
+ if (!entry) {
266
+ throw messages.createError('error.bulkRequestIdNotFound', [jobIdOrMostRecent]);
267
+ }
268
+ return {
269
+ jobInfo: { id: entry.jobId },
270
+ options: {
271
+ connection: (await Org.create({ aliasOrUsername: entry.username })).getConnection(),
272
+ },
273
+ };
274
+ }
275
+ }
276
+ }
214
277
  export class BulkExportRequestCache extends TTLConfig {
215
278
  static getDefaultOptions() {
216
279
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"bulkDataRequestCache.js","sourceRoot":"","sources":["../src/bulkDataRequestCache.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bulkDataRequestCache.js","sourceRoot":"","sources":["../src/bulkDataRequestCache.ts"],"names":[],"mappings":"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"}