@xano/cli 0.0.41 → 0.0.43

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.
@@ -226,6 +226,82 @@
226
226
  "index.js"
227
227
  ]
228
228
  },
229
+ "branch:get": {
230
+ "aliases": [],
231
+ "args": {
232
+ "branch_label": {
233
+ "description": "Branch label (e.g., \"v1\", \"dev\")",
234
+ "name": "branch_label",
235
+ "required": true
236
+ }
237
+ },
238
+ "description": "Get details for a specific branch",
239
+ "examples": [
240
+ "$ xano branch get v1\nBranch: v1 (live)\n Created: 2024-01-15\n",
241
+ "$ xano branch get dev -w 123\nBranch: dev\n Created: 2024-02-01\n",
242
+ "$ xano branch get staging --output json\n{\n \"created_at\": \"2024-02-10T09:15:00Z\",\n \"label\": \"staging\",\n \"backup\": false,\n \"live\": false\n}\n"
243
+ ],
244
+ "flags": {
245
+ "profile": {
246
+ "char": "p",
247
+ "description": "Profile to use (uses default profile if not specified)",
248
+ "env": "XANO_PROFILE",
249
+ "name": "profile",
250
+ "required": false,
251
+ "hasDynamicHelp": false,
252
+ "multiple": false,
253
+ "type": "option"
254
+ },
255
+ "verbose": {
256
+ "char": "v",
257
+ "description": "Show detailed request/response information",
258
+ "env": "XANO_VERBOSE",
259
+ "name": "verbose",
260
+ "required": false,
261
+ "allowNo": false,
262
+ "type": "boolean"
263
+ },
264
+ "output": {
265
+ "char": "o",
266
+ "description": "Output format",
267
+ "name": "output",
268
+ "required": false,
269
+ "default": "summary",
270
+ "hasDynamicHelp": false,
271
+ "multiple": false,
272
+ "options": [
273
+ "summary",
274
+ "json"
275
+ ],
276
+ "type": "option"
277
+ },
278
+ "workspace": {
279
+ "char": "w",
280
+ "description": "Workspace ID (uses profile workspace if not provided)",
281
+ "name": "workspace",
282
+ "required": false,
283
+ "hasDynamicHelp": false,
284
+ "multiple": false,
285
+ "type": "option"
286
+ }
287
+ },
288
+ "hasDynamicHelp": false,
289
+ "hiddenAliases": [],
290
+ "id": "branch:get",
291
+ "pluginAlias": "@xano/cli",
292
+ "pluginName": "@xano/cli",
293
+ "pluginType": "core",
294
+ "strict": true,
295
+ "enableJsonFlag": false,
296
+ "isESM": true,
297
+ "relativePath": [
298
+ "dist",
299
+ "commands",
300
+ "branch",
301
+ "get",
302
+ "index.js"
303
+ ]
304
+ },
229
305
  "branch:edit": {
230
306
  "aliases": [],
231
307
  "args": {
@@ -990,93 +1066,6 @@
990
1066
  "index.js"
991
1067
  ]
992
1068
  },
993
- "profile:create": {
994
- "aliases": [],
995
- "args": {
996
- "name": {
997
- "description": "Profile name",
998
- "name": "name",
999
- "required": true
1000
- }
1001
- },
1002
- "description": "Create a new profile configuration",
1003
- "examples": [
1004
- "$ xano profile:create production --account_origin https://account.xano.com --instance_origin https://instance.xano.com --access_token token123\nProfile 'production' created successfully at ~/.xano/credentials.yaml\n",
1005
- "$ xano profile:create staging -a https://staging-account.xano.com -i https://staging-instance.xano.com -t token456\nProfile 'staging' created successfully at ~/.xano/credentials.yaml\n",
1006
- "$ xano profile:create dev -i https://dev-instance.xano.com -t token789 -w my-workspace -b feature-branch\nProfile 'dev' created successfully at ~/.xano/credentials.yaml\n",
1007
- "$ xano profile:create production --account_origin https://account.xano.com --instance_origin https://instance.xano.com --access_token token123 --default\nProfile 'production' created successfully at ~/.xano/credentials.yaml\nDefault profile set to 'production'\n"
1008
- ],
1009
- "flags": {
1010
- "access_token": {
1011
- "char": "t",
1012
- "description": "Access token for the Xano Metadata API",
1013
- "name": "access_token",
1014
- "required": true,
1015
- "hasDynamicHelp": false,
1016
- "multiple": false,
1017
- "type": "option"
1018
- },
1019
- "account_origin": {
1020
- "char": "a",
1021
- "description": "Account origin URL. Optional for self hosted installs.",
1022
- "name": "account_origin",
1023
- "required": false,
1024
- "hasDynamicHelp": false,
1025
- "multiple": false,
1026
- "type": "option"
1027
- },
1028
- "branch": {
1029
- "char": "b",
1030
- "description": "Branch name",
1031
- "name": "branch",
1032
- "required": false,
1033
- "hasDynamicHelp": false,
1034
- "multiple": false,
1035
- "type": "option"
1036
- },
1037
- "default": {
1038
- "description": "Set this profile as the default",
1039
- "name": "default",
1040
- "required": false,
1041
- "allowNo": false,
1042
- "type": "boolean"
1043
- },
1044
- "instance_origin": {
1045
- "char": "i",
1046
- "description": "Instance origin URL",
1047
- "name": "instance_origin",
1048
- "required": true,
1049
- "hasDynamicHelp": false,
1050
- "multiple": false,
1051
- "type": "option"
1052
- },
1053
- "workspace": {
1054
- "char": "w",
1055
- "description": "Workspace name",
1056
- "name": "workspace",
1057
- "required": false,
1058
- "hasDynamicHelp": false,
1059
- "multiple": false,
1060
- "type": "option"
1061
- }
1062
- },
1063
- "hasDynamicHelp": false,
1064
- "hiddenAliases": [],
1065
- "id": "profile:create",
1066
- "pluginAlias": "@xano/cli",
1067
- "pluginName": "@xano/cli",
1068
- "pluginType": "core",
1069
- "strict": true,
1070
- "enableJsonFlag": false,
1071
- "isESM": true,
1072
- "relativePath": [
1073
- "dist",
1074
- "commands",
1075
- "profile",
1076
- "create",
1077
- "index.js"
1078
- ]
1079
- },
1080
1069
  "platform:list": {
1081
1070
  "aliases": [],
1082
1071
  "args": {},
@@ -1137,58 +1126,69 @@
1137
1126
  "index.js"
1138
1127
  ]
1139
1128
  },
1140
- "branch:get": {
1129
+ "profile:create": {
1141
1130
  "aliases": [],
1142
1131
  "args": {
1143
- "branch_label": {
1144
- "description": "Branch label (e.g., \"v1\", \"dev\")",
1145
- "name": "branch_label",
1132
+ "name": {
1133
+ "description": "Profile name",
1134
+ "name": "name",
1146
1135
  "required": true
1147
1136
  }
1148
1137
  },
1149
- "description": "Get details for a specific branch",
1138
+ "description": "Create a new profile configuration",
1150
1139
  "examples": [
1151
- "$ xano branch get v1\nBranch: v1 (live)\n Created: 2024-01-15\n",
1152
- "$ xano branch get dev -w 123\nBranch: dev\n Created: 2024-02-01\n",
1153
- "$ xano branch get staging --output json\n{\n \"created_at\": \"2024-02-10T09:15:00Z\",\n \"label\": \"staging\",\n \"backup\": false,\n \"live\": false\n}\n"
1140
+ "$ xano profile:create production --account_origin https://account.xano.com --instance_origin https://instance.xano.com --access_token token123\nProfile 'production' created successfully at ~/.xano/credentials.yaml\n",
1141
+ "$ xano profile:create staging -a https://staging-account.xano.com -i https://staging-instance.xano.com -t token456\nProfile 'staging' created successfully at ~/.xano/credentials.yaml\n",
1142
+ "$ xano profile:create dev -i https://dev-instance.xano.com -t token789 -w my-workspace -b feature-branch\nProfile 'dev' created successfully at ~/.xano/credentials.yaml\n",
1143
+ "$ xano profile:create production --account_origin https://account.xano.com --instance_origin https://instance.xano.com --access_token token123 --default\nProfile 'production' created successfully at ~/.xano/credentials.yaml\nDefault profile set to 'production'\n"
1154
1144
  ],
1155
1145
  "flags": {
1156
- "profile": {
1157
- "char": "p",
1158
- "description": "Profile to use (uses default profile if not specified)",
1159
- "env": "XANO_PROFILE",
1160
- "name": "profile",
1146
+ "access_token": {
1147
+ "char": "t",
1148
+ "description": "Access token for the Xano Metadata API",
1149
+ "name": "access_token",
1150
+ "required": true,
1151
+ "hasDynamicHelp": false,
1152
+ "multiple": false,
1153
+ "type": "option"
1154
+ },
1155
+ "account_origin": {
1156
+ "char": "a",
1157
+ "description": "Account origin URL. Optional for self hosted installs.",
1158
+ "name": "account_origin",
1161
1159
  "required": false,
1162
1160
  "hasDynamicHelp": false,
1163
1161
  "multiple": false,
1164
1162
  "type": "option"
1165
1163
  },
1166
- "verbose": {
1167
- "char": "v",
1168
- "description": "Show detailed request/response information",
1169
- "env": "XANO_VERBOSE",
1170
- "name": "verbose",
1164
+ "branch": {
1165
+ "char": "b",
1166
+ "description": "Branch name",
1167
+ "name": "branch",
1168
+ "required": false,
1169
+ "hasDynamicHelp": false,
1170
+ "multiple": false,
1171
+ "type": "option"
1172
+ },
1173
+ "default": {
1174
+ "description": "Set this profile as the default",
1175
+ "name": "default",
1171
1176
  "required": false,
1172
1177
  "allowNo": false,
1173
1178
  "type": "boolean"
1174
1179
  },
1175
- "output": {
1176
- "char": "o",
1177
- "description": "Output format",
1178
- "name": "output",
1179
- "required": false,
1180
- "default": "summary",
1180
+ "instance_origin": {
1181
+ "char": "i",
1182
+ "description": "Instance origin URL",
1183
+ "name": "instance_origin",
1184
+ "required": true,
1181
1185
  "hasDynamicHelp": false,
1182
1186
  "multiple": false,
1183
- "options": [
1184
- "summary",
1185
- "json"
1186
- ],
1187
1187
  "type": "option"
1188
1188
  },
1189
1189
  "workspace": {
1190
1190
  "char": "w",
1191
- "description": "Workspace ID (uses profile workspace if not provided)",
1191
+ "description": "Workspace name",
1192
1192
  "name": "workspace",
1193
1193
  "required": false,
1194
1194
  "hasDynamicHelp": false,
@@ -1198,7 +1198,7 @@
1198
1198
  },
1199
1199
  "hasDynamicHelp": false,
1200
1200
  "hiddenAliases": [],
1201
- "id": "branch:get",
1201
+ "id": "profile:create",
1202
1202
  "pluginAlias": "@xano/cli",
1203
1203
  "pluginName": "@xano/cli",
1204
1204
  "pluginType": "core",
@@ -1208,8 +1208,8 @@
1208
1208
  "relativePath": [
1209
1209
  "dist",
1210
1210
  "commands",
1211
- "branch",
1212
- "get",
1211
+ "profile",
1212
+ "create",
1213
1213
  "index.js"
1214
1214
  ]
1215
1215
  },
@@ -1395,24 +1395,60 @@
1395
1395
  "index.js"
1396
1396
  ]
1397
1397
  },
1398
- "profile:me": {
1398
+ "profile:list": {
1399
1399
  "aliases": [],
1400
1400
  "args": {},
1401
- "description": "Get information about the currently authenticated user",
1401
+ "description": "List all available profile configurations",
1402
1402
  "examples": [
1403
- "$ xano profile:me\nUser Information:\n ID: 1\n Name: John Doe\n Email: john@example.com\n",
1404
- "$ xano profile:me --profile production\nUser Information:\n ID: 42\n Name: Admin User\n Email: admin@example.com\n",
1405
- "$ xano profile:me --output json\n{\n \"id\": 1,\n \"name\": \"John Doe\",\n \"email\": \"john@example.com\"\n}\n"
1403
+ "$ xano profile:list\nAvailable profiles:\n - default\n - production\n - staging\n - development\n",
1404
+ "$ xano profile:list --details\nAvailable profiles:\n\nProfile: default\n Account Origin: https://account.xano.com\n Instance Origin: https://instance.xano.com\n Access Token: ***...***\n Workspace: my-workspace\n Branch: main\n Project: my-project\n\nProfile: production\n Account Origin: https://account.xano.com\n Instance Origin: https://prod-instance.xano.com\n Access Token: ***...***\n",
1405
+ "$ xano profile:list -d\nAvailable profiles:\n\nProfile: default\n Account Origin: https://account.xano.com\n Instance Origin: https://instance.xano.com\n Access Token: ***...***\n Workspace: my-workspace\n Branch: main\n Project: my-project\n"
1406
1406
  ],
1407
1407
  "flags": {
1408
- "profile": {
1409
- "char": "p",
1410
- "description": "Profile to use (uses default profile if not specified)",
1411
- "env": "XANO_PROFILE",
1412
- "name": "profile",
1413
- "required": false,
1414
- "hasDynamicHelp": false,
1415
- "multiple": false,
1408
+ "details": {
1409
+ "char": "d",
1410
+ "description": "Show detailed information for each profile",
1411
+ "name": "details",
1412
+ "required": false,
1413
+ "allowNo": false,
1414
+ "type": "boolean"
1415
+ }
1416
+ },
1417
+ "hasDynamicHelp": false,
1418
+ "hiddenAliases": [],
1419
+ "id": "profile:list",
1420
+ "pluginAlias": "@xano/cli",
1421
+ "pluginName": "@xano/cli",
1422
+ "pluginType": "core",
1423
+ "strict": true,
1424
+ "enableJsonFlag": false,
1425
+ "isESM": true,
1426
+ "relativePath": [
1427
+ "dist",
1428
+ "commands",
1429
+ "profile",
1430
+ "list",
1431
+ "index.js"
1432
+ ]
1433
+ },
1434
+ "profile:me": {
1435
+ "aliases": [],
1436
+ "args": {},
1437
+ "description": "Get information about the currently authenticated user",
1438
+ "examples": [
1439
+ "$ xano profile:me\nUser Information:\n ID: 1\n Name: John Doe\n Email: john@example.com\n",
1440
+ "$ xano profile:me --profile production\nUser Information:\n ID: 42\n Name: Admin User\n Email: admin@example.com\n",
1441
+ "$ xano profile:me --output json\n{\n \"id\": 1,\n \"name\": \"John Doe\",\n \"email\": \"john@example.com\"\n}\n"
1442
+ ],
1443
+ "flags": {
1444
+ "profile": {
1445
+ "char": "p",
1446
+ "description": "Profile to use (uses default profile if not specified)",
1447
+ "env": "XANO_PROFILE",
1448
+ "name": "profile",
1449
+ "required": false,
1450
+ "hasDynamicHelp": false,
1451
+ "multiple": false,
1416
1452
  "type": "option"
1417
1453
  },
1418
1454
  "verbose": {
@@ -1488,6 +1524,32 @@
1488
1524
  "index.js"
1489
1525
  ]
1490
1526
  },
1527
+ "profile:token": {
1528
+ "aliases": [],
1529
+ "args": {},
1530
+ "description": "Print the access token for the default profile",
1531
+ "examples": [
1532
+ "$ xano profile:token\neyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...\n",
1533
+ "$ xano profile:token | pbcopy\n# Copies the token to clipboard on macOS\n"
1534
+ ],
1535
+ "flags": {},
1536
+ "hasDynamicHelp": false,
1537
+ "hiddenAliases": [],
1538
+ "id": "profile:token",
1539
+ "pluginAlias": "@xano/cli",
1540
+ "pluginName": "@xano/cli",
1541
+ "pluginType": "core",
1542
+ "strict": true,
1543
+ "enableJsonFlag": false,
1544
+ "isESM": true,
1545
+ "relativePath": [
1546
+ "dist",
1547
+ "commands",
1548
+ "profile",
1549
+ "token",
1550
+ "index.js"
1551
+ ]
1552
+ },
1491
1553
  "profile:wizard": {
1492
1554
  "aliases": [],
1493
1555
  "args": {},
@@ -1533,32 +1595,6 @@
1533
1595
  "index.js"
1534
1596
  ]
1535
1597
  },
1536
- "profile:token": {
1537
- "aliases": [],
1538
- "args": {},
1539
- "description": "Print the access token for the default profile",
1540
- "examples": [
1541
- "$ xano profile:token\neyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...\n",
1542
- "$ xano profile:token | pbcopy\n# Copies the token to clipboard on macOS\n"
1543
- ],
1544
- "flags": {},
1545
- "hasDynamicHelp": false,
1546
- "hiddenAliases": [],
1547
- "id": "profile:token",
1548
- "pluginAlias": "@xano/cli",
1549
- "pluginName": "@xano/cli",
1550
- "pluginType": "core",
1551
- "strict": true,
1552
- "enableJsonFlag": false,
1553
- "isESM": true,
1554
- "relativePath": [
1555
- "dist",
1556
- "commands",
1557
- "profile",
1558
- "token",
1559
- "index.js"
1560
- ]
1561
- },
1562
1598
  "profile:workspace": {
1563
1599
  "aliases": [],
1564
1600
  "args": {},
@@ -1585,42 +1621,6 @@
1585
1621
  "index.js"
1586
1622
  ]
1587
1623
  },
1588
- "profile:list": {
1589
- "aliases": [],
1590
- "args": {},
1591
- "description": "List all available profile configurations",
1592
- "examples": [
1593
- "$ xano profile:list\nAvailable profiles:\n - default\n - production\n - staging\n - development\n",
1594
- "$ xano profile:list --details\nAvailable profiles:\n\nProfile: default\n Account Origin: https://account.xano.com\n Instance Origin: https://instance.xano.com\n Access Token: ***...***\n Workspace: my-workspace\n Branch: main\n Project: my-project\n\nProfile: production\n Account Origin: https://account.xano.com\n Instance Origin: https://prod-instance.xano.com\n Access Token: ***...***\n",
1595
- "$ xano profile:list -d\nAvailable profiles:\n\nProfile: default\n Account Origin: https://account.xano.com\n Instance Origin: https://instance.xano.com\n Access Token: ***...***\n Workspace: my-workspace\n Branch: main\n Project: my-project\n"
1596
- ],
1597
- "flags": {
1598
- "details": {
1599
- "char": "d",
1600
- "description": "Show detailed information for each profile",
1601
- "name": "details",
1602
- "required": false,
1603
- "allowNo": false,
1604
- "type": "boolean"
1605
- }
1606
- },
1607
- "hasDynamicHelp": false,
1608
- "hiddenAliases": [],
1609
- "id": "profile:list",
1610
- "pluginAlias": "@xano/cli",
1611
- "pluginName": "@xano/cli",
1612
- "pluginType": "core",
1613
- "strict": true,
1614
- "enableJsonFlag": false,
1615
- "isESM": true,
1616
- "relativePath": [
1617
- "dist",
1618
- "commands",
1619
- "profile",
1620
- "list",
1621
- "index.js"
1622
- ]
1623
- },
1624
1624
  "release:create": {
1625
1625
  "aliases": [],
1626
1626
  "args": {},
@@ -1909,13 +1909,20 @@
1909
1909
  "index.js"
1910
1910
  ]
1911
1911
  },
1912
- "release:import": {
1912
+ "release:export": {
1913
1913
  "aliases": [],
1914
- "args": {},
1915
- "description": "Import a release file into a workspace",
1914
+ "args": {
1915
+ "release_name": {
1916
+ "description": "Release name to export",
1917
+ "name": "release_name",
1918
+ "required": true
1919
+ }
1920
+ },
1921
+ "description": "Export (download) a release to a local file",
1916
1922
  "examples": [
1917
- "$ xano release import --file ./my-release.tar.gz\nImported release as #15\n",
1918
- "$ xano release import --file ./my-release.tar.gz -o json"
1923
+ "$ xano release export v1.0\nDownloaded release 'v1.0' to ./release-v1.0.tar.gz\n",
1924
+ "$ xano release export v1.0 --output ./backups/my-release.tar.gz",
1925
+ "$ xano release export v1.0 -o json"
1919
1926
  ],
1920
1927
  "flags": {
1921
1928
  "profile": {
@@ -1937,19 +1944,10 @@
1937
1944
  "allowNo": false,
1938
1945
  "type": "boolean"
1939
1946
  },
1940
- "file": {
1941
- "char": "f",
1942
- "description": "Path to the release file (.tar.gz)",
1943
- "name": "file",
1944
- "required": true,
1945
- "hasDynamicHelp": false,
1946
- "multiple": false,
1947
- "type": "option"
1948
- },
1949
- "output": {
1947
+ "format": {
1950
1948
  "char": "o",
1951
1949
  "description": "Output format",
1952
- "name": "output",
1950
+ "name": "format",
1953
1951
  "required": false,
1954
1952
  "default": "summary",
1955
1953
  "hasDynamicHelp": false,
@@ -1960,6 +1958,14 @@
1960
1958
  ],
1961
1959
  "type": "option"
1962
1960
  },
1961
+ "output": {
1962
+ "description": "Output file path (defaults to ./release-{name}.tar.gz)",
1963
+ "name": "output",
1964
+ "required": false,
1965
+ "hasDynamicHelp": false,
1966
+ "multiple": false,
1967
+ "type": "option"
1968
+ },
1963
1969
  "workspace": {
1964
1970
  "char": "w",
1965
1971
  "description": "Workspace ID (uses profile workspace if not provided)",
@@ -1972,7 +1978,7 @@
1972
1978
  },
1973
1979
  "hasDynamicHelp": false,
1974
1980
  "hiddenAliases": [],
1975
- "id": "release:import",
1981
+ "id": "release:export",
1976
1982
  "pluginAlias": "@xano/cli",
1977
1983
  "pluginName": "@xano/cli",
1978
1984
  "pluginType": "core",
@@ -1983,17 +1989,23 @@
1983
1989
  "dist",
1984
1990
  "commands",
1985
1991
  "release",
1986
- "import",
1992
+ "export",
1987
1993
  "index.js"
1988
1994
  ]
1989
1995
  },
1990
- "release:list": {
1996
+ "release:get": {
1991
1997
  "aliases": [],
1992
- "args": {},
1993
- "description": "List all releases in a workspace",
1998
+ "args": {
1999
+ "release_name": {
2000
+ "description": "Release name to retrieve",
2001
+ "name": "release_name",
2002
+ "required": true
2003
+ }
2004
+ },
2005
+ "description": "Get details of a specific release",
1994
2006
  "examples": [
1995
- "$ xano release list\nReleases in workspace 5:\n - v1.0 (ID: 10) - main\n - v1.1-hotfix (ID: 11) - main [hotfix]\n",
1996
- "$ xano release list -w 5 --output json"
2007
+ "$ xano release get v1.0\nRelease: v1.0 - ID: 10\n Branch: main\n Description: Initial release\n Hotfix: false\n",
2008
+ "$ xano release get v1.0 -w 5 -o json"
1997
2009
  ],
1998
2010
  "flags": {
1999
2011
  "profile": {
@@ -2041,7 +2053,7 @@
2041
2053
  },
2042
2054
  "hasDynamicHelp": false,
2043
2055
  "hiddenAliases": [],
2044
- "id": "release:list",
2056
+ "id": "release:get",
2045
2057
  "pluginAlias": "@xano/cli",
2046
2058
  "pluginName": "@xano/cli",
2047
2059
  "pluginType": "core",
@@ -2052,24 +2064,17 @@
2052
2064
  "dist",
2053
2065
  "commands",
2054
2066
  "release",
2055
- "list",
2067
+ "get",
2056
2068
  "index.js"
2057
2069
  ]
2058
2070
  },
2059
- "release:export": {
2071
+ "release:import": {
2060
2072
  "aliases": [],
2061
- "args": {
2062
- "release_name": {
2063
- "description": "Release name to export",
2064
- "name": "release_name",
2065
- "required": true
2066
- }
2067
- },
2068
- "description": "Export (download) a release to a local file",
2073
+ "args": {},
2074
+ "description": "Import a release file into a workspace",
2069
2075
  "examples": [
2070
- "$ xano release export v1.0\nDownloaded release 'v1.0' to ./release-v1.0.tar.gz\n",
2071
- "$ xano release export v1.0 --output ./backups/my-release.tar.gz",
2072
- "$ xano release export v1.0 -o json"
2076
+ "$ xano release import --file ./my-release.tar.gz\nImported release as #15\n",
2077
+ "$ xano release import --file ./my-release.tar.gz -o json"
2073
2078
  ],
2074
2079
  "flags": {
2075
2080
  "profile": {
@@ -2091,10 +2096,19 @@
2091
2096
  "allowNo": false,
2092
2097
  "type": "boolean"
2093
2098
  },
2094
- "format": {
2099
+ "file": {
2100
+ "char": "f",
2101
+ "description": "Path to the release file (.tar.gz)",
2102
+ "name": "file",
2103
+ "required": true,
2104
+ "hasDynamicHelp": false,
2105
+ "multiple": false,
2106
+ "type": "option"
2107
+ },
2108
+ "output": {
2095
2109
  "char": "o",
2096
2110
  "description": "Output format",
2097
- "name": "format",
2111
+ "name": "output",
2098
2112
  "required": false,
2099
2113
  "default": "summary",
2100
2114
  "hasDynamicHelp": false,
@@ -2105,14 +2119,6 @@
2105
2119
  ],
2106
2120
  "type": "option"
2107
2121
  },
2108
- "output": {
2109
- "description": "Output file path (defaults to ./release-{name}.tar.gz)",
2110
- "name": "output",
2111
- "required": false,
2112
- "hasDynamicHelp": false,
2113
- "multiple": false,
2114
- "type": "option"
2115
- },
2116
2122
  "workspace": {
2117
2123
  "char": "w",
2118
2124
  "description": "Workspace ID (uses profile workspace if not provided)",
@@ -2125,7 +2131,7 @@
2125
2131
  },
2126
2132
  "hasDynamicHelp": false,
2127
2133
  "hiddenAliases": [],
2128
- "id": "release:export",
2134
+ "id": "release:import",
2129
2135
  "pluginAlias": "@xano/cli",
2130
2136
  "pluginName": "@xano/cli",
2131
2137
  "pluginType": "core",
@@ -2136,23 +2142,17 @@
2136
2142
  "dist",
2137
2143
  "commands",
2138
2144
  "release",
2139
- "export",
2145
+ "import",
2140
2146
  "index.js"
2141
2147
  ]
2142
2148
  },
2143
- "release:get": {
2149
+ "release:list": {
2144
2150
  "aliases": [],
2145
- "args": {
2146
- "release_name": {
2147
- "description": "Release name to retrieve",
2148
- "name": "release_name",
2149
- "required": true
2150
- }
2151
- },
2152
- "description": "Get details of a specific release",
2151
+ "args": {},
2152
+ "description": "List all releases in a workspace",
2153
2153
  "examples": [
2154
- "$ xano release get v1.0\nRelease: v1.0 - ID: 10\n Branch: main\n Description: Initial release\n Hotfix: false\n",
2155
- "$ xano release get v1.0 -w 5 -o json"
2154
+ "$ xano release list\nReleases in workspace 5:\n - v1.0 (ID: 10) - main\n - v1.1-hotfix (ID: 11) - main [hotfix]\n",
2155
+ "$ xano release list -w 5 --output json"
2156
2156
  ],
2157
2157
  "flags": {
2158
2158
  "profile": {
@@ -2200,7 +2200,7 @@
2200
2200
  },
2201
2201
  "hasDynamicHelp": false,
2202
2202
  "hiddenAliases": [],
2203
- "id": "release:get",
2203
+ "id": "release:list",
2204
2204
  "pluginAlias": "@xano/cli",
2205
2205
  "pluginName": "@xano/cli",
2206
2206
  "pluginType": "core",
@@ -2211,7 +2211,7 @@
2211
2211
  "dist",
2212
2212
  "commands",
2213
2213
  "release",
2214
- "get",
2214
+ "list",
2215
2215
  "index.js"
2216
2216
  ]
2217
2217
  },
@@ -2418,6 +2418,95 @@
2418
2418
  "index.js"
2419
2419
  ]
2420
2420
  },
2421
+ "static_host:list": {
2422
+ "aliases": [],
2423
+ "args": {},
2424
+ "description": "List all static hosts in a workspace from the Xano Metadata API",
2425
+ "examples": [
2426
+ "$ xano static_host:list -w 40\nAvailable static hosts:\n - my-static-host (ID: 1)\n - another-host (ID: 2)\n",
2427
+ "$ xano static_host:list --profile production\nAvailable static hosts:\n - my-static-host (ID: 1)\n - another-host (ID: 2)\n",
2428
+ "$ xano static_host:list -w 40 --output json\n[\n {\n \"id\": 1,\n \"name\": \"my-static-host\",\n \"domain\": \"example.com\"\n }\n]\n",
2429
+ "$ xano static_host:list -p staging -o json --page 2\n[\n {\n \"id\": 3,\n \"name\": \"static-host-3\"\n }\n]\n"
2430
+ ],
2431
+ "flags": {
2432
+ "profile": {
2433
+ "char": "p",
2434
+ "description": "Profile to use (uses default profile if not specified)",
2435
+ "env": "XANO_PROFILE",
2436
+ "name": "profile",
2437
+ "required": false,
2438
+ "hasDynamicHelp": false,
2439
+ "multiple": false,
2440
+ "type": "option"
2441
+ },
2442
+ "verbose": {
2443
+ "char": "v",
2444
+ "description": "Show detailed request/response information",
2445
+ "env": "XANO_VERBOSE",
2446
+ "name": "verbose",
2447
+ "required": false,
2448
+ "allowNo": false,
2449
+ "type": "boolean"
2450
+ },
2451
+ "output": {
2452
+ "char": "o",
2453
+ "description": "Output format",
2454
+ "name": "output",
2455
+ "required": false,
2456
+ "default": "summary",
2457
+ "hasDynamicHelp": false,
2458
+ "multiple": false,
2459
+ "options": [
2460
+ "summary",
2461
+ "json"
2462
+ ],
2463
+ "type": "option"
2464
+ },
2465
+ "page": {
2466
+ "description": "Page number for pagination",
2467
+ "name": "page",
2468
+ "required": false,
2469
+ "default": 1,
2470
+ "hasDynamicHelp": false,
2471
+ "multiple": false,
2472
+ "type": "option"
2473
+ },
2474
+ "per_page": {
2475
+ "description": "Number of results per page",
2476
+ "name": "per_page",
2477
+ "required": false,
2478
+ "default": 50,
2479
+ "hasDynamicHelp": false,
2480
+ "multiple": false,
2481
+ "type": "option"
2482
+ },
2483
+ "workspace": {
2484
+ "char": "w",
2485
+ "description": "Workspace ID (optional if set in profile)",
2486
+ "name": "workspace",
2487
+ "required": false,
2488
+ "hasDynamicHelp": false,
2489
+ "multiple": false,
2490
+ "type": "option"
2491
+ }
2492
+ },
2493
+ "hasDynamicHelp": false,
2494
+ "hiddenAliases": [],
2495
+ "id": "static_host:list",
2496
+ "pluginAlias": "@xano/cli",
2497
+ "pluginName": "@xano/cli",
2498
+ "pluginType": "core",
2499
+ "strict": true,
2500
+ "enableJsonFlag": false,
2501
+ "isESM": true,
2502
+ "relativePath": [
2503
+ "dist",
2504
+ "commands",
2505
+ "static_host",
2506
+ "list",
2507
+ "index.js"
2508
+ ]
2509
+ },
2421
2510
  "tenant:create": {
2422
2511
  "aliases": [],
2423
2512
  "args": {
@@ -2558,95 +2647,6 @@
2558
2647
  "index.js"
2559
2648
  ]
2560
2649
  },
2561
- "static_host:list": {
2562
- "aliases": [],
2563
- "args": {},
2564
- "description": "List all static hosts in a workspace from the Xano Metadata API",
2565
- "examples": [
2566
- "$ xano static_host:list -w 40\nAvailable static hosts:\n - my-static-host (ID: 1)\n - another-host (ID: 2)\n",
2567
- "$ xano static_host:list --profile production\nAvailable static hosts:\n - my-static-host (ID: 1)\n - another-host (ID: 2)\n",
2568
- "$ xano static_host:list -w 40 --output json\n[\n {\n \"id\": 1,\n \"name\": \"my-static-host\",\n \"domain\": \"example.com\"\n }\n]\n",
2569
- "$ xano static_host:list -p staging -o json --page 2\n[\n {\n \"id\": 3,\n \"name\": \"static-host-3\"\n }\n]\n"
2570
- ],
2571
- "flags": {
2572
- "profile": {
2573
- "char": "p",
2574
- "description": "Profile to use (uses default profile if not specified)",
2575
- "env": "XANO_PROFILE",
2576
- "name": "profile",
2577
- "required": false,
2578
- "hasDynamicHelp": false,
2579
- "multiple": false,
2580
- "type": "option"
2581
- },
2582
- "verbose": {
2583
- "char": "v",
2584
- "description": "Show detailed request/response information",
2585
- "env": "XANO_VERBOSE",
2586
- "name": "verbose",
2587
- "required": false,
2588
- "allowNo": false,
2589
- "type": "boolean"
2590
- },
2591
- "output": {
2592
- "char": "o",
2593
- "description": "Output format",
2594
- "name": "output",
2595
- "required": false,
2596
- "default": "summary",
2597
- "hasDynamicHelp": false,
2598
- "multiple": false,
2599
- "options": [
2600
- "summary",
2601
- "json"
2602
- ],
2603
- "type": "option"
2604
- },
2605
- "page": {
2606
- "description": "Page number for pagination",
2607
- "name": "page",
2608
- "required": false,
2609
- "default": 1,
2610
- "hasDynamicHelp": false,
2611
- "multiple": false,
2612
- "type": "option"
2613
- },
2614
- "per_page": {
2615
- "description": "Number of results per page",
2616
- "name": "per_page",
2617
- "required": false,
2618
- "default": 50,
2619
- "hasDynamicHelp": false,
2620
- "multiple": false,
2621
- "type": "option"
2622
- },
2623
- "workspace": {
2624
- "char": "w",
2625
- "description": "Workspace ID (optional if set in profile)",
2626
- "name": "workspace",
2627
- "required": false,
2628
- "hasDynamicHelp": false,
2629
- "multiple": false,
2630
- "type": "option"
2631
- }
2632
- },
2633
- "hasDynamicHelp": false,
2634
- "hiddenAliases": [],
2635
- "id": "static_host:list",
2636
- "pluginAlias": "@xano/cli",
2637
- "pluginName": "@xano/cli",
2638
- "pluginType": "core",
2639
- "strict": true,
2640
- "enableJsonFlag": false,
2641
- "isESM": true,
2642
- "relativePath": [
2643
- "dist",
2644
- "commands",
2645
- "static_host",
2646
- "list",
2647
- "index.js"
2648
- ]
2649
- },
2650
2650
  "tenant:delete": {
2651
2651
  "aliases": [],
2652
2652
  "args": {
@@ -2898,19 +2898,19 @@
2898
2898
  "index.js"
2899
2899
  ]
2900
2900
  },
2901
- "tenant:get": {
2901
+ "tenant:edit": {
2902
2902
  "aliases": [],
2903
2903
  "args": {
2904
2904
  "tenant_name": {
2905
- "description": "Tenant name to retrieve",
2905
+ "description": "Tenant name to edit",
2906
2906
  "name": "tenant_name",
2907
2907
  "required": true
2908
2908
  }
2909
2909
  },
2910
- "description": "Get details of a specific tenant",
2910
+ "description": "Edit an existing tenant",
2911
2911
  "examples": [
2912
- "$ xano tenant get t1234-abcd-xyz1\nTenant: My Tenant (my-tenant)\n State: ok\n License: tier1\n Domain: my-tenant.xano.io\n Cluster: default\n Release: v1.0\n",
2913
- "$ xano tenant get t1234-abcd-xyz1 -w 5 -o json"
2912
+ "$ xano tenant edit t1234-abcd-xyz1 --display \"New Name\" --description \"Updated description\"\nUpdated tenant: New Name (my-tenant) - ID: 42\n",
2913
+ "$ xano tenant edit t1234-abcd-xyz1 --no-tasks --no-ingress -o json"
2914
2914
  ],
2915
2915
  "flags": {
2916
2916
  "profile": {
@@ -2932,6 +2932,38 @@
2932
2932
  "allowNo": false,
2933
2933
  "type": "boolean"
2934
2934
  },
2935
+ "description": {
2936
+ "char": "d",
2937
+ "description": "New description",
2938
+ "name": "description",
2939
+ "required": false,
2940
+ "hasDynamicHelp": false,
2941
+ "multiple": false,
2942
+ "type": "option"
2943
+ },
2944
+ "display": {
2945
+ "description": "New display name",
2946
+ "name": "display",
2947
+ "required": false,
2948
+ "hasDynamicHelp": false,
2949
+ "multiple": false,
2950
+ "type": "option"
2951
+ },
2952
+ "domain": {
2953
+ "description": "Custom domain",
2954
+ "name": "domain",
2955
+ "required": false,
2956
+ "hasDynamicHelp": false,
2957
+ "multiple": false,
2958
+ "type": "option"
2959
+ },
2960
+ "ingress": {
2961
+ "description": "Enable/disable ingress",
2962
+ "name": "ingress",
2963
+ "required": false,
2964
+ "allowNo": true,
2965
+ "type": "boolean"
2966
+ },
2935
2967
  "output": {
2936
2968
  "char": "o",
2937
2969
  "description": "Output format",
@@ -2946,6 +2978,28 @@
2946
2978
  ],
2947
2979
  "type": "option"
2948
2980
  },
2981
+ "proxy": {
2982
+ "description": "Proxy URL",
2983
+ "name": "proxy",
2984
+ "required": false,
2985
+ "hasDynamicHelp": false,
2986
+ "multiple": false,
2987
+ "type": "option"
2988
+ },
2989
+ "rbac": {
2990
+ "description": "Enable/disable RBAC",
2991
+ "name": "rbac",
2992
+ "required": false,
2993
+ "allowNo": true,
2994
+ "type": "boolean"
2995
+ },
2996
+ "tasks": {
2997
+ "description": "Enable/disable background tasks",
2998
+ "name": "tasks",
2999
+ "required": false,
3000
+ "allowNo": true,
3001
+ "type": "boolean"
3002
+ },
2949
3003
  "workspace": {
2950
3004
  "char": "w",
2951
3005
  "description": "Workspace ID (uses profile workspace if not provided)",
@@ -2958,7 +3012,7 @@
2958
3012
  },
2959
3013
  "hasDynamicHelp": false,
2960
3014
  "hiddenAliases": [],
2961
- "id": "tenant:get",
3015
+ "id": "tenant:edit",
2962
3016
  "pluginAlias": "@xano/cli",
2963
3017
  "pluginName": "@xano/cli",
2964
3018
  "pluginType": "core",
@@ -2969,23 +3023,23 @@
2969
3023
  "dist",
2970
3024
  "commands",
2971
3025
  "tenant",
2972
- "get",
3026
+ "edit",
2973
3027
  "index.js"
2974
3028
  ]
2975
3029
  },
2976
- "tenant:impersonate": {
3030
+ "tenant:get": {
2977
3031
  "aliases": [],
2978
3032
  "args": {
2979
3033
  "tenant_name": {
2980
- "description": "Tenant name to impersonate",
3034
+ "description": "Tenant name to retrieve",
2981
3035
  "name": "tenant_name",
2982
3036
  "required": true
2983
3037
  }
2984
3038
  },
2985
- "description": "Impersonate a tenant and open it in the browser",
3039
+ "description": "Get details of a specific tenant",
2986
3040
  "examples": [
2987
- "$ xano tenant impersonate my-tenant\nOpening browser...\nImpersonation successful!\n",
2988
- "$ xano tenant impersonate my-tenant -o json"
3041
+ "$ xano tenant get t1234-abcd-xyz1\nTenant: My Tenant (my-tenant)\n State: ok\n License: tier1\n Domain: my-tenant.xano.io\n Cluster: default\n Release: v1.0\n",
3042
+ "$ xano tenant get t1234-abcd-xyz1 -w 5 -o json"
2989
3043
  ],
2990
3044
  "flags": {
2991
3045
  "profile": {
@@ -3021,14 +3075,6 @@
3021
3075
  ],
3022
3076
  "type": "option"
3023
3077
  },
3024
- "url-only": {
3025
- "char": "u",
3026
- "description": "Print the URL without opening the browser",
3027
- "name": "url-only",
3028
- "required": false,
3029
- "allowNo": false,
3030
- "type": "boolean"
3031
- },
3032
3078
  "workspace": {
3033
3079
  "char": "w",
3034
3080
  "description": "Workspace ID (uses profile workspace if not provided)",
@@ -3041,7 +3087,7 @@
3041
3087
  },
3042
3088
  "hasDynamicHelp": false,
3043
3089
  "hiddenAliases": [],
3044
- "id": "tenant:impersonate",
3090
+ "id": "tenant:get",
3045
3091
  "pluginAlias": "@xano/cli",
3046
3092
  "pluginName": "@xano/cli",
3047
3093
  "pluginType": "core",
@@ -3052,25 +3098,23 @@
3052
3098
  "dist",
3053
3099
  "commands",
3054
3100
  "tenant",
3055
- "impersonate",
3101
+ "get",
3056
3102
  "index.js"
3057
3103
  ]
3058
3104
  },
3059
- "tenant:pull": {
3105
+ "tenant:impersonate": {
3060
3106
  "aliases": [],
3061
3107
  "args": {
3062
- "directory": {
3063
- "description": "Output directory for pulled documents",
3064
- "name": "directory",
3108
+ "tenant_name": {
3109
+ "description": "Tenant name to impersonate",
3110
+ "name": "tenant_name",
3065
3111
  "required": true
3066
3112
  }
3067
3113
  },
3068
- "description": "Pull a tenant multidoc from the Xano Metadata API and split into individual files",
3114
+ "description": "Impersonate a tenant and open it in the browser",
3069
3115
  "examples": [
3070
- "$ xano tenant pull ./my-tenant -t my-tenant\nPulled 42 documents from tenant my-tenant to ./my-tenant\n",
3071
- "$ xano tenant pull ./output -t my-tenant -w 40\nPulled 15 documents from tenant my-tenant to ./output\n",
3072
- "$ xano tenant pull ./backup -t my-tenant --profile production --env --records\nPulled 58 documents from tenant my-tenant to ./backup\n",
3073
- "$ xano tenant pull ./my-tenant -t my-tenant --draft\nPulled 42 documents from tenant my-tenant to ./my-tenant\n"
3116
+ "$ xano tenant impersonate my-tenant\nOpening browser...\nImpersonation successful!\n",
3117
+ "$ xano tenant impersonate my-tenant -o json"
3074
3118
  ],
3075
3119
  "flags": {
3076
3120
  "profile": {
@@ -3092,39 +3136,31 @@
3092
3136
  "allowNo": false,
3093
3137
  "type": "boolean"
3094
3138
  },
3095
- "draft": {
3096
- "description": "Include draft versions",
3097
- "name": "draft",
3098
- "required": false,
3099
- "allowNo": false,
3100
- "type": "boolean"
3101
- },
3102
- "env": {
3103
- "description": "Include environment variables",
3104
- "name": "env",
3139
+ "output": {
3140
+ "char": "o",
3141
+ "description": "Output format",
3142
+ "name": "output",
3105
3143
  "required": false,
3106
- "allowNo": false,
3107
- "type": "boolean"
3144
+ "default": "summary",
3145
+ "hasDynamicHelp": false,
3146
+ "multiple": false,
3147
+ "options": [
3148
+ "summary",
3149
+ "json"
3150
+ ],
3151
+ "type": "option"
3108
3152
  },
3109
- "records": {
3110
- "description": "Include records",
3111
- "name": "records",
3153
+ "url-only": {
3154
+ "char": "u",
3155
+ "description": "Print the URL without opening the browser",
3156
+ "name": "url-only",
3112
3157
  "required": false,
3113
3158
  "allowNo": false,
3114
3159
  "type": "boolean"
3115
3160
  },
3116
- "tenant": {
3117
- "char": "t",
3118
- "description": "Tenant name to pull from",
3119
- "name": "tenant",
3120
- "required": true,
3121
- "hasDynamicHelp": false,
3122
- "multiple": false,
3123
- "type": "option"
3124
- },
3125
3161
  "workspace": {
3126
3162
  "char": "w",
3127
- "description": "Workspace ID (optional if set in profile)",
3163
+ "description": "Workspace ID (uses profile workspace if not provided)",
3128
3164
  "name": "workspace",
3129
3165
  "required": false,
3130
3166
  "hasDynamicHelp": false,
@@ -3134,7 +3170,7 @@
3134
3170
  },
3135
3171
  "hasDynamicHelp": false,
3136
3172
  "hiddenAliases": [],
3137
- "id": "tenant:pull",
3173
+ "id": "tenant:impersonate",
3138
3174
  "pluginAlias": "@xano/cli",
3139
3175
  "pluginName": "@xano/cli",
3140
3176
  "pluginType": "core",
@@ -3145,23 +3181,17 @@
3145
3181
  "dist",
3146
3182
  "commands",
3147
3183
  "tenant",
3148
- "pull",
3184
+ "impersonate",
3149
3185
  "index.js"
3150
3186
  ]
3151
3187
  },
3152
- "tenant:edit": {
3188
+ "tenant:list": {
3153
3189
  "aliases": [],
3154
- "args": {
3155
- "tenant_name": {
3156
- "description": "Tenant name to edit",
3157
- "name": "tenant_name",
3158
- "required": true
3159
- }
3160
- },
3161
- "description": "Edit an existing tenant",
3190
+ "args": {},
3191
+ "description": "List all tenants in a workspace",
3162
3192
  "examples": [
3163
- "$ xano tenant edit t1234-abcd-xyz1 --display \"New Name\" --description \"Updated description\"\nUpdated tenant: New Name (my-tenant) - ID: 42\n",
3164
- "$ xano tenant edit t1234-abcd-xyz1 --no-tasks --no-ingress -o json"
3193
+ "$ xano tenant list\nTenants in workspace 5:\n - My Tenant (my-tenant) [ok] - tier1\n - Staging (staging) [ok] - tier1\n",
3194
+ "$ xano tenant list -w 5 --output json"
3165
3195
  ],
3166
3196
  "flags": {
3167
3197
  "profile": {
@@ -3183,38 +3213,6 @@
3183
3213
  "allowNo": false,
3184
3214
  "type": "boolean"
3185
3215
  },
3186
- "description": {
3187
- "char": "d",
3188
- "description": "New description",
3189
- "name": "description",
3190
- "required": false,
3191
- "hasDynamicHelp": false,
3192
- "multiple": false,
3193
- "type": "option"
3194
- },
3195
- "display": {
3196
- "description": "New display name",
3197
- "name": "display",
3198
- "required": false,
3199
- "hasDynamicHelp": false,
3200
- "multiple": false,
3201
- "type": "option"
3202
- },
3203
- "domain": {
3204
- "description": "Custom domain",
3205
- "name": "domain",
3206
- "required": false,
3207
- "hasDynamicHelp": false,
3208
- "multiple": false,
3209
- "type": "option"
3210
- },
3211
- "ingress": {
3212
- "description": "Enable/disable ingress",
3213
- "name": "ingress",
3214
- "required": false,
3215
- "allowNo": true,
3216
- "type": "boolean"
3217
- },
3218
3216
  "output": {
3219
3217
  "char": "o",
3220
3218
  "description": "Output format",
@@ -3229,28 +3227,6 @@
3229
3227
  ],
3230
3228
  "type": "option"
3231
3229
  },
3232
- "proxy": {
3233
- "description": "Proxy URL",
3234
- "name": "proxy",
3235
- "required": false,
3236
- "hasDynamicHelp": false,
3237
- "multiple": false,
3238
- "type": "option"
3239
- },
3240
- "rbac": {
3241
- "description": "Enable/disable RBAC",
3242
- "name": "rbac",
3243
- "required": false,
3244
- "allowNo": true,
3245
- "type": "boolean"
3246
- },
3247
- "tasks": {
3248
- "description": "Enable/disable background tasks",
3249
- "name": "tasks",
3250
- "required": false,
3251
- "allowNo": true,
3252
- "type": "boolean"
3253
- },
3254
3230
  "workspace": {
3255
3231
  "char": "w",
3256
3232
  "description": "Workspace ID (uses profile workspace if not provided)",
@@ -3263,7 +3239,7 @@
3263
3239
  },
3264
3240
  "hasDynamicHelp": false,
3265
3241
  "hiddenAliases": [],
3266
- "id": "tenant:edit",
3242
+ "id": "tenant:list",
3267
3243
  "pluginAlias": "@xano/cli",
3268
3244
  "pluginName": "@xano/cli",
3269
3245
  "pluginType": "core",
@@ -3274,17 +3250,25 @@
3274
3250
  "dist",
3275
3251
  "commands",
3276
3252
  "tenant",
3277
- "edit",
3253
+ "list",
3278
3254
  "index.js"
3279
3255
  ]
3280
3256
  },
3281
- "tenant:list": {
3257
+ "tenant:pull": {
3282
3258
  "aliases": [],
3283
- "args": {},
3284
- "description": "List all tenants in a workspace",
3259
+ "args": {
3260
+ "directory": {
3261
+ "description": "Output directory for pulled documents",
3262
+ "name": "directory",
3263
+ "required": true
3264
+ }
3265
+ },
3266
+ "description": "Pull a tenant multidoc from the Xano Metadata API and split into individual files",
3285
3267
  "examples": [
3286
- "$ xano tenant list\nTenants in workspace 5:\n - My Tenant (my-tenant) [ok] - tier1\n - Staging (staging) [ok] - tier1\n",
3287
- "$ xano tenant list -w 5 --output json"
3268
+ "$ xano tenant pull ./my-tenant -t my-tenant\nPulled 42 documents from tenant my-tenant to ./my-tenant\n",
3269
+ "$ xano tenant pull ./output -t my-tenant -w 40\nPulled 15 documents from tenant my-tenant to ./output\n",
3270
+ "$ xano tenant pull ./backup -t my-tenant --profile production --env --records\nPulled 58 documents from tenant my-tenant to ./backup\n",
3271
+ "$ xano tenant pull ./my-tenant -t my-tenant --draft\nPulled 42 documents from tenant my-tenant to ./my-tenant\n"
3288
3272
  ],
3289
3273
  "flags": {
3290
3274
  "profile": {
@@ -3306,23 +3290,39 @@
3306
3290
  "allowNo": false,
3307
3291
  "type": "boolean"
3308
3292
  },
3309
- "output": {
3310
- "char": "o",
3311
- "description": "Output format",
3312
- "name": "output",
3293
+ "draft": {
3294
+ "description": "Include draft versions",
3295
+ "name": "draft",
3313
3296
  "required": false,
3314
- "default": "summary",
3297
+ "allowNo": false,
3298
+ "type": "boolean"
3299
+ },
3300
+ "env": {
3301
+ "description": "Include environment variables",
3302
+ "name": "env",
3303
+ "required": false,
3304
+ "allowNo": false,
3305
+ "type": "boolean"
3306
+ },
3307
+ "records": {
3308
+ "description": "Include records",
3309
+ "name": "records",
3310
+ "required": false,
3311
+ "allowNo": false,
3312
+ "type": "boolean"
3313
+ },
3314
+ "tenant": {
3315
+ "char": "t",
3316
+ "description": "Tenant name to pull from",
3317
+ "name": "tenant",
3318
+ "required": true,
3315
3319
  "hasDynamicHelp": false,
3316
3320
  "multiple": false,
3317
- "options": [
3318
- "summary",
3319
- "json"
3320
- ],
3321
3321
  "type": "option"
3322
3322
  },
3323
3323
  "workspace": {
3324
3324
  "char": "w",
3325
- "description": "Workspace ID (uses profile workspace if not provided)",
3325
+ "description": "Workspace ID (optional if set in profile)",
3326
3326
  "name": "workspace",
3327
3327
  "required": false,
3328
3328
  "hasDynamicHelp": false,
@@ -3332,7 +3332,7 @@
3332
3332
  },
3333
3333
  "hasDynamicHelp": false,
3334
3334
  "hiddenAliases": [],
3335
- "id": "tenant:list",
3335
+ "id": "tenant:pull",
3336
3336
  "pluginAlias": "@xano/cli",
3337
3337
  "pluginName": "@xano/cli",
3338
3338
  "pluginType": "core",
@@ -3343,7 +3343,7 @@
3343
3343
  "dist",
3344
3344
  "commands",
3345
3345
  "tenant",
3346
- "list",
3346
+ "pull",
3347
3347
  "index.js"
3348
3348
  ]
3349
3349
  },
@@ -3700,14 +3700,19 @@
3700
3700
  "index.js"
3701
3701
  ]
3702
3702
  },
3703
- "workflow_test:list": {
3703
+ "workflow_test:delete": {
3704
3704
  "aliases": [],
3705
- "args": {},
3706
- "description": "List all workflow tests in a workspace",
3705
+ "args": {
3706
+ "workflow_test_id": {
3707
+ "description": "ID of the workflow test to delete",
3708
+ "name": "workflow_test_id",
3709
+ "required": true
3710
+ }
3711
+ },
3712
+ "description": "Delete a workflow test",
3707
3713
  "examples": [
3708
- "$ xano workflow-test list\nWorkflow tests in workspace 5:\n - my-test (ID: 1)\n - auth-flow (ID: 2) - Validates auth endpoints\n",
3709
- "$ xano workflow-test list -w 5 --output json",
3710
- "$ xano workflow-test list --branch main"
3714
+ "$ xano workflow-test delete 1\nAre you sure you want to delete workflow test 1? (y/N) y\nDeleted workflow test 1\n",
3715
+ "$ xano workflow-test delete 1 --force"
3711
3716
  ],
3712
3717
  "flags": {
3713
3718
  "profile": {
@@ -3729,14 +3734,13 @@
3729
3734
  "allowNo": false,
3730
3735
  "type": "boolean"
3731
3736
  },
3732
- "branch": {
3733
- "char": "b",
3734
- "description": "Filter by branch name",
3735
- "name": "branch",
3737
+ "force": {
3738
+ "char": "f",
3739
+ "description": "Skip confirmation prompt",
3740
+ "name": "force",
3736
3741
  "required": false,
3737
- "hasDynamicHelp": false,
3738
- "multiple": false,
3739
- "type": "option"
3742
+ "allowNo": false,
3743
+ "type": "boolean"
3740
3744
  },
3741
3745
  "output": {
3742
3746
  "char": "o",
@@ -3764,7 +3768,7 @@
3764
3768
  },
3765
3769
  "hasDynamicHelp": false,
3766
3770
  "hiddenAliases": [],
3767
- "id": "workflow_test:list",
3771
+ "id": "workflow_test:delete",
3768
3772
  "pluginAlias": "@xano/cli",
3769
3773
  "pluginName": "@xano/cli",
3770
3774
  "pluginType": "core",
@@ -3775,7 +3779,7 @@
3775
3779
  "dist",
3776
3780
  "commands",
3777
3781
  "workflow_test",
3778
- "list",
3782
+ "delete",
3779
3783
  "index.js"
3780
3784
  ]
3781
3785
  },
@@ -3863,19 +3867,14 @@
3863
3867
  "index.js"
3864
3868
  ]
3865
3869
  },
3866
- "workflow_test:delete": {
3870
+ "workflow_test:list": {
3867
3871
  "aliases": [],
3868
- "args": {
3869
- "workflow_test_id": {
3870
- "description": "ID of the workflow test to delete",
3871
- "name": "workflow_test_id",
3872
- "required": true
3873
- }
3874
- },
3875
- "description": "Delete a workflow test",
3872
+ "args": {},
3873
+ "description": "List all workflow tests in a workspace",
3876
3874
  "examples": [
3877
- "$ xano workflow-test delete 1\nAre you sure you want to delete workflow test 1? (y/N) y\nDeleted workflow test 1\n",
3878
- "$ xano workflow-test delete 1 --force"
3875
+ "$ xano workflow-test list\nWorkflow tests in workspace 5:\n - my-test (ID: 1)\n - auth-flow (ID: 2) - Validates auth endpoints\n",
3876
+ "$ xano workflow-test list -w 5 --output json",
3877
+ "$ xano workflow-test list --branch main"
3879
3878
  ],
3880
3879
  "flags": {
3881
3880
  "profile": {
@@ -3897,13 +3896,14 @@
3897
3896
  "allowNo": false,
3898
3897
  "type": "boolean"
3899
3898
  },
3900
- "force": {
3901
- "char": "f",
3902
- "description": "Skip confirmation prompt",
3903
- "name": "force",
3899
+ "branch": {
3900
+ "char": "b",
3901
+ "description": "Filter by branch name",
3902
+ "name": "branch",
3904
3903
  "required": false,
3905
- "allowNo": false,
3906
- "type": "boolean"
3904
+ "hasDynamicHelp": false,
3905
+ "multiple": false,
3906
+ "type": "option"
3907
3907
  },
3908
3908
  "output": {
3909
3909
  "char": "o",
@@ -3931,7 +3931,7 @@
3931
3931
  },
3932
3932
  "hasDynamicHelp": false,
3933
3933
  "hiddenAliases": [],
3934
- "id": "workflow_test:delete",
3934
+ "id": "workflow_test:list",
3935
3935
  "pluginAlias": "@xano/cli",
3936
3936
  "pluginName": "@xano/cli",
3937
3937
  "pluginType": "core",
@@ -3942,7 +3942,7 @@
3942
3942
  "dist",
3943
3943
  "commands",
3944
3944
  "workflow_test",
3945
- "delete",
3945
+ "list",
3946
3946
  "index.js"
3947
3947
  ]
3948
3948
  },
@@ -4175,21 +4175,20 @@
4175
4175
  "index.js"
4176
4176
  ]
4177
4177
  },
4178
- "workspace:edit": {
4178
+ "workspace:get": {
4179
4179
  "aliases": [],
4180
4180
  "args": {
4181
4181
  "workspace_id": {
4182
- "description": "Workspace ID to edit (uses profile workspace if not provided)",
4182
+ "description": "Workspace ID to get details for (uses profile workspace if not provided)",
4183
4183
  "name": "workspace_id",
4184
4184
  "required": false
4185
4185
  }
4186
4186
  },
4187
- "description": "Edit an existing workspace via the Xano Metadata API",
4187
+ "description": "Get details of a specific workspace from the Xano Metadata API",
4188
4188
  "examples": [
4189
- "$ xano workspace edit 123 --name \"new-name\"\nUpdated workspace: new-name (ID: 123)\n",
4190
- "$ xano workspace edit --name \"updated-workspace\" --description \"Updated description\"\nUpdated workspace: updated-workspace (ID: 123)\n Description: Updated description\n",
4191
- "$ xano workspace edit 123 --swagger --require-token\nUpdated workspace: my-workspace (ID: 123)\n Swagger: enabled\n Require Token: true\n",
4192
- "$ xano workspace edit 123 --no-swagger -o json\n{\n \"id\": 123,\n \"name\": \"my-workspace\",\n \"swagger\": false\n}\n"
4189
+ "$ xano workspace get 123\nWorkspace: my-workspace (ID: 123)\n Description: My workspace description\n Created: 2024-01-15\n",
4190
+ "$ xano workspace get --output json\n{\n \"id\": 123,\n \"name\": \"my-workspace\",\n \"description\": \"My workspace description\"\n}\n",
4191
+ "$ xano workspace get 456 -p production -o json\n{\n \"id\": 456,\n \"name\": \"production-workspace\"\n}\n"
4193
4192
  ],
4194
4193
  "flags": {
4195
4194
  "profile": {
@@ -4211,24 +4210,81 @@
4211
4210
  "allowNo": false,
4212
4211
  "type": "boolean"
4213
4212
  },
4214
- "description": {
4215
- "char": "d",
4216
- "description": "New description for the workspace",
4217
- "name": "description",
4213
+ "output": {
4214
+ "char": "o",
4215
+ "description": "Output format",
4216
+ "name": "output",
4218
4217
  "required": false,
4218
+ "default": "summary",
4219
4219
  "hasDynamicHelp": false,
4220
4220
  "multiple": false,
4221
+ "options": [
4222
+ "summary",
4223
+ "json"
4224
+ ],
4221
4225
  "type": "option"
4222
- },
4223
- "name": {
4224
- "char": "n",
4225
- "description": "New name for the workspace",
4226
- "name": "name",
4226
+ }
4227
+ },
4228
+ "hasDynamicHelp": false,
4229
+ "hiddenAliases": [],
4230
+ "id": "workspace:get",
4231
+ "pluginAlias": "@xano/cli",
4232
+ "pluginName": "@xano/cli",
4233
+ "pluginType": "core",
4234
+ "strict": true,
4235
+ "enableJsonFlag": false,
4236
+ "isESM": true,
4237
+ "relativePath": [
4238
+ "dist",
4239
+ "commands",
4240
+ "workspace",
4241
+ "get",
4242
+ "index.js"
4243
+ ]
4244
+ },
4245
+ "workspace:delete": {
4246
+ "aliases": [],
4247
+ "args": {
4248
+ "workspace_id": {
4249
+ "description": "Workspace ID to delete",
4250
+ "name": "workspace_id",
4251
+ "required": true
4252
+ }
4253
+ },
4254
+ "description": "Delete a workspace via the Xano Metadata API. Cannot delete workspaces with active tenants.",
4255
+ "examples": [
4256
+ "$ xano workspace delete 123\nAre you sure you want to delete workspace 123? This action cannot be undone. (y/N) y\nDeleted workspace 123\n",
4257
+ "$ xano workspace delete 123 --force\nDeleted workspace 123\n",
4258
+ "$ xano workspace delete 123 -f -o json\n{\n \"deleted\": true,\n \"workspace_id\": 123\n}\n"
4259
+ ],
4260
+ "flags": {
4261
+ "profile": {
4262
+ "char": "p",
4263
+ "description": "Profile to use (uses default profile if not specified)",
4264
+ "env": "XANO_PROFILE",
4265
+ "name": "profile",
4227
4266
  "required": false,
4228
4267
  "hasDynamicHelp": false,
4229
4268
  "multiple": false,
4230
4269
  "type": "option"
4231
4270
  },
4271
+ "verbose": {
4272
+ "char": "v",
4273
+ "description": "Show detailed request/response information",
4274
+ "env": "XANO_VERBOSE",
4275
+ "name": "verbose",
4276
+ "required": false,
4277
+ "allowNo": false,
4278
+ "type": "boolean"
4279
+ },
4280
+ "force": {
4281
+ "char": "f",
4282
+ "description": "Skip confirmation prompt",
4283
+ "name": "force",
4284
+ "required": false,
4285
+ "allowNo": false,
4286
+ "type": "boolean"
4287
+ },
4232
4288
  "output": {
4233
4289
  "char": "o",
4234
4290
  "description": "Output format",
@@ -4242,25 +4298,11 @@
4242
4298
  "json"
4243
4299
  ],
4244
4300
  "type": "option"
4245
- },
4246
- "require-token": {
4247
- "description": "Whether to require a token for documentation access",
4248
- "name": "require-token",
4249
- "required": false,
4250
- "allowNo": true,
4251
- "type": "boolean"
4252
- },
4253
- "swagger": {
4254
- "description": "Enable or disable swagger documentation",
4255
- "name": "swagger",
4256
- "required": false,
4257
- "allowNo": true,
4258
- "type": "boolean"
4259
4301
  }
4260
4302
  },
4261
4303
  "hasDynamicHelp": false,
4262
4304
  "hiddenAliases": [],
4263
- "id": "workspace:edit",
4305
+ "id": "workspace:delete",
4264
4306
  "pluginAlias": "@xano/cli",
4265
4307
  "pluginName": "@xano/cli",
4266
4308
  "pluginType": "core",
@@ -4271,24 +4313,25 @@
4271
4313
  "dist",
4272
4314
  "commands",
4273
4315
  "workspace",
4274
- "edit",
4316
+ "delete",
4275
4317
  "index.js"
4276
4318
  ]
4277
4319
  },
4278
- "workspace:get": {
4320
+ "workspace:edit": {
4279
4321
  "aliases": [],
4280
4322
  "args": {
4281
4323
  "workspace_id": {
4282
- "description": "Workspace ID to get details for (uses profile workspace if not provided)",
4324
+ "description": "Workspace ID to edit (uses profile workspace if not provided)",
4283
4325
  "name": "workspace_id",
4284
4326
  "required": false
4285
4327
  }
4286
4328
  },
4287
- "description": "Get details of a specific workspace from the Xano Metadata API",
4329
+ "description": "Edit an existing workspace via the Xano Metadata API",
4288
4330
  "examples": [
4289
- "$ xano workspace get 123\nWorkspace: my-workspace (ID: 123)\n Description: My workspace description\n Created: 2024-01-15\n",
4290
- "$ xano workspace get --output json\n{\n \"id\": 123,\n \"name\": \"my-workspace\",\n \"description\": \"My workspace description\"\n}\n",
4291
- "$ xano workspace get 456 -p production -o json\n{\n \"id\": 456,\n \"name\": \"production-workspace\"\n}\n"
4331
+ "$ xano workspace edit 123 --name \"new-name\"\nUpdated workspace: new-name (ID: 123)\n",
4332
+ "$ xano workspace edit --name \"updated-workspace\" --description \"Updated description\"\nUpdated workspace: updated-workspace (ID: 123)\n Description: Updated description\n",
4333
+ "$ xano workspace edit 123 --swagger --require-token\nUpdated workspace: my-workspace (ID: 123)\n Swagger: enabled\n Require Token: true\n",
4334
+ "$ xano workspace edit 123 --no-swagger -o json\n{\n \"id\": 123,\n \"name\": \"my-workspace\",\n \"swagger\": false\n}\n"
4292
4335
  ],
4293
4336
  "flags": {
4294
4337
  "profile": {
@@ -4310,6 +4353,24 @@
4310
4353
  "allowNo": false,
4311
4354
  "type": "boolean"
4312
4355
  },
4356
+ "description": {
4357
+ "char": "d",
4358
+ "description": "New description for the workspace",
4359
+ "name": "description",
4360
+ "required": false,
4361
+ "hasDynamicHelp": false,
4362
+ "multiple": false,
4363
+ "type": "option"
4364
+ },
4365
+ "name": {
4366
+ "char": "n",
4367
+ "description": "New name for the workspace",
4368
+ "name": "name",
4369
+ "required": false,
4370
+ "hasDynamicHelp": false,
4371
+ "multiple": false,
4372
+ "type": "option"
4373
+ },
4313
4374
  "output": {
4314
4375
  "char": "o",
4315
4376
  "description": "Output format",
@@ -4323,11 +4384,25 @@
4323
4384
  "json"
4324
4385
  ],
4325
4386
  "type": "option"
4387
+ },
4388
+ "require-token": {
4389
+ "description": "Whether to require a token for documentation access",
4390
+ "name": "require-token",
4391
+ "required": false,
4392
+ "allowNo": true,
4393
+ "type": "boolean"
4394
+ },
4395
+ "swagger": {
4396
+ "description": "Enable or disable swagger documentation",
4397
+ "name": "swagger",
4398
+ "required": false,
4399
+ "allowNo": true,
4400
+ "type": "boolean"
4326
4401
  }
4327
4402
  },
4328
4403
  "hasDynamicHelp": false,
4329
4404
  "hiddenAliases": [],
4330
- "id": "workspace:get",
4405
+ "id": "workspace:edit",
4331
4406
  "pluginAlias": "@xano/cli",
4332
4407
  "pluginName": "@xano/cli",
4333
4408
  "pluginType": "core",
@@ -4338,7 +4413,7 @@
4338
4413
  "dist",
4339
4414
  "commands",
4340
4415
  "workspace",
4341
- "get",
4416
+ "edit",
4342
4417
  "index.js"
4343
4418
  ]
4344
4419
  },
@@ -4498,81 +4573,6 @@
4498
4573
  "index.js"
4499
4574
  ]
4500
4575
  },
4501
- "workspace:delete": {
4502
- "aliases": [],
4503
- "args": {
4504
- "workspace_id": {
4505
- "description": "Workspace ID to delete",
4506
- "name": "workspace_id",
4507
- "required": true
4508
- }
4509
- },
4510
- "description": "Delete a workspace via the Xano Metadata API. Cannot delete workspaces with active tenants.",
4511
- "examples": [
4512
- "$ xano workspace delete 123\nAre you sure you want to delete workspace 123? This action cannot be undone. (y/N) y\nDeleted workspace 123\n",
4513
- "$ xano workspace delete 123 --force\nDeleted workspace 123\n",
4514
- "$ xano workspace delete 123 -f -o json\n{\n \"deleted\": true,\n \"workspace_id\": 123\n}\n"
4515
- ],
4516
- "flags": {
4517
- "profile": {
4518
- "char": "p",
4519
- "description": "Profile to use (uses default profile if not specified)",
4520
- "env": "XANO_PROFILE",
4521
- "name": "profile",
4522
- "required": false,
4523
- "hasDynamicHelp": false,
4524
- "multiple": false,
4525
- "type": "option"
4526
- },
4527
- "verbose": {
4528
- "char": "v",
4529
- "description": "Show detailed request/response information",
4530
- "env": "XANO_VERBOSE",
4531
- "name": "verbose",
4532
- "required": false,
4533
- "allowNo": false,
4534
- "type": "boolean"
4535
- },
4536
- "force": {
4537
- "char": "f",
4538
- "description": "Skip confirmation prompt",
4539
- "name": "force",
4540
- "required": false,
4541
- "allowNo": false,
4542
- "type": "boolean"
4543
- },
4544
- "output": {
4545
- "char": "o",
4546
- "description": "Output format",
4547
- "name": "output",
4548
- "required": false,
4549
- "default": "summary",
4550
- "hasDynamicHelp": false,
4551
- "multiple": false,
4552
- "options": [
4553
- "summary",
4554
- "json"
4555
- ],
4556
- "type": "option"
4557
- }
4558
- },
4559
- "hasDynamicHelp": false,
4560
- "hiddenAliases": [],
4561
- "id": "workspace:delete",
4562
- "pluginAlias": "@xano/cli",
4563
- "pluginName": "@xano/cli",
4564
- "pluginType": "core",
4565
- "strict": true,
4566
- "enableJsonFlag": false,
4567
- "isESM": true,
4568
- "relativePath": [
4569
- "dist",
4570
- "commands",
4571
- "workspace",
4572
- "delete",
4573
- "index.js"
4574
- ]
4575
- },
4576
4576
  "workspace:push": {
4577
4577
  "aliases": [],
4578
4578
  "args": {
@@ -4588,6 +4588,8 @@
4588
4588
  "$ xano workspace push ./output -w 40\nPushed 15 documents from ./output\n",
4589
4589
  "$ xano workspace push ./backup --profile production\nPushed 58 documents from ./backup\n",
4590
4590
  "$ xano workspace push ./my-workspace -b dev\nPushed 42 documents from ./my-workspace\n",
4591
+ "$ xano workspace push ./my-functions --partial\nPush some files without a workspace block (implies --no-delete)\n",
4592
+ "$ xano workspace push ./my-workspace --no-delete\nPatch files without deleting existing workspace objects\n",
4591
4593
  "$ xano workspace push ./my-workspace --no-records\nPush schema only, skip importing table records\n",
4592
4594
  "$ xano workspace push ./my-workspace --no-env\nPush without overwriting environment variables\n",
4593
4595
  "$ xano workspace push ./my-workspace --truncate\nTruncate all table records before importing\n",
@@ -4623,6 +4625,13 @@
4623
4625
  "multiple": false,
4624
4626
  "type": "option"
4625
4627
  },
4628
+ "delete": {
4629
+ "description": "Delete workspace objects not included in the push (default: false)",
4630
+ "name": "delete",
4631
+ "required": false,
4632
+ "allowNo": true,
4633
+ "type": "boolean"
4634
+ },
4626
4635
  "env": {
4627
4636
  "description": "Include environment variables in import (default: true, use --no-env to exclude)",
4628
4637
  "name": "env",
@@ -4630,6 +4639,13 @@
4630
4639
  "allowNo": true,
4631
4640
  "type": "boolean"
4632
4641
  },
4642
+ "partial": {
4643
+ "description": "Partial push — workspace block is not required, existing objects are kept (implies --no-delete)",
4644
+ "name": "partial",
4645
+ "required": false,
4646
+ "allowNo": false,
4647
+ "type": "boolean"
4648
+ },
4633
4649
  "records": {
4634
4650
  "description": "Include records in import (default: true, use --no-records to exclude)",
4635
4651
  "name": "records",
@@ -4961,106 +4977,20 @@
4961
4977
  "index.js"
4962
4978
  ]
4963
4979
  },
4964
- "tenant:backup:create": {
4965
- "aliases": [],
4966
- "args": {
4967
- "tenant_name": {
4968
- "description": "Tenant name to back up",
4969
- "name": "tenant_name",
4970
- "required": true
4971
- }
4972
- },
4973
- "description": "Create a backup for a tenant",
4974
- "examples": [
4975
- "$ xano tenant backup create t1234-abcd-xyz1 --description \"Pre-deploy backup\"\nCreated backup #15 for tenant t1234-abcd-xyz1\n",
4976
- "$ xano tenant backup create t1234-abcd-xyz1 -d \"Daily backup\" -o json"
4977
- ],
4978
- "flags": {
4979
- "profile": {
4980
- "char": "p",
4981
- "description": "Profile to use (uses default profile if not specified)",
4982
- "env": "XANO_PROFILE",
4983
- "name": "profile",
4984
- "required": false,
4985
- "hasDynamicHelp": false,
4986
- "multiple": false,
4987
- "type": "option"
4988
- },
4989
- "verbose": {
4990
- "char": "v",
4991
- "description": "Show detailed request/response information",
4992
- "env": "XANO_VERBOSE",
4993
- "name": "verbose",
4994
- "required": false,
4995
- "allowNo": false,
4996
- "type": "boolean"
4997
- },
4998
- "description": {
4999
- "char": "d",
5000
- "description": "Backup description",
5001
- "name": "description",
5002
- "required": false,
5003
- "default": "",
5004
- "hasDynamicHelp": false,
5005
- "multiple": false,
5006
- "type": "option"
5007
- },
5008
- "output": {
5009
- "char": "o",
5010
- "description": "Output format",
5011
- "name": "output",
5012
- "required": false,
5013
- "default": "summary",
5014
- "hasDynamicHelp": false,
5015
- "multiple": false,
5016
- "options": [
5017
- "summary",
5018
- "json"
5019
- ],
5020
- "type": "option"
5021
- },
5022
- "workspace": {
5023
- "char": "w",
5024
- "description": "Workspace ID (uses profile workspace if not provided)",
5025
- "name": "workspace",
5026
- "required": false,
5027
- "hasDynamicHelp": false,
5028
- "multiple": false,
5029
- "type": "option"
5030
- }
5031
- },
5032
- "hasDynamicHelp": false,
5033
- "hiddenAliases": [],
5034
- "id": "tenant:backup:create",
5035
- "pluginAlias": "@xano/cli",
5036
- "pluginName": "@xano/cli",
5037
- "pluginType": "core",
5038
- "strict": true,
5039
- "enableJsonFlag": false,
5040
- "isESM": true,
5041
- "relativePath": [
5042
- "dist",
5043
- "commands",
5044
- "tenant",
5045
- "backup",
5046
- "create",
5047
- "index.js"
5048
- ]
5049
- },
5050
- "tenant:backup:export": {
4980
+ "tenant:backup:delete": {
5051
4981
  "aliases": [],
5052
4982
  "args": {
5053
4983
  "tenant_name": {
5054
- "description": "Tenant name to export backup from",
4984
+ "description": "Tenant name that owns the backup",
5055
4985
  "name": "tenant_name",
5056
4986
  "required": true
5057
4987
  }
5058
4988
  },
5059
- "description": "Export (download) a tenant backup to a local file",
4989
+ "description": "Delete a tenant backup permanently. This action cannot be undone.",
5060
4990
  "examples": [
5061
- "$ xano tenant backup export t1234-abcd-xyz1 --backup_id 10\nDownloaded backup #10 to ./tenant-t1234-abcd-xyz1-backup-10.tar.gz\n",
5062
- "$ xano tenant backup export t1234-abcd-xyz1 --backup_id 10 --output ./backups/my-backup.tar.gz",
5063
- "$ xano tenant backup export t1234-abcd-xyz1 --backup_id 10 -o json"
4991
+ "$ xano tenant backup delete t1234-abcd-xyz1 --backup_id 10\nAre you sure you want to delete backup #10? This action cannot be undone. (y/N) y\nDeleted backup #10\n",
4992
+ "$ xano tenant backup delete t1234-abcd-xyz1 --backup_id 10 --force",
4993
+ "$ xano tenant backup delete t1234-abcd-xyz1 --backup_id 10 -o json"
5064
4994
  ],
5065
4995
  "flags": {
5066
4996
  "profile": {
@@ -5083,33 +5013,33 @@
5083
5013
  "type": "boolean"
5084
5014
  },
5085
5015
  "backup_id": {
5086
- "description": "Backup ID to export",
5016
+ "description": "Backup ID to delete",
5087
5017
  "name": "backup_id",
5088
5018
  "required": true,
5089
5019
  "hasDynamicHelp": false,
5090
5020
  "multiple": false,
5091
5021
  "type": "option"
5092
5022
  },
5093
- "format": {
5094
- "char": "o",
5095
- "description": "Output format",
5096
- "name": "format",
5023
+ "force": {
5024
+ "char": "f",
5025
+ "description": "Skip confirmation prompt",
5026
+ "name": "force",
5097
5027
  "required": false,
5098
- "default": "summary",
5099
- "hasDynamicHelp": false,
5100
- "multiple": false,
5101
- "options": [
5102
- "summary",
5103
- "json"
5104
- ],
5105
- "type": "option"
5028
+ "allowNo": false,
5029
+ "type": "boolean"
5106
5030
  },
5107
5031
  "output": {
5108
- "description": "Output file path (defaults to ./tenant-{name}-backup-{backup_id}.tar.gz)",
5032
+ "char": "o",
5033
+ "description": "Output format",
5109
5034
  "name": "output",
5110
5035
  "required": false,
5036
+ "default": "summary",
5111
5037
  "hasDynamicHelp": false,
5112
5038
  "multiple": false,
5039
+ "options": [
5040
+ "summary",
5041
+ "json"
5042
+ ],
5113
5043
  "type": "option"
5114
5044
  },
5115
5045
  "workspace": {
@@ -5124,7 +5054,7 @@
5124
5054
  },
5125
5055
  "hasDynamicHelp": false,
5126
5056
  "hiddenAliases": [],
5127
- "id": "tenant:backup:export",
5057
+ "id": "tenant:backup:delete",
5128
5058
  "pluginAlias": "@xano/cli",
5129
5059
  "pluginName": "@xano/cli",
5130
5060
  "pluginType": "core",
@@ -5136,23 +5066,23 @@
5136
5066
  "commands",
5137
5067
  "tenant",
5138
5068
  "backup",
5139
- "export",
5069
+ "delete",
5140
5070
  "index.js"
5141
5071
  ]
5142
5072
  },
5143
- "tenant:backup:import": {
5073
+ "tenant:backup:create": {
5144
5074
  "aliases": [],
5145
5075
  "args": {
5146
5076
  "tenant_name": {
5147
- "description": "Tenant name to import backup into",
5077
+ "description": "Tenant name to back up",
5148
5078
  "name": "tenant_name",
5149
5079
  "required": true
5150
5080
  }
5151
5081
  },
5152
- "description": "Import a backup file into a tenant",
5082
+ "description": "Create a backup for a tenant",
5153
5083
  "examples": [
5154
- "$ xano tenant backup import t1234-abcd-xyz1 --file ./my-backup.tar.gz\nImported backup as #15 for tenant t1234-abcd-xyz1\n",
5155
- "$ xano tenant backup import t1234-abcd-xyz1 --file ./my-backup.tar.gz --description \"Restored from production\" -o json"
5084
+ "$ xano tenant backup create t1234-abcd-xyz1 --description \"Pre-deploy backup\"\nCreated backup #15 for tenant t1234-abcd-xyz1\n",
5085
+ "$ xano tenant backup create t1234-abcd-xyz1 -d \"Daily backup\" -o json"
5156
5086
  ],
5157
5087
  "flags": {
5158
5088
  "profile": {
@@ -5184,15 +5114,6 @@
5184
5114
  "multiple": false,
5185
5115
  "type": "option"
5186
5116
  },
5187
- "file": {
5188
- "char": "f",
5189
- "description": "Path to the backup file (.tar.gz)",
5190
- "name": "file",
5191
- "required": true,
5192
- "hasDynamicHelp": false,
5193
- "multiple": false,
5194
- "type": "option"
5195
- },
5196
5117
  "output": {
5197
5118
  "char": "o",
5198
5119
  "description": "Output format",
@@ -5219,7 +5140,7 @@
5219
5140
  },
5220
5141
  "hasDynamicHelp": false,
5221
5142
  "hiddenAliases": [],
5222
- "id": "tenant:backup:import",
5143
+ "id": "tenant:backup:create",
5223
5144
  "pluginAlias": "@xano/cli",
5224
5145
  "pluginName": "@xano/cli",
5225
5146
  "pluginType": "core",
@@ -5231,24 +5152,24 @@
5231
5152
  "commands",
5232
5153
  "tenant",
5233
5154
  "backup",
5234
- "import",
5155
+ "create",
5235
5156
  "index.js"
5236
5157
  ]
5237
5158
  },
5238
- "tenant:backup:delete": {
5159
+ "tenant:backup:export": {
5239
5160
  "aliases": [],
5240
5161
  "args": {
5241
5162
  "tenant_name": {
5242
- "description": "Tenant name that owns the backup",
5163
+ "description": "Tenant name to export backup from",
5243
5164
  "name": "tenant_name",
5244
5165
  "required": true
5245
5166
  }
5246
5167
  },
5247
- "description": "Delete a tenant backup permanently. This action cannot be undone.",
5168
+ "description": "Export (download) a tenant backup to a local file",
5248
5169
  "examples": [
5249
- "$ xano tenant backup delete t1234-abcd-xyz1 --backup_id 10\nAre you sure you want to delete backup #10? This action cannot be undone. (y/N) y\nDeleted backup #10\n",
5250
- "$ xano tenant backup delete t1234-abcd-xyz1 --backup_id 10 --force",
5251
- "$ xano tenant backup delete t1234-abcd-xyz1 --backup_id 10 -o json"
5170
+ "$ xano tenant backup export t1234-abcd-xyz1 --backup_id 10\nDownloaded backup #10 to ./tenant-t1234-abcd-xyz1-backup-10.tar.gz\n",
5171
+ "$ xano tenant backup export t1234-abcd-xyz1 --backup_id 10 --output ./backups/my-backup.tar.gz",
5172
+ "$ xano tenant backup export t1234-abcd-xyz1 --backup_id 10 -o json"
5252
5173
  ],
5253
5174
  "flags": {
5254
5175
  "profile": {
@@ -5271,25 +5192,17 @@
5271
5192
  "type": "boolean"
5272
5193
  },
5273
5194
  "backup_id": {
5274
- "description": "Backup ID to delete",
5195
+ "description": "Backup ID to export",
5275
5196
  "name": "backup_id",
5276
5197
  "required": true,
5277
5198
  "hasDynamicHelp": false,
5278
5199
  "multiple": false,
5279
5200
  "type": "option"
5280
5201
  },
5281
- "force": {
5282
- "char": "f",
5283
- "description": "Skip confirmation prompt",
5284
- "name": "force",
5285
- "required": false,
5286
- "allowNo": false,
5287
- "type": "boolean"
5288
- },
5289
- "output": {
5202
+ "format": {
5290
5203
  "char": "o",
5291
5204
  "description": "Output format",
5292
- "name": "output",
5205
+ "name": "format",
5293
5206
  "required": false,
5294
5207
  "default": "summary",
5295
5208
  "hasDynamicHelp": false,
@@ -5300,6 +5213,14 @@
5300
5213
  ],
5301
5214
  "type": "option"
5302
5215
  },
5216
+ "output": {
5217
+ "description": "Output file path (defaults to ./tenant-{name}-backup-{backup_id}.tar.gz)",
5218
+ "name": "output",
5219
+ "required": false,
5220
+ "hasDynamicHelp": false,
5221
+ "multiple": false,
5222
+ "type": "option"
5223
+ },
5303
5224
  "workspace": {
5304
5225
  "char": "w",
5305
5226
  "description": "Workspace ID (uses profile workspace if not provided)",
@@ -5312,7 +5233,7 @@
5312
5233
  },
5313
5234
  "hasDynamicHelp": false,
5314
5235
  "hiddenAliases": [],
5315
- "id": "tenant:backup:delete",
5236
+ "id": "tenant:backup:export",
5316
5237
  "pluginAlias": "@xano/cli",
5317
5238
  "pluginName": "@xano/cli",
5318
5239
  "pluginType": "core",
@@ -5324,7 +5245,7 @@
5324
5245
  "commands",
5325
5246
  "tenant",
5326
5247
  "backup",
5327
- "delete",
5248
+ "export",
5328
5249
  "index.js"
5329
5250
  ]
5330
5251
  },
@@ -5413,19 +5334,19 @@
5413
5334
  "index.js"
5414
5335
  ]
5415
5336
  },
5416
- "tenant:backup:restore": {
5337
+ "tenant:backup:import": {
5417
5338
  "aliases": [],
5418
5339
  "args": {
5419
5340
  "tenant_name": {
5420
- "description": "Tenant name to restore",
5341
+ "description": "Tenant name to import backup into",
5421
5342
  "name": "tenant_name",
5422
5343
  "required": true
5423
5344
  }
5424
5345
  },
5425
- "description": "Restore a tenant from a backup. This replaces the current tenant data.",
5346
+ "description": "Import a backup file into a tenant",
5426
5347
  "examples": [
5427
- "$ xano tenant backup restore t1234-abcd-xyz1 --backup_id 10\nAre you sure you want to restore tenant t1234-abcd-xyz1 from backup 10? This will replace current data. (y/N) y\nRestored tenant t1234-abcd-xyz1 from backup #10\n",
5428
- "$ xano tenant backup restore t1234-abcd-xyz1 --backup_id 10 --force -o json"
5348
+ "$ xano tenant backup import t1234-abcd-xyz1 --file ./my-backup.tar.gz\nImported backup as #15 for tenant t1234-abcd-xyz1\n",
5349
+ "$ xano tenant backup import t1234-abcd-xyz1 --file ./my-backup.tar.gz --description \"Restored from production\" -o json"
5429
5350
  ],
5430
5351
  "flags": {
5431
5352
  "profile": {
@@ -5447,21 +5368,24 @@
5447
5368
  "allowNo": false,
5448
5369
  "type": "boolean"
5449
5370
  },
5450
- "backup_id": {
5451
- "description": "Backup ID to restore from",
5452
- "name": "backup_id",
5453
- "required": true,
5371
+ "description": {
5372
+ "char": "d",
5373
+ "description": "Backup description",
5374
+ "name": "description",
5375
+ "required": false,
5376
+ "default": "",
5454
5377
  "hasDynamicHelp": false,
5455
5378
  "multiple": false,
5456
5379
  "type": "option"
5457
5380
  },
5458
- "force": {
5381
+ "file": {
5459
5382
  "char": "f",
5460
- "description": "Skip confirmation prompt",
5461
- "name": "force",
5462
- "required": false,
5463
- "allowNo": false,
5464
- "type": "boolean"
5383
+ "description": "Path to the backup file (.tar.gz)",
5384
+ "name": "file",
5385
+ "required": true,
5386
+ "hasDynamicHelp": false,
5387
+ "multiple": false,
5388
+ "type": "option"
5465
5389
  },
5466
5390
  "output": {
5467
5391
  "char": "o",
@@ -5489,7 +5413,7 @@
5489
5413
  },
5490
5414
  "hasDynamicHelp": false,
5491
5415
  "hiddenAliases": [],
5492
- "id": "tenant:backup:restore",
5416
+ "id": "tenant:backup:import",
5493
5417
  "pluginAlias": "@xano/cli",
5494
5418
  "pluginName": "@xano/cli",
5495
5419
  "pluginType": "core",
@@ -5501,17 +5425,23 @@
5501
5425
  "commands",
5502
5426
  "tenant",
5503
5427
  "backup",
5504
- "restore",
5428
+ "import",
5505
5429
  "index.js"
5506
5430
  ]
5507
5431
  },
5508
- "tenant:cluster:create": {
5432
+ "tenant:backup:restore": {
5509
5433
  "aliases": [],
5510
- "args": {},
5511
- "description": "Create a new tenant cluster",
5434
+ "args": {
5435
+ "tenant_name": {
5436
+ "description": "Tenant name to restore",
5437
+ "name": "tenant_name",
5438
+ "required": true
5439
+ }
5440
+ },
5441
+ "description": "Restore a tenant from a backup. This replaces the current tenant data.",
5512
5442
  "examples": [
5513
- "$ xano tenant cluster create --name \"us-east-1\" --credentials_file ./kubeconfig.yaml\nCreated tenant cluster: us-east-1 (standard) - ID: 3\n",
5514
- "$ xano tenant cluster create --name \"eu-west-1\" --credentials \"...\" --type run --description \"EU run cluster\" -o json"
5443
+ "$ xano tenant backup restore t1234-abcd-xyz1 --backup_id 10\nAre you sure you want to restore tenant t1234-abcd-xyz1 from backup 10? This will replace current data. (y/N) y\nRestored tenant t1234-abcd-xyz1 from backup #10\n",
5444
+ "$ xano tenant backup restore t1234-abcd-xyz1 --backup_id 10 --force -o json"
5515
5445
  ],
5516
5446
  "flags": {
5517
5447
  "profile": {
@@ -5533,53 +5463,21 @@
5533
5463
  "allowNo": false,
5534
5464
  "type": "boolean"
5535
5465
  },
5536
- "credentials": {
5537
- "description": "Kubeconfig credentials (raw text)",
5538
- "exclusive": [
5539
- "credentials_file"
5540
- ],
5541
- "name": "credentials",
5542
- "required": false,
5543
- "hasDynamicHelp": false,
5544
- "multiple": false,
5545
- "type": "option"
5546
- },
5547
- "credentials_file": {
5548
- "description": "Path to kubeconfig credentials file",
5549
- "exclusive": [
5550
- "credentials"
5551
- ],
5552
- "name": "credentials_file",
5553
- "required": false,
5554
- "hasDynamicHelp": false,
5555
- "multiple": false,
5556
- "type": "option"
5557
- },
5558
- "description": {
5559
- "char": "d",
5560
- "description": "Cluster description",
5561
- "name": "description",
5562
- "required": false,
5466
+ "backup_id": {
5467
+ "description": "Backup ID to restore from",
5468
+ "name": "backup_id",
5469
+ "required": true,
5563
5470
  "hasDynamicHelp": false,
5564
5471
  "multiple": false,
5565
5472
  "type": "option"
5566
5473
  },
5567
- "domain": {
5568
- "description": "Custom domain for the cluster",
5569
- "name": "domain",
5474
+ "force": {
5475
+ "char": "f",
5476
+ "description": "Skip confirmation prompt",
5477
+ "name": "force",
5570
5478
  "required": false,
5571
- "hasDynamicHelp": false,
5572
- "multiple": false,
5573
- "type": "option"
5574
- },
5575
- "name": {
5576
- "char": "n",
5577
- "description": "Cluster name",
5578
- "name": "name",
5579
- "required": true,
5580
- "hasDynamicHelp": false,
5581
- "multiple": false,
5582
- "type": "option"
5479
+ "allowNo": false,
5480
+ "type": "boolean"
5583
5481
  },
5584
5482
  "output": {
5585
5483
  "char": "o",
@@ -5595,23 +5493,19 @@
5595
5493
  ],
5596
5494
  "type": "option"
5597
5495
  },
5598
- "type": {
5599
- "description": "Cluster type",
5600
- "name": "type",
5496
+ "workspace": {
5497
+ "char": "w",
5498
+ "description": "Workspace ID (uses profile workspace if not provided)",
5499
+ "name": "workspace",
5601
5500
  "required": false,
5602
- "default": "standard",
5603
5501
  "hasDynamicHelp": false,
5604
5502
  "multiple": false,
5605
- "options": [
5606
- "standard",
5607
- "run"
5608
- ],
5609
5503
  "type": "option"
5610
5504
  }
5611
5505
  },
5612
5506
  "hasDynamicHelp": false,
5613
5507
  "hiddenAliases": [],
5614
- "id": "tenant:cluster:create",
5508
+ "id": "tenant:backup:restore",
5615
5509
  "pluginAlias": "@xano/cli",
5616
5510
  "pluginName": "@xano/cli",
5617
5511
  "pluginType": "core",
@@ -5622,24 +5516,18 @@
5622
5516
  "dist",
5623
5517
  "commands",
5624
5518
  "tenant",
5625
- "cluster",
5626
- "create",
5519
+ "backup",
5520
+ "restore",
5627
5521
  "index.js"
5628
5522
  ]
5629
5523
  },
5630
- "tenant:cluster:edit": {
5524
+ "tenant:cluster:create": {
5631
5525
  "aliases": [],
5632
- "args": {
5633
- "cluster_id": {
5634
- "description": "Cluster ID to edit",
5635
- "name": "cluster_id",
5636
- "required": true
5637
- }
5638
- },
5639
- "description": "Update an existing tenant cluster",
5526
+ "args": {},
5527
+ "description": "Create a new tenant cluster",
5640
5528
  "examples": [
5641
- "$ xano tenant cluster edit 1 --name \"us-east-1-updated\" --description \"Updated cluster\" --domain \"us-east.xano.io\" --type standard\nUpdated tenant cluster: us-east-1-updated (standard) - ID: 1\n",
5642
- "$ xano tenant cluster edit 1 --name \"eu-west\" --description \"\" --domain \"\" --type run -o json"
5529
+ "$ xano tenant cluster create --name \"us-east-1\" --credentials_file ./kubeconfig.yaml\nCreated tenant cluster: us-east-1 (standard) - ID: 3\n",
5530
+ "$ xano tenant cluster create --name \"eu-west-1\" --credentials \"...\" --type run --description \"EU run cluster\" -o json"
5643
5531
  ],
5644
5532
  "flags": {
5645
5533
  "profile": {
@@ -5661,11 +5549,33 @@
5661
5549
  "allowNo": false,
5662
5550
  "type": "boolean"
5663
5551
  },
5552
+ "credentials": {
5553
+ "description": "Kubeconfig credentials (raw text)",
5554
+ "exclusive": [
5555
+ "credentials_file"
5556
+ ],
5557
+ "name": "credentials",
5558
+ "required": false,
5559
+ "hasDynamicHelp": false,
5560
+ "multiple": false,
5561
+ "type": "option"
5562
+ },
5563
+ "credentials_file": {
5564
+ "description": "Path to kubeconfig credentials file",
5565
+ "exclusive": [
5566
+ "credentials"
5567
+ ],
5568
+ "name": "credentials_file",
5569
+ "required": false,
5570
+ "hasDynamicHelp": false,
5571
+ "multiple": false,
5572
+ "type": "option"
5573
+ },
5664
5574
  "description": {
5665
5575
  "char": "d",
5666
5576
  "description": "Cluster description",
5667
5577
  "name": "description",
5668
- "required": true,
5578
+ "required": false,
5669
5579
  "hasDynamicHelp": false,
5670
5580
  "multiple": false,
5671
5581
  "type": "option"
@@ -5673,7 +5583,7 @@
5673
5583
  "domain": {
5674
5584
  "description": "Custom domain for the cluster",
5675
5585
  "name": "domain",
5676
- "required": true,
5586
+ "required": false,
5677
5587
  "hasDynamicHelp": false,
5678
5588
  "multiple": false,
5679
5589
  "type": "option"
@@ -5704,7 +5614,8 @@
5704
5614
  "type": {
5705
5615
  "description": "Cluster type",
5706
5616
  "name": "type",
5707
- "required": true,
5617
+ "required": false,
5618
+ "default": "standard",
5708
5619
  "hasDynamicHelp": false,
5709
5620
  "multiple": false,
5710
5621
  "options": [
@@ -5716,7 +5627,7 @@
5716
5627
  },
5717
5628
  "hasDynamicHelp": false,
5718
5629
  "hiddenAliases": [],
5719
- "id": "tenant:cluster:edit",
5630
+ "id": "tenant:cluster:create",
5720
5631
  "pluginAlias": "@xano/cli",
5721
5632
  "pluginName": "@xano/cli",
5722
5633
  "pluginType": "core",
@@ -5728,7 +5639,7 @@
5728
5639
  "commands",
5729
5640
  "tenant",
5730
5641
  "cluster",
5731
- "edit",
5642
+ "create",
5732
5643
  "index.js"
5733
5644
  ]
5734
5645
  },
@@ -5799,13 +5710,19 @@
5799
5710
  "index.js"
5800
5711
  ]
5801
5712
  },
5802
- "tenant:cluster:list": {
5713
+ "tenant:cluster:edit": {
5803
5714
  "aliases": [],
5804
- "args": {},
5805
- "description": "List all tenant clusters",
5715
+ "args": {
5716
+ "cluster_id": {
5717
+ "description": "Cluster ID to edit",
5718
+ "name": "cluster_id",
5719
+ "required": true
5720
+ }
5721
+ },
5722
+ "description": "Update an existing tenant cluster",
5806
5723
  "examples": [
5807
- "$ xano tenant cluster list\nTenant clusters:\n - us-east-1 (standard) [ID: 1]\n - eu-west-1 (run) [ID: 2]\n",
5808
- "$ xano tenant cluster list --output json"
5724
+ "$ xano tenant cluster edit 1 --name \"us-east-1-updated\" --description \"Updated cluster\" --domain \"us-east.xano.io\" --type standard\nUpdated tenant cluster: us-east-1-updated (standard) - ID: 1\n",
5725
+ "$ xano tenant cluster edit 1 --name \"eu-west\" --description \"\" --domain \"\" --type run -o json"
5809
5726
  ],
5810
5727
  "flags": {
5811
5728
  "profile": {
@@ -5827,6 +5744,32 @@
5827
5744
  "allowNo": false,
5828
5745
  "type": "boolean"
5829
5746
  },
5747
+ "description": {
5748
+ "char": "d",
5749
+ "description": "Cluster description",
5750
+ "name": "description",
5751
+ "required": true,
5752
+ "hasDynamicHelp": false,
5753
+ "multiple": false,
5754
+ "type": "option"
5755
+ },
5756
+ "domain": {
5757
+ "description": "Custom domain for the cluster",
5758
+ "name": "domain",
5759
+ "required": true,
5760
+ "hasDynamicHelp": false,
5761
+ "multiple": false,
5762
+ "type": "option"
5763
+ },
5764
+ "name": {
5765
+ "char": "n",
5766
+ "description": "Cluster name",
5767
+ "name": "name",
5768
+ "required": true,
5769
+ "hasDynamicHelp": false,
5770
+ "multiple": false,
5771
+ "type": "option"
5772
+ },
5830
5773
  "output": {
5831
5774
  "char": "o",
5832
5775
  "description": "Output format",
@@ -5840,11 +5783,23 @@
5840
5783
  "json"
5841
5784
  ],
5842
5785
  "type": "option"
5786
+ },
5787
+ "type": {
5788
+ "description": "Cluster type",
5789
+ "name": "type",
5790
+ "required": true,
5791
+ "hasDynamicHelp": false,
5792
+ "multiple": false,
5793
+ "options": [
5794
+ "standard",
5795
+ "run"
5796
+ ],
5797
+ "type": "option"
5843
5798
  }
5844
5799
  },
5845
5800
  "hasDynamicHelp": false,
5846
5801
  "hiddenAliases": [],
5847
- "id": "tenant:cluster:list",
5802
+ "id": "tenant:cluster:edit",
5848
5803
  "pluginAlias": "@xano/cli",
5849
5804
  "pluginName": "@xano/cli",
5850
5805
  "pluginType": "core",
@@ -5856,24 +5811,24 @@
5856
5811
  "commands",
5857
5812
  "tenant",
5858
5813
  "cluster",
5859
- "list",
5814
+ "edit",
5860
5815
  "index.js"
5861
5816
  ]
5862
5817
  },
5863
- "tenant:env:delete": {
5818
+ "tenant:cluster:delete": {
5864
5819
  "aliases": [],
5865
5820
  "args": {
5866
- "tenant_name": {
5867
- "description": "Tenant name",
5868
- "name": "tenant_name",
5821
+ "cluster_id": {
5822
+ "description": "Cluster ID to delete",
5823
+ "name": "cluster_id",
5869
5824
  "required": true
5870
5825
  }
5871
5826
  },
5872
- "description": "Delete an environment variable from a tenant",
5827
+ "description": "Delete a tenant cluster. This action cannot be undone.",
5873
5828
  "examples": [
5874
- "$ xano tenant env delete my-tenant --name DATABASE_URL\nAre you sure you want to delete environment variable 'DATABASE_URL' from tenant my-tenant? (y/N) y\nEnvironment variable 'DATABASE_URL' deleted from tenant my-tenant\n",
5875
- "$ xano tenant env delete my-tenant --name DATABASE_URL --force\nEnvironment variable 'DATABASE_URL' deleted from tenant my-tenant\n",
5876
- "$ xano tenant env delete my-tenant --name DATABASE_URL -f -w 5 -o json"
5829
+ "$ xano tenant cluster delete 3\nAre you sure you want to delete tenant cluster 3? This action cannot be undone. (y/N) y\nTenant cluster 3 deleted successfully\n",
5830
+ "$ xano tenant cluster delete 3 --force\nTenant cluster 3 deleted successfully\n",
5831
+ "$ xano tenant cluster delete 3 -f -o json"
5877
5832
  ],
5878
5833
  "flags": {
5879
5834
  "profile": {
@@ -5903,15 +5858,6 @@
5903
5858
  "allowNo": false,
5904
5859
  "type": "boolean"
5905
5860
  },
5906
- "name": {
5907
- "char": "n",
5908
- "description": "Environment variable name",
5909
- "name": "name",
5910
- "required": true,
5911
- "hasDynamicHelp": false,
5912
- "multiple": false,
5913
- "type": "option"
5914
- },
5915
5861
  "output": {
5916
5862
  "char": "o",
5917
5863
  "description": "Output format",
@@ -5925,20 +5871,11 @@
5925
5871
  "json"
5926
5872
  ],
5927
5873
  "type": "option"
5928
- },
5929
- "workspace": {
5930
- "char": "w",
5931
- "description": "Workspace ID (uses profile workspace if not provided)",
5932
- "name": "workspace",
5933
- "required": false,
5934
- "hasDynamicHelp": false,
5935
- "multiple": false,
5936
- "type": "option"
5937
5874
  }
5938
5875
  },
5939
5876
  "hasDynamicHelp": false,
5940
5877
  "hiddenAliases": [],
5941
- "id": "tenant:env:delete",
5878
+ "id": "tenant:cluster:delete",
5942
5879
  "pluginAlias": "@xano/cli",
5943
5880
  "pluginName": "@xano/cli",
5944
5881
  "pluginType": "core",
@@ -5949,7 +5886,7 @@
5949
5886
  "dist",
5950
5887
  "commands",
5951
5888
  "tenant",
5952
- "env",
5889
+ "cluster",
5953
5890
  "delete",
5954
5891
  "index.js"
5955
5892
  ]
@@ -6133,20 +6070,81 @@
6133
6070
  "index.js"
6134
6071
  ]
6135
6072
  },
6136
- "tenant:cluster:delete": {
6073
+ "tenant:cluster:list": {
6074
+ "aliases": [],
6075
+ "args": {},
6076
+ "description": "List all tenant clusters",
6077
+ "examples": [
6078
+ "$ xano tenant cluster list\nTenant clusters:\n - us-east-1 (standard) [ID: 1]\n - eu-west-1 (run) [ID: 2]\n",
6079
+ "$ xano tenant cluster list --output json"
6080
+ ],
6081
+ "flags": {
6082
+ "profile": {
6083
+ "char": "p",
6084
+ "description": "Profile to use (uses default profile if not specified)",
6085
+ "env": "XANO_PROFILE",
6086
+ "name": "profile",
6087
+ "required": false,
6088
+ "hasDynamicHelp": false,
6089
+ "multiple": false,
6090
+ "type": "option"
6091
+ },
6092
+ "verbose": {
6093
+ "char": "v",
6094
+ "description": "Show detailed request/response information",
6095
+ "env": "XANO_VERBOSE",
6096
+ "name": "verbose",
6097
+ "required": false,
6098
+ "allowNo": false,
6099
+ "type": "boolean"
6100
+ },
6101
+ "output": {
6102
+ "char": "o",
6103
+ "description": "Output format",
6104
+ "name": "output",
6105
+ "required": false,
6106
+ "default": "summary",
6107
+ "hasDynamicHelp": false,
6108
+ "multiple": false,
6109
+ "options": [
6110
+ "summary",
6111
+ "json"
6112
+ ],
6113
+ "type": "option"
6114
+ }
6115
+ },
6116
+ "hasDynamicHelp": false,
6117
+ "hiddenAliases": [],
6118
+ "id": "tenant:cluster:list",
6119
+ "pluginAlias": "@xano/cli",
6120
+ "pluginName": "@xano/cli",
6121
+ "pluginType": "core",
6122
+ "strict": true,
6123
+ "enableJsonFlag": false,
6124
+ "isESM": true,
6125
+ "relativePath": [
6126
+ "dist",
6127
+ "commands",
6128
+ "tenant",
6129
+ "cluster",
6130
+ "list",
6131
+ "index.js"
6132
+ ]
6133
+ },
6134
+ "tenant:env:delete": {
6137
6135
  "aliases": [],
6138
6136
  "args": {
6139
- "cluster_id": {
6140
- "description": "Cluster ID to delete",
6141
- "name": "cluster_id",
6137
+ "tenant_name": {
6138
+ "description": "Tenant name",
6139
+ "name": "tenant_name",
6142
6140
  "required": true
6143
6141
  }
6144
6142
  },
6145
- "description": "Delete a tenant cluster. This action cannot be undone.",
6143
+ "description": "Delete an environment variable from a tenant",
6146
6144
  "examples": [
6147
- "$ xano tenant cluster delete 3\nAre you sure you want to delete tenant cluster 3? This action cannot be undone. (y/N) y\nTenant cluster 3 deleted successfully\n",
6148
- "$ xano tenant cluster delete 3 --force\nTenant cluster 3 deleted successfully\n",
6149
- "$ xano tenant cluster delete 3 -f -o json"
6145
+ "$ xano tenant env delete my-tenant --name DATABASE_URL\nAre you sure you want to delete environment variable 'DATABASE_URL' from tenant my-tenant? (y/N) y\nEnvironment variable 'DATABASE_URL' deleted from tenant my-tenant\n",
6146
+ "$ xano tenant env delete my-tenant --name DATABASE_URL --force\nEnvironment variable 'DATABASE_URL' deleted from tenant my-tenant\n",
6147
+ "$ xano tenant env delete my-tenant --name DATABASE_URL -f -w 5 -o json"
6150
6148
  ],
6151
6149
  "flags": {
6152
6150
  "profile": {
@@ -6176,6 +6174,15 @@
6176
6174
  "allowNo": false,
6177
6175
  "type": "boolean"
6178
6176
  },
6177
+ "name": {
6178
+ "char": "n",
6179
+ "description": "Environment variable name",
6180
+ "name": "name",
6181
+ "required": true,
6182
+ "hasDynamicHelp": false,
6183
+ "multiple": false,
6184
+ "type": "option"
6185
+ },
6179
6186
  "output": {
6180
6187
  "char": "o",
6181
6188
  "description": "Output format",
@@ -6189,11 +6196,20 @@
6189
6196
  "json"
6190
6197
  ],
6191
6198
  "type": "option"
6199
+ },
6200
+ "workspace": {
6201
+ "char": "w",
6202
+ "description": "Workspace ID (uses profile workspace if not provided)",
6203
+ "name": "workspace",
6204
+ "required": false,
6205
+ "hasDynamicHelp": false,
6206
+ "multiple": false,
6207
+ "type": "option"
6192
6208
  }
6193
6209
  },
6194
6210
  "hasDynamicHelp": false,
6195
6211
  "hiddenAliases": [],
6196
- "id": "tenant:cluster:delete",
6212
+ "id": "tenant:env:delete",
6197
6213
  "pluginAlias": "@xano/cli",
6198
6214
  "pluginName": "@xano/cli",
6199
6215
  "pluginType": "core",
@@ -6204,7 +6220,7 @@
6204
6220
  "dist",
6205
6221
  "commands",
6206
6222
  "tenant",
6207
- "cluster",
6223
+ "env",
6208
6224
  "delete",
6209
6225
  "index.js"
6210
6226
  ]
@@ -6285,7 +6301,7 @@
6285
6301
  "index.js"
6286
6302
  ]
6287
6303
  },
6288
- "tenant:env:set_all": {
6304
+ "tenant:env:set": {
6289
6305
  "aliases": [],
6290
6306
  "args": {
6291
6307
  "tenant_name": {
@@ -6294,11 +6310,10 @@
6294
6310
  "required": true
6295
6311
  }
6296
6312
  },
6297
- "description": "Set all environment variables for a tenant from a YAML file (replaces all existing)",
6313
+ "description": "Set (create or update) an environment variable for a tenant",
6298
6314
  "examples": [
6299
- "$ xano tenant env set_all my-tenant\nReads from env_my-tenant.yaml\n",
6300
- "$ xano tenant env set_all my-tenant --file ./my-env.yaml",
6301
- "$ xano tenant env set_all my-tenant -o json"
6315
+ "$ xano tenant env set my-tenant --name DATABASE_URL --value postgres://localhost:5432/mydb\nEnvironment variable 'DATABASE_URL' set for tenant my-tenant\n",
6316
+ "$ xano tenant env set my-tenant --name DATABASE_URL --value postgres://localhost:5432/mydb -w 5 -o json"
6302
6317
  ],
6303
6318
  "flags": {
6304
6319
  "profile": {
@@ -6320,18 +6335,11 @@
6320
6335
  "allowNo": false,
6321
6336
  "type": "boolean"
6322
6337
  },
6323
- "clean": {
6324
- "description": "Remove the source file after successful upload",
6325
- "name": "clean",
6326
- "required": false,
6327
- "allowNo": false,
6328
- "type": "boolean"
6329
- },
6330
- "file": {
6331
- "char": "f",
6332
- "description": "Path to env file (default: env_<tenant_name>.yaml)",
6333
- "name": "file",
6334
- "required": false,
6338
+ "name": {
6339
+ "char": "n",
6340
+ "description": "Environment variable name",
6341
+ "name": "name",
6342
+ "required": true,
6335
6343
  "hasDynamicHelp": false,
6336
6344
  "multiple": false,
6337
6345
  "type": "option"
@@ -6350,6 +6358,14 @@
6350
6358
  ],
6351
6359
  "type": "option"
6352
6360
  },
6361
+ "value": {
6362
+ "description": "Environment variable value",
6363
+ "name": "value",
6364
+ "required": true,
6365
+ "hasDynamicHelp": false,
6366
+ "multiple": false,
6367
+ "type": "option"
6368
+ },
6353
6369
  "workspace": {
6354
6370
  "char": "w",
6355
6371
  "description": "Workspace ID (uses profile workspace if not provided)",
@@ -6362,7 +6378,7 @@
6362
6378
  },
6363
6379
  "hasDynamicHelp": false,
6364
6380
  "hiddenAliases": [],
6365
- "id": "tenant:env:set_all",
6381
+ "id": "tenant:env:set",
6366
6382
  "pluginAlias": "@xano/cli",
6367
6383
  "pluginName": "@xano/cli",
6368
6384
  "pluginType": "core",
@@ -6374,11 +6390,11 @@
6374
6390
  "commands",
6375
6391
  "tenant",
6376
6392
  "env",
6377
- "set_all",
6393
+ "set",
6378
6394
  "index.js"
6379
6395
  ]
6380
6396
  },
6381
- "tenant:env:set": {
6397
+ "tenant:env:set_all": {
6382
6398
  "aliases": [],
6383
6399
  "args": {
6384
6400
  "tenant_name": {
@@ -6387,10 +6403,11 @@
6387
6403
  "required": true
6388
6404
  }
6389
6405
  },
6390
- "description": "Set (create or update) an environment variable for a tenant",
6406
+ "description": "Set all environment variables for a tenant from a YAML file (replaces all existing)",
6391
6407
  "examples": [
6392
- "$ xano tenant env set my-tenant --name DATABASE_URL --value postgres://localhost:5432/mydb\nEnvironment variable 'DATABASE_URL' set for tenant my-tenant\n",
6393
- "$ xano tenant env set my-tenant --name DATABASE_URL --value postgres://localhost:5432/mydb -w 5 -o json"
6408
+ "$ xano tenant env set_all my-tenant\nReads from env_my-tenant.yaml\n",
6409
+ "$ xano tenant env set_all my-tenant --file ./my-env.yaml",
6410
+ "$ xano tenant env set_all my-tenant -o json"
6394
6411
  ],
6395
6412
  "flags": {
6396
6413
  "profile": {
@@ -6412,11 +6429,18 @@
6412
6429
  "allowNo": false,
6413
6430
  "type": "boolean"
6414
6431
  },
6415
- "name": {
6416
- "char": "n",
6417
- "description": "Environment variable name",
6418
- "name": "name",
6419
- "required": true,
6432
+ "clean": {
6433
+ "description": "Remove the source file after successful upload",
6434
+ "name": "clean",
6435
+ "required": false,
6436
+ "allowNo": false,
6437
+ "type": "boolean"
6438
+ },
6439
+ "file": {
6440
+ "char": "f",
6441
+ "description": "Path to env file (default: env_<tenant_name>.yaml)",
6442
+ "name": "file",
6443
+ "required": false,
6420
6444
  "hasDynamicHelp": false,
6421
6445
  "multiple": false,
6422
6446
  "type": "option"
@@ -6435,14 +6459,6 @@
6435
6459
  ],
6436
6460
  "type": "option"
6437
6461
  },
6438
- "value": {
6439
- "description": "Environment variable value",
6440
- "name": "value",
6441
- "required": true,
6442
- "hasDynamicHelp": false,
6443
- "multiple": false,
6444
- "type": "option"
6445
- },
6446
6462
  "workspace": {
6447
6463
  "char": "w",
6448
6464
  "description": "Workspace ID (uses profile workspace if not provided)",
@@ -6455,7 +6471,7 @@
6455
6471
  },
6456
6472
  "hasDynamicHelp": false,
6457
6473
  "hiddenAliases": [],
6458
- "id": "tenant:env:set",
6474
+ "id": "tenant:env:set_all",
6459
6475
  "pluginAlias": "@xano/cli",
6460
6476
  "pluginName": "@xano/cli",
6461
6477
  "pluginType": "core",
@@ -6467,7 +6483,7 @@
6467
6483
  "commands",
6468
6484
  "tenant",
6469
6485
  "env",
6470
- "set",
6486
+ "set_all",
6471
6487
  "index.js"
6472
6488
  ]
6473
6489
  },
@@ -6868,5 +6884,5 @@
6868
6884
  ]
6869
6885
  }
6870
6886
  },
6871
- "version": "0.0.41"
6887
+ "version": "0.0.43"
6872
6888
  }