@xano/cli 0.0.89 → 0.0.91

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.
@@ -394,20 +394,20 @@
394
394
  "index.js"
395
395
  ]
396
396
  },
397
- "branch:get": {
397
+ "branch:list": {
398
398
  "aliases": [],
399
399
  "args": {
400
- "branch_label": {
401
- "description": "Branch label (e.g., \"v1\", \"dev\")",
402
- "name": "branch_label",
403
- "required": true
400
+ "workspace_id": {
401
+ "description": "Workspace ID (uses profile workspace if not provided)",
402
+ "name": "workspace_id",
403
+ "required": false
404
404
  }
405
405
  },
406
- "description": "Get details for a specific branch",
406
+ "description": "List all branches in a workspace",
407
407
  "examples": [
408
- "$ xano branch get v1\nBranch: v1 (live)\n Created: 2024-01-15\n",
409
- "$ xano branch get dev -w 123\nBranch: dev\n Created: 2024-02-01\n",
410
- "$ 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"
408
+ "$ xano branch list\nAvailable branches:\n - v1 (live)\n - dev\n - staging\n",
409
+ "$ xano branch list 123\nAvailable branches:\n - v1 (live)\n - feature-auth\n",
410
+ "$ xano branch list --output json\n[\n {\n \"created_at\": \"2024-01-15T10:30:00Z\",\n \"label\": \"v1\",\n \"backup\": false,\n \"live\": true\n }\n]\n"
411
411
  ],
412
412
  "flags": {
413
413
  "profile": {
@@ -442,20 +442,11 @@
442
442
  "json"
443
443
  ],
444
444
  "type": "option"
445
- },
446
- "workspace": {
447
- "char": "w",
448
- "description": "Workspace ID (uses profile workspace if not provided)",
449
- "name": "workspace",
450
- "required": false,
451
- "hasDynamicHelp": false,
452
- "multiple": false,
453
- "type": "option"
454
445
  }
455
446
  },
456
447
  "hasDynamicHelp": false,
457
448
  "hiddenAliases": [],
458
- "id": "branch:get",
449
+ "id": "branch:list",
459
450
  "pluginAlias": "@xano/cli",
460
451
  "pluginName": "@xano/cli",
461
452
  "pluginType": "core",
@@ -466,7 +457,7 @@
466
457
  "dist",
467
458
  "commands",
468
459
  "branch",
469
- "get",
460
+ "list",
470
461
  "index.js"
471
462
  ]
472
463
  },
@@ -554,6 +545,132 @@
554
545
  "index.js"
555
546
  ]
556
547
  },
548
+ "platform:get": {
549
+ "aliases": [],
550
+ "args": {
551
+ "platform_id": {
552
+ "description": "Platform ID to retrieve",
553
+ "name": "platform_id",
554
+ "required": true
555
+ }
556
+ },
557
+ "description": "Get details of a specific platform",
558
+ "examples": [
559
+ "$ xano platform get 23629\nPlatform ID: 23629\n Created: 2025-11-28\n Helm: 0.1.356\n Images:\n backend 0.0.2985\n frontend 0.1.3427\n database 0.1.6\n node 0.1.192\n deno 0.0.212\n redis 0.1.34\n realtime 0.1.149\n standalone 0.0.2456\n playwright 0.0.992\n static 0.0.10\n static-build 0.0.4\n backend-encoded 0.0.1396\n",
560
+ "$ xano platform get 23629 -o json"
561
+ ],
562
+ "flags": {
563
+ "profile": {
564
+ "char": "p",
565
+ "description": "Profile to use (uses default profile if not specified)",
566
+ "env": "XANO_PROFILE",
567
+ "name": "profile",
568
+ "required": false,
569
+ "hasDynamicHelp": false,
570
+ "multiple": false,
571
+ "type": "option"
572
+ },
573
+ "verbose": {
574
+ "char": "v",
575
+ "description": "Show detailed request/response information",
576
+ "env": "XANO_VERBOSE",
577
+ "name": "verbose",
578
+ "required": false,
579
+ "allowNo": false,
580
+ "type": "boolean"
581
+ },
582
+ "output": {
583
+ "char": "o",
584
+ "description": "Output format",
585
+ "name": "output",
586
+ "required": false,
587
+ "default": "summary",
588
+ "hasDynamicHelp": false,
589
+ "multiple": false,
590
+ "options": [
591
+ "summary",
592
+ "json"
593
+ ],
594
+ "type": "option"
595
+ }
596
+ },
597
+ "hasDynamicHelp": false,
598
+ "hiddenAliases": [],
599
+ "id": "platform:get",
600
+ "pluginAlias": "@xano/cli",
601
+ "pluginName": "@xano/cli",
602
+ "pluginType": "core",
603
+ "strict": true,
604
+ "enableJsonFlag": false,
605
+ "isESM": true,
606
+ "relativePath": [
607
+ "dist",
608
+ "commands",
609
+ "platform",
610
+ "get",
611
+ "index.js"
612
+ ]
613
+ },
614
+ "platform:list": {
615
+ "aliases": [],
616
+ "args": {},
617
+ "description": "List all platforms",
618
+ "examples": [
619
+ "$ xano platform list\nPlatforms:\n ID: 23629 | Helm: 0.1.356 | Created: 2025-11-28\n",
620
+ "$ xano platform list --output json"
621
+ ],
622
+ "flags": {
623
+ "profile": {
624
+ "char": "p",
625
+ "description": "Profile to use (uses default profile if not specified)",
626
+ "env": "XANO_PROFILE",
627
+ "name": "profile",
628
+ "required": false,
629
+ "hasDynamicHelp": false,
630
+ "multiple": false,
631
+ "type": "option"
632
+ },
633
+ "verbose": {
634
+ "char": "v",
635
+ "description": "Show detailed request/response information",
636
+ "env": "XANO_VERBOSE",
637
+ "name": "verbose",
638
+ "required": false,
639
+ "allowNo": false,
640
+ "type": "boolean"
641
+ },
642
+ "output": {
643
+ "char": "o",
644
+ "description": "Output format",
645
+ "name": "output",
646
+ "required": false,
647
+ "default": "summary",
648
+ "hasDynamicHelp": false,
649
+ "multiple": false,
650
+ "options": [
651
+ "summary",
652
+ "json"
653
+ ],
654
+ "type": "option"
655
+ }
656
+ },
657
+ "hasDynamicHelp": false,
658
+ "hiddenAliases": [],
659
+ "id": "platform:list",
660
+ "pluginAlias": "@xano/cli",
661
+ "pluginName": "@xano/cli",
662
+ "pluginType": "core",
663
+ "strict": true,
664
+ "enableJsonFlag": false,
665
+ "isESM": true,
666
+ "relativePath": [
667
+ "dist",
668
+ "commands",
669
+ "platform",
670
+ "list",
671
+ "index.js"
672
+ ]
673
+ },
557
674
  "function:create": {
558
675
  "aliases": [],
559
676
  "args": {},
@@ -998,58 +1115,88 @@
998
1115
  "index.js"
999
1116
  ]
1000
1117
  },
1001
- "platform:get": {
1118
+ "profile:create": {
1002
1119
  "aliases": [],
1003
1120
  "args": {
1004
- "platform_id": {
1005
- "description": "Platform ID to retrieve",
1006
- "name": "platform_id",
1121
+ "name": {
1122
+ "description": "Profile name",
1123
+ "name": "name",
1007
1124
  "required": true
1008
1125
  }
1009
1126
  },
1010
- "description": "Get details of a specific platform",
1127
+ "description": "Create a new profile configuration",
1011
1128
  "examples": [
1012
- "$ xano platform get 23629\nPlatform ID: 23629\n Created: 2025-11-28\n Helm: 0.1.356\n Images:\n backend 0.0.2985\n frontend 0.1.3427\n database 0.1.6\n node 0.1.192\n deno 0.0.212\n redis 0.1.34\n realtime 0.1.149\n standalone 0.0.2456\n playwright 0.0.992\n static 0.0.10\n static-build 0.0.4\n backend-encoded 0.0.1396\n",
1013
- "$ xano platform get 23629 -o json"
1129
+ "$ 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",
1130
+ "$ 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",
1131
+ "$ 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",
1132
+ "$ 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",
1133
+ "$ xano profile:create selfhosted -i https://self-signed.example.com -t token123 --insecure\nProfile 'selfhosted' created successfully at ~/.xano/credentials.yaml\n"
1014
1134
  ],
1015
1135
  "flags": {
1016
- "profile": {
1017
- "char": "p",
1018
- "description": "Profile to use (uses default profile if not specified)",
1019
- "env": "XANO_PROFILE",
1020
- "name": "profile",
1136
+ "access_token": {
1137
+ "char": "t",
1138
+ "description": "Access token for the Xano Metadata API",
1139
+ "name": "access_token",
1140
+ "required": true,
1141
+ "hasDynamicHelp": false,
1142
+ "multiple": false,
1143
+ "type": "option"
1144
+ },
1145
+ "account_origin": {
1146
+ "char": "a",
1147
+ "description": "Account origin URL. Optional for self hosted installs.",
1148
+ "name": "account_origin",
1021
1149
  "required": false,
1022
1150
  "hasDynamicHelp": false,
1023
1151
  "multiple": false,
1024
1152
  "type": "option"
1025
1153
  },
1026
- "verbose": {
1027
- "char": "v",
1028
- "description": "Show detailed request/response information",
1029
- "env": "XANO_VERBOSE",
1030
- "name": "verbose",
1154
+ "branch": {
1155
+ "char": "b",
1156
+ "description": "Branch name",
1157
+ "name": "branch",
1158
+ "required": false,
1159
+ "hasDynamicHelp": false,
1160
+ "multiple": false,
1161
+ "type": "option"
1162
+ },
1163
+ "default": {
1164
+ "description": "Set this profile as the default",
1165
+ "name": "default",
1031
1166
  "required": false,
1032
1167
  "allowNo": false,
1033
1168
  "type": "boolean"
1034
1169
  },
1035
- "output": {
1036
- "char": "o",
1037
- "description": "Output format",
1038
- "name": "output",
1170
+ "insecure": {
1171
+ "char": "k",
1172
+ "description": "Skip TLS certificate verification (for self-signed certificates)",
1173
+ "name": "insecure",
1174
+ "required": false,
1175
+ "allowNo": false,
1176
+ "type": "boolean"
1177
+ },
1178
+ "instance_origin": {
1179
+ "char": "i",
1180
+ "description": "Instance origin URL",
1181
+ "name": "instance_origin",
1182
+ "required": true,
1183
+ "hasDynamicHelp": false,
1184
+ "multiple": false,
1185
+ "type": "option"
1186
+ },
1187
+ "workspace": {
1188
+ "char": "w",
1189
+ "description": "Workspace name",
1190
+ "name": "workspace",
1039
1191
  "required": false,
1040
- "default": "summary",
1041
1192
  "hasDynamicHelp": false,
1042
1193
  "multiple": false,
1043
- "options": [
1044
- "summary",
1045
- "json"
1046
- ],
1047
1194
  "type": "option"
1048
1195
  }
1049
1196
  },
1050
1197
  "hasDynamicHelp": false,
1051
1198
  "hiddenAliases": [],
1052
- "id": "platform:get",
1199
+ "id": "profile:create",
1053
1200
  "pluginAlias": "@xano/cli",
1054
1201
  "pluginName": "@xano/cli",
1055
1202
  "pluginType": "core",
@@ -1059,153 +1206,39 @@
1059
1206
  "relativePath": [
1060
1207
  "dist",
1061
1208
  "commands",
1062
- "platform",
1063
- "get",
1209
+ "profile",
1210
+ "create",
1064
1211
  "index.js"
1065
1212
  ]
1066
1213
  },
1067
- "platform:list": {
1068
- "aliases": [],
1069
- "args": {},
1070
- "description": "List all platforms",
1071
- "examples": [
1072
- "$ xano platform list\nPlatforms:\n ID: 23629 | Helm: 0.1.356 | Created: 2025-11-28\n",
1073
- "$ xano platform list --output json"
1074
- ],
1075
- "flags": {
1076
- "profile": {
1077
- "char": "p",
1078
- "description": "Profile to use (uses default profile if not specified)",
1079
- "env": "XANO_PROFILE",
1080
- "name": "profile",
1081
- "required": false,
1082
- "hasDynamicHelp": false,
1083
- "multiple": false,
1084
- "type": "option"
1085
- },
1086
- "verbose": {
1087
- "char": "v",
1088
- "description": "Show detailed request/response information",
1089
- "env": "XANO_VERBOSE",
1090
- "name": "verbose",
1091
- "required": false,
1092
- "allowNo": false,
1093
- "type": "boolean"
1094
- },
1095
- "output": {
1096
- "char": "o",
1097
- "description": "Output format",
1098
- "name": "output",
1099
- "required": false,
1100
- "default": "summary",
1101
- "hasDynamicHelp": false,
1102
- "multiple": false,
1103
- "options": [
1104
- "summary",
1105
- "json"
1106
- ],
1107
- "type": "option"
1108
- }
1109
- },
1110
- "hasDynamicHelp": false,
1111
- "hiddenAliases": [],
1112
- "id": "platform:list",
1113
- "pluginAlias": "@xano/cli",
1114
- "pluginName": "@xano/cli",
1115
- "pluginType": "core",
1116
- "strict": true,
1117
- "enableJsonFlag": false,
1118
- "isESM": true,
1119
- "relativePath": [
1120
- "dist",
1121
- "commands",
1122
- "platform",
1123
- "list",
1124
- "index.js"
1125
- ]
1126
- },
1127
- "profile:create": {
1214
+ "profile:delete": {
1128
1215
  "aliases": [],
1129
1216
  "args": {
1130
1217
  "name": {
1131
- "description": "Profile name",
1218
+ "description": "Profile name to delete",
1132
1219
  "name": "name",
1133
1220
  "required": true
1134
1221
  }
1135
1222
  },
1136
- "description": "Create a new profile configuration",
1223
+ "description": "Delete a profile configuration",
1137
1224
  "examples": [
1138
- "$ 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",
1139
- "$ 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",
1140
- "$ 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",
1141
- "$ 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",
1142
- "$ xano profile:create selfhosted -i https://self-signed.example.com -t token123 --insecure\nProfile 'selfhosted' created successfully at ~/.xano/credentials.yaml\n"
1225
+ "$ xano profile:delete old-profile\nAre you sure you want to delete profile 'old-profile'? (y/n): y\nProfile 'old-profile' deleted successfully from ~/.xano/credentials.yaml\n",
1226
+ "$ xano profile:delete old-profile --force\nProfile 'old-profile' deleted successfully from ~/.xano/credentials.yaml\n",
1227
+ "$ xano profile:delete old-profile -f\nProfile 'old-profile' deleted successfully from ~/.xano/credentials.yaml\n"
1143
1228
  ],
1144
1229
  "flags": {
1145
- "access_token": {
1146
- "char": "t",
1147
- "description": "Access token for the Xano Metadata API",
1148
- "name": "access_token",
1149
- "required": true,
1150
- "hasDynamicHelp": false,
1151
- "multiple": false,
1152
- "type": "option"
1153
- },
1154
- "account_origin": {
1155
- "char": "a",
1156
- "description": "Account origin URL. Optional for self hosted installs.",
1157
- "name": "account_origin",
1158
- "required": false,
1159
- "hasDynamicHelp": false,
1160
- "multiple": false,
1161
- "type": "option"
1162
- },
1163
- "branch": {
1164
- "char": "b",
1165
- "description": "Branch name",
1166
- "name": "branch",
1167
- "required": false,
1168
- "hasDynamicHelp": false,
1169
- "multiple": false,
1170
- "type": "option"
1171
- },
1172
- "default": {
1173
- "description": "Set this profile as the default",
1174
- "name": "default",
1175
- "required": false,
1176
- "allowNo": false,
1177
- "type": "boolean"
1178
- },
1179
- "insecure": {
1180
- "char": "k",
1181
- "description": "Skip TLS certificate verification (for self-signed certificates)",
1182
- "name": "insecure",
1230
+ "force": {
1231
+ "char": "f",
1232
+ "description": "Skip confirmation prompt",
1233
+ "name": "force",
1183
1234
  "required": false,
1184
1235
  "allowNo": false,
1185
1236
  "type": "boolean"
1186
- },
1187
- "instance_origin": {
1188
- "char": "i",
1189
- "description": "Instance origin URL",
1190
- "name": "instance_origin",
1191
- "required": true,
1192
- "hasDynamicHelp": false,
1193
- "multiple": false,
1194
- "type": "option"
1195
- },
1196
- "workspace": {
1197
- "char": "w",
1198
- "description": "Workspace name",
1199
- "name": "workspace",
1200
- "required": false,
1201
- "hasDynamicHelp": false,
1202
- "multiple": false,
1203
- "type": "option"
1204
1237
  }
1205
1238
  },
1206
1239
  "hasDynamicHelp": false,
1207
1240
  "hiddenAliases": [],
1208
- "id": "profile:create",
1241
+ "id": "profile:delete",
1209
1242
  "pluginAlias": "@xano/cli",
1210
1243
  "pluginName": "@xano/cli",
1211
1244
  "pluginType": "core",
@@ -1216,7 +1249,7 @@
1216
1249
  "dist",
1217
1250
  "commands",
1218
1251
  "profile",
1219
- "create",
1252
+ "delete",
1220
1253
  "index.js"
1221
1254
  ]
1222
1255
  },
@@ -1350,59 +1383,68 @@
1350
1383
  "index.js"
1351
1384
  ]
1352
1385
  },
1353
- "profile:delete": {
1386
+ "branch:get": {
1354
1387
  "aliases": [],
1355
1388
  "args": {
1356
- "name": {
1357
- "description": "Profile name to delete",
1358
- "name": "name",
1389
+ "branch_label": {
1390
+ "description": "Branch label (e.g., \"v1\", \"dev\")",
1391
+ "name": "branch_label",
1359
1392
  "required": true
1360
1393
  }
1361
1394
  },
1362
- "description": "Delete a profile configuration",
1395
+ "description": "Get details for a specific branch",
1363
1396
  "examples": [
1364
- "$ xano profile:delete old-profile\nAre you sure you want to delete profile 'old-profile'? (y/n): y\nProfile 'old-profile' deleted successfully from ~/.xano/credentials.yaml\n",
1365
- "$ xano profile:delete old-profile --force\nProfile 'old-profile' deleted successfully from ~/.xano/credentials.yaml\n",
1366
- "$ xano profile:delete old-profile -f\nProfile 'old-profile' deleted successfully from ~/.xano/credentials.yaml\n"
1397
+ "$ xano branch get v1\nBranch: v1 (live)\n Created: 2024-01-15\n",
1398
+ "$ xano branch get dev -w 123\nBranch: dev\n Created: 2024-02-01\n",
1399
+ "$ 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"
1367
1400
  ],
1368
1401
  "flags": {
1369
- "force": {
1370
- "char": "f",
1371
- "description": "Skip confirmation prompt",
1372
- "name": "force",
1402
+ "profile": {
1403
+ "char": "p",
1404
+ "description": "Profile to use (uses default profile if not specified)",
1405
+ "env": "XANO_PROFILE",
1406
+ "name": "profile",
1407
+ "required": false,
1408
+ "hasDynamicHelp": false,
1409
+ "multiple": false,
1410
+ "type": "option"
1411
+ },
1412
+ "verbose": {
1413
+ "char": "v",
1414
+ "description": "Show detailed request/response information",
1415
+ "env": "XANO_VERBOSE",
1416
+ "name": "verbose",
1373
1417
  "required": false,
1374
1418
  "allowNo": false,
1375
1419
  "type": "boolean"
1420
+ },
1421
+ "output": {
1422
+ "char": "o",
1423
+ "description": "Output format",
1424
+ "name": "output",
1425
+ "required": false,
1426
+ "default": "summary",
1427
+ "hasDynamicHelp": false,
1428
+ "multiple": false,
1429
+ "options": [
1430
+ "summary",
1431
+ "json"
1432
+ ],
1433
+ "type": "option"
1434
+ },
1435
+ "workspace": {
1436
+ "char": "w",
1437
+ "description": "Workspace ID (uses profile workspace if not provided)",
1438
+ "name": "workspace",
1439
+ "required": false,
1440
+ "hasDynamicHelp": false,
1441
+ "multiple": false,
1442
+ "type": "option"
1376
1443
  }
1377
1444
  },
1378
1445
  "hasDynamicHelp": false,
1379
1446
  "hiddenAliases": [],
1380
- "id": "profile:delete",
1381
- "pluginAlias": "@xano/cli",
1382
- "pluginName": "@xano/cli",
1383
- "pluginType": "core",
1384
- "strict": true,
1385
- "enableJsonFlag": false,
1386
- "isESM": true,
1387
- "relativePath": [
1388
- "dist",
1389
- "commands",
1390
- "profile",
1391
- "delete",
1392
- "index.js"
1393
- ]
1394
- },
1395
- "profile:get": {
1396
- "aliases": [],
1397
- "args": {},
1398
- "description": "Get the current default profile name",
1399
- "examples": [
1400
- "$ xano profile get\nproduction\n"
1401
- ],
1402
- "flags": {},
1403
- "hasDynamicHelp": false,
1404
- "hiddenAliases": [],
1405
- "id": "profile:get",
1447
+ "id": "branch:get",
1406
1448
  "pluginAlias": "@xano/cli",
1407
1449
  "pluginName": "@xano/cli",
1408
1450
  "pluginType": "core",
@@ -1412,7 +1454,7 @@
1412
1454
  "relativePath": [
1413
1455
  "dist",
1414
1456
  "commands",
1415
- "profile",
1457
+ "branch",
1416
1458
  "get",
1417
1459
  "index.js"
1418
1460
  ]
@@ -1453,37 +1495,6 @@
1453
1495
  "index.js"
1454
1496
  ]
1455
1497
  },
1456
- "profile:set": {
1457
- "aliases": [],
1458
- "args": {
1459
- "name": {
1460
- "description": "Profile name to set as default",
1461
- "name": "name",
1462
- "required": true
1463
- }
1464
- },
1465
- "description": "Set the default profile",
1466
- "examples": [
1467
- "$ xano profile set production\nDefault profile set to 'production'\n"
1468
- ],
1469
- "flags": {},
1470
- "hasDynamicHelp": false,
1471
- "hiddenAliases": [],
1472
- "id": "profile:set",
1473
- "pluginAlias": "@xano/cli",
1474
- "pluginName": "@xano/cli",
1475
- "pluginType": "core",
1476
- "strict": true,
1477
- "enableJsonFlag": false,
1478
- "isESM": true,
1479
- "relativePath": [
1480
- "dist",
1481
- "commands",
1482
- "profile",
1483
- "set",
1484
- "index.js"
1485
- ]
1486
- },
1487
1498
  "profile:me": {
1488
1499
  "aliases": [],
1489
1500
  "args": {},
@@ -1545,59 +1556,17 @@
1545
1556
  "index.js"
1546
1557
  ]
1547
1558
  },
1548
- "branch:list": {
1559
+ "profile:get": {
1549
1560
  "aliases": [],
1550
- "args": {
1551
- "workspace_id": {
1552
- "description": "Workspace ID (uses profile workspace if not provided)",
1553
- "name": "workspace_id",
1554
- "required": false
1555
- }
1556
- },
1557
- "description": "List all branches in a workspace",
1558
- "examples": [
1559
- "$ xano branch list\nAvailable branches:\n - v1 (live)\n - dev\n - staging\n",
1560
- "$ xano branch list 123\nAvailable branches:\n - v1 (live)\n - feature-auth\n",
1561
- "$ xano branch list --output json\n[\n {\n \"created_at\": \"2024-01-15T10:30:00Z\",\n \"label\": \"v1\",\n \"backup\": false,\n \"live\": true\n }\n]\n"
1561
+ "args": {},
1562
+ "description": "Get the current default profile name",
1563
+ "examples": [
1564
+ "$ xano profile get\nproduction\n"
1562
1565
  ],
1563
- "flags": {
1564
- "profile": {
1565
- "char": "p",
1566
- "description": "Profile to use (uses default profile if not specified)",
1567
- "env": "XANO_PROFILE",
1568
- "name": "profile",
1569
- "required": false,
1570
- "hasDynamicHelp": false,
1571
- "multiple": false,
1572
- "type": "option"
1573
- },
1574
- "verbose": {
1575
- "char": "v",
1576
- "description": "Show detailed request/response information",
1577
- "env": "XANO_VERBOSE",
1578
- "name": "verbose",
1579
- "required": false,
1580
- "allowNo": false,
1581
- "type": "boolean"
1582
- },
1583
- "output": {
1584
- "char": "o",
1585
- "description": "Output format",
1586
- "name": "output",
1587
- "required": false,
1588
- "default": "summary",
1589
- "hasDynamicHelp": false,
1590
- "multiple": false,
1591
- "options": [
1592
- "summary",
1593
- "json"
1594
- ],
1595
- "type": "option"
1596
- }
1597
- },
1566
+ "flags": {},
1598
1567
  "hasDynamicHelp": false,
1599
1568
  "hiddenAliases": [],
1600
- "id": "branch:list",
1569
+ "id": "profile:get",
1601
1570
  "pluginAlias": "@xano/cli",
1602
1571
  "pluginName": "@xano/cli",
1603
1572
  "pluginType": "core",
@@ -1607,8 +1576,34 @@
1607
1576
  "relativePath": [
1608
1577
  "dist",
1609
1578
  "commands",
1610
- "branch",
1611
- "list",
1579
+ "profile",
1580
+ "get",
1581
+ "index.js"
1582
+ ]
1583
+ },
1584
+ "profile:token": {
1585
+ "aliases": [],
1586
+ "args": {},
1587
+ "description": "Print the access token for the default profile",
1588
+ "examples": [
1589
+ "$ xano profile:token\neyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...\n",
1590
+ "$ xano profile:token | pbcopy\n# Copies the token to clipboard on macOS\n"
1591
+ ],
1592
+ "flags": {},
1593
+ "hasDynamicHelp": false,
1594
+ "hiddenAliases": [],
1595
+ "id": "profile:token",
1596
+ "pluginAlias": "@xano/cli",
1597
+ "pluginName": "@xano/cli",
1598
+ "pluginType": "core",
1599
+ "strict": true,
1600
+ "enableJsonFlag": false,
1601
+ "isESM": true,
1602
+ "relativePath": [
1603
+ "dist",
1604
+ "commands",
1605
+ "profile",
1606
+ "token",
1612
1607
  "index.js"
1613
1608
  ]
1614
1609
  },
@@ -1691,18 +1686,23 @@
1691
1686
  "index.js"
1692
1687
  ]
1693
1688
  },
1694
- "profile:token": {
1689
+ "profile:set": {
1695
1690
  "aliases": [],
1696
- "args": {},
1697
- "description": "Print the access token for the default profile",
1691
+ "args": {
1692
+ "name": {
1693
+ "description": "Profile name to set as default",
1694
+ "name": "name",
1695
+ "required": true
1696
+ }
1697
+ },
1698
+ "description": "Set the default profile",
1698
1699
  "examples": [
1699
- "$ xano profile:token\neyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...\n",
1700
- "$ xano profile:token | pbcopy\n# Copies the token to clipboard on macOS\n"
1700
+ "$ xano profile set production\nDefault profile set to 'production'\n"
1701
1701
  ],
1702
1702
  "flags": {},
1703
1703
  "hasDynamicHelp": false,
1704
1704
  "hiddenAliases": [],
1705
- "id": "profile:token",
1705
+ "id": "profile:set",
1706
1706
  "pluginAlias": "@xano/cli",
1707
1707
  "pluginName": "@xano/cli",
1708
1708
  "pluginType": "core",
@@ -1713,23 +1713,19 @@
1713
1713
  "dist",
1714
1714
  "commands",
1715
1715
  "profile",
1716
- "token",
1716
+ "set",
1717
1717
  "index.js"
1718
1718
  ]
1719
1719
  },
1720
- "release:edit": {
1720
+ "static_host:list": {
1721
1721
  "aliases": [],
1722
- "args": {
1723
- "release_name": {
1724
- "description": "Release name to edit",
1725
- "name": "release_name",
1726
- "required": true
1727
- }
1728
- },
1729
- "description": "Edit an existing release",
1722
+ "args": {},
1723
+ "description": "List all static hosts in a workspace from the Xano Metadata API",
1730
1724
  "examples": [
1731
- "$ xano release edit v1.0 --name \"v1.0-final\" --description \"Updated description\"\nUpdated release: v1.0-final - ID: 10\n",
1732
- "$ xano release edit v1.0 --description \"New description\" -o json"
1725
+ "$ xano static_host:list -w 40\nAvailable static hosts:\n - my-static-host (ID: 1)\n - another-host (ID: 2)\n",
1726
+ "$ xano static_host:list --profile production\nAvailable static hosts:\n - my-static-host (ID: 1)\n - another-host (ID: 2)\n",
1727
+ "$ 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",
1728
+ "$ xano static_host:list -p staging -o json --page 2\n[\n {\n \"id\": 3,\n \"name\": \"static-host-3\"\n }\n]\n"
1733
1729
  ],
1734
1730
  "flags": {
1735
1731
  "profile": {
@@ -1751,41 +1747,41 @@
1751
1747
  "allowNo": false,
1752
1748
  "type": "boolean"
1753
1749
  },
1754
- "description": {
1755
- "char": "d",
1756
- "description": "New description",
1757
- "name": "description",
1750
+ "output": {
1751
+ "char": "o",
1752
+ "description": "Output format",
1753
+ "name": "output",
1758
1754
  "required": false,
1755
+ "default": "summary",
1759
1756
  "hasDynamicHelp": false,
1760
1757
  "multiple": false,
1758
+ "options": [
1759
+ "summary",
1760
+ "json"
1761
+ ],
1761
1762
  "type": "option"
1762
1763
  },
1763
- "name": {
1764
- "char": "n",
1765
- "description": "New name for the release",
1766
- "name": "name",
1764
+ "page": {
1765
+ "description": "Page number for pagination",
1766
+ "name": "page",
1767
1767
  "required": false,
1768
+ "default": 1,
1768
1769
  "hasDynamicHelp": false,
1769
1770
  "multiple": false,
1770
1771
  "type": "option"
1771
1772
  },
1772
- "output": {
1773
- "char": "o",
1774
- "description": "Output format",
1775
- "name": "output",
1773
+ "per_page": {
1774
+ "description": "Number of results per page",
1775
+ "name": "per_page",
1776
1776
  "required": false,
1777
- "default": "summary",
1777
+ "default": 50,
1778
1778
  "hasDynamicHelp": false,
1779
1779
  "multiple": false,
1780
- "options": [
1781
- "summary",
1782
- "json"
1783
- ],
1784
1780
  "type": "option"
1785
1781
  },
1786
1782
  "workspace": {
1787
1783
  "char": "w",
1788
- "description": "Workspace ID (uses profile workspace if not provided)",
1784
+ "description": "Workspace ID (optional if set in profile)",
1789
1785
  "name": "workspace",
1790
1786
  "required": false,
1791
1787
  "hasDynamicHelp": false,
@@ -1795,7 +1791,7 @@
1795
1791
  },
1796
1792
  "hasDynamicHelp": false,
1797
1793
  "hiddenAliases": [],
1798
- "id": "release:edit",
1794
+ "id": "static_host:list",
1799
1795
  "pluginAlias": "@xano/cli",
1800
1796
  "pluginName": "@xano/cli",
1801
1797
  "pluginType": "core",
@@ -1805,25 +1801,18 @@
1805
1801
  "relativePath": [
1806
1802
  "dist",
1807
1803
  "commands",
1808
- "release",
1809
- "edit",
1804
+ "static_host",
1805
+ "list",
1810
1806
  "index.js"
1811
1807
  ]
1812
1808
  },
1813
- "release:delete": {
1809
+ "release:create": {
1814
1810
  "aliases": [],
1815
- "args": {
1816
- "release_name": {
1817
- "description": "Release name to delete",
1818
- "name": "release_name",
1819
- "required": true
1820
- }
1821
- },
1822
- "description": "Delete a release permanently. This action cannot be undone.",
1811
+ "args": {},
1812
+ "description": "Create a new release in a workspace",
1823
1813
  "examples": [
1824
- "$ xano release delete v1.0\nAre you sure you want to delete release 'v1.0'? This action cannot be undone. (y/N) y\nDeleted release 'v1.0'\n",
1825
- "$ xano release delete v1.0 --force\nDeleted release 'v1.0'\n",
1826
- "$ xano release delete v1.0 -f -o json"
1814
+ "$ xano release create --name \"v1.0\" --branch main\nCreated release: v1.0 - ID: 10\n",
1815
+ "$ xano release create --name \"v1.1-hotfix\" --branch main --hotfix --description \"Critical fix\" -o json"
1827
1816
  ],
1828
1817
  "flags": {
1829
1818
  "profile": {
@@ -1845,94 +1834,44 @@
1845
1834
  "allowNo": false,
1846
1835
  "type": "boolean"
1847
1836
  },
1848
- "force": {
1849
- "char": "f",
1850
- "description": "Skip confirmation prompt",
1851
- "name": "force",
1852
- "required": false,
1853
- "allowNo": false,
1854
- "type": "boolean"
1855
- },
1856
- "output": {
1857
- "char": "o",
1858
- "description": "Output format",
1859
- "name": "output",
1860
- "required": false,
1861
- "default": "summary",
1837
+ "branch": {
1838
+ "char": "b",
1839
+ "description": "Branch to create the release from",
1840
+ "name": "branch",
1841
+ "required": true,
1862
1842
  "hasDynamicHelp": false,
1863
1843
  "multiple": false,
1864
- "options": [
1865
- "summary",
1866
- "json"
1867
- ],
1868
1844
  "type": "option"
1869
1845
  },
1870
- "workspace": {
1871
- "char": "w",
1872
- "description": "Workspace ID (uses profile workspace if not provided)",
1873
- "name": "workspace",
1874
- "required": false,
1875
- "hasDynamicHelp": false,
1876
- "multiple": false,
1877
- "type": "option"
1878
- }
1879
- },
1880
- "hasDynamicHelp": false,
1881
- "hiddenAliases": [],
1882
- "id": "release:delete",
1883
- "pluginAlias": "@xano/cli",
1884
- "pluginName": "@xano/cli",
1885
- "pluginType": "core",
1886
- "strict": true,
1887
- "enableJsonFlag": false,
1888
- "isESM": true,
1889
- "relativePath": [
1890
- "dist",
1891
- "commands",
1892
- "release",
1893
- "delete",
1894
- "index.js"
1895
- ]
1896
- },
1897
- "release:export": {
1898
- "aliases": [],
1899
- "args": {
1900
- "release_name": {
1901
- "description": "Release name to export",
1902
- "name": "release_name",
1903
- "required": true
1904
- }
1905
- },
1906
- "description": "Export (download) a release to a local file",
1907
- "examples": [
1908
- "$ xano release export v1.0\nDownloaded release 'v1.0' to ./release-v1.0.tar.gz\n",
1909
- "$ xano release export v1.0 --output ./backups/my-release.tar.gz",
1910
- "$ xano release export v1.0 -o json"
1911
- ],
1912
- "flags": {
1913
- "profile": {
1914
- "char": "p",
1915
- "description": "Profile to use (uses default profile if not specified)",
1916
- "env": "XANO_PROFILE",
1917
- "name": "profile",
1846
+ "description": {
1847
+ "char": "d",
1848
+ "description": "Release description",
1849
+ "name": "description",
1918
1850
  "required": false,
1919
1851
  "hasDynamicHelp": false,
1920
1852
  "multiple": false,
1921
1853
  "type": "option"
1922
1854
  },
1923
- "verbose": {
1924
- "char": "v",
1925
- "description": "Show detailed request/response information",
1926
- "env": "XANO_VERBOSE",
1927
- "name": "verbose",
1855
+ "hotfix": {
1856
+ "description": "Mark as a hotfix release",
1857
+ "name": "hotfix",
1928
1858
  "required": false,
1929
1859
  "allowNo": false,
1930
1860
  "type": "boolean"
1931
1861
  },
1932
- "format": {
1862
+ "name": {
1863
+ "char": "n",
1864
+ "description": "Name for the release",
1865
+ "name": "name",
1866
+ "required": true,
1867
+ "hasDynamicHelp": false,
1868
+ "multiple": false,
1869
+ "type": "option"
1870
+ },
1871
+ "output": {
1933
1872
  "char": "o",
1934
1873
  "description": "Output format",
1935
- "name": "format",
1874
+ "name": "output",
1936
1875
  "required": false,
1937
1876
  "default": "summary",
1938
1877
  "hasDynamicHelp": false,
@@ -1943,9 +1882,9 @@
1943
1882
  ],
1944
1883
  "type": "option"
1945
1884
  },
1946
- "output": {
1947
- "description": "Output file path (defaults to ./release-{name}.tar.gz)",
1948
- "name": "output",
1885
+ "table-ids": {
1886
+ "description": "Comma-separated table IDs to include",
1887
+ "name": "table-ids",
1949
1888
  "required": false,
1950
1889
  "hasDynamicHelp": false,
1951
1890
  "multiple": false,
@@ -1963,7 +1902,7 @@
1963
1902
  },
1964
1903
  "hasDynamicHelp": false,
1965
1904
  "hiddenAliases": [],
1966
- "id": "release:export",
1905
+ "id": "release:create",
1967
1906
  "pluginAlias": "@xano/cli",
1968
1907
  "pluginName": "@xano/cli",
1969
1908
  "pluginType": "core",
@@ -1974,23 +1913,24 @@
1974
1913
  "dist",
1975
1914
  "commands",
1976
1915
  "release",
1977
- "export",
1916
+ "create",
1978
1917
  "index.js"
1979
1918
  ]
1980
1919
  },
1981
- "release:get": {
1920
+ "release:delete": {
1982
1921
  "aliases": [],
1983
1922
  "args": {
1984
1923
  "release_name": {
1985
- "description": "Release name to retrieve",
1924
+ "description": "Release name to delete",
1986
1925
  "name": "release_name",
1987
1926
  "required": true
1988
1927
  }
1989
1928
  },
1990
- "description": "Get details of a specific release",
1929
+ "description": "Delete a release permanently. This action cannot be undone.",
1991
1930
  "examples": [
1992
- "$ xano release get v1.0\nRelease: v1.0 - ID: 10\n Branch: main\n Description: Initial release\n Hotfix: false\n",
1993
- "$ xano release get v1.0 -w 5 -o json"
1931
+ "$ xano release delete v1.0\nAre you sure you want to delete release 'v1.0'? This action cannot be undone. (y/N) y\nDeleted release 'v1.0'\n",
1932
+ "$ xano release delete v1.0 --force\nDeleted release 'v1.0'\n",
1933
+ "$ xano release delete v1.0 -f -o json"
1994
1934
  ],
1995
1935
  "flags": {
1996
1936
  "profile": {
@@ -2012,6 +1952,14 @@
2012
1952
  "allowNo": false,
2013
1953
  "type": "boolean"
2014
1954
  },
1955
+ "force": {
1956
+ "char": "f",
1957
+ "description": "Skip confirmation prompt",
1958
+ "name": "force",
1959
+ "required": false,
1960
+ "allowNo": false,
1961
+ "type": "boolean"
1962
+ },
2015
1963
  "output": {
2016
1964
  "char": "o",
2017
1965
  "description": "Output format",
@@ -2038,7 +1986,7 @@
2038
1986
  },
2039
1987
  "hasDynamicHelp": false,
2040
1988
  "hiddenAliases": [],
2041
- "id": "release:get",
1989
+ "id": "release:delete",
2042
1990
  "pluginAlias": "@xano/cli",
2043
1991
  "pluginName": "@xano/cli",
2044
1992
  "pluginType": "core",
@@ -2049,17 +1997,23 @@
2049
1997
  "dist",
2050
1998
  "commands",
2051
1999
  "release",
2052
- "get",
2000
+ "delete",
2053
2001
  "index.js"
2054
2002
  ]
2055
2003
  },
2056
- "release:import": {
2004
+ "release:get": {
2057
2005
  "aliases": [],
2058
- "args": {},
2059
- "description": "Import a release file into a workspace",
2006
+ "args": {
2007
+ "release_name": {
2008
+ "description": "Release name to retrieve",
2009
+ "name": "release_name",
2010
+ "required": true
2011
+ }
2012
+ },
2013
+ "description": "Get details of a specific release",
2060
2014
  "examples": [
2061
- "$ xano release import --file ./my-release.tar.gz\nImported release as #15\n",
2062
- "$ xano release import --file ./my-release.tar.gz -o json"
2015
+ "$ xano release get v1.0\nRelease: v1.0 - ID: 10\n Branch: main\n Description: Initial release\n Hotfix: false\n",
2016
+ "$ xano release get v1.0 -w 5 -o json"
2063
2017
  ],
2064
2018
  "flags": {
2065
2019
  "profile": {
@@ -2081,15 +2035,6 @@
2081
2035
  "allowNo": false,
2082
2036
  "type": "boolean"
2083
2037
  },
2084
- "file": {
2085
- "char": "f",
2086
- "description": "Path to the release file (.tar.gz)",
2087
- "name": "file",
2088
- "required": true,
2089
- "hasDynamicHelp": false,
2090
- "multiple": false,
2091
- "type": "option"
2092
- },
2093
2038
  "output": {
2094
2039
  "char": "o",
2095
2040
  "description": "Output format",
@@ -2116,7 +2061,7 @@
2116
2061
  },
2117
2062
  "hasDynamicHelp": false,
2118
2063
  "hiddenAliases": [],
2119
- "id": "release:import",
2064
+ "id": "release:get",
2120
2065
  "pluginAlias": "@xano/cli",
2121
2066
  "pluginName": "@xano/cli",
2122
2067
  "pluginType": "core",
@@ -2127,17 +2072,24 @@
2127
2072
  "dist",
2128
2073
  "commands",
2129
2074
  "release",
2130
- "import",
2075
+ "get",
2131
2076
  "index.js"
2132
2077
  ]
2133
2078
  },
2134
- "release:list": {
2079
+ "release:export": {
2135
2080
  "aliases": [],
2136
- "args": {},
2137
- "description": "List all releases in a workspace",
2081
+ "args": {
2082
+ "release_name": {
2083
+ "description": "Release name to export",
2084
+ "name": "release_name",
2085
+ "required": true
2086
+ }
2087
+ },
2088
+ "description": "Export (download) a release to a local file",
2138
2089
  "examples": [
2139
- "$ xano release list\nReleases in workspace 5:\n - v1.0 (ID: 10) - main\n - v1.1-hotfix (ID: 11) - main [hotfix]\n",
2140
- "$ xano release list -w 5 --output json"
2090
+ "$ xano release export v1.0\nDownloaded release 'v1.0' to ./release-v1.0.tar.gz\n",
2091
+ "$ xano release export v1.0 --output ./backups/my-release.tar.gz",
2092
+ "$ xano release export v1.0 -o json"
2141
2093
  ],
2142
2094
  "flags": {
2143
2095
  "profile": {
@@ -2159,10 +2111,10 @@
2159
2111
  "allowNo": false,
2160
2112
  "type": "boolean"
2161
2113
  },
2162
- "output": {
2114
+ "format": {
2163
2115
  "char": "o",
2164
2116
  "description": "Output format",
2165
- "name": "output",
2117
+ "name": "format",
2166
2118
  "required": false,
2167
2119
  "default": "summary",
2168
2120
  "hasDynamicHelp": false,
@@ -2173,6 +2125,14 @@
2173
2125
  ],
2174
2126
  "type": "option"
2175
2127
  },
2128
+ "output": {
2129
+ "description": "Output file path (defaults to ./release-{name}.tar.gz)",
2130
+ "name": "output",
2131
+ "required": false,
2132
+ "hasDynamicHelp": false,
2133
+ "multiple": false,
2134
+ "type": "option"
2135
+ },
2176
2136
  "workspace": {
2177
2137
  "char": "w",
2178
2138
  "description": "Workspace ID (uses profile workspace if not provided)",
@@ -2185,7 +2145,7 @@
2185
2145
  },
2186
2146
  "hasDynamicHelp": false,
2187
2147
  "hiddenAliases": [],
2188
- "id": "release:list",
2148
+ "id": "release:export",
2189
2149
  "pluginAlias": "@xano/cli",
2190
2150
  "pluginName": "@xano/cli",
2191
2151
  "pluginType": "core",
@@ -2196,26 +2156,17 @@
2196
2156
  "dist",
2197
2157
  "commands",
2198
2158
  "release",
2199
- "list",
2159
+ "export",
2200
2160
  "index.js"
2201
2161
  ]
2202
2162
  },
2203
- "release:push": {
2163
+ "release:import": {
2204
2164
  "aliases": [],
2205
- "args": {
2206
- "directory": {
2207
- "description": "Directory containing .xs documents to create the release from",
2208
- "name": "directory",
2209
- "required": true
2210
- }
2211
- },
2212
- "description": "Create a new release from local XanoScript files via the multidoc endpoint",
2165
+ "args": {},
2166
+ "description": "Import a release file into a workspace",
2213
2167
  "examples": [
2214
- "$ xano release push ./my-release -n \"v1.0\"\nCreated release: v1.0 - ID: 10\n",
2215
- "$ xano release push ./output -n \"v2.0\" -w 40 -d \"Major update\"\nCreated release: v2.0 - ID: 15\n",
2216
- "$ xano release push ./backup -n \"v1.1-hotfix\" --hotfix --profile production\nCreated release: v1.1-hotfix - ID: 20\n",
2217
- "$ xano release push ./my-release -n \"v1.0\" --no-records --no-env\nCreate release from schema only, skip records and environment variables\n",
2218
- "$ xano release push ./my-release -n \"v1.0\" -o json\nOutput release details as JSON\n"
2168
+ "$ xano release import --file ./my-release.tar.gz\nImported release as #15\n",
2169
+ "$ xano release import --file ./my-release.tar.gz -o json"
2219
2170
  ],
2220
2171
  "flags": {
2221
2172
  "profile": {
@@ -2237,34 +2188,10 @@
2237
2188
  "allowNo": false,
2238
2189
  "type": "boolean"
2239
2190
  },
2240
- "description": {
2241
- "char": "d",
2242
- "description": "Release description",
2243
- "name": "description",
2244
- "required": false,
2245
- "default": "",
2246
- "hasDynamicHelp": false,
2247
- "multiple": false,
2248
- "type": "option"
2249
- },
2250
- "env": {
2251
- "description": "Include environment variables (default: true, use --no-env to exclude)",
2252
- "name": "env",
2253
- "required": false,
2254
- "allowNo": true,
2255
- "type": "boolean"
2256
- },
2257
- "hotfix": {
2258
- "description": "Mark as a hotfix release",
2259
- "name": "hotfix",
2260
- "required": false,
2261
- "allowNo": false,
2262
- "type": "boolean"
2263
- },
2264
- "name": {
2265
- "char": "n",
2266
- "description": "Name for the release",
2267
- "name": "name",
2191
+ "file": {
2192
+ "char": "f",
2193
+ "description": "Path to the release file (.tar.gz)",
2194
+ "name": "file",
2268
2195
  "required": true,
2269
2196
  "hasDynamicHelp": false,
2270
2197
  "multiple": false,
@@ -2284,16 +2211,9 @@
2284
2211
  ],
2285
2212
  "type": "option"
2286
2213
  },
2287
- "records": {
2288
- "description": "Include records (default: true, use --no-records to exclude)",
2289
- "name": "records",
2290
- "required": false,
2291
- "allowNo": true,
2292
- "type": "boolean"
2293
- },
2294
2214
  "workspace": {
2295
2215
  "char": "w",
2296
- "description": "Workspace ID (optional if set in profile)",
2216
+ "description": "Workspace ID (uses profile workspace if not provided)",
2297
2217
  "name": "workspace",
2298
2218
  "required": false,
2299
2219
  "hasDynamicHelp": false,
@@ -2303,7 +2223,7 @@
2303
2223
  },
2304
2224
  "hasDynamicHelp": false,
2305
2225
  "hiddenAliases": [],
2306
- "id": "release:push",
2226
+ "id": "release:import",
2307
2227
  "pluginAlias": "@xano/cli",
2308
2228
  "pluginName": "@xano/cli",
2309
2229
  "pluginType": "core",
@@ -2314,24 +2234,17 @@
2314
2234
  "dist",
2315
2235
  "commands",
2316
2236
  "release",
2317
- "push",
2237
+ "import",
2318
2238
  "index.js"
2319
2239
  ]
2320
2240
  },
2321
- "release:pull": {
2241
+ "release:list": {
2322
2242
  "aliases": [],
2323
- "args": {
2324
- "directory": {
2325
- "description": "Output directory for pulled documents",
2326
- "name": "directory",
2327
- "required": true
2328
- }
2329
- },
2330
- "description": "Pull a release multidoc from the Xano Metadata API and split into individual files",
2243
+ "args": {},
2244
+ "description": "List all releases in a workspace",
2331
2245
  "examples": [
2332
- "$ xano release pull ./my-release -r v1.0\nPulled 42 documents from release 'v1.0' to ./my-release\n",
2333
- "$ xano release pull ./output -r v1.0 -w 40\nPulled 15 documents from release 'v1.0' to ./output\n",
2334
- "$ xano release pull ./backup -r v1.0 --profile production --env --records\nPulled 58 documents from release 'v1.0' to ./backup\n"
2246
+ "$ xano release list\nReleases in workspace 5:\n - v1.0 (ID: 10) - main\n - v1.1-hotfix (ID: 11) - main [hotfix]\n",
2247
+ "$ xano release list -w 5 --output json"
2335
2248
  ],
2336
2249
  "flags": {
2337
2250
  "profile": {
@@ -2353,32 +2266,23 @@
2353
2266
  "allowNo": false,
2354
2267
  "type": "boolean"
2355
2268
  },
2356
- "env": {
2357
- "description": "Include environment variables",
2358
- "name": "env",
2359
- "required": false,
2360
- "allowNo": false,
2361
- "type": "boolean"
2362
- },
2363
- "records": {
2364
- "description": "Include records",
2365
- "name": "records",
2269
+ "output": {
2270
+ "char": "o",
2271
+ "description": "Output format",
2272
+ "name": "output",
2366
2273
  "required": false,
2367
- "allowNo": false,
2368
- "type": "boolean"
2369
- },
2370
- "release": {
2371
- "char": "r",
2372
- "description": "Release name to pull from",
2373
- "name": "release",
2374
- "required": true,
2274
+ "default": "summary",
2375
2275
  "hasDynamicHelp": false,
2376
2276
  "multiple": false,
2277
+ "options": [
2278
+ "summary",
2279
+ "json"
2280
+ ],
2377
2281
  "type": "option"
2378
2282
  },
2379
2283
  "workspace": {
2380
2284
  "char": "w",
2381
- "description": "Workspace ID (optional if set in profile)",
2285
+ "description": "Workspace ID (uses profile workspace if not provided)",
2382
2286
  "name": "workspace",
2383
2287
  "required": false,
2384
2288
  "hasDynamicHelp": false,
@@ -2388,7 +2292,7 @@
2388
2292
  },
2389
2293
  "hasDynamicHelp": false,
2390
2294
  "hiddenAliases": [],
2391
- "id": "release:pull",
2295
+ "id": "release:list",
2392
2296
  "pluginAlias": "@xano/cli",
2393
2297
  "pluginName": "@xano/cli",
2394
2298
  "pluginType": "core",
@@ -2399,68 +2303,64 @@
2399
2303
  "dist",
2400
2304
  "commands",
2401
2305
  "release",
2402
- "pull",
2306
+ "list",
2403
2307
  "index.js"
2404
2308
  ]
2405
2309
  },
2406
- "static_host:list": {
2310
+ "release:pull": {
2407
2311
  "aliases": [],
2408
- "args": {},
2409
- "description": "List all static hosts in a workspace from the Xano Metadata API",
2312
+ "args": {
2313
+ "directory": {
2314
+ "description": "Output directory for pulled documents",
2315
+ "name": "directory",
2316
+ "required": true
2317
+ }
2318
+ },
2319
+ "description": "Pull a release multidoc from the Xano Metadata API and split into individual files",
2410
2320
  "examples": [
2411
- "$ xano static_host:list -w 40\nAvailable static hosts:\n - my-static-host (ID: 1)\n - another-host (ID: 2)\n",
2412
- "$ xano static_host:list --profile production\nAvailable static hosts:\n - my-static-host (ID: 1)\n - another-host (ID: 2)\n",
2413
- "$ 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",
2414
- "$ xano static_host:list -p staging -o json --page 2\n[\n {\n \"id\": 3,\n \"name\": \"static-host-3\"\n }\n]\n"
2321
+ "$ xano release pull ./my-release -r v1.0\nPulled 42 documents from release 'v1.0' to ./my-release\n",
2322
+ "$ xano release pull ./output -r v1.0 -w 40\nPulled 15 documents from release 'v1.0' to ./output\n",
2323
+ "$ xano release pull ./backup -r v1.0 --profile production --env --records\nPulled 58 documents from release 'v1.0' to ./backup\n"
2415
2324
  ],
2416
2325
  "flags": {
2417
2326
  "profile": {
2418
- "char": "p",
2419
- "description": "Profile to use (uses default profile if not specified)",
2420
- "env": "XANO_PROFILE",
2421
- "name": "profile",
2422
- "required": false,
2423
- "hasDynamicHelp": false,
2424
- "multiple": false,
2425
- "type": "option"
2426
- },
2427
- "verbose": {
2428
- "char": "v",
2429
- "description": "Show detailed request/response information",
2430
- "env": "XANO_VERBOSE",
2431
- "name": "verbose",
2432
- "required": false,
2433
- "allowNo": false,
2434
- "type": "boolean"
2435
- },
2436
- "output": {
2437
- "char": "o",
2438
- "description": "Output format",
2439
- "name": "output",
2440
- "required": false,
2441
- "default": "summary",
2442
- "hasDynamicHelp": false,
2443
- "multiple": false,
2444
- "options": [
2445
- "summary",
2446
- "json"
2447
- ],
2448
- "type": "option"
2449
- },
2450
- "page": {
2451
- "description": "Page number for pagination",
2452
- "name": "page",
2327
+ "char": "p",
2328
+ "description": "Profile to use (uses default profile if not specified)",
2329
+ "env": "XANO_PROFILE",
2330
+ "name": "profile",
2453
2331
  "required": false,
2454
- "default": 1,
2455
2332
  "hasDynamicHelp": false,
2456
2333
  "multiple": false,
2457
2334
  "type": "option"
2458
2335
  },
2459
- "per_page": {
2460
- "description": "Number of results per page",
2461
- "name": "per_page",
2336
+ "verbose": {
2337
+ "char": "v",
2338
+ "description": "Show detailed request/response information",
2339
+ "env": "XANO_VERBOSE",
2340
+ "name": "verbose",
2462
2341
  "required": false,
2463
- "default": 50,
2342
+ "allowNo": false,
2343
+ "type": "boolean"
2344
+ },
2345
+ "env": {
2346
+ "description": "Include environment variables",
2347
+ "name": "env",
2348
+ "required": false,
2349
+ "allowNo": false,
2350
+ "type": "boolean"
2351
+ },
2352
+ "records": {
2353
+ "description": "Include records",
2354
+ "name": "records",
2355
+ "required": false,
2356
+ "allowNo": false,
2357
+ "type": "boolean"
2358
+ },
2359
+ "release": {
2360
+ "char": "r",
2361
+ "description": "Release name to pull from",
2362
+ "name": "release",
2363
+ "required": true,
2464
2364
  "hasDynamicHelp": false,
2465
2365
  "multiple": false,
2466
2366
  "type": "option"
@@ -2477,7 +2377,7 @@
2477
2377
  },
2478
2378
  "hasDynamicHelp": false,
2479
2379
  "hiddenAliases": [],
2480
- "id": "static_host:list",
2380
+ "id": "release:pull",
2481
2381
  "pluginAlias": "@xano/cli",
2482
2382
  "pluginName": "@xano/cli",
2483
2383
  "pluginType": "core",
@@ -2487,18 +2387,27 @@
2487
2387
  "relativePath": [
2488
2388
  "dist",
2489
2389
  "commands",
2490
- "static_host",
2491
- "list",
2390
+ "release",
2391
+ "pull",
2492
2392
  "index.js"
2493
2393
  ]
2494
2394
  },
2495
- "release:create": {
2395
+ "release:push": {
2496
2396
  "aliases": [],
2497
- "args": {},
2498
- "description": "Create a new release in a workspace",
2397
+ "args": {
2398
+ "directory": {
2399
+ "description": "Directory containing .xs documents to create the release from",
2400
+ "name": "directory",
2401
+ "required": true
2402
+ }
2403
+ },
2404
+ "description": "Create a new release from local XanoScript files via the multidoc endpoint",
2499
2405
  "examples": [
2500
- "$ xano release create --name \"v1.0\" --branch main\nCreated release: v1.0 - ID: 10\n",
2501
- "$ xano release create --name \"v1.1-hotfix\" --branch main --hotfix --description \"Critical fix\" -o json"
2406
+ "$ xano release push ./my-release -n \"v1.0\"\nCreated release: v1.0 - ID: 10\n",
2407
+ "$ xano release push ./output -n \"v2.0\" -w 40 -d \"Major update\"\nCreated release: v2.0 - ID: 15\n",
2408
+ "$ xano release push ./backup -n \"v1.1-hotfix\" --hotfix --profile production\nCreated release: v1.1-hotfix - ID: 20\n",
2409
+ "$ xano release push ./my-release -n \"v1.0\" --no-records --no-env\nCreate release from schema only, skip records and environment variables\n",
2410
+ "$ xano release push ./my-release -n \"v1.0\" -o json\nOutput release details as JSON\n"
2502
2411
  ],
2503
2412
  "flags": {
2504
2413
  "profile": {
@@ -2520,24 +2429,23 @@
2520
2429
  "allowNo": false,
2521
2430
  "type": "boolean"
2522
2431
  },
2523
- "branch": {
2524
- "char": "b",
2525
- "description": "Branch to create the release from",
2526
- "name": "branch",
2527
- "required": true,
2528
- "hasDynamicHelp": false,
2529
- "multiple": false,
2530
- "type": "option"
2531
- },
2532
2432
  "description": {
2533
2433
  "char": "d",
2534
2434
  "description": "Release description",
2535
2435
  "name": "description",
2536
2436
  "required": false,
2437
+ "default": "",
2537
2438
  "hasDynamicHelp": false,
2538
2439
  "multiple": false,
2539
2440
  "type": "option"
2540
2441
  },
2442
+ "env": {
2443
+ "description": "Include environment variables (default: true, use --no-env to exclude)",
2444
+ "name": "env",
2445
+ "required": false,
2446
+ "allowNo": true,
2447
+ "type": "boolean"
2448
+ },
2541
2449
  "hotfix": {
2542
2450
  "description": "Mark as a hotfix release",
2543
2451
  "name": "hotfix",
@@ -2568,17 +2476,16 @@
2568
2476
  ],
2569
2477
  "type": "option"
2570
2478
  },
2571
- "table-ids": {
2572
- "description": "Comma-separated table IDs to include",
2573
- "name": "table-ids",
2479
+ "records": {
2480
+ "description": "Include records (default: true, use --no-records to exclude)",
2481
+ "name": "records",
2574
2482
  "required": false,
2575
- "hasDynamicHelp": false,
2576
- "multiple": false,
2577
- "type": "option"
2483
+ "allowNo": true,
2484
+ "type": "boolean"
2578
2485
  },
2579
2486
  "workspace": {
2580
2487
  "char": "w",
2581
- "description": "Workspace ID (uses profile workspace if not provided)",
2488
+ "description": "Workspace ID (optional if set in profile)",
2582
2489
  "name": "workspace",
2583
2490
  "required": false,
2584
2491
  "hasDynamicHelp": false,
@@ -2588,7 +2495,7 @@
2588
2495
  },
2589
2496
  "hasDynamicHelp": false,
2590
2497
  "hiddenAliases": [],
2591
- "id": "release:create",
2498
+ "id": "release:push",
2592
2499
  "pluginAlias": "@xano/cli",
2593
2500
  "pluginName": "@xano/cli",
2594
2501
  "pluginType": "core",
@@ -2599,24 +2506,23 @@
2599
2506
  "dist",
2600
2507
  "commands",
2601
2508
  "release",
2602
- "create",
2509
+ "push",
2603
2510
  "index.js"
2604
2511
  ]
2605
2512
  },
2606
- "tenant:delete": {
2513
+ "release:edit": {
2607
2514
  "aliases": [],
2608
2515
  "args": {
2609
- "tenant_name": {
2610
- "description": "Tenant name to delete",
2611
- "name": "tenant_name",
2516
+ "release_name": {
2517
+ "description": "Release name to edit",
2518
+ "name": "release_name",
2612
2519
  "required": true
2613
2520
  }
2614
2521
  },
2615
- "description": "Delete a tenant permanently. This destroys all associated infrastructure and cannot be undone.",
2522
+ "description": "Edit an existing release",
2616
2523
  "examples": [
2617
- "$ xano tenant delete t1234-abcd-xyz1\nAre you sure you want to delete tenant t1234-abcd-xyz1? This action cannot be undone. (y/N) y\nDeleted tenant t1234-abcd-xyz1\n",
2618
- "$ xano tenant delete t1234-abcd-xyz1 --force\nDeleted tenant t1234-abcd-xyz1\n",
2619
- "$ xano tenant delete t1234-abcd-xyz1 -f -o json"
2524
+ "$ xano release edit v1.0 --name \"v1.0-final\" --description \"Updated description\"\nUpdated release: v1.0-final - ID: 10\n",
2525
+ "$ xano release edit v1.0 --description \"New description\" -o json"
2620
2526
  ],
2621
2527
  "flags": {
2622
2528
  "profile": {
@@ -2638,13 +2544,23 @@
2638
2544
  "allowNo": false,
2639
2545
  "type": "boolean"
2640
2546
  },
2641
- "force": {
2642
- "char": "f",
2643
- "description": "Skip confirmation prompt",
2644
- "name": "force",
2547
+ "description": {
2548
+ "char": "d",
2549
+ "description": "New description",
2550
+ "name": "description",
2645
2551
  "required": false,
2646
- "allowNo": false,
2647
- "type": "boolean"
2552
+ "hasDynamicHelp": false,
2553
+ "multiple": false,
2554
+ "type": "option"
2555
+ },
2556
+ "name": {
2557
+ "char": "n",
2558
+ "description": "New name for the release",
2559
+ "name": "name",
2560
+ "required": false,
2561
+ "hasDynamicHelp": false,
2562
+ "multiple": false,
2563
+ "type": "option"
2648
2564
  },
2649
2565
  "output": {
2650
2566
  "char": "o",
@@ -2672,7 +2588,7 @@
2672
2588
  },
2673
2589
  "hasDynamicHelp": false,
2674
2590
  "hiddenAliases": [],
2675
- "id": "tenant:delete",
2591
+ "id": "release:edit",
2676
2592
  "pluginAlias": "@xano/cli",
2677
2593
  "pluginName": "@xano/cli",
2678
2594
  "pluginType": "core",
@@ -2682,8 +2598,8 @@
2682
2598
  "relativePath": [
2683
2599
  "dist",
2684
2600
  "commands",
2685
- "tenant",
2686
- "delete",
2601
+ "release",
2602
+ "edit",
2687
2603
  "index.js"
2688
2604
  ]
2689
2605
  },
@@ -2827,20 +2743,20 @@
2827
2743
  "index.js"
2828
2744
  ]
2829
2745
  },
2830
- "tenant:deploy_platform": {
2746
+ "tenant:delete": {
2831
2747
  "aliases": [],
2832
2748
  "args": {
2833
2749
  "tenant_name": {
2834
- "description": "Tenant name to deploy to",
2750
+ "description": "Tenant name to delete",
2835
2751
  "name": "tenant_name",
2836
2752
  "required": true
2837
2753
  }
2838
2754
  },
2839
- "description": "Deploy a platform version to a tenant",
2755
+ "description": "Delete a tenant permanently. This destroys all associated infrastructure and cannot be undone.",
2840
2756
  "examples": [
2841
- "$ xano tenant deploy_platform t1234-abcd-xyz1 --platform_id 5\nDeployed platform 5 to tenant: My Tenant (my-tenant)\n",
2842
- "$ xano tenant deploy_platform t1234-abcd-xyz1 --platform_id 5 -o json",
2843
- "$ xano tenant deploy_platform t1234-abcd-xyz1 --platform_id 5 --license ./license.yaml"
2757
+ "$ xano tenant delete t1234-abcd-xyz1\nAre you sure you want to delete tenant t1234-abcd-xyz1? This action cannot be undone. (y/N) y\nDeleted tenant t1234-abcd-xyz1\n",
2758
+ "$ xano tenant delete t1234-abcd-xyz1 --force\nDeleted tenant t1234-abcd-xyz1\n",
2759
+ "$ xano tenant delete t1234-abcd-xyz1 -f -o json"
2844
2760
  ],
2845
2761
  "flags": {
2846
2762
  "profile": {
@@ -2862,14 +2778,13 @@
2862
2778
  "allowNo": false,
2863
2779
  "type": "boolean"
2864
2780
  },
2865
- "license": {
2866
- "char": "l",
2867
- "description": "Path to a license override file to apply after deploy",
2868
- "name": "license",
2781
+ "force": {
2782
+ "char": "f",
2783
+ "description": "Skip confirmation prompt",
2784
+ "name": "force",
2869
2785
  "required": false,
2870
- "hasDynamicHelp": false,
2871
- "multiple": false,
2872
- "type": "option"
2786
+ "allowNo": false,
2787
+ "type": "boolean"
2873
2788
  },
2874
2789
  "output": {
2875
2790
  "char": "o",
@@ -2885,14 +2800,6 @@
2885
2800
  ],
2886
2801
  "type": "option"
2887
2802
  },
2888
- "platform_id": {
2889
- "description": "Platform ID to deploy",
2890
- "name": "platform_id",
2891
- "required": true,
2892
- "hasDynamicHelp": false,
2893
- "multiple": false,
2894
- "type": "option"
2895
- },
2896
2803
  "workspace": {
2897
2804
  "char": "w",
2898
2805
  "description": "Workspace ID (uses profile workspace if not provided)",
@@ -2905,7 +2812,7 @@
2905
2812
  },
2906
2813
  "hasDynamicHelp": false,
2907
2814
  "hiddenAliases": [],
2908
- "id": "tenant:deploy_platform",
2815
+ "id": "tenant:delete",
2909
2816
  "pluginAlias": "@xano/cli",
2910
2817
  "pluginName": "@xano/cli",
2911
2818
  "pluginType": "core",
@@ -2916,23 +2823,24 @@
2916
2823
  "dist",
2917
2824
  "commands",
2918
2825
  "tenant",
2919
- "deploy_platform",
2826
+ "delete",
2920
2827
  "index.js"
2921
2828
  ]
2922
2829
  },
2923
- "tenant:get": {
2830
+ "tenant:deploy_platform": {
2924
2831
  "aliases": [],
2925
2832
  "args": {
2926
2833
  "tenant_name": {
2927
- "description": "Tenant name to retrieve",
2834
+ "description": "Tenant name to deploy to",
2928
2835
  "name": "tenant_name",
2929
2836
  "required": true
2930
2837
  }
2931
2838
  },
2932
- "description": "Get details of a specific tenant",
2839
+ "description": "Deploy a platform version to a tenant",
2933
2840
  "examples": [
2934
- "$ 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",
2935
- "$ xano tenant get t1234-abcd-xyz1 -w 5 -o json"
2841
+ "$ xano tenant deploy_platform t1234-abcd-xyz1 --platform_id 5\nDeployed platform 5 to tenant: My Tenant (my-tenant)\n",
2842
+ "$ xano tenant deploy_platform t1234-abcd-xyz1 --platform_id 5 -o json",
2843
+ "$ xano tenant deploy_platform t1234-abcd-xyz1 --platform_id 5 --license ./license.yaml"
2936
2844
  ],
2937
2845
  "flags": {
2938
2846
  "profile": {
@@ -2954,6 +2862,15 @@
2954
2862
  "allowNo": false,
2955
2863
  "type": "boolean"
2956
2864
  },
2865
+ "license": {
2866
+ "char": "l",
2867
+ "description": "Path to a license override file to apply after deploy",
2868
+ "name": "license",
2869
+ "required": false,
2870
+ "hasDynamicHelp": false,
2871
+ "multiple": false,
2872
+ "type": "option"
2873
+ },
2957
2874
  "output": {
2958
2875
  "char": "o",
2959
2876
  "description": "Output format",
@@ -2968,6 +2885,14 @@
2968
2885
  ],
2969
2886
  "type": "option"
2970
2887
  },
2888
+ "platform_id": {
2889
+ "description": "Platform ID to deploy",
2890
+ "name": "platform_id",
2891
+ "required": true,
2892
+ "hasDynamicHelp": false,
2893
+ "multiple": false,
2894
+ "type": "option"
2895
+ },
2971
2896
  "workspace": {
2972
2897
  "char": "w",
2973
2898
  "description": "Workspace ID (uses profile workspace if not provided)",
@@ -2980,7 +2905,7 @@
2980
2905
  },
2981
2906
  "hasDynamicHelp": false,
2982
2907
  "hiddenAliases": [],
2983
- "id": "tenant:get",
2908
+ "id": "tenant:deploy_platform",
2984
2909
  "pluginAlias": "@xano/cli",
2985
2910
  "pluginName": "@xano/cli",
2986
2911
  "pluginType": "core",
@@ -2991,74 +2916,42 @@
2991
2916
  "dist",
2992
2917
  "commands",
2993
2918
  "tenant",
2994
- "get",
2919
+ "deploy_platform",
2995
2920
  "index.js"
2996
2921
  ]
2997
2922
  },
2998
- "tenant:edit": {
2923
+ "tenant:deploy_release": {
2999
2924
  "aliases": [],
3000
2925
  "args": {
3001
2926
  "tenant_name": {
3002
- "description": "Tenant name to edit",
2927
+ "description": "Tenant name to deploy to",
3003
2928
  "name": "tenant_name",
3004
2929
  "required": true
3005
2930
  }
3006
2931
  },
3007
- "description": "Edit an existing tenant",
3008
- "examples": [
3009
- "$ xano tenant edit t1234-abcd-xyz1 --display \"New Name\" --description \"Updated description\"\nUpdated tenant: New Name (my-tenant) - ID: 42\n",
3010
- "$ xano tenant edit t1234-abcd-xyz1 --no-tasks --no-ingress -o json"
3011
- ],
3012
- "flags": {
3013
- "profile": {
3014
- "char": "p",
3015
- "description": "Profile to use (uses default profile if not specified)",
3016
- "env": "XANO_PROFILE",
3017
- "name": "profile",
3018
- "required": false,
3019
- "hasDynamicHelp": false,
3020
- "multiple": false,
3021
- "type": "option"
3022
- },
3023
- "verbose": {
3024
- "char": "v",
3025
- "description": "Show detailed request/response information",
3026
- "env": "XANO_VERBOSE",
3027
- "name": "verbose",
3028
- "required": false,
3029
- "allowNo": false,
3030
- "type": "boolean"
3031
- },
3032
- "description": {
3033
- "char": "d",
3034
- "description": "New description",
3035
- "name": "description",
3036
- "required": false,
3037
- "hasDynamicHelp": false,
3038
- "multiple": false,
3039
- "type": "option"
3040
- },
3041
- "display": {
3042
- "description": "New display name",
3043
- "name": "display",
3044
- "required": false,
3045
- "hasDynamicHelp": false,
3046
- "multiple": false,
3047
- "type": "option"
3048
- },
3049
- "domain": {
3050
- "description": "Custom domain",
3051
- "name": "domain",
2932
+ "description": "Deploy a release to a tenant",
2933
+ "examples": [
2934
+ "$ xano tenant deploy_release t1234-abcd-xyz1 --release v1.0\nDeployed release \"v1.0\" to tenant: My Tenant (my-tenant)\n",
2935
+ "$ xano tenant deploy_release t1234-abcd-xyz1 --release v1.0 -o json"
2936
+ ],
2937
+ "flags": {
2938
+ "profile": {
2939
+ "char": "p",
2940
+ "description": "Profile to use (uses default profile if not specified)",
2941
+ "env": "XANO_PROFILE",
2942
+ "name": "profile",
3052
2943
  "required": false,
3053
2944
  "hasDynamicHelp": false,
3054
2945
  "multiple": false,
3055
2946
  "type": "option"
3056
2947
  },
3057
- "ingress": {
3058
- "description": "Enable/disable ingress",
3059
- "name": "ingress",
2948
+ "verbose": {
2949
+ "char": "v",
2950
+ "description": "Show detailed request/response information",
2951
+ "env": "XANO_VERBOSE",
2952
+ "name": "verbose",
3060
2953
  "required": false,
3061
- "allowNo": true,
2954
+ "allowNo": false,
3062
2955
  "type": "boolean"
3063
2956
  },
3064
2957
  "output": {
@@ -3075,28 +2968,15 @@
3075
2968
  ],
3076
2969
  "type": "option"
3077
2970
  },
3078
- "proxy": {
3079
- "description": "Proxy URL",
3080
- "name": "proxy",
3081
- "required": false,
2971
+ "release": {
2972
+ "char": "r",
2973
+ "description": "Release name to deploy",
2974
+ "name": "release",
2975
+ "required": true,
3082
2976
  "hasDynamicHelp": false,
3083
2977
  "multiple": false,
3084
2978
  "type": "option"
3085
2979
  },
3086
- "rbac": {
3087
- "description": "Enable/disable RBAC",
3088
- "name": "rbac",
3089
- "required": false,
3090
- "allowNo": true,
3091
- "type": "boolean"
3092
- },
3093
- "tasks": {
3094
- "description": "Enable/disable background tasks",
3095
- "name": "tasks",
3096
- "required": false,
3097
- "allowNo": true,
3098
- "type": "boolean"
3099
- },
3100
2980
  "workspace": {
3101
2981
  "char": "w",
3102
2982
  "description": "Workspace ID (uses profile workspace if not provided)",
@@ -3109,7 +2989,7 @@
3109
2989
  },
3110
2990
  "hasDynamicHelp": false,
3111
2991
  "hiddenAliases": [],
3112
- "id": "tenant:edit",
2992
+ "id": "tenant:deploy_release",
3113
2993
  "pluginAlias": "@xano/cli",
3114
2994
  "pluginName": "@xano/cli",
3115
2995
  "pluginType": "core",
@@ -3120,23 +3000,23 @@
3120
3000
  "dist",
3121
3001
  "commands",
3122
3002
  "tenant",
3123
- "edit",
3003
+ "deploy_release",
3124
3004
  "index.js"
3125
3005
  ]
3126
3006
  },
3127
- "tenant:deploy_release": {
3007
+ "tenant:get": {
3128
3008
  "aliases": [],
3129
3009
  "args": {
3130
3010
  "tenant_name": {
3131
- "description": "Tenant name to deploy to",
3011
+ "description": "Tenant name to retrieve",
3132
3012
  "name": "tenant_name",
3133
3013
  "required": true
3134
3014
  }
3135
3015
  },
3136
- "description": "Deploy a release to a tenant",
3016
+ "description": "Get details of a specific tenant",
3137
3017
  "examples": [
3138
- "$ xano tenant deploy_release t1234-abcd-xyz1 --release v1.0\nDeployed release \"v1.0\" to tenant: My Tenant (my-tenant)\n",
3139
- "$ xano tenant deploy_release t1234-abcd-xyz1 --release v1.0 -o json"
3018
+ "$ 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",
3019
+ "$ xano tenant get t1234-abcd-xyz1 -w 5 -o json"
3140
3020
  ],
3141
3021
  "flags": {
3142
3022
  "profile": {
@@ -3172,15 +3052,6 @@
3172
3052
  ],
3173
3053
  "type": "option"
3174
3054
  },
3175
- "release": {
3176
- "char": "r",
3177
- "description": "Release name to deploy",
3178
- "name": "release",
3179
- "required": true,
3180
- "hasDynamicHelp": false,
3181
- "multiple": false,
3182
- "type": "option"
3183
- },
3184
3055
  "workspace": {
3185
3056
  "char": "w",
3186
3057
  "description": "Workspace ID (uses profile workspace if not provided)",
@@ -3193,7 +3064,7 @@
3193
3064
  },
3194
3065
  "hasDynamicHelp": false,
3195
3066
  "hiddenAliases": [],
3196
- "id": "tenant:deploy_release",
3067
+ "id": "tenant:get",
3197
3068
  "pluginAlias": "@xano/cli",
3198
3069
  "pluginName": "@xano/cli",
3199
3070
  "pluginType": "core",
@@ -3204,7 +3075,7 @@
3204
3075
  "dist",
3205
3076
  "commands",
3206
3077
  "tenant",
3207
- "deploy_release",
3078
+ "get",
3208
3079
  "index.js"
3209
3080
  ]
3210
3081
  },
@@ -3360,23 +3231,21 @@
3360
3231
  "index.js"
3361
3232
  ]
3362
3233
  },
3363
- "tenant:push": {
3234
+ "tenant:pull": {
3364
3235
  "aliases": [],
3365
3236
  "args": {
3366
3237
  "directory": {
3367
- "description": "Directory containing documents to push (as produced by tenant pull or workspace pull)",
3238
+ "description": "Output directory for pulled documents",
3368
3239
  "name": "directory",
3369
3240
  "required": true
3370
3241
  }
3371
3242
  },
3372
- "description": "Push local documents to a tenant via the Xano Metadata API multidoc endpoint",
3243
+ "description": "Pull a tenant multidoc from the Xano Metadata API and split into individual files",
3373
3244
  "examples": [
3374
- "$ xano tenant push ./my-workspace -t my-tenant\nPushed 42 documents to tenant my-tenant from ./my-workspace\n",
3375
- "$ xano tenant push ./output -t my-tenant -w 40\nPushed 15 documents to tenant my-tenant from ./output\n",
3376
- "$ xano tenant push ./backup -t my-tenant --profile production\nPushed 58 documents to tenant my-tenant from ./backup\n",
3377
- "$ xano tenant push ./my-workspace -t my-tenant --records\nInclude table records in import\n",
3378
- "$ xano tenant push ./my-workspace -t my-tenant --env\nInclude environment variables in import\n",
3379
- "$ xano tenant push ./my-workspace -t my-tenant --truncate\nTruncate all table records before importing\n"
3245
+ "$ xano tenant pull ./my-tenant -t my-tenant\nPulled 42 documents from tenant my-tenant to ./my-tenant\n",
3246
+ "$ xano tenant pull ./output -t my-tenant -w 40\nPulled 15 documents from tenant my-tenant to ./output\n",
3247
+ "$ xano tenant pull ./backup -t my-tenant --profile production --env --records\nPulled 58 documents from tenant my-tenant to ./backup\n",
3248
+ "$ xano tenant pull ./my-tenant -t my-tenant --draft\nPulled 42 documents from tenant my-tenant to ./my-tenant\n"
3380
3249
  ],
3381
3250
  "flags": {
3382
3251
  "profile": {
@@ -3398,15 +3267,22 @@
3398
3267
  "allowNo": false,
3399
3268
  "type": "boolean"
3400
3269
  },
3270
+ "draft": {
3271
+ "description": "Include draft versions",
3272
+ "name": "draft",
3273
+ "required": false,
3274
+ "allowNo": false,
3275
+ "type": "boolean"
3276
+ },
3401
3277
  "env": {
3402
- "description": "Include environment variables in import",
3278
+ "description": "Include environment variables",
3403
3279
  "name": "env",
3404
3280
  "required": false,
3405
3281
  "allowNo": false,
3406
3282
  "type": "boolean"
3407
3283
  },
3408
3284
  "records": {
3409
- "description": "Include records in import",
3285
+ "description": "Include records",
3410
3286
  "name": "records",
3411
3287
  "required": false,
3412
3288
  "allowNo": false,
@@ -3414,27 +3290,13 @@
3414
3290
  },
3415
3291
  "tenant": {
3416
3292
  "char": "t",
3417
- "description": "Tenant name to push to",
3293
+ "description": "Tenant name to pull from",
3418
3294
  "name": "tenant",
3419
3295
  "required": true,
3420
3296
  "hasDynamicHelp": false,
3421
3297
  "multiple": false,
3422
3298
  "type": "option"
3423
3299
  },
3424
- "transaction": {
3425
- "description": "Wrap import in a database transaction (use --no-transaction for debugging purposes)",
3426
- "name": "transaction",
3427
- "required": false,
3428
- "allowNo": true,
3429
- "type": "boolean"
3430
- },
3431
- "truncate": {
3432
- "description": "Truncate all table records before importing",
3433
- "name": "truncate",
3434
- "required": false,
3435
- "allowNo": false,
3436
- "type": "boolean"
3437
- },
3438
3300
  "workspace": {
3439
3301
  "char": "w",
3440
3302
  "description": "Workspace ID (optional if set in profile)",
@@ -3447,7 +3309,7 @@
3447
3309
  },
3448
3310
  "hasDynamicHelp": false,
3449
3311
  "hiddenAliases": [],
3450
- "id": "tenant:push",
3312
+ "id": "tenant:pull",
3451
3313
  "pluginAlias": "@xano/cli",
3452
3314
  "pluginName": "@xano/cli",
3453
3315
  "pluginType": "core",
@@ -3458,25 +3320,27 @@
3458
3320
  "dist",
3459
3321
  "commands",
3460
3322
  "tenant",
3461
- "push",
3323
+ "pull",
3462
3324
  "index.js"
3463
3325
  ]
3464
3326
  },
3465
- "tenant:pull": {
3327
+ "tenant:push": {
3466
3328
  "aliases": [],
3467
3329
  "args": {
3468
3330
  "directory": {
3469
- "description": "Output directory for pulled documents",
3331
+ "description": "Directory containing documents to push (as produced by tenant pull or workspace pull)",
3470
3332
  "name": "directory",
3471
3333
  "required": true
3472
3334
  }
3473
3335
  },
3474
- "description": "Pull a tenant multidoc from the Xano Metadata API and split into individual files",
3336
+ "description": "Push local documents to a tenant via the Xano Metadata API multidoc endpoint",
3475
3337
  "examples": [
3476
- "$ xano tenant pull ./my-tenant -t my-tenant\nPulled 42 documents from tenant my-tenant to ./my-tenant\n",
3477
- "$ xano tenant pull ./output -t my-tenant -w 40\nPulled 15 documents from tenant my-tenant to ./output\n",
3478
- "$ xano tenant pull ./backup -t my-tenant --profile production --env --records\nPulled 58 documents from tenant my-tenant to ./backup\n",
3479
- "$ xano tenant pull ./my-tenant -t my-tenant --draft\nPulled 42 documents from tenant my-tenant to ./my-tenant\n"
3338
+ "$ xano tenant push ./my-workspace -t my-tenant\nPushed 42 documents to tenant my-tenant from ./my-workspace\n",
3339
+ "$ xano tenant push ./output -t my-tenant -w 40\nPushed 15 documents to tenant my-tenant from ./output\n",
3340
+ "$ xano tenant push ./backup -t my-tenant --profile production\nPushed 58 documents to tenant my-tenant from ./backup\n",
3341
+ "$ xano tenant push ./my-workspace -t my-tenant --records\nInclude table records in import\n",
3342
+ "$ xano tenant push ./my-workspace -t my-tenant --env\nInclude environment variables in import\n",
3343
+ "$ xano tenant push ./my-workspace -t my-tenant --truncate\nTruncate all table records before importing\n"
3480
3344
  ],
3481
3345
  "flags": {
3482
3346
  "profile": {
@@ -3498,22 +3362,15 @@
3498
3362
  "allowNo": false,
3499
3363
  "type": "boolean"
3500
3364
  },
3501
- "draft": {
3502
- "description": "Include draft versions",
3503
- "name": "draft",
3504
- "required": false,
3505
- "allowNo": false,
3506
- "type": "boolean"
3507
- },
3508
3365
  "env": {
3509
- "description": "Include environment variables",
3366
+ "description": "Include environment variables in import",
3510
3367
  "name": "env",
3511
3368
  "required": false,
3512
3369
  "allowNo": false,
3513
3370
  "type": "boolean"
3514
3371
  },
3515
3372
  "records": {
3516
- "description": "Include records",
3373
+ "description": "Include records in import",
3517
3374
  "name": "records",
3518
3375
  "required": false,
3519
3376
  "allowNo": false,
@@ -3521,13 +3378,27 @@
3521
3378
  },
3522
3379
  "tenant": {
3523
3380
  "char": "t",
3524
- "description": "Tenant name to pull from",
3381
+ "description": "Tenant name to push to",
3525
3382
  "name": "tenant",
3526
3383
  "required": true,
3527
3384
  "hasDynamicHelp": false,
3528
3385
  "multiple": false,
3529
3386
  "type": "option"
3530
3387
  },
3388
+ "transaction": {
3389
+ "description": "Wrap import in a database transaction (use --no-transaction for debugging purposes)",
3390
+ "name": "transaction",
3391
+ "required": false,
3392
+ "allowNo": true,
3393
+ "type": "boolean"
3394
+ },
3395
+ "truncate": {
3396
+ "description": "Truncate all table records before importing",
3397
+ "name": "truncate",
3398
+ "required": false,
3399
+ "allowNo": false,
3400
+ "type": "boolean"
3401
+ },
3531
3402
  "workspace": {
3532
3403
  "char": "w",
3533
3404
  "description": "Workspace ID (optional if set in profile)",
@@ -3540,7 +3411,7 @@
3540
3411
  },
3541
3412
  "hasDynamicHelp": false,
3542
3413
  "hiddenAliases": [],
3543
- "id": "tenant:pull",
3414
+ "id": "tenant:push",
3544
3415
  "pluginAlias": "@xano/cli",
3545
3416
  "pluginName": "@xano/cli",
3546
3417
  "pluginType": "core",
@@ -3551,23 +3422,18 @@
3551
3422
  "dist",
3552
3423
  "commands",
3553
3424
  "tenant",
3554
- "pull",
3425
+ "push",
3555
3426
  "index.js"
3556
3427
  ]
3557
3428
  },
3558
- "unit_test:run": {
3429
+ "unit_test:list": {
3559
3430
  "aliases": [],
3560
- "args": {
3561
- "unit_test_id": {
3562
- "description": "ID of the unit test to run",
3563
- "name": "unit_test_id",
3564
- "required": true
3565
- }
3566
- },
3567
- "description": "Run a unit test",
3431
+ "args": {},
3432
+ "description": "List all unit tests in a workspace",
3568
3433
  "examples": [
3569
- "$ xano unit-test run abc-123\nRunning unit test abc-123...\nResult: PASS\n",
3570
- "$ xano unit-test run abc-123 -o json"
3434
+ "$ xano unit-test list\nUnit tests in workspace 5:\n - my-test (ID: abc-123) [function: math]\n - auth-check (ID: def-456) [query: /user/login]\n",
3435
+ "$ xano unit-test list -w 5 --output json",
3436
+ "$ xano unit-test list --obj-type function"
3571
3437
  ],
3572
3438
  "flags": {
3573
3439
  "profile": {
@@ -3589,6 +3455,28 @@
3589
3455
  "allowNo": false,
3590
3456
  "type": "boolean"
3591
3457
  },
3458
+ "branch": {
3459
+ "char": "b",
3460
+ "description": "Filter by branch name",
3461
+ "name": "branch",
3462
+ "required": false,
3463
+ "hasDynamicHelp": false,
3464
+ "multiple": false,
3465
+ "type": "option"
3466
+ },
3467
+ "obj-type": {
3468
+ "description": "Filter by object type",
3469
+ "name": "obj-type",
3470
+ "required": false,
3471
+ "hasDynamicHelp": false,
3472
+ "multiple": false,
3473
+ "options": [
3474
+ "function",
3475
+ "query",
3476
+ "middleware"
3477
+ ],
3478
+ "type": "option"
3479
+ },
3592
3480
  "output": {
3593
3481
  "char": "o",
3594
3482
  "description": "Output format",
@@ -3615,7 +3503,7 @@
3615
3503
  },
3616
3504
  "hasDynamicHelp": false,
3617
3505
  "hiddenAliases": [],
3618
- "id": "unit_test:run",
3506
+ "id": "unit_test:list",
3619
3507
  "pluginAlias": "@xano/cli",
3620
3508
  "pluginName": "@xano/cli",
3621
3509
  "pluginType": "core",
@@ -3626,18 +3514,23 @@
3626
3514
  "dist",
3627
3515
  "commands",
3628
3516
  "unit_test",
3629
- "run",
3517
+ "list",
3630
3518
  "index.js"
3631
3519
  ]
3632
3520
  },
3633
- "unit_test:list": {
3521
+ "unit_test:run": {
3634
3522
  "aliases": [],
3635
- "args": {},
3636
- "description": "List all unit tests in a workspace",
3523
+ "args": {
3524
+ "unit_test_id": {
3525
+ "description": "ID of the unit test to run",
3526
+ "name": "unit_test_id",
3527
+ "required": true
3528
+ }
3529
+ },
3530
+ "description": "Run a unit test",
3637
3531
  "examples": [
3638
- "$ xano unit-test list\nUnit tests in workspace 5:\n - my-test (ID: abc-123) [function: math]\n - auth-check (ID: def-456) [query: /user/login]\n",
3639
- "$ xano unit-test list -w 5 --output json",
3640
- "$ xano unit-test list --obj-type function"
3532
+ "$ xano unit-test run abc-123\nRunning unit test abc-123...\nResult: PASS\n",
3533
+ "$ xano unit-test run abc-123 -o json"
3641
3534
  ],
3642
3535
  "flags": {
3643
3536
  "profile": {
@@ -3650,37 +3543,15 @@
3650
3543
  "multiple": false,
3651
3544
  "type": "option"
3652
3545
  },
3653
- "verbose": {
3654
- "char": "v",
3655
- "description": "Show detailed request/response information",
3656
- "env": "XANO_VERBOSE",
3657
- "name": "verbose",
3658
- "required": false,
3659
- "allowNo": false,
3660
- "type": "boolean"
3661
- },
3662
- "branch": {
3663
- "char": "b",
3664
- "description": "Filter by branch name",
3665
- "name": "branch",
3666
- "required": false,
3667
- "hasDynamicHelp": false,
3668
- "multiple": false,
3669
- "type": "option"
3670
- },
3671
- "obj-type": {
3672
- "description": "Filter by object type",
3673
- "name": "obj-type",
3674
- "required": false,
3675
- "hasDynamicHelp": false,
3676
- "multiple": false,
3677
- "options": [
3678
- "function",
3679
- "query",
3680
- "middleware"
3681
- ],
3682
- "type": "option"
3683
- },
3546
+ "verbose": {
3547
+ "char": "v",
3548
+ "description": "Show detailed request/response information",
3549
+ "env": "XANO_VERBOSE",
3550
+ "name": "verbose",
3551
+ "required": false,
3552
+ "allowNo": false,
3553
+ "type": "boolean"
3554
+ },
3684
3555
  "output": {
3685
3556
  "char": "o",
3686
3557
  "description": "Output format",
@@ -3707,7 +3578,7 @@
3707
3578
  },
3708
3579
  "hasDynamicHelp": false,
3709
3580
  "hiddenAliases": [],
3710
- "id": "unit_test:list",
3581
+ "id": "unit_test:run",
3711
3582
  "pluginAlias": "@xano/cli",
3712
3583
  "pluginName": "@xano/cli",
3713
3584
  "pluginType": "core",
@@ -3718,7 +3589,7 @@
3718
3589
  "dist",
3719
3590
  "commands",
3720
3591
  "unit_test",
3721
- "list",
3592
+ "run",
3722
3593
  "index.js"
3723
3594
  ]
3724
3595
  },
@@ -4134,6 +4005,135 @@
4134
4005
  "index.js"
4135
4006
  ]
4136
4007
  },
4008
+ "tenant:edit": {
4009
+ "aliases": [],
4010
+ "args": {
4011
+ "tenant_name": {
4012
+ "description": "Tenant name to edit",
4013
+ "name": "tenant_name",
4014
+ "required": true
4015
+ }
4016
+ },
4017
+ "description": "Edit an existing tenant",
4018
+ "examples": [
4019
+ "$ xano tenant edit t1234-abcd-xyz1 --display \"New Name\" --description \"Updated description\"\nUpdated tenant: New Name (my-tenant) - ID: 42\n",
4020
+ "$ xano tenant edit t1234-abcd-xyz1 --no-tasks --no-ingress -o json"
4021
+ ],
4022
+ "flags": {
4023
+ "profile": {
4024
+ "char": "p",
4025
+ "description": "Profile to use (uses default profile if not specified)",
4026
+ "env": "XANO_PROFILE",
4027
+ "name": "profile",
4028
+ "required": false,
4029
+ "hasDynamicHelp": false,
4030
+ "multiple": false,
4031
+ "type": "option"
4032
+ },
4033
+ "verbose": {
4034
+ "char": "v",
4035
+ "description": "Show detailed request/response information",
4036
+ "env": "XANO_VERBOSE",
4037
+ "name": "verbose",
4038
+ "required": false,
4039
+ "allowNo": false,
4040
+ "type": "boolean"
4041
+ },
4042
+ "description": {
4043
+ "char": "d",
4044
+ "description": "New description",
4045
+ "name": "description",
4046
+ "required": false,
4047
+ "hasDynamicHelp": false,
4048
+ "multiple": false,
4049
+ "type": "option"
4050
+ },
4051
+ "display": {
4052
+ "description": "New display name",
4053
+ "name": "display",
4054
+ "required": false,
4055
+ "hasDynamicHelp": false,
4056
+ "multiple": false,
4057
+ "type": "option"
4058
+ },
4059
+ "domain": {
4060
+ "description": "Custom domain",
4061
+ "name": "domain",
4062
+ "required": false,
4063
+ "hasDynamicHelp": false,
4064
+ "multiple": false,
4065
+ "type": "option"
4066
+ },
4067
+ "ingress": {
4068
+ "description": "Enable/disable ingress",
4069
+ "name": "ingress",
4070
+ "required": false,
4071
+ "allowNo": true,
4072
+ "type": "boolean"
4073
+ },
4074
+ "output": {
4075
+ "char": "o",
4076
+ "description": "Output format",
4077
+ "name": "output",
4078
+ "required": false,
4079
+ "default": "summary",
4080
+ "hasDynamicHelp": false,
4081
+ "multiple": false,
4082
+ "options": [
4083
+ "summary",
4084
+ "json"
4085
+ ],
4086
+ "type": "option"
4087
+ },
4088
+ "proxy": {
4089
+ "description": "Proxy URL",
4090
+ "name": "proxy",
4091
+ "required": false,
4092
+ "hasDynamicHelp": false,
4093
+ "multiple": false,
4094
+ "type": "option"
4095
+ },
4096
+ "rbac": {
4097
+ "description": "Enable/disable RBAC",
4098
+ "name": "rbac",
4099
+ "required": false,
4100
+ "allowNo": true,
4101
+ "type": "boolean"
4102
+ },
4103
+ "tasks": {
4104
+ "description": "Enable/disable background tasks",
4105
+ "name": "tasks",
4106
+ "required": false,
4107
+ "allowNo": true,
4108
+ "type": "boolean"
4109
+ },
4110
+ "workspace": {
4111
+ "char": "w",
4112
+ "description": "Workspace ID (uses profile workspace if not provided)",
4113
+ "name": "workspace",
4114
+ "required": false,
4115
+ "hasDynamicHelp": false,
4116
+ "multiple": false,
4117
+ "type": "option"
4118
+ }
4119
+ },
4120
+ "hasDynamicHelp": false,
4121
+ "hiddenAliases": [],
4122
+ "id": "tenant:edit",
4123
+ "pluginAlias": "@xano/cli",
4124
+ "pluginName": "@xano/cli",
4125
+ "pluginType": "core",
4126
+ "strict": true,
4127
+ "enableJsonFlag": false,
4128
+ "isESM": true,
4129
+ "relativePath": [
4130
+ "dist",
4131
+ "commands",
4132
+ "tenant",
4133
+ "edit",
4134
+ "index.js"
4135
+ ]
4136
+ },
4137
4137
  "workflow_test:run_all": {
4138
4138
  "aliases": [],
4139
4139
  "args": {},
@@ -4212,20 +4212,20 @@
4212
4212
  "index.js"
4213
4213
  ]
4214
4214
  },
4215
- "workspace:delete": {
4215
+ "workspace:create": {
4216
4216
  "aliases": [],
4217
4217
  "args": {
4218
- "workspace_id": {
4219
- "description": "Workspace ID to delete",
4220
- "name": "workspace_id",
4218
+ "name": {
4219
+ "description": "Name of the workspace",
4220
+ "name": "name",
4221
4221
  "required": true
4222
4222
  }
4223
4223
  },
4224
- "description": "Delete a workspace via the Xano Metadata API. Cannot delete workspaces with active tenants.",
4224
+ "description": "Create a new workspace via the Xano Metadata API",
4225
4225
  "examples": [
4226
- "$ 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",
4227
- "$ xano workspace delete 123 --force\nDeleted workspace 123\n",
4228
- "$ xano workspace delete 123 -f -o json\n{\n \"deleted\": true,\n \"workspace_id\": 123\n}\n"
4226
+ "$ xano workspace create my-workspace\nCreated workspace: my-workspace (ID: 123)\n",
4227
+ "$ xano workspace create my-app --description \"My application workspace\"\nCreated workspace: my-app (ID: 456)\n Description: My application workspace\n",
4228
+ "$ xano workspace create new-project -d \"New project workspace\" -o json\n{\n \"id\": 789,\n \"name\": \"new-project\",\n \"description\": \"New project workspace\"\n}\n"
4229
4229
  ],
4230
4230
  "flags": {
4231
4231
  "profile": {
@@ -4247,13 +4247,14 @@
4247
4247
  "allowNo": false,
4248
4248
  "type": "boolean"
4249
4249
  },
4250
- "force": {
4251
- "char": "f",
4252
- "description": "Skip confirmation prompt",
4253
- "name": "force",
4250
+ "description": {
4251
+ "char": "d",
4252
+ "description": "Description for the workspace",
4253
+ "name": "description",
4254
4254
  "required": false,
4255
- "allowNo": false,
4256
- "type": "boolean"
4255
+ "hasDynamicHelp": false,
4256
+ "multiple": false,
4257
+ "type": "option"
4257
4258
  },
4258
4259
  "output": {
4259
4260
  "char": "o",
@@ -4272,7 +4273,7 @@
4272
4273
  },
4273
4274
  "hasDynamicHelp": false,
4274
4275
  "hiddenAliases": [],
4275
- "id": "workspace:delete",
4276
+ "id": "workspace:create",
4276
4277
  "pluginAlias": "@xano/cli",
4277
4278
  "pluginName": "@xano/cli",
4278
4279
  "pluginType": "core",
@@ -4283,25 +4284,24 @@
4283
4284
  "dist",
4284
4285
  "commands",
4285
4286
  "workspace",
4286
- "delete",
4287
+ "create",
4287
4288
  "index.js"
4288
4289
  ]
4289
4290
  },
4290
- "workspace:edit": {
4291
+ "workspace:delete": {
4291
4292
  "aliases": [],
4292
4293
  "args": {
4293
4294
  "workspace_id": {
4294
- "description": "Workspace ID to edit (uses profile workspace if not provided)",
4295
+ "description": "Workspace ID to delete",
4295
4296
  "name": "workspace_id",
4296
- "required": false
4297
+ "required": true
4297
4298
  }
4298
4299
  },
4299
- "description": "Edit an existing workspace via the Xano Metadata API",
4300
+ "description": "Delete a workspace via the Xano Metadata API. Cannot delete workspaces with active tenants.",
4300
4301
  "examples": [
4301
- "$ xano workspace edit 123 --name \"new-name\"\nUpdated workspace: new-name (ID: 123)\n",
4302
- "$ xano workspace edit --name \"updated-workspace\" --description \"Updated description\"\nUpdated workspace: updated-workspace (ID: 123)\n Description: Updated description\n",
4303
- "$ xano workspace edit 123 --swagger --require-token\nUpdated workspace: my-workspace (ID: 123)\n Swagger: enabled\n Require Token: true\n",
4304
- "$ xano workspace edit 123 --no-swagger -o json\n{\n \"id\": 123,\n \"name\": \"my-workspace\",\n \"swagger\": false\n}\n"
4302
+ "$ 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",
4303
+ "$ xano workspace delete 123 --force\nDeleted workspace 123\n",
4304
+ "$ xano workspace delete 123 -f -o json\n{\n \"deleted\": true,\n \"workspace_id\": 123\n}\n"
4305
4305
  ],
4306
4306
  "flags": {
4307
4307
  "profile": {
@@ -4323,23 +4323,13 @@
4323
4323
  "allowNo": false,
4324
4324
  "type": "boolean"
4325
4325
  },
4326
- "description": {
4327
- "char": "d",
4328
- "description": "New description for the workspace",
4329
- "name": "description",
4330
- "required": false,
4331
- "hasDynamicHelp": false,
4332
- "multiple": false,
4333
- "type": "option"
4334
- },
4335
- "name": {
4336
- "char": "n",
4337
- "description": "New name for the workspace",
4338
- "name": "name",
4326
+ "force": {
4327
+ "char": "f",
4328
+ "description": "Skip confirmation prompt",
4329
+ "name": "force",
4339
4330
  "required": false,
4340
- "hasDynamicHelp": false,
4341
- "multiple": false,
4342
- "type": "option"
4331
+ "allowNo": false,
4332
+ "type": "boolean"
4343
4333
  },
4344
4334
  "output": {
4345
4335
  "char": "o",
@@ -4354,25 +4344,11 @@
4354
4344
  "json"
4355
4345
  ],
4356
4346
  "type": "option"
4357
- },
4358
- "require-token": {
4359
- "description": "Whether to require a token for documentation access",
4360
- "name": "require-token",
4361
- "required": false,
4362
- "allowNo": true,
4363
- "type": "boolean"
4364
- },
4365
- "swagger": {
4366
- "description": "Enable or disable swagger documentation",
4367
- "name": "swagger",
4368
- "required": false,
4369
- "allowNo": true,
4370
- "type": "boolean"
4371
4347
  }
4372
4348
  },
4373
4349
  "hasDynamicHelp": false,
4374
4350
  "hiddenAliases": [],
4375
- "id": "workspace:edit",
4351
+ "id": "workspace:delete",
4376
4352
  "pluginAlias": "@xano/cli",
4377
4353
  "pluginName": "@xano/cli",
4378
4354
  "pluginType": "core",
@@ -4383,24 +4359,24 @@
4383
4359
  "dist",
4384
4360
  "commands",
4385
4361
  "workspace",
4386
- "edit",
4362
+ "delete",
4387
4363
  "index.js"
4388
4364
  ]
4389
4365
  },
4390
- "workspace:create": {
4366
+ "workspace:get": {
4391
4367
  "aliases": [],
4392
4368
  "args": {
4393
- "name": {
4394
- "description": "Name of the workspace",
4395
- "name": "name",
4396
- "required": true
4369
+ "workspace_id": {
4370
+ "description": "Workspace ID to get details for (uses profile workspace if not provided)",
4371
+ "name": "workspace_id",
4372
+ "required": false
4397
4373
  }
4398
4374
  },
4399
- "description": "Create a new workspace via the Xano Metadata API",
4375
+ "description": "Get details of a specific workspace from the Xano Metadata API",
4400
4376
  "examples": [
4401
- "$ xano workspace create my-workspace\nCreated workspace: my-workspace (ID: 123)\n",
4402
- "$ xano workspace create my-app --description \"My application workspace\"\nCreated workspace: my-app (ID: 456)\n Description: My application workspace\n",
4403
- "$ xano workspace create new-project -d \"New project workspace\" -o json\n{\n \"id\": 789,\n \"name\": \"new-project\",\n \"description\": \"New project workspace\"\n}\n"
4377
+ "$ xano workspace get 123\nWorkspace: my-workspace (ID: 123)\n Description: My workspace description\n Created: 2024-01-15\n",
4378
+ "$ xano workspace get --output json\n{\n \"id\": 123,\n \"name\": \"my-workspace\",\n \"description\": \"My workspace description\"\n}\n",
4379
+ "$ xano workspace get 456 -p production -o json\n{\n \"id\": 456,\n \"name\": \"production-workspace\"\n}\n"
4404
4380
  ],
4405
4381
  "flags": {
4406
4382
  "profile": {
@@ -4419,17 +4395,8 @@
4419
4395
  "env": "XANO_VERBOSE",
4420
4396
  "name": "verbose",
4421
4397
  "required": false,
4422
- "allowNo": false,
4423
- "type": "boolean"
4424
- },
4425
- "description": {
4426
- "char": "d",
4427
- "description": "Description for the workspace",
4428
- "name": "description",
4429
- "required": false,
4430
- "hasDynamicHelp": false,
4431
- "multiple": false,
4432
- "type": "option"
4398
+ "allowNo": false,
4399
+ "type": "boolean"
4433
4400
  },
4434
4401
  "output": {
4435
4402
  "char": "o",
@@ -4448,7 +4415,7 @@
4448
4415
  },
4449
4416
  "hasDynamicHelp": false,
4450
4417
  "hiddenAliases": [],
4451
- "id": "workspace:create",
4418
+ "id": "workspace:get",
4452
4419
  "pluginAlias": "@xano/cli",
4453
4420
  "pluginName": "@xano/cli",
4454
4421
  "pluginType": "core",
@@ -4459,24 +4426,19 @@
4459
4426
  "dist",
4460
4427
  "commands",
4461
4428
  "workspace",
4462
- "create",
4429
+ "get",
4463
4430
  "index.js"
4464
4431
  ]
4465
4432
  },
4466
- "workspace:get": {
4433
+ "workspace:list": {
4467
4434
  "aliases": [],
4468
- "args": {
4469
- "workspace_id": {
4470
- "description": "Workspace ID to get details for (uses profile workspace if not provided)",
4471
- "name": "workspace_id",
4472
- "required": false
4473
- }
4474
- },
4475
- "description": "Get details of a specific workspace from the Xano Metadata API",
4435
+ "args": {},
4436
+ "description": "List all workspaces from the Xano Metadata API",
4476
4437
  "examples": [
4477
- "$ xano workspace get 123\nWorkspace: my-workspace (ID: 123)\n Description: My workspace description\n Created: 2024-01-15\n",
4478
- "$ xano workspace get --output json\n{\n \"id\": 123,\n \"name\": \"my-workspace\",\n \"description\": \"My workspace description\"\n}\n",
4479
- "$ xano workspace get 456 -p production -o json\n{\n \"id\": 456,\n \"name\": \"production-workspace\"\n}\n"
4438
+ "$ xano workspace:list\nAvailable workspaces:\n - workspace-1 (ID: 1)\n - workspace-2 (ID: 2)\n - workspace-3 (ID: 3)\n",
4439
+ "$ xano workspace:list --profile production\nAvailable workspaces:\n - my-app (ID: 1)\n - staging-env (ID: 2)\n",
4440
+ "$ xano workspace:list --output json\n{\n \"workspaces\": [\n {\n \"id\": 1,\n \"name\": \"workspace-1\"\n },\n {\n \"id\": 2,\n \"name\": \"workspace-2\"\n }\n ]\n}\n",
4441
+ "$ xano workspace:list -p staging -o json\n{\n \"workspaces\": [\n {\n \"id\": 1,\n \"name\": \"my-app\"\n }\n ]\n}\n"
4480
4442
  ],
4481
4443
  "flags": {
4482
4444
  "profile": {
@@ -4515,7 +4477,7 @@
4515
4477
  },
4516
4478
  "hasDynamicHelp": false,
4517
4479
  "hiddenAliases": [],
4518
- "id": "workspace:get",
4480
+ "id": "workspace:list",
4519
4481
  "pluginAlias": "@xano/cli",
4520
4482
  "pluginName": "@xano/cli",
4521
4483
  "pluginType": "core",
@@ -4526,19 +4488,25 @@
4526
4488
  "dist",
4527
4489
  "commands",
4528
4490
  "workspace",
4529
- "get",
4491
+ "list",
4530
4492
  "index.js"
4531
4493
  ]
4532
4494
  },
4533
- "workspace:list": {
4495
+ "workspace:edit": {
4534
4496
  "aliases": [],
4535
- "args": {},
4536
- "description": "List all workspaces from the Xano Metadata API",
4497
+ "args": {
4498
+ "workspace_id": {
4499
+ "description": "Workspace ID to edit (uses profile workspace if not provided)",
4500
+ "name": "workspace_id",
4501
+ "required": false
4502
+ }
4503
+ },
4504
+ "description": "Edit an existing workspace via the Xano Metadata API",
4537
4505
  "examples": [
4538
- "$ xano workspace:list\nAvailable workspaces:\n - workspace-1 (ID: 1)\n - workspace-2 (ID: 2)\n - workspace-3 (ID: 3)\n",
4539
- "$ xano workspace:list --profile production\nAvailable workspaces:\n - my-app (ID: 1)\n - staging-env (ID: 2)\n",
4540
- "$ xano workspace:list --output json\n{\n \"workspaces\": [\n {\n \"id\": 1,\n \"name\": \"workspace-1\"\n },\n {\n \"id\": 2,\n \"name\": \"workspace-2\"\n }\n ]\n}\n",
4541
- "$ xano workspace:list -p staging -o json\n{\n \"workspaces\": [\n {\n \"id\": 1,\n \"name\": \"my-app\"\n }\n ]\n}\n"
4506
+ "$ xano workspace edit 123 --name \"new-name\"\nUpdated workspace: new-name (ID: 123)\n",
4507
+ "$ xano workspace edit --name \"updated-workspace\" --description \"Updated description\"\nUpdated workspace: updated-workspace (ID: 123)\n Description: Updated description\n",
4508
+ "$ xano workspace edit 123 --swagger --require-token\nUpdated workspace: my-workspace (ID: 123)\n Swagger: enabled\n Require Token: true\n",
4509
+ "$ xano workspace edit 123 --no-swagger -o json\n{\n \"id\": 123,\n \"name\": \"my-workspace\",\n \"swagger\": false\n}\n"
4542
4510
  ],
4543
4511
  "flags": {
4544
4512
  "profile": {
@@ -4560,6 +4528,24 @@
4560
4528
  "allowNo": false,
4561
4529
  "type": "boolean"
4562
4530
  },
4531
+ "description": {
4532
+ "char": "d",
4533
+ "description": "New description for the workspace",
4534
+ "name": "description",
4535
+ "required": false,
4536
+ "hasDynamicHelp": false,
4537
+ "multiple": false,
4538
+ "type": "option"
4539
+ },
4540
+ "name": {
4541
+ "char": "n",
4542
+ "description": "New name for the workspace",
4543
+ "name": "name",
4544
+ "required": false,
4545
+ "hasDynamicHelp": false,
4546
+ "multiple": false,
4547
+ "type": "option"
4548
+ },
4563
4549
  "output": {
4564
4550
  "char": "o",
4565
4551
  "description": "Output format",
@@ -4573,11 +4559,25 @@
4573
4559
  "json"
4574
4560
  ],
4575
4561
  "type": "option"
4562
+ },
4563
+ "require-token": {
4564
+ "description": "Whether to require a token for documentation access",
4565
+ "name": "require-token",
4566
+ "required": false,
4567
+ "allowNo": true,
4568
+ "type": "boolean"
4569
+ },
4570
+ "swagger": {
4571
+ "description": "Enable or disable swagger documentation",
4572
+ "name": "swagger",
4573
+ "required": false,
4574
+ "allowNo": true,
4575
+ "type": "boolean"
4576
4576
  }
4577
4577
  },
4578
4578
  "hasDynamicHelp": false,
4579
4579
  "hiddenAliases": [],
4580
- "id": "workspace:list",
4580
+ "id": "workspace:edit",
4581
4581
  "pluginAlias": "@xano/cli",
4582
4582
  "pluginName": "@xano/cli",
4583
4583
  "pluginType": "core",
@@ -4588,7 +4588,7 @@
4588
4588
  "dist",
4589
4589
  "commands",
4590
4590
  "workspace",
4591
- "list",
4591
+ "edit",
4592
4592
  "index.js"
4593
4593
  ]
4594
4594
  },
@@ -4708,8 +4708,10 @@
4708
4708
  "$ xano workspace push ./my-workspace --no-records\nPush schema only, skip importing table records\n",
4709
4709
  "$ xano workspace push ./my-workspace --no-env\nPush without overwriting environment variables\n",
4710
4710
  "$ xano workspace push ./my-workspace --truncate\nTruncate all table records before importing\n",
4711
- "$ xano workspace push ./my-workspace -f \"**/func*\"\nPush only files matching the glob pattern\n",
4712
- "$ xano workspace push ./my-workspace -f \"function/*\" -f \"table/*\"\nPush files matching multiple patterns\n"
4711
+ "$ xano workspace push ./my-workspace -i \"**/func*\"\nPush only files matching the glob pattern\n",
4712
+ "$ xano workspace push ./my-workspace -i \"function/*\" -i \"table/*\"\nPush files matching multiple patterns\n",
4713
+ "$ xano workspace push ./my-workspace -e \"table/*\"\nPush all files except tables\n",
4714
+ "$ xano workspace push ./my-workspace -i \"function/*\" -e \"**/test*\"\nPush functions but exclude test files\n"
4713
4715
  ],
4714
4716
  "flags": {
4715
4717
  "profile": {
@@ -4805,10 +4807,19 @@
4805
4807
  "multiple": false,
4806
4808
  "type": "option"
4807
4809
  },
4808
- "filter": {
4809
- "char": "f",
4810
- "description": "Glob pattern to filter files (e.g. \"**/func*\", \"table/*.xs\"). Matched against relative paths from the push directory.",
4811
- "name": "filter",
4810
+ "exclude": {
4811
+ "char": "e",
4812
+ "description": "Glob pattern to exclude files (e.g. \"table/*\", \"**/test*\"). Matched against relative paths from the push directory.",
4813
+ "name": "exclude",
4814
+ "required": false,
4815
+ "hasDynamicHelp": false,
4816
+ "multiple": true,
4817
+ "type": "option"
4818
+ },
4819
+ "include": {
4820
+ "char": "i",
4821
+ "description": "Glob pattern to include files (e.g. \"**/func*\", \"table/*.xs\"). Matched against relative paths from the push directory.",
4822
+ "name": "include",
4812
4823
  "required": false,
4813
4824
  "hasDynamicHelp": false,
4814
4825
  "multiple": true,
@@ -4839,53 +4850,6 @@
4839
4850
  "index.js"
4840
4851
  ]
4841
4852
  },
4842
- "profile:workspace:set": {
4843
- "aliases": [],
4844
- "args": {},
4845
- "description": "Interactively select a workspace for a profile",
4846
- "examples": [
4847
- "$ xano profile workspace set\nFetching workspaces...\n? Select a workspace: My Workspace\nWorkspace updated to 'My Workspace' (abc123) on profile 'default'\n",
4848
- "$ xano profile workspace set -p production\nFetching workspaces...\n? Select a workspace: Production API\nWorkspace updated to 'Production API' (xyz789) on profile 'production'\n"
4849
- ],
4850
- "flags": {
4851
- "profile": {
4852
- "char": "p",
4853
- "description": "Profile to use (uses default profile if not specified)",
4854
- "env": "XANO_PROFILE",
4855
- "name": "profile",
4856
- "required": false,
4857
- "hasDynamicHelp": false,
4858
- "multiple": false,
4859
- "type": "option"
4860
- },
4861
- "verbose": {
4862
- "char": "v",
4863
- "description": "Show detailed request/response information",
4864
- "env": "XANO_VERBOSE",
4865
- "name": "verbose",
4866
- "required": false,
4867
- "allowNo": false,
4868
- "type": "boolean"
4869
- }
4870
- },
4871
- "hasDynamicHelp": false,
4872
- "hiddenAliases": [],
4873
- "id": "profile:workspace:set",
4874
- "pluginAlias": "@xano/cli",
4875
- "pluginName": "@xano/cli",
4876
- "pluginType": "core",
4877
- "strict": true,
4878
- "enableJsonFlag": false,
4879
- "isESM": true,
4880
- "relativePath": [
4881
- "dist",
4882
- "commands",
4883
- "profile",
4884
- "workspace",
4885
- "set",
4886
- "index.js"
4887
- ]
4888
- },
4889
4853
  "static_host:build:create": {
4890
4854
  "aliases": [],
4891
4855
  "args": {
@@ -5169,6 +5133,53 @@
5169
5133
  "index.js"
5170
5134
  ]
5171
5135
  },
5136
+ "profile:workspace:set": {
5137
+ "aliases": [],
5138
+ "args": {},
5139
+ "description": "Interactively select a workspace for a profile",
5140
+ "examples": [
5141
+ "$ xano profile workspace set\nFetching workspaces...\n? Select a workspace: My Workspace\nWorkspace updated to 'My Workspace' (abc123) on profile 'default'\n",
5142
+ "$ xano profile workspace set -p production\nFetching workspaces...\n? Select a workspace: Production API\nWorkspace updated to 'Production API' (xyz789) on profile 'production'\n"
5143
+ ],
5144
+ "flags": {
5145
+ "profile": {
5146
+ "char": "p",
5147
+ "description": "Profile to use (uses default profile if not specified)",
5148
+ "env": "XANO_PROFILE",
5149
+ "name": "profile",
5150
+ "required": false,
5151
+ "hasDynamicHelp": false,
5152
+ "multiple": false,
5153
+ "type": "option"
5154
+ },
5155
+ "verbose": {
5156
+ "char": "v",
5157
+ "description": "Show detailed request/response information",
5158
+ "env": "XANO_VERBOSE",
5159
+ "name": "verbose",
5160
+ "required": false,
5161
+ "allowNo": false,
5162
+ "type": "boolean"
5163
+ }
5164
+ },
5165
+ "hasDynamicHelp": false,
5166
+ "hiddenAliases": [],
5167
+ "id": "profile:workspace:set",
5168
+ "pluginAlias": "@xano/cli",
5169
+ "pluginName": "@xano/cli",
5170
+ "pluginType": "core",
5171
+ "strict": true,
5172
+ "enableJsonFlag": false,
5173
+ "isESM": true,
5174
+ "relativePath": [
5175
+ "dist",
5176
+ "commands",
5177
+ "profile",
5178
+ "workspace",
5179
+ "set",
5180
+ "index.js"
5181
+ ]
5182
+ },
5172
5183
  "tenant:backup:create": {
5173
5184
  "aliases": [],
5174
5185
  "args": {
@@ -5348,20 +5359,19 @@
5348
5359
  "index.js"
5349
5360
  ]
5350
5361
  },
5351
- "tenant:backup:export": {
5362
+ "tenant:backup:import": {
5352
5363
  "aliases": [],
5353
5364
  "args": {
5354
5365
  "tenant_name": {
5355
- "description": "Tenant name to export backup from",
5366
+ "description": "Tenant name to import backup into",
5356
5367
  "name": "tenant_name",
5357
5368
  "required": true
5358
5369
  }
5359
5370
  },
5360
- "description": "Export (download) a tenant backup to a local file",
5371
+ "description": "Import a backup file into a tenant",
5361
5372
  "examples": [
5362
- "$ xano tenant backup export t1234-abcd-xyz1 --backup_id 10\nDownloaded backup #10 to ./tenant-t1234-abcd-xyz1-backup-10.tar.gz\n",
5363
- "$ xano tenant backup export t1234-abcd-xyz1 --backup_id 10 --output ./backups/my-backup.tar.gz",
5364
- "$ xano tenant backup export t1234-abcd-xyz1 --backup_id 10 -o json"
5373
+ "$ xano tenant backup import t1234-abcd-xyz1 --file ./my-backup.tar.gz\nImported backup as #15 for tenant t1234-abcd-xyz1\n",
5374
+ "$ xano tenant backup import t1234-abcd-xyz1 --file ./my-backup.tar.gz --description \"Restored from production\" -o json"
5365
5375
  ],
5366
5376
  "flags": {
5367
5377
  "profile": {
@@ -5383,18 +5393,29 @@
5383
5393
  "allowNo": false,
5384
5394
  "type": "boolean"
5385
5395
  },
5386
- "backup_id": {
5387
- "description": "Backup ID to export",
5388
- "name": "backup_id",
5396
+ "description": {
5397
+ "char": "d",
5398
+ "description": "Backup description",
5399
+ "name": "description",
5400
+ "required": false,
5401
+ "default": "",
5402
+ "hasDynamicHelp": false,
5403
+ "multiple": false,
5404
+ "type": "option"
5405
+ },
5406
+ "file": {
5407
+ "char": "f",
5408
+ "description": "Path to the backup file (.tar.gz)",
5409
+ "name": "file",
5389
5410
  "required": true,
5390
5411
  "hasDynamicHelp": false,
5391
5412
  "multiple": false,
5392
5413
  "type": "option"
5393
5414
  },
5394
- "format": {
5415
+ "output": {
5395
5416
  "char": "o",
5396
5417
  "description": "Output format",
5397
- "name": "format",
5418
+ "name": "output",
5398
5419
  "required": false,
5399
5420
  "default": "summary",
5400
5421
  "hasDynamicHelp": false,
@@ -5405,14 +5426,6 @@
5405
5426
  ],
5406
5427
  "type": "option"
5407
5428
  },
5408
- "output": {
5409
- "description": "Output file path (defaults to ./tenant-{name}-backup-{backup_id}.tar.gz)",
5410
- "name": "output",
5411
- "required": false,
5412
- "hasDynamicHelp": false,
5413
- "multiple": false,
5414
- "type": "option"
5415
- },
5416
5429
  "workspace": {
5417
5430
  "char": "w",
5418
5431
  "description": "Workspace ID (uses profile workspace if not provided)",
@@ -5425,7 +5438,7 @@
5425
5438
  },
5426
5439
  "hasDynamicHelp": false,
5427
5440
  "hiddenAliases": [],
5428
- "id": "tenant:backup:export",
5441
+ "id": "tenant:backup:import",
5429
5442
  "pluginAlias": "@xano/cli",
5430
5443
  "pluginName": "@xano/cli",
5431
5444
  "pluginType": "core",
@@ -5437,23 +5450,24 @@
5437
5450
  "commands",
5438
5451
  "tenant",
5439
5452
  "backup",
5440
- "export",
5453
+ "import",
5441
5454
  "index.js"
5442
5455
  ]
5443
5456
  },
5444
- "tenant:backup:import": {
5457
+ "tenant:backup:export": {
5445
5458
  "aliases": [],
5446
5459
  "args": {
5447
5460
  "tenant_name": {
5448
- "description": "Tenant name to import backup into",
5461
+ "description": "Tenant name to export backup from",
5449
5462
  "name": "tenant_name",
5450
5463
  "required": true
5451
5464
  }
5452
5465
  },
5453
- "description": "Import a backup file into a tenant",
5466
+ "description": "Export (download) a tenant backup to a local file",
5454
5467
  "examples": [
5455
- "$ xano tenant backup import t1234-abcd-xyz1 --file ./my-backup.tar.gz\nImported backup as #15 for tenant t1234-abcd-xyz1\n",
5456
- "$ xano tenant backup import t1234-abcd-xyz1 --file ./my-backup.tar.gz --description \"Restored from production\" -o json"
5468
+ "$ xano tenant backup export t1234-abcd-xyz1 --backup_id 10\nDownloaded backup #10 to ./tenant-t1234-abcd-xyz1-backup-10.tar.gz\n",
5469
+ "$ xano tenant backup export t1234-abcd-xyz1 --backup_id 10 --output ./backups/my-backup.tar.gz",
5470
+ "$ xano tenant backup export t1234-abcd-xyz1 --backup_id 10 -o json"
5457
5471
  ],
5458
5472
  "flags": {
5459
5473
  "profile": {
@@ -5473,31 +5487,20 @@
5473
5487
  "name": "verbose",
5474
5488
  "required": false,
5475
5489
  "allowNo": false,
5476
- "type": "boolean"
5477
- },
5478
- "description": {
5479
- "char": "d",
5480
- "description": "Backup description",
5481
- "name": "description",
5482
- "required": false,
5483
- "default": "",
5484
- "hasDynamicHelp": false,
5485
- "multiple": false,
5486
- "type": "option"
5490
+ "type": "boolean"
5487
5491
  },
5488
- "file": {
5489
- "char": "f",
5490
- "description": "Path to the backup file (.tar.gz)",
5491
- "name": "file",
5492
+ "backup_id": {
5493
+ "description": "Backup ID to export",
5494
+ "name": "backup_id",
5492
5495
  "required": true,
5493
5496
  "hasDynamicHelp": false,
5494
5497
  "multiple": false,
5495
5498
  "type": "option"
5496
5499
  },
5497
- "output": {
5500
+ "format": {
5498
5501
  "char": "o",
5499
5502
  "description": "Output format",
5500
- "name": "output",
5503
+ "name": "format",
5501
5504
  "required": false,
5502
5505
  "default": "summary",
5503
5506
  "hasDynamicHelp": false,
@@ -5508,6 +5511,14 @@
5508
5511
  ],
5509
5512
  "type": "option"
5510
5513
  },
5514
+ "output": {
5515
+ "description": "Output file path (defaults to ./tenant-{name}-backup-{backup_id}.tar.gz)",
5516
+ "name": "output",
5517
+ "required": false,
5518
+ "hasDynamicHelp": false,
5519
+ "multiple": false,
5520
+ "type": "option"
5521
+ },
5511
5522
  "workspace": {
5512
5523
  "char": "w",
5513
5524
  "description": "Workspace ID (uses profile workspace if not provided)",
@@ -5520,7 +5531,7 @@
5520
5531
  },
5521
5532
  "hasDynamicHelp": false,
5522
5533
  "hiddenAliases": [],
5523
- "id": "tenant:backup:import",
5534
+ "id": "tenant:backup:export",
5524
5535
  "pluginAlias": "@xano/cli",
5525
5536
  "pluginName": "@xano/cli",
5526
5537
  "pluginType": "core",
@@ -5532,7 +5543,7 @@
5532
5543
  "commands",
5533
5544
  "tenant",
5534
5545
  "backup",
5535
- "import",
5546
+ "export",
5536
5547
  "index.js"
5537
5548
  ]
5538
5549
  },
@@ -5621,13 +5632,19 @@
5621
5632
  "index.js"
5622
5633
  ]
5623
5634
  },
5624
- "tenant:cluster:create": {
5635
+ "tenant:backup:restore": {
5625
5636
  "aliases": [],
5626
- "args": {},
5627
- "description": "Create a new tenant cluster",
5637
+ "args": {
5638
+ "tenant_name": {
5639
+ "description": "Tenant name to restore",
5640
+ "name": "tenant_name",
5641
+ "required": true
5642
+ }
5643
+ },
5644
+ "description": "Restore a tenant from a backup. This replaces the current tenant data.",
5628
5645
  "examples": [
5629
- "$ xano tenant cluster create --name \"us-east-1\" --credentials_file ./kubeconfig.yaml\nCreated tenant cluster: us-east-1 (standard) - ID: 3\n",
5630
- "$ xano tenant cluster create --name \"eu-west-1\" --credentials \"...\" --type run --description \"EU run cluster\" -o json"
5646
+ "$ 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",
5647
+ "$ xano tenant backup restore t1234-abcd-xyz1 --backup_id 10 --force -o json"
5631
5648
  ],
5632
5649
  "flags": {
5633
5650
  "profile": {
@@ -5649,53 +5666,21 @@
5649
5666
  "allowNo": false,
5650
5667
  "type": "boolean"
5651
5668
  },
5652
- "credentials": {
5653
- "description": "Kubeconfig credentials (raw text)",
5654
- "exclusive": [
5655
- "credentials_file"
5656
- ],
5657
- "name": "credentials",
5658
- "required": false,
5659
- "hasDynamicHelp": false,
5660
- "multiple": false,
5661
- "type": "option"
5662
- },
5663
- "credentials_file": {
5664
- "description": "Path to kubeconfig credentials file",
5665
- "exclusive": [
5666
- "credentials"
5667
- ],
5668
- "name": "credentials_file",
5669
- "required": false,
5670
- "hasDynamicHelp": false,
5671
- "multiple": false,
5672
- "type": "option"
5673
- },
5674
- "description": {
5675
- "char": "d",
5676
- "description": "Cluster description",
5677
- "name": "description",
5678
- "required": false,
5669
+ "backup_id": {
5670
+ "description": "Backup ID to restore from",
5671
+ "name": "backup_id",
5672
+ "required": true,
5679
5673
  "hasDynamicHelp": false,
5680
5674
  "multiple": false,
5681
5675
  "type": "option"
5682
5676
  },
5683
- "domain": {
5684
- "description": "Custom domain for the cluster",
5685
- "name": "domain",
5677
+ "force": {
5678
+ "char": "f",
5679
+ "description": "Skip confirmation prompt",
5680
+ "name": "force",
5686
5681
  "required": false,
5687
- "hasDynamicHelp": false,
5688
- "multiple": false,
5689
- "type": "option"
5690
- },
5691
- "name": {
5692
- "char": "n",
5693
- "description": "Cluster name",
5694
- "name": "name",
5695
- "required": true,
5696
- "hasDynamicHelp": false,
5697
- "multiple": false,
5698
- "type": "option"
5682
+ "allowNo": false,
5683
+ "type": "boolean"
5699
5684
  },
5700
5685
  "output": {
5701
5686
  "char": "o",
@@ -5711,23 +5696,19 @@
5711
5696
  ],
5712
5697
  "type": "option"
5713
5698
  },
5714
- "type": {
5715
- "description": "Cluster type",
5716
- "name": "type",
5699
+ "workspace": {
5700
+ "char": "w",
5701
+ "description": "Workspace ID (uses profile workspace if not provided)",
5702
+ "name": "workspace",
5717
5703
  "required": false,
5718
- "default": "standard",
5719
5704
  "hasDynamicHelp": false,
5720
5705
  "multiple": false,
5721
- "options": [
5722
- "standard",
5723
- "run"
5724
- ],
5725
5706
  "type": "option"
5726
5707
  }
5727
5708
  },
5728
5709
  "hasDynamicHelp": false,
5729
5710
  "hiddenAliases": [],
5730
- "id": "tenant:cluster:create",
5711
+ "id": "tenant:backup:restore",
5731
5712
  "pluginAlias": "@xano/cli",
5732
5713
  "pluginName": "@xano/cli",
5733
5714
  "pluginType": "core",
@@ -5738,24 +5719,18 @@
5738
5719
  "dist",
5739
5720
  "commands",
5740
5721
  "tenant",
5741
- "cluster",
5742
- "create",
5722
+ "backup",
5723
+ "restore",
5743
5724
  "index.js"
5744
5725
  ]
5745
5726
  },
5746
- "tenant:cluster:edit": {
5727
+ "tenant:cluster:create": {
5747
5728
  "aliases": [],
5748
- "args": {
5749
- "cluster_id": {
5750
- "description": "Cluster ID to edit",
5751
- "name": "cluster_id",
5752
- "required": true
5753
- }
5754
- },
5755
- "description": "Update an existing tenant cluster",
5729
+ "args": {},
5730
+ "description": "Create a new tenant cluster",
5756
5731
  "examples": [
5757
- "$ 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",
5758
- "$ xano tenant cluster edit 1 --name \"eu-west\" --description \"\" --domain \"\" --type run -o json"
5732
+ "$ xano tenant cluster create --name \"us-east-1\" --credentials_file ./kubeconfig.yaml\nCreated tenant cluster: us-east-1 (standard) - ID: 3\n",
5733
+ "$ xano tenant cluster create --name \"eu-west-1\" --credentials \"...\" --type run --description \"EU run cluster\" -o json"
5759
5734
  ],
5760
5735
  "flags": {
5761
5736
  "profile": {
@@ -5777,11 +5752,33 @@
5777
5752
  "allowNo": false,
5778
5753
  "type": "boolean"
5779
5754
  },
5755
+ "credentials": {
5756
+ "description": "Kubeconfig credentials (raw text)",
5757
+ "exclusive": [
5758
+ "credentials_file"
5759
+ ],
5760
+ "name": "credentials",
5761
+ "required": false,
5762
+ "hasDynamicHelp": false,
5763
+ "multiple": false,
5764
+ "type": "option"
5765
+ },
5766
+ "credentials_file": {
5767
+ "description": "Path to kubeconfig credentials file",
5768
+ "exclusive": [
5769
+ "credentials"
5770
+ ],
5771
+ "name": "credentials_file",
5772
+ "required": false,
5773
+ "hasDynamicHelp": false,
5774
+ "multiple": false,
5775
+ "type": "option"
5776
+ },
5780
5777
  "description": {
5781
5778
  "char": "d",
5782
5779
  "description": "Cluster description",
5783
5780
  "name": "description",
5784
- "required": true,
5781
+ "required": false,
5785
5782
  "hasDynamicHelp": false,
5786
5783
  "multiple": false,
5787
5784
  "type": "option"
@@ -5789,7 +5786,7 @@
5789
5786
  "domain": {
5790
5787
  "description": "Custom domain for the cluster",
5791
5788
  "name": "domain",
5792
- "required": true,
5789
+ "required": false,
5793
5790
  "hasDynamicHelp": false,
5794
5791
  "multiple": false,
5795
5792
  "type": "option"
@@ -5820,7 +5817,8 @@
5820
5817
  "type": {
5821
5818
  "description": "Cluster type",
5822
5819
  "name": "type",
5823
- "required": true,
5820
+ "required": false,
5821
+ "default": "standard",
5824
5822
  "hasDynamicHelp": false,
5825
5823
  "multiple": false,
5826
5824
  "options": [
@@ -5832,7 +5830,7 @@
5832
5830
  },
5833
5831
  "hasDynamicHelp": false,
5834
5832
  "hiddenAliases": [],
5835
- "id": "tenant:cluster:edit",
5833
+ "id": "tenant:cluster:create",
5836
5834
  "pluginAlias": "@xano/cli",
5837
5835
  "pluginName": "@xano/cli",
5838
5836
  "pluginType": "core",
@@ -5844,7 +5842,7 @@
5844
5842
  "commands",
5845
5843
  "tenant",
5846
5844
  "cluster",
5847
- "edit",
5845
+ "create",
5848
5846
  "index.js"
5849
5847
  ]
5850
5848
  },
@@ -5924,19 +5922,19 @@
5924
5922
  "index.js"
5925
5923
  ]
5926
5924
  },
5927
- "tenant:cluster:get": {
5925
+ "tenant:cluster:edit": {
5928
5926
  "aliases": [],
5929
5927
  "args": {
5930
5928
  "cluster_id": {
5931
- "description": "Cluster ID to retrieve",
5929
+ "description": "Cluster ID to edit",
5932
5930
  "name": "cluster_id",
5933
5931
  "required": true
5934
5932
  }
5935
5933
  },
5936
- "description": "Get details of a specific tenant cluster",
5934
+ "description": "Update an existing tenant cluster",
5937
5935
  "examples": [
5938
- "$ xano tenant cluster get 1\nCluster: us-east-1\n ID: 1\n Type: standard\n Domain: us-east-1.xano.io\n",
5939
- "$ xano tenant cluster get 1 -o json"
5936
+ "$ 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",
5937
+ "$ xano tenant cluster edit 1 --name \"eu-west\" --description \"\" --domain \"\" --type run -o json"
5940
5938
  ],
5941
5939
  "flags": {
5942
5940
  "profile": {
@@ -5958,6 +5956,32 @@
5958
5956
  "allowNo": false,
5959
5957
  "type": "boolean"
5960
5958
  },
5959
+ "description": {
5960
+ "char": "d",
5961
+ "description": "Cluster description",
5962
+ "name": "description",
5963
+ "required": true,
5964
+ "hasDynamicHelp": false,
5965
+ "multiple": false,
5966
+ "type": "option"
5967
+ },
5968
+ "domain": {
5969
+ "description": "Custom domain for the cluster",
5970
+ "name": "domain",
5971
+ "required": true,
5972
+ "hasDynamicHelp": false,
5973
+ "multiple": false,
5974
+ "type": "option"
5975
+ },
5976
+ "name": {
5977
+ "char": "n",
5978
+ "description": "Cluster name",
5979
+ "name": "name",
5980
+ "required": true,
5981
+ "hasDynamicHelp": false,
5982
+ "multiple": false,
5983
+ "type": "option"
5984
+ },
5961
5985
  "output": {
5962
5986
  "char": "o",
5963
5987
  "description": "Output format",
@@ -5971,11 +5995,23 @@
5971
5995
  "json"
5972
5996
  ],
5973
5997
  "type": "option"
5998
+ },
5999
+ "type": {
6000
+ "description": "Cluster type",
6001
+ "name": "type",
6002
+ "required": true,
6003
+ "hasDynamicHelp": false,
6004
+ "multiple": false,
6005
+ "options": [
6006
+ "standard",
6007
+ "run"
6008
+ ],
6009
+ "type": "option"
5974
6010
  }
5975
6011
  },
5976
6012
  "hasDynamicHelp": false,
5977
6013
  "hiddenAliases": [],
5978
- "id": "tenant:cluster:get",
6014
+ "id": "tenant:cluster:edit",
5979
6015
  "pluginAlias": "@xano/cli",
5980
6016
  "pluginName": "@xano/cli",
5981
6017
  "pluginType": "core",
@@ -5987,23 +6023,23 @@
5987
6023
  "commands",
5988
6024
  "tenant",
5989
6025
  "cluster",
5990
- "get",
6026
+ "edit",
5991
6027
  "index.js"
5992
6028
  ]
5993
6029
  },
5994
- "tenant:backup:restore": {
6030
+ "tenant:cluster:get": {
5995
6031
  "aliases": [],
5996
6032
  "args": {
5997
- "tenant_name": {
5998
- "description": "Tenant name to restore",
5999
- "name": "tenant_name",
6033
+ "cluster_id": {
6034
+ "description": "Cluster ID to retrieve",
6035
+ "name": "cluster_id",
6000
6036
  "required": true
6001
6037
  }
6002
6038
  },
6003
- "description": "Restore a tenant from a backup. This replaces the current tenant data.",
6039
+ "description": "Get details of a specific tenant cluster",
6004
6040
  "examples": [
6005
- "$ 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",
6006
- "$ xano tenant backup restore t1234-abcd-xyz1 --backup_id 10 --force -o json"
6041
+ "$ xano tenant cluster get 1\nCluster: us-east-1\n ID: 1\n Type: standard\n Domain: us-east-1.xano.io\n",
6042
+ "$ xano tenant cluster get 1 -o json"
6007
6043
  ],
6008
6044
  "flags": {
6009
6045
  "profile": {
@@ -6025,22 +6061,6 @@
6025
6061
  "allowNo": false,
6026
6062
  "type": "boolean"
6027
6063
  },
6028
- "backup_id": {
6029
- "description": "Backup ID to restore from",
6030
- "name": "backup_id",
6031
- "required": true,
6032
- "hasDynamicHelp": false,
6033
- "multiple": false,
6034
- "type": "option"
6035
- },
6036
- "force": {
6037
- "char": "f",
6038
- "description": "Skip confirmation prompt",
6039
- "name": "force",
6040
- "required": false,
6041
- "allowNo": false,
6042
- "type": "boolean"
6043
- },
6044
6064
  "output": {
6045
6065
  "char": "o",
6046
6066
  "description": "Output format",
@@ -6054,20 +6074,11 @@
6054
6074
  "json"
6055
6075
  ],
6056
6076
  "type": "option"
6057
- },
6058
- "workspace": {
6059
- "char": "w",
6060
- "description": "Workspace ID (uses profile workspace if not provided)",
6061
- "name": "workspace",
6062
- "required": false,
6063
- "hasDynamicHelp": false,
6064
- "multiple": false,
6065
- "type": "option"
6066
6077
  }
6067
6078
  },
6068
6079
  "hasDynamicHelp": false,
6069
6080
  "hiddenAliases": [],
6070
- "id": "tenant:backup:restore",
6081
+ "id": "tenant:cluster:get",
6071
6082
  "pluginAlias": "@xano/cli",
6072
6083
  "pluginName": "@xano/cli",
6073
6084
  "pluginType": "core",
@@ -6078,8 +6089,8 @@
6078
6089
  "dist",
6079
6090
  "commands",
6080
6091
  "tenant",
6081
- "backup",
6082
- "restore",
6092
+ "cluster",
6093
+ "get",
6083
6094
  "index.js"
6084
6095
  ]
6085
6096
  },
@@ -7170,5 +7181,5 @@
7170
7181
  ]
7171
7182
  }
7172
7183
  },
7173
- "version": "0.0.89"
7184
+ "version": "0.0.91"
7174
7185
  }