@salesforce/plugin-data 4.0.13 → 4.0.14

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 (3) hide show
  1. package/README.md +25 -25
  2. package/oclif.manifest.json +543 -543
  3. package/package.json +4 -4
@@ -1639,179 +1639,6 @@
1639
1639
  "tree:export:data"
1640
1640
  ]
1641
1641
  },
1642
- "data:get:record": {
1643
- "aliases": [
1644
- "force:data:record:get"
1645
- ],
1646
- "args": {},
1647
- "deprecateAliases": true,
1648
- "description": "Specify the record you want to retrieve with either its ID or with a list of field-value pairs that identify the record. If your list of fields identifies more than one record, the command fails; the error displays how many records were found.\n\nWhen specifying field-value pairs, 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\nThe command displays all the record's fields and their values, one field per terminal line. Fields with no values are displayed as \"null\".\n\nThis command retrieves a record from Salesforce objects by default. Use the --use-tooling-api flag to retrieve from a Tooling API object.",
1649
- "examples": [
1650
- "Retrieve and display a record from Account with the specified (truncated) ID:\n<%= config.bin %> <%= command.id %> --sobject Account --record-id 00180XX",
1651
- "Retrieve a record from Account whose name equals \"Acme\":\n<%= config.bin %> <%= command.id %> --sobject Account --where \"Name=Acme\"",
1652
- "Retrieve a record from Account identified with two field values, one that contains a space; the command uses the org with alias \"my-scratch\":\n<%= config.bin %> <%= command.id %> --sobject Account --where \"Name='Universal Containers' Phone='(123) 456-7890'\" --target-org myscratch",
1653
- "Retrieve a record from the Tooling API object TraceFlag with the specified (truncated) ID:\n<%= config.bin %> <%= command.id %> --use-tooling-api --sobject TraceFlag --record-id 7tf8c"
1654
- ],
1655
- "flags": {
1656
- "json": {
1657
- "description": "Format output as json.",
1658
- "helpGroup": "GLOBAL",
1659
- "name": "json",
1660
- "allowNo": false,
1661
- "type": "boolean"
1662
- },
1663
- "flags-dir": {
1664
- "helpGroup": "GLOBAL",
1665
- "name": "flags-dir",
1666
- "summary": "Import flag values from a directory.",
1667
- "hasDynamicHelp": false,
1668
- "multiple": false,
1669
- "type": "option"
1670
- },
1671
- "target-org": {
1672
- "aliases": [
1673
- "targetusername",
1674
- "u"
1675
- ],
1676
- "char": "o",
1677
- "deprecateAliases": true,
1678
- "name": "target-org",
1679
- "noCacheDefault": true,
1680
- "required": true,
1681
- "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
1682
- "hasDynamicHelp": true,
1683
- "multiple": false,
1684
- "type": "option"
1685
- },
1686
- "api-version": {
1687
- "aliases": [
1688
- "apiversion"
1689
- ],
1690
- "deprecateAliases": true,
1691
- "description": "Override the api version used for api requests made by this command",
1692
- "name": "api-version",
1693
- "hasDynamicHelp": false,
1694
- "multiple": false,
1695
- "type": "option"
1696
- },
1697
- "loglevel": {
1698
- "deprecated": {
1699
- "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."
1700
- },
1701
- "hidden": true,
1702
- "name": "loglevel",
1703
- "hasDynamicHelp": false,
1704
- "multiple": false,
1705
- "type": "option"
1706
- },
1707
- "sobject": {
1708
- "aliases": [
1709
- "sobjecttype"
1710
- ],
1711
- "char": "s",
1712
- "deprecateAliases": true,
1713
- "name": "sobject",
1714
- "required": true,
1715
- "summary": "API name of the Salesforce or Tooling API object that you're retrieving a record from.",
1716
- "hasDynamicHelp": false,
1717
- "multiple": false,
1718
- "type": "option"
1719
- },
1720
- "record-id": {
1721
- "aliases": [
1722
- "sobjectid"
1723
- ],
1724
- "char": "i",
1725
- "deprecateAliases": true,
1726
- "name": "record-id",
1727
- "summary": "ID of the record you’re retrieving.",
1728
- "hasDynamicHelp": false,
1729
- "multiple": false,
1730
- "type": "option"
1731
- },
1732
- "where": {
1733
- "char": "w",
1734
- "name": "where",
1735
- "summary": "List of <fieldName>=<value> pairs that identify the record you want to display.",
1736
- "hasDynamicHelp": false,
1737
- "multiple": false,
1738
- "type": "option"
1739
- },
1740
- "use-tooling-api": {
1741
- "aliases": [
1742
- "usetoolingapi"
1743
- ],
1744
- "char": "t",
1745
- "deprecateAliases": true,
1746
- "name": "use-tooling-api",
1747
- "summary": "Use Tooling API so you can retrieve a record from a Tooling API object.",
1748
- "allowNo": false,
1749
- "type": "boolean"
1750
- },
1751
- "perflog": {
1752
- "deprecated": {
1753
- "version": "57"
1754
- },
1755
- "description": "Gets data on API performance metrics from the server. The data is stored in $HOME/.sfdx/apiPerformanceLog.json.",
1756
- "hidden": true,
1757
- "name": "perflog",
1758
- "summary": "Get API performance data.",
1759
- "allowNo": false,
1760
- "type": "boolean"
1761
- }
1762
- },
1763
- "hasDynamicHelp": true,
1764
- "hiddenAliases": [],
1765
- "id": "data:get:record",
1766
- "pluginAlias": "@salesforce/plugin-data",
1767
- "pluginName": "@salesforce/plugin-data",
1768
- "pluginType": "core",
1769
- "strict": true,
1770
- "summary": "Retrieve and display a single record of a Salesforce or Tooling API object.",
1771
- "enableJsonFlag": true,
1772
- "isESM": true,
1773
- "relativePath": [
1774
- "lib",
1775
- "commands",
1776
- "data",
1777
- "get",
1778
- "record.js"
1779
- ],
1780
- "aliasPermutations": [
1781
- "force:data:record:get",
1782
- "data:force:record:get",
1783
- "data:record:force:get",
1784
- "data:record:get:force",
1785
- "force:record:data:get",
1786
- "record:force:data:get",
1787
- "record:data:force:get",
1788
- "record:data:get:force",
1789
- "force:record:get:data",
1790
- "record:force:get:data",
1791
- "record:get:force:data",
1792
- "record:get:data:force",
1793
- "force:data:get:record",
1794
- "data:force:get:record",
1795
- "data:get:force:record",
1796
- "data:get:record:force",
1797
- "force:get:data:record",
1798
- "get:force:data:record",
1799
- "get:data:force:record",
1800
- "get:data:record:force",
1801
- "force:get:record:data",
1802
- "get:force:record:data",
1803
- "get:record:force:data",
1804
- "get:record:data:force"
1805
- ],
1806
- "permutations": [
1807
- "data:get:record",
1808
- "get:data:record",
1809
- "get:record:data",
1810
- "data:record:get",
1811
- "record:data:get",
1812
- "record:get:data"
1813
- ]
1814
- },
1815
1642
  "data:import:bulk": {
1816
1643
  "aliases": [],
1817
1644
  "args": {},
@@ -2162,18 +1989,18 @@
2162
1989
  "tree:import:data"
2163
1990
  ]
2164
1991
  },
2165
- "data:query:resume": {
1992
+ "data:get:record": {
2166
1993
  "aliases": [
2167
- "force:data:soql:bulk:report"
1994
+ "force:data:record:get"
2168
1995
  ],
2169
1996
  "args": {},
2170
1997
  "deprecateAliases": true,
2171
- "deprecationOptions": {
2172
- "message": "Bulk mode for \"data query\" is deprecated, this command will be removed after April 2025.\nUse \"data export bulk | data export resume\" for bulk queries instead.\n"
2173
- },
2174
- "description": "Run this command using the job ID returned from the \"<%= config.bin %> data query --bulk\" command.",
1998
+ "description": "Specify the record you want to retrieve with either its ID or with a list of field-value pairs that identify the record. If your list of fields identifies more than one record, the command fails; the error displays how many records were found.\n\nWhen specifying field-value pairs, 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\nThe command displays all the record's fields and their values, one field per terminal line. Fields with no values are displayed as \"null\".\n\nThis command retrieves a record from Salesforce objects by default. Use the --use-tooling-api flag to retrieve from a Tooling API object.",
2175
1999
  "examples": [
2176
- "View the status of a bulk query with the specified ID:\n<%= config.bin %> <%= command.id %> --bulk-query-id 7500x000005BdFzXXX"
2000
+ "Retrieve and display a record from Account with the specified (truncated) ID:\n<%= config.bin %> <%= command.id %> --sobject Account --record-id 00180XX",
2001
+ "Retrieve a record from Account whose name equals \"Acme\":\n<%= config.bin %> <%= command.id %> --sobject Account --where \"Name=Acme\"",
2002
+ "Retrieve a record from Account identified with two field values, one that contains a space; the command uses the org with alias \"my-scratch\":\n<%= config.bin %> <%= command.id %> --sobject Account --where \"Name='Universal Containers' Phone='(123) 456-7890'\" --target-org myscratch",
2003
+ "Retrieve a record from the Tooling API object TraceFlag with the specified (truncated) ID:\n<%= config.bin %> <%= command.id %> --use-tooling-api --sobject TraceFlag --record-id 7tf8c"
2177
2004
  ],
2178
2005
  "flags": {
2179
2006
  "json": {
@@ -2200,7 +2027,8 @@
2200
2027
  "deprecateAliases": true,
2201
2028
  "name": "target-org",
2202
2029
  "noCacheDefault": true,
2203
- "summary": "Username or alias of the target org.",
2030
+ "required": true,
2031
+ "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
2204
2032
  "hasDynamicHelp": true,
2205
2033
  "multiple": false,
2206
2034
  "type": "option"
@@ -2226,64 +2054,236 @@
2226
2054
  "multiple": false,
2227
2055
  "type": "option"
2228
2056
  },
2229
- "result-format": {
2057
+ "sobject": {
2230
2058
  "aliases": [
2231
- "resultformat"
2059
+ "sobjecttype"
2232
2060
  ],
2233
- "char": "r",
2061
+ "char": "s",
2234
2062
  "deprecateAliases": true,
2235
- "name": "result-format",
2236
- "summary": "Format to display the results; the --json flag overrides this flag.",
2237
- "default": "human",
2063
+ "name": "sobject",
2064
+ "required": true,
2065
+ "summary": "API name of the Salesforce or Tooling API object that you're retrieving a record from.",
2238
2066
  "hasDynamicHelp": false,
2239
2067
  "multiple": false,
2240
- "options": [
2241
- "human",
2242
- "csv",
2243
- "json"
2244
- ],
2245
2068
  "type": "option"
2246
2069
  },
2247
- "bulk-query-id": {
2070
+ "record-id": {
2248
2071
  "aliases": [
2249
- "bulkqueryid"
2072
+ "sobjectid"
2250
2073
  ],
2251
2074
  "char": "i",
2252
2075
  "deprecateAliases": true,
2253
- "name": "bulk-query-id",
2254
- "summary": "Job ID of the bulk query.",
2076
+ "name": "record-id",
2077
+ "summary": "ID of the record you’re retrieving.",
2255
2078
  "hasDynamicHelp": false,
2256
2079
  "multiple": false,
2257
2080
  "type": "option"
2258
2081
  },
2259
- "use-most-recent": {
2260
- "name": "use-most-recent",
2261
- "summary": "Use the most recent bulk query ID from cache.",
2082
+ "where": {
2083
+ "char": "w",
2084
+ "name": "where",
2085
+ "summary": "List of <fieldName>=<value> pairs that identify the record you want to display.",
2086
+ "hasDynamicHelp": false,
2087
+ "multiple": false,
2088
+ "type": "option"
2089
+ },
2090
+ "use-tooling-api": {
2091
+ "aliases": [
2092
+ "usetoolingapi"
2093
+ ],
2094
+ "char": "t",
2095
+ "deprecateAliases": true,
2096
+ "name": "use-tooling-api",
2097
+ "summary": "Use Tooling API so you can retrieve a record from a Tooling API object.",
2098
+ "allowNo": false,
2099
+ "type": "boolean"
2100
+ },
2101
+ "perflog": {
2102
+ "deprecated": {
2103
+ "version": "57"
2104
+ },
2105
+ "description": "Gets data on API performance metrics from the server. The data is stored in $HOME/.sfdx/apiPerformanceLog.json.",
2106
+ "hidden": true,
2107
+ "name": "perflog",
2108
+ "summary": "Get API performance data.",
2262
2109
  "allowNo": false,
2263
2110
  "type": "boolean"
2264
2111
  }
2265
2112
  },
2266
2113
  "hasDynamicHelp": true,
2267
2114
  "hiddenAliases": [],
2268
- "id": "data:query:resume",
2115
+ "id": "data:get:record",
2269
2116
  "pluginAlias": "@salesforce/plugin-data",
2270
2117
  "pluginName": "@salesforce/plugin-data",
2271
2118
  "pluginType": "core",
2272
- "state": "deprecated",
2273
2119
  "strict": true,
2274
- "summary": "View the status of a bulk query.",
2120
+ "summary": "Retrieve and display a single record of a Salesforce or Tooling API object.",
2275
2121
  "enableJsonFlag": true,
2276
2122
  "isESM": true,
2277
2123
  "relativePath": [
2278
2124
  "lib",
2279
2125
  "commands",
2280
2126
  "data",
2281
- "query",
2282
- "resume.js"
2127
+ "get",
2128
+ "record.js"
2283
2129
  ],
2284
2130
  "aliasPermutations": [
2285
- "force:data:soql:bulk:report",
2286
- "data:force:soql:bulk:report",
2131
+ "force:data:record:get",
2132
+ "data:force:record:get",
2133
+ "data:record:force:get",
2134
+ "data:record:get:force",
2135
+ "force:record:data:get",
2136
+ "record:force:data:get",
2137
+ "record:data:force:get",
2138
+ "record:data:get:force",
2139
+ "force:record:get:data",
2140
+ "record:force:get:data",
2141
+ "record:get:force:data",
2142
+ "record:get:data:force",
2143
+ "force:data:get:record",
2144
+ "data:force:get:record",
2145
+ "data:get:force:record",
2146
+ "data:get:record:force",
2147
+ "force:get:data:record",
2148
+ "get:force:data:record",
2149
+ "get:data:force:record",
2150
+ "get:data:record:force",
2151
+ "force:get:record:data",
2152
+ "get:force:record:data",
2153
+ "get:record:force:data",
2154
+ "get:record:data:force"
2155
+ ],
2156
+ "permutations": [
2157
+ "data:get:record",
2158
+ "get:data:record",
2159
+ "get:record:data",
2160
+ "data:record:get",
2161
+ "record:data:get",
2162
+ "record:get:data"
2163
+ ]
2164
+ },
2165
+ "data:query:resume": {
2166
+ "aliases": [
2167
+ "force:data:soql:bulk:report"
2168
+ ],
2169
+ "args": {},
2170
+ "deprecateAliases": true,
2171
+ "deprecationOptions": {
2172
+ "message": "Bulk mode for \"data query\" is deprecated, this command will be removed after April 2025.\nUse \"data export bulk | data export resume\" for bulk queries instead.\n"
2173
+ },
2174
+ "description": "Run this command using the job ID returned from the \"<%= config.bin %> data query --bulk\" command.",
2175
+ "examples": [
2176
+ "View the status of a bulk query with the specified ID:\n<%= config.bin %> <%= command.id %> --bulk-query-id 7500x000005BdFzXXX"
2177
+ ],
2178
+ "flags": {
2179
+ "json": {
2180
+ "description": "Format output as json.",
2181
+ "helpGroup": "GLOBAL",
2182
+ "name": "json",
2183
+ "allowNo": false,
2184
+ "type": "boolean"
2185
+ },
2186
+ "flags-dir": {
2187
+ "helpGroup": "GLOBAL",
2188
+ "name": "flags-dir",
2189
+ "summary": "Import flag values from a directory.",
2190
+ "hasDynamicHelp": false,
2191
+ "multiple": false,
2192
+ "type": "option"
2193
+ },
2194
+ "target-org": {
2195
+ "aliases": [
2196
+ "targetusername",
2197
+ "u"
2198
+ ],
2199
+ "char": "o",
2200
+ "deprecateAliases": true,
2201
+ "name": "target-org",
2202
+ "noCacheDefault": true,
2203
+ "summary": "Username or alias of the target org.",
2204
+ "hasDynamicHelp": true,
2205
+ "multiple": false,
2206
+ "type": "option"
2207
+ },
2208
+ "api-version": {
2209
+ "aliases": [
2210
+ "apiversion"
2211
+ ],
2212
+ "deprecateAliases": true,
2213
+ "description": "Override the api version used for api requests made by this command",
2214
+ "name": "api-version",
2215
+ "hasDynamicHelp": false,
2216
+ "multiple": false,
2217
+ "type": "option"
2218
+ },
2219
+ "loglevel": {
2220
+ "deprecated": {
2221
+ "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."
2222
+ },
2223
+ "hidden": true,
2224
+ "name": "loglevel",
2225
+ "hasDynamicHelp": false,
2226
+ "multiple": false,
2227
+ "type": "option"
2228
+ },
2229
+ "result-format": {
2230
+ "aliases": [
2231
+ "resultformat"
2232
+ ],
2233
+ "char": "r",
2234
+ "deprecateAliases": true,
2235
+ "name": "result-format",
2236
+ "summary": "Format to display the results; the --json flag overrides this flag.",
2237
+ "default": "human",
2238
+ "hasDynamicHelp": false,
2239
+ "multiple": false,
2240
+ "options": [
2241
+ "human",
2242
+ "csv",
2243
+ "json"
2244
+ ],
2245
+ "type": "option"
2246
+ },
2247
+ "bulk-query-id": {
2248
+ "aliases": [
2249
+ "bulkqueryid"
2250
+ ],
2251
+ "char": "i",
2252
+ "deprecateAliases": true,
2253
+ "name": "bulk-query-id",
2254
+ "summary": "Job ID of the bulk query.",
2255
+ "hasDynamicHelp": false,
2256
+ "multiple": false,
2257
+ "type": "option"
2258
+ },
2259
+ "use-most-recent": {
2260
+ "name": "use-most-recent",
2261
+ "summary": "Use the most recent bulk query ID from cache.",
2262
+ "allowNo": false,
2263
+ "type": "boolean"
2264
+ }
2265
+ },
2266
+ "hasDynamicHelp": true,
2267
+ "hiddenAliases": [],
2268
+ "id": "data:query:resume",
2269
+ "pluginAlias": "@salesforce/plugin-data",
2270
+ "pluginName": "@salesforce/plugin-data",
2271
+ "pluginType": "core",
2272
+ "state": "deprecated",
2273
+ "strict": true,
2274
+ "summary": "View the status of a bulk query.",
2275
+ "enableJsonFlag": true,
2276
+ "isESM": true,
2277
+ "relativePath": [
2278
+ "lib",
2279
+ "commands",
2280
+ "data",
2281
+ "query",
2282
+ "resume.js"
2283
+ ],
2284
+ "aliasPermutations": [
2285
+ "force:data:soql:bulk:report",
2286
+ "data:force:soql:bulk:report",
2287
2287
  "data:soql:force:bulk:report",
2288
2288
  "data:soql:bulk:force:report",
2289
2289
  "data:soql:bulk:report:force",
@@ -2412,13 +2412,13 @@
2412
2412
  "resume:query:data"
2413
2413
  ]
2414
2414
  },
2415
- "data:update:bulk": {
2415
+ "data:upsert:bulk": {
2416
2416
  "aliases": [],
2417
2417
  "args": {},
2418
- "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).",
2418
+ "description": "An upsert refers to inserting a record into a Salesforce object if the record doesn't already exist, or updating it if it does exist.\n\nWhen you execute this command, it starts a job, displays the ID, and then immediately returns control of the terminal to you by default. If you prefer to wait, set the --wait flag to the number of minutes; if it times out, the command outputs the IDs. Use the job and batch IDs to check the status of the job with the \"<%= config.bin %> data upsert resume\" command.\n\nSee \"Prepare CSV Files\" in the Bulk API Developer Guide for details on formatting your CSV file. (https://developer.salesforce.com/docs/atlas.en-us.api_asynch.meta/api_asynch/datafiles_prepare_csv.htm)",
2419
2419
  "examples": [
2420
- "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",
2421
- "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"
2420
+ "Bulk upsert records to the Contact object in your default org:\n<%= config.bin %> <%= command.id %> --sobject Contact --file files/contacts.csv --external-id Id",
2421
+ "Bulk upsert records to a custom object in an org with alias my-scratch and wait 5 minutes for the command to complete:\n<%= config.bin %> <%= command.id %> --sobject MyObject__c --file files/file.csv --external-id MyField__c --wait 5 --target-org my-scratch"
2422
2422
  ],
2423
2423
  "flags": {
2424
2424
  "json": {
@@ -2436,69 +2436,112 @@
2436
2436
  "multiple": false,
2437
2437
  "type": "option"
2438
2438
  },
2439
- "async": {
2440
- "char": "a",
2441
- "name": "async",
2442
- "summary": "Don't wait for the command to complete.",
2443
- "allowNo": false,
2444
- "type": "boolean"
2445
- },
2446
- "wait": {
2447
- "char": "w",
2448
- "name": "wait",
2449
- "summary": "Time to wait for the command to finish, in minutes.",
2439
+ "target-org": {
2440
+ "aliases": [
2441
+ "targetusername",
2442
+ "u"
2443
+ ],
2444
+ "char": "o",
2445
+ "deprecateAliases": true,
2446
+ "name": "target-org",
2447
+ "noCacheDefault": true,
2448
+ "required": true,
2449
+ "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
2450
2450
  "hasDynamicHelp": true,
2451
2451
  "multiple": false,
2452
2452
  "type": "option"
2453
2453
  },
2454
+ "api-version": {
2455
+ "aliases": [
2456
+ "apiversion"
2457
+ ],
2458
+ "deprecateAliases": true,
2459
+ "description": "Override the api version used for api requests made by this command",
2460
+ "name": "api-version",
2461
+ "hasDynamicHelp": false,
2462
+ "multiple": false,
2463
+ "type": "option"
2464
+ },
2465
+ "loglevel": {
2466
+ "deprecated": {
2467
+ "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."
2468
+ },
2469
+ "hidden": true,
2470
+ "name": "loglevel",
2471
+ "hasDynamicHelp": false,
2472
+ "multiple": false,
2473
+ "type": "option"
2474
+ },
2454
2475
  "file": {
2476
+ "aliases": [
2477
+ "csvfile"
2478
+ ],
2455
2479
  "char": "f",
2480
+ "deprecateAliases": true,
2456
2481
  "name": "file",
2457
2482
  "required": true,
2458
- "summary": "CSV file that contains the Salesforce object records you want to update.",
2483
+ "summary": "CSV file that contains the IDs of the records to update or delete.",
2459
2484
  "hasDynamicHelp": false,
2460
2485
  "multiple": false,
2461
2486
  "type": "option"
2462
2487
  },
2463
2488
  "sobject": {
2489
+ "aliases": [
2490
+ "sobjecttype"
2491
+ ],
2464
2492
  "char": "s",
2493
+ "deprecateAliases": true,
2465
2494
  "name": "sobject",
2466
2495
  "required": true,
2467
- "summary": "API name of the Salesforce object, either standard or custom, which you are updating.",
2468
- "hasDynamicHelp": false,
2469
- "multiple": false,
2470
- "type": "option"
2471
- },
2472
- "api-version": {
2473
- "description": "Override the api version used for api requests made by this command",
2474
- "name": "api-version",
2496
+ "summary": "API name of the Salesforce object, either standard or custom, that you want to update or delete records from.",
2475
2497
  "hasDynamicHelp": false,
2476
2498
  "multiple": false,
2477
2499
  "type": "option"
2478
2500
  },
2479
- "target-org": {
2480
- "char": "o",
2481
- "name": "target-org",
2482
- "noCacheDefault": true,
2483
- "required": true,
2484
- "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
2501
+ "wait": {
2502
+ "char": "w",
2503
+ "exclusive": [
2504
+ "async"
2505
+ ],
2506
+ "name": "wait",
2507
+ "summary": "Number of minutes to wait for the command to complete before displaying the results.",
2508
+ "default": "0 minutes",
2485
2509
  "hasDynamicHelp": true,
2486
2510
  "multiple": false,
2487
2511
  "type": "option"
2488
2512
  },
2489
- "line-ending": {
2490
- "dependsOn": [
2491
- "file"
2492
- ],
2493
- "name": "line-ending",
2494
- "summary": "Line ending used in the CSV file. Default value on Windows is `CRLF`; on macOS and Linux it's `LF`.",
2495
- "hasDynamicHelp": false,
2496
- "multiple": false,
2497
- "options": [
2498
- "CRLF",
2499
- "LF"
2513
+ "async": {
2514
+ "char": "a",
2515
+ "exclusive": [
2516
+ "wait"
2500
2517
  ],
2501
- "type": "option"
2518
+ "name": "async",
2519
+ "summary": "Run the command asynchronously.",
2520
+ "allowNo": false,
2521
+ "type": "boolean"
2522
+ },
2523
+ "verbose": {
2524
+ "deprecated": {
2525
+ "message": "The --verbose flag is deprecated and will be removed after March 2025, use \"sf data bulk results\" to get job results instead."
2526
+ },
2527
+ "name": "verbose",
2528
+ "summary": "Print verbose output of failed records if result is available.",
2529
+ "allowNo": false,
2530
+ "type": "boolean"
2531
+ },
2532
+ "line-ending": {
2533
+ "dependsOn": [
2534
+ "file"
2535
+ ],
2536
+ "name": "line-ending",
2537
+ "summary": "Line ending used in the CSV file. Default value on Windows is `CRLF`; on macOS and Linux it's `LF`.",
2538
+ "hasDynamicHelp": false,
2539
+ "multiple": false,
2540
+ "options": [
2541
+ "CRLF",
2542
+ "LF"
2543
+ ],
2544
+ "type": "option"
2502
2545
  },
2503
2546
  "column-delimiter": {
2504
2547
  "name": "column-delimiter",
@@ -2514,47 +2557,55 @@
2514
2557
  "TAB"
2515
2558
  ],
2516
2559
  "type": "option"
2560
+ },
2561
+ "external-id": {
2562
+ "aliases": [
2563
+ "externalid"
2564
+ ],
2565
+ "char": "i",
2566
+ "deprecateAliases": true,
2567
+ "name": "external-id",
2568
+ "required": true,
2569
+ "summary": "Name of the external ID field, or the Id field.",
2570
+ "hasDynamicHelp": false,
2571
+ "multiple": false,
2572
+ "type": "option"
2517
2573
  }
2518
2574
  },
2519
2575
  "hasDynamicHelp": true,
2520
2576
  "hiddenAliases": [],
2521
- "id": "data:update:bulk",
2577
+ "id": "data:upsert:bulk",
2522
2578
  "pluginAlias": "@salesforce/plugin-data",
2523
2579
  "pluginName": "@salesforce/plugin-data",
2524
2580
  "pluginType": "core",
2525
2581
  "strict": true,
2526
- "summary": "Bulk update records to an org from a CSV file. Uses Bulk API 2.0.",
2582
+ "summary": "Bulk upsert records to an org from a CSV file. Uses Bulk API 2.0.",
2527
2583
  "enableJsonFlag": true,
2528
2584
  "isESM": true,
2529
2585
  "relativePath": [
2530
2586
  "lib",
2531
2587
  "commands",
2532
2588
  "data",
2533
- "update",
2589
+ "upsert",
2534
2590
  "bulk.js"
2535
2591
  ],
2536
2592
  "aliasPermutations": [],
2537
2593
  "permutations": [
2538
- "data:update:bulk",
2539
- "update:data:bulk",
2540
- "update:bulk:data",
2541
- "data:bulk:update",
2542
- "bulk:data:update",
2543
- "bulk:update:data"
2594
+ "data:upsert:bulk",
2595
+ "upsert:data:bulk",
2596
+ "upsert:bulk:data",
2597
+ "data:bulk:upsert",
2598
+ "bulk:data:upsert",
2599
+ "bulk:upsert:data"
2544
2600
  ]
2545
2601
  },
2546
- "data:update:record": {
2547
- "aliases": [
2548
- "force:data:record:update"
2549
- ],
2602
+ "data:upsert:resume": {
2603
+ "aliases": [],
2550
2604
  "args": {},
2551
- "deprecateAliases": true,
2552
- "description": "Specify the record you want to update with either its ID or with a list of field-value pairs that identify the record. If your list of fields identifies more than one record, the update fails; the error displays how many records were found.\n\nWhen using field-value pairs for both identifying the record and specifiyng the new field values, 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 updates a record in Salesforce objects by default. Use the --use-tooling-api flag to update a Tooling API object.",
2605
+ "description": "The command uses the job ID returned from the \"<%= config.bin %> data upsert bulk\" command or the most recently-run bulk upsert job.",
2553
2606
  "examples": [
2554
- "Update the Name field of an Account record with the specified (truncated) ID:\n<%= config.bin %> <%= command.id %> --sobject Account --record-id 001D0 --values \"Name=NewAcme\"",
2555
- "Update the Name field of an Account record whose current name is 'Old Acme':\n<%= config.bin %> <%= command.id %> --sobject Account --where \"Name='Old Acme'\" --values \"Name='New Acme'\"",
2556
- "Update the Name and Website fields of an Account record with the specified (truncated) ID:\n<%= config.bin %> <%= command.id %> --sobject Account --record-id 001D0 --values \"Name='Acme III' Website=www.example.com\"",
2557
- "Update the ExpirationDate field of a record of the Tooling API object TraceFlag using the specified (truncated) ID:\n<%= config.bin %> <%= command.id %> -t --sobject TraceFlag --record-id 7tf170000009cUBAAY --values \"ExpirationDate=2017-12-01T00:58:04.000+0000\""
2607
+ "Resume a bulk upsert job from your default org using an ID:\n<%= config.bin %> <%= command.id %> --job-id 750xx000000005sAAA",
2608
+ "Resume the most recently run bulk upsert job for an org with alias my-scratch:\n<%= config.bin %> <%= command.id %> --use-most-recent --target-org my-scratch"
2558
2609
  ],
2559
2610
  "flags": {
2560
2611
  "json": {
@@ -2581,156 +2632,92 @@
2581
2632
  "deprecateAliases": true,
2582
2633
  "name": "target-org",
2583
2634
  "noCacheDefault": true,
2584
- "required": true,
2585
- "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
2635
+ "summary": "Username or alias of the target org. Not required if the \"target-org\" configuration variable is already set.",
2586
2636
  "hasDynamicHelp": true,
2587
2637
  "multiple": false,
2588
2638
  "type": "option"
2589
2639
  },
2590
- "api-version": {
2591
- "aliases": [
2592
- "apiversion"
2593
- ],
2594
- "deprecateAliases": true,
2595
- "description": "Override the api version used for api requests made by this command",
2596
- "name": "api-version",
2597
- "hasDynamicHelp": false,
2598
- "multiple": false,
2599
- "type": "option"
2600
- },
2601
- "loglevel": {
2602
- "deprecated": {
2603
- "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."
2604
- },
2605
- "hidden": true,
2606
- "name": "loglevel",
2607
- "hasDynamicHelp": false,
2608
- "multiple": false,
2609
- "type": "option"
2610
- },
2611
- "sobject": {
2640
+ "job-id": {
2612
2641
  "aliases": [
2613
- "sobjecttype"
2642
+ "jobid"
2614
2643
  ],
2615
- "char": "s",
2644
+ "char": "i",
2616
2645
  "deprecateAliases": true,
2617
- "name": "sobject",
2618
- "required": true,
2619
- "summary": "API name of the Salesforce or Tooling API object that contains the record you're updating.",
2646
+ "name": "job-id",
2647
+ "summary": "ID of the job you want to resume.",
2620
2648
  "hasDynamicHelp": false,
2621
2649
  "multiple": false,
2622
2650
  "type": "option"
2623
2651
  },
2624
- "record-id": {
2625
- "aliases": [
2626
- "sobjectid"
2652
+ "use-most-recent": {
2653
+ "exclusive": [
2654
+ "job-id"
2627
2655
  ],
2628
- "char": "i",
2629
- "deprecateAliases": true,
2630
- "name": "record-id",
2631
- "summary": "ID of the record you’re updating.",
2632
- "hasDynamicHelp": false,
2633
- "multiple": false,
2634
- "type": "option"
2656
+ "name": "use-most-recent",
2657
+ "summary": "Use the ID of the most recently-run bulk job.",
2658
+ "allowNo": false,
2659
+ "type": "boolean"
2635
2660
  },
2636
- "where": {
2637
- "char": "w",
2638
- "name": "where",
2639
- "summary": "List of <fieldName>=<value> pairs that identify the record you want to update.",
2640
- "hasDynamicHelp": false,
2661
+ "wait": {
2662
+ "name": "wait",
2663
+ "summary": "Number of minutes to wait for the command to complete before displaying the results.",
2664
+ "default": "5 minutes",
2665
+ "hasDynamicHelp": true,
2641
2666
  "multiple": false,
2642
2667
  "type": "option"
2643
2668
  },
2644
- "values": {
2645
- "char": "v",
2646
- "name": "values",
2647
- "required": true,
2648
- "summary": "Fields that you're updating, in the format of <fieldName>=<value> pairs.",
2669
+ "api-version": {
2670
+ "description": "Override the api version used for api requests made by this command",
2671
+ "name": "api-version",
2649
2672
  "hasDynamicHelp": false,
2650
2673
  "multiple": false,
2651
2674
  "type": "option"
2652
2675
  },
2653
- "use-tooling-api": {
2654
- "aliases": [
2655
- "usetoolingapi"
2656
- ],
2657
- "char": "t",
2658
- "deprecateAliases": true,
2659
- "name": "use-tooling-api",
2660
- "summary": "Use Tooling API so you can update a record in a Tooling API object.",
2661
- "allowNo": false,
2662
- "type": "boolean"
2663
- },
2664
- "perflog": {
2676
+ "loglevel": {
2665
2677
  "deprecated": {
2666
- "version": "57"
2678
+ "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."
2667
2679
  },
2668
2680
  "hidden": true,
2669
- "name": "perflog",
2670
- "summary": "Get API performance data.",
2671
- "allowNo": false,
2672
- "type": "boolean"
2681
+ "name": "loglevel",
2682
+ "hasDynamicHelp": false,
2683
+ "multiple": false,
2684
+ "type": "option"
2673
2685
  }
2674
2686
  },
2675
2687
  "hasDynamicHelp": true,
2676
2688
  "hiddenAliases": [],
2677
- "id": "data:update:record",
2689
+ "id": "data:upsert:resume",
2678
2690
  "pluginAlias": "@salesforce/plugin-data",
2679
2691
  "pluginName": "@salesforce/plugin-data",
2680
2692
  "pluginType": "core",
2681
2693
  "strict": true,
2682
- "summary": "Updates a single record of a Salesforce or Tooling API object.",
2694
+ "summary": "Resume a bulk upsert job that you previously started. Uses Bulk API 2.0.",
2683
2695
  "enableJsonFlag": true,
2684
2696
  "isESM": true,
2685
2697
  "relativePath": [
2686
2698
  "lib",
2687
2699
  "commands",
2688
2700
  "data",
2689
- "update",
2690
- "record.js"
2691
- ],
2692
- "aliasPermutations": [
2693
- "force:data:record:update",
2694
- "data:force:record:update",
2695
- "data:record:force:update",
2696
- "data:record:update:force",
2697
- "force:record:data:update",
2698
- "record:force:data:update",
2699
- "record:data:force:update",
2700
- "record:data:update:force",
2701
- "force:record:update:data",
2702
- "record:force:update:data",
2703
- "record:update:force:data",
2704
- "record:update:data:force",
2705
- "force:data:update:record",
2706
- "data:force:update:record",
2707
- "data:update:force:record",
2708
- "data:update:record:force",
2709
- "force:update:data:record",
2710
- "update:force:data:record",
2711
- "update:data:force:record",
2712
- "update:data:record:force",
2713
- "force:update:record:data",
2714
- "update:force:record:data",
2715
- "update:record:force:data",
2716
- "update:record:data:force"
2701
+ "upsert",
2702
+ "resume.js"
2717
2703
  ],
2704
+ "aliasPermutations": [],
2718
2705
  "permutations": [
2719
- "data:update:record",
2720
- "update:data:record",
2721
- "update:record:data",
2722
- "data:record:update",
2723
- "record:data:update",
2724
- "record:update:data"
2706
+ "data:upsert:resume",
2707
+ "upsert:data:resume",
2708
+ "upsert:resume:data",
2709
+ "data:resume:upsert",
2710
+ "resume:data:upsert",
2711
+ "resume:upsert:data"
2725
2712
  ]
2726
2713
  },
2727
- "data:update:resume": {
2714
+ "data:update:bulk": {
2728
2715
  "aliases": [],
2729
2716
  "args": {},
2730
- "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.",
2717
+ "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).",
2731
2718
  "examples": [
2732
- "Resume a bulk update job of your default org using a job ID:\n<%= config.bin %> <%= command.id %> --job-id 750xx000000005sAAA",
2733
- "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"
2719
+ "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",
2720
+ "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"
2734
2721
  ],
2735
2722
  "flags": {
2736
2723
  "json": {
@@ -2748,38 +2735,94 @@
2748
2735
  "multiple": false,
2749
2736
  "type": "option"
2750
2737
  },
2751
- "use-most-recent": {
2752
- "name": "use-most-recent",
2753
- "summary": "Use the job ID of the bulk update job that was most recently run.",
2738
+ "async": {
2739
+ "char": "a",
2740
+ "name": "async",
2741
+ "summary": "Don't wait for the command to complete.",
2754
2742
  "allowNo": false,
2755
2743
  "type": "boolean"
2756
2744
  },
2757
- "job-id": {
2758
- "char": "i",
2759
- "name": "job-id",
2760
- "summary": "Job ID of the bulk update.",
2761
- "hasDynamicHelp": false,
2762
- "multiple": false,
2763
- "type": "option"
2764
- },
2765
2745
  "wait": {
2766
2746
  "char": "w",
2767
2747
  "name": "wait",
2768
2748
  "summary": "Time to wait for the command to finish, in minutes.",
2769
- "default": "5 minutes",
2770
2749
  "hasDynamicHelp": true,
2771
2750
  "multiple": false,
2772
2751
  "type": "option"
2752
+ },
2753
+ "file": {
2754
+ "char": "f",
2755
+ "name": "file",
2756
+ "required": true,
2757
+ "summary": "CSV file that contains the Salesforce object records you want to update.",
2758
+ "hasDynamicHelp": false,
2759
+ "multiple": false,
2760
+ "type": "option"
2761
+ },
2762
+ "sobject": {
2763
+ "char": "s",
2764
+ "name": "sobject",
2765
+ "required": true,
2766
+ "summary": "API name of the Salesforce object, either standard or custom, which you are updating.",
2767
+ "hasDynamicHelp": false,
2768
+ "multiple": false,
2769
+ "type": "option"
2770
+ },
2771
+ "api-version": {
2772
+ "description": "Override the api version used for api requests made by this command",
2773
+ "name": "api-version",
2774
+ "hasDynamicHelp": false,
2775
+ "multiple": false,
2776
+ "type": "option"
2777
+ },
2778
+ "target-org": {
2779
+ "char": "o",
2780
+ "name": "target-org",
2781
+ "noCacheDefault": true,
2782
+ "required": true,
2783
+ "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
2784
+ "hasDynamicHelp": true,
2785
+ "multiple": false,
2786
+ "type": "option"
2787
+ },
2788
+ "line-ending": {
2789
+ "dependsOn": [
2790
+ "file"
2791
+ ],
2792
+ "name": "line-ending",
2793
+ "summary": "Line ending used in the CSV file. Default value on Windows is `CRLF`; on macOS and Linux it's `LF`.",
2794
+ "hasDynamicHelp": false,
2795
+ "multiple": false,
2796
+ "options": [
2797
+ "CRLF",
2798
+ "LF"
2799
+ ],
2800
+ "type": "option"
2801
+ },
2802
+ "column-delimiter": {
2803
+ "name": "column-delimiter",
2804
+ "summary": "Column delimiter used in the CSV file.",
2805
+ "hasDynamicHelp": false,
2806
+ "multiple": false,
2807
+ "options": [
2808
+ "BACKQUOTE",
2809
+ "CARET",
2810
+ "COMMA",
2811
+ "PIPE",
2812
+ "SEMICOLON",
2813
+ "TAB"
2814
+ ],
2815
+ "type": "option"
2773
2816
  }
2774
2817
  },
2775
2818
  "hasDynamicHelp": true,
2776
2819
  "hiddenAliases": [],
2777
- "id": "data:update:resume",
2820
+ "id": "data:update:bulk",
2778
2821
  "pluginAlias": "@salesforce/plugin-data",
2779
2822
  "pluginName": "@salesforce/plugin-data",
2780
2823
  "pluginType": "core",
2781
2824
  "strict": true,
2782
- "summary": "Resume a bulk update job that you previously started. Uses Bulk API 2.0.",
2825
+ "summary": "Bulk update records to an org from a CSV file. Uses Bulk API 2.0.",
2783
2826
  "enableJsonFlag": true,
2784
2827
  "isESM": true,
2785
2828
  "relativePath": [
@@ -2787,25 +2830,30 @@
2787
2830
  "commands",
2788
2831
  "data",
2789
2832
  "update",
2790
- "resume.js"
2791
- ],
2792
- "aliasPermutations": [],
2793
- "permutations": [
2794
- "data:update:resume",
2795
- "update:data:resume",
2796
- "update:resume:data",
2797
- "data:resume:update",
2798
- "resume:data:update",
2799
- "resume:update:data"
2833
+ "bulk.js"
2834
+ ],
2835
+ "aliasPermutations": [],
2836
+ "permutations": [
2837
+ "data:update:bulk",
2838
+ "update:data:bulk",
2839
+ "update:bulk:data",
2840
+ "data:bulk:update",
2841
+ "bulk:data:update",
2842
+ "bulk:update:data"
2800
2843
  ]
2801
2844
  },
2802
- "data:upsert:bulk": {
2803
- "aliases": [],
2845
+ "data:update:record": {
2846
+ "aliases": [
2847
+ "force:data:record:update"
2848
+ ],
2804
2849
  "args": {},
2805
- "description": "An upsert refers to inserting a record into a Salesforce object if the record doesn't already exist, or updating it if it does exist.\n\nWhen you execute this command, it starts a job, displays the ID, and then immediately returns control of the terminal to you by default. If you prefer to wait, set the --wait flag to the number of minutes; if it times out, the command outputs the IDs. Use the job and batch IDs to check the status of the job with the \"<%= config.bin %> data upsert resume\" command.\n\nSee \"Prepare CSV Files\" in the Bulk API Developer Guide for details on formatting your CSV file. (https://developer.salesforce.com/docs/atlas.en-us.api_asynch.meta/api_asynch/datafiles_prepare_csv.htm)",
2850
+ "deprecateAliases": true,
2851
+ "description": "Specify the record you want to update with either its ID or with a list of field-value pairs that identify the record. If your list of fields identifies more than one record, the update fails; the error displays how many records were found.\n\nWhen using field-value pairs for both identifying the record and specifiyng the new field values, 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 updates a record in Salesforce objects by default. Use the --use-tooling-api flag to update a Tooling API object.",
2806
2852
  "examples": [
2807
- "Bulk upsert records to the Contact object in your default org:\n<%= config.bin %> <%= command.id %> --sobject Contact --file files/contacts.csv --external-id Id",
2808
- "Bulk upsert records to a custom object in an org with alias my-scratch and wait 5 minutes for the command to complete:\n<%= config.bin %> <%= command.id %> --sobject MyObject__c --file files/file.csv --external-id MyField__c --wait 5 --target-org my-scratch"
2853
+ "Update the Name field of an Account record with the specified (truncated) ID:\n<%= config.bin %> <%= command.id %> --sobject Account --record-id 001D0 --values \"Name=NewAcme\"",
2854
+ "Update the Name field of an Account record whose current name is 'Old Acme':\n<%= config.bin %> <%= command.id %> --sobject Account --where \"Name='Old Acme'\" --values \"Name='New Acme'\"",
2855
+ "Update the Name and Website fields of an Account record with the specified (truncated) ID:\n<%= config.bin %> <%= command.id %> --sobject Account --record-id 001D0 --values \"Name='Acme III' Website=www.example.com\"",
2856
+ "Update the ExpirationDate field of a record of the Tooling API object TraceFlag using the specified (truncated) ID:\n<%= config.bin %> <%= command.id %> -t --sobject TraceFlag --record-id 7tf170000009cUBAAY --values \"ExpirationDate=2017-12-01T00:58:04.000+0000\""
2809
2857
  ],
2810
2858
  "flags": {
2811
2859
  "json": {
@@ -2859,19 +2907,6 @@
2859
2907
  "multiple": false,
2860
2908
  "type": "option"
2861
2909
  },
2862
- "file": {
2863
- "aliases": [
2864
- "csvfile"
2865
- ],
2866
- "char": "f",
2867
- "deprecateAliases": true,
2868
- "name": "file",
2869
- "required": true,
2870
- "summary": "CSV file that contains the IDs of the records to update or delete.",
2871
- "hasDynamicHelp": false,
2872
- "multiple": false,
2873
- "type": "option"
2874
- },
2875
2910
  "sobject": {
2876
2911
  "aliases": [
2877
2912
  "sobjecttype"
@@ -2880,119 +2915,121 @@
2880
2915
  "deprecateAliases": true,
2881
2916
  "name": "sobject",
2882
2917
  "required": true,
2883
- "summary": "API name of the Salesforce object, either standard or custom, that you want to update or delete records from.",
2918
+ "summary": "API name of the Salesforce or Tooling API object that contains the record you're updating.",
2884
2919
  "hasDynamicHelp": false,
2885
2920
  "multiple": false,
2886
2921
  "type": "option"
2887
2922
  },
2888
- "wait": {
2889
- "char": "w",
2890
- "exclusive": [
2891
- "async"
2923
+ "record-id": {
2924
+ "aliases": [
2925
+ "sobjectid"
2892
2926
  ],
2893
- "name": "wait",
2894
- "summary": "Number of minutes to wait for the command to complete before displaying the results.",
2895
- "default": "0 minutes",
2896
- "hasDynamicHelp": true,
2927
+ "char": "i",
2928
+ "deprecateAliases": true,
2929
+ "name": "record-id",
2930
+ "summary": "ID of the record you’re updating.",
2931
+ "hasDynamicHelp": false,
2897
2932
  "multiple": false,
2898
2933
  "type": "option"
2899
2934
  },
2900
- "async": {
2901
- "char": "a",
2902
- "exclusive": [
2903
- "wait"
2904
- ],
2905
- "name": "async",
2906
- "summary": "Run the command asynchronously.",
2907
- "allowNo": false,
2908
- "type": "boolean"
2909
- },
2910
- "verbose": {
2911
- "deprecated": {
2912
- "message": "The --verbose flag is deprecated and will be removed after March 2025, use \"sf data bulk results\" to get job results instead."
2913
- },
2914
- "name": "verbose",
2915
- "summary": "Print verbose output of failed records if result is available.",
2916
- "allowNo": false,
2917
- "type": "boolean"
2918
- },
2919
- "line-ending": {
2920
- "dependsOn": [
2921
- "file"
2922
- ],
2923
- "name": "line-ending",
2924
- "summary": "Line ending used in the CSV file. Default value on Windows is `CRLF`; on macOS and Linux it's `LF`.",
2935
+ "where": {
2936
+ "char": "w",
2937
+ "name": "where",
2938
+ "summary": "List of <fieldName>=<value> pairs that identify the record you want to update.",
2925
2939
  "hasDynamicHelp": false,
2926
2940
  "multiple": false,
2927
- "options": [
2928
- "CRLF",
2929
- "LF"
2930
- ],
2931
2941
  "type": "option"
2932
2942
  },
2933
- "column-delimiter": {
2934
- "name": "column-delimiter",
2935
- "summary": "Column delimiter used in the CSV file.",
2943
+ "values": {
2944
+ "char": "v",
2945
+ "name": "values",
2946
+ "required": true,
2947
+ "summary": "Fields that you're updating, in the format of <fieldName>=<value> pairs.",
2936
2948
  "hasDynamicHelp": false,
2937
2949
  "multiple": false,
2938
- "options": [
2939
- "BACKQUOTE",
2940
- "CARET",
2941
- "COMMA",
2942
- "PIPE",
2943
- "SEMICOLON",
2944
- "TAB"
2945
- ],
2946
2950
  "type": "option"
2947
2951
  },
2948
- "external-id": {
2952
+ "use-tooling-api": {
2949
2953
  "aliases": [
2950
- "externalid"
2954
+ "usetoolingapi"
2951
2955
  ],
2952
- "char": "i",
2956
+ "char": "t",
2953
2957
  "deprecateAliases": true,
2954
- "name": "external-id",
2955
- "required": true,
2956
- "summary": "Name of the external ID field, or the Id field.",
2957
- "hasDynamicHelp": false,
2958
- "multiple": false,
2959
- "type": "option"
2958
+ "name": "use-tooling-api",
2959
+ "summary": "Use Tooling API so you can update a record in a Tooling API object.",
2960
+ "allowNo": false,
2961
+ "type": "boolean"
2962
+ },
2963
+ "perflog": {
2964
+ "deprecated": {
2965
+ "version": "57"
2966
+ },
2967
+ "hidden": true,
2968
+ "name": "perflog",
2969
+ "summary": "Get API performance data.",
2970
+ "allowNo": false,
2971
+ "type": "boolean"
2960
2972
  }
2961
2973
  },
2962
2974
  "hasDynamicHelp": true,
2963
2975
  "hiddenAliases": [],
2964
- "id": "data:upsert:bulk",
2976
+ "id": "data:update:record",
2965
2977
  "pluginAlias": "@salesforce/plugin-data",
2966
2978
  "pluginName": "@salesforce/plugin-data",
2967
2979
  "pluginType": "core",
2968
2980
  "strict": true,
2969
- "summary": "Bulk upsert records to an org from a CSV file. Uses Bulk API 2.0.",
2981
+ "summary": "Updates a single record of a Salesforce or Tooling API object.",
2970
2982
  "enableJsonFlag": true,
2971
2983
  "isESM": true,
2972
2984
  "relativePath": [
2973
2985
  "lib",
2974
2986
  "commands",
2975
2987
  "data",
2976
- "upsert",
2977
- "bulk.js"
2988
+ "update",
2989
+ "record.js"
2990
+ ],
2991
+ "aliasPermutations": [
2992
+ "force:data:record:update",
2993
+ "data:force:record:update",
2994
+ "data:record:force:update",
2995
+ "data:record:update:force",
2996
+ "force:record:data:update",
2997
+ "record:force:data:update",
2998
+ "record:data:force:update",
2999
+ "record:data:update:force",
3000
+ "force:record:update:data",
3001
+ "record:force:update:data",
3002
+ "record:update:force:data",
3003
+ "record:update:data:force",
3004
+ "force:data:update:record",
3005
+ "data:force:update:record",
3006
+ "data:update:force:record",
3007
+ "data:update:record:force",
3008
+ "force:update:data:record",
3009
+ "update:force:data:record",
3010
+ "update:data:force:record",
3011
+ "update:data:record:force",
3012
+ "force:update:record:data",
3013
+ "update:force:record:data",
3014
+ "update:record:force:data",
3015
+ "update:record:data:force"
2978
3016
  ],
2979
- "aliasPermutations": [],
2980
3017
  "permutations": [
2981
- "data:upsert:bulk",
2982
- "upsert:data:bulk",
2983
- "upsert:bulk:data",
2984
- "data:bulk:upsert",
2985
- "bulk:data:upsert",
2986
- "bulk:upsert:data"
3018
+ "data:update:record",
3019
+ "update:data:record",
3020
+ "update:record:data",
3021
+ "data:record:update",
3022
+ "record:data:update",
3023
+ "record:update:data"
2987
3024
  ]
2988
3025
  },
2989
- "data:upsert:resume": {
3026
+ "data:update:resume": {
2990
3027
  "aliases": [],
2991
3028
  "args": {},
2992
- "description": "The command uses the job ID returned from the \"<%= config.bin %> data upsert bulk\" command or the most recently-run bulk upsert job.",
3029
+ "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.",
2993
3030
  "examples": [
2994
- "Resume a bulk upsert job from your default org using an ID:\n<%= config.bin %> <%= command.id %> --job-id 750xx000000005sAAA",
2995
- "Resume the most recently run bulk upsert job for an org with alias my-scratch:\n<%= config.bin %> <%= command.id %> --use-most-recent --target-org my-scratch"
3031
+ "Resume a bulk update job of your default org using a job ID:\n<%= config.bin %> <%= command.id %> --job-id 750xx000000005sAAA",
3032
+ "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"
2996
3033
  ],
2997
3034
  "flags": {
2998
3035
  "json": {
@@ -3010,92 +3047,55 @@
3010
3047
  "multiple": false,
3011
3048
  "type": "option"
3012
3049
  },
3013
- "target-org": {
3014
- "aliases": [
3015
- "targetusername",
3016
- "u"
3017
- ],
3018
- "char": "o",
3019
- "deprecateAliases": true,
3020
- "name": "target-org",
3021
- "noCacheDefault": true,
3022
- "summary": "Username or alias of the target org. Not required if the \"target-org\" configuration variable is already set.",
3023
- "hasDynamicHelp": true,
3024
- "multiple": false,
3025
- "type": "option"
3050
+ "use-most-recent": {
3051
+ "name": "use-most-recent",
3052
+ "summary": "Use the job ID of the bulk update job that was most recently run.",
3053
+ "allowNo": false,
3054
+ "type": "boolean"
3026
3055
  },
3027
3056
  "job-id": {
3028
- "aliases": [
3029
- "jobid"
3030
- ],
3031
3057
  "char": "i",
3032
- "deprecateAliases": true,
3033
3058
  "name": "job-id",
3034
- "summary": "ID of the job you want to resume.",
3059
+ "summary": "Job ID of the bulk update.",
3035
3060
  "hasDynamicHelp": false,
3036
3061
  "multiple": false,
3037
3062
  "type": "option"
3038
3063
  },
3039
- "use-most-recent": {
3040
- "exclusive": [
3041
- "job-id"
3042
- ],
3043
- "name": "use-most-recent",
3044
- "summary": "Use the ID of the most recently-run bulk job.",
3045
- "allowNo": false,
3046
- "type": "boolean"
3047
- },
3048
3064
  "wait": {
3065
+ "char": "w",
3049
3066
  "name": "wait",
3050
- "summary": "Number of minutes to wait for the command to complete before displaying the results.",
3067
+ "summary": "Time to wait for the command to finish, in minutes.",
3051
3068
  "default": "5 minutes",
3052
3069
  "hasDynamicHelp": true,
3053
3070
  "multiple": false,
3054
3071
  "type": "option"
3055
- },
3056
- "api-version": {
3057
- "description": "Override the api version used for api requests made by this command",
3058
- "name": "api-version",
3059
- "hasDynamicHelp": false,
3060
- "multiple": false,
3061
- "type": "option"
3062
- },
3063
- "loglevel": {
3064
- "deprecated": {
3065
- "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."
3066
- },
3067
- "hidden": true,
3068
- "name": "loglevel",
3069
- "hasDynamicHelp": false,
3070
- "multiple": false,
3071
- "type": "option"
3072
3072
  }
3073
3073
  },
3074
3074
  "hasDynamicHelp": true,
3075
3075
  "hiddenAliases": [],
3076
- "id": "data:upsert:resume",
3076
+ "id": "data:update:resume",
3077
3077
  "pluginAlias": "@salesforce/plugin-data",
3078
3078
  "pluginName": "@salesforce/plugin-data",
3079
3079
  "pluginType": "core",
3080
3080
  "strict": true,
3081
- "summary": "Resume a bulk upsert job that you previously started. Uses Bulk API 2.0.",
3081
+ "summary": "Resume a bulk update job that you previously started. Uses Bulk API 2.0.",
3082
3082
  "enableJsonFlag": true,
3083
3083
  "isESM": true,
3084
3084
  "relativePath": [
3085
3085
  "lib",
3086
3086
  "commands",
3087
3087
  "data",
3088
- "upsert",
3088
+ "update",
3089
3089
  "resume.js"
3090
3090
  ],
3091
3091
  "aliasPermutations": [],
3092
3092
  "permutations": [
3093
- "data:upsert:resume",
3094
- "upsert:data:resume",
3095
- "upsert:resume:data",
3096
- "data:resume:upsert",
3097
- "resume:data:upsert",
3098
- "resume:upsert:data"
3093
+ "data:update:resume",
3094
+ "update:data:resume",
3095
+ "update:resume:data",
3096
+ "data:resume:update",
3097
+ "resume:data:update",
3098
+ "resume:update:data"
3099
3099
  ]
3100
3100
  },
3101
3101
  "force:data:bulk:delete": {
@@ -3535,5 +3535,5 @@
3535
3535
  ]
3536
3536
  }
3537
3537
  },
3538
- "version": "4.0.13"
3538
+ "version": "4.0.14"
3539
3539
  }